From 8b1a9c42d3213c7779d95ce31f4612592a8109d1 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 7 Sep 2018 15:12:35 +0100 Subject: [PATCH 001/141] Mobile: Update to React Native 0.56 --- src/mobile/.flowconfig | 67 + src/mobile/.gitignore | 56 + src/mobile/android/app/BUCK | 4 +- src/mobile/android/app/build.gradle | 1 - src/mobile/android/gradle.properties | 3 - .../android/gradle/wrapper/gradle-wrapper.jar | Bin 54708 -> 52266 bytes .../gradle/wrapper/gradle-wrapper.properties | 1 - src/mobile/android/gradlew | 78 +- src/mobile/android/gradlew.bat | 14 +- .../ios/iotaWallet.xcodeproj/project.pbxproj | 30 + .../ios/iotaWallet/iotaWallet.entitlements | 14 +- src/mobile/ios/trinity-mobile-tvOS/Info.plist | 54 + .../ios/trinity-mobile-tvOSTests/Info.plist | 24 + .../trinity-mobile.xcodeproj/project.pbxproj | 1468 +++++++++++++ .../xcschemes/trinity-mobile-tvOS.xcscheme | 129 ++ .../xcschemes/trinity-mobile.xcscheme | 129 ++ src/mobile/ios/trinity-mobile/AppDelegate.h | 14 + src/mobile/ios/trinity-mobile/AppDelegate.m | 35 + .../Base.lproj/LaunchScreen.xib | 42 + .../AppIcon.appiconset/Contents.json | 38 + .../Images.xcassets/Contents.json | 6 + src/mobile/ios/trinity-mobile/Info.plist | 56 + src/mobile/ios/trinity-mobile/main.m | 16 + src/mobile/ios/trinity-mobileTests/Info.plist | 24 + .../trinity-mobileTests/trinity-mobileTests.m | 68 + src/mobile/package.json | 12 +- src/mobile/routes/entry.js | 3 + src/mobile/yarn.lock | 1950 +++++++++++------ 28 files changed, 3582 insertions(+), 754 deletions(-) create mode 100644 src/mobile/.flowconfig create mode 100644 src/mobile/.gitignore create mode 100644 src/mobile/ios/trinity-mobile-tvOS/Info.plist create mode 100644 src/mobile/ios/trinity-mobile-tvOSTests/Info.plist create mode 100644 src/mobile/ios/trinity-mobile.xcodeproj/project.pbxproj create mode 100644 src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile-tvOS.xcscheme create mode 100644 src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile.xcscheme create mode 100644 src/mobile/ios/trinity-mobile/AppDelegate.h create mode 100644 src/mobile/ios/trinity-mobile/AppDelegate.m create mode 100644 src/mobile/ios/trinity-mobile/Base.lproj/LaunchScreen.xib create mode 100644 src/mobile/ios/trinity-mobile/Images.xcassets/AppIcon.appiconset/Contents.json create mode 100644 src/mobile/ios/trinity-mobile/Images.xcassets/Contents.json create mode 100644 src/mobile/ios/trinity-mobile/Info.plist create mode 100644 src/mobile/ios/trinity-mobile/main.m create mode 100644 src/mobile/ios/trinity-mobileTests/Info.plist create mode 100644 src/mobile/ios/trinity-mobileTests/trinity-mobileTests.m diff --git a/src/mobile/.flowconfig b/src/mobile/.flowconfig new file mode 100644 index 0000000000..3c0adb5663 --- /dev/null +++ b/src/mobile/.flowconfig @@ -0,0 +1,67 @@ +[ignore] +; We fork some components by platform +.*/*[.]android.js + +; Ignore "BUCK" generated dirs +/\.buckd/ + +; Ignore unexpected extra "@providesModule" +.*/node_modules/.*/node_modules/fbjs/.* + +; 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 + +; Ignore polyfills +.*/Libraries/polyfills/.* + +; Ignore metro +.*/node_modules/metro/.* + +[include] + +[libs] +node_modules/react-native/Libraries/react-native/react-native-interface.js +node_modules/react-native/flow/ +node_modules/react-native/flow-github/ + +[options] +emoji=true + +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.blacklist=/node_modules/react-native/Libraries/Animated/src/polyfills/.* +module.system.haste.paths.whitelist=/node_modules/react-native/Libraries/.* + +munge_underscores=true + +module.name_mapper='^[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> 'RelativeImageStub' + +module.file_ext=.js +module.file_ext=.jsx +module.file_ext=.json +module.file_ext=.native.js + +suppress_type=$FlowIssue +suppress_type=$FlowFixMe +suppress_type=$FlowFixMeProps +suppress_type=$FlowFixMeState + +suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) +suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)?:? #[0-9]+ +suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy +suppress_comment=\\(.\\|\n\\)*\\$FlowExpectedError + +[version] +^0.75.0 diff --git a/src/mobile/.gitignore b/src/mobile/.gitignore new file mode 100644 index 0000000000..5d647565fa --- /dev/null +++ b/src/mobile/.gitignore @@ -0,0 +1,56 @@ +# OSX +# +.DS_Store + +# Xcode +# +build/ +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata +*.xccheckout +*.moved-aside +DerivedData +*.hmap +*.ipa +*.xcuserstate +project.xcworkspace + +# Android/IntelliJ +# +build/ +.idea +.gradle +local.properties +*.iml + +# node.js +# +node_modules/ +npm-debug.log +yarn-error.log + +# BUCK +buck-out/ +\.buckd/ +*.keystore + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the +# screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/ + +*/fastlane/report.xml +*/fastlane/Preview.html +*/fastlane/screenshots + +# Bundle artifact +*.jsbundle diff --git a/src/mobile/android/app/BUCK b/src/mobile/android/app/BUCK index 820e73801d..614353464d 100644 --- a/src/mobile/android/app/BUCK +++ b/src/mobile/android/app/BUCK @@ -45,12 +45,12 @@ android_library( android_build_config( name = "build_config", - package = "trinity", + package = "com.trinity-mobile", ) android_resource( name = "res", - package = "trinity", + package = "com.trinity-mobile", res = "src/main/res", ) diff --git a/src/mobile/android/app/build.gradle b/src/mobile/android/app/build.gradle index 7e6c31a770..8dbfc808b4 100644 --- a/src/mobile/android/app/build.gradle +++ b/src/mobile/android/app/build.gradle @@ -167,7 +167,6 @@ dependencies { implementation project(':react-native-navigation') implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'com.android.support:appcompat-v7:27.1.0' - implementation ('com.facebook.react:react-native:0.51.0') { force = true } implementation project(':react-native-svg') implementation project(':react-native-keychain') implementation 'com.android.support:multidex:1.0.1' diff --git a/src/mobile/android/gradle.properties b/src/mobile/android/gradle.properties index e930727834..1fd964e90b 100644 --- a/src/mobile/android/gradle.properties +++ b/src/mobile/android/gradle.properties @@ -10,7 +10,6 @@ # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. # Default value: -Xmx10248m -XX:MaxPermSize=256m -org.gradle.jvmargs=-Xmx1536m # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 # When configured, Gradle will run in incubating parallel mode. @@ -19,5 +18,3 @@ org.gradle.jvmargs=-Xmx1536m # org.gradle.parallel=true android.useDeprecatedNdk=true -org.gradle.jvmargs=-Xmx1536M -android.enableAapt2=false diff --git a/src/mobile/android/gradle/wrapper/gradle-wrapper.jar b/src/mobile/android/gradle/wrapper/gradle-wrapper.jar index 7a3265ee94c0ab25cf079ac8ccdf87f41d455d42..b5166dad4d90021f6a0b45268c0755719f1d5cd4 100644 GIT binary patch delta 26836 zcmZ6yV{j%+&^8*|wsFU{Z5tcgc5=tr*tTukwzIKqW0O74LDhTSZ>k1e)6>7YdahPW zHF#A9IFhm)I0PIB2n-B}kxHp#A`&su|4=S;YX^yZntXT{nfERaE}$U)!~E+%W|02| z*#Eu!Hz59-jxLr=;Qt3t;tVO=|10qSev$Y_^Z%og&7d~1|L1aaH*5{#KY337$r4X? zh9U;4dAquq+bg>`I+?q;S)055ck=QUad)#acW|>dHFk4!VKlWfc6BXPvv))jK?%SD zM2s&URvOi&Zm#*LpF}w>8sWjlM#8cvR4K>{*&Bmf)_IyaCO+0bN87VMK))BqGz+Ja zfTG_G&t3CB&G7Seza5>e-+@ed*^tEs!vf(U!EI@_IUD0*F*wz<*KP^X^*U_Hkj4kv zf_xDsu?_Yse}#9b@taAn43!yaSNR5cEer5qJu(Qr(wM9dL%kt)K0gOw$XB#sv(ykj zlT#|bns1=0dXtgewHV%1wZWvU@6)CrtX+|yG@U*H&_=v17_Bu87OQp%o~s!PeOu~f3h(E{9T_Pie}i(coaa4s$G(l( zxbUALG5#e&B7Co*hA-f-`NX#-4-m9wE(b)+L-^Ty!6m{UXX!I9eCHEEPtl)VLWapo zBMKOSlcyl_SIWkNRgz3y+tyVlH7WUbs2YD2%W-)Nch$v}L8h~O&7z@&2+(=txps+M zwVLfPBIwKj82I<($yX3I5q=oU2%lySamyMt-ir?cnS)Rv|INXTKf>n4DXlgS>5Mf0 zRS3Zhz+eM43(LY2X9%ZF9Ckv%o6|CZ=prr-zzN7eTPum9=ACz^P`f$vQF3>q_@WF| zJxgVwETfZTT(i~7O0-Q>PGyb_uEp`lFT&P<#cboO%97{?R+EUx%2v!}cjd9$t>US< zi9EO3gj*1&DHADB;eS$ip6{+ zYH?}IDK&HF;B=t*=&>2yWHNg;5y4mEWB+A8ZMGs>D94hLV}n|u!;Fg^TXO za9e9->qBn}#LFx)uM8)Y19UO+x3SMef4=W~bC@n?UCMcnQNwP1cBSzM-pqz2~)GeR00AI(-X45Mj) zNz6?nP-{MB0tY)3z&MdH5FOA%ab(^@X1pvbk-pzJX0AU{9iX4|fM<}NIG`5LLwckj z-(-0EaZ7_|;&;|WTF816=Q=_V1w-KI{7jZsWfs0_XQsbsXA+B$scBZ%Nq(CnVaLWQ z{^nfOdm|b!9`9-16Y=)_E<6@7@%4}x6Q5`a%uA;U3oZM~az+|H%u7fF|O6gTERu^WeZM#UKxYlkP#l}G+)%dOhm8i(s;Xs!B-a=-{h^Nek^X8+y@OAojCovx?1}I4!;n!><(?(r zcu0wwTyZ(sAKM4Ans3|Um6LKfbiyeCO?Na>emSRj^4S>FZFM+EK_Y4`-xH~l)!}6| zU^^)e#UAH`k|WQvTo+^PcwN31rh`thf!__>(xl7}a4{na#Rt)-hX(7HDf1w9c1Ld0 zsOP2~8qgR7Ag;~|(h$Kw_enuBwf2oM9b~Etek07XRp45|)n<-uc5q$iiUJIPL}iz} zQlGc;#$?r4XY z#zotgI22UlR0lh*D0S~-MEV9)UTg+DN)3-xY#%&j&e54&VSBm$!~sKuXFu)D={%YJ zzkTYuGu{BM8w2uOs!g!a84n>q{?d1@TH>z{$4gX%MBd=>1Sz(?k&up1P5DC5E1Sa52Y8_M4J9QLi&J=l^o z*46DT+={IdDO_3>l8X-hSK|Nu6PVTqbs7DKG*Fib9P#qvD8Y!FvCBiDAdXd>vGBH=Q8;Li8BWgk7p(BvU17f5W>x$X* z_>u7QGjnr7Pu|yizjl4~pS;e$de&D9-Fu;j# zc;ZC>EbKJ%Ws(&rz{iTLSD%LhP}~)27R?sssk_k2Gi`gAbA9h>*L0H={y9W4fs8%W z_t<*bwu%tettUjCxc(66SZ z63WM=e4r=`-!0ct*^g=@w@I7`;S%FM~SD2BvUlFZq9;V&;;i^A^? zj$-K#btm;uGx1TE-q|uUlgp?M(}$|(*^0nfW0plt!-0vFnRiKHvP*T9W4y<0HH!|0 zvn->bhh4`w&Ec`(x@?YJmn3Gg5~$@(%jaivKEe5n+fif6@r>C?j+_#b1JltJ=^HaV zC0<)hpZ2rJfJ+Skk3%@l@=!fGjRrPWk3St2Bl3KlCKlp7-EQ<97F3)L$5zKD+^tksFj)ns^uXa zkK3K=-znPr-+9twM%5&J#ED6*G0q znu5}r#)(jKR2$R<7tBEWT9kSa8n#JXM#ok>bC)iPD7mMqV8+utEcb%X%|f4sOCG5U zr(Z+zI^lXw=cZmSCUt+x(;DCvRa5paeI(^xJ4%g!2~yW0ij7;beC0cA#=7MkiXd^XLzn#^p?O_LtTd~r9SXUjuy zmUgCTP4}|y!>%zWzmcH5W%LOl^^-wo={7P9!w*b=B|@9ECL-fxf(y=s#8vOo!#Ky2E+6=yYB3Z?Ljso9nkDt83U&48>5Wfl;zU-%apblkecs$ntPZ~;HXp3qr zJ)B-Oj*CN@B?_^Bs?VsMP4yXTUrS;>3cTAvb5AK=+)1Hl1MBCJ^{~wEYDi;Bi4X!! zNozvJBPHkt$GH^u*K&gH0iF#aTzl=X*jE0-Bvj2Q1z$ui*{r0GyYKu@rZW}L9In9Z zKfmFSxR?!-fnxmgdyEtPQ~(#j#M=X!F^z-Ec)`%eZt7h*y!(u;#&~rm8j@g#x+@e3 zgLrJCq`o;BPZtK+8auCev7?#=xgLIkgQEmG9p;SaN-ST3uAi_wi7<_ zU#vLlsqD&@|AM9IX_rs8sKSc*wO&WSJ=Xjw!}Hbf|y$wx-e}3#?Ct*Ix3;?KU+? zjCb`M+CuyX{l9HtsW)?%W^;mcC>Z+xIAn7!S5cVIARrFOEDFp(Q+zGdpS3ki?_};M z*NxT?6Y5y{KUgwq02%cARq@*TPg=#z4qIDtN7}ot?&^_n7j(dzKLl9H7ZkQG%}5Jq zz;QfS-=AN4ZM4g;(7jxD*1I!YYX=h+bK7CtTmF2SmPpo6mjuWK+6YJ1mft!BWFLb z{FnnZXFt6B#8FF$F2d0>vmZZ#@%ttO!{3L|DtPl* zesZUdBY_RK!_%8MUivItGQLgB4e+oeCTL9~wMn_%qCF!WQ}Q zRe4WMx->V)FDk0>d;+4JUEbDuBioN6!K3q6b6XvDKeq5x{~^F7JF53KGvZrO@R<5r zP4GfNYWXJc2X%O5Ty`41OQ4nk!~KD2-;!f1!My?3B^{yYmZ0%kbj>rh*W8wlt}8cp zVY@UyvQ=IoI}WMDqYKON3%;wHjrgh3r!DWnQqp$^kYcCcHt*SAyN>QC({XI)+>Ht8 zKD**xLDE*h^O->v8FOO2hMjFUZGzL*A2mg+54i-yG?f_ix~yIG#dcn+^lLH0X0n|_ zqdZ+mC#pLty*=oi?mDu9^q&Bn$5j^$Yq>m+CfRq`{#m>MstNTpoWk+p*C7FvagGY@ zH6ygJUs6egP{&;dhc-W(+|`H;+})QSmIzpTuK_dRNv3nbQ(rt+2npF;*}0iBH)u^I zu46z(heR*6>@h8E4@hS`LZh&rYtP%fSlTZ!Rb`@_CfU~_#%!}sB&3%~SWIjul~Heg zqS1JDgrjlVykQPZS1;XBHJl@fT?d^}rTeHTNcuS&*c2S%o>5Rx+r_8D z`pZ;j@740FK!f%)x$J~0U3$C3xGrV8L@8IW@t3hAV0(B^eS17Ss$Wj>HoE(C6AD;) zh}a|J0+Ab!-8^Ekp3Zd*AgXwez&Ho{k#T@yo1>KJEjgf&JB2TEk2XqjOgDin-#t*E z>{9n+;6Pq$=>Uy)VyNuGsMpB5w<1K<2uDZee`@I6s@_s-4gn@*1IX7IvP0GGgLo4S2rEyVz6Bo^{#jcD98G%1 zpOTsK_xehD-h{JUum*@Bly;R;O3KoC&z5#NU0w!?<4r>El2zvPy8=?H;W>ZZnOEG( zGyPd(@V4!R;Cx^U+JE}Ie0OKjf#!Sa8mD2fdp#Jg)c5ayw1K!@GNiYbCPi>#(41nqZCrHu zOQIF;q{$tzj0vdssUkkaIYV$G8M$i?kgci@1x0Yd0v8JkqOPFna%M@G>xm1mO7#zg zq_95Wel1vTcH3A-qK~9#fB=p#+kbHWlT%WeYhTV}#iN6XE%T*?i7)kK!xWzj<3!0# z?l-}_{v+&H7fe;R!um?}>THGR3@`;k&YlfrcR_ocQ+b^Gs4BfEn}I{0E!7^ZNkcMR z=^eC?4zY|XcQq1Q6BwsKFNSDXXo+@ThwQ@La56f_>krCJG-4t0y93dcRBeuRl9e`1 z~oHr7#>H+mMqTgFw-o_|nLR#uzb70wOsA*#4km*VxR;PUX85ftI@U zlv{Q=k1?^-S0%?n-cwR#ewlj?Wwsz^WQ~v>%b>k(eroD3H2b&v1wite;M%gD}iJgIo3Xy zO_oTSJS!86G8QrVUn!OkG1v-wSf7G^8)ADThLE63wkudgt!8M*>CTs;U%x`xt}@47 zSyfkiD0-~&OkyRiyi+=f-u_a5H|r7UI*mS|l#XfeUoB?mlLCX7vNui2V?WM`ZctBi zx;8{21g-=K3(uydwFHPP%#75HB}-V#EXI;aerz;0+j`oJiRPE3a3Tu4^;Nw6NBY&n z_PB%orF$!~vZlzOh|Cj?EY%kp3nZVvXwHhhiSG%R(Rtlf@y;QMy9^`T6y*)|QwH7P0}|dnX^%&ww)$aA{rf+{?uG3FI@rh{ zAoipnASD0A(y@}|IZ%NZ>)!taZ&<2VNsL6Kqj|6rgxg2#;c@k_Ezo6*LI>cX_?O~J z2CH*lu4^cbsXfrpwwwHbrBxp^LKrpcHjEGy!IYj?|>g1WSeu?!5HOSX78@JKcc{J$5fMdIouyv!GFBc z#y)C=j=sP9KT=6jmpqTJ8E}87q=9lk?2@~sJ?IPAPiWk}@&zF%8u5P=1^;Rm`coGB zm-=a*??6A1!+zML-JcCbs!IN)egA`9_&4Yj%hpaDeIH zmhg4bO8fHE+;5V!!awx-Nd>MSgse}asCtPd@Ol>yC6c&5je$7A-JgOu!n$y*r#x!z zLIrhj4!E6d3Pi5VeI0Th)@A>Jz)18!rlNqT+-AKoMWC- zVcp`#Z6tR`9v^ndk2^hvf_I4;-9vAzVcot+ZV0bL0?UMi+&&bWJYMWR75`=q;)iXWX81)Gnr}$VF2> zr@_j}mAV0|OV@cuW`(zNq^aZ?=2{AIj9U178P!#@1lAH2ua3lE2YWg~d$qPLZkgqP>^3zrbc6FnS&pR(53!d8XWrla>-MU`wk9~Y)9A-UsSg0J+ zao01`-tc64h1dj3^rSclq9A9C8Jy*t5kBS|d~Sd&#Hmf94u)LIy0#=CBM(U&am8>yh+5F(PZ&Q- z9NH0xBEiheMa8cf1Jydvw|e2*GgquwVew!Qr$WFyc2ql8qZ0xP$oSpyHS^MWR5T*e z(ItVheTAYO5qU|r)?wWlnz5H2q)p^yusdyQb5hORR#=rSP09>AK0X_)s&&72JB&qI zFmDlasC9inqxo!4yNA?i&yW%!8*ZK|Z_+2^I>^9X%|P4TqiMXQ2rhcF%r%BXsj*$| z6wYM`oKh-B28!GUa1?Aj#+I<@Oi4eD^Ts=PTuauAJUK?BZKk4V z&>A1#b2Aga9WEZoyRbZqIqk=15w2BLgg*nVV{O}RK)ld@v+m0vlA2=RTs4@>{`Ito z35||aWBxD!;aPk-9~6C7-c@=%nLXJ4O(n84RbnS#0E6b{|60I<#6P_q&*FGmLC zsOm7*^(P5shd9BzIFdxmL|65-xl$AsX4|QsoL%b3Tc8}OCCdUUNSfouMf`ghjrcxz zj}zML#=TjUJet%^%{bwgdCUVoVAUcjj)O!u`%Q=8Uo83ZhczoaL7z>>F|K9D=P)=^Rjq) zx9jh=n~7og_#&<5Q9hBTL(jx;)N~V7TO4FT%9lnz_sD8l>6Ye~8!BIzK0Bupm4(Ve zOq7KZhpD3D9Pys9NVJYa&`^p2XMVrZIAbQ$!+VW*mU5+ zRt2OYKN#N|0J4VOs{KL*9VKu_Cj5c$3&~ zU<`2EEGWozUEqw;1nshuK(ojNl4<ix5d8d{4n;OzueZCkO=Dug=GrIR!|dd= z@lpG!@OLLHl2C5=OUF@;6dYRqspz0iqYT;f{nkT)lCdW_`7{;tgD`xnc~~d4bKeX z61V(03$5$~BQX=`diA%rR)zeYf5qtX}w(yG8Aj)49lV&#t>?pf#$ zF`ibYs%BatN-Q5;<~lvAOtB|8Ck^9wETTx2JXCyt?NY-cL(O-cRH30AIH3B;*}Ew% zFh?kex!=2NK#!`OoD^#MM*9<7z|vv73^IIVOKKOtb+KY*%b^)^5Z-7on@~kvue|{} zayv??j7{#MU>B%jh^9MG`BXQ}#;5fi5;)xsSoG9iIK2{1xm<6WAB`)z6CA%tpow6^ zGDz@{!v;uGoX~oRTtcRwJXLd(4M@Mml-u!ReUmFT@HwVR#OEeQC$3`pR%&8&UbQS) zALZP3z;B`>t5X&%7SVsc$gC^Kl?tHA^j}K zU>LOm8yOj_sSw|TI-r&>H;Y{ADj6P?Jw-vO+6XS-?q**AblCQ?SW5`_m6~>lQi&eL zl^I0X_Ol!kXi9`))@+H5?&%MK_NP@U?`8FJ-dNdzfbkdayN4+-==^_eb+kXK*nhNU z3C+I*{{Rv9`FF3_J#XY5Ya|$oLbdzA>1w*vto5Lm&AB5~N%P*H*0xj+`Ut4Fs3<_C zv3a=@{^i#03+K#n`p&{0W2u+$;Ds?uSOY59K936%v&E%XE`ZB*dl>eh-ws-^rfXPL zmH~GfD$gLhEM=u%@^W`F=SLH$PMu99g4UKo*g#%yK{U+sz|b@Ko(f7^ z8uhUrk0*=1mM$DdZvjgA#oH>f_5#2IbtMlqpM+x{>@-R*;6062JR6{BO!jEJVjY?x z`Jf?cijfq-w?^tc%Ez|5Hy1O`eTo_AA4(r%?I!?>U@)`#!iG_iU%I3X=t%106*Je8 z2G%-ui2i(z(H&Pic8N|i@?qG;*iObfqdPd1thV6t+Z7_J$2Nwua#wmfFBP+k9M^Vt;JL1uX5{Y303^zpKA4AqT};l?@O_c z9CIxFgCg%F^1g60`QgTM%5(zaKu=?T((GvC1}f*;PREamh|5N(L)!UF68Lx zgx+9-lKfId%O5m%OR*DnpoR%S$Sb1NwXts4evPp9t$34_Sl79D6;ALN705S5%MZO~ zzGO$Av=Ydc={Y%ZIg`;hW#}Ac=q!Cf-SXEtBE*8H5pJV>)Ra?orl5onQms%V#sm6u za=|-$Ep#2~!cL^yGwvsib|)f#kFXFT9T2G@ACi#ie(KVa02@dLbo^*PPcr?`ct&(` z*-gB^dUhS4MvDF6#LuF>r@XMRKi{Xr_$KSM&D!1BLb=Q>>r0wXn*T~VEA=~s;bG4s z`}kvu7~Bo_Xps|oXf&~;nMh{fqUsR&*DR^@iL3)-Z+mNhM2xNMM{xevd^5u1of~oQP}f15`PQq=Q*5!ci-|K(3z!D96(A9=XxejLXX-hTQgX zHEi&Q7xQ&~!P@zaE!`^f>fLf^>P3!AkVc$1X*RGK4!X`TT)bSFh2F_hgpPF@I3swH zafWN@(drH&6S6NU(lHCyA%hcM5pK&qL~|R?w+*kB8=N>NDo4d`W*k89={>YKj%nnB z%bPn#U1(zlT*38$>=Fpu^hoWyHrs{w7BC2m?#_GxYwGLRf$R9>@IlN%9>tEgsm0_uDlNq{JJ`_FU^+i}1f~og|RrU+goG_nTLnUaAMUI$7?Gr3G=$b#AM} zbPE~--K@G7I8`;Xs@@;sR4c}O7`)(U0ZaR=r;`hK-cq#>eDpl`YzF8tPiLw-0G> z;P=T!PWHqonEI}}d#C&3L-!3Fro;R8DyK#ry9;mTrw={NLGv7!h%tuM5*Qtj=ZTky z&2MCc3_B^)qse@HPojn~b#LP@l%iNBN1gXVWv+iJ!T(uKY$rj=p%Cp!lu3H-4=f`8 zA5QhofPCc0e;K<}*#9SOtN=;~)Z5ZT5g2NMtU?>GV}Wo2!^j?0RFlOoV22HBz)3Pn z<1LA9V3HJ1tDr|ePh+(H!vEY%@8e_&ulG~f`(pZB0WNyfnT2pYt|I>jfcRYJW_nG( zKjs~oKzo9S&EK81B$+HIdYFtgCFxGhwugIS{tFx$%Y;L-;7)5F41fCo`S+6|UbItD z(wQlWQEk!I%U*46+q~5iMs9%&nT=XQdlh9Pb{M51v|15*? z7v6`1IFHG*fX1@S8qsyma5k^4*ymFGWMrzpAg(UG_mN=S{9>RZAz-U@W4EuQ$(6|0 zz5EeuF7i}Zp4)8E(c~ZpI#j34*2sYF(i_5^BioO@u7Gn?RZH^XwKL30D|MmG#>`ps zX1m>2Xl9YMtT1Ddbd#RVA{cl6SH~qBQvFMvK{THoF`ICctt)GGOrB#@8plZqXC|($ zeoR*VuT!`(9~tN@Wg{Uf^6bm>%q|B_L@p&1*4CoVQd}2rlO2;1aCBeG=y8JBezGape*?JHKZgNrYlc>9^V+CzbZ#T)?4%lrJwiHOtqsyp0h1?Dci{)Ve*SL_`R7S^pCNV(c-0cUM89xN$QynijOBh_ym$t~ zx1dyfh-U;+zbqe*PTF)B@sElx@^rQ^(R8IYXDAs37?E)wb9yj4j4c$DBK6IJM>T>z z0m>4;4pwA1d9)PDwf|yBbu|`R4yo|KpGEBlnlFq79AcCIN}I(-(nTsChea=N%5AwD zVy-g*BJ4cRE{G9>^dil8W6Oe48HTYO3-3{Up$1{2m3D=AOxut+>F_P9l@jWqP%;M{n-(Z~1Xyv9V^o4n1R z6I!D?x>R}VKR`d8|Ap-fd|N*&x}WX`<`&VJAN1=|_yymZKL2&r4Dx`3heI#f0igDX zTscn(l=CVWhd_7+Pk1?JUj7#sf(w)+o2AIC|!aW(Lr0F`I)Nz#n zeSD=1ahLWXz}mwV{5JVF09O!Y5Ze4F0U=_zgE|;FdM+O3u2;qF@V7PxgCX0ayCK9| z^eA#D3mrT1#ANQ{%OW#T%%LBUAZDL5lQ?eQ6xEMESc>dj93nqvU#-cXJw~c{17Mb) z_QA$V@GEfqUMKOflUa~hf~k*0whw1C{ob7AhEBx~(=ht*>Rl3IPrae1oQZ>XX}#6F z#nH-XJT38uaF|?dxR<=x6wc(kyJbh$Qgd3tt;}wELZL>hpA2b?@oO*& z4)j;HYOf%yT>Bg1opdZx?6YRRdK01}UN3(}?IlH4`%I6+pKt@^hLP5KEBrrm2TOwX zHB4&uoK5UayQSJarCJXD|Aa_?|Fl<+Iz0rlNyc0n1tE zISnoHns?i#))Y;=?VYZ`b}_XU_AO>tGn)--U3RPVyf$Bi=wj;|H75z%Qp`bGrIK>b z`aDKe9F5SfSp-78702V}!NZjfhgi67h*^2tKebur6PsHY8~nBy^u_LZ0|&G@r;f}n z;k_z@ltFEpzDd1f5u6;ZD2a#pQn zn>B(yA!zoJonE`FB9F9P-d0&~m%NU)|Jn-caG$t64-GqH`|m{4(u+-X8FcSYml+jL zUw@oEixq0Ot$1kQ;J%^+7Oj=7KQ9gb8sS9bjz+B(q28NF(q{>>S#yx(uQKapK?b3M zNU1DJKx7E%Y!(R_A}Fs_=s}eFf*)BJ9NswiF>$#hxPq}{hgo{I+Os$4!4uh_SN@Jq zjk9g=wMMUCv!gOPjV<`QqNb|kUL|I;t3sBK?w~l+G#*}h8rB%H`d<_wv@juy%3QOl z>W#Q+^%xUibX4s|+2J1?HRIxnp#errp+Tie`Xjm~#@d4FcU&T^2bb-N!?U8gU=!_T zYK_05fB>3^%T`H2i46Dj7cH0jt0?gFBQBSFJsvBV^Ni4nEqV(!B!nfMLtikI<{293 zMx?<5Pg;5B!#A>bVB|nYc))Fdl?h3q*Uwq>1 z*!T;uqf{xgyRyM3t26H1Nz-!UXf)U|>zUJlmC*8p!Z07^=q`9yNPU~^o#_R;sQy5X z`(Ndu;kzf!Ka~f=${PO-%&}zJpK)P8RMiUL3BwML{YY`WfalfhuZ@3xbz8#vvWY`D z6okbbfd_q^+P6%?rWD}qbE%=wjTrI6W1b)QQ*BXq(0DU%o9f)BHVSFk*;|zMOI5W) zt2Q_q+^6#2oKv(=MPvSsfOsc>sNF zH$LT!2l*YVB>Yd9?_naQU-U>MQ`Vx)^tPH$)T)X+tw5!m1Y?SCTzqBD&Fj|^e$`(f zs{?If`Sy%Vau8@`s{+{wjP;zHlE`C;gG{}-veO9XSy9h{HRM}HyQb+vv)Uj}K;=$y zR_anc&1GkcfwAW3Re-a`BQF!iMWY{OJ5*nP4gxGUiSR`Yjj^8d-*oul464Q(ev4cJ zp+C@@EXHtMXTb)%E!9SRp!$UGb=59FV$1vTBe0)=x?vXtql9YGI-7)JpN)2dv6s}o zmka&)_qAF5a=$B$-;?IkcNyF5b2D`7ncnEG2GY6ngRYYg{B=+)`T7Gpl8OLmq_XcuL=<$zZP~CgKI5~Yrt2m?&G=>_mm~=CI7(VsM5q2`5r_mq! z%Q2J1g%E9KPNu{zfC+NLyu*6mI{ zmJpvP1M$Ujg26-aFVqnnq z`6G4D`ae5*7uUI`x4E~sqq)66w(VYx+uh8$-Agem18f(5p{y0HgnLMCMC_zfGKz*YL+oPYE0`xA{Sd_C{uDIE!P$-9 z-3^n27hq&gY-yt7ic@4*83QFD8#_oIQBRbSsz-jXQBUu)T)0xO2H}1{m$s~qmRIx| zj(C&KWRkZcV?5YfX8l6z7Gejwar#rMtHM`1z;uN!Q( zI~3IFm5s{unOS3H_WB%cO2t(O+TI!*&qDtMkvtJ;fYQjM; z%~z3_&vA7f8mFR4HfBG4QPm9pDlGJax)=;E0s?!#Y0^CQ>*odn<%>jA~6sqGyR zV*w_l2YNiwyDVTm-UYF*24nrx$fUdg*CZZ2vEs``@gb_Q)=G>}ObB#!jdA)aOFz>X zC-gImDs=E8q!l{3*6yWAA#2=Nc2DHenatL7pr4<&{W1R>+SG47E&o--%6)jx5m$}D zRIq!_;5ZSJ`emVcL`!Bk~2)9bTjPA z4-<=#2H^;bdWAy~=nM%vhGt}K#e(HDZuAJSNsid!X(I+IGDG`L4edDX4%}}~@EuXL z73(boYB86zr#;3N$-*hUU`(wm{7qtyY=lMRUE5QAwAkpz%*rj>FudXzZA?&O*sWDQ zIkXqV&X&W=7KnwbMf=neg#6#gGZe3+y6HdUDT)IELi_(Um07wNo7tH&B?F;gl8wml zfL<8mm_N{po69yD+^{9XDd6xc33Gw5jRPn;Xe0?J1r|Z}Jvmqx_ZOPmH!6o|CgmHE z%hHX>+yaV+7&+Y3f1(twF{l+ieePy2dig#qJ>7YC7(@;GkY{gtyuW+B?+}#)pYDr6 z)}mu++YT5p@$XqXd-NIWmG5OSA<^^$fm$@&N8{DsUa{M~{~0x>cH+192OmgBWfiK% zse4IpulgvigIT!UqM{|xevMJ29)(B0Zv9=-bkC{|yoJPEzUP z0dw-aI>1k1aJ`hlbMgc~V4D%xe=**!?uWmpa{o)Hk24F2j8 z8p6;1l({t3UE*kLcVz>We6gH35?57*t!NzTSzP`0SHV19EEVLMM`mOq@LpP!I1cw9 z8P?x#TRPNpb4$c>y;kaoeTr+$Fo@DU;!&Zk^ePhdvHG4HOZnGa_e-d7We6(AFkcZ% zNO|cIY;uI=inQ$Sz$9jcY602pA!mU^_V-3!y?JSRJO{S%vFG;&c8~m6F-Zwjwt(Om zib3;Eh~Dz#G?q3da@uGS;1)ZsH{i4b)BG>L_@+yE^Z9RsycuITY@XNB8Y_B!@N^H} zp3ll_M%Ne*tg)Fy)XHlK1C{e8WErhfQC>yd#1wP1{xNu<6K9&6?|9{J7JJ1oLH?X8 z@Ss%p=3*9KYVc}a6M|T+p zyQ#e1N3IMmwnoT4$YZr;~c%x9A~lI-u5V za0VIh9L5yz;tr@ZfyMB@C=mNcmfbY!_;5LXQu#_0XiPX`S!vk+!u4z3<0JNu-u-sf zFWC2@wOO#l{})eJaq#vY5-xP81ou;O@E=%9wmB8OSxPS6`RoYqKe)sDubI(C`Va}R z{J{

sI}q3Gv?;5F*W|qh4+8L^}q1?xQ1y z)Gn!)EMppj$wB(?Gabe#TnqiEQDZF=jgOmeAlDv?DN1itWnKki1aoGLQwRz?+6 z!1yhy0Enr$SL09#-O`q7A&NPgq-ffip%kkn9!VuDkx4ei(I^dpp;8zr z+o+8y$F4$I1-xkCxuyFSNM?dob*AIBFheTE6Oo`_9g$Eq+*8S_j5Igt9BAVdAmXZB zXb|y?VL=s5%*d0ETW&5awjevM!Z$gCAymjPEriM5MisCQwOOaI&9*GHo=-HD99bHH zYgCm*ur^7>z(&~O>ZCc)KhY7?Wni?hddnikr#vnS1(sDqXh@Gn(3CD!m)I6b)+~Zb-4%lwQXje?Q?p%X7tMb$x!Y z?}{$30^eNbAB>Q&1eV?1;+j^DSeb}clWQXrS29rB8B27->vLe^B&Aeg4Qe>N&AIk) z{yf56SDN;%dBs8Mn0YLk(&4exT-Rv}>@+??LyqQ}LeynR6;B)vO?8wCS~5jcq^#0b z8x$~Nr;pY3-2+6-y|JNP`MT9=J$w~W+AeBGfbq!F-pk$DCrb3qH?tQ$AC31!64)n5 zG@-w^s7>oNS$2^4l`J&^^a4#bG#5xCdYZ=6LYHIt=X<)s7|sr#y7{Id5sBzsyYCpO zl;x2mFlT1qmBK%~%`IE<_U+wR3jxjP3@Z(2Xk%XT>BX{SlOeP2PjJQS%vyXx zK-DZmPH_9=n~}!EH61&Y8u**Crz{--f9T|xUt~79NN0!2*HN7;1VR(->1;_4f6~U? zPgDL@&3lf)Nh$uytmI&wlYEmMx( zwmVT_+%Fw-L?a*xWSFD!#JfuS3=uaX1>!8@j??i6J5Pj+(IrF+Sl#fMQ73R*hF%Hp zRv6q#c;-FqoW;1Ty62s#>ORPe2+l^_e|XPp_6>y)lcPpvHkq@}`S7zo}5 zdQbZMzuHCdzN~IYz+nKuw%!HEY->35U0CB!Llf$^=F}UPz^ugmsYKvRLl!c z@&?#;6E+7ac!S_t?hv{M99{dnSUw`MT@^mR_(vWd*?6o2Qt=N;u}2c(v|?>(p0^{Y zk>9Pv<1FFay#WHf4oPyPJo<80U~uNG&H%!&{3XtZ#Wb>Zwv{UgMOLzMJ07r|zo*r6 zh;E@hSoiH|eL12x%3=i$K(LqOf{-t#2FHWfJn&5lIbfgfHA z{L(4xCc1l8uI8x8y2TGqPU?Q%=Ev%dSNMs;Q-o+u?D{E9?pXJ~ws7pwL)QANK`))x zUCkRB<{J+$w@uyYb;&+=bpzq-oMq0|c=i>#s3!ZBEVpmQ9nE|}iZh7WQT zC9_lM9jYC^?#2RNn&Yzcn(u3LE(}P1b z`B!Yv9J_~SefHP}kep@h=0rtn`45(NL|1U1tM7GlZ_l~F*@Qo3+rr?|r2Q*XL+<3> z?A^|5z3DvEC;DI7qEkwGP!0K#RQXZ7GFS5dtFf+a7!pL6a$`{do%i#RvF z%wVdH-S#z?;W@izP8cv|OiI>1Z@*HeW(~oOa+L|m3lpq?QI$aERzaFgbKtPQY@WyZ za~6YMM#p$%Dc?CdHuep&|O8*?Wn?zI%Lw(}@rH)kA^I_KW35L@s zOC(ykjHkR2c0+3~cbzbst+4iTZs4GMy=$coCg=|UfKya3IV%H5?Tb3LI?jy{Ck;m^ zks}jMtlE5l0b=kxvc)rz97z?77eyuFoB`v8bg6P8w);lb*7!~KvtBjHEN^7G-h}Vh zrA?N-{i;6>%Ghs7gqM1MI+g;yT5j4qT=H1)IO$#axCmd4r@ozuca?a``NeqRP#oi- zAm5HJaiE~v>_av*(9s(EXt>)kVnhVzHa)g~KLDJMzVzNb^V=E$+nOF~W$jj{V~Rnz zUH~OQvB5V^rGQ?8SW2X1>46YKvj{iGi4bK$q5aNvk`iLY@@YbHL(d7{JVCd4Uvv2D z&S1UlWTj_MKhV}%H!_w}IO!0obtDmPxm1Y|?sZjvSSr zHnAwW3y&yj5;^AkJKme+>lS3fOwX609xV@0H%|+9Pq?L;%Al$OV4d;|^VO0|X~2w* zY9l`RW-Q+EeIP>HW%7KMp~O)#89B2l-1V+l3m#Zml4mk0WCzu%vK8_n(}6g9epdXu zCqUIO+J#|Eao*U3cYG3kHe8rWfvTxiB7N7BixT;Gq1~MF+6J1x&=hH%nu=N3E&BtT z{gs?kLJN^fEhl`d;2+nq>2j>C3c>YG(?3s|$?gVrD}XdNYFu(Vs`->A-{&&R@_cn5 zHVyX1L0K@)EzaMy(Hq&SOPkL3Bb8L)1t(#yl+62@4f&dz3I@L7O#SG>`H6xiJ58DZ z$Vqf8=$=3((t|R~T<(c%iq2Dtxe_;Vnqbw>7lCiu>=$1k^L-16u5(KJ)m)XM(HXU?Jo;&=k8yr`J&0k`sc<6rA8mgoda||PV`k9)Ld>xxGeT|DS zeH{h8HRc$%_3U$WsQv6{-TSc$D|MG?vqw|RF_M!{o*lGyp2wu?tyjlMm4^=K*e26l zz{Cq(DD@~3fF1o?s*i+=%&ax6k~@r$iW6$I{H#F(CY1v4jP~S#N0Kb671OR(oZj-! zB3wRl)h70Eu%u-vi|8erlTfL@LqEB$w>nfMh?}G&(|XMyZe<91;=jq{??vqFAm*L8 zmWVf}Mj>8i`-Ith+S};0TpG2HS}yIvtLcHZ9PsX^XtWW3zbY3B%UuTTrJ`Bi7y?=% zRj@ON>G4<#LE?#*x(TszgHvxkXsUq1nqTVp>$cAn9=7C=n;`K#&Znax~LeF>LL znBB{l@pwhgS8z65P#a7SA_ZQVmtQ`9WU$Nny@xKZ2=)^F`CCcC`1qu7BHND)<@p)p z^%MNFVK>00Hn*+)7K(K7ikh!`BI<84YA=eEK*C_zUgHQ_t_id^7&T5|nq?-nTKSy5oe}+Zb*TifC>{+z&9a#0q7w zjw$R6nSO~C(f2-9@_$@`yl+JQq)X{5#$(rDt{oin3Z_ZO!e7|iG@IHNoeh13;aike zzE2BUYO`>$>cneRVb>6Aqf|bZ=RecVg|S~{d{R!z`mGsJK#I}Oytbc2^Uj zK_)TOxYL!7-91IS@sDZ81&OludvQE9yVZ~CL(3R1l7fdX-T;Ktc#B>PK)0iv1Uv!IKwJp?Ri))a$)i6rv%CxrPyD zF1;KiNTkQu;nvJw>q=4#n+Q8scP@ffn+5C>?C1)b;#e{rZ>Ba#m9N&0sk2`zC@!*y z21{!QStW)SB_D*Q4HE;YWRQv^b9;NvjnnvrQVqq%rqg0sXMW-ez;^^x6r_TlMVF@9w1R25faD&|S_*x`tI zLa+RHlEWIj;o_V;f^(qsASh+5AjL3A$ndI*3Qti&09N#cY6YY9g#!V9Wj(0_5*WjS`xfgn;?Isms_k_HQ!48 zYMlhZ?!57@6W@sIXSh6l)#Wxb<3>9uN6p}~iKZX0S7Q1zL9>L6j<4TS?RD6fO?ukm zFxTnqD4BNyr%K%cgq?CorDco?GO{eOImiplc~WDMn<^-Q`x}B`-6hSb+!BTE&*KQk z*uGlKhByN2)`f@yII=*7D%`J)Q-V@oFX@03UWmi9t>+QF4KSzu+JIJK_v_}hdcCJY z4~al&(i~aLiH^!Xy4|n&bX=em;yhx+nZi1bmCs?b&^Yf*vZ?-6R$!)2d9oU zNXqo2b2kUf&=xav3Te`n`t>>C&Evb|wa8THONjFn==Y@aTqD@`T@*p4MC5^>-aVpU zlvoGti=bloMzy5aHXB9-d`7G}ryug@&av4<6$kCD6_bQJ&hy!+Ba!C|syrLOq8AQM zXY^l~*I9t}>x{UdGB|d_f-0gSX8T4mfm*h_krVCM#zKo=RHG*o0orThNJ!e*E{w)4 z)>BG#%W70d$g0|xPs%Qe^TSsUc(zVGKIaN&@46F)|ByeWYY_*1D$|Swjmi9I?w8BbWYEHTT%#8mmp8 zt9^kQS?bJwJxHoJk=sg2=<7Znxr<~~E!iTf`S?ivM)FW~ml4&w2d#GWie@am`7N4y zk)cK-mH5tNhObkpNyzjy33ivb7W>ZEU0auyg8+{WcpvbStu>7WYV&_Av1)y2cuo{58AuV`K{Ag3G`FSWbE`PlF} zo}2lVBZOJ>5=mC0k=BEmmYxZ`Uu8WkXSqwuP3c4bPttq``_cS)#4 zR-l8>ZZPseC>9E1)`M6b*ii;B)(@UZ&Y%rog6esw@W=3u@yqSl$0|!MvpDnpTnnN^ zBp3|5jLiGaY3N2NU$zB28v7ymIKZCXU=qPb!LN=Pl=<^z@;uQSjg_3*0&B;0v7KXO zi~YBltw-_*i=JcHL`_qz?4KTu{tiASz$d8}dn;2|lwE6z5K-1+cwX7c?z<>FQrOL+{~R zS%(w=V0j)lpa~ zwl2jYTcd%Sh_lm0oY|(SjUxApBFeO*^Db;}DT*{iNuOgslBjj09Nshww6h9I+qLbZ z@a=(u!y}TBvEvpwQCJqif&WAl@E=8BezArT1MYQmbIvIb#_}cs`TR@*YomX3a@*c z;I6tA4;uZ_s=^pJPX&%Q;o^f0Yqbiq7tfi)>{d1&i!i|JucQh^XXZX)LBjn~CAKS< zr)bMX|4D(6--6Rt+(9-+64i#ZOeU0Ysf%h8)AKTvFJ4=_(6z0AebKSoexy6kB6i2` zI*RCJ!@(9hdHf2n`Bc(^5=q?wfN_Hemlr)A^IVipiyryE-h0omC{q$Gj`C!%)4ivSBEvmdGL zoI+y0l52QEnm`>S*(SsJL=#Ib4E=ie8#%OI#1c5hK4qz>bPG5K;`JA=o_&)Dd`c|j$j$YHP3*oCX`D+OHFr9i>Q8n=m@k)Ua>b$r>cz<(ITiJNW*r}-3iQ~pEFh&y z3w!_ZgIuVMQ|1xr52~N6?6bR<-??lJ@-(CA6#|E&W0KX_d3cmo`y|$Q6~hoSUI3Fvi-2quCtu*awVN4NdO~2Ye1sr@N^EcXjsg`k#Rw0dJ(2R* zm~fc+i`Il|SNbaYYKVTDl+nf42&%M&$FIs|R>eI=g|_)e8_t`nL8WhhK6ud<9?HFC za{5gj9Wv+FhfzUqj5LU)C!-M+wRVN0C#|u57RVw{zlkav0pwWie^O2g3YWp5etA65m7doEJ+qX*hpwS;Pivsj{W3&~8xwx6$+v6dO>L93)Lo5NxpHr)Zt zmZf^NI!jK#QND2j|iMCIcs*aq=`^B226i0Qk%=O~Zxajku)Jf3al^9sc zVep^iNJsmjUJ&?qSyv+)j%YZKRKjFDOQ7i>nZxe8y09F&*kdLedm`#Cr_4|pGlySI z1*Qs$+K znbYaHyRZ;DW%JqwhW7UiiQ?{cRF1sc$*J@DPcgPO^b*VC2l$H3H zqsF~A#@1hhGFeKzOPD(p{J5r6pCXRN>sbO#!R-Wo0*yU-4IYdm{-!AAHp5ZFn^HOA z{0EvDI(eB_ny}2_=mk}oL}3IPpl#%9gSh1g*|M+0oW+Wn2S9>X` zJeqaNCKBMR7)FXISA$jZQP+ite&GkTzIDSDb=JV?VgYZYeGHkMVZman0%ue^5B5Wg z1U`6%#3mV2BW&#lX&lYhD;)Yp>AYR#HHFjxOW&17ZG@9juq`3mz6WTCU8mAYi5N(+QA1IdGS)sNUV984_bcPSLto?LE`yaR4zrXxuc z&_*DVK1wc|X2TGezYOgfk-Ivc^I<5%6!fQ2r0(QmZy>Bx+fKwRI;&MeWZHBD3o5*3 zcSNbf9Bj!-dYzSIkC{y#Sz_|(Ern9v4MKEPEI!+acLKL&r0^SZ`zJ5LN@PoJM%uWR>(8lYZQ;lzq1pxFw zw&Ku1jE%Y~JIfL4zI8IZ*}dO?siKUZ`#Y-ct+l$*t*ID5-kBjn0gG5b-oPVL#rcJX zD#w|)<&()nS0asy3kxi%wPfLznVd4{e^wA=$>jPDDG|ra!R)=njqhRUricC>imi^U zdiqb&UuZ7r-V`R~Ihv5zQfG7KhxVYW6t9c*GJViP2ZX0me1Qv8akMGjq|3!p^&yJ1 z#Z<$2>Br+jNQA}G8ofOjk3q+m7_B04yyp*(a^TTxACwFEIeKd(SfgCIk?NYE zazg#}A=mm0%a@mA&IlteENg&0dfeHiMXkSR%ZpZ@PMX3PC+1t6k(K8%7V=q|8Hdg& zff<7yXRMKC82*5kU~HX@GQ(_gu9B*}wsMJS_DiKxD&8iWorg3k!| zNts-sfz*j!n<7E+xGgxN^SQb4QZ5}iZ=ToSmK5U==DsP`L{PTYBw;4_QL0v$2+xlr zj8qFZpKGM$7lOT7_QW_~Ze|Z$JMQ$Iai5NJ0uMzVnZT}TjE^pavy!)#hf$aUwHIQzHo;sU*p#ur%tV(j2IsY|JT89M) z-^+U;`uH&&fu!Pm>@jPu>5zd|moed?IA&D5l890dv%XRVQ&yMynS=%B*|CI#rX)fm zqPQgP$^d(NSsM%CV=L51$9IP&Q;vPfhlC@}-AvRz?oYh)7`1WEh}ri)9gN8&=4d^e z-aiX6OL(hWlj%eZdb=~C@FBh91bMx8T76l$*jPj2i%vaTXJ>U$(FSY4&7=3FdmWKq zduy%r7dpFtaTk=26|Jc#uTf$g6axr{*VOImwL91|Y6|INTS|eX(>$N!UiQ=e`ZV3R zFW8B`V>q2EeXcy)x|@}YKmDVJRlFP@*YX$5l*Lt8xyS4DZjjkn;jy^sRtm!vH=yI zPVSn!D?T|iEH$l`nb+H8ll1!7UbUWT-H|qUFVU4zf{=0NQ$%Auo2T70!_A`laNbCiJJ@8rM{3qz z4)H6@H`@0yT18@fW)U&5QMx(;yTpT!_Ax4-`-MC&mv|4t!^p7@9rJgp|| zz6+GBMLZXR0{{k)ATAIW{LUK-EHpw?wd^Vicdttf|f$Y82|nB09dPs z^uCVmuNtokA=m}TNd=|D75-KSSb+uoPf}66x1K$)BnDZ``=6p zvfY8?VTiyVyP-%yz1aqpkSzBdhI)|bKC%DqNB$d9?L8%YCvQN7{|B*uw{!g0I!2`L zKzywK!#Y6yx7I=W0wO^LR*)t5LoL+$-rqzZzt!H4Uf!yW?m+}M^`P9R|IZvAM2s2= z0@4CAnbLypTi>lq{C6e}0Dx@4{^zLnM%M-aj9e^jOjw*ujZG~boLL?I{W8ZrCvvOh z7Itebw+Cb~^7nCD(J^)Yat*&LI=iurC6t@EMMw6X#tA~;$`E7Y_!|uQt@akt0V@p= zf>DP4G3Hx&PJPpeT*&<$$Vm?+Kd1-Jbfw1U_-h^Xzj*~?j@_1co&K#5_{A8--z9ge z^q;9V2niu5r42@4jtB;@KoYduxdnmKhHf?Hm_js?fIkh9+}HRN-{Phh63{dd;=rIa z3Ygz9VD}?|dgiwp|CuU*G*P@zG<5CnXvjxnKslN_8cP$mG(b*wYDp%k@6(`q)2|f` z$y6fnztytE<&JjfFy?*v6dRq10p$F@~0scw6V*HkPQ2JfIHR4hKQ2XzA2LKR&;$f2oF7Gt zmfjVyf*0{0Spx$E5 qgwP*p{nHzQqyydD_%wnmIw|p9$Ra>0#I1Ya0AOH3W<#28ul^6$15kee delta 29339 zcmZ6SV{j!vx2`j>ZQHhO+qSJ8?IaU(V%zqPGZRnDiEZ1OJLlA``<-*Us=KPId-bnX zZ&yF-?dnX3)*1+8RRsu0OfWE5STHa!F|Z_L66F8Pc$1FglLWK{vQO~t+;82#f&K5z z|02M^|7-ZyApdn2cN-Rn|8GyyBpLjF4orHc!}-tb+D|{@`d{E5I504#lq5*(6ekuU zpwEIf>KEojI)x;*%{LfXM6#i2a}9YrIa~M+ILKU43s|lq%;7$7$mY~>cFIkhu4j~+ zwT!-WoSbwGzqd8uoQSx9PBXfTYj&30gAt$AI~;m#{DYn;=TqWW|IoKKU~E| zNSViVhp6x}lJ+K&5lPam4EweEdN79Iffc3SJE(WN!szfeb<ZZ6d zL_K$Ot_J`LSbRcNt!gP4$Z#O{M|ZD<*nN^)UmNI2}P&G+u3*@>%u?XlxhuxRc6;CUSq8I^2_ry=B4u&I1G} zud?qmGJDOAAQAt-=`uF7)aJPYfRubInH`r(EP&4`>lwvKw~2cLJ&>J4xmt3e8r@xX zl0uagMRz|V%%p28oyyej;hrN+nYP*zOVhgW29EEz1I59}@yPCLjQ^r`Y{S>Fn5UU& zc|+BpI7l(xjeqcelNXZdH`+)kWS|}RVM@O;1Ow05NBHeqD^{wTNk4=m5RKJO+O6H* ztv7-xl7Ny2Nqs< zv=YaiNn{bO3p73WF5aKQQq58zK_vP%a9)Cf*BBdeS&r2XG})`(zX;x z!(=VsobY2d&-9k8cs6YTM)mfSGlQaRINVP+(dh(&H@ zgD_dYMEn!7ZFm~HqCP-?z;I(x6;ADKnAnzhD#Kd2a(zk-O1@c5$ZNC*oXor}=GEGj z6}S9wYorRJtU#@{OtC?-BP5ua1%%d@uu6uPHl*09#YF!Wt5^cy-PI?Ovk^T?-_V6+ zPA4m7V05=~-gH|(E4EXfJQJA1Y>%EBD1KT$R{6pT!|HFWFXt53ejgxl>*myt$C-k& zqbkX~jN~;YJ5lRwP7ItTAR9 z?-uT$QMW(85m%jlMPMK0UBZZRGw=4Xh{j0lT9K3xH3}U#{z84av75*h-c+Gw5t?Qz8(dtRMON{TsMDYRbc*NVJ*ZFIa7~ekbsWsKJt-C(^pH`32N$hos{c_-^9p zzlh`|avc-NqxT;Sq$wR}PX20%PdVieIZ%34rz2!M^WScf#>l2FScdnJwxw#1Sp+{# zsIX;bAzs!1&4Ez6WmPsFeHwegz9%+uibzp3zR>iz@I;k6I~0%uUnV3m11x{P?lB|T zi_BP1R9Mxe4rcNO5R(n^gJHjAQ_GH?2E>rMReBt7hZ5(Ku?BgfJu4M^6=ra559oof zsHBO=&?H5+rzB4(lfMY?UcbnF!Td*9|LLI^SPK2Owf`ZM<1YLjDF2jJ^xq=qe+y+{ zKP-?^)!oGxAm-(1Yvt@|XJO{);?8X0Xy)OOreWlQE`})tkveQ;=cd)TB=6)9Ud{M| zg)|aos;C%cr|x9_#u*M*yL$D*?8jZKV!%Aky6qmyjSSv3n3g!)pTJE2<9v^6As_3f z;|3QIu+-ZXX>>jUWOwW(^bR`PDdBh5Nl`4 ziDhy79%Ta|{K-0n9{Y+t*i1;I-KWzWI*~99*Zmk3@4{$R1L=02XTL(Zs5ohlG+e6M zErBs&7_^jUJ{tD{Vn_}5M~=BUA^Zzo(FskbM=Q{g2va^NfslwB^VcU6F-xSnJory1 z21jXR^fwfPt*gSCVKRyNjo9R&MF?O-T|i)HaT*DTKD>o2f`%jNZ)SFWLJ};KgHwIA zyc;^&1kRHK;wm1~lf#jp&QV-6*P8=jCQD3Ir<5P3LhJqSd4z$1CpL1E-_fK>4gt6y zQL(N36yS!2WCRk>t8VUT#n2N$G7otK0{x)`K6MzBeR~6J7c&}%!b+(V3FDGznFDQZ zofVc87EF$y^vNjJCG#FELz413wz11GZ9G!zR zmXnv<5R)MmyB8}6XlGnste@sPI=6t;kL=P{uhox;koDW_i0#E21L*9Vb?AW?B8Z={ z+bI)2S#m^XZ=oQ7Q6kAxBojxm(0ySdY&R7z9IGDyB&k5XQ4`!3g^#p|hLaZu2!mT5 zvEM)-{x>3^!_M{1bK46{kMj=6trii7`%%GxvPlYu$->QydKNHg>gV{;w&neG^DD|~ zfD!j!I;=MqqQ6c%kY6&RJf0s75ia;Ekr|!=u_pcd)L}n*>DOd633$oDyI}FjDLIW! zvMZA`BAD&H%f;|SB!z<@)eh@qP~kBEKCp9 zAA0MzDH`e5e&CNK7NaPMNJHi*Pb7FGeAJ}SP-kyOG?xYmB4%am-fgWVqE6c{MG_D| z3zQLP6%c|C*ElB*MpAWY*|oW=Y-Fe>J{XI@9y8k06^g7*xpe_MrSe6+4LSxcGk_f5vik-;m!E?RIv_d3`VRrNJA$b-70y_-R_7fqHLCT8V zxY}` zg{PW=!NOBV2Ih*P^(xWf(*7+lCEK=)QomzHo~B~Fx2>euL%W)B(^3&@)U%Ouw~*tK zoljBU&i}don~nVL`_dA8M-^sWJO`-2;x57oxKwt?ojMD6@{F19@^C2Sags7D{Npa+ z0$}D91|%rXkGfyg?{5VkmL(@wcZOBN=78_!qYwPJqYyZk=heI-P)7hB=neYjjh8ZR z6SHLRrjKvw23cEi%UH1n<_j2m3K3KFI0`^1hP2gT`LG^rgk4fvPS;H#-Ql@R&8xdH zAC!B*wTvibC_njW47H$naBQVAl|-{Ln|3H%S?rM$r%mN3P41gv5YJNwtXjJE4?XWs zwQkm4&-hGD2$FIw4b2NsKxyqThf&^2o|(lOo_59SnC-E7!_9%Quh7f#{B7U6t z&`&s+H_%;Sy(>1EY}mv=6zgCFmY?9jaIu-jNbEJzCCCovC*uGOoz#!Mv2a|k!zmGR z4YRRP&T1lV?n_m|Ny1}C8Mn^Qp^q?E;jA94Mk=w9CpefdV$uv{Qk$3a(v2vwkwqxF z$>VP_hG)@jh2bcnWlY)4ImB=@`}}mAZr<%f$$Y{4s1;Rxqj!pd8I}OgPS8@Y~`P_sPbJd@mq!Qi?tNBik zJjY|{m3Xsdv&@xmAp37qBKhH1btYL#7#g{?ev5;v@%dMs&l^@du%A+PA?x=YvP`Zk z_In0**)2_aK!{Z6lQc-WguJ@jwXhk>j`4L{&a^;v$bHwjQR4SwJDsWDd$;62>j>h^ z%PR1xk{}0;cS2FeoyL9Iq+b-9aerJ=avN%uIXt0Wv@G36xI=Zl zwsJ2kCmg#v!vn_C(wG(mz!9heRZ~3yalNL0eB|YX^rF z3xmHOR$IV~YR=R39-H_jJdZ+LG;2yZtPM~)zpbivoZnCLtOtZX;=34YJWo^2l^x)! zimrX1H}+bUnv>3jMueM_-DYJxw<5Av{%Pov3dgeDQflJ$q-^P!*rr&Tuf zlgzX(7w_Y5(-=pXtvy2;^Sx=`O&ZzSYXtqx#}s|6`cL1cF^_5mHGMxBz-KoP4l$6b ztr77C%W{~#vvUvpl9?z6r{zc2xMRSL*CA7jb11mB5aoaimNr@k4<34Oi z2rqag8;jg`LYNerHY*@LG%kF^p0c=WE#BT&-j=%VFZA5@jh43DP0#p__X0MW_B8(<*XXnR10~l@`ems#g zHyQ2N5{f~-)Y&=U5aq?9vQ#<|tA%Mfmdw(9`L8%kpzZnJ2A=tJ;8V#~=3{D=`Kjx+ zq2JmX4`CQ4{oHVJHjvaZc-PWw_cE3$WJ2$VF*O*~3hO9j8rwvSztomrANd4=N{HLd znVcmc>sG>uk(s*P%syFk%<^iHkv5@0$B@Z(#H*pbffuewyEbWV2%Z8w* z#kR$27bk^F{SAJd`z@Q!lJTE5l={ye7MKlqz<>ag<1T@XqRWQ1gA2EKOZJ5Z}^AS3*=HQ!0?N4N)wVitk z%(Ml+I;xDse4hV!j{?Si4lM^hTz}&)!||UR1-`RIeTzdUV{)N}y9t^wp z&1^vZ3dqA%HOk-%6BLZx3qdj>5UmxD&aw}4%Pf9K2K~~Fw+G}(eWE?gx3L`g{Vw5) zVo!IAKJ!GpcuU!^Cv#(rS5{mPM)P#%YR&>vL9Z5DaU-mW5Pd)>qk7^iA}l(=7^0NH z@+sJysMZyBkbd4Fw3R-r+<%1pwK?|F=%YIp*p1V4EI+qHHtbqYX$jhq(1emgBcY}$ z_ynNM9B|Bifq+j^8$$E1^x!OE*LD@PjDGnMRfIn?60Tvl{fXZ9VpmA|SYjcZCiQzi ztmkATGb+#`{W>^T1eFfWh?EG*2%g!b7|U8ehga53;(9-Q(<7?LpEqAB*P}vblJkd5J#vU*Mk1;~EPrRmwp$u}6XGS;;u;hhLZ_5xS{A zBM&(41bCCLR`7x_IPP3|r@c$}p`EP*TqgZVd*Io57H&feJZ#DO}g4K)WWYJj%B-$GQ$(-GGd;u5

!I{ zYUu>@elg2GmpD`xII9Tm1)Cis#!;yS>d7MUdRpX~X4$LA@m(K3jb#U3ME>_Xa#5LO zv*;iA9sk$a{vVh4hb3&>tvoyw?L0iKoUQ&Zl<1hC^=1cff9cwto+d8jp?U5oi zz-A_hzz)bLHf5Nu_*{EF#u;GMOiS?1I8w}X2A-*^)kwCmiPC)y!Nlx(E zs5$7R*A9z>v%VeOQL`W~$5EW4!xFVpM9zjU2tVL^?*#pS;5sOZ70nnL4D1jgg#=ar zXyAcyj29%VH@|ky#f{91Hp(?C$-WZ$AWGj&Dc!G0>e1}BA11yuAKB~MR#UGXte_&N zuvY5iC%+cqzL0Z7zK~^2jfOfCX4uBj>s;}(Fr)KS$;MCZEugzO38e#L=0%_{@;Gq& z*k1?uc`ZW%!5g;DpFhxvEEo;PrD)F!Y@kS>Lo!)N8scjMh}D&^-xg<^sMFvq-gt2t zY7SB%v9u4WPv8*=(VlW@Es?If>5Xbr^7dXWUyW9Yak4SFFV;P=tZY6#|u0PJd21-Ij#;P+u<$k16;2-xzGxs6y%bh4uawA&H za>zYEgW~X2@#VP2<9OTyO&y*LJy#dnW;CmR z%SBMM2r+z@V|Ux|CLGQHc}AqI88%^CTW;Oj-#KokhYWf?3O%41OG?qO2*@iKgp4jF znQ>wmZ?bTmcfQYE5U2ykp(9)ee+3b;vPMCGOFP&?_l3J42=={&6V%BqueZR(k zAvPvciO8Mr3DNn}kJ{(51Jhx*!^QQ1%AClUl7?WA6^^uLbqeJZqS&GBf6xWa{81*IuYyE?E9SpTM3T?v@tBTjr~hnNc#;a z!i3-j$=UX$F2u)GeUJ&_=OB{ynb`xA8A?#Ob3adOb`06~a&qH5I1cRajg;xypiz7& zWj!ooXE~cChb%eZ;WiV7mfz*0emphQ;vh=TiLB{$7mGzWS+SD#k=}CD7fXcEL_O4o z_gY(e#GKNv5)Q7JDww-CtVuXWBNW`r)6_{8uh_4$6Ydin0Uk`#dT?M7uJ?>lV(ZdH z0TWeLE`>wpPsypI=5d@P;iB0~Ssd>1t!bnjn7YOmzM5DdXydkB2%m89ri`L4+c3o4 zya@X@e9e)5eMRNWS4(*;YgFS@VFAf`#S5LY1iYOkDeEsIM1DW5nVl}3Hl%5{EhMsu zTT-8eR6C7=n-Bq1h;h9L{y!Um2%oVhSJQNh5f4`ICIE|qfh~c5VQ6l_q|gTKigppz2yp^w zqb_;Lyqh|&4~-&xVBDw=enYXB$M`?oAaeRS&8j5W9Q32Rbl{iEpw;(7%zF zuqN7sEVm!zF3dNpJsakI1Qo9OQZtfts5XE9MS|1mR|_-%!hyJ{t(Tg!1s;owfavq!Pt4vPxiFf@a~H=G36@UXAt{%nuc z&@U9UaX#vR)uSwxHdH-uez;4Z*@Nbyeq)Wrh5W)q58AIwK3+e#^X}}C7!K_CSNDV8 zIvwq%JlUjA-xq@4sximfsxZf!ru9`F#veNr7A)QQ3l~?Z{yjjM#j<)Rw;Hk`(CN zK)t?70bWuCKawpUQb|nGsZb?w$#P0yKu(Z=9gEZ}+>CU;OF& z5=nj^M$!j`k<`4v1y%3Z&_myPgsc&LUgjm$OT0sOy`fxQoSy>u7u#(byBl;!QTeJ# zmIvL0`0$Av)te4%b3~;gvlI>d=JDtE@gzt!CAU_&R51Yp@wSL#2?Xm1Rk8$I&879lAyZTB^z+#E(i6_BTKg0Ky!uJ+H@QY;$)1d% z*zD#k-X8=i;o;f$=zBU#q(F zmqs)tBdvUY-hRs#p+IUc%_NLm43?`VnjYGt_>^9ZiZ|fn%n9tHCOBuwrItD};i4(NKMdnH&DmX? z*eecoN&@FHj6LU!+tWsB-?2uLapUNo3x}5*WVr!y8fl#XlRG4X?< zP3T_QBDQzhhxn*f-5D`BPFj@y%D~yb5Ct{tqP&!ZirBqyd<~Rl(^cmA`PIshEZ^vS zC=G7kq9ECARPAEsSM?7V!GBfln!L3CQb&3An&=};Y}pY+7MQ{q>!?a>gyE&3;S|Ja zS6~5t*?`u|>7GuObp83AC|A@p(64_Qo`5d`NKK~l(?K0cw|I@7>$+q^g5~-_ezS&= z%~s`1@}PUH-37^L+CO0fQSc&K7*-v5P6zrC0&UWTf(4S5#fI~CjyN8tw=tEol4X_Z zL*Pn`nBSx{9g3wH)rZWL7GtP9*8uj(U-`hXj4#Fc7^=99B29|QsIu%1*|T#2aSpB~ zMMj*Jr6QV?ax8qdlLSZ%GR*k%(+6H50)F#y@%k>ZEy5xSIu5j$yJUgdig?w{HBY07 zTFy&>fW;{NY+W*K`Dikw+T^`Zv+m>^4Q0BSyE%I|Hi>nI2*=bPvFO=X=$d3Hghjwq z{D$=UXfE?Q>ZNG@kcr=ems~}qn~vhAZWQ<-9w2J`Q=i3X=(9^4pmy=ulNw;cd;le-bh zi9(mRd0mZd){NNpMbF3H4G%$HlvrTjsjy!@Xz`exg=AsjvT9CoKvo||ooQ5O8dAo* zBnuP4!AWhMiCfwjK=ri9rsE(u8Y;-%eR@le&sF%IC2{utiD>HQck14lohzhUCrBCu)iF(=Dfv1$pjf_gS+S_bw;PKSp# z!*zf4#Pu?VpN?Du_-jVj!7&Fxq2(kG<0vX<)4ltEBQKT}cjhO;DR`sVlm6zL{LL}V z=!x5kY(C#zyhh&d7aM;xY6WPHtU7yp7?EmpG6sv%*+=%f2<6r7h#jj6G;n)IKwX_l z^B>iCwvj!&gameZ!!^M~g}?>REvA}^8m6h0GV`S>S2E<`dR~!;eVEsA_Xrl@*_e*$ z+~n*~8u0QMJh+cT_V{}ozD(O~u_VB4p3P%Df*1J)fh3_D9=`(p zE0Q##v0(6qYhy|R5BNL?@K1Y(0KCIrp&VT@$dMgDM4Uf{g^|HH6qdSy?}-r{qAsfw zbb#}?{vm`s;ho%Omt+%XM2}s-)KOm9Pszlw%O3h5X71afOGQ*EZ2g1tU{!R1@+MCl z4)hHwbTnPTQH5!yoe|IZrX%ZG26`zQ zk7}lk9oAcf1~ixcA$j0YA*bb0Fql|U*(=uOs^nHSTXk)8grDey)>bq>gcR4%$%3YBD(DuDt01g z7_r_6w3?Xk(1aK$J6!Iu zEIHsx{OR>@fO!@{0P%=nn+dsTa2}d{C(40bRcbCu1FW8t%5ZFt*S}~SP|^f{T2@=9 z)#?i~3d!gKXeoOuP5KHXEwrEPCVIz`qg0Fr3 z&0r8!s4E!QzN@$Kht+px#N)ReU$#-ENnfH-U4b>L!i#`p9R!h{=aq8+I2Op-D1m=H zYe;}xY0=I`qfj8$Na(zR&08Vvu~#sLv%oH`4TuT%Hhl$}@zc8rv>6MeT05~ny+VG+ z>4>qK9lSPrYOq+9_QU?5FG0d`glbc)N>d!?QoNw{<5L8h^uM&Th4`>}`EWRuwZ*5- z4#jnTH~z6%O*Auj4`(8Gf{-~KntAx}3*pkX%&o%VnOGqDbZ$gc58MArEItLaaWPeF zBJBr6hv4AbIjE9?!(+4}n>-kR?+&K)LGbC^Xz$oys9=>X$4X@l2@J>c(jd-|&xkdh zldHw~i}JszQc4))4(5Mcf_XK#FN^;`3^z(j0wjL2JPJ_f-5*m2FG%HyeZo2zRo~UX zc20VQ5ecD46)prG&PgIelt3KP!mC-p5t^Fg{DLu~`Z1y%WM89QX5XtB>r<6Xh3Rx& zxAqqMH~8n9&P(MrPfO0GV>;{+;3=1HJ0RmZU|V3D5AeR-&`vFuTj}3+9h=x?Qr=?Dk6vJM)v!rsBKUyGfvdT>APwH1PM=zrkMq~+TmJLYK zMCYZTwn^cQye9_~W03UANbOoQ2Q*`ljMDJm$_2@vU`*&ue0dIRqx0te`YY*)(%Vm9dZE8#_D;m4{?rN)ITso&aY-R}f$_t2qj$zU@l1$h9G>#THd!?-_oO119Do9DAu_E@z|xUh%s# zolQQQQ*)GWcXsY^B?GL`@*~y~%py86`z*wy8y&wIrF~?a61w`gwkh0y47S6*HIcD+?`b+Im_&@~z zUt{aeS%<=wZwt%@!^@t6i4Ettznt?v%S=YS@va7ui3Hq!COn&FB!~rk@5`1reW51S z)LoY^`NW!F&dg7U^%Wca_rB0}i}lwZ^|2I+!tn~g*Wt6 z(retoQYOZfOhl%Dxranta0bdBBafAA7NGg|xwE16!G=1P&GHIH^gl0RgJIVZ3c3Hy61Gp$5jB%@Zu zB2pgPC}`qrW2?S#6#vIN)ZI><1aXy(<1>F{nakhpMuRw<0(1s!dEE8tJS9Q?`QFQ!+N)u8ck4CU#O&h}a^M-H2GLO!K^oItBeb{K8J_%kwOE^3f(vFzuP(`);iDI?)YVR z5xriEf(+!2JAqsi>(kmp-CYNbki0GpQ-bW@vns4v?{^Tb^J{y$WL^k{i1n`z7tlOK z_j}k{0NC^%*Npt^fxwn1OZ7QDNsg)&M)NGq0PNdIE!zgw76=sAxCP?4zs3oEH$7L2LSeHwODhsSGrK2`Cn%>PK$ zZW~HHOVt*MMzaPq`60I(Av1NG1Y`Gx*;=A3&+%;tcU_SyvjFjIrUG(9Z0Yrf*Whl2 zBYhS%yEQaVYW9%nwcKo8-19nAq#DcuA**apF6*QDYxy>WPv!{Fa1w;> z9+<;cKNopXZ#>^Di?9Bs>8vqGfw^#Hv1HK=(hvnEjcG;1(Lux)Q z9dWI1b$q0=ia;U`pN=E|VHA{`g~!UI;kH0hj1lq**`Gi{2fil?CFM)<0(Z-KN`NM5 zWcgU}@d2?kvXNQZcIohT6UpCSs9)h`ZNxB()W-7czPd=eh1EM~Uf&`Y?{T$Q_8R@* z5}|9ehS=W#U?^q(+|fs^aTA^oN8$g_GU8 zyl5vsQAWSNLT-`tfhi(cMY_5c6Lq{`*o1vV%>LG``4rIJ`nKe zq9UXqiSSy2`sgN#FO^-$378MNn*|;yl#CyDpr+mVhSR)6Z3i(+lI7D{q?FRZ-dg69 zE15-AxT{4u@7v9XVdWDS(+Nr(&1m{+|FDVlMRtHMKrcQOSOtw||2&W0{()ThlQIN+LJsJsEd1DSs-i5W8x zO_A|OF3YtD4;|k_hZ~5uMvTG$N(6c2H1PJOdZcy{FrCxn3?y0;+QTceSTue8qx8dE zI7~1Pi0<5)IMd+I$?Olg!-4A(t?}!jgmBGh2gph79Esg4n03r>cgg^1sm#oQTU4)K z$+qaP8&etb7Ie9YbIQ&?M$)6{!hPsAFp8bCa(0aMW@%!KvG-=~5AOh-Jw{~0orb#% zSy6IMaid5z%+)k0(#dp&+l^h`8Ve&tkMT?dJe>7wtxax5_X&?}1i)ohEKZ~1>-m}z zzn+$^VbG-SF?_k3SG4c^(*BdRP zPOez(KWC@Vt*v+>>(o>Bif#ch4)bQ$rWOL4g_By5;Ic#i+XbI4=jMr1VtMirvqc*o zm;L&Byrp{`@iNhBHL#bKlhEVaZ>VX`{qo-A)8b^6x$^}szP^>RoU9M8=%{|qqOmxF zsVdzZGp9v1T4LGO^SP-mt8t&M1s9*Jn+-*k>Af6V%=ySQCW-cVKMp&NyxppP>}R-0 z@60?ph4v}Q0I8~TPYyLEZZw@%n?#PZd{#PJ%y0e^jtXPX)If%D&Mhhuo{KXj0(`bI zR)2Ygj6U1b=5)5`%OqtS|75(EcY)%%drEU*|Dd`ZD9W{d0D|td$`X3c=OgA2ZQpl-8XKDboJq z?3aCKZNJEab%8G4_;Lo?-cbt(9D?}!n{))8NJ0^65qRKERSC!;e$ybWC=f{4*QDL6 zT#(g^$~2o>x>{?Rel~N}Zl&$^xAh>qz+1CZ8(9)q1a{oKORb+pp+@TEx*x@=bJk}4 z#0T0!C_ly~7H*<8PgX*{hKzV$gFo!kT4kqA!U0Hq33%mhr6OZulrh)GLD#3J&#t|; zZ~y(5rg=S%sYLIl@~PVB0$@yX+@6O}@R*=?Q@YzpGB?R|F&tBKp=b9;UA0MjEdVyz zspRq~5#J5*Ak+3ve{#CRxq{K67D0O9fpx64)Qsl=Toa`0)@wFAX{jC@r;4xS)Y7PE z%^Dhn10;~P{9Yupk(=2{5uKX%t$5JSYar$nbg6hFlQbw=(T()VJ5hOF7iPJvMaOZb zK9Db+GOGLo%>r_I*(%gU3L0`cW`tK)zsea`#9#im5~Kq<+brI3&?1#Nn@|F+MiaSN z-IVViMQ67Cm5jo+hEh)kOhw8ZFTE@rw&I8b72w36dS)f1#&pm(z%7>Jb*OpzH(Qmh zBfJ+hvecXy6KnBXzWk=t%P2z%XM;dI6JGC;dHaJ>XuKp!C>cxlV906IBrmrc4Fj zsevY%j5zZ|vC{^Prr$JDj?=kXf9848kDnTmPKn!LBem$$*7o>}l4<9^8L}`q&wfkYSn}9S=Vo6c0UWL+#ww?v@g( zsKvXKC2j0>-qQ`Kp6q-bss&BId}Gy92;iH4+MAtdS-}E}reAix+A02?{_0p-`fby4Q>l*Y6A|Vfclaj z=|;4+_pvGWZL$Nh_P1emMIWtR9QCKS!ip`8tJIV^T6RdMc{(i^`Y_EM)(_?>2~Tzi z9QSY4suqa%Cd=M%U0Oj=&(Zx)HNX$2t%=spOz~0xO+R_juy76}y~yOYnjOn#$=$cF z`tj}WS{)N~EtB3f-yEWmrxYTPiI8J*)d^V=+QCcmJnu$M#-S^%qMC zQ_0!|EN-7Xopknj;VoPBD?|x63hyXFM`W~we<#v?bd0M+?W4GffX;SX^&Is4{`t_; zU`~kAQ0`OcMW|f9-{5^J{s0o%bL^kOV!jB*Z@%h6O~bAr{n_fgG-`s3LEXM9Q_u>E zc!o{0(Gnh*q5B9-1Cp9D;uAR7#puVHL6}Lj(nlfg2vPa9R|7q~c^63U^Z+>f5(%1=Ih;mW#FGU^mPf_Vh{HILR(g%&L;M_IF1 zd8zq@_Os|FQR@rtXVsm`D^uKKhgIRY%l(XIP~^50(wW|S<%7Ui=fF?ZS0S-cme)@* zg~X~k%`dEg$)DI4lZ3#_I4_ErcDq$NK7ZMdn~)ADgISVOjBpXnSDt|Q@t=q5Nd}3% zG=)z@XGuR~9@|e2RK_Ioy*4rqITpv&OVT;H$34E_jA0AyhtNDIKclJ2N?ahz}~ll7%;0V2d30!b_cfT=T}>n25`u2MPkzqsn;QG&=KL5V zK1Dc%O^h;iU$35*woN@tI02=KoVc3dN0mz5WTcKGjg=;4jdfB@wqrO%uqePQ;0xVi z|8gr^xN_eU^^FGR9eVPWlsaF0On%A_H+el~6SrbWxW|#`ZAs8^tfHQS+=LN5dF@vD zhT@9)oNE0AAL$;F6|bmLj;vUVP?!lU;^Mj?M#^OS$J8_qRngyg#COxDvCB{e`~ zx18=N7ZO%rB5#dSmIZ&8C9-#0E-VxO5jcasV)q8ihiqU%q*3Djgj^uNorNOUyIx3s z)Ue|qXY8#g6p8!TySn@=(VidzI)m=@es)~x32TZvS@{DOTc{PHt?v$g4we>58-bY>Px;U#lao6m&?Qd^nUdRSFW8-x$|$vgG#%A&7COe}ALA?Knx z&@|SGzz@7H{lRx6Eq7;iG$7qP`sP_R?zsk+WjTyGy#bcI$i$EjUNlvSG-I@-scR;017mjfd;cDmShhf)`_t;%zY%mMbTj z^wg!8HO~p=S&2INcp0mavJUD(+RJ!RO{M7ck}u1T@1Xl3v{k@fPu#KP2I?9}x6c#JIzm76 zq+AWuc5WYO%t%*;AwNR<0E*9Y= zoW&2UfiTuaaP=@Z*uOle0yFwxc&rFs(EK=&GAr1~RUMeW8+qg~6qGLD3TJc6-Wwpu zf6S=b)ie|zvVPkeuXbRuR&wJo5{Dpsnams+yq&x9|)f zSXLO+pVx{TtlLp$nzR>XyfuF&GrE_)v@xE(B)Y;N+{?mFo_L zYb^B|HA)xto3;4X6BdX()BuEea&a{$4Hm{~@`ZvNlc5wmtqm2$<03erqdESavm-JJ zAn@FyG^na5imO@7@s+RrgFNqU`sxXH#c@?Q?7PURBiucCZIEsdW!sV1IzF%=#TDXO zSfITjW-rBiLz$N)Vc>lXK1QO6_-+l7xUsJELJ06+NSk$nJzpogsRMd)58=b#pcj6A zqmivprWaq=2su|~3Y4e;w% zs`wD@I4JsSL3+k`5cB=J=AyoFqkHhQ@x;`3Pi2Q4ylSUMtlH3X__H0}mxey8VEl~_ z5dJGty}+|F|G#f;c%?utR&9%Zz~=*>8z=GS;-ZSf^W2%3y)#j%R~6D&_elz>vB z)wF*EUuv?ws*U=E94kC6bc%U#us=O$tr-d+g+2f^^=?}|;mu%tzqyQ%^R0W{@n~I! zBcnew_QoBx3x~Y;nIiG`z1smAjw6m5+M2)Vr@vX#d()|4Fdh(P&RjAO>8L?`vYl+e zAN5#=qOUbD{=4BP4^Ae+yd2A5S+9RW#<#Q5q;YmB3CGC1m~1W z_tV}{gk^zYrz6sOt|r(Vb%W6_-Z(PD!ItJTYAZN{WMqS6L1otGH^6@(WpD^foYf<{FVW0sJ^B0kFCoVMn`)xZ! z@dS%kFab$#6Ox8D3ReRjgKR6-!0}Z)o!gbk?+*C`D%}MM!Vfp+~KmCoKFTst?NmN zQ@_!8eDwjwqZhHXpm9%n6f_QavEPs>gf5#{3#0REz8tRG5jP)+d%0^iaU(>#gPwct zH)ZmGpqrChd5z5w5bS@W6f4QoNp@Df6e!aXK3nS&JJA9;%9b!8VV=tj3IH~Z&yMD%o_bQ)KTcu=d z94rY#ybHgdA1o)tq=(xb&jlPs&b{W#uU6HJtzhQWPlO=}<|F~83%t4K9#zf*$bXdx z3a_oO^d!W1K>jJsuU&SUsMDN~-zxk52quLK?}6T(^dqmcY19J}baRy5=Us|b9IEB_ zOU~%#^++FdgT@{v9(*TH$$4e@AEW{D89qYg)UxyloCO>gr00d3$*k&KC`A+u&9}Z7 zo}QOKC`d`0tCUc>6%TgDNSt2e9F2XfT|_K*M!Ri|?pm&oGeH?LQDF{q+dWf+8x!qz z12}G!mS9~yKt3I5t3$+#fO_PuqJT;H@tP~sD;uUA@I(~Rubs2M*IacF-~o(?XE7gG zWOQ}P9iE#B7|U3^!lr~QTk3OASWjkZ#DYm=>QxlOtH;|9PpbV`o2TX5tZ>XE^tt6S z05tPQeA$mXMVkf$Ut;S*f;bB(v{c)hb0 z_fj}3(d&Bb{=_So+pN;3OAPJw^hTPe0k|T{&h{OO=dijnwJ3i1 zB?7T)47?sbf%dMxwjMSnwt+u}>>a^7UR{I*+;l|!Z-9Yn<2WAg<8^W&-?Npio=6P3 z>Myyb{4niRb~bkmyoe}`=)EbWhSeL#kD=|au1b6%*~4R&%n_F%8A3-Dm!7<9s5+5N zqOXaO&hV|&(|w^nI&BEBm2SeiXD2CshkRwR^umJF9=M1KD!DC|_oUqTIJ8*%!*#xz z)2-zrdtb?mQkyT6HJgF6>xb4|&X;F3>Gl@;i~!5}*-^3H8A&hq6XrIw)(Gb{`+zE3 zSmx1s_Y#VhcLIIUED};@T>DX^o~57I>;XkXO><*Za#}Mx7G{#dw+2zX)}J64%_2`dwwk!TVq(G;3WY1ddu^p$L?#Ty4BYP7g!`S z!J7WPshJiPw5tf-Y-GBb7cb;_VoI53t4ZRv;=k1t#G}&6j|Gq1X8wR5VD1@xK5B)I zptGZ28});#y-H!j0`Sg2G+L@ZjWX`%eaO7EIzR?%C)rc&3stWtPI8<6iji>8 z`YNql>eLOj17kPkL&55uK$UaNDHCqT3|olK^4{Vm^|Qc&H9*rm*C}3_=ERq|tSarwW}AcSIK3SYMQu2`BMjMq?zv z+S>q&Ez)2n+Z=Fj8eEjbmL<{ayZmg4D)p0|icC(7vE{5I!G0?yddKMSV9#LJmaX9O z)O24P(Y{<``JUxBzN!T3^`Rjqfh6k+Ct*^HwKCI>SlY*qnu?1 zDT`}8JM6MwS?b*;k&)v7PsJoz`4ukiYDr03TXKRO`ng{O7;Yb6)onYHLzoj{~N+45YB(B#pgxL)xQY04YgYYxE2-NOrEK3taOF_p* zICsY?RGR5j{8^)Z7GtOgXp1mj2>ik=!2AjW~PnAdIa!>Mi2k^RAZ(baw^zR8JYml3Q_730S zV3&_iGBZgca$3URUESw|I3=8fKJvCDZx3o5Js}~1e5#9ebRlSNqkee+ zAg8oshn{UhV(-Emq)}zcWk_|(s3WFC8{yYUGQ54f6>my zuAear(2IsywC$6$Hof7b`4M^74cGn;Lf?R7K5Yw+9ly#$bJAU!nP8N1zwNV; zTy;_-DNWLkLk~~)$sj|R`;M$6fE|+vA%a#hcmaB9dKx(QFJyTsNru|EWb_IfLiJQx zWoYZ4;n3hh(IONX?onpag#q2x2W26he%$C9ky!18IH8U4j!mVo4MYcAN|&xEQf z>HvUsL)r?k?k>bv;bW1hVdzyLSAQ<+U5+{IU5v@3owT03xcLs>PI$5JqiQRC?=9Ai zDD}~*IBa^bM^NLOuDy@%{n+~FZmQn%SDSb-ZW#*!%!!{zBp9~lfN2QGTnajteUq=O zB;_qUf^HCdxH9daDmyzPU;7O$vHbv8d)gT^r8N9VWC_u6VQ$Eu2WH~OIMUmg z!vMFR3t-C4ElA0sJABpUulSlb=h!#dgy#^2-9N!umoD2hinD;-qPC06OU_Ver=3Sg zT@(h7^rhUaQ0z=MeZLhrXtuME{JH~$nEi`R@ha6Twwf_&fVqh;ePuCe567R3m+SXz)slJJm@qk_240#uCTCziV8SDIu! zDJ*+Mb%!u;CjN zo?Wai$dFR@Asin@H|{cRnnU)eh@#RI0Ik2G5``F4S*)%r)%u<)s1QlK&#_9yHRx#L zQ%dbSGy7fIvC1Je1E!78fyB| zG~wef4+iDCb6cV+cIL{aI*JQ3jRzV2_dgEqQ;!BVQkK2bH+!@# zEcITrkP7?ZaD;A#R(loqMUjdjPG^LRbsfqYn=sv@?5;?VK%o-_Mqqzo7Q>8S# zSK74{gVG*Cxa9{KjN{CD!BKJRxYBM$u>3^7l}_VMYJ<}sv!ie>>idoj`{|5#oSfrz zN|Y~oKXT@D*LYPtI`lVMT`>|^>G4(JPsctoA{GJ5JJPRJnIYI-i^if7bh80e^q;qf zWXP;GiBDA=_Hgs0hTKYf1Ifs{#l?T#Q6_RrT}XvVyIQZ#Hop~=PuHHGP&7I z;@c+_h~AJh!MAz2X<)T0)X4|H*Sx&vBk)DRzuu9KkAQdK6S-jrx^R7_MkkjP_@?9S zf;PHYlZ0|JXhg2Fziky>55pI$LQKzWf>jrZIae=CQGibP1ODFR8n$XxD|$;--?U!X z9Se7p#pE2rD{VpC9eZBd*P%5s<%ENA+Bt+tdY87LKGx-Y-Acd9?)e)o@)fsPHhDIc z=ZalkNed1BkVeH9QigtKMo;_tBdCT_Z^1h&uE8Dp|M;F$L?Z@(9F(v{G5R0AZqI}W z2fxnGr#hs}%w6R~MAu-~K*5#q7q4_qrv4VYXuy4{W<$k(`i8s{-6FG1FSq>bCmzl^ z&a<4Khx)g-ZhkaLQta`weScJoS2^mw+9zr9bN;-;3tcEQq-FP#-7VA208(hN&$t8&Gl)A+5c zT8(c_SY2|F%H)@4#TzV@r3dfR!^$2m%A}+}CRj<#W0p2qtx*TAsK%<3D~d>u9Scb$ zS$`-A7yokT>o*#$9j|XbV04GXjAmu&N zDK}31tn&K15kL$O5>;}U_eYLVQYF99y43!}0x}!qeHesl_-O=A@6}-*D}oVDJB>fz zIka(R&H-DNC&Tza+`dTXx#|IoOIsqZC`YuKN#;G?5G#mOD#0EWG14`W(Ks=mJz7~a z3Qol`TCfLKA2)?y(}%efAicFeU!91N83nRhchSdQ2hi@to;n8Hz@)h)>ZfK=jE*{Y zJ5SNloyZ`s3^|kX;83^_nyVsmh;HD5uL`Az+Rzam*zVT#YEJ zaMh#_XlpeXWat~C0FJ#A2?V7fg!N1mM5WU)Juz=P0w?6PLyqh|0duZZLc%B)mQb%D z?MOFNnrjxa<a2cWQ}W5se#J zU2syiQkbD{r3T3M@ti2YwLRZJ+OkM=;f{8awdPyQAS2s5BqBT_B_SXu+#^;(MSbTB z1WMCN+$fe6Pmg7$=j^@GdzYQVPhle4^p;iEcA5X(mRx%1%(K^(;=5$%V%(e_)>kEA z%`K5>!oJr2{eUB(jor6_i0}J+)i!q5y7IDhCD4oE6j@TGL^+uanB=r=G7M|a^{s}M z=+B6mRHe^J=2xuc_oV2*(14dUeh1wohB5~L`KI|S%H}g?eEQUp-7C*N2zeo=C6wy6 zye$@200Cuv6>SOks~taEr`BP4_Lg-Wht9ca4kzvq1OZ@MVxH?X)+>$MK^LVVj*@87 z&&|l>yj5}QS68!Im^berZNpKk?SXtX&8rJg9^apV#(FWU{f)egxt~VHy?h=7BV@&? z+jYuotgw%>bMev5#-eKqsjQTACMr<|n--3c-2-vhRL>sPXLOH*aPJ#30}(B!T5~#* zv?nS9@B~2hEx)u>2ht`wm5)E3bIN`Q1ZN_o6!E^4vyyz%-Kkx<_TUhj^0{(uG1ssi zfsUkrhSqaR%v->B%0k4I!3gXc?55$`XZN)nsS2}di~5M}${S;GqQ%l1j|I6ZfawM3;l1L97PsqWerrI#9`DmsfJtqCBt zM;+I6AFF+B9^O+qA!^m^!fe&;QaOL-ojOX|n;J~M8dgZZ&p6G}P{Q~jmKX_%;vw); zdKrys8F$5M|MOEM&WyH^^LjZa#TKrDRr(iF0NE}jomW2UtcAN&TzWm@skdj(fT(xK zmUjt+3c>*i!E+9Yt~!_uj*63X?A72}MoPmTJ!_!b#YnC*^IDt$E*0w|wI-!X=YFkKk z0a8N6p{3Mm{LiBu6{N{0Ef0rT@#>?6OYP=MvM)V$Ez^|^%TI}tvq$yzbd>zl7b^vK z=9gA)B{Y(RxH}}-$@V3o@L>5glYos3vJ(Zo1-kbEonQG5TYoq)js_Y;Pq8x32$Kz) zO&{aQb59GhXKJW}U!;bDq{x~s!dQnMz~XRen!DC98~eStUh=ErzVqM;MHXMg46_gc zl8o?`<_0vSj6TA9MNAcIid1(?-HoI6&=rImssTOE5H}H+XGW%@mEH?uO(>+fb||`V zy$x8_muHdW5|td^Iks*Wqu!sGU|7;wRToz@0T>3)P!RRjslj_amjclj*VBwx0q1_& zgO&NT{*ISFqf1=K_jmRI>_3NWULuoqhDfwUmhjtC-^7O*O1h_n8H&3%g|&z6^pN=q zO$w3uQd2GF+K{f1FlUJ z`I@+J5^pgSCnhogp$dBfmB1B}93Uohl5px1n$y1r%M~rP*(t9r*us$Aj#Ly)JFBg; zs3c8|H%UMr4YM$@HkstU2q6;N$g)c@2y1P{Vkkwu#!TC4p;axI-5M+-=mM*N$gvJJ zMxUTnLlv0DYr!>cR-`SZdCCbbg|rqle!}~1DMa)KO99B zt6p0EYJKd0<(I*l@A1;RqxV9%YuPIiv%@puAZ}epFf4V$3qN`CLrm-ZOA*K>Ggwb$ zcdvvg$Ce?XPt9?aeyoOZ0jXVqnLUvF4-k|jpI{f`@OKu}s9YiQwM=39C1|#tGsj+* z^9CkpyO>T*k_*jqeXp?C)d!G{9^&LmkV`WAgs267UgJpLniLh#V`Sc%<022-?QY8LvschbUzE-AruO06X^Cyif}bJ0NK1{*|~1^-xpvH2x$RY$NNe&+chco zmjVKl{c$J>E0q@H6tc`v=r1wwMxy1ctNosG5Js$H!4^v znvCK)jx+~lWhh4o-qT&=0hiTWP~e)k7?N_*^o{aKp~l=a0g#cOj2f4;kUF$}KuYe0 zQYSmA1vf$quVN3zaM^;>!L92H2iFC^+mrcH zGCXHu7#f#TU}0=jV3m6{C_Ak%Hn{oh*(lTCh(ZJG(@_fu5V=0>qmlkPMg1Tsfx`)wD1#hQG@Jc zqAD>ez5=X`-2n|@_k=m!*ekX>#1(^KFQcz1D*EzTIX_A7(L8cwWw7Z!C(`OcGkJ zckhXR*otzKGrU1^3DzknQE$Xm+i;I!oV!i$bq0Gr_$D#0E{DslQf?jL-c_qmWbKqD zrNHf=(4ZM(t1&6Rcu|R2BBYAn=osK+9*BxG0o}9R>cU__xSR1gZCY@-+`9h^HhzZSoIl^{n>yz+8 zw{k4Ok&4=;X6_Ya4=Fm)ta+(8)BG!`rI}|D9!1H~+4-fe+#!*j9O{LD;=Rd6)zbHN zG3lkc$;gazOc}xs*&ItI&%|L>>_gzGUxd{7N^D5>Q%o;tY~gQnwL~r9ZS1S0nf8L;!XPjh^kb|I}{B!8_ioIWPvqbJS|#d2np*_F;8Qnz24%VRz%ZN z#PHo0zRm~xG0u;i1F7`2BPjGiW=EC`l!&F6c z;2LI93!7((CfJ2T3|U6ihgN_K)k~KL;=XQsER#Pg?V4Ijz}9q4b3evjQY1>wwTEg4 z;i>H$-R)4LewT)X zfRG0dO|bu3?C)yDYUOHTZg0VAW?wg9;RN}()p}l``Q(1sV+8imbI`ou`lH*ro5pD9 zM;q&m(1kx2fb}rKgYt6dLEHmabz7Omk0(IuqAU4f9(kSEOyMfx2Qy~CO`{a3I+F(E z&`%4>4TA-!UsSY@ z_NJs?8T(&I6K=B*N5l4h!Z;eq5^}Q~J2NQ}S}pVx}jHj#4lVMBqXd0c$lip^mbH?V(Al!9T+WA?0nW^P+tS{qtgH#E!H ztE8-bBaq_mGtm%Th;X>$RG&$+Usu(KZ_Zx!qi;vQ$@IP>Ip#>r{;KSo3=!2&Uue%D zO$}!WSTPnkGzu4;(~niRCmkoiSeq@g0*G>&`?(%`cP=|`yq}ujN{szs zCsSb&??`ff{t2jqyS zvj9<8mXjAiB`qF1R*z(Bvq-m+30)loHB~u*u(64m2Qo))xZ%b+T#A!9981i}WKKmw z%Cm@{sb%AWerG9FKJ8;UQr7B#Qy>SsNUKyp_G+;wfaZHu$(Ex286Va;wCnT&PvPFV zbcdAhMM|IB8J17{-csr&tPZp0sOEc?G03QURqt>i-|Wu7P(WzNfN)<{iB*i0e%>cs#g zY1k=!Q6>mfoSjtRC)mgzK@L~bG){yJR+eytFcJI<*;>kMHAp3>zlhKbv5W;8K*A+kKpf#R?4&6QZd~K4*Im_76i4@fNn>1 zzeXS$HCu606{;I#VF!q8BQ%O)c4eMjOxEIA(P_QjFj&L?U18c^v8Ws579ARw`q>g1PFzl#2`RY zpC4?9dA?D}Pr`W3z6ft5ZmVK`my}7ntDhwxz7Dlc?-{%4b#5TGkadjZ5RNb7(%!*K znJp^Z7W*O`hMt{jA`2#u)Pwe%MDp7dw4l9JZKSk>%W$!Gv}|owUX%hRt)(Z!M|u@c zyF$tinej0LQ{(J=D`iEe=2xctD9LLb{+s4mij-yO`vy6u7|vNXSmP&|=Yp)UtS=pM z>OM$sb4@>wq0;#l&Z1h5BO5stP7>f6=^eD_^jEFO^E-Re&Zp$eLt+2vtrGln*aU!U zfd**8R0*)FoBO@MxFK9SuV_H^B?2R50v(+K5qnqsjspXT!~CPXXVWJDtm3lZTok?x z7kl>4f@r5k+@ySNGSB6>>t(-{R-Zbfj(|Iq+)xi>#1Xyfb5klO)2`qk$u_|kHHA&G z3v|f}i3D(siSN4|fZFZVo3VKUWG2(b=ng2y2-` zUW5NUzLZ%yVmw0~6*;zT*T1el7wb&y39obX1E&mULvmg&Jpg^x*6&R^28mCg4DZEF zSdA;7V&bT)rabJMp;Df0aA){Qz_`}4eU>wxVU%WYOH6a2-h*o*Pad$Z6snu&dXV#T zVNdAjMN#cVYqC+wcw+lUcco@p(nJX?aoKXy(NEaG;s8EP35xfQ6iYAP?5SU%b^R1Z zFmR!ZKrAFwo%P|gzuO+UOD_NN9C(`1(#!T0@IYtHLbCg!yI`ki!g=&Os*6L2J8Ekk zPv{l2K2LJFNv(YX7e_d&elURIjaldn2A2hEz}7(5F(#;v9);rNI`6Yb9g6#z&lDkx{{=GVMi zfGe2q{#dlaZ#1$a5Gp((JrQjju+%UINf#+&u$wi^ol|x!-u4K6j-Eop9QTZHnox}1 zoDe%j9+A9ZVVk=j-VNjLRb9y5rJJW2{8(Ye)5Nj_sm~s>0cmL?0t~|x4wHVH*+Vdh z0$!zNoLFy@AcOkZ0asaKOW>a}3;)kaLUjf83QwBu7*{Un$4&cHL>|`T`|N-*_{aC0 z#dlBmo^OVpRDy}xLC8my0R5py3tS~2us~@obboBYZ+}~W2>-+n4E-m7==I0|O!Can z#zw}^m_`-km}|KwIbpySBRqoK`x6K7Ksy8`_@gWj355gkr`r9ZgKORI06xL!ub?2Q zF3K#cCMROUe~b79{;y_m zSL{(p2Vei{Gycs0b$rAV{)KD*2k=j)@^9QP$bTjOO81|z`)jV@`QP{_M>zcfgRe*+ zK_|kv;1ivQ{zbA5Hn%JQL#DwW>L(;kxZfo3=_Xt>?Eg8;1`C-^OD zu8kJ?k!sMZHUjX=4krgcBnG9x;`}RLpE!kkB9WB}OnQ#-cN9Q(t-nN)GXK`c+=lZw zsek-#KtNDEkp|E58~-4S{;w$fy;=DWkC^)(5 zs47tT4(cX=W0{5uUWxk$48H0CLH3e@PI@t)C_nA~r9908RFg>!V(US9^3ZYk*TXlS z;D-z#wkF(v#qN)t{C7nq_63u;|6Q$whJJ}e5BROGt&;d(BA*!2PZFRO^qb_+|Lk#g zi{M*7^ut3ygn`>+p(ps$kl*;0Pn3`Gs$z(wCE(1w1lvV|Pw?2$zwy8xipTiI&T6+* zFun|oe<~k0?l=CIS=Bj6{Fw8^_IjcNA>n@eGZ=r2Rvsd=eqFVFGZ2G6BLIpaCfiKdBF! zrqlFm;Al94Gyc~P_MbqX^IKNCE7`x|{-&rN-wF!?qVL(?Mbjc5Orip<_9H*eMLloF z)I_j?esB-tX;H>#0Ere;fvWqEpG25)@K+A*w1OY9{7ZY3D7U>oxFR8g)5QNLzTm5) z4p8VD!G94z5CUnx2zTIg@;xDRcY&5`1^z|&UpEU3CVxUm>H%f9Q2w_8`foSuaR&H#rzli \(.*\)$'` - 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 +# 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"` -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" - # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" -warn () { +warn ( ) { echo "$*" } -die () { +die ( ) { echo echo "$*" echo @@ -48,7 +30,6 @@ die () { cygwin=false msys=false darwin=false -nonstop=false case "`uname`" in CYGWIN* ) cygwin=true @@ -59,11 +40,31 @@ 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. @@ -89,7 +90,7 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then +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 @@ -113,7 +114,6 @@ 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,19 +154,11 @@ if $cygwin ; then esac fi -# Escape application args -save () { - for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done - echo " " +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") } -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 +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" -exec "$JAVACMD" "$@" +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/src/mobile/android/gradlew.bat b/src/mobile/android/gradlew.bat index e95643d6a2..aec99730b4 100644 --- a/src/mobile/android/gradlew.bat +++ b/src/mobile/android/gradlew.bat @@ -8,14 +8,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= - @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome @@ -46,9 +46,10 @@ echo location of your Java installation. goto fail :init -@rem Get command-line arguments, handling Windows variants +@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. @@ -59,6 +60,11 @@ 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/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj index 4af1611b26..260829f094 100644 --- a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj +++ b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj @@ -499,6 +499,20 @@ remoteGlobalIDString = 163CDE4E2087CAD3001065FB; remoteInfo = "RNRandomBytes-tvOS"; }; + CB967ED7214153CC00F561EB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33AC314FF1C9CE4F19E8E899E79675B4 /* React.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = EBF21BDC1FC498900052F4D5; + remoteInfo = jsinspector; + }; + CB967ED9214153CC00F561EB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33AC314FF1C9CE4F19E8E899E79675B4 /* React.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = EBF21BFA1FC4989A0052F4D5; + remoteInfo = "jsinspector-tvOS"; + }; CBC214E820CE82DC005D8ACB /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = CBC214E420CE82DC005D8ACB /* RNReactNativeHapticFeedback.xcodeproj */; @@ -1247,6 +1261,8 @@ 9D772B812DB6C05ECF25775FCAB7E002 /* libcxxreact.a */, CBC55660207BA79E00BA0A7F /* libjschelpers.a */, 4638EBE17A0D3826A792DF9563570526 /* libjschelpers.a */, + CB967ED8214153CC00F561EB /* libjsinspector.a */, + CB967EDA214153CC00F561EB /* libjsinspector-tvOS.a */, CBC55662207BA79E00BA0A7F /* libthird-party.a */, A449CDAA92C2C98ABDF0AE5690864303 /* libthird-party.a */, 9DBC3C8E34A01D88134F4A69AA32625F /* libdouble-conversion.a */, @@ -2166,6 +2182,20 @@ remoteRef = CB8F2AF32095E41E0071A30B /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; + CB967ED8214153CC00F561EB /* libjsinspector.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libjsinspector.a; + remoteRef = CB967ED7214153CC00F561EB /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + CB967EDA214153CC00F561EB /* libjsinspector-tvOS.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libjsinspector-tvOS.a"; + remoteRef = CB967ED9214153CC00F561EB /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; CBC214E920CE82DC005D8ACB /* libRNReactNativeHapticFeedback.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; diff --git a/src/mobile/ios/iotaWallet/iotaWallet.entitlements b/src/mobile/ios/iotaWallet/iotaWallet.entitlements index 11a5bb4481..d7855fdeeb 100644 --- a/src/mobile/ios/iotaWallet/iotaWallet.entitlements +++ b/src/mobile/ios/iotaWallet/iotaWallet.entitlements @@ -5,17 +5,9 @@ com.apple.developer.default-data-protection NSFileProtectionComplete com.apple.developer.icloud-container-identifiers - - iCloud.$(CFBundleIdentifier) - - com.apple.developer.icloud-services - - CloudDocuments - - com.apple.developer.ubiquity-container-identifiers - - iCloud.$(CFBundleIdentifier) - + + com.apple.developer.ubiquity-kvstore-identifier + $(TeamIdentifierPrefix)$(CFBundleIdentifier) keychain-access-groups $(AppIdentifierPrefix)org.reactjs.native.example.iotaWallet diff --git a/src/mobile/ios/trinity-mobile-tvOS/Info.plist b/src/mobile/ios/trinity-mobile-tvOS/Info.plist new file mode 100644 index 0000000000..2fb6a11c2c --- /dev/null +++ b/src/mobile/ios/trinity-mobile-tvOS/Info.plist @@ -0,0 +1,54 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UIViewControllerBasedStatusBarAppearance + + NSLocationWhenInUseUsageDescription + + NSAppTransportSecurity + + + NSExceptionDomains + + localhost + + NSExceptionAllowsInsecureHTTPLoads + + + + + + diff --git a/src/mobile/ios/trinity-mobile-tvOSTests/Info.plist b/src/mobile/ios/trinity-mobile-tvOSTests/Info.plist new file mode 100644 index 0000000000..886825ccc9 --- /dev/null +++ b/src/mobile/ios/trinity-mobile-tvOSTests/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + + diff --git a/src/mobile/ios/trinity-mobile.xcodeproj/project.pbxproj b/src/mobile/ios/trinity-mobile.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..64291d2415 --- /dev/null +++ b/src/mobile/ios/trinity-mobile.xcodeproj/project.pbxproj @@ -0,0 +1,1468 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + 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 /* trinity-mobileTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* trinity-mobileTests.m */; }; + 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 */; }; + 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 */; }; + 2D16E6881FA4F8E400B85C8A /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2D16E6891FA4F8E400B85C8A /* libReact.a */; }; + 2DCD954D1E0B4F2C00145EB5 /* trinity-mobileTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* trinity-mobileTests.m */; }; + 2DF0FFEE2056DD460020B375 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3EA31DF850E9000B6D8A /* libReact.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 */; }; +/* 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 */; + proxyType = 1; + remoteGlobalIDString = 13B07F861A680F5B00A75B9A; + remoteInfo = trinity-mobile; + }; + 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 */; + proxyType = 1; + remoteGlobalIDString = 2D02E47A1E0B4A5D006451C7; + remoteInfo = "trinity-mobile-tvOS"; + }; + 2D16E6711FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = ADD01A681E09402E00F6D226; + remoteInfo = "RCTBlob-tvOS"; + }; + 2D16E6831FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 3DBE0D001F3B181A0099AA32; + remoteInfo = fishhook; + }; + 2D16E6851FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 3DBE0D0D1F3B181C0099AA32; + remoteInfo = "fishhook-tvOS"; + }; + 2DF0FFDE2056DD460020B375 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = EBF21BDC1FC498900052F4D5; + remoteInfo = jsinspector; + }; + 2DF0FFE02056DD460020B375 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = EBF21BFA1FC4989A0052F4D5; + remoteInfo = "jsinspector-tvOS"; + }; + 2DF0FFE22056DD460020B375 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 139D7ECE1E25DB7D00323FB7; + remoteInfo = "third-party"; + }; + 2DF0FFE42056DD460020B375 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 3D383D3C1EBD27B6005632C8; + remoteInfo = "third-party-tvOS"; + }; + 2DF0FFE62056DD460020B375 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 139D7E881E25C6D100323FB7; + remoteInfo = "double-conversion"; + }; + 2DF0FFE82056DD460020B375 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 3D383D621EBD27B9005632C8; + remoteInfo = "double-conversion-tvOS"; + }; + 2DF0FFEA2056DD460020B375 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 9936F3131F5F2E4B0010BF04; + remoteInfo = privatedata; + }; + 2DF0FFEC2056DD460020B375 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 9936F32F1F5F2E5B0010BF04; + remoteInfo = "privatedata-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 /* trinity-mobileTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = trinity-mobileTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 00E356F21AD99517003FC87E /* trinity-mobileTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = trinity-mobileTests.m; 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 /* trinity-mobile.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = trinity-mobile.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = trinity-mobile/AppDelegate.h; sourceTree = ""; }; + 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = trinity-mobile/AppDelegate.m; sourceTree = ""; }; + 13B07FB21A68108700A75B9A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; + 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = trinity-mobile/Images.xcassets; sourceTree = ""; }; + 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = trinity-mobile/Info.plist; sourceTree = ""; }; + 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = trinity-mobile/main.m; sourceTree = ""; }; + 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; + 2D02E47B1E0B4A5D006451C7 /* trinity-mobile-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "trinity-mobile-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 2D02E4901E0B4A5D006451C7 /* trinity-mobile-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "trinity-mobile-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; + 2D16E6891FA4F8E400B85C8A /* libReact.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libReact.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 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 = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 00E356EB1AD99517003FC87E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 140ED2AC1D01E1AD002B40FF /* libReact.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 13B07F8C1A680F5B00A75B9A /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */, + 5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a 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 */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2D02E4781E0B4A5D006451C7 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 2D16E6881FA4F8E400B85C8A /* 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 */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2D02E48D1E0B4A5D006451C7 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 2DF0FFEE2056DD460020B375 /* libReact.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 /* trinity-mobileTests */ = { + isa = PBXGroup; + children = ( + 00E356F21AD99517003FC87E /* trinity-mobileTests.m */, + 00E356F01AD99517003FC87E /* Supporting Files */, + ); + path = trinity-mobileTests; + sourceTree = ""; + }; + 00E356F01AD99517003FC87E /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 00E356F11AD99517003FC87E /* Info.plist */, + ); + name = "Supporting Files"; + 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 */, + 2D16E6841FA4F8DC00B85C8A /* libfishhook.a */, + 2D16E6861FA4F8DC00B85C8A /* libfishhook-tvOS.a */, + ); + name = Products; + sourceTree = ""; + }; + 13B07FAE1A68108700A75B9A /* trinity-mobile */ = { + isa = PBXGroup; + children = ( + 008F07F21AC5B25A0029DE68 /* main.jsbundle */, + 13B07FAF1A68108700A75B9A /* AppDelegate.h */, + 13B07FB01A68108700A75B9A /* AppDelegate.m */, + 13B07FB51A68108700A75B9A /* Images.xcassets */, + 13B07FB61A68108700A75B9A /* Info.plist */, + 13B07FB11A68108700A75B9A /* LaunchScreen.xib */, + 13B07FB71A68108700A75B9A /* main.m */, + ); + name = trinity-mobile; + 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 */, + 2DF0FFDF2056DD460020B375 /* libjsinspector.a */, + 2DF0FFE12056DD460020B375 /* libjsinspector-tvOS.a */, + 2DF0FFE32056DD460020B375 /* libthird-party.a */, + 2DF0FFE52056DD460020B375 /* libthird-party.a */, + 2DF0FFE72056DD460020B375 /* libdouble-conversion.a */, + 2DF0FFE92056DD460020B375 /* libdouble-conversion.a */, + 2DF0FFEB2056DD460020B375 /* libprivatedata.a */, + 2DF0FFED2056DD460020B375 /* libprivatedata-tvOS.a */, + ); + name = Products; + sourceTree = ""; + }; + 2D16E6871FA4F8E400B85C8A /* Frameworks */ = { + isa = PBXGroup; + children = ( + 2D16E6891FA4F8E400B85C8A /* libReact.a */, + ); + name = Frameworks; + sourceTree = ""; + }; + 5E91572E1DD0AC6500FF2AA8 /* Products */ = { + isa = PBXGroup; + children = ( + 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */, + 5E9157351DD0AC6500FF2AA8 /* libRCTAnimation.a */, + ); + name = Products; + sourceTree = ""; + }; + 78C398B11ACF4ADC00677621 /* Products */ = { + isa = PBXGroup; + children = ( + 78C398B91ACF4ADC00677621 /* libRCTLinking.a */, + 3DAD3E881DF850E9000B6D8A /* libRCTLinking-tvOS.a */, + ); + name = Products; + 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 */, + ); + name = Libraries; + sourceTree = ""; + }; + 832341B11AAA6A8300B99B32 /* Products */ = { + isa = PBXGroup; + children = ( + 832341B51AAA6A8300B99B32 /* libRCTText.a */, + 3DAD3E941DF850E9000B6D8A /* libRCTText-tvOS.a */, + ); + name = Products; + sourceTree = ""; + }; + 83CBB9F61A601CBA00E9B192 = { + isa = PBXGroup; + children = ( + 13B07FAE1A68108700A75B9A /* trinity-mobile */, + 832341AE1AAA6A7D00B99B32 /* Libraries */, + 00E356EF1AD99517003FC87E /* trinity-mobileTests */, + 83CBBA001A601CBA00E9B192 /* Products */, + 2D16E6871FA4F8E400B85C8A /* Frameworks */, + ); + indentWidth = 2; + sourceTree = ""; + tabWidth = 2; + usesTabs = 0; + }; + 83CBBA001A601CBA00E9B192 /* Products */ = { + isa = PBXGroup; + children = ( + 13B07F961A680F5B00A75B9A /* trinity-mobile.app */, + 00E356EE1AD99517003FC87E /* trinity-mobileTests.xctest */, + 2D02E47B1E0B4A5D006451C7 /* trinity-mobile-tvOS.app */, + 2D02E4901E0B4A5D006451C7 /* trinity-mobile-tvOSTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + ADBDB9201DFEBF0600ED6528 /* Products */ = { + isa = PBXGroup; + children = ( + ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */, + 2D16E6721FA4F8DC00B85C8A /* libRCTBlob-tvOS.a */, + ); + name = Products; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 00E356ED1AD99517003FC87E /* trinity-mobileTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "trinity-mobileTests" */; + buildPhases = ( + 00E356EA1AD99517003FC87E /* Sources */, + 00E356EB1AD99517003FC87E /* Frameworks */, + 00E356EC1AD99517003FC87E /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 00E356F51AD99517003FC87E /* PBXTargetDependency */, + ); + name = trinity-mobileTests; + productName = trinity-mobileTests; + productReference = 00E356EE1AD99517003FC87E /* trinity-mobileTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 13B07F861A680F5B00A75B9A /* trinity-mobile */ = { + isa = PBXNativeTarget; + buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "trinity-mobile" */; + buildPhases = ( + 13B07F871A680F5B00A75B9A /* Sources */, + 13B07F8C1A680F5B00A75B9A /* Frameworks */, + 13B07F8E1A680F5B00A75B9A /* Resources */, + 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = trinity-mobile; + productName = "Hello World"; + productReference = 13B07F961A680F5B00A75B9A /* trinity-mobile.app */; + productType = "com.apple.product-type.application"; + }; + 2D02E47A1E0B4A5D006451C7 /* trinity-mobile-tvOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2D02E4BA1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "trinity-mobile-tvOS" */; + buildPhases = ( + 2D02E4771E0B4A5D006451C7 /* Sources */, + 2D02E4781E0B4A5D006451C7 /* Frameworks */, + 2D02E4791E0B4A5D006451C7 /* Resources */, + 2D02E4CB1E0B4B27006451C7 /* Bundle React Native Code And Images */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "trinity-mobile-tvOS"; + productName = "trinity-mobile-tvOS"; + productReference = 2D02E47B1E0B4A5D006451C7 /* trinity-mobile-tvOS.app */; + productType = "com.apple.product-type.application"; + }; + 2D02E48F1E0B4A5D006451C7 /* trinity-mobile-tvOSTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2D02E4BB1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "trinity-mobile-tvOSTests" */; + buildPhases = ( + 2D02E48C1E0B4A5D006451C7 /* Sources */, + 2D02E48D1E0B4A5D006451C7 /* Frameworks */, + 2D02E48E1E0B4A5D006451C7 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 2D02E4921E0B4A5D006451C7 /* PBXTargetDependency */, + ); + name = "trinity-mobile-tvOSTests"; + productName = "trinity-mobile-tvOSTests"; + productReference = 2D02E4901E0B4A5D006451C7 /* trinity-mobile-tvOSTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 83CBB9F71A601CBA00E9B192 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0610; + ORGANIZATIONNAME = Facebook; + TargetAttributes = { + 00E356ED1AD99517003FC87E = { + CreatedOnToolsVersion = 6.2; + TestTargetID = 13B07F861A680F5B00A75B9A; + }; + 2D02E47A1E0B4A5D006451C7 = { + CreatedOnToolsVersion = 8.2.1; + ProvisioningStyle = Automatic; + }; + 2D02E48F1E0B4A5D006451C7 = { + CreatedOnToolsVersion = 8.2.1; + ProvisioningStyle = Automatic; + TestTargetID = 2D02E47A1E0B4A5D006451C7; + }; + }; + }; + buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "trinity-mobile" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + 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 */; + }, + ); + projectRoot = ""; + targets = ( + 13B07F861A680F5B00A75B9A /* trinity-mobile */, + 00E356ED1AD99517003FC87E /* trinity-mobileTests */, + 2D02E47A1E0B4A5D006451C7 /* trinity-mobile-tvOS */, + 2D02E48F1E0B4A5D006451C7 /* trinity-mobile-tvOSTests */, + ); + }; +/* 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; + }; + 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; + }; + 2D16E6721FA4F8DC00B85C8A /* libRCTBlob-tvOS.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libRCTBlob-tvOS.a"; + remoteRef = 2D16E6711FA4F8DC00B85C8A /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 2D16E6841FA4F8DC00B85C8A /* libfishhook.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libfishhook.a; + remoteRef = 2D16E6831FA4F8DC00B85C8A /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 2D16E6861FA4F8DC00B85C8A /* libfishhook-tvOS.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libfishhook-tvOS.a"; + remoteRef = 2D16E6851FA4F8DC00B85C8A /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 2DF0FFDF2056DD460020B375 /* libjsinspector.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libjsinspector.a; + remoteRef = 2DF0FFDE2056DD460020B375 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 2DF0FFE12056DD460020B375 /* libjsinspector-tvOS.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libjsinspector-tvOS.a"; + remoteRef = 2DF0FFE02056DD460020B375 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 2DF0FFE32056DD460020B375 /* libthird-party.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libthird-party.a"; + remoteRef = 2DF0FFE22056DD460020B375 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 2DF0FFE52056DD460020B375 /* libthird-party.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libthird-party.a"; + remoteRef = 2DF0FFE42056DD460020B375 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 2DF0FFE72056DD460020B375 /* libdouble-conversion.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libdouble-conversion.a"; + remoteRef = 2DF0FFE62056DD460020B375 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 2DF0FFE92056DD460020B375 /* libdouble-conversion.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libdouble-conversion.a"; + remoteRef = 2DF0FFE82056DD460020B375 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 2DF0FFEB2056DD460020B375 /* libprivatedata.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libprivatedata.a; + remoteRef = 2DF0FFEA2056DD460020B375 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 2DF0FFED2056DD460020B375 /* libprivatedata-tvOS.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libprivatedata-tvOS.a"; + remoteRef = 2DF0FFEC2056DD460020B375 /* 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; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 13B07F8E1A680F5B00A75B9A /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, + 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2D02E4791E0B4A5D006451C7 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2D02E48E1E0B4A5D006451C7 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Bundle React Native code and images"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh"; + }; + 2D02E4CB1E0B4B27006451C7 /* Bundle React Native Code And Images */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Bundle React Native Code And Images"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 00E356EA1AD99517003FC87E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 00E356F31AD99517003FC87E /* trinity-mobileTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 13B07F871A680F5B00A75B9A /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */, + 13B07FC11A68108700A75B9A /* main.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2D02E4771E0B4A5D006451C7 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */, + 2D02E4BC1E0B4A80006451C7 /* AppDelegate.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2D02E48C1E0B4A5D006451C7 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2DCD954D1E0B4F2C00145EB5 /* trinity-mobileTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 00E356F51AD99517003FC87E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 13B07F861A680F5B00A75B9A /* trinity-mobile */; + targetProxy = 00E356F41AD99517003FC87E /* PBXContainerItemProxy */; + }; + 2D02E4921E0B4A5D006451C7 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 2D02E47A1E0B4A5D006451C7 /* trinity-mobile-tvOS */; + targetProxy = 2D02E4911E0B4A5D006451C7 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 13B07FB11A68108700A75B9A /* LaunchScreen.xib */ = { + isa = PBXVariantGroup; + children = ( + 13B07FB21A68108700A75B9A /* Base */, + ); + name = LaunchScreen.xib; + path = trinity-mobile; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 00E356F61AD99517003FC87E /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + INFOPLIST_FILE = trinity-mobileTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + OTHER_LDFLAGS = ( + "-ObjC", + "-lc++", + ); + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/trinity-mobile.app/trinity-mobile"; + }; + name = Debug; + }; + 00E356F71AD99517003FC87E /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + COPY_PHASE_STRIP = NO; + INFOPLIST_FILE = trinity-mobileTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + OTHER_LDFLAGS = ( + "-ObjC", + "-lc++", + ); + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/trinity-mobile.app/trinity-mobile"; + }; + name = Release; + }; + 13B07F941A680F5B00A75B9A /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CURRENT_PROJECT_VERSION = 1; + DEAD_CODE_STRIPPING = NO; + INFOPLIST_FILE = trinity-mobile/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + "-lc++", + ); + PRODUCT_NAME = trinity-mobile; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 13B07F951A680F5B00A75B9A /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CURRENT_PROJECT_VERSION = 1; + INFOPLIST_FILE = trinity-mobile/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + "-lc++", + ); + PRODUCT_NAME = trinity-mobile; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; + 2D02E4971E0B4A5E006451C7 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; + ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; + CLANG_ANALYZER_NONNULL = YES; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_TESTABILITY = YES; + GCC_NO_COMMON_BLOCKS = YES; + INFOPLIST_FILE = "trinity-mobile-tvOS/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + OTHER_LDFLAGS = ( + "-ObjC", + "-lc++", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.trinity-mobile-tvOS"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = appletvos; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.2; + }; + name = Debug; + }; + 2D02E4981E0B4A5E006451C7 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; + ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; + CLANG_ANALYZER_NONNULL = YES; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + GCC_NO_COMMON_BLOCKS = YES; + INFOPLIST_FILE = "trinity-mobile-tvOS/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + OTHER_LDFLAGS = ( + "-ObjC", + "-lc++", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.trinity-mobile-tvOS"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = appletvos; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.2; + }; + name = Release; + }; + 2D02E4991E0B4A5E006451C7 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_ANALYZER_NONNULL = YES; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_TESTABILITY = YES; + GCC_NO_COMMON_BLOCKS = YES; + INFOPLIST_FILE = "trinity-mobile-tvOSTests/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + OTHER_LDFLAGS = ( + "-ObjC", + "-lc++", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.trinity-mobile-tvOSTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = appletvos; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/trinity-mobile-tvOS.app/trinity-mobile-tvOS"; + TVOS_DEPLOYMENT_TARGET = 10.1; + }; + name = Debug; + }; + 2D02E49A1E0B4A5E006451C7 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_ANALYZER_NONNULL = YES; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + GCC_NO_COMMON_BLOCKS = YES; + INFOPLIST_FILE = "trinity-mobile-tvOSTests/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + OTHER_LDFLAGS = ( + "-ObjC", + "-lc++", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.trinity-mobile-tvOSTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = appletvos; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/trinity-mobile-tvOS.app/trinity-mobile-tvOS"; + TVOS_DEPLOYMENT_TARGET = 10.1; + }; + name = Release; + }; + 83CBBA201A601CBA00E9B192 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + 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; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + 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 = 9.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + }; + name = Debug; + }; + 83CBBA211A601CBA00E9B192 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = YES; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + 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 = 9.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "trinity-mobileTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 00E356F61AD99517003FC87E /* Debug */, + 00E356F71AD99517003FC87E /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "trinity-mobile" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 13B07F941A680F5B00A75B9A /* Debug */, + 13B07F951A680F5B00A75B9A /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2D02E4BA1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "trinity-mobile-tvOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2D02E4971E0B4A5E006451C7 /* Debug */, + 2D02E4981E0B4A5E006451C7 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2D02E4BB1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "trinity-mobile-tvOSTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2D02E4991E0B4A5E006451C7 /* Debug */, + 2D02E49A1E0B4A5E006451C7 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "trinity-mobile" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 83CBBA201A601CBA00E9B192 /* Debug */, + 83CBBA211A601CBA00E9B192 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 83CBB9F71A601CBA00E9B192 /* Project object */; +} diff --git a/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile-tvOS.xcscheme b/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile-tvOS.xcscheme new file mode 100644 index 0000000000..7efc5da7f1 --- /dev/null +++ b/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile-tvOS.xcscheme @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile.xcscheme b/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile.xcscheme new file mode 100644 index 0000000000..d699c87c15 --- /dev/null +++ b/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile.xcscheme @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/mobile/ios/trinity-mobile/AppDelegate.h b/src/mobile/ios/trinity-mobile/AppDelegate.h new file mode 100644 index 0000000000..d4f2580b1e --- /dev/null +++ b/src/mobile/ios/trinity-mobile/AppDelegate.h @@ -0,0 +1,14 @@ +/** + * Copyright (c) 2015-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +#import + +@interface AppDelegate : UIResponder + +@property (nonatomic, strong) UIWindow *window; + +@end diff --git a/src/mobile/ios/trinity-mobile/AppDelegate.m b/src/mobile/ios/trinity-mobile/AppDelegate.m new file mode 100644 index 0000000000..4fd8e6d3e2 --- /dev/null +++ b/src/mobile/ios/trinity-mobile/AppDelegate.m @@ -0,0 +1,35 @@ +/** + * Copyright (c) 2015-present, Facebook, Inc. + * + * 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 + +@implementation AppDelegate + +- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions +{ + NSURL *jsCodeLocation; + + jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil]; + + RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation + moduleName:@"trinity-mobile" + 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]; + UIViewController *rootViewController = [UIViewController new]; + rootViewController.view = rootView; + self.window.rootViewController = rootViewController; + [self.window makeKeyAndVisible]; + return YES; +} + +@end diff --git a/src/mobile/ios/trinity-mobile/Base.lproj/LaunchScreen.xib b/src/mobile/ios/trinity-mobile/Base.lproj/LaunchScreen.xib new file mode 100644 index 0000000000..57284a5189 --- /dev/null +++ b/src/mobile/ios/trinity-mobile/Base.lproj/LaunchScreen.xib @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/mobile/ios/trinity-mobile/Images.xcassets/AppIcon.appiconset/Contents.json b/src/mobile/ios/trinity-mobile/Images.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000000..118c98f746 --- /dev/null +++ b/src/mobile/ios/trinity-mobile/Images.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,38 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/src/mobile/ios/trinity-mobile/Images.xcassets/Contents.json b/src/mobile/ios/trinity-mobile/Images.xcassets/Contents.json new file mode 100644 index 0000000000..2d92bd53fd --- /dev/null +++ b/src/mobile/ios/trinity-mobile/Images.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/src/mobile/ios/trinity-mobile/Info.plist b/src/mobile/ios/trinity-mobile/Info.plist new file mode 100644 index 0000000000..52b3df03fe --- /dev/null +++ b/src/mobile/ios/trinity-mobile/Info.plist @@ -0,0 +1,56 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleDisplayName + trinity-mobile + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UIViewControllerBasedStatusBarAppearance + + NSLocationWhenInUseUsageDescription + + NSAppTransportSecurity + + + NSExceptionDomains + + localhost + + NSExceptionAllowsInsecureHTTPLoads + + + + + + diff --git a/src/mobile/ios/trinity-mobile/main.m b/src/mobile/ios/trinity-mobile/main.m new file mode 100644 index 0000000000..c73e006253 --- /dev/null +++ b/src/mobile/ios/trinity-mobile/main.m @@ -0,0 +1,16 @@ +/** + * Copyright (c) 2015-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +#import + +#import "AppDelegate.h" + +int main(int argc, char * argv[]) { + @autoreleasepool { + return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); + } +} diff --git a/src/mobile/ios/trinity-mobileTests/Info.plist b/src/mobile/ios/trinity-mobileTests/Info.plist new file mode 100644 index 0000000000..886825ccc9 --- /dev/null +++ b/src/mobile/ios/trinity-mobileTests/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + + diff --git a/src/mobile/ios/trinity-mobileTests/trinity-mobileTests.m b/src/mobile/ios/trinity-mobileTests/trinity-mobileTests.m new file mode 100644 index 0000000000..f1998dd818 --- /dev/null +++ b/src/mobile/ios/trinity-mobileTests/trinity-mobileTests.m @@ -0,0 +1,68 @@ +/** + * Copyright (c) 2015-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +#import +#import + +#import +#import + +#define TIMEOUT_SECONDS 600 +#define TEXT_TO_LOOK_FOR @"Welcome to React Native!" + +@interface trinity-mobileTests : XCTestCase + +@end + +@implementation trinity-mobileTests + +- (BOOL)findSubviewInView:(UIView *)view matching:(BOOL(^)(UIView *view))test +{ + if (test(view)) { + return YES; + } + for (UIView *subview in [view subviews]) { + if ([self findSubviewInView:subview matching:test]) { + return YES; + } + } + return NO; +} + +- (void)testRendersWelcomeScreen +{ + UIViewController *vc = [[[RCTSharedApplication() delegate] window] rootViewController]; + NSDate *date = [NSDate dateWithTimeIntervalSinceNow:TIMEOUT_SECONDS]; + BOOL foundElement = NO; + + __block NSString *redboxError = nil; + RCTSetLogFunction(^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) { + if (level >= RCTLogLevelError) { + redboxError = message; + } + }); + + while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) { + [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; + [[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; + + foundElement = [self findSubviewInView:vc.view matching:^BOOL(UIView *view) { + if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) { + return YES; + } + return NO; + }]; + } + + RCTSetLogFunction(RCTDefaultLogFunction); + + XCTAssertNil(redboxError, @"RedBox error: %@", redboxError); + XCTAssertTrue(foundElement, @"Couldn't find element with text '%@' in %d seconds", TEXT_TO_LOOK_FOR, TIMEOUT_SECONDS); +} + + +@end diff --git a/src/mobile/package.json b/src/mobile/package.json index 15ab5ccb05..657a7e6dac 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -21,7 +21,7 @@ "ios:dev": "cross-env NODE_ENV=development ./node_modules/.bin/react-native run-ios", "test": "NODE_ENV=test ./node_modules/.bin/jest --forceExit", "nodejs-deps": "yarn --cwd nodejs-assets/nodejs-project", - "postinstall": "./node_modules/.bin/rn-nodeify --hack --install && rm ./node_modules/react-native/local-cli/core/__fixtures__/files/package.json && rm ./node_modules/react-native/Libraries/polyfills/babelHelpers.js && cp babelHelpersCopy ./node_modules/react-native/Libraries/polyfills/babelHelpers.js && yarn nodejs-deps", + "postinstall": "./node_modules/.bin/rn-nodeify --hack --install && yarn nodejs-deps", "lint": "./node_modules/.bin/eslint --ext .js .", "prepare-release": "yarn version && cd ios && bundle exec fastlane release && cd ../android && bundle exec fastlane release && cd .. && echo Successfully incremented version and build numbers! Please remember to run git add ., git commit, git push --tags, and git push", "audit": "./../../node_modules/.bin/auditjs -l error -w whitelist.json" @@ -56,9 +56,9 @@ "punycode": "^1.4.1", "qr.js": "https://github.com/defunctzombie/qr.js", "querystring-es3": "^0.2.1", - "react": "16.0.0", + "react": "16.4.1", "react-i18next": "^7.3.0", - "react-native": "0.51.0", + "react-native": "0.56.0", "react-native-camera": "^1.1.4", "react-native-crypto": "^2.0.2", "react-native-detect-navbar-android": "^0.2.0", @@ -80,7 +80,7 @@ "react-native-keychain": "2.0.0-rc", "react-native-level-fs": "^3.0.0", "react-native-markdown-renderer": "^3.2.1", - "react-native-modal": "^6.0.0", + "react-native-modal": "^6.5.0", "react-native-modal-translucent": "^1.1.3", "react-native-navigation": "^1.1.431", "react-native-optimized-flatlist": "^1.0.4", @@ -119,12 +119,12 @@ "tweetnacl-util": "^0.15.0", "url": "^0.10.3", "util": "^0.10.3", - "victory-native": "^0.16.2", + "victory-native": "^30.3.0", "vm-browserify": "0.0.4" }, "devDependencies": { "babel-jest": "20.0.3", - "babel-preset-react-native": "3.0.1", + "babel-preset-react-native": "5.0.2", "babel-preset-stage-0": "^6.24.1", "cross-env": "^5.1.3", "enzyme": "^3.2.0", diff --git a/src/mobile/routes/entry.js b/src/mobile/routes/entry.js index 2ab3bbc302..e1d2723004 100644 --- a/src/mobile/routes/entry.js +++ b/src/mobile/routes/entry.js @@ -30,6 +30,9 @@ const launch = (store) => { SwitchingConfig.autoSwitch = false; // Disable accessibility fonts + if (Text.defaultProps === null) { + Text.defaultProps = {}; + } Text.defaultProps.allowFontScaling = false; TextInput.defaultProps.allowFontScaling = false; diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 2c7d19bd20..18c2fc7e59 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -2,6 +2,480 @@ # yarn lockfile v1 +"@babel/code-frame@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.47.tgz#d18c2f4c4ba8d093a2bcfab5616593bfe2441a27" + dependencies: + "@babel/highlight" "7.0.0-beta.47" + +"@babel/core@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.0.0-beta.47.tgz#b9c164fb9a1e1083f067c236a9da1d7a7d759271" + dependencies: + "@babel/code-frame" "7.0.0-beta.47" + "@babel/generator" "7.0.0-beta.47" + "@babel/helpers" "7.0.0-beta.47" + "@babel/template" "7.0.0-beta.47" + "@babel/traverse" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + babylon "7.0.0-beta.47" + convert-source-map "^1.1.0" + debug "^3.1.0" + json5 "^0.5.0" + lodash "^4.17.5" + micromatch "^2.3.11" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/generator@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.0.0-beta.47.tgz#1835709f377cc4d2a4affee6d9258a10bbf3b9d1" + dependencies: + "@babel/types" "7.0.0-beta.47" + jsesc "^2.5.1" + lodash "^4.17.5" + source-map "^0.5.0" + trim-right "^1.0.1" + +"@babel/helper-annotate-as-pure@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0-beta.47.tgz#354fb596055d9db369211bf075f0d5e93904d6f6" + dependencies: + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-builder-binary-assignment-operator-visitor@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.0.0-beta.47.tgz#d5917c29ee3d68abc2c72f604bc043f6e056e907" + dependencies: + "@babel/helper-explode-assignable-expression" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-builder-react-jsx@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.0.0-beta.47.tgz#e39bbce315743044c0d64b31f82f20600f761729" + dependencies: + "@babel/types" "7.0.0-beta.47" + esutils "^2.0.0" + +"@babel/helper-call-delegate@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.0.0-beta.47.tgz#96b7804397075f722a4030d3876f51ec19d8829b" + dependencies: + "@babel/helper-hoist-variables" "7.0.0-beta.47" + "@babel/traverse" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-define-map@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.0.0-beta.47.tgz#43a9def87c5166dc29630d51b3da9cc4320c131c" + dependencies: + "@babel/helper-function-name" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + lodash "^4.17.5" + +"@babel/helper-explode-assignable-expression@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.0.0-beta.47.tgz#56b688e282a698f4d1cf135453a11ae8af870a19" + dependencies: + "@babel/traverse" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-function-name@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.47.tgz#8057d63e951e85c57c02cdfe55ad7608d73ffb7d" + dependencies: + "@babel/helper-get-function-arity" "7.0.0-beta.47" + "@babel/template" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-get-function-arity@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.47.tgz#2de04f97c14b094b55899d3fa83144a16d207510" + dependencies: + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-hoist-variables@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0-beta.47.tgz#ce295d1d723fe22b2820eaec748ed701aa5ae3d0" + dependencies: + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-member-expression-to-functions@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0-beta.47.tgz#35bfcf1d16dce481ef3dec66d5a1ae6a7d80bb45" + dependencies: + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-module-imports@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0-beta.47.tgz#5af072029ffcfbece6ffbaf5d9984c75580f3f04" + dependencies: + "@babel/types" "7.0.0-beta.47" + lodash "^4.17.5" + +"@babel/helper-module-transforms@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.0.0-beta.47.tgz#7eff91fc96873bd7b8d816698f1a69bbc01f3c38" + dependencies: + "@babel/helper-module-imports" "7.0.0-beta.47" + "@babel/helper-simple-access" "7.0.0-beta.47" + "@babel/helper-split-export-declaration" "7.0.0-beta.47" + "@babel/template" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + lodash "^4.17.5" + +"@babel/helper-optimise-call-expression@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0-beta.47.tgz#085d864d0613c5813c1b7c71b61bea36f195929e" + dependencies: + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-plugin-utils@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0-beta.47.tgz#4f564117ec39f96cf60fafcde35c9ddce0e008fd" + +"@babel/helper-regex@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.0.0-beta.47.tgz#b8e3b53132c4edbb04804242c02ffe4d60316971" + dependencies: + lodash "^4.17.5" + +"@babel/helper-remap-async-to-generator@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.0.0-beta.47.tgz#444dc362f61470bd61a745ebb364431d9ca186c2" + dependencies: + "@babel/helper-annotate-as-pure" "7.0.0-beta.47" + "@babel/helper-wrap-function" "7.0.0-beta.47" + "@babel/template" "7.0.0-beta.47" + "@babel/traverse" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-replace-supers@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.0.0-beta.47.tgz#310b206a302868a792b659455ceba27db686cbb7" + dependencies: + "@babel/helper-member-expression-to-functions" "7.0.0-beta.47" + "@babel/helper-optimise-call-expression" "7.0.0-beta.47" + "@babel/traverse" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-simple-access@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.0.0-beta.47.tgz#234d754acbda9251a10db697ef50181eab125042" + dependencies: + "@babel/template" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + lodash "^4.17.5" + +"@babel/helper-split-export-declaration@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.47.tgz#e11277855472d8d83baf22f2d0186c4a2059b09a" + dependencies: + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-wrap-function@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.0.0-beta.47.tgz#6528b44a3ccb4f3aeeb79add0a88192f7eb81161" + dependencies: + "@babel/helper-function-name" "7.0.0-beta.47" + "@babel/template" "7.0.0-beta.47" + "@babel/traverse" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + +"@babel/helpers@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.0.0-beta.47.tgz#f9b42ed2e4d5f75ec0fb2e792c173e451e8d40fd" + dependencies: + "@babel/template" "7.0.0-beta.47" + "@babel/traverse" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + +"@babel/highlight@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0-beta.47.tgz#8fbc83fb2a21f0bd2b95cdbeb238cf9689cad494" + dependencies: + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^3.0.0" + +"@babel/plugin-external-helpers@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-external-helpers/-/plugin-external-helpers-7.0.0-beta.47.tgz#b348b80da9b5fa3acebbe21979aa3839f6f7b875" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-proposal-class-properties@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.0.0-beta.47.tgz#08c1a1dfc92d0f5c37b39096c6fb883e1ca4b0f5" + dependencies: + "@babel/helper-function-name" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-replace-supers" "7.0.0-beta.47" + "@babel/plugin-syntax-class-properties" "7.0.0-beta.47" + +"@babel/plugin-proposal-object-rest-spread@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0-beta.47.tgz#e1529fddc88e948868ee1d0edaa27ebd9502322d" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/plugin-syntax-object-rest-spread" "7.0.0-beta.47" + +"@babel/plugin-proposal-optional-chaining@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.0.0-beta.47.tgz#099e5720121f91eb36544575f98d44cd57865ea5" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/plugin-syntax-optional-chaining" "7.0.0-beta.47" + +"@babel/plugin-syntax-class-properties@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.0.0-beta.47.tgz#de52bed12fd472c848e1562f57dd4a202fe27f11" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-syntax-dynamic-import@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.0.0-beta.47.tgz#ee964915014a687701ee8e15c289e31a7c899e60" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-syntax-flow@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.0.0-beta.47.tgz#9d0b09b9af6fec87a7b22e406bf948089d58c188" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-syntax-jsx@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.0.0-beta.47.tgz#f3849d94288695d724bd205b4f6c3c99e4ec24a4" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-syntax-nullish-coalescing-operator@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.0.0-beta.47.tgz#24043fa9b2cdd980d4ff18b9d451569565725ebf" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-syntax-object-rest-spread@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.0.0-beta.47.tgz#21da514d94c138b2261ca09f0dec9abadce16185" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-syntax-optional-chaining@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.0.0-beta.47.tgz#f1febe859d9dde26f2b2e1f20cf679925d1fab23" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-arrow-functions@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.0.0-beta.47.tgz#d6eecda4c652b909e3088f0983ebaf8ec292984b" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-async-to-generator@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.0.0-beta.47.tgz#5723816ea1e91fa313a84e6ee9cc12ff31d46610" + dependencies: + "@babel/helper-module-imports" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-remap-async-to-generator" "7.0.0-beta.47" + +"@babel/plugin-transform-block-scoping@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0-beta.47.tgz#b737cc58a81bea57efd5bda0baef9a43a25859ad" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + lodash "^4.17.5" + +"@babel/plugin-transform-classes@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.0.0-beta.47.tgz#7aff9cbe7b26fd94d7a9f97fa90135ef20c93fb6" + dependencies: + "@babel/helper-annotate-as-pure" "7.0.0-beta.47" + "@babel/helper-define-map" "7.0.0-beta.47" + "@babel/helper-function-name" "7.0.0-beta.47" + "@babel/helper-optimise-call-expression" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-replace-supers" "7.0.0-beta.47" + "@babel/helper-split-export-declaration" "7.0.0-beta.47" + globals "^11.1.0" + +"@babel/plugin-transform-computed-properties@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.0.0-beta.47.tgz#56ef2a021769a2b65e90a3e12fd10b791da9f3e0" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-destructuring@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.0.0-beta.47.tgz#452b607775fd1c4d10621997837189efc0a6d428" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-exponentiation-operator@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.0.0-beta.47.tgz#930e1abf5db9f4db5b63dbf97f3581ad0be1e907" + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-flow-strip-types@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.0.0-beta.47.tgz#fa45811094c10d70c84efdd0eac62ebd2a634bf7" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/plugin-syntax-flow" "7.0.0-beta.47" + +"@babel/plugin-transform-for-of@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.0.0-beta.47.tgz#527d5dc24e4a4ad0fc1d0a3990d29968cb984e76" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-function-name@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.0.0-beta.47.tgz#fb443c81cc77f3206a863b730b35c8c553ce5041" + dependencies: + "@babel/helper-function-name" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-literals@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.0.0-beta.47.tgz#448fad196f062163684a38f10f14e83315892e9c" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-modules-commonjs@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.0.0-beta.47.tgz#dfe5c6d867aa9614e55f7616736073edb3aab887" + dependencies: + "@babel/helper-module-transforms" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-simple-access" "7.0.0-beta.47" + +"@babel/plugin-transform-object-assign@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.0.0-beta.47.tgz#aaf0e4593c1e9b1ceb48fc8770736a029b17ed64" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-parameters@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.0.0-beta.47.tgz#46a4236040a6552a5f165fb3ddd60368954b0ddd" + dependencies: + "@babel/helper-call-delegate" "7.0.0-beta.47" + "@babel/helper-get-function-arity" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-react-display-name@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.0.0-beta.47.tgz#7a45c1703b8b33f252148ecf1b50dd54809de952" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-react-jsx-source@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.0.0-beta.47.tgz#da8c01704b896409eae168a15045216e72d278dc" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/plugin-syntax-jsx" "7.0.0-beta.47" + +"@babel/plugin-transform-react-jsx@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.0.0-beta.47.tgz#98c99a69be748d966c0aea08b5ca942ba3fc9ed1" + dependencies: + "@babel/helper-builder-react-jsx" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/plugin-syntax-jsx" "7.0.0-beta.47" + +"@babel/plugin-transform-regenerator@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0-beta.47.tgz#86500e1c404055fb98fc82b73b09bd053cacb516" + dependencies: + regenerator-transform "^0.12.3" + +"@babel/plugin-transform-shorthand-properties@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0-beta.47.tgz#00be44c4fad8fe2c00ed18ea15ea3c88dd519dbb" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-spread@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.0.0-beta.47.tgz#3feadb02292ed1e9b75090d651b9df88a7ab5c50" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-sticky-regex@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.0.0-beta.47.tgz#c0aa347d76b5dc87d3b37ac016ada3f950605131" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-regex" "7.0.0-beta.47" + +"@babel/plugin-transform-template-literals@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.0.0-beta.47.tgz#5f7b5badf64c4c5da79026aeab03001e62a6ee5f" + dependencies: + "@babel/helper-annotate-as-pure" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "7.0.0-beta.47" + +"@babel/plugin-transform-unicode-regex@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.0.0-beta.47.tgz#efed0b2f1dfbf28283502234a95b4be88f7fdcb6" + dependencies: + "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-regex" "7.0.0-beta.47" + regexpu-core "^4.1.3" + +"@babel/register@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.0.0-beta.47.tgz#ac53bc357ca59979db0e306aa5d3121aa612a7a2" + dependencies: + core-js "^2.5.3" + find-cache-dir "^1.0.0" + home-or-tmp "^3.0.0" + lodash "^4.17.5" + mkdirp "^0.5.1" + pirates "^3.0.1" + source-map-support "^0.4.2" + +"@babel/template@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.0.0-beta.47.tgz#0473970a7c0bee7a1a18c1ca999d3ba5e5bad83d" + dependencies: + "@babel/code-frame" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + babylon "7.0.0-beta.47" + lodash "^4.17.5" + +"@babel/traverse@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.0.0-beta.47.tgz#0e57fdbb9ff3a909188b6ebf1e529c641e6c82a4" + dependencies: + "@babel/code-frame" "7.0.0-beta.47" + "@babel/generator" "7.0.0-beta.47" + "@babel/helper-function-name" "7.0.0-beta.47" + "@babel/helper-split-export-declaration" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + babylon "7.0.0-beta.47" + debug "^3.1.0" + globals "^11.1.0" + invariant "^2.2.0" + lodash "^4.17.5" + +"@babel/types@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0-beta.47.tgz#e6fcc1a691459002c2671d558a586706dddaeef8" + dependencies: + esutils "^2.0.2" + lodash "^4.17.5" + to-fast-properties "^2.0.0" + "@types/markdown-it@^0.0.4": version "0.0.4" resolved "https://registry.yarnpkg.com/@types/markdown-it/-/markdown-it-0.0.4.tgz#c5f67365916044b342dae8d702724788ba0b5b74" @@ -46,14 +520,7 @@ abstract-leveldown@~0.12.1: dependencies: xtend "~3.0.0" -accepts@~1.2.12, accepts@~1.2.13: - version "1.2.13" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.2.13.tgz#e5f1f3928c6d95fd96558c36ec3d9d0de4a6ecea" - dependencies: - mime-types "~2.1.6" - negotiator "0.5.3" - -accepts@~1.3.0: +accepts@~1.3.3, accepts@~1.3.5: version "1.3.5" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" dependencies: @@ -173,10 +640,6 @@ aproba@^1.0.3: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" -arch@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/arch/-/arch-2.1.0.tgz#3613aa46149064b3c1f0607919bf1d4786e82889" - are-we-there-yet@~1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" @@ -289,6 +752,10 @@ assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" +async-limiter@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" + async@^1.4.0: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" @@ -383,7 +850,7 @@ babel-core@^6.0.0, babel-core@^6.24.1, babel-core@^6.26.0, babel-core@^6.7.2: slash "^1.0.0" source-map "^0.5.7" -babel-generator@^6.18.0, babel-generator@^6.24.1, babel-generator@^6.26.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" dependencies: @@ -494,7 +961,7 @@ babel-helper-regex@^6.24.1: babel-types "^6.26.0" lodash "^4.17.4" -babel-helper-remap-async-to-generator@^6.16.0, babel-helper-remap-async-to-generator@^6.24.1: +babel-helper-remap-async-to-generator@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" dependencies: @@ -536,13 +1003,13 @@ babel-messages@^6.23.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-check-es2015-constants@^6.5.0, babel-plugin-check-es2015-constants@^6.8.0: +babel-plugin-check-es2015-constants@^6.8.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" dependencies: babel-runtime "^6.22.0" -babel-plugin-external-helpers@^6.18.0: +babel-plugin-external-helpers@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-external-helpers/-/babel-plugin-external-helpers-6.22.0.tgz#2285f48b02bd5dede85175caf8c62e86adccefa1" dependencies: @@ -561,19 +1028,7 @@ babel-plugin-jest-hoist@^20.0.3: version "20.0.3" resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-20.0.3.tgz#afedc853bd3f8dc3548ea671fbe69d03cc2c1767" -babel-plugin-react-transform@2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/babel-plugin-react-transform/-/babel-plugin-react-transform-2.0.2.tgz#515bbfa996893981142d90b1f9b1635de2995109" - dependencies: - lodash "^4.6.1" - -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" - dependencies: - lodash "^4.6.1" - -babel-plugin-syntax-async-functions@^6.5.0, babel-plugin-syntax-async-functions@^6.8.0: +babel-plugin-syntax-async-functions@^6.8.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" @@ -585,7 +1040,7 @@ babel-plugin-syntax-class-constructor-call@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz#9cb9d39fe43c8600bec8146456ddcbd4e1a76416" -babel-plugin-syntax-class-properties@^6.5.0, babel-plugin-syntax-class-properties@^6.8.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" @@ -609,7 +1064,7 @@ babel-plugin-syntax-export-extensions@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz#70a1484f0f9089a4e84ad44bac353c95b9b12721" -babel-plugin-syntax-flow@^6.18.0, babel-plugin-syntax-flow@^6.5.0, babel-plugin-syntax-flow@^6.8.0: +babel-plugin-syntax-flow@^6.18.0, babel-plugin-syntax-flow@^6.8.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" @@ -617,7 +1072,7 @@ babel-plugin-syntax-function-bind@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz#48c495f177bdf31a981e732f55adc0bdd2601f46" -babel-plugin-syntax-jsx@^6.5.0, babel-plugin-syntax-jsx@^6.8.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" @@ -625,7 +1080,7 @@ babel-plugin-syntax-object-rest-spread@^6.13.0, babel-plugin-syntax-object-rest- 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" -babel-plugin-syntax-trailing-function-commas@^6.20.0, babel-plugin-syntax-trailing-function-commas@^6.22.0, babel-plugin-syntax-trailing-function-commas@^6.5.0, babel-plugin-syntax-trailing-function-commas@^6.8.0: +babel-plugin-syntax-trailing-function-commas@^6.22.0, babel-plugin-syntax-trailing-function-commas@^6.8.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" @@ -637,14 +1092,6 @@ babel-plugin-transform-async-generator-functions@^6.24.1: babel-plugin-syntax-async-generators "^6.5.0" babel-runtime "^6.22.0" -babel-plugin-transform-async-to-generator@6.16.0: - version "6.16.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.16.0.tgz#19ec36cb1486b59f9f468adfa42ce13908ca2999" - dependencies: - babel-helper-remap-async-to-generator "^6.16.0" - babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.0.0" - babel-plugin-transform-async-to-generator@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" @@ -661,7 +1108,7 @@ babel-plugin-transform-class-constructor-call@^6.24.1: babel-runtime "^6.22.0" babel-template "^6.24.1" -babel-plugin-transform-class-properties@^6.18.0, babel-plugin-transform-class-properties@^6.24.1, babel-plugin-transform-class-properties@^6.5.0, babel-plugin-transform-class-properties@^6.8.0: +babel-plugin-transform-class-properties@^6.24.1, babel-plugin-transform-class-properties@^6.8.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" dependencies: @@ -687,7 +1134,7 @@ babel-plugin-transform-do-expressions@^6.22.0: babel-plugin-syntax-do-expressions "^6.8.0" babel-runtime "^6.22.0" -babel-plugin-transform-es2015-arrow-functions@^6.5.0, babel-plugin-transform-es2015-arrow-functions@^6.8.0: +babel-plugin-transform-es2015-arrow-functions@^6.8.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" dependencies: @@ -699,7 +1146,7 @@ babel-plugin-transform-es2015-block-scoped-functions@^6.8.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-block-scoping@^6.5.0, babel-plugin-transform-es2015-block-scoping@^6.8.0: +babel-plugin-transform-es2015-block-scoping@^6.8.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" dependencies: @@ -709,7 +1156,7 @@ babel-plugin-transform-es2015-block-scoping@^6.5.0, babel-plugin-transform-es201 babel-types "^6.26.0" lodash "^4.17.4" -babel-plugin-transform-es2015-classes@^6.5.0, babel-plugin-transform-es2015-classes@^6.8.0: +babel-plugin-transform-es2015-classes@^6.8.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" dependencies: @@ -723,26 +1170,26 @@ babel-plugin-transform-es2015-classes@^6.5.0, babel-plugin-transform-es2015-clas babel-traverse "^6.24.1" babel-types "^6.24.1" -babel-plugin-transform-es2015-computed-properties@^6.5.0, babel-plugin-transform-es2015-computed-properties@^6.8.0: +babel-plugin-transform-es2015-computed-properties@^6.8.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" dependencies: babel-runtime "^6.22.0" babel-template "^6.24.1" -babel-plugin-transform-es2015-destructuring@6.x, babel-plugin-transform-es2015-destructuring@^6.5.0, babel-plugin-transform-es2015-destructuring@^6.8.0: +babel-plugin-transform-es2015-destructuring@6.x, babel-plugin-transform-es2015-destructuring@^6.8.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" dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-for-of@^6.5.0, babel-plugin-transform-es2015-for-of@^6.8.0: +babel-plugin-transform-es2015-for-of@^6.8.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" dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-function-name@6.x, babel-plugin-transform-es2015-function-name@^6.5.0, babel-plugin-transform-es2015-function-name@^6.8.0: +babel-plugin-transform-es2015-function-name@6.x, babel-plugin-transform-es2015-function-name@^6.8.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" dependencies: @@ -750,13 +1197,13 @@ babel-plugin-transform-es2015-function-name@6.x, babel-plugin-transform-es2015-f babel-runtime "^6.22.0" babel-types "^6.24.1" -babel-plugin-transform-es2015-literals@^6.5.0, babel-plugin-transform-es2015-literals@^6.8.0: +babel-plugin-transform-es2015-literals@^6.8.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" dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-modules-commonjs@6.x, babel-plugin-transform-es2015-modules-commonjs@^6.5.0, babel-plugin-transform-es2015-modules-commonjs@^6.8.0: +babel-plugin-transform-es2015-modules-commonjs@6.x, babel-plugin-transform-es2015-modules-commonjs@^6.8.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" dependencies: @@ -772,7 +1219,7 @@ babel-plugin-transform-es2015-object-super@^6.8.0: babel-helper-replace-supers "^6.24.1" babel-runtime "^6.22.0" -babel-plugin-transform-es2015-parameters@6.x, babel-plugin-transform-es2015-parameters@^6.5.0, babel-plugin-transform-es2015-parameters@^6.8.0: +babel-plugin-transform-es2015-parameters@6.x, babel-plugin-transform-es2015-parameters@^6.8.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" dependencies: @@ -783,14 +1230,14 @@ babel-plugin-transform-es2015-parameters@6.x, babel-plugin-transform-es2015-para babel-traverse "^6.24.1" babel-types "^6.24.1" -babel-plugin-transform-es2015-shorthand-properties@6.x, babel-plugin-transform-es2015-shorthand-properties@^6.5.0, babel-plugin-transform-es2015-shorthand-properties@^6.8.0: +babel-plugin-transform-es2015-shorthand-properties@6.x, babel-plugin-transform-es2015-shorthand-properties@^6.8.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" dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" -babel-plugin-transform-es2015-spread@6.x, babel-plugin-transform-es2015-spread@^6.5.0, babel-plugin-transform-es2015-spread@^6.8.0: +babel-plugin-transform-es2015-spread@6.x, babel-plugin-transform-es2015-spread@^6.8.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" dependencies: @@ -804,7 +1251,7 @@ babel-plugin-transform-es2015-sticky-regex@6.x: babel-runtime "^6.22.0" babel-types "^6.24.1" -babel-plugin-transform-es2015-template-literals@^6.5.0, babel-plugin-transform-es2015-template-literals@^6.8.0: +babel-plugin-transform-es2015-template-literals@^6.8.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" dependencies: @@ -830,7 +1277,7 @@ babel-plugin-transform-es3-property-literals@^6.8.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-exponentiation-operator@^6.24.1, babel-plugin-transform-exponentiation-operator@^6.5.0: +babel-plugin-transform-exponentiation-operator@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" dependencies: @@ -845,7 +1292,7 @@ babel-plugin-transform-export-extensions@^6.22.0: babel-plugin-syntax-export-extensions "^6.8.0" babel-runtime "^6.22.0" -babel-plugin-transform-flow-strip-types@^6.21.0, babel-plugin-transform-flow-strip-types@^6.5.0, babel-plugin-transform-flow-strip-types@^6.8.0: +babel-plugin-transform-flow-strip-types@^6.21.0, babel-plugin-transform-flow-strip-types@^6.8.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" dependencies: @@ -859,33 +1306,20 @@ babel-plugin-transform-function-bind@^6.22.0: babel-plugin-syntax-function-bind "^6.8.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" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-object-rest-spread@^6.20.2, babel-plugin-transform-object-rest-spread@^6.22.0, babel-plugin-transform-object-rest-spread@^6.5.0, babel-plugin-transform-object-rest-spread@^6.8.0: +babel-plugin-transform-object-rest-spread@^6.22.0, babel-plugin-transform-object-rest-spread@^6.8.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" dependencies: babel-plugin-syntax-object-rest-spread "^6.8.0" babel-runtime "^6.26.0" -babel-plugin-transform-react-display-name@^6.5.0, babel-plugin-transform-react-display-name@^6.8.0: +babel-plugin-transform-react-display-name@^6.8.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" 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" - dependencies: - babel-plugin-syntax-jsx "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-react-jsx@^6.5.0, babel-plugin-transform-react-jsx@^6.8.0: +babel-plugin-transform-react-jsx@^6.8.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" dependencies: @@ -893,12 +1327,6 @@ babel-plugin-transform-react-jsx@^6.5.0, babel-plugin-transform-react-jsx@^6.8.0 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" - 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" @@ -959,77 +1387,37 @@ babel-preset-jest@^20.0.3: dependencies: babel-plugin-jest-hoist "^20.0.3" -babel-preset-react-native@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-react-native/-/babel-preset-react-native-3.0.1.tgz#ad9e96e39eac6673f3382e9bea9d17c8aa95da3c" - dependencies: - babel-plugin-check-es2015-constants "^6.5.0" - babel-plugin-react-transform "2.0.2" - 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-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-preset-react-native@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/babel-preset-react-native/-/babel-preset-react-native-4.0.0.tgz#3df80dd33a453888cdd33bdb87224d17a5d73959" - 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-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-preset-react-native@5.0.2, babel-preset-react-native@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/babel-preset-react-native/-/babel-preset-react-native-5.0.2.tgz#dfed62379712a9c017ff99ce4fbeac1e11d42285" + dependencies: + "@babel/plugin-proposal-class-properties" "7.0.0-beta.47" + "@babel/plugin-proposal-object-rest-spread" "7.0.0-beta.47" + "@babel/plugin-proposal-optional-chaining" "7.0.0-beta.47" + "@babel/plugin-transform-arrow-functions" "7.0.0-beta.47" + "@babel/plugin-transform-block-scoping" "7.0.0-beta.47" + "@babel/plugin-transform-classes" "7.0.0-beta.47" + "@babel/plugin-transform-computed-properties" "7.0.0-beta.47" + "@babel/plugin-transform-destructuring" "7.0.0-beta.47" + "@babel/plugin-transform-exponentiation-operator" "7.0.0-beta.47" + "@babel/plugin-transform-flow-strip-types" "7.0.0-beta.47" + "@babel/plugin-transform-for-of" "7.0.0-beta.47" + "@babel/plugin-transform-function-name" "7.0.0-beta.47" + "@babel/plugin-transform-literals" "7.0.0-beta.47" + "@babel/plugin-transform-modules-commonjs" "7.0.0-beta.47" + "@babel/plugin-transform-object-assign" "7.0.0-beta.47" + "@babel/plugin-transform-parameters" "7.0.0-beta.47" + "@babel/plugin-transform-react-display-name" "7.0.0-beta.47" + "@babel/plugin-transform-react-jsx" "7.0.0-beta.47" + "@babel/plugin-transform-react-jsx-source" "7.0.0-beta.47" + "@babel/plugin-transform-regenerator" "7.0.0-beta.47" + "@babel/plugin-transform-shorthand-properties" "7.0.0-beta.47" + "@babel/plugin-transform-spread" "7.0.0-beta.47" + "@babel/plugin-transform-sticky-regex" "7.0.0-beta.47" + "@babel/plugin-transform-template-literals" "7.0.0-beta.47" + "@babel/plugin-transform-unicode-regex" "7.0.0-beta.47" + "@babel/template" "7.0.0-beta.47" + metro-babel7-plugin-react-transform "^0.39.1" babel-preset-stage-0@^6.24.1: version "6.24.1" @@ -1078,7 +1466,7 @@ babel-register@^6.24.1, babel-register@^6.26.0: mkdirp "^0.5.1" source-map-support "^0.4.15" -babel-runtime@^6.0.0, babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.23.0, babel-runtime@^6.26.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" dependencies: @@ -1109,7 +1497,7 @@ babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: invariant "^2.2.2" lodash "^4.17.4" -babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: +babel-types@^6.18.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" dependencies: @@ -1118,6 +1506,10 @@ babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26 lodash "^4.17.4" to-fast-properties "^1.0.3" +babylon@7.0.0-beta.47: + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.47.tgz#6d1fa44f0abec41ab7c780481e62fd9aafbdea80" + babylon@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" @@ -1130,7 +1522,7 @@ base-64@0.1.0, base-64@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/base-64/-/base-64-0.1.0.tgz#780a99c84e7d600260361511c4877613bf24f6bb" -base64-js@*, base64-js@^1.0.2, base64-js@^1.1.2, base64-js@^1.3.0: +base64-js@*, base64-js@^1.0.2, base64-js@^1.1.2, base64-js@^1.2.3, base64-js@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" @@ -1142,10 +1534,6 @@ base64-js@1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.1.2.tgz#d6400cac1c4c660976d90d07a04351d89395f5e8" -base64-url@1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/base64-url/-/base64-url-1.2.1.tgz#199fd661702a0e7b7dcae6e0698bb089c52f6d78" - base@^0.11.1: version "0.11.2" resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" @@ -1158,17 +1546,11 @@ base@^0.11.1: mixin-deep "^1.2.0" pascalcase "^0.1.1" -basic-auth-connect@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/basic-auth-connect/-/basic-auth-connect-1.0.0.tgz#fdb0b43962ca7b40456a7c2bb48fe173da2d2122" - -basic-auth@~1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-1.0.4.tgz#030935b01de7c9b94a824b29f3fccb750d3a5290" - -batch@0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.5.3.tgz#3f3414f380321743bfc1042f9a83ff1d5824d464" +basic-auth@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-2.0.0.tgz#015db3f353e02e56377755f962742e8981e7bbba" + dependencies: + safe-buffer "5.1.1" bcrypt-pbkdf@^1.0.0: version "1.0.1" @@ -1198,21 +1580,6 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.8" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" -body-parser@~1.13.3: - version "1.13.3" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.13.3.tgz#c08cf330c3358e151016a05746f13f029c97fa97" - dependencies: - bytes "2.1.0" - content-type "~1.0.1" - debug "~2.2.0" - depd "~1.0.1" - http-errors "~1.3.1" - iconv-lite "0.4.11" - on-finished "~2.3.0" - qs "4.0.0" - raw-body "~2.1.2" - type-is "~1.6.6" - boolbase@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" @@ -1380,13 +1747,9 @@ builtin-modules@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" -bytes@2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.1.0.tgz#ac93c410e2ffc9cc7cf4b464b38289067f5e47b4" - -bytes@2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-2.4.0.tgz#7d97196f9d5baf7f6935e25985549edd2a6c2339" +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" cache-base@^1.0.1: version "1.0.1" @@ -1509,13 +1872,6 @@ cli@^1.0.1: exit "0.1.2" glob "^7.1.1" -clipboardy@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/clipboardy/-/clipboardy-1.2.3.tgz#0526361bf78724c1f20be248d428e365433c07ef" - dependencies: - arch "^2.1.0" - execa "^0.8.0" - cliui@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" @@ -1601,6 +1957,10 @@ commander@~2.13.0: version "2.13.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + compare-versions@^3.1.0: version "3.2.1" resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.2.1.tgz#a49eb7689d4caaf0b6db5220173fd279614000f7" @@ -1609,22 +1969,23 @@ component-emitter@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" -compressible@~2.0.5: - version "2.0.13" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.13.tgz#0d1020ab924b2fdb4d6279875c7d6daba6baa7a9" +compressible@~2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.14.tgz#326c5f507fbb055f54116782b969a81b67a29da7" dependencies: - mime-db ">= 1.33.0 < 2" + mime-db ">= 1.34.0 < 2" -compression@~1.5.2: - version "1.5.2" - resolved "http://registry.npmjs.org/compression/-/compression-1.5.2.tgz#b03b8d86e6f8ad29683cba8df91ddc6ffc77b395" +compression@^1.7.1: + version "1.7.3" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.3.tgz#27e0e176aaf260f7f2c2813c3e440adb9f1993db" dependencies: - accepts "~1.2.12" - bytes "2.1.0" - compressible "~2.0.5" - debug "~2.2.0" - on-headers "~1.0.0" - vary "~1.0.1" + accepts "~1.3.5" + bytes "3.0.0" + compressible "~2.0.14" + debug "2.6.9" + on-headers "~1.0.1" + safe-buffer "5.1.2" + vary "~1.1.2" concat-map@0.0.1: version "0.0.1" @@ -1639,50 +2000,14 @@ concat-stream@^1.4.4, concat-stream@^1.6.0: readable-stream "^2.2.2" typedarray "^0.0.6" -connect-timeout@~1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/connect-timeout/-/connect-timeout-1.6.2.tgz#de9a5ec61e33a12b6edaab7b5f062e98c599b88e" - dependencies: - debug "~2.2.0" - http-errors "~1.3.1" - ms "0.7.1" - on-headers "~1.0.0" - -connect@^2.8.3: - version "2.30.2" - resolved "https://registry.yarnpkg.com/connect/-/connect-2.30.2.tgz#8da9bcbe8a054d3d318d74dfec903b5c39a1b609" - dependencies: - basic-auth-connect "1.0.0" - body-parser "~1.13.3" - bytes "2.1.0" - compression "~1.5.2" - connect-timeout "~1.6.2" - content-type "~1.0.1" - cookie "0.1.3" - cookie-parser "~1.3.5" - cookie-signature "1.0.6" - csurf "~1.8.3" - debug "~2.2.0" - depd "~1.0.1" - errorhandler "~1.4.2" - express-session "~1.11.3" - finalhandler "0.4.0" - fresh "0.3.0" - http-errors "~1.3.1" - method-override "~2.3.5" - morgan "~1.6.1" - multiparty "3.3.2" - on-headers "~1.0.0" - parseurl "~1.3.0" - pause "0.1.0" - qs "4.0.0" - response-time "~2.3.1" - serve-favicon "~2.3.0" - serve-index "~1.7.2" - serve-static "~1.10.0" - type-is "~1.6.6" - utils-merge "1.0.0" - vhost "~3.0.1" +connect@^3.6.5: + version "3.6.6" + resolved "https://registry.yarnpkg.com/connect/-/connect-3.6.6.tgz#09eff6c55af7236e137135a72574858b6786f524" + dependencies: + debug "2.6.9" + finalhandler "1.1.0" + parseurl "~1.3.2" + utils-merge "1.0.1" console-browserify@^1.1.0: version "1.1.0" @@ -1702,29 +2027,16 @@ content-type-parser@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7" -content-type@~1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" +convert-source-map@^1.1.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" + dependencies: + safe-buffer "~5.1.1" convert-source-map@^1.4.0, convert-source-map@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5" -cookie-parser@~1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/cookie-parser/-/cookie-parser-1.3.5.tgz#9d755570fb5d17890771227a02314d9be7cf8356" - dependencies: - cookie "0.1.3" - cookie-signature "1.0.6" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - -cookie@0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.1.3.tgz#e734a5c1417fce472d5aef82c381cabb64d1a435" - copy-descriptor@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" @@ -1737,14 +2049,14 @@ core-js@^2.2.2, core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0: version "2.5.6" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.6.tgz#0fe6d45bf3cac3ac364a9d72de7576f4eb221b9d" +core-js@^2.5.3: + version "2.5.7" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" + 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" -crc@3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/crc/-/crc-3.3.0.tgz#fa622e1bc388bf257309082d6b65200ce67090ba" - create-ecdh@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" @@ -1773,7 +2085,7 @@ create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: safe-buffer "^5.0.1" sha.js "^2.4.8" -create-react-class@^15.5.2, create-react-class@^15.6.0: +create-react-class@^15.6.0, create-react-class@^15.6.3: version "15.6.3" resolved "https://registry.yarnpkg.com/create-react-class/-/create-react-class-15.6.3.tgz#2d73237fb3f970ae6ebe011a9e66f46dbca80036" dependencies: @@ -1800,14 +2112,6 @@ crypto-js@^3.1.9-1: version "3.1.9-1" resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.1.9-1.tgz#fda19e761fc077e01ffbfdc6e9fdfc59e8806cd8" -csrf@~3.0.0: - version "3.0.6" - resolved "https://registry.yarnpkg.com/csrf/-/csrf-3.0.6.tgz#b61120ddceeafc91e76ed5313bb5c0b2667b710a" - dependencies: - rndm "1.2.0" - tsscmp "1.0.5" - uid-safe "2.1.4" - css-select@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" @@ -1831,15 +2135,6 @@ cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": dependencies: cssom "0.3.x" -csurf@~1.8.3: - version "1.8.3" - resolved "https://registry.yarnpkg.com/csurf/-/csurf-1.8.3.tgz#23f2a13bf1d8fce1d0c996588394442cba86a56a" - dependencies: - cookie "0.1.3" - cookie-signature "1.0.6" - csrf "~3.0.0" - http-errors "~1.3.1" - d3-array@^1.2.0: version "1.2.1" resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.1.tgz#d1ca33de2f6ac31efadb8e050a021d7e2396d5dc" @@ -1932,12 +2227,6 @@ debug@^3.1.0: dependencies: ms "2.0.0" -debug@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" - dependencies: - ms "0.7.1" - decamelize@^1.0.0, decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" @@ -2016,11 +2305,7 @@ denodeify@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/denodeify/-/denodeify-1.2.1.tgz#3a36287f5034e699e7577901052c2e6c94251631" -depd@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.0.1.tgz#80aec64c9d6d97e65cc2a9caa93c0aa6abf73aaa" - -depd@~1.1.0: +depd@~1.1.1, depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" @@ -2045,6 +2330,10 @@ detect-libc@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" +detect-newline@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" + diff@^3.2.0: version "3.5.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" @@ -2144,6 +2433,10 @@ emitter-component@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/emitter-component/-/emitter-component-1.1.1.tgz#065e2dbed6959bf470679edabeaf7981d1003ab6" +encodeurl@~1.0.1, encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + encoding@^0.1.11: version "0.1.12" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" @@ -2154,15 +2447,9 @@ entities@^1.1.1, entities@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" -envinfo@^3.0.0: - version "3.11.1" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-3.11.1.tgz#45968faf5079aa797b7dcdc3b123f340d4529e1c" - dependencies: - clipboardy "^1.2.2" - glob "^7.1.2" - minimist "^1.2.0" - os-name "^2.0.1" - which "^1.2.14" +envinfo@^5.7.0: + version "5.10.0" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-5.10.0.tgz#503a9774ae15b93ea68bdfae2ccd6306624ea6df" enzyme-adapter-react-16@^1.1.0: version "1.1.1" @@ -2229,11 +2516,11 @@ error-ex@^1.2.0: dependencies: is-arrayish "^0.2.1" -errorhandler@~1.4.2: - version "1.4.3" - resolved "https://registry.yarnpkg.com/errorhandler/-/errorhandler-1.4.3.tgz#b7b70ed8f359e9db88092f2d20c0f831420ad83f" +errorhandler@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/errorhandler/-/errorhandler-1.5.0.tgz#eaba64ca5d542a311ac945f582defc336165d9f4" dependencies: - accepts "~1.3.0" + accepts "~1.3.3" escape-html "~1.0.3" es-abstract@^1.6.1: @@ -2254,10 +2541,6 @@ es-to-primitive@^1.1.1: is-date-object "^1.0.1" is-symbol "^1.0.1" -escape-html@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.2.tgz#d77d32fa98e38c2f41ae85e9278e0e0e6ba1022c" - escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" @@ -2289,18 +2572,22 @@ estraverse@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" -esutils@^2.0.2: +esutils@^2.0.0, esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" -etag@~1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.7.0.tgz#03d30b5f67dd6e632d2945d30d6652731a34d5d8" +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" 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" +eventemitter3@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" + events@^1.0.2, events@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" @@ -2330,18 +2617,6 @@ execa@^0.7.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -execa@^0.8.0: - version "0.8.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.8.0.tgz#d8d76bbc1b55217ed190fd6dd49d3c774ecfc8da" - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.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" @@ -2370,20 +2645,6 @@ expand-range@^1.8.1: dependencies: fill-range "^2.1.0" -express-session@~1.11.3: - version "1.11.3" - resolved "https://registry.yarnpkg.com/express-session/-/express-session-1.11.3.tgz#5cc98f3f5ff84ed835f91cbf0aabd0c7107400af" - dependencies: - cookie "0.1.3" - cookie-signature "1.0.6" - crc "3.3.0" - debug "~2.2.0" - depd "~1.0.1" - on-headers "~1.0.0" - parseurl "~1.3.0" - uid-safe "~2.0.0" - utils-merge "1.0.0" - extend-shallow@^1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-1.1.4.tgz#19d6bf94dfc09d76ba711f39b872d21ff4dd9071" @@ -2493,7 +2754,7 @@ fbjs-scripts@^0.8.1: semver "^5.1.0" through2 "^2.0.0" -fbjs@^0.8.14, fbjs@^0.8.16, fbjs@^0.8.9: +fbjs@0.8.16, fbjs@^0.8.14, fbjs@^0.8.16, fbjs@^0.8.9: version "0.8.16" resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db" dependencies: @@ -2541,15 +2802,26 @@ fill-range@^4.0.0: repeat-string "^1.6.1" to-regex-range "^2.1.0" -finalhandler@0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-0.4.0.tgz#965a52d9e8d05d2b857548541fb89b53a2497d9b" +finalhandler@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5" dependencies: - debug "~2.2.0" - escape-html "1.0.2" + debug "2.6.9" + encodeurl "~1.0.1" + escape-html "~1.0.3" on-finished "~2.3.0" + parseurl "~1.3.2" + statuses "~1.3.1" unpipe "~1.0.0" +find-cache-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" + dependencies: + commondir "^1.0.1" + make-dir "^1.0.0" + pkg-dir "^2.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" @@ -2605,9 +2877,9 @@ fragment-cache@^0.2.1: dependencies: map-cache "^0.2.2" -fresh@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.3.0.tgz#651f838e22424e7566de161d8358caa199f83d4f" +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" fs-extra@^0.22.1: version "0.22.1" @@ -2725,7 +2997,7 @@ glob@7.0.6: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: +glob@^7.0.3, glob@^7.0.5, glob@^7.1.1: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -2743,6 +3015,10 @@ global@^4.3.0, global@^4.3.2: min-document "^2.19.0" process "~0.5.1" +globals@^11.1.0: + version "11.7.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.7.0.tgz#a583faa43055b1aca771914bf68258e2fc125673" + globals@^9.18.0: version "9.18.0" resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" @@ -2871,6 +3147,10 @@ home-or-tmp@^2.0.0: os-homedir "^1.0.0" os-tmpdir "^1.0.1" +home-or-tmp@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-3.0.0.tgz#57a8fe24cf33cdd524860a15821ddc25c86671fb" + hosted-git-info@^2.1.4: version "2.6.0" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.6.0.tgz#23235b29ab230c576aab0d4f13fc046b0b038222" @@ -2898,12 +3178,14 @@ htmlparser2@^3.9.1: inherits "^2.0.1" readable-stream "^2.0.2" -http-errors@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.3.1.tgz#197e22cdebd4198585e8694ef6786197b91ed942" +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" dependencies: - inherits "~2.0.1" - statuses "1" + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" http-signature@~1.2.0: version "1.2.0" @@ -2921,14 +3203,6 @@ i18next@^10.1.0, i18next@^10.2.2: version "10.6.0" resolved "https://registry.yarnpkg.com/i18next/-/i18next-10.6.0.tgz#90ffd9f9bc617f34b9a12e037260f524445f7684" -iconv-lite@0.4.11: - version "0.4.11" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.11.tgz#2ecb42fd294744922209a2e7c404dac8793d8ade" - -iconv-lite@0.4.13: - version "0.4.13" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2" - iconv-lite@0.4.19: version "0.4.19" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" @@ -2968,7 +3242,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" @@ -2999,7 +3273,7 @@ inquirer@^3.0.6: strip-ansi "^4.0.0" through "^2.3.6" -invariant@^2.0.0, invariant@^2.2.2: +invariant@^2.0.0, invariant@^2.2.0, invariant@^2.2.2: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" dependencies: @@ -3429,13 +3703,21 @@ jest-diff@^20.0.3: jest-matcher-utils "^20.0.3" pretty-format "^20.0.3" +jest-docblock@23.0.1: + version "23.0.1" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.0.1.tgz#deddd18333be5dc2415260a04ef3fce9276b5725" + dependencies: + detect-newline "^2.1.0" + jest-docblock@^20.0.3: version "20.0.3" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-20.0.3.tgz#17bea984342cc33d83c50fbe1545ea0efaa44712" -jest-docblock@^21, jest-docblock@^21.2.0: - version "21.2.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-21.2.0.tgz#51529c3b30d5fd159da60c27ceedc195faf8d414" +jest-docblock@^23.0.1: + version "23.2.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.2.0.tgz#f085e1f18548d99fdd69b20207e6fd55d91383a7" + dependencies: + detect-newline "^2.1.0" jest-environment-jsdom@^20.0.3: version "20.0.3" @@ -3452,26 +3734,27 @@ jest-environment-node@^20.0.3: jest-mock "^20.0.3" jest-util "^20.0.3" -jest-haste-map@^20.0.4: - version "20.0.5" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-20.0.5.tgz#abad74efb1a005974a7b6517e11010709cab9112" +jest-haste-map@23.1.0: + version "23.1.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-23.1.0.tgz#18e6c7d5a8d27136f91b7d9852f85de0c7074c49" dependencies: fb-watchman "^2.0.0" graceful-fs "^4.1.11" - jest-docblock "^20.0.3" + jest-docblock "^23.0.1" + jest-serializer "^23.0.1" + jest-worker "^23.0.1" micromatch "^2.3.11" - sane "~1.6.0" - worker-farm "^1.3.1" + sane "^2.0.0" -jest-haste-map@^21: - version "21.2.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-21.2.0.tgz#1363f0a8bb4338f24f001806571eff7a4b2ff3d8" +jest-haste-map@^20.0.4: + version "20.0.5" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-20.0.5.tgz#abad74efb1a005974a7b6517e11010709cab9112" dependencies: fb-watchman "^2.0.0" graceful-fs "^4.1.11" - jest-docblock "^21.2.0" + jest-docblock "^20.0.3" micromatch "^2.3.11" - sane "^2.0.0" + sane "~1.6.0" worker-farm "^1.3.1" jest-jasmine2@^20.0.4: @@ -3560,6 +3843,10 @@ jest-serializer-enzyme@^1.0.0: dependencies: enzyme-to-json "^1.4.4" +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" + jest-snapshot@^20.0.3: version "20.0.3" resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-20.0.3.tgz#5b847e1adb1a4d90852a7f9f125086e187c76566" @@ -3592,6 +3879,18 @@ jest-validate@^20.0.3: leven "^2.1.0" pretty-format "^20.0.3" +jest-worker@23.0.1: + version "23.0.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-23.0.1.tgz#9e649dd963ff4046026f91c4017f039a6aa4a7bc" + dependencies: + merge-stream "^1.0.1" + +jest-worker@^23.0.1: + version "23.2.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-23.2.0.tgz#faf706a8da36fae60eb26957257fa7b5d8ea02b9" + dependencies: + merge-stream "^1.0.1" + jest@20.0.4: version "20.0.4" resolved "https://registry.yarnpkg.com/jest/-/jest-20.0.4.tgz#3dd260c2989d6dad678b1e9cc4d91944f6d602ac" @@ -3641,6 +3940,10 @@ jsesc@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" +jsesc@^2.5.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.1.tgz#e421a2a8e20d6b0819df28908f782526b96dd1fe" + jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" @@ -3667,7 +3970,7 @@ json5@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" -json5@^0.5.1: +json5@^0.5.0, json5@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" @@ -3897,14 +4200,14 @@ lodash.range@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash.range/-/lodash.range-3.2.0.tgz#f461e588f66683f7eadeade513e38a69a565a15d" +lodash.throttle@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4" + lodash@4.x.x, lodash@^4.0.0, lodash@^4.15.0, lodash@^4.16.6, lodash@^4.17.10, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.1: version "4.17.10" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" -lodash@^3.5.0: - version "3.10.1" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" - longest@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" @@ -3935,9 +4238,11 @@ lru-cache@^4.0.1: pseudomap "^1.0.2" yallist "^2.1.2" -macos-release@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-1.1.0.tgz#831945e29365b470aa8724b0ab36c8f8959d10fb" +make-dir@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" + dependencies: + pify "^3.0.0" makeerror@1.0.x: version "1.0.11" @@ -3980,10 +4285,6 @@ mdurl@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - mem@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" @@ -4000,59 +4301,162 @@ merge@^1.1.3: version "1.2.0" resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da" -method-override@~2.3.5: - version "2.3.10" - resolved "https://registry.yarnpkg.com/method-override/-/method-override-2.3.10.tgz#e3daf8d5dee10dd2dce7d4ae88d62bbee77476b4" +metro-babel-register@0.38.4, metro-babel-register@^0.38.1: + version "0.38.4" + resolved "https://registry.yarnpkg.com/metro-babel-register/-/metro-babel-register-0.38.4.tgz#712a79138cadbd37c9487e5cb822b3842d81ccee" + dependencies: + "@babel/plugin-proposal-class-properties" "7.0.0-beta.47" + "@babel/plugin-proposal-object-rest-spread" "7.0.0-beta.47" + "@babel/plugin-proposal-optional-chaining" "7.0.0-beta.47" + "@babel/plugin-transform-async-to-generator" "7.0.0-beta.47" + "@babel/plugin-transform-flow-strip-types" "7.0.0-beta.47" + "@babel/plugin-transform-modules-commonjs" "7.0.0-beta.47" + "@babel/register" "7.0.0-beta.47" + core-js "^2.2.2" + escape-string-regexp "^1.0.5" + +metro-babel7-plugin-react-transform@0.38.4: + version "0.38.4" + resolved "https://registry.yarnpkg.com/metro-babel7-plugin-react-transform/-/metro-babel7-plugin-react-transform-0.38.4.tgz#56c4364388457c7e56055d557c2a1716e2c04a55" dependencies: - debug "2.6.9" - methods "~1.1.2" - parseurl "~1.3.2" - vary "~1.1.2" + "@babel/helper-module-imports" "7.0.0-beta.47" + lodash "^4.17.5" -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" +metro-babel7-plugin-react-transform@^0.39.1: + version "0.39.1" + resolved "https://registry.yarnpkg.com/metro-babel7-plugin-react-transform/-/metro-babel7-plugin-react-transform-0.39.1.tgz#deb851fa6904ed5b9f4e38f69e3f318a0fb670e6" + dependencies: + "@babel/helper-module-imports" "7.0.0-beta.47" + lodash "^4.17.5" + +metro-cache@0.38.4: + version "0.38.4" + resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.38.4.tgz#8025d55134c7ad711894d1d839c43f2e2b680851" + dependencies: + jest-serializer "23.0.1" + metro-core "0.38.4" + mkdirp "^0.5.1" + rimraf "^2.5.4" + +metro-core@0.38.4, metro-core@^0.38.1: + version "0.38.4" + resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.38.4.tgz#975c8dda01aa923691f5ddb41672904d744a821d" + dependencies: + jest-haste-map "23.1.0" + lodash.throttle "^4.1.1" + metro-resolver "0.38.4" + wordwrap "^1.0.0" + +metro-memory-fs@^0.38.1: + version "0.38.4" + resolved "https://registry.yarnpkg.com/metro-memory-fs/-/metro-memory-fs-0.38.4.tgz#90081d96a28b3553d89e782de2b453f6fb4783b7" + +metro-minify-uglify@0.38.4: + version "0.38.4" + resolved "https://registry.yarnpkg.com/metro-minify-uglify/-/metro-minify-uglify-0.38.4.tgz#5e162a48414f0d84461f674022b425e2a6b751ac" + dependencies: + uglify-es "^3.1.9" + +metro-resolver@0.38.4: + version "0.38.4" + resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.38.4.tgz#2dc0cc9520a1f03e94f6cfb94b062ccfb21eefa1" + dependencies: + absolute-path "^0.0.0" -metro-bundler@^0.20.0: - version "0.20.3" - resolved "https://registry.yarnpkg.com/metro-bundler/-/metro-bundler-0.20.3.tgz#0ded01b64e8963117017b106f75b83cfc34f3656" +metro-source-map@0.38.4: + version "0.38.4" + resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.38.4.tgz#560230c9841dfdcd40d03452dafc7a808314246b" dependencies: + source-map "^0.5.6" + +metro@^0.38.1: + version "0.38.4" + resolved "https://registry.yarnpkg.com/metro/-/metro-0.38.4.tgz#86046cac6600ce619f442041363a051c4f7cdac7" + dependencies: + "@babel/core" "7.0.0-beta.47" + "@babel/generator" "7.0.0-beta.47" + "@babel/helper-remap-async-to-generator" "7.0.0-beta.47" + "@babel/plugin-external-helpers" "7.0.0-beta.47" + "@babel/plugin-proposal-class-properties" "7.0.0-beta.47" + "@babel/plugin-proposal-object-rest-spread" "7.0.0-beta.47" + "@babel/plugin-syntax-dynamic-import" "7.0.0-beta.47" + "@babel/plugin-syntax-nullish-coalescing-operator" "7.0.0-beta.47" + "@babel/plugin-transform-arrow-functions" "7.0.0-beta.47" + "@babel/plugin-transform-async-to-generator" "7.0.0-beta.47" + "@babel/plugin-transform-block-scoping" "7.0.0-beta.47" + "@babel/plugin-transform-classes" "7.0.0-beta.47" + "@babel/plugin-transform-computed-properties" "7.0.0-beta.47" + "@babel/plugin-transform-destructuring" "7.0.0-beta.47" + "@babel/plugin-transform-exponentiation-operator" "7.0.0-beta.47" + "@babel/plugin-transform-flow-strip-types" "7.0.0-beta.47" + "@babel/plugin-transform-for-of" "7.0.0-beta.47" + "@babel/plugin-transform-function-name" "7.0.0-beta.47" + "@babel/plugin-transform-literals" "7.0.0-beta.47" + "@babel/plugin-transform-modules-commonjs" "7.0.0-beta.47" + "@babel/plugin-transform-object-assign" "7.0.0-beta.47" + "@babel/plugin-transform-parameters" "7.0.0-beta.47" + "@babel/plugin-transform-react-display-name" "7.0.0-beta.47" + "@babel/plugin-transform-react-jsx" "7.0.0-beta.47" + "@babel/plugin-transform-react-jsx-source" "7.0.0-beta.47" + "@babel/plugin-transform-regenerator" "7.0.0-beta.47" + "@babel/plugin-transform-shorthand-properties" "7.0.0-beta.47" + "@babel/plugin-transform-spread" "7.0.0-beta.47" + "@babel/plugin-transform-template-literals" "7.0.0-beta.47" + "@babel/plugin-transform-unicode-regex" "7.0.0-beta.47" + "@babel/register" "7.0.0-beta.47" + "@babel/template" "7.0.0-beta.47" + "@babel/traverse" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" absolute-path "^0.0.0" async "^2.4.0" babel-core "^6.24.1" - babel-generator "^6.24.1" - babel-plugin-external-helpers "^6.18.0" + babel-plugin-external-helpers "^6.22.0" + babel-plugin-transform-flow-strip-types "^6.21.0" babel-preset-es2015-node "^6.1.1" babel-preset-fbjs "^2.1.4" - babel-preset-react-native "^4.0.0" + babel-preset-react-native "^5.0.0" babel-register "^6.24.1" - babylon "^6.18.0" + babylon "7.0.0-beta.47" chalk "^1.1.1" concat-stream "^1.6.0" - core-js "^2.2.2" + connect "^3.6.5" debug "^2.2.0" denodeify "^1.2.1" + eventemitter3 "^3.0.0" fbjs "^0.8.14" + fs-extra "^1.0.0" graceful-fs "^4.1.3" image-size "^0.6.0" - jest-docblock "^21" - jest-haste-map "^21" + jest-docblock "23.0.1" + jest-haste-map "23.1.0" + jest-worker "23.0.1" json-stable-stringify "^1.0.1" json5 "^0.4.0" left-pad "^1.1.3" - lodash "^4.16.6" + lodash.throttle "^4.1.1" merge-stream "^1.0.1" + metro-babel-register "0.38.4" + metro-babel7-plugin-react-transform "0.38.4" + metro-cache "0.38.4" + metro-core "0.38.4" + metro-minify-uglify "0.38.4" + metro-resolver "0.38.4" + metro-source-map "0.38.4" mime-types "2.1.11" mkdirp "^0.5.1" - request "^2.79.0" + node-fetch "^1.3.3" + react-transform-hmr "^1.0.4" + resolve "^1.5.0" rimraf "^2.5.4" + serialize-error "^2.1.0" source-map "^0.5.6" temp "0.8.3" throat "^4.1.0" - uglify-es "^3.1.8" wordwrap "^1.0.0" write-file-atomic "^1.2.0" + ws "^1.1.0" xpipe "^1.0.5" + yargs "^9.0.0" micromatch@^2.1.5, micromatch@^2.3.11: version "2.3.11" @@ -4097,17 +4501,17 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -"mime-db@>= 1.33.0 < 2", mime-db@~1.33.0: - version "1.33.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" +"mime-db@>= 1.34.0 < 2", mime-db@~1.36.0: + version "1.36.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.36.0.tgz#5020478db3c7fe93aad7bbcc4dcf869c43363397" mime-db@~1.23.0: version "1.23.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.23.0.tgz#a31b4070adaea27d732ea333740a64d0ec9a6659" -mime-db@~1.36.0: - version "1.36.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.36.0.tgz#5020478db3c7fe93aad7bbcc4dcf869c43363397" +mime-db@~1.33.0: + version "1.33.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" mime-types@2.1.11: version "2.1.11" @@ -4115,7 +4519,7 @@ mime-types@2.1.11: dependencies: mime-db "~1.23.0" -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.6, mime-types@~2.1.9: +mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18: version "2.1.18" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" dependencies: @@ -4127,9 +4531,9 @@ mime-types@~2.1.19: dependencies: mime-db "~1.36.0" -mime@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" +mime@1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" mime@^1.3.4: version "1.6.0" @@ -4208,35 +4612,20 @@ moment@^2.22.2: version "2.22.2" resolved "https://registry.yarnpkg.com/moment/-/moment-2.22.2.tgz#3c257f9839fc0e93ff53149632239eb90783ff66" -morgan@~1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.6.1.tgz#5fd818398c6819cba28a7cd6664f292fe1c0bbf2" +morgan@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.9.0.tgz#d01fa6c65859b76fcf31b3cb53a3821a311d8051" dependencies: - basic-auth "~1.0.3" - debug "~2.2.0" - depd "~1.0.1" + basic-auth "~2.0.0" + debug "2.6.9" + depd "~1.1.1" on-finished "~2.3.0" - on-headers "~1.0.0" - -ms@0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" - -ms@0.7.2: - version "0.7.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" + on-headers "~1.0.1" ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" -multiparty@3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/multiparty/-/multiparty-3.3.2.tgz#35de6804dc19643e5249f3d3e3bdc6c8ce301d3f" - dependencies: - readable-stream "~1.1.9" - stream-counter "~0.2.0" - mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" @@ -4287,10 +4676,6 @@ needle@^2.2.0: iconv-lite "^0.4.4" sax "^1.2.4" -negotiator@0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.5.3.tgz#269d5c476810ec92edbe7b6c2f28316384f9a7e8" - negotiator@0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" @@ -4306,7 +4691,11 @@ node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" -node-notifier@^5.0.2, node-notifier@^5.1.2: +node-modules-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" + +node-notifier@^5.0.2, node-notifier@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.2.1.tgz#fa313dd08f5517db0e2502e5758d664ac69f9dea" dependencies: @@ -4543,7 +4932,7 @@ on-finished@~2.3.0: dependencies: ee-first "1.1.1" -on-headers@~1.0.0, on-headers@~1.0.1: +on-headers@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" @@ -4609,13 +4998,6 @@ os-locale@^2.0.0: lcid "^1.0.0" mem "^1.1.0" -os-name@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/os-name/-/os-name-2.0.1.tgz#b9a386361c17ae3a21736ef0599405c9a8c5dc5e" - dependencies: - macos-release "^1.0.0" - win-release "^1.0.0" - os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -4690,7 +5072,7 @@ parse5@^3.0.1: dependencies: "@types/node" "*" -parseurl@~1.3.0, parseurl@~1.3.1, parseurl@~1.3.2: +parseurl@~1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" @@ -4738,10 +5120,6 @@ path-type@^2.0.0: dependencies: pify "^2.0.0" -pause@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/pause/-/pause-0.1.0.tgz#ebc8a4a8619ff0b8a81ac1513c3434ff469fdb74" - pbkdf2@3.0.8: version "3.0.8" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.8.tgz#2f8abf16ebecc82277945d748aba1d78761f61e2" @@ -4770,6 +5148,10 @@ pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + pinkie-promise@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" @@ -4780,6 +5162,18 @@ pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" +pirates@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-3.0.2.tgz#7e6f85413fd9161ab4e12b539b06010d85954bb9" + 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" + dependencies: + find-up "^2.1.0" + plist@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/plist/-/plist-2.0.1.tgz#0a32ca9481b1c364e92e18dc55c876de9d01da8b" @@ -4788,13 +5182,12 @@ plist@2.0.1: xmlbuilder "8.2.2" xmldom "0.1.x" -plist@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/plist/-/plist-1.2.0.tgz#084b5093ddc92506e259f874b8d9b1afb8c79593" +plist@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.1.tgz#a9b931d17c304e8912ef0ba3bdd6182baf2e1f8c" dependencies: - base64-js "0.0.8" - util-deprecate "1.0.2" - xmlbuilder "4.0.0" + base64-js "^1.2.3" + xmlbuilder "^9.0.7" xmldom "0.1.x" plugin-error@^0.1.2: @@ -4926,10 +5319,6 @@ qrcode@^0.9.0: isarray "^2.0.1" pngjs "^2.3.1" -qs@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-4.0.0.tgz#c31d9b74ec27df75e543a86c78728ed8d4623607" - qs@~6.5.1, qs@~6.5.2: version "6.5.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" @@ -4963,10 +5352,6 @@ randexp@0.4.6: discontinuous-range "1.0.0" ret "~0.1.10" -random-bytes@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/random-bytes/-/random-bytes-1.0.0.tgz#4f68a1dc0ae58bd3fb95848c30324db75d64360b" - randomatic@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.0.0.tgz#d35490030eb4f7578de292ce6dfb04a91a128923" @@ -4981,17 +5366,9 @@ randombytes@^2.0.0, randombytes@^2.0.1: dependencies: safe-buffer "^5.1.0" -range-parser@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.0.3.tgz#6872823535c692e2c2a0103826afd82c2e0ff175" - -raw-body@~2.1.2: - version "2.1.7" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.1.7.tgz#adfeace2e4fb3098058014d08c072dcc59758774" - dependencies: - bytes "2.4.0" - iconv-lite "0.4.13" - unpipe "1.0.0" +range-parser@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" rc@^1.1.7: version "1.2.7" @@ -5014,12 +5391,12 @@ react-deep-force-update@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/react-deep-force-update/-/react-deep-force-update-1.1.1.tgz#bcd31478027b64b3339f108921ab520b4313dc2c" -react-devtools-core@^2.5.0: - version "2.5.2" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-2.5.2.tgz#f97bec5afae5d9318d16778065e0c214c4d5714c" +react-devtools-core@^3.2.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-3.3.2.tgz#a8acc19a14cd465734dcc8d4821743b71320560e" dependencies: shell-quote "^1.6.1" - ws "^2.0.3" + ws "^3.3.1" react-dom@^16.2.0: version "16.3.2" @@ -5030,6 +5407,10 @@ react-dom@^16.2.0: object-assign "^4.1.1" prop-types "^15.6.0" +react-fast-compare@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-2.0.2.tgz#0560ba7a61a1662d9cea8cd97a0d9db7591bab1c" + react-i18next@^7.3.0, react-i18next@^7.3.4: version "7.6.1" resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-7.6.1.tgz#c61d8284f3c695893d51033f67c39e65f01212b6" @@ -5186,9 +5567,9 @@ react-native-modal-translucent@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/react-native-modal-translucent/-/react-native-modal-translucent-1.1.3.tgz#9b84fd36061cea4ee1a055a0d7c97e1777a776d6" -react-native-modal@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/react-native-modal/-/react-native-modal-6.0.0.tgz#72b829454cde207848e4323a96a440c152f7508e" +react-native-modal@^6.5.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/react-native-modal/-/react-native-modal-6.5.0.tgz#46220b2289a41597d344c1db17454611b426a758" dependencies: prop-types "^15.6.1" react-native-animatable "^1.2.4" @@ -5326,59 +5707,57 @@ react-native-view-shot@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/react-native-view-shot/-/react-native-view-shot-2.3.0.tgz#ac01880d3c560f0dc918cd7cdf8854c6ff85ca31" -react-native@0.51.0: - version "0.51.0" - resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.51.0.tgz#fe25934b3030fd323f3ca1a70f034133465955ed" +react-native@0.56.0: + version "0.56.0" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.56.0.tgz#66686f781ec39a44376aadd4bbc55c8573ab61e5" dependencies: absolute-path "^0.0.0" art "^0.10.0" - babel-core "^6.24.1" - babel-plugin-syntax-trailing-function-commas "^6.20.0" - babel-plugin-transform-async-to-generator "6.16.0" - babel-plugin-transform-class-properties "^6.18.0" - babel-plugin-transform-exponentiation-operator "^6.5.0" - babel-plugin-transform-flow-strip-types "^6.21.0" - babel-plugin-transform-object-rest-spread "^6.20.2" - babel-register "^6.24.1" - babel-runtime "^6.23.0" base64-js "^1.1.2" chalk "^1.1.1" commander "^2.9.0" - connect "^2.8.3" - create-react-class "^15.5.2" + compression "^1.7.1" + connect "^3.6.5" + create-react-class "^15.6.3" debug "^2.2.0" denodeify "^1.2.1" - envinfo "^3.0.0" + envinfo "^5.7.0" + errorhandler "^1.5.0" + escape-string-regexp "^1.0.5" event-target-shim "^1.0.5" - fbjs "^0.8.14" + fbjs "0.8.16" fbjs-scripts "^0.8.1" fs-extra "^1.0.0" glob "^7.1.1" graceful-fs "^4.1.3" inquirer "^3.0.6" - lodash "^4.16.6" - metro-bundler "^0.20.0" + lodash "^4.17.5" + metro "^0.38.1" + metro-babel-register "^0.38.1" + metro-core "^0.38.1" + metro-memory-fs "^0.38.1" mime "^1.3.4" minimist "^1.2.0" mkdirp "^0.5.1" + morgan "^1.9.0" node-fetch "^1.3.3" - node-notifier "^5.1.2" + node-notifier "^5.2.1" npmlog "^2.0.4" opn "^3.0.2" optimist "^0.6.1" - plist "^1.2.0" + plist "^3.0.0" pretty-format "^4.2.1" promise "^7.1.1" prop-types "^15.5.8" react-clone-referenced-element "^1.0.1" - react-devtools-core "^2.5.0" + react-devtools-core "^3.2.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" stacktrace-parser "^0.1.3" - whatwg-fetch "^1.0.0" ws "^1.1.0" xcode "^0.9.1" xmldoc "^0.4.0" @@ -5438,9 +5817,9 @@ react-transform-hmr@^1.0.4: global "^4.3.0" react-proxy "^1.1.7" -react@16.0.0: - version "16.0.0" - resolved "https://registry.yarnpkg.com/react/-/react-16.0.0.tgz#ce7df8f1941b036f02b2cca9dbd0cb1f0e855e2d" +react@16.4.1: + version "16.4.1" + resolved "https://registry.yarnpkg.com/react/-/react-16.4.1.tgz#de51ba5764b5dbcd1f9079037b862bd26b82fe32" dependencies: fbjs "^0.8.16" loose-envify "^1.1.0" @@ -5486,7 +5865,7 @@ read-pkg@^2.0.0: normalize-package-data "^2.3.2" path-type "^2.0.0" -readable-stream@^1.0.26-4, readable-stream@^1.0.27-1, readable-stream@^1.0.33, readable-stream@~1.1.8, readable-stream@~1.1.9: +readable-stream@^1.0.26-4, readable-stream@^1.0.27-1, readable-stream@^1.0.33: version "1.1.14" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" dependencies: @@ -5543,7 +5922,13 @@ redux@^3.7.2: loose-envify "^1.1.0" symbol-observable "^1.0.3" -regenerate@^1.2.1: +regenerate-unicode-properties@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz#107405afcc4a190ec5ed450ecaa00ed0cafa7a4c" + dependencies: + regenerate "^1.4.0" + +regenerate@^1.2.1, regenerate@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" @@ -5551,12 +5936,10 @@ regenerator-runtime@^0.11.0: version "0.11.1" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" -regenerator-transform@^0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" +regenerator-transform@^0.12.3: + version "0.12.4" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.12.4.tgz#aa9b6c59f4b97be080e972506c560b3bccbfcff0" dependencies: - babel-runtime "^6.18.0" - babel-types "^6.19.0" private "^0.1.6" regex-cache@^0.4.2: @@ -5580,16 +5963,37 @@ regexpu-core@^2.0.0: regjsgen "^0.2.0" regjsparser "^0.1.4" +regexpu-core@^4.1.3: + version "4.2.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.2.0.tgz#a3744fa03806cffe146dea4421a3e73bdcc47b1d" + dependencies: + regenerate "^1.4.0" + regenerate-unicode-properties "^7.0.0" + regjsgen "^0.4.0" + regjsparser "^0.3.0" + unicode-match-property-ecmascript "^1.0.4" + unicode-match-property-value-ecmascript "^1.0.2" + regjsgen@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" +regjsgen@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.4.0.tgz#c1eb4c89a209263f8717c782591523913ede2561" + regjsparser@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" dependencies: jsesc "~0.5.0" +regjsparser@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.3.0.tgz#3c326da7fcfd69fa0d332575a41c8c0cdf588c96" + dependencies: + jsesc "~0.5.0" + remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" @@ -5688,12 +6092,11 @@ resolve@^1.3.2: dependencies: path-parse "^1.0.5" -response-time@~2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/response-time/-/response-time-2.3.2.tgz#ffa71bab952d62f7c1d49b7434355fbc68dffc5a" +resolve@^1.5.0: + version "1.8.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" dependencies: - depd "~1.1.0" - on-headers "~1.0.1" + path-parse "^1.0.5" restore-cursor@^2.0.0: version "2.0.0" @@ -5754,10 +6157,6 @@ rn-nodeify@^8.2.0: semver "^5.0.1" xtend "^4.0.0" -rndm@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/rndm/-/rndm-1.2.0.tgz#f33fe9cfb52bbfd520aa18323bc65db110a1b76c" - rst-selector-parser@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz#81b230ea2fcc6066c89e3472de794285d9b03d91" @@ -5789,14 +6188,14 @@ rx-lite@*, rx-lite@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" -safe-buffer@^5.0.1, 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: +safe-buffer@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" + +safe-buffer@5.1.2, safe-buffer@^5.0.1, 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" -safe-buffer@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7" - safe-regex@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" @@ -5854,51 +6253,36 @@ semver@~5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" -send@0.13.2: - version "0.13.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.13.2.tgz#765e7607c8055452bba6f0b052595350986036de" +send@0.16.2: + version "0.16.2" + resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" dependencies: - debug "~2.2.0" - depd "~1.1.0" + debug "2.6.9" + depd "~1.1.2" destroy "~1.0.4" + encodeurl "~1.0.2" escape-html "~1.0.3" - etag "~1.7.0" - fresh "0.3.0" - http-errors "~1.3.1" - mime "1.3.4" - ms "0.7.1" + etag "~1.8.1" + fresh "0.5.2" + http-errors "~1.6.2" + mime "1.4.1" + ms "2.0.0" on-finished "~2.3.0" - range-parser "~1.0.3" - statuses "~1.2.1" - -serve-favicon@~2.3.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/serve-favicon/-/serve-favicon-2.3.2.tgz#dd419e268de012ab72b319d337f2105013f9381f" - dependencies: - etag "~1.7.0" - fresh "0.3.0" - ms "0.7.2" - parseurl "~1.3.1" + range-parser "~1.2.0" + statuses "~1.4.0" -serve-index@~1.7.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.7.3.tgz#7a057fc6ee28dc63f64566e5fa57b111a86aecd2" - dependencies: - accepts "~1.2.13" - batch "0.5.3" - debug "~2.2.0" - escape-html "~1.0.3" - http-errors "~1.3.1" - mime-types "~2.1.9" - parseurl "~1.3.1" +serialize-error@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/serialize-error/-/serialize-error-2.1.0.tgz#50b679d5635cdf84667bdc8e59af4e5b81d5f60a" -serve-static@~1.10.0: - version "1.10.3" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.10.3.tgz#ce5a6ecd3101fed5ec09827dac22a9c29bfb0535" +serve-static@^1.13.1: + version "1.13.2" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" dependencies: + encodeurl "~1.0.2" escape-html "~1.0.3" - parseurl "~1.3.1" - send "0.13.2" + parseurl "~1.3.2" + send "0.16.2" set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" @@ -5926,6 +6310,10 @@ setimmediate@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + sha.js@^2.4.0, sha.js@^2.4.8: version "2.4.11" resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" @@ -6023,7 +6411,7 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.4.15: +source-map-support@^0.4.15, source-map-support@^0.4.2: version "0.4.18" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" dependencies: @@ -6039,7 +6427,7 @@ source-map@^0.4.4: dependencies: amdefine ">=0.0.4" -source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.1: +source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.1: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" @@ -6104,13 +6492,17 @@ static-extend@^0.1.1: define-property "^0.2.5" object-copy "^0.1.0" -statuses@1: +"statuses@>= 1.4.0 < 2": version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" -statuses@~1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.2.1.tgz#dded45cc18256d51ed40aec142489d5c61026d28" +statuses@~1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" + +statuses@~1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" stream-browserify@^1.0.0: version "1.0.0" @@ -6123,12 +6515,6 @@ stream-buffers@~2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/stream-buffers/-/stream-buffers-2.2.0.tgz#91d5f5130d1cef96dcfa7f726945188741d09ee4" -stream-counter@~0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/stream-counter/-/stream-counter-0.2.0.tgz#ded266556319c8b0e222812b9cf3b26fa7d947de" - dependencies: - readable-stream "~1.1.8" - stream@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/stream/-/stream-0.0.2.tgz#7f5363f057f6592c5595f00bc80a27f5cec1f0ef" @@ -6322,6 +6708,10 @@ 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" +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" + to-object-path@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" @@ -6365,10 +6755,6 @@ trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" -tsscmp@1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.5.tgz#7dc4a33af71581ab4337da91d85ca5427ebd9a97" - tty-browserify@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" @@ -6397,13 +6783,6 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-is@~1.6.6: - version "1.6.16" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" - dependencies: - media-typer "0.3.0" - mime-types "~2.1.18" - typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" @@ -6416,7 +6795,7 @@ uc.micro@^1.0.1, uc.micro@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.5.tgz#0c65f15f815aa08b560a61ce8b4db7ffc3f45376" -uglify-es@^3.1.8: +uglify-es@^3.1.9: version "3.3.9" resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" dependencies: @@ -6436,18 +6815,6 @@ uglify-to-browserify@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" -uid-safe@2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.1.4.tgz#3ad6f38368c6d4c8c75ec17623fb79aa1d071d81" - dependencies: - random-bytes "~1.0.0" - -uid-safe@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.0.0.tgz#a7f3c6ca64a1f6a5d04ec0ef3e4c3d5367317137" - dependencies: - base64-url "1.2.1" - ultron@1.0.x: version "1.0.2" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" @@ -6460,6 +6827,25 @@ underscore@~1.4.4: version "1.4.4" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.4.4.tgz#61a6a32010622afa07963bf325203cf12239d604" +unicode-canonical-property-names-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" + +unicode-match-property-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" + dependencies: + unicode-canonical-property-names-ecmascript "^1.0.4" + unicode-property-aliases-ecmascript "^1.0.4" + +unicode-match-property-value-ecmascript@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.2.tgz#9f1dc76926d6ccf452310564fd834ace059663d4" + +unicode-property-aliases-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz#5a533f31b4317ea76f17d807fa0d116546111dd0" + union-value@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" @@ -6469,7 +6855,7 @@ union-value@^1.0.0: is-extendable "^0.1.1" set-value "^0.4.3" -unpipe@1.0.0, unpipe@~1.0.0: +unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" @@ -6508,7 +6894,7 @@ utf8@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/utf8/-/utf8-2.1.2.tgz#1fa0d9270e9be850d9b05027f63519bf46457d96" -util-deprecate@1.0.2, util-deprecate@~1.0.1: +util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -6518,9 +6904,9 @@ util@0.10.3, util@^0.10.3: dependencies: inherits "2.0.1" -utils-merge@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" uuid@3.0.1: version "3.0.1" @@ -6545,10 +6931,6 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" -vary@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.0.1.tgz#99e4981566a286118dfb2b817357df7993376d10" - vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" @@ -6561,46 +6943,259 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" -vhost@~3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/vhost/-/vhost-3.0.2.tgz#2fb1decd4c466aa88b0f9341af33dc1aff2478d5" +victory-area@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-area/-/victory-area-30.3.1.tgz#511ec63e6df0c9cc8dfa5077937414090049f401" + dependencies: + d3-shape "^1.2.0" + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" -victory-chart@^24.3.0: - version "24.6.1" - resolved "https://registry.yarnpkg.com/victory-chart/-/victory-chart-24.6.1.tgz#8e1a85ab42c2e471d356e15f1637430cd57aca90" +victory-axis@^30.3.0, victory-axis@^30.3.1: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-axis/-/victory-axis-30.3.1.tgz#05ccc637a07715bdc21570a468f220b0ee037f63" dependencies: - d3-voronoi "^1.1.2" - lodash "^4.17.4" - victory-core "^20.6.0" + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-bar@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-bar/-/victory-bar-30.3.1.tgz#96808e6216f40a9de10d8756185d55a3ed1c3dab" + dependencies: + d3-shape "^1.2.0" + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-box-plot@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-box-plot/-/victory-box-plot-30.3.1.tgz#e133816e8699d205a856f06fd0b1e63e468074c3" + dependencies: + d3-array "^1.2.0" + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-brush-container@^30.3.0, victory-brush-container@^30.3.1: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-brush-container/-/victory-brush-container-30.3.1.tgz#12270ff9523ff1af60aa99d081ee097f8f053c75" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-brush-line@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-brush-line/-/victory-brush-line-30.3.1.tgz#1622a0ecf29a96836c3a3bc183d04fca36129fcb" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-candlestick@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-candlestick/-/victory-candlestick-30.3.1.tgz#6b0847f9b59a58b2320700d87d2bd7a537b3a1ba" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-chart@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-chart/-/victory-chart-30.3.1.tgz#720f01a3fbe704185ee24f65b5de2c2a97c3383a" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + react-fast-compare "^2.0.0" + victory-axis "^30.3.1" + victory-core "^30.3.1" + victory-polar-axis "^30.3.1" + victory-shared-events "^30.3.1" -victory-core@^20.2.0, victory-core@^20.6.0: - version "20.6.0" - resolved "https://registry.yarnpkg.com/victory-core/-/victory-core-20.6.0.tgz#5f5f4ac43364c9025dbbfbcd97a2f3feb3f9f6ad" +victory-core@^30.3.0, victory-core@^30.3.1: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-core/-/victory-core-30.3.1.tgz#7ca23842b3cd24e21ba7ce974381b87fbed80a46" dependencies: d3-ease "^1.0.0" d3-interpolate "^1.1.1" d3-scale "^1.0.0" d3-shape "^1.2.0" d3-timer "^1.0.0" - lodash "^4.17.4" + lodash "^4.17.5" + prop-types "^15.5.8" + react-fast-compare "^2.0.0" -victory-native@^0.16.2: - version "0.16.6" - resolved "https://registry.yarnpkg.com/victory-native/-/victory-native-0.16.6.tgz#cb47d21f178b01d1e1ddcb9178bcc72126828e1f" +victory-create-container@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-create-container/-/victory-create-container-30.3.1.tgz#6bb7c2ebab415db3ef031e1ea761a3beaad961ba" dependencies: - lodash "^4.17.4" - prop-types "^15.5.10" - victory-chart "^24.3.0" - victory-core "^20.2.0" - victory-pie "^13.0.0" + lodash "^4.17.5" + victory-brush-container "^30.3.1" + victory-core "^30.3.1" + victory-cursor-container "^30.3.1" + victory-selection-container "^30.3.1" + victory-voronoi-container "^30.3.1" + victory-zoom-container "^30.3.1" + +victory-cursor-container@^30.3.0, victory-cursor-container@^30.3.1: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-cursor-container/-/victory-cursor-container-30.3.1.tgz#833fd2a35f16db030fe1093ff258b045154d8ce9" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-errorbar@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-errorbar/-/victory-errorbar-30.3.1.tgz#525103c60632847a55eb54f9d9732448bda364a0" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-group@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-group/-/victory-group-30.3.1.tgz#4ea9f272fe4fcd14ec3b6095792251320dd84137" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-legend@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-legend/-/victory-legend-30.3.1.tgz#a1b29814a3d384485171811119d7419b7e8b9ec1" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-line@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-line/-/victory-line-30.3.1.tgz#7e4cf7617dd7f2070686d92efc2e7873934b5447" + dependencies: + d3-shape "^1.2.0" + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" -victory-pie@^13.0.0: - version "13.3.1" - resolved "https://registry.yarnpkg.com/victory-pie/-/victory-pie-13.3.1.tgz#26cf91ad492ea5f84785dfc34b705e58515f2386" +victory-native@^30.3.0: + version "30.3.0" + resolved "https://registry.yarnpkg.com/victory-native/-/victory-native-30.3.0.tgz#8ef32e2dec89a231d45ad909ebdc15856e458b9b" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.10" + react-fast-compare "^2.0.0" + victory-area "^30.3.0" + victory-axis "^30.3.0" + victory-bar "^30.3.0" + victory-box-plot "^30.3.0" + victory-brush-container "^30.3.0" + victory-brush-line "^30.3.0" + victory-candlestick "^30.3.0" + victory-chart "^30.3.0" + victory-core "^30.3.0" + victory-create-container "^30.3.0" + victory-cursor-container "^30.3.0" + victory-errorbar "^30.3.0" + victory-group "^30.3.0" + victory-legend "^30.3.0" + victory-line "^30.3.0" + victory-pie "^30.3.0" + victory-polar-axis "^30.3.0" + victory-scatter "^30.3.0" + victory-selection-container "^30.3.0" + victory-shared-events "^30.3.0" + victory-stack "^30.3.0" + victory-tooltip "^30.3.0" + victory-voronoi "^30.3.0" + victory-voronoi-container "^30.3.0" + victory-zoom-container "^30.3.0" + +victory-pie@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-pie/-/victory-pie-30.3.1.tgz#526005fc312eae84c29e53c44c18ef949e8f6c04" dependencies: d3-shape "^1.0.0" - lodash "^4.17.4" - victory-core "^20.6.0" + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-polar-axis@^30.3.0, victory-polar-axis@^30.3.1: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-polar-axis/-/victory-polar-axis-30.3.1.tgz#de4097cd0365124e5baeacf9c9c35a1c2beabe1f" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-scatter@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-scatter/-/victory-scatter-30.3.1.tgz#27388172ebacd6d25cd4d06cdaaeb4fd03d440f8" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-selection-container@^30.3.0, victory-selection-container@^30.3.1: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-selection-container/-/victory-selection-container-30.3.1.tgz#37dffd6a830f9fef9ceaa78308e9c62456022bd4" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-shared-events@^30.3.0, victory-shared-events@^30.3.1: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-shared-events/-/victory-shared-events-30.3.1.tgz#2b74b73e9bd6eb0987388a8dea4af10c97c30e57" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-stack@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-stack/-/victory-stack-30.3.1.tgz#a227bc14d89ed75d244dc7842746001531df61f9" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-tooltip@^30.3.0, victory-tooltip@^30.3.1: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-tooltip/-/victory-tooltip-30.3.1.tgz#52408fcf9d2eb6992364e2543c9ee960559f88af" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-voronoi-container@^30.3.0, victory-voronoi-container@^30.3.1: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-voronoi-container/-/victory-voronoi-container-30.3.1.tgz#ce3c7bb9a91aadc705635ae588dad2f53bfbfac6" + dependencies: + d3-voronoi "^1.1.2" + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + victory-tooltip "^30.3.1" + +victory-voronoi@^30.3.0: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-voronoi/-/victory-voronoi-30.3.1.tgz#4cbb6a1787584276d70167ad4f28d03ee2c1891f" + dependencies: + d3-voronoi "^1.1.2" + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" + +victory-zoom-container@^30.3.0, victory-zoom-container@^30.3.1: + version "30.3.1" + resolved "https://registry.yarnpkg.com/victory-zoom-container/-/victory-zoom-container-30.3.1.tgz#f6243b0c181991c0db5dd86c57ee6de7672f0313" + dependencies: + lodash "^4.17.5" + prop-types "^15.5.8" + victory-core "^30.3.1" vm-browserify@0.0.4: version "0.0.4" @@ -6647,10 +7242,6 @@ whatwg-fetch@>=0.10.0: version "2.0.4" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f" -whatwg-fetch@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-1.1.1.tgz#ac3c9d39f320c6dce5339969d054ef43dd333319" - whatwg-url@^4.3.0: version "4.8.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-4.8.0.tgz#d2981aa9148c1e00a41c5a6131166ab4683bbcc0" @@ -6672,7 +7263,7 @@ which@1: dependencies: isexe "^2.0.0" -which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0: +which@^1.2.12, which@^1.2.9, which@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" dependencies: @@ -6684,12 +7275,6 @@ wide-align@^1.1.0: dependencies: string-width "^1.0.2" -win-release@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/win-release/-/win-release-1.1.1.tgz#5fa55e02be7ca934edfc12665632e849b72e5209" - dependencies: - semver "^5.0.1" - window-size@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" @@ -6738,11 +7323,12 @@ ws@^1.1.0: options ">=0.0.5" ultron "1.0.x" -ws@^2.0.3: - version "2.3.1" - resolved "https://registry.yarnpkg.com/ws/-/ws-2.3.1.tgz#6b94b3e447cb6a363f785eaf94af6359e8e81c80" +ws@^3.3.1: + version "3.3.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" dependencies: - safe-buffer "~5.0.1" + async-limiter "~1.0.0" + safe-buffer "~5.1.0" ultron "~1.1.0" xcode@^0.9.1, xcode@^0.9.3: @@ -6757,16 +7343,14 @@ xml-name-validator@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635" -xmlbuilder@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-4.0.0.tgz#98b8f651ca30aa624036f127d11cc66dc7b907a3" - dependencies: - lodash "^3.5.0" - xmlbuilder@8.2.2: version "8.2.2" resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-8.2.2.tgz#69248673410b4ba42e1a6136551d2922335aa773" +xmlbuilder@^9.0.7: + version "9.0.7" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" + xmldoc@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/xmldoc/-/xmldoc-0.4.0.tgz#d257224be8393eaacbf837ef227fd8ec25b36888" From 2b389663c7e1d897a9dd6474cb45b6be1f5c3a06 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 10 Sep 2018 12:44:31 +0100 Subject: [PATCH 002/141] Mobile: Clean up RN update --- .../ios/iotaWallet.xcodeproj/project.pbxproj | 32 +- src/mobile/ios/iotaWallet/AppDelegate.m | 6 +- src/mobile/ios/trinity-mobile-tvOS/Info.plist | 54 - .../ios/trinity-mobile-tvOSTests/Info.plist | 24 - .../trinity-mobile.xcodeproj/project.pbxproj | 1468 ---------- .../xcschemes/trinity-mobile-tvOS.xcscheme | 129 - .../xcschemes/trinity-mobile.xcscheme | 129 - src/mobile/ios/trinity-mobile/AppDelegate.h | 14 - src/mobile/ios/trinity-mobile/AppDelegate.m | 35 - .../Base.lproj/LaunchScreen.xib | 42 - .../AppIcon.appiconset/Contents.json | 38 - .../Images.xcassets/Contents.json | 6 - src/mobile/ios/trinity-mobile/Info.plist | 56 - src/mobile/ios/trinity-mobile/main.m | 16 - src/mobile/ios/trinity-mobileTests/Info.plist | 24 - .../trinity-mobileTests/trinity-mobileTests.m | 68 - src/mobile/package.json | 17 +- src/mobile/rn-cli.config.js | 4 + src/mobile/routes/entry.js | 4 +- src/mobile/yarn.lock | 2370 +++++++++-------- src/shared/package.json | 3 +- src/shared/yarn.lock | 500 +++- 22 files changed, 1687 insertions(+), 3352 deletions(-) delete mode 100644 src/mobile/ios/trinity-mobile-tvOS/Info.plist delete mode 100644 src/mobile/ios/trinity-mobile-tvOSTests/Info.plist delete mode 100644 src/mobile/ios/trinity-mobile.xcodeproj/project.pbxproj delete mode 100644 src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile-tvOS.xcscheme delete mode 100644 src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile.xcscheme delete mode 100644 src/mobile/ios/trinity-mobile/AppDelegate.h delete mode 100644 src/mobile/ios/trinity-mobile/AppDelegate.m delete mode 100644 src/mobile/ios/trinity-mobile/Base.lproj/LaunchScreen.xib delete mode 100644 src/mobile/ios/trinity-mobile/Images.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 src/mobile/ios/trinity-mobile/Images.xcassets/Contents.json delete mode 100644 src/mobile/ios/trinity-mobile/Info.plist delete mode 100644 src/mobile/ios/trinity-mobile/main.m delete mode 100644 src/mobile/ios/trinity-mobileTests/Info.plist delete mode 100644 src/mobile/ios/trinity-mobileTests/trinity-mobileTests.m diff --git a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj index 260829f094..a3b327c1de 100644 --- a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj +++ b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj @@ -2847,21 +2847,9 @@ ); GCC_OPTIMIZATION_LEVEL = 0; HEADER_SEARCH_PATHS = ( - "$(SRCROOT)/../node_modules/react-native-navigation/ios/**", - "(SRCROOT)/../../react-native/React/**", - "$(SRCROOT)/../../../React/**", - "$(SRCROOT)/../node_modules/react-native-clipboard/RNClipboard", - "$(SRCROOT)/../node_modules/react-native-config/ios/**", - "$(inherited)", - "$(BUILT_PRODUCTS_DIR)/usr/local/include/**", - "${PODS_DEV_ROOT}/React/**", - "$(SRCROOT)/../node_modules/react-native-fingerprint-scanner/ios", - "${PODS_DEV_ROOT}/UIDevice-PasscodeStatus/**", - "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", - "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", - "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", - "$(SRCROOT)/../node_modules/react-native-fast-crypto/ios/**", - "$(SRCROOT)/../node_modules/nodejs-mobile-react-native/ios/**", + "", + "$(SRCROOT)/../node_modules/react-native-splash-screen/ios/**", ); IBC_WARNINGS = YES; INFOPLIST_FILE = iotaWallet/Info.plist; @@ -3218,19 +3206,9 @@ "\"../node_modules/nodejs-mobile-react-native/ios\"", ); HEADER_SEARCH_PATHS = ( - "$(SRCROOT)/../node_modules/react-native-navigation/ios/**", - "(SRCROOT)/../../react-native/React/**", - "$(SRCROOT)/../../../React/**", - "$(SRCROOT)/../node_modules/react-native-clipboard/RNClipboard", - "$(SRCROOT)/../node_modules/react-native-config/ios/**", - "$(inherited)", - "${PODS_DEV_ROOT}/React/**", - "$(BUILT_PRODUCTS_DIR)/usr/local/include/**", - "$(SRCROOT)/../node_modules/react-native-fingerprint-scanner/ios", - "${PODS_DEV_ROOT}/UIDevice-PasscodeStatus/**", + "", "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", - "$(SRCROOT)/../node_modules/react-native-fast-crypto/ios/**", - "$(SRCROOT)/../node_modules/nodejs-mobile-react-native/ios/**", ); IBC_WARNINGS = YES; INFOPLIST_FILE = iotaWallet/Info.plist; diff --git a/src/mobile/ios/iotaWallet/AppDelegate.m b/src/mobile/ios/iotaWallet/AppDelegate.m index bfc2bfab6b..2a136db68f 100644 --- a/src/mobile/ios/iotaWallet/AppDelegate.m +++ b/src/mobile/ios/iotaWallet/AppDelegate.m @@ -8,13 +8,13 @@ */ #import "AppDelegate.h" -#import "SplashScreen.h" +#import "RNSplashScreen.h" #import #import -#import "RCCManager.h" +#import "../../node_modules/react-native-navigation/ios/RCCManager.h" #import #import @@ -46,7 +46,7 @@ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:( [[RCCManager sharedInstance] initBridgeWithBundleURL:jsCodeLocation launchOptions:launchOptions]; [BugsnagReactNative start]; [self excludeManifestFromBackup]; - [SplashScreen show]; + [RNSplashScreen show]; return YES; } diff --git a/src/mobile/ios/trinity-mobile-tvOS/Info.plist b/src/mobile/ios/trinity-mobile-tvOS/Info.plist deleted file mode 100644 index 2fb6a11c2c..0000000000 --- a/src/mobile/ios/trinity-mobile-tvOS/Info.plist +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - LSRequiresIPhoneOS - - UILaunchStoryboardName - LaunchScreen - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UIViewControllerBasedStatusBarAppearance - - NSLocationWhenInUseUsageDescription - - NSAppTransportSecurity - - - NSExceptionDomains - - localhost - - NSExceptionAllowsInsecureHTTPLoads - - - - - - diff --git a/src/mobile/ios/trinity-mobile-tvOSTests/Info.plist b/src/mobile/ios/trinity-mobile-tvOSTests/Info.plist deleted file mode 100644 index 886825ccc9..0000000000 --- a/src/mobile/ios/trinity-mobile-tvOSTests/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - - diff --git a/src/mobile/ios/trinity-mobile.xcodeproj/project.pbxproj b/src/mobile/ios/trinity-mobile.xcodeproj/project.pbxproj deleted file mode 100644 index 64291d2415..0000000000 --- a/src/mobile/ios/trinity-mobile.xcodeproj/project.pbxproj +++ /dev/null @@ -1,1468 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - 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 /* trinity-mobileTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* trinity-mobileTests.m */; }; - 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 */; }; - 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 */; }; - 2D16E6881FA4F8E400B85C8A /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2D16E6891FA4F8E400B85C8A /* libReact.a */; }; - 2DCD954D1E0B4F2C00145EB5 /* trinity-mobileTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* trinity-mobileTests.m */; }; - 2DF0FFEE2056DD460020B375 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3EA31DF850E9000B6D8A /* libReact.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 */; }; -/* 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 */; - proxyType = 1; - remoteGlobalIDString = 13B07F861A680F5B00A75B9A; - remoteInfo = trinity-mobile; - }; - 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 */; - proxyType = 1; - remoteGlobalIDString = 2D02E47A1E0B4A5D006451C7; - remoteInfo = "trinity-mobile-tvOS"; - }; - 2D16E6711FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = ADD01A681E09402E00F6D226; - remoteInfo = "RCTBlob-tvOS"; - }; - 2D16E6831FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3DBE0D001F3B181A0099AA32; - remoteInfo = fishhook; - }; - 2D16E6851FA4F8DC00B85C8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3DBE0D0D1F3B181C0099AA32; - remoteInfo = "fishhook-tvOS"; - }; - 2DF0FFDE2056DD460020B375 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = EBF21BDC1FC498900052F4D5; - remoteInfo = jsinspector; - }; - 2DF0FFE02056DD460020B375 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = EBF21BFA1FC4989A0052F4D5; - remoteInfo = "jsinspector-tvOS"; - }; - 2DF0FFE22056DD460020B375 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 139D7ECE1E25DB7D00323FB7; - remoteInfo = "third-party"; - }; - 2DF0FFE42056DD460020B375 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3D383D3C1EBD27B6005632C8; - remoteInfo = "third-party-tvOS"; - }; - 2DF0FFE62056DD460020B375 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 139D7E881E25C6D100323FB7; - remoteInfo = "double-conversion"; - }; - 2DF0FFE82056DD460020B375 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3D383D621EBD27B9005632C8; - remoteInfo = "double-conversion-tvOS"; - }; - 2DF0FFEA2056DD460020B375 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 9936F3131F5F2E4B0010BF04; - remoteInfo = privatedata; - }; - 2DF0FFEC2056DD460020B375 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 9936F32F1F5F2E5B0010BF04; - remoteInfo = "privatedata-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 /* trinity-mobileTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = trinity-mobileTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 00E356F21AD99517003FC87E /* trinity-mobileTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = trinity-mobileTests.m; 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 /* trinity-mobile.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = trinity-mobile.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = trinity-mobile/AppDelegate.h; sourceTree = ""; }; - 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = trinity-mobile/AppDelegate.m; sourceTree = ""; }; - 13B07FB21A68108700A75B9A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; - 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = trinity-mobile/Images.xcassets; sourceTree = ""; }; - 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = trinity-mobile/Info.plist; sourceTree = ""; }; - 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = trinity-mobile/main.m; sourceTree = ""; }; - 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; - 2D02E47B1E0B4A5D006451C7 /* trinity-mobile-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "trinity-mobile-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - 2D02E4901E0B4A5D006451C7 /* trinity-mobile-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "trinity-mobile-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; - 2D16E6891FA4F8E400B85C8A /* libReact.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libReact.a; sourceTree = BUILT_PRODUCTS_DIR; }; - 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 = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 00E356EB1AD99517003FC87E /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 140ED2AC1D01E1AD002B40FF /* libReact.a in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 13B07F8C1A680F5B00A75B9A /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */, - 5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a 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 */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 2D02E4781E0B4A5D006451C7 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 2D16E6881FA4F8E400B85C8A /* 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 */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 2D02E48D1E0B4A5D006451C7 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 2DF0FFEE2056DD460020B375 /* libReact.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 /* trinity-mobileTests */ = { - isa = PBXGroup; - children = ( - 00E356F21AD99517003FC87E /* trinity-mobileTests.m */, - 00E356F01AD99517003FC87E /* Supporting Files */, - ); - path = trinity-mobileTests; - sourceTree = ""; - }; - 00E356F01AD99517003FC87E /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 00E356F11AD99517003FC87E /* Info.plist */, - ); - name = "Supporting Files"; - 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 */, - 2D16E6841FA4F8DC00B85C8A /* libfishhook.a */, - 2D16E6861FA4F8DC00B85C8A /* libfishhook-tvOS.a */, - ); - name = Products; - sourceTree = ""; - }; - 13B07FAE1A68108700A75B9A /* trinity-mobile */ = { - isa = PBXGroup; - children = ( - 008F07F21AC5B25A0029DE68 /* main.jsbundle */, - 13B07FAF1A68108700A75B9A /* AppDelegate.h */, - 13B07FB01A68108700A75B9A /* AppDelegate.m */, - 13B07FB51A68108700A75B9A /* Images.xcassets */, - 13B07FB61A68108700A75B9A /* Info.plist */, - 13B07FB11A68108700A75B9A /* LaunchScreen.xib */, - 13B07FB71A68108700A75B9A /* main.m */, - ); - name = trinity-mobile; - 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 */, - 2DF0FFDF2056DD460020B375 /* libjsinspector.a */, - 2DF0FFE12056DD460020B375 /* libjsinspector-tvOS.a */, - 2DF0FFE32056DD460020B375 /* libthird-party.a */, - 2DF0FFE52056DD460020B375 /* libthird-party.a */, - 2DF0FFE72056DD460020B375 /* libdouble-conversion.a */, - 2DF0FFE92056DD460020B375 /* libdouble-conversion.a */, - 2DF0FFEB2056DD460020B375 /* libprivatedata.a */, - 2DF0FFED2056DD460020B375 /* libprivatedata-tvOS.a */, - ); - name = Products; - sourceTree = ""; - }; - 2D16E6871FA4F8E400B85C8A /* Frameworks */ = { - isa = PBXGroup; - children = ( - 2D16E6891FA4F8E400B85C8A /* libReact.a */, - ); - name = Frameworks; - sourceTree = ""; - }; - 5E91572E1DD0AC6500FF2AA8 /* Products */ = { - isa = PBXGroup; - children = ( - 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */, - 5E9157351DD0AC6500FF2AA8 /* libRCTAnimation.a */, - ); - name = Products; - sourceTree = ""; - }; - 78C398B11ACF4ADC00677621 /* Products */ = { - isa = PBXGroup; - children = ( - 78C398B91ACF4ADC00677621 /* libRCTLinking.a */, - 3DAD3E881DF850E9000B6D8A /* libRCTLinking-tvOS.a */, - ); - name = Products; - 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 */, - ); - name = Libraries; - sourceTree = ""; - }; - 832341B11AAA6A8300B99B32 /* Products */ = { - isa = PBXGroup; - children = ( - 832341B51AAA6A8300B99B32 /* libRCTText.a */, - 3DAD3E941DF850E9000B6D8A /* libRCTText-tvOS.a */, - ); - name = Products; - sourceTree = ""; - }; - 83CBB9F61A601CBA00E9B192 = { - isa = PBXGroup; - children = ( - 13B07FAE1A68108700A75B9A /* trinity-mobile */, - 832341AE1AAA6A7D00B99B32 /* Libraries */, - 00E356EF1AD99517003FC87E /* trinity-mobileTests */, - 83CBBA001A601CBA00E9B192 /* Products */, - 2D16E6871FA4F8E400B85C8A /* Frameworks */, - ); - indentWidth = 2; - sourceTree = ""; - tabWidth = 2; - usesTabs = 0; - }; - 83CBBA001A601CBA00E9B192 /* Products */ = { - isa = PBXGroup; - children = ( - 13B07F961A680F5B00A75B9A /* trinity-mobile.app */, - 00E356EE1AD99517003FC87E /* trinity-mobileTests.xctest */, - 2D02E47B1E0B4A5D006451C7 /* trinity-mobile-tvOS.app */, - 2D02E4901E0B4A5D006451C7 /* trinity-mobile-tvOSTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - ADBDB9201DFEBF0600ED6528 /* Products */ = { - isa = PBXGroup; - children = ( - ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */, - 2D16E6721FA4F8DC00B85C8A /* libRCTBlob-tvOS.a */, - ); - name = Products; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 00E356ED1AD99517003FC87E /* trinity-mobileTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "trinity-mobileTests" */; - buildPhases = ( - 00E356EA1AD99517003FC87E /* Sources */, - 00E356EB1AD99517003FC87E /* Frameworks */, - 00E356EC1AD99517003FC87E /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 00E356F51AD99517003FC87E /* PBXTargetDependency */, - ); - name = trinity-mobileTests; - productName = trinity-mobileTests; - productReference = 00E356EE1AD99517003FC87E /* trinity-mobileTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - 13B07F861A680F5B00A75B9A /* trinity-mobile */ = { - isa = PBXNativeTarget; - buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "trinity-mobile" */; - buildPhases = ( - 13B07F871A680F5B00A75B9A /* Sources */, - 13B07F8C1A680F5B00A75B9A /* Frameworks */, - 13B07F8E1A680F5B00A75B9A /* Resources */, - 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = trinity-mobile; - productName = "Hello World"; - productReference = 13B07F961A680F5B00A75B9A /* trinity-mobile.app */; - productType = "com.apple.product-type.application"; - }; - 2D02E47A1E0B4A5D006451C7 /* trinity-mobile-tvOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = 2D02E4BA1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "trinity-mobile-tvOS" */; - buildPhases = ( - 2D02E4771E0B4A5D006451C7 /* Sources */, - 2D02E4781E0B4A5D006451C7 /* Frameworks */, - 2D02E4791E0B4A5D006451C7 /* Resources */, - 2D02E4CB1E0B4B27006451C7 /* Bundle React Native Code And Images */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "trinity-mobile-tvOS"; - productName = "trinity-mobile-tvOS"; - productReference = 2D02E47B1E0B4A5D006451C7 /* trinity-mobile-tvOS.app */; - productType = "com.apple.product-type.application"; - }; - 2D02E48F1E0B4A5D006451C7 /* trinity-mobile-tvOSTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 2D02E4BB1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "trinity-mobile-tvOSTests" */; - buildPhases = ( - 2D02E48C1E0B4A5D006451C7 /* Sources */, - 2D02E48D1E0B4A5D006451C7 /* Frameworks */, - 2D02E48E1E0B4A5D006451C7 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 2D02E4921E0B4A5D006451C7 /* PBXTargetDependency */, - ); - name = "trinity-mobile-tvOSTests"; - productName = "trinity-mobile-tvOSTests"; - productReference = 2D02E4901E0B4A5D006451C7 /* trinity-mobile-tvOSTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 83CBB9F71A601CBA00E9B192 /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 0610; - ORGANIZATIONNAME = Facebook; - TargetAttributes = { - 00E356ED1AD99517003FC87E = { - CreatedOnToolsVersion = 6.2; - TestTargetID = 13B07F861A680F5B00A75B9A; - }; - 2D02E47A1E0B4A5D006451C7 = { - CreatedOnToolsVersion = 8.2.1; - ProvisioningStyle = Automatic; - }; - 2D02E48F1E0B4A5D006451C7 = { - CreatedOnToolsVersion = 8.2.1; - ProvisioningStyle = Automatic; - TestTargetID = 2D02E47A1E0B4A5D006451C7; - }; - }; - }; - buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "trinity-mobile" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - 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 */; - }, - ); - projectRoot = ""; - targets = ( - 13B07F861A680F5B00A75B9A /* trinity-mobile */, - 00E356ED1AD99517003FC87E /* trinity-mobileTests */, - 2D02E47A1E0B4A5D006451C7 /* trinity-mobile-tvOS */, - 2D02E48F1E0B4A5D006451C7 /* trinity-mobile-tvOSTests */, - ); - }; -/* 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; - }; - 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; - }; - 2D16E6721FA4F8DC00B85C8A /* libRCTBlob-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libRCTBlob-tvOS.a"; - remoteRef = 2D16E6711FA4F8DC00B85C8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2D16E6841FA4F8DC00B85C8A /* libfishhook.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libfishhook.a; - remoteRef = 2D16E6831FA4F8DC00B85C8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2D16E6861FA4F8DC00B85C8A /* libfishhook-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libfishhook-tvOS.a"; - remoteRef = 2D16E6851FA4F8DC00B85C8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2DF0FFDF2056DD460020B375 /* libjsinspector.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libjsinspector.a; - remoteRef = 2DF0FFDE2056DD460020B375 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2DF0FFE12056DD460020B375 /* libjsinspector-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libjsinspector-tvOS.a"; - remoteRef = 2DF0FFE02056DD460020B375 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2DF0FFE32056DD460020B375 /* libthird-party.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libthird-party.a"; - remoteRef = 2DF0FFE22056DD460020B375 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2DF0FFE52056DD460020B375 /* libthird-party.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libthird-party.a"; - remoteRef = 2DF0FFE42056DD460020B375 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2DF0FFE72056DD460020B375 /* libdouble-conversion.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libdouble-conversion.a"; - remoteRef = 2DF0FFE62056DD460020B375 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2DF0FFE92056DD460020B375 /* libdouble-conversion.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libdouble-conversion.a"; - remoteRef = 2DF0FFE82056DD460020B375 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2DF0FFEB2056DD460020B375 /* libprivatedata.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libprivatedata.a; - remoteRef = 2DF0FFEA2056DD460020B375 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 2DF0FFED2056DD460020B375 /* libprivatedata-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libprivatedata-tvOS.a"; - remoteRef = 2DF0FFEC2056DD460020B375 /* 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; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 13B07F8E1A680F5B00A75B9A /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, - 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 2D02E4791E0B4A5D006451C7 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 2D02E48E1E0B4A5D006451C7 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Bundle React Native code and images"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh"; - }; - 2D02E4CB1E0B4B27006451C7 /* Bundle React Native Code And Images */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Bundle React Native Code And Images"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh"; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 00E356EA1AD99517003FC87E /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 00E356F31AD99517003FC87E /* trinity-mobileTests.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 13B07F871A680F5B00A75B9A /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */, - 13B07FC11A68108700A75B9A /* main.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 2D02E4771E0B4A5D006451C7 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */, - 2D02E4BC1E0B4A80006451C7 /* AppDelegate.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 2D02E48C1E0B4A5D006451C7 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 2DCD954D1E0B4F2C00145EB5 /* trinity-mobileTests.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 00E356F51AD99517003FC87E /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 13B07F861A680F5B00A75B9A /* trinity-mobile */; - targetProxy = 00E356F41AD99517003FC87E /* PBXContainerItemProxy */; - }; - 2D02E4921E0B4A5D006451C7 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 2D02E47A1E0B4A5D006451C7 /* trinity-mobile-tvOS */; - targetProxy = 2D02E4911E0B4A5D006451C7 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 13B07FB11A68108700A75B9A /* LaunchScreen.xib */ = { - isa = PBXVariantGroup; - children = ( - 13B07FB21A68108700A75B9A /* Base */, - ); - name = LaunchScreen.xib; - path = trinity-mobile; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 00E356F61AD99517003FC87E /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = trinity-mobileTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - ); - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/trinity-mobile.app/trinity-mobile"; - }; - name = Debug; - }; - 00E356F71AD99517003FC87E /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - COPY_PHASE_STRIP = NO; - INFOPLIST_FILE = trinity-mobileTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - ); - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/trinity-mobile.app/trinity-mobile"; - }; - name = Release; - }; - 13B07F941A680F5B00A75B9A /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CURRENT_PROJECT_VERSION = 1; - DEAD_CODE_STRIPPING = NO; - INFOPLIST_FILE = trinity-mobile/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - PRODUCT_NAME = trinity-mobile; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Debug; - }; - 13B07F951A680F5B00A75B9A /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CURRENT_PROJECT_VERSION = 1; - INFOPLIST_FILE = trinity-mobile/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - PRODUCT_NAME = trinity-mobile; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Release; - }; - 2D02E4971E0B4A5E006451C7 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; - ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; - CLANG_ANALYZER_NONNULL = YES; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_TESTABILITY = YES; - GCC_NO_COMMON_BLOCKS = YES; - INFOPLIST_FILE = "trinity-mobile-tvOS/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.trinity-mobile-tvOS"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = appletvos; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.2; - }; - name = Debug; - }; - 2D02E4981E0B4A5E006451C7 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; - ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; - CLANG_ANALYZER_NONNULL = YES; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_NO_COMMON_BLOCKS = YES; - INFOPLIST_FILE = "trinity-mobile-tvOS/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.trinity-mobile-tvOS"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = appletvos; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.2; - }; - name = Release; - }; - 2D02E4991E0B4A5E006451C7 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ANALYZER_NONNULL = YES; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_TESTABILITY = YES; - GCC_NO_COMMON_BLOCKS = YES; - INFOPLIST_FILE = "trinity-mobile-tvOSTests/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.trinity-mobile-tvOSTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = appletvos; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/trinity-mobile-tvOS.app/trinity-mobile-tvOS"; - TVOS_DEPLOYMENT_TARGET = 10.1; - }; - name = Debug; - }; - 2D02E49A1E0B4A5E006451C7 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ANALYZER_NONNULL = YES; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_NO_COMMON_BLOCKS = YES; - INFOPLIST_FILE = "trinity-mobile-tvOSTests/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.trinity-mobile-tvOSTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = appletvos; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/trinity-mobile-tvOS.app/trinity-mobile-tvOS"; - TVOS_DEPLOYMENT_TARGET = 10.1; - }; - name = Release; - }; - 83CBBA201A601CBA00E9B192 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - 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; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - 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 = 9.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - }; - name = Debug; - }; - 83CBBA211A601CBA00E9B192 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = YES; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - 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 = 9.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "trinity-mobileTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 00E356F61AD99517003FC87E /* Debug */, - 00E356F71AD99517003FC87E /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "trinity-mobile" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 13B07F941A680F5B00A75B9A /* Debug */, - 13B07F951A680F5B00A75B9A /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 2D02E4BA1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "trinity-mobile-tvOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2D02E4971E0B4A5E006451C7 /* Debug */, - 2D02E4981E0B4A5E006451C7 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 2D02E4BB1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "trinity-mobile-tvOSTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2D02E4991E0B4A5E006451C7 /* Debug */, - 2D02E49A1E0B4A5E006451C7 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "trinity-mobile" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 83CBBA201A601CBA00E9B192 /* Debug */, - 83CBBA211A601CBA00E9B192 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 83CBB9F71A601CBA00E9B192 /* Project object */; -} diff --git a/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile-tvOS.xcscheme b/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile-tvOS.xcscheme deleted file mode 100644 index 7efc5da7f1..0000000000 --- a/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile-tvOS.xcscheme +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile.xcscheme b/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile.xcscheme deleted file mode 100644 index d699c87c15..0000000000 --- a/src/mobile/ios/trinity-mobile.xcodeproj/xcshareddata/xcschemes/trinity-mobile.xcscheme +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/mobile/ios/trinity-mobile/AppDelegate.h b/src/mobile/ios/trinity-mobile/AppDelegate.h deleted file mode 100644 index d4f2580b1e..0000000000 --- a/src/mobile/ios/trinity-mobile/AppDelegate.h +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Copyright (c) 2015-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -#import - -@interface AppDelegate : UIResponder - -@property (nonatomic, strong) UIWindow *window; - -@end diff --git a/src/mobile/ios/trinity-mobile/AppDelegate.m b/src/mobile/ios/trinity-mobile/AppDelegate.m deleted file mode 100644 index 4fd8e6d3e2..0000000000 --- a/src/mobile/ios/trinity-mobile/AppDelegate.m +++ /dev/null @@ -1,35 +0,0 @@ -/** - * Copyright (c) 2015-present, Facebook, Inc. - * - * 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 - -@implementation AppDelegate - -- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions -{ - NSURL *jsCodeLocation; - - jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil]; - - RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation - moduleName:@"trinity-mobile" - 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]; - UIViewController *rootViewController = [UIViewController new]; - rootViewController.view = rootView; - self.window.rootViewController = rootViewController; - [self.window makeKeyAndVisible]; - return YES; -} - -@end diff --git a/src/mobile/ios/trinity-mobile/Base.lproj/LaunchScreen.xib b/src/mobile/ios/trinity-mobile/Base.lproj/LaunchScreen.xib deleted file mode 100644 index 57284a5189..0000000000 --- a/src/mobile/ios/trinity-mobile/Base.lproj/LaunchScreen.xib +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/mobile/ios/trinity-mobile/Images.xcassets/AppIcon.appiconset/Contents.json b/src/mobile/ios/trinity-mobile/Images.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index 118c98f746..0000000000 --- a/src/mobile/ios/trinity-mobile/Images.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "images" : [ - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "3x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/src/mobile/ios/trinity-mobile/Images.xcassets/Contents.json b/src/mobile/ios/trinity-mobile/Images.xcassets/Contents.json deleted file mode 100644 index 2d92bd53fd..0000000000 --- a/src/mobile/ios/trinity-mobile/Images.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "version" : 1, - "author" : "xcode" - } -} diff --git a/src/mobile/ios/trinity-mobile/Info.plist b/src/mobile/ios/trinity-mobile/Info.plist deleted file mode 100644 index 52b3df03fe..0000000000 --- a/src/mobile/ios/trinity-mobile/Info.plist +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleDisplayName - trinity-mobile - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - LSRequiresIPhoneOS - - UILaunchStoryboardName - LaunchScreen - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UIViewControllerBasedStatusBarAppearance - - NSLocationWhenInUseUsageDescription - - NSAppTransportSecurity - - - NSExceptionDomains - - localhost - - NSExceptionAllowsInsecureHTTPLoads - - - - - - diff --git a/src/mobile/ios/trinity-mobile/main.m b/src/mobile/ios/trinity-mobile/main.m deleted file mode 100644 index c73e006253..0000000000 --- a/src/mobile/ios/trinity-mobile/main.m +++ /dev/null @@ -1,16 +0,0 @@ -/** - * Copyright (c) 2015-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -#import - -#import "AppDelegate.h" - -int main(int argc, char * argv[]) { - @autoreleasepool { - return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); - } -} diff --git a/src/mobile/ios/trinity-mobileTests/Info.plist b/src/mobile/ios/trinity-mobileTests/Info.plist deleted file mode 100644 index 886825ccc9..0000000000 --- a/src/mobile/ios/trinity-mobileTests/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - - diff --git a/src/mobile/ios/trinity-mobileTests/trinity-mobileTests.m b/src/mobile/ios/trinity-mobileTests/trinity-mobileTests.m deleted file mode 100644 index f1998dd818..0000000000 --- a/src/mobile/ios/trinity-mobileTests/trinity-mobileTests.m +++ /dev/null @@ -1,68 +0,0 @@ -/** - * Copyright (c) 2015-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -#import -#import - -#import -#import - -#define TIMEOUT_SECONDS 600 -#define TEXT_TO_LOOK_FOR @"Welcome to React Native!" - -@interface trinity-mobileTests : XCTestCase - -@end - -@implementation trinity-mobileTests - -- (BOOL)findSubviewInView:(UIView *)view matching:(BOOL(^)(UIView *view))test -{ - if (test(view)) { - return YES; - } - for (UIView *subview in [view subviews]) { - if ([self findSubviewInView:subview matching:test]) { - return YES; - } - } - return NO; -} - -- (void)testRendersWelcomeScreen -{ - UIViewController *vc = [[[RCTSharedApplication() delegate] window] rootViewController]; - NSDate *date = [NSDate dateWithTimeIntervalSinceNow:TIMEOUT_SECONDS]; - BOOL foundElement = NO; - - __block NSString *redboxError = nil; - RCTSetLogFunction(^(RCTLogLevel level, RCTLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) { - if (level >= RCTLogLevelError) { - redboxError = message; - } - }); - - while ([date timeIntervalSinceNow] > 0 && !foundElement && !redboxError) { - [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; - [[NSRunLoop mainRunLoop] runMode:NSRunLoopCommonModes beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; - - foundElement = [self findSubviewInView:vc.view matching:^BOOL(UIView *view) { - if ([view.accessibilityLabel isEqualToString:TEXT_TO_LOOK_FOR]) { - return YES; - } - return NO; - }]; - } - - RCTSetLogFunction(RCTDefaultLogFunction); - - XCTAssertNil(redboxError, @"RedBox error: %@", redboxError); - XCTAssertTrue(foundElement, @"Couldn't find element with text '%@' in %d seconds", TEXT_TO_LOOK_FOR, TIMEOUT_SECONDS); -} - - -@end diff --git a/src/mobile/package.json b/src/mobile/package.json index 657a7e6dac..11bb265fc1 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -94,7 +94,7 @@ "react-native-secure-clipboard": "^0.1.1", "react-native-securerandom": "^0.1.1", "react-native-share": "^1.0.27", - "react-native-splash-screen": "^3.0.6", + "react-native-splash-screen": "^3.1.1", "react-native-svg": "~6.1.4", "react-native-tcp": "^3.3.0", "react-native-timer": "^1.3.1", @@ -123,17 +123,17 @@ "vm-browserify": "0.0.4" }, "devDependencies": { - "babel-jest": "20.0.3", - "babel-preset-react-native": "5.0.2", - "babel-preset-stage-0": "^6.24.1", - "cross-env": "^5.1.3", + "babel-jest": "23.4.2", + "babel-preset-react-native": "^5.0.2", + "babel-preset-stage-0": "^7.0.0-beta", + "cross-env": "^5.2.0", "enzyme": "^3.2.0", "enzyme-adapter-react-16": "^1.1.0", - "jest": "20.0.4", + "jest": "23.5.0", "jest-serializer-enzyme": "^1.0.0", "react-addons-test-utils": "^15.6.2", "react-dom": "^16.2.0", - "react-test-renderer": "16.0.0-alpha.12", + "react-test-renderer": "^16.5.0", "rn-nodeify": "^8.2.0" }, "jest": { @@ -146,6 +146,9 @@ "/node_modules/", "/shared/" ], + "transform": { + "^.+\\.js$": "./node_modules/react-native/jest/preprocessor.js" + }, "transformIgnorePatterns": [ "node_modules/?!(react-native|iota-wallet-shared-modules)/" ] diff --git a/src/mobile/rn-cli.config.js b/src/mobile/rn-cli.config.js index c5a52f3819..c13276b045 100644 --- a/src/mobile/rn-cli.config.js +++ b/src/mobile/rn-cli.config.js @@ -1,5 +1,9 @@ const path = require('path'); +const blacklist = require('metro/src/blacklist'); module.exports = { getProjectRoots: () => [__dirname, path.join(__dirname, '../shared')], + getBlacklistRE: function() { + return blacklist([/nodejs-project\/.*/]); + }, }; diff --git a/src/mobile/routes/entry.js b/src/mobile/routes/entry.js index e1d2723004..dd43bc3bc3 100644 --- a/src/mobile/routes/entry.js +++ b/src/mobile/routes/entry.js @@ -30,9 +30,7 @@ const launch = (store) => { SwitchingConfig.autoSwitch = false; // Disable accessibility fonts - if (Text.defaultProps === null) { - Text.defaultProps = {}; - } + Text.defaultProps = {}; Text.defaultProps.allowFontScaling = false; TextInput.defaultProps.allowFontScaling = false; diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 18c2fc7e59..74119dc936 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -8,6 +8,12 @@ dependencies: "@babel/highlight" "7.0.0-beta.47" +"@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" + dependencies: + "@babel/highlight" "^7.0.0" + "@babel/core@7.0.0-beta.47": version "7.0.0-beta.47" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.0.0-beta.47.tgz#b9c164fb9a1e1083f067c236a9da1d7a7d759271" @@ -199,6 +205,14 @@ esutils "^2.0.2" js-tokens "^3.0.0" +"@babel/highlight@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" + dependencies: + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^4.0.0" + "@babel/plugin-external-helpers@7.0.0-beta.47": version "7.0.0-beta.47" resolved "https://registry.yarnpkg.com/@babel/plugin-external-helpers/-/plugin-external-helpers-7.0.0-beta.47.tgz#b348b80da9b5fa3acebbe21979aa3839f6f7b875" @@ -481,24 +495,39 @@ resolved "https://registry.yarnpkg.com/@types/markdown-it/-/markdown-it-0.0.4.tgz#c5f67365916044b342dae8d702724788ba0b5b74" "@types/node@*": - version "10.1.2" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.1.2.tgz#1b928a0baa408fc8ae3ac012cc81375addc147c6" + version "10.9.4" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.9.4.tgz#0f4cb2dc7c1de6096055357f70179043c33e9897" + +"@types/prop-types@*": + version "15.5.5" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.5.5.tgz#17038dd322c2325f5da650a94d5f9974943625e3" + dependencies: + "@types/react" "*" "@types/react-native@>=0.50.0": - version "0.55.16" - resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.55.16.tgz#992304c2228b276c10d2b4460d824477b25d0306" + version "0.56.17" + resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.56.17.tgz#372f471c3202ffa754df86cfcb13b90aed67cc13" + dependencies: + "@types/react" "*" + +"@types/react@*": + version "16.4.13" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.4.13.tgz#1385f5dc3486aa493849a32ccce626a817543e28" + dependencies: + "@types/prop-types" "*" + csstype "^2.2.0" "@yarnpkg/lockfile@^1.0.0": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.0.1.tgz#294155ffbf78cec882a23bc61800b8e629b6b384" + version "1.0.2" + resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.0.2.tgz#833d163680a151d2441a2489f5fe5fa87ac87726" Base64@~0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/Base64/-/Base64-0.2.1.tgz#ba3a4230708e186705065e66babdd4c35cf60028" -abab@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e" +abab@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.0.tgz#aba0ab4c5eee2d4c79d3487d85450fb2376ebb0f" abbrev@1: version "1.1.1" @@ -527,17 +556,17 @@ accepts@~1.3.3, accepts@~1.3.5: mime-types "~2.1.18" negotiator "0.6.1" -acorn-globals@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-3.1.0.tgz#fd8270f71fbb4996b004fa880ee5d46573a731bf" +acorn-globals@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.1.0.tgz#ab716025dbe17c54d3ef81d32ece2b2d99fe2538" dependencies: - acorn "^4.0.4" + acorn "^5.0.0" -acorn@^4.0.4: - version "4.0.13" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" +acorn@^5.0.0, acorn@^5.5.3: + version "5.7.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" -ajv@^5.1.0, ajv@^5.3.0: +ajv@^5.3.0: version "5.5.2" resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" dependencies: @@ -546,18 +575,6 @@ ajv@^5.1.0, ajv@^5.3.0: fast-json-stable-stringify "^2.0.0" json-schema-traverse "^0.3.0" -align-text@^0.1.1, align-text@^0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" - dependencies: - kind-of "^3.0.2" - longest "^1.0.1" - repeat-string "^1.5.2" - -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - ansi-colors@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-1.1.0.tgz#6374b4dd5d4718ff3ce27a671a3b1cad077132a9" @@ -570,10 +587,6 @@ ansi-cyan@^0.1.1: dependencies: ansi-wrap "0.1.0" -ansi-escapes@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" - ansi-escapes@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" @@ -590,7 +603,7 @@ ansi-red@^0.1.1: dependencies: ansi-wrap "0.1.0" -ansi-regex@^2.0.0, ansi-regex@^2.1.1: +ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" @@ -602,7 +615,7 @@ ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" -ansi-styles@^3.0.0, ansi-styles@^3.2.1: +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" dependencies: @@ -616,13 +629,6 @@ ansi@^0.3.0, ansi@~0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/ansi/-/ansi-0.3.1.tgz#0c42d4fb17160d5a9af1e484bace1c66922c1b21" -anymatch@^1.3.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" - dependencies: - micromatch "^2.1.5" - normalize-path "^2.0.0" - anymatch@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" @@ -641,8 +647,8 @@ aproba@^1.0.3: resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" are-we-there-yet@~1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" + version "1.1.5" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" dependencies: delegates "^1.0.0" readable-stream "^2.0.6" @@ -714,13 +720,21 @@ array-unique@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" +array.prototype.flat@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.1.tgz#812db8f02cad24d3fab65dd67eabe3b8903494a4" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.10.0" + function-bind "^1.1.1" + arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" art@^0.10.0: - version "0.10.2" - resolved "https://registry.yarnpkg.com/art/-/art-0.10.2.tgz#55c3738d82a3a07e0623943f070ebe86297253d9" + version "0.10.3" + resolved "https://registry.yarnpkg.com/art/-/art-0.10.3.tgz#b01d84a968ccce6208df55a733838c96caeeaea2" asap@~2.0.3: version "2.0.6" @@ -735,8 +749,10 @@ asn1.js@^4.0.0: minimalistic-assert "^1.0.0" asn1@~0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" + version "0.2.4" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" + dependencies: + safer-buffer "~2.1.0" assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" @@ -752,14 +768,14 @@ assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" +astral-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" + async-limiter@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" -async@^1.4.0: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - async@^2.1.4, async@^2.4.0, async@^2.5.0: version "2.6.1" resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" @@ -780,10 +796,10 @@ asyncstorage-down@^3.1.1: tiny-queue "0.2.0" atob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.1.tgz#ae2d5a729477f289d60dd7f96a6314a22dd6c22a" + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" -authenticator-cli@^1.0.3: +authenticator-cli@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/authenticator-cli/-/authenticator-cli-1.0.5.tgz#4374783c654918050711f044e7b45526631243c2" dependencies: @@ -792,10 +808,10 @@ authenticator-cli@^1.0.3: qrcode-terminal "^0.12.0" authenticator@^1.1.0, authenticator@^1.1.3: - version "1.1.4" - resolved "https://registry.yarnpkg.com/authenticator/-/authenticator-1.1.4.tgz#d9b1e070fb97edd6a9012d1c5668f119b2ce02a5" + version "1.1.5" + resolved "https://registry.yarnpkg.com/authenticator/-/authenticator-1.1.5.tgz#ebc6d01ea91b91d631c6549f8cde82ec38f487f1" dependencies: - authenticator-cli "^1.0.3" + authenticator-cli "^1.0.5" notp "^2.0.3" thirty-two "0.0.2" @@ -803,21 +819,25 @@ aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" -aws4@^1.6.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.7.0.tgz#d4d0e9b9dbfca77bf08eeb0a8a471550fe39e289" - aws4@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" axios@^0.18.0: version "0.18.0" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.18.0.tgz#32d53e4851efdc0a11993b6cd000789d70c05102" + resolved "http://registry.npmjs.org/axios/-/axios-0.18.0.tgz#32d53e4851efdc0a11993b6cd000789d70c05102" dependencies: follow-redirects "^1.3.0" is-buffer "^1.1.5" +babel-code-frame@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-7.0.0-beta.3.tgz#1614a91b2ba0e3848559f410bbacd030726899c9" + dependencies: + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^3.0.0" + 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" @@ -863,22 +883,6 @@ babel-generator@^6.18.0, babel-generator@^6.26.0: source-map "^0.5.7" trim-right "^1.0.1" -babel-helper-bindify-decorators@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.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" - dependencies: - babel-helper-explode-assignable-expression "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - 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" @@ -905,22 +909,14 @@ babel-helper-define-map@^6.24.1: 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" +babel-helper-function-name@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-7.0.0-beta.3.tgz#e86dd2eb2c09e06e392e79e203fc02427b24c871" dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-explode-class@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb" - dependencies: - babel-helper-bindify-decorators "^6.24.1" - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" + babel-helper-get-function-arity "7.0.0-beta.3" + babel-template "7.0.0-beta.3" + babel-traverse "7.0.0-beta.3" + babel-types "7.0.0-beta.3" babel-helper-function-name@^6.24.1: version "6.24.1" @@ -932,6 +928,12 @@ babel-helper-function-name@^6.24.1: babel-traverse "^6.24.1" babel-types "^6.24.1" +babel-helper-get-function-arity@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-7.0.0-beta.3.tgz#61a47709318a31bc2db872f4be9b4c8447198be8" + dependencies: + babel-types "7.0.0-beta.3" + 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" @@ -953,7 +955,7 @@ babel-helper-optimise-call-expression@^6.24.1: babel-runtime "^6.22.0" babel-types "^6.24.1" -babel-helper-regex@^6.24.1: +babel-helper-regex@^6.24.1, babel-helper-regex@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" dependencies: @@ -961,15 +963,14 @@ babel-helper-regex@^6.24.1: babel-types "^6.26.0" lodash "^4.17.4" -babel-helper-remap-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" +babel-helper-remap-async-to-generator@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-7.0.0-beta.3.tgz#03d300afbbf85262512923caec9790e6e8beeb18" dependencies: - babel-helper-function-name "^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-wrap-function "7.0.0-beta.3" + babel-template "7.0.0-beta.3" + babel-traverse "7.0.0-beta.3" + babel-types "7.0.0-beta.3" babel-helper-replace-supers@^6.24.1: version "6.24.1" @@ -982,6 +983,15 @@ babel-helper-replace-supers@^6.24.1: babel-traverse "^6.24.1" babel-types "^6.24.1" +babel-helper-wrap-function@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-helper-wrap-function/-/babel-helper-wrap-function-7.0.0-beta.3.tgz#0698f3acd2b61bf2ff2f3c8417eb80e878b175fc" + dependencies: + babel-helper-function-name "7.0.0-beta.3" + babel-template "7.0.0-beta.3" + babel-traverse "7.0.0-beta.3" + babel-types "7.0.0-beta.3" + babel-helpers@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" @@ -989,13 +999,12 @@ babel-helpers@^6.24.1: babel-runtime "^6.22.0" babel-template "^6.24.1" -babel-jest@20.0.3, babel-jest@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-20.0.3.tgz#e4a03b13dc10389e140fc645d09ffc4ced301671" +babel-jest@23.4.2, babel-jest@^23.4.2: + version "23.4.2" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-23.4.2.tgz#f276de67798a5d68f2d6e87ff518c2f6e1609877" dependencies: - babel-core "^6.0.0" - babel-plugin-istanbul "^4.0.0" - babel-preset-jest "^20.0.3" + babel-plugin-istanbul "^4.1.6" + babel-preset-jest "^23.2.0" babel-messages@^6.23.0: version "6.23.0" @@ -1015,100 +1024,111 @@ babel-plugin-external-helpers@^6.22.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-istanbul@^4.0.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" + resolved "http://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz#36c59b2192efce81c5b378321b74175add1c9a45" 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@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-20.0.3.tgz#afedc853bd3f8dc3548ea671fbe69d03cc2c1767" - -babel-plugin-syntax-async-functions@^6.8.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" +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" -babel-plugin-syntax-async-generators@^6.5.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a" +babel-plugin-syntax-async-generators@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-7.0.0-beta.3.tgz#f177f72fc88696911129e1e832e560595244034e" -babel-plugin-syntax-class-constructor-call@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz#9cb9d39fe43c8600bec8146456ddcbd4e1a76416" +babel-plugin-syntax-class-properties@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-7.0.0-beta.3.tgz#84480d42dc9ec49f5f8e1e62fb435151cbbe11a3" 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" + resolved "http://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de" -babel-plugin-syntax-decorators@^6.13.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b" +babel-plugin-syntax-decorators@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-7.0.0-beta.3.tgz#c1c4861f1f76138ab15ca6c28db7146e60d4fc2f" -babel-plugin-syntax-do-expressions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz#5747756139aa26d390d09410b03744ba07e4796d" +babel-plugin-syntax-do-expressions@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-7.0.0-beta.3.tgz#bb79a27185bee922051a77aea4a724e4d9106fd9" -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" +babel-plugin-syntax-dynamic-import@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-7.0.0-beta.3.tgz#4f2e87a6ac12947422392b76a526cdc766a607ac" -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" - -babel-plugin-syntax-export-extensions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz#70a1484f0f9089a4e84ad44bac353c95b9b12721" +babel-plugin-syntax-export-extensions@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-7.0.0-beta.3.tgz#eb6891a63f86652e2f09c332f2ff06a83c07da28" babel-plugin-syntax-flow@^6.18.0, babel-plugin-syntax-flow@^6.8.0: version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" + resolved "http://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" -babel-plugin-syntax-function-bind@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz#48c495f177bdf31a981e732f55adc0bdd2601f46" +babel-plugin-syntax-function-bind@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-7.0.0-beta.3.tgz#0e6de220815bc24dfc662b5f70a9841ee887e6d9" + +babel-plugin-syntax-function-sent@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-sent/-/babel-plugin-syntax-function-sent-7.0.0-beta.3.tgz#bd217b5441f64fbeeaaf65512ccdeb05094457c3" 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" + resolved "http://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" + +babel-plugin-syntax-numeric-separator@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-numeric-separator/-/babel-plugin-syntax-numeric-separator-7.0.0-beta.3.tgz#c94cc94985f55fa62a1f270ad6d48458459589fe" + +babel-plugin-syntax-object-rest-spread@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-7.0.0-beta.3.tgz#7f781c180899dafd88f132f69472397549be48e5" 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" + resolved "http://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" + +babel-plugin-syntax-optional-catch-binding@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-optional-catch-binding/-/babel-plugin-syntax-optional-catch-binding-7.0.0-beta.3.tgz#61416bec2803a97ff25beb80771ce88e21793365" -babel-plugin-syntax-trailing-function-commas@^6.22.0, babel-plugin-syntax-trailing-function-commas@^6.8.0: +babel-plugin-syntax-optional-chaining@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-optional-chaining/-/babel-plugin-syntax-optional-chaining-7.0.0-beta.3.tgz#0abab5055caddd68d099263c2d65ad5d5da97e3d" + +babel-plugin-syntax-pipeline-operator@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-pipeline-operator/-/babel-plugin-syntax-pipeline-operator-7.0.0-beta.3.tgz#f8d17f9d5fdf8a515c0d5a33d2483665575bdf9d" + +babel-plugin-syntax-throw-expressions@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-throw-expressions/-/babel-plugin-syntax-throw-expressions-7.0.0-beta.3.tgz#a3469edbf3561b881ea8908d5a9232cbb4e0377a" + +babel-plugin-syntax-trailing-function-commas@^6.8.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" -babel-plugin-transform-async-generator-functions@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db" +babel-plugin-transform-async-generator-functions@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-7.0.0-beta.3.tgz#0e6079201bfd7030c281983ed4e7662f6f986587" dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-generators "^6.5.0" - babel-runtime "^6.22.0" + babel-helper-remap-async-to-generator "7.0.0-beta.3" + babel-plugin-syntax-async-generators "7.0.0-beta.3" -babel-plugin-transform-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" +babel-plugin-transform-class-properties@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-7.0.0-beta.3.tgz#d7cf0e431512262499421d53582969503f24581a" dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.22.0" + babel-helper-function-name "7.0.0-beta.3" + babel-plugin-syntax-class-properties "7.0.0-beta.3" + babel-template "7.0.0-beta.3" -babel-plugin-transform-class-constructor-call@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz#80dc285505ac067dcb8d6c65e2f6f11ab7765ef9" - dependencies: - babel-plugin-syntax-class-constructor-call "^6.18.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-class-properties@^6.24.1, babel-plugin-transform-class-properties@^6.8.0: +babel-plugin-transform-class-properties@^6.8.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" dependencies: @@ -1117,22 +1137,18 @@ babel-plugin-transform-class-properties@^6.24.1, babel-plugin-transform-class-pr babel-runtime "^6.22.0" babel-template "^6.24.1" -babel-plugin-transform-decorators@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d" +babel-plugin-transform-decorators@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-7.0.0-beta.3.tgz#a4f7b348e174d665b1d474b1261f95c794319c0f" dependencies: - babel-helper-explode-class "^6.24.1" - babel-plugin-syntax-decorators "^6.13.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-types "^6.24.1" + babel-plugin-syntax-decorators "7.0.0-beta.3" + babel-template "7.0.0-beta.3" -babel-plugin-transform-do-expressions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz#28ccaf92812d949c2cd1281f690c8fdc468ae9bb" +babel-plugin-transform-do-expressions@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-7.0.0-beta.3.tgz#1d2386077f808a90434b13bc4a3e2538c30cde2f" dependencies: - babel-plugin-syntax-do-expressions "^6.8.0" - babel-runtime "^6.22.0" + babel-plugin-syntax-do-expressions "7.0.0-beta.3" babel-plugin-transform-es2015-arrow-functions@^6.8.0: version "6.22.0" @@ -1277,20 +1293,17 @@ babel-plugin-transform-es3-property-literals@^6.8.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-exponentiation-operator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" +babel-plugin-transform-export-default@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-default/-/babel-plugin-transform-export-default-7.0.0-beta.3.tgz#ab53d924fd4dc774e20e059ada1624b87d1a0001" 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-syntax-export-extensions "7.0.0-beta.3" -babel-plugin-transform-export-extensions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz#53738b47e75e8218589eea946cbbd39109bbe653" +babel-plugin-transform-export-namespace@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-namespace/-/babel-plugin-transform-export-namespace-7.0.0-beta.3.tgz#62bf14156e71772c4bf5858caa606db0a8e5004d" dependencies: - babel-plugin-syntax-export-extensions "^6.8.0" - babel-runtime "^6.22.0" + babel-plugin-syntax-export-extensions "7.0.0-beta.3" babel-plugin-transform-flow-strip-types@^6.21.0, babel-plugin-transform-flow-strip-types@^6.8.0: version "6.22.0" @@ -1299,20 +1312,56 @@ babel-plugin-transform-flow-strip-types@^6.21.0, babel-plugin-transform-flow-str babel-plugin-syntax-flow "^6.18.0" babel-runtime "^6.22.0" -babel-plugin-transform-function-bind@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz#c6fb8e96ac296a310b8cf8ea401462407ddf6a97" +babel-plugin-transform-function-bind@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-7.0.0-beta.3.tgz#905f34f2b4f584f931d13e06df3c5fe09a3a2000" dependencies: - babel-plugin-syntax-function-bind "^6.8.0" - babel-runtime "^6.22.0" + babel-plugin-syntax-function-bind "7.0.0-beta.3" -babel-plugin-transform-object-rest-spread@^6.22.0, babel-plugin-transform-object-rest-spread@^6.8.0: +babel-plugin-transform-function-sent@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-sent/-/babel-plugin-transform-function-sent-7.0.0-beta.3.tgz#a9f59630c1347cfe16a1af62102c287e9e7a6045" + dependencies: + babel-helper-wrap-function "7.0.0-beta.3" + babel-plugin-syntax-function-sent "7.0.0-beta.3" + +babel-plugin-transform-numeric-separator@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-numeric-separator/-/babel-plugin-transform-numeric-separator-7.0.0-beta.3.tgz#741baae498e374a5439bf046e75708a72faa218c" + dependencies: + babel-plugin-syntax-numeric-separator "7.0.0-beta.3" + +babel-plugin-transform-object-rest-spread@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-7.0.0-beta.3.tgz#5c409f3cd70819dbb3382d2056971c5ebe01393a" + dependencies: + babel-plugin-syntax-object-rest-spread "7.0.0-beta.3" + +babel-plugin-transform-object-rest-spread@^6.8.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" dependencies: babel-plugin-syntax-object-rest-spread "^6.8.0" babel-runtime "^6.26.0" +babel-plugin-transform-optional-catch-binding@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-optional-catch-binding/-/babel-plugin-transform-optional-catch-binding-7.0.0-beta.3.tgz#029c6e8db58ba5f192efcfdfab1c0e60fc5a48c6" + dependencies: + babel-plugin-syntax-optional-catch-binding "7.0.0-beta.3" + +babel-plugin-transform-optional-chaining@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-optional-chaining/-/babel-plugin-transform-optional-chaining-7.0.0-beta.3.tgz#ffc7e1027e5720857e9b4f2e3b2115589b734218" + dependencies: + babel-plugin-syntax-optional-chaining "7.0.0-beta.3" + +babel-plugin-transform-pipeline-operator@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-pipeline-operator/-/babel-plugin-transform-pipeline-operator-7.0.0-beta.3.tgz#5e9c36c1b8e769394165546fe0bd3eeaa2e5b88e" + dependencies: + babel-plugin-syntax-pipeline-operator "7.0.0-beta.3" + babel-plugin-transform-react-display-name@^6.8.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" @@ -1334,6 +1383,19 @@ babel-plugin-transform-strict-mode@^6.24.1: babel-runtime "^6.22.0" babel-types "^6.24.1" +babel-plugin-transform-throw-expressions@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-throw-expressions/-/babel-plugin-transform-throw-expressions-7.0.0-beta.3.tgz#89daad94f2fb5b671c75942bbdd527844751e711" + dependencies: + babel-plugin-syntax-throw-expressions "7.0.0-beta.3" + +babel-plugin-transform-unicode-property-regex@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-unicode-property-regex/-/babel-plugin-transform-unicode-property-regex-2.0.5.tgz#24922190f9598384d258a6c8e7409309dc6f3898" + dependencies: + babel-helper-regex "^6.26.0" + regexpu-core "^4.1.3" + babel-preset-es2015-node@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/babel-preset-es2015-node/-/babel-preset-es2015-node-6.1.1.tgz#60b23157024b0cfebf3a63554cb05ee035b4e55f" @@ -1349,8 +1411,8 @@ babel-preset-es2015-node@^6.1.1: semver "5.x" babel-preset-fbjs@^2.1.2, babel-preset-fbjs@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-2.1.4.tgz#22f358e6654073acf61e47a052a777d7bccf03af" + version "2.3.0" + resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-2.3.0.tgz#92ff81307c18b926895114f9828ae1674c097f80" dependencies: babel-plugin-check-es2015-constants "^6.8.0" babel-plugin-syntax-class-properties "^6.8.0" @@ -1381,13 +1443,14 @@ babel-preset-fbjs@^2.1.2, babel-preset-fbjs@^2.1.4: babel-plugin-transform-react-display-name "^6.8.0" babel-plugin-transform-react-jsx "^6.8.0" -babel-preset-jest@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-20.0.3.tgz#cbacaadecb5d689ca1e1de1360ebfc66862c178a" +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" dependencies: - babel-plugin-jest-hoist "^20.0.3" + babel-plugin-jest-hoist "^23.2.0" + babel-plugin-syntax-object-rest-spread "^6.13.0" -babel-preset-react-native@5.0.2, babel-preset-react-native@^5.0.0: +babel-preset-react-native@^5.0.0, babel-preset-react-native@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/babel-preset-react-native/-/babel-preset-react-native-5.0.2.tgz#dfed62379712a9c017ff99ce4fbeac1e11d42285" dependencies: @@ -1419,40 +1482,44 @@ babel-preset-react-native@5.0.2, babel-preset-react-native@^5.0.0: "@babel/template" "7.0.0-beta.47" metro-babel7-plugin-react-transform "^0.39.1" -babel-preset-stage-0@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz#5642d15042f91384d7e5af8bc88b1db95b039e6a" - dependencies: - babel-plugin-transform-do-expressions "^6.22.0" - babel-plugin-transform-function-bind "^6.22.0" - babel-preset-stage-1 "^6.24.1" - -babel-preset-stage-1@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz#7692cd7dcd6849907e6ae4a0a85589cfb9e2bfb0" - dependencies: - babel-plugin-transform-class-constructor-call "^6.24.1" - babel-plugin-transform-export-extensions "^6.22.0" - babel-preset-stage-2 "^6.24.1" - -babel-preset-stage-2@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1" - dependencies: - babel-plugin-syntax-dynamic-import "^6.18.0" - babel-plugin-transform-class-properties "^6.24.1" - babel-plugin-transform-decorators "^6.24.1" - babel-preset-stage-3 "^6.24.1" - -babel-preset-stage-3@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395" - dependencies: - babel-plugin-syntax-trailing-function-commas "^6.22.0" - babel-plugin-transform-async-generator-functions "^6.24.1" - babel-plugin-transform-async-to-generator "^6.24.1" - babel-plugin-transform-exponentiation-operator "^6.24.1" - babel-plugin-transform-object-rest-spread "^6.22.0" +babel-preset-stage-0@^7.0.0-beta: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-preset-stage-0/-/babel-preset-stage-0-7.0.0-beta.3.tgz#a3105088710c4995d6f0c35b75bde4d7fe972f86" + dependencies: + babel-plugin-transform-do-expressions "7.0.0-beta.3" + babel-plugin-transform-function-bind "7.0.0-beta.3" + babel-preset-stage-1 "7.0.0-beta.3" + +babel-preset-stage-1@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-preset-stage-1/-/babel-preset-stage-1-7.0.0-beta.3.tgz#9b3b60ecbe84cc38b077698fef67df2b09a8f5d5" + dependencies: + babel-plugin-transform-decorators "7.0.0-beta.3" + babel-plugin-transform-export-default "7.0.0-beta.3" + babel-plugin-transform-optional-chaining "7.0.0-beta.3" + babel-plugin-transform-pipeline-operator "7.0.0-beta.3" + babel-preset-stage-2 "7.0.0-beta.3" + +babel-preset-stage-2@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-7.0.0-beta.3.tgz#219016653baac15e3137d8ce153718fd5cd696f5" + dependencies: + babel-plugin-transform-export-namespace "7.0.0-beta.3" + babel-plugin-transform-function-sent "7.0.0-beta.3" + babel-plugin-transform-numeric-separator "7.0.0-beta.3" + babel-plugin-transform-throw-expressions "7.0.0-beta.3" + babel-preset-stage-3 "7.0.0-beta.3" + +babel-preset-stage-3@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-7.0.0-beta.3.tgz#c78a371719199c9bfaef73ae0e27d4e72f59342b" + dependencies: + babel-plugin-syntax-dynamic-import "7.0.0-beta.3" + babel-plugin-transform-async-generator-functions "7.0.0-beta.3" + babel-plugin-transform-class-properties "7.0.0-beta.3" + babel-plugin-transform-object-rest-spread "7.0.0-beta.3" + babel-plugin-transform-optional-catch-binding "7.0.0-beta.3" + babel-plugin-transform-unicode-property-regex "^2.0.5" babel-register@^6.24.1, babel-register@^6.26.0: version "6.26.0" @@ -1473,6 +1540,16 @@ babel-runtime@^6.22.0, babel-runtime@^6.26.0: core-js "^2.4.0" regenerator-runtime "^0.11.0" +babel-template@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-7.0.0-beta.3.tgz#ebb877b6070ce9912b0d0c22fcad3372165913a8" + dependencies: + babel-code-frame "7.0.0-beta.3" + babel-traverse "7.0.0-beta.3" + babel-types "7.0.0-beta.3" + babylon "7.0.0-beta.27" + lodash "^4.2.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" @@ -1483,7 +1560,20 @@ babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: babylon "^6.18.0" lodash "^4.17.4" -babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: +babel-traverse@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-7.0.0-beta.3.tgz#3cf0a45d53d934d85275d8770775d7944fc7c199" + dependencies: + babel-code-frame "7.0.0-beta.3" + babel-helper-function-name "7.0.0-beta.3" + babel-types "7.0.0-beta.3" + babylon "7.0.0-beta.27" + debug "^3.0.1" + globals "^10.0.0" + invariant "^2.2.0" + lodash "^4.2.0" + +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" dependencies: @@ -1497,7 +1587,15 @@ babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: invariant "^2.2.2" lodash "^4.17.4" -babel-types@^6.18.0, babel-types@^6.24.1, babel-types@^6.26.0: +babel-types@7.0.0-beta.3: + version "7.0.0-beta.3" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-7.0.0-beta.3.tgz#cd927ca70e0ae8ab05f4aab83778cfb3e6eb20b4" + dependencies: + esutils "^2.0.2" + lodash "^4.2.0" + to-fast-properties "^2.0.0" + +babel-types@^6.0.0, babel-types@^6.18.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" dependencies: @@ -1506,6 +1604,10 @@ babel-types@^6.18.0, babel-types@^6.24.1, babel-types@^6.26.0: lodash "^4.17.4" to-fast-properties "^1.0.3" +babylon@7.0.0-beta.27: + version "7.0.0-beta.27" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.27.tgz#b6edd30ef30619e2f630eb52585fdda84e6542cd" + babylon@7.0.0-beta.47: version "7.0.0-beta.47" resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.47.tgz#6d1fa44f0abec41ab7c780481e62fd9aafbdea80" @@ -1553,14 +1655,14 @@ basic-auth@~2.0.0: safe-buffer "5.1.1" bcrypt-pbkdf@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" + version "1.0.2" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" dependencies: tweetnacl "^0.14.3" big-integer@^1.6.7: - version "1.6.28" - resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.28.tgz#8cef0fda3ccde8759c2c66efcfacc35aea658283" + version "1.6.36" + resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.36.tgz#78631076265d4ae3555c04f85e7d9d2f3a071a36" bignumber.js@^4.1.0: version "4.1.0" @@ -1630,9 +1732,13 @@ brorand@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" -browser-resolve@^1.11.2: - version "1.11.2" - resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce" +browser-process-hrtime@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.2.tgz#425d68a58d3447f02a04aa894187fce8af8b7b8e" + +browser-resolve@^1.11.3: + version "1.11.3" + resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.3.tgz#9b7cbb3d0f510e4cb86bdbd796124d28b5890af6" dependencies: resolve "1.1.7" @@ -1656,12 +1762,13 @@ browserify-cipher@^1.0.0: evp_bytestokey "^1.0.0" browserify-des@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.1.tgz#3343124db6d7ad53e26a8826318712bdc8450f9c" + version "1.0.2" + resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" dependencies: cipher-base "^1.0.1" des.js "^1.0.0" inherits "^2.0.1" + safe-buffer "^5.1.2" browserify-rsa@^4.0.0: version "4.0.1" @@ -1688,12 +1795,6 @@ browserify-zlib@^0.1.4: dependencies: pako "~0.2.0" -bser@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bser/-/bser-1.0.2.tgz#381116970b2a6deea5646dd15dd7278444b56169" - dependencies: - node-int64 "^0.4.0" - bser@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" @@ -1705,8 +1806,8 @@ buffer-equal-constant-time@1.0.1: resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" buffer-from@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.0.0.tgz#4cb8832d23612589b0406e9e2956c17f06fdf531" + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" buffer-xor@^1.0.3: version "1.0.3" @@ -1714,7 +1815,7 @@ buffer-xor@^1.0.3: buffer@^3.6.0: version "3.6.0" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-3.6.0.tgz#a72c936f77b96bf52f5f7e7b467180628551defb" + resolved "http://registry.npmjs.org/buffer/-/buffer-3.6.0.tgz#a72c936f77b96bf52f5f7e7b467180628551defb" dependencies: base64-js "0.0.8" ieee754 "^1.1.4" @@ -1722,22 +1823,22 @@ buffer@^3.6.0: buffer@^4.9.1: version "4.9.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" + resolved "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" dependencies: base64-js "^1.0.2" ieee754 "^1.1.4" isarray "^1.0.0" buffer@^5.0.0, buffer@^5.0.8: - version "5.1.0" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.1.0.tgz#c913e43678c7cb7c8bd16afbcddb6c5505e8f9fe" + version "5.2.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.2.1.tgz#dd57fa0f109ac59c602479044dca7b8b3d0b71d6" dependencies: base64-js "^1.0.2" ieee754 "^1.1.4" bugsnag-react-native@^2.9.3: - version "2.9.4" - resolved "https://registry.yarnpkg.com/bugsnag-react-native/-/bugsnag-react-native-2.9.4.tgz#a8dfcc44f727909d306e40dd980997a3e69fe2e5" + version "2.10.2" + resolved "https://registry.yarnpkg.com/bugsnag-react-native/-/bugsnag-react-native-2.10.2.tgz#be5bac92ec5ba593116703cec4669667436a8407" dependencies: iserror "^0.0.2" promise "^7" @@ -1769,18 +1870,16 @@ callsites@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" -camelcase@^1.0.2: - version "1.2.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" - -camelcase@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - camelcase@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" +can-promise@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/can-promise/-/can-promise-0.0.1.tgz#7a7597ad801fb14c8b22341dfec314b6bd6ad8d3" + dependencies: + window-or-global "^1.0.1" + capture-exit@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-1.2.0.tgz#1c5fcc489fd0ab00d4f1ac7ae1072e3173fbab6f" @@ -1791,16 +1890,9 @@ caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" -center-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" - dependencies: - align-text "^0.1.3" - lazy-cache "^1.0.3" - chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + resolved "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: ansi-styles "^2.2.1" escape-string-regexp "^1.0.2" @@ -1808,7 +1900,7 @@ chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0: +chalk@^2.0.0, chalk@^2.0.1: version "2.4.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" dependencies: @@ -1835,9 +1927,9 @@ chownr@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" -ci-info@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.1.3.tgz#710193264bb05c77b8c90d02f5aaf22216a667b2" +ci-info@^1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.5.1.tgz#17e8eb5de6f8b2b6038f0cbb714d410bfa9f3030" cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: version "1.0.4" @@ -1872,14 +1964,6 @@ cli@^1.0.1: exit "0.1.2" glob "^7.1.1" -cliui@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" - dependencies: - center-align "^0.1.1" - right-align "^0.1.1" - wordwrap "0.0.2" - cliui@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" @@ -1888,6 +1972,14 @@ cliui@^3.2.0: strip-ansi "^3.0.1" wrap-ansi "^2.0.0" +cliui@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" + dependencies: + string-width "^2.1.1" + strip-ansi "^4.0.0" + wrap-ansi "^2.0.0" + clone@~0.1.9: version "0.1.19" resolved "https://registry.yarnpkg.com/clone/-/clone-0.1.19.tgz#613fb68639b26a494ac53253e15b1a6bd88ada85" @@ -1908,18 +2000,18 @@ collection-visit@^1.0.0: object-visit "^1.0.0" color-convert@^1.9.0, color-convert@^1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed" + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" dependencies: - color-name "^1.1.1" + color-name "1.1.3" -color-name@^1.0.0, color-name@^1.1.1: +color-name@1.1.3, color-name@^1.0.0: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" color-string@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.2.tgz#26e45814bc3c9a7cbd6751648a41434514a773a9" + version "1.5.3" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc" dependencies: color-name "^1.0.0" simple-swizzle "^0.2.2" @@ -1935,36 +2027,32 @@ color@^2.0.1: color-convert "^1.9.1" color-string "^1.5.2" -colors@*: - version "1.3.0" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.3.0.tgz#5f20c9fef6945cb1134260aab33bfbdc8295e04e" - colors@0.5.x: version "0.5.1" resolved "https://registry.yarnpkg.com/colors/-/colors-0.5.1.tgz#7d0023eaeb154e8ee9fce75dcb923d0ed1667774" -combined-stream@1.0.6, combined-stream@~1.0.5, combined-stream@~1.0.6: +combined-stream@1.0.6, combined-stream@~1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" dependencies: delayed-stream "~1.0.0" commander@^2.9.0: - version "2.15.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f" + version "2.18.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.18.0.tgz#2bf063ddee7c7891176981a2cc798e5754bc6970" commander@~2.13.0: version "2.13.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" +commander@~2.17.1: + version "2.17.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" + commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" -compare-versions@^3.1.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.2.1.tgz#a49eb7689d4caaf0b6db5220173fd279614000f7" - component-emitter@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" @@ -2023,20 +2111,12 @@ constants-browserify@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-0.0.1.tgz#92577db527ba6c4cf0a4568d84bc031f441e21f2" -content-type-parser@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7" - -convert-source-map@^1.1.0: +convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.1: version "1.6.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" dependencies: safe-buffer "~5.1.1" -convert-source-map@^1.4.0, convert-source-map@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5" - copy-descriptor@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" @@ -2045,11 +2125,7 @@ core-js@^1.0.0: version "1.2.7" resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" -core-js@^2.2.2, core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0: - version "2.5.6" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.6.tgz#0fe6d45bf3cac3ac364a9d72de7576f4eb221b9d" - -core-js@^2.5.3: +core-js@^2.2.2, core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0, core-js@^2.5.3: version "2.5.7" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" @@ -2093,11 +2169,11 @@ create-react-class@^15.6.0, create-react-class@^15.6.3: loose-envify "^1.3.1" object-assign "^4.1.1" -cross-env@^5.1.3: - version "5.1.6" - resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-5.1.6.tgz#0dc05caf945b24e4b9e3b12871fe0e858d08b38d" +cross-env@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-5.2.0.tgz#6ecd4c015d5773e614039ee529076669b9d126f2" dependencies: - cross-spawn "^5.1.0" + cross-spawn "^6.0.5" is-windows "^1.0.0" cross-spawn@^5.0.1, cross-spawn@^5.1.0: @@ -2108,6 +2184,16 @@ cross-spawn@^5.0.1, cross-spawn@^5.1.0: shebang-command "^1.2.0" which "^1.2.9" +cross-spawn@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + crypto-js@^3.1.9-1: version "3.1.9-1" resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.1.9-1.tgz#fda19e761fc077e01ffbfdc6e9fdfc59e8806cd8" @@ -2126,44 +2212,48 @@ css-what@2.1: resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": - version "0.3.2" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.2.tgz#b8036170c79f07a90ff2f16e22284027a243848b" + version "0.3.4" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.4.tgz#8cd52e8a3acfd68d3aed38ee0a640177d2f9d797" -"cssstyle@>= 0.2.37 < 0.3.0": - version "0.2.37" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-0.2.37.tgz#541097234cb2513c83ceed3acddc27ff27987d54" +cssstyle@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.1.1.tgz#18b038a9c44d65f7a8e428a653b9f6fe42faf5fb" dependencies: cssom "0.3.x" +csstype@^2.2.0: + version "2.5.6" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.5.6.tgz#2ae1db2319642d8b80a668d2d025c6196071e788" + d3-array@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.1.tgz#d1ca33de2f6ac31efadb8e050a021d7e2396d5dc" + version "1.2.4" + resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.4.tgz#635ce4d5eea759f6f605863dbcfc30edc737f71f" d3-collection@1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.4.tgz#342dfd12837c90974f33f1cc0a785aea570dcdc2" + version "1.0.7" + resolved "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.7.tgz#349bd2aa9977db071091c13144d5e4f16b5b310e" d3-color@1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-1.2.0.tgz#d1ea19db5859c86854586276ec892cf93148459a" + version "1.2.3" + resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-1.2.3.tgz#6c67bb2af6df3cc8d79efcc4d3a3e83e28c8048f" d3-ease@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-1.0.3.tgz#68bfbc349338a380c44d8acc4fbc3304aa2d8c0e" + version "1.0.5" + resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-1.0.5.tgz#8ce59276d81241b1b72042d6af2d40e76d936ffb" d3-format@1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-1.3.0.tgz#a3ac44269a2011cdb87c7b5693040c18cddfff11" + version "1.3.2" + resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-1.3.2.tgz#6a96b5e31bcb98122a30863f7d92365c00603562" d3-interpolate@1, d3-interpolate@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-1.2.0.tgz#40d81bd8e959ff021c5ea7545bc79b8d22331c41" + version "1.3.2" + resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-1.3.2.tgz#417d3ebdeb4bc4efcc8fd4361c55e4040211fd68" dependencies: d3-color "1" d3-path@1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.5.tgz#241eb1849bd9e9e8021c0d0a799f8a0e8e441764" + version "1.0.7" + resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.7.tgz#8de7cd693a75ac0b5480d3abaccd94793e58aae8" d3-scale@^1.0.0: version "1.0.7" @@ -2178,28 +2268,28 @@ d3-scale@^1.0.0: d3-time-format "2" d3-shape@^1.0.0, d3-shape@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.2.0.tgz#45d01538f064bafd05ea3d6d2cb748fd8c41f777" + version "1.2.2" + resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.2.2.tgz#f9dba3777a5825f9a8ce8bc928da08c17679e9a7" dependencies: d3-path "1" d3-time-format@2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-2.1.1.tgz#85b7cdfbc9ffca187f14d3c456ffda268081bb31" + version "2.1.3" + resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-2.1.3.tgz#ae06f8e0126a9d60d6364eac5b1533ae1bac826b" dependencies: d3-time "1" d3-time@1: - version "1.0.8" - resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-1.0.8.tgz#dbd2d6007bf416fe67a76d17947b784bffea1e84" + version "1.0.10" + resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-1.0.10.tgz#8259dd71288d72eeacfd8de281c4bf5c7393053c" d3-timer@^1.0.0: - version "1.0.7" - resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-1.0.7.tgz#df9650ca587f6c96607ff4e60cc38229e8dd8531" + version "1.0.9" + resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-1.0.9.tgz#f7bb8c0d597d792ff7131e1c24a36dd471a471ba" d3-voronoi@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/d3-voronoi/-/d3-voronoi-1.1.2.tgz#1687667e8f13a2d158c80c1480c5a29cb0d8973c" + version "1.1.4" + resolved "https://registry.yarnpkg.com/d3-voronoi/-/d3-voronoi-1.1.4.tgz#dd3c78d7653d2bb359284ae478645d95944c8297" d64@^1.0.0: version "1.0.0" @@ -2211,6 +2301,14 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" +data-urls@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.0.1.tgz#d416ac3896918f29ca84d81085bc3705834da579" + dependencies: + abab "^2.0.0" + whatwg-mimetype "^2.1.0" + whatwg-url "^7.0.0" + date-now@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" @@ -2221,13 +2319,13 @@ debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6. dependencies: ms "2.0.0" -debug@^3.1.0: +debug@^3.0.1, debug@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" dependencies: ms "2.0.0" -decamelize@^1.0.0, decamelize@^1.1.1: +decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" @@ -2247,9 +2345,9 @@ deep-equal@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" -deep-extend@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.5.1.tgz#b894a9dd90d3023fbf1c55a394fb858eb2066f1f" +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" deep-is@~0.1.3: version "0.1.3" @@ -2268,11 +2366,10 @@ deferred-leveldown@~0.2.0: abstract-leveldown "~0.12.1" define-properties@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" + version "1.1.3" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" dependencies: - foreach "^2.0.5" - object-keys "^1.0.8" + object-keys "^1.0.12" define-property@^0.2.5: version "0.2.5" @@ -2381,6 +2478,12 @@ domelementtype@~1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" +domexception@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" + dependencies: + webidl-conversions "^4.0.2" + domhandler@^2.3.0: version "2.4.2" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" @@ -2402,10 +2505,11 @@ domutils@^1.5.1: domelementtype "1" ecc-jsbn@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" + version "0.1.2" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" dependencies: jsbn "~0.1.0" + safer-buffer "^2.1.0" ecdsa-sig-formatter@1.0.10: version "1.0.10" @@ -2418,8 +2522,8 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" elliptic@^6.0.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" + version "6.4.1" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.1.tgz#c2d0b7776911b86722c632c3c06c60f2f819939a" dependencies: bn.js "^4.4.0" brorand "^1.0.1" @@ -2452,24 +2556,24 @@ envinfo@^5.7.0: resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-5.10.0.tgz#503a9774ae15b93ea68bdfae2ccd6306624ea6df" enzyme-adapter-react-16@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.1.1.tgz#a8f4278b47e082fbca14f5bfb1ee50ee650717b4" + version "1.5.0" + resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.5.0.tgz#50af8d76a45fe0915de932bd95d34cdca75c0be3" dependencies: - enzyme-adapter-utils "^1.3.0" - lodash "^4.17.4" - object.assign "^4.0.4" + enzyme-adapter-utils "^1.8.0" + function.prototype.name "^1.1.0" + object.assign "^4.1.0" object.values "^1.0.4" - prop-types "^15.6.0" - react-reconciler "^0.7.0" + prop-types "^15.6.2" + react-is "^16.4.2" react-test-renderer "^16.0.0-0" -enzyme-adapter-utils@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.3.0.tgz#d6c85756826c257a8544d362cc7a67e97ea698c7" +enzyme-adapter-utils@^1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.8.0.tgz#ee9f07250663a985f1f2caaf297720787da559f1" dependencies: - lodash "^4.17.4" - object.assign "^4.0.4" - prop-types "^15.6.0" + function.prototype.name "^1.1.0" + object.assign "^4.1.0" + prop-types "^15.6.2" enzyme-to-json@^1.4.4: version "1.6.0" @@ -2484,35 +2588,38 @@ enzyme-to-json@^1.4.4: object.entries "^1.0.4" enzyme@^3.2.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.3.0.tgz#0971abd167f2d4bf3f5bd508229e1c4b6dc50479" + version "3.6.0" + resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.6.0.tgz#d213f280a258f61e901bc663d4cc2d6fd9a9dec8" dependencies: + array.prototype.flat "^1.2.1" cheerio "^1.0.0-rc.2" - function.prototype.name "^1.0.3" - has "^1.0.1" + function.prototype.name "^1.1.0" + has "^1.0.3" is-boolean-object "^1.0.0" - is-callable "^1.1.3" + is-callable "^1.1.4" is-number-object "^1.0.3" is-string "^1.0.4" is-subset "^0.1.1" - lodash "^4.17.4" - object-inspect "^1.5.0" + lodash.escape "^4.0.1" + lodash.isequal "^4.5.0" + object-inspect "^1.6.0" object-is "^1.0.1" object.assign "^4.1.0" object.entries "^1.0.4" object.values "^1.0.4" raf "^3.4.0" rst-selector-parser "^2.2.3" + string.prototype.trim "^1.1.2" -errno@^0.1.1, errno@~0.1.1, errno@~0.1.7: +errno@^0.1.1, errno@~0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" dependencies: prr "~1.0.1" error-ex@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" dependencies: is-arrayish "^0.2.1" @@ -2523,9 +2630,9 @@ errorhandler@^1.5.0: accepts "~1.3.3" escape-html "~1.0.3" -es-abstract@^1.6.1: - version "1.11.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.11.0.tgz#cce87d518f0496893b1a30cd8461835535480681" +es-abstract@^1.10.0, es-abstract@^1.5.0, es-abstract@^1.5.1, es-abstract@^1.6.1: + version "1.12.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.12.0.tgz#9dbbdd27c6856f0001421ca18782d786bf8a6165" dependencies: es-to-primitive "^1.1.1" function-bind "^1.1.1" @@ -2549,9 +2656,9 @@ escape-string-regexp@^1.0.2, 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" -escodegen@^1.6.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.1.tgz#dbae17ef96c8e4bedb1356f4504fa4cc2f7cb7e2" +escodegen@^1.9.1: + version "1.11.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.0.tgz#b27a9389481d5bfd5bec76f7bb1eb3f8f4556589" dependencies: esprima "^3.1.3" estraverse "^4.2.0" @@ -2565,8 +2672,8 @@ esprima@^3.1.3: resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" esprima@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" estraverse@^4.2.0: version "4.2.0" @@ -2600,10 +2707,10 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: safe-buffer "^5.1.1" exec-sh@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.1.tgz#163b98a6e89e6b65b47c2a28d215bc1f63989c38" + version "0.2.2" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.2.tgz#2a5e7ffcbd7d0ba2755bdecb16e5a427dfbdec36" dependencies: - merge "^1.1.3" + merge "^1.2.0" execa@^0.7.0: version "0.7.0" @@ -2617,7 +2724,7 @@ execa@^0.7.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -exit@0.1.2: +exit@0.1.2, exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -2645,6 +2752,17 @@ expand-range@^1.8.1: dependencies: fill-range "^2.1.0" +expect@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-23.5.0.tgz#18999a0eef8f8acf99023fde766d9c323c2562ed" + dependencies: + ansi-styles "^3.2.0" + jest-diff "^23.5.0" + jest-get-type "^22.1.0" + jest-matcher-utils "^23.5.0" + jest-message-util "^23.4.0" + jest-regex-util "^23.3.0" + extend-shallow@^1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-1.1.4.tgz#19d6bf94dfc09d76ba711f39b872d21ff4dd9071" @@ -2664,17 +2782,13 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@~3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" - extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" external-editor@^2.0.4: version "2.2.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5" + resolved "http://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5" dependencies: chardet "^0.4.0" iconv-lite "^0.4.17" @@ -2727,12 +2841,6 @@ fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" -fb-watchman@^1.8.0: - version "1.9.2" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-1.9.2.tgz#a24cf47827f82d38fb59a69ad70b76e3b6ae7383" - dependencies: - bser "1.0.2" - fb-watchman@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58" @@ -2754,7 +2862,7 @@ fbjs-scripts@^0.8.1: semver "^5.1.0" through2 "^2.0.0" -fbjs@0.8.16, fbjs@^0.8.14, fbjs@^0.8.16, fbjs@^0.8.9: +fbjs@0.8.16: version "0.8.16" resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db" dependencies: @@ -2766,6 +2874,18 @@ fbjs@0.8.16, fbjs@^0.8.14, fbjs@^0.8.16, fbjs@^0.8.9: setimmediate "^1.0.5" ua-parser-js "^0.7.9" +fbjs@^0.8.14, fbjs@^0.8.16, fbjs@^0.8.9: + version "0.8.17" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd" + dependencies: + core-js "^1.0.0" + isomorphic-fetch "^2.1.1" + loose-envify "^1.0.0" + object-assign "^4.1.0" + promise "^7.1.1" + setimmediate "^1.0.5" + ua-parser-js "^0.7.18" + figures@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" @@ -2840,8 +2960,8 @@ findit@^2.0.0: resolved "https://registry.yarnpkg.com/findit/-/findit-2.0.0.tgz#6509f0126af4c178551cfa99394e032e13a4d56e" follow-redirects@^1.3.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.0.tgz#234f49cf770b7f35b40e790f636ceba0c3a0ab77" + version "1.5.7" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.7.tgz#a39e4804dacb90202bca76a9e2ac10433ca6a69a" dependencies: debug "^3.1.0" @@ -2855,7 +2975,7 @@ for-own@^0.1.4: dependencies: for-in "^1.0.1" -foreach@^2.0.5, foreach@~2.0.1: +foreach@~2.0.1: version "2.0.5" resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" @@ -2863,7 +2983,7 @@ forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" -form-data@~2.3.1, form-data@~2.3.2: +form-data@~2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099" dependencies: @@ -2918,7 +3038,7 @@ function-bind@^1.0.2, function-bind@^1.1.0, function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" -function.prototype.name@^1.0.3: +function.prototype.name@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.0.tgz#8bd763cc0af860a859cc5d49384d74b932cd2327" dependencies: @@ -2956,8 +3076,8 @@ gauge@~2.7.3: wide-align "^1.1.0" get-caller-file@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" + version "1.0.3" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" get-stream@^3.0.0: version "3.0.0" @@ -2997,9 +3117,9 @@ glob@7.0.6: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.3, glob@^7.0.5, glob@^7.1.1: - version "7.1.2" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" +glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: + version "7.1.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -3015,6 +3135,10 @@ global@^4.3.0, global@^4.3.2: min-document "^2.19.0" process "~0.5.1" +globals@^10.0.0: + version "10.4.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-10.4.0.tgz#5c477388b128a9e4c5c5d01c7a2aca68c68b2da7" + globals@^11.1.0: version "11.7.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.7.0.tgz#a583faa43055b1aca771914bf68258e2fc125673" @@ -3032,26 +3156,19 @@ growly@^1.3.0: resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" handlebars@^4.0.3: - version "4.0.11" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.11.tgz#630a35dfe0294bc281edae6ffc5d329fc7982dcc" + version "4.0.12" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.12.tgz#2c15c8a96d46da5e266700518ba8cb8d919d5bc5" dependencies: - async "^1.4.0" + async "^2.5.0" optimist "^0.6.1" - source-map "^0.4.4" + source-map "^0.6.1" optionalDependencies: - uglify-js "^2.6" + uglify-js "^3.1.4" har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" -har-validator@~5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" - dependencies: - ajv "^5.1.0" - har-schema "^2.0.0" - har-validator@~5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.0.tgz#44657f5688a22cfd4b72486e81b3a3fb11742c29" @@ -3108,11 +3225,11 @@ has-values@^1.0.0: is-number "^3.0.0" kind-of "^4.0.0" -has@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" +has@^1.0.1, has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" dependencies: - function-bind "^1.0.2" + function-bind "^1.1.1" hash-base@^3.0.0: version "3.0.4" @@ -3122,11 +3239,11 @@ hash-base@^3.0.0: safe-buffer "^5.0.1" hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846" + version "1.1.5" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.5.tgz#e38ab4b85dfb1e0c40fe9265c0e9b54854c23812" dependencies: inherits "^2.0.3" - minimalistic-assert "^1.0.0" + minimalistic-assert "^1.0.1" hmac-drbg@^1.0.0: version "1.0.1" @@ -3137,8 +3254,8 @@ hmac-drbg@^1.0.0: minimalistic-crypto-utils "^1.0.1" hoist-non-react-statics@^2.3.1, hoist-non-react-statics@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.0.tgz#d2ca2dfc19c5a91c5a6615ce8e564ef0347e2a40" + version "2.5.5" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47" home-or-tmp@^2.0.0: version "2.0.0" @@ -3152,10 +3269,10 @@ home-or-tmp@^3.0.0: resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-3.0.0.tgz#57a8fe24cf33cdd524860a15821ddc25c86671fb" hosted-git-info@^2.1.4: - version "2.6.0" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.6.0.tgz#23235b29ab230c576aab0d4f13fc046b0b038222" + version "2.7.1" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" -html-encoding-sniffer@^1.0.1: +html-encoding-sniffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" dependencies: @@ -3180,7 +3297,7 @@ htmlparser2@^3.9.1: http-errors@~1.6.2: version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" + resolved "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" dependencies: depd "~1.1.2" inherits "2.0.3" @@ -3201,21 +3318,23 @@ https-browserify@0.0.1: i18next@^10.1.0, i18next@^10.2.2: version "10.6.0" - resolved "https://registry.yarnpkg.com/i18next/-/i18next-10.6.0.tgz#90ffd9f9bc617f34b9a12e037260f524445f7684" + resolved "http://registry.npmjs.org/i18next/-/i18next-10.6.0.tgz#90ffd9f9bc617f34b9a12e037260f524445f7684" -iconv-lite@0.4.19: - version "0.4.19" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" - -iconv-lite@^0.4.17, iconv-lite@^0.4.4, iconv-lite@~0.4.13: +iconv-lite@0.4.23: version "0.4.23" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" dependencies: safer-buffer ">= 2.1.2 < 3" +iconv-lite@^0.4.17, iconv-lite@^0.4.4, iconv-lite@~0.4.13: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + dependencies: + safer-buffer ">= 2.1.2 < 3" + ieee754@^1.1.4: - version "1.1.11" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.11.tgz#c16384ffe00f5b7835824e67b6f2bd44a5229455" + version "1.1.12" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.12.tgz#50bf24e5b9c8bb98af4964c941cdb0918da7b60b" ignore-walk@^3.0.1: version "3.0.1" @@ -3224,8 +3343,15 @@ ignore-walk@^3.0.1: minimatch "^3.0.4" image-size@^0.6.0: - version "0.6.2" - resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.6.2.tgz#8ee316d4298b028b965091b673d5f1537adee5b4" + version "0.6.3" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.6.3.tgz#e7e5c65bb534bd7cdcedd6cb5166272a85f75fb2" + +import-local@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" + dependencies: + pkg-dir "^2.0.0" + resolve-cwd "^2.0.0" imurmurhash@^0.1.4: version "0.1.4" @@ -3273,7 +3399,7 @@ inquirer@^3.0.6: strip-ansi "^4.0.0" through "^2.3.6" -invariant@^2.0.0, invariant@^2.2.0, invariant@^2.2.2: +invariant@^2.0.0, invariant@^2.2.0, invariant@^2.2.2, invariant@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" dependencies: @@ -3334,8 +3460,8 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" is-arrayish@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.1.tgz#c2dfc386abaa0c3e33c48db3fe87059e69065efd" + version "0.3.2" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" is-boolean-object@^1.0.0: version "1.0.0" @@ -3351,15 +3477,15 @@ is-builtin-module@^1.0.0: dependencies: builtin-modules "^1.0.0" -is-callable@^1.1.1, is-callable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" +is-callable@^1.1.1, is-callable@^1.1.3, is-callable@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" is-ci@^1.0.10: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.1.0.tgz#247e4162e7860cebbdaf30b774d6b0ac7dcfe7a5" + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" dependencies: - ci-info "^1.0.0" + ci-info "^1.5.0" is-data-descriptor@^0.1.4: version "0.1.4" @@ -3433,6 +3559,10 @@ is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" +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" + 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" @@ -3463,12 +3593,6 @@ is-object@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/is-object/-/is-object-0.1.2.tgz#00efbc08816c33cfc4ac8251d132e10dc65098d7" -is-odd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24" - dependencies: - is-number "^4.0.0" - is-plain-object@^2.0.1, 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" @@ -3566,142 +3690,143 @@ isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" -istanbul-api@^1.1.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.3.1.tgz#4c3b05d18c0016d1022e079b98dc82c40f488954" +istanbul-api@^1.3.1: + version "1.3.7" + resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.3.7.tgz#a86c770d2b03e11e3f778cd7aedd82d2722092aa" dependencies: async "^2.1.4" - compare-versions "^3.1.0" fileset "^2.0.2" - istanbul-lib-coverage "^1.2.0" - istanbul-lib-hook "^1.2.0" - istanbul-lib-instrument "^1.10.1" - istanbul-lib-report "^1.1.4" - istanbul-lib-source-maps "^1.2.4" - istanbul-reports "^1.3.0" + 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.0.1, istanbul-lib-coverage@^1.1.2, istanbul-lib-coverage@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.0.tgz#f7d8f2e42b97e37fe796114cb0f9d68b5e3a4341" +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" -istanbul-lib-hook@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.2.0.tgz#ae556fd5a41a6e8efa0b1002b1e416dfeaf9816c" +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" dependencies: append-transform "^0.4.0" -istanbul-lib-instrument@^1.10.1, istanbul-lib-instrument@^1.4.2: - version "1.10.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.1.tgz#724b4b6caceba8692d3f1f9d0727e279c401af7b" +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" 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.0" + istanbul-lib-coverage "^1.2.1" semver "^5.3.0" -istanbul-lib-report@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.4.tgz#e886cdf505c4ebbd8e099e4396a90d0a28e2acb5" +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" dependencies: - istanbul-lib-coverage "^1.2.0" + istanbul-lib-coverage "^1.2.1" mkdirp "^0.5.1" path-parse "^1.0.5" supports-color "^3.1.2" -istanbul-lib-source-maps@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.3.tgz#20fb54b14e14b3fb6edb6aca3571fd2143db44e6" - dependencies: - debug "^3.1.0" - istanbul-lib-coverage "^1.1.2" - mkdirp "^0.5.1" - rimraf "^2.6.1" - source-map "^0.5.3" - -istanbul-lib-source-maps@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.4.tgz#cc7ccad61629f4efff8e2f78adb8c522c9976ec7" +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" dependencies: debug "^3.1.0" - istanbul-lib-coverage "^1.2.0" + istanbul-lib-coverage "^1.2.1" mkdirp "^0.5.1" rimraf "^2.6.1" source-map "^0.5.3" -istanbul-reports@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.3.0.tgz#2f322e81e1d9520767597dca3c20a0cce89a3554" +istanbul-reports@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.5.1.tgz#97e4dbf3b515e8c484caea15d6524eebd3ff4e1a" dependencies: handlebars "^4.0.3" -jest-changed-files@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-20.0.3.tgz#9394d5cc65c438406149bef1bf4d52b68e03e3f8" +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" + dependencies: + throat "^4.0.0" -jest-cli@^20.0.4: - version "20.0.4" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-20.0.4.tgz#e532b19d88ae5bc6c417e8b0593a6fe954b1dc93" +jest-cli@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-23.5.0.tgz#d316b8e34a38a610a1efc4f0403d8ef8a55e4492" dependencies: - ansi-escapes "^1.4.0" - callsites "^2.0.0" - chalk "^1.1.3" + ansi-escapes "^3.0.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.1.1" - istanbul-lib-coverage "^1.0.1" - istanbul-lib-instrument "^1.4.2" - istanbul-lib-source-maps "^1.1.0" - jest-changed-files "^20.0.3" - jest-config "^20.0.4" - jest-docblock "^20.0.3" - jest-environment-jsdom "^20.0.3" - jest-haste-map "^20.0.4" - jest-jasmine2 "^20.0.4" - jest-message-util "^20.0.3" - jest-regex-util "^20.0.3" - jest-resolve-dependencies "^20.0.3" - jest-runtime "^20.0.4" - jest-snapshot "^20.0.3" - jest-util "^20.0.3" + 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.5.0" + jest-environment-jsdom "^23.4.0" + jest-get-type "^22.1.0" + jest-haste-map "^23.5.0" + jest-message-util "^23.4.0" + jest-regex-util "^23.3.0" + jest-resolve-dependencies "^23.5.0" + jest-runner "^23.5.0" + jest-runtime "^23.5.0" + jest-snapshot "^23.5.0" + jest-util "^23.4.0" + jest-validate "^23.5.0" + jest-watcher "^23.4.0" + jest-worker "^23.2.0" micromatch "^2.3.11" - node-notifier "^5.0.2" - pify "^2.3.0" + node-notifier "^5.2.1" + prompts "^0.1.9" + realpath-native "^1.0.0" + rimraf "^2.5.4" slash "^1.0.0" - string-length "^1.0.1" - throat "^3.0.0" + string-length "^2.0.0" + strip-ansi "^4.0.0" which "^1.2.12" - worker-farm "^1.3.1" - yargs "^7.0.2" + yargs "^11.0.0" -jest-config@^20.0.4: - version "20.0.4" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-20.0.4.tgz#e37930ab2217c913605eff13e7bd763ec48faeea" +jest-config@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-23.5.0.tgz#3770fba03f7507ee15f3b8867c742e48f31a9773" dependencies: - chalk "^1.1.3" + babel-core "^6.0.0" + babel-jest "^23.4.2" + chalk "^2.0.1" glob "^7.1.1" - jest-environment-jsdom "^20.0.3" - jest-environment-node "^20.0.3" - jest-jasmine2 "^20.0.4" - jest-matcher-utils "^20.0.3" - jest-regex-util "^20.0.3" - jest-resolve "^20.0.4" - jest-validate "^20.0.3" - pretty-format "^20.0.3" - -jest-diff@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-20.0.3.tgz#81f288fd9e675f0fb23c75f1c2b19445fe586617" + jest-environment-jsdom "^23.4.0" + jest-environment-node "^23.4.0" + jest-get-type "^22.1.0" + jest-jasmine2 "^23.5.0" + jest-regex-util "^23.3.0" + jest-resolve "^23.5.0" + jest-util "^23.4.0" + jest-validate "^23.5.0" + micromatch "^2.3.11" + pretty-format "^23.5.0" + +jest-diff@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-23.5.0.tgz#250651a433dd0050290a07642946cc9baaf06fba" dependencies: - chalk "^1.1.3" + chalk "^2.0.1" diff "^3.2.0" - jest-matcher-utils "^20.0.3" - pretty-format "^20.0.3" + jest-get-type "^22.1.0" + pretty-format "^23.5.0" jest-docblock@23.0.1: version "23.0.1" @@ -3709,30 +3834,37 @@ jest-docblock@23.0.1: dependencies: detect-newline "^2.1.0" -jest-docblock@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-20.0.3.tgz#17bea984342cc33d83c50fbe1545ea0efaa44712" - -jest-docblock@^23.0.1: +jest-docblock@^23.0.1, jest-docblock@^23.2.0: version "23.2.0" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.2.0.tgz#f085e1f18548d99fdd69b20207e6fd55d91383a7" dependencies: detect-newline "^2.1.0" -jest-environment-jsdom@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-20.0.3.tgz#048a8ac12ee225f7190417713834bb999787de99" +jest-each@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-23.5.0.tgz#77f7e2afe6132a80954b920006e78239862b10ba" dependencies: - jest-mock "^20.0.3" - jest-util "^20.0.3" - jsdom "^9.12.0" + chalk "^2.0.1" + pretty-format "^23.5.0" -jest-environment-node@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-20.0.3.tgz#d488bc4612af2c246e986e8ae7671a099163d403" +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" dependencies: - jest-mock "^20.0.3" - jest-util "^20.0.3" + jest-mock "^23.2.0" + jest-util "^23.4.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" + dependencies: + jest-mock "^23.2.0" + jest-util "^23.4.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" jest-haste-map@23.1.0: version "23.1.0" @@ -3746,96 +3878,126 @@ jest-haste-map@23.1.0: micromatch "^2.3.11" sane "^2.0.0" -jest-haste-map@^20.0.4: - version "20.0.5" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-20.0.5.tgz#abad74efb1a005974a7b6517e11010709cab9112" +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" dependencies: fb-watchman "^2.0.0" graceful-fs "^4.1.11" - jest-docblock "^20.0.3" + invariant "^2.2.4" + jest-docblock "^23.2.0" + jest-serializer "^23.0.1" + jest-worker "^23.2.0" micromatch "^2.3.11" - sane "~1.6.0" - worker-farm "^1.3.1" - -jest-jasmine2@^20.0.4: - version "20.0.4" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-20.0.4.tgz#fcc5b1411780d911d042902ef1859e852e60d5e1" - dependencies: - chalk "^1.1.3" - graceful-fs "^4.1.11" - jest-diff "^20.0.3" - jest-matcher-utils "^20.0.3" - jest-matchers "^20.0.3" - jest-message-util "^20.0.3" - jest-snapshot "^20.0.3" - once "^1.4.0" - p-map "^1.1.1" - -jest-matcher-utils@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-20.0.3.tgz#b3a6b8e37ca577803b0832a98b164f44b7815612" - dependencies: - chalk "^1.1.3" - pretty-format "^20.0.3" - -jest-matchers@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-matchers/-/jest-matchers-20.0.3.tgz#ca69db1c32db5a6f707fa5e0401abb55700dfd60" - dependencies: - jest-diff "^20.0.3" - jest-matcher-utils "^20.0.3" - jest-message-util "^20.0.3" - jest-regex-util "^20.0.3" + sane "^2.0.0" -jest-message-util@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-20.0.3.tgz#6aec2844306fcb0e6e74d5796c1006d96fdd831c" +jest-jasmine2@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-23.5.0.tgz#05fe7f1788e650eeb5a03929e6461ea2e9f3db53" dependencies: - chalk "^1.1.3" + babel-traverse "^6.0.0" + chalk "^2.0.1" + co "^4.6.0" + expect "^23.5.0" + is-generator-fn "^1.0.0" + jest-diff "^23.5.0" + jest-each "^23.5.0" + jest-matcher-utils "^23.5.0" + jest-message-util "^23.4.0" + jest-snapshot "^23.5.0" + jest-util "^23.4.0" + pretty-format "^23.5.0" + +jest-leak-detector@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-23.5.0.tgz#14ac2a785bd625160a2ea968fd5d98b7dcea3e64" + dependencies: + pretty-format "^23.5.0" + +jest-matcher-utils@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-23.5.0.tgz#0e2ea67744cab78c9ab15011c4d888bdd3e49e2a" + dependencies: + chalk "^2.0.1" + jest-get-type "^22.1.0" + pretty-format "^23.5.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" + dependencies: + "@babel/code-frame" "^7.0.0-beta.35" + chalk "^2.0.1" micromatch "^2.3.11" slash "^1.0.0" + stack-utils "^1.0.1" -jest-mock@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-20.0.3.tgz#8bc070e90414aa155c11a8d64c869a0d5c71da59" +jest-mock@^23.2.0: + version "23.2.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-23.2.0.tgz#ad1c60f29e8719d47c26e1138098b6d18b261134" -jest-regex-util@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-20.0.3.tgz#85bbab5d133e44625b19faf8c6aa5122d085d762" +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" -jest-resolve-dependencies@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-20.0.3.tgz#6e14a7b717af0f2cb3667c549de40af017b1723a" +jest-resolve-dependencies@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-23.5.0.tgz#10c4d135beb9d2256de1fedc7094916c3ad74af7" dependencies: - jest-regex-util "^20.0.3" + jest-regex-util "^23.3.0" + jest-snapshot "^23.5.0" -jest-resolve@^20.0.4: - version "20.0.4" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-20.0.4.tgz#9448b3e8b6bafc15479444c6499045b7ffe597a5" +jest-resolve@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-23.5.0.tgz#3b8e7f67e84598f0caf63d1530bd8534a189d0e6" dependencies: - browser-resolve "^1.11.2" - is-builtin-module "^1.0.0" - resolve "^1.3.2" + browser-resolve "^1.11.3" + chalk "^2.0.1" + realpath-native "^1.0.0" -jest-runtime@^20.0.4: - version "20.0.4" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-20.0.4.tgz#a2c802219c4203f754df1404e490186169d124d8" +jest-runner@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-23.5.0.tgz#570f7a044da91648b5bb9b6baacdd511076c71d7" + dependencies: + exit "^0.1.2" + graceful-fs "^4.1.11" + jest-config "^23.5.0" + jest-docblock "^23.2.0" + jest-haste-map "^23.5.0" + jest-jasmine2 "^23.5.0" + jest-leak-detector "^23.5.0" + jest-message-util "^23.4.0" + jest-runtime "^23.5.0" + jest-util "^23.4.0" + jest-worker "^23.2.0" + source-map-support "^0.5.6" + throat "^4.0.0" + +jest-runtime@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-23.5.0.tgz#eb503525a196dc32f2f9974e3482d26bdf7b63ce" dependencies: babel-core "^6.0.0" - babel-jest "^20.0.3" - babel-plugin-istanbul "^4.0.0" - chalk "^1.1.3" + babel-plugin-istanbul "^4.1.6" + 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 "^20.0.4" - jest-haste-map "^20.0.4" - jest-regex-util "^20.0.3" - jest-resolve "^20.0.4" - jest-util "^20.0.3" - json-stable-stringify "^1.0.1" + jest-config "^23.5.0" + jest-haste-map "^23.5.0" + jest-message-util "^23.4.0" + jest-regex-util "^23.3.0" + jest-resolve "^23.5.0" + jest-snapshot "^23.5.0" + jest-util "^23.4.0" + jest-validate "^23.5.0" micromatch "^2.3.11" + realpath-native "^1.0.0" + slash "^1.0.0" strip-bom "3.0.0" - yargs "^7.0.2" + write-file-atomic "^2.1.0" + yargs "^11.0.0" jest-serializer-enzyme@^1.0.0: version "1.0.0" @@ -3847,37 +4009,50 @@ 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" -jest-snapshot@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-20.0.3.tgz#5b847e1adb1a4d90852a7f9f125086e187c76566" +jest-snapshot@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-23.5.0.tgz#cc368ebd8513e1175e2a7277f37a801b7358ae79" dependencies: - chalk "^1.1.3" - jest-diff "^20.0.3" - jest-matcher-utils "^20.0.3" - jest-util "^20.0.3" + babel-types "^6.0.0" + chalk "^2.0.1" + jest-diff "^23.5.0" + jest-matcher-utils "^23.5.0" + jest-message-util "^23.4.0" + jest-resolve "^23.5.0" + mkdirp "^0.5.1" natural-compare "^1.4.0" - pretty-format "^20.0.3" + pretty-format "^23.5.0" + semver "^5.5.0" -jest-util@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-20.0.3.tgz#0c07f7d80d82f4e5a67c6f8b9c3fe7f65cfd32ad" +jest-util@^23.4.0: + version "23.4.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-23.4.0.tgz#4d063cb927baf0a23831ff61bec2cbbf49793561" dependencies: - chalk "^1.1.3" + callsites "^2.0.0" + chalk "^2.0.1" graceful-fs "^4.1.11" - jest-message-util "^20.0.3" - jest-mock "^20.0.3" - jest-validate "^20.0.3" - leven "^2.1.0" + is-ci "^1.0.10" + jest-message-util "^23.4.0" mkdirp "^0.5.1" + slash "^1.0.0" + source-map "^0.6.0" -jest-validate@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-20.0.3.tgz#d0cfd1de4f579f298484925c280f8f1d94ec3cab" +jest-validate@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-23.5.0.tgz#f5df8f761cf43155e1b2e21d6e9de8a2852d0231" dependencies: - chalk "^1.1.3" - jest-matcher-utils "^20.0.3" + chalk "^2.0.1" + jest-get-type "^22.1.0" leven "^2.1.0" - pretty-format "^20.0.3" + pretty-format "^23.5.0" + +jest-watcher@^23.4.0: + version "23.4.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-23.4.0.tgz#d2e28ce74f8dad6c6afc922b92cabef6ed05c91c" + dependencies: + ansi-escapes "^3.0.0" + chalk "^2.0.1" + string-length "^2.0.0" jest-worker@23.0.1: version "23.0.1" @@ -3885,25 +4060,30 @@ jest-worker@23.0.1: dependencies: merge-stream "^1.0.1" -jest-worker@^23.0.1: +jest-worker@^23.0.1, jest-worker@^23.2.0: version "23.2.0" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-23.2.0.tgz#faf706a8da36fae60eb26957257fa7b5d8ea02b9" dependencies: merge-stream "^1.0.1" -jest@20.0.4: - version "20.0.4" - resolved "https://registry.yarnpkg.com/jest/-/jest-20.0.4.tgz#3dd260c2989d6dad678b1e9cc4d91944f6d602ac" +jest@23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/jest/-/jest-23.5.0.tgz#80de353d156ea5ea4a7332f7962ac79135fbc62e" dependencies: - jest-cli "^20.0.4" + import-local "^1.0.0" + jest-cli "^23.5.0" js-tokens@^3.0.0, js-tokens@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" +"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" + js-yaml@^3.7.0: - version "3.11.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.11.0.tgz#597c1a8bd57152f26d622ce4117851a51f5ebaef" + version "3.12.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -3912,29 +4092,36 @@ jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" -jsdom@^9.12.0: - version "9.12.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-9.12.0.tgz#e8c546fffcb06c00d4833ca84410fed7f8a097d4" +jsdom@^11.5.1: + version "11.12.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.12.0.tgz#1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8" dependencies: - abab "^1.0.3" - acorn "^4.0.4" - acorn-globals "^3.1.0" + abab "^2.0.0" + acorn "^5.5.3" + acorn-globals "^4.1.0" array-equal "^1.0.0" - content-type-parser "^1.0.1" cssom ">= 0.3.2 < 0.4.0" - cssstyle ">= 0.2.37 < 0.3.0" - escodegen "^1.6.1" - html-encoding-sniffer "^1.0.1" - nwmatcher ">= 1.3.9 < 2.0.0" - parse5 "^1.5.1" - request "^2.79.0" - sax "^1.2.1" - symbol-tree "^3.2.1" - tough-cookie "^2.3.2" - webidl-conversions "^4.0.0" - whatwg-encoding "^1.0.1" - whatwg-url "^4.3.0" - xml-name-validator "^2.0.1" + cssstyle "^1.0.0" + data-urls "^1.0.0" + domexception "^1.0.1" + escodegen "^1.9.1" + html-encoding-sniffer "^1.0.2" + left-pad "^1.3.0" + nwsapi "^2.0.7" + parse5 "4.0.0" + pn "^1.1.0" + request "^2.87.0" + request-promise-native "^1.0.5" + sax "^1.2.4" + symbol-tree "^3.2.2" + tough-cookie "^2.3.4" + w3c-hr-time "^1.0.1" + webidl-conversions "^4.0.2" + whatwg-encoding "^1.0.3" + whatwg-mimetype "^2.1.0" + whatwg-url "^6.4.1" + ws "^5.2.0" + xml-name-validator "^3.0.0" jsesc@^1.3.0: version "1.3.0" @@ -3976,7 +4163,7 @@ json5@^0.5.0, json5@^0.5.1: jsonfile@^2.1.0: version "2.4.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" + resolved "http://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" optionalDependencies: graceful-fs "^4.1.6" @@ -4038,9 +4225,9 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" +kleur@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-2.0.2.tgz#b704f4944d95e255d038f0cb05fb8a602c55a300" lcid@^1.0.0: version "1.0.0" @@ -4048,7 +4235,7 @@ lcid@^1.0.0: dependencies: invert-kv "^1.0.0" -left-pad@^1.1.3: +left-pad@^1.1.3, left-pad@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" @@ -4164,6 +4351,10 @@ lodash-es@^4.17.4, lodash-es@^4.17.5, lodash-es@^4.2.1: version "4.17.10" resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.10.tgz#62cd7104cdf5dd87f235a837f0ede0e8e5117e05" +lodash.escape@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-4.0.1.tgz#c9044690c21e04294beaa517712fded1fa88de98" + lodash.filter@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz#668b1d4981603ae1cc5a6fa760143e480b4c4ace" @@ -4172,6 +4363,10 @@ lodash.flattendeep@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" +lodash.isequal@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" + lodash.isnil@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/lodash.isnil/-/lodash.isnil-4.0.0.tgz#49e28cd559013458c814c5479d3c663a21bfaa6c" @@ -4200,23 +4395,23 @@ lodash.range@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash.range/-/lodash.range-3.2.0.tgz#f461e588f66683f7eadeade513e38a69a565a15d" +lodash.sortby@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" + lodash.throttle@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4" -lodash@4.x.x, lodash@^4.0.0, lodash@^4.15.0, lodash@^4.16.6, lodash@^4.17.10, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.1: +lodash@4.x.x, lodash@^4.0.0, lodash@^4.13.1, lodash@^4.15.0, lodash@^4.16.6, lodash@^4.17.10, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.1: version "4.17.10" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" -longest@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" - loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" dependencies: - js-tokens "^3.0.0" + js-tokens "^3.0.0 || ^4.0.0" lottie-ios@^2.1.3, lottie-ios@^2.1.5: version "2.5.0" @@ -4261,8 +4456,8 @@ map-visit@^1.0.0: object-visit "^1.0.0" markdown-it@^8.4.0: - version "8.4.1" - resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-8.4.1.tgz#206fe59b0e4e1b78a7c73250af9b34a4ad0aaf44" + version "8.4.2" + resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-8.4.2.tgz#386f98998dc15a37722aa7722084f4020bdd9b54" dependencies: argparse "^1.0.7" entities "~1.1.1" @@ -4297,7 +4492,7 @@ merge-stream@^1.0.1: dependencies: readable-stream "^2.0.1" -merge@^1.1.3: +merge@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da" @@ -4458,7 +4653,7 @@ metro@^0.38.1: xpipe "^1.0.5" yargs "^9.0.0" -micromatch@^2.1.5, micromatch@^2.3.11: +micromatch@^2.3.11: version "2.3.11" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" dependencies: @@ -4476,7 +4671,7 @@ micromatch@^2.1.5, micromatch@^2.3.11: parse-glob "^3.0.4" regex-cache "^0.4.2" -micromatch@^3.1.4, micromatch@^3.1.8: +micromatch@^3.1.4: version "3.1.10" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" dependencies: @@ -4509,23 +4704,13 @@ mime-db@~1.23.0: version "1.23.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.23.0.tgz#a31b4070adaea27d732ea333740a64d0ec9a6659" -mime-db@~1.33.0: - version "1.33.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" - mime-types@2.1.11: version "2.1.11" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.11.tgz#c259c471bda808a85d6cd193b430a5fae4473b3c" dependencies: - mime-db "~1.23.0" - -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18: - version "2.1.18" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" - dependencies: - mime-db "~1.33.0" + mime-db "~1.23.0" -mime-types@~2.1.19: +mime-types@^2.1.12, mime-types@~2.1.18, mime-types@~2.1.19: version "2.1.20" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.20.tgz#930cb719d571e903738520f8470911548ca2cc19" dependencies: @@ -4549,7 +4734,7 @@ min-document@^2.19.0: dependencies: dom-walk "^0.1.0" -minimalistic-assert@^1.0.0: +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" @@ -4565,30 +4750,23 @@ minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: minimist@0.0.8: version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + resolved "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" minimist@^1.1.1, minimist@^1.1.2, minimist@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + resolved "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" minimist@~0.0.1: version "0.0.10" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" + resolved "http://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" -minipass@^2.0.2: +minipass@^2.0.2, minipass@^2.2.1, minipass@^2.3.3: version "2.3.4" resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.4.tgz#4768d7605ed6194d6d576169b9e12ef71e9d9957" dependencies: safe-buffer "^5.1.2" yallist "^3.0.0" -minipass@^2.2.1, minipass@^2.2.4: - version "2.3.3" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.3.tgz#a7dcc8b7b833f5d368759cce544dccb55f50f233" - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - minizlib@^1.0.3, minizlib@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.1.0.tgz#11e13658ce46bc3a70a267aac58359d1e0c29ceb" @@ -4604,7 +4782,7 @@ mixin-deep@^1.2.0: mkdirp@^0.5.0, mkdirp@^0.5.1: version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + resolved "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: minimist "0.0.8" @@ -4612,6 +4790,10 @@ moment@^2.22.2: version "2.22.2" resolved "https://registry.yarnpkg.com/moment/-/moment-2.22.2.tgz#3c257f9839fc0e93ff53149632239eb90783ff66" +moo@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/moo/-/moo-0.4.3.tgz#3f847a26f31cf625a956a87f2b10fbc013bfd10e" + morgan@^1.9.0: version "1.9.0" resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.9.0.tgz#d01fa6c65859b76fcf31b3cb53a3821a311d8051" @@ -4631,19 +4813,18 @@ mute-stream@0.0.7: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" nan@^2.9.2: - version "2.10.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.10.0.tgz#96d0cd610ebd58d4b4de9cc0c6828cda99c7548f" + version "2.11.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.11.0.tgz#574e360e4d954ab16966ec102c0c049fd961a099" nanomatch@^1.2.9: - version "1.2.9" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.9.tgz#879f7150cb2dab7a471259066c104eee6e0fa7c2" + version "1.2.13" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" dependencies: arr-diff "^4.0.0" array-unique "^0.3.2" define-property "^2.0.2" extend-shallow "^3.0.2" fragment-cache "^0.2.1" - is-odd "^2.0.0" is-windows "^1.0.2" kind-of "^6.0.2" object.pick "^1.3.0" @@ -4660,17 +4841,18 @@ ncp@^2.0.0: resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" nearley@^2.7.10: - version "2.13.0" - resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.13.0.tgz#6e7b0f4e68bfc3e74c99eaef2eda39e513143439" + version "2.15.1" + resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.15.1.tgz#965e4e6ec9ed6b80fc81453e161efbcebb36d247" dependencies: + moo "^0.4.3" nomnom "~1.6.2" railroad-diagrams "^1.0.0" randexp "0.4.6" semver "^5.4.1" -needle@^2.2.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.1.tgz#b5e325bd3aae8c2678902fa296f729455d1d3a7d" +needle@^2.2.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.2.tgz#1120ca4c41f2fcc6976fd28a8968afe239929418" dependencies: debug "^2.1.2" iconv-lite "^0.4.4" @@ -4680,6 +4862,10 @@ negotiator@0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + node-fetch@^1.0.1, node-fetch@^1.3.3: version "1.7.3" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" @@ -4695,7 +4881,7 @@ node-modules-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" -node-notifier@^5.0.2, node-notifier@^5.2.1: +node-notifier@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.2.1.tgz#fa313dd08f5517db0e2502e5758d664ac69f9dea" dependencies: @@ -4705,16 +4891,16 @@ node-notifier@^5.0.2, node-notifier@^5.2.1: which "^1.3.0" node-pre-gyp@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.0.tgz#6e4ef5bb5c5203c6552448828c852c40111aac46" + version "0.10.3" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz#3070040716afdc778747b61b6887bf78880b80fc" dependencies: detect-libc "^1.0.2" mkdirp "^0.5.1" - needle "^2.2.0" + needle "^2.2.1" nopt "^4.0.1" npm-packlist "^1.1.6" npmlog "^4.0.2" - rc "^1.1.7" + rc "^1.2.7" rimraf "^2.6.1" semver "^5.3.0" tar "^4" @@ -4774,7 +4960,7 @@ normalize-package-data@^2.3.2: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-path@^2.0.0, normalize-path@^2.0.1, normalize-path@^2.1.1: +normalize-path@^2.0.1, normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" dependencies: @@ -4785,12 +4971,12 @@ notp@^2.0.3: resolved "https://registry.yarnpkg.com/notp/-/notp-2.0.3.tgz#a9fd11e25cfe1ccb39fc6689544ee4c10ef9a577" npm-bundled@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.3.tgz#7e71703d973af3370a9591bafe3a63aca0be2308" + version "1.0.5" + resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.5.tgz#3c1732b7ba936b3a10325aef616467c0ccbcc979" npm-packlist@^1.1.6: - version "1.1.10" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.10.tgz#1039db9e985727e464df066f4cf0ab6ef85c398a" + version "1.1.11" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.11.tgz#84e8c683cbe7867d34b1d357d893ce29e28a02de" dependencies: ignore-walk "^3.0.1" npm-bundled "^1.0.1" @@ -4828,13 +5014,9 @@ number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" -"nwmatcher@>= 1.3.9 < 2.0.0": - version "1.4.4" - resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.4.4.tgz#2285631f34a95f0d0395cd900c96ed39b58f346e" - -oauth-sign@~0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" +nwsapi@^2.0.7: + version "2.0.9" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.0.9.tgz#77ac0cdfdcad52b6a1151a84e73254edc33ed016" oauth-sign@~0.9.0: version "0.9.0" @@ -4852,7 +5034,7 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-inspect@^1.5.0: +object-inspect@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b" @@ -4860,9 +5042,9 @@ object-is@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz#0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6" -object-keys@^1.0.11, object-keys@^1.0.8: - version "1.0.11" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" +object-keys@^1.0.11, object-keys@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2" object-keys@~0.2.0: version "0.2.0" @@ -4882,7 +5064,7 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.0.4, object.assign@^4.1.0: +object.assign@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" dependencies: @@ -4900,6 +5082,13 @@ object.entries@^1.0.4: function-bind "^1.1.0" has "^1.0.1" +object.getownpropertydescriptors@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" + dependencies: + 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" @@ -4984,12 +5173,6 @@ os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - dependencies: - lcid "^1.0.0" - os-locale@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" @@ -5014,8 +5197,8 @@ p-finally@^1.0.0: resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" p-limit@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.2.0.tgz#0e92b6bedcb59f022c13d0f1949dc82d15909f1c" + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" dependencies: p-try "^1.0.0" @@ -5025,10 +5208,6 @@ p-locate@^2.0.0: dependencies: p-limit "^1.1.0" -p-map@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" - p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -5062,9 +5241,9 @@ parse-json@^2.2.0: dependencies: error-ex "^1.2.0" -parse5@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-1.5.1.tgz#9b7f3b0de32be78dc2401b17573ccaf0f6f59d94" +parse5@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" parse5@^3.0.1: version "3.0.3" @@ -5098,13 +5277,13 @@ path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" -path-key@^2.0.0: +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" path-parse@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" + version "1.0.6" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" path-type@^1.0.0: version "1.1.0" @@ -5144,7 +5323,7 @@ performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" -pify@^2.0.0, pify@^2.3.0: +pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -5200,9 +5379,13 @@ plugin-error@^0.1.2: arr-union "^2.0.1" extend-shallow "^1.1.2" -pngjs@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-2.3.1.tgz#11d1e12b9cb64d63e30c143a330f4c1f567da85f" +pn@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" + +pngjs@^3.3.0: + version "3.3.3" + resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-3.3.3.tgz#85173703bde3edac8998757b96e5821d0966a21b" posix-character-classes@^0.1.0: version "0.1.1" @@ -5216,12 +5399,12 @@ preserve@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" -pretty-format@^20.0.3: - version "20.0.3" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-20.0.3.tgz#020e350a560a1fe1a98dc3beb6ccffb386de8b14" +pretty-format@^23.5.0: + version "23.5.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-23.5.0.tgz#0f9601ad9da70fe690a269cd3efca732c210687c" dependencies: - ansi-regex "^2.1.1" - ansi-styles "^3.0.0" + ansi-regex "^3.0.0" + ansi-styles "^3.2.0" pretty-format@^4.2.1: version "4.3.1" @@ -5249,6 +5432,13 @@ promise@^7, 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" + dependencies: + kleur "^2.0.1" + sisteransi "^0.1.1" + prop-types@15.5.10: version "15.5.10" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.5.10.tgz#2797dfc3126182e3a95e3dfbb2e893ddd7456154" @@ -5256,11 +5446,10 @@ prop-types@15.5.10: fbjs "^0.8.9" loose-envify "^1.3.1" -prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1: - version "15.6.1" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.1.tgz#36644453564255ddda391191fb3a125cbdf654ca" +prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2: + version "15.6.2" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102" dependencies: - fbjs "^0.8.16" loose-envify "^1.3.1" object-assign "^4.1.1" @@ -5302,6 +5491,10 @@ punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" +punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + "qr.js@https://github.com/defunctzombie/qr.js": version "0.0.0" resolved "https://github.com/defunctzombie/qr.js#af3e38902dfef90126d7b81e2619da8fa61b6f54" @@ -5310,16 +5503,17 @@ qrcode-terminal@^0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz#bb5b699ef7f9f0505092a3748be4464fe71b5819" -qrcode@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/qrcode/-/qrcode-0.9.0.tgz#4bdc1d21ad655c3101b5bb29e2e4c9d6416825fb" +qrcode@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/qrcode/-/qrcode-1.2.2.tgz#f3c97f5a4c32cf5c2ec75b63c1b66a38df122693" dependencies: - colors "*" + can-promise "^0.0.1" dijkstrajs "^1.0.1" isarray "^2.0.1" - pngjs "^2.3.1" + pngjs "^3.3.0" + yargs "^8.0.2" -qs@~6.5.1, qs@~6.5.2: +qs@~6.5.2: version "6.5.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" @@ -5353,8 +5547,8 @@ randexp@0.4.6: ret "~0.1.10" randomatic@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.0.0.tgz#d35490030eb4f7578de292ce6dfb04a91a128923" + version "3.1.0" + resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.0.tgz#36f2ca708e9e567f5ed2ec01949026d50aa10116" dependencies: is-number "^4.0.0" kind-of "^6.0.0" @@ -5370,11 +5564,11 @@ range-parser@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" -rc@^1.1.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.7.tgz#8a10ca30d588d00464360372b890d06dacd02297" +rc@^1.2.7: + version "1.2.8" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" dependencies: - deep-extend "^0.5.1" + deep-extend "^0.6.0" ini "~1.3.0" minimist "^1.2.0" strip-json-comments "~2.0.1" @@ -5388,50 +5582,50 @@ react-clone-referenced-element@^1.0.1: resolved "https://registry.yarnpkg.com/react-clone-referenced-element/-/react-clone-referenced-element-1.0.1.tgz#2bba8c69404c5e4a944398600bcc4c941f860682" react-deep-force-update@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/react-deep-force-update/-/react-deep-force-update-1.1.1.tgz#bcd31478027b64b3339f108921ab520b4313dc2c" + version "1.1.2" + resolved "https://registry.yarnpkg.com/react-deep-force-update/-/react-deep-force-update-1.1.2.tgz#3d2ae45c2c9040cbb1772be52f8ea1ade6ca2ee1" react-devtools-core@^3.2.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-3.3.2.tgz#a8acc19a14cd465734dcc8d4821743b71320560e" + version "3.3.4" + resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-3.3.4.tgz#9e497a94b73413b91774bf3e3197e539d5f9a21d" dependencies: shell-quote "^1.6.1" ws "^3.3.1" react-dom@^16.2.0: - version "16.3.2" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.3.2.tgz#cb90f107e09536d683d84ed5d4888e9640e0e4df" + version "16.5.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.5.0.tgz#57704e5718669374b182a17ea79a6d24922cb27d" dependencies: - fbjs "^0.8.16" loose-envify "^1.1.0" object-assign "^4.1.1" - prop-types "^15.6.0" + prop-types "^15.6.2" + schedule "^0.3.0" react-fast-compare@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-2.0.2.tgz#0560ba7a61a1662d9cea8cd97a0d9db7591bab1c" react-i18next@^7.3.0, react-i18next@^7.3.4: - version "7.6.1" - resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-7.6.1.tgz#c61d8284f3c695893d51033f67c39e65f01212b6" + version "7.12.0" + resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-7.12.0.tgz#edaed1593fdfb34ddb47e4faf409cb36c8220d80" dependencies: hoist-non-react-statics "^2.3.1" html-parse-stringify2 "2.0.1" prop-types "^15.6.0" -react-is@^16.3.2: - version "16.3.2" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.3.2.tgz#f4d3d0e2f5fbb6ac46450641eb2e25bf05d36b22" +react-is@^16.4.2, react-is@^16.5.0: + version "16.5.0" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.5.0.tgz#2ec7c192709698591efe13722fab3ef56144ba55" react-native-animatable@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/react-native-animatable/-/react-native-animatable-1.2.4.tgz#b5fb7657e8f6edadbc26697057a327fb920b3039" + version "1.3.0" + resolved "https://registry.yarnpkg.com/react-native-animatable/-/react-native-animatable-1.3.0.tgz#b5c3940fc758cfd9b2fe54613a457c4b6962b46e" dependencies: prop-types "^15.5.10" react-native-camera@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/react-native-camera/-/react-native-camera-1.1.4.tgz#5a01be906507cc2f232405f903c52c9d99988dba" + version "1.2.0" + resolved "https://registry.yarnpkg.com/react-native-camera/-/react-native-camera-1.2.0.tgz#fa93b39726d15bdbb02fac06f4a23957b0be403a" dependencies: lodash "^4.17.4" prop-types "^15.5.10" @@ -5484,8 +5678,8 @@ react-native-extra-dimensions-android@^0.21.0: rfc4648 "^1.0.0" react-native-fingerprint-scanner@^2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/react-native-fingerprint-scanner/-/react-native-fingerprint-scanner-2.3.2.tgz#f89dd5dcecf5858c005fa583c064ef4d20ea7731" + version "2.4.0" + resolved "https://registry.yarnpkg.com/react-native-fingerprint-scanner/-/react-native-fingerprint-scanner-2.4.0.tgz#39bc8353550b1951d1ab6c2997c528fb4e11f2c2" react-native-fit-image@^1.5.2: version "1.5.4" @@ -5513,8 +5707,8 @@ react-native-google-safetynet@^0.2.3: react-native-securerandom "^0.1.1" react-native-haptic-feedback@^1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/react-native-haptic-feedback/-/react-native-haptic-feedback-1.1.7.tgz#9ff27b9a83ce7983ce5f298362129a6b4b958d56" + version "1.2.0" + resolved "https://registry.yarnpkg.com/react-native-haptic-feedback/-/react-native-haptic-feedback-1.2.0.tgz#6948470529d8054d189db6613987d0e677f4c383" "react-native-http@github:tradle/react-native-http#834492d": version "1.0.0" @@ -5524,8 +5718,8 @@ react-native-haptic-feedback@^1.1.7: inherits "~2.0.1" react-native-iphone-x-helper@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.0.3.tgz#7a2f1e0574e899a0f1d426e6167fd98990083214" + version "1.1.0" + resolved "https://registry.yarnpkg.com/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.1.0.tgz#3a881720900bd8d1c67de2c465ea9aa9296180a7" "react-native-is-device-rooted@https://github.com/rajivshah3/react-native-isDeviceRooted#latest": version "1.0.3" @@ -5554,8 +5748,8 @@ react-native-level-fs@^3.0.0: levelup "^0.18.2" react-native-markdown-renderer@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/react-native-markdown-renderer/-/react-native-markdown-renderer-3.2.1.tgz#f5fdb6716a92316e3d9fcf624fb16a0ee9fa8901" + version "3.2.8" + resolved "https://registry.yarnpkg.com/react-native-markdown-renderer/-/react-native-markdown-renderer-3.2.8.tgz#217046cf198eca632a65f93cdf7dd7766f718070" dependencies: "@types/markdown-it" "^0.0.4" "@types/react-native" ">=0.50.0" @@ -5564,8 +5758,8 @@ react-native-markdown-renderer@^3.2.1: react-native-fit-image "^1.5.2" react-native-modal-translucent@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/react-native-modal-translucent/-/react-native-modal-translucent-1.1.3.tgz#9b84fd36061cea4ee1a055a0d7c97e1777a776d6" + version "1.1.5" + resolved "https://registry.yarnpkg.com/react-native-modal-translucent/-/react-native-modal-translucent-1.1.5.tgz#a352d5f6e519a9125f17dacb80dddb34431b34e5" react-native-modal@^6.5.0: version "6.5.0" @@ -5575,8 +5769,8 @@ react-native-modal@^6.5.0: react-native-animatable "^1.2.4" react-native-navigation@^1.1.431: - version "1.1.463" - resolved "https://registry.yarnpkg.com/react-native-navigation/-/react-native-navigation-1.1.463.tgz#6f06e1057665e7618810c051d9b94b01e4f27e13" + version "1.1.485" + resolved "https://registry.yarnpkg.com/react-native-navigation/-/react-native-navigation-1.1.485.tgz#99b469ded59589888ddb76f0b2ebf8258b24b9e7" dependencies: lodash "4.x.x" @@ -5599,8 +5793,8 @@ react-native-print@^0.5.0: resolved "https://registry.yarnpkg.com/react-native-print/-/react-native-print-0.5.0.tgz#f95301fe4979afeac6816d8019754ec7bdf7bfe6" react-native-progress@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/react-native-progress/-/react-native-progress-3.4.0.tgz#c002e6efb2f0b82dd6889510e669c492da2718ac" + version "3.5.0" + resolved "https://registry.yarnpkg.com/react-native-progress/-/react-native-progress-3.5.0.tgz#d1ccc7f96dc17c609aedb43b2e6695d67deae0ec" dependencies: prop-types "^15.5.8" @@ -5612,15 +5806,15 @@ react-native-qrcode-scanner@^1.0.1: react-native-permissions "^1.1.1" react-native-qrcode-svg@^5.0.3: - version "5.0.6" - resolved "https://registry.yarnpkg.com/react-native-qrcode-svg/-/react-native-qrcode-svg-5.0.6.tgz#4e054788d1bf1bafe6a229056cde576644d059db" + version "5.1.0" + resolved "https://registry.yarnpkg.com/react-native-qrcode-svg/-/react-native-qrcode-svg-5.1.0.tgz#0f0fc95e332454fe07e4b08bcde579f9b3f4d1d8" dependencies: prop-types "^15.5.10" - qrcode "^0.9.0" + qrcode "^1.2.0" react-native-randombytes@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/react-native-randombytes/-/react-native-randombytes-3.2.0.tgz#81ad85c854992ad5b36427095aa179acaff84ed0" + version "3.5.0" + resolved "https://registry.yarnpkg.com/react-native-randombytes/-/react-native-randombytes-3.5.0.tgz#a641130a52eca65ef2165409f65d930184c6dc83" dependencies: buffer "^4.9.1" sjcl "^1.0.3" @@ -5648,12 +5842,12 @@ react-native-securerandom@^0.1.1: base64-js "*" react-native-share@^1.0.27: - version "1.0.27" - resolved "https://registry.yarnpkg.com/react-native-share/-/react-native-share-1.0.27.tgz#1861afe0d1256bde95d19520ca5d5c3cd348ffad" + version "1.1.1" + resolved "https://registry.yarnpkg.com/react-native-share/-/react-native-share-1.1.1.tgz#8c50c67c3fa519607f3352c03f56076c0481edeb" -react-native-splash-screen@^3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/react-native-splash-screen/-/react-native-splash-screen-3.0.6.tgz#c0bbf2c8ae40a313c4c7044f55e569414ff68332" +react-native-splash-screen@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/react-native-splash-screen/-/react-native-splash-screen-3.1.1.tgz#1a4e46c9fdce53ff52af2a2cb4181788c4e30b30" react-native-svg@~6.1.4: version "6.1.4" @@ -5675,8 +5869,8 @@ react-native-tcp@^3.3.0: util "^0.10.3" react-native-timer@^1.3.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/react-native-timer/-/react-native-timer-1.3.3.tgz#6dcd48bac37e89f17964a0f5404dae08bd9dfb19" + version "1.3.4" + resolved "https://registry.yarnpkg.com/react-native-timer/-/react-native-timer-1.3.4.tgz#3aedc59fed43a74314416a36cb28b093b685f393" react-native-triangle@0.0.8: version "0.0.8" @@ -5704,8 +5898,8 @@ react-native-vector-icons@^4.5.0: yargs "^8.0.2" react-native-view-shot@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/react-native-view-shot/-/react-native-view-shot-2.3.0.tgz#ac01880d3c560f0dc918cd7cdf8854c6ff85ca31" + version "2.4.0" + resolved "https://registry.yarnpkg.com/react-native-view-shot/-/react-native-view-shot-2.4.0.tgz#ba5dd7607a217a2fdd9e2e8165d0eb24614d2438" react-native@0.56.0: version "0.56.0" @@ -5770,15 +5964,6 @@ react-proxy@^1.1.7: lodash "^4.6.1" react-deep-force-update "^1.0.0" -react-reconciler@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/react-reconciler/-/react-reconciler-0.7.0.tgz#9614894103e5f138deeeb5eabaf3ee80eb1d026d" - dependencies: - fbjs "^0.8.16" - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.0" - react-redux@^5.0.6: version "5.0.7" resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-5.0.7.tgz#0dc1076d9afb4670f993ffaef44b8f8c1155a4c8" @@ -5790,25 +5975,18 @@ react-redux@^5.0.6: loose-envify "^1.1.0" prop-types "^15.6.0" -react-test-renderer@16.0.0-alpha.12: - version "16.0.0-alpha.12" - resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.0.0-alpha.12.tgz#9e4cc5d8ce8bfca72778340de3e1454b9d6c0cc5" - dependencies: - fbjs "^0.8.9" - object-assign "^4.1.0" - -react-test-renderer@^16.0.0-0: - version "16.3.2" - resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.3.2.tgz#3d1ed74fda8db42521fdf03328e933312214749a" +react-test-renderer@^16.0.0-0, react-test-renderer@^16.5.0: + version "16.5.0" + resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.5.0.tgz#1aeca0edc4f27f63265dcaed80ba82e11e762f56" dependencies: - fbjs "^0.8.16" object-assign "^4.1.1" - prop-types "^15.6.0" - react-is "^16.3.2" + prop-types "^15.6.2" + react-is "^16.5.0" + schedule "^0.3.0" react-timer-mixin@^0.13.2: - version "0.13.3" - resolved "https://registry.yarnpkg.com/react-timer-mixin/-/react-timer-mixin-0.13.3.tgz#0da8b9f807ec07dc3e854d082c737c65605b3d22" + version "0.13.4" + resolved "https://registry.yarnpkg.com/react-timer-mixin/-/react-timer-mixin-0.13.4.tgz#75a00c3c94c13abe29b43d63b4c65a88fc8264d3" react-transform-hmr@^1.0.4: version "1.0.4" @@ -5827,13 +6005,13 @@ react@16.4.1: prop-types "^15.6.0" react@^16.2.0: - version "16.3.2" - resolved "https://registry.yarnpkg.com/react/-/react-16.3.2.tgz#fdc8420398533a1e58872f59091b272ce2f91ea9" + version "16.5.0" + resolved "https://registry.yarnpkg.com/react/-/react-16.5.0.tgz#f2c1e754bf9751a549d9c6d9aca41905beb56575" dependencies: - fbjs "^0.8.16" loose-envify "^1.1.0" object-assign "^4.1.1" - prop-types "^15.6.0" + prop-types "^15.6.2" + schedule "^0.3.0" read-pkg-up@^1.0.1: version "1.0.1" @@ -5895,6 +6073,12 @@ readable-stream@~1.0.26, readable-stream@~1.0.26-4: isarray "0.0.1" string_decoder "~0.10.x" +realpath-native@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.0.2.tgz#cd51ce089b513b45cf9b1516c82989b51ccc6560" + dependencies: + util.promisify "^1.0.0" + redux-logger@^3.0.6: version "3.0.6" resolved "https://registry.yarnpkg.com/redux-logger/-/redux-logger-3.0.6.tgz#f7555966f3098f3c88604c449cf0baf5778274bf" @@ -5910,8 +6094,8 @@ redux-persist@^4.10.1: lodash-es "^4.17.4" redux-thunk@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-2.2.0.tgz#e615a16e16b47a19a515766133d1e3e99b7852e5" + version "2.3.0" + resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-2.3.0.tgz#51c2c19a185ed5187aaa9a2d08b666d0d6467622" redux@^3.7.2: version "3.7.2" @@ -5999,8 +6183,8 @@ remove-trailing-separator@^1.0.1: resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" repeat-element@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" + version "1.1.3" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" repeat-string@^1.5.2, repeat-string@^1.6.1: version "1.6.1" @@ -6012,7 +6196,21 @@ repeating@^2.0.0: dependencies: is-finite "^1.0.0" -request@2: +request-promise-core@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6" + dependencies: + lodash "^4.13.1" + +request-promise-native@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5" + dependencies: + request-promise-core "1.1.1" + stealthy-require "^1.1.0" + tough-cookie ">=2.3.3" + +request@2, request@^2.87.0: version "2.88.0" resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" dependencies: @@ -6037,31 +6235,6 @@ request@2: tunnel-agent "^0.6.0" uuid "^3.3.2" -request@^2.79.0: - version "2.87.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.87.0.tgz#32f00235cd08d482b4d0d68db93a829c0ed5756e" - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.6.0" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.1" - forever-agent "~0.6.1" - form-data "~2.3.1" - har-validator "~5.0.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.17" - oauth-sign "~0.8.2" - performance-now "^2.1.0" - qs "~6.5.1" - safe-buffer "^5.1.1" - tough-cookie "~2.3.3" - tunnel-agent "^0.6.0" - uuid "^3.1.0" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -6078,6 +6251,16 @@ reselect@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/reselect/-/reselect-3.0.1.tgz#efdaa98ea7451324d092b2b2163a6a1d7a9a2147" +resolve-cwd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" + dependencies: + resolve-from "^3.0.0" + +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + resolve-url@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" @@ -6086,13 +6269,7 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@^1.3.2: - version "1.7.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.7.1.tgz#aadd656374fd298aee895bc026b8297418677fd3" - dependencies: - path-parse "^1.0.5" - -resolve@^1.5.0: +resolve@^1.3.2, resolve@^1.5.0: version "1.8.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" dependencies: @@ -6113,12 +6290,6 @@ rfc4648@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/rfc4648/-/rfc4648-1.1.0.tgz#5e05a16b3c3fc76552f95853a10bd95b6bc0752f" -right-align@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" - dependencies: - align-text "^0.1.1" - rimraf@2, rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1: version "2.6.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" @@ -6127,7 +6298,7 @@ rimraf@2, rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1: rimraf@~2.2.6: version "2.2.8" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" + resolved "http://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" ripemd160@^2.0.0, ripemd160@^2.0.1: version "2.0.2" @@ -6202,7 +6373,7 @@ safe-regex@^1.1.0: dependencies: ret "~0.1.10" -"safer-buffer@>= 2.1.2 < 3": +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -6221,29 +6392,23 @@ sane@^2.0.0: optionalDependencies: fsevents "^1.2.3" -sane@~1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/sane/-/sane-1.6.0.tgz#9610c452307a135d29c1fdfe2547034180c46775" - dependencies: - anymatch "^1.3.0" - exec-sh "^0.2.0" - fb-watchman "^1.8.0" - minimatch "^3.0.2" - minimist "^1.1.1" - walker "~1.0.5" - watch "~0.10.0" - -sax@^1.2.1, sax@^1.2.4: +sax@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" sax@~1.1.1: version "1.1.6" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.1.6.tgz#5d616be8a5e607d54e114afae55b7eaf2fcc3240" + resolved "http://registry.npmjs.org/sax/-/sax-1.1.6.tgz#5d616be8a5e607d54e114afae55b7eaf2fcc3240" -"semver@2 || 3 || 4 || 5", semver@5.x, semver@^5.0.1, semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@^5.4.1: - version "5.5.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" +schedule@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/schedule/-/schedule-0.3.0.tgz#1be2ab2fc2e768536269ce7326efb478d6c045e8" + dependencies: + object-assign "^4.1.1" + +"semver@2 || 3 || 4 || 5", semver@5.x, semver@^5.0.1, semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0: + version "5.5.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.1.tgz#7dfdd8814bdb7cabc7be0fb1d734cfb66c940477" semver@~2.3.1: version "2.3.2" @@ -6362,6 +6527,10 @@ simple-swizzle@^0.2.2: dependencies: is-arrayish "^0.3.1" +sisteransi@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-0.1.1.tgz#5431447d5f7d1675aac667ccd0b865a4994cb3ce" + sjcl@^1.0.3: version "1.0.7" resolved "https://registry.yarnpkg.com/sjcl/-/sjcl-1.0.7.tgz#32b365a50dc9bba26b88ba3c9df8ea34217d9f45" @@ -6417,21 +6586,22 @@ source-map-support@^0.4.15, source-map-support@^0.4.2: dependencies: source-map "^0.5.6" +source-map-support@^0.5.6: + version "0.5.9" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + source-map-url@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" -source-map@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" - dependencies: - amdefine ">=0.0.4" - -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.1: +source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" -source-map@~0.6.1: +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" @@ -6454,8 +6624,8 @@ spdx-expression-parse@^3.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz#7a7cd28470cc6d3a1cfe6d66886f6bc430d3ac87" + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.1.tgz#e2a303236cac54b04031fa7a5a79c7e701df852f" split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" @@ -6468,19 +6638,24 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" sshpk@^1.7.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.1.tgz#130f5975eddad963f1d56f92b9ac6c51fa9f83eb" + version "1.14.2" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.2.tgz#c6fc61648a3d9c4e764fd3fcdf4ea105e492ba98" dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" dashdash "^1.12.0" getpass "^0.1.1" + safer-buffer "^2.0.2" optionalDependencies: bcrypt-pbkdf "^1.0.0" ecc-jsbn "~0.1.1" jsbn "~0.1.0" tweetnacl "~0.14.0" +stack-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.1.tgz#d4f33ab54e8e38778b0ca5cfd3b3afb12db68620" + stacktrace-parser@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/stacktrace-parser/-/stacktrace-parser-0.1.4.tgz#01397922e5f62ecf30845522c95c4fe1d25e7d4e" @@ -6504,6 +6679,10 @@ statuses@~1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" +stealthy-require@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" + stream-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-1.0.0.tgz#bf9b4abfb42b274d751479e44e0ff2656b6f1193" @@ -6521,17 +6700,18 @@ stream@0.0.2: dependencies: emitter-component "^1.1.1" -string-length@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-1.0.1.tgz#56970fb1c38558e9e70b728bf3de269ac45adfac" +string-length@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed" dependencies: - strip-ansi "^3.0.0" + astral-regex "^1.0.0" + strip-ansi "^4.0.0" string-range@~1.2, string-range@~1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/string-range/-/string-range-1.2.2.tgz#a893ed347e72299bc83befbbf2a692a8d239d5dd" -string-width@^1.0.1, string-width@^1.0.2: +string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" dependencies: @@ -6539,13 +6719,21 @@ string-width@^1.0.1, string-width@^1.0.2: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -string-width@^2.0.0, string-width@^2.1.0: +"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" dependencies: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" +string.prototype.trim@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz#d04de2c89e137f4d7d206f086b5ed2fae6be8cea" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.5.0" + function-bind "^1.0.2" + string_decoder@^0.10.31, string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" @@ -6597,8 +6785,8 @@ supports-color@^3.1.2: has-flag "^1.0.0" supports-color@^5.3.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.4.0.tgz#1c6b337402c2137605efe19f10fec390f6faab54" + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" dependencies: has-flag "^3.0.0" @@ -6606,7 +6794,7 @@ symbol-observable@^1.0.3: version "1.2.0" resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" -symbol-tree@^3.2.1: +symbol-tree@^3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" @@ -6621,12 +6809,12 @@ tar@^3.1.3: yallist "^3.0.2" tar@^4: - version "4.4.2" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.2.tgz#60685211ba46b38847b1ae7ee1a24d744a2cd462" + version "4.4.6" + resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.6.tgz#63110f09c00b4e60ac8bcfe1bf3c8660235fbc9b" dependencies: chownr "^1.0.1" fs-minipass "^1.2.5" - minipass "^2.2.4" + minipass "^2.3.3" minizlib "^1.1.0" mkdirp "^0.5.0" safe-buffer "^5.1.2" @@ -6640,11 +6828,11 @@ temp@0.8.3: rimraf "~2.2.6" test-exclude@^4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.1.tgz#dfa222f03480bca69207ca728b37d74b45f724fa" + version "4.2.3" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.3.tgz#a9a5e64474e4398339245a0a769ad7c2f4a97c20" dependencies: arrify "^1.0.1" - micromatch "^3.1.8" + micromatch "^2.3.11" object-assign "^4.1.0" read-pkg-up "^1.0.1" require-main-filename "^1.0.1" @@ -6657,11 +6845,7 @@ thirty-two@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/thirty-two/-/thirty-two-0.0.2.tgz#4253e29d8cb058f0480267c5698c0e4927e54b6a" -throat@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-3.2.0.tgz#50cb0670edbc40237b9e347d7e1f88e4620af836" - -throat@^4.1.0: +throat@^4.0.0, throat@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" @@ -6734,22 +6918,18 @@ to-regex@^3.0.1, to-regex@^3.0.2: regex-not "^1.0.2" safe-regex "^1.1.0" -tough-cookie@^2.3.2, tough-cookie@~2.3.3: - version "2.3.4" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" - dependencies: - punycode "^1.4.1" - -tough-cookie@~2.4.3: +tough-cookie@>=2.3.3, tough-cookie@^2.3.4, tough-cookie@~2.4.3: version "2.4.3" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" dependencies: psl "^1.1.24" punycode "^1.4.1" -tr46@~0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" +tr46@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" + dependencies: + punycode "^2.1.0" trim-right@^1.0.1: version "1.0.1" @@ -6787,7 +6967,7 @@ typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" -ua-parser-js@^0.7.9: +ua-parser-js@^0.7.18, ua-parser-js@^0.7.9: version "0.7.18" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.18.tgz#a7bfd92f56edfb117083b69e31d2aa8882d4b1ed" @@ -6802,18 +6982,12 @@ uglify-es@^3.1.9: commander "~2.13.0" source-map "~0.6.1" -uglify-js@^2.6: - version "2.8.29" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" +uglify-js@^3.1.4: + version "3.4.9" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.9.tgz#af02f180c1207d76432e473ed24a28f4a782bae3" dependencies: - source-map "~0.5.1" - yargs "~3.10.0" - optionalDependencies: - uglify-to-browserify "~1.0.0" - -uglify-to-browserify@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" + commander "~2.17.1" + source-map "~0.6.1" ultron@1.0.x: version "1.0.2" @@ -6871,8 +7045,8 @@ urix@^0.1.0: resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" url-parse@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.0.tgz#6bfdaad60098c7fe06f623e42b22de62de0d3d75" + version "1.4.3" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.3.tgz#bfaee455c889023219d757e045fa6a684ec36c15" dependencies: querystringify "^2.0.0" requires-port "^1.0.0" @@ -6885,10 +7059,8 @@ url@^0.10.3: querystring "0.2.0" use@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.0.tgz#14716bf03fdfefd03040aef58d8b4b85f3a7c544" - dependencies: - kind-of "^6.0.2" + version "3.1.1" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" utf8@^2.1.1: version "2.1.2" @@ -6898,12 +7070,25 @@ util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" -util@0.10.3, util@^0.10.3: +util.promisify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + dependencies: + define-properties "^1.1.2" + object.getownpropertydescriptors "^2.0.3" + +util@0.10.3: version "0.10.3" resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" dependencies: inherits "2.0.1" +util@^0.10.3: + version "0.10.4" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" + dependencies: + inherits "2.0.3" + utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" @@ -6912,10 +7097,6 @@ uuid@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" -uuid@^3.1.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" - uuid@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" @@ -6925,8 +7106,8 @@ valid-url@^1.0.9: resolved "https://registry.yarnpkg.com/valid-url/-/valid-url-1.0.9.tgz#1c14479b40f1397a75782f115e4086447433a200" validate-npm-package-license@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz#81643bcbef1bdfecd4623793dc4648948ba98338" + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" dependencies: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" @@ -7207,16 +7388,18 @@ void-elements@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" +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" + dependencies: + browser-process-hrtime "^0.1.2" + walker@~1.0.5: version "1.0.7" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" dependencies: makeerror "1.0.x" -watch@~0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/watch/-/watch-0.10.0.tgz#77798b2da0f9910d595f1ace5b0c2258521f21dc" - watch@~0.18.0: version "0.18.0" resolved "https://registry.yarnpkg.com/watch/-/watch-0.18.0.tgz#28095476c6df7c90c963138990c0a5423eb4b986" @@ -7224,64 +7407,59 @@ watch@~0.18.0: exec-sh "^0.2.0" minimist "^1.2.0" -webidl-conversions@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" - -webidl-conversions@^4.0.0: +webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" -whatwg-encoding@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz#57c235bc8657e914d24e1a397d3c82daee0a6ba3" +whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.4.tgz#63fb016b7435b795d9025632c086a5209dbd2621" dependencies: - iconv-lite "0.4.19" + iconv-lite "0.4.23" whatwg-fetch@>=0.10.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f" + version "3.0.0" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" + +whatwg-mimetype@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.1.0.tgz#f0f21d76cbba72362eb609dbed2a30cd17fcc7d4" -whatwg-url@^4.3.0: - version "4.8.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-4.8.0.tgz#d2981aa9148c1e00a41c5a6131166ab4683bbcc0" +whatwg-url@^6.4.1: + version "6.5.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8" dependencies: - tr46 "~0.0.3" - webidl-conversions "^3.0.0" + lodash.sortby "^4.7.0" + tr46 "^1.0.1" + webidl-conversions "^4.0.2" -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" +whatwg-url@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.0.0.tgz#fde926fa54a599f3adf82dff25a9f7be02dc6edd" + dependencies: + lodash.sortby "^4.7.0" + tr46 "^1.0.1" + webidl-conversions "^4.0.2" which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" -which@1: +which@1, which@^1.2.12, which@^1.2.9, which@^1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" dependencies: isexe "^2.0.0" -which@^1.2.12, which@^1.2.9, which@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" - dependencies: - isexe "^2.0.0" - wide-align@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" + version "1.1.3" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" dependencies: - string-width "^1.0.2" - -window-size@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" + string-width "^1.0.2 || 2" -wordwrap@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" +window-or-global@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/window-or-global/-/window-or-global-1.0.1.tgz#dbe45ba2a291aabc56d62cf66c45b7fa322946de" wordwrap@^1.0.0, wordwrap@~1.0.0: version "1.0.0" @@ -7291,15 +7469,9 @@ wordwrap@~0.0.2: version "0.0.3" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" -worker-farm@^1.3.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.6.0.tgz#aecc405976fab5a95526180846f0dba288f3a4a0" - dependencies: - errno "~0.1.7" - wrap-ansi@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + resolved "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" @@ -7316,6 +7488,14 @@ write-file-atomic@^1.2.0: imurmurhash "^0.1.4" slide "^1.1.5" +write-file-atomic@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + signal-exit "^3.0.2" + ws@^1.1.0: version "1.1.5" resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.5.tgz#cbd9e6e75e09fc5d2c90015f21f0c40875e0dd51" @@ -7331,6 +7511,12 @@ ws@^3.3.1: safe-buffer "~5.1.0" ultron "~1.1.0" +ws@^5.2.0: + version "5.2.2" + resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f" + dependencies: + async-limiter "~1.0.0" + xcode@^0.9.1, xcode@^0.9.3: version "0.9.3" resolved "https://registry.yarnpkg.com/xcode/-/xcode-0.9.3.tgz#910a89c16aee6cc0b42ca805a6d0b4cf87211cf3" @@ -7339,9 +7525,9 @@ xcode@^0.9.1, xcode@^0.9.3: simple-plist "^0.2.1" uuid "3.0.1" -xml-name-validator@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635" +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" xmlbuilder@8.2.2: version "8.2.2" @@ -7400,35 +7586,34 @@ yallist@^3.0.0, yallist@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.2.tgz#8452b4bb7e83c7c188d8041c1a837c773d6d8bb9" -yargs-parser@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" - dependencies: - camelcase "^3.0.0" - yargs-parser@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9" dependencies: camelcase "^4.1.0" -yargs@^7.0.2: - version "7.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" +yargs-parser@^9.0.2: + version "9.0.2" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" + camelcase "^4.1.0" + +yargs@^11.0.0: + version "11.1.0" + resolved "http://registry.npmjs.org/yargs/-/yargs-11.1.0.tgz#90b869934ed6e871115ea2ff58b03f4724ed2d77" + dependencies: + cliui "^4.0.0" decamelize "^1.1.1" + find-up "^2.1.0" get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" + os-locale "^2.0.0" require-directory "^2.1.1" require-main-filename "^1.0.1" set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" + string-width "^2.0.0" + which-module "^2.0.0" y18n "^3.2.1" - yargs-parser "^5.0.0" + yargs-parser "^9.0.2" yargs@^8.0.2: version "8.0.2" @@ -7466,15 +7651,6 @@ yargs@^9.0.0: y18n "^3.2.1" yargs-parser "^7.0.0" -yargs@~3.10.0: - version "3.10.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" - dependencies: - camelcase "^1.0.2" - cliui "^2.1.0" - decamelize "^1.0.0" - window-size "0.1.0" - zxcvbn@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/zxcvbn/-/zxcvbn-4.4.2.tgz#28ec17cf09743edcab056ddd8b1b06262cc73c30" diff --git a/src/shared/package.json b/src/shared/package.json index 9df306661c..0e987d258e 100644 --- a/src/shared/package.json +++ b/src/shared/package.json @@ -36,7 +36,8 @@ "zxcvbn": "^4.4.2" }, "devDependencies": { - "babel-core": "^6.26.0", + "@babel/core": "^7.0.0-beta", + "babel-core": "^7.0.0-beta", "babel-plugin-transform-object-rest-spread": "^6.26.0", "babel-plugin-transform-react-jsx": "^6.24.1", "babel-preset-es2015": "^6.24.1", diff --git a/src/shared/yarn.lock b/src/shared/yarn.lock index e7b481d437..7db222f974 100644 --- a/src/shared/yarn.lock +++ b/src/shared/yarn.lock @@ -2,6 +2,110 @@ # yarn lockfile v1 +"@babel/code-frame@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.47.tgz#d18c2f4c4ba8d093a2bcfab5616593bfe2441a27" + dependencies: + "@babel/highlight" "7.0.0-beta.47" + +"@babel/core@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.0.0-beta.47.tgz#b9c164fb9a1e1083f067c236a9da1d7a7d759271" + dependencies: + "@babel/code-frame" "7.0.0-beta.47" + "@babel/generator" "7.0.0-beta.47" + "@babel/helpers" "7.0.0-beta.47" + "@babel/template" "7.0.0-beta.47" + "@babel/traverse" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + babylon "7.0.0-beta.47" + convert-source-map "^1.1.0" + debug "^3.1.0" + json5 "^0.5.0" + lodash "^4.17.5" + micromatch "^2.3.11" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/generator@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.0.0-beta.47.tgz#1835709f377cc4d2a4affee6d9258a10bbf3b9d1" + dependencies: + "@babel/types" "7.0.0-beta.47" + jsesc "^2.5.1" + lodash "^4.17.5" + source-map "^0.5.0" + trim-right "^1.0.1" + +"@babel/helper-function-name@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.47.tgz#8057d63e951e85c57c02cdfe55ad7608d73ffb7d" + dependencies: + "@babel/helper-get-function-arity" "7.0.0-beta.47" + "@babel/template" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-get-function-arity@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.47.tgz#2de04f97c14b094b55899d3fa83144a16d207510" + dependencies: + "@babel/types" "7.0.0-beta.47" + +"@babel/helper-split-export-declaration@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.47.tgz#e11277855472d8d83baf22f2d0186c4a2059b09a" + dependencies: + "@babel/types" "7.0.0-beta.47" + +"@babel/helpers@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.0.0-beta.47.tgz#f9b42ed2e4d5f75ec0fb2e792c173e451e8d40fd" + dependencies: + "@babel/template" "7.0.0-beta.47" + "@babel/traverse" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + +"@babel/highlight@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0-beta.47.tgz#8fbc83fb2a21f0bd2b95cdbeb238cf9689cad494" + dependencies: + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^3.0.0" + +"@babel/template@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.0.0-beta.47.tgz#0473970a7c0bee7a1a18c1ca999d3ba5e5bad83d" + dependencies: + "@babel/code-frame" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + babylon "7.0.0-beta.47" + lodash "^4.17.5" + +"@babel/traverse@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.0.0-beta.47.tgz#0e57fdbb9ff3a909188b6ebf1e529c641e6c82a4" + dependencies: + "@babel/code-frame" "7.0.0-beta.47" + "@babel/generator" "7.0.0-beta.47" + "@babel/helper-function-name" "7.0.0-beta.47" + "@babel/helper-split-export-declaration" "7.0.0-beta.47" + "@babel/types" "7.0.0-beta.47" + babylon "7.0.0-beta.47" + debug "^3.1.0" + globals "^11.1.0" + invariant "^2.2.0" + lodash "^4.17.5" + +"@babel/types@7.0.0-beta.47": + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0-beta.47.tgz#e6fcc1a691459002c2671d558a586706dddaeef8" + dependencies: + esutils "^2.0.2" + lodash "^4.17.5" + to-fast-properties "^2.0.0" + "@sinonjs/formatio@^2.0.0": version "2.0.0" resolved "http://registry.npmjs.org/@sinonjs/formatio/-/formatio-2.0.0.tgz#84db7e9eb5531df18a8c5e0bfb6e449e55e654b2" @@ -16,12 +120,32 @@ ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + dependencies: + color-convert "^1.9.0" + argparse@^1.0.6: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" dependencies: sprintf-js "~1.0.2" +arr-diff@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" + dependencies: + arr-flatten "^1.0.1" + +arr-flatten@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + +array-unique@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" + asap@~2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" @@ -51,42 +175,9 @@ babel-code-frame@^6.26.0: esutils "^2.0.2" js-tokens "^3.0.2" -babel-core@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" - 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.0" - debug "^2.6.8" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.7" - slash "^1.0.0" - source-map "^0.5.6" - -babel-generator@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" - 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.6" - trim-right "^1.0.1" +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" babel-helper-bindify-decorators@^6.24.1: version "6.24.1" @@ -207,13 +298,6 @@ babel-helper-replace-supers@^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" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-messages@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" @@ -549,18 +633,6 @@ babel-preset-stage-3@^6.24.1: babel-plugin-transform-exponentiation-operator "^6.24.1" babel-plugin-transform-object-rest-spread "^6.22.0" -babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - 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" @@ -601,6 +673,10 @@ babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: lodash "^4.17.4" to-fast-properties "^1.0.3" +babylon@7.0.0-beta.47: + version "7.0.0-beta.47" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.47.tgz#6d1fa44f0abec41ab7c780481e62fd9aafbdea80" + babylon@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" @@ -624,6 +700,14 @@ 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" + dependencies: + expand-range "^1.8.1" + preserve "^0.2.0" + repeat-element "^1.1.2" + browser-stdout@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" @@ -649,10 +733,28 @@ chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" +chalk@^2.0.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + check-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + dependencies: + color-name "1.1.3" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + commander@2.11.0: version "2.11.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" @@ -665,15 +767,17 @@ concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" -convert-source-map@^1.5.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5" +convert-source-map@^1.1.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" + dependencies: + safe-buffer "~5.1.1" core-js@^1.0.0: version "1.2.7" resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" -core-js@^2.4.0, core-js@^2.5.0: +core-js@^2.4.0: version "2.5.1" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b" @@ -711,12 +815,6 @@ deep-equal@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - dependencies: - repeating "^2.0.0" - diff@3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" @@ -731,7 +829,7 @@ encoding@^0.1.11: dependencies: iconv-lite "~0.4.13" -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2: +escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, 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" @@ -739,6 +837,24 @@ esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" +expand-brackets@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" + dependencies: + is-posix-bracket "^0.1.0" + +expand-range@^1.8.1: + version "1.8.2" + resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" + dependencies: + fill-range "^2.1.0" + +extglob@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" + dependencies: + is-extglob "^1.0.0" + fbjs@^0.8.16: version "0.8.16" resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db" @@ -758,12 +874,36 @@ figma-parser@^0.0.2: axios "^0.18.0" markup-js "^1.5.21" +filename-regex@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" + +fill-range@^2.1.0: + version "2.2.4" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" + dependencies: + is-number "^2.1.0" + isobject "^2.0.0" + randomatic "^3.0.0" + repeat-element "^1.1.2" + repeat-string "^1.5.2" + follow-redirects@^1.3.0: version "1.5.1" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.1.tgz#67a8f14f5a1f67f962c2c46469c79eaec0a90291" dependencies: debug "^3.1.0" +for-in@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + +for-own@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" + dependencies: + for-in "^1.0.1" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -776,6 +916,19 @@ get-func-name@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" +glob-base@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" + 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" + dependencies: + is-glob "^2.0.0" + glob@7.1.2, glob@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" @@ -787,6 +940,10 @@ glob@7.1.2, glob@^7.1.2: once "^1.3.0" path-is-absolute "^1.0.0" +globals@^11.1.0: + version "11.7.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.7.0.tgz#a583faa43055b1aca771914bf68258e2fc125673" + globals@^9.18.0: version "9.18.0" resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" @@ -817,13 +974,6 @@ hoist-non-react-statics@2.3.1, hoist-non-react-statics@^2.2.1: version "2.3.1" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.3.1.tgz#343db84c6018c650778898240135a1420ee22ce0" -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" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - html-parse-stringify2@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/html-parse-stringify2/-/html-parse-stringify2-2.0.1.tgz#dc5670b7292ca158b7bc916c9a6735ac8872834a" @@ -855,6 +1005,12 @@ invariant@^2.0.0, invariant@^2.2.2: dependencies: loose-envify "^1.0.0" +invariant@^2.2.0: + version "2.2.4" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" + dependencies: + loose-envify "^1.0.0" + iota.lib.js@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/iota.lib.js/-/iota.lib.js-0.5.0.tgz#66e59baf82a4556b739f81d947313d0a3ab2f659" @@ -868,11 +1024,47 @@ is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" +is-dotfile@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" + +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" + dependencies: + is-primitive "^2.0.0" + +is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + +is-extglob@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" + +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" + dependencies: + is-extglob "^1.0.0" + +is-number@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" dependencies: - number-is-nan "^1.0.0" + 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" + +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" + +is-primitive@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" is-stream@^1.0.1: version "1.1.0" @@ -882,10 +1074,16 @@ isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" -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" +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + dependencies: + isarray "1.0.0" + isomorphic-fetch@^2.1.1: version "2.2.1" resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" @@ -897,9 +1095,9 @@ js-tokens@^3.0.0, js-tokens@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" +jsesc@^2.5.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.1.tgz#e421a2a8e20d6b0819df28908f782526b96dd1fe" jsesc@~0.5.0: version "0.5.0" @@ -909,7 +1107,7 @@ json-stringify-safe@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" -json5@^0.5.1: +json5@^0.5.0: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" @@ -917,6 +1115,16 @@ just-extend@^1.1.27: version "1.1.27" resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-1.1.27.tgz#ec6e79410ff914e472652abfa0e603c03d60e905" +kind-of@^3.0.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + dependencies: + is-buffer "^1.1.5" + +kind-of@^6.0.0: + version "6.0.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" + lodash-es@^4.17.4, lodash-es@^4.2.0, lodash-es@^4.2.1: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.4.tgz#dcc1d7552e150a0640073ba9cb31d70f032950e7" @@ -951,10 +1159,32 @@ markup-js@^1.5.21: version "1.5.21" resolved "https://registry.yarnpkg.com/markup-js/-/markup-js-1.5.21.tgz#389128703a565964574d0e357e142add3be46d79" +math-random@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac" + microbuffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/microbuffer/-/microbuffer-1.0.0.tgz#8b3832ed40c87d51f47bb234913a698a756d19d2" +micromatch@^2.3.11: + version "2.3.11" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" + 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" + minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" @@ -965,7 +1195,7 @@ minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1: +mkdirp@0.5.1, mkdirp@^0.5.0: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -1031,32 +1261,46 @@ node-fetch@^1.0.1: encoding "^0.1.11" is-stream "^1.0.1" -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" +normalize-path@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + dependencies: + remove-trailing-separator "^1.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" +object.omit@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" + dependencies: + for-own "^0.1.4" + is-extendable "^0.1.1" + once@^1.3.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" dependencies: wrappy "1" -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - -os-tmpdir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" +parse-glob@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" + dependencies: + glob-base "^0.3.0" + is-dotfile "^1.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.0" -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" +path-parse@^1.0.5: + version "1.0.6" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" + path-to-regexp@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d" @@ -1067,7 +1311,11 @@ pathval@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" -private@^0.1.6, private@^0.1.7: +preserve@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" + +private@^0.1.6: version "0.1.8" resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" @@ -1105,6 +1353,14 @@ querystringify@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-1.0.0.tgz#6286242112c5b712fa654e526652bf6a13ff05cb" +randomatic@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.0.tgz#36f2ca708e9e567f5ed2ec01949026d50aa10116" + dependencies: + is-number "^4.0.0" + kind-of "^6.0.0" + math-random "^1.0.1" + react-i18next@^7.3.4: version "7.3.4" resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-7.3.4.tgz#d5932d47ac7f0d723eecef492ea97b7232673706" @@ -1197,6 +1453,12 @@ regenerator-transform@^0.10.0: babel-types "^6.19.0" 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" + dependencies: + is-equal-shallow "^0.1.3" + regexpu-core@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" @@ -1215,11 +1477,17 @@ regjsparser@^0.1.4: dependencies: jsesc "~0.5.0" -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - dependencies: - is-finite "^1.0.0" +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + +repeat-element@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" + +repeat-string@^1.5.2: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" requires-port@~1.0.0: version "1.0.0" @@ -1229,6 +1497,12 @@ reselect@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/reselect/-/reselect-3.0.1.tgz#efdaa98ea7451324d092b2b2163a6a1d7a9a2147" +resolve@^1.3.2: + version "1.8.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" + dependencies: + path-parse "^1.0.5" + 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" @@ -1241,6 +1515,10 @@ sax@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" +semver@^5.4.1: + version "5.5.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.1.tgz#7dfdd8814bdb7cabc7be0fb1d734cfb66c940477" + semver@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" @@ -1261,17 +1539,7 @@ sinon@^4.5.0: supports-color "^5.1.0" type-detect "^4.0.5" -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - -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" - dependencies: - source-map "^0.5.6" - -source-map@^0.5.6: +source-map@^0.5.0: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" @@ -1319,6 +1587,12 @@ supports-color@^5.1.0: dependencies: has-flag "^3.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" + dependencies: + has-flag "^3.0.0" + svg-pathdata@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/svg-pathdata/-/svg-pathdata-4.0.1.tgz#7d880d05140ef3bda312c72a023db733e9d8ef7a" @@ -1373,6 +1647,10 @@ 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" +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" + transformation-matrix-js@^2.7.1: version "2.7.1" resolved "https://registry.yarnpkg.com/transformation-matrix-js/-/transformation-matrix-js-2.7.1.tgz#0b62e88b655e843e8e5972a668159554ffdcc910" From e7f903bc6b7ad8d6052b790ab47bde33ae763828 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 10 Sep 2018 13:33:37 +0100 Subject: [PATCH 003/141] Mobile: Remove react-native-keyboard-aware-scroll-view --- src/mobile/containers/SetPassword.js | 30 +++++----------------------- src/mobile/package.json | 1 - src/mobile/yarn.lock | 11 ---------- 3 files changed, 5 insertions(+), 37 deletions(-) diff --git a/src/mobile/containers/SetPassword.js b/src/mobile/containers/SetPassword.js index 5aa08a05ec..06f9856080 100644 --- a/src/mobile/containers/SetPassword.js +++ b/src/mobile/containers/SetPassword.js @@ -22,7 +22,6 @@ import { import { generatePasswordHash, getSalt } from '../utils/crypto'; import OnboardingButtons from '../containers/OnboardingButtons'; import StatefulDropdownAlert from './StatefulDropdownAlert'; -import { isAndroid } from '../utils/device'; import { width, height } from '../utils/dimensions'; import InfoBox from '../components/InfoBox'; import { Icon } from '../theme/icons.js'; @@ -209,11 +208,12 @@ class SetPassword extends Component { }); } - renderContent() { + render() { const { t, theme: { body } } = this.props; const { password, reentry } = this.state; + return ( - + @@ -221,7 +221,7 @@ class SetPassword extends Component {

{t('choosePassword')}
- + this.setState({ reentry })} /> - + this.onBackPress()} @@ -258,26 +258,6 @@ class SetPassword extends Component { - - ); - } - - render() { - const { theme: { body } } = this.props; - return ( - - {isAndroid ? ( - {this.renderContent()} - ) : ( - - {this.renderContent()} - - )} ); diff --git a/src/mobile/package.json b/src/mobile/package.json index 11bb265fc1..f602e269a3 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -76,7 +76,6 @@ "react-native-http": "github:tradle/react-native-http#834492d", "react-native-is-device-rooted": "https://github.com/rajivshah3/react-native-isDeviceRooted#latest", "react-native-keep-awake": "^2.0.6", - "react-native-keyboard-aware-scroll-view": "^0.4.1", "react-native-keychain": "2.0.0-rc", "react-native-level-fs": "^3.0.0", "react-native-markdown-renderer": "^3.2.1", diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 74119dc936..ae34b1ea8e 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -5717,10 +5717,6 @@ react-native-haptic-feedback@^1.1.7: Base64 "~0.2.0" inherits "~2.0.1" -react-native-iphone-x-helper@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.1.0.tgz#3a881720900bd8d1c67de2c465ea9aa9296180a7" - "react-native-is-device-rooted@https://github.com/rajivshah3/react-native-isDeviceRooted#latest": version "1.0.3" resolved "https://github.com/rajivshah3/react-native-isDeviceRooted#40e2e0ae8fd671b17b4c4cd2b53ee274152e56ba" @@ -5729,13 +5725,6 @@ react-native-keep-awake@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/react-native-keep-awake/-/react-native-keep-awake-2.0.6.tgz#d8eaffe0a6377cc197469d9f06c7f317225403db" -react-native-keyboard-aware-scroll-view@^0.4.1: - version "0.4.4" - resolved "https://registry.yarnpkg.com/react-native-keyboard-aware-scroll-view/-/react-native-keyboard-aware-scroll-view-0.4.4.tgz#116d08975a84482e4ee64dd0b526a8f04138b0a7" - dependencies: - prop-types "^15.6.0" - react-native-iphone-x-helper "^1.0.1" - react-native-keychain@2.0.0-rc: version "2.0.0-rc" resolved "https://registry.yarnpkg.com/react-native-keychain/-/react-native-keychain-2.0.0-rc.tgz#2446fc520bc630741e95eb722fe48e44988f4c12" From a2f9ed701b60ea31a56ee7a46141796d3b73ff7b Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 10 Sep 2018 13:58:03 +0100 Subject: [PATCH 004/141] Mobile: Fix Android keyboard avoidance --- src/mobile/containers/ForceChangePassword.js | 191 +++++++++---------- src/mobile/containers/SetPassword.js | 4 +- 2 files changed, 88 insertions(+), 107 deletions(-) diff --git a/src/mobile/containers/ForceChangePassword.js b/src/mobile/containers/ForceChangePassword.js index 5e98689309..9b13bd4128 100644 --- a/src/mobile/containers/ForceChangePassword.js +++ b/src/mobile/containers/ForceChangePassword.js @@ -17,7 +17,6 @@ import { zxcvbn } from 'iota-wallet-shared-modules/libs/exports'; import { setPassword, setSetting } from 'iota-wallet-shared-modules/actions/wallet'; import { passwordReasons } from 'iota-wallet-shared-modules/libs/password'; import { generateAlert } from 'iota-wallet-shared-modules/actions/alerts'; -import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; import { setCompletedForcedPasswordUpdate } from 'iota-wallet-shared-modules/actions/settings'; import timer from 'react-native-timer'; import SplashScreen from 'react-native-splash-screen'; @@ -243,118 +242,100 @@ class ForceChangePassword extends Component { return null; } - renderContent() { + render() { + const { t, theme: { body } } = this.props; const { currentPassword, newPassword, newPasswordReentry } = this.state; - const { t, theme } = this.props; - const textColor = { color: theme.body.color }; + const textColor = { color: body.color }; const score = zxcvbn(newPassword); const isValid = score.score === 4; return ( - - - - - - - With update 0.5.0, it is necessary to change your password before using Trinity. - If your current password fulfils the password strength requirements then you may - use your current password again. - - - } - /> - - {this.renderTextField( - (c) => { - this.currentPassword = c; - }, - currentPassword, - t('currentPassword'), - (password) => this.setState({ currentPassword: password }), - 'next', - () => { - if (currentPassword) { - this.newPassword.focus(); - } - }, - )} - {this.renderTextField( - (c) => { - this.newPassword = c; - }, - newPassword, - t('newPassword'), - (password) => this.setState({ newPassword: password }), - 'next', - () => { - if (newPassword) { - this.newPasswordReentry.focus(); - } - }, - 'password', - isValid, - score.score, - )} - {this.renderTextField( - (c) => { - this.newPasswordReentry = c; - }, - newPasswordReentry, - t('confirmPassword'), - (password) => this.setState({ newPasswordReentry: password }), - 'done', - () => this.onSavePress(), - 'passwordReentry', - isValid && newPassword === newPasswordReentry, - )} - - - - {currentPassword !== '' && - newPassword !== '' && - newPasswordReentry !== '' && ( - this.onSavePress()} - hitSlop={{ - top: height / 55, - bottom: height / 55, - left: width / 55, - right: width / 55, - }} - > - - {t('global:save')} - + + + + + + + + With update 0.5.0, it is necessary to change your password before using + Trinity. If your current password fulfils the password strength requirements + then you may use your current password again. + - + } + /> + + {this.renderTextField( + (c) => { + this.currentPassword = c; + }, + currentPassword, + t('currentPassword'), + (password) => this.setState({ currentPassword: password }), + 'next', + () => { + if (currentPassword) { + this.newPassword.focus(); + } + }, + )} + {this.renderTextField( + (c) => { + this.newPassword = c; + }, + newPassword, + t('newPassword'), + (password) => this.setState({ newPassword: password }), + 'next', + () => { + if (newPassword) { + this.newPasswordReentry.focus(); + } + }, + 'password', + isValid, + score.score, + )} + {this.renderTextField( + (c) => { + this.newPasswordReentry = c; + }, + newPasswordReentry, + t('confirmPassword'), + (password) => this.setState({ newPasswordReentry: password }), + 'done', + () => this.onSavePress(), + 'passwordReentry', + isValid && newPassword === newPasswordReentry, )} + + + + {currentPassword !== '' && + newPassword !== '' && + newPasswordReentry !== '' && ( + this.onSavePress()} + hitSlop={{ + top: height / 55, + bottom: height / 55, + left: width / 55, + right: width / 55, + }} + > + + {t('global:save')} + + + + )} + + - - - - ); - } - render() { - const { theme: { body } } = this.props; - - return ( - - {isAndroid ? ( - {this.renderContent()} - ) : ( - - {this.renderContent()} - - )} + ); diff --git a/src/mobile/containers/SetPassword.js b/src/mobile/containers/SetPassword.js index 06f9856080..345900fe8d 100644 --- a/src/mobile/containers/SetPassword.js +++ b/src/mobile/containers/SetPassword.js @@ -2,7 +2,6 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { translate } from 'react-i18next'; import { StyleSheet, View, Text, TouchableWithoutFeedback, Keyboard, KeyboardAvoidingView } from 'react-native'; -import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; import { connect } from 'react-redux'; import { increaseSeedCount, @@ -28,6 +27,7 @@ import { Icon } from '../theme/icons.js'; import GENERAL from '../theme/general'; import Header from '../components/Header'; import PasswordFields from '../components/PasswordFields'; +import { isAndroid } from '../utils/device'; import { leaveNavigationBreadcrumb } from '../utils/bugsnag'; console.ignoredYellowBox = ['Native TextInput']; // eslint-disable-line no-console @@ -221,7 +221,7 @@ class SetPassword extends Component {
{t('choosePassword')}
- + Date: Mon, 10 Sep 2018 15:20:14 +0100 Subject: [PATCH 005/141] Mobile: Fix chart interpolation Android --- src/mobile/components/Chart.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mobile/components/Chart.js b/src/mobile/components/Chart.js index e3ec8bca02..b85d9f2b1b 100644 --- a/src/mobile/components/Chart.js +++ b/src/mobile/components/Chart.js @@ -201,7 +201,7 @@ class Chart extends PureComponent { ) : ( From a0275ad4e22fcdbffc4e967016599b8da5f05c24 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 10 Sep 2018 16:53:48 +0100 Subject: [PATCH 006/141] Mobile: Fix Android account name cut-off --- src/mobile/components/Chart.js | 4 ++-- src/mobile/containers/Home.js | 2 +- src/mobile/containers/TopBar.js | 14 +++++++++----- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/mobile/components/Chart.js b/src/mobile/components/Chart.js index b85d9f2b1b..665209d09c 100644 --- a/src/mobile/components/Chart.js +++ b/src/mobile/components/Chart.js @@ -11,7 +11,7 @@ import GENERAL from '../theme/general'; import { leaveNavigationBreadcrumb } from '../utils/bugsnag'; const chartWidth = width; -const chartHeight = height * 0.36; +const chartHeight = isAndroid ? height * 0.4 : height * 0.36; const styles = StyleSheet.create({ button: { @@ -201,7 +201,7 @@ class Chart extends PureComponent { ) : ( diff --git a/src/mobile/containers/Home.js b/src/mobile/containers/Home.js index 65dfd11a1a..3c3916ccae 100644 --- a/src/mobile/containers/Home.js +++ b/src/mobile/containers/Home.js @@ -114,7 +114,7 @@ class Home extends Component { this.onLoginPress = this.onLoginPress.bind(this); this.setDeepUrl = this.setDeepUrl.bind(this); this.viewFlex = new Animated.Value(0.7); - this.topBarHeight = isAndroid ? height / 8.8 : new Animated.Value(height / 8.8); + this.topBarHeight = isAndroid ? null : new Animated.Value(height / 8.8); this.state = { isKeyboardActive: false, diff --git a/src/mobile/containers/TopBar.js b/src/mobile/containers/TopBar.js index d0807a80a3..c208715b86 100644 --- a/src/mobile/containers/TopBar.js +++ b/src/mobile/containers/TopBar.js @@ -11,6 +11,7 @@ import { setSeedIndex } from 'iota-wallet-shared-modules/actions/wallet'; import { clearLog } from 'iota-wallet-shared-modules/actions/alerts'; import { getBalanceForSelectedAccount, selectAccountInfo } from 'iota-wallet-shared-modules/selectors/accounts'; import { + StatusBar, View, Text, StyleSheet, @@ -141,7 +142,7 @@ class TopBar extends Component { /** @ignore */ clearLog: PropTypes.func.isRequired, /** Top bar height */ - topBarHeight: PropTypes.oneOfType([PropTypes.number, PropTypes.object]).isRequired, + topBarHeight: PropTypes.oneOfType([PropTypes.number, PropTypes.object]), /** Determines if on screen keyboard is active */ isKeyboardActive: PropTypes.bool.isRequired, /** @ignore */ @@ -312,7 +313,7 @@ class TopBar extends Component { const shouldDisable = this.shouldDisable(); const baseContent = ( - + { if (!shouldDisable) { @@ -330,6 +331,8 @@ class TopBar extends Component { flexDirection: 'row', alignItems: 'center', justifyContent: 'space-between', + marginTop: isAndroid ? StatusBar.currentHeight: 0, + paddingBottom: isAndroid ? height / 80 : 0 }} > {hasNotifications && !isKeyboardActive && mode === 'Advanced' ? ( @@ -358,14 +361,15 @@ class TopBar extends Component { {selectedTitle} From 2ae9eba1fc275cd6fc5a875fdf779e6324864026 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Sat, 29 Sep 2018 15:46:41 -0400 Subject: [PATCH 007/141] Mobile: Upgrade React Native to 0.57 --- src/mobile/.babelrc | 2 +- src/mobile/package.json | 6 +- src/mobile/rn-cli.config.js | 11 +- src/mobile/yarn.lock | 1414 ++++++++++++++++++----------------- 4 files changed, 729 insertions(+), 704 deletions(-) diff --git a/src/mobile/.babelrc b/src/mobile/.babelrc index d38bfe4903..cff12ea803 100644 --- a/src/mobile/.babelrc +++ b/src/mobile/.babelrc @@ -1,5 +1,5 @@ { - "presets": ["react-native"], + "presets": ["module:metro-react-native-babel-preset"], "plugins": [ ["module-resolver", { "root": [".", "src"], diff --git a/src/mobile/package.json b/src/mobile/package.json index c6c2db5309..dd55376210 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -56,9 +56,9 @@ "punycode": "^1.4.1", "qr.js": "https://github.com/defunctzombie/qr.js", "querystring-es3": "^0.2.1", - "react": "16.4.1", + "react": "16.5", "react-i18next": "^7.3.0", - "react-native": "0.56.0", + "react-native": "0.57.0", "react-native-camera": "^1.1.4", "react-native-crypto": "^2.0.2", "react-native-detect-navbar-android": "^0.2.0", @@ -126,13 +126,13 @@ "devDependencies": { "babel-jest": "23.4.2", "babel-plugin-module-resolver": "^3.1.1", - "babel-preset-react-native": "5.0.2", "babel-preset-stage-0": "^7.0.0-beta", "cross-env": "^5.2.0", "enzyme": "^3.2.0", "enzyme-adapter-react-16": "^1.1.0", "jest": "23.5.0", "jest-serializer-enzyme": "^1.0.0", + "metro-react-native-babel-preset": "^0.45.0", "react-addons-test-utils": "^15.6.2", "react-dom": "^16.2.0", "react-test-renderer": "^16.5.0", diff --git a/src/mobile/rn-cli.config.js b/src/mobile/rn-cli.config.js index c13276b045..7fc50e5ea3 100644 --- a/src/mobile/rn-cli.config.js +++ b/src/mobile/rn-cli.config.js @@ -1,9 +1,12 @@ const path = require('path'); -const blacklist = require('metro/src/blacklist'); +const metroBlacklist = require('metro-config/src/defaults/blacklist'); + +const alternateRoots = [path.join(__dirname, '../shared')]; +const blacklist = metroBlacklist([/nodejs-project\/.*/]); module.exports = { - getProjectRoots: () => [__dirname, path.join(__dirname, '../shared')], - getBlacklistRE: function() { - return blacklist([/nodejs-project\/.*/]); + watchFolders: alternateRoots, + resolver: { + blacklistRE: blacklist, }, }; diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 035cb7a519..9f871e336f 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -2,234 +2,215 @@ # yarn lockfile v1 -"@babel/code-frame@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.47.tgz#d18c2f4c4ba8d093a2bcfab5616593bfe2441a27" - integrity sha512-W7IeG4MoVf4oUvWfHUx9VG9if3E0xSUDf1urrnNYtC2ow1dz2ptvQ6YsJfyVXDuPTFXz66jkHhzMW7a5Eld7TA== - dependencies: - "@babel/highlight" "7.0.0-beta.47" - -"@babel/code-frame@^7.0.0-beta.35": +"@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== dependencies: "@babel/highlight" "^7.0.0" -"@babel/core@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.0.0-beta.47.tgz#b9c164fb9a1e1083f067c236a9da1d7a7d759271" - integrity sha512-7EIuAX0UVnCgZ0E9tz9rFK0gd+aovwMA9bul+dnkmBQYLrJdas2EHMUSmaK67i1cyZpvgVvXhHtXJxC7wo3rlQ== - dependencies: - "@babel/code-frame" "7.0.0-beta.47" - "@babel/generator" "7.0.0-beta.47" - "@babel/helpers" "7.0.0-beta.47" - "@babel/template" "7.0.0-beta.47" - "@babel/traverse" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - babylon "7.0.0-beta.47" +"@babel/core@^7.0.0": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.1.2.tgz#f8d2a9ceb6832887329a7b60f9d035791400ba4e" + integrity sha512-IFeSSnjXdhDaoysIlev//UzHZbdEmm7D0EIH2qtse9xK7mXEZQpYjs2P00XlP1qYsYvid79p+Zgg6tz1mp6iVw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/generator" "^7.1.2" + "@babel/helpers" "^7.1.2" + "@babel/parser" "^7.1.2" + "@babel/template" "^7.1.2" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.1.2" convert-source-map "^1.1.0" debug "^3.1.0" json5 "^0.5.0" - lodash "^4.17.5" - micromatch "^2.3.11" + lodash "^4.17.10" resolve "^1.3.2" semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.0.0-beta.47.tgz#1835709f377cc4d2a4affee6d9258a10bbf3b9d1" - integrity sha512-fJP+9X+gqgTTZzTqrKJHwebPwt6S/e/4YuyRyKyWHAIirGgUwjRoZgbFci24wwGYMJW7nlkCSwWG7QvCVsG0eg== +"@babel/generator@^7.0.0", "@babel/generator@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.1.2.tgz#fde75c072575ce7abbd97322e8fef5bae67e4630" + integrity sha512-70A9HWLS/1RHk3Ck8tNHKxOoKQuSKocYgwDN85Pyl/RBduss6AKxUR7RIZ/lzduQMSYfWEM4DDBu6A+XGbkFig== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.1.2" jsesc "^2.5.1" - lodash "^4.17.5" + lodash "^4.17.10" source-map "^0.5.0" trim-right "^1.0.1" -"@babel/helper-annotate-as-pure@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0-beta.47.tgz#354fb596055d9db369211bf075f0d5e93904d6f6" - integrity sha512-Pjxb/PrxyKWc7jcAXlawvNAQMxxY+tSSNC5wxJstJjpO10mocmGzBOqNYjxdvVhMb3d0BEPQ8mR+D65fFpZ+TA== +"@babel/helper-annotate-as-pure@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32" + integrity sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.0.0" -"@babel/helper-builder-binary-assignment-operator-visitor@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.0.0-beta.47.tgz#d5917c29ee3d68abc2c72f604bc043f6e056e907" - integrity sha512-nv8d6TcDBb1CJMQzwab/e0rqyqoP9d2AQBjr4GdSiVRpJX4aiLEiLBm2XprdEb/sVIRmmBnVxPXJaHDsS/K2fw== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" + integrity sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w== dependencies: - "@babel/helper-explode-assignable-expression" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" + "@babel/helper-explode-assignable-expression" "^7.1.0" + "@babel/types" "^7.0.0" -"@babel/helper-builder-react-jsx@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.0.0-beta.47.tgz#e39bbce315743044c0d64b31f82f20600f761729" - integrity sha512-oBGX/MyT4kNGuINK2k/KLHD77Ih1oTROtoxnV3uAPS9rLYhmZn3W8qy2L4bbyMwQ89nVSM427b0bTTXUEEReXA== +"@babel/helper-builder-react-jsx@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.0.0.tgz#fa154cb53eb918cf2a9a7ce928e29eb649c5acdb" + integrity sha512-ebJ2JM6NAKW0fQEqN8hOLxK84RbRz9OkUhGS/Xd5u56ejMfVbayJ4+LykERZCOUM6faa6Fp3SZNX3fcT16MKHw== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.0.0" esutils "^2.0.0" -"@babel/helper-call-delegate@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.0.0-beta.47.tgz#96b7804397075f722a4030d3876f51ec19d8829b" - integrity sha512-Rx9TRmCCEP0pWau9gfR6ubcbbX3nVc4ImNY143ftC70jrKdSv5rS20yz2cmCilDzhexwGZQ3PFwOLKe3C/5aEg== +"@babel/helper-call-delegate@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.1.0.tgz#6a957f105f37755e8645343d3038a22e1449cc4a" + integrity sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ== dependencies: - "@babel/helper-hoist-variables" "7.0.0-beta.47" - "@babel/traverse" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" + "@babel/helper-hoist-variables" "^7.0.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" -"@babel/helper-define-map@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.0.0-beta.47.tgz#43a9def87c5166dc29630d51b3da9cc4320c131c" - integrity sha512-pLB9RY7GZKcc/frzgfDY/HwdqxWPe60qMAvNUef1V1bDZ8i4AUgxAANgltFzj61t100WGhqaS0xGkALD+9VA+g== +"@babel/helper-define-map@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz#3b74caec329b3c80c116290887c0dd9ae468c20c" + integrity sha512-yPPcW8dc3gZLN+U1mhYV91QU3n5uTbx7DUdf8NnPbjS0RMwBuHi9Xt2MUgppmNz7CJxTBWsGczTiEp1CSOTPRg== dependencies: - "@babel/helper-function-name" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - lodash "^4.17.5" + "@babel/helper-function-name" "^7.1.0" + "@babel/types" "^7.0.0" + lodash "^4.17.10" -"@babel/helper-explode-assignable-expression@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.0.0-beta.47.tgz#56b688e282a698f4d1cf135453a11ae8af870a19" - integrity sha512-1mwk27zmhSuMUcVWxw5ZKiPYfuWXviZNqgA4OvFBloPf9R+dKDhNgP2uUrkHh68ltVVc3Bup1nsbd/2KM5AxEw== +"@babel/helper-explode-assignable-expression@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" + integrity sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA== dependencies: - "@babel/traverse" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" -"@babel/helper-function-name@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.47.tgz#8057d63e951e85c57c02cdfe55ad7608d73ffb7d" - integrity sha512-0LSvt95XCYaOrDA5K68KkTyldKXizDwBnKACdYzQszp1GdbtzmSeGwFU5Ecw86fU6bkYXtDvkFTOQwk/WQSJPw== +"@babel/helper-function-name@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" + integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== dependencies: - "@babel/helper-get-function-arity" "7.0.0-beta.47" - "@babel/template" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" + "@babel/helper-get-function-arity" "^7.0.0" + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" -"@babel/helper-get-function-arity@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.47.tgz#2de04f97c14b094b55899d3fa83144a16d207510" - integrity sha512-63j0i3YUW8CO//uQc3ACffJdIlYcIlysuHjMF0yzQhqKoQ/CUPv0hf3nBwdRGjiWrr3JcL6++NF4XmXdwSU+fA== +"@babel/helper-get-function-arity@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" + integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.0.0" -"@babel/helper-hoist-variables@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0-beta.47.tgz#ce295d1d723fe22b2820eaec748ed701aa5ae3d0" - integrity sha512-5BcKFhyzrsInlrfO/tGoe6khUuJzGfROD7oozF/5MWsKo/c3gVJfQ5y83lZ4XoTKJt/x4PQlLU0aHd/SJpYONA== +"@babel/helper-hoist-variables@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz#46adc4c5e758645ae7a45deb92bab0918c23bb88" + integrity sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.0.0" -"@babel/helper-member-expression-to-functions@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0-beta.47.tgz#35bfcf1d16dce481ef3dec66d5a1ae6a7d80bb45" - integrity sha512-gpipslnZw2hcVGADUtqQII9KF8FPpRZsVUXwKP/0EnWwtujRFSVL+u2Fh+VXODRAxFmTLo6eGcOr/Vfan0MqYw== +"@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== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.0.0" -"@babel/helper-module-imports@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0-beta.47.tgz#5af072029ffcfbece6ffbaf5d9984c75580f3f04" - integrity sha512-Rk43Ty+a6npu9znK22IqFlseStRGWxEHi2cjmLbbi63VGiseofdUtIJI65F9MTCuMTXAX7VbY/ghef1Jp5qpvw== +"@babel/helper-module-imports@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz#96081b7111e486da4d2cd971ad1a4fe216cc2e3d" + integrity sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A== dependencies: - "@babel/types" "7.0.0-beta.47" - lodash "^4.17.5" + "@babel/types" "^7.0.0" -"@babel/helper-module-transforms@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.0.0-beta.47.tgz#7eff91fc96873bd7b8d816698f1a69bbc01f3c38" - integrity sha512-CziMe30ZunAhe6j05oNOFOg7im1lcv3dYuMxrwBYVe9YdP4NHPU7a1wrDBUhaPmyqTIZDwGnFne7k1KP79SeGQ== +"@babel/helper-module-transforms@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.1.0.tgz#470d4f9676d9fad50b324cdcce5fbabbc3da5787" + integrity sha512-0JZRd2yhawo79Rcm4w0LwSMILFmFXjugG3yqf+P/UsKsRS1mJCmMwwlHDlMg7Avr9LrvSpp4ZSULO9r8jpCzcw== dependencies: - "@babel/helper-module-imports" "7.0.0-beta.47" - "@babel/helper-simple-access" "7.0.0-beta.47" - "@babel/helper-split-export-declaration" "7.0.0-beta.47" - "@babel/template" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - lodash "^4.17.5" + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-simple-access" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" + lodash "^4.17.10" -"@babel/helper-optimise-call-expression@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0-beta.47.tgz#085d864d0613c5813c1b7c71b61bea36f195929e" - integrity sha512-NhnGhjwrhzGas4A/PoBDEtEPCGJHrzhaT6qGmo1hmkA2orG4UNi7KENC38DhJII0n2oUrKUuzTwgCvxKOTiHbw== +"@babel/helper-optimise-call-expression@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" + integrity sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.0.0" -"@babel/helper-plugin-utils@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0-beta.47.tgz#4f564117ec39f96cf60fafcde35c9ddce0e008fd" - integrity sha512-GR67o8boOKVJRKM5Nhk7oVEHpxYy8R00lwu0F82WxxBH+iiT26DqW1e/4w/mo7Bdn1A6l0pNaOlNk1PdM2Hgag== +"@babel/helper-plugin-utils@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" + integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== -"@babel/helper-regex@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.0.0-beta.47.tgz#b8e3b53132c4edbb04804242c02ffe4d60316971" - integrity sha512-dafidvVkjJP5AIWkJspV+7RGj1jeNts0qYvlmVzqAGb6BmQzEldJr6ZPzrmlpW/AW1YJGdw7br2yiwvlCRqDvQ== +"@babel/helper-regex@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.0.0.tgz#2c1718923b57f9bbe64705ffe5640ac64d9bdb27" + integrity sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg== dependencies: - lodash "^4.17.5" + lodash "^4.17.10" -"@babel/helper-remap-async-to-generator@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.0.0-beta.47.tgz#444dc362f61470bd61a745ebb364431d9ca186c2" - integrity sha512-Nmj3lUHQscD160asav2bZ3sMIjGwGY9r6Vrriy9TqH7bmaClKUKUs5Twv0htFWfOKNFLEeY/MaqiAXylr1GS2w== - dependencies: - "@babel/helper-annotate-as-pure" "7.0.0-beta.47" - "@babel/helper-wrap-function" "7.0.0-beta.47" - "@babel/template" "7.0.0-beta.47" - "@babel/traverse" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - -"@babel/helper-replace-supers@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.0.0-beta.47.tgz#310b206a302868a792b659455ceba27db686cbb7" - integrity sha512-yf2JAD1+xNTjavqazqknRgPfd6MbGfvfIcAkxWsPURynAwOMSs4zThED8ImT2d5a97rGPysRJcq1jNh2L0WYxg== - dependencies: - "@babel/helper-member-expression-to-functions" "7.0.0-beta.47" - "@babel/helper-optimise-call-expression" "7.0.0-beta.47" - "@babel/traverse" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - -"@babel/helper-simple-access@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.0.0-beta.47.tgz#234d754acbda9251a10db697ef50181eab125042" - integrity sha512-sd2t3QDKjd+hHkJKaC2AX39l6oIil1N548oMZAtV5YHlVGoWWkAVGnPMxRg7ICEjIftCU3ZI6UeaogyEhF8t7Q== - dependencies: - "@babel/template" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - lodash "^4.17.5" +"@babel/helper-remap-async-to-generator@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz#361d80821b6f38da75bd3f0785ece20a88c5fe7f" + integrity sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-wrap-function" "^7.1.0" + "@babel/template" "^7.1.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" -"@babel/helper-split-export-declaration@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.47.tgz#e11277855472d8d83baf22f2d0186c4a2059b09a" - integrity sha512-jx8GmxryT6Qy4+24W6M6TnVL9T8bxqdyg5UKHjxBdw0Y2Sano1n0WphUS2seuOugn04W2ZQLqGc0ut8nGe/taA== +"@babel/helper-replace-supers@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.1.0.tgz#5fc31de522ec0ef0899dc9b3e7cf6a5dd655f362" + integrity sha512-BvcDWYZRWVuDeXTYZWxekQNO5D4kO55aArwZOTFXw6rlLQA8ZaDicJR1sO47h+HrnCiDFiww0fSPV0d713KBGQ== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" -"@babel/helper-wrap-function@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.0.0-beta.47.tgz#6528b44a3ccb4f3aeeb79add0a88192f7eb81161" - integrity sha512-SAasvh80Mz5q9x15dqH6z8jpM0WTBmxQSNZATSwJwhmWdme6r2gxpufIMr8LwQIJHmXmgNLmvh0zdWSbE/PR4Q== +"@babel/helper-simple-access@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c" + integrity sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w== dependencies: - "@babel/helper-function-name" "7.0.0-beta.47" - "@babel/template" "7.0.0-beta.47" - "@babel/traverse" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" -"@babel/helpers@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.0.0-beta.47.tgz#f9b42ed2e4d5f75ec0fb2e792c173e451e8d40fd" - integrity sha512-uWk7gIua2COEWLwZGxfF5Wq1bgXOt1V6xzWxqeFznrA6F1TUPiAhkK5zORiZEa5RAILp6Mswsn3xFjDyCpp3rQ== +"@babel/helper-split-export-declaration@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" + integrity sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag== dependencies: - "@babel/template" "7.0.0-beta.47" - "@babel/traverse" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.0.0" -"@babel/highlight@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0-beta.47.tgz#8fbc83fb2a21f0bd2b95cdbeb238cf9689cad494" - integrity sha512-d505K3Hth1eg0b2swfEF7oFMw3J9M8ceFg0s6dhCSxOOF+07WDvJ0HKT/YbK/Jk9wn8Wyr6HIRAUPKJ9Wfv8Rg== +"@babel/helper-wrap-function@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.1.0.tgz#8cf54e9190706067f016af8f75cb3df829cc8c66" + integrity sha512-R6HU3dete+rwsdAfrOzTlE9Mcpk4RjU3aX3gi9grtmugQY0u79X7eogUvfXA5sI81Mfq1cn6AgxihfN33STjJA== dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^3.0.0" + "@babel/helper-function-name" "^7.1.0" + "@babel/template" "^7.1.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helpers@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.1.2.tgz#ab752e8c35ef7d39987df4e8586c63b8846234b5" + integrity sha512-Myc3pUE8eswD73aWcartxB16K6CGmHDv9KxOmD2CeOs/FaEAQodr3VYGmlvOmog60vNQ2w8QbatuahepZwrHiA== + dependencies: + "@babel/template" "^7.1.2" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.1.2" "@babel/highlight@^7.0.0": version "7.0.0" @@ -240,319 +221,377 @@ esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/plugin-external-helpers@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-external-helpers/-/plugin-external-helpers-7.0.0-beta.47.tgz#b348b80da9b5fa3acebbe21979aa3839f6f7b875" - integrity sha512-R45V1hsr5DQIbhJajyQm5p2KS+qvmAqkEytP+DhrrEUrx0J1OfqWKZPNDiPe3xdLJtgTNZaDBq1iqfs0gnfslg== +"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.1.2.tgz#85c5c47af6d244fab77bce6b9bd830e38c978409" + integrity sha512-x5HFsW+E/nQalGMw7hu+fvPqnBeBaIr0lWJ2SG0PPL2j+Pm9lYvCrsZJGIgauPIENx0v10INIyFjmSNUD/gSqQ== + +"@babel/plugin-external-helpers@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-external-helpers/-/plugin-external-helpers-7.0.0.tgz#61ee7ba5dba27d7cad72a13d46bec23c060b762e" + integrity sha512-tZKTMdhZvTy0KCEX5EGQQm1RHr7jUa36q/yax1baEA0yZapVYmu10yW7LTqijITgSq416gPVjrcexiA6y4pJlA== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-proposal-class-properties@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.0.0-beta.47.tgz#08c1a1dfc92d0f5c37b39096c6fb883e1ca4b0f5" - integrity sha512-6yuCiF+ZZHPLgAa+0a6/teNeAMsWqY6AVtZA4NhCWnwP4OH0JrRaY7rwvFCJSqNGurf8rF65W9IucM/l0+HOCg== +"@babel/plugin-proposal-class-properties@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.1.0.tgz#9af01856b1241db60ec8838d84691aa0bd1e8df4" + integrity sha512-/PCJWN+CKt5v1xcGn4vnuu13QDoV+P7NcICP44BoonAJoPSGwVkgrXihFIQGiEjjPlUDBIw1cM7wYFLARS2/hw== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.1.0" + "@babel/plugin-syntax-class-properties" "^7.0.0" + +"@babel/plugin-proposal-export-default-from@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.0.0.tgz#a057bbfd4649facfe39f33a537e18554bdd2b5da" + integrity sha512-cWhkx6SyjZ4caFOanoPmDNgQCuYYTmou4QXy886JsyLTw/vhWQbop2gLKsWyyswrJkKTB7fSNxVYbP/oEsoySA== dependencies: - "@babel/helper-function-name" "7.0.0-beta.47" - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/helper-replace-supers" "7.0.0-beta.47" - "@babel/plugin-syntax-class-properties" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-export-default-from" "^7.0.0" -"@babel/plugin-proposal-object-rest-spread@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0-beta.47.tgz#e1529fddc88e948868ee1d0edaa27ebd9502322d" - integrity sha512-ujUjQUyTxUWHfixRD7Y5Nm8VCgHSf6YgbM37LEnojKp5lPahZO42qJfDty+Kh0tEanpI5H8BLPkJbFSzx6TNEw== +"@babel/plugin-proposal-nullish-coalescing-operator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.0.0.tgz#b72ec31adf612d062dc0348316246127a451e45f" + integrity sha512-QIN3UFo1ul4ruAsjIqK43PeXedo1qY74zeGrODJl1KfCGeMc6qJC4rb5Ylml/smzxibqsDeVZGH+TmWHCldRQQ== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/plugin-syntax-object-rest-spread" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.0.0" -"@babel/plugin-proposal-optional-chaining@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.0.0-beta.47.tgz#099e5720121f91eb36544575f98d44cd57865ea5" - integrity sha512-5jlVmdC1Lv874h2553xAp50jVv3L/23KksOLUZdF/9+ZdbAzOlhX6spHiVy/jjfU9G1MFZtZTlxhV5roGkqZvg== +"@babel/plugin-proposal-object-rest-spread@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0.tgz#9a17b547f64d0676b6c9cecd4edf74a82ab85e7e" + integrity sha512-14fhfoPcNu7itSen7Py1iGN0gEm87hX/B+8nZPqkdmANyyYWYMY2pjA3r8WXbWVKMzfnSNS0xY8GVS0IjXi/iw== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/plugin-syntax-optional-chaining" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.0.0" -"@babel/plugin-syntax-class-properties@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.0.0-beta.47.tgz#de52bed12fd472c848e1562f57dd4a202fe27f11" - integrity sha512-vLoAuLSjHSenX3TQmri6ttQWZp3rEtGcRp4LgYEBQ012fN5h+KmcssvkCAqm6V6ozS5KzUWpBlZ6t7YhZG6oBw== +"@babel/plugin-proposal-optional-catch-binding@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.0.0.tgz#b610d928fe551ff7117d42c8bb410eec312a6425" + integrity sha512-JPqAvLG1s13B/AuoBjdBYvn38RqW6n1TzrQO839/sIpqLpbnXKacsAgpZHzLD83Sm8SDXMkkrAvEnJ25+0yIpw== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.0.0" -"@babel/plugin-syntax-dynamic-import@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.0.0-beta.47.tgz#ee964915014a687701ee8e15c289e31a7c899e60" - integrity sha512-J2y7RAH2NwQ+ahJahj2eS1PqS2NWNWTDaEibqrE55VTJU7nPL8AhthRwIQfQkCH+8UIeL/T3Jh1iHIRkvJ6dXA== +"@babel/plugin-proposal-optional-chaining@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.0.0.tgz#3d344d4152253379b8758e7d041148e8787c4a9d" + integrity sha512-7x8HLa71OzNiofbQUVakS0Kmg++6a+cXNfS7QKHbbv03SuSaumJyaWsfNgw+T7aqrJlqurYpZqrkPgXu0iZK0w== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-chaining" "^7.0.0" -"@babel/plugin-syntax-flow@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.0.0-beta.47.tgz#9d0b09b9af6fec87a7b22e406bf948089d58c188" - integrity sha512-+3ZLKNV8tSDnTWL4QRNx5uZB/hUzY71WcgCwoXWy+8ma7EjZ3e3vbR69VR8dJwG1DqGsug6ZzM+afR0G4gKgPA== +"@babel/plugin-syntax-class-properties@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.0.0.tgz#e051af5d300cbfbcec4a7476e37a803489881634" + integrity sha512-cR12g0Qzn4sgkjrbrzWy2GE7m9vMl/sFkqZ3gIpAQdrvPDnLM8180i+ANDFIXfjHo9aqp0ccJlQ0QNZcFUbf9w== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-jsx@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.0.0-beta.47.tgz#f3849d94288695d724bd205b4f6c3c99e4ec24a4" - integrity sha512-5scuJzIYZY8M+A1ra8mcKANIwB5TtsRD6Aw94xZxfvnjhhVMFR5RYE9HshVlBrZVY+r3cJDNIQLJMC/fGJHImA== +"@babel/plugin-syntax-dynamic-import@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.0.0.tgz#6dfb7d8b6c3be14ce952962f658f3b7eb54c33ee" + integrity sha512-Gt9xNyRrCHCiyX/ZxDGOcBnlJl0I3IWicpZRC4CdC0P5a/I07Ya2OAMEBU+J7GmRFVmIetqEYRko6QYRuKOESw== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-nullish-coalescing-operator@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.0.0-beta.47.tgz#24043fa9b2cdd980d4ff18b9d451569565725ebf" - integrity sha512-o0v9WRQwatyMSGoPIdYoK8VTDrjdHU3MQgHLcbveetueKHZGYN3MhZvkCFa86l5WKUGDF81FOk/mta/7QuDI9g== +"@babel/plugin-syntax-export-default-from@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.0.0.tgz#084b639bce3d42f3c5bf3f68ccb42220bb2d729d" + integrity sha512-HNnjg/fFFbnuLAqr/Ocp1Y3GB4AjmXcu1xxn3ql3bS2kGrB/qi+Povshb8i3hOkE5jNozzh8r/0/lq1w8oOWbQ== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-object-rest-spread@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.0.0-beta.47.tgz#21da514d94c138b2261ca09f0dec9abadce16185" - integrity sha512-UOGQCmzvNlZMQOuys7xPiTa2EjTT3xHuhUghcdJnYikqGV43obpIIaP+VDCWPvIT8g0QDIvmRWx5UefvkWXN+w== +"@babel/plugin-syntax-flow@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.0.0.tgz#70638aeaad9ee426bc532e51523cff8ff02f6f17" + integrity sha512-zGcuZWiWWDa5qTZ6iAnpG0fnX/GOu49pGR5PFvkQ9GmKNaSphXQnlNXh/LG20sqWtNrx/eB6krzfEzcwvUyeFA== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-optional-chaining@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.0.0-beta.47.tgz#f1febe859d9dde26f2b2e1f20cf679925d1fab23" - integrity sha512-lt6JV/D7QeAEf3qqUT4JTPkbU6vNCfeMW7BB7JD+HYivITkmXuGIVl7w4JrRB9LkfjkYE5vgiz3Nc733AD7v8w== +"@babel/plugin-syntax-jsx@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.0.0.tgz#034d5e2b4e14ccaea2e4c137af7e4afb39375ffd" + integrity sha512-PdmL2AoPsCLWxhIr3kG2+F9v4WH06Q3z+NoGVpQgnUNGcagXHq5sB3OXxkSahKq9TLdNMN/AJzFYSOo8UKDMHg== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-arrow-functions@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.0.0-beta.47.tgz#d6eecda4c652b909e3088f0983ebaf8ec292984b" - integrity sha512-xiU+7RJAsqx+iZqWSQQWBu9ZDTruWimkg4puDSdRVfEwgZQdOtiU2LuO0+xGFyitJPHkKuje0WvK1tFu1dmxCw== +"@babel/plugin-syntax-nullish-coalescing-operator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.0.0.tgz#b60931d5a15da82625fff6657c39419969598743" + integrity sha512-oAJmMsAvTSIk9y0sZdU2S/nY44PEUuHN7EzNDMgbuR4e/OwyfR9lSmoBJBZ2lslFZIqhksrTt4i+av7uKfNYDw== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-async-to-generator@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.0.0-beta.47.tgz#5723816ea1e91fa313a84e6ee9cc12ff31d46610" - integrity sha512-/TXK3v6ipvmhMO81Y2Vjc7RYROkS2PcmRc+kvmU3CWA7r5I73KWg10UEW/fpWqCuoTCHHHXu1ZcZ5u+nduJeFw== +"@babel/plugin-syntax-object-rest-spread@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.0.0.tgz#37d8fbcaf216bd658ea1aebbeb8b75e88ebc549b" + integrity sha512-5A0n4p6bIiVe5OvQPxBnesezsgFJdHhSs3uFSvaPdMqtsovajLZ+G2vZyvNe10EzJBWWo3AcHGKhAFUxqwp2dw== dependencies: - "@babel/helper-module-imports" "7.0.0-beta.47" - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/helper-remap-async-to-generator" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-block-scoping@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0-beta.47.tgz#b737cc58a81bea57efd5bda0baef9a43a25859ad" - integrity sha512-V/u3Zdy40KjVQeyYUaQnCGiHQbRNJoc6IEtNDERltuW9vYPHS1n6YGc+EHKi8JVYT4kE6UHOjD+BrbCCV4kjRw== +"@babel/plugin-syntax-optional-catch-binding@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.0.0.tgz#886f72008b3a8b185977f7cb70713b45e51ee475" + integrity sha512-Wc+HVvwjcq5qBg1w5RG9o9RVzmCaAg/Vp0erHCKpAYV8La6I94o4GQAmFYNmkzoMO6gzoOSulpKeSSz6mPEoZw== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" - lodash "^4.17.5" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-classes@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.0.0-beta.47.tgz#7aff9cbe7b26fd94d7a9f97fa90135ef20c93fb6" - integrity sha512-hzW/jL6TPBMHJXeXwzuxMN0PFAfjVD0UzATHrFSejY5A7SvhWWrv1cZ3K0/SzCXJ9LpMdxCNiREvVjeD/Tyx2g== - dependencies: - "@babel/helper-annotate-as-pure" "7.0.0-beta.47" - "@babel/helper-define-map" "7.0.0-beta.47" - "@babel/helper-function-name" "7.0.0-beta.47" - "@babel/helper-optimise-call-expression" "7.0.0-beta.47" - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/helper-replace-supers" "7.0.0-beta.47" - "@babel/helper-split-export-declaration" "7.0.0-beta.47" +"@babel/plugin-syntax-optional-chaining@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.0.0.tgz#1e6ecba124310b5d3a8fc1e00d50b1c4c2e05e68" + integrity sha512-QXedQsZf8yua1nNrXSePT0TsGSQH9A1iK08m9dhCMdZeJaaxYcQfXdgHWVV6Cp7WE/afPVvSKIsAHK5wP+yxDA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-typescript@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.0.0.tgz#90f4fe0a741ae9c0dcdc3017717c05a0cbbd5158" + integrity sha512-5fxmdqiAQVQTIS+KSvYeZuTt91wKtBTYi6JlIkvbQ6hmO+9fZE81ezxmMiFMIsxE7CdRSgzn7nQ1BChcvK9OpA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-arrow-functions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.0.0.tgz#a6c14875848c68a3b4b3163a486535ef25c7e749" + integrity sha512-2EZDBl1WIO/q4DIkIp4s86sdp4ZifL51MoIviLY/gG/mLSuOIEg7J8o6mhbxOTvUJkaN50n+8u41FVsr5KLy/w== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-async-to-generator@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.1.0.tgz#109e036496c51dd65857e16acab3bafdf3c57811" + integrity sha512-rNmcmoQ78IrvNCIt/R9U+cixUHeYAzgusTFgIAv+wQb9HJU4szhpDD6e5GCACmj/JP5KxuCwM96bX3L9v4ZN/g== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.1.0" + +"@babel/plugin-transform-block-scoping@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0.tgz#1745075edffd7cdaf69fab2fb6f9694424b7e9bc" + integrity sha512-GWEMCrmHQcYWISilUrk9GDqH4enf3UmhOEbNbNrlNAX1ssH3MsS1xLOS6rdjRVPgA7XXVPn87tRkdTEoA/dxEg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + lodash "^4.17.10" + +"@babel/plugin-transform-classes@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.1.0.tgz#ab3f8a564361800cbc8ab1ca6f21108038432249" + integrity sha512-rNaqoD+4OCBZjM7VaskladgqnZ1LO6o2UxuWSDzljzW21pN1KXkB7BstAVweZdxQkHAujps5QMNOTWesBciKFg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-define-map" "^7.1.0" + "@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.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.0.0-beta.47.tgz#56ef2a021769a2b65e90a3e12fd10b791da9f3e0" - integrity sha512-V78qyzmjj4aq/tjpkMFbV5gPtrx7xdclW1Rn6vV9hIwMSMbtstYEXF4msy614MofvYj6gYbPbNfyhXFIUvz/xw== +"@babel/plugin-transform-computed-properties@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.0.0.tgz#2fbb8900cd3e8258f2a2ede909b90e7556185e31" + integrity sha512-ubouZdChNAv4AAWAgU7QKbB93NU5sHwInEWfp+/OzJKA02E6Woh9RVoX4sZrbRwtybky/d7baTUqwFx+HgbvMA== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-destructuring@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.0.0-beta.47.tgz#452b607775fd1c4d10621997837189efc0a6d428" - integrity sha512-3AaXC9H7qPybJbSs/QMhhj9EZF9MYrb/HRytwki1tckaYifqCJquENIZxDAYmwsWIGIHiq34WqwPRMIsz/b5uQ== +"@babel/plugin-transform-destructuring@^7.0.0": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.1.2.tgz#5fa77d473f5a0a3f5266ad7ce2e8c995a164d60a" + integrity sha512-cvToXvp/OsYxtEn57XJu9BvsGSEYjAh9UeUuXpoi7x6QHB7YdWyQ4lRU/q0Fu1IJNT0o0u4FQ1DMQBzJ8/8vZg== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-exponentiation-operator@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.0.0-beta.47.tgz#930e1abf5db9f4db5b63dbf97f3581ad0be1e907" - integrity sha512-vyGG3kLIXpMuaPL485aqowdWFrxCxXtbzMXy9p1QTK5Q/+9UHpK9XoAVJZGknnsm091m0Ss7spo8uHaxbzYVog== +"@babel/plugin-transform-exponentiation-operator@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.1.0.tgz#9c34c2ee7fd77e02779cfa37e403a2e1003ccc73" + integrity sha512-uZt9kD1Pp/JubkukOGQml9tqAeI8NkE98oZnHZ2qHRElmeKCodbTZgOEUtujSCSLhHSBWbzNiFSDIMC4/RBTLQ== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "7.0.0-beta.47" - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-flow-strip-types@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.0.0-beta.47.tgz#fa45811094c10d70c84efdd0eac62ebd2a634bf7" - integrity sha512-X/8Gd4CxdBx7LOtW2wPSzr83bYyndqYbnJoUEosPJXOG2aRmgVo4hn+wk97vtDH+hMP7HsTApVBffrZNXS3erA== +"@babel/plugin-transform-flow-strip-types@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.0.0.tgz#c40ced34c2783985d90d9f9ac77a13e6fb396a01" + integrity sha512-WhXUNb4It5a19RsgKKbQPrjmy4yWOY1KynpEbNw7bnd1QTcrT/EIl3MJvnGgpgvrKyKbqX7nUNOJfkpLOnoDKA== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/plugin-syntax-flow" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.0.0" -"@babel/plugin-transform-for-of@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.0.0-beta.47.tgz#527d5dc24e4a4ad0fc1d0a3990d29968cb984e76" - integrity sha512-tfH5OMzV9fWLYJTzWDhoRJKr8kvBZWH26jiCgM0ayNq75ES/X947MqMNAgBjJdTAVEV2kOyks2ItgNAJT4rOUw== +"@babel/plugin-transform-for-of@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.0.0.tgz#f2ba4eadb83bd17dc3c7e9b30f4707365e1c3e39" + integrity sha512-TlxKecN20X2tt2UEr2LNE6aqA0oPeMT1Y3cgz8k4Dn1j5ObT8M3nl9aA37LLklx0PBZKETC9ZAf9n/6SujTuXA== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-function-name@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.0.0-beta.47.tgz#fb443c81cc77f3206a863b730b35c8c553ce5041" - integrity sha512-/5I/f8NCouugsRT6ORB1UjCP3N+Rgv/OB6SzmaeIUEpYYPM6D7WQ+4BaRYXQn4eqtOJmTgxDXYa8FgYtoeqP9A== +"@babel/plugin-transform-function-name@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.1.0.tgz#29c5550d5c46208e7f730516d41eeddd4affadbb" + integrity sha512-VxOa1TMlFMtqPW2IDYZQaHsFrq/dDoIjgN098NowhexhZcz3UGlvPgZXuE1jEvNygyWyxRacqDpCZt+par1FNg== dependencies: - "@babel/helper-function-name" "7.0.0-beta.47" - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-literals@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.0.0-beta.47.tgz#448fad196f062163684a38f10f14e83315892e9c" - integrity sha512-PxBw+52qWypwR76YfS2FlW4wZfp61SjIyt3OSPZeWnf0zVQWNVrlRRunJ7lBYudDYvyMwStAE/VynZ0fHtPgng== +"@babel/plugin-transform-literals@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.0.0.tgz#2aec1d29cdd24c407359c930cdd89e914ee8ff86" + integrity sha512-1NTDBWkeNXgpUcyoVFxbr9hS57EpZYXpje92zv0SUzjdu3enaRwF/l3cmyRnXLtIdyJASyiS6PtybK+CgKf7jA== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-modules-commonjs@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.0.0-beta.47.tgz#dfe5c6d867aa9614e55f7616736073edb3aab887" - integrity sha512-MYoLyexybBJ9ODWWMsMFzxAQey68RzhQNPjfNAYPhPPB3X160EZ5qOjWxRS2rYNvuYAxs6guy5OdrDpESqFSrQ== +"@babel/plugin-transform-modules-commonjs@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.1.0.tgz#0a9d86451cbbfb29bd15186306897c67f6f9a05c" + integrity sha512-wtNwtMjn1XGwM0AXPspQgvmE6msSJP15CX2RVfpTSTNPLhKhaOjaIfBaVfj4iUZ/VrFSodcFedwtPg/NxwQlPA== dependencies: - "@babel/helper-module-transforms" "7.0.0-beta.47" - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/helper-simple-access" "7.0.0-beta.47" + "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-simple-access" "^7.1.0" -"@babel/plugin-transform-object-assign@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.0.0-beta.47.tgz#aaf0e4593c1e9b1ceb48fc8770736a029b17ed64" - integrity sha512-5Cc/5TsUjxiAuEQ4WUu+ccP0RI2/qcZWEZA7U87RH26rnhc0NDBZfUbEf1RGM5gBFLFVNzUAoFX8kRykHvl/nQ== +"@babel/plugin-transform-object-assign@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.0.0.tgz#fca6d7500d9675c42868b8f3882979201b9a5ad8" + integrity sha512-Dag8mxx7/03oj8F8PkNso8GEMhwGfeT0TL6KfMsa9Brjx4IpwZVl3WBvEmYks8BMhPmrvM5NQ/tjaMbwEj5ijA== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-parameters@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.0.0-beta.47.tgz#46a4236040a6552a5f165fb3ddd60368954b0ddd" - integrity sha512-UzQG8draO+30Y8eNEREuGBfmEHLL7WFxOjmTBbaTrbdOrm/znCUThqcuNz8cyn2nrZbln7M/loQ3stjf9Pt9fQ== +"@babel/plugin-transform-parameters@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.1.0.tgz#44f492f9d618c9124026e62301c296bf606a7aed" + integrity sha512-vHV7oxkEJ8IHxTfRr3hNGzV446GAb+0hgbA7o/0Jd76s+YzccdWuTU296FOCOl/xweU4t/Ya4g41yWz80RFCRw== dependencies: - "@babel/helper-call-delegate" "7.0.0-beta.47" - "@babel/helper-get-function-arity" "7.0.0-beta.47" - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-call-delegate" "^7.1.0" + "@babel/helper-get-function-arity" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-react-display-name@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.0.0-beta.47.tgz#7a45c1703b8b33f252148ecf1b50dd54809de952" - integrity sha512-Rw1KWihSkGHbqHiQuiFu/beMakDtobW3eLSABw1w3BvRIc/UhBXxwyIxa/q/R9hWFBholAjmx9cKey8FnZPykw== +"@babel/plugin-transform-react-display-name@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.0.0.tgz#93759e6c023782e52c2da3b75eca60d4f10533ee" + integrity sha512-BX8xKuQTO0HzINxT6j/GiCwoJB0AOMs0HmLbEnAvcte8U8rSkNa/eSCAY+l1OA4JnCVq2jw2p6U8QQryy2fTPg== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-react-jsx-source@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.0.0-beta.47.tgz#da8c01704b896409eae168a15045216e72d278dc" - integrity sha512-oZ6D9z+qql+tz7PjGp1CaxepxqDQQTusyjeKsWr7NdEa0v2j3sWLkfK4Aa7kU9BT0+j+r/LN4u33UBkBNVoVvw== +"@babel/plugin-transform-react-jsx-source@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.0.0.tgz#28e00584f9598c0dd279f6280eee213fa0121c3c" + integrity sha512-OSeEpFJEH5dw/TtxTg4nijl4nHBbhqbKL94Xo/Y17WKIf2qJWeIk/QeXACF19lG1vMezkxqruwnTjVizaW7u7w== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/plugin-syntax-jsx" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.0.0" -"@babel/plugin-transform-react-jsx@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.0.0-beta.47.tgz#98c99a69be748d966c0aea08b5ca942ba3fc9ed1" - integrity sha512-HGian2BbCsyAqs6LntVVRpjXG9TkzhHfTynjUoMxOFL29doKEy/0s96SMvmbBSR/wMRKMd1OPvCiEYYxqZtr3g== +"@babel/plugin-transform-react-jsx@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.0.0.tgz#524379e4eca5363cd10c4446ba163f093da75f3e" + integrity sha512-0TMP21hXsSUjIQJmu/r7RiVxeFrXRcMUigbKu0BLegJK9PkYodHstaszcig7zxXfaBji2LYUdtqIkHs+hgYkJQ== dependencies: - "@babel/helper-builder-react-jsx" "7.0.0-beta.47" - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/plugin-syntax-jsx" "7.0.0-beta.47" + "@babel/helper-builder-react-jsx" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.0.0" -"@babel/plugin-transform-regenerator@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0-beta.47.tgz#86500e1c404055fb98fc82b73b09bd053cacb516" - integrity sha512-JEPIiJyqYRfjOYUTZguLkb2HTwudReqLyOljpOXnJ/1ymwsiof4D6ul611DGlMxJMZJGQ6TBi59iY9GoJ6j4Iw== +"@babel/plugin-transform-regenerator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz#5b41686b4ed40bef874d7ed6a84bdd849c13e0c1" + integrity sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw== dependencies: - regenerator-transform "^0.12.3" + regenerator-transform "^0.13.3" -"@babel/plugin-transform-shorthand-properties@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0-beta.47.tgz#00be44c4fad8fe2c00ed18ea15ea3c88dd519dbb" - integrity sha512-+o7/yb0Nrk4Gg/tnBgfBf+G1uGZbtkSluUnj8RyD37ajpDlWmysDjFEHSfktKcuD8YHeGz2M9AYNGcClk1fr/g== +"@babel/plugin-transform-shorthand-properties@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0.tgz#85f8af592dcc07647541a0350e8c95c7bf419d15" + integrity sha512-g/99LI4vm5iOf5r1Gdxq5Xmu91zvjhEG5+yZDJW268AZELAu4J1EiFLnkSG3yuUsZyOipVOVUKoGPYwfsTymhw== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-spread@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.0.0-beta.47.tgz#3feadb02292ed1e9b75090d651b9df88a7ab5c50" - integrity sha512-LFAozFdfT4bE2AQw2BnjzLufTX4GBsTUHUGRhT8XNoDYuGnV+7k9Yj6JU3/7csJc9u6W91PArYgoO+D56CMw6Q== +"@babel/plugin-transform-spread@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.0.0.tgz#93583ce48dd8c85e53f3a46056c856e4af30b49b" + integrity sha512-L702YFy2EvirrR4shTj0g2xQp7aNwZoWNCkNu2mcoU0uyzMl0XRwDSwzB/xp6DSUFiBmEXuyAyEN16LsgVqGGQ== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-sticky-regex@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.0.0-beta.47.tgz#c0aa347d76b5dc87d3b37ac016ada3f950605131" - integrity sha512-+Rc6NihGoXcwAqAxbiumvzOYxRR0aUg1ZExfyHnI5QnQf0sf4xAfgT/YpGvEgLd5Ci0rka+IWSj54PhzZkhuTg== +"@babel/plugin-transform-sticky-regex@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.0.0.tgz#30a9d64ac2ab46eec087b8530535becd90e73366" + integrity sha512-LFUToxiyS/WD+XEWpkx/XJBrUXKewSZpzX68s+yEOtIbdnsRjpryDw9U06gYc6klYEij/+KQVRnD3nz3AoKmjw== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/helper-regex" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" -"@babel/plugin-transform-template-literals@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.0.0-beta.47.tgz#5f7b5badf64c4c5da79026aeab03001e62a6ee5f" - integrity sha512-ORfrfN/gQoRuI+xf+kOa2i/yvXfedFRgH+KtgoIrpUQom7OhexxzD280x80LMCIkdaVGzYhvlC3kdJkFMWAfUg== +"@babel/plugin-transform-template-literals@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.0.0.tgz#084f1952efe5b153ddae69eb8945f882c7a97c65" + integrity sha512-vA6rkTCabRZu7Nbl9DfLZE1imj4tzdWcg5vtdQGvj+OH9itNNB6hxuRMHuIY8SGnEt1T9g5foqs9LnrHzsqEFg== dependencies: - "@babel/helper-annotate-as-pure" "7.0.0-beta.47" - "@babel/helper-plugin-utils" "7.0.0-beta.47" + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-unicode-regex@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.0.0-beta.47.tgz#efed0b2f1dfbf28283502234a95b4be88f7fdcb6" - integrity sha512-44nWn421tMVZ/A4+1uppzoAO7nrlwWzefMr9JUi5G+tXl0DLEtWy+F7L6zCVw19C4OAOA6WlolVro5CEs6g6AQ== +"@babel/plugin-transform-typescript@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.1.0.tgz#81e7b4be90e7317cbd04bf1163ebf06b2adee60b" + integrity sha512-TOTtVeT+fekAesiCHnPz+PSkYSdOSLyLn42DI45nxg6iCdlQY6LIj/tYqpMB0y+YicoTUiYiXqF8rG6SKfhw6Q== dependencies: - "@babel/helper-plugin-utils" "7.0.0-beta.47" - "@babel/helper-regex" "7.0.0-beta.47" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-typescript" "^7.0.0" + +"@babel/plugin-transform-unicode-regex@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.0.0.tgz#c6780e5b1863a76fe792d90eded9fcd5b51d68fc" + integrity sha512-uJBrJhBOEa3D033P95nPHu3nbFwFE9ZgXsfEitzoIXIwqAZWk7uXcg06yFKXz9FSxBH5ucgU/cYdX0IV8ldHKw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" regexpu-core "^4.1.3" -"@babel/register@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.0.0-beta.47.tgz#ac53bc357ca59979db0e306aa5d3121aa612a7a2" - integrity sha512-r5aS1bAqW0tHvwUNPRRdmIedSWGK/oyv598EENpV/+VZF8EkX9TiVqCpJyg6zucPPyMjtdXN1pK/Yljp5NdGGA== +"@babel/register@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.0.0.tgz#fa634bae1bfa429f60615b754fc1f1d745edd827" + integrity sha512-f/+CRmaCe7rVEvcvPvxeA8j5aJhHC3aJie7YuqcMDhUOuyWLA7J/aNrTaHIzoWPEhpHA54mec4Mm8fv8KBlv3g== dependencies: - core-js "^2.5.3" + core-js "^2.5.7" find-cache-dir "^1.0.0" home-or-tmp "^3.0.0" - lodash "^4.17.5" + lodash "^4.17.10" mkdirp "^0.5.1" - pirates "^3.0.1" - source-map-support "^0.4.2" - -"@babel/template@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.0.0-beta.47.tgz#0473970a7c0bee7a1a18c1ca999d3ba5e5bad83d" - integrity sha512-mAzrOCLwOb4jAobHi0kTwIkoamP1Do28c6zxvrDXjYSJFZHz6KGuzMaT0AV7ZCq7M3si7QypVVMVX2bE6IsuOg== - dependencies: - "@babel/code-frame" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - babylon "7.0.0-beta.47" - lodash "^4.17.5" + pirates "^4.0.0" + source-map-support "^0.5.9" -"@babel/traverse@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.0.0-beta.47.tgz#0e57fdbb9ff3a909188b6ebf1e529c641e6c82a4" - integrity sha512-kYGGs//OnUnei+9TTldxlgf7llprj7VUeDKtG50+g+0k1g0yZyrkEgbyFheYFdnudR8IDEHOEXVsUuY82r5Aiw== - dependencies: - "@babel/code-frame" "7.0.0-beta.47" - "@babel/generator" "7.0.0-beta.47" - "@babel/helper-function-name" "7.0.0-beta.47" - "@babel/helper-split-export-declaration" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - babylon "7.0.0-beta.47" +"@babel/template@^7.0.0", "@babel/template@^7.1.0", "@babel/template@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.1.2.tgz#090484a574fef5a2d2d7726a674eceda5c5b5644" + integrity sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.1.2" + "@babel/types" "^7.1.2" + +"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.1.0.tgz#503ec6669387efd182c3888c4eec07bcc45d91b2" + integrity sha512-bwgln0FsMoxm3pLOgrrnGaXk18sSM9JNf1/nHC/FksmNGFbYnPWY4GYCfLxyP1KRmfsxqkRpfoa6xr6VuuSxdw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/generator" "^7.0.0" + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" debug "^3.1.0" globals "^11.1.0" - invariant "^2.2.0" - lodash "^4.17.5" + lodash "^4.17.10" -"@babel/types@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0-beta.47.tgz#e6fcc1a691459002c2671d558a586706dddaeef8" - integrity sha512-MOP5pOosg7JETrVGg8OQyzmUmbyoSopT5j2HlblHsto89mPz3cmxzn1IA4UNUmnWKgeticSwfhS+Gdy25IIlBQ== +"@babel/types@^7.0.0", "@babel/types@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.1.2.tgz#183e7952cf6691628afdc2e2b90d03240bac80c0" + integrity sha512-pb1I05sZEKiSlMUV9UReaqsCPUpgbHHHu2n1piRm7JkuBkm6QxcaIzKu6FMnMtCbih/cEYTR+RGYYC96Yk9HAg== dependencies: esutils "^2.0.2" - lodash "^4.17.5" + lodash "^4.17.10" to-fast-properties "^2.0.0" "@types/markdown-it@^0.0.4": @@ -1003,7 +1042,7 @@ babel-code-frame@^6.26.0: esutils "^2.0.2" js-tokens "^3.0.2" -babel-core@^6.0.0, babel-core@^6.24.1, babel-core@^6.26.0, babel-core@^6.7.2: +babel-core@^6.0.0, babel-core@^6.26.0, babel-core@^6.7.2: version "6.26.3" resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== @@ -1123,7 +1162,7 @@ babel-helper-optimise-call-expression@^6.24.1: babel-runtime "^6.22.0" babel-types "^6.24.1" -babel-helper-regex@^6.24.1, babel-helper-regex@^6.26.0: +babel-helper-regex@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" integrity sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI= @@ -1202,13 +1241,6 @@ babel-plugin-check-es2015-constants@^6.8.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-external-helpers@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-external-helpers/-/babel-plugin-external-helpers-6.22.0.tgz#2285f48b02bd5dede85175caf8c62e86adccefa1" - integrity sha1-IoX0iwK9Xe3oUXXK+MYuhq3M76E= - 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" @@ -1420,7 +1452,7 @@ babel-plugin-transform-es2015-computed-properties@^6.8.0: babel-runtime "^6.22.0" babel-template "^6.24.1" -babel-plugin-transform-es2015-destructuring@6.x, babel-plugin-transform-es2015-destructuring@^6.8.0: +babel-plugin-transform-es2015-destructuring@^6.8.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= @@ -1434,7 +1466,7 @@ babel-plugin-transform-es2015-for-of@^6.8.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-function-name@6.x, babel-plugin-transform-es2015-function-name@^6.8.0: +babel-plugin-transform-es2015-function-name@^6.8.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= @@ -1450,7 +1482,7 @@ babel-plugin-transform-es2015-literals@^6.8.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-modules-commonjs@6.x, babel-plugin-transform-es2015-modules-commonjs@^6.8.0: +babel-plugin-transform-es2015-modules-commonjs@^6.8.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== @@ -1468,7 +1500,7 @@ babel-plugin-transform-es2015-object-super@^6.8.0: babel-helper-replace-supers "^6.24.1" babel-runtime "^6.22.0" -babel-plugin-transform-es2015-parameters@6.x, babel-plugin-transform-es2015-parameters@^6.8.0: +babel-plugin-transform-es2015-parameters@^6.8.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= @@ -1480,7 +1512,7 @@ babel-plugin-transform-es2015-parameters@6.x, babel-plugin-transform-es2015-para babel-traverse "^6.24.1" babel-types "^6.24.1" -babel-plugin-transform-es2015-shorthand-properties@6.x, babel-plugin-transform-es2015-shorthand-properties@^6.8.0: +babel-plugin-transform-es2015-shorthand-properties@^6.8.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= @@ -1488,22 +1520,13 @@ babel-plugin-transform-es2015-shorthand-properties@6.x, babel-plugin-transform-e babel-runtime "^6.22.0" babel-types "^6.24.1" -babel-plugin-transform-es2015-spread@6.x, babel-plugin-transform-es2015-spread@^6.8.0: +babel-plugin-transform-es2015-spread@^6.8.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-sticky-regex@6.x: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" - integrity sha1-AMHNsaynERLN8M9hJsLta0V8zbw= - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - babel-plugin-transform-es2015-template-literals@^6.8.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" @@ -1511,15 +1534,6 @@ babel-plugin-transform-es2015-template-literals@^6.8.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-unicode-regex@6.x: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" - integrity sha1-04sS9C6nMj9yk4fxinxa4frrNek= - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - regexpu-core "^2.0.0" - babel-plugin-transform-es3-member-expression-literals@^6.8.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es3-member-expression-literals/-/babel-plugin-transform-es3-member-expression-literals-6.22.0.tgz#733d3444f3ecc41bef8ed1a6a4e09657b8969ebb" @@ -1548,7 +1562,7 @@ babel-plugin-transform-export-namespace@7.0.0-beta.3: dependencies: babel-plugin-syntax-export-extensions "7.0.0-beta.3" -babel-plugin-transform-flow-strip-types@^6.21.0, babel-plugin-transform-flow-strip-types@^6.8.0: +babel-plugin-transform-flow-strip-types@^6.8.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= @@ -1653,22 +1667,41 @@ babel-plugin-transform-unicode-property-regex@^2.0.5: babel-helper-regex "^6.26.0" regexpu-core "^4.1.3" -babel-preset-es2015-node@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/babel-preset-es2015-node/-/babel-preset-es2015-node-6.1.1.tgz#60b23157024b0cfebf3a63554cb05ee035b4e55f" - integrity sha1-YLIxVwJLDP6/OmNVTLBe4DW05V8= - dependencies: - babel-plugin-transform-es2015-destructuring "6.x" - babel-plugin-transform-es2015-function-name "6.x" - babel-plugin-transform-es2015-modules-commonjs "6.x" - babel-plugin-transform-es2015-parameters "6.x" - babel-plugin-transform-es2015-shorthand-properties "6.x" - babel-plugin-transform-es2015-spread "6.x" - babel-plugin-transform-es2015-sticky-regex "6.x" - babel-plugin-transform-es2015-unicode-regex "6.x" - semver "5.x" - -babel-preset-fbjs@^2.1.2, babel-preset-fbjs@^2.1.4: +babel-preset-fbjs@2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-2.3.0.tgz#92ff81307c18b926895114f9828ae1674c097f80" + integrity sha512-ZOpAI1/bN0Y3J1ZAK9gRsFkHy9gGgJoDRUjtUCla/129LC7uViq9nIK22YdHfey8szohYoZY3f9L2lGOv0Edqw== + dependencies: + babel-plugin-check-es2015-constants "^6.8.0" + babel-plugin-syntax-class-properties "^6.8.0" + babel-plugin-syntax-flow "^6.8.0" + babel-plugin-syntax-jsx "^6.8.0" + babel-plugin-syntax-object-rest-spread "^6.8.0" + babel-plugin-syntax-trailing-function-commas "^6.8.0" + babel-plugin-transform-class-properties "^6.8.0" + babel-plugin-transform-es2015-arrow-functions "^6.8.0" + babel-plugin-transform-es2015-block-scoped-functions "^6.8.0" + babel-plugin-transform-es2015-block-scoping "^6.8.0" + babel-plugin-transform-es2015-classes "^6.8.0" + babel-plugin-transform-es2015-computed-properties "^6.8.0" + babel-plugin-transform-es2015-destructuring "^6.8.0" + babel-plugin-transform-es2015-for-of "^6.8.0" + babel-plugin-transform-es2015-function-name "^6.8.0" + babel-plugin-transform-es2015-literals "^6.8.0" + babel-plugin-transform-es2015-modules-commonjs "^6.8.0" + babel-plugin-transform-es2015-object-super "^6.8.0" + babel-plugin-transform-es2015-parameters "^6.8.0" + babel-plugin-transform-es2015-shorthand-properties "^6.8.0" + babel-plugin-transform-es2015-spread "^6.8.0" + babel-plugin-transform-es2015-template-literals "^6.8.0" + babel-plugin-transform-es3-member-expression-literals "^6.8.0" + babel-plugin-transform-es3-property-literals "^6.8.0" + babel-plugin-transform-flow-strip-types "^6.8.0" + babel-plugin-transform-object-rest-spread "^6.8.0" + babel-plugin-transform-react-display-name "^6.8.0" + babel-plugin-transform-react-jsx "^6.8.0" + +babel-preset-fbjs@^2.1.2: version "2.1.4" resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-2.1.4.tgz#22f358e6654073acf61e47a052a777d7bccf03af" integrity sha512-6XVQwlO26V5/0P9s2Eje8Epqkv/ihaMJ798+W98ktOA8fCn2IFM6wEi7CDW3fTbKFZ/8fDGvGZH01B6GSuNiWA== @@ -1710,39 +1743,6 @@ babel-preset-jest@^23.2.0: babel-plugin-jest-hoist "^23.2.0" babel-plugin-syntax-object-rest-spread "^6.13.0" -babel-preset-react-native@5.0.2, babel-preset-react-native@^5.0.0: - version "5.0.2" - resolved "https://registry.yarnpkg.com/babel-preset-react-native/-/babel-preset-react-native-5.0.2.tgz#dfed62379712a9c017ff99ce4fbeac1e11d42285" - integrity sha512-Ua5JeQ1yGK8UoydMPzE2Ghq5raOKxXzpyApYDuHi4etIbXi5+GnCin19Nu+1obLQCf2Dxy9Y/GZwI0rnNOjggA== - dependencies: - "@babel/plugin-proposal-class-properties" "7.0.0-beta.47" - "@babel/plugin-proposal-object-rest-spread" "7.0.0-beta.47" - "@babel/plugin-proposal-optional-chaining" "7.0.0-beta.47" - "@babel/plugin-transform-arrow-functions" "7.0.0-beta.47" - "@babel/plugin-transform-block-scoping" "7.0.0-beta.47" - "@babel/plugin-transform-classes" "7.0.0-beta.47" - "@babel/plugin-transform-computed-properties" "7.0.0-beta.47" - "@babel/plugin-transform-destructuring" "7.0.0-beta.47" - "@babel/plugin-transform-exponentiation-operator" "7.0.0-beta.47" - "@babel/plugin-transform-flow-strip-types" "7.0.0-beta.47" - "@babel/plugin-transform-for-of" "7.0.0-beta.47" - "@babel/plugin-transform-function-name" "7.0.0-beta.47" - "@babel/plugin-transform-literals" "7.0.0-beta.47" - "@babel/plugin-transform-modules-commonjs" "7.0.0-beta.47" - "@babel/plugin-transform-object-assign" "7.0.0-beta.47" - "@babel/plugin-transform-parameters" "7.0.0-beta.47" - "@babel/plugin-transform-react-display-name" "7.0.0-beta.47" - "@babel/plugin-transform-react-jsx" "7.0.0-beta.47" - "@babel/plugin-transform-react-jsx-source" "7.0.0-beta.47" - "@babel/plugin-transform-regenerator" "7.0.0-beta.47" - "@babel/plugin-transform-shorthand-properties" "7.0.0-beta.47" - "@babel/plugin-transform-spread" "7.0.0-beta.47" - "@babel/plugin-transform-sticky-regex" "7.0.0-beta.47" - "@babel/plugin-transform-template-literals" "7.0.0-beta.47" - "@babel/plugin-transform-unicode-regex" "7.0.0-beta.47" - "@babel/template" "7.0.0-beta.47" - metro-babel7-plugin-react-transform "^0.39.1" - babel-preset-stage-0@^7.0.0-beta: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-preset-stage-0/-/babel-preset-stage-0-7.0.0-beta.3.tgz#a3105088710c4995d6f0c35b75bde4d7fe972f86" @@ -1786,7 +1786,7 @@ babel-preset-stage-3@7.0.0-beta.3: babel-plugin-transform-optional-catch-binding "7.0.0-beta.3" babel-plugin-transform-unicode-property-regex "^2.0.5" -babel-register@^6.24.1, babel-register@^6.26.0: +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= @@ -1882,11 +1882,6 @@ babylon@7.0.0-beta.27: resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.27.tgz#b6edd30ef30619e2f630eb52585fdda84e6542cd" integrity sha512-ksRx+r8eFIfdt63MCgLc9VxGL7W3jcyveQvMpNMVHgW+eb9mq3Xbm45FLCNkw8h92RvoNp4uuiwzcCEwxjDBZg== -babylon@7.0.0-beta.47: - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.47.tgz#6d1fa44f0abec41ab7c780481e62fd9aafbdea80" - integrity sha512-+rq2cr4GDhtToEzKFD6KZZMDBXhjFAr9JjPw9pAppZACeEWqNM294j+NdBzkSHYXwzzBmVjZ3nEVJlOhbR2gOQ== - babylon@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" @@ -2536,7 +2531,7 @@ core-js@^2.2.2, core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0: resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.6.tgz#0fe6d45bf3cac3ac364a9d72de7576f4eb221b9d" integrity sha512-lQUVfQi0aLix2xpyjrrJEvfuYCqPc/HwmTKsC/VNf8q0zsjX7SQZtp4+oRONN5Tsur9GDETPjj+Ub2iDiGZfSQ== -core-js@^2.5.3: +core-js@^2.5.7: version "2.5.7" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" integrity sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw== @@ -2551,6 +2546,15 @@ core-util-is@1.0.2, core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= +cosmiconfig@^5.0.5: + version "5.0.6" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.6.tgz#dca6cf680a0bd03589aff684700858c81abeeb39" + integrity sha512-6DWfizHriCrFWURP1/qyhsiFvYdlJzbCzmtFWh744+KyWsJo5+kPzUZZaMRSSItoYc0pxFX7gEO7ZC1/gN/7AQ== + dependencies: + is-directory "^0.3.1" + js-yaml "^3.9.0" + parse-json "^4.0.0" + create-ecdh@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" @@ -3154,6 +3158,13 @@ error-ex@^1.2.0: dependencies: is-arrayish "^0.2.1" +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + errorhandler@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/errorhandler/-/errorhandler-1.5.0.tgz#eaba64ca5d542a311ac945f582defc336165d9f4" @@ -3458,7 +3469,20 @@ fbjs-scripts@^0.8.1: semver "^5.1.0" through2 "^2.0.0" -fbjs@0.8.16, fbjs@^0.8.14, fbjs@^0.8.16, fbjs@^0.8.9: +fbjs@0.8.17: + version "0.8.17" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd" + integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90= + dependencies: + core-js "^1.0.0" + isomorphic-fetch "^2.1.1" + loose-envify "^1.0.0" + object-assign "^4.1.0" + promise "^7.1.1" + setimmediate "^1.0.5" + ua-parser-js "^0.7.18" + +fbjs@^0.8.16, fbjs@^0.8.9: version "0.8.16" resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db" integrity sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s= @@ -4266,6 +4290,11 @@ is-descriptor@^1.0.0, is-descriptor@^1.0.2: is-data-descriptor "^1.0.0" kind-of "^6.0.2" +is-directory@^0.3.1: + version "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" @@ -4669,14 +4698,7 @@ jest-diff@^23.6.0: jest-get-type "^22.1.0" pretty-format "^23.6.0" -jest-docblock@23.0.1: - version "23.0.1" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.0.1.tgz#deddd18333be5dc2415260a04ef3fce9276b5725" - integrity sha1-3t3RgzO+XcJBUmCgTvP86SdrVyU= - dependencies: - detect-newline "^2.1.0" - -jest-docblock@^23.0.1, jest-docblock@^23.2.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= @@ -4713,16 +4735,17 @@ jest-get-type@^22.1.0: resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz#e3a8504d8479342dd4420236b322869f18900ce4" integrity sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w== -jest-haste-map@23.1.0: - version "23.1.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-23.1.0.tgz#18e6c7d5a8d27136f91b7d9852f85de0c7074c49" - integrity sha1-GObH1ajScTb5G32YUvhd4McHTEk= +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== dependencies: fb-watchman "^2.0.0" graceful-fs "^4.1.11" - jest-docblock "^23.0.1" + invariant "^2.2.4" + jest-docblock "^23.2.0" jest-serializer "^23.0.1" - jest-worker "^23.0.1" + jest-worker "^23.2.0" micromatch "^2.3.11" sane "^2.0.0" @@ -4919,14 +4942,7 @@ jest-watcher@^23.4.0: chalk "^2.0.1" string-length "^2.0.0" -jest-worker@23.0.1: - version "23.0.1" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-23.0.1.tgz#9e649dd963ff4046026f91c4017f039a6aa4a7bc" - integrity sha1-nmSd2WP/QEYCb5HEAX8Dmmqkp7w= - dependencies: - merge-stream "^1.0.1" - -jest-worker@^23.0.1, jest-worker@^23.2.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= @@ -4951,7 +4967,7 @@ js-tokens@^4.0.0: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@^3.5.3: +js-yaml@^3.5.3, js-yaml@^3.9.0: version "3.12.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" integrity sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A== @@ -5019,6 +5035,11 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= +json-parse-better-errors@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== + json-schema-traverse@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" @@ -5041,11 +5062,6 @@ json-stringify-safe@^5.0.1, 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.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" - integrity sha1-BUNS5MTIDIbAkjh31EneF2pzLI0= - json5@^0.5.0, json5@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" @@ -5166,7 +5182,7 @@ lcid@^1.0.0: dependencies: invert-kv "^1.0.0" -left-pad@^1.1.3, left-pad@^1.3.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== @@ -5514,160 +5530,169 @@ merge@^1.1.3: resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da" integrity sha1-dTHjnUlJwoGma4xabgJl6LBYlNo= -metro-babel-register@0.38.4, metro-babel-register@^0.38.1: - version "0.38.4" - resolved "https://registry.yarnpkg.com/metro-babel-register/-/metro-babel-register-0.38.4.tgz#712a79138cadbd37c9487e5cb822b3842d81ccee" - integrity sha512-CiDBqiV910RCDfNXg0PRdgYaPlU2GbjTFfQZJZhDv3gYytFYyrge+s0RNGQRly4/+g1RKE8gS6oJpKy9i05GIg== - dependencies: - "@babel/plugin-proposal-class-properties" "7.0.0-beta.47" - "@babel/plugin-proposal-object-rest-spread" "7.0.0-beta.47" - "@babel/plugin-proposal-optional-chaining" "7.0.0-beta.47" - "@babel/plugin-transform-async-to-generator" "7.0.0-beta.47" - "@babel/plugin-transform-flow-strip-types" "7.0.0-beta.47" - "@babel/plugin-transform-modules-commonjs" "7.0.0-beta.47" - "@babel/register" "7.0.0-beta.47" +metro-babel-register@^0.45.0: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro-babel-register/-/metro-babel-register-0.45.6.tgz#c0dfb78b7d4f8454468a515a3118a12b08e855cc" + integrity sha512-Io8JinYIzGcXiTaO7o0DGw8wFcAiITTb7mLh3lbuJd9PndbPOo+jhrHkTsNtXc9MRHiT4KbEheXJ/QoeLKJK/Q== + dependencies: + "@babel/core" "^7.0.0" + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" + "@babel/plugin-proposal-optional-chaining" "^7.0.0" + "@babel/plugin-transform-async-to-generator" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/plugin-transform-modules-commonjs" "^7.0.0" + "@babel/register" "^7.0.0" core-js "^2.2.2" escape-string-regexp "^1.0.5" -metro-babel7-plugin-react-transform@0.38.4: - version "0.38.4" - resolved "https://registry.yarnpkg.com/metro-babel7-plugin-react-transform/-/metro-babel7-plugin-react-transform-0.38.4.tgz#56c4364388457c7e56055d557c2a1716e2c04a55" - integrity sha512-1mEK3NzZ6fd6cgFtQV+T8q4+Fqzw9rMsLEReLBXvCYZJ/imamTsuIyCBnPy4WhnVcBQON3pFjd/7fV8OOuD/9w== +metro-babel7-plugin-react-transform@0.45.6: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro-babel7-plugin-react-transform/-/metro-babel7-plugin-react-transform-0.45.6.tgz#e13b7b0e87e4f908d61b1bf88753af1119e19f58" + integrity sha512-NsVKqiBaF+Tm3FXzqiEExl9iJG+EimbpQP5h9ygxBE4AsYRc2S3X/YD/1ds3RTHMgfhinWVaus+DrG5OqK5mTA== dependencies: - "@babel/helper-module-imports" "7.0.0-beta.47" - lodash "^4.17.5" + "@babel/helper-module-imports" "^7.0.0" -metro-babel7-plugin-react-transform@^0.39.1: - version "0.39.1" - resolved "https://registry.yarnpkg.com/metro-babel7-plugin-react-transform/-/metro-babel7-plugin-react-transform-0.39.1.tgz#deb851fa6904ed5b9f4e38f69e3f318a0fb670e6" - integrity sha512-7atigK+8EZ1DAWhpcw2a60OhCPihe9TsRHGOKUUwJjXmXDxmYxoxejh1kK5vJSaW38P45PkUBwnfNwISWFv4mQ== - dependencies: - "@babel/helper-module-imports" "7.0.0-beta.47" - lodash "^4.17.5" - -metro-cache@0.38.4: - version "0.38.4" - resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.38.4.tgz#8025d55134c7ad711894d1d839c43f2e2b680851" - integrity sha512-dP6uZqLHwgbTeb2pD7AHmokO84mTQNG46NIQ8juLJxsFtiLO8QZqVgHaSamoEUeTo1CaSfESZ4g8WpIonFgnPA== +metro-cache@0.45.6: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.45.6.tgz#7ca9f66bc038a309d21e4c5264b806a692ca5a55" + integrity sha512-v7q2pLsI7oABEjpwPJwTd7ufwKvpctVOddcffI/2hRhuJC/seLlqkRt7kv+Q/WfaR9X4KLcEoIjZmgNy4cw1ag== dependencies: jest-serializer "23.0.1" - metro-core "0.38.4" + metro-core "0.45.6" mkdirp "^0.5.1" rimraf "^2.5.4" -metro-core@0.38.4, metro-core@^0.38.1: - version "0.38.4" - resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.38.4.tgz#975c8dda01aa923691f5ddb41672904d744a821d" - integrity sha512-FBRWdIcSpzQSVSS4f1pFLsYu8uWOfY/iiwkgnCsrwKryP59g57oFIHdFOBp2l3NE9tKJI0LjnPUJxGJ70SEZyA== +metro-config@0.45.6: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro-config/-/metro-config-0.45.6.tgz#f08472ea8c4807bd23263c42948019a9a4f34ada" + integrity sha512-ZhVtkpXhOi+qWi7vdE3HGIhyyBT1wtIukQuxTMwLTUluv2/1DClo/uX9inmf++CmOhOpU7QpqrMzl6vf+AwnOg== + dependencies: + cosmiconfig "^5.0.5" + metro "0.45.6" + metro-cache "0.45.6" + metro-core "0.45.6" + +metro-core@0.45.6, metro-core@^0.45.0: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.45.6.tgz#b8654196cbeb28f75a23756422348f870117e4e3" + integrity sha512-M0YkGnkjStdCsSNYVW+aVlJ4WjwcqjIhQV+VzEnGZYdyo6cMi9MxUZ69iV2jIxd3LAeaQQaNe8OQtQp8dfIh/g== dependencies: - jest-haste-map "23.1.0" + jest-haste-map "23.5.0" lodash.throttle "^4.1.1" - metro-resolver "0.38.4" + metro-resolver "0.45.6" wordwrap "^1.0.0" -metro-memory-fs@^0.38.1: - version "0.38.4" - resolved "https://registry.yarnpkg.com/metro-memory-fs/-/metro-memory-fs-0.38.4.tgz#90081d96a28b3553d89e782de2b453f6fb4783b7" - integrity sha512-qErfcOHcoBqzU1a+CSKTuewHGFPuOIeTIb1VNxDWCY0pfdcIOLlhS1kSAR3F235yg1fF/GaQGux9n3W2+NXGIQ== +metro-memory-fs@^0.45.0: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro-memory-fs/-/metro-memory-fs-0.45.6.tgz#9a1fffbde2744b0a0a1d6fcd16f7cb43508f8d7b" + integrity sha512-YAGoNQVTM/vl65jR/ztucAZJIk0ejD3INZT0LiISRULBt6Rxfiqa22v5GG0Enq+95vlgmt26g+auHM2nxTUInQ== -metro-minify-uglify@0.38.4: - version "0.38.4" - resolved "https://registry.yarnpkg.com/metro-minify-uglify/-/metro-minify-uglify-0.38.4.tgz#5e162a48414f0d84461f674022b425e2a6b751ac" - integrity sha512-XaqbAOg3Dm/2zk/RVf2rr6h03erqitZKw3hvUCRI6EajpJhKdMty3viT6Wet7HHXhOkcZeySvBflua7u5NznFQ== +metro-minify-uglify@0.45.6: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro-minify-uglify/-/metro-minify-uglify-0.45.6.tgz#72cd952371a50b9204fd89d89e8041640237b7c1" + integrity sha512-l+lZ7Gg6CN9XddgmwAbo7zOLT2QB9a6VALXLzmvr6gB1mc6SBZwtAh+hARvdymtcr1CgbaWADZPAA+W3oQZH4g== dependencies: uglify-es "^3.1.9" -metro-resolver@0.38.4: - version "0.38.4" - resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.38.4.tgz#2dc0cc9520a1f03e94f6cfb94b062ccfb21eefa1" - integrity sha512-Hw4bb9iLH+l4kSzmhOAKSkmMJ0MxDF2e6RBNPY2xekBlaaygzLSNebsJSpuhn7zLJZ4nuPRaY3QFo4so6GdZRA== +metro-react-native-babel-preset@0.45.6, metro-react-native-babel-preset@^0.45.0: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.45.6.tgz#077ce4039d6461a1b699b215612985415f9816a9" + integrity sha512-qh+iXlV2tDfvHYbhh1meihxnzXXXB8nF1fi8z2HFxqYDkFBM48XewXO6mLz97PL8lmuTGvX/2dYVuFtriENw1w== + dependencies: + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-export-default-from" "^7.0.0" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-proposal-optional-catch-binding" "^7.0.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-transform-arrow-functions" "^7.0.0" + "@babel/plugin-transform-block-scoping" "^7.0.0" + "@babel/plugin-transform-classes" "^7.0.0" + "@babel/plugin-transform-computed-properties" "^7.0.0" + "@babel/plugin-transform-destructuring" "^7.0.0" + "@babel/plugin-transform-exponentiation-operator" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/plugin-transform-for-of" "^7.0.0" + "@babel/plugin-transform-function-name" "^7.0.0" + "@babel/plugin-transform-literals" "^7.0.0" + "@babel/plugin-transform-modules-commonjs" "^7.0.0" + "@babel/plugin-transform-object-assign" "^7.0.0" + "@babel/plugin-transform-parameters" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.0.0" + "@babel/plugin-transform-react-jsx" "^7.0.0" + "@babel/plugin-transform-react-jsx-source" "^7.0.0" + "@babel/plugin-transform-regenerator" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0" + "@babel/plugin-transform-spread" "^7.0.0" + "@babel/plugin-transform-sticky-regex" "^7.0.0" + "@babel/plugin-transform-template-literals" "^7.0.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.45.6" + react-transform-hmr "^1.0.4" + +metro-resolver@0.45.6: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.45.6.tgz#385407cf8c086f005775d2d28178cf36984273f9" + integrity sha512-RY4tqKxSEz4ahLPaJlx30x6vG8HVyLT3w5aUDcyB5B2eQH3ckLnyUYUpd0sT7HFoJ1T5U5DFtWvS3P4yJcRB7A== dependencies: absolute-path "^0.0.0" -metro-source-map@0.38.4: - version "0.38.4" - resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.38.4.tgz#560230c9841dfdcd40d03452dafc7a808314246b" - integrity sha512-CUqqe3X+SoQKOxJAgYlmYsqqv0ow+OIJI2/ZE5fXzijo98mIcaZaWeNMM3hXljUqlSHl8+LtIju22Ia002bOXg== +metro-source-map@0.45.6: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.45.6.tgz#49b20bbbc8f047ede7546b6721ab0214a1ad360d" + integrity sha512-FBubSEEitGrvUeuCPVwXTJX7Y1WjFhsUHickqQE+mXplOgREyeZ7o80ffqEWitfsMUQN9385LxIPmAdPzQXLsQ== dependencies: source-map "^0.5.6" -metro@^0.38.1: - version "0.38.4" - resolved "https://registry.yarnpkg.com/metro/-/metro-0.38.4.tgz#86046cac6600ce619f442041363a051c4f7cdac7" - integrity sha512-CjopTFBKK1x09NPQKTZP09cV0gzfqxYQaVoh0jTJPL3+TqGr7A1kaDhkGYiMNbNyV+ms1J3QxLHXlxSToHDoLQ== - dependencies: - "@babel/core" "7.0.0-beta.47" - "@babel/generator" "7.0.0-beta.47" - "@babel/helper-remap-async-to-generator" "7.0.0-beta.47" - "@babel/plugin-external-helpers" "7.0.0-beta.47" - "@babel/plugin-proposal-class-properties" "7.0.0-beta.47" - "@babel/plugin-proposal-object-rest-spread" "7.0.0-beta.47" - "@babel/plugin-syntax-dynamic-import" "7.0.0-beta.47" - "@babel/plugin-syntax-nullish-coalescing-operator" "7.0.0-beta.47" - "@babel/plugin-transform-arrow-functions" "7.0.0-beta.47" - "@babel/plugin-transform-async-to-generator" "7.0.0-beta.47" - "@babel/plugin-transform-block-scoping" "7.0.0-beta.47" - "@babel/plugin-transform-classes" "7.0.0-beta.47" - "@babel/plugin-transform-computed-properties" "7.0.0-beta.47" - "@babel/plugin-transform-destructuring" "7.0.0-beta.47" - "@babel/plugin-transform-exponentiation-operator" "7.0.0-beta.47" - "@babel/plugin-transform-flow-strip-types" "7.0.0-beta.47" - "@babel/plugin-transform-for-of" "7.0.0-beta.47" - "@babel/plugin-transform-function-name" "7.0.0-beta.47" - "@babel/plugin-transform-literals" "7.0.0-beta.47" - "@babel/plugin-transform-modules-commonjs" "7.0.0-beta.47" - "@babel/plugin-transform-object-assign" "7.0.0-beta.47" - "@babel/plugin-transform-parameters" "7.0.0-beta.47" - "@babel/plugin-transform-react-display-name" "7.0.0-beta.47" - "@babel/plugin-transform-react-jsx" "7.0.0-beta.47" - "@babel/plugin-transform-react-jsx-source" "7.0.0-beta.47" - "@babel/plugin-transform-regenerator" "7.0.0-beta.47" - "@babel/plugin-transform-shorthand-properties" "7.0.0-beta.47" - "@babel/plugin-transform-spread" "7.0.0-beta.47" - "@babel/plugin-transform-template-literals" "7.0.0-beta.47" - "@babel/plugin-transform-unicode-regex" "7.0.0-beta.47" - "@babel/register" "7.0.0-beta.47" - "@babel/template" "7.0.0-beta.47" - "@babel/traverse" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" +metro@0.45.6, metro@^0.45.0: + version "0.45.6" + resolved "https://registry.yarnpkg.com/metro/-/metro-0.45.6.tgz#b4d7bf5edc39c5f7d73a6bc4d940e03415aa919b" + integrity sha512-+RinU6Qcea/zX9xxfrgmeFBwJ3tsdgLyBJm4tQOmusU4kE8YEE4LQ3IGG60qk3wzYloflMB/8ilIGG4Z/gz2Ew== + dependencies: + "@babel/core" "^7.0.0" + "@babel/generator" "^7.0.0" + "@babel/parser" "^7.0.0" + "@babel/plugin-external-helpers" "^7.0.0" + "@babel/template" "^7.0.0" + "@babel/traverse" "^7.0.0" + "@babel/types" "^7.0.0" absolute-path "^0.0.0" async "^2.4.0" - babel-core "^6.24.1" - babel-plugin-external-helpers "^6.22.0" - babel-plugin-transform-flow-strip-types "^6.21.0" - babel-preset-es2015-node "^6.1.1" - babel-preset-fbjs "^2.1.4" - babel-preset-react-native "^5.0.0" - babel-register "^6.24.1" - babylon "7.0.0-beta.47" + babel-preset-fbjs "2.3.0" chalk "^1.1.1" concat-stream "^1.6.0" connect "^3.6.5" debug "^2.2.0" denodeify "^1.2.1" eventemitter3 "^3.0.0" - fbjs "^0.8.14" + fbjs "0.8.17" fs-extra "^1.0.0" graceful-fs "^4.1.3" image-size "^0.6.0" - jest-docblock "23.0.1" - jest-haste-map "23.1.0" - jest-worker "23.0.1" + jest-docblock "23.2.0" + jest-haste-map "23.5.0" + jest-worker "23.2.0" json-stable-stringify "^1.0.1" - json5 "^0.4.0" - left-pad "^1.1.3" lodash.throttle "^4.1.1" merge-stream "^1.0.1" - metro-babel-register "0.38.4" - metro-babel7-plugin-react-transform "0.38.4" - metro-cache "0.38.4" - metro-core "0.38.4" - metro-minify-uglify "0.38.4" - metro-resolver "0.38.4" - metro-source-map "0.38.4" + metro-cache "0.45.6" + metro-config "0.45.6" + metro-core "0.45.6" + metro-minify-uglify "0.45.6" + metro-react-native-babel-preset "0.45.6" + metro-resolver "0.45.6" + metro-source-map "0.45.6" mime-types "2.1.11" mkdirp "^0.5.1" - node-fetch "^1.3.3" + node-fetch "^2.2.0" + nullthrows "^1.1.0" react-transform-hmr "^1.0.4" resolve "^1.5.0" rimraf "^2.5.4" @@ -5980,7 +6005,7 @@ nice-try@^1.0.4: resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== -node-fetch@^1.0.1, node-fetch@^1.3.3: +node-fetch@^1.0.1: version "1.7.3" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== @@ -5988,6 +6013,11 @@ node-fetch@^1.0.1, node-fetch@^1.3.3: encoding "^0.1.11" is-stream "^1.0.1" +node-fetch@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.2.0.tgz#4ee79bde909262f9775f731e3656d0db55ced5b5" + integrity sha512-OayFWziIxiHY8bCUyLX6sTpDH8Jsbp4FfYd1j1f7vZyfgkcOnAyM4oQR16f8a0s7Gl/viMGRey8eScYk4V4EZA== + node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" @@ -6142,6 +6172,11 @@ nth-check@~1.0.1: dependencies: boolbase "~1.0.0" +nullthrows@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/nullthrows/-/nullthrows-1.1.0.tgz#832bb19ef7fedab989f81675c846e2858a3917a2" + integrity sha512-YoigDq49JRqVCUlb4XlwZirXQiNCoXdwoyfklXJAEYHN+XKHWgDkrcWxNgxEtP7N+XF9Akp7Lr6wLq8HZxLttw== + number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" @@ -6464,6 +6499,14 @@ parse-json@^2.2.0: dependencies: error-ex "^1.2.0" +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + parse5@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" @@ -6592,10 +6635,10 @@ pinkie@^2.0.0: resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= -pirates@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-3.0.2.tgz#7e6f85413fd9161ab4e12b539b06010d85954bb9" - integrity sha512-c5CgUJq6H2k6MJz72Ak1F5sN9n9wlSlJyEnwvpm9/y3WB4E3pHBDT2c6PEiS1vyJvq2bUxUAIu0EGf8Cx4Ic7Q== +pirates@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.0.tgz#850b18781b4ac6ec58a43c9ed9ec5fe6796addbd" + integrity sha512-8t5BsXy1LUIjn3WWOlOuFDuKswhQb/tkak641lvBgmPOBUQHXveORtlMCp6OdPV1dtuTaEahKA8VNz6uLfKBtA== dependencies: node-modules-regexp "^1.0.0" @@ -6929,10 +6972,10 @@ react-deep-force-update@^1.0.0: resolved "https://registry.yarnpkg.com/react-deep-force-update/-/react-deep-force-update-1.1.1.tgz#bcd31478027b64b3339f108921ab520b4313dc2c" integrity sha1-vNMUeAJ7ZLMznxCJIatSC0MT3Cw= -react-devtools-core@^3.2.2: - version "3.4.0" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-3.4.0.tgz#6b61594dce01b129a9e0b44b5bc4952f8f59ceec" - integrity sha512-yV3LLhoRwbfcQyVPNwb1EZ9W7CGu+kX2EqyZ3Cl5C+cbXcb6FJ3YSeeBt9BQB+hjyjRMBjQSKqnpPS6OMSEUow== +react-devtools-core@3.3.4: + version "3.3.4" + resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-3.3.4.tgz#9e497a94b73413b91774bf3e3197e539d5f9a21d" + integrity sha512-6lsBDRInT9jU8Ya8bnKWJSsnaGg/xk1ZSfvhc/dHc3n2CUTMfGlqm2tGeZQ9WEoe0Y2K7Lg90Kvb1E8anLePaQ== dependencies: shell-quote "^1.6.1" ws "^3.3.1" @@ -7283,10 +7326,10 @@ react-native-vector-icons@^4.5.0: version "2.4.0" resolved "git+https://github.com/cvarley100/react-native-view-shot#b7af36520f10c212ff226c32dc72a6c0b9e1521e" -react-native@0.56.0: - version "0.56.0" - resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.56.0.tgz#66686f781ec39a44376aadd4bbc55c8573ab61e5" - integrity sha512-JGKPG77HwrgMdiCkmZmjuczJrwCnq7E28+My+OS3OnmN78uphmtaMqYnv3lJjfb5hKS4kCqYCfFYFMUnmpmxMw== +react-native@0.57.0: + version "0.57.0" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.57.0.tgz#b0d098bbd5393fc3c079f8d7c2a8bf9a10b86b9e" + integrity sha512-L/bPmqWsei1EyHdikg/jOdl9unVyrehmkoNlkGCl3Y5Zr7KGE36j+DOL6M0OqpGVkWIXJ5Jzk/ttea/X3edVVg== dependencies: absolute-path "^0.0.0" art "^0.10.0" @@ -7302,22 +7345,22 @@ react-native@0.56.0: errorhandler "^1.5.0" escape-string-regexp "^1.0.5" event-target-shim "^1.0.5" - fbjs "0.8.16" + fbjs "0.8.17" fbjs-scripts "^0.8.1" fs-extra "^1.0.0" glob "^7.1.1" graceful-fs "^4.1.3" inquirer "^3.0.6" lodash "^4.17.5" - metro "^0.38.1" - metro-babel-register "^0.38.1" - metro-core "^0.38.1" - metro-memory-fs "^0.38.1" + metro "^0.45.0" + metro-babel-register "^0.45.0" + metro-core "^0.45.0" + metro-memory-fs "^0.45.0" mime "^1.3.4" minimist "^1.2.0" mkdirp "^0.5.1" morgan "^1.9.0" - node-fetch "^1.3.3" + node-fetch "^2.2.0" node-notifier "^5.2.1" npmlog "^2.0.4" opn "^3.0.2" @@ -7327,7 +7370,7 @@ react-native@0.56.0: promise "^7.1.1" prop-types "^15.5.8" react-clone-referenced-element "^1.0.1" - react-devtools-core "^3.2.2" + react-devtools-core "3.3.4" react-timer-mixin "^0.13.2" regenerator-runtime "^0.11.0" rimraf "^2.5.4" @@ -7403,15 +7446,15 @@ react-transform-hmr@^1.0.4: global "^4.3.0" react-proxy "^1.1.7" -react@16.4.1: - version "16.4.1" - resolved "https://registry.yarnpkg.com/react/-/react-16.4.1.tgz#de51ba5764b5dbcd1f9079037b862bd26b82fe32" - integrity sha512-3GEs0giKp6E0Oh/Y9ZC60CmYgUPnp7voH9fbjWsvXtYFb4EWtgQub0ADSq0sJR0BbHc4FThLLtzlcFaFXIorwg== +react@16.5: + version "16.5.2" + resolved "https://registry.yarnpkg.com/react/-/react-16.5.2.tgz#19f6b444ed139baa45609eee6dc3d318b3895d42" + integrity sha512-FDCSVd3DjVTmbEAjUNX6FgfAmQ+ypJfHUsqUJOYNCBUp1h8lqmtC+0mXJ+JjsWx4KAVTkk1vKd1hLQPvEviSuw== dependencies: - fbjs "^0.8.16" loose-envify "^1.1.0" object-assign "^4.1.1" - prop-types "^15.6.0" + prop-types "^15.6.2" + schedule "^0.5.0" react@^16.2.0: version "16.3.2" @@ -7554,7 +7597,7 @@ regenerate-unicode-properties@^7.0.0: dependencies: regenerate "^1.4.0" -regenerate@^1.2.1, regenerate@^1.4.0: +regenerate@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== @@ -7564,10 +7607,10 @@ regenerator-runtime@^0.11.0: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== -regenerator-transform@^0.12.3: - version "0.12.4" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.12.4.tgz#aa9b6c59f4b97be080e972506c560b3bccbfcff0" - integrity sha512-p2I0fY+TbSLD2/VFTFb/ypEHxs3e3AjU0DzttdPqk2bSmDhfSh5E54b86Yc6XhUa5KykK1tgbvZ4Nr82oCJWkQ== +regenerator-transform@^0.13.3: + version "0.13.3" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.13.3.tgz#264bd9ff38a8ce24b06e0636496b2c856b57bcbb" + integrity sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA== dependencies: private "^0.1.6" @@ -7586,15 +7629,6 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" -regexpu-core@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" - integrity sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA= - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - regexpu-core@^4.1.3: version "4.2.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.2.0.tgz#a3744fa03806cffe146dea4421a3e73bdcc47b1d" @@ -7607,23 +7641,11 @@ regexpu-core@^4.1.3: unicode-match-property-ecmascript "^1.0.4" unicode-match-property-value-ecmascript "^1.0.2" -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= - regjsgen@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.4.0.tgz#c1eb4c89a209263f8717c782591523913ede2561" integrity sha512-X51Lte1gCYUdlwhF28+2YMO0U6WeN0GLpgpA7LK7mbdDnkQYiwvEpmpe0F/cv5L14EbxgrdayAG3JETBv0dbXA== -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= - dependencies: - jsesc "~0.5.0" - regjsparser@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.3.0.tgz#3c326da7fcfd69fa0d332575a41c8c0cdf588c96" @@ -7911,7 +7933,7 @@ secure-keys@^1.0.0: resolved "https://registry.yarnpkg.com/secure-keys/-/secure-keys-1.0.0.tgz#f0c82d98a3b139a8776a8808050b824431087fca" integrity sha1-8MgtmKOxOah3aogIBQuCRDEIf8o= -"semver@2 || 3 || 4 || 5", semver@5.x, semver@^5.0.1, semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@^5.4.1: +"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@^5.4.1: version "5.5.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" integrity sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA== @@ -8356,14 +8378,14 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.4.15, source-map-support@^0.4.2: +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.7: +source-map-support@^0.5.6, source-map-support@^0.5.7, source-map-support@^0.5.9: version "0.5.9" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" integrity sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA== @@ -8845,7 +8867,7 @@ typedarray@^0.0.6: resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= -ua-parser-js@^0.7.9: +ua-parser-js@^0.7.18, ua-parser-js@^0.7.9: version "0.7.18" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.18.tgz#a7bfd92f56edfb117083b69e31d2aa8882d4b1ed" integrity sha512-LtzwHlVHwFGTptfNSgezHp7WUlwiqb0gA9AALRbKaERfxwJoiX0A73QbTToxteIAuIaFshhgIZfqK8s7clqgnA== From d4b68763665ef1c203da10142bdf4ba7bd9bc111 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Sat, 29 Sep 2018 17:13:02 -0400 Subject: [PATCH 008/141] Bug fixes --- src/mobile/.babelrc | 2 +- src/mobile/package.json | 4 ++-- src/mobile/yarn.lock | 25 ++++++++++++++++--------- 3 files changed, 19 insertions(+), 12 deletions(-) diff --git a/src/mobile/.babelrc b/src/mobile/.babelrc index cff12ea803..2f8d33d46c 100644 --- a/src/mobile/.babelrc +++ b/src/mobile/.babelrc @@ -3,7 +3,7 @@ "plugins": [ ["module-resolver", { "root": [".", "src"], - "extensions": [".ios.js", ".android.js", ".js", ".json"] + "extensions": [".ios.js", ".android.js", ".js", ".json"], }] ] } diff --git a/src/mobile/package.json b/src/mobile/package.json index dd55376210..4accac5b82 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -56,7 +56,7 @@ "punycode": "^1.4.1", "qr.js": "https://github.com/defunctzombie/qr.js", "querystring-es3": "^0.2.1", - "react": "16.5", + "react": "16.5.1", "react-i18next": "^7.3.0", "react-native": "0.57.0", "react-native-camera": "^1.1.4", @@ -76,7 +76,7 @@ "react-native-http": "github:tradle/react-native-http#834492d", "react-native-is-device-rooted": "https://github.com/rajivshah3/react-native-isDeviceRooted#latest", "react-native-keep-awake": "^2.0.6", - "react-native-keychain": "2.0.0-rc", + "react-native-keychain": "^3.0.0", "react-native-level-fs": "^3.0.0", "react-native-markdown-renderer": "^3.2.1", "react-native-modal": "^6.5.0", diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 9f871e336f..e0c1199375 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -7136,10 +7136,10 @@ react-native-keep-awake@^2.0.6: resolved "https://registry.yarnpkg.com/react-native-keep-awake/-/react-native-keep-awake-2.0.6.tgz#d8eaffe0a6377cc197469d9f06c7f317225403db" integrity sha512-ketZKC6G49W4iblKYCnIA5Tcx78Yu48n/K5XzZUnMm69wAnZxs1054Re2V5xpSwX5VZasOBjW1iI1cTjtB/H5g== -react-native-keychain@2.0.0-rc: - version "2.0.0-rc" - resolved "https://registry.yarnpkg.com/react-native-keychain/-/react-native-keychain-2.0.0-rc.tgz#2446fc520bc630741e95eb722fe48e44988f4c12" - integrity sha512-pQONdjg/67qX0dpBf4s9VjwontzeaBepuRwp8RyTCyvMJ5REy19Etit0BrfuJCRGUxpU3tb9c4Gh8UdM0B2feQ== +react-native-keychain@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/react-native-keychain/-/react-native-keychain-3.0.0.tgz#29da1dfa43c2581f76bf9420914fd38a1558cf18" + integrity sha512-0incABt1+aXsZvG34mDV57KKanSB+iMHmxvWv+N6lgpNLaSoqrCxazjbZdeqD4qJ7Z+Etp5CLf/4v1aI+sNLBw== react-native-level-fs@^3.0.0: version "3.0.1" @@ -7446,15 +7446,15 @@ react-transform-hmr@^1.0.4: global "^4.3.0" react-proxy "^1.1.7" -react@16.5: - version "16.5.2" - resolved "https://registry.yarnpkg.com/react/-/react-16.5.2.tgz#19f6b444ed139baa45609eee6dc3d318b3895d42" - integrity sha512-FDCSVd3DjVTmbEAjUNX6FgfAmQ+ypJfHUsqUJOYNCBUp1h8lqmtC+0mXJ+JjsWx4KAVTkk1vKd1hLQPvEviSuw== +react@16.5.1: + version "16.5.1" + resolved "https://registry.yarnpkg.com/react/-/react-16.5.1.tgz#8cb8e9f8cdcb4bde41c9a138bfbf907e66132372" + integrity sha512-E+23+rbpPsJgSX812LQkwupUCFnbVE84+L8uxlkqN5MU0DcraWMlVf9cRvKCKtGu0XvScyRnW7Z+9d7ymkjy3A== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" prop-types "^15.6.2" - schedule "^0.5.0" + schedule "^0.4.0" react@^16.2.0: version "16.3.2" @@ -7921,6 +7921,13 @@ sax@~1.1.1: resolved "https://registry.yarnpkg.com/sax/-/sax-1.1.6.tgz#5d616be8a5e607d54e114afae55b7eaf2fcc3240" integrity sha1-XWFr6KXmB9VOEUr65Vt+ry/MMkA= +schedule@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/schedule/-/schedule-0.4.0.tgz#fa20cfd0bfbf91c47d02272fd7096780d3170bbb" + integrity sha512-hYjmoaEMojiMkWCxKr6ue+LYcZ29u29+AamWYmzwT2VOO9ws5UJp/wNhsVUPiUeNh+EdRfZm7nDeB40ffTfMhA== + dependencies: + object-assign "^4.1.1" + schedule@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/schedule/-/schedule-0.5.0.tgz#c128fffa0b402488b08b55ae74bb9df55cc29cc8" From 56226a1179d1986e4d85b4ae4a8ea9dc0928303c Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Sat, 29 Sep 2018 20:33:50 -0400 Subject: [PATCH 009/141] Bug fixes --- src/mobile/package.json | 2 +- src/mobile/src/ui/views/wallet/AccountManagement.js | 2 +- src/mobile/yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/mobile/package.json b/src/mobile/package.json index 4accac5b82..05a20d7ace 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -76,7 +76,7 @@ "react-native-http": "github:tradle/react-native-http#834492d", "react-native-is-device-rooted": "https://github.com/rajivshah3/react-native-isDeviceRooted#latest", "react-native-keep-awake": "^2.0.6", - "react-native-keychain": "^3.0.0", + "react-native-keychain": "2.0.0-rc", "react-native-level-fs": "^3.0.0", "react-native-markdown-renderer": "^3.2.1", "react-native-modal": "^6.5.0", diff --git a/src/mobile/src/ui/views/wallet/AccountManagement.js b/src/mobile/src/ui/views/wallet/AccountManagement.js index 80cffb8423..ace116c8b9 100644 --- a/src/mobile/src/ui/views/wallet/AccountManagement.js +++ b/src/mobile/src/ui/views/wallet/AccountManagement.js @@ -79,7 +79,7 @@ class AccountManagement extends Component { { name: 'back', function: () => this.props.setSetting('mainSettings') }, ]; - if (isIPhone11()) { + if (isIPhone11) { rows.splice(6, 1); } return renderSettingsRows(rows, theme); diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index e0c1199375..1737ef4db4 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -7136,10 +7136,10 @@ react-native-keep-awake@^2.0.6: resolved "https://registry.yarnpkg.com/react-native-keep-awake/-/react-native-keep-awake-2.0.6.tgz#d8eaffe0a6377cc197469d9f06c7f317225403db" integrity sha512-ketZKC6G49W4iblKYCnIA5Tcx78Yu48n/K5XzZUnMm69wAnZxs1054Re2V5xpSwX5VZasOBjW1iI1cTjtB/H5g== -react-native-keychain@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/react-native-keychain/-/react-native-keychain-3.0.0.tgz#29da1dfa43c2581f76bf9420914fd38a1558cf18" - integrity sha512-0incABt1+aXsZvG34mDV57KKanSB+iMHmxvWv+N6lgpNLaSoqrCxazjbZdeqD4qJ7Z+Etp5CLf/4v1aI+sNLBw== +react-native-keychain@2.0.0-rc: + version "2.0.0-rc" + resolved "https://registry.yarnpkg.com/react-native-keychain/-/react-native-keychain-2.0.0-rc.tgz#2446fc520bc630741e95eb722fe48e44988f4c12" + integrity sha512-pQONdjg/67qX0dpBf4s9VjwontzeaBepuRwp8RyTCyvMJ5REy19Etit0BrfuJCRGUxpU3tb9c4Gh8UdM0B2feQ== react-native-level-fs@^3.0.0: version "3.0.1" From c82d55b2ab4abeb4e317d845be7d91acceec704d Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Sat, 29 Sep 2018 20:42:17 -0400 Subject: [PATCH 010/141] Mobile: Fix hidden back button --- src/mobile/src/ui/views/wallet/AutoPromotion.js | 2 +- src/mobile/src/ui/views/wallet/Pow.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mobile/src/ui/views/wallet/AutoPromotion.js b/src/mobile/src/ui/views/wallet/AutoPromotion.js index ab874de327..36ad1161bf 100644 --- a/src/mobile/src/ui/views/wallet/AutoPromotion.js +++ b/src/mobile/src/ui/views/wallet/AutoPromotion.js @@ -41,7 +41,7 @@ const styles = StyleSheet.create({ itemLeft: { flexDirection: 'row', alignItems: 'center', - paddingVertical: height / 50, + paddingVertical: height / 70, justifyContent: 'flex-start', }, titleTextLeft: { diff --git a/src/mobile/src/ui/views/wallet/Pow.js b/src/mobile/src/ui/views/wallet/Pow.js index f8b8d2917b..2a68a04eb4 100644 --- a/src/mobile/src/ui/views/wallet/Pow.js +++ b/src/mobile/src/ui/views/wallet/Pow.js @@ -41,7 +41,7 @@ const styles = StyleSheet.create({ itemLeft: { flexDirection: 'row', alignItems: 'center', - paddingVertical: height / 50, + paddingVertical: height / 70, justifyContent: 'flex-start', }, titleTextLeft: { From 2719819ff7f2f610bfdc1b3cb70ae231b96f939b Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Sun, 7 Oct 2018 17:07:48 -0400 Subject: [PATCH 011/141] Update lockfile --- src/shared/yarn.lock | 621 ++++++++++++++++++++++--------------------- 1 file changed, 325 insertions(+), 296 deletions(-) diff --git a/src/shared/yarn.lock b/src/shared/yarn.lock index 7db222f974..8271e0f47d 100644 --- a/src/shared/yarn.lock +++ b/src/shared/yarn.lock @@ -2,167 +2,175 @@ # yarn lockfile v1 -"@babel/code-frame@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.47.tgz#d18c2f4c4ba8d093a2bcfab5616593bfe2441a27" - dependencies: - "@babel/highlight" "7.0.0-beta.47" - -"@babel/core@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.0.0-beta.47.tgz#b9c164fb9a1e1083f067c236a9da1d7a7d759271" - dependencies: - "@babel/code-frame" "7.0.0-beta.47" - "@babel/generator" "7.0.0-beta.47" - "@babel/helpers" "7.0.0-beta.47" - "@babel/template" "7.0.0-beta.47" - "@babel/traverse" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - babylon "7.0.0-beta.47" +"@babel/code-frame@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" + integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== + dependencies: + "@babel/highlight" "^7.0.0" + +"@babel/core@^7.0.0-beta": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.1.2.tgz#f8d2a9ceb6832887329a7b60f9d035791400ba4e" + integrity sha512-IFeSSnjXdhDaoysIlev//UzHZbdEmm7D0EIH2qtse9xK7mXEZQpYjs2P00XlP1qYsYvid79p+Zgg6tz1mp6iVw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/generator" "^7.1.2" + "@babel/helpers" "^7.1.2" + "@babel/parser" "^7.1.2" + "@babel/template" "^7.1.2" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.1.2" convert-source-map "^1.1.0" debug "^3.1.0" json5 "^0.5.0" - lodash "^4.17.5" - micromatch "^2.3.11" + lodash "^4.17.10" resolve "^1.3.2" semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.0.0-beta.47.tgz#1835709f377cc4d2a4affee6d9258a10bbf3b9d1" +"@babel/generator@^7.0.0", "@babel/generator@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.1.2.tgz#fde75c072575ce7abbd97322e8fef5bae67e4630" + integrity sha512-70A9HWLS/1RHk3Ck8tNHKxOoKQuSKocYgwDN85Pyl/RBduss6AKxUR7RIZ/lzduQMSYfWEM4DDBu6A+XGbkFig== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.1.2" jsesc "^2.5.1" - lodash "^4.17.5" + lodash "^4.17.10" source-map "^0.5.0" trim-right "^1.0.1" -"@babel/helper-function-name@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.47.tgz#8057d63e951e85c57c02cdfe55ad7608d73ffb7d" +"@babel/helper-function-name@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" + integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== dependencies: - "@babel/helper-get-function-arity" "7.0.0-beta.47" - "@babel/template" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" + "@babel/helper-get-function-arity" "^7.0.0" + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" -"@babel/helper-get-function-arity@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.47.tgz#2de04f97c14b094b55899d3fa83144a16d207510" +"@babel/helper-get-function-arity@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" + integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.0.0" -"@babel/helper-split-export-declaration@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.47.tgz#e11277855472d8d83baf22f2d0186c4a2059b09a" +"@babel/helper-split-export-declaration@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" + integrity sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag== dependencies: - "@babel/types" "7.0.0-beta.47" + "@babel/types" "^7.0.0" -"@babel/helpers@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.0.0-beta.47.tgz#f9b42ed2e4d5f75ec0fb2e792c173e451e8d40fd" +"@babel/helpers@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.1.2.tgz#ab752e8c35ef7d39987df4e8586c63b8846234b5" + integrity sha512-Myc3pUE8eswD73aWcartxB16K6CGmHDv9KxOmD2CeOs/FaEAQodr3VYGmlvOmog60vNQ2w8QbatuahepZwrHiA== dependencies: - "@babel/template" "7.0.0-beta.47" - "@babel/traverse" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" + "@babel/template" "^7.1.2" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.1.2" -"@babel/highlight@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0-beta.47.tgz#8fbc83fb2a21f0bd2b95cdbeb238cf9689cad494" +"@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== dependencies: chalk "^2.0.0" esutils "^2.0.2" - js-tokens "^3.0.0" + js-tokens "^4.0.0" -"@babel/template@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.0.0-beta.47.tgz#0473970a7c0bee7a1a18c1ca999d3ba5e5bad83d" - dependencies: - "@babel/code-frame" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - babylon "7.0.0-beta.47" - lodash "^4.17.5" +"@babel/parser@^7.1.0", "@babel/parser@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.1.2.tgz#85c5c47af6d244fab77bce6b9bd830e38c978409" + integrity sha512-x5HFsW+E/nQalGMw7hu+fvPqnBeBaIr0lWJ2SG0PPL2j+Pm9lYvCrsZJGIgauPIENx0v10INIyFjmSNUD/gSqQ== -"@babel/traverse@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.0.0-beta.47.tgz#0e57fdbb9ff3a909188b6ebf1e529c641e6c82a4" - dependencies: - "@babel/code-frame" "7.0.0-beta.47" - "@babel/generator" "7.0.0-beta.47" - "@babel/helper-function-name" "7.0.0-beta.47" - "@babel/helper-split-export-declaration" "7.0.0-beta.47" - "@babel/types" "7.0.0-beta.47" - babylon "7.0.0-beta.47" +"@babel/template@^7.1.0", "@babel/template@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.1.2.tgz#090484a574fef5a2d2d7726a674eceda5c5b5644" + integrity sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.1.2" + "@babel/types" "^7.1.2" + +"@babel/traverse@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.1.0.tgz#503ec6669387efd182c3888c4eec07bcc45d91b2" + integrity sha512-bwgln0FsMoxm3pLOgrrnGaXk18sSM9JNf1/nHC/FksmNGFbYnPWY4GYCfLxyP1KRmfsxqkRpfoa6xr6VuuSxdw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/generator" "^7.0.0" + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" debug "^3.1.0" globals "^11.1.0" - invariant "^2.2.0" - lodash "^4.17.5" + lodash "^4.17.10" -"@babel/types@7.0.0-beta.47": - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0-beta.47.tgz#e6fcc1a691459002c2671d558a586706dddaeef8" +"@babel/types@^7.0.0", "@babel/types@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.1.2.tgz#183e7952cf6691628afdc2e2b90d03240bac80c0" + integrity sha512-pb1I05sZEKiSlMUV9UReaqsCPUpgbHHHu2n1piRm7JkuBkm6QxcaIzKu6FMnMtCbih/cEYTR+RGYYC96Yk9HAg== dependencies: esutils "^2.0.2" - lodash "^4.17.5" + lodash "^4.17.10" to-fast-properties "^2.0.0" "@sinonjs/formatio@^2.0.0": version "2.0.0" resolved "http://registry.npmjs.org/@sinonjs/formatio/-/formatio-2.0.0.tgz#84db7e9eb5531df18a8c5e0bfb6e449e55e654b2" + integrity sha512-ls6CAMA6/5gG+O/IdsBcblvnd8qcO/l1TYoNeAzp3wcISOxlPXQEus0mLcdwazEkWjaBdaJ3TaxmNgCLWwvWzg== dependencies: samsam "1.3.0" ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= 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.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" argparse@^1.0.6: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" -arr-diff@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - dependencies: - arr-flatten "^1.0.1" - -arr-flatten@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - asap@~2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= assertion-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c" + integrity sha1-E8pRXYYgbaC6xm6DTdOX2HWBCUw= async@^2.5.0: version "2.6.0" resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4" + integrity sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw== dependencies: lodash "^4.14.0" axios@^0.18.0: version "0.18.0" resolved "https://registry.yarnpkg.com/axios/-/axios-0.18.0.tgz#32d53e4851efdc0a11993b6cd000789d70c05102" + integrity sha1-MtU+SFHv3AoRmTts0AB4nXDAUQI= dependencies: follow-redirects "^1.3.0" is-buffer "^1.1.5" @@ -170,18 +178,21 @@ axios@^0.18.0: 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@7.0.0-bridge.0: +babel-core@^7.0.0-beta: 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-helper-bindify-decorators@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330" + integrity sha1-FMGeXxQte0fxmlJDHlKxzLxAozA= dependencies: babel-runtime "^6.22.0" babel-traverse "^6.24.1" @@ -190,6 +201,7 @@ babel-helper-bindify-decorators@^6.24.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= dependencies: babel-helper-explode-assignable-expression "^6.24.1" babel-runtime "^6.22.0" @@ -198,6 +210,7 @@ babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: 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= dependencies: babel-runtime "^6.26.0" babel-types "^6.26.0" @@ -206,6 +219,7 @@ babel-helper-builder-react-jsx@^6.24.1: 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" @@ -215,6 +229,7 @@ babel-helper-call-delegate@^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" @@ -224,6 +239,7 @@ babel-helper-define-map@^6.24.1: 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" @@ -232,6 +248,7 @@ babel-helper-explode-assignable-expression@^6.24.1: babel-helper-explode-class@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb" + integrity sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes= dependencies: babel-helper-bindify-decorators "^6.24.1" babel-runtime "^6.22.0" @@ -241,6 +258,7 @@ babel-helper-explode-class@^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" @@ -251,6 +269,7 @@ babel-helper-function-name@^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" @@ -258,6 +277,7 @@ babel-helper-get-function-arity@^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" @@ -265,6 +285,7 @@ babel-helper-hoist-variables@^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" @@ -272,6 +293,7 @@ babel-helper-optimise-call-expression@^6.24.1: babel-helper-regex@^6.24.1: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" + integrity sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI= dependencies: babel-runtime "^6.26.0" babel-types "^6.26.0" @@ -280,6 +302,7 @@ babel-helper-regex@^6.24.1: babel-helper-remap-async-to-generator@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" + integrity sha1-XsWBgnrXI/7N04HxySg5BnbkVRs= dependencies: babel-helper-function-name "^6.24.1" babel-runtime "^6.22.0" @@ -290,6 +313,7 @@ babel-helper-remap-async-to-generator@^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" @@ -301,54 +325,66 @@ babel-helper-replace-supers@^6.24.1: 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.22.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-syntax-async-functions@^6.8.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-async-generators@^6.5.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a" + integrity sha1-a8lj67FuzLrmuStZbrfzXDQqi5o= 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-decorators@^6.13.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b" + integrity sha1-MSVjtNvePMgGzuPkFszurd0RrAs= 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-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.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.22.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-transform-async-generator-functions@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db" + integrity sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds= dependencies: babel-helper-remap-async-to-generator "^6.24.1" babel-plugin-syntax-async-generators "^6.5.0" @@ -357,6 +393,7 @@ babel-plugin-transform-async-generator-functions@^6.24.1: babel-plugin-transform-async-to-generator@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" + integrity sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E= dependencies: babel-helper-remap-async-to-generator "^6.24.1" babel-plugin-syntax-async-functions "^6.8.0" @@ -365,6 +402,7 @@ babel-plugin-transform-async-to-generator@^6.24.1: babel-plugin-transform-class-properties@^6.24.1: 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" @@ -374,6 +412,7 @@ babel-plugin-transform-class-properties@^6.24.1: babel-plugin-transform-decorators@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d" + integrity sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0= dependencies: babel-helper-explode-class "^6.24.1" babel-plugin-syntax-decorators "^6.13.0" @@ -384,18 +423,21 @@ babel-plugin-transform-decorators@^6.24.1: babel-plugin-transform-es2015-arrow-functions@^6.22.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-scoped-functions@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" + integrity sha1-u8UbSflk1wy42OC5ToICRs46YUE= dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-block-scoping@^6.24.1: 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" @@ -406,6 +448,7 @@ babel-plugin-transform-es2015-block-scoping@^6.24.1: babel-plugin-transform-es2015-classes@^6.24.1: 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" @@ -420,6 +463,7 @@ babel-plugin-transform-es2015-classes@^6.24.1: babel-plugin-transform-es2015-computed-properties@^6.24.1: 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" @@ -427,12 +471,14 @@ babel-plugin-transform-es2015-computed-properties@^6.24.1: babel-plugin-transform-es2015-destructuring@^6.22.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-duplicate-keys@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" + integrity sha1-c+s9MQypaePvnskcU3QabxV2Qj4= dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" @@ -440,12 +486,14 @@ babel-plugin-transform-es2015-duplicate-keys@^6.24.1: babel-plugin-transform-es2015-for-of@^6.22.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.24.1: 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" @@ -454,12 +502,14 @@ babel-plugin-transform-es2015-function-name@^6.24.1: babel-plugin-transform-es2015-literals@^6.22.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-amd@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" + integrity sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ= dependencies: babel-plugin-transform-es2015-modules-commonjs "^6.24.1" babel-runtime "^6.22.0" @@ -468,6 +518,7 @@ babel-plugin-transform-es2015-modules-amd@^6.24.1: babel-plugin-transform-es2015-modules-commonjs@^6.24.1: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" + integrity sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo= dependencies: babel-plugin-transform-strict-mode "^6.24.1" babel-runtime "^6.26.0" @@ -477,6 +528,7 @@ babel-plugin-transform-es2015-modules-commonjs@^6.24.1: babel-plugin-transform-es2015-modules-systemjs@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" + integrity sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM= dependencies: babel-helper-hoist-variables "^6.24.1" babel-runtime "^6.22.0" @@ -485,6 +537,7 @@ babel-plugin-transform-es2015-modules-systemjs@^6.24.1: babel-plugin-transform-es2015-modules-umd@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" + integrity sha1-rJl+YoXNGO1hdq22B9YCNErThGg= dependencies: babel-plugin-transform-es2015-modules-amd "^6.24.1" babel-runtime "^6.22.0" @@ -493,6 +546,7 @@ babel-plugin-transform-es2015-modules-umd@^6.24.1: babel-plugin-transform-es2015-object-super@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" + integrity sha1-JM72muIcuDp/hgPa0CH1cusnj40= dependencies: babel-helper-replace-supers "^6.24.1" babel-runtime "^6.22.0" @@ -500,6 +554,7 @@ babel-plugin-transform-es2015-object-super@^6.24.1: babel-plugin-transform-es2015-parameters@^6.24.1: 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" @@ -511,6 +566,7 @@ babel-plugin-transform-es2015-parameters@^6.24.1: babel-plugin-transform-es2015-shorthand-properties@^6.24.1: 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" @@ -518,12 +574,14 @@ babel-plugin-transform-es2015-shorthand-properties@^6.24.1: babel-plugin-transform-es2015-spread@^6.22.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-sticky-regex@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" + integrity sha1-AMHNsaynERLN8M9hJsLta0V8zbw= dependencies: babel-helper-regex "^6.24.1" babel-runtime "^6.22.0" @@ -532,18 +590,21 @@ babel-plugin-transform-es2015-sticky-regex@^6.24.1: babel-plugin-transform-es2015-template-literals@^6.22.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-es2015-typeof-symbol@^6.22.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" + integrity sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I= dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-unicode-regex@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" + integrity sha1-04sS9C6nMj9yk4fxinxa4frrNek= dependencies: babel-helper-regex "^6.24.1" babel-runtime "^6.22.0" @@ -552,6 +613,7 @@ babel-plugin-transform-es2015-unicode-regex@^6.24.1: babel-plugin-transform-exponentiation-operator@^6.24.1: 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" @@ -560,6 +622,7 @@ babel-plugin-transform-exponentiation-operator@^6.24.1: babel-plugin-transform-object-rest-spread@^6.22.0, babel-plugin-transform-object-rest-spread@^6.26.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" @@ -567,6 +630,7 @@ babel-plugin-transform-object-rest-spread@^6.22.0, babel-plugin-transform-object babel-plugin-transform-react-jsx@^6.24.1: 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" @@ -575,12 +639,14 @@ babel-plugin-transform-react-jsx@^6.24.1: babel-plugin-transform-regenerator@^6.24.1: 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" @@ -588,6 +654,7 @@ babel-plugin-transform-strict-mode@^6.24.1: babel-preset-es2015@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz#d44050d6bc2c9feea702aaf38d727a0210538939" + integrity sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk= dependencies: babel-plugin-check-es2015-constants "^6.22.0" babel-plugin-transform-es2015-arrow-functions "^6.22.0" @@ -617,6 +684,7 @@ babel-preset-es2015@^6.24.1: babel-preset-stage-2@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1" + integrity sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE= dependencies: babel-plugin-syntax-dynamic-import "^6.18.0" babel-plugin-transform-class-properties "^6.24.1" @@ -626,6 +694,7 @@ babel-preset-stage-2@^6.24.1: babel-preset-stage-3@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395" + integrity sha1-g2raCp56f6N8sTj7kyb4eTSkg5U= dependencies: babel-plugin-syntax-trailing-function-commas "^6.22.0" babel-plugin-transform-async-generator-functions "^6.24.1" @@ -636,6 +705,7 @@ babel-preset-stage-3@^6.24.1: 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" @@ -643,6 +713,7 @@ babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.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" @@ -653,6 +724,7 @@ babel-template@^6.24.1, babel-template@^6.26.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" @@ -667,54 +739,50 @@ babel-traverse@^6.24.1, babel-traverse@^6.26.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@7.0.0-beta.47: - version "7.0.0-beta.47" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.47.tgz#6d1fa44f0abec41ab7c780481e62fd9aafbdea80" - 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== 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= bignumber.js@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-4.1.0.tgz#db6f14067c140bd46624815a7916c92d9b6c24b1" + integrity sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA== bignumber.js@^7.2.1: version "7.2.1" resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-7.2.1.tgz#80c048759d826800807c4bfd521e50edbba57a5f" + integrity sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ== brace-expansion@^1.1.7: version "1.1.8" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292" + integrity sha1-wHshHHyVLsH479Uad+8NHTmQopI= dependencies: 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" - dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - browser-stdout@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" + integrity sha1-81HTKWnTL6XXpVZxVCY9korjvR8= chai@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chai/-/chai-4.1.2.tgz#0f64584ba642f0f2ace2806279f4f06ca23ad73c" + integrity sha1-D2RYS6ZC8PKs4oBiefTwbKI61zw= dependencies: assertion-error "^1.0.1" check-error "^1.0.1" @@ -726,6 +794,7 @@ chai@^4.1.2: 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" @@ -736,6 +805,7 @@ chalk@^1.1.3: chalk@^2.0.0: version "2.4.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" + integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ== dependencies: ansi-styles "^3.2.1" escape-string-regexp "^1.0.5" @@ -744,120 +814,124 @@ chalk@^2.0.0: check-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" + integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: color-name "1.1.3" color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= commander@2.11.0: version "2.11.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" + integrity sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ== commander@^2.12.2: version "2.15.1" resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f" + integrity sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag== concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= convert-source-map@^1.1.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== dependencies: safe-buffer "~5.1.1" core-js@^1.0.0: version "1.2.7" resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" + integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY= core-js@^2.4.0: version "2.5.1" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b" + integrity sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs= 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= crypto-js@^3.1.9-1: version "3.1.9-1" resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.1.9-1.tgz#fda19e761fc077e01ffbfdc6e9fdfc59e8806cd8" + integrity sha1-/aGedh/Ad+Af+/3G6f38WeiAbNg= cubic2quad@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/cubic2quad/-/cubic2quad-1.1.1.tgz#69b19c61a3f5b41ecf2f1d5fae8fb03415aa8b15" + integrity sha1-abGcYaP1tB7PLx1fro+wNBWqixU= debug@3.1.0, debug@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== dependencies: ms "2.0.0" debug@^2.6.8: 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" deep-eql@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" + integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== dependencies: type-detect "^4.0.0" deep-equal@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= diff@3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" + integrity sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww== diff@^3.1.0: version "3.5.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" + integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== encoding@^0.1.11: version "0.1.12" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" + integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= dependencies: iconv-lite "~0.4.13" escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, 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= esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - -expand-brackets@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - dependencies: - is-posix-bracket "^0.1.0" - -expand-range@^1.8.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - dependencies: - fill-range "^2.1.0" - -extglob@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - dependencies: - is-extglob "^1.0.0" + integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= fbjs@^0.8.16: version "0.8.16" resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db" + integrity sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s= dependencies: core-js "^1.0.0" isomorphic-fetch "^2.1.1" @@ -870,68 +944,37 @@ fbjs@^0.8.16: figma-parser@^0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/figma-parser/-/figma-parser-0.0.2.tgz#9ea412448c00c9d1e5cf3e90d4488ac0f0e0fd62" + integrity sha512-cMTAFYIHYCTDaRqZkqt7GUrZLaIcmStUXjnbfVG9qjMsfqS+zD+d/KJ8zxvjF6QNmQLp1yquKduzq2wunuJsog== dependencies: axios "^0.18.0" markup-js "^1.5.21" -filename-regex@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" - -fill-range@^2.1.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" - dependencies: - is-number "^2.1.0" - isobject "^2.0.0" - randomatic "^3.0.0" - repeat-element "^1.1.2" - repeat-string "^1.5.2" - follow-redirects@^1.3.0: version "1.5.1" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.1.tgz#67a8f14f5a1f67f962c2c46469c79eaec0a90291" + integrity sha512-v9GI1hpaqq1ZZR6pBD1+kI7O24PhDvNGNodjS3MdcEqyrahCp8zbtpv+2B/krUnSmUH80lbAS7MrdeK5IylgKg== dependencies: debug "^3.1.0" -for-in@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - -for-own@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - dependencies: - for-in "^1.0.1" - 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= geometry-interfaces@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/geometry-interfaces/-/geometry-interfaces-1.1.4.tgz#9e82af6700ca639a675299f08e1f5fbc4a79d48d" + integrity sha512-qD6OdkT6NcES9l4Xx3auTpwraQruU7dARbQPVO71MKvkGYw5/z/oIiGymuFXrRaEQa5Y67EIojUpaLeGEa5hGA== get-func-name@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" - -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - 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" - dependencies: - is-glob "^2.0.0" + integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= glob@7.1.2, glob@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" + integrity sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -943,54 +986,66 @@ glob@7.1.2, glob@^7.1.2: globals@^11.1.0: version "11.7.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.7.0.tgz#a583faa43055b1aca771914bf68258e2fc125673" + integrity sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg== 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== growl@1.10.3: version "1.10.3" resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" + integrity sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q== 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@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + integrity sha1-6CB68cx7MNRGzHC3NLXovhj4jVE= has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= he@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" + integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0= hoist-non-react-statics@2.3.1, hoist-non-react-statics@^2.2.1: version "2.3.1" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.3.1.tgz#343db84c6018c650778898240135a1420ee22ce0" + integrity sha1-ND24TGAYxlB3iJgkATWhQg7iLOA= html-parse-stringify2@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/html-parse-stringify2/-/html-parse-stringify2-2.0.1.tgz#dc5670b7292ca158b7bc916c9a6735ac8872834a" + integrity sha1-3FZwtyksoVi3vJFsmmc1rIhyg0o= dependencies: void-elements "^2.0.1" i18next@^10.2.2: version "10.2.2" resolved "https://registry.yarnpkg.com/i18next/-/i18next-10.2.2.tgz#1f2dc55ca2e8d7e071f7aff9f78654ef7f003c0e" + integrity sha512-sWazkOEWjPxfcFEATDaZsHNkIbcCTFzee+qNoJyBWl1jHz0Haabhfk+/j2KVrZcDp2v7tZ9FDSUj3kh6G/IF0Q== iconv-lite@~0.4.13: version "0.4.19" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" + integrity sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ== inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= dependencies: once "^1.3.0" wrappy "1" @@ -998,22 +1053,19 @@ inflight@^1.0.4: inherits@2, inherits@~2.0.1, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= invariant@^2.0.0, invariant@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" + integrity sha1-nh9WrArNtr8wMwbzOL47IErmA2A= dependencies: loose-envify "^1.0.0" -invariant@^2.2.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - dependencies: - loose-envify "^1.0.0" - -iota.lib.js@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/iota.lib.js/-/iota.lib.js-0.5.0.tgz#66e59baf82a4556b739f81d947313d0a3ab2f659" +iota.lib.js@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/iota.lib.js/-/iota.lib.js-0.5.1.tgz#87d424e030308f0029ca6396c92e15d460e7c1b7" + integrity sha512-4DHieyh24o8TJGSj/j1aINrLtYO2Pj9NZa3kqY1lKT0kZcIOkFMJoOsPiLPqVFpAC0RRONoBxni+d48gRyH5SQ== dependencies: async "^2.5.0" bignumber.js "^4.1.0" @@ -1023,70 +1075,27 @@ iota.lib.js@^0.5.0: is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - -is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - -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" - dependencies: - is-primitive "^2.0.0" - -is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - -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" - dependencies: - is-extglob "^1.0.0" - -is-number@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - 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" - -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" - -is-primitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== is-stream@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= isarray@0.0.1: version "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: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - dependencies: - isarray "1.0.0" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= isomorphic-fetch@^2.1.1: version "2.2.1" resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" + integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= dependencies: node-fetch "^1.0.1" whatwg-fetch ">=0.10.0" @@ -1094,116 +1103,108 @@ isomorphic-fetch@^2.1.1: js-tokens@^3.0.0, 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-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== jsesc@^2.5.1: version "2.5.1" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.1.tgz#e421a2a8e20d6b0819df28908f782526b96dd1fe" + integrity sha1-5CGiqOINawgZ3yiQj3glJrlt0f4= jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= json-stringify-safe@^5.0.1: version "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.0: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" + integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= just-extend@^1.1.27: version "1.1.27" resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-1.1.27.tgz#ec6e79410ff914e472652abfa0e603c03d60e905" - -kind-of@^3.0.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - dependencies: - is-buffer "^1.1.5" - -kind-of@^6.0.0: - version "6.0.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" + integrity sha512-mJVp13Ix6gFo3SBAy9U/kL+oeZqzlYYYLQBwXVBlVzIsZwBqGREnOro24oC/8s8aox+rJhtZ2DiQof++IrkA+g== lodash-es@^4.17.4, lodash-es@^4.2.0, lodash-es@^4.2.1: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.4.tgz#dcc1d7552e150a0640073ba9cb31d70f032950e7" + integrity sha1-3MHXVS4VCgZABzupyzHXDwMpUOc= lodash.get@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= lodash.isplainobject@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" + integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= lodash@^4.14.0, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.2.1: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" + integrity sha1-eCA6TRwyiuHYbcpkYONptX9AVa4= lodash@^4.17.10, lodash@^4.17.5, lodash@^4.6.1: version "4.17.10" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" + integrity sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg== lolex@^2.2.0, lolex@^2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/lolex/-/lolex-2.3.2.tgz#85f9450425103bf9e7a60668ea25dc43274ca807" + integrity sha512-A5pN2tkFj7H0dGIAM6MFvHKMJcPnjZsOMvR7ujCjfgW5TbV6H9vb1PgxLtHvjqNZTHsUolz+6/WEO0N1xNx2ng== loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" + integrity sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg= dependencies: js-tokens "^3.0.0" markup-js@^1.5.21: version "1.5.21" resolved "https://registry.yarnpkg.com/markup-js/-/markup-js-1.5.21.tgz#389128703a565964574d0e357e142add3be46d79" - -math-random@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac" + integrity sha1-OJEocDpWWWRXTQ41fhQq3TvkbXk= microbuffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/microbuffer/-/microbuffer-1.0.0.tgz#8b3832ed40c87d51f47bb234913a698a756d19d2" - -micromatch@^2.3.11: - version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - 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" + integrity sha1-izgy7UDIfVH0e7I0kTppinVtGdI= 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== dependencies: brace-expansion "^1.1.7" minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= mkdirp@0.5.1, mkdirp@^0.5.0: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= dependencies: minimist "0.0.8" mocha@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/mocha/-/mocha-4.0.1.tgz#0aee5a95cf69a4618820f5e51fa31717117daf1b" + integrity sha512-evDmhkoA+cBNiQQQdSKZa2b9+W2mpLoj50367lhy+Klnx9OV8XlCIhigUnn1gaTFLQCa0kdNhEGDr0hCXOQFDw== dependencies: browser-stdout "1.3.0" commander "2.11.0" @@ -1219,20 +1220,24 @@ mocha@^4.0.1: moment@^2.22.2: version "2.22.2" resolved "https://registry.yarnpkg.com/moment/-/moment-2.22.2.tgz#3c257f9839fc0e93ff53149632239eb90783ff66" + integrity sha1-PCV/mDn8DpP/UxSWMiOeuQeD/2Y= ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= neatequal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/neatequal/-/neatequal-1.0.0.tgz#2ee1211bc9fa6e4c55715fd210bb05602eb1ae3b" + integrity sha1-LuEhG8n6bkxVcV/SELsFYC6xrjs= dependencies: varstream "^0.3.2" nise@^1.2.0: version "1.3.3" resolved "https://registry.yarnpkg.com/nise/-/nise-1.3.3.tgz#c17a850066a8a1dfeb37f921da02441afc4a82ba" + integrity sha512-v1J/FLUB9PfGqZLGDBhQqODkbLotP0WtLo9R4EJY2PPu5f5Xg4o0rA8FDlmrjFSv9vBBKcfnOSpfYYuu5RTHqg== dependencies: "@sinonjs/formatio" "^2.0.0" just-extend "^1.1.27" @@ -1243,6 +1248,7 @@ nise@^1.2.0: nock@^9.6.1: version "9.6.1" resolved "https://registry.yarnpkg.com/nock/-/nock-9.6.1.tgz#d96e099be9bc1d0189a77f4490bbbb265c381b49" + integrity sha512-EDgl/WgNQ0C1BZZlASOQkQdE6tAWXJi8QQlugqzN64JJkvZ7ILijZuG24r4vCC7yOfnm6HKpne5AGExLGCeBWg== dependencies: chai "^4.1.2" debug "^3.1.0" @@ -1257,81 +1263,66 @@ nock@^9.6.1: node-fetch@^1.0.1: version "1.7.3" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" + integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== dependencies: encoding "^0.1.11" is-stream "^1.0.1" -normalize-path@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - dependencies: - remove-trailing-separator "^1.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" - -object.omit@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - dependencies: - for-own "^0.1.4" - is-extendable "^0.1.1" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= once@^1.3.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= dependencies: wrappy "1" -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" - 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-parse@^1.0.5: version "1.0.6" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" + integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== path-to-regexp@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d" + integrity sha1-Wf3g9DW62suhA6hOnTvGTpa5k30= dependencies: isarray "0.0.1" pathval@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" - -preserve@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" + integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA= 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== promise@^7.1.1: version "7.3.1" resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" + integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== dependencies: asap "~2.0.3" prop-types@^15.5.10, prop-types@^15.6.0: version "15.6.0" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.0.tgz#ceaf083022fc46b4a35f69e13ef75aed0d639856" + integrity sha1-zq8IMCL8RrSjX2nhPvda7Q1jmFY= dependencies: fbjs "^0.8.16" loose-envify "^1.3.1" @@ -1340,6 +1331,7 @@ prop-types@^15.5.10, prop-types@^15.6.0: propagate@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/propagate/-/propagate-1.0.0.tgz#00c2daeedda20e87e3782b344adba1cddd6ad709" + integrity sha1-AMLa7t2iDofjeCs0Stuhzd1q1wk= "proxy-polyfill@git+https://git@github.com/GoogleChrome/proxy-polyfill#9c009d7": version "0.2.0" @@ -1348,22 +1340,17 @@ propagate@^1.0.0: qs@^6.5.1: version "6.5.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== querystringify@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-1.0.0.tgz#6286242112c5b712fa654e526652bf6a13ff05cb" - -randomatic@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.0.tgz#36f2ca708e9e567f5ed2ec01949026d50aa10116" - dependencies: - is-number "^4.0.0" - kind-of "^6.0.0" - math-random "^1.0.1" + integrity sha1-YoYkIRLFtxL6ZU5SZlK/ahP/Bcs= react-i18next@^7.3.4: version "7.3.4" resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-7.3.4.tgz#d5932d47ac7f0d723eecef492ea97b7232673706" + integrity sha1-1ZMtR6x/DXI+7O9JLql7cjJnNwY= dependencies: hoist-non-react-statics "2.3.1" html-parse-stringify2 "2.0.1" @@ -1372,6 +1359,7 @@ react-i18next@^7.3.4: react-redux@^5.0.6: version "5.0.6" resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-5.0.6.tgz#23ed3a4f986359d68b5212eaaa681e60d6574946" + integrity sha512-8taaaGu+J7PMJQDJrk/xiWEYQmdo3mkXw6wPr3K3LxvXis3Fymiq7c13S+Tpls/AyNUAsoONkU81AP0RA6y6Vw== dependencies: hoist-non-react-statics "^2.2.1" invariant "^2.0.0" @@ -1383,6 +1371,7 @@ react-redux@^5.0.6: react@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/react/-/react-16.2.0.tgz#a31bd2dab89bff65d42134fa187f24d054c273ba" + integrity sha512-ZmIomM7EE1DvPEnSFAHZn9Vs9zJl5A9H7el0EGTE6ZbW9FKe/14IYAlPbC8iH25YarEQxZL+E8VW7Mi7kfQrDQ== dependencies: fbjs "^0.8.16" loose-envify "^1.1.0" @@ -1392,6 +1381,7 @@ react@^16.2.0: readable-stream@^1.0.33: version "1.1.14" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" + integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= dependencies: core-util-is "~1.0.0" inherits "~2.0.1" @@ -1401,6 +1391,7 @@ readable-stream@^1.0.33: readable-stream@^2.3.3: version "2.3.6" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" + integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -1413,12 +1404,14 @@ readable-stream@^2.3.3: redux-mock-store@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/redux-mock-store/-/redux-mock-store-1.5.1.tgz#fca4335392e66605420b5559fe02fc5b8bb6d63c" + integrity sha512-B+iZ98ESHw4EAWVLKUknQlop1OdLKOayGRmd6KavNtC0zoSsycD8hTt0hEr1eUTw2gmYJOdfBY5QAgZweTUcLQ== dependencies: lodash.isplainobject "^4.0.6" redux-persist@^4.10.1: version "4.10.2" resolved "https://registry.yarnpkg.com/redux-persist/-/redux-persist-4.10.2.tgz#8efdb16cfe882c521a78a6d0bfdfef2437f49f96" + integrity sha512-U+e0ieMGC69Zr72929iJW40dEld7Mflh6mu0eJtVMLGfMq/aJqjxUM1hzyUWMR1VUyAEEdPHuQmeq5ti9krIgg== dependencies: json-stringify-safe "^5.0.1" lodash "^4.17.4" @@ -1427,10 +1420,12 @@ redux-persist@^4.10.1: redux-thunk@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-2.2.0.tgz#e615a16e16b47a19a515766133d1e3e99b7852e5" + integrity sha1-5hWhbha0ehmlFXZhM9Hj6Zt4UuU= redux@^3.7.2: version "3.7.2" resolved "https://registry.yarnpkg.com/redux/-/redux-3.7.2.tgz#06b73123215901d25d065be342eb026bc1c8537b" + integrity sha512-pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A== dependencies: lodash "^4.2.1" lodash-es "^4.2.1" @@ -1440,28 +1435,26 @@ redux@^3.7.2: regenerate@^1.2.1: version "1.3.3" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f" + integrity sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg== regenerator-runtime@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" + integrity sha512-/aA0kLeRb5N9K0d4fw7ooEbI+xDe+DKD499EQqygGqeS8N3xto15p09uY2xj7ixP81sNPXvRLnAQIqdVStgb1A== 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" -regex-cache@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" - dependencies: - is-equal-shallow "^0.1.3" - regexpu-core@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" + integrity sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA= dependencies: regenerate "^1.2.1" regjsgen "^0.2.0" @@ -1470,66 +1463,66 @@ regexpu-core@^2.0.0: regjsgen@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" + integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= regjsparser@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" + integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= dependencies: jsesc "~0.5.0" -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - -repeat-string@^1.5.2: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - requires-port@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= reselect@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/reselect/-/reselect-3.0.1.tgz#efdaa98ea7451324d092b2b2163a6a1d7a9a2147" + integrity sha1-79qpjqdFEyTQkrKyFjpqHXqaIUc= resolve@^1.3.2: version "1.8.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" + integrity sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA== dependencies: path-parse "^1.0.5" 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== samsam@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/samsam/-/samsam-1.3.0.tgz#8d1d9350e25622da30de3e44ba692b5221ab7c50" + integrity sha512-1HwIYD/8UlOtFS3QO3w7ey+SdSDFE4HRNLZoZRYVQefrOY3l17epswImeB1ijgJFQJodIaHcwkp3r/myBjFVbg== 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== semver@^5.4.1: version "5.5.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.1.tgz#7dfdd8814bdb7cabc7be0fb1d734cfb66c940477" + integrity sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw== 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== setimmediate@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= sinon@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/sinon/-/sinon-4.5.0.tgz#427ae312a337d3c516804ce2754e8c0d5028cb04" + integrity sha512-trdx+mB0VBBgoYucy6a9L7/jfQOmvGeaKZT4OOJ+lPAtI8623xyGr8wLiE4eojzBS8G9yXbhx42GHUOVLr4X2w== dependencies: "@sinonjs/formatio" "^2.0.0" diff "^3.1.0" @@ -1542,64 +1535,77 @@ sinon@^4.5.0: source-map@^0.5.0: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= string.fromcodepoint@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/string.fromcodepoint/-/string.fromcodepoint-0.2.1.tgz#8d978333c0bc92538f50f383e4888f3e5619d653" + integrity sha1-jZeDM8C8klOPUPOD5IiPPlYZ1lM= string.prototype.codepointat@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/string.prototype.codepointat/-/string.prototype.codepointat-0.2.1.tgz#004ad44c8afc727527b108cd462b4d971cd469bc" + integrity sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg== string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== dependencies: safe-buffer "~5.1.0" strip-ansi@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= dependencies: ansi-regex "^2.0.0" supports-color@4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" + integrity sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ== dependencies: has-flag "^2.0.0" 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@^5.1.0: version "5.4.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.4.0.tgz#1c6b337402c2137605efe19f10fec390f6faab54" + integrity sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w== dependencies: has-flag "^3.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" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" svg-pathdata@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/svg-pathdata/-/svg-pathdata-4.0.1.tgz#7d880d05140ef3bda312c72a023db733e9d8ef7a" + integrity sha1-fYgNBRQO872jEscqAj23M+nY73o= svg2ttf@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/svg2ttf/-/svg2ttf-4.1.0.tgz#82022e568bd03c1abb668fdd8d15f008956a0e10" + integrity sha1-ggIuVovQPBq7Zo/djRXwCJVqDhA= dependencies: argparse "^1.0.6" cubic2quad "^1.0.0" @@ -1611,6 +1617,7 @@ svg2ttf@^4.1.0: svgicons2svgfont@^9.0.2: version "9.0.2" resolved "https://registry.yarnpkg.com/svgicons2svgfont/-/svgicons2svgfont-9.0.2.tgz#5179427527856dff8f484fcc87181b9cf48919bc" + integrity sha512-XyM3lBALo8wsWF2x8rwrA86ZQjy4FSd1Hl6dH3BUa6Yys0e8cFix+jsbZIpO4c1VapqfL05yCO82rmknTIaJYQ== dependencies: commander "^2.12.2" geometry-interfaces "^1.1.4" @@ -1626,54 +1633,67 @@ svgicons2svgfont@^9.0.2: svgpath@^2.1.5: version "2.2.1" resolved "https://registry.yarnpkg.com/svgpath/-/svgpath-2.2.1.tgz#0834bb67c89a76472b2bd06cc101fa7b517b222c" + integrity sha1-CDS7Z8iadkcrK9BswQH6e1F7Iiw= symbol-observable@^1.0.3: version "1.1.0" resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.1.0.tgz#5c68fd8d54115d9dfb72a84720549222e8db9b32" + integrity sha512-dQoid9tqQ+uotGhuTKEY11X4xhyYePVnqGSoSm3OGKh2E8LZ6RPULp1uXTctk33IeERlrRJYoVSBglsL05F5Uw== text-encoding@^0.6.4: version "0.6.4" resolved "https://registry.yarnpkg.com/text-encoding/-/text-encoding-0.6.4.tgz#e399a982257a276dae428bb92845cb71bdc26d19" + integrity sha1-45mpgiV6J22uQou5KEXLcb3CbRk= timekeeper@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/timekeeper/-/timekeeper-2.0.0.tgz#eaf7a0dcfdc95d4658b9cc3d21107206cc4e2eed" + integrity sha512-DVH+iEKcVwU3JkZK0Z86qFx8osIG05U1H/F6lAE+iPfvElioM9HPVd2ZKmoI4zS0AWsDogOXl/BuKWXNadI/fw== tinycolor2@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.1.tgz#f4fad333447bc0b07d4dc8e9209d8f39a8ac77e8" + integrity sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g= 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" + integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= transformation-matrix-js@^2.7.1: version "2.7.1" resolved "https://registry.yarnpkg.com/transformation-matrix-js/-/transformation-matrix-js-2.7.1.tgz#0b62e88b655e843e8e5972a668159554ffdcc910" + integrity sha1-C2Loi2VehD6OWXKmaBWVVP/cyRA= trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" + integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= type-detect@^4.0.0: version "4.0.5" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.5.tgz#d70e5bc81db6de2a381bcaca0c6e0cbdc7635de2" + integrity sha512-N9IvkQslUGYGC24RkJk1ba99foK6TkwC2FHAEBlQFBP0RxQZS8ZpJuAZcwiY/w9ZJHFQb1aOXBI60OdxhTrwEQ== type-detect@^4.0.5: version "4.0.8" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== ua-parser-js@^0.7.9: version "0.7.17" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.17.tgz#e9ec5f9498b9ec910e7ae3ac626a805c4d09ecac" + integrity sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g== url-parse@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.2.0.tgz#3a19e8aaa6d023ddd27dcc44cb4fc8f7fec23986" + integrity sha512-DT1XbYAfmQP65M/mE6OALxmXzZ/z1+e5zk2TcSKe/KiYbNGZxgtttzC0mR/sjopbpOXcbniq7eIKmocJnUWlEw== dependencies: querystringify "~1.0.0" requires-port "~1.0.0" @@ -1681,37 +1701,46 @@ url-parse@^1.2.0: util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= valid-url@^1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/valid-url/-/valid-url-1.0.9.tgz#1c14479b40f1397a75782f115e4086447433a200" + integrity sha1-HBRHm0DxOXp1eC8RXkCGRHQzogA= varstream@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/varstream/-/varstream-0.3.2.tgz#18ac6494765f3ff1a35ad9a4be053bec188a5de1" + integrity sha1-GKxklHZfP/GjWtmkvgU77BiKXeE= dependencies: readable-stream "^1.0.33" void-elements@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" + integrity sha1-wGavtYK7HLQSjWDqkjkulNXp2+w= whatwg-fetch@>=0.10.0: version "2.0.3" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84" + integrity sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ= wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= xmldom@~0.1.22: version "0.1.27" resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9" + integrity sha1-1QH5ezvbQDr4757MIFcxh6rawOk= xmlhttprequest@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc" + integrity sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw= zxcvbn@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/zxcvbn/-/zxcvbn-4.4.2.tgz#28ec17cf09743edcab056ddd8b1b06262cc73c30" + integrity sha1-KOwXzwl0PtyrBW3dixsGJizHPDA= From 2b6ab05be03f97dcea27f0296ca7d44243cb47bd Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 18 Oct 2018 17:22:41 +0100 Subject: [PATCH 012/141] Mobile: Add new send progress bar --- .../ui/components/ProgressBar.spec.js | 73 --- .../__tests__/ui/views/wallet/Send.spec.js | 17 +- .../ios/iotaWallet.xcodeproj/project.pbxproj | 56 +-- src/mobile/package.json | 2 +- src/mobile/src/ui/components/CtaButton.js | 2 +- src/mobile/src/ui/components/ProgressBar.js | 437 ++++++++++++++--- .../components/TransferConfirmationModal.js | 4 +- src/mobile/src/ui/views/wallet/Send.js | 147 +++--- src/mobile/yarn.lock | 10 +- .../__tests__/reducers/progress.spec.js | 62 --- src/shared/animations/slider-loader.json | 240 +++++++++ src/shared/animations/slider-success.json | 455 ++++++++++++++++++ src/shared/reducers/progress.js | 9 - 13 files changed, 1173 insertions(+), 341 deletions(-) delete mode 100644 src/mobile/__tests__/ui/components/ProgressBar.spec.js create mode 100644 src/shared/animations/slider-loader.json create mode 100644 src/shared/animations/slider-success.json diff --git a/src/mobile/__tests__/ui/components/ProgressBar.spec.js b/src/mobile/__tests__/ui/components/ProgressBar.spec.js deleted file mode 100644 index 6d200dde83..0000000000 --- a/src/mobile/__tests__/ui/components/ProgressBar.spec.js +++ /dev/null @@ -1,73 +0,0 @@ -import assign from 'lodash/assign'; -import React from 'react'; -import PropTypes from 'prop-types'; -import { shallow } from 'enzyme'; -import { TextInput } from 'react-native'; -import ProgressBar from 'ui/components/ProgressBar'; - -const getProps = (overrides) => - assign( - {}, - { - progress: 0, - children: , - textColor: '#ffffff', - }, - overrides, - ); - -describe('Testing ProgressBar component', () => { - describe('propTypes', () => { - it('should require a progress number as a prop', () => { - expect(ProgressBar.propTypes.progress).toEqual(PropTypes.number.isRequired); - }); - - it('should accept a children node as a prop', () => { - expect(ProgressBar.propTypes.children).toEqual(PropTypes.node); - }); - - it('should accept a color string as a prop', () => { - expect(ProgressBar.propTypes.color).toEqual(PropTypes.string); - }); - - it('should accept an indeterminate bool as a prop', () => { - expect(ProgressBar.propTypes.indeterminate).toEqual(PropTypes.bool); - }); - - it('should accept an animationType string as a prop', () => { - expect(ProgressBar.propTypes.animationType).toEqual(PropTypes.string); - }); - - it('should accept a width number as a prop', () => { - expect(ProgressBar.propTypes.width).toEqual(PropTypes.number); - }); - - it('should accept a height number as a prop', () => { - expect(ProgressBar.propTypes.height).toEqual(PropTypes.number); - }); - - it('should accept a textColor string as a prop', () => { - expect(ProgressBar.propTypes.textColor).toEqual(PropTypes.string); - }); - }); - - describe('when renders', () => { - it('should not explode', () => { - const props = getProps(); - - const wrapper = shallow(); - expect(wrapper.name()).toEqual('View'); - }); - - it('should return children props as a direct child of Text component', () => { - const props = getProps(); - - const wrapper = shallow(); - const text = wrapper - .children() - .at(0) - .childAt(0); - expect(text.children().type()).toEqual(TextInput); - }); - }); -}); diff --git a/src/mobile/__tests__/ui/views/wallet/Send.spec.js b/src/mobile/__tests__/ui/views/wallet/Send.spec.js index d894349f12..0f6f867052 100644 --- a/src/mobile/__tests__/ui/views/wallet/Send.spec.js +++ b/src/mobile/__tests__/ui/views/wallet/Send.spec.js @@ -34,16 +34,16 @@ const getProps = (overrides) => getFromKeychainError: noop, closeTopBar: noop, isSendingTransfer: false, - negative: { color: 'black' }, - bar: { color: 'red', bg: 'white' }, - body: { color: 'blue', bg: 'green' }, - primary: { - color: 'white', - body: 'white', - hover: 'green', - }, isTransitioning: false, address: '9'.repeat(81), + theme: { + body: {}, + primary: {}, + bar: {}, + input: {}, + dark: {}, + secondary: {}, + }, amount: '10', message: 'baz', setSendAddressField: noop, @@ -51,7 +51,6 @@ const getProps = (overrides) => setSendMessageField: noop, setSendDenomination: noop, denomination: 'i', - theme: {}, resetProgress: noop, startTrackingProgress: noop, activeStepIndex: 0, diff --git a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj index 2946bf123c..ce8f49e268 100644 --- a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj +++ b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj @@ -69,6 +69,7 @@ CB98FB9620A0A5BB0047877B /* SourceSansPro-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CB98FB9320A0A5BB0047877B /* SourceSansPro-Light.ttf */; }; CBA5F52620CAAB2A00774D4B /* SourceCodePro-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CBA5F52520CAAB2A00774D4B /* SourceCodePro-Medium.ttf */; }; CBA69EF920C8139300DD4CEB /* Icons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CBA69EF820C8139300DD4CEB /* Icons.ttf */; }; + CBBD19A22177BCBB0076C9EC /* libLottieReactNative.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CBBD19A12177BCAE0076C9EC /* libLottieReactNative.a */; }; CBC214EA20CE82EC005D8ACB /* libRNReactNativeHapticFeedback.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CBC214E920CE82DC005D8ACB /* libRNReactNativeHapticFeedback.a */; }; CBEA4C9421494823007DA583 /* libReactNativeNavigation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CBEA4C912149481F007DA583 /* libReactNativeNavigation.a */; }; CBEC7C012108D78900F0020D /* libRNFastCrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CBEC7C002108D77100F0020D /* libRNFastCrypto.a */; }; @@ -87,7 +88,6 @@ F19CAE1462E2409387028CD1 /* NodeMobile.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CB7A0253632148CC9F004F24 /* NodeMobile.framework */; }; F43A0D26643270FD3A4BFD2691C35E43 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B655981D53B5AE618EDBD102EA41BF51 /* libReact.a */; }; F47E436883524D18AB563054 /* nodejs-project in Resources */ = {isa = PBXBuildFile; fileRef = C6679B3BCAC742D9A6A13DC5 /* nodejs-project */; }; - F695E3B017504F2AD81D2965695DA403 /* libLottieReactNative.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 05A278F7206668C3941E08E4900DD55E /* libLottieReactNative.a */; }; F834CDED8A9A63C142A683ADB8483369 /* iotaWalletTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00A81CE60367578E89DC687A3A32D03E /* iotaWalletTests.m */; }; /* End PBXBuildFile section */ @@ -141,13 +141,6 @@ remoteGlobalIDString = D09A20E9314FCC90115E1E28BD5DB357; remoteInfo = "yoga-tvOS"; }; - 1D4B301C1E61385E585E2A112DA1B8AA /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = ED242A7662F7C74297E27CF29CD96195 /* LottieReactNative.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = E137367F371D799CF0D87227D17F7969; - remoteInfo = LottieReactNative; - }; 28BD818916EC80191B9C06F5C44796AA /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = FBC6F77FBF455B92FBB736B0E5DE8E13 /* Project object */; @@ -484,6 +477,13 @@ remoteGlobalIDString = 163CDE4E2087CAD3001065FB; remoteInfo = "RNRandomBytes-tvOS"; }; + CBBD19A02177BCAE0076C9EC /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = CBBD199C2177BCAE0076C9EC /* LottieReactNative.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 11FA5C511C4A1296003AC2EE; + remoteInfo = LottieReactNative; + }; CBC214E820CE82DC005D8ACB /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = CBC214E420CE82DC005D8ACB /* RNReactNativeHapticFeedback.xcodeproj */; @@ -757,6 +757,7 @@ CB98FB9320A0A5BB0047877B /* SourceSansPro-Light.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "SourceSansPro-Light.ttf"; path = "../../shared/custom-fonts/SourceSansPro-Light.ttf"; sourceTree = ""; }; CBA5F52520CAAB2A00774D4B /* SourceCodePro-Medium.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "SourceCodePro-Medium.ttf"; path = "../../shared/custom-fonts/SourceCodePro-Medium.ttf"; sourceTree = ""; }; CBA69EF820C8139300DD4CEB /* Icons.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = Icons.ttf; path = ../../shared/icons/Icons.ttf; sourceTree = ""; }; + CBBD199C2177BCAE0076C9EC /* LottieReactNative.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = LottieReactNative.xcodeproj; path = "../node_modules/lottie-react-native/src/ios/LottieReactNative.xcodeproj"; sourceTree = ""; }; CBC214E420CE82DC005D8ACB /* RNReactNativeHapticFeedback.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RNReactNativeHapticFeedback.xcodeproj; path = "../node_modules/react-native-haptic-feedback/ios/RNReactNativeHapticFeedback.xcodeproj"; sourceTree = ""; }; CBEA4C8B2149481F007DA583 /* ReactNativeNavigation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ReactNativeNavigation.xcodeproj; path = "../node_modules/react-native-navigation/lib/ios/ReactNativeNavigation.xcodeproj"; sourceTree = ""; }; CFA2B84C183CC39F995C8E04CC713DDB /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = iotaWallet/Images.xcassets; sourceTree = ""; }; @@ -771,7 +772,6 @@ DFF7F2DF242CD80F15A83C96A62910D0 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; E3A5CC95D9B27ABCF4FAD971B8E3AC51 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/InfoPlist.strings; sourceTree = ""; }; ED0FDEA3EDE9090E04563794CE9A92B7 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = iotaWallet/main.m; sourceTree = ""; }; - ED242A7662F7C74297E27CF29CD96195 /* LottieReactNative.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = LottieReactNative.xcodeproj; path = "../node_modules/lottie-react-native/lib/ios/LottieReactNative.xcodeproj"; sourceTree = ""; }; EEAE9D5C606B7556253D3AD01EB78CE0 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = iotaWallet/Info.plist; sourceTree = ""; }; EEF5BF9089B89A57B0EABB4E6415A676 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/InfoPlist.strings; sourceTree = ""; }; F05FB5124D5FDAF46BC578870641ED07 /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/InfoPlist.strings; sourceTree = ""; }; @@ -795,6 +795,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + CBBD19A22177BCBB0076C9EC /* libLottieReactNative.a in Frameworks */, CBF1F1EE21623D8900509A54 /* libReact.a in Frameworks */, CBEA4C9421494823007DA583 /* libReactNativeNavigation.a in Frameworks */, 60F7E4242125EBE7005355C7 /* libRNDocumentPicker.a in Frameworks */, @@ -814,7 +815,6 @@ 0C2504A17226DF5FFD3C2A54AD060E8A /* libBugsnagReactNative.a in Frameworks */, 6ED5CBEF7B1A39258C560F6CDCD36254 /* libKCKeepAwake.a in Frameworks */, 2F852D5F92D3F66B78914D33F296087F /* libLottie.a in Frameworks */, - F695E3B017504F2AD81D2965695DA403 /* libLottieReactNative.a in Frameworks */, 227F5ECF692F599792F69DC4D573B2E6 /* libRCTActionSheet.a in Frameworks */, 5613EA5FACE7DF227C991290F2E89D02 /* libRCTAnimation.a in Frameworks */, E3AE8565650D2534125883D55649D450 /* libRCTGeolocation.a in Frameworks */, @@ -927,14 +927,6 @@ name = Products; sourceTree = ""; }; - 36C28026D94ACB992F53386A85FFD077 /* Products */ = { - isa = PBXGroup; - children = ( - 05A278F7206668C3941E08E4900DD55E /* libLottieReactNative.a */, - ); - name = Products; - sourceTree = ""; - }; 3B537B39817BE965218CAE954AED9DE5 /* iotaWallet */ = { isa = PBXGroup; children = ( @@ -1086,6 +1078,7 @@ 6C07637C2BD02779C4E072737C53A2E3 /* Libraries */ = { isa = PBXGroup; children = ( + CBBD199C2177BCAE0076C9EC /* LottieReactNative.xcodeproj */, CBEA4C8B2149481F007DA583 /* ReactNativeNavigation.xcodeproj */, 60F7E3AE2125EAE7005355C7 /* RNDocumentPicker.xcodeproj */, CB305EFE21185EEC00657575 /* RNFetchBlob.xcodeproj */, @@ -1099,7 +1092,6 @@ 5BC0CFE5E7DFF31220E78B818DA00C4B /* BugsnagReactNative.xcodeproj */, 9E17389EF3AB0C14C6843EF1892D81D4 /* KCKeepAwake.xcodeproj */, B8B9BB680BF96F04B35C8CF2291F3DF7 /* Lottie.xcodeproj */, - ED242A7662F7C74297E27CF29CD96195 /* LottieReactNative.xcodeproj */, DA959792AD9A5C3642835114D50DE868 /* Pods.xcodeproj */, F06C37C0B9522995FB8FC4AACEE1A4A1 /* RCTActionSheet.xcodeproj */, C76D226F8C33DAB67AA9C4D76FCA89C2 /* RCTAnimation.xcodeproj */, @@ -1290,6 +1282,14 @@ path = EntangledIOS; sourceTree = ""; }; + CBBD199D2177BCAE0076C9EC /* Products */ = { + isa = PBXGroup; + children = ( + CBBD19A12177BCAE0076C9EC /* libLottieReactNative.a */, + ); + name = Products; + sourceTree = ""; + }; CBC214E520CE82DC005D8ACB /* Products */ = { isa = PBXGroup; children = ( @@ -1638,8 +1638,8 @@ ProjectRef = B8B9BB680BF96F04B35C8CF2291F3DF7 /* Lottie.xcodeproj */; }, { - ProductGroup = 36C28026D94ACB992F53386A85FFD077 /* Products */; - ProjectRef = ED242A7662F7C74297E27CF29CD96195 /* LottieReactNative.xcodeproj */; + ProductGroup = CBBD199D2177BCAE0076C9EC /* Products */; + ProjectRef = CBBD199C2177BCAE0076C9EC /* LottieReactNative.xcodeproj */; }, { ProductGroup = 9587AF1D58A6A266E24B67481F9ED9F2 /* Products */; @@ -1793,13 +1793,6 @@ remoteRef = C9772B939B4E8110FBC5F859B3227154 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 05A278F7206668C3941E08E4900DD55E /* libLottieReactNative.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libLottieReactNative.a; - remoteRef = 1D4B301C1E61385E585E2A112DA1B8AA /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; 0DF165D1193E4B4962DABF4E7264F91B /* libRCTWebSocket.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; @@ -2143,6 +2136,13 @@ remoteRef = CB8F2AF32095E41E0071A30B /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; + CBBD19A12177BCAE0076C9EC /* libLottieReactNative.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libLottieReactNative.a; + remoteRef = CBBD19A02177BCAE0076C9EC /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; CBC214E920CE82DC005D8ACB /* libRNReactNativeHapticFeedback.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; diff --git a/src/mobile/package.json b/src/mobile/package.json index bfa02b15fe..17d35b8410 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -46,7 +46,7 @@ "inherits": "^2.0.3", "lodash": "^4.17.10", "lottie-ios": "^2.1.5", - "lottie-react-native": "2.2.7", + "lottie-react-native": "^2.5.9", "nodejs-mobile-react-native": "https://github.com/rajivshah3/nodejs-mobile-react-native", "os-browserify": "^0.1.2", "path-browserify": "0.0.0", diff --git a/src/mobile/src/ui/components/CtaButton.js b/src/mobile/src/ui/components/CtaButton.js index fd7698ee56..12bee1f968 100644 --- a/src/mobile/src/ui/components/CtaButton.js +++ b/src/mobile/src/ui/components/CtaButton.js @@ -43,7 +43,7 @@ class CtaButton extends PureComponent { static defaultProps = { fontSize: Styling.fontSize3, ctaWidth: Styling.contentWidth, - ctaHeight: height / 14, + ctaHeight: height / 11, testID: '', }; diff --git a/src/mobile/src/ui/components/ProgressBar.js b/src/mobile/src/ui/components/ProgressBar.js index f81b32f0c6..d7dc4b7924 100644 --- a/src/mobile/src/ui/components/ProgressBar.js +++ b/src/mobile/src/ui/components/ProgressBar.js @@ -1,75 +1,388 @@ -import React from 'react'; +import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import { StyleSheet, View, Text } from 'react-native'; -import * as Progress from 'react-native-progress'; -import { width, height } from 'libs/dimensions'; +import { PanResponder, Easing, Animated, StyleSheet, View } from 'react-native'; +import LottieView from 'lottie-react-native'; +import sliderLoadingAnimation from 'shared-modules/animations/slider-loader.json'; +import sliderSuccessAnimation from 'shared-modules/animations/slider-success.json'; +import timer from 'react-native-timer'; +import { height } from 'libs/dimensions'; +import { Styling } from 'ui/theme/general'; +import { Icon } from 'ui/theme/icons'; const styles = StyleSheet.create({ container: { alignItems: 'center', - marginBottom: height / 30, - }, - textWrapper: { - flex: 1, + borderRadius: height / 10, + overflow: 'hidden', + justifyContent: 'center', }, text: { - color: 'white', - marginBottom: height / 40, - fontFamily: 'SourceSansPro-Light', + fontFamily: 'SourceSansPro-Regular', + fontSize: Styling.fontSize3, + position: 'absolute', + backgroundColor: 'transparent', + }, + slider: { + justifyContent: 'center', + alignItems: 'center', }, }); -const ProgressBar = (props) => { - return ( - - - {props.children} +class ProgressBar extends Component { + static propTypes = { + /** Progress percentage number */ + progress: PropTypes.number.isRequired, + /** Filled bar color */ + filledColor: PropTypes.string, + /** Unfilled bar color */ + unfilledColor: PropTypes.string, + /** Progress bar width */ + width: PropTypes.number, + /** Progress bar height */ + height: PropTypes.number, + /** Progress bar text color */ + textColor: PropTypes.string, + /** Progress bar text */ + progressText: PropTypes.oneOfType([PropTypes.string, PropTypes.array]), + /** Total number of progress steps */ + stepSize: PropTypes.number, + preSwipeColor: PropTypes.string, + postSwipeColor: PropTypes.string, + staticText: PropTypes.string, + onCompleteSwipe: PropTypes.func, + interupt: PropTypes.bool, + }; + + static defaultProps = { + animationType: 'timing', + width: Styling.contentWidth, + height: height / 11, + indeterminate: false, + color: 'rgba(247, 208, 2, 0.75)', + textColor: 'rgba(247, 208, 2, 0.75)', + }; + + constructor(props) { + super(props); + this.state = { + progressPosition: new Animated.Value(0), + progress: -1, + counter: 0, + sliderPosition: new Animated.Value(0), + thresholdDistance: props.width - props.height, + sliderColor: props.preSwipeColor, + textOpacity: new Animated.Value(1), + sliderOpacity: new Animated.Value(1), + progressText: '', + inProgress: false, + sliderAnimation: sliderLoadingAnimation, + }; + } + + componentWillMount() { + this._panResponder = PanResponder.create({ + onStartShouldSetPanResponder: () => true, + onStartShouldSetPanResponderCapture: () => true, + onMoveShouldSetPanResponder: () => true, + onMoveShouldSetPanResponderCapture: () => true, + onPanResponderMove: (evt, gestureState) => { + if (this.state.inProgress) { + return; + } + const moveValue = gestureState.dx; + const relativeSlidePosition = moveValue / this.state.thresholdDistance; + this.state.textOpacity.setValue(1 - relativeSlidePosition * 2); + this.state.sliderOpacity.setValue(1 - relativeSlidePosition / 2.5); + if (moveValue >= 0 && moveValue <= this.state.thresholdDistance) { + this.state.sliderPosition.setValue(gestureState.dx); + } + }, + onPanResponderRelease: (evt, gestureState) => { + if (this.state.inProgress) { + return; + } + const releaseValue = gestureState.dx; + if (gestureState.dx > 0) { + if (releaseValue >= this.state.thresholdDistance) { + this.onCompleteSwipe(); + } else if (releaseValue >= 0) { + this.onIncompleteSwipe(); + } + } + }, + onPanResponderTerminate: () => {}, + onPanResponderTerminationRequest: () => true, + }); + } + + componentWillReceiveProps(newProps) { + if (this.props.progress !== newProps.progress) { + // On first progress change + if (this.props.progress < 0) { + this.setState({ inProgress: true }); + this.animateProgressBar(); + this.sliderAnimation.play(); + } + // On every progress change + this.setState({ progress: newProps.progress, counter: newProps.progress }); + this.onProgressStepChange(newProps.progressText); + // On last progress change + if (this.props.stepSize > 0 && newProps.progress === 1 - this.props.stepSize) { + this.onProgressComplete(); + } + } + if (this.props.interupt !== newProps.interupt) { + this.onInterupt(); + } + } + + componentWillUnmount() { + timer.clearTimeout('delayProgressTextChange'); + timer.clearTimeout('delayProgressTextFadeOut'); + timer.clearTimeout('delaySliderReset'); + timer.clearTimeout('delaySuccessAnimation'); + timer.clearTimeout('delaySliderOpacityIncreaseAnimation'); + } + + onProgressComplete() { + this.sliderAnimation.reset(); + this.setState({ sliderAnimation: sliderSuccessAnimation, shouldLoopSliderAnimation: false }); + timer.setTimeout( + 'delaySliderOpacityIncreaseAnimation', + () => { + Animated.timing(this.state.sliderOpacity, { + toValue: 1, + duration: 300, + easing: Easing.ease, + }).start(); + }, + 900, + ); + timer.setTimeout( + 'delaySuccessAnimation', + () => { + this.sliderAnimation.play(); + }, + 1200, + ); + timer.setTimeout( + 'delaySliderReset', + () => { + this.sliderAnimation.reset(); + this.setState({ + progress: -1, + inProgress: false, + sliderAnimation: sliderLoadingAnimation, + shouldLoopSliderAnimation: true, + }); + this.state.progressPosition.setValue(0); + this.resetSlider(); + }, + 4000, + ); + } + + onIncompleteSwipe() { + const duration = 500; + Animated.parallel([ + Animated.spring(this.state.sliderPosition, { + toValue: 0, + duration, + }), + Animated.timing(this.state.sliderOpacity, { + toValue: 1, + duration, + }), + Animated.timing(this.state.textOpacity, { + toValue: 1, + duration, + }), + ]).start(); + } + + onInterupt() { + this.setState({ progress: -1, inProgress: false }); + Animated.timing(this.state.progressPosition).stop(); + this.state.progressPosition.setValue(0); + Animated.timing(this.state.sliderPosition).stop(); + this.resetSlider(); + } + + onCompleteSwipe() { + Animated.timing(this.state.sliderPosition, { + toValue: this.props.width - this.props.height, + duration: 50, + }).start(); + this.setState({ sliderColor: this.props.postSwipeColor }); + this.props.onCompleteSwipe(); + } + + onProgressStepChange(progressText) { + // On first step change + if (this.state.progress < 0) { + this.setState({ progressText }); + return Animated.timing(this.state.textOpacity, { + toValue: 1, + duration: 100, + }).start(); + } + // On last step change + if (this.state.progress === 1) { + return timer.setTimeout( + 'delayProgressTextFadeOut', + () => { + Animated.timing(this.state.textOpacity, { + toValue: 0, + duration: 100, + }).start(); + }, + 5000, + ); + } + // On any other step change + if (this.state.progress >= 0) { + return timer.setTimeout( + 'delayProgressTextChange', + () => { + Animated.timing(this.state.textOpacity, { + toValue: 0, + duration: 100, + }).start(() => { + this.setState({ progressText }); + Animated.timing(this.state.textOpacity, { + toValue: 1, + duration: 100, + }).start(); + }); + }, + 300, + ); + } + } + + animateProgressBar() { + const nextStep = this.state.progress + this.props.stepSize; + const increment = this.props.stepSize / 100; + const updatedCounter = this.state.counter + increment; + if (this.state.counter < nextStep - this.props.stepSize / 5) { + this.setState({ counter: updatedCounter }); + } + Animated.timing(this.state.progressPosition, { + toValue: Math.max(this.state.progress, this.state.counter), + useNativeDriver: true, + easing: Easing.ease, + }).start(() => { + if (this.state.counter <= 1 && this.state.inProgress) { + this.animateProgressBar(); + } + }); + } + + resetSlider() { + const duration = 500; + this.setState({ sliderColor: this.props.preSwipeColor }); + Animated.parallel([ + Animated.spring(this.state.sliderPosition, { + toValue: 0, + duration, + easing: Easing.elastic(), + }), + Animated.timing(this.state.sliderOpacity, { + toValue: 1, + duration, + easing: Easing.ease, + }), + Animated.timing(this.state.textOpacity, { + toValue: 1, + duration, + easing: Easing.ease, + }), + ]).start(); + } + + render() { + const { height, width, textColor, staticText, unfilledColor, filledColor } = this.props; + const progressStyle = { + backgroundColor: filledColor, + height, + width, + transform: [ + { + translateX: this.state.progressPosition.interpolate({ + inputRange: [0, 1], + outputRange: [-width, 0], + }), + }, + ], + }; + return ( + + + {(this.state.inProgress && ( + + {this.state.progressText} + + )) || ( + + {staticText} + + )} + + + + { + this.sliderAnimation = animation; + }} + source={this.state.sliderAnimation} + style={{ width: height * 0.8, height: height * 0.8, position: 'absolute' }} + loop={this.state.shouldLoopSliderAnimation} + /> + {!this.state.inProgress && ( + + )} + + + - - - ); -}; - -ProgressBar.propTypes = { - /** Progress percentage number */ - progress: PropTypes.number.isRequired, - /** Children content */ - children: PropTypes.node, - /** Bar color */ - color: PropTypes.string, - /** When true, progress prop will be ignored */ - indeterminate: PropTypes.bool, - /** Type of animation for progress bar */ - animationType: PropTypes.string, - /** Progress bar width */ - width: PropTypes.number, - /** Progress bar height */ - height: PropTypes.number, - /** Progress bar text color */ - textColor: PropTypes.string, - /** Default style object */ - style: PropTypes.object, -}; - -ProgressBar.defaultProps = { - animationType: 'timing', - width: width / 2, - height: height / 40, - indeterminate: false, - color: 'rgba(247, 208, 2, 0.75)', - textColor: 'rgba(247, 208, 2, 0.75)', - style: { - textWrapper: {}, - }, -}; + ); + } +} export default ProgressBar; diff --git a/src/mobile/src/ui/components/TransferConfirmationModal.js b/src/mobile/src/ui/components/TransferConfirmationModal.js index b1291435c7..3a94c0a79e 100644 --- a/src/mobile/src/ui/components/TransferConfirmationModal.js +++ b/src/mobile/src/ui/components/TransferConfirmationModal.js @@ -88,6 +88,8 @@ class TransferConfirmationModal extends Component { isFingerprintEnabled: PropTypes.bool.isRequired, /** Activates fingerprint scanner */ activateFingerprintScanner: PropTypes.func.isRequired, + /** Cancels send and closes modal */ + cancel: PropTypes.func.isRequired, }; constructor() { @@ -192,7 +194,7 @@ class TransferConfirmationModal extends Component { )} this.props.hideModal()} + onLeftButtonPress={() => this.props.cancel()} onRightButtonPress={() => this.onSendPress()} leftText={t('global:cancel').toUpperCase()} rightText={t('global:send')} diff --git a/src/mobile/src/ui/views/wallet/Send.js b/src/mobile/src/ui/views/wallet/Send.js index f0fc6ed41d..9a1ed41093 100644 --- a/src/mobile/src/ui/views/wallet/Send.js +++ b/src/mobile/src/ui/views/wallet/Send.js @@ -1,6 +1,4 @@ import size from 'lodash/size'; -import map from 'lodash/map'; -import reduce from 'lodash/reduce'; import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { withNamespaces } from 'react-i18next'; @@ -44,7 +42,6 @@ import ProgressSteps from 'libs/progressSteps'; import SeedStore from 'libs/SeedStore'; import CustomTextInput from 'ui/components/CustomTextInput'; import AmountTextInput from 'ui/components/AmountTextInput'; -import CtaButton from 'ui/components/CtaButton'; import { Icon } from 'ui/theme/icons'; import { width } from 'libs/dimensions'; import { isAndroid } from 'libs/device'; @@ -90,9 +87,6 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'center', }, - progressSummaryText: { - fontSize: Styling.fontSize2, - }, }); export class Send extends Component { @@ -118,8 +112,6 @@ export class Send extends Component { /** @ignore */ usdPrice: PropTypes.number.isRequired, /** @ignore */ - isGettingSensitiveInfoToMakeTransaction: PropTypes.bool.isRequired, - /** @ignore */ makeTransaction: PropTypes.func.isRequired, /** @ignore */ generateAlert: PropTypes.func.isRequired, @@ -134,12 +126,6 @@ export class Send extends Component { /** @ignore */ theme: PropTypes.object.isRequired, /** @ignore */ - bar: PropTypes.object.isRequired, - /** @ignore */ - body: PropTypes.object.isRequired, - /** @ignore */ - primary: PropTypes.object.isRequired, - /** @ignore */ isSendingTransfer: PropTypes.bool.isRequired, /** @ignore */ isTransitioning: PropTypes.bool.isRequired, @@ -166,8 +152,6 @@ export class Send extends Component { /** @ignore */ activeSteps: PropTypes.array.isRequired, /** @ignore */ - timeTakenByEachProgressStep: PropTypes.array.isRequired, - /** @ignore */ password: PropTypes.object.isRequired, /** @ignore */ generateTransferErrorAlert: PropTypes.func.isRequired, @@ -187,7 +171,7 @@ export class Send extends Component { constructor(props) { super(props); - const { t, body } = this.props; + const { t, theme: { body } } = this.props; this.state = { modalContent: '', // eslint-disable-line react/no-unused-state maxPressed: false, @@ -195,6 +179,7 @@ export class Send extends Component { maxText: t('send:sendMax'), sending: false, currencySymbol: getCurrencySymbol(this.props.currency), + shouldInteruptSendAnimation: false, }; this.detectAddressInClipboard = this.detectAddressInClipboard.bind(this); } @@ -210,7 +195,6 @@ export class Send extends Component { componentDidMount() { leaveNavigationBreadcrumb('Send'); const { t, deepLinkActive } = this.props; - if (deepLinkActive) { this.props.generateAlert('success', t('deepLink:autofill'), t('deepLink:autofillExplanation')); this.props.setDeepLinkInactive(); @@ -225,6 +209,7 @@ export class Send extends Component { KeepAwake.deactivate(); this.setState({ sending: false }); this.resetMaxPressed(); + this.interuptSendAnimation(); } if (seedIndex !== newProps.seedIndex) { this.resetMaxPressed(); @@ -306,18 +291,22 @@ export class Send extends Component { // const isSpendingFundsAtSpentAddresses = this.isSpendingFundsAtSpentAddresses(); const messageIsValid = isValidMessage(message); if (!addressIsValid) { + this.interuptSendAnimation(); return this.getInvalidAddressError(address); } if (!amountIsValid) { + this.interuptSendAnimation(); return this.props.generateAlert('error', t('invalidAmount'), t('invalidAmountExplanation')); } if (!enoughBalance) { + this.interuptSendAnimation(); return this.props.generateAlert('error', t('notEnoughFunds'), t('notEnoughFundsExplanation')); } /*if (isSpendingFundsAtSpentAddresses) { return this.openModal('usedAddress'); }*/ if (!messageIsValid) { + this.interuptSendAnimation(); return this.props.generateAlert('error', t('invalidMessage'), t('invalidMessageExplanation')); } this.openTransferConfirmationModal(); @@ -402,23 +391,20 @@ export class Send extends Component { return 1; } - getProgressSummary() { - const { timeTakenByEachProgressStep } = this.props; - const totalTimeTaken = reduce(timeTakenByEachProgressStep, (acc, time) => acc + Number(time), 0); + getProgress() { + if (size(this.props.activeSteps) > 0) { + return this.props.activeStepIndex / size(this.props.activeSteps); + } + return -1; + } - return ( - - - {map(timeTakenByEachProgressStep, (time, index) => { - if (index === size(timeTakenByEachProgressStep) - 1) { - return `${time} = ${totalTimeTaken.toFixed(1)} s`; - } - - return `${time} + `; - })} - - - ); + getProgressBarText() { + const { activeStepIndex, activeSteps } = this.props; + const totalSteps = size(activeSteps); + if (activeStepIndex === totalSteps) { + return 'Transfer complete'; + } + return activeSteps[activeStepIndex] ? activeSteps[activeStepIndex] : ''; } getConversionTextIOTA() { @@ -442,7 +428,7 @@ export class Send extends Component { * @method setMaxPressed **/ setMaxPressed() { - const { primary, t } = this.props; + const { theme: { primary }, t } = this.props; this.setState({ maxPressed: true, maxColor: primary.color, @@ -450,12 +436,16 @@ export class Send extends Component { }); } + interuptSendAnimation() { + this.setState({ shouldInteruptSendAnimation: !this.state.shouldInteruptSendAnimation }); + } + /** * Turns off send max toggle * @method resetMaxPressed **/ resetMaxPressed() { - const { body, t } = this.props; + const { theme: { body }, t } = this.props; this.setState({ maxPressed: false, maxColor: body.color, @@ -499,7 +489,7 @@ export class Send extends Component { * @param {String} modalContent */ showModal(modalContent) { - const { bar, theme, body, address, amount, selectedAccountName, isFingerprintEnabled } = this.props; + const { theme, theme: { bar, body }, address, amount, selectedAccountName, isFingerprintEnabled } = this.props; switch (modalContent) { case 'qrScanner': return this.props.toggleModalActivity(modalContent, { @@ -516,6 +506,10 @@ export class Send extends Component { conversionText: this.getConversionTextIOTA(), address: address, sendTransfer: () => this.sendWithDelay(), + cancel: () => { + this.interuptSendAnimation(); + this.hideModal(); + }, hideModal: (callback) => this.hideModal(callback), body, borderColor: { borderColor: body.color }, @@ -647,9 +641,7 @@ export class Send extends Component { try { const seedStore = new SeedStore[selectedAccountType](password, selectedAccountName); this.props.getFromKeychainSuccess('send', 'makeTransaction'); - const powFn = getPowFn(); - return this.props.makeTransaction(seedStore, address, value, message, selectedAccountName, powFn); } catch (error) { this.props.getFromKeychainError('send', 'makeTransaction'); @@ -702,30 +694,17 @@ export class Send extends Component { this.messageField.blur(); } - renderProgressBarChildren() { - const { activeStepIndex, activeSteps } = this.props; - const totalSteps = size(activeSteps); - - if (activeStepIndex === totalSteps) { - return this.getProgressSummary(); - } - - return activeSteps[activeStepIndex] ? activeSteps[activeStepIndex] : null; - } - render() { const { maxPressed, maxColor, maxText, sending } = this.state; const { t, isSendingTransfer, - isGettingSensitiveInfoToMakeTransaction, address, amount, message, denomination, theme, - body, - primary, + theme: { body, primary, input, dark, secondary }, isKeyboardActive, } = this.props; const textColor = { color: body.color }; @@ -846,40 +825,32 @@ export class Send extends Component { - {!isSendingTransfer && - !isGettingSensitiveInfoToMakeTransaction && ( - - { - this.onSendPress(); - if (address === '' && amount === '' && message && '') { - this.blurTextFields(); - } - }} - /> - - )} - {(isGettingSensitiveInfoToMakeTransaction || isSendingTransfer) && ( - + 0 ? 1 / size(this.props.activeSteps) : 0} + filledColor={input.bg} + unfilledColor={dark.color} + textColor={body.color} + preSwipeColor={secondary.color} + postSwipeColor={primary.color} + interupt={this.state.shouldInteruptSendAnimation} + progressText={this.getProgressBarText()} + staticText="Swipe to send" + onCompleteSwipe={() => { + this.onSendPress(); + if (address === '' && amount === '' && message && '') { + this.blurTextFields(); + } }} - > - - {this.renderProgressBarChildren()} - - - )} + /> + this.showModal('unitInfo')} @@ -917,9 +888,6 @@ const mapStateToProps = (state) => ({ usdPrice: state.marketData.usdPrice, isGettingSensitiveInfoToMakeTransaction: state.keychain.isGettingSensitiveInfo.send.makeTransaction, theme: state.settings.theme, - body: state.settings.theme.body, - primary: state.settings.theme.primary, - bar: state.settings.theme.bar, isTransitioning: state.ui.isTransitioning, address: state.ui.sendAddressFieldText, amount: state.ui.sendAmountFieldText, @@ -927,7 +895,6 @@ const mapStateToProps = (state) => ({ denomination: state.ui.sendDenomination, activeStepIndex: state.progress.activeStepIndex, activeSteps: state.progress.activeSteps, - timeTakenByEachProgressStep: state.progress.timeTakenByEachStep, remotePoW: state.settings.remotePoW, password: state.wallet.password, deepLinkActive: state.wallet.deepLinkActive, diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index d89d5842df..2f1c9744b7 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -4197,16 +4197,16 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: dependencies: js-tokens "^3.0.0" -lottie-ios@^2.1.3, lottie-ios@^2.1.5: +lottie-ios@^2.1.5, lottie-ios@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/lottie-ios/-/lottie-ios-2.5.0.tgz#55c808e785d4a6933b0c10b395530b17098b05de" -lottie-react-native@2.2.7: - version "2.2.7" - resolved "https://registry.yarnpkg.com/lottie-react-native/-/lottie-react-native-2.2.7.tgz#d89cf6e0a093693d5fed2999a986cbcb1a090955" +lottie-react-native@^2.5.9: + version "2.5.9" + resolved "https://registry.yarnpkg.com/lottie-react-native/-/lottie-react-native-2.5.9.tgz#af23764b1b6b43230beeb5e62e1ce86cb879a242" dependencies: invariant "^2.2.2" - lottie-ios "^2.1.3" + lottie-ios "^2.5.0" prop-types "^15.5.10" react-native-safe-module "^1.1.0" diff --git a/src/shared/__tests__/reducers/progress.spec.js b/src/shared/__tests__/reducers/progress.spec.js index 9560cf4036..6afb97915c 100644 --- a/src/shared/__tests__/reducers/progress.spec.js +++ b/src/shared/__tests__/reducers/progress.spec.js @@ -46,38 +46,6 @@ describe('Reducer: progress', () => { expect(newState.activeStepIndex).to.eql(expectedState.activeStepIndex); }); - - it('should set current time to "lastStepInitializationTime" prop in state', () => { - const initialState = { - lastStepInitializationTime: 1520808410000, - timeTakenByEachStep: [], - }; - - const action = actions.setNextStepAsActive(); - - const newState = reducer(initialState, action); - const expectedState = { - lastStepInitializationTime: Date.now(), - }; - - expect(newState.lastStepInitializationTime).to.eql(expectedState.lastStepInitializationTime); - }); - - it('should always convert time to seconds before adding it to "timeTakenByEachStep" prop in state', () => { - const initialState = { - lastStepInitializationTime: 1520808410000, - timeTakenByEachStep: ['1s'], - }; - - const action = actions.setNextStepAsActive(); - - const newState = reducer(initialState, action); - const expectedState = { - timeTakenByEachStep: ['1s', '10.0'], - }; - - expect(newState.timeTakenByEachStep).to.eql(expectedState.timeTakenByEachStep); - }); }); describe('START_TRACKING_PROGRESS ', () => { @@ -96,36 +64,6 @@ describe('Reducer: progress', () => { expect(newState.activeStepIndex).to.eql(expectedState.activeStepIndex); }); - it('should set "timeTakenByEachStep" prop in state to an empty array', () => { - const initialState = { - timeTakenByEachStep: ['1s', '2s'], - }; - - const action = actions.startTrackingProgress([{}]); - - const newState = reducer(initialState, action); - const expectedState = { - timeTakenByEachStep: [], - }; - - expect(newState.timeTakenByEachStep).to.eql(expectedState.timeTakenByEachStep); - }); - - it('should set "lastStepInitializationTime" prop in state to current time', () => { - const initialState = { - lastStepInitializationTime: 1520808410000, - }; - - const action = actions.startTrackingProgress([{}]); - - const newState = reducer(initialState, action); - const expectedState = { - lastStepInitializationTime: Date.now(), - }; - - expect(newState.lastStepInitializationTime).to.eql(expectedState.lastStepInitializationTime); - }); - it('should set "activeSteps" prop in state to "payload" prop in action', () => { const initialState = { activeSteps: [{}], diff --git a/src/shared/animations/slider-loader.json b/src/shared/animations/slider-loader.json new file mode 100644 index 0000000000..8d68116ebb --- /dev/null +++ b/src/shared/animations/slider-loader.json @@ -0,0 +1,240 @@ +{ + "v": "5.0.0", + "fr": 30, + "ip": 0, + "op": 19.98, + "w": 92, + "h": 92, + "ddd": 0, + "assets": [], + "layers": [ + { + "ddd": 0, + "ind": 3, + "ty": 4, + "nm": "Ellipse 1-3", + "ks": { + "p": { "a": 0, "k": [73.981, 46] }, + "a": { "a": 0, "k": [0, 0, 0] }, + "s": { "a": 0, "k": [100, 100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { + "a": 1, + "k": [ + { + "t": 7.2, + "s": [0], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [100] + }, + { + "t": 10.8, + "s": [100], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [100] + }, + { + "t": 14.4, + "s": [100], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [0] + }, + { "t": 18 } + ] + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { "d": 1, "ty": "el", "s": { "a": 0, "k": [10, 10] }, "p": { "a": 0, "k": [0, 0] } }, + { + "ty": "fl", + "c": { "a": 0, "k": [0, 0, 0, 1] }, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false, + "o": { "a": 0, "k": 100 }, + "r": 1 + }, + { + "ty": "tr", + "p": { "a": 0, "k": [-6.481, 0] }, + "a": { "a": 0, "k": [0, 0] }, + "s": { "a": 0, "k": [100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 100 }, + "sk": { "a": 0, "k": 0 }, + "sa": { "a": 0, "k": 0, "ix": 5 }, + "nm": "Transform" + } + ], + "nm": "Ellipse Path 1-3", + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 19.98, + "st": 0, + "bm": 0, + "sr": 1 + }, + { + "ddd": 0, + "ind": 2, + "ty": 4, + "nm": "Ellipse 1-2", + "ks": { + "p": { "a": 0, "k": [45.856, 46] }, + "a": { "a": 0, "k": [0, 0, 0] }, + "s": { "a": 0, "k": [100, 100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { + "a": 1, + "k": [ + { + "t": 3.6, + "s": [0], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [100] + }, + { + "t": 7.2, + "s": [100], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [100] + }, + { + "t": 10.8, + "s": [100], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [0] + }, + { "t": 14.4 } + ] + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { "d": 1, "ty": "el", "s": { "a": 0, "k": [10, 10] }, "p": { "a": 0, "k": [0, 0] } }, + { + "ty": "fl", + "c": { "a": 0, "k": [0, 0, 0, 1] }, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false, + "o": { "a": 0, "k": 100 }, + "r": 1 + }, + { + "ty": "tr", + "p": { "a": 0, "k": [1.144, 0] }, + "a": { "a": 0, "k": [0, 0] }, + "s": { "a": 0, "k": [100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 100 }, + "sk": { "a": 0, "k": 0 }, + "sa": { "a": 0, "k": 0, "ix": 5 }, + "nm": "Transform" + } + ], + "nm": "Ellipse Path 1-2", + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 19.98, + "st": 0, + "bm": 0, + "sr": 1 + }, + { + "ddd": 0, + "ind": 1, + "ty": 4, + "nm": "Ellipse 1", + "ks": { + "p": { "a": 0, "k": [17.731, 46] }, + "a": { "a": 0, "k": [0, 0, 0] }, + "s": { "a": 0, "k": [100, 100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { + "a": 1, + "k": [ + { + "t": 0, + "s": [0], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [100] + }, + { + "t": 3.6, + "s": [100], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [100] + }, + { + "t": 7.2, + "s": [100], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [0] + }, + { "t": 10.8 } + ] + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { "d": 1, "ty": "el", "s": { "a": 0, "k": [10, 10] }, "p": { "a": 0, "k": [0, 0] } }, + { + "ty": "fl", + "c": { "a": 0, "k": [0, 0, 0, 1] }, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false, + "o": { "a": 0, "k": 100 }, + "r": 1 + }, + { + "ty": "tr", + "p": { "a": 0, "k": [8.769, 0] }, + "a": { "a": 0, "k": [0, 0] }, + "s": { "a": 0, "k": [100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 100 }, + "sk": { "a": 0, "k": 0 }, + "sa": { "a": 0, "k": 0, "ix": 5 }, + "nm": "Transform" + } + ], + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 19.98, + "st": 0, + "bm": 0, + "sr": 1 + } + ] +} diff --git a/src/shared/animations/slider-success.json b/src/shared/animations/slider-success.json new file mode 100644 index 0000000000..d9335b6a1f --- /dev/null +++ b/src/shared/animations/slider-success.json @@ -0,0 +1,455 @@ +{ + "v": "5.0.0", + "fr": 10, + "ip": 0, + "op": 30, + "w": 92, + "h": 92, + "ddd": 0, + "assets": [], + "layers": [ + { + "ddd": 0, + "ind": 5, + "ty": 4, + "nm": "Layer 5", + "ks": { + "p": { "a": 0, "k": [45.5, 46.5] }, + "a": { "a": 0, "k": [-0.5, 0.5, 0] }, + "s": { "a": 0, "k": [100, 100, 100] }, + "r": { + "a": 1, + "k": [ + { + "t": 0, + "s": [0], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [720] + }, + { "t": 4 } + ] + }, + "o": { + "a": 1, + "k": [ + { + "t": 0, + "s": [0], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [100] + }, + { + "t": 2, + "s": [100], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [0] + }, + { "t": 4 } + ] + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sh", + "d": 1, + "ks": { + "a": 0, + "k": { + "i": [[0, 0], [25.405, 0], [0, 25.405], [-25.405, 0], [0, -25.405]], + "o": [[0, 25.405], [-25.405, 0], [0, -25.405], [25.405, 0], [0, 0]], + "v": [[46, 0], [0, 46], [-46, 0], [0, -46], [46, 0]], + "c": true + }, + "nm": "Name", + "mn": "ADBE Vector Shape - Group", + "hd": false + } + }, + { + "ty": "st", + "c": { "a": 0, "k": [0.004, 0.004, 0.004, 1] }, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "o": { + "a": 1, + "k": [ + { + "t": 0, + "s": [100], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [100] + }, + { "t": 4 } + ] + }, + "w": { "a": 0, "k": 3 }, + "lc": 1, + "lj": 1, + "ml": 4, + "d": [ + { "n": "d", "nm": "dash", "v": { "a": 0, "k": 80 } }, + { "n": "g", "nm": "gap", "v": { "a": 0, "k": 80 } }, + { "n": "o", "nm": "offset", "v": { "a": 0, "k": 80 } } + ] + }, + { + "ty": "tr", + "p": { "a": 0, "k": [0, 0] }, + "a": { "a": 0, "k": [0, 0] }, + "s": { "a": 0, "k": [100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 100 }, + "sk": { "a": 0, "k": 0 }, + "sa": { "a": 0, "k": 0 }, + "nm": "Transform" + } + ], + "nm": "Object", + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 30, + "st": 0, + "bm": 0, + "sr": 1 + }, + { + "ddd": 0, + "ind": 4, + "ty": 4, + "nm": "Layer 4", + "ks": { + "p": { "a": 0, "k": [42, 59] }, + "a": { "a": 0, "k": [0, 0, 0] }, + "s": { "a": 0, "k": [100, 100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 100 } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sh", + "d": 1, + "ks": { + "a": 1, + "k": [ + { + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "t": 7, + "s": [ + { + "i": [[0, 0], [0, 0]], + "o": [[0, 0], [0, 0]], + "v": [[0, 0], [0, 0]], + "c": false + } + ], + "e": [ + { + "i": [[0, 0], [0, 0]], + "o": [[0, 0], [0, 0]], + "v": [[0, 0], [24, -25]], + "c": false + } + ] + }, + { + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "t": 8, + "s": [ + { + "i": [[0, 0], [0, 0]], + "o": [[0, 0], [0, 0]], + "v": [[0, 0], [24, -25]], + "c": false + } + ], + "e": [ + { + "i": [[0, 0], [0, 0]], + "o": [[0, 0], [0, 0]], + "v": [[0, 0], [24, -25]], + "c": false + } + ] + }, + { "t": 30 } + ], + "nm": "Name", + "mn": "ADBE Vector Shape - Group", + "hd": false + } + }, + { + "ty": "st", + "c": { "a": 0, "k": [0, 0, 0, 1] }, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "o": { "a": 0, "k": 100 }, + "w": { + "a": 1, + "k": [ + { + "t": 7, + "s": [0], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [3] + }, + { "t": 8 } + ] + }, + "lc": 2, + "lj": 1, + "ml": 4 + }, + { + "ty": "tr", + "p": { "a": 0, "k": [0, 0] }, + "a": { "a": 0, "k": [0, 0] }, + "s": { "a": 0, "k": [100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 100 }, + "sk": { "a": 0, "k": 0 }, + "sa": { "a": 0, "k": 0 }, + "nm": "Transform" + } + ], + "nm": "Object", + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 30, + "st": 0, + "bm": 0, + "sr": 1 + }, + { + "ddd": 0, + "ind": 3, + "ty": 4, + "nm": "Layer 3", + "ks": { + "p": { "a": 0, "k": [29, 46] }, + "a": { "a": 0, "k": [0, 0, 0] }, + "s": { "a": 0, "k": [100, 100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 100 } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sh", + "d": 1, + "ks": { + "a": 1, + "k": [ + { + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "t": 5, + "s": [ + { + "i": [[0, 0], [0, 0]], + "o": [[0, 0], [0, 0]], + "v": [[0, 0], [0, 0]], + "c": false + } + ], + "e": [ + { + "i": [[0, 0], [0, 0]], + "o": [[0, 0], [0, 0]], + "v": [[0, 0], [13, 13]], + "c": false + } + ] + }, + { + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "t": 6, + "s": [ + { + "i": [[0, 0], [0, 0]], + "o": [[0, 0], [0, 0]], + "v": [[0, 0], [13, 13]], + "c": false + } + ], + "e": [ + { + "i": [[0, 0], [0, 0]], + "o": [[0, 0], [0, 0]], + "v": [[0, 0], [13, 13]], + "c": false + } + ] + }, + { "t": 30 } + ], + "nm": "Name", + "mn": "ADBE Vector Shape - Group", + "hd": false + } + }, + { + "ty": "st", + "c": { "a": 0, "k": [0, 0, 0, 1] }, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "o": { "a": 0, "k": 100 }, + "w": { + "a": 1, + "k": [ + { + "t": 5, + "s": [0], + "i": { "x": [0.833], "y": [0.833] }, + "o": { "x": [0.167], "y": [0.167] }, + "e": [3] + }, + { "t": 6 } + ] + }, + "lc": 2, + "lj": 1, + "ml": 4 + }, + { + "ty": "tr", + "p": { "a": 0, "k": [0, 0] }, + "a": { "a": 0, "k": [0, 0] }, + "s": { "a": 0, "k": [100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 100 }, + "sk": { "a": 0, "k": 0 }, + "sa": { "a": 0, "k": 0 }, + "nm": "Transform" + } + ], + "nm": "Object", + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 30, + "st": 0, + "bm": 0, + "sr": 1 + }, + { + "ddd": 0, + "ind": 2, + "ty": 4, + "nm": "Layer 2", + "ks": { + "p": { "a": 0, "k": [631.375, 910.5] }, + "a": { "a": 0, "k": [-0.5, 0.5, 0] }, + "s": { "a": 0, "k": [100, 100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 0 } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sh", + "d": 1, + "ks": { + "a": 0, + "k": { + "i": [[0, 0], [25.405, 0], [0, 25.405], [-25.405, 0], [0, -25.405]], + "o": [[0, 25.405], [-25.405, 0], [0, -25.405], [25.405, 0], [0, 0]], + "v": [[46, 0], [0, 46], [-46, 0], [0, -46], [46, 0]], + "c": true + }, + "nm": "Name", + "mn": "ADBE Vector Shape - Group", + "hd": false + } + }, + { + "ty": "st", + "c": { "a": 0, "k": [0.004, 0.004, 0.004, 1] }, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "o": { "a": 0, "k": 100 }, + "w": { "a": 0, "k": 4 }, + "lc": 1, + "lj": 1, + "ml": 4, + "d": [ + { "n": "d", "nm": "dash", "v": { "a": 0, "k": 80 } }, + { "n": "g", "nm": "gap", "v": { "a": 0, "k": 80 } }, + { "n": "o", "nm": "offset", "v": { "a": 0, "k": 80 } } + ] + }, + { + "ty": "tr", + "p": { "a": 0, "k": [0, 0] }, + "a": { "a": 0, "k": [0, 0] }, + "s": { "a": 0, "k": [100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 100 }, + "sk": { "a": 0, "k": 0 }, + "sa": { "a": 0, "k": 0 }, + "nm": "Transform" + } + ], + "nm": "Object", + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 30, + "st": 0, + "bm": 0, + "sr": 1 + }, + { + "ddd": 0, + "ind": 1, + "ty": 4, + "nm": "Tick", + "ks": { + "p": { "a": 0, "k": [634.019, 911] }, + "a": { "a": 0, "k": [20.5, 15.5, 0] }, + "s": { "a": 0, "k": [100, 100, 100] }, + "r": { "a": 0, "k": 0 }, + "o": { "a": 0, "k": 100 } + }, + "ao": 0, + "shapes": [], + "ip": 0, + "op": 30, + "st": 0, + "bm": 0, + "sr": 1 + } + ] +} diff --git a/src/shared/reducers/progress.js b/src/shared/reducers/progress.js index e6a13297f1..679bdb9363 100644 --- a/src/shared/reducers/progress.js +++ b/src/shared/reducers/progress.js @@ -6,10 +6,6 @@ const initialState = { * Keeps track of the activation time of most recent progress step */ lastStepInitializationTime: Date.now(), - /** - * Keeps track of the time it has taken for each step to execute - */ - timeTakenByEachStep: [], /** * Index of the active step from the activeSteps list */ @@ -32,16 +28,11 @@ export default (state = initialState, action) => { ...state, activeStepIndex: state.activeStepIndex + 1, lastStepInitializationTime: Date.now(), - timeTakenByEachStep: [ - ...state.timeTakenByEachStep, - ((Date.now() - state.lastStepInitializationTime) / 1000).toFixed(1), - ], }; case ActionTypes.START_TRACKING_PROGRESS: return { ...state, activeStepIndex: -1, - timeTakenByEachStep: [], lastStepInitializationTime: Date.now(), activeSteps: action.payload, }; From f139f40381165a15677dc7941c77945f41f5477f Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 18 Oct 2018 18:53:58 +0100 Subject: [PATCH 013/141] Mobile: Ensure state initates correctly across mounts and cleanup --- src/mobile/android/settings.gradle | 2 +- src/mobile/src/ui/components/ProgressBar.js | 68 ++++++++++++--------- 2 files changed, 40 insertions(+), 30 deletions(-) diff --git a/src/mobile/android/settings.gradle b/src/mobile/android/settings.gradle index 8a99a346cd..79d2a6a821 100644 --- a/src/mobile/android/settings.gradle +++ b/src/mobile/android/settings.gradle @@ -39,7 +39,7 @@ project(':react-native-extra-dimensions-android').projectDir = new File(rootProj include ':react-native-keychain' project(':react-native-keychain').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-keychain/android') include ':lottie-react-native' -project(':lottie-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/lottie-react-native/lib/android') +project(':lottie-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/lottie-react-native/src/android') include ':react-native-exit-app', ':app' project(':react-native-exit-app').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-exit-app/android') include ':react-native-securerandom' diff --git a/src/mobile/src/ui/components/ProgressBar.js b/src/mobile/src/ui/components/ProgressBar.js index d7dc4b7924..0c36a19922 100644 --- a/src/mobile/src/ui/components/ProgressBar.js +++ b/src/mobile/src/ui/components/ProgressBar.js @@ -46,40 +46,46 @@ class ProgressBar extends Component { progressText: PropTypes.oneOfType([PropTypes.string, PropTypes.array]), /** Total number of progress steps */ stepSize: PropTypes.number, + /** Slider color before successful swipe */ preSwipeColor: PropTypes.string, + /** Slider color after successful swipe */ postSwipeColor: PropTypes.string, + /** Text displayed when not in progress */ staticText: PropTypes.string, + /** Called on successful swipe */ onCompleteSwipe: PropTypes.func, + /** Interupts the progress bar when changed */ interupt: PropTypes.bool, }; static defaultProps = { - animationType: 'timing', width: Styling.contentWidth, height: height / 11, - indeterminate: false, - color: 'rgba(247, 208, 2, 0.75)', - textColor: 'rgba(247, 208, 2, 0.75)', }; constructor(props) { super(props); + const isAlreadyInProgress = props.progress > -1; + const sliderEndPosition = props.width - props.height; this.state = { - progressPosition: new Animated.Value(0), - progress: -1, - counter: 0, - sliderPosition: new Animated.Value(0), - thresholdDistance: props.width - props.height, - sliderColor: props.preSwipeColor, + progressPosition: new Animated.Value(isAlreadyInProgress ? props.progress : 0), + progressStep: props.progress, + progressIncrement: isAlreadyInProgress ? props.progress : 0, + sliderPosition: new Animated.Value(isAlreadyInProgress ? sliderEndPosition : 0), + thresholdDistance: sliderEndPosition, + sliderColor: isAlreadyInProgress ? props.preSwipeColor : props.postSwipeColor, textOpacity: new Animated.Value(1), sliderOpacity: new Animated.Value(1), - progressText: '', - inProgress: false, + progressText: isAlreadyInProgress ? props.progressText : '', + inProgress: isAlreadyInProgress, sliderAnimation: sliderLoadingAnimation, }; } componentWillMount() { + if (this.props.progress > -1) { + this.animateProgressBar(); + } this._panResponder = PanResponder.create({ onStartShouldSetPanResponder: () => true, onStartShouldSetPanResponderCapture: () => true, @@ -115,6 +121,12 @@ class ProgressBar extends Component { }); } + componentDidMount() { + if (this.props.progress > -1 && this.sliderAnimation) { + this.sliderAnimation.play(); + } + } + componentWillReceiveProps(newProps) { if (this.props.progress !== newProps.progress) { // On first progress change @@ -124,7 +136,7 @@ class ProgressBar extends Component { this.sliderAnimation.play(); } // On every progress change - this.setState({ progress: newProps.progress, counter: newProps.progress }); + this.setState({ progressStep: newProps.progress, progressIncrement: newProps.progress }); this.onProgressStepChange(newProps.progressText); // On last progress change if (this.props.stepSize > 0 && newProps.progress === 1 - this.props.stepSize) { @@ -170,7 +182,7 @@ class ProgressBar extends Component { () => { this.sliderAnimation.reset(); this.setState({ - progress: -1, + progressStep: -1, inProgress: false, sliderAnimation: sliderLoadingAnimation, shouldLoopSliderAnimation: true, @@ -201,7 +213,7 @@ class ProgressBar extends Component { } onInterupt() { - this.setState({ progress: -1, inProgress: false }); + this.setState({ progressStep: -1, inProgress: false }); Animated.timing(this.state.progressPosition).stop(); this.state.progressPosition.setValue(0); Animated.timing(this.state.sliderPosition).stop(); @@ -219,7 +231,7 @@ class ProgressBar extends Component { onProgressStepChange(progressText) { // On first step change - if (this.state.progress < 0) { + if (this.state.progressStep < 0) { this.setState({ progressText }); return Animated.timing(this.state.textOpacity, { toValue: 1, @@ -227,7 +239,7 @@ class ProgressBar extends Component { }).start(); } // On last step change - if (this.state.progress === 1) { + if (this.state.progressStep === 1) { return timer.setTimeout( 'delayProgressTextFadeOut', () => { @@ -240,7 +252,7 @@ class ProgressBar extends Component { ); } // On any other step change - if (this.state.progress >= 0) { + if (this.state.progressStep >= 0) { return timer.setTimeout( 'delayProgressTextChange', () => { @@ -261,18 +273,18 @@ class ProgressBar extends Component { } animateProgressBar() { - const nextStep = this.state.progress + this.props.stepSize; + const nextStep = this.state.progressStep + this.props.stepSize; const increment = this.props.stepSize / 100; - const updatedCounter = this.state.counter + increment; - if (this.state.counter < nextStep - this.props.stepSize / 5) { - this.setState({ counter: updatedCounter }); + const updatedIncrement = this.state.progressIncrement + increment; + if (this.state.progressIncrement < nextStep - this.props.stepSize / 5) { + this.setState({ progressIncrement: updatedIncrement }); } Animated.timing(this.state.progressPosition, { - toValue: Math.max(this.state.progress, this.state.counter), + toValue: Math.max(this.state.progressStep, this.state.progressIncrement), useNativeDriver: true, easing: Easing.ease, }).start(() => { - if (this.state.counter <= 1 && this.state.inProgress) { + if (this.state.progressIncrement <= 1 && this.state.inProgress) { this.animateProgressBar(); } }); @@ -302,7 +314,7 @@ class ProgressBar extends Component { render() { const { height, width, textColor, staticText, unfilledColor, filledColor } = this.props; - const progressStyle = { + const progressBarStyle = { backgroundColor: filledColor, height, width, @@ -317,7 +329,7 @@ class ProgressBar extends Component { }; return ( - + {(this.state.inProgress && ( {this.state.progressText} @@ -345,7 +357,7 @@ class ProgressBar extends Component { From b76713fcc9547ecaf475bf1fc867e7dc9548dadf Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 19 Oct 2018 16:36:17 +0100 Subject: [PATCH 014/141] Mobile: Refine send progress bar --- .../ios/iotaWallet.xcodeproj/project.pbxproj | 22 +-- src/mobile/src/ui/components/ProgressBar.js | 141 ++++++++++-------- 2 files changed, 88 insertions(+), 75 deletions(-) diff --git a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj index ce8f49e268..caa0ca5b2d 100644 --- a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj +++ b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj @@ -1544,12 +1544,14 @@ }; 30A16F44D53CE8CFD5085B3A66B82141 = { CreatedOnToolsVersion = 6.2; - ProvisioningStyle = Manual; + DevelopmentTeam = UG77RJKZHH; + ProvisioningStyle = Automatic; TestTargetID = 4848851A00274CA2FFBE307BAEB5F278; }; 4848851A00274CA2FFBE307BAEB5F278 = { + DevelopmentTeam = UG77RJKZHH; LastSwiftMigration = 1010; - ProvisioningStyle = Manual; + ProvisioningStyle = Automatic; SystemCapabilities = { com.apple.BackgroundModes = { enabled = 0; @@ -2790,10 +2792,10 @@ CODE_SIGN_ENTITLEMENTS = iotaWallet/iotaWallet.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 26; DEAD_CODE_STRIPPING = NO; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -2978,8 +2980,8 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEVELOPMENT_TEAM = ""; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -3126,9 +3128,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -3169,9 +3171,9 @@ CODE_SIGN_ENTITLEMENTS = iotaWallet/iotaWallet.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 26; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", diff --git a/src/mobile/src/ui/components/ProgressBar.js b/src/mobile/src/ui/components/ProgressBar.js index 0c36a19922..75b673ff3b 100644 --- a/src/mobile/src/ui/components/ProgressBar.js +++ b/src/mobile/src/ui/components/ProgressBar.js @@ -5,14 +5,14 @@ import LottieView from 'lottie-react-native'; import sliderLoadingAnimation from 'shared-modules/animations/slider-loader.json'; import sliderSuccessAnimation from 'shared-modules/animations/slider-success.json'; import timer from 'react-native-timer'; -import { height } from 'libs/dimensions'; +import { height as deviceHeight } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; import { Icon } from 'ui/theme/icons'; const styles = StyleSheet.create({ container: { alignItems: 'center', - borderRadius: height / 10, + borderRadius: deviceHeight / 10, overflow: 'hidden', justifyContent: 'center', }, @@ -37,9 +37,9 @@ class ProgressBar extends Component { /** Unfilled bar color */ unfilledColor: PropTypes.string, /** Progress bar width */ - width: PropTypes.number, + channelWidth: PropTypes.number, /** Progress bar height */ - height: PropTypes.number, + channelHeight: PropTypes.number, /** Progress bar text color */ textColor: PropTypes.string, /** Progress bar text */ @@ -59,26 +59,27 @@ class ProgressBar extends Component { }; static defaultProps = { - width: Styling.contentWidth, - height: height / 11, + channelWidth: Styling.contentWidth, + channelHeight: deviceHeight / 13, }; constructor(props) { super(props); const isAlreadyInProgress = props.progress > -1; - const sliderEndPosition = props.width - props.height; + const sliderEndPosition = props.channelWidth - props.channelHeight; this.state = { progressPosition: new Animated.Value(isAlreadyInProgress ? props.progress : 0), progressStep: props.progress, progressIncrement: isAlreadyInProgress ? props.progress : 0, - sliderPosition: new Animated.Value(isAlreadyInProgress ? sliderEndPosition : 0), + sliderPosition: new Animated.Value(isAlreadyInProgress ? sliderEndPosition : props.channelHeight * 0.1), thresholdDistance: sliderEndPosition, - sliderColor: isAlreadyInProgress ? props.preSwipeColor : props.postSwipeColor, + sliderColor: isAlreadyInProgress ? props.postSwipeColor : props.preSwipeColor, textOpacity: new Animated.Value(1), sliderOpacity: new Animated.Value(1), progressText: isAlreadyInProgress ? props.progressText : '', inProgress: isAlreadyInProgress, sliderAnimation: sliderLoadingAnimation, + sliderSize: new Animated.Value(props.channelHeight * 0.8), }; } @@ -95,6 +96,10 @@ class ProgressBar extends Component { if (this.state.inProgress) { return; } + Animated.timing(this.state.sliderSize, { + toValue: this.props.channelHeight, + duration: 100, + }).start(); const moveValue = gestureState.dx; const relativeSlidePosition = moveValue / this.state.thresholdDistance; this.state.textOpacity.setValue(1 - relativeSlidePosition * 2); @@ -108,12 +113,10 @@ class ProgressBar extends Component { return; } const releaseValue = gestureState.dx; - if (gestureState.dx > 0) { - if (releaseValue >= this.state.thresholdDistance) { - this.onCompleteSwipe(); - } else if (releaseValue >= 0) { - this.onIncompleteSwipe(); - } + if (releaseValue >= this.state.thresholdDistance) { + this.onCompleteSwipe(); + } else { + this.onIncompleteSwipe(); } }, onPanResponderTerminate: () => {}, @@ -198,7 +201,7 @@ class ProgressBar extends Component { const duration = 500; Animated.parallel([ Animated.spring(this.state.sliderPosition, { - toValue: 0, + toValue: this.props.channelHeight * 0.1, duration, }), Animated.timing(this.state.sliderOpacity, { @@ -210,6 +213,10 @@ class ProgressBar extends Component { duration, }), ]).start(); + Animated.timing(this.state.sliderSize, { + toValue: this.props.channelHeight * 0.8, + duration: 100, + }).start(); } onInterupt() { @@ -222,7 +229,7 @@ class ProgressBar extends Component { onCompleteSwipe() { Animated.timing(this.state.sliderPosition, { - toValue: this.props.width - this.props.height, + toValue: this.props.channelWidth - this.props.channelHeight, duration: 50, }).start(); this.setState({ sliderColor: this.props.postSwipeColor }); @@ -295,7 +302,7 @@ class ProgressBar extends Component { this.setState({ sliderColor: this.props.preSwipeColor }); Animated.parallel([ Animated.spring(this.state.sliderPosition, { - toValue: 0, + toValue: this.props.channelHeight * 0.1, duration, easing: Easing.elastic(), }), @@ -310,41 +317,52 @@ class ProgressBar extends Component { easing: Easing.ease, }), ]).start(); + Animated.timing(this.state.sliderSize, { + toValue: this.props.channelHeight * 0.8, + duration: 100, + }).start(); } render() { - const { height, width, textColor, staticText, unfilledColor, filledColor } = this.props; + const { channelHeight, channelWidth, textColor, staticText, unfilledColor, filledColor } = this.props; const progressBarStyle = { backgroundColor: filledColor, - height, - width, + height: channelHeight, + width: channelWidth, transform: [ { translateX: this.state.progressPosition.interpolate({ inputRange: [0, 1], - outputRange: [-width, 0], + outputRange: [-channelWidth, 0], }), }, ], }; return ( - - - {(this.state.inProgress && ( - - {this.state.progressText} - - )) || ( - - {staticText} - - )} + + + + {(this.state.inProgress && ( + + {this.state.progressText} + + )) || ( + + {staticText} + + )} + - - - { - this.sliderAnimation = animation; - }} - source={this.state.sliderAnimation} - style={{ width: height * 0.8, height: height * 0.8, position: 'absolute' }} - loop={this.state.shouldLoopSliderAnimation} + { + this.sliderAnimation = animation; + }} + source={this.state.sliderAnimation} + style={{ width: channelHeight * 0.9, height: channelHeight * 0.9, position: 'absolute' }} + loop={this.state.shouldLoopSliderAnimation} + /> + {!this.state.inProgress && ( + - {!this.state.inProgress && ( - - )} - - + )} + ); From 9ae2f4b75841d7d4a5a92008419da0e954e660a0 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Sun, 21 Oct 2018 14:12:39 -0400 Subject: [PATCH 015/141] Mobile: Re-add JVM args --- src/mobile/android/gradle.properties | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mobile/android/gradle.properties b/src/mobile/android/gradle.properties index f2239cbcdc..10d46a5b5d 100644 --- a/src/mobile/android/gradle.properties +++ b/src/mobile/android/gradle.properties @@ -17,6 +17,7 @@ # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.parallel=true +org.gradle.jvmargs=-Xmx1536m android.useDeprecatedNdk=true android.enableAapt2=false distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip From bc36d7ff29fe694ddba7330f277480d6683deb31 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Sun, 21 Oct 2018 16:07:59 -0400 Subject: [PATCH 016/141] Mobile: Add babel-plugin-jest-hoist to fix Bugsnag mocks --- src/mobile/.babelrc | 18 +++++++++++------- src/mobile/package.json | 1 + 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/src/mobile/.babelrc b/src/mobile/.babelrc index 2f8d33d46c..7dc2f2bd84 100644 --- a/src/mobile/.babelrc +++ b/src/mobile/.babelrc @@ -1,9 +1,13 @@ { - "presets": ["module:metro-react-native-babel-preset"], - "plugins": [ - ["module-resolver", { - "root": [".", "src"], - "extensions": [".ios.js", ".android.js", ".js", ".json"], - }] - ] + "presets": ["module:metro-react-native-babel-preset"], + "plugins": [ + [ + "module-resolver", + { + "root": [".", "src"], + "extensions": [".ios.js", ".android.js", ".js", ".json"] + } + ], + "jest-hoist" + ] } diff --git a/src/mobile/package.json b/src/mobile/package.json index b1355c1b48..e9c1a47bdd 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -123,6 +123,7 @@ }, "devDependencies": { "babel-jest": "23.4.2", + "babel-plugin-jest-hoist": "^23.2.0", "babel-plugin-module-resolver": "^3.1.1", "babel-preset-stage-0": "^7.0.0-beta", "cross-env": "^5.2.0", From 8d0bde4248db499c1bbc8c3db93211b12ef1148c Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Sun, 21 Oct 2018 16:22:22 -0400 Subject: [PATCH 017/141] Shared: Fix babel-related mocha issues --- src/shared/.babelrc | 23 +- src/shared/package.json | 19 +- src/shared/yarn.lock | 1483 +++++++++++++++++++++------------------ 3 files changed, 851 insertions(+), 674 deletions(-) diff --git a/src/shared/.babelrc b/src/shared/.babelrc index 91d6105e9b..12f2d53670 100644 --- a/src/shared/.babelrc +++ b/src/shared/.babelrc @@ -1,8 +1,23 @@ { - "presets": ["es2015", "stage-2"], + "presets": [ + "@babel/preset-env" + ], "plugins": [ - "transform-object-rest-spread", - "transform-react-jsx" + "@babel/plugin-proposal-object-rest-spread", + "@babel/plugin-transform-react-jsx", + "@babel/plugin-syntax-dynamic-import", + "@babel/plugin-syntax-import-meta", + "@babel/plugin-proposal-class-properties", + "@babel/plugin-proposal-json-strings", + [ + "@babel/plugin-proposal-decorators", + { + "legacy": true + } + ], + "@babel/plugin-proposal-function-sent", + "@babel/plugin-proposal-export-namespace-from", + "@babel/plugin-proposal-numeric-separator", + "@babel/plugin-proposal-throw-expressions" ] - } diff --git a/src/shared/package.json b/src/shared/package.json index 08439d27c2..1480f547e8 100644 --- a/src/shared/package.json +++ b/src/shared/package.json @@ -10,7 +10,7 @@ "Charlie Varley" ], "scripts": { - "test": "NODE_ENV=test ./node_modules/.bin/mocha --timeout 5000 --require babel-core/register \"__tests__/**/*.spec.js\"", + "test": "NODE_ENV=test ./node_modules/.bin/mocha --timeout 5000 --require @babel/register \"__tests__/**/*.spec.js\"", "test:watch": "yarn test --watch", "audit": "./../../node_modules/.bin/auditjs -l error", "themes:sync": "node themes/sync.js" @@ -38,11 +38,20 @@ }, "devDependencies": { "@babel/core": "^7.0.0-beta", + "@babel/plugin-proposal-class-properties": "^7.0.0", + "@babel/plugin-proposal-decorators": "^7.0.0", + "@babel/plugin-proposal-export-namespace-from": "^7.0.0", + "@babel/plugin-proposal-function-sent": "^7.0.0", + "@babel/plugin-proposal-json-strings": "^7.0.0", + "@babel/plugin-proposal-numeric-separator": "^7.0.0", + "@babel/plugin-proposal-object-rest-spread": "^7.0.0", + "@babel/plugin-proposal-throw-expressions": "^7.0.0", + "@babel/plugin-syntax-dynamic-import": "^7.0.0", + "@babel/plugin-syntax-import-meta": "^7.0.0", + "@babel/plugin-transform-react-jsx": "^7.0.0", + "@babel/preset-env": "^7.0.0", + "@babel/register": "^7.0.0", "babel-core": "^7.0.0-beta", - "babel-plugin-transform-object-rest-spread": "^6.26.0", - "babel-plugin-transform-react-jsx": "^6.24.1", - "babel-preset-es2015": "^6.24.1", - "babel-preset-stage-2": "^6.24.1", "chai": "^4.1.2", "figma-parser": "^0.0.2", "mocha": "^5.0.3", diff --git a/src/shared/yarn.lock b/src/shared/yarn.lock index e995cc8da6..894076814a 100644 --- a/src/shared/yarn.lock +++ b/src/shared/yarn.lock @@ -40,6 +40,55 @@ source-map "^0.5.0" trim-right "^1.0.1" +"@babel/helper-annotate-as-pure@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32" + integrity sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" + integrity sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w== + dependencies: + "@babel/helper-explode-assignable-expression" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-builder-react-jsx@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.0.0.tgz#fa154cb53eb918cf2a9a7ce928e29eb649c5acdb" + integrity sha512-ebJ2JM6NAKW0fQEqN8hOLxK84RbRz9OkUhGS/Xd5u56ejMfVbayJ4+LykERZCOUM6faa6Fp3SZNX3fcT16MKHw== + dependencies: + "@babel/types" "^7.0.0" + esutils "^2.0.0" + +"@babel/helper-call-delegate@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.1.0.tgz#6a957f105f37755e8645343d3038a22e1449cc4a" + integrity sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ== + dependencies: + "@babel/helper-hoist-variables" "^7.0.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-define-map@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz#3b74caec329b3c80c116290887c0dd9ae468c20c" + integrity sha512-yPPcW8dc3gZLN+U1mhYV91QU3n5uTbx7DUdf8NnPbjS0RMwBuHi9Xt2MUgppmNz7CJxTBWsGczTiEp1CSOTPRg== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/types" "^7.0.0" + lodash "^4.17.10" + +"@babel/helper-explode-assignable-expression@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" + integrity sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA== + dependencies: + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + "@babel/helper-function-name@^7.1.0": version "7.1.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" @@ -56,6 +105,87 @@ dependencies: "@babel/types" "^7.0.0" +"@babel/helper-hoist-variables@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz#46adc4c5e758645ae7a45deb92bab0918c23bb88" + integrity sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w== + dependencies: + "@babel/types" "^7.0.0" + +"@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== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-module-imports@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz#96081b7111e486da4d2cd971ad1a4fe216cc2e3d" + integrity sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-module-transforms@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.1.0.tgz#470d4f9676d9fad50b324cdcce5fbabbc3da5787" + integrity sha512-0JZRd2yhawo79Rcm4w0LwSMILFmFXjugG3yqf+P/UsKsRS1mJCmMwwlHDlMg7Avr9LrvSpp4ZSULO9r8jpCzcw== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-simple-access" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" + lodash "^4.17.10" + +"@babel/helper-optimise-call-expression@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" + integrity sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-plugin-utils@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" + integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== + +"@babel/helper-regex@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.0.0.tgz#2c1718923b57f9bbe64705ffe5640ac64d9bdb27" + integrity sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg== + dependencies: + lodash "^4.17.10" + +"@babel/helper-remap-async-to-generator@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz#361d80821b6f38da75bd3f0785ece20a88c5fe7f" + integrity sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-wrap-function" "^7.1.0" + "@babel/template" "^7.1.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-replace-supers@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.1.0.tgz#5fc31de522ec0ef0899dc9b3e7cf6a5dd655f362" + integrity sha512-BvcDWYZRWVuDeXTYZWxekQNO5D4kO55aArwZOTFXw6rlLQA8ZaDicJR1sO47h+HrnCiDFiww0fSPV0d713KBGQ== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-simple-access@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c" + integrity sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w== + dependencies: + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" + "@babel/helper-split-export-declaration@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" @@ -63,6 +193,16 @@ dependencies: "@babel/types" "^7.0.0" +"@babel/helper-wrap-function@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.1.0.tgz#8cf54e9190706067f016af8f75cb3df829cc8c66" + integrity sha512-R6HU3dete+rwsdAfrOzTlE9Mcpk4RjU3aX3gi9grtmugQY0u79X7eogUvfXA5sI81Mfq1cn6AgxihfN33STjJA== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/template" "^7.1.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + "@babel/helpers@^7.1.2": version "7.1.2" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.1.2.tgz#ab752e8c35ef7d39987df4e8586c63b8846234b5" @@ -86,6 +226,478 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.1.2.tgz#85c5c47af6d244fab77bce6b9bd830e38c978409" integrity sha512-x5HFsW+E/nQalGMw7hu+fvPqnBeBaIr0lWJ2SG0PPL2j+Pm9lYvCrsZJGIgauPIENx0v10INIyFjmSNUD/gSqQ== +"@babel/plugin-proposal-async-generator-functions@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.1.0.tgz#41c1a702e10081456e23a7b74d891922dd1bb6ce" + integrity sha512-Fq803F3Jcxo20MXUSDdmZZXrPe6BWyGcWBPPNB/M7WaUYESKDeKMOGIxEzQOjGSmW/NWb6UaPZrtTB2ekhB/ew== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.1.0" + "@babel/plugin-syntax-async-generators" "^7.0.0" + +"@babel/plugin-proposal-class-properties@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.1.0.tgz#9af01856b1241db60ec8838d84691aa0bd1e8df4" + integrity sha512-/PCJWN+CKt5v1xcGn4vnuu13QDoV+P7NcICP44BoonAJoPSGwVkgrXihFIQGiEjjPlUDBIw1cM7wYFLARS2/hw== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.1.0" + "@babel/plugin-syntax-class-properties" "^7.0.0" + +"@babel/plugin-proposal-decorators@^7.0.0": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.1.2.tgz#79829bd75fced6581ec6c7ab1930e8d738e892e7" + integrity sha512-YooynBO6PmBgHvAd0fl5e5Tq/a0pEC6RqF62ouafme8FzdIVH41Mz/u1dn8fFVm4jzEJ+g/MsOxouwybJPuP8Q== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" + "@babel/plugin-syntax-decorators" "^7.1.0" + +"@babel/plugin-proposal-export-namespace-from@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.0.0.tgz#ce847cc62c3626547107a1b835592b8ee494af51" + integrity sha512-UZuK8lkobh3570vCu0sxDQn+ZlCV6CVLlXe+nNohvPr6/zI5I+j4Ir2fTTCG0ayBQanym0N+29K5+v4c8SATaQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-export-namespace-from" "^7.0.0" + +"@babel/plugin-proposal-function-sent@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-function-sent/-/plugin-proposal-function-sent-7.1.0.tgz#1c4eb7748812c89b772a2d699cf6a9c074f3e166" + integrity sha512-yciM4dketj0pjd1enirzfVWclzSCzjOljHx8E4DJUBq/q65CuaKsX2zhpdImzcn6TtFupzdcuchbqN00IEKDAA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-wrap-function" "^7.1.0" + "@babel/plugin-syntax-function-sent" "^7.0.0" + +"@babel/plugin-proposal-json-strings@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.0.0.tgz#3b4d7b5cf51e1f2e70f52351d28d44fc2970d01e" + integrity sha512-kfVdUkIAGJIVmHmtS/40i/fg/AGnw/rsZBCaapY5yjeO5RA9m165Xbw9KMOu2nqXP5dTFjEjHdfNdoVcHv133Q== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-json-strings" "^7.0.0" + +"@babel/plugin-proposal-numeric-separator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.0.0.tgz#08aa02ce62481a84bfd0d9ce7a718adaaaa773dd" + integrity sha512-m4iDNpbBv2rTxxgViAeaqLOStc2wrlVAC5ifp6pjBPG29F56LdlPgf5CQYzj99y3kYeKqsyf/dcMx/r+QfwMZg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-numeric-separator" "^7.0.0" + +"@babel/plugin-proposal-object-rest-spread@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0.tgz#9a17b547f64d0676b6c9cecd4edf74a82ab85e7e" + integrity sha512-14fhfoPcNu7itSen7Py1iGN0gEm87hX/B+8nZPqkdmANyyYWYMY2pjA3r8WXbWVKMzfnSNS0xY8GVS0IjXi/iw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.0.0" + +"@babel/plugin-proposal-optional-catch-binding@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.0.0.tgz#b610d928fe551ff7117d42c8bb410eec312a6425" + integrity sha512-JPqAvLG1s13B/AuoBjdBYvn38RqW6n1TzrQO839/sIpqLpbnXKacsAgpZHzLD83Sm8SDXMkkrAvEnJ25+0yIpw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.0.0" + +"@babel/plugin-proposal-throw-expressions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-throw-expressions/-/plugin-proposal-throw-expressions-7.0.0.tgz#fd44563c742c5e0df764b1a41ab86b22dde5a5b7" + integrity sha512-CA2EUiwnbXrsdV4hy3jYghm91WaL7zL7xYfu628dyItRr6gylbRxshghGEK/Hhm//rR58N3PBmEeuYqSW57IUQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-throw-expressions" "^7.0.0" + +"@babel/plugin-proposal-unicode-property-regex@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.0.0.tgz#498b39cd72536cd7c4b26177d030226eba08cd33" + integrity sha512-tM3icA6GhC3ch2SkmSxv7J/hCWKISzwycub6eGsDrFDgukD4dZ/I+x81XgW0YslS6mzNuQ1Cbzh5osjIMgepPQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + regexpu-core "^4.2.0" + +"@babel/plugin-syntax-async-generators@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.0.0.tgz#bf0891dcdbf59558359d0c626fdc9490e20bc13c" + integrity sha512-im7ged00ddGKAjcZgewXmp1vxSZQQywuQXe2B1A7kajjZmDeY/ekMPmWr9zJgveSaQH0k7BcGrojQhcK06l0zA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-class-properties@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.0.0.tgz#e051af5d300cbfbcec4a7476e37a803489881634" + integrity sha512-cR12g0Qzn4sgkjrbrzWy2GE7m9vMl/sFkqZ3gIpAQdrvPDnLM8180i+ANDFIXfjHo9aqp0ccJlQ0QNZcFUbf9w== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-decorators@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.1.0.tgz#2fa7c1a7905a299c9853ebcef340306675f9cbdc" + integrity sha512-uQvRSbgQ0nQg3jsmIixXXDCgSpkBolJ9X7NYThMKCcjvE8dN2uWJUzTUNNAeuKOjARTd+wUQV0ztXpgunZYKzQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-dynamic-import@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.0.0.tgz#6dfb7d8b6c3be14ce952962f658f3b7eb54c33ee" + integrity sha512-Gt9xNyRrCHCiyX/ZxDGOcBnlJl0I3IWicpZRC4CdC0P5a/I07Ya2OAMEBU+J7GmRFVmIetqEYRko6QYRuKOESw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-export-namespace-from@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.0.0.tgz#17a7389a1d2571ac4d9b77ea2defa74a930edf5d" + integrity sha512-l314XT1eMa0MWboSmG4BdKukHfSpSpQRenUoZmEpL6hqc5nc1/ddpLETjPB77gZE1dZ9qxy5D3U3UUjjcX2d4g== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-function-sent@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-function-sent/-/plugin-syntax-function-sent-7.0.0.tgz#583f904c86019dbbf486170e79e2d8f2d373f543" + integrity sha512-j+D8C+clbieA+1UFlRzMkVozWNLB94TCJsUUE7OCyKBRM329ZZXnFPjgm0em5ddLsKV9DNpdtaOZsNZ1J7gHyA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-import-meta@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.0.0.tgz#ca946b73216c29c39a55ef2d739097fee8a85d69" + integrity sha512-FEoGvhXVAiWzpDjyZIlBGzKyNk/lnRPy7aPke3PjVkiAY0QFsvFfkjUg5diRwVfowBA8SJqvFt0ZoXNSjl70hQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-json-strings@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.0.0.tgz#0d259a68090e15b383ce3710e01d5b23f3770cbd" + integrity sha512-UlSfNydC+XLj4bw7ijpldc1uZ/HB84vw+U6BTuqMdIEmz/LDe63w/GHtpQMdXWdqQZFeAI9PjnHe/vDhwirhKA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-jsx@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.0.0.tgz#034d5e2b4e14ccaea2e4c137af7e4afb39375ffd" + integrity sha512-PdmL2AoPsCLWxhIr3kG2+F9v4WH06Q3z+NoGVpQgnUNGcagXHq5sB3OXxkSahKq9TLdNMN/AJzFYSOo8UKDMHg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-numeric-separator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.0.0.tgz#9594c7ce6ce8089a14d732cb9f6b1eeb047413ba" + integrity sha512-t9RMUPWsFXVeUZxEOhIDkVqYLi1sWOTjxFBAp8wJtaARilvkGlEQvSObd2W5YKicDktINI9XmdV0sB2FZaLOpw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-object-rest-spread@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.0.0.tgz#37d8fbcaf216bd658ea1aebbeb8b75e88ebc549b" + integrity sha512-5A0n4p6bIiVe5OvQPxBnesezsgFJdHhSs3uFSvaPdMqtsovajLZ+G2vZyvNe10EzJBWWo3AcHGKhAFUxqwp2dw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.0.0.tgz#886f72008b3a8b185977f7cb70713b45e51ee475" + integrity sha512-Wc+HVvwjcq5qBg1w5RG9o9RVzmCaAg/Vp0erHCKpAYV8La6I94o4GQAmFYNmkzoMO6gzoOSulpKeSSz6mPEoZw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-throw-expressions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-throw-expressions/-/plugin-syntax-throw-expressions-7.0.0.tgz#c0764da188afd99828ffdf78085c5f3c40bb661e" + integrity sha512-/5uORdWlPta/ALhI5zKtm0Y9vAYOa7HJMML0OnCGk9XZA4hpGjb0Xjt/OVDCJVawC/4FrlAGCHOaj9BtWeVDvg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-arrow-functions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.0.0.tgz#a6c14875848c68a3b4b3163a486535ef25c7e749" + integrity sha512-2EZDBl1WIO/q4DIkIp4s86sdp4ZifL51MoIviLY/gG/mLSuOIEg7J8o6mhbxOTvUJkaN50n+8u41FVsr5KLy/w== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-async-to-generator@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.1.0.tgz#109e036496c51dd65857e16acab3bafdf3c57811" + integrity sha512-rNmcmoQ78IrvNCIt/R9U+cixUHeYAzgusTFgIAv+wQb9HJU4szhpDD6e5GCACmj/JP5KxuCwM96bX3L9v4ZN/g== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.1.0" + +"@babel/plugin-transform-block-scoped-functions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.0.0.tgz#482b3f75103927e37288b3b67b65f848e2aa0d07" + integrity sha512-AOBiyUp7vYTqz2Jibe1UaAWL0Hl9JUXEgjFvvvcSc9MVDItv46ViXFw2F7SVt1B5k+KWjl44eeXOAk3UDEaJjQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-block-scoping@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0.tgz#1745075edffd7cdaf69fab2fb6f9694424b7e9bc" + integrity sha512-GWEMCrmHQcYWISilUrk9GDqH4enf3UmhOEbNbNrlNAX1ssH3MsS1xLOS6rdjRVPgA7XXVPn87tRkdTEoA/dxEg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + lodash "^4.17.10" + +"@babel/plugin-transform-classes@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.1.0.tgz#ab3f8a564361800cbc8ab1ca6f21108038432249" + integrity sha512-rNaqoD+4OCBZjM7VaskladgqnZ1LO6o2UxuWSDzljzW21pN1KXkB7BstAVweZdxQkHAujps5QMNOTWesBciKFg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-define-map" "^7.1.0" + "@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.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" + globals "^11.1.0" + +"@babel/plugin-transform-computed-properties@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.0.0.tgz#2fbb8900cd3e8258f2a2ede909b90e7556185e31" + integrity sha512-ubouZdChNAv4AAWAgU7QKbB93NU5sHwInEWfp+/OzJKA02E6Woh9RVoX4sZrbRwtybky/d7baTUqwFx+HgbvMA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-destructuring@^7.0.0": + version "7.1.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.1.3.tgz#e69ff50ca01fac6cb72863c544e516c2b193012f" + integrity sha512-Mb9M4DGIOspH1ExHOUnn2UUXFOyVTiX84fXCd+6B5iWrQg/QMeeRmSwpZ9lnjYLSXtZwiw80ytVMr3zue0ucYw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-dotall-regex@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.0.0.tgz#73a24da69bc3c370251f43a3d048198546115e58" + integrity sha512-00THs8eJxOJUFVx1w8i1MBF4XH4PsAjKjQ1eqN/uCH3YKwP21GCKfrn6YZFZswbOk9+0cw1zGQPHVc1KBlSxig== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + regexpu-core "^4.1.3" + +"@babel/plugin-transform-duplicate-keys@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.0.0.tgz#a0601e580991e7cace080e4cf919cfd58da74e86" + integrity sha512-w2vfPkMqRkdxx+C71ATLJG30PpwtTpW7DDdLqYt2acXU7YjztzeWW2Jk1T6hKqCLYCcEA5UQM/+xTAm+QCSnuQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-exponentiation-operator@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.1.0.tgz#9c34c2ee7fd77e02779cfa37e403a2e1003ccc73" + integrity sha512-uZt9kD1Pp/JubkukOGQml9tqAeI8NkE98oZnHZ2qHRElmeKCodbTZgOEUtujSCSLhHSBWbzNiFSDIMC4/RBTLQ== + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-for-of@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.0.0.tgz#f2ba4eadb83bd17dc3c7e9b30f4707365e1c3e39" + integrity sha512-TlxKecN20X2tt2UEr2LNE6aqA0oPeMT1Y3cgz8k4Dn1j5ObT8M3nl9aA37LLklx0PBZKETC9ZAf9n/6SujTuXA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-function-name@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.1.0.tgz#29c5550d5c46208e7f730516d41eeddd4affadbb" + integrity sha512-VxOa1TMlFMtqPW2IDYZQaHsFrq/dDoIjgN098NowhexhZcz3UGlvPgZXuE1jEvNygyWyxRacqDpCZt+par1FNg== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-literals@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.0.0.tgz#2aec1d29cdd24c407359c930cdd89e914ee8ff86" + integrity sha512-1NTDBWkeNXgpUcyoVFxbr9hS57EpZYXpje92zv0SUzjdu3enaRwF/l3cmyRnXLtIdyJASyiS6PtybK+CgKf7jA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-modules-amd@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.1.0.tgz#f9e0a7072c12e296079b5a59f408ff5b97bf86a8" + integrity sha512-wt8P+xQ85rrnGNr2x1iV3DW32W8zrB6ctuBkYBbf5/ZzJY99Ob4MFgsZDFgczNU76iy9PWsy4EuxOliDjdKw6A== + dependencies: + "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-modules-commonjs@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.1.0.tgz#0a9d86451cbbfb29bd15186306897c67f6f9a05c" + integrity sha512-wtNwtMjn1XGwM0AXPspQgvmE6msSJP15CX2RVfpTSTNPLhKhaOjaIfBaVfj4iUZ/VrFSodcFedwtPg/NxwQlPA== + dependencies: + "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-simple-access" "^7.1.0" + +"@babel/plugin-transform-modules-systemjs@^7.0.0": + version "7.1.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.1.3.tgz#2119a3e3db612fd74a19d88652efbfe9613a5db0" + integrity sha512-PvTxgjxQAq4pvVUZF3mD5gEtVDuId8NtWkJsZLEJZMZAW3TvgQl1pmydLLN1bM8huHFVVU43lf0uvjQj9FRkKw== + dependencies: + "@babel/helper-hoist-variables" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-modules-umd@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.1.0.tgz#a29a7d85d6f28c3561c33964442257cc6a21f2a8" + integrity sha512-enrRtn5TfRhMmbRwm7F8qOj0qEYByqUvTttPEGimcBH4CJHphjyK1Vg7sdU7JjeEmgSpM890IT/efS2nMHwYig== + dependencies: + "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-new-target@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz#ae8fbd89517fa7892d20e6564e641e8770c3aa4a" + integrity sha512-yin069FYjah+LbqfGeTfzIBODex/e++Yfa0rH0fpfam9uTbuEeEOx5GLGr210ggOV77mVRNoeqSYqeuaqSzVSw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-object-super@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.1.0.tgz#b1ae194a054b826d8d4ba7ca91486d4ada0f91bb" + integrity sha512-/O02Je1CRTSk2SSJaq0xjwQ8hG4zhZGNjE8psTsSNPXyLRCODv7/PBozqT5AmQMzp7MI3ndvMhGdqp9c96tTEw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.1.0" + +"@babel/plugin-transform-parameters@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.1.0.tgz#44f492f9d618c9124026e62301c296bf606a7aed" + integrity sha512-vHV7oxkEJ8IHxTfRr3hNGzV446GAb+0hgbA7o/0Jd76s+YzccdWuTU296FOCOl/xweU4t/Ya4g41yWz80RFCRw== + dependencies: + "@babel/helper-call-delegate" "^7.1.0" + "@babel/helper-get-function-arity" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-react-jsx@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.0.0.tgz#524379e4eca5363cd10c4446ba163f093da75f3e" + integrity sha512-0TMP21hXsSUjIQJmu/r7RiVxeFrXRcMUigbKu0BLegJK9PkYodHstaszcig7zxXfaBji2LYUdtqIkHs+hgYkJQ== + dependencies: + "@babel/helper-builder-react-jsx" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.0.0" + +"@babel/plugin-transform-regenerator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz#5b41686b4ed40bef874d7ed6a84bdd849c13e0c1" + integrity sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw== + dependencies: + regenerator-transform "^0.13.3" + +"@babel/plugin-transform-shorthand-properties@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0.tgz#85f8af592dcc07647541a0350e8c95c7bf419d15" + integrity sha512-g/99LI4vm5iOf5r1Gdxq5Xmu91zvjhEG5+yZDJW268AZELAu4J1EiFLnkSG3yuUsZyOipVOVUKoGPYwfsTymhw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-spread@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.0.0.tgz#93583ce48dd8c85e53f3a46056c856e4af30b49b" + integrity sha512-L702YFy2EvirrR4shTj0g2xQp7aNwZoWNCkNu2mcoU0uyzMl0XRwDSwzB/xp6DSUFiBmEXuyAyEN16LsgVqGGQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-sticky-regex@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.0.0.tgz#30a9d64ac2ab46eec087b8530535becd90e73366" + integrity sha512-LFUToxiyS/WD+XEWpkx/XJBrUXKewSZpzX68s+yEOtIbdnsRjpryDw9U06gYc6klYEij/+KQVRnD3nz3AoKmjw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + +"@babel/plugin-transform-template-literals@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.0.0.tgz#084f1952efe5b153ddae69eb8945f882c7a97c65" + integrity sha512-vA6rkTCabRZu7Nbl9DfLZE1imj4tzdWcg5vtdQGvj+OH9itNNB6hxuRMHuIY8SGnEt1T9g5foqs9LnrHzsqEFg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-typeof-symbol@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.0.0.tgz#4dcf1e52e943e5267b7313bff347fdbe0f81cec9" + integrity sha512-1r1X5DO78WnaAIvs5uC48t41LLckxsYklJrZjNKcevyz83sF2l4RHbw29qrCPr/6ksFsdfRpT/ZgxNWHXRnffg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-unicode-regex@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.0.0.tgz#c6780e5b1863a76fe792d90eded9fcd5b51d68fc" + integrity sha512-uJBrJhBOEa3D033P95nPHu3nbFwFE9ZgXsfEitzoIXIwqAZWk7uXcg06yFKXz9FSxBH5ucgU/cYdX0IV8ldHKw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + regexpu-core "^4.1.3" + +"@babel/preset-env@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.1.0.tgz#e67ea5b0441cfeab1d6f41e9b5c79798800e8d11" + integrity sha512-ZLVSynfAoDHB/34A17/JCZbyrzbQj59QC1Anyueb4Bwjh373nVPq5/HMph0z+tCmcDjXDe+DlKQq9ywQuvWrQg== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-async-generator-functions" "^7.1.0" + "@babel/plugin-proposal-json-strings" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.0.0" + "@babel/plugin-syntax-async-generators" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.0.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.0.0" + "@babel/plugin-transform-arrow-functions" "^7.0.0" + "@babel/plugin-transform-async-to-generator" "^7.1.0" + "@babel/plugin-transform-block-scoped-functions" "^7.0.0" + "@babel/plugin-transform-block-scoping" "^7.0.0" + "@babel/plugin-transform-classes" "^7.1.0" + "@babel/plugin-transform-computed-properties" "^7.0.0" + "@babel/plugin-transform-destructuring" "^7.0.0" + "@babel/plugin-transform-dotall-regex" "^7.0.0" + "@babel/plugin-transform-duplicate-keys" "^7.0.0" + "@babel/plugin-transform-exponentiation-operator" "^7.1.0" + "@babel/plugin-transform-for-of" "^7.0.0" + "@babel/plugin-transform-function-name" "^7.1.0" + "@babel/plugin-transform-literals" "^7.0.0" + "@babel/plugin-transform-modules-amd" "^7.1.0" + "@babel/plugin-transform-modules-commonjs" "^7.1.0" + "@babel/plugin-transform-modules-systemjs" "^7.0.0" + "@babel/plugin-transform-modules-umd" "^7.1.0" + "@babel/plugin-transform-new-target" "^7.0.0" + "@babel/plugin-transform-object-super" "^7.1.0" + "@babel/plugin-transform-parameters" "^7.1.0" + "@babel/plugin-transform-regenerator" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0" + "@babel/plugin-transform-spread" "^7.0.0" + "@babel/plugin-transform-sticky-regex" "^7.0.0" + "@babel/plugin-transform-template-literals" "^7.0.0" + "@babel/plugin-transform-typeof-symbol" "^7.0.0" + "@babel/plugin-transform-unicode-regex" "^7.0.0" + browserslist "^4.1.0" + invariant "^2.2.2" + js-levenshtein "^1.1.3" + semver "^5.3.0" + +"@babel/register@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.0.0.tgz#fa634bae1bfa429f60615b754fc1f1d745edd827" + integrity sha512-f/+CRmaCe7rVEvcvPvxeA8j5aJhHC3aJie7YuqcMDhUOuyWLA7J/aNrTaHIzoWPEhpHA54mec4Mm8fv8KBlv3g== + dependencies: + core-js "^2.5.7" + find-cache-dir "^1.0.0" + home-or-tmp "^3.0.0" + lodash "^4.17.10" + mkdirp "^0.5.1" + pirates "^4.0.0" + source-map-support "^0.5.9" + "@babel/runtime@^7.1.2": version "7.1.2" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.1.2.tgz#81c89935f4647706fc54541145e6b4ecfef4b8e3" @@ -133,16 +745,6 @@ dependencies: samsam "1.3.0" -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -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.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -182,582 +784,11 @@ axios@^0.18.0: follow-redirects "^1.3.0" is-buffer "^1.1.5" -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@^7.0.0-beta: 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-helper-bindify-decorators@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330" - integrity sha1-FMGeXxQte0fxmlJDHlKxzLxAozA= - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.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= - dependencies: - babel-helper-explode-assignable-expression "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -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= - dependencies: - babel-runtime "^6.26.0" - babel-types "^6.26.0" - esutils "^2.0.2" - -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-explode-class@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb" - integrity sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes= - dependencies: - babel-helper-bindify-decorators "^6.24.1" - 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-regex@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" - integrity sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI= - dependencies: - babel-runtime "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-helper-remap-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" - integrity sha1-XsWBgnrXI/7N04HxySg5BnbkVRs= - dependencies: - babel-helper-function-name "^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-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-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.22.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-syntax-async-functions@^6.8.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-async-generators@^6.5.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a" - integrity sha1-a8lj67FuzLrmuStZbrfzXDQqi5o= - -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-decorators@^6.13.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b" - integrity sha1-MSVjtNvePMgGzuPkFszurd0RrAs= - -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-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.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.22.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-transform-async-generator-functions@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db" - integrity sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds= - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-generators "^6.5.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" - integrity sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E= - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-class-properties@^6.24.1: - 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-decorators@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d" - integrity sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0= - dependencies: - babel-helper-explode-class "^6.24.1" - babel-plugin-syntax-decorators "^6.13.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-arrow-functions@^6.22.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-scoped-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" - integrity sha1-u8UbSflk1wy42OC5ToICRs46YUE= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoping@^6.24.1: - 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.24.1: - 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.24.1: - 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.22.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-duplicate-keys@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" - integrity sha1-c+s9MQypaePvnskcU3QabxV2Qj4= - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-for-of@^6.22.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.24.1: - 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.22.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-amd@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" - integrity sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ= - dependencies: - babel-plugin-transform-es2015-modules-commonjs "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-commonjs@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" - integrity sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo= - 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-modules-systemjs@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" - integrity sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM= - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-umd@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" - integrity sha1-rJl+YoXNGO1hdq22B9YCNErThGg= - dependencies: - babel-plugin-transform-es2015-modules-amd "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-object-super@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" - integrity sha1-JM72muIcuDp/hgPa0CH1cusnj40= - dependencies: - babel-helper-replace-supers "^6.24.1" - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-parameters@^6.24.1: - 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.24.1: - 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.22.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-sticky-regex@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" - integrity sha1-AMHNsaynERLN8M9hJsLta0V8zbw= - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-template-literals@^6.22.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-es2015-typeof-symbol@^6.22.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" - integrity sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-unicode-regex@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" - integrity sha1-04sS9C6nMj9yk4fxinxa4frrNek= - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - regexpu-core "^2.0.0" - -babel-plugin-transform-exponentiation-operator@^6.24.1: - 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-object-rest-spread@^6.22.0, babel-plugin-transform-object-rest-spread@^6.26.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-jsx@^6.24.1: - 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.24.1: - 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-es2015@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz#d44050d6bc2c9feea702aaf38d727a0210538939" - integrity sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk= - dependencies: - babel-plugin-check-es2015-constants "^6.22.0" - babel-plugin-transform-es2015-arrow-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoping "^6.24.1" - babel-plugin-transform-es2015-classes "^6.24.1" - babel-plugin-transform-es2015-computed-properties "^6.24.1" - babel-plugin-transform-es2015-destructuring "^6.22.0" - babel-plugin-transform-es2015-duplicate-keys "^6.24.1" - babel-plugin-transform-es2015-for-of "^6.22.0" - babel-plugin-transform-es2015-function-name "^6.24.1" - babel-plugin-transform-es2015-literals "^6.22.0" - babel-plugin-transform-es2015-modules-amd "^6.24.1" - babel-plugin-transform-es2015-modules-commonjs "^6.24.1" - babel-plugin-transform-es2015-modules-systemjs "^6.24.1" - babel-plugin-transform-es2015-modules-umd "^6.24.1" - babel-plugin-transform-es2015-object-super "^6.24.1" - babel-plugin-transform-es2015-parameters "^6.24.1" - babel-plugin-transform-es2015-shorthand-properties "^6.24.1" - babel-plugin-transform-es2015-spread "^6.22.0" - babel-plugin-transform-es2015-sticky-regex "^6.24.1" - babel-plugin-transform-es2015-template-literals "^6.22.0" - babel-plugin-transform-es2015-typeof-symbol "^6.22.0" - babel-plugin-transform-es2015-unicode-regex "^6.24.1" - babel-plugin-transform-regenerator "^6.24.1" - -babel-preset-stage-2@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1" - integrity sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE= - dependencies: - babel-plugin-syntax-dynamic-import "^6.18.0" - babel-plugin-transform-class-properties "^6.24.1" - babel-plugin-transform-decorators "^6.24.1" - babel-preset-stage-3 "^6.24.1" - -babel-preset-stage-3@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395" - integrity sha1-g2raCp56f6N8sTj7kyb4eTSkg5U= - dependencies: - babel-plugin-syntax-trailing-function-commas "^6.22.0" - babel-plugin-transform-async-generator-functions "^6.24.1" - babel-plugin-transform-async-to-generator "^6.24.1" - babel-plugin-transform-exponentiation-operator "^6.24.1" - babel-plugin-transform-object-rest-spread "^6.22.0" - -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.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.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.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== - balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" @@ -786,6 +817,25 @@ browser-stdout@1.3.1: resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== +browserslist@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.3.0.tgz#779a235bd1ace0f3841a9b294df4cd47ac046c9d" + integrity sha512-j0jLqo+6ZhFWvTjEIcDyR8LIiN8pA3cUrT/SGAs0LPp/cKvkRpCnzuxtnAW+sOPLTic5wfb+TQvRX2RTN2wo4w== + dependencies: + caniuse-lite "^1.0.30000893" + electron-to-chromium "^1.3.80" + node-releases "^1.0.0-alpha.14" + +buffer-from@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== + +caniuse-lite@^1.0.30000893: + version "1.0.30000893" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000893.tgz#284b20932bd41b93e21626975f2050cb01561986" + integrity sha512-kOddHcTEef+NgN/fs0zmX2brHTNATVOWMEIhlZHCuwQRtXobjSw9pAECc44Op4bTBcavRjkLaPrGomknH7+Jvg== + chai@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chai/-/chai-4.1.2.tgz#0f64584ba642f0f2ace2806279f4f06ca23ad73c" @@ -798,17 +848,6 @@ chai@^4.1.2: pathval "^1.0.0" type-detect "^4.0.0" -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: version "2.4.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" @@ -840,6 +879,11 @@ commander@2.15.1, commander@^2.12.2: resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f" integrity sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag== +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -857,10 +901,10 @@ 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.4.0: - version "2.5.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b" - integrity sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs= +core-js@^2.5.7: + version "2.5.7" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" + integrity sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw== core-util-is@~1.0.0: version "1.0.2" @@ -892,13 +936,6 @@ debug@3.1.0, debug@^3.1.0: dependencies: ms "2.0.0" -debug@^2.6.8: - 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" - deep-eql@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" @@ -916,6 +953,11 @@ diff@3.5.0, diff@^3.1.0: resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== +electron-to-chromium@^1.3.80: + version "1.3.80" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.80.tgz#e99ec7efe64c2c6a269d3885ff411ea88852fa53" + integrity sha512-WClidEWEUNx7OfwXehB0qaxCuetjbKjev2SmXWgybWPLKAThBiMTF/2Pd8GSUDtoGOavxVzdkKwfFAPRSWlkLw== + encoding@^0.1.11: version "0.1.12" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" @@ -923,12 +965,12 @@ encoding@^0.1.11: dependencies: iconv-lite "~0.4.13" -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: +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= -esutils@^2.0.2: +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= @@ -967,6 +1009,22 @@ figma-parser@^0.0.2: axios "^0.18.0" markup-js "^1.5.21" +find-cache-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" + integrity sha1-kojj6ePMN0hxfTnq3hfPcfww7m8= + dependencies: + commondir "^1.0.1" + make-dir "^1.0.0" + pkg-dir "^2.0.0" + +find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= + dependencies: + locate-path "^2.0.0" + follow-redirects@^1.3.0: version "1.5.1" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.1.tgz#67a8f14f5a1f67f962c2c46469c79eaec0a90291" @@ -1006,11 +1064,6 @@ globals@^11.1.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.8.0.tgz#c1ef45ee9bed6badf0663c5cb90e8d1adec1321d" integrity sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA== -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== - growl@1.10.5: version "1.10.5" resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" @@ -1021,13 +1074,6 @@ gud@^1.0.0: resolved "https://registry.yarnpkg.com/gud/-/gud-1.0.0.tgz#a489581b17e6a70beca9abe3ae57de7a499852c0" integrity sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw== -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@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -1050,6 +1096,11 @@ hoist-non-react-statics@^2.2.1: resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.3.1.tgz#343db84c6018c650778898240135a1420ee22ce0" integrity sha1-ND24TGAYxlB3iJgkATWhQg7iLOA= +home-or-tmp@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-3.0.0.tgz#57a8fe24cf33cdd524860a15821ddc25c86671fb" + integrity sha1-V6j+JM8zzdUkhgoVgh3cJchmcfs= + html-parse-stringify2@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/html-parse-stringify2/-/html-parse-stringify2-2.0.1.tgz#dc5670b7292ca158b7bc916c9a6735ac8872834a" @@ -1125,7 +1176,12 @@ isomorphic-fetch@^2.1.1: node-fetch "^1.0.1" whatwg-fetch ">=0.10.0" -js-tokens@^3.0.0, js-tokens@^3.0.2: +js-levenshtein@^1.1.3: + version "1.1.4" + resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.4.tgz#3a56e3cbf589ca0081eb22cd9ba0b1290a16d26e" + integrity sha512-PxfGzSs0ztShKrUYPIn5r0MtyAhYcCwmndozzpz8YObbPnD1jFxzlBGbRnX2mIu6Z13xN6+PTu05TQFnZFlzow== + +js-tokens@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= @@ -1160,6 +1216,14 @@ just-extend@^1.1.27: resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-1.1.27.tgz#ec6e79410ff914e472652abfa0e603c03d60e905" integrity sha512-mJVp13Ix6gFo3SBAy9U/kL+oeZqzlYYYLQBwXVBlVzIsZwBqGREnOro24oC/8s8aox+rJhtZ2DiQof++IrkA+g== +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + lodash-es@^4.17.4, lodash-es@^4.2.0, lodash-es@^4.2.1: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.4.tgz#dcc1d7552e150a0640073ba9cb31d70f032950e7" @@ -1197,6 +1261,13 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: dependencies: js-tokens "^3.0.0" +make-dir@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" + integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== + dependencies: + pify "^3.0.0" + markup-js@^1.5.21: version "1.5.21" resolved "https://registry.yarnpkg.com/markup-js/-/markup-js-1.5.21.tgz#389128703a565964574d0e357e142add3be46d79" @@ -1219,7 +1290,7 @@ minimist@0.0.8: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= -mkdirp@0.5.1, mkdirp@^0.5.0: +mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= @@ -1301,6 +1372,18 @@ node-fetch@^1.0.1: encoding "^0.1.11" is-stream "^1.0.1" +node-modules-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" + integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= + +node-releases@^1.0.0-alpha.14: + version "1.0.0-alpha.14" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.0.0-alpha.14.tgz#da9e2780add4bbb59ad890af9e2018a1d9c0034b" + integrity sha512-G8nnF9cP9QPP/jUmYWw/uUUhumHmkm+X/EarCugYFjYm2uXRMFeOD6CVT3RLdoyCvDUNy51nirGfUItKWs/S1g== + dependencies: + semver "^5.3.0" + 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" @@ -1313,6 +1396,30 @@ once@^1.3.0: dependencies: wrappy "1" +p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== + dependencies: + p-try "^1.0.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= + dependencies: + p-limit "^1.1.0" + +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= + +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: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -1335,6 +1442,25 @@ pathval@^1.0.0: resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA= +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= + +pirates@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.0.tgz#850b18781b4ac6ec58a43c9ed9ec5fe6796addbd" + integrity sha512-8t5BsXy1LUIjn3WWOlOuFDuKswhQb/tkak641lvBgmPOBUQHXveORtlMCp6OdPV1dtuTaEahKA8VNz6uLfKBtA== + 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" + private@^0.1.6: version "0.1.8" resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" @@ -1471,48 +1597,51 @@ redux@^3.7.2: loose-envify "^1.1.0" symbol-observable "^1.0.3" -regenerate@^1.2.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f" - integrity sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg== +regenerate-unicode-properties@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz#107405afcc4a190ec5ed450ecaa00ed0cafa7a4c" + integrity sha512-s5NGghCE4itSlUS+0WUj88G6cfMVMmH8boTPNvABf8od+2dhT9WDlWu8n01raQAJZMOK8Ch6jSexaRO7swd6aw== + dependencies: + regenerate "^1.4.0" -regenerator-runtime@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" - integrity sha512-/aA0kLeRb5N9K0d4fw7ooEbI+xDe+DKD499EQqygGqeS8N3xto15p09uY2xj7ixP81sNPXvRLnAQIqdVStgb1A== +regenerate@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" + integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== regenerator-runtime@^0.12.0: version "0.12.1" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz#fa1a71544764c036f8c49b13a08b2594c9f8a0de" integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg== -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== +regenerator-transform@^0.13.3: + version "0.13.3" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.13.3.tgz#264bd9ff38a8ce24b06e0636496b2c856b57bcbb" + integrity sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA== dependencies: - babel-runtime "^6.18.0" - babel-types "^6.19.0" private "^0.1.6" -regexpu-core@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" - integrity sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA= +regexpu-core@^4.1.3, regexpu-core@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.2.0.tgz#a3744fa03806cffe146dea4421a3e73bdcc47b1d" + integrity sha512-Z835VSnJJ46CNBttalHD/dB+Sj2ezmY6Xp38npwU87peK6mqOzOpV8eYktdkLTEkzzD+JsTcxd84ozd8I14+rw== dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" + regenerate "^1.4.0" + regenerate-unicode-properties "^7.0.0" + regjsgen "^0.4.0" + regjsparser "^0.3.0" + unicode-match-property-ecmascript "^1.0.4" + unicode-match-property-value-ecmascript "^1.0.2" -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= +regjsgen@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.4.0.tgz#c1eb4c89a209263f8717c782591523913ede2561" + integrity sha512-X51Lte1gCYUdlwhF28+2YMO0U6WeN0GLpgpA7LK7mbdDnkQYiwvEpmpe0F/cv5L14EbxgrdayAG3JETBv0dbXA== -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= +regjsparser@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.3.0.tgz#3c326da7fcfd69fa0d332575a41c8c0cdf588c96" + integrity sha512-zza72oZBBHzt64G7DxdqrOo/30bhHkwMUoT0WqfGu98XLd7N+1tsy5MJ96Bk4MD0y74n629RhmrGW6XlnLLwCA== dependencies: jsesc "~0.5.0" @@ -1548,6 +1677,11 @@ sax@^1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== +semver@^5.3.0: + version "5.6.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" + integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== + semver@^5.4.1: version "5.5.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.1.tgz#7dfdd8814bdb7cabc7be0fb1d734cfb66c940477" @@ -1576,11 +1710,24 @@ sinon@^4.5.0: supports-color "^5.1.0" type-detect "^4.0.5" +source-map-support@^0.5.9: + version "0.5.9" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" + integrity sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + source-map@^0.5.0: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= +source-map@^0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -1608,13 +1755,6 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -strip-ansi@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - supports-color@5.4.0, supports-color@^5.1.0: version "5.4.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.4.0.tgz#1c6b337402c2137605efe19f10fec390f6faab54" @@ -1622,11 +1762,6 @@ supports-color@5.4.0, supports-color@^5.1.0: dependencies: has-flag "^3.0.0" -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@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -1692,11 +1827,6 @@ tinycolor2@^1.4.1: resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.1.tgz#f4fad333447bc0b07d4dc8e9209d8f39a8ac77e8" integrity sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g= -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" @@ -1732,6 +1862,29 @@ ua-parser-js@^0.7.9: resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.17.tgz#e9ec5f9498b9ec910e7ae3ac626a805c4d09ecac" integrity sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g== +unicode-canonical-property-names-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" + integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== + +unicode-match-property-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" + integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== + dependencies: + unicode-canonical-property-names-ecmascript "^1.0.4" + unicode-property-aliases-ecmascript "^1.0.4" + +unicode-match-property-value-ecmascript@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.2.tgz#9f1dc76926d6ccf452310564fd834ace059663d4" + integrity sha512-Rx7yODZC1L/T8XKo/2kNzVAQaRE88AaMvI1EF/Xnj3GW2wzN6fop9DDWuFAKUVFH7vozkz26DzP0qyWLKLIVPQ== + +unicode-property-aliases-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz#5a533f31b4317ea76f17d807fa0d116546111dd0" + integrity sha512-2WSLa6OdYd2ng8oqiGIWnJqyFArvhn+5vgx5GTxMbUYjCYKUcuKS62YLFF0R/BDGlB1yzXjQOLtPAfHsgirEpg== + url-parse@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.2.0.tgz#3a19e8aaa6d023ddd27dcc44cb4fc8f7fec23986" From 520574ec1844045f0264100b77b347aaf269b489 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 22 Oct 2018 13:48:08 +0100 Subject: [PATCH 018/141] Mobile: Fix send progress bar bugs --- .../ios/iotaWallet.xcodeproj/project.pbxproj | 22 ++++---- src/mobile/src/ui/components/ProgressBar.js | 51 ++++++++++--------- src/mobile/src/ui/views/wallet/Send.js | 2 +- src/shared/actions/transfers.js | 2 +- 4 files changed, 38 insertions(+), 39 deletions(-) diff --git a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj index caa0ca5b2d..ce8f49e268 100644 --- a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj +++ b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj @@ -1544,14 +1544,12 @@ }; 30A16F44D53CE8CFD5085B3A66B82141 = { CreatedOnToolsVersion = 6.2; - DevelopmentTeam = UG77RJKZHH; - ProvisioningStyle = Automatic; + ProvisioningStyle = Manual; TestTargetID = 4848851A00274CA2FFBE307BAEB5F278; }; 4848851A00274CA2FFBE307BAEB5F278 = { - DevelopmentTeam = UG77RJKZHH; LastSwiftMigration = 1010; - ProvisioningStyle = Automatic; + ProvisioningStyle = Manual; SystemCapabilities = { com.apple.BackgroundModes = { enabled = 0; @@ -2792,10 +2790,10 @@ CODE_SIGN_ENTITLEMENTS = iotaWallet/iotaWallet.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; + CODE_SIGN_STYLE = Manual; CURRENT_PROJECT_VERSION = 26; DEAD_CODE_STRIPPING = NO; - DEVELOPMENT_TEAM = UG77RJKZHH; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -2980,8 +2978,8 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = UG77RJKZHH; + CODE_SIGN_STYLE = Manual; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -3128,9 +3126,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; + CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = UG77RJKZHH; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -3171,9 +3169,9 @@ CODE_SIGN_ENTITLEMENTS = iotaWallet/iotaWallet.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; + CODE_SIGN_STYLE = Manual; CURRENT_PROJECT_VERSION = 26; - DEVELOPMENT_TEAM = UG77RJKZHH; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", diff --git a/src/mobile/src/ui/components/ProgressBar.js b/src/mobile/src/ui/components/ProgressBar.js index 75b673ff3b..8f105539e7 100644 --- a/src/mobile/src/ui/components/ProgressBar.js +++ b/src/mobile/src/ui/components/ProgressBar.js @@ -53,7 +53,7 @@ class ProgressBar extends Component { /** Text displayed when not in progress */ staticText: PropTypes.string, /** Called on successful swipe */ - onCompleteSwipe: PropTypes.func, + onSwipeSuccess: PropTypes.func, /** Interupts the progress bar when changed */ interupt: PropTypes.bool, }; @@ -65,7 +65,7 @@ class ProgressBar extends Component { constructor(props) { super(props); - const isAlreadyInProgress = props.progress > -1; + const isAlreadyInProgress = props.progress > -1 && props.progress < 1; const sliderEndPosition = props.channelWidth - props.channelHeight; this.state = { progressPosition: new Animated.Value(isAlreadyInProgress ? props.progress : 0), @@ -79,12 +79,12 @@ class ProgressBar extends Component { progressText: isAlreadyInProgress ? props.progressText : '', inProgress: isAlreadyInProgress, sliderAnimation: sliderLoadingAnimation, - sliderSize: new Animated.Value(props.channelHeight * 0.8), + sliderSize: new Animated.Value(isAlreadyInProgress ? props.channelHeight : props.channelHeight * 0.8), }; } componentWillMount() { - if (this.props.progress > -1) { + if (this.props.progress > -1 && this.props.progress < 1) { this.animateProgressBar(); } this._panResponder = PanResponder.create({ @@ -101,9 +101,9 @@ class ProgressBar extends Component { duration: 100, }).start(); const moveValue = gestureState.dx; - const relativeSlidePosition = moveValue / this.state.thresholdDistance; - this.state.textOpacity.setValue(1 - relativeSlidePosition * 2); - this.state.sliderOpacity.setValue(1 - relativeSlidePosition / 2.5); + const sliderPosition = moveValue / this.state.thresholdDistance; + this.state.textOpacity.setValue(1 - sliderPosition * 2); + this.state.sliderOpacity.setValue(1 - sliderPosition / 2.5); if (moveValue >= 0 && moveValue <= this.state.thresholdDistance) { this.state.sliderPosition.setValue(gestureState.dx); } @@ -113,7 +113,7 @@ class ProgressBar extends Component { return; } const releaseValue = gestureState.dx; - if (releaseValue >= this.state.thresholdDistance) { + if (releaseValue >= this.state.thresholdDistance && this.props.progress === -1) { this.onCompleteSwipe(); } else { this.onIncompleteSwipe(); @@ -125,7 +125,7 @@ class ProgressBar extends Component { } componentDidMount() { - if (this.props.progress > -1 && this.sliderAnimation) { + if (this.props.progress > -1 && this.props.progress < 1 && this.sliderAnimation) { this.sliderAnimation.play(); } } @@ -186,7 +186,6 @@ class ProgressBar extends Component { this.sliderAnimation.reset(); this.setState({ progressStep: -1, - inProgress: false, sliderAnimation: sliderLoadingAnimation, shouldLoopSliderAnimation: true, }); @@ -220,6 +219,7 @@ class ProgressBar extends Component { } onInterupt() { + this.sliderAnimation.reset(); this.setState({ progressStep: -1, inProgress: false }); Animated.timing(this.state.progressPosition).stop(); this.state.progressPosition.setValue(0); @@ -233,7 +233,7 @@ class ProgressBar extends Component { duration: 50, }).start(); this.setState({ sliderColor: this.props.postSwipeColor }); - this.props.onCompleteSwipe(); + this.props.onSwipeSuccess(); } onProgressStepChange(progressText) { @@ -325,19 +325,6 @@ class ProgressBar extends Component { render() { const { channelHeight, channelWidth, textColor, staticText, unfilledColor, filledColor } = this.props; - const progressBarStyle = { - backgroundColor: filledColor, - height: channelHeight, - width: channelWidth, - transform: [ - { - translateX: this.state.progressPosition.interpolate({ - inputRange: [0, 1], - outputRange: [-channelWidth, 0], - }), - }, - ], - }; return ( - + {(this.state.inProgress && ( {this.state.progressText} diff --git a/src/mobile/src/ui/views/wallet/Send.js b/src/mobile/src/ui/views/wallet/Send.js index 9a1ed41093..74d7640097 100644 --- a/src/mobile/src/ui/views/wallet/Send.js +++ b/src/mobile/src/ui/views/wallet/Send.js @@ -843,7 +843,7 @@ export class Send extends Component { interupt={this.state.shouldInteruptSendAnimation} progressText={this.getProgressBarText()} staticText="Swipe to send" - onCompleteSwipe={() => { + onSwipeSuccess={() => { this.onSendPress(); if (address === '' && amount === '' && message && '') { this.blurTextFields(); diff --git a/src/shared/actions/transfers.js b/src/shared/actions/transfers.js index 4e03c5660b..7386095c47 100644 --- a/src/shared/actions/transfers.js +++ b/src/shared/actions/transfers.js @@ -703,7 +703,7 @@ export const makeTransaction = (seedStore, receiveAddress, value, message, accou setTimeout(() => { dispatch(completeTransfer()); dispatch(resetProgress()); - }, 5000); + }, 3500); }) .catch((error) => { dispatch(sendTransferError()); From 286ba10b58a1ec187d00babea12afb8d0d528ef3 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Tue, 23 Oct 2018 12:58:38 +0100 Subject: [PATCH 019/141] Mobile: Add new send confirmation modal --- .../ios/iotaWallet.xcodeproj/project.pbxproj | 22 +- .../src/ui/components/DualFooterButtons.js | 8 +- .../src/ui/components/ModalComponent.js | 4 +- .../src/ui/components/SingleFooterButton.js | 2 +- .../ui/components/TextWithLetterSpacing.js | 2 +- .../components/TransferConfirmationModal.js | 236 ++++--- src/mobile/src/ui/theme/general.js | 5 +- src/mobile/src/ui/views/wallet/Balance.js | 2 +- src/mobile/src/ui/views/wallet/Send.js | 15 +- src/shared/animations/arrow-transfer.json | 594 ++++++++++++++++++ src/shared/locales/en/translation.json | 10 +- 11 files changed, 780 insertions(+), 120 deletions(-) create mode 100644 src/shared/animations/arrow-transfer.json diff --git a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj index ce8f49e268..caa0ca5b2d 100644 --- a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj +++ b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj @@ -1544,12 +1544,14 @@ }; 30A16F44D53CE8CFD5085B3A66B82141 = { CreatedOnToolsVersion = 6.2; - ProvisioningStyle = Manual; + DevelopmentTeam = UG77RJKZHH; + ProvisioningStyle = Automatic; TestTargetID = 4848851A00274CA2FFBE307BAEB5F278; }; 4848851A00274CA2FFBE307BAEB5F278 = { + DevelopmentTeam = UG77RJKZHH; LastSwiftMigration = 1010; - ProvisioningStyle = Manual; + ProvisioningStyle = Automatic; SystemCapabilities = { com.apple.BackgroundModes = { enabled = 0; @@ -2790,10 +2792,10 @@ CODE_SIGN_ENTITLEMENTS = iotaWallet/iotaWallet.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 26; DEAD_CODE_STRIPPING = NO; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -2978,8 +2980,8 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEVELOPMENT_TEAM = ""; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -3126,9 +3128,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -3169,9 +3171,9 @@ CODE_SIGN_ENTITLEMENTS = iotaWallet/iotaWallet.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 26; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", diff --git a/src/mobile/src/ui/components/DualFooterButtons.js b/src/mobile/src/ui/components/DualFooterButtons.js index 4d0242c20c..1a410c09d7 100644 --- a/src/mobile/src/ui/components/DualFooterButtons.js +++ b/src/mobile/src/ui/components/DualFooterButtons.js @@ -37,6 +37,8 @@ class DualFooterButtons extends PureComponent { leftButtonStyle: PropTypes.object, /** Right button optional styles to override the default ones */ rightButtonStyle: PropTypes.object, + /** @ignore */ + isModalActive: PropTypes.bool.isRequired, }; static defaultProps = { @@ -55,10 +57,11 @@ class DualFooterButtons extends PureComponent { leftButtonStyle, rightButtonStyle, theme, + isModalActive, } = this.props; - const borderRadius = isIPhoneX ? parseInt(width / 20) : 0; + const borderRadius = isIPhoneX ? Styling.borderRadiusExtraLarge : 0; return ( - + @@ -96,11 +103,17 @@ class DualFooterButtons extends PureComponent { borderBottomRightRadius: borderRadius, borderTopRightRadius: borderRadius, }, - children: { color: theme.primary.body }, + children: { + color: theme.primary.body, + }, + loading: { + color: theme.primary.color, + }, }, rightButtonStyle, )} testID={rightButtonTestID} + isLoading={isRightButtonLoading} > {rightButtonText} @@ -111,7 +124,6 @@ class DualFooterButtons extends PureComponent { const mapStateToProps = (state) => ({ theme: state.settings.theme, - isModalActive: state.ui.isModalActive, }); export default connect(mapStateToProps)(DualFooterButtons); diff --git a/src/mobile/src/ui/components/HistoryModalContent.js b/src/mobile/src/ui/components/HistoryModalContent.js index 8a44ef351b..9ee9381eb6 100644 --- a/src/mobile/src/ui/components/HistoryModalContent.js +++ b/src/mobile/src/ui/components/HistoryModalContent.js @@ -1,57 +1,49 @@ import assign from 'lodash/assign'; import React, { PureComponent } from 'react'; import PropTypes from 'prop-types'; -import { - Clipboard, - TouchableOpacity, - View, - Text, - StyleSheet, - FlatList, - ScrollView, - TouchableWithoutFeedback, - ActivityIndicator, -} from 'react-native'; +import { Clipboard, TouchableOpacity, View, Text, StyleSheet, FlatList, ScrollView } from 'react-native'; import { formatModalTime, convertUnixTimeToJSDate } from 'shared-modules/libs/date'; import { Styling } from 'ui/theme/general'; import { width, height } from 'libs/dimensions'; import { isAndroid, locale, timezone } from 'libs/device'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; -import CtaButton from './CtaButton'; +import DualFooterButtons from './DualFooterButtons'; +import SingleFooterButton from './SingleFooterButton'; + +const contentWidth = width - width / 10; const styles = StyleSheet.create({ - container: { + modalContainer: { width, height, alignItems: 'center', + justifyContent: 'flex-end', }, - wrapper: { - flex: 1, - justifyContent: 'center', + modalContent: { + justifyContent: 'space-between', alignItems: 'center', width, - height, + height: height - Styling.topbarHeight, }, - content: { - width: Styling.contentWidth, - padding: width / 25, + historyContent: { + width: contentWidth, justifyContent: 'center', - borderRadius: Styling.borderRadius, - borderWidth: 2, - }, - statusWrapper: { - flexDirection: 'row', - justifyContent: 'space-between', + alignItems: 'flex-start', }, statusText: { justifyContent: 'space-between', backgroundColor: 'transparent', - fontFamily: 'SourceSansPro-SemiBold', - fontSize: Styling.fontSize3, + fontFamily: 'SourceSansPro-Regular', + fontSize: Styling.fontSize6, + }, + statusWrapper: { + width, + alignItems: 'center', }, confirmationWrapper: { - flexDirection: 'row', alignItems: 'center', + marginBottom: height / 18, + width: contentWidth, }, bundleWrapper: { flexDirection: 'row', @@ -77,14 +69,16 @@ const styles = StyleSheet.create({ }, timestamp: { backgroundColor: 'transparent', - fontFamily: 'SourceSansPro-SemiBold', + fontFamily: 'SourceSansPro-Regular', fontSize: Styling.fontSize3, + paddingTop: height / 40, }, heading: { backgroundColor: 'transparent', fontFamily: 'SourceSansPro-Bold', fontSize: Styling.fontSize2, paddingTop: height / 50, + paddingBottom: height / 200, }, text: { backgroundColor: 'transparent', @@ -111,6 +105,7 @@ const styles = StyleSheet.create({ buttonContainer: { flex: 1, alignItems: 'center', + width: contentWidth, justifyContent: 'flex-end', marginTop: height / 40, height: height / 14, @@ -167,9 +162,8 @@ export default class HistoryModalContent extends PureComponent { titleColor: PropTypes.string.isRequired, defaultTextColor: PropTypes.shape({ color: PropTypes.string.isRequired }).isRequired, backgroundColor: PropTypes.string.isRequired, - borderColor: PropTypes.shape({ borderColor: PropTypes.string.isRequired }).isRequired, }).isRequired, - /** Determines whether bundle is currently being promoted */ + /** Determines whether the current bundle is being promoted */ bundleIsBeingPromoted: PropTypes.bool.isRequired, /* eslint-disable react/no-unused-prop-types */ /** Checks if the bundle hash belongs to a failed transaction @@ -189,7 +183,8 @@ export default class HistoryModalContent extends PureComponent { constructor(props) { super(props); this.state = { - scrollable: false, + addressesScrollable: false, + messagesScrollable: false, }; } @@ -197,11 +192,18 @@ export default class HistoryModalContent extends PureComponent { leaveNavigationBreadcrumb('HistoryModalContent'); } - setScrollable(y, retryButtonIsDisplayed) { - if (retryButtonIsDisplayed ? y >= height / 2 : y >= height / 2.3) { - return this.setState({ scrollable: true }); + setAddressesScrollable(y) { + if (y >= height / 5.3) { + return this.setState({ addressesScrollable: true }); + } + this.setState({ addressesScrollable: false }); + } + + setMessagesScrollable(y) { + if (y >= height / 7.2) { + return this.setState({ messagesScrollable: true }); } - this.setState({ scrollable: false }); + this.setState({ messagesScrollable: false }); } copy(item, type) { @@ -256,30 +258,19 @@ export default class HistoryModalContent extends PureComponent { } renderButton(buttonProps) { - const { disableWhen, style, bundle, t, promote } = this.props; + const { disableWhen, t, hideModal, bundleIsBeingPromoted, isRetryingFailedTransaction } = this.props; const opacity = { opacity: disableWhen ? (isAndroid ? 0.3 : 0.2) : 1 }; - const defaultProps = { - ctaColor: style.primaryColor, - secondaryCtaColor: style.primaryBody, - ctaWidth: width / 2.75, - ctaHeight: height / 15, - fontSize: Styling.fontSize3, - text: disableWhen ? t('history:promotingAnotherBundle') : t('retry'), - onPress: () => { - if (!disableWhen) { - promote(bundle); - } + onRightButtonPress: () => { + hideModal(); }, + leftButtonStyle: { children: opacity }, + leftButtonText: t('global:retry').toUpperCase(), + rightButtonText: t('global:done').toUpperCase(), + isLeftButtonLoading: bundleIsBeingPromoted || isRetryingFailedTransaction, }; - const props = assign({}, defaultProps, buttonProps); - - return ( - - - - ); + return ; } render() { @@ -297,100 +288,103 @@ export default class HistoryModalContent extends PureComponent { mode, disableWhen, retryFailedTransaction, - isRetryingFailedTransaction, - bundleIsBeingPromoted, + promote, isFailedTransaction, + bundleIsBeingPromoted, } = this.props; - const { scrollable } = this.state; + const { addressesScrollable, messagesScrollable } = this.state; const isFailed = isFailedTransaction(bundle); - const retryButtonIsDisplayed = !persistence || isFailed; return ( - hideModal()}> - - - - - - - - {status} {fullValue} {unit} - - - - {formatModalTime(locale, timezone, convertUnixTimeToJSDate(time))} - - - - {t('bundleHash')}: - - this.copy(bundle, 'bundle')} - style={styles.bundleInnerWrapper} - > - - {bundle} - - - - - {mode === 'Advanced' && ( - - - {t('addresses')}: - - - this.setScrollable(y, retryButtonIsDisplayed) - } - > - {this.renderAddresses()} - - - )} - {t('send:message')}: - this.copy(message, 'message')}> - {message} - - {(!persistence && - !isFailed && ( - - {(!bundleIsBeingPromoted && - this.renderButton({ ctaWidth: width / 1.3 })) || ( - - - - )} - - )) || - (isFailed && ( - - {(!isRetryingFailedTransaction && - this.renderButton({ - ctaWidth: width / 1.3, - onPress: () => { - if (!disableWhen) { - retryFailedTransaction(bundle); - } - }, - })) || ( - - - - )} - - ))} - - + + + + + + + {status.toUpperCase() + ' ' + fullValue + ' ' + unit} + + + {formatModalTime(locale, timezone, convertUnixTimeToJSDate(time))} + + + {t('bundleHash')}: + + this.copy(bundle, 'bundle')} + style={styles.bundleInnerWrapper} + > + + {bundle} + + + + + {mode === 'Advanced' && ( + + {t('addresses')}: + this.setAddressesScrollable(y)} + > + {this.renderAddresses()} + + + )} + {t('send:message')}: + this.setMessagesScrollable(y)} + > + + this.copy(message, 'message')}> + {message} + + + + {(!persistence && + !isFailed && + this.renderButton({ + onLeftButtonPress: () => { + if (!disableWhen) { + return promote(bundle); + } + if (!bundleIsBeingPromoted) { + this.props.generateAlert( + 'error', + t('history:promotingAnotherBundle'), + t('history:pleaseWait'), + ); + } + }, + })) || + (isFailed && + this.renderButton({ + onLeftButtonPress: () => { + if (!disableWhen) { + return retryFailedTransaction(bundle); + } + this.props.generateAlert( + 'error', + t('history:promotingAnotherBundle'), + t('history:pleaseWait'), + ); + }, + })) || } - + ); } } diff --git a/src/mobile/src/ui/components/ModalComponent.js b/src/mobile/src/ui/components/ModalComponent.js index 0c8234f0d5..d5e7475580 100644 --- a/src/mobile/src/ui/components/ModalComponent.js +++ b/src/mobile/src/ui/components/ModalComponent.js @@ -1,6 +1,6 @@ import React, { PureComponent } from 'react'; import PropTypes from 'prop-types'; -import { View, StyleSheet } from 'react-native'; +import { View, StyleSheet, Easing } from 'react-native'; import Modal from 'react-native-modal'; import { connect } from 'react-redux'; import { toggleModalActivity } from 'shared-modules/actions/ui'; @@ -53,6 +53,36 @@ const MODAL_CONTENT = { checksum: Checksum, }; +const fadeInUpCustom = { + from: { + opacity: 0.4, + scale: 0.9, + translateY: 250, + }, + to: { + opacity: 1, + scale: 1, + translateY: 0, + }, + easing: Easing.exp(), + duration: 250, +}; + +const fadeOutDownCustom = { + from: { + opacity: 1, + scale: 1, + translateY: 0, + }, + to: { + opacity: 0, + scale: 0.9, + translateY: 100, + }, + easing: Easing.exp(), + duration: 100, +}; + /** HOC to render modal component. Trigger opening/closing and content change by dispatching toggleModalActivity action. * Wrap root views with this component (e.g. LanguageSetup, Login, Home). */ @@ -79,8 +109,8 @@ export default function withSafeAreaView(WrappedComponent) { {isIPhoneFailingSafeAreaView && ( )} @@ -60,6 +62,7 @@ export default function withSafeAreaView(WrappedComponent) { const mapStateToProps = (state) => ({ theme: state.settings.theme, inactive: state.ui.inactive, + isModalActive: state.ui.isModalActive, }); return hoistNonReactStatics(connect(mapStateToProps)(EnhancedComponent), WrappedComponent); diff --git a/src/mobile/src/ui/components/SingleFooterButton.js b/src/mobile/src/ui/components/SingleFooterButton.js index 8c19257bca..ec225bffdd 100644 --- a/src/mobile/src/ui/components/SingleFooterButton.js +++ b/src/mobile/src/ui/components/SingleFooterButton.js @@ -40,7 +40,7 @@ class SingleFooterButton extends PureComponent { const { buttonText, onButtonPress, buttonTestID, buttonStyle, theme: { primary } } = this.props; return ( - + + + + + + + )} + - )} - {!isIPhone11 && } - - + + {/* FIXME Temporarily disable paper wallet on Android */} {!isAndroid && ( - - + + + + + )} - {t('leastSecure')} + + {t('leastSecure')} + - this.onBackPress()} - onRightButtonPress={() => this.onDonePress()} - leftButtonText={t('global:goBack')} - rightButtonText={t('iHavesavedMySeed')} - /> + + this.onBackPress()} + onRightButtonPress={() => this.onDonePress()} + leftButtonText={t('global:goBack')} + rightButtonText={t('iHavesavedMySeed')} + /> + ); diff --git a/src/mobile/src/ui/views/onboarding/SeedReentry.js b/src/mobile/src/ui/views/onboarding/SeedReentry.js index 5f395275e4..90fea68e92 100644 --- a/src/mobile/src/ui/views/onboarding/SeedReentry.js +++ b/src/mobile/src/ui/views/onboarding/SeedReentry.js @@ -4,7 +4,7 @@ import { withNamespaces } from 'react-i18next'; import { Keyboard, StyleSheet, View, Text, TouchableWithoutFeedback } from 'react-native'; import { connect } from 'react-redux'; import { MAX_SEED_LENGTH, VALID_SEED_REGEX } from 'shared-modules/libs/iota/utils'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { generateAlert } from 'shared-modules/actions/alerts'; import { toggleModalActivity } from 'shared-modules/actions/ui'; import FlagSecure from 'react-native-flag-secure-android'; @@ -14,6 +14,7 @@ import CustomTextInput from 'ui/components/CustomTextInput'; import { Styling } from 'ui/theme/general'; import InfoBox from 'ui/components/InfoBox'; import DualFooterButtons from 'ui/components/DualFooterButtons'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import SeedVaultImport from 'ui/components/SeedVaultImportComponent'; import { Icon } from 'ui/theme/icons'; import Header from 'ui/components/Header'; @@ -43,6 +44,10 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'flex-end', }, + header: { + flex: 1, + alignItems: 'center', + }, infoTextBottom: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, @@ -105,33 +110,28 @@ class SeedReentry extends Component { if (isAndroid) { FlagSecure.deactivate(); } - Navigation.push('appStack', { - component: { - name: 'setAccountName', - options: { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.push('setAccountName', { + animations: { + push: { + enable: false, + }, + pop: { + enable: false, }, }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, + }, }); this.setState({ seed: '' }); } else if (this.state.seed.length === MAX_SEED_LENGTH && this.state.seed.match(VALID_SEED_REGEX)) { @@ -150,7 +150,7 @@ class SeedReentry extends Component { * @method onBackPress */ onBackPress() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } /** @@ -215,66 +215,97 @@ class SeedReentry extends Component { - - -
{t('pleaseConfirmYourSeed')}
+ + + +
{t('pleaseConfirmYourSeed')}
+
- - { - if (text.match(VALID_SEED_REGEX) || text.length === 0) { - this.setState({ seed: text.toUpperCase() }); - } - }} - containerStyle={{ width: Styling.contentWidth }} - maxLength={MAX_SEED_LENGTH} - autoCapitalize="characters" - autoCorrect={false} - enablesReturnKeyAutomatically - returnKeyType="done" - onSubmitEditing={() => this.onDonePress()} - theme={theme} - value={seed} - widget="qr" - onQRPress={() => this.onQRPress()} - seed={seed} - /> - {!isIPhone11 && ( - this.showModal('passwordValidation')} - onSeedImport={(seed) => { - this.setState({ seed }); - this.props.toggleModalActivity(); - }} - onRef={(ref) => { - this.SeedVaultImport = ref; + + + { + if (text.match(VALID_SEED_REGEX) || text.length === 0) { + this.setState({ seed: text.toUpperCase() }); + } }} + containerStyle={{ width: Styling.contentWidth }} + maxLength={MAX_SEED_LENGTH} + autoCapitalize="characters" + autoCorrect={false} + enablesReturnKeyAutomatically + returnKeyType="done" + onSubmitEditing={() => this.onDonePress()} + theme={theme} + value={seed} + widget="qr" + onQRPress={() => this.onQRPress()} + seed={seed} /> + + {!isIPhone11 && ( + + this.showModal('passwordValidation')} + onSeedImport={(seed) => { + this.setState({ seed }); + this.props.toggleModalActivity(); + }} + onRef={(ref) => { + this.SeedVaultImport = ref; + }} + /> + )} - - - {t('ifYouHaveNotSaved')} - - - {t('trinityWillNeverAskToReenter')} - - - } - /> - + + + + {t('ifYouHaveNotSaved')} + + + {t('trinityWillNeverAskToReenter')} + + + } + /> + + - this.onBackPress()} - onRightButtonPress={() => this.onDonePress()} - leftButtonText={t(':goBack')} - rightButtonText={t('global:done')} - /> + + this.onBackPress()} + onRightButtonPress={() => this.onDonePress()} + leftButtonText={t(':goBack')} + rightButtonText={t('global:done')} + /> +
diff --git a/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js b/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js index ad8ccf4068..7c2c1af9b2 100644 --- a/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js +++ b/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js @@ -1,11 +1,12 @@ import React, { Component } from 'react'; import { withNamespaces } from 'react-i18next'; import { StyleSheet, View, Keyboard, TouchableWithoutFeedback, KeyboardAvoidingView } from 'react-native'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { connect } from 'react-redux'; import PropTypes from 'prop-types'; import { width, height } from 'libs/dimensions'; import DualFooterButtons from 'ui/components/DualFooterButtons'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { Icon } from 'ui/theme/icons'; import Header from 'ui/components/Header'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -34,6 +35,10 @@ const styles = StyleSheet.create({ flex: 1, justifyContent: 'flex-end', }, + header: { + flex: 1, + alignItems: 'center', + }, }); /** Seed Vault Backup component */ @@ -82,7 +87,7 @@ class SeedVaultBackup extends Component { * @method goBack */ goBack() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } render() { @@ -94,34 +99,51 @@ class SeedVaultBackup extends Component { - - -
{t('exportSeedVault')}
+ + + +
{t('exportSeedVault')}
+
- this.setState({ step })} - goBack={() => this.goBack()} - onRef={(ref) => { - this.SeedVaultExportComponent = ref; - }} - isAuthenticated - seed={seed} - setSeed={(seed) => this.setState({ seed })} - /> + + this.setState({ step })} + goBack={() => this.goBack()} + onRef={(ref) => { + this.SeedVaultExportComponent = ref; + }} + isAuthenticated + seed={seed} + setSeed={(seed) => this.setState({ seed })} + /> + - this.SeedVaultExportComponent.onBackPress()} - onRightButtonPress={() => this.onRightButtonPress()} - leftButtonText={t('global:back')} - rightButtonText={ - step === 'isExporting' && !isAndroid - ? t('global:export') - : step === 'isSelectingSaveMethodAndroid' ? t('global:done') : t('global:next') - } - /> + + this.SeedVaultExportComponent.onBackPress()} + onRightButtonPress={() => this.onRightButtonPress()} + leftButtonText={t('global:back')} + rightButtonText={ + step === 'isExporting' && !isAndroid + ? t('global:export') + : step === 'isSelectingSaveMethodAndroid' + ? t('global:done') + : t('global:next') + } + /> +
diff --git a/src/mobile/src/ui/views/onboarding/SetAccountName.js b/src/mobile/src/ui/views/onboarding/SetAccountName.js index 8416ebf3b4..da12cd5b14 100644 --- a/src/mobile/src/ui/views/onboarding/SetAccountName.js +++ b/src/mobile/src/ui/views/onboarding/SetAccountName.js @@ -4,7 +4,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { withNamespaces } from 'react-i18next'; import { Keyboard, StyleSheet, View, Text, TouchableWithoutFeedback, Clipboard } from 'react-native'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { generateAlert } from 'shared-modules/actions/alerts'; import { setAdditionalAccountInfo } from 'shared-modules/actions/wallet'; import { connect } from 'react-redux'; @@ -13,6 +13,7 @@ import { getAccountNamesFromState } from 'shared-modules/selectors/accounts'; import { VALID_SEED_REGEX } from 'shared-modules/libs/iota/utils'; import CustomTextInput from 'ui/components/CustomTextInput'; import DualFooterButtons from 'ui/components/DualFooterButtons'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { width, height } from 'libs/dimensions'; import SeedStore from 'libs/SeedStore'; import InfoBox from 'ui/components/InfoBox'; @@ -44,6 +45,10 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'flex-end', }, + header: { + flex: 1, + alignItems: 'center', + }, infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, @@ -161,7 +166,7 @@ export class SetAccountName extends Component { * @method onBackPress */ onBackPress() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } /** @@ -171,33 +176,28 @@ export class SetAccountName extends Component { */ navigateTo(screen) { const { theme: { body } } = this.props; - Navigation.push('appStack', { - component: { - name: screen, - options: { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.push(screen, { + animations: { + push: { + enable: false, + }, + pop: { + enable: false, }, }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, + }, }); } @@ -211,45 +211,66 @@ export class SetAccountName extends Component { - - -
{t('letsAddName')}
+ + + +
{t('letsAddName')}
+
- this.setState({ accountName: text })} - containerStyle={{ width: Styling.contentWidth }} - autoCapitalize="words" - autoCorrect={false} - enablesReturnKeyAutomatically - returnKeyType="done" - onSubmitEditing={() => this.onDonePress()} - theme={theme} - value={accountName} - /> + + this.setState({ accountName: text })} + containerStyle={{ width: Styling.contentWidth }} + autoCapitalize="words" + autoCorrect={false} + enablesReturnKeyAutomatically + returnKeyType="done" + onSubmitEditing={() => this.onDonePress()} + theme={theme} + value={accountName} + /> + - - {t('canUseMultipleSeeds')} - {t('youCanAdd')} - - } - /> + + + {t('canUseMultipleSeeds')} + {t('youCanAdd')} + + } + /> + - this.onBackPress()} - onRightButtonPress={() => this.onDonePress()} - leftButtonText={t('global:goBack')} - rightButtonText={t('global:done')} - leftButtonTestID="setSeedName-back" - rightButtonTestID="setSeedName-done" - /> + + this.onBackPress()} + onRightButtonPress={() => this.onDonePress()} + leftButtonText={t('global:goBack')} + rightButtonText={t('global:done')} + leftButtonTestID="setSeedName-back" + rightButtonTestID="setSeedName-done" + /> +
diff --git a/src/mobile/src/ui/views/onboarding/SetPassword.js b/src/mobile/src/ui/views/onboarding/SetPassword.js index dc2752aa11..91d2541cce 100644 --- a/src/mobile/src/ui/views/onboarding/SetPassword.js +++ b/src/mobile/src/ui/views/onboarding/SetPassword.js @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { withNamespaces } from 'react-i18next'; import { StyleSheet, View, Text, TouchableWithoutFeedback, Keyboard } from 'react-native'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { connect } from 'react-redux'; import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; import { setOnboardingComplete } from 'shared-modules/actions/accounts'; @@ -12,6 +12,7 @@ import SeedStore from 'libs/SeedStore'; import { storeSaltInKeychain } from 'libs/keychain'; import { generatePasswordHash, getSalt } from 'libs/crypto'; import DualFooterButtons from 'ui/components/DualFooterButtons'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { width, height } from 'libs/dimensions'; import InfoBox from 'ui/components/InfoBox'; import { Icon } from 'ui/theme/icons'; @@ -46,6 +47,10 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'flex-end', }, + header: { + flex: 1, + alignItems: 'center', + }, infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, @@ -144,38 +149,33 @@ class SetPassword extends Component { * @method onBackPress */ onBackPress() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } navigateToOnboardingComplete() { const { theme: { body } } = this.props; - Navigation.push('appStack', { - component: { - name: 'onboardingComplete', - options: { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.push('onboardingComplete', { + animations: { + push: { + enable: false, + }, + pop: { + enable: false, }, }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, + }, }); } @@ -193,44 +193,65 @@ class SetPassword extends Component { - - -
{t('choosePassword')}
+ + + +
{t('choosePassword')}
+
- - - {t('anEncryptedCopy')} - - - {t('changePassword:ensureStrongPassword')} - - - } - /> + + + + {t('anEncryptedCopy')} + + + {t('changePassword:ensureStrongPassword')} + +
+ } + /> + - { - this.passwordFields = ref; - }} - onAcceptPassword={() => this.onAcceptPassword()} - password={password} - reentry={reentry} - setPassword={(password) => this.setState({ password })} - setReentry={(reentry) => this.setState({ reentry })} - /> + + { + this.passwordFields = ref; + }} + onAcceptPassword={() => this.onAcceptPassword()} + password={password} + reentry={reentry} + setPassword={(password) => this.setState({ password })} + setReentry={(reentry) => this.setState({ reentry })} + /> + - this.onBackPress()} - onRightButtonPress={() => this.onDonePress()} - leftButtonText={t('global:goBack')} - rightButtonText={t('global:done')} - /> + + this.onBackPress()} + onRightButtonPress={() => this.onDonePress()} + leftButtonText={t('global:goBack')} + rightButtonText={t('global:done')} + /> +
diff --git a/src/mobile/src/ui/views/onboarding/TermsAndConditions.js b/src/mobile/src/ui/views/onboarding/TermsAndConditions.js index 93aed0d8ac..71bac5deca 100644 --- a/src/mobile/src/ui/views/onboarding/TermsAndConditions.js +++ b/src/mobile/src/ui/views/onboarding/TermsAndConditions.js @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import { StyleSheet, View, Text, ScrollView } from 'react-native'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import PropTypes from 'prop-types'; import Markdown from 'react-native-markdown-renderer'; import { @@ -13,6 +13,7 @@ import { connect } from 'react-redux'; import { withNamespaces } from 'react-i18next'; import { acceptTerms } from 'shared-modules/actions/settings'; import SingleFooterButton from 'ui/components/SingleFooterButton'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { Styling } from 'ui/theme/general'; import { width, height } from 'libs/dimensions'; import i18next from 'shared-modules/libs/i18next'; @@ -43,6 +44,7 @@ const styles = StyleSheet.create({ width, paddingHorizontal: width / 20, paddingVertical: height / 75, + height: height - height / 8, }, }); @@ -90,34 +92,29 @@ class TermsAndConditions extends Component { * @method onNextPress */ onNextPress() { - const { theme: { bar } } = this.props; + const { theme: { body, bar } } = this.props; this.props.acceptTerms(); - Navigation.push('appStack', { - component: { - name: 'privacyPolicy', - options: { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, - }, - layout: { - backgroundColor: 'white', - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: bar.bg, - }, + navigator.push('privacyPolicy', { + animations: { + push: { + enable: false, }, + pop: { + enable: false, + }, + }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: bar.bg, }, }); } @@ -128,37 +125,50 @@ class TermsAndConditions extends Component { return ( - + {t('termsAndConditions')} - - { - let paddingToBottom = height / 35; - paddingToBottom += e.nativeEvent.layoutMeasurement.height; + + + { + let paddingToBottom = height / 35; + paddingToBottom += e.nativeEvent.layoutMeasurement.height; - if (e.nativeEvent.contentOffset.y >= e.nativeEvent.contentSize.height - paddingToBottom) { - if (!this.state.hasReadTerms) { - this.setState({ hasReadTerms: true }); + if (e.nativeEvent.contentOffset.y >= e.nativeEvent.contentSize.height - paddingToBottom) { + if (!this.state.hasReadTerms) { + this.setState({ hasReadTerms: true }); + } } - } - }} - scrollEventThrottle={400} - style={styles.scrollView} - > - - {TermsAndConditions.getTermsAndConditions()} - - + }} + scrollEventThrottle={400} + style={styles.scrollView} + > + + {TermsAndConditions.getTermsAndConditions()} + + + {this.state.hasReadTerms && ( - this.onNextPress()} - buttonStyle={{ - wrapper: { backgroundColor: primary.color }, - children: { color: primary.body }, - }} - buttonText={t('accept')} - /> + + this.onNextPress()} + buttonStyle={{ + wrapper: { backgroundColor: primary.color }, + children: { color: primary.body }, + }} + buttonText={t('accept')} + /> + )} diff --git a/src/mobile/src/ui/views/onboarding/WalletSetup.js b/src/mobile/src/ui/views/onboarding/WalletSetup.js index c13a74a83f..2565af76ea 100644 --- a/src/mobile/src/ui/views/onboarding/WalletSetup.js +++ b/src/mobile/src/ui/views/onboarding/WalletSetup.js @@ -3,7 +3,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { withNamespaces, Trans } from 'react-i18next'; import { StyleSheet, View, Text } from 'react-native'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { connect } from 'react-redux'; import { MAX_SEED_LENGTH } from 'shared-modules/libs/iota/utils'; import RNExitApp from 'react-native-exit-app'; @@ -16,6 +16,7 @@ import { Icon } from 'ui/theme/icons'; import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; import Header from 'ui/components/Header'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; import { doAttestationFromSafetyNet } from 'libs/safetynet'; import { isAndroid } from 'libs/device'; @@ -41,6 +42,10 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'flex-end', }, + header: { + flex: 1, + alignItems: 'center', + }, infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, @@ -94,74 +99,33 @@ class WalletSetup extends Component { } /** - * Navigates to enter seed screen - * @method redirectToEnterSeedScreen + * Navigates to chosen screen + * @method redirectToScreen */ - redirectToEnterSeedScreen() { + redirectToScreen(screen) { const { theme: { body } } = this.props; - Navigation.push('appStack', { - component: { - name: 'enterSeed', - options: { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.push(screen, { + animations: { + push: { + enable: false, }, - }, - }); - } - - /** - * Navigates to new seed setup screen - * @method redirectToNewSeedSetupScreen - */ - redirectToNewSeedSetupScreen() { - const { theme: { body } } = this.props; - Navigation.push('appStack', { - component: { - name: 'newSeedSetup', - options: { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + pop: { + enable: false, }, }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, + }, }); } @@ -241,47 +205,68 @@ class WalletSetup extends Component { return ( - - -
{t('welcome:thankYou')}
+ + + +
{t('welcome:thankYou')}
+
- - {t('doYouNeedASeed')} - + + + {t('doYouNeedASeed')} + + - - - {t('seedExplanation', { maxLength: MAX_SEED_LENGTH })} - - + + - - You can use it to access your funds from - - any wallet - , on - any device. + {t('seedExplanation', { maxLength: MAX_SEED_LENGTH })} - - {t('loseSeed')} - - } - /> + + + + You can use it to access your funds from + + any wallet + , on + any device. + + + {t('loseSeed')} + + } + /> + - this.redirectToEnterSeedScreen()} - onRightButtonPress={() => this.redirectToNewSeedSetupScreen()} - leftButtonText={t('noIHaveOne')} - rightButtonText={t('yesINeedASeed')} - leftButtonTestID="walletSetup-no" - rightButtonTestID="walletSetup-yes" - /> + + this.redirectToScreen('enterSeed')} + onRightButtonPress={() => this.redirectToScreen('newSeedSetup')} + leftButtonText={t('noIHaveOne')} + rightButtonText={t('yesINeedASeed')} + leftButtonTestID="walletSetup-no" + rightButtonTestID="walletSetup-yes" + /> +
); diff --git a/src/mobile/src/ui/views/onboarding/WriteSeedDown.js b/src/mobile/src/ui/views/onboarding/WriteSeedDown.js index c805161a6d..0c8c77239d 100644 --- a/src/mobile/src/ui/views/onboarding/WriteSeedDown.js +++ b/src/mobile/src/ui/views/onboarding/WriteSeedDown.js @@ -2,6 +2,7 @@ import React, { Component } from 'react'; import { withNamespaces, Trans } from 'react-i18next'; import { StyleSheet, View, Text } from 'react-native'; import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { connect } from 'react-redux'; import PropTypes from 'prop-types'; import FlagSecure from 'react-native-flag-secure-android'; @@ -11,6 +12,7 @@ import { toggleModalActivity } from 'shared-modules/actions/ui'; import SeedPicker from 'ui/components/SeedPicker'; import WithUserActivity from 'ui/components/UserActivity'; import DualFooterButtons from 'ui/components/DualFooterButtons'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; import { Icon } from 'ui/theme/icons'; @@ -40,6 +42,10 @@ const styles = StyleSheet.create({ flex: 0.5, justifyContent: 'flex-end', }, + header: { + flex: 1, + alignItems: 'center', + }, textContainer: { width: Styling.contentWidth5, alignItems: 'center', @@ -50,6 +56,7 @@ const styles = StyleSheet.create({ fontSize: Styling.fontSize3, textAlign: 'center', backgroundColor: 'transparent', + width: Styling.contentWidth, }, infoTextNormal: { fontFamily: 'SourceSansPro-Light', @@ -117,7 +124,7 @@ class WriteSeedDown extends Component { * @method onDonePress */ onDonePress() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } /** @@ -198,44 +205,71 @@ class WriteSeedDown extends Component { {!minimised && ( - - -
{t('saveYourSeed:writeYourSeedDown')}
+ + + +
{t('saveYourSeed:writeYourSeedDown')}
+
- - - - - Write down your seed and checksum and{' '} - - triple check - that they are correct. - - - + + + + + + Write down your seed and checksum and{' '} + + triple check + that they are correct. + + + + - { - if (index === 8) { - this.setState({ isCopyComplete: true }); - } - }} - /> + + { + if (index === 8) { + this.setState({ isCopyComplete: true }); + } + }} + /> + - + + + - this.onPrintPress()} - onRightButtonPress={() => (isCopyComplete ? this.onDonePress() : null)} - leftButtonText={t('saveYourSeed:printBlankWallet')} - rightButtonText={isCopyComplete ? t('global:done') : t('scrollToBottom')} - rightButtonStyle={{ wrapper: { opacity: isCopyComplete ? 1 : 0.2 } }} - /> + + this.onPrintPress()} + onRightButtonPress={() => (isCopyComplete ? this.onDonePress() : null)} + leftButtonText={t('saveYourSeed:printBlankWallet')} + rightButtonText={isCopyComplete ? t('global:done') : t('scrollToBottom')} + rightButtonStyle={{ wrapper: { opacity: isCopyComplete ? 1 : 0.2 } }} + /> + )} diff --git a/src/mobile/src/ui/views/wallet/Disable2FA.js b/src/mobile/src/ui/views/wallet/Disable2FA.js index 1b4b67c227..24ecea202f 100644 --- a/src/mobile/src/ui/views/wallet/Disable2FA.js +++ b/src/mobile/src/ui/views/wallet/Disable2FA.js @@ -4,7 +4,7 @@ import { connect } from 'react-redux'; import PropTypes from 'prop-types'; import authenticator from 'authenticator'; import { StyleSheet, View, Text, TouchableWithoutFeedback, Keyboard } from 'react-native'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { resetWallet, set2FAStatus } from 'shared-modules/actions/settings'; import { generateAlert } from 'shared-modules/actions/alerts'; import { getTwoFactorAuthKeyFromKeychain } from 'libs/keychain'; @@ -12,6 +12,7 @@ import WithBackPressGoToHome from 'ui/components/BackPressGoToHome'; import Fonts from 'ui/theme/fonts'; import CustomTextInput from 'ui/components/CustomTextInput'; import DualFooterButtons from 'ui/components/DualFooterButtons'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { width, height } from 'libs/dimensions'; import { Icon } from 'ui/theme/icons'; import { Styling } from 'ui/theme/general'; @@ -107,7 +108,7 @@ class Disable2FA extends Component { * @method goBack */ goBack() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } render() { @@ -120,30 +121,50 @@ class Disable2FA extends Component { - + + + - Enter your token to disable 2FA - this.setState({ token })} - containerStyle={{ width: Styling.contentWidth }} - autoCapitalize="none" - autoCorrect={false} - enablesReturnKeyAutomatically - returnKeyType="done" - value={this.state.token} - keyboardType="numeric" - theme={theme} - /> + + Enter your token to disable 2FA + + + this.setState({ token })} + containerStyle={{ width: Styling.contentWidth }} + autoCapitalize="none" + autoCorrect={false} + enablesReturnKeyAutomatically + returnKeyType="done" + value={this.state.token} + keyboardType="numeric" + theme={theme} + /> + - + + + diff --git a/src/mobile/src/ui/views/wallet/FingerprintSetup.js b/src/mobile/src/ui/views/wallet/FingerprintSetup.js index b586abe714..7a44f02a79 100644 --- a/src/mobile/src/ui/views/wallet/FingerprintSetup.js +++ b/src/mobile/src/ui/views/wallet/FingerprintSetup.js @@ -1,7 +1,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { StyleSheet, View, Text, TouchableOpacity, Alert } from 'react-native'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { setFingerprintStatus } from 'shared-modules/actions/settings'; import { toggleModalActivity } from 'shared-modules/actions/ui'; import { generateAlert } from 'shared-modules/actions/alerts'; @@ -14,6 +14,7 @@ import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; import { Icon } from 'ui/theme/icons'; import SingleFooterButton from 'ui/components/SingleFooterButton'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { isAndroid, isIPhoneX } from 'libs/device'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -53,6 +54,7 @@ const styles = StyleSheet.create({ fontSize: Styling.fontSize4, textAlign: 'center', backgroundColor: 'transparent', + width: width / 1.2, }, button: { width: width / 1.65, @@ -202,7 +204,7 @@ class FingerprintEnable extends Component { } navigateToHome() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } hideModal() { @@ -219,29 +221,49 @@ class FingerprintEnable extends Component { return ( - + + + - {instructions} + + {instructions} + - - - {authenticationStatus} - + + + {authenticationStatus} + + - this.navigateToHome()} - buttonStyle={{ - wrapper: { backgroundColor: theme.primary.color }, - children: { color: theme.primary.body }, - }} - buttonText={t('global:done')} - /> + + this.navigateToHome()} + buttonStyle={{ + wrapper: { backgroundColor: theme.primary.color }, + children: { color: theme.primary.body }, + }} + buttonText={t('global:done')} + /> + ); diff --git a/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js b/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js index 23b82f3707..de5627eda4 100644 --- a/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js +++ b/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js @@ -4,13 +4,14 @@ import authenticator from 'authenticator'; import { generateAlert } from 'shared-modules/actions/alerts'; import { connect } from 'react-redux'; import QRCode from 'react-native-qrcode-svg'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { Clipboard, StyleSheet, View, Text, TouchableOpacity } from 'react-native'; import { withNamespaces } from 'react-i18next'; import WithBackPressGoToHome from 'ui/components/BackPressGoToHome'; import { storeTwoFactorAuthKeyInKeychain } from 'libs/keychain'; import Fonts from 'ui/theme/fonts'; import DualFooterButtons from 'ui/components/DualFooterButtons'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { Styling } from 'ui/theme/general'; import { width, height } from 'libs/dimensions'; import { Icon } from 'ui/theme/icons'; @@ -62,6 +63,7 @@ const styles = StyleSheet.create({ borderRadius: Styling.borderRadiusLarge, padding: width / 30, marginBottom: height / 25, + alignItems: 'center', }, }); @@ -114,7 +116,7 @@ export class TwoFactorSetupAddKey extends Component { * @method goBack */ goBack() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } /** @@ -124,35 +126,29 @@ export class TwoFactorSetupAddKey extends Component { navigateToEnterToken() { Clipboard.setString(' '); const { t, theme: { body }, password } = this.props; - return storeTwoFactorAuthKeyInKeychain(password, this.state.authKey) .then(() => { - Navigation.push('appStack', { - component: { - name: 'twoFactorSetupEnterToken', - options: { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.push('twoFactorSetupEnterToken', { + animations: { + push: { + enable: false, }, + pop: { + enable: false, + }, + }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, }, }); }) @@ -173,34 +169,60 @@ export class TwoFactorSetupAddKey extends Component { return ( - + + + - {t('addKey')} - - - - this.onKeyPress(this.state.authKey)}> - - {t('key')} - : - {this.state.authKey} - - + + {t('addKey')} + + + + + + + + this.onKeyPress(this.state.authKey)}> + + {t('key')} + : + {this.state.authKey} + + + - + + + ); diff --git a/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js b/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js index 493faa0fa4..e23fa7807c 100644 --- a/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js +++ b/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js @@ -4,13 +4,14 @@ import authenticator from 'authenticator'; import { set2FAStatus } from 'shared-modules/actions/settings'; import { generateAlert } from 'shared-modules/actions/alerts'; import { connect } from 'react-redux'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { StyleSheet, View, Text, TouchableWithoutFeedback, Keyboard, BackHandler } from 'react-native'; import { withNamespaces } from 'react-i18next'; import CustomTextInput from 'ui/components/CustomTextInput'; import Fonts from 'ui/theme/fonts'; import { getTwoFactorAuthKeyFromKeychain } from 'libs/keychain'; import DualFooterButtons from 'ui/components/DualFooterButtons'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { width, height } from 'libs/dimensions'; import { Icon } from 'ui/theme/icons'; import { Styling } from 'ui/theme/general'; @@ -67,10 +68,8 @@ class TwoFactorSetupEnterToken extends Component { constructor() { super(); - this.goBack = this.goBack.bind(this); this.check2FA = this.check2FA.bind(this); - this.state = { code: '', }; @@ -93,7 +92,7 @@ class TwoFactorSetupEnterToken extends Component { * @method goBack */ goBack() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } /** @@ -102,30 +101,25 @@ class TwoFactorSetupEnterToken extends Component { */ navigateToHome() { const { theme: { body, bar } } = this.props; - Navigation.setStackRoot('appStack', { - component: { - name: 'home', - options: { - animations: { - setStackRoot: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: bar.alt, - }, + navigator.setStackRoot('home', { + animations: { + setStackRoot: { + enable: false, }, }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: bar.alt, + }, }); } @@ -167,31 +161,51 @@ class TwoFactorSetupEnterToken extends Component { - + + + - {t('enterCode')} - this.setState({ code })} - containerStyle={{ width: Styling.contentWidth }} - autoCapitalize="none" - autoCorrect={false} - enablesReturnKeyAutomatically - returnKeyType="done" - onSubmitEditing={this.check2FA} - theme={theme} - keyboardType="numeric" - /> + + {t('enterCode')} + + + this.setState({ code })} + containerStyle={{ width: Styling.contentWidth }} + autoCapitalize="none" + autoCorrect={false} + enablesReturnKeyAutomatically + returnKeyType="done" + onSubmitEditing={this.check2FA} + theme={theme} + keyboardType="numeric" + /> + - + + + diff --git a/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js b/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js index 18ba7f9839..5bd24c005b 100644 --- a/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js +++ b/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js @@ -3,11 +3,12 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { StyleSheet, View, Text } from 'react-native'; import { connect } from 'react-redux'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import WithBackPressGoToHome from 'ui/components/BackPressGoToHome'; import { width, height } from 'libs/dimensions'; import Fonts from 'ui/theme/fonts'; import DualFooterButtons from 'ui/components/DualFooterButtons'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { Icon } from 'ui/theme/icons'; import InfoBox from 'ui/components/InfoBox'; import { Styling } from 'ui/theme/general'; @@ -94,34 +95,28 @@ class WalletResetConfirmation extends Component { */ navigateToPasswordConfirmation() { const { theme: { body } } = this.props; - - Navigation.push('appStack', { - component: { - name: 'walletResetRequirePassword', - options: { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.push('walletResetRequirePassword', { + animations: { + push: { + enable: false, + }, + pop: { + enable: false, }, }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, + }, }); } @@ -130,7 +125,7 @@ class WalletResetConfirmation extends Component { * @method goBack */ goBack() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } render() { @@ -142,35 +137,65 @@ class WalletResetConfirmation extends Component { return ( - + + + - {t('global:continue?')} + + {t('global:continue?')} + - {t('walletResetConfirmation:cannotUndo')} + + + {t('walletResetConfirmation:cannotUndo')} + + - - - All of your wallet data including your - seeds, password, - and - other account information - will be lost. - - - } - /> + + + + + All of your wallet data including your{' '} + + seeds, password, + and + other account information + will be lost. + + + } + /> + - + + + ); diff --git a/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js b/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js index e3a97eb5ca..a75ee5cc87 100644 --- a/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js +++ b/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js @@ -3,11 +3,12 @@ import React, { Component } from 'react'; import { withNamespaces } from 'react-i18next'; import { connect } from 'react-redux'; import PropTypes from 'prop-types'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { resetWallet, setCompletedForcedPasswordUpdate } from 'shared-modules/actions/settings'; import { generateAlert } from 'shared-modules/actions/alerts'; import { StyleSheet, View, Keyboard, TouchableWithoutFeedback, BackHandler } from 'react-native'; import DualFooterButtons from 'ui/components/DualFooterButtons'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { persistConfig } from 'libs/store'; import { purgeStoredState } from 'shared-modules/store'; import { clearKeychain, hash } from 'libs/keychain'; @@ -90,7 +91,7 @@ class WalletResetRequirePassword extends Component { * @method goBack */ goBack() { - Navigation.pop(this.props.componentId); + navigator.pop(this.props.componentId); } /** @@ -109,30 +110,25 @@ class WalletResetRequirePassword extends Component { */ redirectToInitialScreen() { const { theme: { body } } = this.props; - Navigation.setStackRoot('appStack', { - component: { - name: 'languageSetup', - options: { - animations: { - setStackRoot: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.setStackRoot('languageSetup', { + animations: { + setStackRoot: { + enable: false, }, }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, + }, }); } @@ -178,30 +174,44 @@ class WalletResetRequirePassword extends Component { - + + + - this.setState({ password })} - value={this.state.password} - containerStyle={{ width: Styling.contentWidth }} - autoCapitalize="none" - autoCorrect={false} - enablesReturnKeyAutomatically - returnKeyType="done" - theme={theme} - secureTextEntry - /> + + this.setState({ password })} + value={this.state.password} + containerStyle={{ width: Styling.contentWidth }} + autoCapitalize="none" + autoCorrect={false} + enablesReturnKeyAutomatically + returnKeyType="done" + theme={theme} + secureTextEntry + /> + - + + + diff --git a/src/shared/__tests__/reducers/ui.spec.js b/src/shared/__tests__/reducers/ui.spec.js index 6cf7e69447..cdf994edb4 100644 --- a/src/shared/__tests__/reducers/ui.spec.js +++ b/src/shared/__tests__/reducers/ui.spec.js @@ -42,7 +42,6 @@ describe('Reducer: ui', () => { isReceiveCardFlipped: false, modalContent: 'snapshotTransitionInfo', modalProps: {}, - currentRoute: 'login', }; expect(reducer(undefined, {})).to.eql(initialState); diff --git a/src/shared/__tests__/reducers/wallet.spec.js b/src/shared/__tests__/reducers/wallet.spec.js index 646ceed133..752330d8d3 100644 --- a/src/shared/__tests__/reducers/wallet.spec.js +++ b/src/shared/__tests__/reducers/wallet.spec.js @@ -20,6 +20,7 @@ describe('Reducer: wallet', () => { hasConnection: true, usedExistingSeed: false, isValidatingAddress: false, + navStack: [], }; expect(reducer(undefined, {})).to.eql(initialState); diff --git a/src/shared/actions/ui.js b/src/shared/actions/ui.js index 76a401ac32..e42e7562fe 100644 --- a/src/shared/actions/ui.js +++ b/src/shared/actions/ui.js @@ -17,7 +17,6 @@ export const ActionTypes = { SET_QR_DENOMINATION: 'IOTA/UI/SET_QR_DENOMINATION', SET_SELECTED_QR_TAB: 'IOTA/UI/SET_SELECTED_QR_TAB', FLIP_RECEIVE_CARD: 'IOTA/UI/FLIP_RECEIVE_CARD', - SET_ROUTE: 'IOTA/UI/SET_ROUTE', }; /** @@ -260,18 +259,3 @@ export const setLoginRoute = (payload) => { payload, }; }; - -/** - * Dispatch to set active route - * - * @method setRoute - * @param {string} payload - * - * @returns {{type: {string}, payload: {string} }} - */ -export const setRoute = (payload) => { - return { - type: ActionTypes.SET_ROUTE, - payload, - }; -}; diff --git a/src/shared/actions/wallet.js b/src/shared/actions/wallet.js index a47c40d275..f91ad6e98d 100644 --- a/src/shared/actions/wallet.js +++ b/src/shared/actions/wallet.js @@ -40,6 +40,9 @@ export const ActionTypes = { SET_DEEP_LINK_INACTIVE: 'IOTA/APP/WALLET/SET_DEEP_LINK_INACTIVE', ADDRESS_VALIDATION_REQUEST: 'IOTA/APP/WALLET/ADDRESS_VALIDATION_REQUEST', ADDRESS_VALIDATION_SUCCESS: 'IOTA/APP/WALLET/ADDRESS_VALIDATION_SUCCESS', + PUSH_ROUTE: 'IOTA/APP/WALLET/PUSH_ROUTE', + POP_ROUTE: 'IOTA/APP/WALLET/POP_ROUTE', + RESET_ROUTE: 'IOTA/APP/WALLET/RESET_ROUTE', }; /** @@ -540,3 +543,46 @@ export const addressValidationRequest = () => ({ export const addressValidationSuccess = () => ({ type: ActionTypes.ADDRESS_VALIDATION_SUCCESS, }); + +/** + * Dispatch to push to navigation stack + * + * @method pushRoute + * @param {string} payload + * + * @returns {{ type: {string}, payload: {string} }} + */ +export const pushRoute = (payload) => { + return { + type: ActionTypes.PUSH_ROUTE, + payload, + }; +}; + +/** + * Dispatch to pop from navigation stack + * + * @method popRoute + * + * @returns {{type: {string}}} + */ +export const popRoute = () => { + return { + type: ActionTypes.POP_ROUTE, + }; +}; + +/** + * Dispatch to set navigation root + * + * @method resetRoute + * @param {string} payload + * + * @returns {{ type: {string}, payload: {string} }} + */ +export const resetRoute = (payload) => { + return { + type: ActionTypes.RESET_ROUTE, + payload, + }; +}; diff --git a/src/shared/reducers/ui.js b/src/shared/reducers/ui.js index fa36b1d9cd..2276ecea13 100644 --- a/src/shared/reducers/ui.js +++ b/src/shared/reducers/ui.js @@ -149,10 +149,6 @@ const initialState = { * Determines if receive card is flipped on receive screen */ isReceiveCardFlipped: false, - /** - * Current navigation route - */ - currentRoute: 'login', }; export default (state = initialState, action) => { @@ -465,11 +461,6 @@ export default (state = initialState, action) => { ...state, isReceiveCardFlipped: !state.isReceiveCardFlipped, }; - case UiActionTypes.SET_ROUTE: - return { - ...state, - currentRoute: action.payload, - }; default: return state; } diff --git a/src/shared/reducers/wallet.js b/src/shared/reducers/wallet.js index a7b028a963..4bf6953f41 100644 --- a/src/shared/reducers/wallet.js +++ b/src/shared/reducers/wallet.js @@ -64,6 +64,10 @@ const initialState = { * Determines if wallet is validating the displayed address */ isValidatingAddress: false, + /** + * Navigation stack + */ + navStack: [], }; export default (state = initialState, action) => { @@ -203,6 +207,21 @@ export default (state = initialState, action) => { ...state, isValidatingAddress: false, }; + case ActionTypes.PUSH_ROUTE: + return { + ...state, + navStack: state.navStack.slice().concat(action.payload), + }; + case ActionTypes.POP_ROUTE: + return { + ...state, + navStack: state.navStack.slice(0, state.navStack.length - 1), + }; + case ActionTypes.RESET_ROUTE: + return { + ...state, + navStack: [action.payload], + }; default: return state; } From 7796811bd88b66abf9fd43673b32c5f5d66778a9 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 12 Nov 2018 18:56:03 +0000 Subject: [PATCH 046/141] Mobile: Fix various bugs --- .../ios/iotaWallet.xcodeproj/project.pbxproj | 22 +++-- .../src/ui/components/AnimatedComponent.js | 1 + .../src/ui/components/CustomTextInput.js | 2 +- .../src/ui/components/DynamicStatusBar.js | 28 +++--- .../src/ui/components/ModalComponent.js | 1 + src/mobile/src/ui/components/SafeAreaView.js | 8 +- .../ui/components/StatefulDropdownAlert.js | 15 +-- src/mobile/src/ui/theme/general.js | 4 +- .../src/ui/views/onboarding/EnterSeed.js | 16 +++- .../src/ui/views/onboarding/LanguageSetup.js | 12 ++- .../src/ui/views/onboarding/PrivacyPolicy.js | 2 +- .../src/ui/views/onboarding/SeedReentry.js | 8 ++ .../ui/views/onboarding/TermsAndConditions.js | 2 +- .../src/ui/views/wallet/AddNewAccount.js | 47 +++++----- .../src/ui/views/wallet/AdvancedSettings.js | 47 +++++----- .../ui/views/wallet/ForceChangePassword.js | 41 ++++----- src/mobile/src/ui/views/wallet/Loading.js | 80 +++++++--------- src/mobile/src/ui/views/wallet/Login.js | 41 ++++----- .../src/ui/views/wallet/MainSettings.js | 41 ++++----- .../src/ui/views/wallet/SecuritySettings.js | 92 +++++++++---------- .../src/ui/views/wallet/UseExistingSeed.js | 41 ++++----- 21 files changed, 261 insertions(+), 290 deletions(-) diff --git a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj index b0d430a47b..ec530dbe85 100644 --- a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj +++ b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj @@ -1544,12 +1544,14 @@ }; 30A16F44D53CE8CFD5085B3A66B82141 = { CreatedOnToolsVersion = 6.2; - ProvisioningStyle = Manual; + DevelopmentTeam = UG77RJKZHH; + ProvisioningStyle = Automatic; TestTargetID = 4848851A00274CA2FFBE307BAEB5F278; }; 4848851A00274CA2FFBE307BAEB5F278 = { + DevelopmentTeam = UG77RJKZHH; LastSwiftMigration = 1010; - ProvisioningStyle = Manual; + ProvisioningStyle = Automatic; SystemCapabilities = { com.apple.BackgroundModes = { enabled = 0; @@ -2789,10 +2791,10 @@ CODE_SIGN_ENTITLEMENTS = iotaWallet/iotaWallet.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 27; DEAD_CODE_STRIPPING = NO; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -2977,8 +2979,8 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEVELOPMENT_TEAM = ""; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -3125,9 +3127,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -3168,9 +3170,9 @@ CODE_SIGN_ENTITLEMENTS = iotaWallet/iotaWallet.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 27; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = UG77RJKZHH; ENABLE_BITCODE = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", diff --git a/src/mobile/src/ui/components/AnimatedComponent.js b/src/mobile/src/ui/components/AnimatedComponent.js index 82fa00a9dd..239e6bf097 100644 --- a/src/mobile/src/ui/components/AnimatedComponent.js +++ b/src/mobile/src/ui/components/AnimatedComponent.js @@ -79,6 +79,7 @@ class AnimatedComponent extends Component { newProps.navStack.length === 1 && last(this.props.navStack) !== last(newProps.navStack) ) { + this.reverseSlideIn = false; this.reverseSlideOut = false; this.iniatialiseAnimations(this.props.animationOutType); this.animateOut(); diff --git a/src/mobile/src/ui/components/CustomTextInput.js b/src/mobile/src/ui/components/CustomTextInput.js index b781dafb76..9e1fc8993f 100644 --- a/src/mobile/src/ui/components/CustomTextInput.js +++ b/src/mobile/src/ui/components/CustomTextInput.js @@ -87,7 +87,7 @@ const styles = StyleSheet.create({ borderBottomRightRadius: width / 60, position: 'absolute', right: width / 100, - bottom: -width / 19, + bottom: -width / 20, }, checksumText: { fontFamily: 'SourceSansPro-Regular', diff --git a/src/mobile/src/ui/components/DynamicStatusBar.js b/src/mobile/src/ui/components/DynamicStatusBar.js index afec399847..61ed2b82e2 100644 --- a/src/mobile/src/ui/components/DynamicStatusBar.js +++ b/src/mobile/src/ui/components/DynamicStatusBar.js @@ -1,8 +1,8 @@ +import last from 'lodash/last'; import React, { Component } from 'react'; import { StatusBar } from 'react-native'; import PropTypes from 'prop-types'; import tinycolor from 'tinycolor2'; -import { Navigation } from 'react-native-navigation'; import { isAndroid } from 'libs/device'; import { rgbToHex } from 'shared-modules/libs/utils'; import timer from 'react-native-timer'; @@ -18,24 +18,18 @@ class DynamicStatusBar extends Component { /** @ignore */ isModalActive: PropTypes.bool.isRequired, /** @ignore */ - currentRoute: PropTypes.string, + navStack: PropTypes.array, }; - componentWillMount() { - Navigation.events().registerComponentDidAppearListener(() => { - this.resetStatusBar(this.props.currentRoute); - }); - } - componentWillReceiveProps(newProps) { - const { isModalActive, currentRoute } = this.props; + const { isModalActive, navStack } = this.props; // Reset StatusBar on modal open/close. Prevents residual status bar colour change when an alert is open during modal activity toggle if (isModalActive !== newProps.isModalActive) { - this.resetStatusBar(currentRoute); - timer.setTimeout('resetStatusBarOnModalActivity', () => this.resetStatusBar(currentRoute), 400); + this.resetStatusBar(last(navStack)); + timer.setTimeout('resetStatusBarOnModalActivity', () => this.resetStatusBar(last(navStack)), 400); } - if (currentRoute !== newProps.currentRoute) { - timer.setTimeout('resetStatusBarOnRouteChange', () => this.resetStatusBar(newProps.currentRoute), 400); + if (last(navStack) !== last(newProps.navStack)) { + timer.setTimeout('resetStatusBarOnRouteChange', () => this.resetStatusBar(last(newProps.navStack)), 400); } } @@ -89,12 +83,12 @@ class DynamicStatusBar extends Component { } render() { - const { currentRoute } = this.props; - const statusBarStyle = this.getStatusBarStyle(this.getStatusBarColor(currentRoute)); + const { navStack } = this.props; + const statusBarStyle = this.getStatusBarStyle(this.getStatusBarColor(last(navStack))); return ( @@ -106,7 +100,7 @@ const mapStateToProps = (state) => ({ inactive: state.ui.inactive, theme: state.settings.theme, isModalActive: state.ui.isModalActive, - currentRoute: state.ui.currentRoute, + navStack: state.wallet.navStack, }); export default connect(mapStateToProps)(DynamicStatusBar); diff --git a/src/mobile/src/ui/components/ModalComponent.js b/src/mobile/src/ui/components/ModalComponent.js index a5914f5397..5e6c2acb91 100644 --- a/src/mobile/src/ui/components/ModalComponent.js +++ b/src/mobile/src/ui/components/ModalComponent.js @@ -29,6 +29,7 @@ const styles = StyleSheet.create({ justifyContent: 'center', alignItems: 'center', margin: 0, + padding: 0, }, }); diff --git a/src/mobile/src/ui/components/SafeAreaView.js b/src/mobile/src/ui/components/SafeAreaView.js index 8c80d0c066..288e0861c2 100644 --- a/src/mobile/src/ui/components/SafeAreaView.js +++ b/src/mobile/src/ui/components/SafeAreaView.js @@ -1,8 +1,8 @@ import React, { Component } from 'react'; -import { View } from 'react-native'; import SafeAreaView from 'react-native-safe-area-view'; import PropTypes from 'prop-types'; import { Navigation } from 'react-native-navigation'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { connect } from 'react-redux'; import hoistNonReactStatics from 'hoist-non-react-statics'; import { getBackgroundColor } from 'ui/theme/general'; @@ -40,11 +40,15 @@ export default function withSafeAreaView(WrappedComponent) { style={{ flex: 1, backgroundColor: inactive ? theme.body.bg : getBackgroundColor(currentScreen, theme, inactive), + paddingBottom: isModalActive ? 5 : 0, }} > {isIPhoneFailingSafeAreaView && ( - ({ alerts: state.alerts, hasConnection: state.wallet.hasConnection, theme: state.settings.theme, - currentRoute: state.ui.currentRoute, + navStack: state.wallet.navStack, }); const mapDispatchToProps = { dismissAlert }; diff --git a/src/mobile/src/ui/theme/general.js b/src/mobile/src/ui/theme/general.js index 8f7d0ac8e8..5cfb98f336 100644 --- a/src/mobile/src/ui/theme/general.js +++ b/src/mobile/src/ui/theme/general.js @@ -1,5 +1,5 @@ import { width, height } from 'libs/dimensions'; -import { isIPhoneX, isAndroid } from 'libs/device'; +import { isIPhoneX } from 'libs/device'; export const Styling = { contentWidth: isIPhoneX ? width / 1.08 : width / 1.15, @@ -15,7 +15,7 @@ export const Styling = { fontSize5: width / 19, fontSize6: width / 14, fontSize7: width / 8, - topbarHeight: isAndroid ? height / 10 : height / 8.8, + topbarHeight: height / 8.8, }; export function getBackgroundColor(screen, theme, footerColour = false, inactive = false) { diff --git a/src/mobile/src/ui/views/onboarding/EnterSeed.js b/src/mobile/src/ui/views/onboarding/EnterSeed.js index fa0cde3435..d6a9b43bb0 100644 --- a/src/mobile/src/ui/views/onboarding/EnterSeed.js +++ b/src/mobile/src/ui/views/onboarding/EnterSeed.js @@ -39,7 +39,7 @@ const styles = StyleSheet.create({ flex: 3, alignItems: 'center', width, - justifyContent: 'flex-start', + justifyContent: 'space-between', }, bottomContainer: { flex: 0.5, @@ -62,6 +62,11 @@ const styles = StyleSheet.create({ textAlign: 'left', backgroundColor: 'transparent', }, + seedVaultImportContainer: { + flex: isAndroid ? 1 : 0, + justifyContent: 'flex-start', + alignItems: 'center', + }, }); /** Enter seed component */ @@ -230,11 +235,12 @@ class EnterSeed extends React.Component { - + - {!isIPhone11 && ( this.showModal('passwordValidation')} @@ -277,7 +283,7 @@ class EnterSeed extends React.Component { /> )} - + {isAndroid && } - + - - - @@ -171,6 +167,14 @@ class LanguageSetup extends Component { /> + + + diff --git a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js index 1423db0d1a..60ac4033c5 100644 --- a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js +++ b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js @@ -22,9 +22,9 @@ import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; const styles = StyleSheet.create({ container: { - flex: 1, justifyContent: 'center', alignItems: 'center', + height, }, titleText: { fontFamily: 'SourceSansPro-SemiBold', diff --git a/src/mobile/src/ui/views/onboarding/SeedReentry.js b/src/mobile/src/ui/views/onboarding/SeedReentry.js index 90fea68e92..424b6dd0e1 100644 --- a/src/mobile/src/ui/views/onboarding/SeedReentry.js +++ b/src/mobile/src/ui/views/onboarding/SeedReentry.js @@ -59,6 +59,11 @@ const styles = StyleSheet.create({ fontSize: Styling.fontSize3, paddingTop: height / 60, }, + seedVaultImportContainer: { + flex: isAndroid ? 0.4 : 0, + justifyContent: 'flex-start', + alignItems: 'center', + }, }); /** Seed Reentry component */ @@ -232,6 +237,7 @@ class SeedReentry extends Component { animationInType={['slideInRight', 'fadeIn']} animationOutType={['slideOutLeft', 'fadeOut']} delay={300} + style={styles.seedVaultImportContainer} > this.showModal('passwordValidation')} @@ -272,6 +279,7 @@ class SeedReentry extends Component { /> )} + {isAndroid && } { - Navigation.setStackRoot('appStack', { - component: { - name: 'login', - options: { - animations: { - setStackRoot: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.setStackRoot('login', { + animations: { + setStackRoot: { + enable: false, }, }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, + }, }); this.props.clearWalletData(); this.props.setPassword({}); diff --git a/src/mobile/src/ui/views/wallet/SecuritySettings.js b/src/mobile/src/ui/views/wallet/SecuritySettings.js index 4889b7612b..e4b191d583 100644 --- a/src/mobile/src/ui/views/wallet/SecuritySettings.js +++ b/src/mobile/src/ui/views/wallet/SecuritySettings.js @@ -3,7 +3,7 @@ import { connect } from 'react-redux'; import PropTypes from 'prop-types'; import { withNamespaces } from 'react-i18next'; import { StyleSheet, View } from 'react-native'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { setSetting } from 'shared-modules/actions/wallet'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; import { renderSettingsRows } from 'ui/components/SettingsContent'; @@ -39,32 +39,27 @@ class SecuritySettings extends Component { */ on2FASetupPress() { const { is2FAEnabled, theme: { body } } = this.props; - Navigation.push('appStack', { - component: { - name: is2FAEnabled ? 'disable2FA' : 'twoFactorSetupAddKey', - options: { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.push(is2FAEnabled ? 'disable2FA' : 'twoFactorSetupAddKey', { + animations: { + push: { + enable: false, }, + pop: { + enable: false, + }, + }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, }, }); } @@ -75,32 +70,27 @@ class SecuritySettings extends Component { */ onFingerprintSetupPress() { const { theme: { body } } = this.props; - Navigation.push('appStack', { - component: { - name: 'fingerprintSetup', - options: { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.push('fingerprintSetup', { + animations: { + push: { + enable: false, }, + pop: { + enable: false, + }, + }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, }, }); } diff --git a/src/mobile/src/ui/views/wallet/UseExistingSeed.js b/src/mobile/src/ui/views/wallet/UseExistingSeed.js index cbdb6a7642..c8a0345c52 100644 --- a/src/mobile/src/ui/views/wallet/UseExistingSeed.js +++ b/src/mobile/src/ui/views/wallet/UseExistingSeed.js @@ -3,7 +3,7 @@ import React, { Component } from 'react'; import { connect } from 'react-redux'; import { withNamespaces } from 'react-i18next'; import PropTypes from 'prop-types'; -import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { StyleSheet, View, Text, TouchableOpacity, TouchableWithoutFeedback, Keyboard } from 'react-native'; import { MAX_SEED_LENGTH, VALID_SEED_REGEX } from 'shared-modules/libs/iota/utils'; import { setSetting, setAdditionalAccountInfo } from 'shared-modules/actions/wallet'; @@ -171,30 +171,25 @@ class UseExistingSeed extends Component { usedExistingSeed: true, }); - Navigation.setStackRoot('appStack', { - component: { - name: 'loading', - options: { - animations: { - setStackRoot: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, + navigator.setStackRoot('loading', { + animations: { + setStackRoot: { + enable: false, }, }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, + }, }); } From 3ddf143b8ce47df2ab1233c8b69f140e5604f10d Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 12 Nov 2018 20:44:00 +0000 Subject: [PATCH 047/141] Mobile: Fix Android logout crash --- .../ios/iotaWallet.xcodeproj/project.pbxproj | 22 +++++++++---------- .../src/ui/components/ModalComponent.js | 1 - .../src/ui/views/onboarding/EnterSeed.js | 1 + .../src/ui/views/onboarding/SeedReentry.js | 1 + src/shared/reducers/ui.js | 1 - 5 files changed, 12 insertions(+), 14 deletions(-) diff --git a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj index ec530dbe85..b0d430a47b 100644 --- a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj +++ b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj @@ -1544,14 +1544,12 @@ }; 30A16F44D53CE8CFD5085B3A66B82141 = { CreatedOnToolsVersion = 6.2; - DevelopmentTeam = UG77RJKZHH; - ProvisioningStyle = Automatic; + ProvisioningStyle = Manual; TestTargetID = 4848851A00274CA2FFBE307BAEB5F278; }; 4848851A00274CA2FFBE307BAEB5F278 = { - DevelopmentTeam = UG77RJKZHH; LastSwiftMigration = 1010; - ProvisioningStyle = Automatic; + ProvisioningStyle = Manual; SystemCapabilities = { com.apple.BackgroundModes = { enabled = 0; @@ -2791,10 +2789,10 @@ CODE_SIGN_ENTITLEMENTS = iotaWallet/iotaWallet.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; + CODE_SIGN_STYLE = Manual; CURRENT_PROJECT_VERSION = 27; DEAD_CODE_STRIPPING = NO; - DEVELOPMENT_TEAM = UG77RJKZHH; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -2979,8 +2977,8 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = UG77RJKZHH; + CODE_SIGN_STYLE = Manual; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -3127,9 +3125,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; + CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = UG77RJKZHH; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = NO; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -3170,9 +3168,9 @@ CODE_SIGN_ENTITLEMENTS = iotaWallet/iotaWallet.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; + CODE_SIGN_STYLE = Manual; CURRENT_PROJECT_VERSION = 27; - DEVELOPMENT_TEAM = UG77RJKZHH; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", diff --git a/src/mobile/src/ui/components/ModalComponent.js b/src/mobile/src/ui/components/ModalComponent.js index 5e6c2acb91..a5914f5397 100644 --- a/src/mobile/src/ui/components/ModalComponent.js +++ b/src/mobile/src/ui/components/ModalComponent.js @@ -29,7 +29,6 @@ const styles = StyleSheet.create({ justifyContent: 'center', alignItems: 'center', margin: 0, - padding: 0, }, }); diff --git a/src/mobile/src/ui/views/onboarding/EnterSeed.js b/src/mobile/src/ui/views/onboarding/EnterSeed.js index d6a9b43bb0..a643033228 100644 --- a/src/mobile/src/ui/views/onboarding/EnterSeed.js +++ b/src/mobile/src/ui/views/onboarding/EnterSeed.js @@ -264,6 +264,7 @@ class EnterSeed extends React.Component { seed={seed} /> + {/* FIXME: Not clean */} {!isIPhone11 && ( + {/* FIXME: Not clean */} {!isIPhone11 && ( { }, doNotMinimise: false, isModalActive: false, - modalProps: {}, qrMessage: '', qrAmount: '', qrTag: '', From 4f3afd783f9cc7df17a638a4f35056b165e9e72e Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Tue, 13 Nov 2018 12:47:27 +0000 Subject: [PATCH 048/141] Mobile: Fix layouts/animations --- .../src/ui/components/BackPressGoToHome.js | 42 ++++++------ src/mobile/src/ui/components/SafeAreaView.js | 5 +- .../ui/views/onboarding/OnboardingComplete.js | 14 ++-- .../src/ui/views/onboarding/PrivacyPolicy.js | 5 +- .../ui/views/onboarding/TermsAndConditions.js | 5 +- src/mobile/src/ui/views/wallet/Loading.js | 64 +++++++++++++------ 6 files changed, 74 insertions(+), 61 deletions(-) diff --git a/src/mobile/src/ui/components/BackPressGoToHome.js b/src/mobile/src/ui/components/BackPressGoToHome.js index 3283522599..cc2ac6a063 100644 --- a/src/mobile/src/ui/components/BackPressGoToHome.js +++ b/src/mobile/src/ui/components/BackPressGoToHome.js @@ -1,6 +1,7 @@ import React, { Component } from 'react'; import { BackHandler } from 'react-native'; import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import { connect } from 'react-redux'; import PropTypes from 'prop-types'; import { isAndroid } from 'libs/device'; @@ -46,33 +47,26 @@ export default () => (C) => { */ handleBackPress = () => { const { theme: { bar, body } } = this.props; - - Navigation.setStackRoot('appStack', { - component: { - name: 'home', - options: { - animations: { - setStackRoot: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: bar.alt, - }, + navigator.setStackRoot('home', { + animations: { + setStackRoot: { + enable: false, }, }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: bar.alt, + }, }); - return true; }; diff --git a/src/mobile/src/ui/components/SafeAreaView.js b/src/mobile/src/ui/components/SafeAreaView.js index 288e0861c2..f6b2e65356 100644 --- a/src/mobile/src/ui/components/SafeAreaView.js +++ b/src/mobile/src/ui/components/SafeAreaView.js @@ -46,9 +46,8 @@ export default function withSafeAreaView(WrappedComponent) { {isIPhoneFailingSafeAreaView && ( - + {t('walletReady')} diff --git a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js index 60ac4033c5..a98cafb570 100644 --- a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js +++ b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js @@ -22,7 +22,7 @@ import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; const styles = StyleSheet.create({ container: { - justifyContent: 'center', + flex: 1, alignItems: 'center', height, }, @@ -44,7 +44,7 @@ const styles = StyleSheet.create({ width, paddingHorizontal: width / 20, paddingVertical: height / 75, - height: height - height / 8, + height: height, }, }); @@ -151,6 +151,7 @@ class PrivacyPolicy extends Component { {PrivacyPolicy.getPrivacyPolicy()} + {this.state.hasReadPrivacyPolicy && ( diff --git a/src/mobile/src/ui/views/onboarding/TermsAndConditions.js b/src/mobile/src/ui/views/onboarding/TermsAndConditions.js index 2193db8d14..0fea472a91 100644 --- a/src/mobile/src/ui/views/onboarding/TermsAndConditions.js +++ b/src/mobile/src/ui/views/onboarding/TermsAndConditions.js @@ -22,9 +22,9 @@ import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; const styles = StyleSheet.create({ container: { - justifyContent: 'center', alignItems: 'center', height, + flex: 1, }, titleText: { fontFamily: 'SourceSansPro-SemiBold', @@ -44,7 +44,7 @@ const styles = StyleSheet.create({ width, paddingHorizontal: width / 20, paddingVertical: height / 75, - height: height - height / 8, + height: height, }, }); @@ -155,6 +155,7 @@ class TermsAndConditions extends Component { {TermsAndConditions.getTermsAndConditions()} + {this.state.hasReadTerms && ( diff --git a/src/mobile/src/ui/views/wallet/Loading.js b/src/mobile/src/ui/views/wallet/Loading.js index 4ef3f66294..ab88fa6c9a 100644 --- a/src/mobile/src/ui/views/wallet/Loading.js +++ b/src/mobile/src/ui/views/wallet/Loading.js @@ -26,9 +26,10 @@ import { } from 'shared-modules/selectors/accounts'; import { Styling } from 'ui/theme/general'; import SeedStore from 'libs/SeedStore'; -import { isAndroid } from 'libs/device'; +import { isAndroid, isIPhoneX } from 'libs/device'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; import SingleFooterButton from 'ui/components/SingleFooterButton'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { width, height } from 'libs/dimensions'; @@ -64,13 +65,18 @@ const styles = StyleSheet.create({ infoTextContainer: { flex: 1, justifyContent: 'flex-end', - paddingBottom: height / 20, + paddingBottom: isIPhoneX ? height / 40 : height / 20, }, - nodeChangeContainer: { + bottomContainer: { position: 'absolute', bottom: 0, alignItems: 'center', justifyContent: 'center', + width, + }, + loadingAnimationContainer: { + height, + justifyContent: 'center', }, }); @@ -337,9 +343,13 @@ class Loading extends Component { if (addingAdditionalAccount) { return ( - - + { this.animation = animation; @@ -348,22 +358,29 @@ class Loading extends Component { style={styles.animationNewSeed} loop /> - + - - - {t('loadingFirstTime')} - {t('doNotMinimise')} - - {t('thisMayTake')} - - - {isAndroid ? '..' : this.state.elipsis} - + + + + {t('loadingFirstTime')} + {t('doNotMinimise')} + + {t('thisMayTake')} + + + {isAndroid ? '..' : this.state.elipsis} + + - + ); } @@ -371,7 +388,7 @@ class Loading extends Component { return ( - + { this.animation = animation; @@ -379,9 +396,14 @@ class Loading extends Component { source={welcomeAnimationPath} style={styles.animationLoading} /> - + {displayNodeChangeOption && ( - + {t('takingAWhile')}... - + )} From 50001acb79183831e0486304699a1bbd6a68e61b Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Tue, 13 Nov 2018 18:20:13 +0000 Subject: [PATCH 049/141] Mobile: Fix/cleanup Android back press and UI fixes --- .../src/ui/components/AmountTextInput.js | 2 +- src/mobile/src/ui/components/BackPress.js | 78 ++++++++++++----- .../src/ui/components/BackPressCloseApp.js | 65 -------------- .../src/ui/components/BackPressGoToHome.js | 84 ------------------- .../src/ui/components/CustomTextInput.js | 14 +++- .../src/ui/components/EnterPasswordOnLogin.js | 7 +- .../ui/components/SeedVaultImportComponent.js | 1 - src/mobile/src/ui/routes/navigation.js | 6 +- .../src/ui/views/onboarding/EnterSeed.js | 15 ++-- .../src/ui/views/onboarding/LanguageSetup.js | 5 +- .../ui/views/onboarding/OnboardingComplete.js | 5 +- .../src/ui/views/onboarding/PrivacyPolicy.js | 1 - .../src/ui/views/onboarding/SeedReentry.js | 15 ++-- .../src/ui/views/onboarding/SetAccountName.js | 1 - .../src/ui/views/wallet/AddCustomNode.js | 1 - .../src/ui/views/wallet/ChangePassword.js | 1 - .../src/ui/views/wallet/DeleteAccount.js | 1 - src/mobile/src/ui/views/wallet/Disable2FA.js | 6 +- .../src/ui/views/wallet/EditAccountName.js | 1 - .../src/ui/views/wallet/FingerprintSetup.js | 5 +- src/mobile/src/ui/views/wallet/Home.js | 3 +- src/mobile/src/ui/views/wallet/Login.js | 5 +- src/mobile/src/ui/views/wallet/Send.js | 3 - .../ui/views/wallet/TwoFactorSetupAddKey.js | 5 +- .../views/wallet/WalletResetConfirmation.js | 5 +- 25 files changed, 99 insertions(+), 236 deletions(-) delete mode 100644 src/mobile/src/ui/components/BackPressCloseApp.js delete mode 100644 src/mobile/src/ui/components/BackPressGoToHome.js diff --git a/src/mobile/src/ui/components/AmountTextInput.js b/src/mobile/src/ui/components/AmountTextInput.js index 00ba3adc0e..12afe3b79c 100644 --- a/src/mobile/src/ui/components/AmountTextInput.js +++ b/src/mobile/src/ui/components/AmountTextInput.js @@ -40,7 +40,7 @@ class MultiTextInput extends Component { /** Text field label */ label: PropTypes.string, /** CustomTextField component container style */ - containerStyle: PropTypes.object.isRequired, + containerStyle: PropTypes.object, /** On submit editing event callback */ onSubmitEditing: PropTypes.func, /** Determines if the text field is editable */ diff --git a/src/mobile/src/ui/components/BackPress.js b/src/mobile/src/ui/components/BackPress.js index a00361a2b1..356d96bf68 100644 --- a/src/mobile/src/ui/components/BackPress.js +++ b/src/mobile/src/ui/components/BackPress.js @@ -1,7 +1,10 @@ +import last from 'lodash/last'; import React, { Component } from 'react'; import { BackHandler, ToastAndroid } from 'react-native'; import { Navigation } from 'react-native-navigation'; +import { navigator } from 'libs/navigation'; import RNExitApp from 'react-native-exit-app'; +import i18next from 'shared-modules/libs/i18next.js'; import { setSetting } from 'shared-modules/actions/wallet'; import { connect } from 'react-redux'; import PropTypes from 'prop-types'; @@ -13,6 +16,7 @@ const mapDispatchToProps = { const mapStateToProps = (state) => ({ currentSetting: state.wallet.currentSetting, + currentRoute: last(state.wallet.navStack), }); /** @@ -20,8 +24,18 @@ const mapStateToProps = (state) => ({ * @param {Component} C Component to be wrapped * @return {Component} A wrapped component */ -export default () => (C) => { - class WithBackPress extends Component { +export default function withBackPress(C) { + class EnhancedComponent extends Component { + static propTypes = { + /** @ignore */ + setSetting: PropTypes.func.isRequired, + /** @ignore */ + currentSetting: PropTypes.string.isRequired, + /** @ignore */ + currentRoute: PropTypes.string.isRequired, + /** Component ID */ + componentId: PropTypes.string.isRequired, + }; constructor(props) { super(props); if (isAndroid) { @@ -50,24 +64,36 @@ export default () => (C) => { } /** - * On back press, display alert. On second back press, close app. + * On back press, pop current route + * + * @method withBackPressPopRoute + */ + withBackPressPopRoute() { + navigator.pop(this.props.componentId); + } + + /** + * On back press, display alert. On second back press, close app * - * @method handleBackPressFromMainSettings + * @method withBackPressCloseApp */ - handleBackPressFromMainSettings() { - const { t } = this.props; + withBackPressCloseApp() { if (this.lastBackPressed && this.lastBackPressed + 2000 >= Date.now()) { RNExitApp.exitApp(); } this.lastBackPressed = Date.now(); - ToastAndroid.show(t('global:pressBackAgain'), ToastAndroid.SHORT); + ToastAndroid.show(i18next.t('global:pressBackAgain'), ToastAndroid.SHORT); } - handleBackPress = () => { - const { currentSetting } = this.props; + /** + * On back press, navigate to appropriate setting menu + * + * @method withBackPressNavigateSettings + */ + withBackPressNavigateSettings(currentSetting) { switch (currentSetting) { case 'mainSettings': - this.handleBackPressFromMainSettings(); + this.withBackPressCloseApp(); return true; case 'modeSelection': case 'themeCustomisation': @@ -104,6 +130,25 @@ export default () => (C) => { break; } return true; + } + + /** + * Choose appropriate action on back press + * + * @method handleBackPress + */ + handleBackPress = () => { + const { currentSetting, currentRoute } = this.props; + switch (currentRoute) { + case 'home': + return this.withBackPressNavigateSettings(currentSetting); + case 'languageSetup': + case 'onboardingComplete': + case 'login': + return this.withBackPressCloseApp(); + default: + return this.withBackPressPopRoute(); + } }; render() { @@ -111,14 +156,5 @@ export default () => (C) => { } } - WithBackPress.propTypes = { - /** @ignore */ - setSetting: PropTypes.func.isRequired, - /** Current setting */ - currentSetting: PropTypes.string.isRequired, - /** @ignore */ - t: PropTypes.func.isRequired, - }; - - return connect(mapStateToProps, mapDispatchToProps)(WithBackPress); -}; + return connect(mapStateToProps, mapDispatchToProps)(EnhancedComponent); +} diff --git a/src/mobile/src/ui/components/BackPressCloseApp.js b/src/mobile/src/ui/components/BackPressCloseApp.js deleted file mode 100644 index 7166b5b72f..0000000000 --- a/src/mobile/src/ui/components/BackPressCloseApp.js +++ /dev/null @@ -1,65 +0,0 @@ -import React, { Component } from 'react'; -import { ToastAndroid, BackHandler } from 'react-native'; -import { Navigation } from 'react-native-navigation'; -import RNExitApp from 'react-native-exit-app'; -import { withNamespaces } from 'react-i18next'; -import PropTypes from 'prop-types'; -import { isAndroid } from 'libs/device'; - -export default () => (C) => { - class WithBackPressCloseApp extends Component { - constructor(props) { - super(props); - if (isAndroid) { - Navigation.events().bindComponent(this); - } - } - - /** - * Remove back handler - * - * @method componentDidDisappear - */ - componentDidDisappear() { - if (this.backHandler) { - this.backHandler.remove(); - } - } - - /** - * Add back handler - * - * @method componentDidAppear - */ - componentDidAppear() { - this.backHandler = BackHandler.addEventListener('hardwareBackPress', this.handleBackPress); - } - - /** - * On back press, display alert. On second back press, close app. - * - * @method handleBackPress - */ - handleBackPress = () => { - const { t } = this.props; - if (this.lastBackPressed && this.lastBackPressed + 2000 >= Date.now()) { - RNExitApp.exitApp(); - } - - this.lastBackPressed = Date.now(); - ToastAndroid.show(t('global:pressBackAgain'), ToastAndroid.SHORT); - return true; - }; - - render() { - return ; - } - } - - WithBackPressCloseApp.propTypes = { - /** @ignore */ - t: PropTypes.func.isRequired, - }; - - return withNamespaces(['global'])(WithBackPressCloseApp); -}; diff --git a/src/mobile/src/ui/components/BackPressGoToHome.js b/src/mobile/src/ui/components/BackPressGoToHome.js deleted file mode 100644 index cc2ac6a063..0000000000 --- a/src/mobile/src/ui/components/BackPressGoToHome.js +++ /dev/null @@ -1,84 +0,0 @@ -import React, { Component } from 'react'; -import { BackHandler } from 'react-native'; -import { Navigation } from 'react-native-navigation'; -import { navigator } from 'libs/navigation'; -import { connect } from 'react-redux'; -import PropTypes from 'prop-types'; -import { isAndroid } from 'libs/device'; - -const mapStateToProps = (state) => ({ - theme: state.settings.theme, -}); - -export default () => (C) => { - class WithBackPressGoToHome extends Component { - constructor(props) { - super(props); - - if (isAndroid) { - Navigation.events().bindComponent(this); - } - } - - /** - * Remove back handler - * - * @method componentDidDisappear - */ - componentDidDisappear() { - if (this.backHandler) { - this.backHandler.remove(); - } - } - - /** - * Add back handler - * - * @method componentDidAppear - */ - componentDidAppear() { - this.backHandler = BackHandler.addEventListener('hardwareBackPress', this.handleBackPress); - } - - /** - * On backpress, navigate to home. - * - * @method handleBackPress - */ - handleBackPress = () => { - const { theme: { bar, body } } = this.props; - navigator.setStackRoot('home', { - animations: { - setStackRoot: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: bar.alt, - }, - }); - return true; - }; - - render() { - return ; - } - } - - WithBackPressGoToHome.propTypes = { - /** @ignore */ - theme: PropTypes.object.isRequired, - }; - - return connect(mapStateToProps, null)(WithBackPressGoToHome); -}; diff --git a/src/mobile/src/ui/components/CustomTextInput.js b/src/mobile/src/ui/components/CustomTextInput.js index 9e1fc8993f..f92ab79009 100644 --- a/src/mobile/src/ui/components/CustomTextInput.js +++ b/src/mobile/src/ui/components/CustomTextInput.js @@ -5,6 +5,7 @@ import PropTypes from 'prop-types'; import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; import { Icon } from 'ui/theme/icons'; +import { isAndroid } from 'libs/device'; const styles = StyleSheet.create({ fieldContainer: { @@ -87,12 +88,16 @@ const styles = StyleSheet.create({ borderBottomRightRadius: width / 60, position: 'absolute', right: width / 100, - bottom: -width / 20, + bottom: isAndroid ? -width / 19 : -width / 20, }, checksumText: { fontFamily: 'SourceSansPro-Regular', fontSize: Styling.fontsize1, }, + seedInput: { + height: height / 7.4, + justifyContent: 'flex-start', + }, }); class CustomTextInput extends Component { @@ -142,13 +147,15 @@ class CustomTextInput extends Component { passwordStrength: PropTypes.number, /** Entered seed */ seed: PropTypes.string, + /** Determines whether text input is for seeds */ + isSeedInput: PropTypes.bool, }; static defaultProps = { onFocus: () => {}, onBlur: () => {}, onFingerprintPress: () => {}, - containerStyle: {}, + containerStyle: { width: Styling.contentWidth }, widget: 'empty', onDenominationPress: () => {}, onQRPress: () => {}, @@ -333,12 +340,13 @@ class CustomTextInput extends Component { isPasswordValid, passwordStrength, seed, + isSeedInput, ...restProps } = this.props; const { isFocused } = this.state; return ( - + {label && ( {label.toUpperCase()} diff --git a/src/mobile/src/ui/components/EnterPasswordOnLogin.js b/src/mobile/src/ui/components/EnterPasswordOnLogin.js index 539fa6b9fb..79e57e5ff7 100644 --- a/src/mobile/src/ui/components/EnterPasswordOnLogin.js +++ b/src/mobile/src/ui/components/EnterPasswordOnLogin.js @@ -1,8 +1,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { withNamespaces } from 'react-i18next'; -import RNExitApp from 'react-native-exit-app'; -import { StyleSheet, View, TouchableWithoutFeedback, Keyboard, BackHandler } from 'react-native'; +import { StyleSheet, View, TouchableWithoutFeedback, Keyboard } from 'react-native'; import { connect } from 'react-redux'; import { toggleModalActivity } from 'shared-modules/actions/ui'; import { width, height } from 'libs/dimensions'; @@ -60,10 +59,6 @@ export class EnterPasswordOnLogin extends Component { componentDidMount() { leaveNavigationBreadcrumb('EnterPasswordOnLogin'); - BackHandler.addEventListener('loginBackPress', () => { - RNExitApp.exitApp(); - return true; - }); } handleChangeText = (password) => this.props.setLoginPasswordField(password); diff --git a/src/mobile/src/ui/components/SeedVaultImportComponent.js b/src/mobile/src/ui/components/SeedVaultImportComponent.js index bcf10df272..b8f970dd32 100644 --- a/src/mobile/src/ui/components/SeedVaultImportComponent.js +++ b/src/mobile/src/ui/components/SeedVaultImportComponent.js @@ -20,7 +20,6 @@ const styles = StyleSheet.create({ paddingLeft: width / 70, }, button: { - flex: 1, justifyContent: 'center', }, container: { diff --git a/src/mobile/src/ui/routes/navigation.js b/src/mobile/src/ui/routes/navigation.js index ce3f654db6..e8992f0075 100644 --- a/src/mobile/src/ui/routes/navigation.js +++ b/src/mobile/src/ui/routes/navigation.js @@ -3,6 +3,7 @@ import withSafeAreaView from 'ui/components/SafeAreaView'; import withDropdownAlert from 'ui/components/WithDropdownAlert'; import withModal from 'ui/components/ModalComponent'; import withStatusBar from 'ui/components/WithStatusBar'; +import withBackPress from 'ui/components/BackPress'; import Home from 'ui/views/wallet/Home'; import Loading from 'ui/views/wallet/Loading'; import NewSeedSetup from 'ui/views/onboarding/NewSeedSetup'; @@ -27,13 +28,16 @@ import TermsAndConditions from 'ui/views/onboarding/TermsAndConditions'; import PrivacyPolicy from 'ui/views/onboarding/PrivacyPolicy'; import ForceChangePassword from 'ui/views/wallet/ForceChangePassword'; import SeedVaultBackupComponent from 'ui/views/onboarding/SeedVaultBackup'; -import { isIPhoneX } from 'libs/device'; +import { isIPhoneX, isAndroid } from 'libs/device'; function applyHOCs(screen) { const withHOCs = (c) => withDropdownAlert(withStatusBar(withModal(c))); if (isIPhoneX) { return withHOCs(withSafeAreaView(screen)); } + if (isAndroid) { + return withBackPress(withHOCs(screen)); + } return withHOCs(screen); } diff --git a/src/mobile/src/ui/views/onboarding/EnterSeed.js b/src/mobile/src/ui/views/onboarding/EnterSeed.js index a643033228..240a357ba9 100644 --- a/src/mobile/src/ui/views/onboarding/EnterSeed.js +++ b/src/mobile/src/ui/views/onboarding/EnterSeed.js @@ -63,9 +63,10 @@ const styles = StyleSheet.create({ backgroundColor: 'transparent', }, seedVaultImportContainer: { - flex: isAndroid ? 1 : 0, - justifyContent: 'flex-start', + flex: 0.7, alignItems: 'center', + justifyContent: 'center', + marginBottom: width / 18, }, }); @@ -235,12 +236,11 @@ class EnterSeed extends React.Component { - + this.onQRPress()} testID="enterSeed-seedbox" seed={seed} + isSeedInput /> {/* FIXME: Not clean */} @@ -270,7 +270,7 @@ class EnterSeed extends React.Component { animationInType={['slideInRight', 'fadeIn']} animationOutType={['slideOutLeft', 'fadeOut']} delay={200} - style={{ flex: 0.5 }} + style={styles.seedVaultImportContainer} > this.showModal('passwordValidation')} @@ -284,7 +284,6 @@ class EnterSeed extends React.Component { /> )} - {isAndroid && } - + ({ theme: state.settings.theme, }); -export default WithBackPressCloseApp()( - withNamespaces(['onboardingComplete', 'global'])(connect(mapStateToProps)(OnboardingComplete)), -); +export default withNamespaces(['onboardingComplete', 'global'])(connect(mapStateToProps)(OnboardingComplete)); diff --git a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js index a98cafb570..3b2904e18d 100644 --- a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js +++ b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js @@ -79,7 +79,6 @@ class PrivacyPolicy extends Component { constructor() { super(); - this.state = { hasReadPrivacyPolicy: false }; } diff --git a/src/mobile/src/ui/views/onboarding/SeedReentry.js b/src/mobile/src/ui/views/onboarding/SeedReentry.js index ff428320e0..ba271d97dd 100644 --- a/src/mobile/src/ui/views/onboarding/SeedReentry.js +++ b/src/mobile/src/ui/views/onboarding/SeedReentry.js @@ -60,9 +60,10 @@ const styles = StyleSheet.create({ paddingTop: height / 60, }, seedVaultImportContainer: { - flex: isAndroid ? 0.4 : 0, - justifyContent: 'flex-start', + flex: 0.7, alignItems: 'center', + justifyContent: 'center', + marginBottom: width / 18, }, }); @@ -232,12 +233,11 @@ class SeedReentry extends Component { - + this.onQRPress()} seed={seed} + isSeedInput /> {/* FIXME: Not clean */} @@ -266,7 +266,7 @@ class SeedReentry extends Component { animationInType={['slideInRight', 'fadeIn']} animationOutType={['slideOutLeft', 'fadeOut']} delay={200} - style={{ flex: 0.3 }} + style={styles.seedVaultImportContainer} > this.showModal('passwordValidation')} @@ -280,7 +280,6 @@ class SeedReentry extends Component { /> )} - {isAndroid && } - + this.setState({ accountName: text })} - containerStyle={{ width: Styling.contentWidth }} autoCapitalize="words" autoCorrect={false} enablesReturnKeyAutomatically diff --git a/src/mobile/src/ui/views/wallet/AddCustomNode.js b/src/mobile/src/ui/views/wallet/AddCustomNode.js index ab35841634..3b3a4100b5 100644 --- a/src/mobile/src/ui/views/wallet/AddCustomNode.js +++ b/src/mobile/src/ui/views/wallet/AddCustomNode.js @@ -243,7 +243,6 @@ class AddCustomNode extends Component { this.setState({ customNode })} - containerStyle={{ width: Styling.contentWidth }} autoCapitalize="none" autoCorrect={false} enablesReturnKeyAutomatically diff --git a/src/mobile/src/ui/views/wallet/ChangePassword.js b/src/mobile/src/ui/views/wallet/ChangePassword.js index 43c82374f7..5b6ec1ac96 100644 --- a/src/mobile/src/ui/views/wallet/ChangePassword.js +++ b/src/mobile/src/ui/views/wallet/ChangePassword.js @@ -160,7 +160,6 @@ class ChangePassword extends Component { returnKeyType="next" theme={theme} widget="empty" - containerStyle={{ width: Styling.contentWidth }} autoCapitalize="none" autoCorrect={false} enablesReturnKeyAutomatically diff --git a/src/mobile/src/ui/views/wallet/DeleteAccount.js b/src/mobile/src/ui/views/wallet/DeleteAccount.js index d6f11c0b9e..50f27b3e4e 100644 --- a/src/mobile/src/ui/views/wallet/DeleteAccount.js +++ b/src/mobile/src/ui/views/wallet/DeleteAccount.js @@ -234,7 +234,6 @@ class DeleteAccount extends Component { this.setState({ password })} - containerStyle={{ width: Styling.contentWidth }} autoCapitalize="none" autoCorrect={false} enablesReturnKeyAutomatically diff --git a/src/mobile/src/ui/views/wallet/Disable2FA.js b/src/mobile/src/ui/views/wallet/Disable2FA.js index 24ecea202f..84feb8a3f9 100644 --- a/src/mobile/src/ui/views/wallet/Disable2FA.js +++ b/src/mobile/src/ui/views/wallet/Disable2FA.js @@ -8,7 +8,6 @@ import { navigator } from 'libs/navigation'; import { resetWallet, set2FAStatus } from 'shared-modules/actions/settings'; import { generateAlert } from 'shared-modules/actions/alerts'; import { getTwoFactorAuthKeyFromKeychain } from 'libs/keychain'; -import WithBackPressGoToHome from 'ui/components/BackPressGoToHome'; import Fonts from 'ui/theme/fonts'; import CustomTextInput from 'ui/components/CustomTextInput'; import DualFooterButtons from 'ui/components/DualFooterButtons'; @@ -145,7 +144,6 @@ class Disable2FA extends Component { this.setState({ token })} - containerStyle={{ width: Styling.contentWidth }} autoCapitalize="none" autoCorrect={false} enablesReturnKeyAutomatically @@ -184,6 +182,6 @@ const mapDispatchToProps = { set2FAStatus, }; -export default WithBackPressGoToHome()( - withNamespaces(['resetWalletRequirePassword', 'global'])(connect(mapStateToProps, mapDispatchToProps)(Disable2FA)), +export default withNamespaces(['resetWalletRequirePassword', 'global'])( + connect(mapStateToProps, mapDispatchToProps)(Disable2FA), ); diff --git a/src/mobile/src/ui/views/wallet/EditAccountName.js b/src/mobile/src/ui/views/wallet/EditAccountName.js index b581911595..b25fea4593 100644 --- a/src/mobile/src/ui/views/wallet/EditAccountName.js +++ b/src/mobile/src/ui/views/wallet/EditAccountName.js @@ -158,7 +158,6 @@ export class EditAccountName extends Component { this.setState({ accountName })} - containerStyle={{ width: Styling.contentWidth }} autoCapitalize="none" autoCorrect={false} enablesReturnKeyAutomatically diff --git a/src/mobile/src/ui/views/wallet/FingerprintSetup.js b/src/mobile/src/ui/views/wallet/FingerprintSetup.js index 7a44f02a79..04621dbb23 100644 --- a/src/mobile/src/ui/views/wallet/FingerprintSetup.js +++ b/src/mobile/src/ui/views/wallet/FingerprintSetup.js @@ -8,7 +8,6 @@ import { generateAlert } from 'shared-modules/actions/alerts'; import { connect } from 'react-redux'; import FingerprintScanner from 'react-native-fingerprint-scanner'; import { withNamespaces } from 'react-i18next'; -import WithBackPressGoToHome from 'ui/components/BackPressGoToHome'; import Fonts from 'ui/theme/fonts'; import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; @@ -281,6 +280,6 @@ const mapDispatchToProps = { toggleModalActivity, }; -export default WithBackPressGoToHome()( - withNamespaces(['fingerprintSetup', 'global'])(connect(mapStateToProps, mapDispatchToProps)(FingerprintEnable)), +export default withNamespaces(['fingerprintSetup', 'global'])( + connect(mapStateToProps, mapDispatchToProps)(FingerprintEnable), ); diff --git a/src/mobile/src/ui/views/wallet/Home.js b/src/mobile/src/ui/views/wallet/Home.js index 2fddac4fb5..60f78c0829 100644 --- a/src/mobile/src/ui/views/wallet/Home.js +++ b/src/mobile/src/ui/views/wallet/Home.js @@ -20,7 +20,6 @@ import { hash } from 'libs/keychain'; import UserInactivity from 'ui/components/UserInactivity'; import TopBar from 'ui/components/TopBar'; import WithUserActivity from 'ui/components/UserActivity'; -import WithBackPress from 'ui/components/BackPress'; import PollComponent from 'ui/components/Poll'; import Tabs from 'ui/components/Tabs'; import Tab from 'ui/components/Tab'; @@ -436,5 +435,5 @@ const mapDispatchToProps = { }; export default WithUserActivity()( - WithBackPress()(withNamespaces(['home', 'global', 'login'])(connect(mapStateToProps, mapDispatchToProps)(Home))), + withNamespaces(['home', 'global', 'login'])(connect(mapStateToProps, mapDispatchToProps)(Home)), ); diff --git a/src/mobile/src/ui/views/wallet/Login.js b/src/mobile/src/ui/views/wallet/Login.js index 6790d7e1f6..7a8f5e41c7 100644 --- a/src/mobile/src/ui/views/wallet/Login.js +++ b/src/mobile/src/ui/views/wallet/Login.js @@ -12,7 +12,6 @@ import { setFullNode } from 'shared-modules/actions/settings'; import { setPassword, setSetting, setDeepLink } from 'shared-modules/actions/wallet'; import { setUserActivity, setLoginPasswordField, setLoginRoute } from 'shared-modules/actions/ui'; import { generateAlert } from 'shared-modules/actions/alerts'; -import WithBackPressCloseApp from 'ui/components/BackPressCloseApp'; import NodeOptionsOnLogin from 'ui/views/wallet/NodeOptionsOnLogin'; import EnterPasswordOnLoginComponent from 'ui/components/EnterPasswordOnLogin'; import Enter2FAComponent from 'ui/components/Enter2FA'; @@ -245,6 +244,4 @@ const mapDispatchToProps = { setLoginRoute, }; -export default WithBackPressCloseApp()( - withNamespaces(['login', 'global', 'twoFA'])(connect(mapStateToProps, mapDispatchToProps)(Login)), -); +export default withNamespaces(['login', 'global', 'twoFA'])(connect(mapStateToProps, mapDispatchToProps)(Login)); diff --git a/src/mobile/src/ui/views/wallet/Send.js b/src/mobile/src/ui/views/wallet/Send.js index 964023c9da..d5b94faf81 100644 --- a/src/mobile/src/ui/views/wallet/Send.js +++ b/src/mobile/src/ui/views/wallet/Send.js @@ -730,7 +730,6 @@ export class Send extends Component { this.props.setSendAddressField(text); } }} - containerStyle={{ width: Styling.contentWidth }} autoCapitalize="characters" autoCorrect={false} enablesReturnKeyAutomatically @@ -763,7 +762,6 @@ export class Send extends Component { this.props.setSendDenomination(text); this.resetMaxPressed(); }} - containerStyle={{ width: Styling.contentWidth }} onRef={(c) => { this.amountField = c; }} @@ -812,7 +810,6 @@ export class Send extends Component { keyboardType="default" label={t('message')} onChangeText={(text) => this.props.setSendMessageField(text)} - containerStyle={{ width: Styling.contentWidth }} autoCorrect={false} enablesReturnKeyAutomatically returnKeyType="send" diff --git a/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js b/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js index de5627eda4..21ac9aa7b1 100644 --- a/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js +++ b/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js @@ -7,7 +7,6 @@ import QRCode from 'react-native-qrcode-svg'; import { navigator } from 'libs/navigation'; import { Clipboard, StyleSheet, View, Text, TouchableOpacity } from 'react-native'; import { withNamespaces } from 'react-i18next'; -import WithBackPressGoToHome from 'ui/components/BackPressGoToHome'; import { storeTwoFactorAuthKeyInKeychain } from 'libs/keychain'; import Fonts from 'ui/theme/fonts'; import DualFooterButtons from 'ui/components/DualFooterButtons'; @@ -237,6 +236,4 @@ const mapStateToProps = (state) => ({ password: state.wallet.password, }); -export default WithBackPressGoToHome()( - withNamespaces(['twoFA', 'global'])(connect(mapStateToProps, mapDispatchToProps)(TwoFactorSetupAddKey)), -); +export default withNamespaces(['twoFA', 'global'])(connect(mapStateToProps, mapDispatchToProps)(TwoFactorSetupAddKey)); diff --git a/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js b/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js index 5bd24c005b..006a8ee033 100644 --- a/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js +++ b/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js @@ -4,7 +4,6 @@ import PropTypes from 'prop-types'; import { StyleSheet, View, Text } from 'react-native'; import { connect } from 'react-redux'; import { navigator } from 'libs/navigation'; -import WithBackPressGoToHome from 'ui/components/BackPressGoToHome'; import { width, height } from 'libs/dimensions'; import Fonts from 'ui/theme/fonts'; import DualFooterButtons from 'ui/components/DualFooterButtons'; @@ -206,6 +205,4 @@ const mapStateToProps = (state) => ({ theme: state.settings.theme, }); -export default WithBackPressGoToHome()( - withNamespaces(['walletResetConfirmation', 'global'])(connect(mapStateToProps)(WalletResetConfirmation)), -); +export default withNamespaces(['walletResetConfirmation', 'global'])(connect(mapStateToProps)(WalletResetConfirmation)); From 0d44164371c7fbee2aecb6b06a473e7c9672802f Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Tue, 13 Nov 2018 18:49:47 +0000 Subject: [PATCH 050/141] Mobile: Fix modal Android height --- src/desktop/npm-shrinkwrap.json | 186 +++++++++++++---------------- src/mobile/src/ui/theme/general.js | 4 +- 2 files changed, 87 insertions(+), 103 deletions(-) diff --git a/src/desktop/npm-shrinkwrap.json b/src/desktop/npm-shrinkwrap.json index 3b62960b87..1acd863aea 100644 --- a/src/desktop/npm-shrinkwrap.json +++ b/src/desktop/npm-shrinkwrap.json @@ -2273,7 +2273,7 @@ }, "camelcase-keys": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { @@ -2321,7 +2321,7 @@ }, "meow": { "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { @@ -4892,7 +4892,7 @@ "dependencies": { "abbrev": { "version": "1.1.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "dev": true, @@ -4900,14 +4900,13 @@ }, "ansi-regex": { "version": "2.1.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", "dev": true, @@ -4915,7 +4914,7 @@ }, "are-we-there-yet": { "version": "1.1.4", - "resolved": false, + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", "dev": true, "optional": true, @@ -4926,18 +4925,16 @@ }, "balanced-match": { "version": "1.0.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", - "resolved": false, + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -4945,42 +4942,40 @@ }, "chownr": { "version": "1.0.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=", "dev": true, "optional": true }, "code-point-at": { "version": "1.1.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", - "resolved": false, + "resolved": + "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", "dev": true, "optional": true }, "debug": { "version": "2.6.9", - "resolved": false, + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, @@ -4991,7 +4986,7 @@ }, "deep-extend": { "version": "0.5.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.1.tgz", "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==", "dev": true, @@ -4999,21 +4994,21 @@ }, "delegates": { "version": "1.0.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", "dev": true, "optional": true }, "detect-libc": { "version": "1.0.3", - "resolved": false, + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", "dev": true, "optional": true }, "fs-minipass": { "version": "1.2.5", - "resolved": false, + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", "dev": true, @@ -5024,14 +5019,14 @@ }, "fs.realpath": { "version": "1.0.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true, "optional": true }, "gauge": { "version": "2.7.4", - "resolved": false, + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "dev": true, "optional": true, @@ -5048,7 +5043,7 @@ }, "glob": { "version": "7.1.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "dev": true, @@ -5064,14 +5059,14 @@ }, "has-unicode": { "version": "2.0.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", "dev": true, "optional": true }, "iconv-lite": { "version": "0.4.21", - "resolved": false, + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.21.tgz", "integrity": "sha512-En5V9za5mBt2oUA03WGD3TwDv0MKAruqsuxstbMUZaj9W9k/m1CV/9py3l0L5kw9Bln8fdHQmzHSYtvpvTLpKw==", "dev": true, @@ -5082,7 +5077,7 @@ }, "ignore-walk": { "version": "3.0.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", "dev": true, @@ -5093,7 +5088,7 @@ }, "inflight": { "version": "1.0.6", - "resolved": false, + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "optional": true, @@ -5104,14 +5099,13 @@ }, "inherits": { "version": "2.0.3", - "resolved": false, + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", - "resolved": false, + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", "dev": true, @@ -5119,46 +5113,43 @@ }, "is-fullwidth-code-point": { "version": "1.0.0", - "resolved": false, + "resolved": + "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } }, "isarray": { "version": "1.0.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "dev": true, "optional": true }, "minimatch": { "version": "3.0.4", - "resolved": false, + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { "version": "0.0.8", - "resolved": false, + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.2.4", - "resolved": false, + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz", "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -5166,7 +5157,7 @@ }, "minizlib": { "version": "1.1.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz", "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==", "dev": true, @@ -5177,24 +5168,23 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } }, "ms": { "version": "2.0.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true, "optional": true }, "needle": { "version": "2.2.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/needle/-/needle-2.2.0.tgz", "integrity": "sha512-eFagy6c+TYayorXw/qtAdSvaUpEbBsDwDyxYFgLZ0lTojfH7K+OdBqAF7TAFwDokJaGpubpSGG0wO3iC0XPi8w==", "dev": true, @@ -5207,7 +5197,7 @@ }, "node-pre-gyp": { "version": "0.10.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.10.0.tgz", "integrity": "sha512-G7kEonQLRbcA/mOoFoxvlMrw6Q6dPf92+t/l0DFSMuSlDoWaI9JWIyPwK0jyE1bph//CUEL65/Fz1m2vJbmjQQ==", "dev": true, @@ -5227,7 +5217,7 @@ }, "nopt": { "version": "4.0.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", "dev": true, "optional": true, @@ -5238,7 +5228,7 @@ }, "npm-bundled": { "version": "1.0.3", - "resolved": false, + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.3.tgz", "integrity": "sha512-ByQ3oJ/5ETLyglU2+8dBObvhfWXX8dtPZDMePCahptliFX2iIuhyEszyFk401PZUNQH20vvdW5MLjJxkwU80Ow==", "dev": true, @@ -5246,7 +5236,7 @@ }, "npm-packlist": { "version": "1.1.10", - "resolved": false, + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.1.10.tgz", "integrity": "sha512-AQC0Dyhzn4EiYEfIUjCdMl0JJ61I2ER9ukf/sLxJUcZHfo+VyEfz2rMJgLZSS1v30OxPQe1cN0LZA1xbcaVfWA==", "dev": true, @@ -5258,7 +5248,7 @@ }, "npmlog": { "version": "4.1.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", "dev": true, @@ -5272,45 +5262,43 @@ }, "number-is-nan": { "version": "1.0.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true, "optional": true }, "once": { "version": "1.4.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, - "optional": true, "requires": { "wrappy": "1" } }, "os-homedir": { "version": "1.0.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", "dev": true, "optional": true }, "os-tmpdir": { "version": "1.0.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true, "optional": true }, "osenv": { "version": "0.1.5", - "resolved": false, + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", "dev": true, @@ -5322,14 +5310,14 @@ }, "path-is-absolute": { "version": "1.0.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true, "optional": true }, "process-nextick-args": { "version": "2.0.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", "dev": true, @@ -5337,7 +5325,7 @@ }, "rc": { "version": "1.2.7", - "resolved": false, + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.7.tgz", "integrity": "sha512-LdLD8xD4zzLsAT5xyushXDNscEjB7+2ulnl8+r1pnESlYtlJtVSoCMBGr30eDRJ3+2Gq89jK9P9e4tCEH1+ywA==", "dev": true, @@ -5351,7 +5339,7 @@ "dependencies": { "minimist": { "version": "1.2.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true, "optional": true @@ -5360,7 +5348,7 @@ }, "readable-stream": { "version": "2.3.6", - "resolved": false, + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "dev": true, @@ -5377,7 +5365,7 @@ }, "rimraf": { "version": "2.6.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, @@ -5388,14 +5376,14 @@ }, "safe-buffer": { "version": "5.1.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", "dev": true }, "safer-buffer": { "version": "2.1.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true, @@ -5403,7 +5391,7 @@ }, "sax": { "version": "1.2.4", - "resolved": false, + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true, @@ -5411,7 +5399,7 @@ }, "semver": { "version": "5.5.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", "dev": true, @@ -5419,24 +5407,23 @@ }, "set-blocking": { "version": "2.0.0", - "resolved": false, + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", "dev": true, "optional": true }, "signal-exit": { "version": "3.0.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", "dev": true, "optional": true }, "string-width": { "version": "1.0.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -5445,7 +5432,7 @@ }, "string_decoder": { "version": "1.1.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, @@ -5456,24 +5443,23 @@ }, "strip-ansi": { "version": "3.0.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } }, "strip-json-comments": { "version": "2.0.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "dev": true, "optional": true }, "tar": { "version": "4.4.1", - "resolved": false, + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.1.tgz", "integrity": "sha512-O+v1r9yN4tOsvl90p5HAP4AEqbYhx4036AGMm075fH9F8Qwi3oJ+v4u50FkT/KkvywNGtwkk0zRI+8eYm1X/xg==", "dev": true, @@ -5490,14 +5476,14 @@ }, "util-deprecate": { "version": "1.0.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", "dev": true, "optional": true }, "wide-align": { "version": "1.1.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", "dev": true, @@ -5508,17 +5494,15 @@ }, "wrappy": { "version": "1.0.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.2", - "resolved": false, + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=", - "dev": true, - "optional": true + "dev": true } } }, @@ -11653,7 +11637,7 @@ }, "xmlbuilder": { "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", "dev": true } @@ -11773,7 +11757,7 @@ }, "camelcase-keys": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { @@ -11821,7 +11805,7 @@ }, "meow": { "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { @@ -13536,7 +13520,7 @@ }, "slice-ansi": { "version": "0.0.4", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", + "resolved": "http://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", "dev": true }, @@ -15347,7 +15331,7 @@ }, "xmlbuilder": { "version": "8.2.2", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz", + "resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz", "integrity": "sha1-aSSGc0ELS6QuGmE2VR0pIjNap3M=", "dev": true }, diff --git a/src/mobile/src/ui/theme/general.js b/src/mobile/src/ui/theme/general.js index 5cfb98f336..8f7d0ac8e8 100644 --- a/src/mobile/src/ui/theme/general.js +++ b/src/mobile/src/ui/theme/general.js @@ -1,5 +1,5 @@ import { width, height } from 'libs/dimensions'; -import { isIPhoneX } from 'libs/device'; +import { isIPhoneX, isAndroid } from 'libs/device'; export const Styling = { contentWidth: isIPhoneX ? width / 1.08 : width / 1.15, @@ -15,7 +15,7 @@ export const Styling = { fontSize5: width / 19, fontSize6: width / 14, fontSize7: width / 8, - topbarHeight: height / 8.8, + topbarHeight: isAndroid ? height / 10 : height / 8.8, }; export function getBackgroundColor(screen, theme, footerColour = false, inactive = false) { From b7886f274c039756ff2ca98751bad036f5763b86 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Tue, 13 Nov 2018 22:08:23 +0000 Subject: [PATCH 051/141] Mobile: Fix navigating to root animation --- src/mobile/src/ui/components/AnimatedComponent.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mobile/src/ui/components/AnimatedComponent.js b/src/mobile/src/ui/components/AnimatedComponent.js index 239e6bf097..f5696e5545 100644 --- a/src/mobile/src/ui/components/AnimatedComponent.js +++ b/src/mobile/src/ui/components/AnimatedComponent.js @@ -1,3 +1,4 @@ +import head from 'lodash/head'; import last from 'lodash/last'; import merge from 'lodash/merge'; import React, { Component } from 'react'; @@ -66,7 +67,7 @@ class AnimatedComponent extends Component { if ( this.props.navStack.length > newProps.navStack.length && this.screen === last(this.props.navStack) && - newProps.navStack.length !== 1 + head(this.props.navStack) === head(newProps.navStack) ) { this.reverseSlideOut = true; this.iniatialiseAnimations(this.props.animationOutType); @@ -77,7 +78,7 @@ class AnimatedComponent extends Component { if ( this.screen === last(this.props.navStack) && newProps.navStack.length === 1 && - last(this.props.navStack) !== last(newProps.navStack) + head(this.props.navStack) !== head(newProps.navStack) ) { this.reverseSlideIn = false; this.reverseSlideOut = false; From 6bb336f15e245bda64b6ac15339e4d1b406ad238 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Tue, 13 Nov 2018 21:33:03 -0500 Subject: [PATCH 052/141] Mobile: Bump to React Native 0.57.5, React 16.6.1 --- src/mobile/package.json | 10 +- src/mobile/yarn.lock | 867 +++++++++++++++++----------------------- 2 files changed, 381 insertions(+), 496 deletions(-) diff --git a/src/mobile/package.json b/src/mobile/package.json index 3997893a8a..8ed6fc6524 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -21,7 +21,7 @@ "ios:dev": "./node_modules/.bin/cross-env NODE_ENV=development ./node_modules/.bin/react-native run-ios", "test": "NODE_ENV=test ./node_modules/.bin/jest --forceExit", "nodejs-deps": "yarn --cwd nodejs-assets/nodejs-project", - "postinstall": "./node_modules/.bin/rn-nodeify --hack --install && rm ./node_modules/react-native/local-cli/core/__fixtures__/files/package.json && yarn nodejs-deps", + "postinstall": "./node_modules/.bin/rn-nodeify --hack --install && yarn nodejs-deps", "prepare-release": "yarn version && cd ios && bundle exec fastlane release && cd ../android && bundle exec fastlane release && cd .. && echo Successfully incremented version and build numbers! Please remember to run git add ., git commit, git push --tags, and git push", "auditjs": "./../../node_modules/.bin/auditjs -nl error -w whitelist.json", "snyk-protect": "snyk protect", @@ -55,9 +55,9 @@ "punycode": "^1.4.1", "qr.js": "https://github.com/defunctzombie/qr.js", "querystring-es3": "^0.2.1", - "react": "16.5.1", + "react": "16.6.1", "react-i18next": "^8.0.7", - "react-native": "https://github.com/rajivshah3/react-native#0.57-forwardref", + "react-native": "0.57.5", "react-native-camera": "^1.1.4", "react-native-crypto": "^2.0.2", "react-native-detect-navbar-android": "^0.2.0", @@ -135,7 +135,7 @@ "metro-react-native-babel-preset": "^0.45.0", "react-addons-test-utils": "^15.6.2", "react-dom": "^16.2.0", - "react-test-renderer": "^16.5.0", + "react-test-renderer": "16.6.1", "rn-nodeify": "^8.2.0" }, "jest": { @@ -213,4 +213,4 @@ "tls": false }, "snyk": true -} +} \ No newline at end of file diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 4bc2e3376b..77845695d5 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -371,6 +371,13 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-remap-async-to-generator" "^7.1.0" +"@babel/plugin-transform-block-scoped-functions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.0.0.tgz#482b3f75103927e37288b3b67b65f848e2aa0d07" + integrity sha512-AOBiyUp7vYTqz2Jibe1UaAWL0Hl9JUXEgjFvvvcSc9MVDItv46ViXFw2F7SVt1B5k+KWjl44eeXOAk3UDEaJjQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-block-scoping@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0.tgz#1745075edffd7cdaf69fab2fb6f9694424b7e9bc" @@ -445,6 +452,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-member-expression-literals@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.0.0.tgz#96a265bf61a9ed6f75c39db0c30d41ef7aabf072" + integrity sha512-kgAGWcjVdflNPSaRb9rDPdGJ9/gF80VPmxx80gdKz6NSofHvxA2LofECQ+7GrDVzzH8zBJzTn1xlV4xnmWj/nw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-modules-commonjs@^7.0.0": version "7.1.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.1.0.tgz#0a9d86451cbbfb29bd15186306897c67f6f9a05c" @@ -461,6 +475,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-object-super@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.1.0.tgz#b1ae194a054b826d8d4ba7ca91486d4ada0f91bb" + integrity sha512-/O02Je1CRTSk2SSJaq0xjwQ8hG4zhZGNjE8psTsSNPXyLRCODv7/PBozqT5AmQMzp7MI3ndvMhGdqp9c96tTEw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.1.0" + "@babel/plugin-transform-parameters@^7.0.0": version "7.1.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.1.0.tgz#44f492f9d618c9124026e62301c296bf606a7aed" @@ -470,6 +492,13 @@ "@babel/helper-get-function-arity" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-property-literals@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.0.0.tgz#0b95a91dbd1f0be5b5a99ed86571ef5b5ae77009" + integrity sha512-7HK6/jB4MLpwQUJQ3diaX0pbCRcoL9asJscQfU3D1HpDwYdrH6yAUKleUNFHFyGNYBI9UeJrS2Jpx2JhtPKu5g== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-react-display-name@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.0.0.tgz#93759e6c023782e52c2da3b75eca60d4f10533ee" @@ -501,6 +530,16 @@ dependencies: regenerator-transform "^0.13.3" +"@babel/plugin-transform-runtime@^7.0.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.1.0.tgz#9f76920d42551bb577e2dc594df229b5f7624b63" + integrity sha512-WFLMgzu5DLQEah0lKTJzYb14vd6UiES7PTnXcvrPZ1VrwFeJ+mTbvr65fFAsXYMt2bIoOoC0jk76zY1S7HZjUg== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + resolve "^1.8.1" + semver "^5.5.1" + "@babel/plugin-transform-shorthand-properties@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0.tgz#85f8af592dcc07647541a0350e8c95c7bf419d15" @@ -561,6 +600,13 @@ pirates "^4.0.0" source-map-support "^0.5.9" +"@babel/runtime@^7.0.0": + version "7.1.5" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.1.5.tgz#4170907641cf1f61508f563ece3725150cc6fe39" + integrity sha512-xKnPpXG/pvK1B90JkwwxSGii90rQGKtzcMt2gI5G6+M0REXaq6rOHsGC2ay6/d0Uje7zzvSzjEzfR3ENhFlrfA== + dependencies: + regenerator-runtime "^0.12.0" + "@babel/runtime@^7.1.2": version "7.1.2" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.1.2.tgz#81c89935f4647706fc54541145e6b4ecfef4b8e3" @@ -1049,7 +1095,7 @@ babel-code-frame@^6.26.0: esutils "^2.0.2" js-tokens "^3.0.2" -babel-core@^6.0.0, babel-core@^6.26.0, babel-core@^6.7.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== @@ -1088,35 +1134,6 @@ babel-generator@^6.18.0, babel-generator@^6.26.0: source-map "^0.5.7" trim-right "^1.0.1" -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= - dependencies: - babel-runtime "^6.26.0" - babel-types "^6.26.0" - esutils "^2.0.2" - -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-function-name@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-7.0.0-beta.3.tgz#e86dd2eb2c09e06e392e79e203fc02427b24c871" @@ -1127,17 +1144,6 @@ babel-helper-function-name@7.0.0-beta.3: babel-traverse "7.0.0-beta.3" babel-types "7.0.0-beta.3" -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@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-7.0.0-beta.3.tgz#61a47709318a31bc2db872f4be9b4c8447198be8" @@ -1145,30 +1151,6 @@ babel-helper-get-function-arity@7.0.0-beta.3: dependencies: babel-types "7.0.0-beta.3" -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-regex@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" @@ -1188,18 +1170,6 @@ babel-helper-remap-async-to-generator@7.0.0-beta.3: babel-traverse "7.0.0-beta.3" babel-types "7.0.0-beta.3" -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-helper-wrap-function@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-helper-wrap-function/-/babel-helper-wrap-function-7.0.0-beta.3.tgz#0698f3acd2b61bf2ff2f3c8417eb80e878b175fc" @@ -1241,13 +1211,6 @@ babel-messages@^6.23.0: dependencies: babel-runtime "^6.22.0" -babel-plugin-check-es2015-constants@^6.8.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" @@ -1284,11 +1247,6 @@ babel-plugin-syntax-class-properties@7.0.0-beta.3: resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-7.0.0-beta.3.tgz#84480d42dc9ec49f5f8e1e62fb435151cbbe11a3" integrity sha512-0tNuKFPtKtElgd29PAiOHfA+IMALb6vD+tX8XsgDuaWWtgarqdJ3ia1EfFsG5RL7sUNYzKZM4UguMKzKLuvdQQ== -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-decorators@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-7.0.0-beta.3.tgz#c1c4861f1f76138ab15ca6c28db7146e60d4fc2f" @@ -1309,11 +1267,6 @@ babel-plugin-syntax-export-extensions@7.0.0-beta.3: resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-7.0.0-beta.3.tgz#eb6891a63f86652e2f09c332f2ff06a83c07da28" integrity sha512-0xPSnq/39R/kpnKyK0/SfY0Yne3xo6RPhLRrdGEnJUBOvCgiOuQ8ivr2jSV+XK5h+dZYS5+9yWdQiUCkeHQnhA== -babel-plugin-syntax-flow@^6.18.0, babel-plugin-syntax-flow@^6.8.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-function-bind@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-7.0.0-beta.3.tgz#0e6de220815bc24dfc662b5f70a9841ee887e6d9" @@ -1324,11 +1277,6 @@ babel-plugin-syntax-function-sent@7.0.0-beta.3: resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-sent/-/babel-plugin-syntax-function-sent-7.0.0-beta.3.tgz#bd217b5441f64fbeeaaf65512ccdeb05094457c3" integrity sha512-a7D2DbcGqiaSL5ug6IzrFSu03QEmbiR7QuI0LGJM9wnS8YH1l0SjsM+O9GhQ904VgA46qNeQGnHzF9BuPSRaSQ== -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-numeric-separator@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-numeric-separator/-/babel-plugin-syntax-numeric-separator-7.0.0-beta.3.tgz#c94cc94985f55fa62a1f270ad6d48458459589fe" @@ -1339,7 +1287,7 @@ babel-plugin-syntax-object-rest-spread@7.0.0-beta.3: resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-7.0.0-beta.3.tgz#7f781c180899dafd88f132f69472397549be48e5" integrity sha512-21/MnmUFduLr4JzxrKMm/MeF+Jjyi5UdZo38IqzrP0sLhmPbal5ZAUJ4HgWH4339SdjnYgENacbY5wfk/zxTGg== -babel-plugin-syntax-object-rest-spread@^6.13.0, babel-plugin-syntax-object-rest-spread@^6.8.0: +babel-plugin-syntax-object-rest-spread@^6.13.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= @@ -1364,10 +1312,10 @@ babel-plugin-syntax-throw-expressions@7.0.0-beta.3: resolved "https://registry.yarnpkg.com/babel-plugin-syntax-throw-expressions/-/babel-plugin-syntax-throw-expressions-7.0.0-beta.3.tgz#a3469edbf3561b881ea8908d5a9232cbb4e0377a" integrity sha512-Zbz1+y3ooqMhi7yJC+3TpY46/VCmlx/j56iaEtAf1ML70tvsk6UcL5GdI2MON9asdorPuapbKO7uAnyqiCIQaA== -babel-plugin-syntax-trailing-function-commas@^6.8.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-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-async-generator-functions@7.0.0-beta.3: version "7.0.0-beta.3" @@ -1386,16 +1334,6 @@ babel-plugin-transform-class-properties@7.0.0-beta.3: babel-plugin-syntax-class-properties "7.0.0-beta.3" babel-template "7.0.0-beta.3" -babel-plugin-transform-class-properties@^6.8.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-decorators@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-7.0.0-beta.3.tgz#a4f7b348e174d665b1d474b1261f95c794319c0f" @@ -1411,150 +1349,6 @@ babel-plugin-transform-do-expressions@7.0.0-beta.3: dependencies: babel-plugin-syntax-do-expressions "7.0.0-beta.3" -babel-plugin-transform-es2015-arrow-functions@^6.8.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-scoped-functions@^6.8.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" - integrity sha1-u8UbSflk1wy42OC5ToICRs46YUE= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoping@^6.8.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.8.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.8.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.8.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.8.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.8.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.8.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.8.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-object-super@^6.8.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" - integrity sha1-JM72muIcuDp/hgPa0CH1cusnj40= - dependencies: - babel-helper-replace-supers "^6.24.1" - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-parameters@^6.8.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.8.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.8.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.8.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-es3-member-expression-literals@^6.8.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es3-member-expression-literals/-/babel-plugin-transform-es3-member-expression-literals-6.22.0.tgz#733d3444f3ecc41bef8ed1a6a4e09657b8969ebb" - integrity sha1-cz00RPPsxBvvjtGmpOCWV7iWnrs= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es3-property-literals@^6.8.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es3-property-literals/-/babel-plugin-transform-es3-property-literals-6.22.0.tgz#b2078d5842e22abf40f73e8cde9cd3711abd5758" - integrity sha1-sgeNWELiKr9A9z6M3pzTcRq9V1g= - dependencies: - babel-runtime "^6.22.0" - babel-plugin-transform-export-default@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-default/-/babel-plugin-transform-export-default-7.0.0-beta.3.tgz#ab53d924fd4dc774e20e059ada1624b87d1a0001" @@ -1569,14 +1363,6 @@ babel-plugin-transform-export-namespace@7.0.0-beta.3: dependencies: babel-plugin-syntax-export-extensions "7.0.0-beta.3" -babel-plugin-transform-flow-strip-types@^6.8.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-function-bind@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-7.0.0-beta.3.tgz#905f34f2b4f584f931d13e06df3c5fe09a3a2000" @@ -1606,14 +1392,6 @@ babel-plugin-transform-object-rest-spread@7.0.0-beta.3: dependencies: babel-plugin-syntax-object-rest-spread "7.0.0-beta.3" -babel-plugin-transform-object-rest-spread@^6.8.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-optional-catch-binding@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-plugin-transform-optional-catch-binding/-/babel-plugin-transform-optional-catch-binding-7.0.0-beta.3.tgz#029c6e8db58ba5f192efcfdfab1c0e60fc5a48c6" @@ -1635,30 +1413,6 @@ babel-plugin-transform-pipeline-operator@7.0.0-beta.3: dependencies: babel-plugin-syntax-pipeline-operator "7.0.0-beta.3" -babel-plugin-transform-react-display-name@^6.8.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@^6.8.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-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-plugin-transform-throw-expressions@7.0.0-beta.3: version "7.0.0-beta.3" resolved "https://registry.yarnpkg.com/babel-plugin-transform-throw-expressions/-/babel-plugin-transform-throw-expressions-7.0.0-beta.3.tgz#89daad94f2fb5b671c75942bbdd527844751e711" @@ -1674,73 +1428,38 @@ babel-plugin-transform-unicode-property-regex@^2.0.5: babel-helper-regex "^6.26.0" regexpu-core "^4.1.3" -babel-preset-fbjs@2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-2.3.0.tgz#92ff81307c18b926895114f9828ae1674c097f80" - integrity sha512-ZOpAI1/bN0Y3J1ZAK9gRsFkHy9gGgJoDRUjtUCla/129LC7uViq9nIK22YdHfey8szohYoZY3f9L2lGOv0Edqw== - dependencies: - babel-plugin-check-es2015-constants "^6.8.0" - babel-plugin-syntax-class-properties "^6.8.0" - babel-plugin-syntax-flow "^6.8.0" - babel-plugin-syntax-jsx "^6.8.0" - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-plugin-syntax-trailing-function-commas "^6.8.0" - babel-plugin-transform-class-properties "^6.8.0" - babel-plugin-transform-es2015-arrow-functions "^6.8.0" - babel-plugin-transform-es2015-block-scoped-functions "^6.8.0" - babel-plugin-transform-es2015-block-scoping "^6.8.0" - babel-plugin-transform-es2015-classes "^6.8.0" - babel-plugin-transform-es2015-computed-properties "^6.8.0" - babel-plugin-transform-es2015-destructuring "^6.8.0" - babel-plugin-transform-es2015-for-of "^6.8.0" - babel-plugin-transform-es2015-function-name "^6.8.0" - babel-plugin-transform-es2015-literals "^6.8.0" - babel-plugin-transform-es2015-modules-commonjs "^6.8.0" - babel-plugin-transform-es2015-object-super "^6.8.0" - babel-plugin-transform-es2015-parameters "^6.8.0" - babel-plugin-transform-es2015-shorthand-properties "^6.8.0" - babel-plugin-transform-es2015-spread "^6.8.0" - babel-plugin-transform-es2015-template-literals "^6.8.0" - babel-plugin-transform-es3-member-expression-literals "^6.8.0" - babel-plugin-transform-es3-property-literals "^6.8.0" - babel-plugin-transform-flow-strip-types "^6.8.0" - babel-plugin-transform-object-rest-spread "^6.8.0" - babel-plugin-transform-react-display-name "^6.8.0" - babel-plugin-transform-react-jsx "^6.8.0" - -babel-preset-fbjs@^2.1.2: - version "2.1.4" - resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-2.1.4.tgz#22f358e6654073acf61e47a052a777d7bccf03af" - integrity sha512-6XVQwlO26V5/0P9s2Eje8Epqkv/ihaMJ798+W98ktOA8fCn2IFM6wEi7CDW3fTbKFZ/8fDGvGZH01B6GSuNiWA== - dependencies: - babel-plugin-check-es2015-constants "^6.8.0" - babel-plugin-syntax-class-properties "^6.8.0" - babel-plugin-syntax-flow "^6.8.0" - babel-plugin-syntax-jsx "^6.8.0" - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-plugin-syntax-trailing-function-commas "^6.8.0" - babel-plugin-transform-class-properties "^6.8.0" - babel-plugin-transform-es2015-arrow-functions "^6.8.0" - babel-plugin-transform-es2015-block-scoped-functions "^6.8.0" - babel-plugin-transform-es2015-block-scoping "^6.8.0" - babel-plugin-transform-es2015-classes "^6.8.0" - babel-plugin-transform-es2015-computed-properties "^6.8.0" - babel-plugin-transform-es2015-destructuring "^6.8.0" - babel-plugin-transform-es2015-for-of "^6.8.0" - babel-plugin-transform-es2015-function-name "^6.8.0" - babel-plugin-transform-es2015-literals "^6.8.0" - babel-plugin-transform-es2015-modules-commonjs "^6.8.0" - babel-plugin-transform-es2015-object-super "^6.8.0" - babel-plugin-transform-es2015-parameters "^6.8.0" - babel-plugin-transform-es2015-shorthand-properties "^6.8.0" - babel-plugin-transform-es2015-spread "^6.8.0" - babel-plugin-transform-es2015-template-literals "^6.8.0" - babel-plugin-transform-es3-member-expression-literals "^6.8.0" - babel-plugin-transform-es3-property-literals "^6.8.0" - babel-plugin-transform-flow-strip-types "^6.8.0" - babel-plugin-transform-object-rest-spread "^6.8.0" - babel-plugin-transform-react-display-name "^6.8.0" - babel-plugin-transform-react-jsx "^6.8.0" +babel-preset-fbjs@^3.0.0, babel-preset-fbjs@^3.0.1: + version "3.1.0" + resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-3.1.0.tgz#6d1438207369d96384d09257b01602dd0dda6608" + integrity sha512-j+B9xZsnqWFxHaqt3B8aFYftSgrcgbO5NF3mTtHYd6R442NJW2aBk3k+XvxXwIia98UuZxCg8psZY79bXbhwew== + dependencies: + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-syntax-class-properties" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.0.0" + "@babel/plugin-transform-arrow-functions" "^7.0.0" + "@babel/plugin-transform-block-scoped-functions" "^7.0.0" + "@babel/plugin-transform-block-scoping" "^7.0.0" + "@babel/plugin-transform-classes" "^7.0.0" + "@babel/plugin-transform-computed-properties" "^7.0.0" + "@babel/plugin-transform-destructuring" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/plugin-transform-for-of" "^7.0.0" + "@babel/plugin-transform-function-name" "^7.0.0" + "@babel/plugin-transform-literals" "^7.0.0" + "@babel/plugin-transform-member-expression-literals" "^7.0.0" + "@babel/plugin-transform-modules-commonjs" "^7.0.0" + "@babel/plugin-transform-object-super" "^7.0.0" + "@babel/plugin-transform-parameters" "^7.0.0" + "@babel/plugin-transform-property-literals" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.0.0" + "@babel/plugin-transform-react-jsx" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0" + "@babel/plugin-transform-spread" "^7.0.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" @@ -1850,7 +1569,7 @@ babel-traverse@7.0.0-beta.3: invariant "^2.2.0" lodash "^4.2.0" -babel-traverse@^6.0.0, babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: +babel-traverse@^6.0.0, babel-traverse@^6.18.0, 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= @@ -1874,7 +1593,7 @@ babel-types@7.0.0-beta.3: lodash "^4.2.0" to-fast-properties "^2.0.0" -babel-types@^6.0.0, babel-types@^6.18.0, babel-types@^6.24.1, babel-types@^6.26.0: +babel-types@^6.0.0, babel-types@^6.18.0, 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= @@ -2107,6 +1826,11 @@ bser@^2.0.0: 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.0.0" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.0.0.tgz#4cb8832d23612589b0406e9e2956c17f06fdf531" @@ -2622,7 +2346,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== @@ -3080,6 +2804,13 @@ encoding@^0.1.11: dependencies: iconv-lite "~0.4.13" +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" + entities@^1.1.1, entities@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" @@ -3314,6 +3045,19 @@ 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, exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -3456,14 +3200,19 @@ fb-watchman@^2.0.0: dependencies: bser "^2.0.0" -fbjs-scripts@^0.8.1: - version "0.8.3" - resolved "https://registry.yarnpkg.com/fbjs-scripts/-/fbjs-scripts-0.8.3.tgz#b854de7a11e62a37f72dab9aaf4d9b53c4a03174" - integrity sha512-aUJ/uEzMIiBYuj/blLp4sVNkQQ7ZEB/lyplG1IzzOmZ83meiWecrGg5jBo4wWrxXmO4RExdtsSV1QkTjPt2Gag== +fbjs-css-vars@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fbjs-css-vars/-/fbjs-css-vars-1.0.1.tgz#836d876e887d702f45610f5ebd2fbeef649527fc" + integrity sha512-IM+v/C40MNZWqsLErc32e0TyIk/NhkkQZL0QmjBh6zi1eXv0/GeVKmKmueQX7nn9SXQBQbTUcB8zuexIF3/88w== + +fbjs-scripts@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fbjs-scripts/-/fbjs-scripts-1.0.1.tgz#7d8d09d76e83308bf3b1fc7b4c9c6fd081c5ef64" + integrity sha512-x8bfX7k0z5B24Ue0YqjZq/2QxxaKZUNbkGdX//zbQDElMJFqBRrvRi8O3qds7UNNzs78jYqIYCS32Sk/wu5UJg== dependencies: + "@babel/core" "^7.0.0" ansi-colors "^1.0.1" - babel-core "^6.7.2" - babel-preset-fbjs "^2.1.2" + babel-preset-fbjs "^3.0.0" core-js "^2.4.1" cross-spawn "^5.1.0" fancy-log "^1.3.2" @@ -3472,7 +3221,7 @@ fbjs-scripts@^0.8.1: semver "^5.1.0" through2 "^2.0.0" -fbjs@0.8.17, fbjs@^0.8.0: +fbjs@^0.8.0: version "0.8.17" resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd" integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90= @@ -3498,6 +3247,20 @@ fbjs@^0.8.16, fbjs@^0.8.9: setimmediate "^1.0.5" ua-parser-js "^0.7.9" +fbjs@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-1.0.0.tgz#52c215e0883a3c86af2a7a776ed51525ae8e0a5a" + integrity sha512-MUgcMEJaFhCaF1QtWGnmq9ZDRAzECTCRAF7O6UZIlAlkTs1SasiX9aP0Iw7wfD2mJ7wDTNfg2w7u5fSCwJk1OA== + dependencies: + core-js "^2.4.1" + fbjs-css-vars "^1.0.0" + isomorphic-fetch "^2.1.1" + loose-envify "^1.0.0" + object-assign "^4.1.0" + promise "^7.1.1" + setimmediate "^1.0.5" + ua-parser-js "^0.7.18" + figures@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" @@ -3758,6 +3521,13 @@ get-stream@^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-uri@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/get-uri/-/get-uri-2.0.2.tgz#5c795e71326f6ca1286f2fc82575cd2bab2af578" @@ -4713,13 +4483,20 @@ jest-diff@^23.6.0: jest-get-type "^22.1.0" pretty-format "^23.6.0" -jest-docblock@23.2.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= dependencies: detect-newline "^2.1.0" +jest-docblock@^24.0.0-alpha.2: + version "24.0.0-alpha.6" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.0.0-alpha.6.tgz#abb38d04afd624cbfb34e13fa9e0c1053388a333" + integrity sha512-veghPy2eBQ5r8XXd+VLK7AfCxJMTwqA8B2fknR24aibIkGW7dj4fq538HtwIvXkRpUO5f1b5x6IEsCb9g+e6qw== + 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" @@ -4750,19 +4527,19 @@ jest-get-type@^22.1.0: resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz#e3a8504d8479342dd4420236b322869f18900ce4" integrity sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w== -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.0.0-alpha.2: + version "24.0.0-alpha.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.0.0-alpha.2.tgz#bc1d498536c395699a44b1e61a3e901c95a2e5a6" + integrity sha512-FTSIbJdmaddjgpcaXOq+sPGegcE28w7uOHonpsCuEwBQcB0REhkNYY9Wj/e1w+q3SBmEK1++ChgTMEXEzAf0yQ== 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" + jest-docblock "^24.0.0-alpha.2" + jest-serializer "^24.0.0-alpha.2" + jest-worker "^24.0.0-alpha.2" micromatch "^2.3.11" - sane "^2.0.0" + sane "^3.0.0" jest-haste-map@^23.6.0: version "23.6.0" @@ -4903,11 +4680,21 @@ jest-serializer-enzyme@^1.0.0: dependencies: enzyme-to-json "^1.4.4" -jest-serializer@23.0.1, jest-serializer@^23.0.1: +jest-serializer@24.0.0-alpha.2: + version "24.0.0-alpha.2" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.0.0-alpha.2.tgz#adcaa73ef49e56377f7fada19921c300b576e7f9" + integrity sha512-jLHHT71gyYdgMH5sFWP/e8bZjq/TC5iz9DQZlLsRE/7Er//m8WqyiNJs022FEc18PLq3jyk/z06N0xS6YlbsUA== + +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-serializer@^24.0.0-alpha.2: + version "24.0.0-alpha.6" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.0.0-alpha.6.tgz#27d2fee4b1a85698717a30c3ec2ab80767312597" + integrity sha512-IPA5T6/GhlE6dedSk7Cd7YfuORnYjN0VD5iJVFn1Q81RJjpj++Hen5kJbKcg547vXsQ1TddV15qOA/zeIfOCLw== + jest-snapshot@^23.6.0: version "23.6.0" resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-23.6.0.tgz#f9c2625d1b18acda01ec2d2b826c0ce58a5aa17a" @@ -4957,13 +4744,27 @@ jest-watcher@^23.4.0: chalk "^2.0.1" string-length "^2.0.0" -jest-worker@23.2.0, jest-worker@^23.2.0: +jest-worker@24.0.0-alpha.2: + version "24.0.0-alpha.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.0.0-alpha.2.tgz#d376b328094dd5f1e0c6156b4f41b308a99a35bd" + integrity sha512-77YRl8eI4rrtdJ4mzzo4LVABecQmmy7lXsXc00rIJ9oiXJYbz4R4eL6RXcxZcRbwwqYjFL0g9h6H9iQaWqC/Kg== + dependencies: + merge-stream "^1.0.1" + +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= dependencies: merge-stream "^1.0.1" +jest-worker@^24.0.0-alpha.2: + version "24.0.0-alpha.6" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.0.0-alpha.6.tgz#463681b92c117c57107135c14b9b9d6cd51d80ce" + integrity sha512-iXtH7MR9bjWlNnlnRBcrBRrb4cSVxML96La5vsnmBvDI+mJnkP5uEt6Fgpo5Y8f3z9y2Rd7wuPnKRxqQsiU/dA== + dependencies: + merge-stream "^1.0.1" + jest@23.5.0: version "23.5.0" resolved "https://registry.yarnpkg.com/jest/-/jest-23.5.0.tgz#80de353d156ea5ea4a7332f7962ac79135fbc62e" @@ -5545,10 +5346,10 @@ merge@^1.1.3: resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da" integrity sha1-dTHjnUlJwoGma4xabgJl6LBYlNo= -metro-babel-register@^0.45.0: - version "0.45.6" - resolved "https://registry.yarnpkg.com/metro-babel-register/-/metro-babel-register-0.45.6.tgz#c0dfb78b7d4f8454468a515a3118a12b08e855cc" - integrity sha512-Io8JinYIzGcXiTaO7o0DGw8wFcAiITTb7mLh3lbuJd9PndbPOo+jhrHkTsNtXc9MRHiT4KbEheXJ/QoeLKJK/Q== +metro-babel-register@^0.48.1: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro-babel-register/-/metro-babel-register-0.48.3.tgz#459b9e5bd635775e342109b6acd70fd63c731f57" + integrity sha512-KCuapWsM9Nrwb2XHQ0NhiTGZ9PrQfai8drhDrU5+A/aFGQ33N2wOvKet5OVRRyEuUvJ79Hbq0xs4UpFM13tQig== dependencies: "@babel/core" "^7.0.0" "@babel/plugin-proposal-class-properties" "^7.0.0" @@ -5570,49 +5371,98 @@ metro-babel7-plugin-react-transform@0.45.6: dependencies: "@babel/helper-module-imports" "^7.0.0" -metro-cache@0.45.6: - version "0.45.6" - resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.45.6.tgz#7ca9f66bc038a309d21e4c5264b806a692ca5a55" - integrity sha512-v7q2pLsI7oABEjpwPJwTd7ufwKvpctVOddcffI/2hRhuJC/seLlqkRt7kv+Q/WfaR9X4KLcEoIjZmgNy4cw1ag== +metro-babel7-plugin-react-transform@0.48.3: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro-babel7-plugin-react-transform/-/metro-babel7-plugin-react-transform-0.48.3.tgz#c3e43c99173c143537fb234b44cdd6e6b511d511" + integrity sha512-F3fjKig7KJl+5iqjWUStx/Sv3Oryw1cftIx0MhaXOgq4emdd1NYoC1sMYrGdDY8aLPDysH9J7sIeErH805oFUg== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + +metro-cache@0.48.3: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.48.3.tgz#8c2818d3cd6b79570cd7750da4685e9c7c061577" + integrity sha512-q49ult2PW2BYTuGCS5RXmMB+ejdOWtNHWh9yZS5XvI/xlfLZjJL47yakcOz3C8UImdRhWV8X890/+rQU7nALCg== dependencies: - jest-serializer "23.0.1" - metro-core "0.45.6" + jest-serializer "24.0.0-alpha.2" + metro-core "0.48.3" mkdirp "^0.5.1" rimraf "^2.5.4" -metro-config@0.45.6: - version "0.45.6" - resolved "https://registry.yarnpkg.com/metro-config/-/metro-config-0.45.6.tgz#f08472ea8c4807bd23263c42948019a9a4f34ada" - integrity sha512-ZhVtkpXhOi+qWi7vdE3HGIhyyBT1wtIukQuxTMwLTUluv2/1DClo/uX9inmf++CmOhOpU7QpqrMzl6vf+AwnOg== +metro-config@0.48.3: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro-config/-/metro-config-0.48.3.tgz#71f9f27911582e960a660ed2b08cb4ee5d58724d" + integrity sha512-rpO0Edy6H7N2RnEUPQufIG6DdU/lXZcMIRP3UHR93Q7IuZEwkSd3lS0trCMqdkj5Hx7eIx+gj/MQrNDSa0L0gw== dependencies: cosmiconfig "^5.0.5" - metro "0.45.6" - metro-cache "0.45.6" - metro-core "0.45.6" + metro "0.48.3" + metro-cache "0.48.3" + metro-core "0.48.3" + pretty-format "^23.4.1" -metro-core@0.45.6, metro-core@^0.45.0: - version "0.45.6" - resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.45.6.tgz#b8654196cbeb28f75a23756422348f870117e4e3" - integrity sha512-M0YkGnkjStdCsSNYVW+aVlJ4WjwcqjIhQV+VzEnGZYdyo6cMi9MxUZ69iV2jIxd3LAeaQQaNe8OQtQp8dfIh/g== +metro-core@0.48.3, metro-core@^0.48.1: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.48.3.tgz#be2d615eaec759c8d01559e8685554cbdf8e7c4f" + integrity sha512-bLIikpGBvdaZhwvmnpY5OwS2XhOWGX7YUvRN4IegfTOYo88TzL/SAB5Osr7lpYGvTmGdJFJ5Mqr3Xy4bVGFEvA== dependencies: - jest-haste-map "23.5.0" + jest-haste-map "24.0.0-alpha.2" lodash.throttle "^4.1.1" - metro-resolver "0.45.6" + metro-resolver "0.48.3" wordwrap "^1.0.0" -metro-memory-fs@^0.45.0: - version "0.45.6" - resolved "https://registry.yarnpkg.com/metro-memory-fs/-/metro-memory-fs-0.45.6.tgz#9a1fffbde2744b0a0a1d6fcd16f7cb43508f8d7b" - integrity sha512-YAGoNQVTM/vl65jR/ztucAZJIk0ejD3INZT0LiISRULBt6Rxfiqa22v5GG0Enq+95vlgmt26g+auHM2nxTUInQ== +metro-memory-fs@^0.48.1: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro-memory-fs/-/metro-memory-fs-0.48.3.tgz#2d180a73992daf08e242ea49682f72e6f0f7f094" + integrity sha512-Ku6k0JHZZ/EIHlIJZZEAJ7ItDq/AdIOpmgt4ebkQ6WJRUOc0960K3BQdRFiwL8riQKWJMlKZcXc4/2ktoY3U9A== -metro-minify-uglify@0.45.6: - version "0.45.6" - resolved "https://registry.yarnpkg.com/metro-minify-uglify/-/metro-minify-uglify-0.45.6.tgz#72cd952371a50b9204fd89d89e8041640237b7c1" - integrity sha512-l+lZ7Gg6CN9XddgmwAbo7zOLT2QB9a6VALXLzmvr6gB1mc6SBZwtAh+hARvdymtcr1CgbaWADZPAA+W3oQZH4g== +metro-minify-uglify@0.48.3: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro-minify-uglify/-/metro-minify-uglify-0.48.3.tgz#493baadb65f6a1d8cab9fd157ac80c5801b23149" + integrity sha512-EvzoqPMbm839T6AXSYWF76b/VNqoY3E1oAbZoyZbN/J7EHHgz2xEVt4M49fI6tEKPCPzpEpGnJKoxjnkV9XdrA== dependencies: uglify-es "^3.1.9" -metro-react-native-babel-preset@0.45.6, metro-react-native-babel-preset@^0.45.0: +metro-react-native-babel-preset@0.48.3: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.48.3.tgz#839dbd0d9e4012f550861d2295b998144a61bcc8" + integrity sha512-GDW4yWk8z5RGk8A67OTS05luxCHZFDHbEuzesyxG1SlE/W6ODfJOPQpIFlFuPUEvVDunG0lYn3dGBL2VcaVVpQ== + dependencies: + "@babel/plugin-proposal-class-properties" "^7.0.0" + "@babel/plugin-proposal-export-default-from" "^7.0.0" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-proposal-object-rest-spread" "^7.0.0" + "@babel/plugin-proposal-optional-catch-binding" "^7.0.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-transform-arrow-functions" "^7.0.0" + "@babel/plugin-transform-block-scoping" "^7.0.0" + "@babel/plugin-transform-classes" "^7.0.0" + "@babel/plugin-transform-computed-properties" "^7.0.0" + "@babel/plugin-transform-destructuring" "^7.0.0" + "@babel/plugin-transform-exponentiation-operator" "^7.0.0" + "@babel/plugin-transform-flow-strip-types" "^7.0.0" + "@babel/plugin-transform-for-of" "^7.0.0" + "@babel/plugin-transform-function-name" "^7.0.0" + "@babel/plugin-transform-literals" "^7.0.0" + "@babel/plugin-transform-modules-commonjs" "^7.0.0" + "@babel/plugin-transform-object-assign" "^7.0.0" + "@babel/plugin-transform-parameters" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.0.0" + "@babel/plugin-transform-react-jsx" "^7.0.0" + "@babel/plugin-transform-react-jsx-source" "^7.0.0" + "@babel/plugin-transform-regenerator" "^7.0.0" + "@babel/plugin-transform-runtime" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0" + "@babel/plugin-transform-spread" "^7.0.0" + "@babel/plugin-transform-sticky-regex" "^7.0.0" + "@babel/plugin-transform-template-literals" "^7.0.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.48.3" + react-transform-hmr "^1.0.4" + +metro-react-native-babel-preset@^0.45.0: version "0.45.6" resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.45.6.tgz#077ce4039d6461a1b699b215612985415f9816a9" integrity sha512-qh+iXlV2tDfvHYbhh1meihxnzXXXB8nF1fi8z2HFxqYDkFBM48XewXO6mLz97PL8lmuTGvX/2dYVuFtriENw1w== @@ -5652,24 +5502,24 @@ metro-react-native-babel-preset@0.45.6, metro-react-native-babel-preset@^0.45.0: metro-babel7-plugin-react-transform "0.45.6" react-transform-hmr "^1.0.4" -metro-resolver@0.45.6: - version "0.45.6" - resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.45.6.tgz#385407cf8c086f005775d2d28178cf36984273f9" - integrity sha512-RY4tqKxSEz4ahLPaJlx30x6vG8HVyLT3w5aUDcyB5B2eQH3ckLnyUYUpd0sT7HFoJ1T5U5DFtWvS3P4yJcRB7A== +metro-resolver@0.48.3: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.48.3.tgz#3459c117f25a6d91d501eb1c81fdc98fcfea1cc0" + integrity sha512-aXZdd4SWVPnTlnJ55f918QLvGOE8zlrGt8y8/BS0EktzPORkkXnouzC0dtkq5lTpFSX7b1OD2z3ZtZLxM5sQVg== dependencies: absolute-path "^0.0.0" -metro-source-map@0.45.6: - version "0.45.6" - resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.45.6.tgz#49b20bbbc8f047ede7546b6721ab0214a1ad360d" - integrity sha512-FBubSEEitGrvUeuCPVwXTJX7Y1WjFhsUHickqQE+mXplOgREyeZ7o80ffqEWitfsMUQN9385LxIPmAdPzQXLsQ== +metro-source-map@0.48.3: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.48.3.tgz#ab102bf71c83754e6d5a04c3faf612a88e7f5dcf" + integrity sha512-TAIn1c/G69PHa+p4CUl7myXw5gOT4J1xXXLKAjIOA6xjxttMEa1S5co6fsXzvTMR+psK9OAsgBW3VAaEcJGEcw== dependencies: source-map "^0.5.6" -metro@0.45.6, metro@^0.45.0: - version "0.45.6" - resolved "https://registry.yarnpkg.com/metro/-/metro-0.45.6.tgz#b4d7bf5edc39c5f7d73a6bc4d940e03415aa919b" - integrity sha512-+RinU6Qcea/zX9xxfrgmeFBwJ3tsdgLyBJm4tQOmusU4kE8YEE4LQ3IGG60qk3wzYloflMB/8ilIGG4Z/gz2Ew== +metro@0.48.3, metro@^0.48.1: + version "0.48.3" + resolved "https://registry.yarnpkg.com/metro/-/metro-0.48.3.tgz#43639828dc22fd75e0d31ce75a6dc4615feaf5f7" + integrity sha512-sf4Q95Zk7cvqi537WbQTvaPbPXflAk1zGWA50uchkF+frJHZWop5kwtbtWwvDGlPHgptjjXc3yTvIo5Y0LTkqQ== dependencies: "@babel/core" "^7.0.0" "@babel/generator" "^7.0.0" @@ -5680,30 +5530,30 @@ metro@0.45.6, metro@^0.45.0: "@babel/types" "^7.0.0" absolute-path "^0.0.0" async "^2.4.0" - babel-preset-fbjs "2.3.0" + babel-preset-fbjs "^3.0.1" + buffer-crc32 "^0.2.13" chalk "^1.1.1" concat-stream "^1.6.0" connect "^3.6.5" debug "^2.2.0" denodeify "^1.2.1" eventemitter3 "^3.0.0" - fbjs "0.8.17" + fbjs "^1.0.0" 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" + jest-haste-map "24.0.0-alpha.2" + jest-worker "24.0.0-alpha.2" json-stable-stringify "^1.0.1" lodash.throttle "^4.1.1" merge-stream "^1.0.1" - metro-cache "0.45.6" - metro-config "0.45.6" - metro-core "0.45.6" - metro-minify-uglify "0.45.6" - metro-react-native-babel-preset "0.45.6" - metro-resolver "0.45.6" - metro-source-map "0.45.6" + metro-cache "0.48.3" + metro-config "0.48.3" + metro-core "0.48.3" + metro-minify-uglify "0.48.3" + metro-react-native-babel-preset "0.48.3" + metro-resolver "0.48.3" + metro-source-map "0.48.3" mime-types "2.1.11" mkdirp "^0.5.1" node-fetch "^2.2.0" @@ -6334,7 +6184,7 @@ on-headers@~1.0.1: resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" integrity sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c= -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= @@ -6732,7 +6582,7 @@ preserve@^0.2.0: resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= -pretty-format@^23.6.0: +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== @@ -6864,6 +6714,14 @@ public-encrypt@^4.0.0: parse-asn1 "^5.0.0" randombytes "^2.0.1" +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.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" @@ -6994,10 +6852,10 @@ react-deep-force-update@^1.0.0: resolved "https://registry.yarnpkg.com/react-deep-force-update/-/react-deep-force-update-1.1.1.tgz#bcd31478027b64b3339f108921ab520b4313dc2c" integrity sha1-vNMUeAJ7ZLMznxCJIatSC0MT3Cw= -react-devtools-core@3.3.4: - version "3.3.4" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-3.3.4.tgz#9e497a94b73413b91774bf3e3197e539d5f9a21d" - integrity sha512-6lsBDRInT9jU8Ya8bnKWJSsnaGg/xk1ZSfvhc/dHc3n2CUTMfGlqm2tGeZQ9WEoe0Y2K7Lg90Kvb1E8anLePaQ== +react-devtools-core@^3.4.0: + version "3.4.2" + resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-3.4.2.tgz#4888b428f1db9a3078fdff66a1da14f71fb1680e" + integrity sha512-1pqbxenMeOiVPLf5Fm69woc+Q/pb/lLfWCizJuVJQDm9v7x0fcr76VMcq6Q30Onv3ikkfrlAQgOcOdCk/0t5tA== dependencies: shell-quote "^1.6.1" ws "^3.3.1" @@ -7032,10 +6890,10 @@ react-is@^16.3.2: resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.3.2.tgz#f4d3d0e2f5fbb6ac46450641eb2e25bf05d36b22" integrity sha512-ybEM7YOr4yBgFd6w8dJqwxegqZGJNBZl6U27HnGKuTZmDvVrD5quWOK/wAnMywiZzW+Qsk+l4X2c70+thp/A8Q== -react-is@^16.5.2: - version "16.5.2" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.5.2.tgz#e2a7b7c3f5d48062eb769fcb123505eb928722e3" - integrity sha512-hSl7E6l25GTjNEZATqZIuWOgSnpXb3kD0DVCujmg46K5zLxsbiKaaT6VO9slkSBDPZfYs30lwfJwbOFOnoEnKQ== +react-is@^16.6.1: + version "16.6.3" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.6.3.tgz#d2d7462fcfcbe6ec0da56ad69047e47e56e7eac0" + integrity sha512-u7FDWtthB4rWibG/+mFbVd5FvdI20yde86qKGx4lVUTWmPlSWQ4QxbBIrrs+HnXGbxOUlUzTAP/VDmvCwaP2yA== react-lifecycles-compat@2.0.0: version "2.0.0" @@ -7365,10 +7223,12 @@ react-native-vector-icons@^4.5.0: version "2.4.0" resolved "git+https://github.com/cvarley100/react-native-view-shot#b7af36520f10c212ff226c32dc72a6c0b9e1521e" -"react-native@https://github.com/rajivshah3/react-native#0.57-forwardref": - version "0.57.0" - resolved "https://github.com/rajivshah3/react-native#e123f1c372a5f5557864efc1de8d5a3264f5bd46" +react-native@0.57.5: + version "0.57.5" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.57.5.tgz#f1dbcbf1f889845fba954f3e0d47e61cf89d41d9" + integrity sha512-b/RNXcifPr4CrYZEAWmyD+W//KWZkEO4p6/TOZmLPP4M+vkqWqt0wmSW6JWn1bTEeZmRjx1JJZeVtYmtIVl/KA== dependencies: + "@babel/runtime" "^7.0.0" absolute-path "^0.0.0" art "^0.10.0" base64-js "^1.1.2" @@ -7383,17 +7243,17 @@ react-native-vector-icons@^4.5.0: errorhandler "^1.5.0" escape-string-regexp "^1.0.5" event-target-shim "^1.0.5" - fbjs "0.8.17" - fbjs-scripts "^0.8.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.45.0" - metro-babel-register "^0.45.0" - metro-core "^0.45.0" - metro-memory-fs "^0.45.0" + 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" @@ -7408,7 +7268,7 @@ react-native-vector-icons@^4.5.0: promise "^7.1.1" prop-types "^15.5.8" react-clone-referenced-element "^1.0.1" - react-devtools-core "3.3.4" + react-devtools-core "^3.4.0" react-timer-mixin "^0.13.2" regenerator-runtime "^0.11.0" rimraf "^2.5.4" @@ -7417,7 +7277,7 @@ react-native-vector-icons@^4.5.0: shell-quote "1.6.1" stacktrace-parser "^0.1.3" ws "^1.1.0" - xcode "^0.9.1" + xcode "^1.0.0" xmldoc "^0.4.0" yargs "^9.0.0" @@ -7451,6 +7311,16 @@ react-redux@^5.0.6: loose-envify "^1.1.0" prop-types "^15.6.0" +react-test-renderer@16.6.1: + version "16.6.1" + resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.6.1.tgz#8ea357652be3cf81cbd6b2f686e74ebe67c17b78" + integrity sha512-sgZwJZYIgQptRi2qk5+gB8FBQGk4gLSs0gmKZPMfhd3dLkdxIUwVLHteLN3Bnj4LokIZd3U+V2NEJUqeV2PT2w== + dependencies: + object-assign "^4.1.1" + prop-types "^15.6.2" + react-is "^16.6.1" + scheduler "^0.11.0" + react-test-renderer@^16.0.0-0: version "16.3.2" resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.3.2.tgz#3d1ed74fda8db42521fdf03328e933312214749a" @@ -7461,16 +7331,6 @@ react-test-renderer@^16.0.0-0: prop-types "^15.6.0" react-is "^16.3.2" -react-test-renderer@^16.5.0: - version "16.5.2" - resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.5.2.tgz#92e9d2c6f763b9821b2e0b22f994ee675068b5ae" - integrity sha512-AGbJYbCVx1J6jdUgI4s0hNp+9LxlgzKvXl0ROA3DHTrtjAr00Po1RhDZ/eAq2VC/ww8AHgpDXULh5V2rhEqqJg== - dependencies: - object-assign "^4.1.1" - prop-types "^15.6.2" - react-is "^16.5.2" - schedule "^0.5.0" - react-timer-mixin@^0.13.2: version "0.13.3" resolved "https://registry.yarnpkg.com/react-timer-mixin/-/react-timer-mixin-0.13.3.tgz#0da8b9f807ec07dc3e854d082c737c65605b3d22" @@ -7494,15 +7354,15 @@ react@16.2.0: object-assign "^4.1.1" prop-types "^15.6.0" -react@16.5.1: - version "16.5.1" - resolved "https://registry.yarnpkg.com/react/-/react-16.5.1.tgz#8cb8e9f8cdcb4bde41c9a138bfbf907e66132372" - integrity sha512-E+23+rbpPsJgSX812LQkwupUCFnbVE84+L8uxlkqN5MU0DcraWMlVf9cRvKCKtGu0XvScyRnW7Z+9d7ymkjy3A== +react@16.6.1: + version "16.6.1" + resolved "https://registry.yarnpkg.com/react/-/react-16.6.1.tgz#ee2aef4f0a09e494594882029821049772f915fe" + integrity sha512-OtawJThYlvRgm9BXK+xTL7BIlDx8vv21j+fbQDjRRUyok6y7NyjlweGorielTahLZHYIdKUoK2Dp9ByVWuMqxw== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" prop-types "^15.6.2" - schedule "^0.4.0" + scheduler "^0.11.0" read-pkg-up@^1.0.1: version "1.0.1" @@ -7822,7 +7682,7 @@ resolve@^1.3.2: dependencies: path-parse "^1.0.5" -resolve@^1.4.0, resolve@^1.5.0: +resolve@^1.4.0, resolve@^1.5.0, resolve@^1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" integrity sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA== @@ -7966,6 +7826,23 @@ sane@^2.0.0: optionalDependencies: fsevents "^1.2.3" +sane@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-3.1.0.tgz#995193b7dc1445ef1fe41ddfca2faf9f111854c6" + integrity sha512-G5GClRRxT1cELXfdAq7UKtUsv8q/ZC5k8lQGmjEm4HcAl3HzBy68iglyNCmw4+0tiXPCBZntslHlRhbnsSws+Q== + dependencies: + anymatch "^2.0.0" + capture-exit "^1.2.0" + exec-sh "^0.2.0" + 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@>=0.6.0, sax@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" @@ -7976,18 +7853,12 @@ sax@~1.1.1: resolved "https://registry.yarnpkg.com/sax/-/sax-1.1.6.tgz#5d616be8a5e607d54e114afae55b7eaf2fcc3240" integrity sha1-XWFr6KXmB9VOEUr65Vt+ry/MMkA= -schedule@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/schedule/-/schedule-0.4.0.tgz#fa20cfd0bfbf91c47d02272fd7096780d3170bbb" - integrity sha512-hYjmoaEMojiMkWCxKr6ue+LYcZ29u29+AamWYmzwT2VOO9ws5UJp/wNhsVUPiUeNh+EdRfZm7nDeB40ffTfMhA== - dependencies: - object-assign "^4.1.1" - -schedule@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/schedule/-/schedule-0.5.0.tgz#c128fffa0b402488b08b55ae74bb9df55cc29cc8" - integrity sha512-HUcJicG5Ou8xfR//c2rPT0lPIRR09vVvN81T9fqfVgBmhERUbDEQoYKjpBxbueJnCPpSu2ujXzOnRQt6x9o/jw== +scheduler@^0.11.0: + version "0.11.2" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.11.2.tgz#a8db5399d06eba5abac51b705b7151d2319d33d3" + integrity sha512-+WCP3s3wOaW4S7C1tl3TEXp4l9lJn0ZK8G3W3WKRWmw77Z2cIFUW2MiNTMHn5sCjxN+t7N43HAOOgMjyAg5hlg== dependencies: + loose-envify "^1.1.0" object-assign "^4.1.1" secure-keys@^1.0.0: @@ -8005,6 +7876,11 @@ semver@^5.5.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.1.tgz#7dfdd8814bdb7cabc7be0fb1d734cfb66c940477" integrity sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw== +semver@^5.5.1: + version "5.6.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" + integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== + semver@~2.3.1: version "2.3.2" resolved "https://registry.yarnpkg.com/semver/-/semver-2.3.2.tgz#b9848f25d6cf36333073ec9ef8856d42f1233e52" @@ -9607,7 +9483,7 @@ ws@^5.2.0: dependencies: async-limiter "~1.0.0" -xcode@^0.9.1, xcode@^0.9.3: +xcode@^0.9.3: version "0.9.3" resolved "https://registry.yarnpkg.com/xcode/-/xcode-0.9.3.tgz#910a89c16aee6cc0b42ca805a6d0b4cf87211cf3" integrity sha1-kQqJwWrubMC0LKgFptC0z4chHPM= @@ -9616,6 +9492,15 @@ xcode@^0.9.1, xcode@^0.9.3: simple-plist "^0.2.1" uuid "3.0.1" +xcode@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/xcode/-/xcode-1.0.0.tgz#e1f5b1443245ded38c180796df1a10fdeda084ec" + integrity sha1-4fWxRDJF3tOMGAeW3xoQ/e2ghOw= + dependencies: + pegjs "^0.10.0" + simple-plist "^0.2.1" + uuid "3.0.1" + xdg-basedir@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" From 38de1923b87a45adf708b807e41cc4352068a48e Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Wed, 14 Nov 2018 12:00:18 +0000 Subject: [PATCH 053/141] Mobile: Fix Android back press on final screen, and minor layout --- src/mobile/src/ui/components/BackPress.js | 20 ++++++++----------- src/mobile/src/ui/components/EnterPassword.js | 5 ++--- .../src/ui/components/EnterPasswordOnLogin.js | 2 +- 3 files changed, 11 insertions(+), 16 deletions(-) diff --git a/src/mobile/src/ui/components/BackPress.js b/src/mobile/src/ui/components/BackPress.js index 356d96bf68..635c86675d 100644 --- a/src/mobile/src/ui/components/BackPress.js +++ b/src/mobile/src/ui/components/BackPress.js @@ -70,6 +70,7 @@ export default function withBackPress(C) { */ withBackPressPopRoute() { navigator.pop(this.props.componentId); + return true; } /** @@ -83,6 +84,7 @@ export default function withBackPress(C) { } this.lastBackPressed = Date.now(); ToastAndroid.show(i18next.t('global:pressBackAgain'), ToastAndroid.SHORT); + return true; } /** @@ -93,8 +95,7 @@ export default function withBackPress(C) { withBackPressNavigateSettings(currentSetting) { switch (currentSetting) { case 'mainSettings': - this.withBackPressCloseApp(); - return true; + return this.withBackPressCloseApp(); case 'modeSelection': case 'themeCustomisation': case 'currencySelection': @@ -103,29 +104,24 @@ export default function withBackPress(C) { case 'securitySettings': case 'advancedSettings': case 'about': - this.props.setSetting('mainSettings'); - return true; + return this.props.setSetting('mainSettings'); case 'nodeSelection': case 'addCustomNode': case 'manualSync': case 'snapshotTransition': case 'pow': case 'autoPromotion': - this.props.setSetting('advancedSettings'); - return true; + return this.props.setSetting('advancedSettings'); case 'viewSeed': case 'viewAddresses': case 'editAccountName': case 'deleteAccount': case 'addNewAccount': - this.props.setSetting('accountManagement'); - return true; + return this.props.setSetting('accountManagement'); case 'addExistingSeed': - this.props.setSetting('addNewAccount'); - return true; + return this.props.setSetting('addNewAccount'); case 'changePassword': - this.props.setSetting('securitySettings'); - return true; + return this.props.setSetting('securitySettings'); default: break; } diff --git a/src/mobile/src/ui/components/EnterPassword.js b/src/mobile/src/ui/components/EnterPassword.js index b90a1e3f66..d7bfac671b 100644 --- a/src/mobile/src/ui/components/EnterPassword.js +++ b/src/mobile/src/ui/components/EnterPassword.js @@ -15,15 +15,14 @@ import CustomTextInput from './CustomTextInput'; const styles = StyleSheet.create({ topContainer: { - flex: 1.2, + flex: 2.4, alignItems: 'center', justifyContent: 'flex-start', paddingTop: height / 16, }, midContainer: { - flex: 4.8, + flex: 3.2, alignItems: 'center', - paddingTop: height / 5, }, bottomContainer: { flex: 0.7, diff --git a/src/mobile/src/ui/components/EnterPasswordOnLogin.js b/src/mobile/src/ui/components/EnterPasswordOnLogin.js index 79e57e5ff7..56205d2dad 100644 --- a/src/mobile/src/ui/components/EnterPasswordOnLogin.js +++ b/src/mobile/src/ui/components/EnterPasswordOnLogin.js @@ -19,7 +19,7 @@ const styles = StyleSheet.create({ paddingTop: height / 16, }, midContainer: { - flex: 3.6, + flex: 3.2, width, alignItems: 'center', }, From fca9efd5f019c856a8c3cb372daad065e1571c62 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Wed, 14 Nov 2018 13:41:24 +0000 Subject: [PATCH 054/141] Shared: Fix warning icon --- .../src/ui/components/input/Password.js | 2 +- .../src/ui/components/RootDetectionModal.js | 4 ++-- src/shared/icons/Icons.svg | 6 +++--- src/shared/icons/Icons.ttf | Bin 19280 -> 19248 bytes src/shared/icons/icons.js | 2 +- src/shared/icons/icons/attention.svg | 1 + src/shared/icons/icons/warning.svg | 13 ------------- 7 files changed, 8 insertions(+), 20 deletions(-) create mode 100644 src/shared/icons/icons/attention.svg delete mode 100644 src/shared/icons/icons/warning.svg diff --git a/src/desktop/src/ui/components/input/Password.js b/src/desktop/src/ui/components/input/Password.js index 9b568d0294..5ebdbbaacb 100644 --- a/src/desktop/src/ui/components/input/Password.js +++ b/src/desktop/src/ui/components/input/Password.js @@ -108,7 +108,7 @@ class PasswordInput extends React.PureComponent { /> {label} - + {t('capsLockIsOn')} {showScore ? ( diff --git a/src/mobile/src/ui/components/RootDetectionModal.js b/src/mobile/src/ui/components/RootDetectionModal.js index 840be077bc..4048900114 100644 --- a/src/mobile/src/ui/components/RootDetectionModal.js +++ b/src/mobile/src/ui/components/RootDetectionModal.js @@ -17,7 +17,7 @@ const styles = StyleSheet.create({ color: 'red', }, icon: { - opacity: 0.6, + opacity: 0.8, paddingVertical: height / 30, backgroundColor: 'transparent', }, @@ -65,7 +65,7 @@ export class RootDetectionModal extends PureComponent { rightButtonText={t('yes')} > {t('warning')} - + {t('appearsRooted')} diff --git a/src/shared/icons/Icons.svg b/src/shared/icons/Icons.svg index 1063d0cebd..bbc9ad0b6a 100644 --- a/src/shared/icons/Icons.svg +++ b/src/shared/icons/Icons.svg @@ -106,6 +106,9 @@ + @@ -169,9 +172,6 @@ - diff --git a/src/shared/icons/Icons.ttf b/src/shared/icons/Icons.ttf index 7350b6f0352e046d5bcbc9dbab26c8c8739a7a91..8cd02a37c5183d743f1de4c14f6dd94d67a7c716 100644 GIT binary patch delta 867 zcmXYvT}V@57{~wbIcGc5v7MH4U#70rHcj(uI!hA63)douFuMq1%#Sp1DmlU|PzD7-psMZIW_?X zz=}!8sEc)WwfjE=zXR+9x!vbGYa4Fmx}Q^gpW;hBspQC~Uu{1DX%kQ`_YdB@YQL@g z0MtdGt#P0)*;~~9Zjf?6643!NERqtX{WId|Kq@`dn<&9Uv41F;>T@nkjR74w@_vsDkEY))Z!ZI9Hs}yt#^Du8G*&&Y|5X(6 zIKtUqT7*M+GgmH5C$v*LuE@|x()i=bqIjtr1YEwV5n0-$Km7V+F&I`M#l=e8YZn407h1w z0I27y=9ssUqDKNCLb@iPx6f--H>=|vYP^2QsW|70?ZwkBmut$k<=*lXdU`!iy?*Zl z-;0vdC5wmBrL$%0<>$)hjX#imsXD?F3cV&>UX%OjgSEp4`fe&&Ak@sF4Q}Q#2M;qx zAk^e&jJk>)PO};awKCe5GN)P2=KD2GWh-i#g%&M;M{eIu6lz|dW)-W~CP!?x{EE#R zk+%MQ(X0%1O|$E;YV(>kqR}rRS+(qH%|mzA6mv?fh5O>^>`Yu@g$2oUx^F0bZFq>! Oo_$il5-dSu0{#P>0?~y4 delta 904 zcmXYuOH30{6o${8N2m6|bV_LpN(E!yR6>lVAhw#eG(ut(6O2o@ zSDPrCYFMzrkkpNdF+LJw)CEK(MvXBDJ61-FA+`0)3^V!WKj)u&?wmPyDMyxbWEKbj znBgX{&=!uKI#NF>9|a&i=w?nt1HqZ~u|>=mFh4z>ie=Vz4Qv812sau}Ub}cN(r_O@ zcn&Zyn3#xNsI1!v;o2WaR{{+q!>M~cMfN39)7h_|%0IClQ`k&Sj?c!nR}D$rUYuO)VCXMyazfVVM=z&8(*e5hkzR?h4qK_C0%`yGF+7-|hCgRU4ykb>y%7bR1B$mqn{wZ0Kb@wj1 zyz0^yq>@HiH{Xo=H5D>!AE|Bzkn=idf`YSAfhPKznK1&fu4>Z&Xrs>z;pzjJEocA)QCBno_EL}FA_3YZ47a~@j5yv`4OV@09(K;V=3Q^x zK6lprz4~m;jhfQ#^qyetNzWax$vfhGsNaPpK~f6G0(sXghjRuFj~_(r(~EsWBk{@I zq@M(xF5(m_h`*jlKDkrs=n6WkB!@xp$$dmkYKgw>^pis#s5 zDPp$SoHmWarning2 \ No newline at end of file diff --git a/src/shared/icons/icons/warning.svg b/src/shared/icons/icons/warning.svg deleted file mode 100644 index 175919bebc..0000000000 --- a/src/shared/icons/icons/warning.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - From 27ed78fd63695869e16a2d0c9619298a448c9dbd Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 15 Nov 2018 13:54:57 +0000 Subject: [PATCH 055/141] Mobile: Add sliders, clean up UI --- .../__tests__/ui/components/InfoBox.spec.js | 52 ---- .../__tests__/ui/components/QrScanner.spec.js | 20 +- src/mobile/src/ui/components/Button.js | 24 +- .../src/ui/components/DualFooterButtons.js | 15 +- src/mobile/src/ui/components/InfoBox.js | 74 +---- src/mobile/src/ui/components/ModalView.js | 9 +- src/mobile/src/ui/components/PrintModal.js | 152 ++++------ src/mobile/src/ui/components/QrScanner.js | 52 ++-- src/mobile/src/ui/components/Slider.js | 279 ++++++++++++++++++ .../src/ui/views/onboarding/EnterSeed.js | 31 +- .../src/ui/views/onboarding/LanguageSetup.js | 18 +- .../views/onboarding/SaveSeedConfirmation.js | 219 +++++--------- .../src/ui/views/onboarding/SeedReentry.js | 26 +- .../src/ui/views/onboarding/SetAccountName.js | 18 +- .../src/ui/views/onboarding/SetPassword.js | 24 +- .../src/ui/views/onboarding/WalletSetup.js | 40 ++- .../src/ui/views/wallet/AutoPromotion.js | 17 +- .../src/ui/views/wallet/ChangePassword.js | 14 +- .../src/ui/views/wallet/DeleteAccount.js | 32 +- .../ui/views/wallet/ForceChangePassword.js | 21 +- src/mobile/src/ui/views/wallet/ManualSync.js | 46 ++- .../src/ui/views/wallet/ModeSelection.js | 20 +- src/mobile/src/ui/views/wallet/Pow.js | 19 +- src/mobile/src/ui/views/wallet/Send.js | 1 + .../src/ui/views/wallet/SnapshotTransition.js | 92 +++--- .../ui/views/wallet/TwoFactorSetupAddKey.js | 5 +- .../views/wallet/TwoFactorSetupEnterToken.js | 2 +- .../src/ui/views/wallet/UseExistingSeed.js | 1 + src/mobile/src/ui/views/wallet/ViewSeed.js | 57 ++-- .../views/wallet/WalletResetConfirmation.js | 35 +-- src/shared/images/checkbox-checked-black.png | Bin 748 -> 0 bytes src/shared/images/checkbox-checked-white.png | Bin 789 -> 0 bytes .../images/checkbox-unchecked-black.png | Bin 442 -> 0 bytes .../images/checkbox-unchecked-white.png | Bin 418 -> 0 bytes src/shared/locales/en/translation.json | 14 +- 35 files changed, 701 insertions(+), 728 deletions(-) delete mode 100644 src/mobile/__tests__/ui/components/InfoBox.spec.js create mode 100644 src/mobile/src/ui/components/Slider.js delete mode 100644 src/shared/images/checkbox-checked-black.png delete mode 100644 src/shared/images/checkbox-checked-white.png delete mode 100644 src/shared/images/checkbox-unchecked-black.png delete mode 100644 src/shared/images/checkbox-unchecked-white.png diff --git a/src/mobile/__tests__/ui/components/InfoBox.spec.js b/src/mobile/__tests__/ui/components/InfoBox.spec.js deleted file mode 100644 index 26b5711726..0000000000 --- a/src/mobile/__tests__/ui/components/InfoBox.spec.js +++ /dev/null @@ -1,52 +0,0 @@ -import assign from 'lodash/assign'; -import React from 'react'; -import PropTypes from 'prop-types'; -import { shallow } from 'enzyme'; -import InfoBox from 'ui/components/InfoBox'; - -const getProps = (overrides) => - assign( - {}, - { - body: {}, - text: 'foo', - }, - overrides, - ); - -describe('Testing InfoBox component', () => { - describe('propTypes', () => { - it('should require a body object as a prop', () => { - expect(InfoBox.propTypes.body).toEqual(PropTypes.object.isRequired); - }); - }); - - describe('when renders', () => { - it('should not explode', () => { - const props = getProps(); - - const wrapper = shallow(); - expect(wrapper.name()).toEqual('View'); - }); - - it('should return an "Icon" component', () => { - const props = getProps(); - - const wrapper = shallow(); - expect(wrapper.find('Icon').length).toEqual(1); - }); - - it('should return "text" prop as a child to last View component', () => { - const props = getProps(); - - const wrapper = shallow(); - expect( - wrapper - .find('View') - .children() - .at(4) - .text(), - ).toEqual('foo'); - }); - }); -}); diff --git a/src/mobile/__tests__/ui/components/QrScanner.spec.js b/src/mobile/__tests__/ui/components/QrScanner.spec.js index 69489281e9..aaa33c3872 100644 --- a/src/mobile/__tests__/ui/components/QrScanner.spec.js +++ b/src/mobile/__tests__/ui/components/QrScanner.spec.js @@ -3,7 +3,6 @@ import noop from 'lodash/noop'; import React from 'react'; import PropTypes from 'prop-types'; import { shallow } from 'enzyme'; -import SingleFooterButton from 'ui/components/SingleFooterButton'; import { QRScanner as QrScannerComponent } from 'ui/components/QrScanner'; jest.mock('react-native-camera', () => ({})); @@ -48,7 +47,7 @@ describe('Testing QrScanner component', () => { const props = getProps(); const wrapper = shallow(); - expect(wrapper.name()).toEqual('View'); + expect(wrapper.name()).toEqual('Connect(ModalViewComponent)'); }); it('should return a QrCodeScanner component', () => { @@ -58,23 +57,6 @@ describe('Testing QrScanner component', () => { expect(wrapper.find('QRCodeScanner').length).toEqual(1); }); - it('should call prop method hideModal when onPress prop of SingleFooterButton is triggered', () => { - const props = getProps({ - hideModal: jest.fn(), - }); - - const wrapper = shallow(); - - expect(props.hideModal).toHaveBeenCalledTimes(0); - - wrapper - .find(SingleFooterButton) - .props() - .onButtonPress(); - - expect(props.hideModal).toHaveBeenCalledTimes(1); - }); - it('should call prop method onQRRead when onRead prop of QRCodeScanner is triggered', () => { const props = getProps({ onQRRead: jest.fn(), diff --git a/src/mobile/src/ui/components/Button.js b/src/mobile/src/ui/components/Button.js index 33c0a81a39..87e31b2202 100644 --- a/src/mobile/src/ui/components/Button.js +++ b/src/mobile/src/ui/components/Button.js @@ -1,5 +1,5 @@ import React, { PureComponent } from 'react'; -import { View, Text, StyleSheet, TouchableOpacity, ActivityIndicator } from 'react-native'; +import { View, Text, StyleSheet, TouchableOpacity, ActivityIndicator, Animated, Easing } from 'react-native'; import PropTypes from 'prop-types'; import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; @@ -33,18 +33,36 @@ export default class Button extends PureComponent { testID: PropTypes.string, /** Determines whether to display ActivityIndicator */ isLoading: PropTypes.bool, + /** Determines whether to disable button */ + disable: PropTypes.bool, }; static defaultProps = { style: {}, testID: '', + disable: false, }; + constructor(props) { + super(props); + this.opacity = new Animated.Value(props.disable ? 0.4 : 1); + } + + componentWillReceiveProps(newProps) { + if (this.props.disable && !newProps.disable) { + Animated.timing(this.opacity, { + toValue: 1, + duration: 900, + easing: Easing.ease, + }).start(); + } + } + render() { const { style, children, testID, isLoading } = this.props; return ( - + this.props.onPress()} testID={testID}> {(isLoading && ) || ( @@ -52,7 +70,7 @@ export default class Button extends PureComponent { )} - +
); } } diff --git a/src/mobile/src/ui/components/DualFooterButtons.js b/src/mobile/src/ui/components/DualFooterButtons.js index 722f3b48b1..5a4061e4de 100644 --- a/src/mobile/src/ui/components/DualFooterButtons.js +++ b/src/mobile/src/ui/components/DualFooterButtons.js @@ -47,12 +47,18 @@ class DualFooterButtons extends PureComponent { debounceTime: PropTypes.number, /** Current screen is navstack*/ currentScreen: PropTypes.string, + /** Determines whether to disable left button */ + disableLeftButton: PropTypes.bool, + /** Determines whether to disable right button */ + disableRightButton: PropTypes.bool, }; static defaultProps = { leftButtonStyle: {}, rightButtonStyle: {}, debounceTime: 300, + disableLeftButton: false, + disableRightButton: false, }; componentWillUnmount() { @@ -90,12 +96,14 @@ class DualFooterButtons extends PureComponent { isRightButtonLoading, onLeftButtonPress, onRightButtonPress, + disableLeftButton, + disableRightButton, } = this.props; const borderRadius = isIPhoneX ? Styling.borderRadiusExtraLarge : 0; return ( diff --git a/src/mobile/src/ui/components/InfoBox.js b/src/mobile/src/ui/components/InfoBox.js index 77384ef9e1..2ad8541a0a 100644 --- a/src/mobile/src/ui/components/InfoBox.js +++ b/src/mobile/src/ui/components/InfoBox.js @@ -1,58 +1,30 @@ import React, { PureComponent } from 'react'; import { View, StyleSheet } from 'react-native'; +import { connect } from 'react-redux'; import PropTypes from 'prop-types'; -import tinycolor from 'tinycolor2'; import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; -import { Icon } from 'ui/theme/icons'; const styles = StyleSheet.create({ fieldContainer: { justifyContent: 'center', alignItems: 'center', + width, }, innerContainer: { - flexDirection: 'row', - borderBottomLeftRadius: Styling.borderRadiusSmall, - borderBottomRightRadius: Styling.borderRadiusSmall, - alignItems: 'center', - justifyContent: 'space-between', - paddingTop: height / 23, - paddingBottom: height / 30, - paddingHorizontal: width / 17, - }, - icon: { - position: 'absolute', - top: height / 24 - height / 48, - left: width / 17, - }, - iconContainer: { - width: height / 24, - height: height / 48, - borderBottomLeftRadius: height / 24, - borderBottomRightRadius: height / 24, - justifyContent: 'flex-end', - position: 'absolute', - top: height / 24, - left: width / 17, - }, - banner: { - borderTopLeftRadius: 6, - borderTopRightRadius: 6, - height: height / 24, - alignItems: 'center', + width: Styling.contentWidth, + paddingVertical: height / 22, }, }); class InfoBox extends PureComponent { static propTypes = { - /** Content base colors */ - body: PropTypes.object.isRequired, /** Infobox children content */ - text: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired, - /** Infobox width */ - width: PropTypes.number, + children: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired, + /** Container style object */ containerStyle: PropTypes.object, + /** @ignore */ + theme: PropTypes.object, }; static defaultProps = { @@ -60,32 +32,18 @@ class InfoBox extends PureComponent { }; render() { - const { body, text, width, containerStyle } = this.props; - const isBgLight = tinycolor(body.bg).isLight(); - const fieldContainerStyling = isBgLight ? null : { backgroundColor: 'rgba(255, 255, 255, 0.05)' }; - const innerContainerStyling = isBgLight - ? { borderColor: body.color, borderWidth: 1 } - : { backgroundColor: 'rgba(255, 255, 255, 0.05)' }; - const bannerStyling = isBgLight - ? { - borderColor: body.color, - borderTopWidth: 1, - borderLeftWidth: 1, - borderRightWidth: 1, - } - : { backgroundColor: 'rgba(255, 255, 255, 0.15)' }; - const iconContainerStyling = isBgLight ? { borderWidth: 1 } : { backgroundColor: 'rgba(255, 255, 255, 0.11)' }; - const iconStyling = isBgLight ? { backgroundColor: body.bg } : null; + const { children, containerStyle, theme: { dark } } = this.props; return ( - - - {text} - - + + {children} ); } } -export default InfoBox; +const mapStateToProps = (state) => ({ + theme: state.settings.theme, +}); + +export default connect(mapStateToProps)(InfoBox); diff --git a/src/mobile/src/ui/components/ModalView.js b/src/mobile/src/ui/components/ModalView.js index b9f43123a2..bc7ca16169 100644 --- a/src/mobile/src/ui/components/ModalView.js +++ b/src/mobile/src/ui/components/ModalView.js @@ -51,6 +51,8 @@ export class ModalViewComponent extends PureComponent { buttonText: PropTypes.string, /** Triggered on button press for single footer button */ onButtonPress: PropTypes.func, + /** Determines whether right footer button should be disabled */ + disableRightButton: PropTypes.bool, }; static defaultProps = { @@ -62,6 +64,7 @@ export class ModalViewComponent extends PureComponent { onRightButtonPress: () => {}, onButtonPress: () => {}, buttonText: '', + disableRightButton: false, }; render() { @@ -76,6 +79,7 @@ export class ModalViewComponent extends PureComponent { onRightButtonPress, buttonText, onButtonPress, + disableRightButton, } = this.props; return ( @@ -84,7 +88,9 @@ export class ModalViewComponent extends PureComponent { style={[ styles.modalContainer, { backgroundColor: body.bg }, - displayTopBar ? { height: height - Styling.topbarHeight } : { flex: 1 }, + displayTopBar + ? { height: isIPhoneX ? height - Styling.topbarHeight - 5 : height - Styling.topbarHeight } + : { flex: 1 }, ]} > {children} @@ -94,6 +100,7 @@ export class ModalViewComponent extends PureComponent { onRightButtonPress={() => onRightButtonPress()} leftButtonText={leftButtonText} rightButtonText={rightButtonText} + disableRightButton={disableRightButton} /> )) || onButtonPress()} buttonText={buttonText} />} diff --git a/src/mobile/src/ui/components/PrintModal.js b/src/mobile/src/ui/components/PrintModal.js index dbb16100b3..5c30774521 100644 --- a/src/mobile/src/ui/components/PrintModal.js +++ b/src/mobile/src/ui/components/PrintModal.js @@ -1,51 +1,32 @@ import React, { PureComponent } from 'react'; import { withNamespaces } from 'react-i18next'; import PropTypes from 'prop-types'; -import { View, Text, StyleSheet, TouchableOpacity, Image } from 'react-native'; -import tinycolor from 'tinycolor2'; -import whiteCheckboxCheckedImagePath from 'shared-modules/images/checkbox-checked-white.png'; -import whiteCheckboxUncheckedImagePath from 'shared-modules/images/checkbox-unchecked-white.png'; -import blackCheckboxCheckedImagePath from 'shared-modules/images/checkbox-checked-black.png'; -import blackCheckboxUncheckedImagePath from 'shared-modules/images/checkbox-unchecked-black.png'; +import { View, Text, StyleSheet } from 'react-native'; import { Styling } from 'ui/theme/general'; import { width, height } from 'libs/dimensions'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; +import ModalView from './ModalView'; import InfoBox from './InfoBox'; -import ModalButtons from './ModalButtons'; +import Slider from './Slider'; const styles = StyleSheet.create({ - checkboxContainer: { - flexDirection: 'row', - justifyContent: 'center', - alignItems: 'center', - height: height / 14, - }, - checkboxText: { + infoTextLarge: { fontFamily: 'SourceSansPro-Light', - fontSize: Styling.fontSize3, - paddingLeft: width / 20, - flex: 6, - }, - checkbox: { - width: width / 20, - height: width / 20, - }, - infoText: { - fontFamily: 'SourceSansPro-Light', - fontSize: Styling.fontSize3, - textAlign: 'left', + fontSize: Styling.fontSize6, + textAlign: 'center', backgroundColor: 'transparent', + width: width / 1.3, }, infoTextNormal: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, infoTextBold: { fontFamily: 'SourceSansPro-Bold', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, }); @@ -65,8 +46,8 @@ export class RootDetectionModal extends PureComponent { constructor(props) { super(props); this.state = { - publicWifiChecked: false, - publicPrinterChecked: false, + publicWifiConfirmed: false, + publicPrinterConfirmed: false, }; } @@ -74,85 +55,58 @@ export class RootDetectionModal extends PureComponent { leaveNavigationBreadcrumb('PrintModal'); } - onPublicWifiCheckboxPress() { - this.setState({ - publicWifiChecked: !this.state.publicWifiChecked, - }); - } - - onPublicPrinterCheckboxPress() { - this.setState({ - publicPrinterChecked: !this.state.publicPrinterChecked, - }); - } - - onPrintPress() { - const { publicPrinterChecked, publicWifiChecked } = this.state; - if (publicWifiChecked && publicPrinterChecked) { - this.props.print(); + onSwipeSuccess() { + if (!this.state.publicWifiConfirmed) { + return this.setState({ publicWifiConfirmed: true }); } + this.setState({ publicPrinterConfirmed: true }); } - getCheckbox(checkboxChecked) { - const { theme: { body } } = this.props; - const isBgDark = tinycolor(body.bg).isDark(); - if (checkboxChecked) { - return isBgDark ? whiteCheckboxCheckedImagePath : blackCheckboxCheckedImagePath; - } - return isBgDark ? whiteCheckboxUncheckedImagePath : blackCheckboxUncheckedImagePath; + onPrintPress() { + this.props.print(); } render() { - const { t, theme: { body } } = this.props; - const { publicPrinterChecked, publicWifiChecked } = this.state; - const opacity = publicWifiChecked && publicPrinterChecked ? 1 : 0.1; + const { t, theme: { body, input, dark, secondary, primary } } = this.props; const textColor = { color: body.color }; return ( - - - - {t('paperConvenience')} - {t('publicInsecure')} - - - {t('tapCheckboxes')} - - - this.onPublicWifiCheckboxPress()} - > - - {t('wifiCheckbox')} - - this.onPublicPrinterCheckboxPress()} - > - - {t('printerCheckbox')} - - - - this.props.hideModal()} - onRightButtonPress={() => this.onPrintPress()} - leftText={t('global:back').toUpperCase()} - rightText={t('print')} - opacity={opacity} - containerWidth={{ width: width / 1.25 }} - buttonWidth={{ width: width / 2.85 }} - /> - - - } + this.props.hideModal()} + onRightButtonPress={() => this.onPrintPress()} + leftButtonText={t('global:back')} + rightButtonText={t('print')} + disableRightButton={!this.state.publicPrinterConfirmed} + > + + {t('pleaseCheck')} + + + {t('paperConvenience')} + + {t('publicInsecure')} + + + + + {this.state.publicWifiConfirmed ? t('printerConfirmation') : t('wifiConfirmation')} + + + { + this.onSwipeSuccess(); + }} + sliderReset={this.state.publicWifiConfirmed} + numberOfSliders={2} /> - + + ); } } diff --git a/src/mobile/src/ui/components/QrScanner.js b/src/mobile/src/ui/components/QrScanner.js index 35b86cb3b7..aba9c03e00 100644 --- a/src/mobile/src/ui/components/QrScanner.js +++ b/src/mobile/src/ui/components/QrScanner.js @@ -4,11 +4,9 @@ import { View, Text, StyleSheet, PermissionsAndroid } from 'react-native'; import QRCodeScanner from 'react-native-qrcode-scanner'; import { withNamespaces } from 'react-i18next'; import { Styling } from 'ui/theme/general'; -import { isAndroid, isIPhoneX } from 'libs/device'; -import { width, height } from 'libs/dimensions'; +import { isAndroid } from 'libs/device'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; -import SingleFooterButton from 'ui/components/SingleFooterButton'; -import DynamicStatusBar from './DynamicStatusBar'; +import ModalView from './ModalView'; const styles = StyleSheet.create({ qrInfoText: { @@ -16,25 +14,10 @@ const styles = StyleSheet.create({ textAlign: 'center', fontSize: Styling.fontSize4, }, - closeButton: { - flexDirection: 'row', - borderRadius: Styling.borderRadius, - width: width / 2.5, - height: height / 14, + textContainer: { + flex: 1, justifyContent: 'center', alignItems: 'center', - backgroundColor: '#009f3f', - borderWidth: 1.2, - }, - closeButtonText: { - color: 'white', - fontFamily: 'SourceSansPro-SemiBold', - fontSize: Styling.fontSize3, - backgroundColor: 'transparent', - }, - modalContent: { - alignItems: 'center', - justifyContent: 'center', }, }); @@ -61,10 +44,13 @@ export class QRScanner extends Component { onMount: PropTypes.func, /** Unmount lifecycle method calback function */ onUnmount: PropTypes.func, + /** Determines whether to display top bar */ + displayTopBar: PropTypes.bool, }; static defaultProps = { ctaBorderColor: 'transparent', + displayTopBar: false, }; componentDidMount() { @@ -85,23 +71,19 @@ export class QRScanner extends Component { } render() { - const { t, theme: { body } } = this.props; + const { t, theme: { body }, displayTopBar } = this.props; return ( - - - - + this.props.hideModal()} + buttonText={t('global:close')} + > + {t('scan')} - this.props.onQRRead(data.data)} /> - - this.props.hideModal()} - testID="qrScanner-next" - buttonText={t('global:close')} - /> - - + this.props.onQRRead(data.data)} /> + + ); } } diff --git a/src/mobile/src/ui/components/Slider.js b/src/mobile/src/ui/components/Slider.js new file mode 100644 index 0000000000..1334d5f145 --- /dev/null +++ b/src/mobile/src/ui/components/Slider.js @@ -0,0 +1,279 @@ +import React, { Component } from 'react'; +import PropTypes from 'prop-types'; +import { PanResponder, Easing, Animated, StyleSheet, View } from 'react-native'; +import LottieView from 'lottie-react-native'; +import sliderSuccessAnimation from 'shared-modules/animations/slider-success.json'; +import timer from 'react-native-timer'; +import { height as deviceHeight, width } from 'libs/dimensions'; +import { Styling } from 'ui/theme/general'; +import { Icon } from 'ui/theme/icons'; + +const styles = StyleSheet.create({ + container: { + alignItems: 'center', + borderRadius: deviceHeight / 10, + overflow: 'hidden', + justifyContent: 'center', + }, + text: { + fontFamily: 'SourceSansPro-Regular', + fontSize: Styling.fontSize3, + position: 'absolute', + backgroundColor: 'transparent', + }, + slider: { + justifyContent: 'center', + alignItems: 'center', + }, +}); + +class Slider extends Component { + static propTypes = { + /** Filled channel color */ + filledColor: PropTypes.string, + /** Unfilled channel color */ + unfilledColor: PropTypes.string, + /** Slider width */ + channelWidth: PropTypes.number, + /** Slider height */ + channelHeight: PropTypes.number, + /** Slider text color */ + textColor: PropTypes.string, + /** Slider text */ + text: PropTypes.oneOfType([PropTypes.string, PropTypes.array]), + /** Slider color before successful swipe */ + preSwipeColor: PropTypes.string, + /** Slider color after successful swipe */ + postSwipeColor: PropTypes.string, + /** Called on successful swipe */ + onSwipeSuccess: PropTypes.func, + /** Determines whether swipe should render as complete */ + renderSwipeComplete: PropTypes.bool, + /** Determines whether to block swipe */ + blockSwipe: PropTypes.bool, + /* Text before swiping */ + preSwipeText: PropTypes.string, + /* Text after swiping */ + postSwipeText: PropTypes.string, + /** Resets slider when changed */ + sliderReset: PropTypes.bool, + /** Number of slider instances */ + numberOfSliders: PropTypes.number, + }; + + static defaultProps = { + channelWidth: Styling.contentWidth, + channelHeight: deviceHeight / 12, + renderSwipeComplete: false, + blockSwipe: false, + preSwipeText: 'Swipe to confirm', + postSwipeText: 'Confirmed', + sliderReset: false, + numberOfSliders: 1, + }; + + constructor(props) { + super(props); + const sliderEndPosition = props.channelWidth - props.channelHeight; + this.state = { + sliderPosition: new Animated.Value( + props.renderSwipeComplete ? sliderEndPosition : props.channelHeight * 0.1, + ), + thresholdDistance: sliderEndPosition, + sliderColor: props.renderSwipeComplete ? props.postSwipeColor : props.preSwipeColor, + textOpacity: new Animated.Value(1), + sliderSize: new Animated.Value(props.renderSwipeComplete ? props.channelHeight : props.channelHeight * 0.8), + swipeComplete: props.renderSwipeComplete, + sliderNumber: 1, + }; + } + + componentWillMount() { + this._panResponder = PanResponder.create({ + onStartShouldSetPanResponder: () => true, + onStartShouldSetPanResponderCapture: () => true, + onMoveShouldSetPanResponder: () => true, + onMoveShouldSetPanResponderCapture: () => true, + onPanResponderMove: (evt, gestureState) => { + if (this.props.blockSwipe || this.state.swipeComplete) { + return; + } + Animated.timing(this.state.sliderSize, { + toValue: this.props.channelHeight, + duration: 100, + }).start(); + const moveValue = gestureState.dx; + const sliderPosition = moveValue / this.state.thresholdDistance; + this.state.textOpacity.setValue(1 - sliderPosition * 2); + if (moveValue >= 0 && moveValue <= this.state.thresholdDistance) { + this.state.sliderPosition.setValue(gestureState.dx); + } + }, + onPanResponderRelease: (evt, gestureState) => { + if (this.props.blockSwipe || this.state.swipeComplete) { + return; + } + const releaseValue = gestureState.dx; + if (releaseValue >= this.state.thresholdDistance) { + this.onCompleteSwipe(); + } else { + this.onIncompleteSwipe(); + } + }, + onPanResponderTerminate: () => {}, + onPanResponderTerminationRequest: () => true, + }); + } + + componentWillReceiveProps(newProps) { + if (this.props.sliderReset !== newProps.sliderReset) { + timer.setTimeout('delaySliderReset', () => this.resetSlider(), 1000); + } + } + + componentWillUnmount() { + timer.clearTimeout('delaySwipeSuccess'); + timer.clearTimeout('delaySliderReset'); + } + + onIncompleteSwipe() { + const duration = 500; + Animated.parallel([ + Animated.spring(this.state.sliderPosition, { + toValue: this.props.channelHeight * 0.1, + duration, + }), + Animated.timing(this.state.textOpacity, { + toValue: 1, + duration, + }), + ]).start(); + Animated.timing(this.state.sliderSize, { + toValue: this.props.channelHeight * 0.8, + duration: 100, + }).start(); + } + + onCompleteSwipe() { + Animated.timing(this.state.sliderPosition, { + toValue: this.props.channelWidth - this.props.channelHeight, + duration: 50, + }).start(); + if (this.props.numberOfSliders > 1) { + this.setState({ sliderNumber: this.state.sliderNumber + 1 }); + } + this.setState({ sliderColor: this.props.postSwipeColor, swipeComplete: true }); + this.sliderAnimation.play(); + timer.setTimeout( + 'delaySwipeSuccess', + () => { + Animated.timing(this.state.textOpacity, { + toValue: 1, + duration: 600, + easing: Easing.ease, + }).start(() => this.props.onSwipeSuccess()); + }, + 300, + ); + } + + getText() { + const { preSwipeText, postSwipeText, numberOfSliders } = this.props; + if (this.state.swipeComplete) { + return postSwipeText; + } + if (numberOfSliders > 1) { + return preSwipeText + ' (' + this.state.sliderNumber + '/' + numberOfSliders + ')'; + } + return preSwipeText; + } + + resetSlider() { + const duration = 500; + this.sliderAnimation.reset(); + this.setState({ sliderColor: this.props.preSwipeColor, swipeComplete: false }); + Animated.parallel([ + Animated.spring(this.state.sliderPosition, { + toValue: this.props.channelHeight * 0.1, + duration, + easing: Easing.elastic(), + }), + Animated.timing(this.state.textOpacity, { + toValue: 1, + duration, + easing: Easing.ease, + }), + ]).start(); + Animated.timing(this.state.sliderSize, { + toValue: this.props.channelHeight * 0.8, + duration: 100, + }).start(); + } + + render() { + const { channelHeight, channelWidth, unfilledColor, textColor } = this.props; + return ( + + + + + { + this.sliderAnimation = animation; + }} + source={sliderSuccessAnimation} + style={{ + width: channelHeight * 0.9, + height: channelHeight * 0.9, + position: 'absolute', + }} + loop={false} + /> + {!this.state.swipeComplete && ( + + )} + + + + {this.getText()} + + + + ); + } +} + +export default Slider; diff --git a/src/mobile/src/ui/views/onboarding/EnterSeed.js b/src/mobile/src/ui/views/onboarding/EnterSeed.js index 240a357ba9..f2bde26efb 100644 --- a/src/mobile/src/ui/views/onboarding/EnterSeed.js +++ b/src/mobile/src/ui/views/onboarding/EnterSeed.js @@ -53,17 +53,17 @@ const styles = StyleSheet.create({ infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, warningText: { fontFamily: 'SourceSansPro-Bold', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, seedVaultImportContainer: { - flex: 0.7, + flex: 0.5, alignItems: 'center', justifyContent: 'center', marginBottom: width / 18, @@ -236,7 +236,7 @@ class EnterSeed extends React.Component { - + - - - {t('seedExplanation', { maxLength: MAX_SEED_LENGTH })} - - - {'\n'} - {t('neverShare')} - - - } - /> + + + {t('seedExplanation', { maxLength: MAX_SEED_LENGTH })} + + + {'\n'} + {t('neverShare')} + + diff --git a/src/mobile/src/ui/views/onboarding/LanguageSetup.js b/src/mobile/src/ui/views/onboarding/LanguageSetup.js index 0ceec5ca6f..a46f0483a3 100644 --- a/src/mobile/src/ui/views/onboarding/LanguageSetup.js +++ b/src/mobile/src/ui/views/onboarding/LanguageSetup.js @@ -139,12 +139,20 @@ class LanguageSetup extends Component { - + - + { @@ -158,7 +166,11 @@ class LanguageSetup extends Component { - + this.onNextPress()} testID="languageSetup-next" diff --git a/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js b/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js index 45bcd3f038..d53d095579 100644 --- a/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js +++ b/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js @@ -1,19 +1,14 @@ -import map from 'lodash/map'; import React, { Component } from 'react'; import { withNamespaces } from 'react-i18next'; -import { StyleSheet, View, Text, TouchableOpacity, Image, ScrollView } from 'react-native'; +import { StyleSheet, View, Text, ScrollView } from 'react-native'; import PropTypes from 'prop-types'; import { navigator } from 'libs/navigation'; -import whiteCheckboxCheckedImagePath from 'shared-modules/images/checkbox-checked-white.png'; -import whiteCheckboxUncheckedImagePath from 'shared-modules/images/checkbox-unchecked-white.png'; -import blackCheckboxCheckedImagePath from 'shared-modules/images/checkbox-checked-black.png'; -import blackCheckboxUncheckedImagePath from 'shared-modules/images/checkbox-unchecked-black.png'; import { connect } from 'react-redux'; -import tinycolor from 'tinycolor2'; import DualFooterButtons from 'ui/components/DualFooterButtons'; import InfoBox from 'ui/components/InfoBox'; import AnimatedComponent from 'ui/components/AnimatedComponent'; import Header from 'ui/components/Header'; +import Slider from 'ui/components/Slider'; import { Styling } from 'ui/theme/general'; import { Icon } from 'ui/theme/icons'; import { isAndroid } from 'libs/device'; @@ -36,10 +31,6 @@ const styles = StyleSheet.create({ flex: 3, alignItems: 'center', }, - bottomMidContainer: { - flex: 1, - justifyContent: 'flex-start', - }, bottomContainer: { flex: 0.5, alignItems: 'center', @@ -49,38 +40,20 @@ const styles = StyleSheet.create({ flex: 1, alignItems: 'center', }, - checkboxContainer: { - height: height / 15, - flexDirection: 'row', - paddingTop: height / 50, - }, - checkbox: { - width: width / 20, - height: width / 20, - }, - checkboxText: { - fontFamily: 'SourceSansPro-Light', - fontSize: Styling.fontSize4, - color: 'white', - backgroundColor: 'transparent', - marginLeft: width / 40, - }, infoText: { fontFamily: 'SourceSansPro-Light', - fontSize: width / 27.6, - textAlign: 'left', + fontSize: Styling.fontSize3, + textAlign: 'center', backgroundColor: 'transparent', }, infoTextNormal: { fontFamily: 'SourceSansPro-Light', - fontSize: width / 27.6, - textAlign: 'left', + fontSize: Styling.fontSize3, backgroundColor: 'transparent', }, infoTextBold: { fontFamily: 'SourceSansPro-Bold', - fontSize: width / 27.6, - textAlign: 'left', + fontSize: Styling.fontSize3, backgroundColor: 'transparent', }, infoBox: { @@ -101,35 +74,14 @@ class SaveSeedConfirmation extends Component { constructor(props) { super(props); - - const checkBoxImagePath = tinycolor(props.theme.body.bg).isDark() - ? whiteCheckboxUncheckedImagePath - : blackCheckboxUncheckedImagePath; - this.state = { - checkBoxesDetails: [ - { - path: checkBoxImagePath, - text: this.props.t('saveSeedConfirmation:alreadyHave'), - }, - { - path: checkBoxImagePath, - text: this.props.t('global:willNotCopyPasteSeed'), - }, - ], - hasSavedSeed: false, + hasConfirmedBackup: false, hasAgreedToNotCopyPaste: !isAndroid, - showCheckbox: false, }; } componentDidMount() { leaveNavigationBreadcrumb('SaveSeedConfirmation'); - this.timeout = setTimeout(this.onTimerComplete.bind(this), 3000); - } - - onTimerComplete() { - this.setState({ showCheckbox: true }); } onBackPress() { @@ -138,61 +90,36 @@ class SaveSeedConfirmation extends Component { onNextPress() { const { theme: { body } } = this.props; - const { hasSavedSeed, hasAgreedToNotCopyPaste } = this.state; - if (hasSavedSeed && hasAgreedToNotCopyPaste) { - navigator.push('seedReentry', { - animations: { - push: { - enable: false, - }, - pop: { - enable: false, - }, + navigator.push('seedReentry', { + animations: { + push: { + enable: false, }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], + pop: { + enable: false, }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, - }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, - }); - } - } - - onCheckboxPress(checkboxIndex) { - const isFirstCheckbox = checkboxIndex === 0; - const setCheckboxImagePath = (checkBoxDetail, idx) => ({ - ...checkBoxDetail, - path: idx === checkboxIndex ? this.getCheckboxImagePath(checkboxIndex) : checkBoxDetail.path, - }); - - this.setState({ - checkBoxesDetails: map(this.state.checkBoxesDetails, setCheckboxImagePath), - ...(isFirstCheckbox - ? { hasSavedSeed: !this.state.hasSavedSeed } - : { hasAgreedToNotCopyPaste: !this.state.hasAgreedToNotCopyPaste }), + }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, + }, }); } - getCheckboxImagePath(checkboxIndex) { - const { theme: { body } } = this.props; - const checkboxUncheckedImagePath = tinycolor(body.bg).isDark() - ? whiteCheckboxUncheckedImagePath - : blackCheckboxUncheckedImagePath; - const checkboxCheckedImagePath = tinycolor(body.bg).isDark() - ? whiteCheckboxCheckedImagePath - : blackCheckboxCheckedImagePath; - - return this.state.checkBoxesDetails[checkboxIndex].path === checkboxCheckedImagePath - ? checkboxUncheckedImagePath - : checkboxCheckedImagePath; + onSwipeSuccess() { + if (!this.state.hasAgreedToNotCopyPaste) { + this.setState({ hasAgreedToNotCopyPaste: true }); + } + this.setState({ hasConfirmedBackup: true }); } renderInfoBoxContent() { @@ -201,30 +128,27 @@ class SaveSeedConfirmation extends Component { return ( - + {t('reenterSeed')} {t('reenterSeedWarning')} + {t('pleaseConfirm')} {isAndroid && ( - - {t('global:androidInsecureClipboardWarning')} - {t('global:androidCopyPasteWarning')} - + + + {t('global:androidInsecureClipboardWarning')}{' '} + + {t('global:androidCopyPasteWarning')} + )} - {t('pleaseConfirm')} ); } render() { - const { t, theme: { body } } = this.props; - const { hasSavedSeed, hasAgreedToNotCopyPaste } = this.state; - const textColor = { color: body.color }; - const opacity = hasSavedSeed && hasAgreedToNotCopyPaste ? 1 : 0.4; - const isSecondCheckbox = (idx) => idx === 1; - + const { t, theme: { body, input, dark, primary, secondary } } = this.props; return ( @@ -240,43 +164,44 @@ class SaveSeedConfirmation extends Component { + + + {this.renderInfoBoxContent()} + - + + {this.state.hasAgreedToNotCopyPaste ? t('iHaveBackedUp') : t('willNotCopyPasteSeed')} + - - {this.state.showCheckbox ? ( - - {map(this.state.checkBoxesDetails, (detail, idx) => { - if (!isAndroid && isSecondCheckbox(idx)) { - return null; - } - - return ( - this.onCheckboxPress(idx)} - > - - {detail.text} - - ); - })} - - ) : ( - - )} - + + { + this.onSwipeSuccess(); + }} + sliderReset={this.state.hasAgreedToNotCopyPaste} + numberOfSliders={isAndroid ? 2 : 1} + /> + + @@ -285,7 +210,7 @@ class SaveSeedConfirmation extends Component { onRightButtonPress={() => this.onNextPress()} leftButtonText={t('global:goBack')} rightButtonText={t('global:continue')} - rightButtonStyle={{ wrapper: { opacity } }} + disableRightButton={!this.state.hasConfirmedBackup} /> diff --git a/src/mobile/src/ui/views/onboarding/SeedReentry.js b/src/mobile/src/ui/views/onboarding/SeedReentry.js index ba271d97dd..f65afe4fbc 100644 --- a/src/mobile/src/ui/views/onboarding/SeedReentry.js +++ b/src/mobile/src/ui/views/onboarding/SeedReentry.js @@ -51,13 +51,14 @@ const styles = StyleSheet.create({ infoTextBottom: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, warningText: { fontFamily: 'SourceSansPro-Bold', fontSize: Styling.fontSize3, paddingTop: height / 60, + textAlign: 'center', }, seedVaultImportContainer: { flex: 0.7, @@ -233,7 +234,7 @@ class SeedReentry extends Component { - + - - - {t('ifYouHaveNotSaved')} - - - {t('trinityWillNeverAskToReenter')} - - - } - /> + + + {t('ifYouHaveNotSaved')} + + + {t('trinityWillNeverAskToReenter')} + + diff --git a/src/mobile/src/ui/views/onboarding/SetAccountName.js b/src/mobile/src/ui/views/onboarding/SetAccountName.js index 2b3c83f5c1..7e486774a0 100644 --- a/src/mobile/src/ui/views/onboarding/SetAccountName.js +++ b/src/mobile/src/ui/views/onboarding/SetAccountName.js @@ -52,8 +52,7 @@ const styles = StyleSheet.create({ infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, - textAlign: 'left', - paddingTop: height / 60, + textAlign: 'center', backgroundColor: 'transparent', }, }); @@ -223,7 +222,7 @@ export class SetAccountName extends Component { - + - - {t('canUseMultipleSeeds')} - {t('youCanAdd')} - - } - /> + + {t('canUseMultipleSeeds')} + {t('youCanAdd')} + diff --git a/src/mobile/src/ui/views/onboarding/SetPassword.js b/src/mobile/src/ui/views/onboarding/SetPassword.js index 91d2541cce..77b47fc5cf 100644 --- a/src/mobile/src/ui/views/onboarding/SetPassword.js +++ b/src/mobile/src/ui/views/onboarding/SetPassword.js @@ -54,13 +54,13 @@ const styles = StyleSheet.create({ infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, warningText: { fontFamily: 'SourceSansPro-Bold', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', paddingTop: height / 70, backgroundColor: 'transparent', }, @@ -205,24 +205,18 @@ class SetPassword extends Component { + - - - {t('anEncryptedCopy')} - - - {t('changePassword:ensureStrongPassword')} - - - } - /> + + {t('anEncryptedCopy')} + + {t('changePassword:ensureStrongPassword')} + + - - - {t('seedExplanation', { maxLength: MAX_SEED_LENGTH })} - - - - - You can use it to access your funds from - - any wallet - , on - any device. - - - {t('loseSeed')} - - } - /> + + + {t('seedExplanation', { maxLength: MAX_SEED_LENGTH })} + + + + You can use it to access your funds from + any wallet + , on + any device. + + + + {t('loseSeed')} + + diff --git a/src/mobile/src/ui/views/wallet/AutoPromotion.js b/src/mobile/src/ui/views/wallet/AutoPromotion.js index 55516ec759..bfec96e692 100644 --- a/src/mobile/src/ui/views/wallet/AutoPromotion.js +++ b/src/mobile/src/ui/views/wallet/AutoPromotion.js @@ -35,7 +35,7 @@ const styles = StyleSheet.create({ infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, itemLeft: { @@ -108,17 +108,10 @@ class AutoPromotion extends Component { - - {t('autoPromotionExplanation')} - - {t('autoPromotionPoW')} - - - } - /> + + {t('autoPromotionExplanation')} + {t('autoPromotionPoW')} + - - {t('ensureStrongPassword')} - - } - /> - + + {t('ensureStrongPassword')} + { this.currentPassword = c; diff --git a/src/mobile/src/ui/views/wallet/DeleteAccount.js b/src/mobile/src/ui/views/wallet/DeleteAccount.js index 50f27b3e4e..4c1083e1d1 100644 --- a/src/mobile/src/ui/views/wallet/DeleteAccount.js +++ b/src/mobile/src/ui/views/wallet/DeleteAccount.js @@ -73,12 +73,12 @@ const styles = StyleSheet.create({ infoBoxText: { fontFamily: Fonts.secondary, fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', }, infoBoxTitleText: { fontFamily: Fonts.secondary, fontSize: Styling.fontSize4, - textAlign: 'left', + textAlign: 'center', }, warningText: { fontFamily: Fonts.secondary, @@ -207,22 +207,18 @@ class DeleteAccount extends Component { {!this.state.pressedContinue && ( - - - {t('global:account')}: {selectedAccountName} - - - {t('areYouSure')} - - - {t('yourSeedWillBeRemoved')} - - - } - /> + + + {t('global:account')}: {selectedAccountName} + + + {t('areYouSure')} + + + {t('yourSeedWillBeRemoved')} + + + ={' '} )} {this.state.pressedContinue && ( diff --git a/src/mobile/src/ui/views/wallet/ForceChangePassword.js b/src/mobile/src/ui/views/wallet/ForceChangePassword.js index 8a5a5e0da0..a087ba6c5b 100644 --- a/src/mobile/src/ui/views/wallet/ForceChangePassword.js +++ b/src/mobile/src/ui/views/wallet/ForceChangePassword.js @@ -46,7 +46,7 @@ const styles = StyleSheet.create({ infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, itemLeft: { @@ -254,18 +254,13 @@ class ForceChangePassword extends Component { - - - With update 0.5.0, it is necessary to change your password before using - Trinity. If your current password fulfils the password strength requirements - then you may use your current password again. - - - } - /> + + + With update 0.5.0, it is necessary to change your password before using Trinity. If + your current password fulfils the password strength requirements then you may use + your current password again. + + {this.renderTextField( (c) => { diff --git a/src/mobile/src/ui/views/wallet/ManualSync.js b/src/mobile/src/ui/views/wallet/ManualSync.js index 0e4638b120..c6afc27a55 100644 --- a/src/mobile/src/ui/views/wallet/ManualSync.js +++ b/src/mobile/src/ui/views/wallet/ManualSync.js @@ -50,14 +50,14 @@ const styles = StyleSheet.create({ marginLeft: width / 20, }, syncButtonContainer: { - flex: 1, + flex: 0.7, alignItems: 'center', justifyContent: 'center', }, infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, activityIndicator: { @@ -118,17 +118,12 @@ export class ManualSync extends Component { {!isSyncing && ( - - {t('manualSync:outOfSync')} - - {t('manualSync:pressToSync')} - - - } - /> + + {t('manualSync:outOfSync')} + + {t('manualSync:pressToSync')} + + - - - {t('manualSync:syncingYourAccount')} - - - {t('manualSync:thisMayTake')} - - - {t('manualSync:doNotClose')} - - - } - /> + + {t('manualSync:syncingYourAccount')} + + {t('manualSync:thisMayTake')} + + + {t('manualSync:doNotClose')} + + - - {t('advancedModeExplanation')} - - {t('modesExplanation')} - - - } - /> + + {t('advancedModeExplanation')} + + {t('modesExplanation')} + + - - {t('feeless')} - - {t('localOrRemote')} - - - } - /> + + {t('feeless')} + + {t('localOrRemote')} + + this.props.setDoNotMinimise(true), onUnmount: () => this.props.setDoNotMinimise(false), + displayTopBar: true, }); case 'transferConfirmation': return this.props.toggleModalActivity(modalContent, { diff --git a/src/mobile/src/ui/views/wallet/SnapshotTransition.js b/src/mobile/src/ui/views/wallet/SnapshotTransition.js index b6ea4df814..164e5050cc 100644 --- a/src/mobile/src/ui/views/wallet/SnapshotTransition.js +++ b/src/mobile/src/ui/views/wallet/SnapshotTransition.js @@ -67,7 +67,7 @@ const styles = StyleSheet.create({ marginLeft: width / 20, }, transitionButtonContainer: { - flex: 1, + flex: 0.7, alignItems: 'center', justifyContent: 'center', }, @@ -79,7 +79,7 @@ const styles = StyleSheet.create({ infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, buttonQuestionText: { @@ -248,17 +248,12 @@ class SnapshotTransition extends Component { {!isTransitioning && ( - - {t('snapshotExplanation')} - - {t('hasSnapshotTakenPlace')} - - - } - /> + + {t('snapshotExplanation')} + + {t('hasSnapshotTakenPlace')} + + {(balanceCheckFlag && ( - - - - {t('detectedBalance', { - amount: round(formatValue(transitionBalance), 1), - unit: formatUnit(transitionBalance), - })} - - - {t('isThisCorrect')} - - - this.onBalanceIncompletePress()} - onRightButtonPress={() => this.onBalanceCompletePress()} - leftText={t('global:no')} - rightText={t('global:yes')} - containerWidth={{ width: width / 1.25 }} - buttonWidth={{ width: width / 2.85 }} - /> + + + + + {t('detectedBalance', { + amount: round(formatValue(transitionBalance), 1), + unit: formatUnit(transitionBalance), + })} + + + {t('isThisCorrect')} + - } - /> + this.onBalanceIncompletePress()} + onRightButtonPress={() => this.onBalanceCompletePress()} + leftText={t('global:no')} + rightText={t('global:yes')} + containerWidth={{ width: width / 1.25 }} + buttonWidth={{ width: width / 2.85 }} + /> + + )) || ( - - {t('attaching')} - - {t('loading:thisMayTake')} - - - {t('global:pleaseWaitEllipses')} - - - } - /> + + {t('attaching')} + + {t('loading:thisMayTake')} + + + {t('global:pleaseWaitEllipses')} + + {t('enterCode')} + this.hideModal(), onMount: () => this.props.setDoNotMinimise(true), onUnmount: () => this.props.setDoNotMinimise(false), + displayTopBar: true, }); case 'passwordValidation': return this.props.toggleModalActivity(modalContent, { diff --git a/src/mobile/src/ui/views/wallet/ViewSeed.js b/src/mobile/src/ui/views/wallet/ViewSeed.js index 7670b1c215..6710e1383d 100644 --- a/src/mobile/src/ui/views/wallet/ViewSeed.js +++ b/src/mobile/src/ui/views/wallet/ViewSeed.js @@ -83,13 +83,13 @@ const styles = StyleSheet.create({ infoText: { fontFamily: 'SourceSansPro-Regular', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, infoTextBold: { fontFamily: 'SourceSansPro-Bold', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, viewSeedButton: { @@ -280,42 +280,27 @@ class ViewSeed extends Component { {this.state.isConfirming && !this.state.showSeed && ( - - - {t('global:masterKey')} - {t('walletSetup:seedThief')} - - {t('walletSetup:keepSafe')}{' '} + + + {t('global:masterKey')} + {t('walletSetup:seedThief')} + {t('walletSetup:keepSafe')} + + + this.setState({ isConfirming: false })}> + + + {t('viewSeed:viewSeed').toUpperCase()} - - - this.setState({ isConfirming: false })} - > - - - {t('viewSeed:viewSeed').toUpperCase()} - - - - - } - /> +
+
+
)} diff --git a/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js b/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js index 006a8ee033..da0c3e99fe 100644 --- a/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js +++ b/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js @@ -44,7 +44,7 @@ const styles = StyleSheet.create({ infoText: { fontSize: Styling.fontSize3, fontFamily: 'SourceSansPro-Light', - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, infoTextLight: { @@ -145,6 +145,7 @@ class WalletResetConfirmation extends Component { + {t('global:continue?')} - + - + - - - - All of your wallet data including your{' '} - - seeds, password, - and - other account information - will be lost. - - - } - /> + + + + All of your wallet data including your + seeds, password, + and + other account information + will be lost. + + + + diff --git a/src/shared/images/checkbox-checked-black.png b/src/shared/images/checkbox-checked-black.png deleted file mode 100644 index 9ff9be88a03a58c0c14a58fcef2952889c813a3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 748 zcmeAS@N?(olHy`uVBq!ia0vp^J|N7&0widwM(bWWxttoqE6-STc7hPXYcVcM!2_2Ivz}K zbN+0$FtF)XL0ap}q_tbvUR>G8#5CvFPcDv#1(QStwALH~B9X&t7CpBTus%mEBJA)w6ZWv?r8Z{-KVO}$zd`t5 z*6HxNe)f$$`)t;9-|00!=+<;~>U+IE3$HQvbDy3edrj!G>D2ef*_xi7GVkKv*yHBR zp56I#*6G7lZfo~5ipk$JKln)bx0rDn`cgHN!k4B#^i?F@J^$NXPYXM{Qe0AXl3mCkGCPf>yXAo9$;HjBuJc<%^DDH$;ri*|m3>?@G1JXy)q zEvebA(iV-&d5u=}CD~|vG diff --git a/src/shared/images/checkbox-checked-white.png b/src/shared/images/checkbox-checked-white.png deleted file mode 100644 index 073aea198effb43d4011db3b6d666d44c09f9202..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 789 zcmeAS@N?(olHy`uVBq!ia0vp^J|N7&0wi)7srr{dv9+APHj~XV0+N% zz@jYB$l-Q_!%d+{uqS~hmv$&c@j-|v*pwdLY5;?HRKEj!_7J2wkcqd`JzTY76d zVV?gvXDZfyO-!y?ThA;edo%ywBIVz*65=<5|Gte5N}1lS>Q+`6k(4sMP1U{3DyMeC zDkCLpRxtzF)A#TG@o-C7e&CMgYp0nf`r6O(CtDbAdYt(0;X6y?O`qL+<}Y}2!tdv? zUAG$qJKl&$Os{!7B@K*xe94?))(>-mLA!xXn&Mk0=PZUessQ z^l)%eQBV|`Ai?Qz;NTL4MvWVPkIv52ct6wm=Mu~1daVcJvb_2|PqJ(+tUR%IFxY{zl$k{1kZp^(;e6yBmM(JKU zbJ>T>wcX^l$!e4PACD?D_g;GAu(ze#^;Z1BZyWBF`55bdzAtd?_pwA#>1%h_&F_i$ zU%WtTe{B3)UFmN*;R(4qSJswRpFTBD{z}ih=qWyR;syx^8W@??kVrNkkO-9InE_%$ zNeKfG8%8EDf!I*;0Lz>82eovzyWQ1))wVP4c7X4 Date: Thu, 15 Nov 2018 15:07:22 +0000 Subject: [PATCH 056/141] Mobile: Fix modal spacing --- src/mobile/src/ui/components/InfoBox.js | 2 +- src/mobile/src/ui/components/ModalView.js | 12 +++++------- src/mobile/src/ui/components/SafeAreaView.js | 5 +++-- src/mobile/src/ui/components/Tabs.js | 7 ++----- 4 files changed, 11 insertions(+), 15 deletions(-) diff --git a/src/mobile/src/ui/components/InfoBox.js b/src/mobile/src/ui/components/InfoBox.js index 2ad8541a0a..1771320b59 100644 --- a/src/mobile/src/ui/components/InfoBox.js +++ b/src/mobile/src/ui/components/InfoBox.js @@ -20,7 +20,7 @@ const styles = StyleSheet.create({ class InfoBox extends PureComponent { static propTypes = { /** Infobox children content */ - children: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired, + children: PropTypes.oneOfType([PropTypes.node, PropTypes.number, PropTypes.object]), /** Container style object */ containerStyle: PropTypes.object, /** @ignore */ diff --git a/src/mobile/src/ui/components/ModalView.js b/src/mobile/src/ui/components/ModalView.js index bc7ca16169..1a5bc99f60 100644 --- a/src/mobile/src/ui/components/ModalView.js +++ b/src/mobile/src/ui/components/ModalView.js @@ -1,10 +1,10 @@ import React, { PureComponent } from 'react'; import PropTypes from 'prop-types'; import { View, StyleSheet } from 'react-native'; +import SafeAreaView from 'react-native-safe-area-view'; import { connect } from 'react-redux'; import { Styling } from 'ui/theme/general'; import { width, height } from 'libs/dimensions'; -import { isIPhoneX } from 'libs/device'; import DualFooterButtons from './DualFooterButtons'; import SingleFooterButton from './SingleFooterButton'; @@ -14,7 +14,7 @@ const styles = StyleSheet.create({ width, justifyContent: 'flex-end', height, - flex: isIPhoneX ? 0 : 1, + flex: 1, }, modalContainer: { justifyContent: 'space-between', @@ -84,13 +84,11 @@ export class ModalViewComponent extends PureComponent { return ( - {children} @@ -103,7 +101,7 @@ export class ModalViewComponent extends PureComponent { disableRightButton={disableRightButton} /> )) || onButtonPress()} buttonText={buttonText} />} - + ); } diff --git a/src/mobile/src/ui/components/SafeAreaView.js b/src/mobile/src/ui/components/SafeAreaView.js index f6b2e65356..25c33c5fe6 100644 --- a/src/mobile/src/ui/components/SafeAreaView.js +++ b/src/mobile/src/ui/components/SafeAreaView.js @@ -7,6 +7,7 @@ import { connect } from 'react-redux'; import hoistNonReactStatics from 'hoist-non-react-statics'; import { getBackgroundColor } from 'ui/theme/general'; import { isIPhoneFailingSafeAreaView } from 'libs/device'; +import { width, height } from 'libs/dimensions'; export default function withSafeAreaView(WrappedComponent) { class EnhancedComponent extends Component { @@ -38,9 +39,9 @@ export default function withSafeAreaView(WrappedComponent) { return ( diff --git a/src/mobile/src/ui/components/Tabs.js b/src/mobile/src/ui/components/Tabs.js index ef9a04e1fc..ccbf278ae3 100644 --- a/src/mobile/src/ui/components/Tabs.js +++ b/src/mobile/src/ui/components/Tabs.js @@ -27,7 +27,7 @@ const styles = StyleSheet.create({ class Tabs extends Component { render() { - const { children, onPress, currentRoute, theme: { bar, body }, isModalActive } = this.props; + const { children, onPress, currentRoute, theme: { bar } } = this.props; const childComponents = Children.map(children, (child) => cloneElement(child, { @@ -38,7 +38,7 @@ class Tabs extends Component { const tabContainer = ( - + {childComponents} ); @@ -58,13 +58,10 @@ Tabs.propTypes = { currentRoute: PropTypes.string.isRequired, /** @ignore */ theme: PropTypes.object.isRequired, - /** @ignore */ - isModalActive: PropTypes.bool.isRequired, }; const mapStateToProps = (state) => ({ currentRoute: state.home.childRoute, - isModalActive: state.ui.isModalActive, }); export default connect(mapStateToProps)(Tabs); From bbb28fb484cc9444e7a450ba0fdf0ff47e2c6ffe Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 16 Nov 2018 18:10:29 +0000 Subject: [PATCH 057/141] Mobile: Fix Android build --- src/mobile/android/app/build.gradle | 2 +- src/mobile/android/build.gradle | 2 +- src/mobile/package.json | 4 ++-- src/mobile/yarn.lock | 21 +++++++++++---------- 4 files changed, 15 insertions(+), 14 deletions(-) diff --git a/src/mobile/android/app/build.gradle b/src/mobile/android/app/build.gradle index 5d25e85d95..1a39f15993 100644 --- a/src/mobile/android/app/build.gradle +++ b/src/mobile/android/app/build.gradle @@ -104,7 +104,7 @@ android { aaptOptions { ignoreAssetsPattern '!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~' } - missingDimensionStrategy "RNN.reactNativeVersion", "reactNative51" + missingDimensionStrategy "RNN.reactNativeVersion", "reactNative57" } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/src/mobile/android/build.gradle b/src/mobile/android/build.gradle index c60e496ff0..43b1322e44 100644 --- a/src/mobile/android/build.gradle +++ b/src/mobile/android/build.gradle @@ -40,7 +40,7 @@ subprojects { variantFilter { variant -> def names = variant.flavors*.name // To check for a certain build type, use variant.buildType.name == "" - if (names.contains("reactNative55") || names.contains("reactNative56")) { + if (names.contains("reactNative51") || names.contains("reactNative55") || names.contains("reactNative56")) { // Gradle ignores any variants that satisfy the conditions above. setIgnore(true) } diff --git a/src/mobile/package.json b/src/mobile/package.json index da91ddd3dd..86f9457fdb 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -79,9 +79,9 @@ "react-native-keychain": "2.0.0-rc", "react-native-level-fs": "^3.0.0", "react-native-markdown-renderer": "^3.2.1", - "react-native-modal": "^6.5.0", + "react-native-modal": "^7.0.0", "react-native-modal-translucent": "^1.1.3", - "react-native-navigation": "^2.0.2539", + "react-native-navigation": "^2.1.3", "react-native-optimized-flatlist": "^1.0.4", "react-native-os": "git+https://github.com/laumair/react-native-os.git#527b0ae", "react-native-print": "^0.5.0", diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 88fe9463b4..8420b33b3d 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -5244,7 +5244,7 @@ loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" -lottie-ios@^2.5.0, lottie-ios@^2.5.2: +lottie-ios@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/lottie-ios/-/lottie-ios-2.5.0.tgz#55c808e785d4a6933b0c10b395530b17098b05de" integrity sha1-VcgI54XUppM7DBCzlVMLFwmLBd4= @@ -7064,23 +7064,24 @@ react-native-modal-translucent@^1.1.3: resolved "https://registry.yarnpkg.com/react-native-modal-translucent/-/react-native-modal-translucent-1.1.3.tgz#9b84fd36061cea4ee1a055a0d7c97e1777a776d6" integrity sha512-e2DpapaJiKHr+7XUHDa16QeIfER+1MKD7ZtbVVrqDOyVGdVu5ut+6N7XMuH5iLm5O02c90o7q1LQ4x6MlDOl+w== -react-native-modal@^6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/react-native-modal/-/react-native-modal-6.5.0.tgz#46220b2289a41597d344c1db17454611b426a758" - integrity sha512-ewchdETAGd32xLGLK93NETEGkRcePtN7ZwjmLSQnNW1Zd0SRUYE8NqftjamPyfKvK0i2DZjX4YAghGZTqaRUbA== +react-native-modal@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/react-native-modal/-/react-native-modal-7.0.0.tgz#85bda8b52e0e9181e09bd2ec636ed7cec10d74c3" + integrity sha512-i9OFAzuV+pvLcEUB1QvJ/KJlvcApQ+UdNhnjUKac5bP4Mb5kFlj+fkj6Y55hakBISwrQk/0N0Fn1vj8Ob7KR6g== dependencies: prop-types "^15.6.1" react-native-animatable "^1.2.4" -react-native-navigation@^2.0.2539: - version "2.0.2539" - resolved "https://registry.yarnpkg.com/react-native-navigation/-/react-native-navigation-2.0.2539.tgz#1a3ec8c76d26774cb851133397411b4888e9c69e" - integrity sha512-krRG4bYd+7m8DhwBhhhHGMglMdJhFMvzvgQciapSqhV6VROxU9IVdM9DiDhSyH85RhzE8zZdcH0LTDmIUX6dHQ== +react-native-navigation@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/react-native-navigation/-/react-native-navigation-2.1.3.tgz#064465773aa2766d9e8f3001da0a2ef98c4cb3a9" + integrity sha512-CtjDhw7eaDWCqfhK6Fq6IUDq3agl3oGDd8SNaPF7318tLni1qTmmFdz/3CpoNlegNWhAMAjNu+ONDAbe7ksADw== dependencies: hoist-non-react-statics "3.x.x" lodash "4.x.x" prop-types "15.x.x" react-lifecycles-compat "2.0.0" + tslib "1.9.3" react-native-optimized-flatlist@^1.0.4: version "1.0.4" @@ -8762,7 +8763,7 @@ 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: +tslib@1.9.3, tslib@^1: version "1.9.3" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== From 9fe1c7daa13b3a82712272e8301826379a84a3cb Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 16 Nov 2018 18:18:58 +0000 Subject: [PATCH 058/141] Mobile: Fix modal backdrop --- src/mobile/src/ui/components/ModalComponent.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mobile/src/ui/components/ModalComponent.js b/src/mobile/src/ui/components/ModalComponent.js index a5914f5397..e29ff6d65b 100644 --- a/src/mobile/src/ui/components/ModalComponent.js +++ b/src/mobile/src/ui/components/ModalComponent.js @@ -112,7 +112,7 @@ export default function withSafeAreaView(WrappedComponent) { backdropTransitionInTiming={300} backdropTransitionOutTiming={200} backdropColor={body.bg} - backdropOpacity={0.7} + backdropOpacity={0} style={styles.modal} isVisible={isModalActive} onBackButtonPress={() => this.props.toggleModalActivity()} From b6e279ae33ad10fbce1b4874b20907da85f92eac Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 16 Nov 2018 18:31:52 +0000 Subject: [PATCH 059/141] Mobile: Fix animation, fix infobox --- .../ui/components/SeedVaultExportComponent.js | 23 ++++++++----------- .../src/ui/views/onboarding/LanguageSetup.js | 22 ++++++++---------- 2 files changed, 19 insertions(+), 26 deletions(-) diff --git a/src/mobile/src/ui/components/SeedVaultExportComponent.js b/src/mobile/src/ui/components/SeedVaultExportComponent.js index a0e2346832..edba66335a 100644 --- a/src/mobile/src/ui/components/SeedVaultExportComponent.js +++ b/src/mobile/src/ui/components/SeedVaultExportComponent.js @@ -53,7 +53,7 @@ const styles = StyleSheet.create({ color: 'white', fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, - textAlign: 'left', + textAlign: 'center', backgroundColor: 'transparent', }, }); @@ -336,16 +336,14 @@ class SeedVaultExportComponent extends Component { /> - {t('seedVaultExplanation')}} - /> + + {t('seedVaultExplanation')} + - {t('seedVaultKeyExplanation')}} - /> + + {t('seedVaultKeyExplanation')} + - {t('seedVaultWarning')}} - /> + + {t('seedVaultWarning')} + - - + + + + + + + - {!isIPhone11 && ( - this.showModal('passwordValidation')} - onSeedImport={(seed) => { - this.setState({ seed }); - this.hideModal(); - }} - onRef={(ref) => { - this.SeedVaultImport = ref; - }} - /> - )} + this.showModal('passwordValidation')} + onSeedImport={(seed) => { + this.setState({ seed }); + this.hideModal(); + }} + onRef={(ref) => { + this.SeedVaultImport = ref; + }} + /> { From 7d06135299327a9b78ea236cc827341f21b05df9 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 22 Nov 2018 13:24:38 +0000 Subject: [PATCH 067/141] Resolve conflicts --- src/mobile/package.json | 2 +- src/mobile/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/mobile/package.json b/src/mobile/package.json index aab958c9d8..c936ff0ed9 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -213,4 +213,4 @@ "tls": false }, "snyk": true -} +} \ No newline at end of file diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index c472946953..6d5cd3dc15 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -7016,10 +7016,10 @@ react-native-modal@^7.0.0: prop-types "^15.6.1" react-native-animatable "^1.2.4" -react-native-navigation@2.0.2577: - version "2.0.2577" - resolved "https://registry.yarnpkg.com/react-native-navigation/-/react-native-navigation-2.0.2577.tgz#a93a72df50f156c01d8fecd3f5de7ee74af0fe7b" - integrity sha512-OMyr69dJsN2/cShn78wzSF/VmKiiXK84t6ceu8+tU8GeAeWSZxwpesxvRCK1cgF2s5ocHGZauLuika9Iiu4Cfg== +react-native-navigation@2.0.2555: + version "2.0.2555" + resolved "https://registry.yarnpkg.com/react-native-navigation/-/react-native-navigation-2.0.2555.tgz#7f0f5ccc11805df6b298230b083dac4f500b15a7" + integrity sha512-JtrvDNFz8JQSRIXSrD31p0KuywUMSpNOKc36wmMPbmUN5dA5vW5Wurxj+p76TuX8tL5ZEnU3KoO/8kTZJuYwTw== dependencies: hoist-non-react-statics "3.x.x" lodash "4.x.x" From aded4e8b86d61b0f2ab7608f137a5e31c52f665c Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 22 Nov 2018 14:04:09 +0000 Subject: [PATCH 068/141] Mobile: Fix SeedVault Export animations --- .../src/ui/components/SeedVaultExportComponent.js | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/mobile/src/ui/components/SeedVaultExportComponent.js b/src/mobile/src/ui/components/SeedVaultExportComponent.js index 665aecac62..d90fb3709e 100644 --- a/src/mobile/src/ui/components/SeedVaultExportComponent.js +++ b/src/mobile/src/ui/components/SeedVaultExportComponent.js @@ -2,7 +2,7 @@ import values from 'lodash/values'; import isEqual from 'lodash/isEqual'; import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import { Animated, Text, View, StyleSheet, Keyboard } from 'react-native'; +import { Animated, Text, View, StyleSheet, Keyboard, Easing } from 'react-native'; import { connect } from 'react-redux'; import { withNamespaces } from 'react-i18next'; import { generateAlert } from 'shared-modules/actions/alerts'; @@ -69,7 +69,7 @@ class SeedVaultExportComponent extends Component { /** @ignore */ generateAlert: PropTypes.func.isRequired, /** Name for selected account */ - selectedAccountName: PropTypes.string.isRequired, + selectedAccountName: PropTypes.string, /** Type for selected account */ selectedAccountMeta: PropTypes.object.isRequired, /** Returns to page before starting the Seed Vault Export process */ @@ -300,11 +300,9 @@ class SeedVaultExportComponent extends Component { navigateToStep(nextStep) { const stepIndex = steps.indexOf(nextStep); const animatedValue = [2.5, 1.5, 0.5, -0.5, -1.5, -2.5]; - Animated.spring(this.animatedValue, { + Animated.timing(this.animatedValue, { toValue: animatedValue[stepIndex] * width, - velocity: 3, - tension: 2, - friction: 8, + easing: Easing.bezier(0.25, 1, 0.25, 1), }).start(); this.props.setProgressStep(nextStep); } From 37306b0a0a8a5d3acb921936a01ce83839d9f627 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 22 Nov 2018 15:02:11 +0000 Subject: [PATCH 069/141] Mobile: Minor UI changes --- src/mobile/src/ui/components/SeedVaultExportComponent.js | 1 + src/mobile/src/ui/views/onboarding/SetAccountName.js | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/mobile/src/ui/components/SeedVaultExportComponent.js b/src/mobile/src/ui/components/SeedVaultExportComponent.js index d90fb3709e..26f2084e65 100644 --- a/src/mobile/src/ui/components/SeedVaultExportComponent.js +++ b/src/mobile/src/ui/components/SeedVaultExportComponent.js @@ -302,6 +302,7 @@ class SeedVaultExportComponent extends Component { const animatedValue = [2.5, 1.5, 0.5, -0.5, -1.5, -2.5]; Animated.timing(this.animatedValue, { toValue: animatedValue[stepIndex] * width, + duration: 500, easing: Easing.bezier(0.25, 1, 0.25, 1), }).start(); this.props.setProgressStep(nextStep); diff --git a/src/mobile/src/ui/views/onboarding/SetAccountName.js b/src/mobile/src/ui/views/onboarding/SetAccountName.js index d21b5cc95f..0f8c14764b 100644 --- a/src/mobile/src/ui/views/onboarding/SetAccountName.js +++ b/src/mobile/src/ui/views/onboarding/SetAccountName.js @@ -238,7 +238,7 @@ export class SetAccountName extends Component { value={accountName} /> - + Date: Wed, 21 Nov 2018 18:47:30 -0500 Subject: [PATCH 070/141] Mobile: Cherry pick wix/react-native-navigation@ab2f335 for RN 0.57 support --- src/mobile/package.json | 2 +- src/mobile/yarn.lock | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/mobile/package.json b/src/mobile/package.json index c936ff0ed9..3f54f13082 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -81,7 +81,7 @@ "react-native-markdown-renderer": "^3.2.1", "react-native-modal": "^7.0.0", "react-native-modal-translucent": "^1.1.3", - "react-native-navigation": "2.0.2555", + "react-native-navigation": "https://github.com/rajivshah3/react-native-navigation#2.0.255-0.57", "react-native-optimized-flatlist": "^1.0.4", "react-native-os": "git+https://github.com/laumair/react-native-os.git#527b0ae", "react-native-print": "^0.5.0", diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 6d5cd3dc15..ad5ab40716 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -7016,10 +7016,9 @@ react-native-modal@^7.0.0: prop-types "^15.6.1" react-native-animatable "^1.2.4" -react-native-navigation@2.0.2555: - version "2.0.2555" - resolved "https://registry.yarnpkg.com/react-native-navigation/-/react-native-navigation-2.0.2555.tgz#7f0f5ccc11805df6b298230b083dac4f500b15a7" - integrity sha512-JtrvDNFz8JQSRIXSrD31p0KuywUMSpNOKc36wmMPbmUN5dA5vW5Wurxj+p76TuX8tL5ZEnU3KoO/8kTZJuYwTw== +"react-native-navigation@https://github.com/rajivshah3/react-native-navigation#2.0.255-0.57": + version "2.0.0" + resolved "https://github.com/rajivshah3/react-native-navigation#5c8b2d21260ee106aba4d5916783b20ce4aa4d66" dependencies: hoist-non-react-statics "3.x.x" lodash "4.x.x" From 96fc2e9d0c365f003f1a2909688b8d3fb4b930ba Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 23 Nov 2018 19:54:03 +0000 Subject: [PATCH 071/141] Mobile: Add dashboard animations --- .../src/ui/components/AnimatedComponent.js | 65 +++++++++++++++---- src/mobile/src/ui/components/TabContent.js | 21 +++++- src/mobile/src/ui/views/wallet/Balance.js | 13 +++- src/mobile/src/ui/views/wallet/History.js | 13 +++- src/mobile/src/ui/views/wallet/Home.js | 22 +++++-- src/mobile/src/ui/views/wallet/Receive.js | 13 +++- src/mobile/src/ui/views/wallet/Send.js | 13 +++- src/mobile/src/ui/views/wallet/Settings.js | 18 +++-- 8 files changed, 142 insertions(+), 36 deletions(-) diff --git a/src/mobile/src/ui/components/AnimatedComponent.js b/src/mobile/src/ui/components/AnimatedComponent.js index f5696e5545..e8cbad5bba 100644 --- a/src/mobile/src/ui/components/AnimatedComponent.js +++ b/src/mobile/src/ui/components/AnimatedComponent.js @@ -25,6 +25,10 @@ class AnimatedComponent extends Component { navStack: PropTypes.array.isRequired, /** Style prop */ style: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.number]), + /** Determines whether animation is triggered by dashboard tab change */ + isDashboard: PropTypes.bool, + /** Current home screen route */ + homeRoute: PropTypes.string.isRequired, }; static defaultProps = { @@ -35,6 +39,7 @@ class AnimatedComponent extends Component { duration: 300, triggerAnimationIn: false, triggerAnimationOut: false, + isDashboard: false, }; constructor(props) { @@ -50,19 +55,31 @@ class AnimatedComponent extends Component { } componentDidMount() { - // Animate in on mount + // Animate in on page mount if (this.props.animateOnMount) { this.animateIn(this.props.delay); } } componentWillReceiveProps(newProps) { + if (this.props.isDashboard && this.props.homeRoute !== newProps.homeRoute) { + const routes = ['balance', 'send', 'receive', 'history', 'settings']; + if (routes.indexOf(newProps.homeRoute) < routes.indexOf(this.props.homeRoute)) { + this.reverseSlideOut = true; + } else { + this.reverseSlideOut = false; + } + this.iniatialiseAnimations(this.props.animationOutType); + return this.animateOut(); + } + // Animate out if pushing from current screen if (this.props.navStack.length < newProps.navStack.length && this.screen === last(this.props.navStack)) { this.reverseSlideOut = false; this.iniatialiseAnimations(this.props.animationOutType); this.animateOut(); } + // Animate out if popping from current screen if ( this.props.navStack.length > newProps.navStack.length && @@ -106,15 +123,15 @@ class AnimatedComponent extends Component { animationType.map((type) => { switch (type) { case 'fadeIn': - animatedStyle = merge({}, animatedStyle, { opacity: this.fadeValue }); - break; case 'fadeOut': animatedStyle = merge({}, animatedStyle, { opacity: this.fadeValue }); break; + case 'slideInLeft': case 'slideInRight': - animatedStyle = merge({}, animatedStyle, { width, transform: [{ translateX: this.slideValue }] }); - break; case 'slideOutLeft': + case 'slideInLeftSmall': + case 'slideInRightSmall': + case 'slideOutLeftSmall': animatedStyle = merge({}, animatedStyle, { width, transform: [{ translateX: this.slideValue }] }); break; } @@ -136,8 +153,16 @@ class AnimatedComponent extends Component { return 1; case 'slideInRight': return this.reverseSlideIn ? -width : width; + case 'slideInLeft': + return -width; case 'slideOutLeft': return 0; + case 'slideInLeftSmall': + return -width / 8; + case 'slideInRightSmall': + return width / 8; + case 'slideOutLeftSmall': + return 0; } } @@ -153,10 +178,17 @@ class AnimatedComponent extends Component { return 1; case 'fadeOut': return 0; + case 'slideInLeft': case 'slideInRight': return 0; case 'slideOutLeft': return this.reverseSlideOut ? width : -width; + case 'slideInLeftSmall': + return 0; + case 'slideInRightSmall': + return 0; + case 'slideOutLeftSmall': + return this.reverseSlideOut ? width / 8 : -width / 8; } } @@ -169,12 +201,14 @@ class AnimatedComponent extends Component { getEasing(animationType) { switch (animationType) { case 'fadeIn': - return Easing.ease; case 'fadeOut': - return Easing.ease; + return Easing.elastic(); + case 'slideInLeft': case 'slideOutLeft': - return Easing.bezier(0.25, 1, 0.25, 1); case 'slideInRight': + case 'slideInLeftSmall': + case 'slideInRightSmall': + case 'slideOutLeftSmall': return Easing.bezier(0.25, 1, 0.25, 1); } } @@ -188,12 +222,14 @@ class AnimatedComponent extends Component { getAnimationPointer(animationType) { switch (animationType) { case 'fadeIn': - return this.fadeValue; case 'fadeOut': return this.fadeValue; + case 'slideInLeft': case 'slideInRight': - return this.slideValue; case 'slideOutLeft': + case 'slideInLeftSmall': + case 'slideInRightSmall': + case 'slideOutLeftSmall': return this.slideValue; } } @@ -229,15 +265,15 @@ class AnimatedComponent extends Component { animationType.map((type) => { switch (type) { case 'fadeIn': - this.fadeValue = new Animated.Value(this.getStartingAnimatedValue(type)); - break; case 'fadeOut': this.fadeValue = new Animated.Value(this.getStartingAnimatedValue(type)); break; + case 'slideInLeft': case 'slideInRight': - this.slideValue = new Animated.Value(this.getStartingAnimatedValue(type)); - break; case 'slideOutLeft': + case 'slideInLeftSmall': + case 'slideInRightSmall': + case 'slideOutLeftSmall': this.slideValue = new Animated.Value(this.getStartingAnimatedValue(type)); break; } @@ -274,6 +310,7 @@ class AnimatedComponent extends Component { const mapStateToProps = (state) => ({ navStack: state.wallet.navStack, + homeRoute: state.home.childRoute, }); export default connect(mapStateToProps)(AnimatedComponent); diff --git a/src/mobile/src/ui/components/TabContent.js b/src/mobile/src/ui/components/TabContent.js index 0084b44b67..ed80a1bdca 100644 --- a/src/mobile/src/ui/components/TabContent.js +++ b/src/mobile/src/ui/components/TabContent.js @@ -1,4 +1,5 @@ import React, { PureComponent } from 'react'; +import timer from 'react-native-timer'; import PropTypes from 'prop-types'; import { View } from 'react-native'; import { connect } from 'react-redux'; @@ -17,14 +18,27 @@ const routeToComponent = { }; class TabContent extends PureComponent { + constructor(props) { + super(props); + this.state = { + route: props.currentRoute, + }; + } + componentWillReceiveProps(newProps) { + if (this.props.currentRoute !== newProps.currentRoute) { + timer.setTimeout('delayRouteChange', () => this.setState({ route: newProps.currentRoute }), 150); + } + } render() { - const { currentRoute, isKeyboardActive } = this.props; - const Content = routeToComponent[currentRoute]; + const { isKeyboardActive, animationInType } = this.props; + const { route } = this.state; + const Content = routeToComponent[route]; return ( this.props.handleCloseTopBar()} isKeyboardActive={isKeyboardActive} onTabSwitch={(name) => this.props.onTabSwitch(name)} @@ -48,6 +62,7 @@ TabContent.propTypes = { handleCloseTopBar: PropTypes.func.isRequired, /** Determines whether keyboard is open on iOS */ isKeyboardActive: PropTypes.bool.isRequired, + animationInType: PropTypes.string.isRequired, }; TabContent.defaultProps = { diff --git a/src/mobile/src/ui/views/wallet/Balance.js b/src/mobile/src/ui/views/wallet/Balance.js index 6d0fb7ff38..391eddca5c 100644 --- a/src/mobile/src/ui/views/wallet/Balance.js +++ b/src/mobile/src/ui/views/wallet/Balance.js @@ -29,6 +29,7 @@ import Chart from 'ui/components/Chart'; import { width, height } from 'libs/dimensions'; import { isAndroid } from 'libs/device'; import TextWithLetterSpacing from 'ui/components/TextWithLetterSpacing'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { Styling } from 'ui/theme/general'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -124,6 +125,8 @@ export class Balance extends Component { onRefresh: PropTypes.func.isRequired, /** Addresses for selected account */ addresses: PropTypes.array.isRequired, + /** Determines tab switch animation in */ + animationInType: PropTypes.array.isRequired, }; /** @@ -256,7 +259,13 @@ export class Balance extends Component { showsVerticalScrollIndicator={false} > this.props.closeTopBar()}> - + this.onBalanceClick()}> @@ -281,7 +290,7 @@ export class Balance extends Component { - + ); diff --git a/src/mobile/src/ui/views/wallet/History.js b/src/mobile/src/ui/views/wallet/History.js index 831d5d1275..dba30a5e79 100644 --- a/src/mobile/src/ui/views/wallet/History.js +++ b/src/mobile/src/ui/views/wallet/History.js @@ -26,6 +26,7 @@ import { width, height } from 'libs/dimensions'; import { isAndroid } from 'libs/device'; import { getPowFn } from 'libs/nativeModules'; import CtaButton from 'ui/components/CtaButton'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; const styles = StyleSheet.create({ @@ -114,6 +115,8 @@ class History extends Component { isModalActive: PropTypes.bool, /** @ignore */ modalContent: PropTypes.string, + /** Determines tab switch animation in */ + animationInType: PropTypes.array.isRequired, }; componentDidMount() { @@ -323,10 +326,16 @@ class History extends Component { return ( this.props.closeTopBar()}> - + {transactions} - + ); } diff --git a/src/mobile/src/ui/views/wallet/Home.js b/src/mobile/src/ui/views/wallet/Home.js index 60f78c0829..0f7a29de54 100644 --- a/src/mobile/src/ui/views/wallet/Home.js +++ b/src/mobile/src/ui/views/wallet/Home.js @@ -93,6 +93,8 @@ class Home extends Component { markTaskAsDone: PropTypes.func.isRequired, /** Currently selected account name */ selectedAccountName: PropTypes.string.isRequired, + /** @ignore */ + currentRoute: PropTypes.string.isRequired, }; constructor(props) { @@ -104,6 +106,7 @@ class Home extends Component { this.state = { isKeyboardActive: false, + tabAnimationInType: ['fadeIn'], }; } @@ -171,6 +174,7 @@ class Home extends Component { t('global:unrecognisedPasswordExplanation'), ); } else { + this.setState({ tabAnimationInType: ['fadeIn'] }); this.props.setUserActivity({ inactive: false }); this.userInactivity.setActiveFromComponent(); } @@ -180,16 +184,22 @@ class Home extends Component { * Changes home screen child route * @param {string} name */ - onTabSwitch(name) { + onTabSwitch(nextRoute) { const { isSyncing, isTransitioning, isCheckingCustomNode } = this.props; - this.userInactivity.setActiveFromComponent(); if (isTransitioning) { return; } - - this.props.changeHomeScreenRoute(name); + // Set tab animation in type according to relative position of next active tab + const routes = ['balance', 'send', 'receive', 'history', 'settings']; + this.setState({ + tabAnimationInType: + routes.indexOf(nextRoute) < routes.indexOf(this.props.currentRoute) + ? ['slideInLeftSmall', 'fadeIn'] + : ['slideInRightSmall', 'fadeIn'], + }); + this.props.changeHomeScreenRoute(nextRoute); if (!isSyncing && !isCheckingCustomNode) { this.resetSettings(); @@ -318,7 +328,7 @@ class Home extends Component { render() { const { t, inactive, minimised, isFingerprintEnabled, theme: { body, negative, positive }, theme } = this.props; - const { isKeyboardActive } = this.state; + const { isKeyboardActive, tabAnimationInType } = this.state; const textColor = { color: body.color }; return ( @@ -338,6 +348,7 @@ class Home extends Component { this.onTabSwitch(name)} handleCloseTopBar={() => this.handleCloseTopBar()} isKeyboardActive={isKeyboardActive} @@ -415,6 +426,7 @@ const mapStateToProps = (state) => ({ isTransitioning: state.ui.isTransitioning, currentSetting: state.wallet.currentSetting, isTopBarActive: state.home.isTopBarActive, + currentRoute: state.home.childRoute, isFingerprintEnabled: state.settings.isFingerprintEnabled, isModalActive: state.ui.isModalActive, shouldTransitionForSnapshot: shouldTransitionForSnapshot(state), diff --git a/src/mobile/src/ui/views/wallet/Receive.js b/src/mobile/src/ui/views/wallet/Receive.js index 468b5150be..6b36157f5a 100644 --- a/src/mobile/src/ui/views/wallet/Receive.js +++ b/src/mobile/src/ui/views/wallet/Receive.js @@ -32,6 +32,7 @@ import MultiTextInput from 'ui/components/MultiTextInput'; import CustomQrCodeComponent from 'ui/components/CustomQRCode'; import { Icon } from 'ui/theme/icons'; import ScramblingText from 'ui/components/ScramblingText'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { width, height } from 'libs/dimensions'; import { isAndroid, getAndroidFileSystemPermissions } from 'libs/device'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -213,6 +214,8 @@ class Receive extends Component { conversionRate: PropTypes.number.isRequired, /** @ignore */ hadErrorGeneratingNewAddress: PropTypes.bool.isRequired, + /** Determines tab switch animation in */ + animationInType: PropTypes.array.isRequired, }; constructor(props) { @@ -527,7 +530,13 @@ class Receive extends Component { return ( this.clearInteractions()}> - + - + ); } diff --git a/src/mobile/src/ui/views/wallet/Send.js b/src/mobile/src/ui/views/wallet/Send.js index ddf090ecee..cd7d6bcc37 100644 --- a/src/mobile/src/ui/views/wallet/Send.js +++ b/src/mobile/src/ui/views/wallet/Send.js @@ -47,6 +47,7 @@ import { width } from 'libs/dimensions'; import { isAndroid } from 'libs/device'; import { getPowFn } from 'libs/nativeModules'; import { Styling } from 'ui/theme/general'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; const styles = StyleSheet.create({ @@ -167,6 +168,8 @@ export class Send extends Component { isKeyboardActive: PropTypes.bool.isRequired, /** @ignore */ toggleModalActivity: PropTypes.func.isRequired, + /** Determines tab switch animation in */ + animationInType: PropTypes.array.isRequired, }; constructor(props) { @@ -717,7 +720,13 @@ export class Send extends Component { return ( this.clearInteractions()}> - + - + ); } diff --git a/src/mobile/src/ui/views/wallet/Settings.js b/src/mobile/src/ui/views/wallet/Settings.js index 7e95f573a6..173a18bc45 100644 --- a/src/mobile/src/ui/views/wallet/Settings.js +++ b/src/mobile/src/ui/views/wallet/Settings.js @@ -5,6 +5,7 @@ import { connect } from 'react-redux'; import { setSetting } from 'shared-modules/actions/wallet'; import KeepAwake from 'react-native-keep-awake'; import SettingsContent from 'ui/components/SettingsContent'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { height } from 'libs/dimensions'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -33,6 +34,8 @@ class Settings extends Component { setSetting: PropTypes.func.isRequired, /** @ignore */ closeTopBar: PropTypes.func.isRequired, + /** Determines tab switch animation in */ + animationInType: PropTypes.array.isRequired, }; componentDidMount() { @@ -71,16 +74,19 @@ class Settings extends Component { return ( this.props.closeTopBar()}> - + - + - + ); } From 162d6a6a67cbe5c76e4e586167b219e3ad8029ec Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Tue, 27 Nov 2018 14:48:08 +0000 Subject: [PATCH 072/141] Mobile: Add settings animations --- .../src/ui/components/AnimatedComponent.js | 38 ++++++++- src/mobile/src/ui/components/TabContent.js | 2 +- src/mobile/src/ui/views/wallet/Home.js | 18 ++-- src/mobile/src/ui/views/wallet/Settings.js | 85 ++++++++++++++++++- 4 files changed, 126 insertions(+), 17 deletions(-) diff --git a/src/mobile/src/ui/components/AnimatedComponent.js b/src/mobile/src/ui/components/AnimatedComponent.js index e8cbad5bba..f79588724a 100644 --- a/src/mobile/src/ui/components/AnimatedComponent.js +++ b/src/mobile/src/ui/components/AnimatedComponent.js @@ -29,6 +29,10 @@ class AnimatedComponent extends Component { isDashboard: PropTypes.bool, /** Current home screen route */ homeRoute: PropTypes.string.isRequired, + /** Trigger animation out on change */ + animateOutTrigger: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]), + /** Trigger animation in on change */ + animateInTrigger: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]), }; static defaultProps = { @@ -37,9 +41,10 @@ class AnimatedComponent extends Component { animationInType: ['fadeIn'], animationOutType: ['fadeOut'], duration: 300, - triggerAnimationIn: false, - triggerAnimationOut: false, + animateInTrigger: false, + animateOutTrigger: false, isDashboard: false, + blockAnimation: false, }; constructor(props) { @@ -50,7 +55,9 @@ class AnimatedComponent extends Component { // Slide animations are reversed when popping from navigation stack this.reverseSlideIn = false; this.reverseSlideOut = false; - this.iniatialiseAnimations(props.animationInType); + if (props.animateOnMount) { + this.iniatialiseAnimations(props.animationInType); + } this.screen = last(props.navStack); } @@ -62,6 +69,14 @@ class AnimatedComponent extends Component { } componentWillReceiveProps(newProps) { + if (this.props.animateInTrigger !== newProps.animateInTrigger) { + return this.iniatialiseAnimations(newProps.animationInType); + } + + if (this.props.animateOutTrigger !== newProps.animateOutTrigger) { + return this.iniatialiseAnimations(newProps.animationOutType); + } + if (this.props.isDashboard && this.props.homeRoute !== newProps.homeRoute) { const routes = ['balance', 'send', 'receive', 'history', 'settings']; if (routes.indexOf(newProps.homeRoute) < routes.indexOf(this.props.homeRoute)) { @@ -112,6 +127,16 @@ class AnimatedComponent extends Component { } } + componentDidUpdate(prevProps) { + if (prevProps.animateInTrigger !== this.props.animateInTrigger) { + return this.animateIn(); + } + + if (prevProps.animateOutTrigger !== this.props.animateOutTrigger) { + return this.animateOut(); + } + } + /** * Gets animated style object for single or multiple animations * @method getAnimatedStyle @@ -132,6 +157,7 @@ class AnimatedComponent extends Component { case 'slideInLeftSmall': case 'slideInRightSmall': case 'slideOutLeftSmall': + case 'slideOutRightSmall': animatedStyle = merge({}, animatedStyle, { width, transform: [{ translateX: this.slideValue }] }); break; } @@ -162,6 +188,7 @@ class AnimatedComponent extends Component { case 'slideInRightSmall': return width / 8; case 'slideOutLeftSmall': + case 'slideOutRightSmall': return 0; } } @@ -189,6 +216,8 @@ class AnimatedComponent extends Component { return 0; case 'slideOutLeftSmall': return this.reverseSlideOut ? width / 8 : -width / 8; + case 'slideOutRightSmall': + return width / 8; } } @@ -209,6 +238,7 @@ class AnimatedComponent extends Component { case 'slideInLeftSmall': case 'slideInRightSmall': case 'slideOutLeftSmall': + case 'slideOutRightSmall': return Easing.bezier(0.25, 1, 0.25, 1); } } @@ -230,6 +260,7 @@ class AnimatedComponent extends Component { case 'slideInLeftSmall': case 'slideInRightSmall': case 'slideOutLeftSmall': + case 'slideOutRightSmall': return this.slideValue; } } @@ -274,6 +305,7 @@ class AnimatedComponent extends Component { case 'slideInLeftSmall': case 'slideInRightSmall': case 'slideOutLeftSmall': + case 'slideOutRightSmall': this.slideValue = new Animated.Value(this.getStartingAnimatedValue(type)); break; } diff --git a/src/mobile/src/ui/components/TabContent.js b/src/mobile/src/ui/components/TabContent.js index ed80a1bdca..b04812a770 100644 --- a/src/mobile/src/ui/components/TabContent.js +++ b/src/mobile/src/ui/components/TabContent.js @@ -62,7 +62,7 @@ TabContent.propTypes = { handleCloseTopBar: PropTypes.func.isRequired, /** Determines whether keyboard is open on iOS */ isKeyboardActive: PropTypes.bool.isRequired, - animationInType: PropTypes.string.isRequired, + animationInType: PropTypes.array.isRequired, }; TabContent.defaultProps = { diff --git a/src/mobile/src/ui/views/wallet/Home.js b/src/mobile/src/ui/views/wallet/Home.js index 0f7a29de54..ddeb34edbf 100644 --- a/src/mobile/src/ui/views/wallet/Home.js +++ b/src/mobile/src/ui/views/wallet/Home.js @@ -106,8 +106,8 @@ class Home extends Component { this.state = { isKeyboardActive: false, - tabAnimationInType: ['fadeIn'], }; + this.tabAnimationInType = ['fadeIn']; } componentWillMount() { @@ -174,7 +174,7 @@ class Home extends Component { t('global:unrecognisedPasswordExplanation'), ); } else { - this.setState({ tabAnimationInType: ['fadeIn'] }); + this.tabAnimationInType = ['fadeIn']; this.props.setUserActivity({ inactive: false }); this.userInactivity.setActiveFromComponent(); } @@ -193,12 +193,10 @@ class Home extends Component { } // Set tab animation in type according to relative position of next active tab const routes = ['balance', 'send', 'receive', 'history', 'settings']; - this.setState({ - tabAnimationInType: - routes.indexOf(nextRoute) < routes.indexOf(this.props.currentRoute) - ? ['slideInLeftSmall', 'fadeIn'] - : ['slideInRightSmall', 'fadeIn'], - }); + this.tabAnimationInType = + routes.indexOf(nextRoute) < routes.indexOf(this.props.currentRoute) + ? ['slideInLeftSmall', 'fadeIn'] + : ['slideInRightSmall', 'fadeIn']; this.props.changeHomeScreenRoute(nextRoute); if (!isSyncing && !isCheckingCustomNode) { @@ -328,7 +326,7 @@ class Home extends Component { render() { const { t, inactive, minimised, isFingerprintEnabled, theme: { body, negative, positive }, theme } = this.props; - const { isKeyboardActive, tabAnimationInType } = this.state; + const { isKeyboardActive } = this.state; const textColor = { color: body.color }; return ( @@ -348,7 +346,7 @@ class Home extends Component { this.onTabSwitch(name)} handleCloseTopBar={() => this.handleCloseTopBar()} isKeyboardActive={isKeyboardActive} diff --git a/src/mobile/src/ui/views/wallet/Settings.js b/src/mobile/src/ui/views/wallet/Settings.js index 173a18bc45..fd35de66f0 100644 --- a/src/mobile/src/ui/views/wallet/Settings.js +++ b/src/mobile/src/ui/views/wallet/Settings.js @@ -1,6 +1,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { StyleSheet, View, TouchableWithoutFeedback } from 'react-native'; +import timer from 'react-native-timer'; import { connect } from 'react-redux'; import { setSetting } from 'shared-modules/actions/wallet'; import KeepAwake from 'react-native-keep-awake'; @@ -38,6 +39,13 @@ class Settings extends Component { animationInType: PropTypes.array.isRequired, }; + constructor(props) { + super(props); + this.state = { + nextSetting: 'mainSettings', + }; + } + componentDidMount() { leaveNavigationBreadcrumb('Settings'); } @@ -48,6 +56,17 @@ class Settings extends Component { } else if (this.props.isSyncing && !newProps.isSyncing) { KeepAwake.deactivate(); } + if (this.props.currentSetting !== newProps.currentSetting) { + this.animationOut = this.getAnimation(this.props.currentSetting, newProps.currentSetting, false); + this.animationIn = this.getAnimation(this.props.currentSetting, newProps.currentSetting); + timer.setTimeout( + 'delaySettingChange', + () => { + this.setState({ nextSetting: newProps.currentSetting }); + }, + 150, + ); + } } /** @@ -69,6 +88,58 @@ class Settings extends Component { return props[child] || {}; } + /** + * Gets settings animation according to current and next menu tier + * 0 = main settings menu, 1 = first tier settings menu, 2 = second tier settings menu, 3 = final tier settings menu + * + * @param {string} currentSetting + * @param {string} nextSetting + * @param {bool} currentSetting + * @returns {object} + */ + getAnimation(currentSetting, nextSetting, animationIn = true) { + const indexedSettings = { + mainSettings: 0, + accountManagement: 1, + securitySettings: 1, + advancedSettings: 1, + addNewAccount: 2, + useExistingSeed: 3, + modeSelection: 3, + themeCustomisation: 3, + currencySelection: 3, + languageSelection: 3, + viewAddresses: 3, + editAccountName: 3, + deleteAccount: 3, + viewSeed: 3, + exportSeedVault: 3, + changePassword: 3, + nodeSelection: 3, + addCustomNode: 3, + pow: 3, + autoPromotion: 3, + snapshotTransition: 3, + manualSync: 3, + about: 3, + }; + + if (animationIn) { + if (indexedSettings[currentSetting] === indexedSettings[nextSetting]) { + return ['fadeIn']; + } else if (indexedSettings[currentSetting] < indexedSettings[nextSetting]) { + return ['slideInLeftSmall', 'fadeIn']; + } else if (indexedSettings[currentSetting] > indexedSettings[nextSetting]) { + return ['slideInRightSmall', 'fadeIn']; + } + } + if (indexedSettings[currentSetting] < indexedSettings[nextSetting]) { + return ['slideOutLeftSmall', 'fadeOut']; + } else if (indexedSettings[currentSetting] > indexedSettings[nextSetting]) { + return ['slideOutRightSmall', 'fadeOut']; + } + } + render() { const childrenProps = this.getChildrenProps(this.props.currentSetting); @@ -82,9 +153,17 @@ class Settings extends Component { style={{ flex: 1 }} > - - - + + + From a75b573f680c417320b9d14bd316647e76915185 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Tue, 27 Nov 2018 16:29:55 +0000 Subject: [PATCH 073/141] Mobile: Refactor Dashboard animations --- .../src/ui/components/AnimatedComponent.js | 16 ----- src/mobile/src/ui/components/TabContent.js | 64 +++++++++++++++---- src/mobile/src/ui/views/wallet/Balance.js | 13 +--- src/mobile/src/ui/views/wallet/History.js | 13 +--- src/mobile/src/ui/views/wallet/Home.js | 3 - src/mobile/src/ui/views/wallet/Receive.js | 13 +--- src/mobile/src/ui/views/wallet/Send.js | 13 +--- src/mobile/src/ui/views/wallet/Settings.js | 22 ++----- 8 files changed, 67 insertions(+), 90 deletions(-) diff --git a/src/mobile/src/ui/components/AnimatedComponent.js b/src/mobile/src/ui/components/AnimatedComponent.js index f79588724a..3fe12d7e9c 100644 --- a/src/mobile/src/ui/components/AnimatedComponent.js +++ b/src/mobile/src/ui/components/AnimatedComponent.js @@ -25,10 +25,6 @@ class AnimatedComponent extends Component { navStack: PropTypes.array.isRequired, /** Style prop */ style: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.number]), - /** Determines whether animation is triggered by dashboard tab change */ - isDashboard: PropTypes.bool, - /** Current home screen route */ - homeRoute: PropTypes.string.isRequired, /** Trigger animation out on change */ animateOutTrigger: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]), /** Trigger animation in on change */ @@ -77,17 +73,6 @@ class AnimatedComponent extends Component { return this.iniatialiseAnimations(newProps.animationOutType); } - if (this.props.isDashboard && this.props.homeRoute !== newProps.homeRoute) { - const routes = ['balance', 'send', 'receive', 'history', 'settings']; - if (routes.indexOf(newProps.homeRoute) < routes.indexOf(this.props.homeRoute)) { - this.reverseSlideOut = true; - } else { - this.reverseSlideOut = false; - } - this.iniatialiseAnimations(this.props.animationOutType); - return this.animateOut(); - } - // Animate out if pushing from current screen if (this.props.navStack.length < newProps.navStack.length && this.screen === last(this.props.navStack)) { this.reverseSlideOut = false; @@ -342,7 +327,6 @@ class AnimatedComponent extends Component { const mapStateToProps = (state) => ({ navStack: state.wallet.navStack, - homeRoute: state.home.childRoute, }); export default connect(mapStateToProps)(AnimatedComponent); diff --git a/src/mobile/src/ui/components/TabContent.js b/src/mobile/src/ui/components/TabContent.js index b04812a770..320f5f0889 100644 --- a/src/mobile/src/ui/components/TabContent.js +++ b/src/mobile/src/ui/components/TabContent.js @@ -1,7 +1,7 @@ import React, { PureComponent } from 'react'; import timer from 'react-native-timer'; import PropTypes from 'prop-types'; -import { View } from 'react-native'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import { connect } from 'react-redux'; import BalanceComponent from 'ui/views/wallet/Balance'; import SendComponent from 'ui/views/wallet/Send'; @@ -21,48 +21,88 @@ class TabContent extends PureComponent { constructor(props) { super(props); this.state = { - route: props.currentRoute, + nextRoute: props.currentRoute, }; } + componentWillReceiveProps(newProps) { if (this.props.currentRoute !== newProps.currentRoute) { - timer.setTimeout('delayRouteChange', () => this.setState({ route: newProps.currentRoute }), 150); + this.animationOutType = this.getAnimation(this.props.currentRoute, newProps.currentRoute, false); + this.animationInType = this.getAnimation(this.props.currentRoute, newProps.currentRoute); + timer.setTimeout('delayRouteChange', () => this.setState({ nextRoute: newProps.currentRoute }), 150); + } + + if (this.props.inactive && newProps.inactive) { + this.animationInType = ['fadeIn']; + } + } + + /** + * Gets settings animation according to current and next home route + * + * @param {string} currentHomeRoute + * @param {string} nextHomeRoute + * @param {bool} animationIn + * @returns {object} + */ + getAnimation(currentHomeRoute, nextHomeRoute, animationIn = true) { + const routes = ['balance', 'send', 'receive', 'history', 'settings']; + if (routes.indexOf(currentHomeRoute) < routes.indexOf(nextHomeRoute)) { + if (animationIn) { + return ['slideInRightSmall', 'fadeIn']; + } + return ['slideOutLeftSmall', 'fadeOut']; + } else if (routes.indexOf(currentHomeRoute) > routes.indexOf(nextHomeRoute)) { + if (animationIn) { + return ['slideInLeftSmall', 'fadeIn']; + } + return ['slideOutRightSmall', 'fadeOut']; } } + render() { - const { isKeyboardActive, animationInType } = this.props; - const { route } = this.state; - const Content = routeToComponent[route]; + const { isKeyboardActive } = this.props; + const { nextRoute } = this.state; + const Content = routeToComponent[nextRoute]; return ( - + this.props.handleCloseTopBar()} isKeyboardActive={isKeyboardActive} onTabSwitch={(name) => this.props.onTabSwitch(name)} /> - + ); } } const mapStateToProps = (state) => ({ currentRoute: state.home.childRoute, + inactive: state.ui.inactive, }); TabContent.propTypes = { - /** Currently selected home screen route */ + /** @ignore */ currentRoute: PropTypes.oneOf(Object.keys(routeToComponent)), /** onTabSwitch callback function * @param {string} name - Next route name */ onTabSwitch: PropTypes.func.isRequired, + /** Closes topbar */ handleCloseTopBar: PropTypes.func.isRequired, /** Determines whether keyboard is open on iOS */ isKeyboardActive: PropTypes.bool.isRequired, - animationInType: PropTypes.array.isRequired, + /** @ignore */ + inactive: PropTypes.bool.isRequired, }; TabContent.defaultProps = { diff --git a/src/mobile/src/ui/views/wallet/Balance.js b/src/mobile/src/ui/views/wallet/Balance.js index 391eddca5c..6d0fb7ff38 100644 --- a/src/mobile/src/ui/views/wallet/Balance.js +++ b/src/mobile/src/ui/views/wallet/Balance.js @@ -29,7 +29,6 @@ import Chart from 'ui/components/Chart'; import { width, height } from 'libs/dimensions'; import { isAndroid } from 'libs/device'; import TextWithLetterSpacing from 'ui/components/TextWithLetterSpacing'; -import AnimatedComponent from 'ui/components/AnimatedComponent'; import { Styling } from 'ui/theme/general'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -125,8 +124,6 @@ export class Balance extends Component { onRefresh: PropTypes.func.isRequired, /** Addresses for selected account */ addresses: PropTypes.array.isRequired, - /** Determines tab switch animation in */ - animationInType: PropTypes.array.isRequired, }; /** @@ -259,13 +256,7 @@ export class Balance extends Component { showsVerticalScrollIndicator={false} > this.props.closeTopBar()}> - + this.onBalanceClick()}> @@ -290,7 +281,7 @@ export class Balance extends Component { - + ); diff --git a/src/mobile/src/ui/views/wallet/History.js b/src/mobile/src/ui/views/wallet/History.js index dba30a5e79..831d5d1275 100644 --- a/src/mobile/src/ui/views/wallet/History.js +++ b/src/mobile/src/ui/views/wallet/History.js @@ -26,7 +26,6 @@ import { width, height } from 'libs/dimensions'; import { isAndroid } from 'libs/device'; import { getPowFn } from 'libs/nativeModules'; import CtaButton from 'ui/components/CtaButton'; -import AnimatedComponent from 'ui/components/AnimatedComponent'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; const styles = StyleSheet.create({ @@ -115,8 +114,6 @@ class History extends Component { isModalActive: PropTypes.bool, /** @ignore */ modalContent: PropTypes.string, - /** Determines tab switch animation in */ - animationInType: PropTypes.array.isRequired, }; componentDidMount() { @@ -326,16 +323,10 @@ class History extends Component { return ( this.props.closeTopBar()}> - + {transactions} - + ); } diff --git a/src/mobile/src/ui/views/wallet/Home.js b/src/mobile/src/ui/views/wallet/Home.js index ddeb34edbf..9f8ba05f04 100644 --- a/src/mobile/src/ui/views/wallet/Home.js +++ b/src/mobile/src/ui/views/wallet/Home.js @@ -107,7 +107,6 @@ class Home extends Component { this.state = { isKeyboardActive: false, }; - this.tabAnimationInType = ['fadeIn']; } componentWillMount() { @@ -174,7 +173,6 @@ class Home extends Component { t('global:unrecognisedPasswordExplanation'), ); } else { - this.tabAnimationInType = ['fadeIn']; this.props.setUserActivity({ inactive: false }); this.userInactivity.setActiveFromComponent(); } @@ -346,7 +344,6 @@ class Home extends Component { this.onTabSwitch(name)} handleCloseTopBar={() => this.handleCloseTopBar()} isKeyboardActive={isKeyboardActive} diff --git a/src/mobile/src/ui/views/wallet/Receive.js b/src/mobile/src/ui/views/wallet/Receive.js index 6b36157f5a..468b5150be 100644 --- a/src/mobile/src/ui/views/wallet/Receive.js +++ b/src/mobile/src/ui/views/wallet/Receive.js @@ -32,7 +32,6 @@ import MultiTextInput from 'ui/components/MultiTextInput'; import CustomQrCodeComponent from 'ui/components/CustomQRCode'; import { Icon } from 'ui/theme/icons'; import ScramblingText from 'ui/components/ScramblingText'; -import AnimatedComponent from 'ui/components/AnimatedComponent'; import { width, height } from 'libs/dimensions'; import { isAndroid, getAndroidFileSystemPermissions } from 'libs/device'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -214,8 +213,6 @@ class Receive extends Component { conversionRate: PropTypes.number.isRequired, /** @ignore */ hadErrorGeneratingNewAddress: PropTypes.bool.isRequired, - /** Determines tab switch animation in */ - animationInType: PropTypes.array.isRequired, }; constructor(props) { @@ -530,13 +527,7 @@ class Receive extends Component { return ( this.clearInteractions()}> - + - + ); } diff --git a/src/mobile/src/ui/views/wallet/Send.js b/src/mobile/src/ui/views/wallet/Send.js index cd7d6bcc37..ddf090ecee 100644 --- a/src/mobile/src/ui/views/wallet/Send.js +++ b/src/mobile/src/ui/views/wallet/Send.js @@ -47,7 +47,6 @@ import { width } from 'libs/dimensions'; import { isAndroid } from 'libs/device'; import { getPowFn } from 'libs/nativeModules'; import { Styling } from 'ui/theme/general'; -import AnimatedComponent from 'ui/components/AnimatedComponent'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; const styles = StyleSheet.create({ @@ -168,8 +167,6 @@ export class Send extends Component { isKeyboardActive: PropTypes.bool.isRequired, /** @ignore */ toggleModalActivity: PropTypes.func.isRequired, - /** Determines tab switch animation in */ - animationInType: PropTypes.array.isRequired, }; constructor(props) { @@ -720,13 +717,7 @@ export class Send extends Component { return ( this.clearInteractions()}> - + - + ); } diff --git a/src/mobile/src/ui/views/wallet/Settings.js b/src/mobile/src/ui/views/wallet/Settings.js index fd35de66f0..5951ffacde 100644 --- a/src/mobile/src/ui/views/wallet/Settings.js +++ b/src/mobile/src/ui/views/wallet/Settings.js @@ -35,8 +35,6 @@ class Settings extends Component { setSetting: PropTypes.func.isRequired, /** @ignore */ closeTopBar: PropTypes.func.isRequired, - /** Determines tab switch animation in */ - animationInType: PropTypes.array.isRequired, }; constructor(props) { @@ -57,8 +55,8 @@ class Settings extends Component { KeepAwake.deactivate(); } if (this.props.currentSetting !== newProps.currentSetting) { - this.animationOut = this.getAnimation(this.props.currentSetting, newProps.currentSetting, false); - this.animationIn = this.getAnimation(this.props.currentSetting, newProps.currentSetting); + this.animationOutType = this.getAnimation(this.props.currentSetting, newProps.currentSetting, false); + this.animationInType = this.getAnimation(this.props.currentSetting, newProps.currentSetting); timer.setTimeout( 'delaySettingChange', () => { @@ -94,7 +92,7 @@ class Settings extends Component { * * @param {string} currentSetting * @param {string} nextSetting - * @param {bool} currentSetting + * @param {bool} animationIn * @returns {object} */ getAnimation(currentSetting, nextSetting, animationIn = true) { @@ -145,18 +143,12 @@ class Settings extends Component { return ( this.props.closeTopBar()}> - + - + ); } From cae0571c9f213d6a1f077e119673b1457c72dd3a Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Tue, 27 Nov 2018 17:33:18 +0000 Subject: [PATCH 074/141] Mobile: Add tabbar animations --- src/mobile/src/ui/components/Tab.js | 20 ++--------- src/mobile/src/ui/components/Tabs.js | 54 ++++++++++++++++++++++++---- 2 files changed, 49 insertions(+), 25 deletions(-) diff --git a/src/mobile/src/ui/components/Tab.js b/src/mobile/src/ui/components/Tab.js index 48f2321c02..b0b6d71604 100644 --- a/src/mobile/src/ui/components/Tab.js +++ b/src/mobile/src/ui/components/Tab.js @@ -33,8 +33,6 @@ class Tab extends PureComponent { text: PropTypes.string.isRequired, /** @ignore */ theme: PropTypes.object.isRequired, - /** Determines whether the tab is active or not */ - isActive: PropTypes.bool.isRequired, /** Press event callback function */ onPress: PropTypes.func, /** Tab name */ @@ -53,25 +51,11 @@ class Tab extends PureComponent { } render() { - const { onPress, icon, text, theme: { bar, primary }, isActive } = this.props; + const { onPress, icon, text, theme: { bar } } = this.props; return ( - + {text} diff --git a/src/mobile/src/ui/components/Tabs.js b/src/mobile/src/ui/components/Tabs.js index ccbf278ae3..5c59103da9 100644 --- a/src/mobile/src/ui/components/Tabs.js +++ b/src/mobile/src/ui/components/Tabs.js @@ -1,8 +1,9 @@ import React, { Component, Children, cloneElement } from 'react'; import PropTypes from 'prop-types'; -import { StyleSheet, View } from 'react-native'; +import { StyleSheet, View, Animated, Easing } from 'react-native'; import { connect } from 'react-redux'; import { isIPhoneX } from 'libs/device'; +import { Styling } from 'ui/theme/general'; import { height, width } from 'libs/dimensions'; const styles = StyleSheet.create({ @@ -23,22 +24,61 @@ const styles = StyleSheet.create({ height: height / 5, marginTop: isIPhoneX ? height / 120 : 0, }, + activeTab: { + width: width / 5, + height: parseInt(width / 5 + height / (isIPhoneX ? 120 : 160)), + justifyContent: 'center', + alignItems: 'center', + borderTopColor: 'transparent', + borderTopWidth: parseInt(height / (isIPhoneX ? 120 : 160)), + }, }); class Tabs extends Component { + constructor() { + super(); + this.activeTabPosition = new Animated.Value(0); + } + + componentWillReceiveProps(newProps) { + if (this.props.currentRoute !== newProps.currentRoute) { + this.animateActiveTab(newProps.currentRoute); + } + } + + animateActiveTab(currentRoute) { + const routes = ['balance', 'send', 'receive', 'history', 'settings']; + Animated.timing(this.activeTabPosition, { + toValue: routes.indexOf(currentRoute) * width / 5, + duration: 300, + easing: Easing.bezier(0.25, 1, 0.25, 1), + }).start(); + } + render() { - const { children, onPress, currentRoute, theme: { bar } } = this.props; + const { children, onPress, theme: { bar, primary } } = this.props; const childComponents = Children.map(children, (child) => - cloneElement(child, { - onPress: () => onPress(child.props.name), - isActive: child.props.name === currentRoute, - }), + cloneElement(child, { onPress: () => onPress(child.props.name) }), ); const tabContainer = ( - + + + {childComponents} ); From 6d498a64936c5398e1785f14f9bb2b7bce92a13c Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Tue, 27 Nov 2018 23:18:18 +0000 Subject: [PATCH 075/141] Mobile: Add tab animations --- src/mobile/src/ui/components/Tab.js | 69 ++++++++++++++++++++++++---- src/mobile/src/ui/components/Tabs.js | 29 ++++++------ 2 files changed, 77 insertions(+), 21 deletions(-) diff --git a/src/mobile/src/ui/components/Tab.js b/src/mobile/src/ui/components/Tab.js index b0b6d71604..3d89853ba5 100644 --- a/src/mobile/src/ui/components/Tab.js +++ b/src/mobile/src/ui/components/Tab.js @@ -1,6 +1,6 @@ -import React, { PureComponent } from 'react'; +import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import { StyleSheet, Text, TouchableWithoutFeedback, View } from 'react-native'; +import { Animated, StyleSheet, TouchableWithoutFeedback, View } from 'react-native'; import { Icon } from 'ui/theme/icons'; import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; @@ -20,12 +20,11 @@ const styles = StyleSheet.create({ textAlign: 'center', paddingTop: height / 80, fontFamily: 'SourceSansPro-Regular', - fontSize: Styling.fontSize1, backgroundColor: 'transparent', }, }); -class Tab extends PureComponent { +class Tab extends Component { static propTypes = { /** Tab icon name */ icon: PropTypes.string.isRequired, @@ -33,6 +32,8 @@ class Tab extends PureComponent { text: PropTypes.string.isRequired, /** @ignore */ theme: PropTypes.object.isRequired, + /** Determines whether the tab is active or not */ + isActive: PropTypes.bool.isRequired, /** Press event callback function */ onPress: PropTypes.func, /** Tab name */ @@ -44,6 +45,48 @@ class Tab extends PureComponent { isActive: false, }; + constructor(props) { + super(props); + this.iconSize = new Animated.Value(props.isActive ? width / 14 : width / 18); + this.fontSize = new Animated.Value(props.isActive ? 1 : Styling.fontSize1); + this.fontOpacity = new Animated.Value(props.isActive ? 0 : 1); + } + + componentWillReceiveProps(newProps) { + if (!this.props.isActive && newProps.isActive) { + Animated.parallel([ + Animated.timing(this.iconSize, { + toValue: width / 14, + duration: 150, + }), + Animated.timing(this.fontSize, { + toValue: 1, + duration: 150, + }), + Animated.timing(this.fontOpacity, { + toValue: 0, + duration: 150, + }), + ]).start(); + } + if (this.props.isActive && !newProps.isActive) { + Animated.parallel([ + Animated.timing(this.iconSize, { + toValue: width / 18, + duration: 150, + }), + Animated.timing(this.fontSize, { + toValue: Styling.fontSize1, + duration: 150, + }), + Animated.timing(this.fontOpacity, { + toValue: 1, + duration: 150, + }), + ]).start(); + } + } + getPosition() { const { name } = this.props; const names = ['balance', 'send', 'receive', 'history', 'settings']; @@ -52,14 +95,24 @@ class Tab extends PureComponent { render() { const { onPress, icon, text, theme: { bar } } = this.props; - + const AnimatedIcon = Animated.createAnimatedComponent(Icon); return ( - - + + {text} - + ); diff --git a/src/mobile/src/ui/components/Tabs.js b/src/mobile/src/ui/components/Tabs.js index 5c59103da9..8a26a42779 100644 --- a/src/mobile/src/ui/components/Tabs.js +++ b/src/mobile/src/ui/components/Tabs.js @@ -35,9 +35,9 @@ const styles = StyleSheet.create({ }); class Tabs extends Component { - constructor() { - super(); - this.activeTabPosition = new Animated.Value(0); + constructor(props) { + super(props); + this.activeTabPosition = new Animated.Value(this.getPosition(props.currentRoute)); } componentWillReceiveProps(newProps) { @@ -46,23 +46,28 @@ class Tabs extends Component { } } - animateActiveTab(currentRoute) { + getPosition(route) { const routes = ['balance', 'send', 'receive', 'history', 'settings']; + return routes.indexOf(route) * width / 5; + } + + animateActiveTab(currentRoute) { Animated.timing(this.activeTabPosition, { - toValue: routes.indexOf(currentRoute) * width / 5, - duration: 300, + toValue: this.getPosition(currentRoute), + duration: 150, easing: Easing.bezier(0.25, 1, 0.25, 1), }).start(); } render() { - const { children, onPress, theme: { bar, primary } } = this.props; - + const { currentRoute, children, onPress, theme: { bar, primary } } = this.props; const childComponents = Children.map(children, (child) => - cloneElement(child, { onPress: () => onPress(child.props.name) }), + cloneElement(child, { + onPress: () => onPress(child.props.name), + isActive: child.props.name === currentRoute, + }), ); - - const tabContainer = ( + return ( {childComponents} ); - - return tabContainer; } } From 7d669ce7eb8249df5a251f5f44340206bf8be715 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Wed, 28 Nov 2018 15:15:30 +0000 Subject: [PATCH 076/141] Mobile: Update tab animation --- src/mobile/src/ui/components/Tab.js | 47 +++++++++---------- src/mobile/src/ui/components/Tabs.js | 30 ++++++------ .../src/ui/views/onboarding/NewSeedSetup.js | 2 +- src/mobile/src/ui/views/wallet/Balance.js | 2 +- src/mobile/src/ui/views/wallet/History.js | 2 +- .../src/ui/views/wallet/ViewAddresses.js | 2 +- 6 files changed, 40 insertions(+), 45 deletions(-) diff --git a/src/mobile/src/ui/components/Tab.js b/src/mobile/src/ui/components/Tab.js index 3d89853ba5..8a40ca8881 100644 --- a/src/mobile/src/ui/components/Tab.js +++ b/src/mobile/src/ui/components/Tab.js @@ -7,6 +7,12 @@ import { Styling } from 'ui/theme/general'; import { isIPhoneX } from 'libs/device'; const styles = StyleSheet.create({ + container: { + height: width / 8.5, + width: width / 5, + justifyContent: 'space-between', + alignItems: 'center', + }, button: { width: width / 5, height: parseInt(width / 5 + height / (isIPhoneX ? 120 : 160)), @@ -18,7 +24,6 @@ const styles = StyleSheet.create({ iconTitle: { fontWeight: 'bold', textAlign: 'center', - paddingTop: height / 80, fontFamily: 'SourceSansPro-Regular', backgroundColor: 'transparent', }, @@ -48,8 +53,7 @@ class Tab extends Component { constructor(props) { super(props); this.iconSize = new Animated.Value(props.isActive ? width / 14 : width / 18); - this.fontSize = new Animated.Value(props.isActive ? 1 : Styling.fontSize1); - this.fontOpacity = new Animated.Value(props.isActive ? 0 : 1); + this.fontSize = new Animated.Value(props.isActive ? width / 42 : Styling.fontSize1); } componentWillReceiveProps(newProps) { @@ -60,11 +64,7 @@ class Tab extends Component { duration: 150, }), Animated.timing(this.fontSize, { - toValue: 1, - duration: 150, - }), - Animated.timing(this.fontOpacity, { - toValue: 0, + toValue: width / 42, duration: 150, }), ]).start(); @@ -79,10 +79,6 @@ class Tab extends Component { toValue: Styling.fontSize1, duration: 150, }), - Animated.timing(this.fontOpacity, { - toValue: 1, - duration: 150, - }), ]).start(); } } @@ -99,20 +95,19 @@ class Tab extends Component { return ( - - - {text} - + + + + {text} + + ); diff --git a/src/mobile/src/ui/components/Tabs.js b/src/mobile/src/ui/components/Tabs.js index 8a26a42779..066414ec50 100644 --- a/src/mobile/src/ui/components/Tabs.js +++ b/src/mobile/src/ui/components/Tabs.js @@ -31,6 +31,7 @@ const styles = StyleSheet.create({ alignItems: 'center', borderTopColor: 'transparent', borderTopWidth: parseInt(height / (isIPhoneX ? 120 : 160)), + position: 'absolute', }, }); @@ -69,21 +70,20 @@ class Tabs extends Component { ); return ( - - - + + {childComponents} ); diff --git a/src/mobile/src/ui/views/onboarding/NewSeedSetup.js b/src/mobile/src/ui/views/onboarding/NewSeedSetup.js index d0232a6b0b..d7aa408b0b 100644 --- a/src/mobile/src/ui/views/onboarding/NewSeedSetup.js +++ b/src/mobile/src/ui/views/onboarding/NewSeedSetup.js @@ -291,7 +291,7 @@ class NewSeedSetup extends Component { index} + keyExtractor={(item, index) => index.toString()} renderItem={({ item, index }) => this.renderChequerboard(item, index)} initialNumToRender={MAX_SEED_LENGTH} scrollEnabled={false} diff --git a/src/mobile/src/ui/views/wallet/Balance.js b/src/mobile/src/ui/views/wallet/Balance.js index 6d0fb7ff38..dfd5c89797 100644 --- a/src/mobile/src/ui/views/wallet/Balance.js +++ b/src/mobile/src/ui/views/wallet/Balance.js @@ -219,7 +219,7 @@ export class Balance extends Component { index} + keyExtractor={(item, index) => index.toString()} renderItem={({ item }) => } contentContainerStyle={styles.listView} ItemSeparatorComponent={() => } diff --git a/src/mobile/src/ui/views/wallet/History.js b/src/mobile/src/ui/views/wallet/History.js index 831d5d1275..e95fe2dce2 100644 --- a/src/mobile/src/ui/views/wallet/History.js +++ b/src/mobile/src/ui/views/wallet/History.js @@ -280,7 +280,7 @@ class History extends Component { data={data} initialNumToRender={8} // TODO: Should be dynamically computed. removeClippedSubviews - keyExtractor={(item, index) => index} + keyExtractor={(item, index) => index.toString()} renderItem={({ item }) => } refreshControl={ index} + keyExtractor={(item, index) => index.toString()} renderItem={({ item }) => this.renderAddress(item)} ItemSeparatorComponent={() => } ListEmptyComponent={ From d1e30f61d7d46bc174f11669b9ebe99af4dd88e1 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Wed, 28 Nov 2018 15:47:47 +0000 Subject: [PATCH 077/141] Fix failing test --- .../__tests__/ui/components/TransactionHistoryModal.spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mobile/__tests__/ui/components/TransactionHistoryModal.spec.js b/src/mobile/__tests__/ui/components/TransactionHistoryModal.spec.js index e2e243e0f9..146b6bf207 100644 --- a/src/mobile/__tests__/ui/components/TransactionHistoryModal.spec.js +++ b/src/mobile/__tests__/ui/components/TransactionHistoryModal.spec.js @@ -121,7 +121,7 @@ describe('Testing TransactionHistoryModal component', () => { const props = getProps(); const wrapper = shallow(); - expect(wrapper.find('ScrollViewMock').length).toEqual(1); + expect(wrapper.find('ScrollViewMock').length).toEqual(0); }); it('should call instance method copy with bundle prop and "bundle" string when onPress prop of second TouchableOpacity is triggered', () => { From 426146b2e649f9064fcded7299d9b47099829971 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Wed, 28 Nov 2018 15:48:49 +0000 Subject: [PATCH 078/141] Fix failing test --- .../__tests__/ui/components/TransactionHistoryModal.spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mobile/__tests__/ui/components/TransactionHistoryModal.spec.js b/src/mobile/__tests__/ui/components/TransactionHistoryModal.spec.js index e2e243e0f9..146b6bf207 100644 --- a/src/mobile/__tests__/ui/components/TransactionHistoryModal.spec.js +++ b/src/mobile/__tests__/ui/components/TransactionHistoryModal.spec.js @@ -121,7 +121,7 @@ describe('Testing TransactionHistoryModal component', () => { const props = getProps(); const wrapper = shallow(); - expect(wrapper.find('ScrollViewMock').length).toEqual(1); + expect(wrapper.find('ScrollViewMock').length).toEqual(0); }); it('should call instance method copy with bundle prop and "bundle" string when onPress prop of second TouchableOpacity is triggered', () => { From 45a14ca38917b683c7030acb4d3f19cd5030652b Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Wed, 28 Nov 2018 17:09:23 +0000 Subject: [PATCH 079/141] Mobile: Fix lottie animations on iOS --- .../ios/iotaWallet.xcodeproj/project.pbxproj | 37 ++++++++++--------- src/mobile/yarn.lock | 26 ++++++------- 2 files changed, 32 insertions(+), 31 deletions(-) diff --git a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj index 376ddab77c..7630da256d 100644 --- a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj +++ b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj @@ -29,8 +29,6 @@ 601BFCF020C3677F0097D329 /* Social.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 601BFCEF20C3677E0097D329 /* Social.framework */; }; 601BFCF220C3679D0097D329 /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 601BFCF120C3679D0097D329 /* MessageUI.framework */; }; 601BFD6220C39A610097D329 /* libRNViewShot.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 601BFD6120C39A580097D329 /* libRNViewShot.a */; }; - 6020D31A21A5065300159E5A /* Lottie.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CBC5562C207BA79E00BA0A7F /* Lottie.framework */; }; - 6020D31B21A5065300159E5A /* Lottie.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = CBC5562C207BA79E00BA0A7F /* Lottie.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 6020D31E21A5077600159E5A /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CBC55639207BA79E00BA0A7F /* libRCTAnimation.a */; }; 6020D31F21A507BC00159E5A /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CBC5565A207BA79E00BA0A7F /* libReact.a */; }; 6020D32021A5080100159E5A /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CBC5565A207BA79E00BA0A7F /* libReact.a */; }; @@ -70,8 +68,10 @@ CB98FB9520A0A5BB0047877B /* SourceSansPro-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CB98FB9220A0A5BB0047877B /* SourceSansPro-Regular.ttf */; }; CB98FB9620A0A5BB0047877B /* SourceSansPro-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CB98FB9320A0A5BB0047877B /* SourceSansPro-Light.ttf */; }; CBA5F52620CAAB2A00774D4B /* SourceCodePro-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CBA5F52520CAAB2A00774D4B /* SourceCodePro-Medium.ttf */; }; - CBBD19A22177BCBB0076C9EC /* (null) in Frameworks */ = {isa = PBXBuildFile; }; CBC214EA20CE82EC005D8ACB /* libRNReactNativeHapticFeedback.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CBC214E920CE82DC005D8ACB /* libRNReactNativeHapticFeedback.a */; }; + CBDE11BB21AEFFFE00CA1909 /* Lottie.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CBC5562C207BA79E00BA0A7F /* Lottie.framework */; }; + CBDE11BC21AEFFFE00CA1909 /* Lottie.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = CBC5562C207BA79E00BA0A7F /* Lottie.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + CBDE11BF21AF008D00CA1909 /* libLottieReactNative.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CB5577D5219F221E00B698BF /* libLottieReactNative.a */; }; CBEA4C9421494823007DA583 /* libReactNativeNavigation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CBEA4C912149481F007DA583 /* libReactNativeNavigation.a */; }; CBEC7C012108D78900F0020D /* libRNFastCrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CBEC7C002108D77100F0020D /* libRNFastCrypto.a */; }; CDC76600A03C06457F99259512D7F713 /* libRNIsDeviceRooted.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0431CEEC099BC4CE1F43E0550C4CC291 /* libRNIsDeviceRooted.a */; }; @@ -162,13 +162,6 @@ remoteGlobalIDString = BCF351C3D91067AA4B325E17903DAAA1; remoteInfo = RCTWebSocket; }; - 3431B8C171DBF136591372AA44E6F2F4 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = B8B9BB680BF96F04B35C8CF2291F3DF7 /* Lottie.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 62CA59B71E3C173B002D7188; - remoteInfo = Lottie_iOS; - }; 3574B82CD6B55B4ECA9A60938811F5E8 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 679A4B0BB6333961124F2288316630DD /* RCTText.xcodeproj */; @@ -582,6 +575,13 @@ remoteGlobalIDString = 6456441F1EB8DA9100672408; remoteInfo = "RNFS-tvOS"; }; + CBDE11BD21AEFFFE00CA1909 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = B8B9BB680BF96F04B35C8CF2291F3DF7 /* Lottie.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = 62CA59B71E3C173B002D7188; + remoteInfo = Lottie_iOS; + }; CBEA4C902149481F007DA583 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = CBEA4C8B2149481F007DA583 /* ReactNativeNavigation.xcodeproj */; @@ -676,7 +676,7 @@ dstSubfolderSpec = 10; files = ( D1DC0968101C454F996F0262 /* NodeMobile.framework in Embed Frameworks */, - 6020D31B21A5065300159E5A /* Lottie.framework in Embed Frameworks */, + CBDE11BC21AEFFFE00CA1909 /* Lottie.framework in Embed Frameworks */, ); name = "Embed Frameworks"; runOnlyForDeploymentPostprocessing = 0; @@ -816,14 +816,15 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + CBDE11BF21AF008D00CA1909 /* libLottieReactNative.a in Frameworks */, 6020D31F21A507BC00159E5A /* libReact.a in Frameworks */, 6020D31E21A5077600159E5A /* libRCTAnimation.a in Frameworks */, CBEA4C9421494823007DA583 /* libReactNativeNavigation.a in Frameworks */, 60F7E4242125EBE7005355C7 /* libRNDocumentPicker.a in Frameworks */, CB305F0421185EF800657575 /* libRNFetchBlob.a in Frameworks */, + CBDE11BB21AEFFFE00CA1909 /* Lottie.framework in Frameworks */, CBEC7C012108D78900F0020D /* libRNFastCrypto.a in Frameworks */, 601BFD6220C39A610097D329 /* libRNViewShot.a in Frameworks */, - 6020D31A21A5065300159E5A /* Lottie.framework in Frameworks */, 601BFCF220C3679D0097D329 /* MessageUI.framework in Frameworks */, 601BFCF020C3677F0097D329 /* Social.framework in Frameworks */, 601BFCEE20C367660097D329 /* libRNShare.a in Frameworks */, @@ -1506,8 +1507,8 @@ buildRules = ( ); dependencies = ( - BCF502FF716E49969EFEC3E7DA65262E /* PBXTargetDependency */, 6020D31D21A5065300159E5A /* PBXTargetDependency */, + CBDE11BE21AEFFFE00CA1909 /* PBXTargetDependency */, ); name = iotaWallet; productName = "Hello World"; @@ -2644,16 +2645,16 @@ name = Lottie_iOS; targetProxy = 6020D31C21A5065300159E5A /* PBXContainerItemProxy */; }; - BCF502FF716E49969EFEC3E7DA65262E /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = Lottie_iOS; - targetProxy = 3431B8C171DBF136591372AA44E6F2F4 /* PBXContainerItemProxy */; - }; BE73D60DB7DADA792CE0511FEEF11D44 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 4848851A00274CA2FFBE307BAEB5F278 /* iotaWallet */; targetProxy = 569242DFF3FE79F261B75B97749FC745 /* PBXContainerItemProxy */; }; + CBDE11BE21AEFFFE00CA1909 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Lottie_iOS; + targetProxy = CBDE11BD21AEFFFE00CA1909 /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin PBXVariantGroup section */ diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 6aa7841269..96697e2005 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -5204,18 +5204,18 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1, loose-envify@^1.4 dependencies: js-tokens "^3.0.0 || ^4.0.0" -lottie-ios@^2.1.3, lottie-ios@^2.1.5: +lottie-ios@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/lottie-ios/-/lottie-ios-2.5.0.tgz#55c808e785d4a6933b0c10b395530b17098b05de" integrity sha1-VcgI54XUppM7DBCzlVMLFwmLBd4= -lottie-react-native@2.2.7: - version "2.2.7" - resolved "https://registry.yarnpkg.com/lottie-react-native/-/lottie-react-native-2.2.7.tgz#d89cf6e0a093693d5fed2999a986cbcb1a090955" - integrity sha1-2Jz24KCTaT1f7SmZqYbLyxoJCVU= +lottie-react-native@^2.5.10: + version "2.5.10" + resolved "https://registry.yarnpkg.com/lottie-react-native/-/lottie-react-native-2.5.10.tgz#703f2fe8305dcb53e993654f7ecd96c2f04c672c" + integrity sha512-+uCQ6y4iEamenmL5rKCWOybjC1Ii12FSd+cR1nTdLsJEmKmU7ckoJTtwChj4DHQqnRDzx0oUr9yoJIGPavcaDQ== dependencies: invariant "^2.2.2" - lottie-ios "^2.1.3" + lottie-ios "^2.5.0" prop-types "^15.5.10" react-native-safe-module "^1.1.0" @@ -5889,9 +5889,9 @@ nodejs-mobile-gyp@^0.2.0: tar "^3.1.3" which "1" -"nodejs-mobile-react-native@https://github.com/rajivshah3/nodejs-mobile-react-native": - version "0.2.1" - resolved "https://github.com/rajivshah3/nodejs-mobile-react-native#e8337cfb03f72cfa88acf7b2d16d29fe848af174" +"nodejs-mobile-react-native@https://github.com/rajivshah3/nodejs-mobile-react-native#ab4a655d30a51115c34dbdb30b98df6f130467ff": + version "0.3.2" + resolved "https://github.com/rajivshah3/nodejs-mobile-react-native#ab4a655d30a51115c34dbdb30b98df6f130467ff" dependencies: mkdirp "^0.5.1" ncp "^2.0.0" @@ -7002,10 +7002,10 @@ react-native-modal-translucent@^1.1.3: resolved "https://registry.yarnpkg.com/react-native-modal-translucent/-/react-native-modal-translucent-1.1.6.tgz#faa72d8c1c8b902cc9252476036dadba93aa120c" integrity sha512-eEMarVkOUpkPoK5oIv0lxahI1UxTuTAUycUWpEv4MBH8mkjzuHxSxw4MKXd1C2Yt+tzDv3De0rMFTKnQjw2Fqw== -react-native-modal@^6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/react-native-modal/-/react-native-modal-6.5.0.tgz#46220b2289a41597d344c1db17454611b426a758" - integrity sha512-ewchdETAGd32xLGLK93NETEGkRcePtN7ZwjmLSQnNW1Zd0SRUYE8NqftjamPyfKvK0i2DZjX4YAghGZTqaRUbA== +react-native-modal@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/react-native-modal/-/react-native-modal-7.0.1.tgz#120df1966f5da96e9d89bf384f22b79ab6ca97b1" + integrity sha512-I/BZ4ZkVLjD/wApvSjqp/w9+J100czFNGB+SNm3oYHKAfPfm5g1OoB9UQT6DvChmG4TiVX8kiDXTm8FNrbkWpQ== dependencies: prop-types "^15.6.1" react-native-animatable "^1.2.4" From ee99062642a7293f277e448bfcef3e44fb3fab5f Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Wed, 28 Nov 2018 17:22:42 +0000 Subject: [PATCH 080/141] Mobile: Fix loading animation --- src/mobile/src/ui/views/wallet/Loading.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/mobile/src/ui/views/wallet/Loading.js b/src/mobile/src/ui/views/wallet/Loading.js index fc772418d7..ea39d782a9 100644 --- a/src/mobile/src/ui/views/wallet/Loading.js +++ b/src/mobile/src/ui/views/wallet/Loading.js @@ -140,8 +140,8 @@ class Loading extends Component { elipsis: '', animationPartOneDone: false, displayNodeChangeOption: false, - welcomeAnimationPath: props.isThemeDark ? whiteWelcomeAnimationPartOne : blackWelcomeAnimationPartOne, }; + this.welcomeAnimationPath = props.isThemeDark ? whiteWelcomeAnimationPartOne : blackWelcomeAnimationPartOne; this.onChangeNodePress = this.onChangeNodePress.bind(this); } @@ -236,7 +236,7 @@ class Loading extends Component { } setAnimationOneTimout() { - timer.setTimeout('animationTimeout', () => this.playAnimationTwo(), 1800); + timer.setTimeout('animationTimeout', () => this.playAnimationTwo(), 1900); } /** @@ -252,11 +252,12 @@ class Loading extends Component { } playAnimationTwo() { + this.welcomeAnimationPath = this.props.isThemeDark + ? whiteWelcomeAnimationPartTwo + : blackWelcomeAnimationPartTwo; this.setState({ animationPartOneDone: true, - welcomeAnimationPath: this.props.isThemeDark ? whiteWelcomeAnimationPartTwo : blackWelcomeAnimationPartTwo, }); - this.animation.reset(); this.animation.play(); } @@ -337,7 +338,6 @@ class Loading extends Component { render() { const { t, addingAdditionalAccount, theme: { body, primary }, isThemeDark } = this.props; - const { displayNodeChangeOption, welcomeAnimationPath } = this.state; const textColor = { color: body.color }; const loadingAnimationPath = isThemeDark ? whiteLoadingAnimation : blackLoadingAnimation; @@ -394,11 +394,11 @@ class Loading extends Component { ref={(animation) => { this.animation = animation; }} - source={welcomeAnimationPath} + source={this.welcomeAnimationPath} style={styles.animationLoading} /> - {displayNodeChangeOption && ( + {this.state.displayNodeChangeOption && ( Date: Wed, 28 Nov 2018 12:52:59 -0500 Subject: [PATCH 081/141] Mobile: Set displayName property of AnimatedIcon --- src/mobile/__tests__/ui/components/Tab.spec.js | 7 +++++-- src/mobile/src/ui/components/Tab.js | 2 ++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/mobile/__tests__/ui/components/Tab.spec.js b/src/mobile/__tests__/ui/components/Tab.spec.js index 3213f9a4ea..3a49394ad7 100644 --- a/src/mobile/__tests__/ui/components/Tab.spec.js +++ b/src/mobile/__tests__/ui/components/Tab.spec.js @@ -50,7 +50,8 @@ describe('Testing Tab component', () => { const props = getProps(); const wrapper = shallow(); - const icon = wrapper.find('Icon'); + + const icon = wrapper.find('AnimatedIcon'); expect(icon.props().name).toEqual('iota'); }); @@ -59,7 +60,9 @@ describe('Testing Tab component', () => { const props = getProps(); const wrapper = shallow(); - const text = wrapper.find('Text'); + + // FIXME: We should wrap this component so we can name it ourselves + const text = wrapper.find('AnimatedComponent'); expect(text.children().text()).toEqual('foo'); }); diff --git a/src/mobile/src/ui/components/Tab.js b/src/mobile/src/ui/components/Tab.js index 8a40ca8881..85dd6a71e2 100644 --- a/src/mobile/src/ui/components/Tab.js +++ b/src/mobile/src/ui/components/Tab.js @@ -92,6 +92,8 @@ class Tab extends Component { render() { const { onPress, icon, text, theme: { bar } } = this.props; const AnimatedIcon = Animated.createAnimatedComponent(Icon); + AnimatedIcon.displayName = 'AnimatedIcon'; + return ( From 029482957e73a2fbbee781c5ebf959cd6436c2df Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Wed, 28 Nov 2018 23:40:12 +0000 Subject: [PATCH 082/141] Mobile: Fix disappearing dashboard pages --- src/mobile/src/ui/components/TabContent.js | 10 +++++++++- src/mobile/src/ui/views/wallet/Settings.js | 6 +++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/mobile/src/ui/components/TabContent.js b/src/mobile/src/ui/components/TabContent.js index 320f5f0889..704b4f0c9e 100644 --- a/src/mobile/src/ui/components/TabContent.js +++ b/src/mobile/src/ui/components/TabContent.js @@ -29,7 +29,11 @@ class TabContent extends PureComponent { if (this.props.currentRoute !== newProps.currentRoute) { this.animationOutType = this.getAnimation(this.props.currentRoute, newProps.currentRoute, false); this.animationInType = this.getAnimation(this.props.currentRoute, newProps.currentRoute); - timer.setTimeout('delayRouteChange', () => this.setState({ nextRoute: newProps.currentRoute }), 150); + timer.setTimeout( + 'delayRouteChange' + newProps.currentRoute, + () => this.setState({ nextRoute: newProps.currentRoute }), + 150, + ); } if (this.props.inactive && newProps.inactive) { @@ -37,6 +41,10 @@ class TabContent extends PureComponent { } } + componentWillUnmount() { + timer.clearTimeout('delaySettingChange' + this.props.currentRoute); + } + /** * Gets settings animation according to current and next home route * diff --git a/src/mobile/src/ui/views/wallet/Settings.js b/src/mobile/src/ui/views/wallet/Settings.js index 5951ffacde..e45787ec0f 100644 --- a/src/mobile/src/ui/views/wallet/Settings.js +++ b/src/mobile/src/ui/views/wallet/Settings.js @@ -58,7 +58,7 @@ class Settings extends Component { this.animationOutType = this.getAnimation(this.props.currentSetting, newProps.currentSetting, false); this.animationInType = this.getAnimation(this.props.currentSetting, newProps.currentSetting); timer.setTimeout( - 'delaySettingChange', + 'delaySettingChange' + newProps.currentSetting, () => { this.setState({ nextSetting: newProps.currentSetting }); }, @@ -67,6 +67,10 @@ class Settings extends Component { } } + componentWillUnmount() { + timer.clearTimeout('delaySettingChange' + this.props.currentSetting); + } + /** * Gets children props for SettingsContent component * From 63aa65a2fc1f38595ddbbf9f63cd48e23da25743 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 29 Nov 2018 17:12:00 +0000 Subject: [PATCH 083/141] Mobile: Add animations to node options on login --- .../src/ui/components/AnimatedComponent.js | 8 ++- src/mobile/src/ui/views/wallet/Login.js | 72 ++++++++++++++++--- .../src/ui/views/wallet/NodeOptionsOnLogin.js | 3 +- 3 files changed, 70 insertions(+), 13 deletions(-) diff --git a/src/mobile/src/ui/components/AnimatedComponent.js b/src/mobile/src/ui/components/AnimatedComponent.js index 3fe12d7e9c..a657afd1eb 100644 --- a/src/mobile/src/ui/components/AnimatedComponent.js +++ b/src/mobile/src/ui/components/AnimatedComponent.js @@ -167,6 +167,7 @@ class AnimatedComponent extends Component { case 'slideInLeft': return -width; case 'slideOutLeft': + case 'slideOutRight': return 0; case 'slideInLeftSmall': return -width / 8; @@ -195,6 +196,8 @@ class AnimatedComponent extends Component { return 0; case 'slideOutLeft': return this.reverseSlideOut ? width : -width; + case 'slideOutRight': + return width; case 'slideInLeftSmall': return 0; case 'slideInRightSmall': @@ -218,8 +221,9 @@ class AnimatedComponent extends Component { case 'fadeOut': return Easing.elastic(); case 'slideInLeft': - case 'slideOutLeft': case 'slideInRight': + case 'slideOutLeft': + case 'slideOutRight': case 'slideInLeftSmall': case 'slideInRightSmall': case 'slideOutLeftSmall': @@ -242,6 +246,7 @@ class AnimatedComponent extends Component { case 'slideInLeft': case 'slideInRight': case 'slideOutLeft': + case 'slideOutRight': case 'slideInLeftSmall': case 'slideInRightSmall': case 'slideOutLeftSmall': @@ -287,6 +292,7 @@ class AnimatedComponent extends Component { case 'slideInLeft': case 'slideInRight': case 'slideOutLeft': + case 'slideOutRight': case 'slideInLeftSmall': case 'slideInRightSmall': case 'slideOutLeftSmall': diff --git a/src/mobile/src/ui/views/wallet/Login.js b/src/mobile/src/ui/views/wallet/Login.js index e9c6bd552d..8b7935d480 100644 --- a/src/mobile/src/ui/views/wallet/Login.js +++ b/src/mobile/src/ui/views/wallet/Login.js @@ -6,7 +6,8 @@ import PropTypes from 'prop-types'; import KeepAwake from 'react-native-keep-awake'; import SplashScreen from 'react-native-splash-screen'; import { navigator } from 'libs/navigation'; -import { Linking, StyleSheet, View } from 'react-native'; +import { Linking, StyleSheet } from 'react-native'; +import timer from 'react-native-timer'; import { parseAddress } from 'shared-modules/libs/iota/utils'; import { setFullNode } from 'shared-modules/actions/settings'; import { setPassword, setSetting, setDeepLink } from 'shared-modules/actions/wallet'; @@ -14,6 +15,7 @@ import { setUserActivity, setLoginPasswordField, setLoginRoute } from 'shared-mo import { generateAlert } from 'shared-modules/actions/alerts'; import NodeOptionsOnLogin from 'ui/views/wallet/NodeOptionsOnLogin'; import EnterPasswordOnLoginComponent from 'ui/components/EnterPasswordOnLogin'; +import AnimatedComponent from 'ui/components/AnimatedComponent'; import Enter2FAComponent from 'ui/components/Enter2FA'; import { authorize, getTwoFactorAuthKeyFromKeychain, hash } from 'libs/keychain'; import { isAndroid } from 'libs/device'; @@ -61,9 +63,11 @@ class Login extends Component { forceUpdate: PropTypes.bool.isRequired, }; - constructor() { - super(); - + constructor(props) { + super(props); + this.state = { + nextLoginRoute: props.loginRoute, + }; this.onComplete2FA = this.onComplete2FA.bind(this); this.onLoginPress = this.onLoginPress.bind(this); this.setDeepUrl = this.setDeepUrl.bind(this); @@ -81,8 +85,23 @@ class Login extends Component { this.props.setUserActivity({ inactive: false }); } + componentWillReceiveProps(newProps) { + if (this.props.loginRoute !== newProps.loginRoute) { + this.animationOutType = this.getAnimation(this.props.loginRoute, newProps.loginRoute, false); + this.animationInType = this.getAnimation(this.props.loginRoute, newProps.loginRoute); + timer.setTimeout( + 'delayRouteChange' + newProps.loginRoute, + () => { + this.setState({ nextLoginRoute: newProps.loginRoute }); + }, + 150, + ); + } + } + componentWillUnmount() { Linking.removeEventListener('url'); + timer.clearTimeout('delayRouteChange' + this.props.loginRoute); } /** @@ -151,6 +170,29 @@ class Login extends Component { } } + /** + * Gets animation according to current and next login route + * + * @param {string} currentLoginRoute + * @param {string} nextLoginRoute + * @param {bool} animationIn + * @returns {object} + */ + getAnimation(currentLoginRoute, nextLoginRoute, animationIn = true) { + const routes = ['login', 'nodeOptions', 'customNode', 'nodeSelection', 'complete2FA']; + if (routes.indexOf(currentLoginRoute) < routes.indexOf(nextLoginRoute)) { + if (animationIn) { + return ['slideInRightSmall', 'fadeIn']; + } + return ['slideOutLeftSmall', 'fadeOut']; + } else if (routes.indexOf(currentLoginRoute) > routes.indexOf(nextLoginRoute)) { + if (animationIn) { + return ['slideInLeftSmall', 'fadeIn']; + } + return ['slideOutRightSmall', 'fadeOut']; + } + } + /** * Parses deep link data and sets send fields * FIXME: Temporarily disabled to improve security @@ -195,11 +237,20 @@ class Login extends Component { } render() { - const { theme, password, loginRoute, isFingerprintEnabled } = this.props; + const { theme, password, isFingerprintEnabled } = this.props; + const { nextLoginRoute } = this.state; const body = theme.body; return ( - - {loginRoute === 'login' && ( + + {nextLoginRoute === 'login' && ( )} - {loginRoute === 'complete2FA' && ( + {nextLoginRoute === 'complete2FA' && ( this.props.setLoginRoute('login')} theme={theme} /> )} - {loginRoute !== 'complete2FA' && loginRoute !== 'login' && } - + {nextLoginRoute !== 'complete2FA' && + nextLoginRoute !== 'login' && } + ); } } diff --git a/src/mobile/src/ui/views/wallet/NodeOptionsOnLogin.js b/src/mobile/src/ui/views/wallet/NodeOptionsOnLogin.js index f28b96c8e9..853b2ef225 100644 --- a/src/mobile/src/ui/views/wallet/NodeOptionsOnLogin.js +++ b/src/mobile/src/ui/views/wallet/NodeOptionsOnLogin.js @@ -52,7 +52,7 @@ class NodeOptionsOnLogin extends Component { theme: PropTypes.object.isRequired, /** @ignore */ setLoginRoute: PropTypes.func.isRequired, - /** @ignore */ + /** Login route */ loginRoute: PropTypes.string.isRequired, }; @@ -121,7 +121,6 @@ class NodeOptionsOnLogin extends Component { const mapStateToProps = (state) => ({ theme: state.settings.theme, - loginRoute: state.ui.loginRoute, }); const mapDispatchToProps = { From d66c6b0850b5ae8068f6cf002ade9948ae0ffc17 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 29 Nov 2018 17:23:23 +0000 Subject: [PATCH 084/141] Mobile: Fix login page animation out --- src/mobile/src/ui/views/wallet/Login.js | 46 +++++++++++++++---------- 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/src/mobile/src/ui/views/wallet/Login.js b/src/mobile/src/ui/views/wallet/Login.js index 8b7935d480..4a28e8979f 100644 --- a/src/mobile/src/ui/views/wallet/Login.js +++ b/src/mobile/src/ui/views/wallet/Login.js @@ -102,6 +102,7 @@ class Login extends Component { componentWillUnmount() { Linking.removeEventListener('url'); timer.clearTimeout('delayRouteChange' + this.props.loginRoute); + timer.clearTimeout('delayNavigation'); } /** @@ -214,26 +215,33 @@ class Login extends Component { */ navigateToLoading() { const { theme: { body } } = this.props; - navigator.setStackRoot('loading', { - animations: { - setStackRoot: { - enable: false, - }, - }, - layout: { - backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, + this.animationOutType = ['fadeOut']; + timer.setTimeout( + 'delayNavigation', + () => { + navigator.setStackRoot('loading', { + animations: { + setStackRoot: { + enable: false, + }, + }, + layout: { + backgroundColor: body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: true, + elevation: 0, + }, + statusBar: { + drawBehind: true, + backgroundColor: body.bg, + }, + }); }, - statusBar: { - drawBehind: true, - backgroundColor: body.bg, - }, - }); + 150, + ); } render() { From 7a8da5cb3fb98c513462b7cd8247350c01a70025 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 29 Nov 2018 17:26:41 +0000 Subject: [PATCH 085/141] Mobile: Reenable SeedVault import on Seed Reentry on iPhoneX --- .../src/ui/views/onboarding/SeedReentry.js | 39 +++++++++---------- 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/src/mobile/src/ui/views/onboarding/SeedReentry.js b/src/mobile/src/ui/views/onboarding/SeedReentry.js index f65afe4fbc..5765c84d22 100644 --- a/src/mobile/src/ui/views/onboarding/SeedReentry.js +++ b/src/mobile/src/ui/views/onboarding/SeedReentry.js @@ -18,7 +18,7 @@ import AnimatedComponent from 'ui/components/AnimatedComponent'; import SeedVaultImport from 'ui/components/SeedVaultImportComponent'; import { Icon } from 'ui/theme/icons'; import Header from 'ui/components/Header'; -import { isAndroid, isIPhone11 } from 'libs/device'; +import { isAndroid } from 'libs/device'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; const styles = StyleSheet.create({ @@ -261,26 +261,23 @@ class SeedReentry extends Component { isSeedInput /> - {/* FIXME: Not clean */} - {!isIPhone11 && ( - - this.showModal('passwordValidation')} - onSeedImport={(seed) => { - this.setState({ seed }); - this.props.toggleModalActivity(); - }} - onRef={(ref) => { - this.SeedVaultImport = ref; - }} - /> - - )} + + this.showModal('passwordValidation')} + onSeedImport={(seed) => { + this.setState({ seed }); + this.props.toggleModalActivity(); + }} + onRef={(ref) => { + this.SeedVaultImport = ref; + }} + /> + Date: Thu, 29 Nov 2018 19:01:16 +0000 Subject: [PATCH 086/141] Mobile: Fix various visual bugs, ensure address checksum is displayed in view addresses, and add infoboxes --- .../src/ui/components/PasswordFields.js | 16 +++++++++--- src/mobile/src/ui/components/PrintModal.js | 16 +++++++++--- .../ui/components/SeedVaultExportComponent.js | 19 ++++++-------- .../ui/views/onboarding/SeedVaultBackup.js | 5 ++-- .../src/ui/views/wallet/AddNewAccount.js | 2 +- src/mobile/src/ui/views/wallet/Settings.js | 2 +- .../src/ui/views/wallet/ViewAddresses.js | 25 +++++++++---------- .../wallet/WalletResetRequirePassword.js | 23 +++++++++++++++-- src/shared/locales/en/translation.json | 3 ++- 9 files changed, 73 insertions(+), 38 deletions(-) diff --git a/src/mobile/src/ui/components/PasswordFields.js b/src/mobile/src/ui/components/PasswordFields.js index 1092b81ae5..2bf7e40ca0 100644 --- a/src/mobile/src/ui/components/PasswordFields.js +++ b/src/mobile/src/ui/components/PasswordFields.js @@ -6,6 +6,7 @@ import PropTypes from 'prop-types'; import { zxcvbn } from 'shared-modules/libs/exports'; import { generateAlert } from 'shared-modules/actions/alerts'; import { passwordReasons } from 'shared-modules/libs/password'; +import i18next from 'shared-modules/libs/i18next.js'; import { height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; import CustomTextInput from './CustomTextInput'; @@ -41,6 +42,15 @@ class PasswordFields extends Component { password: PropTypes.string.isRequired, /** @ignore */ reentry: PropTypes.string.isRequired, + /** First text input label */ + passwordLabel: PropTypes.string, + /** Second text input label */ + reentryLabel: PropTypes.string, + }; + + static defaultProps = { + passwordLabel: i18next.t('global:password'), + reentryLabel: i18next.t('setPassword:retypePassword'), }; componentDidMount() { @@ -81,14 +91,14 @@ class PasswordFields extends Component { } render() { - const { t, theme, password, reentry } = this.props; + const { theme, password, reentry, passwordLabel, reentryLabel } = this.props; const score = zxcvbn(password); const isValid = score.score === 4; return ( this.props.setPassword(password)} containerStyle={{ width: Styling.contentWidth }} autoCapitalize="none" @@ -111,7 +121,7 @@ class PasswordFields extends Component { onRef={(c) => { this.reentry = c; }} - label={t('retypePassword')} + label={reentryLabel} onChangeText={(reentry) => this.props.setReentry(reentry)} containerStyle={{ width: Styling.contentWidth, marginTop: height / 60 }} widget="passwordReentry" diff --git a/src/mobile/src/ui/components/PrintModal.js b/src/mobile/src/ui/components/PrintModal.js index 5c30774521..ee421fffbb 100644 --- a/src/mobile/src/ui/components/PrintModal.js +++ b/src/mobile/src/ui/components/PrintModal.js @@ -2,6 +2,7 @@ import React, { PureComponent } from 'react'; import { withNamespaces } from 'react-i18next'; import PropTypes from 'prop-types'; import { View, Text, StyleSheet } from 'react-native'; +import timer from 'react-native-timer'; import { Styling } from 'ui/theme/general'; import { width, height } from 'libs/dimensions'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -48,6 +49,7 @@ export class RootDetectionModal extends PureComponent { this.state = { publicWifiConfirmed: false, publicPrinterConfirmed: false, + confirmationText: props.t('wifiConfirmation'), }; } @@ -55,8 +57,18 @@ export class RootDetectionModal extends PureComponent { leaveNavigationBreadcrumb('PrintModal'); } + componentWillUnmount() { + timer.clearTimeout('delayTextChange'); + } + onSwipeSuccess() { + const { t } = this.props; if (!this.state.publicWifiConfirmed) { + timer.setTimeout( + 'delayTextChange', + () => this.setState({ confirmationText: t('printerConfirmation') }), + 1000, + ); return this.setState({ publicWifiConfirmed: true }); } this.setState({ publicPrinterConfirmed: true }); @@ -89,9 +101,7 @@ export class RootDetectionModal extends PureComponent { - - {this.state.publicWifiConfirmed ? t('printerConfirmation') : t('wifiConfirmation')} - + {this.state.confirmationText} - + {t('seedVaultExplanation')} - + {t('seedVaultKeyExplanation')} - - { this.passwordFields = ref; }} onAcceptPassword={() => this.navigateToStep('isExporting')} + passwordLabel={t('twoFA:key')} + reentryLabel={t('retypeKey')} password={password} reentry={reentry} setPassword={(password) => this.setState({ password })} diff --git a/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js b/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js index 7c2c1af9b2..7959b870d8 100644 --- a/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js +++ b/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js @@ -28,11 +28,11 @@ const styles = StyleSheet.create({ midContainer: { flex: 3, alignItems: 'center', - justifyContent: 'center', + justifyContent: 'flex-start', paddingBottom: height / 16, }, bottomContainer: { - flex: 1, + flex: 0.5, justifyContent: 'flex-end', }, header: { @@ -111,6 +111,7 @@ class SeedVaultBackup extends Component { + this.props.setSetting('addExistingSeed') }, { name: t('createNewSeed'), icon: 'plusAlt', function: this.addNewSeed }, - { name: 'back', function: () => this.props.setSetting('mainSettings') }, + { name: 'back', function: () => this.props.setSetting('accountManagement') }, ]; return renderSettingsRows(rows, theme); } diff --git a/src/mobile/src/ui/views/wallet/Settings.js b/src/mobile/src/ui/views/wallet/Settings.js index e45787ec0f..c3bbeab7a5 100644 --- a/src/mobile/src/ui/views/wallet/Settings.js +++ b/src/mobile/src/ui/views/wallet/Settings.js @@ -106,7 +106,7 @@ class Settings extends Component { securitySettings: 1, advancedSettings: 1, addNewAccount: 2, - useExistingSeed: 3, + addExistingSeed: 3, modeSelection: 3, themeCustomisation: 3, currencySelection: 3, diff --git a/src/mobile/src/ui/views/wallet/ViewAddresses.js b/src/mobile/src/ui/views/wallet/ViewAddresses.js index b5233fe603..2610d75df3 100644 --- a/src/mobile/src/ui/views/wallet/ViewAddresses.js +++ b/src/mobile/src/ui/views/wallet/ViewAddresses.js @@ -138,23 +138,22 @@ export class ViewAddresses extends Component { const isSpent = spent.local || spent.remote; return ( - + this.copy(address.address)} style={{ alignItems: 'flex-start', flex: 8, justifyContent: 'center' }} > - - - {address.address} - - + + {address.address} + diff --git a/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js b/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js index a75ee5cc87..a58a2a8cc2 100644 --- a/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js +++ b/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js @@ -6,13 +6,14 @@ import PropTypes from 'prop-types'; import { navigator } from 'libs/navigation'; import { resetWallet, setCompletedForcedPasswordUpdate } from 'shared-modules/actions/settings'; import { generateAlert } from 'shared-modules/actions/alerts'; -import { StyleSheet, View, Keyboard, TouchableWithoutFeedback, BackHandler } from 'react-native'; +import { Text, StyleSheet, View, Keyboard, TouchableWithoutFeedback, BackHandler } from 'react-native'; import DualFooterButtons from 'ui/components/DualFooterButtons'; import AnimatedComponent from 'ui/components/AnimatedComponent'; import { persistConfig } from 'libs/store'; import { purgeStoredState } from 'shared-modules/store'; import { clearKeychain, hash } from 'libs/keychain'; import CustomTextInput from 'ui/components/CustomTextInput'; +import InfoBox from 'ui/components/InfoBox'; import { Icon } from 'ui/theme/icons'; import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; @@ -40,6 +41,12 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'flex-end', }, + infoText: { + fontSize: Styling.fontSize3, + fontFamily: 'SourceSansPro-Light', + textAlign: 'center', + backgroundColor: 'transparent', + }, }); /** @@ -186,7 +193,19 @@ class WalletResetRequirePassword extends Component { + + + {t('enterPassword')} + + + + + Date: Thu, 29 Nov 2018 19:48:23 +0000 Subject: [PATCH 087/141] Mobile: Fix LanguageSetup animation --- src/mobile/src/ui/views/onboarding/LanguageSetup.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/mobile/src/ui/views/onboarding/LanguageSetup.js b/src/mobile/src/ui/views/onboarding/LanguageSetup.js index 7092c460b3..d82303cee4 100644 --- a/src/mobile/src/ui/views/onboarding/LanguageSetup.js +++ b/src/mobile/src/ui/views/onboarding/LanguageSetup.js @@ -161,7 +161,12 @@ class LanguageSetup extends Component { - + { From 94cdb01cb23a606debeaed8cb4635e29d5d6e748 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 30 Nov 2018 18:51:23 +0000 Subject: [PATCH 088/141] Mobile: Fix SWriteSeedDown on Android and remove navigation block --- src/mobile/src/ui/components/SeedPicker.js | 6 ++++- .../src/ui/views/onboarding/WriteSeedDown.js | 24 +++++-------------- 2 files changed, 11 insertions(+), 19 deletions(-) diff --git a/src/mobile/src/ui/components/SeedPicker.js b/src/mobile/src/ui/components/SeedPicker.js index 05b97c0227..737a443c5a 100644 --- a/src/mobile/src/ui/components/SeedPicker.js +++ b/src/mobile/src/ui/components/SeedPicker.js @@ -79,11 +79,15 @@ export default class SeedPicker extends Component { /** @ignore */ seed: PropTypes.string.isRequired, /** Callback for value change event */ - onValueChange: PropTypes.func.isRequired, + onValueChange: PropTypes.func, /** @ignore */ theme: PropTypes.object.isRequired, }; + static defaultProps = { + onValueChange: () => {}, + }; + constructor(props, context) { super(props, context); this.state = { diff --git a/src/mobile/src/ui/views/onboarding/WriteSeedDown.js b/src/mobile/src/ui/views/onboarding/WriteSeedDown.js index 0c8c77239d..25673f6607 100644 --- a/src/mobile/src/ui/views/onboarding/WriteSeedDown.js +++ b/src/mobile/src/ui/views/onboarding/WriteSeedDown.js @@ -91,9 +91,6 @@ class WriteSeedDown extends Component { constructor(props) { super(props); - this.state = { - isCopyComplete: false, - }; this.openModal = this.openModal.bind(this); Navigation.events().bindComponent(this); } @@ -121,9 +118,9 @@ class WriteSeedDown extends Component { /** * Navigates back to the previous active screen in navigation stack - * @method onDonePress + * @method onBackPress */ - onDonePress() { + onBackPress() { navigator.pop(this.props.componentId); } @@ -197,7 +194,6 @@ class WriteSeedDown extends Component { render() { const { t, theme, seed, minimised } = this.props; - const { isCopyComplete } = this.state; const textColor = { color: theme.body.color }; return ( @@ -239,16 +235,9 @@ class WriteSeedDown extends Component { animationInType={['slideInRight', 'fadeIn']} animationOutType={['slideOutLeft', 'fadeOut']} delay={200} + style={{ flex: 1 }} > - { - if (index === 8) { - this.setState({ isCopyComplete: true }); - } - }} - /> + this.onPrintPress()} - onRightButtonPress={() => (isCopyComplete ? this.onDonePress() : null)} + onRightButtonPress={() => this.onBackPress()} leftButtonText={t('saveYourSeed:printBlankWallet')} - rightButtonText={isCopyComplete ? t('global:done') : t('scrollToBottom')} - rightButtonStyle={{ wrapper: { opacity: isCopyComplete ? 1 : 0.2 } }} + rightButtonText={t('global:back')} /> From 9dc7181f4c1c74172a3447b6d66f71f028ff0113 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 30 Nov 2018 19:18:47 +0000 Subject: [PATCH 089/141] Mobile: Replace message field returnKeyType --- src/mobile/src/ui/views/wallet/Send.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mobile/src/ui/views/wallet/Send.js b/src/mobile/src/ui/views/wallet/Send.js index ddf090ecee..4fa99abfe8 100644 --- a/src/mobile/src/ui/views/wallet/Send.js +++ b/src/mobile/src/ui/views/wallet/Send.js @@ -813,9 +813,9 @@ export class Send extends Component { onChangeText={(text) => this.props.setSendMessageField(text)} autoCorrect={false} enablesReturnKeyAutomatically - returnKeyType="send" + returnKeyType="done" blurOnSubmit - onSubmitEditing={() => this.onSendPress()} + onSubmitEditing={() => Keyboard.dismiss()} theme={theme} value={message} editable={!isSending} From 38c561782b3e3fc5418e38e7dc98e36c043f0b3a Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Sat, 1 Dec 2018 00:41:02 +0000 Subject: [PATCH 090/141] Mobile: Clean up topbar and modals --- src/mobile/package.json | 2 +- .../src/ui/components/DynamicStatusBar.js | 1 - .../src/ui/components/ModalComponent.js | 5 +- src/mobile/src/ui/components/ModalView.js | 26 +++-- .../ui/components/StatefulDropdownAlert.js | 2 - src/mobile/src/ui/components/TopBar.js | 101 ++++++------------ src/mobile/src/ui/routes/entry.js | 4 +- .../src/ui/views/onboarding/EnterSeed.js | 4 +- .../src/ui/views/onboarding/LanguageSetup.js | 4 +- .../src/ui/views/onboarding/NewSeedSetup.js | 4 +- .../ui/views/onboarding/OnboardingComplete.js | 4 +- .../src/ui/views/onboarding/PrivacyPolicy.js | 4 +- .../views/onboarding/SaveSeedConfirmation.js | 4 +- .../src/ui/views/onboarding/SaveYourSeed.js | 12 +-- .../src/ui/views/onboarding/SeedReentry.js | 4 +- .../src/ui/views/onboarding/SetAccountName.js | 4 +- .../src/ui/views/onboarding/SetPassword.js | 4 +- .../ui/views/onboarding/TermsAndConditions.js | 4 +- .../src/ui/views/onboarding/WalletSetup.js | 4 +- .../src/ui/views/wallet/AddNewAccount.js | 4 +- .../src/ui/views/wallet/AdvancedSettings.js | 4 +- .../ui/views/wallet/ForceChangePassword.js | 4 +- src/mobile/src/ui/views/wallet/Home.js | 2 +- src/mobile/src/ui/views/wallet/Loading.js | 8 +- src/mobile/src/ui/views/wallet/Login.js | 2 +- .../src/ui/views/wallet/MainSettings.js | 4 +- .../src/ui/views/wallet/SecuritySettings.js | 8 +- .../ui/views/wallet/TwoFactorSetupAddKey.js | 4 +- .../views/wallet/TwoFactorSetupEnterToken.js | 4 +- .../src/ui/views/wallet/UseExistingSeed.js | 4 +- .../views/wallet/WalletResetConfirmation.js | 4 +- .../wallet/WalletResetRequirePassword.js | 4 +- src/mobile/yarn.lock | 2 +- 33 files changed, 117 insertions(+), 138 deletions(-) diff --git a/src/mobile/package.json b/src/mobile/package.json index 86490901ff..2930fb5f0c 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -79,7 +79,7 @@ "react-native-keychain": "2.0.0-rc", "react-native-level-fs": "^3.0.0", "react-native-markdown-renderer": "^3.2.1", - "react-native-modal": "^7.0.0", + "react-native-modal": "^7.0.1", "react-native-modal-translucent": "^1.1.3", "react-native-navigation": "https://github.com/rajivshah3/react-native-navigation#2.0.255-0.57", "react-native-optimized-flatlist": "^1.0.4", diff --git a/src/mobile/src/ui/components/DynamicStatusBar.js b/src/mobile/src/ui/components/DynamicStatusBar.js index f23798e374..86569bd579 100644 --- a/src/mobile/src/ui/components/DynamicStatusBar.js +++ b/src/mobile/src/ui/components/DynamicStatusBar.js @@ -89,7 +89,6 @@ class DynamicStatusBar extends Component { ); diff --git a/src/mobile/src/ui/components/ModalComponent.js b/src/mobile/src/ui/components/ModalComponent.js index e29ff6d65b..840f33001e 100644 --- a/src/mobile/src/ui/components/ModalComponent.js +++ b/src/mobile/src/ui/components/ModalComponent.js @@ -24,8 +24,7 @@ import { height, width } from 'libs/dimensions'; const styles = StyleSheet.create({ modal: { - height, - width, + flex: 1, justifyContent: 'center', alignItems: 'center', margin: 0, @@ -114,6 +113,8 @@ export default function withSafeAreaView(WrappedComponent) { backdropColor={body.bg} backdropOpacity={0} style={styles.modal} + deviceHeight={height} + deviceWidth={width} isVisible={isModalActive} onBackButtonPress={() => this.props.toggleModalActivity()} useNativeDriver={isAndroid} diff --git a/src/mobile/src/ui/components/ModalView.js b/src/mobile/src/ui/components/ModalView.js index 1a5bc99f60..7523d0a748 100644 --- a/src/mobile/src/ui/components/ModalView.js +++ b/src/mobile/src/ui/components/ModalView.js @@ -1,10 +1,11 @@ import React, { PureComponent } from 'react'; import PropTypes from 'prop-types'; -import { View, StyleSheet } from 'react-native'; +import { View, StyleSheet, StatusBar } from 'react-native'; import SafeAreaView from 'react-native-safe-area-view'; import { connect } from 'react-redux'; import { Styling } from 'ui/theme/general'; import { width, height } from 'libs/dimensions'; +import { isAndroid } from 'libs/device'; import DualFooterButtons from './DualFooterButtons'; import SingleFooterButton from './SingleFooterButton'; @@ -67,11 +68,26 @@ export class ModalViewComponent extends PureComponent { disableRightButton: false, }; + /** + * Returns modal height depending on whether to display the topbar + * @method getModalHeight + * + * @returns {number} + */ + getModalHeight() { + if (this.props.displayTopBar) { + if (isAndroid) { + return height - Styling.topbarHeight - StatusBar.currentHeight; + } + return height - Styling.topbarHeight; + } + return height; + } + render() { const { theme: { body }, children, - displayTopBar, dualButtons, leftButtonText, rightButtonText, @@ -85,11 +101,7 @@ export class ModalViewComponent extends PureComponent { return ( {children} {(dualButtons && ( diff --git a/src/mobile/src/ui/components/StatefulDropdownAlert.js b/src/mobile/src/ui/components/StatefulDropdownAlert.js index 6b9ccc6200..c81a0e1f0b 100644 --- a/src/mobile/src/ui/components/StatefulDropdownAlert.js +++ b/src/mobile/src/ui/components/StatefulDropdownAlert.js @@ -7,7 +7,6 @@ import { connect } from 'react-redux'; import tinycolor from 'tinycolor2'; import DropdownAlert from 'react-native-dropdownalert/DropdownAlert'; import { width, height } from 'libs/dimensions'; -import { isAndroid } from 'libs/device'; import { Styling, getBackgroundColor } from 'ui/theme/general'; import { rgbToHex } from 'shared-modules/libs/utils'; @@ -194,7 +193,6 @@ class StatefulDropdownAlert extends Component { onClose={dismissAlert} closeInterval={closeAfter} tapToCloseEnabled={this.props.hasConnection && forceUpdate === false} - translucent={isAndroid} /> ); } diff --git a/src/mobile/src/ui/components/TopBar.js b/src/mobile/src/ui/components/TopBar.js index 109ff1640e..ba7ba8c9c4 100644 --- a/src/mobile/src/ui/components/TopBar.js +++ b/src/mobile/src/ui/components/TopBar.js @@ -16,7 +16,6 @@ import { selectAccountInfo, } from 'shared-modules/selectors/accounts'; import { - StatusBar, View, Text, StyleSheet, @@ -31,7 +30,7 @@ import { setPollFor } from 'shared-modules/actions/polling'; import { roundDown } from 'shared-modules/libs/utils'; import { formatValue, formatUnit } from 'shared-modules/libs/iota/utils'; import { Icon } from 'ui/theme/icons'; -import { isAndroid, isIPhoneX } from 'libs/device'; +import { isIPhoneX } from 'libs/device'; import { Styling } from 'ui/theme/general'; const { height, width } = Dimensions.get('window'); @@ -39,7 +38,6 @@ const { height, width } = Dimensions.get('window'); const styles = StyleSheet.create({ container: { width, - elevation: 7, flexDirection: 'row', justifyContent: 'center', alignItems: 'center', @@ -64,7 +62,6 @@ const styles = StyleSheet.create({ childView: { height: height / 14, width, - paddingHorizontal: width / 18, flexDirection: 'row', justifyContent: 'space-between', alignItems: 'center', @@ -72,15 +69,21 @@ const styles = StyleSheet.create({ centralView: { alignItems: 'center', }, - chevronWrapper: { + barWrapper: { + width, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'center', + }, + balanceWrapper: { justifyContent: 'center', alignItems: 'center', - marginRight: width / 18, + width: width - width / 4.5, }, - notificationContainer: { + iconWrapper: { justifyContent: 'center', alignItems: 'center', - marginLeft: width / 18, + width: width / 9, }, disabled: { color: '#a9a9a9', @@ -91,10 +94,6 @@ const styles = StyleSheet.create({ scrollViewContainer: { maxHeight: height, }, - empty: { - height: width / 18, - width: width / 18, - }, }); class TopBar extends Component { @@ -323,54 +322,32 @@ class TopBar extends Component { > {(!isKeyboardActive && !minimised && ( - - {hasNotifications && !isKeyboardActive && mode === 'Advanced' ? ( - this.showModal()} - > - - - - - ) : ( - - - - )} - + + + + {(hasNotifications && + !isKeyboardActive && + mode === 'Advanced' && ( + this.showModal()} + style={[styles.iconWrapper, { flex: 1 }]} + > + + + )) || } + + + {selectedTitle} @@ -390,26 +367,18 @@ class TopBar extends Component { {selectedSubtitle} - - - {hasMultipleSeeds ? ( - + + + + {hasMultipleSeeds && ( - - ) : ( - - )} + )} + )) || } @@ -439,7 +408,7 @@ class TopBar extends Component { diff --git a/src/mobile/src/ui/routes/entry.js b/src/mobile/src/ui/routes/entry.js index cbc6f9addb..9eb0012396 100644 --- a/src/mobile/src/ui/routes/entry.js +++ b/src/mobile/src/ui/routes/entry.js @@ -74,14 +74,14 @@ const renderInitialScreen = (initialScreen, state, store) => { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, background: { color: state.settings.theme.body.bg, }, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: state.settings.theme.body.bg, }, }, diff --git a/src/mobile/src/ui/views/onboarding/EnterSeed.js b/src/mobile/src/ui/views/onboarding/EnterSeed.js index faa60bcbd2..adb0e9d46d 100644 --- a/src/mobile/src/ui/views/onboarding/EnterSeed.js +++ b/src/mobile/src/ui/views/onboarding/EnterSeed.js @@ -149,11 +149,11 @@ class EnterSeed extends React.Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/LanguageSetup.js b/src/mobile/src/ui/views/onboarding/LanguageSetup.js index d82303cee4..709a9bd23f 100644 --- a/src/mobile/src/ui/views/onboarding/LanguageSetup.js +++ b/src/mobile/src/ui/views/onboarding/LanguageSetup.js @@ -99,11 +99,11 @@ class LanguageSetup extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: !acceptedTerms || !acceptedPrivacy ? bar.bg : body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/NewSeedSetup.js b/src/mobile/src/ui/views/onboarding/NewSeedSetup.js index d7aa408b0b..f87dd1bb0b 100644 --- a/src/mobile/src/ui/views/onboarding/NewSeedSetup.js +++ b/src/mobile/src/ui/views/onboarding/NewSeedSetup.js @@ -181,14 +181,14 @@ class NewSeedSetup extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, title: { color: body.color, }, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/OnboardingComplete.js b/src/mobile/src/ui/views/onboarding/OnboardingComplete.js index 1afbad1318..0ca0606919 100644 --- a/src/mobile/src/ui/views/onboarding/OnboardingComplete.js +++ b/src/mobile/src/ui/views/onboarding/OnboardingComplete.js @@ -84,11 +84,11 @@ class OnboardingComplete extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js index 3b2904e18d..34726092f5 100644 --- a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js +++ b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js @@ -104,11 +104,11 @@ class PrivacyPolicy extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js b/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js index a77ad1490a..133a1850cd 100644 --- a/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js +++ b/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js @@ -111,11 +111,11 @@ class SaveSeedConfirmation extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/SaveYourSeed.js b/src/mobile/src/ui/views/onboarding/SaveYourSeed.js index 05b9493d7d..38de30f29b 100644 --- a/src/mobile/src/ui/views/onboarding/SaveYourSeed.js +++ b/src/mobile/src/ui/views/onboarding/SaveYourSeed.js @@ -132,11 +132,11 @@ class SaveYourSeed extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); @@ -171,11 +171,11 @@ class SaveYourSeed extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); @@ -206,11 +206,11 @@ class SaveYourSeed extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/SeedReentry.js b/src/mobile/src/ui/views/onboarding/SeedReentry.js index 5765c84d22..24b56e1b3d 100644 --- a/src/mobile/src/ui/views/onboarding/SeedReentry.js +++ b/src/mobile/src/ui/views/onboarding/SeedReentry.js @@ -132,11 +132,11 @@ class SeedReentry extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/SetAccountName.js b/src/mobile/src/ui/views/onboarding/SetAccountName.js index 0f8c14764b..f2f44d987d 100644 --- a/src/mobile/src/ui/views/onboarding/SetAccountName.js +++ b/src/mobile/src/ui/views/onboarding/SetAccountName.js @@ -188,11 +188,11 @@ export class SetAccountName extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/SetPassword.js b/src/mobile/src/ui/views/onboarding/SetPassword.js index f061b69cd6..312743fc7a 100644 --- a/src/mobile/src/ui/views/onboarding/SetPassword.js +++ b/src/mobile/src/ui/views/onboarding/SetPassword.js @@ -169,11 +169,11 @@ class SetPassword extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/TermsAndConditions.js b/src/mobile/src/ui/views/onboarding/TermsAndConditions.js index 0fea472a91..3b078bbc4a 100644 --- a/src/mobile/src/ui/views/onboarding/TermsAndConditions.js +++ b/src/mobile/src/ui/views/onboarding/TermsAndConditions.js @@ -109,11 +109,11 @@ class TermsAndConditions extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: bar.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/WalletSetup.js b/src/mobile/src/ui/views/onboarding/WalletSetup.js index 43dceaec1c..bdf94046a1 100644 --- a/src/mobile/src/ui/views/onboarding/WalletSetup.js +++ b/src/mobile/src/ui/views/onboarding/WalletSetup.js @@ -118,11 +118,11 @@ class WalletSetup extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/AddNewAccount.js b/src/mobile/src/ui/views/wallet/AddNewAccount.js index 583949d440..bd9aee1701 100644 --- a/src/mobile/src/ui/views/wallet/AddNewAccount.js +++ b/src/mobile/src/ui/views/wallet/AddNewAccount.js @@ -62,11 +62,11 @@ class AddNewAccount extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/AdvancedSettings.js b/src/mobile/src/ui/views/wallet/AdvancedSettings.js index 2f920f21c3..443a95728a 100644 --- a/src/mobile/src/ui/views/wallet/AdvancedSettings.js +++ b/src/mobile/src/ui/views/wallet/AdvancedSettings.js @@ -113,11 +113,11 @@ export class AdvancedSettings extends PureComponent { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/ForceChangePassword.js b/src/mobile/src/ui/views/wallet/ForceChangePassword.js index a087ba6c5b..bd3b1142e3 100644 --- a/src/mobile/src/ui/views/wallet/ForceChangePassword.js +++ b/src/mobile/src/ui/views/wallet/ForceChangePassword.js @@ -179,11 +179,11 @@ class ForceChangePassword extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/Home.js b/src/mobile/src/ui/views/wallet/Home.js index 9f8ba05f04..80dc9e8ae6 100644 --- a/src/mobile/src/ui/views/wallet/Home.js +++ b/src/mobile/src/ui/views/wallet/Home.js @@ -102,7 +102,7 @@ class Home extends Component { this.onLoginPress = this.onLoginPress.bind(this); this.setDeepUrl = this.setDeepUrl.bind(this); this.viewFlex = new Animated.Value(0.7); - this.topBarHeight = isAndroid ? null : new Animated.Value(Styling.topbarHeight); + this.topBarHeight = new Animated.Value(Styling.topbarHeight); this.state = { isKeyboardActive: false, diff --git a/src/mobile/src/ui/views/wallet/Loading.js b/src/mobile/src/ui/views/wallet/Loading.js index ea39d782a9..0cb650088b 100644 --- a/src/mobile/src/ui/views/wallet/Loading.js +++ b/src/mobile/src/ui/views/wallet/Loading.js @@ -297,11 +297,11 @@ class Loading extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); @@ -326,11 +326,11 @@ class Loading extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: bar.alt, }, }); diff --git a/src/mobile/src/ui/views/wallet/Login.js b/src/mobile/src/ui/views/wallet/Login.js index 4a28e8979f..14d0a4ccd4 100644 --- a/src/mobile/src/ui/views/wallet/Login.js +++ b/src/mobile/src/ui/views/wallet/Login.js @@ -235,7 +235,7 @@ class Login extends Component { elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/MainSettings.js b/src/mobile/src/ui/views/wallet/MainSettings.js index d707724b2d..908aa4ab0f 100644 --- a/src/mobile/src/ui/views/wallet/MainSettings.js +++ b/src/mobile/src/ui/views/wallet/MainSettings.js @@ -92,11 +92,11 @@ export class MainSettings extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/SecuritySettings.js b/src/mobile/src/ui/views/wallet/SecuritySettings.js index e4b191d583..f68ecfdcd2 100644 --- a/src/mobile/src/ui/views/wallet/SecuritySettings.js +++ b/src/mobile/src/ui/views/wallet/SecuritySettings.js @@ -54,11 +54,11 @@ class SecuritySettings extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); @@ -85,11 +85,11 @@ class SecuritySettings extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js b/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js index 74cbd2b836..a5fce88fd5 100644 --- a/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js +++ b/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js @@ -141,11 +141,11 @@ export class TwoFactorSetupAddKey extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js b/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js index 349ec43076..3623c57ea9 100644 --- a/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js +++ b/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js @@ -112,11 +112,11 @@ class TwoFactorSetupEnterToken extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: bar.alt, }, }); diff --git a/src/mobile/src/ui/views/wallet/UseExistingSeed.js b/src/mobile/src/ui/views/wallet/UseExistingSeed.js index d8b972513c..e43027eb55 100644 --- a/src/mobile/src/ui/views/wallet/UseExistingSeed.js +++ b/src/mobile/src/ui/views/wallet/UseExistingSeed.js @@ -182,11 +182,11 @@ class UseExistingSeed extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js b/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js index da0c3e99fe..43515da449 100644 --- a/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js +++ b/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js @@ -109,11 +109,11 @@ class WalletResetConfirmation extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js b/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js index a58a2a8cc2..e01cbaace1 100644 --- a/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js +++ b/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js @@ -129,11 +129,11 @@ class WalletResetRequirePassword extends Component { }, topBar: { visible: false, - drawBehind: true, + drawBehind: false, elevation: 0, }, statusBar: { - drawBehind: true, + drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 96697e2005..428b017954 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -7002,7 +7002,7 @@ react-native-modal-translucent@^1.1.3: resolved "https://registry.yarnpkg.com/react-native-modal-translucent/-/react-native-modal-translucent-1.1.6.tgz#faa72d8c1c8b902cc9252476036dadba93aa120c" integrity sha512-eEMarVkOUpkPoK5oIv0lxahI1UxTuTAUycUWpEv4MBH8mkjzuHxSxw4MKXd1C2Yt+tzDv3De0rMFTKnQjw2Fqw== -react-native-modal@^7.0.0: +react-native-modal@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/react-native-modal/-/react-native-modal-7.0.1.tgz#120df1966f5da96e9d89bf384f22b79ab6ca97b1" integrity sha512-I/BZ4ZkVLjD/wApvSjqp/w9+J100czFNGB+SNm3oYHKAfPfm5g1OoB9UQT6DvChmG4TiVX8kiDXTm8FNrbkWpQ== From 84bbdbbf34b085561b261a04ef1bfc88bc582f59 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Sat, 1 Dec 2018 00:57:24 +0000 Subject: [PATCH 091/141] Mobile: Fix delete account crash --- src/mobile/src/ui/components/TopBar.js | 3 ++- src/mobile/src/ui/views/wallet/DeleteAccount.js | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mobile/src/ui/components/TopBar.js b/src/mobile/src/ui/components/TopBar.js index ba7ba8c9c4..ded1a11cce 100644 --- a/src/mobile/src/ui/components/TopBar.js +++ b/src/mobile/src/ui/components/TopBar.js @@ -65,6 +65,7 @@ const styles = StyleSheet.create({ flexDirection: 'row', justifyContent: 'space-between', alignItems: 'center', + paddingHorizontal: width / 27, }, centralView: { alignItems: 'center', @@ -408,7 +409,7 @@ class TopBar extends Component { diff --git a/src/mobile/src/ui/views/wallet/DeleteAccount.js b/src/mobile/src/ui/views/wallet/DeleteAccount.js index 4c1083e1d1..bec1f4dbb7 100644 --- a/src/mobile/src/ui/views/wallet/DeleteAccount.js +++ b/src/mobile/src/ui/views/wallet/DeleteAccount.js @@ -218,7 +218,6 @@ class DeleteAccount extends Component { {t('yourSeedWillBeRemoved')} - ={' '} )} {this.state.pressedContinue && ( From cae7f2fe95e386e83956792e9c265688ec51962e Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Sat, 1 Dec 2018 01:07:07 +0000 Subject: [PATCH 092/141] Mobile: Fix login crash --- src/mobile/src/ui/components/TopBar.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mobile/src/ui/components/TopBar.js b/src/mobile/src/ui/components/TopBar.js index ded1a11cce..efd95716a9 100644 --- a/src/mobile/src/ui/components/TopBar.js +++ b/src/mobile/src/ui/components/TopBar.js @@ -371,14 +371,14 @@ class TopBar extends Component { - {hasMultipleSeeds && ( + {(hasMultipleSeeds && ( - )} + )) || } From a41f6f969a98e671788be6a0d3222ff38f4dd1aa Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Sat, 1 Dec 2018 01:26:52 +0000 Subject: [PATCH 093/141] Mobile: Minor visual fixes --- src/mobile/src/ui/components/TransactionHistoryModal.js | 4 ++-- src/mobile/src/ui/views/onboarding/PrivacyPolicy.js | 1 - src/mobile/src/ui/views/onboarding/TermsAndConditions.js | 1 - 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/mobile/src/ui/components/TransactionHistoryModal.js b/src/mobile/src/ui/components/TransactionHistoryModal.js index efc6c2b330..88b4956e62 100644 --- a/src/mobile/src/ui/components/TransactionHistoryModal.js +++ b/src/mobile/src/ui/components/TransactionHistoryModal.js @@ -2,7 +2,7 @@ import assign from 'lodash/assign'; import React, { PureComponent } from 'react'; import SafeAreaView from 'react-native-safe-area-view'; import PropTypes from 'prop-types'; -import { Clipboard, TouchableOpacity, View, Text, StyleSheet, FlatList, ScrollView } from 'react-native'; +import { Clipboard, TouchableOpacity, View, Text, StyleSheet, FlatList, ScrollView, StatusBar } from 'react-native'; import { formatModalTime, convertUnixTimeToJSDate } from 'shared-modules/libs/date'; import { Styling } from 'ui/theme/general'; import { width, height } from 'libs/dimensions'; @@ -323,7 +323,7 @@ export default class TransactionHistoryModal extends PureComponent { diff --git a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js index 34726092f5..d581a52930 100644 --- a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js +++ b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js @@ -30,7 +30,6 @@ const styles = StyleSheet.create({ fontFamily: 'SourceSansPro-SemiBold', fontSize: Styling.fontSize4, textAlign: 'center', - paddingTop: height / 55, }, titleContainer: { height: height / 8, diff --git a/src/mobile/src/ui/views/onboarding/TermsAndConditions.js b/src/mobile/src/ui/views/onboarding/TermsAndConditions.js index 3b078bbc4a..b22db55b3c 100644 --- a/src/mobile/src/ui/views/onboarding/TermsAndConditions.js +++ b/src/mobile/src/ui/views/onboarding/TermsAndConditions.js @@ -30,7 +30,6 @@ const styles = StyleSheet.create({ fontFamily: 'SourceSansPro-SemiBold', fontSize: Styling.fontSize4, textAlign: 'center', - paddingTop: height / 55, }, titleContainer: { height: height / 8, From e1d0b5da25c5365c715dd6ea662b2bea77bbf832 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 3 Dec 2018 13:19:23 +0000 Subject: [PATCH 094/141] Mobile: Fix modal positioning --- src/mobile/src/ui/components/ModalView.js | 2 +- src/mobile/src/ui/components/TransactionHistoryModal.js | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/mobile/src/ui/components/ModalView.js b/src/mobile/src/ui/components/ModalView.js index 7523d0a748..351555fa8a 100644 --- a/src/mobile/src/ui/components/ModalView.js +++ b/src/mobile/src/ui/components/ModalView.js @@ -77,7 +77,7 @@ export class ModalViewComponent extends PureComponent { getModalHeight() { if (this.props.displayTopBar) { if (isAndroid) { - return height - Styling.topbarHeight - StatusBar.currentHeight; + return height - Styling.topbarHeight + StatusBar.currentHeight; } return height - Styling.topbarHeight; } diff --git a/src/mobile/src/ui/components/TransactionHistoryModal.js b/src/mobile/src/ui/components/TransactionHistoryModal.js index 88b4956e62..526241288c 100644 --- a/src/mobile/src/ui/components/TransactionHistoryModal.js +++ b/src/mobile/src/ui/components/TransactionHistoryModal.js @@ -323,7 +323,12 @@ export default class TransactionHistoryModal extends PureComponent { From f050c68d1d44ab1ec3adaa50f8b2310ce197124b Mon Sep 17 00:00:00 2001 From: Rihards Gravis Date: Tue, 4 Dec 2018 13:01:52 +0200 Subject: [PATCH 095/141] Check for a unique seed for Keychain type seed --- src/desktop/src/libs/SeedStore/Keychain.js | 34 +++++++++++++++++++ .../src/ui/views/onboarding/SeedVerify.js | 13 +++++-- 2 files changed, 44 insertions(+), 3 deletions(-) diff --git a/src/desktop/src/libs/SeedStore/Keychain.js b/src/desktop/src/libs/SeedStore/Keychain.js index 3c44960de5..297239a8f9 100644 --- a/src/desktop/src/libs/SeedStore/Keychain.js +++ b/src/desktop/src/libs/SeedStore/Keychain.js @@ -195,6 +195,40 @@ class Keychain { return decryptedVault; }; + /** + * Unique seed check + * @param {array} Seed - Seed to check + * @returns {boolean} If Seed is unique + */ + isUniqueSeed = async (seed) => { + const vault = await Electron.listKeychain(); + if (!vault) { + throw new Error('Local storage not available'); + } + try { + const accounts = vault.filter((acc) => acc.account !== ACC_MAIN && acc.account !== `${ACC_MAIN}-salt`); + + for (let i = 0; i < accounts.length; i++) { + const account = accounts[i]; + + const vaultSeed = await decrypt(account.password, this.key); + + if ( + vaultSeed.length === seed.length && + seed.every((v, x) => { + return v % 27 === vaultSeed[x] % 27; + }) + ) { + return false; + } + } + + return true; + } catch (err) { + throw err; + } + }; + /** * Destroy the vault */ diff --git a/src/desktop/src/ui/views/onboarding/SeedVerify.js b/src/desktop/src/ui/views/onboarding/SeedVerify.js index 97ff98e09e..3cf610e77a 100644 --- a/src/desktop/src/ui/views/onboarding/SeedVerify.js +++ b/src/desktop/src/ui/views/onboarding/SeedVerify.js @@ -68,14 +68,21 @@ class SeedVerify extends React.PureComponent { if ( isGenerated && (seed.length !== Electron.getOnboardingSeed().length || - !Electron.getOnboardingSeed().every( - (v, i) => v[0] === seed[i][0] && v[1] === seed[i][1] && v[2] === seed[i][2], - )) + !Electron.getOnboardingSeed().every((v, i) => v % 27 === seed[i] % 27)) ) { generateAlert('error', t('seedReentry:incorrectSeed'), t('seedReentry:incorrectSeedExplanation')); return; } + if (wallet.password.length) { + const seedStore = await new SeedStore.keychain(wallet.password); + const isUniqueSeed = await seedStore.isUniqueSeed(seed); + if (!isUniqueSeed) { + generateAlert('error', t('addAdditionalSeed:seedInUse'), t('addAdditionalSeed:seedInUseExplanation')); + return; + } + } + if (seed.length !== MAX_SEED_LENGTH) { generateAlert( 'error', From 437a3c756de37d031364d71950ec80b3884842c0 Mon Sep 17 00:00:00 2001 From: Rihards Gravis Date: Tue, 4 Dec 2018 13:27:04 +0200 Subject: [PATCH 096/141] Update password for all account types --- src/desktop/src/ui/views/settings/Password.js | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/desktop/src/ui/views/settings/Password.js b/src/desktop/src/ui/views/settings/Password.js index 20d6ffa7ad..83f9301f6a 100644 --- a/src/desktop/src/ui/views/settings/Password.js +++ b/src/desktop/src/ui/views/settings/Password.js @@ -22,7 +22,7 @@ import Button from 'ui/components/Button'; class PasswordSettings extends PureComponent { static propTypes = { /** @ignore */ - accountMeta: PropTypes.object.isRequired, + accounts: PropTypes.object.isRequired, /** @ignore */ setPassword: PropTypes.func.isRequired, /** @ignore */ @@ -45,7 +45,7 @@ class PasswordSettings extends PureComponent { event.preventDefault(); const { passwordCurrent, passwordNew, passwordConfirm } = this.state; - const { accountMeta, setPassword, generateAlert, t } = this.props; + const { accounts, setPassword, generateAlert, t } = this.props; if (passwordNew !== passwordConfirm) { generateAlert( @@ -69,8 +69,14 @@ class PasswordSettings extends PureComponent { try { const passwordNewHash = await hash(passwordNew); const passwordCurrentHash = await hash(passwordCurrent); + + const accountTypes = Object.keys(accounts) + .map((accountName) => (accounts[accountName].meta ? accounts[accountName].meta.type : 'keychain')) + .filter((accountType, index, accountTypes) => accountTypes.indexOf(accountType) === index); - await SeedStore[accountMeta.type].updatePassword(passwordCurrentHash, passwordNewHash); + for (let i = 0; i < accountTypes.length; i++) { + await SeedStore[accountTypes[i]].updatePassword(passwordCurrentHash, passwordNewHash); + } setPassword(passwordNewHash); @@ -131,7 +137,7 @@ class PasswordSettings extends PureComponent { } const mapStateToProps = (state) => ({ - accountMeta: getSelectedAccountMeta(state), + accounts: state.accounts.accountInfo, }); const mapDispatchToProps = { From 262e6621cf6edc24c5702989bd2ffac08a986101 Mon Sep 17 00:00:00 2001 From: Rihards Gravis Date: Thu, 6 Dec 2018 00:06:18 +0200 Subject: [PATCH 097/141] Remove unused import --- src/desktop/src/ui/views/settings/Password.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/desktop/src/ui/views/settings/Password.js b/src/desktop/src/ui/views/settings/Password.js index 83f9301f6a..71cea7daf6 100644 --- a/src/desktop/src/ui/views/settings/Password.js +++ b/src/desktop/src/ui/views/settings/Password.js @@ -4,8 +4,6 @@ import { withI18n } from 'react-i18next'; import { connect } from 'react-redux'; import { zxcvbn } from 'libs/exports'; -import { getSelectedAccountMeta } from 'selectors/accounts'; - import { generateAlert } from 'actions/alerts'; import { setPassword } from 'actions/wallet'; From 22b5254eb3b2cbe2f333ab8040e49262da7dc80e Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 6 Dec 2018 16:02:34 +0000 Subject: [PATCH 098/141] Mobile: Refactor progress bar. Fix it get stuck --- src/mobile/src/ui/components/ProgressBar.js | 162 ++++++++++---------- src/mobile/src/ui/views/wallet/Send.js | 19 +-- src/shared/actions/transfers.js | 2 +- src/shared/locales/en/translation.json | 3 +- 4 files changed, 88 insertions(+), 98 deletions(-) diff --git a/src/mobile/src/ui/components/ProgressBar.js b/src/mobile/src/ui/components/ProgressBar.js index 255b31fd6f..074f9f3d94 100644 --- a/src/mobile/src/ui/components/ProgressBar.js +++ b/src/mobile/src/ui/components/ProgressBar.js @@ -30,8 +30,10 @@ const styles = StyleSheet.create({ class ProgressBar extends Component { static propTypes = { - /** Progress percentage number */ - progress: PropTypes.number.isRequired, + /** Index of active progress step */ + activeStepIndex: PropTypes.number.isRequired, + /** Total number of progress steps */ + totalSteps: PropTypes.number, /** Filled bar color */ filledColor: PropTypes.string, /** Unfilled bar color */ @@ -44,8 +46,6 @@ class ProgressBar extends Component { textColor: PropTypes.string, /** Progress bar text */ progressText: PropTypes.oneOfType([PropTypes.string, PropTypes.array]), - /** Total number of progress steps */ - stepSize: PropTypes.number, /** Slider color before successful swipe */ preSwipeColor: PropTypes.string, /** Slider color after successful swipe */ @@ -65,12 +65,11 @@ class ProgressBar extends Component { constructor(props) { super(props); - const isAlreadyInProgress = props.progress > -1 && props.progress < 1; + const isAlreadyInProgress = props.totalSteps > 0 && props.activeStepIndex !== props.totalSteps; const sliderEndPosition = props.channelWidth - props.channelHeight; + const progress = isAlreadyInProgress ? props.activeStepIndex / props.totalSteps : -1; this.state = { - progressPosition: new Animated.Value(isAlreadyInProgress ? props.progress : 0), - progressStep: props.progress, - progressIncrement: isAlreadyInProgress ? props.progress : 0, + animatedProgressValue: new Animated.Value(isAlreadyInProgress ? progress : 0), sliderPosition: new Animated.Value(isAlreadyInProgress ? sliderEndPosition : props.channelHeight * 0.1), thresholdDistance: sliderEndPosition, sliderColor: isAlreadyInProgress ? props.postSwipeColor : props.preSwipeColor, @@ -81,10 +80,16 @@ class ProgressBar extends Component { sliderAnimation: sliderLoadingAnimation, sliderSize: new Animated.Value(isAlreadyInProgress ? props.channelHeight : props.channelHeight * 0.8), }; + // Global progress + this.globalProgress = progress; + // Local progress (arbitrarily increments) + this.localProgressWithIncrement = progress; + // Total steps for most recent progress instance + this.latestTotalSteps = props.totalSteps; } componentWillMount() { - if (this.props.progress > -1 && this.props.progress < 1) { + if (this.props.totalSteps > 0 && this.props.activeStepIndex !== this.props.totalSteps) { this.animateProgressBar(); } this._panResponder = PanResponder.create({ @@ -113,10 +118,10 @@ class ProgressBar extends Component { return; } const releaseValue = gestureState.dx; - if (releaseValue >= this.state.thresholdDistance && this.props.progress === -1) { + if (releaseValue >= this.state.thresholdDistance && this.props.activeStepIndex < 0) { this.onCompleteSwipe(); } else { - this.onIncompleteSwipe(); + this.resetSlider(); } }, onPanResponderTerminate: () => {}, @@ -125,34 +130,38 @@ class ProgressBar extends Component { } componentDidMount() { - if (this.props.progress > -1 && this.props.progress < 1 && this.sliderAnimation) { + if (this.props.totalSteps > 0 && this.props.activeStepIndex !== this.props.totalSteps) { this.sliderAnimation.play(); } } componentWillReceiveProps(newProps) { - if (this.props.progress !== newProps.progress) { + if (this.props.activeStepIndex !== newProps.activeStepIndex) { // On first progress change - if (this.props.progress < 0) { + if (this.props.activeStepIndex < 0) { this.setState({ inProgress: true }); this.animateProgressBar(); this.sliderAnimation.play(); } // On every progress change - this.setState({ progressStep: newProps.progress, progressIncrement: newProps.progress }); - this.onProgressStepChange(newProps.progressText); + this.latestTotalSteps = newProps.totalSteps > 0 ? newProps.totalSteps : this.latestTotalSteps; + const progress = newProps.activeStepIndex / this.latestTotalSteps; + // Updates local and global progress, and ensures totalSteps > 0 + this.globalProgress = progress; + this.localProgressWithIncrement = progress; + this.onActiveStepChange(newProps.progressText); // On last progress change - if (this.props.stepSize > 0 && newProps.progress === 1 - this.props.stepSize) { + if (this.props.totalSteps > 0 && newProps.activeStepIndex === this.props.totalSteps) { this.onProgressComplete(); } } - if (this.props.interupt !== newProps.interupt) { + if (this.props.interupt !== newProps.interupt && this.props.activeStepIndex !== this.props.totalSteps) { this.onInterupt(); } } componentWillUnmount() { - timer.clearTimeout('delayProgressTextChange'); + timer.clearTimeout('delayProgressTextChange' + this.props.activeStepIndex); timer.clearTimeout('delayProgressTextFadeOut'); timer.clearTimeout('delaySliderReset'); timer.clearTimeout('delaySuccessAnimation'); @@ -184,45 +193,25 @@ class ProgressBar extends Component { 'delaySliderReset', () => { this.sliderAnimation.reset(); + this.globalProgress = -1; this.setState({ - progressStep: -1, + inProgress: false, sliderAnimation: sliderLoadingAnimation, shouldLoopSliderAnimation: true, }); - this.state.progressPosition.setValue(0); + this.state.animatedProgressValue.setValue(0); this.resetSlider(); }, - 4000, + 5000, ); } - onIncompleteSwipe() { - const duration = 500; - Animated.parallel([ - Animated.spring(this.state.sliderPosition, { - toValue: this.props.channelHeight * 0.1, - duration, - }), - Animated.timing(this.state.sliderOpacity, { - toValue: 1, - duration, - }), - Animated.timing(this.state.textOpacity, { - toValue: 1, - duration, - }), - ]).start(); - Animated.timing(this.state.sliderSize, { - toValue: this.props.channelHeight * 0.8, - duration: 100, - }).start(); - } - onInterupt() { this.sliderAnimation.reset(); - this.setState({ progressStep: -1, inProgress: false }); - Animated.timing(this.state.progressPosition).stop(); - this.state.progressPosition.setValue(0); + this.globalProgress = -1; + this.setState({ inProgress: false }); + Animated.timing(this.state.animatedProgressValue).stop(); + this.state.animatedProgressValue.setValue(0); Animated.timing(this.state.sliderPosition).stop(); this.resetSlider(); } @@ -236,32 +225,20 @@ class ProgressBar extends Component { this.props.onSwipeSuccess(); } - onProgressStepChange(progressText) { + onActiveStepChange(progressText) { // On first step change - if (this.state.progressStep < 0) { + if (this.globalProgress === 0) { this.setState({ progressText }); return Animated.timing(this.state.textOpacity, { toValue: 1, duration: 100, }).start(); } - // On last step change - if (this.state.progressStep === 1) { - return timer.setTimeout( - 'delayProgressTextFadeOut', - () => { - Animated.timing(this.state.textOpacity, { - toValue: 0, - duration: 100, - }).start(); - }, - 5000, - ); - } - // On any other step change - if (this.state.progressStep >= 0) { - return timer.setTimeout( - 'delayProgressTextChange', + + // On all but first step changes + if (this.globalProgress >= 0) { + timer.setTimeout( + 'delayProgressTextChange' + this.props.activeStepIndex, () => { Animated.timing(this.state.textOpacity, { toValue: 0, @@ -277,21 +254,36 @@ class ProgressBar extends Component { 300, ); } + + // On last step change + if (this.globalProgress === 1) { + return timer.setTimeout( + 'delayProgressTextFadeOut', + () => { + Animated.timing(this.state.textOpacity, { + toValue: 0, + duration: 100, + }).start(); + }, + 5000, + ); + } } animateProgressBar() { - const nextStep = this.state.progressStep + this.props.stepSize; - const increment = this.props.stepSize / 100; - const updatedIncrement = this.state.progressIncrement + increment; - if (this.state.progressIncrement < nextStep - this.props.stepSize / 5) { - this.setState({ progressIncrement: updatedIncrement }); + const stepSize = 1 / this.latestTotalSteps; + const nextStep = this.globalProgress + stepSize; + const increment = stepSize / 100; + const updatedIncrement = this.localProgressWithIncrement + increment; + if (this.localProgressWithIncrement < nextStep - stepSize / 5) { + this.localProgressWithIncrement = updatedIncrement; } - Animated.timing(this.state.progressPosition, { - toValue: Math.max(this.state.progressStep, this.state.progressIncrement), + Animated.timing(this.state.animatedProgressValue, { + toValue: Math.max(this.globalProgress, this.localProgressWithIncrement), useNativeDriver: true, easing: Easing.ease, }).start(() => { - if (this.state.progressIncrement <= 1 && this.state.inProgress) { + if (this.localProgressWithIncrement <= 1 && this.state.inProgress) { this.animateProgressBar(); } }); @@ -304,23 +296,27 @@ class ProgressBar extends Component { Animated.spring(this.state.sliderPosition, { toValue: this.props.channelHeight * 0.1, duration, - easing: Easing.elastic(), }), Animated.timing(this.state.sliderOpacity, { toValue: 1, duration, - easing: Easing.ease, }), Animated.timing(this.state.textOpacity, { toValue: 1, duration, - easing: Easing.ease, }), - ]).start(); - Animated.timing(this.state.sliderSize, { - toValue: this.props.channelHeight * 0.8, - duration: 100, - }).start(); + Animated.timing(this.state.sliderSize, { + toValue: this.props.channelHeight * 0.8, + duration: 100, + }), + ]).start(() => { + this.setState({ + sliderPosition: new Animated.Value(this.props.channelHeight * 0.1), + sliderOpacity: new Animated.Value(1), + textOpacity: new Animated.Value(1), + sliderSize: new Animated.Value(this.props.channelHeight * 0.8), + }); + }); } render() { @@ -340,7 +336,7 @@ class ProgressBar extends Component { width: channelWidth, transform: [ { - translateX: this.state.progressPosition.interpolate({ + translateX: this.state.animatedProgressValue.interpolate({ inputRange: [0, 1], outputRange: [-channelWidth, 0], }), diff --git a/src/mobile/src/ui/views/wallet/Send.js b/src/mobile/src/ui/views/wallet/Send.js index 4fa99abfe8..ee5d7ff1c6 100644 --- a/src/mobile/src/ui/views/wallet/Send.js +++ b/src/mobile/src/ui/views/wallet/Send.js @@ -387,18 +387,11 @@ export class Send extends Component { return 1; } - getProgress() { - if (size(this.props.activeSteps) > 0) { - return this.props.activeStepIndex / size(this.props.activeSteps); - } - return -1; - } - getProgressBarText() { - const { activeStepIndex, activeSteps } = this.props; + const { t, activeStepIndex, activeSteps } = this.props; const totalSteps = size(activeSteps); if (activeStepIndex === totalSteps) { - return 'Transfer complete'; + return t('progressSteps:transferComplete'); } return activeSteps[activeStepIndex] ? activeSteps[activeStepIndex] : ''; } @@ -472,9 +465,9 @@ export class Send extends Component { const { isKeyboardActive } = this.props; if (isKeyboardActive) { this.blurTextFields(); - timer.setTimeout('modalShow', () => this.showModal('transferConfirmation'), 500); + timer.setTimeout('modalShow', () => this.showModal('transferConfirmation'), 2800); } else { - this.showModal('transferConfirmation'); + timer.setTimeout('modalShow', () => this.showModal('transferConfirmation'), 2000); } } @@ -834,8 +827,8 @@ export class Send extends Component { }} > 0 ? 1 / size(this.props.activeSteps) : 0} + activeStepIndex={this.props.activeStepIndex} + totalSteps={size(this.props.activeSteps)} filledColor={input.bg} unfilledColor={dark.color} textColor={body.color} diff --git a/src/shared/actions/transfers.js b/src/shared/actions/transfers.js index 93ee3f3f1e..b910441ea0 100644 --- a/src/shared/actions/transfers.js +++ b/src/shared/actions/transfers.js @@ -696,7 +696,7 @@ export const makeTransaction = (seedStore, receiveAddress, value, message, accou .then(({ newState }) => { dispatch(updateAccountInfoAfterSpending(newState)); - // Progressbar => (Progress summary) + // Progressbar => (Progress complete) dispatch(setNextStepAsActive()); dispatch(generateTransactionSuccessAlert(isZeroValue)); diff --git a/src/shared/locales/en/translation.json b/src/shared/locales/en/translation.json index 8bff63b9af..7af2ed6af0 100644 --- a/src/shared/locales/en/translation.json +++ b/src/shared/locales/en/translation.json @@ -705,7 +705,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", From 8408d97963fe06526ddd87cc65206651db4c8f63 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 6 Dec 2018 16:29:00 +0000 Subject: [PATCH 099/141] Mobile: Fix progresbar icon positioning --- src/mobile/src/ui/components/TopBar.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/mobile/src/ui/components/TopBar.js b/src/mobile/src/ui/components/TopBar.js index efd95716a9..76fef9855d 100644 --- a/src/mobile/src/ui/components/TopBar.js +++ b/src/mobile/src/ui/components/TopBar.js @@ -331,7 +331,7 @@ class TopBar extends Component { mode === 'Advanced' && ( this.showModal()} - style={[styles.iconWrapper, { flex: 1 }]} + style={[styles.iconWrapper, { flex: 1, alignItems: 'flex-end' }]} > @@ -370,7 +370,9 @@ class TopBar extends Component { - + {(hasMultipleSeeds && ( Date: Thu, 6 Dec 2018 21:59:22 +0000 Subject: [PATCH 100/141] Mobile: Add Keyboard monitor HOC --- .../src/ui/components/KeyboardMonitor.js | 84 +++++++++++++ .../src/ui/components/ModalComponent.js | 28 ++++- src/mobile/src/ui/components/TabContent.js | 4 +- src/mobile/src/ui/components/TopBar.js | 3 +- src/mobile/src/ui/routes/navigation.js | 3 +- src/mobile/src/ui/views/wallet/Home.js | 111 +++++++----------- src/mobile/src/ui/views/wallet/Send.js | 13 +- src/shared/__tests__/reducers/ui.spec.js | 1 + src/shared/actions/ui.js | 16 +++ src/shared/reducers/ui.js | 6 + 10 files changed, 185 insertions(+), 84 deletions(-) create mode 100644 src/mobile/src/ui/components/KeyboardMonitor.js diff --git a/src/mobile/src/ui/components/KeyboardMonitor.js b/src/mobile/src/ui/components/KeyboardMonitor.js new file mode 100644 index 0000000000..83baf2d194 --- /dev/null +++ b/src/mobile/src/ui/components/KeyboardMonitor.js @@ -0,0 +1,84 @@ +import React, { Component } from 'react'; +import { Keyboard } from 'react-native'; +import PropTypes from 'prop-types'; +import { connect } from 'react-redux'; +import timer from 'react-native-timer'; +import { setKeyboardActivity } from 'shared-modules/actions/ui'; +import { isAndroid } from 'libs/device'; + +const mapDispatchToProps = { + setKeyboardActivity, +}; + +const mapStateToProps = (state) => ({ + isKeyboardActive: state.ui.isKeyboardActive, + inactive: state.ui.inactive, + minimised: state.ui.minimised, +}); + +/** + * Handles back button events on Android by wrapping a component + * @param {Component} C Component to be wrapped + * @return {Component} A wrapped component + */ +export default function withKeyboardMonitor(C) { + class EnhancedComponent extends Component { + static propTypes = { + /** @ignore */ + setKeyboardActivity: PropTypes.func.isRequired, + /** @ignore */ + isKeyboardActive: PropTypes.bool.isRequired, + /** @ignore */ + inactive: PropTypes.bool.isRequired, + /** @ignore */ + minimised: PropTypes.bool.isRequired, + }; + + componentWillMount() { + if (!isAndroid) { + this.keyboardWillShowSub = Keyboard.addListener('keyboardWillShow', this.keyboardWillShow); + this.keyboardWillHideSub = Keyboard.addListener('keyboardWillHide', this.keyboardWillHide); + } + if (isAndroid) { + this.keyboardWillShowSub = Keyboard.addListener('keyboardDidShow', this.keyboardDidShow); + this.keyboardWillHideSub = Keyboard.addListener('keyboardDidHide', this.keyboardDidHide); + } + } + + componentWillUnmount() { + this.keyboardWillShowSub.remove(); + this.keyboardWillHideSub.remove(); + timer.clearTimeout('iOSKeyboardTimeout'); + } + + keyboardWillShow = () => { + const { inactive, minimised } = this.props; + if (inactive || minimised) { + return; + } + this.props.setKeyboardActivity(true); + }; + + keyboardWillHide = (event) => { + timer.setTimeout('iOSKeyboardTimeout', () => this.props.setKeyboardActivity(false), event.duration); + }; + + keyboardDidShow = () => { + const { inactive, minimised } = this.props; + if (inactive || minimised) { + return; + } + this.props.setKeyboardActivity(true); + }; + + keyboardDidHide = () => { + this.props.setKeyboardActivity(false); + }; + + render() { + return ; + } + } + + return connect(mapStateToProps, mapDispatchToProps)(EnhancedComponent); +} diff --git a/src/mobile/src/ui/components/ModalComponent.js b/src/mobile/src/ui/components/ModalComponent.js index 840f33001e..5cb2415ff5 100644 --- a/src/mobile/src/ui/components/ModalComponent.js +++ b/src/mobile/src/ui/components/ModalComponent.js @@ -1,9 +1,10 @@ import React, { PureComponent } from 'react'; import PropTypes from 'prop-types'; -import { View, StyleSheet, Easing } from 'react-native'; +import { View, StyleSheet, Easing, Keyboard } from 'react-native'; import Modal from 'react-native-modal'; import { connect } from 'react-redux'; import { toggleModalActivity } from 'shared-modules/actions/ui'; +import timer from 'react-native-timer'; import StatefulDropdownAlert from 'ui/components/StatefulDropdownAlert'; import RootDetection from 'ui/components/RootDetectionModal'; import TransferConfirmation from 'ui/components/TransferConfirmationModal'; @@ -94,8 +95,30 @@ export default function withSafeAreaView(WrappedComponent) { theme: PropTypes.object.isRequired, /** @ignore */ toggleModalActivity: PropTypes.func.isRequired, + /** @ignore */ + isKeyboardActive: PropTypes.bool.isRequired, }; + constructor(props) { + super(props); + this.state = { + isModalActive: props.isModalActive, + }; + } + + componentWillReceiveProps(newProps) { + if (!this.props.isModalActive && newProps.isModalActive) { + if (this.props.isKeyboardActive && !isAndroid) { + Keyboard.dismiss(); + return timer.setTimeout('test', () => this.setState({ isModalActive: true }), 2800); + } + this.setState({ isModalActive: true }); + } + if (this.props.isModalActive && !newProps.isModalActive) { + this.setState({ isModalActive: false }); + } + } + render() { const { modalProps, isModalActive, modalContent, theme: { body } } = this.props; const ModalContent = MODAL_CONTENT[modalContent]; @@ -115,7 +138,7 @@ export default function withSafeAreaView(WrappedComponent) { style={styles.modal} deviceHeight={height} deviceWidth={width} - isVisible={isModalActive} + isVisible={this.state.isModalActive} onBackButtonPress={() => this.props.toggleModalActivity()} useNativeDriver={isAndroid} hideModalContentWhileAnimating @@ -133,6 +156,7 @@ export default function withSafeAreaView(WrappedComponent) { isModalActive: state.ui.isModalActive, modalContent: state.ui.modalContent, theme: state.settings.theme, + isKeyboardActive: state.ui.isKeyboardActive, }); const mapDispatchToProps = { diff --git a/src/mobile/src/ui/components/TabContent.js b/src/mobile/src/ui/components/TabContent.js index 704b4f0c9e..581730da21 100644 --- a/src/mobile/src/ui/components/TabContent.js +++ b/src/mobile/src/ui/components/TabContent.js @@ -96,6 +96,7 @@ class TabContent extends PureComponent { const mapStateToProps = (state) => ({ currentRoute: state.home.childRoute, inactive: state.ui.inactive, + isKeyboardActive: state.ui.isKeyboardActive, }); TabContent.propTypes = { @@ -107,7 +108,8 @@ TabContent.propTypes = { onTabSwitch: PropTypes.func.isRequired, /** Closes topbar */ handleCloseTopBar: PropTypes.func.isRequired, - /** Determines whether keyboard is open on iOS */ + /** @ignore */ + isKeyboardActive: PropTypes.bool.isRequired, /** @ignore */ inactive: PropTypes.bool.isRequired, diff --git a/src/mobile/src/ui/components/TopBar.js b/src/mobile/src/ui/components/TopBar.js index 76fef9855d..cef3a4b737 100644 --- a/src/mobile/src/ui/components/TopBar.js +++ b/src/mobile/src/ui/components/TopBar.js @@ -135,7 +135,7 @@ class TopBar extends Component { clearLog: PropTypes.func.isRequired, /** Top bar height */ topBarHeight: PropTypes.oneOfType([PropTypes.number, PropTypes.object]), - /** Determines if on screen keyboard is active */ + /** @ignore */ isKeyboardActive: PropTypes.bool.isRequired, /** @ignore */ isTransitioning: PropTypes.bool.isRequired, @@ -523,6 +523,7 @@ const mapStateToProps = (state) => ({ notificationLog: state.alerts.notificationLog, isFetchingLatestAccountInfo: state.ui.isFetchingAccountInfo, currentRoute: state.home.childRoute, + isKeyboardActive: state.ui.isKeyboardActive, }); const mapDispatchToProps = { diff --git a/src/mobile/src/ui/routes/navigation.js b/src/mobile/src/ui/routes/navigation.js index e8992f0075..a409efb3e6 100644 --- a/src/mobile/src/ui/routes/navigation.js +++ b/src/mobile/src/ui/routes/navigation.js @@ -4,6 +4,7 @@ import withDropdownAlert from 'ui/components/WithDropdownAlert'; import withModal from 'ui/components/ModalComponent'; import withStatusBar from 'ui/components/WithStatusBar'; import withBackPress from 'ui/components/BackPress'; +import withKeyboardMonitor from 'ui/components/KeyboardMonitor'; import Home from 'ui/views/wallet/Home'; import Loading from 'ui/views/wallet/Loading'; import NewSeedSetup from 'ui/views/onboarding/NewSeedSetup'; @@ -31,7 +32,7 @@ import SeedVaultBackupComponent from 'ui/views/onboarding/SeedVaultBackup'; import { isIPhoneX, isAndroid } from 'libs/device'; function applyHOCs(screen) { - const withHOCs = (c) => withDropdownAlert(withStatusBar(withModal(c))); + const withHOCs = (c) => withKeyboardMonitor(withDropdownAlert(withStatusBar(withModal(c)))); if (isIPhoneX) { return withHOCs(withSafeAreaView(screen)); } diff --git a/src/mobile/src/ui/views/wallet/Home.js b/src/mobile/src/ui/views/wallet/Home.js index 80dc9e8ae6..b6e137d2a6 100644 --- a/src/mobile/src/ui/views/wallet/Home.js +++ b/src/mobile/src/ui/views/wallet/Home.js @@ -2,7 +2,7 @@ import isEqual from 'lodash/isEqual'; import React, { Component } from 'react'; import { withNamespaces } from 'react-i18next'; import PropTypes from 'prop-types'; -import { Linking, StyleSheet, View, KeyboardAvoidingView, Animated, Keyboard } from 'react-native'; +import { Linking, StyleSheet, View, KeyboardAvoidingView, Animated } from 'react-native'; import { shouldTransitionForSnapshot, hasDisplayedSnapshotTransitionGuide, @@ -95,6 +95,8 @@ class Home extends Component { selectedAccountName: PropTypes.string.isRequired, /** @ignore */ currentRoute: PropTypes.string.isRequired, + /** @ignore */ + isKeyboardActive: PropTypes.bool.isRequired, }; constructor(props) { @@ -103,21 +105,9 @@ class Home extends Component { this.setDeepUrl = this.setDeepUrl.bind(this); this.viewFlex = new Animated.Value(0.7); this.topBarHeight = new Animated.Value(Styling.topbarHeight); - - this.state = { - isKeyboardActive: false, - }; } componentWillMount() { - if (!isAndroid) { - this.keyboardWillShowSub = Keyboard.addListener('keyboardWillShow', this.keyboardWillShow); - this.keyboardWillHideSub = Keyboard.addListener('keyboardWillHide', this.keyboardWillHide); - } - if (isAndroid) { - this.keyboardWillShowSub = Keyboard.addListener('keyboardDidShow', this.keyboardDidShow); - this.keyboardWillHideSub = Keyboard.addListener('keyboardDidHide', this.keyboardDidHide); - } this.deepLinkSub = Linking.addEventListener('url', this.setDeepUrl); } @@ -126,6 +116,44 @@ class Home extends Component { this.displayUpdates(); } + componentWillReceiveProps(newProps) { + if (!this.props.isKeyboardActive && newProps.isKeyboardActive) { + this.handleCloseTopBar(); + if (isAndroid) { + this.topBarHeight = 20; + this.viewFlex = 0.2; + return; + } + Animated.parallel([ + Animated.timing(this.viewFlex, { + duration: 250, + toValue: 0.2, + }), + Animated.timing(this.topBarHeight, { + duration: 250, + toValue: isIPhoneX ? 0 : 20, + }), + ]).start(); + } + if (this.props.isKeyboardActive && !newProps.isKeyboardActive) { + if (isAndroid) { + this.topBarHeight = Styling.topbarHeight; + this.viewFlex = 0.7; + return; + } + Animated.parallel([ + Animated.timing(this.viewFlex, { + duration: 250, + toValue: 0.7, + }), + Animated.timing(this.topBarHeight, { + duration: 250, + toValue: Styling.topbarHeight, + }), + ]).start(); + } + } + shouldComponentUpdate(newProps) { const { isSyncing, isSendingTransfer, isTransitioning } = this.props; @@ -146,8 +174,6 @@ class Home extends Component { componentWillUnmount() { const { isModalActive } = this.props; - this.keyboardWillShowSub.remove(); - this.keyboardWillHideSub.remove(); Linking.removeEventListener('url'); if (isModalActive) { this.props.toggleModalActivity(); @@ -245,52 +271,6 @@ class Home extends Component { } }; - keyboardWillShow = (event) => { - const { inactive, minimised } = this.props; - if (inactive || minimised) { - return; - } - this.handleCloseTopBar(); - this.setState({ isKeyboardActive: true }); - Animated.timing(this.viewFlex, { - duration: event.duration, - toValue: 0.2, - }).start(); - Animated.timing(this.topBarHeight, { - duration: event.duration, - toValue: isIPhoneX ? 0 : 20, - }).start(); - }; - - keyboardWillHide = (event) => { - timer.setTimeout('iOSKeyboardTimeout', () => this.setState({ isKeyboardActive: false }), event.duration); - Animated.timing(this.viewFlex, { - duration: event.duration, - toValue: 0.7, - }).start(); - Animated.timing(this.topBarHeight, { - duration: event.duration, - toValue: Styling.topbarHeight, - }).start(); - }; - - keyboardDidShow = () => { - const { inactive, minimised } = this.props; - if (inactive || minimised) { - return; - } - this.handleCloseTopBar(); - this.topBarHeight = 20; - this.viewFlex = 0.2; - this.setState({ isKeyboardActive: true }); - }; - - keyboardDidHide = () => { - this.topBarHeight = Styling.topbarHeight; - this.viewFlex = 0.7; - this.setState({ isKeyboardActive: false }); - }; - /** * Mark the task of displaying snapshot transition modal as done */ @@ -324,7 +304,6 @@ class Home extends Component { render() { const { t, inactive, minimised, isFingerprintEnabled, theme: { body, negative, positive }, theme } = this.props; - const { isKeyboardActive } = this.state; const textColor = { color: body.color }; return ( @@ -346,7 +325,6 @@ class Home extends Component { this.onTabSwitch(name)} handleCloseTopBar={() => this.handleCloseTopBar()} - isKeyboardActive={isKeyboardActive} /> @@ -380,11 +358,7 @@ class Home extends Component { /> - + )) || ( @@ -427,6 +401,7 @@ const mapStateToProps = (state) => ({ shouldTransitionForSnapshot: shouldTransitionForSnapshot(state), hasDisplayedSnapshotTransitionGuide: hasDisplayedSnapshotTransitionGuide(state), selectedAccountName: getSelectedAccountName(state), + isKeyboardActive: state.ui.isKeyboardActive, }); const mapDispatchToProps = { diff --git a/src/mobile/src/ui/views/wallet/Send.js b/src/mobile/src/ui/views/wallet/Send.js index ee5d7ff1c6..1779f88084 100644 --- a/src/mobile/src/ui/views/wallet/Send.js +++ b/src/mobile/src/ui/views/wallet/Send.js @@ -312,7 +312,7 @@ export class Send extends Component { this.interuptSendAnimation(); return this.props.generateAlert('error', t('invalidMessage'), t('invalidMessageExplanation')); } - this.openTransferConfirmationModal(); + this.showModal('transferConfirmation'); } onQRRead(data) { @@ -461,16 +461,6 @@ export class Send extends Component { Keyboard.dismiss(); } - openTransferConfirmationModal() { - const { isKeyboardActive } = this.props; - if (isKeyboardActive) { - this.blurTextFields(); - timer.setTimeout('modalShow', () => this.showModal('transferConfirmation'), 2800); - } else { - timer.setTimeout('modalShow', () => this.showModal('transferConfirmation'), 2000); - } - } - /** * Shows specific modal * @@ -894,6 +884,7 @@ const mapStateToProps = (state) => ({ password: state.wallet.password, deepLinkActive: state.wallet.deepLinkActive, isFingerprintEnabled: state.settings.isFingerprintEnabled, + isKeyboardActive: state.ui.isKeyboardActive, }); const mapDispatchToProps = { diff --git a/src/shared/__tests__/reducers/ui.spec.js b/src/shared/__tests__/reducers/ui.spec.js index df3d3dd44e..24c9487495 100644 --- a/src/shared/__tests__/reducers/ui.spec.js +++ b/src/shared/__tests__/reducers/ui.spec.js @@ -43,6 +43,7 @@ describe('Reducer: ui', () => { modalProps: {}, currentRoute: 'login', hadErrorGeneratingNewAddress: false, + isKeyboardActive: false, }; expect(reducer(undefined, {})).to.eql(initialState); diff --git a/src/shared/actions/ui.js b/src/shared/actions/ui.js index 3d4f223c7d..0c6956e956 100644 --- a/src/shared/actions/ui.js +++ b/src/shared/actions/ui.js @@ -17,6 +17,7 @@ export const ActionTypes = { SET_QR_DENOMINATION: 'IOTA/UI/SET_QR_DENOMINATION', SET_SELECTED_QR_TAB: 'IOTA/UI/SET_SELECTED_QR_TAB', SET_ROUTE: 'IOTA/UI/SET_ROUTE', + SET_KEYBOARD_ACTIVITY: 'IOTA/UI/SET_KEYBOARD_ACTIVITY', }; /** @@ -248,3 +249,18 @@ export const setLoginRoute = (payload) => { payload, }; }; + +/** + * Dispatch to set the keyboard as active (mobile only) + * + * @method setKeyboardActivity + * @param {string} payload + * + * @returns {{type: {string}, payload: {string} }} + */ +export const setKeyboardActivity = (payload) => { + return { + type: ActionTypes.SET_KEYBOARD_ACTIVITY, + payload, + }; +}; diff --git a/src/shared/reducers/ui.js b/src/shared/reducers/ui.js index 945eb7d788..9d845cd967 100644 --- a/src/shared/reducers/ui.js +++ b/src/shared/reducers/ui.js @@ -153,6 +153,7 @@ const initialState = { * Determines whether an error occurred during address generation */ hadErrorGeneratingNewAddress: false, + isKeyboardActive: false, }; export default (state = initialState, action) => { @@ -469,6 +470,11 @@ export default (state = initialState, action) => { ...state, currentRoute: action.payload, }; + case UiActionTypes.SET_KEYBOARD_ACTIVITY: + return { + ...state, + isKeyboardActive: action.payload, + }; default: return state; } From 57c137f989497c2b4f5b610ea7b5ec11fc87d00e Mon Sep 17 00:00:00 2001 From: Rihards Gravis <31288628+rihardsgravis@users.noreply.github.com> Date: Fri, 7 Dec 2018 00:33:58 +0200 Subject: [PATCH 101/141] Desktop: Highlight address checksum on all views (#705) * Highlight address checksum on all views * Remove unused global variable --- src/desktop/package.json | 3 +- src/desktop/src/ui/components/Checksum.js | 25 +++++++++++ src/desktop/src/ui/components/List.js | 18 ++++++-- .../src/ui/components/input/Address.js | 37 ++++++---------- .../src/ui/components/input/input.scss | 42 ++++++++++++++++--- src/desktop/src/ui/components/list.scss | 3 ++ .../src/ui/components/modal/modal.scss | 5 ++- src/desktop/src/ui/style/_reset.scss | 4 ++ src/desktop/src/ui/views/account/Addresses.js | 4 +- .../src/ui/views/account/addresses.scss | 10 ++++- src/desktop/src/ui/views/wallet/Send.js | 9 +++- src/desktop/src/ui/views/wallet/send.scss | 10 +++++ 12 files changed, 128 insertions(+), 42 deletions(-) create mode 100644 src/desktop/src/ui/components/Checksum.js diff --git a/src/desktop/package.json b/src/desktop/package.json index b455d12757..43361c2286 100644 --- a/src/desktop/package.json +++ b/src/desktop/package.json @@ -19,7 +19,7 @@ "url": "git+https://github.com/iotaledger/trinity-wallet.git" }, "scripts": { - "start": "concurrently --kill-others \"npm run devserver\" \"cross-env NODE_ENV=development electron main.js\"", + "start": "concurrently --kill-others \"npm run devserver\" \"cross-env NODE_ENV=development electron -r @babel/register main.js\"", "postinstall": "patch-package && electron-builder install-app-deps", "devserver": "node server.js", "style:shots": "node scripts/puppeteer.js", @@ -162,7 +162,6 @@ "react-qr-reader": "^2.1.1", "react-redux": "^5.0.7", "react-router-dom": "^4.3.1", - "react-tooltip": "^3.9.0", "react-transition-group": "^2.5.0", "recharts": "^1.3.2", "redux": "^4.0.0" diff --git a/src/desktop/src/ui/components/Checksum.js b/src/desktop/src/ui/components/Checksum.js new file mode 100644 index 0000000000..45f0268cb5 --- /dev/null +++ b/src/desktop/src/ui/components/Checksum.js @@ -0,0 +1,25 @@ +import React from 'react'; +import PropTypes from 'prop-types'; +import { ADDRESS_LENGTH, VALID_SEED_REGEX } from 'libs/iota/utils'; + +/** + * Returns address with highlighted checksum + */ +const Checksum = ({ address }) => { + const validAddress = + typeof address === 'string' && address.length === ADDRESS_LENGTH && address.match(VALID_SEED_REGEX); + + return ( + + {!validAddress ? address : address.substr(0, 81)} + {validAddress && {address.substr(81)}} + + ); +}; + +Checksum.propTypes = { + /** Target address */ + address: PropTypes.string.isRequired, +}; + +export default Checksum; diff --git a/src/desktop/src/ui/components/List.js b/src/desktop/src/ui/components/List.js index ad20bd6266..c74203c092 100644 --- a/src/desktop/src/ui/components/List.js +++ b/src/desktop/src/ui/components/List.js @@ -105,7 +105,11 @@ class List extends React.PureComponent { text={`${input.address}${input.checksum}`} title={t('history:addressCopied')} success={t('history:addressCopiedExplanation')} - /> + address + > + {input.address} + {input.checksum} + {round(formatValue(input.value), 1)} @@ -294,8 +298,12 @@ class List extends React.PureComponent { {!isConfirmed - ? isReceived ? t('receiving') : t('sending') - : isReceived ? t('received') : t('sent')} + ? isReceived + ? t('receiving') + : t('sending') + : isReceived + ? t('received') + : t('sent')} {transfer.transferValue === 0 ? '' : isReceived ? '+' : '-'} @@ -333,7 +341,9 @@ class List extends React.PureComponent { {!activeTransfer.persistence ? t('pending') - : activeTransfer.incoming ? t('received') : t('sent')} + : activeTransfer.incoming + ? t('received') + : t('sent')} {formatModalTime( navigator.language, diff --git a/src/desktop/src/ui/components/input/Address.js b/src/desktop/src/ui/components/input/Address.js index 7c15f87511..44588e37fb 100644 --- a/src/desktop/src/ui/components/input/Address.js +++ b/src/desktop/src/ui/components/input/Address.js @@ -1,11 +1,11 @@ import React from 'react'; import QrReader from 'react-qr-reader'; -import ReactTooltip from 'react-tooltip'; import PropTypes from 'prop-types'; import { ADDRESS_LENGTH, parseAddress } from 'libs/iota/utils'; import Modal from 'ui/components/modal/Modal'; import Button from 'ui/components/Button'; +import Checksum from 'ui/components/Checksum'; import Icon from 'ui/components/Icon'; import css from './input.scss'; @@ -32,7 +32,6 @@ export default class Address extends React.PureComponent { state = { showScanner: false, - inputFocused: false }; componentDidMount() { @@ -57,18 +56,6 @@ export default class Address extends React.PureComponent { } }; - handleFocus = () => { - this.setState(() => ({ - inputFocused: true, - })); - }; - - handleBlur = () => { - this.setState(() => ({ - inputFocused: false, - })); - }; - closeScanner = () => { this.setState(() => ({ showScanner: false, @@ -94,7 +81,7 @@ export default class Address extends React.PureComponent { render() { const { address, label, closeLabel } = this.props; - const { showScanner, inputFocused } = this.state; + const { showScanner } = this.state; return (
@@ -109,21 +96,23 @@ export default class Address extends React.PureComponent { }} value={address} onChange={(e) => this.props.onChange(e.target.value)} - onFocus={() => this.handleFocus()} - onBlur={() => this.handleBlur()} maxLength={ADDRESS_LENGTH} data-tip={address} /> + {this.isInputScrolling() && ( +
+ +
+ )} {label} -

{this.address = address;}} className={css.addressHidden}> +

{ + this.address = address; + }} + className={css.addressHidden} + > {address}

- {!inputFocused && this.isInputScrolling() && ( - - )} {showScanner && ( diff --git a/src/desktop/src/ui/components/input/input.scss b/src/desktop/src/ui/components/input/input.scss index f8a5930dcf..a3afd20aea 100644 --- a/src/desktop/src/ui/components/input/input.scss +++ b/src/desktop/src/ui/components/input/input.scss @@ -46,6 +46,13 @@ } } + &:hover { + .tooltip { + opacity: 1; + transition: 0.2s ease-in; + } + } + .editable { display: block; font-family: 'SourceCodePro'; @@ -542,20 +549,45 @@ } .tooltip { - background: var(--bar-bg) !important; - color: var(--bar) !important; - width: 324px !important; + position: absolute; + pointer-events: none; + z-index: 2; + font-size: 14px; + background: var(--bar-bg); + color: var(--bar); + width: 342px; + border-radius: 4px; font-family: 'SourceCodePro'; letter-spacing: 2px; word-wrap: break-word; line-height: 21px; - padding: 12px 14px 12px 16px !important; + padding: 12px 14px 12px 16px; + top: 48px; + left: 50%; + transform: translate(-50%, 0); + opacity: 0; + + mark { + color: var(--primary); + } &:after { - border-bottom-color: var(--bar-bg) !important; + content: ''; + position: absolute; + top: -6px; + left: calc(50% - 6px); + width: 0; + height: 0; + border-style: solid; + border-width: 0 6px 6px 6px; + border-color: transparent transparent var(--bar-bg) transparent; } } +input:focus + .tooltip { + display: none; +} + .addressHidden { visibility: hidden; font-size: 14px; diff --git a/src/desktop/src/ui/components/list.scss b/src/desktop/src/ui/components/list.scss index 71b35f28eb..17fb34fbf9 100644 --- a/src/desktop/src/ui/components/list.scss +++ b/src/desktop/src/ui/components/list.scss @@ -437,6 +437,9 @@ font-family: 'SourceSansPro'; font-weight: 400; } + mark { + color: var(--primary); + } } > div { max-height: calc(100vh - 640px); diff --git a/src/desktop/src/ui/components/modal/modal.scss b/src/desktop/src/ui/components/modal/modal.scss index 4aaed78867..dd2206352c 100644 --- a/src/desktop/src/ui/components/modal/modal.scss +++ b/src/desktop/src/ui/components/modal/modal.scss @@ -130,8 +130,9 @@ $footer: 70px; margin-bottom: 20px; } - - + mark { + color: var(--primary); + } } } diff --git a/src/desktop/src/ui/style/_reset.scss b/src/desktop/src/ui/style/_reset.scss index 32d2bc3fec..85a0549e99 100644 --- a/src/desktop/src/ui/style/_reset.scss +++ b/src/desktop/src/ui/style/_reset.scss @@ -25,3 +25,7 @@ input, textarea { cursor: text; } + +mark { + background: none; +} diff --git a/src/desktop/src/ui/views/account/Addresses.js b/src/desktop/src/ui/views/account/Addresses.js index 54c13d2879..ec70675190 100644 --- a/src/desktop/src/ui/views/account/Addresses.js +++ b/src/desktop/src/ui/views/account/Addresses.js @@ -32,7 +32,6 @@ class Addresses extends PureComponent { .reverse() .map((item) => { const address = item + account.addresses[item].checksum; - const text = address.match(/.{1,3}/g).join(' '); return (
  • @@ -41,7 +40,8 @@ class Addresses extends PureComponent { title={t('receive:addressCopied')} success={t('receive:addressCopiedExplanation')} > - {text} + {item.match(/.{1,3}/g).join(' ')}{' '} + {account.addresses[item].checksum.match(/.{1,3}/g).join(' ')}

    diff --git a/src/desktop/src/ui/views/account/addresses.scss b/src/desktop/src/ui/views/account/addresses.scss index ad2c22625b..70cafe7705 100644 --- a/src/desktop/src/ui/views/account/addresses.scss +++ b/src/desktop/src/ui/views/account/addresses.scss @@ -8,12 +8,16 @@ font-family: 'SourceCodePro'; font-size: 12px; word-break: break-word; + + mark { + color: var(--primary); + } } li { display: flex; strong { - flex: 1 0 80px; + flex: 1 0 65px; text-align: right; } } @@ -21,5 +25,9 @@ .spent { text-decoration: line-through; color: var(--negative); + + mark { + color: var(--negative); + } } } diff --git a/src/desktop/src/ui/views/wallet/Send.js b/src/desktop/src/ui/views/wallet/Send.js index d406cb2469..f9d6da3b6f 100644 --- a/src/desktop/src/ui/views/wallet/Send.js +++ b/src/desktop/src/ui/views/wallet/Send.js @@ -14,6 +14,7 @@ import Icon from 'ui/components/Icon'; import Button from 'ui/components/Button'; import Progress from 'ui/components/Progress'; import Balance from 'ui/components/Balance'; +import Checksum from 'ui/components/Checksum'; import Confirm from 'ui/components/modal/Confirm'; import withSendData from 'containers/wallet/Send'; @@ -120,7 +121,7 @@ class Send extends React.PureComponent { ? `${formatValue(fields.amount)} ${formatUnit(fields.amount)} (${getCurrencySymbol( settings.currency, )}${( - round(fields.amount * settings.usdPrice / 1000000 * settings.conversionRate * 100) / 100 + round(((fields.amount * settings.usdPrice) / 1000000) * settings.conversionRate * 100) / 100 ).toFixed(2)})` : t('transferConfirmation:aMessage'); @@ -137,7 +138,11 @@ class Send extends React.PureComponent { onConfirm={() => this.confirmTransfer()} content={{ title: t('transferConfirmation:youAreAbout', { contents: transferContents }), - message: fields.address, + message: ( + + + + ), confirm: t('send'), cancel: t('cancel'), }} diff --git a/src/desktop/src/ui/views/wallet/send.scss b/src/desktop/src/ui/views/wallet/send.scss index 0e6e761b1c..d133ad3790 100644 --- a/src/desktop/src/ui/views/wallet/send.scss +++ b/src/desktop/src/ui/views/wallet/send.scss @@ -85,6 +85,16 @@ } } +.address { + display: inline-block; + font-family: 'SourceCodePro'; + letter-spacing: 2px; + max-width: 390px; + word-break: break-word; + font-size: 18px; + line-height: 28px; +} + .units { position: absolute; top: 0px; From 1e99709527c03211bb855fe819546b5b4e254ac7 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 6 Dec 2018 22:35:28 +0000 Subject: [PATCH 102/141] Mobile: Fix modal height --- src/mobile/src/ui/components/ModalView.js | 3 +-- src/mobile/src/ui/components/TransactionHistoryModal.js | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/mobile/src/ui/components/ModalView.js b/src/mobile/src/ui/components/ModalView.js index 351555fa8a..8a5ce40573 100644 --- a/src/mobile/src/ui/components/ModalView.js +++ b/src/mobile/src/ui/components/ModalView.js @@ -21,7 +21,6 @@ const styles = StyleSheet.create({ justifyContent: 'space-between', alignItems: 'center', width, - height: height - Styling.topbarHeight, }, modalContent: { flex: 1, @@ -77,7 +76,7 @@ export class ModalViewComponent extends PureComponent { getModalHeight() { if (this.props.displayTopBar) { if (isAndroid) { - return height - Styling.topbarHeight + StatusBar.currentHeight; + return height - Styling.topbarHeight - StatusBar.currentHeight; } return height - Styling.topbarHeight; } diff --git a/src/mobile/src/ui/components/TransactionHistoryModal.js b/src/mobile/src/ui/components/TransactionHistoryModal.js index 526241288c..fd09841663 100644 --- a/src/mobile/src/ui/components/TransactionHistoryModal.js +++ b/src/mobile/src/ui/components/TransactionHistoryModal.js @@ -325,7 +325,7 @@ export default class TransactionHistoryModal extends PureComponent { styles.modalContainer, { height: isAndroid - ? height - Styling.topbarHeight + StatusBar.currentHeight + ? height - Styling.topbarHeight - StatusBar.currentHeight : height - Styling.topbarHeight, backgroundColor: style.backgroundColor, }, From d6a88ea899dc31aa6a9a152ec6d3a7991b017882 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Thu, 6 Dec 2018 23:17:59 +0000 Subject: [PATCH 103/141] Mobile: Block topbar when modal is open --- src/mobile/src/ui/components/TopBar.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/mobile/src/ui/components/TopBar.js b/src/mobile/src/ui/components/TopBar.js index cef3a4b737..c14714478d 100644 --- a/src/mobile/src/ui/components/TopBar.js +++ b/src/mobile/src/ui/components/TopBar.js @@ -149,6 +149,8 @@ class TopBar extends Component { currentRoute: PropTypes.string.isRequired, /** @ignore */ toggleModalActivity: PropTypes.func.isRequired, + /** @ignore */ + isModalActive: PropTypes.bool.isRequired, }; static filterSeedTitles(accountNames, currentSeedIndex) { @@ -251,13 +253,15 @@ class TopBar extends Component { isSyncing, isTransitioning, isFetchingLatestAccountInfo, + isModalActive, } = this.props; return ( isGeneratingReceiveAddress || isSendingTransfer || isSyncing || isTransitioning || - isFetchingLatestAccountInfo + isFetchingLatestAccountInfo || + isModalActive ); } @@ -524,6 +528,7 @@ const mapStateToProps = (state) => ({ isFetchingLatestAccountInfo: state.ui.isFetchingAccountInfo, currentRoute: state.home.childRoute, isKeyboardActive: state.ui.isKeyboardActive, + isModalActive: state.ui.isModalActive, }); const mapDispatchToProps = { From 853e75f011dfdd4c8c6c4dd913d832f46ba77187 Mon Sep 17 00:00:00 2001 From: "greenkeeper[bot]" Date: Fri, 7 Dec 2018 10:15:53 +0000 Subject: [PATCH 104/141] chore(package): update mini-css-extract-plugin to version 0.5.0 --- src/desktop/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/desktop/package.json b/src/desktop/package.json index 43361c2286..2d579baf1e 100644 --- a/src/desktop/package.json +++ b/src/desktop/package.json @@ -54,7 +54,7 @@ "express": "^4.16.3", "file-loader": "^2.0.0", "html-webpack-plugin": "^3.2.0", - "mini-css-extract-plugin": "^0.4.3", + "mini-css-extract-plugin": "^0.5.0", "patch-package": "^5.1.1", "puppeteer": "^1.9.0", "react-dev-utils": "^6.0.4", From 39b1750e9a7ca90f8deb349d974d3575c6ddafa5 Mon Sep 17 00:00:00 2001 From: Rihards Gravis Date: Fri, 7 Dec 2018 17:19:48 +0200 Subject: [PATCH 105/141] Update Entangled node version --- src/desktop/npm-shrinkwrap.json | 5302 +++++++++++++++---------------- src/desktop/package.json | 2 +- 2 files changed, 2644 insertions(+), 2660 deletions(-) diff --git a/src/desktop/npm-shrinkwrap.json b/src/desktop/npm-shrinkwrap.json index eb9f9a7760..fd24346214 100644 --- a/src/desktop/npm-shrinkwrap.json +++ b/src/desktop/npm-shrinkwrap.json @@ -16,7 +16,7 @@ "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", "dev": true, "requires": { - "@babel/highlight": "^7.0.0" + "@babel/highlight": "7.0.0" } }, "@babel/core": { @@ -25,20 +25,20 @@ "integrity": "sha512-IFeSSnjXdhDaoysIlev//UzHZbdEmm7D0EIH2qtse9xK7mXEZQpYjs2P00XlP1qYsYvid79p+Zgg6tz1mp6iVw==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.1.2", - "@babel/helpers": "^7.1.2", - "@babel/parser": "^7.1.2", - "@babel/template": "^7.1.2", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.1.2", - "convert-source-map": "^1.1.0", - "debug": "^3.1.0", - "json5": "^0.5.0", - "lodash": "^4.17.10", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" + "@babel/code-frame": "7.0.0", + "@babel/generator": "7.1.3", + "@babel/helpers": "7.1.2", + "@babel/parser": "7.1.3", + "@babel/template": "7.1.2", + "@babel/traverse": "7.1.4", + "@babel/types": "7.1.3", + "convert-source-map": "1.6.0", + "debug": "3.2.6", + "json5": "0.5.1", + "lodash": "4.17.11", + "resolve": "1.8.1", + "semver": "5.6.0", + "source-map": "0.5.7" }, "dependencies": { "source-map": { @@ -55,11 +55,11 @@ "integrity": "sha512-ZoCZGcfIJFJuZBqxcY9OjC1KW2lWK64qrX1o4UYL3yshVhwKFYgzpWZ0vvtGMNJdTlvkw0W+HR1VnYN8q3QPFQ==", "dev": true, "requires": { - "@babel/types": "^7.1.3", - "jsesc": "^2.5.1", - "lodash": "^4.17.10", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" + "@babel/types": "7.1.3", + "jsesc": "2.5.1", + "lodash": "4.17.11", + "source-map": "0.5.7", + "trim-right": "1.0.1" }, "dependencies": { "source-map": { @@ -76,7 +76,7 @@ "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "7.1.3" } }, "@babel/helper-builder-binary-assignment-operator-visitor": { @@ -85,8 +85,8 @@ "integrity": "sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w==", "dev": true, "requires": { - "@babel/helper-explode-assignable-expression": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-explode-assignable-expression": "7.1.0", + "@babel/types": "7.1.3" } }, "@babel/helper-builder-react-jsx": { @@ -95,8 +95,8 @@ "integrity": "sha512-ebJ2JM6NAKW0fQEqN8hOLxK84RbRz9OkUhGS/Xd5u56ejMfVbayJ4+LykERZCOUM6faa6Fp3SZNX3fcT16MKHw==", "dev": true, "requires": { - "@babel/types": "^7.0.0", - "esutils": "^2.0.0" + "@babel/types": "7.1.3", + "esutils": "2.0.2" } }, "@babel/helper-call-delegate": { @@ -105,9 +105,9 @@ "integrity": "sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ==", "dev": true, "requires": { - "@babel/helper-hoist-variables": "^7.0.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-hoist-variables": "7.0.0", + "@babel/traverse": "7.1.4", + "@babel/types": "7.1.3" } }, "@babel/helper-define-map": { @@ -116,9 +116,9 @@ "integrity": "sha512-yPPcW8dc3gZLN+U1mhYV91QU3n5uTbx7DUdf8NnPbjS0RMwBuHi9Xt2MUgppmNz7CJxTBWsGczTiEp1CSOTPRg==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/types": "^7.0.0", - "lodash": "^4.17.10" + "@babel/helper-function-name": "7.1.0", + "@babel/types": "7.1.3", + "lodash": "4.17.11" } }, "@babel/helper-explode-assignable-expression": { @@ -127,8 +127,8 @@ "integrity": "sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA==", "dev": true, "requires": { - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/traverse": "7.1.4", + "@babel/types": "7.1.3" } }, "@babel/helper-function-name": { @@ -137,9 +137,9 @@ "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-get-function-arity": "7.0.0", + "@babel/template": "7.1.2", + "@babel/types": "7.1.3" } }, "@babel/helper-get-function-arity": { @@ -148,7 +148,7 @@ "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "7.1.3" } }, "@babel/helper-hoist-variables": { @@ -157,7 +157,7 @@ "integrity": "sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "7.1.3" } }, "@babel/helper-member-expression-to-functions": { @@ -166,7 +166,7 @@ "integrity": "sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "7.1.3" } }, "@babel/helper-module-imports": { @@ -175,7 +175,7 @@ "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "7.1.3" } }, "@babel/helper-module-transforms": { @@ -184,12 +184,12 @@ "integrity": "sha512-0JZRd2yhawo79Rcm4w0LwSMILFmFXjugG3yqf+P/UsKsRS1mJCmMwwlHDlMg7Avr9LrvSpp4ZSULO9r8jpCzcw==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0", - "lodash": "^4.17.10" + "@babel/helper-module-imports": "7.0.0", + "@babel/helper-simple-access": "7.1.0", + "@babel/helper-split-export-declaration": "7.0.0", + "@babel/template": "7.1.2", + "@babel/types": "7.1.3", + "lodash": "4.17.11" } }, "@babel/helper-optimise-call-expression": { @@ -198,7 +198,7 @@ "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "7.1.3" } }, "@babel/helper-plugin-utils": { @@ -213,7 +213,7 @@ "integrity": "sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg==", "dev": true, "requires": { - "lodash": "^4.17.10" + "lodash": "4.17.11" } }, "@babel/helper-remap-async-to-generator": { @@ -222,11 +222,11 @@ "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-wrap-function": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-annotate-as-pure": "7.0.0", + "@babel/helper-wrap-function": "7.1.0", + "@babel/template": "7.1.2", + "@babel/traverse": "7.1.4", + "@babel/types": "7.1.3" } }, "@babel/helper-replace-supers": { @@ -235,10 +235,10 @@ "integrity": "sha512-BvcDWYZRWVuDeXTYZWxekQNO5D4kO55aArwZOTFXw6rlLQA8ZaDicJR1sO47h+HrnCiDFiww0fSPV0d713KBGQ==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.0.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-member-expression-to-functions": "7.0.0", + "@babel/helper-optimise-call-expression": "7.0.0", + "@babel/traverse": "7.1.4", + "@babel/types": "7.1.3" } }, "@babel/helper-simple-access": { @@ -247,8 +247,8 @@ "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==", "dev": true, "requires": { - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/template": "7.1.2", + "@babel/types": "7.1.3" } }, "@babel/helper-split-export-declaration": { @@ -257,7 +257,7 @@ "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "7.1.3" } }, "@babel/helper-wrap-function": { @@ -266,10 +266,10 @@ "integrity": "sha512-R6HU3dete+rwsdAfrOzTlE9Mcpk4RjU3aX3gi9grtmugQY0u79X7eogUvfXA5sI81Mfq1cn6AgxihfN33STjJA==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-function-name": "7.1.0", + "@babel/template": "7.1.2", + "@babel/traverse": "7.1.4", + "@babel/types": "7.1.3" } }, "@babel/helpers": { @@ -278,9 +278,9 @@ "integrity": "sha512-Myc3pUE8eswD73aWcartxB16K6CGmHDv9KxOmD2CeOs/FaEAQodr3VYGmlvOmog60vNQ2w8QbatuahepZwrHiA==", "dev": true, "requires": { - "@babel/template": "^7.1.2", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.1.2" + "@babel/template": "7.1.2", + "@babel/traverse": "7.1.4", + "@babel/types": "7.1.3" } }, "@babel/highlight": { @@ -289,9 +289,9 @@ "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", "dev": true, "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" + "chalk": "2.4.1", + "esutils": "2.0.2", + "js-tokens": "4.0.0" } }, "@babel/parser": { @@ -306,9 +306,9 @@ "integrity": "sha512-Fq803F3Jcxo20MXUSDdmZZXrPe6BWyGcWBPPNB/M7WaUYESKDeKMOGIxEzQOjGSmW/NWb6UaPZrtTB2ekhB/ew==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0", - "@babel/plugin-syntax-async-generators": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/helper-remap-async-to-generator": "7.1.0", + "@babel/plugin-syntax-async-generators": "7.0.0" } }, "@babel/plugin-proposal-class-properties": { @@ -317,12 +317,12 @@ "integrity": "sha512-/PCJWN+CKt5v1xcGn4vnuu13QDoV+P7NcICP44BoonAJoPSGwVkgrXihFIQGiEjjPlUDBIw1cM7wYFLARS2/hw==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-member-expression-to-functions": "^7.0.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.1.0", - "@babel/plugin-syntax-class-properties": "^7.0.0" + "@babel/helper-function-name": "7.1.0", + "@babel/helper-member-expression-to-functions": "7.0.0", + "@babel/helper-optimise-call-expression": "7.0.0", + "@babel/helper-plugin-utils": "7.0.0", + "@babel/helper-replace-supers": "7.1.0", + "@babel/plugin-syntax-class-properties": "7.0.0" } }, "@babel/plugin-proposal-json-strings": { @@ -331,8 +331,8 @@ "integrity": "sha512-kfVdUkIAGJIVmHmtS/40i/fg/AGnw/rsZBCaapY5yjeO5RA9m165Xbw9KMOu2nqXP5dTFjEjHdfNdoVcHv133Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-json-strings": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/plugin-syntax-json-strings": "7.0.0" } }, "@babel/plugin-proposal-object-rest-spread": { @@ -341,8 +341,8 @@ "integrity": "sha512-14fhfoPcNu7itSen7Py1iGN0gEm87hX/B+8nZPqkdmANyyYWYMY2pjA3r8WXbWVKMzfnSNS0xY8GVS0IjXi/iw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/plugin-syntax-object-rest-spread": "7.0.0" } }, "@babel/plugin-proposal-optional-catch-binding": { @@ -351,8 +351,8 @@ "integrity": "sha512-JPqAvLG1s13B/AuoBjdBYvn38RqW6n1TzrQO839/sIpqLpbnXKacsAgpZHzLD83Sm8SDXMkkrAvEnJ25+0yIpw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/plugin-syntax-optional-catch-binding": "7.0.0" } }, "@babel/plugin-proposal-unicode-property-regex": { @@ -361,9 +361,9 @@ "integrity": "sha512-tM3icA6GhC3ch2SkmSxv7J/hCWKISzwycub6eGsDrFDgukD4dZ/I+x81XgW0YslS6mzNuQ1Cbzh5osjIMgepPQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0", - "regexpu-core": "^4.2.0" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/helper-regex": "7.0.0", + "regexpu-core": "4.2.0" } }, "@babel/plugin-syntax-async-generators": { @@ -372,7 +372,7 @@ "integrity": "sha512-im7ged00ddGKAjcZgewXmp1vxSZQQywuQXe2B1A7kajjZmDeY/ekMPmWr9zJgveSaQH0k7BcGrojQhcK06l0zA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-syntax-class-properties": { @@ -381,7 +381,7 @@ "integrity": "sha512-cR12g0Qzn4sgkjrbrzWy2GE7m9vMl/sFkqZ3gIpAQdrvPDnLM8180i+ANDFIXfjHo9aqp0ccJlQ0QNZcFUbf9w==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-syntax-json-strings": { @@ -390,7 +390,7 @@ "integrity": "sha512-UlSfNydC+XLj4bw7ijpldc1uZ/HB84vw+U6BTuqMdIEmz/LDe63w/GHtpQMdXWdqQZFeAI9PjnHe/vDhwirhKA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-syntax-jsx": { @@ -399,7 +399,7 @@ "integrity": "sha512-PdmL2AoPsCLWxhIr3kG2+F9v4WH06Q3z+NoGVpQgnUNGcagXHq5sB3OXxkSahKq9TLdNMN/AJzFYSOo8UKDMHg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-syntax-object-rest-spread": { @@ -408,7 +408,7 @@ "integrity": "sha512-5A0n4p6bIiVe5OvQPxBnesezsgFJdHhSs3uFSvaPdMqtsovajLZ+G2vZyvNe10EzJBWWo3AcHGKhAFUxqwp2dw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-syntax-optional-catch-binding": { @@ -417,7 +417,7 @@ "integrity": "sha512-Wc+HVvwjcq5qBg1w5RG9o9RVzmCaAg/Vp0erHCKpAYV8La6I94o4GQAmFYNmkzoMO6gzoOSulpKeSSz6mPEoZw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-arrow-functions": { @@ -426,7 +426,7 @@ "integrity": "sha512-2EZDBl1WIO/q4DIkIp4s86sdp4ZifL51MoIviLY/gG/mLSuOIEg7J8o6mhbxOTvUJkaN50n+8u41FVsr5KLy/w==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-async-to-generator": { @@ -435,9 +435,9 @@ "integrity": "sha512-rNmcmoQ78IrvNCIt/R9U+cixUHeYAzgusTFgIAv+wQb9HJU4szhpDD6e5GCACmj/JP5KxuCwM96bX3L9v4ZN/g==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0" + "@babel/helper-module-imports": "7.0.0", + "@babel/helper-plugin-utils": "7.0.0", + "@babel/helper-remap-async-to-generator": "7.1.0" } }, "@babel/plugin-transform-block-scoped-functions": { @@ -446,7 +446,7 @@ "integrity": "sha512-AOBiyUp7vYTqz2Jibe1UaAWL0Hl9JUXEgjFvvvcSc9MVDItv46ViXFw2F7SVt1B5k+KWjl44eeXOAk3UDEaJjQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-block-scoping": { @@ -455,8 +455,8 @@ "integrity": "sha512-GWEMCrmHQcYWISilUrk9GDqH4enf3UmhOEbNbNrlNAX1ssH3MsS1xLOS6rdjRVPgA7XXVPn87tRkdTEoA/dxEg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "lodash": "^4.17.10" + "@babel/helper-plugin-utils": "7.0.0", + "lodash": "4.17.11" } }, "@babel/plugin-transform-classes": { @@ -465,14 +465,14 @@ "integrity": "sha512-rNaqoD+4OCBZjM7VaskladgqnZ1LO6o2UxuWSDzljzW21pN1KXkB7BstAVweZdxQkHAujps5QMNOTWesBciKFg==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-define-map": "^7.1.0", - "@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.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "globals": "^11.1.0" + "@babel/helper-annotate-as-pure": "7.0.0", + "@babel/helper-define-map": "7.1.0", + "@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.1.0", + "@babel/helper-split-export-declaration": "7.0.0", + "globals": "11.8.0" } }, "@babel/plugin-transform-computed-properties": { @@ -481,7 +481,7 @@ "integrity": "sha512-ubouZdChNAv4AAWAgU7QKbB93NU5sHwInEWfp+/OzJKA02E6Woh9RVoX4sZrbRwtybky/d7baTUqwFx+HgbvMA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-destructuring": { @@ -490,7 +490,7 @@ "integrity": "sha512-Mb9M4DGIOspH1ExHOUnn2UUXFOyVTiX84fXCd+6B5iWrQg/QMeeRmSwpZ9lnjYLSXtZwiw80ytVMr3zue0ucYw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-dotall-regex": { @@ -499,9 +499,9 @@ "integrity": "sha512-00THs8eJxOJUFVx1w8i1MBF4XH4PsAjKjQ1eqN/uCH3YKwP21GCKfrn6YZFZswbOk9+0cw1zGQPHVc1KBlSxig==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0", - "regexpu-core": "^4.1.3" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/helper-regex": "7.0.0", + "regexpu-core": "4.2.0" } }, "@babel/plugin-transform-duplicate-keys": { @@ -510,7 +510,7 @@ "integrity": "sha512-w2vfPkMqRkdxx+C71ATLJG30PpwtTpW7DDdLqYt2acXU7YjztzeWW2Jk1T6hKqCLYCcEA5UQM/+xTAm+QCSnuQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-exponentiation-operator": { @@ -519,8 +519,8 @@ "integrity": "sha512-uZt9kD1Pp/JubkukOGQml9tqAeI8NkE98oZnHZ2qHRElmeKCodbTZgOEUtujSCSLhHSBWbzNiFSDIMC4/RBTLQ==", "dev": true, "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-builder-binary-assignment-operator-visitor": "7.1.0", + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-for-of": { @@ -529,7 +529,7 @@ "integrity": "sha512-TlxKecN20X2tt2UEr2LNE6aqA0oPeMT1Y3cgz8k4Dn1j5ObT8M3nl9aA37LLklx0PBZKETC9ZAf9n/6SujTuXA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-function-name": { @@ -538,8 +538,8 @@ "integrity": "sha512-VxOa1TMlFMtqPW2IDYZQaHsFrq/dDoIjgN098NowhexhZcz3UGlvPgZXuE1jEvNygyWyxRacqDpCZt+par1FNg==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-function-name": "7.1.0", + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-literals": { @@ -548,7 +548,7 @@ "integrity": "sha512-1NTDBWkeNXgpUcyoVFxbr9hS57EpZYXpje92zv0SUzjdu3enaRwF/l3cmyRnXLtIdyJASyiS6PtybK+CgKf7jA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-modules-amd": { @@ -557,8 +557,8 @@ "integrity": "sha512-wt8P+xQ85rrnGNr2x1iV3DW32W8zrB6ctuBkYBbf5/ZzJY99Ob4MFgsZDFgczNU76iy9PWsy4EuxOliDjdKw6A==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-module-transforms": "7.1.0", + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-modules-commonjs": { @@ -567,9 +567,9 @@ "integrity": "sha512-wtNwtMjn1XGwM0AXPspQgvmE6msSJP15CX2RVfpTSTNPLhKhaOjaIfBaVfj4iUZ/VrFSodcFedwtPg/NxwQlPA==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0" + "@babel/helper-module-transforms": "7.1.0", + "@babel/helper-plugin-utils": "7.0.0", + "@babel/helper-simple-access": "7.1.0" } }, "@babel/plugin-transform-modules-systemjs": { @@ -578,8 +578,8 @@ "integrity": "sha512-PvTxgjxQAq4pvVUZF3mD5gEtVDuId8NtWkJsZLEJZMZAW3TvgQl1pmydLLN1bM8huHFVVU43lf0uvjQj9FRkKw==", "dev": true, "requires": { - "@babel/helper-hoist-variables": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-hoist-variables": "7.0.0", + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-modules-umd": { @@ -588,8 +588,8 @@ "integrity": "sha512-enrRtn5TfRhMmbRwm7F8qOj0qEYByqUvTttPEGimcBH4CJHphjyK1Vg7sdU7JjeEmgSpM890IT/efS2nMHwYig==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-module-transforms": "7.1.0", + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-new-target": { @@ -598,7 +598,7 @@ "integrity": "sha512-yin069FYjah+LbqfGeTfzIBODex/e++Yfa0rH0fpfam9uTbuEeEOx5GLGr210ggOV77mVRNoeqSYqeuaqSzVSw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-object-super": { @@ -607,8 +607,8 @@ "integrity": "sha512-/O02Je1CRTSk2SSJaq0xjwQ8hG4zhZGNjE8psTsSNPXyLRCODv7/PBozqT5AmQMzp7MI3ndvMhGdqp9c96tTEw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.1.0" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/helper-replace-supers": "7.1.0" } }, "@babel/plugin-transform-parameters": { @@ -617,9 +617,9 @@ "integrity": "sha512-vHV7oxkEJ8IHxTfRr3hNGzV446GAb+0hgbA7o/0Jd76s+YzccdWuTU296FOCOl/xweU4t/Ya4g41yWz80RFCRw==", "dev": true, "requires": { - "@babel/helper-call-delegate": "^7.1.0", - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-call-delegate": "7.1.0", + "@babel/helper-get-function-arity": "7.0.0", + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-react-display-name": { @@ -628,7 +628,7 @@ "integrity": "sha512-BX8xKuQTO0HzINxT6j/GiCwoJB0AOMs0HmLbEnAvcte8U8rSkNa/eSCAY+l1OA4JnCVq2jw2p6U8QQryy2fTPg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-react-jsx": { @@ -637,9 +637,9 @@ "integrity": "sha512-0TMP21hXsSUjIQJmu/r7RiVxeFrXRcMUigbKu0BLegJK9PkYodHstaszcig7zxXfaBji2LYUdtqIkHs+hgYkJQ==", "dev": true, "requires": { - "@babel/helper-builder-react-jsx": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.0.0" + "@babel/helper-builder-react-jsx": "7.0.0", + "@babel/helper-plugin-utils": "7.0.0", + "@babel/plugin-syntax-jsx": "7.0.0" } }, "@babel/plugin-transform-react-jsx-self": { @@ -648,8 +648,8 @@ "integrity": "sha512-pymy+AK12WO4safW1HmBpwagUQRl9cevNX+82AIAtU1pIdugqcH+nuYP03Ja6B+N4gliAaKWAegIBL/ymALPHA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/plugin-syntax-jsx": "7.0.0" } }, "@babel/plugin-transform-react-jsx-source": { @@ -658,8 +658,8 @@ "integrity": "sha512-OSeEpFJEH5dw/TtxTg4nijl4nHBbhqbKL94Xo/Y17WKIf2qJWeIk/QeXACF19lG1vMezkxqruwnTjVizaW7u7w==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/plugin-syntax-jsx": "7.0.0" } }, "@babel/plugin-transform-regenerator": { @@ -668,7 +668,7 @@ "integrity": "sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw==", "dev": true, "requires": { - "regenerator-transform": "^0.13.3" + "regenerator-transform": "0.13.3" } }, "@babel/plugin-transform-shorthand-properties": { @@ -677,7 +677,7 @@ "integrity": "sha512-g/99LI4vm5iOf5r1Gdxq5Xmu91zvjhEG5+yZDJW268AZELAu4J1EiFLnkSG3yuUsZyOipVOVUKoGPYwfsTymhw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-spread": { @@ -686,7 +686,7 @@ "integrity": "sha512-L702YFy2EvirrR4shTj0g2xQp7aNwZoWNCkNu2mcoU0uyzMl0XRwDSwzB/xp6DSUFiBmEXuyAyEN16LsgVqGGQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-sticky-regex": { @@ -695,8 +695,8 @@ "integrity": "sha512-LFUToxiyS/WD+XEWpkx/XJBrUXKewSZpzX68s+yEOtIbdnsRjpryDw9U06gYc6klYEij/+KQVRnD3nz3AoKmjw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/helper-regex": "7.0.0" } }, "@babel/plugin-transform-template-literals": { @@ -705,8 +705,8 @@ "integrity": "sha512-vA6rkTCabRZu7Nbl9DfLZE1imj4tzdWcg5vtdQGvj+OH9itNNB6hxuRMHuIY8SGnEt1T9g5foqs9LnrHzsqEFg==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-annotate-as-pure": "7.0.0", + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-typeof-symbol": { @@ -715,7 +715,7 @@ "integrity": "sha512-1r1X5DO78WnaAIvs5uC48t41LLckxsYklJrZjNKcevyz83sF2l4RHbw29qrCPr/6ksFsdfRpT/ZgxNWHXRnffg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0" } }, "@babel/plugin-transform-unicode-regex": { @@ -724,9 +724,9 @@ "integrity": "sha512-uJBrJhBOEa3D033P95nPHu3nbFwFE9ZgXsfEitzoIXIwqAZWk7uXcg06yFKXz9FSxBH5ucgU/cYdX0IV8ldHKw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.0.0", - "regexpu-core": "^4.1.3" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/helper-regex": "7.0.0", + "regexpu-core": "4.2.0" } }, "@babel/preset-env": { @@ -735,47 +735,47 @@ "integrity": "sha512-ZLVSynfAoDHB/34A17/JCZbyrzbQj59QC1Anyueb4Bwjh373nVPq5/HMph0z+tCmcDjXDe+DlKQq9ywQuvWrQg==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-async-generator-functions": "^7.1.0", - "@babel/plugin-proposal-json-strings": "^7.0.0", - "@babel/plugin-proposal-object-rest-spread": "^7.0.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.0.0", - "@babel/plugin-syntax-async-generators": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.0.0", - "@babel/plugin-transform-arrow-functions": "^7.0.0", - "@babel/plugin-transform-async-to-generator": "^7.1.0", - "@babel/plugin-transform-block-scoped-functions": "^7.0.0", - "@babel/plugin-transform-block-scoping": "^7.0.0", - "@babel/plugin-transform-classes": "^7.1.0", - "@babel/plugin-transform-computed-properties": "^7.0.0", - "@babel/plugin-transform-destructuring": "^7.0.0", - "@babel/plugin-transform-dotall-regex": "^7.0.0", - "@babel/plugin-transform-duplicate-keys": "^7.0.0", - "@babel/plugin-transform-exponentiation-operator": "^7.1.0", - "@babel/plugin-transform-for-of": "^7.0.0", - "@babel/plugin-transform-function-name": "^7.1.0", - "@babel/plugin-transform-literals": "^7.0.0", - "@babel/plugin-transform-modules-amd": "^7.1.0", - "@babel/plugin-transform-modules-commonjs": "^7.1.0", - "@babel/plugin-transform-modules-systemjs": "^7.0.0", - "@babel/plugin-transform-modules-umd": "^7.1.0", - "@babel/plugin-transform-new-target": "^7.0.0", - "@babel/plugin-transform-object-super": "^7.1.0", - "@babel/plugin-transform-parameters": "^7.1.0", - "@babel/plugin-transform-regenerator": "^7.0.0", - "@babel/plugin-transform-shorthand-properties": "^7.0.0", - "@babel/plugin-transform-spread": "^7.0.0", - "@babel/plugin-transform-sticky-regex": "^7.0.0", - "@babel/plugin-transform-template-literals": "^7.0.0", - "@babel/plugin-transform-typeof-symbol": "^7.0.0", - "@babel/plugin-transform-unicode-regex": "^7.0.0", - "browserslist": "^4.1.0", - "invariant": "^2.2.2", - "js-levenshtein": "^1.1.3", - "semver": "^5.3.0" + "@babel/helper-module-imports": "7.0.0", + "@babel/helper-plugin-utils": "7.0.0", + "@babel/plugin-proposal-async-generator-functions": "7.1.0", + "@babel/plugin-proposal-json-strings": "7.0.0", + "@babel/plugin-proposal-object-rest-spread": "7.0.0", + "@babel/plugin-proposal-optional-catch-binding": "7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "7.0.0", + "@babel/plugin-syntax-async-generators": "7.0.0", + "@babel/plugin-syntax-object-rest-spread": "7.0.0", + "@babel/plugin-syntax-optional-catch-binding": "7.0.0", + "@babel/plugin-transform-arrow-functions": "7.0.0", + "@babel/plugin-transform-async-to-generator": "7.1.0", + "@babel/plugin-transform-block-scoped-functions": "7.0.0", + "@babel/plugin-transform-block-scoping": "7.0.0", + "@babel/plugin-transform-classes": "7.1.0", + "@babel/plugin-transform-computed-properties": "7.0.0", + "@babel/plugin-transform-destructuring": "7.1.3", + "@babel/plugin-transform-dotall-regex": "7.0.0", + "@babel/plugin-transform-duplicate-keys": "7.0.0", + "@babel/plugin-transform-exponentiation-operator": "7.1.0", + "@babel/plugin-transform-for-of": "7.0.0", + "@babel/plugin-transform-function-name": "7.1.0", + "@babel/plugin-transform-literals": "7.0.0", + "@babel/plugin-transform-modules-amd": "7.1.0", + "@babel/plugin-transform-modules-commonjs": "7.1.0", + "@babel/plugin-transform-modules-systemjs": "7.1.3", + "@babel/plugin-transform-modules-umd": "7.1.0", + "@babel/plugin-transform-new-target": "7.0.0", + "@babel/plugin-transform-object-super": "7.1.0", + "@babel/plugin-transform-parameters": "7.1.0", + "@babel/plugin-transform-regenerator": "7.0.0", + "@babel/plugin-transform-shorthand-properties": "7.0.0", + "@babel/plugin-transform-spread": "7.0.0", + "@babel/plugin-transform-sticky-regex": "7.0.0", + "@babel/plugin-transform-template-literals": "7.0.0", + "@babel/plugin-transform-typeof-symbol": "7.0.0", + "@babel/plugin-transform-unicode-regex": "7.0.0", + "browserslist": "4.2.1", + "invariant": "2.2.4", + "js-levenshtein": "1.1.4", + "semver": "5.6.0" } }, "@babel/preset-react": { @@ -784,11 +784,11 @@ "integrity": "sha512-oayxyPS4Zj+hF6Et11BwuBkmpgT/zMxyuZgFrMeZID6Hdh3dGlk4sHCAhdBCpuCKW2ppBfl2uCCetlrUIJRY3w==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-transform-react-display-name": "^7.0.0", - "@babel/plugin-transform-react-jsx": "^7.0.0", - "@babel/plugin-transform-react-jsx-self": "^7.0.0", - "@babel/plugin-transform-react-jsx-source": "^7.0.0" + "@babel/helper-plugin-utils": "7.0.0", + "@babel/plugin-transform-react-display-name": "7.0.0", + "@babel/plugin-transform-react-jsx": "7.0.0", + "@babel/plugin-transform-react-jsx-self": "7.0.0", + "@babel/plugin-transform-react-jsx-source": "7.0.0" } }, "@babel/register": { @@ -796,13 +796,13 @@ "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.0.0.tgz", "integrity": "sha512-f/+CRmaCe7rVEvcvPvxeA8j5aJhHC3aJie7YuqcMDhUOuyWLA7J/aNrTaHIzoWPEhpHA54mec4Mm8fv8KBlv3g==", "requires": { - "core-js": "^2.5.7", - "find-cache-dir": "^1.0.0", - "home-or-tmp": "^3.0.0", - "lodash": "^4.17.10", - "mkdirp": "^0.5.1", - "pirates": "^4.0.0", - "source-map-support": "^0.5.9" + "core-js": "2.5.7", + "find-cache-dir": "1.0.0", + "home-or-tmp": "3.0.0", + "lodash": "4.17.11", + "mkdirp": "0.5.1", + "pirates": "4.0.0", + "source-map-support": "0.5.9" }, "dependencies": { "core-js": { @@ -817,7 +817,7 @@ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.1.2.tgz", "integrity": "sha512-Y3SCjmhSupzFB6wcv1KmmFucH6gDVnI30WjOcicV10ju0cZjak3Jcs67YLIXBrmZYw1xCrVeJPbycFwrqNyxpg==", "requires": { - "regenerator-runtime": "^0.12.0" + "regenerator-runtime": "0.12.1" } }, "@babel/template": { @@ -826,9 +826,9 @@ "integrity": "sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.1.2", - "@babel/types": "^7.1.2" + "@babel/code-frame": "7.0.0", + "@babel/parser": "7.1.3", + "@babel/types": "7.1.3" } }, "@babel/traverse": { @@ -837,15 +837,15 @@ "integrity": "sha512-my9mdrAIGdDiSVBuMjpn/oXYpva0/EZwWL3sm3Wcy/AVWO2eXnsoZruOT9jOGNRXU8KbCIu5zsKnXcAJ6PcV6Q==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.1.3", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/parser": "^7.1.3", - "@babel/types": "^7.1.3", - "debug": "^3.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.10" + "@babel/code-frame": "7.0.0", + "@babel/generator": "7.1.3", + "@babel/helper-function-name": "7.1.0", + "@babel/helper-split-export-declaration": "7.0.0", + "@babel/parser": "7.1.3", + "@babel/types": "7.1.3", + "debug": "3.2.6", + "globals": "11.8.0", + "lodash": "4.17.11" } }, "@babel/types": { @@ -854,9 +854,9 @@ "integrity": "sha512-RpPOVfK+yatXyn8n4PB1NW6k9qjinrXrRR8ugBN8fD6hCy5RXI6PSbVqpOJBO9oSaY7Nom4ohj35feb0UR9hSA==", "dev": true, "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.10", - "to-fast-properties": "^2.0.0" + "esutils": "2.0.2", + "lodash": "4.17.11", + "to-fast-properties": "2.0.0" } }, "@bugsnag/cuid": { @@ -874,7 +874,7 @@ "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport/-/hw-transport-4.24.0.tgz", "integrity": "sha512-L34TG1Ss7goRB+5BxtvBwUuu0CmDSIxS33oUqkpEy6rCs31k7XicV48iUGAnRnt8hNY2DvJ9WFyaOroUE9h6wQ==", "requires": { - "events": "^3.0.0" + "events": "3.0.0" }, "dependencies": { "events": { @@ -889,10 +889,10 @@ "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport-node-hid/-/hw-transport-node-hid-4.24.0.tgz", "integrity": "sha512-RA3ZlRM+6y/XL/sAFKUpuLIU5tsmEpDBwJEBKC+qdzG508Vl/kBJDMuQyo6pmx/YcKZrtjfKiXXQEXP9Fgk75w==", "requires": { - "@ledgerhq/hw-transport": "^4.24.0", - "lodash": "^4.17.11", - "node-hid": "^0.7.2", - "usb": "^1.3.3" + "@ledgerhq/hw-transport": "4.24.0", + "lodash": "4.17.11", + "node-hid": "0.7.3", + "usb": "1.3.3" } }, "@phc/format": { @@ -900,7 +900,7 @@ "resolved": "https://registry.npmjs.org/@phc/format/-/format-0.5.0.tgz", "integrity": "sha512-JWtZ5P1bfXU0bAtTzCpOLYHDXuxSVdtL/oqz4+xa97h8w9E5IlVN333wugXVFv8vZ1hbXObKQf1ptXmFFcMByg==", "requires": { - "safe-buffer": "^5.1.2" + "safe-buffer": "5.1.2" } }, "@types/node": { @@ -983,7 +983,7 @@ "integrity": "sha512-tOarWChdG1a3y1yqCX0JMDKzrat5tQe4pV6K/TX19BcXsBLYxFQOL1DEDa5KG9syeyvCrvZ+i1+Mv1ExngvktQ==", "dev": true, "requires": { - "@xtuc/ieee754": "^1.2.0" + "@xtuc/ieee754": "1.2.0" } }, "@webassemblyjs/leb128": { @@ -1104,7 +1104,7 @@ "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", "dev": true, "requires": { - "mime-types": "~2.1.18", + "mime-types": "2.1.20", "negotiator": "0.6.1" } }, @@ -1120,7 +1120,7 @@ "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", "dev": true, "requires": { - "acorn": "^5.0.0" + "acorn": "5.7.3" } }, "address": { @@ -1135,7 +1135,7 @@ "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", "dev": true, "requires": { - "es6-promisify": "^5.0.0" + "es6-promisify": "5.0.0" } }, "ajv": { @@ -1144,10 +1144,10 @@ "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "dev": true, "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" + "co": "4.6.0", + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" } }, "ajv-errors": { @@ -1168,7 +1168,7 @@ "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", "dev": true, "requires": { - "string-width": "^2.0.0" + "string-width": "2.1.1" }, "dependencies": { "ansi-regex": { @@ -1189,8 +1189,8 @@ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" } }, "strip-ansi": { @@ -1199,7 +1199,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "3.0.0" } } } @@ -1233,7 +1233,7 @@ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { - "color-convert": "^1.9.0" + "color-convert": "1.9.3" } }, "any-promise": { @@ -1247,8 +1247,8 @@ "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", "dev": true, "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" + "micromatch": "3.1.10", + "normalize-path": "2.1.1" } }, "aproba": { @@ -1261,19 +1261,18 @@ "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "delegates": "1.0.0", + "readable-stream": "2.3.6" } }, "argon2": { "version": "github:rihardsgravis/node-argon2#ae1a860bd4cf4f54643f209fdd7fcc20d97c543b", - "from": "github:rihardsgravis/node-argon2#prebuild-release", "requires": { - "@phc/format": "^0.5.0", - "any-promise": "^1.3.0", - "bindings": "^1.3.0", - "nan": "^2.10.0", - "prebuild-install": "^5.0.0" + "@phc/format": "0.5.0", + "any-promise": "1.3.0", + "bindings": "1.3.0", + "nan": "2.11.1", + "prebuild-install": "5.2.0" } }, "argparse": { @@ -1281,7 +1280,7 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "requires": { - "sprintf-js": "~1.0.2" + "sprintf-js": "1.0.3" } }, "arr-diff": { @@ -1332,21 +1331,6 @@ "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", "dev": true }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", @@ -1370,7 +1354,7 @@ "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", "dev": true, "requires": { - "safer-buffer": "~2.1.0" + "safer-buffer": "2.1.2" } }, "asn1.js": { @@ -1379,9 +1363,9 @@ "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", "dev": true, "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "bn.js": "4.11.8", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1" } }, "assert": { @@ -1427,7 +1411,7 @@ "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", "requires": { - "lodash": "^4.17.10" + "lodash": "4.17.11" } }, "async-each": { @@ -1465,8 +1449,8 @@ "resolved": "https://registry.npmjs.org/authenticator/-/authenticator-1.1.5.tgz", "integrity": "sha512-eaT0Trfxka28DkljLQDxuoSn9uDTaYIoXhZMsAw3Z54fNC7BMIsvIxfG6Y5s+y02CH59IIyY3p1EOMqeIpljWQ==", "requires": { - "authenticator-cli": "^1.0.5", - "notp": "^2.0.3", + "authenticator-cli": "1.0.5", + "notp": "2.0.3", "thirty-two": "0.0.2" }, "dependencies": { @@ -1475,9 +1459,9 @@ "resolved": "https://registry.npmjs.org/authenticator-cli/-/authenticator-cli-1.0.5.tgz", "integrity": "sha512-8FjXzLnytd93zE9IxtOr7/uptlxGBjQhWw6qEjPPLhfq1TqrUpaBEhPYOErtHWIPuveAgzHHEBgp2bh6GdQ6Ew==", "requires": { - "authenticator": "^1.1.0", - "cli": "^1.0.1", - "qrcode-terminal": "^0.12.0" + "authenticator": "1.1.5", + "cli": "1.0.1", + "qrcode-terminal": "0.12.0" } } } @@ -1500,9 +1484,9 @@ "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", "dev": true, "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" }, "dependencies": { "ansi-styles": { @@ -1517,11 +1501,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "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" + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" } }, "js-tokens": { @@ -1544,10 +1528,10 @@ "integrity": "sha512-fhBhNkUToJcW9nV46v8w87AJOwAJDz84c1CL57n3Stj73FANM/b9TbCUK4YhdOwEyZ+OxhYpdeZDNzSI29Firw==", "dev": true, "requires": { - "find-cache-dir": "^1.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1", - "util.promisify": "^1.0.0" + "find-cache-dir": "1.0.0", + "loader-utils": "1.1.0", + "mkdirp": "0.5.1", + "util.promisify": "1.0.0" } }, "babel-runtime": { @@ -1555,8 +1539,8 @@ "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" + "core-js": "2.5.7", + "regenerator-runtime": "0.11.1" }, "dependencies": { "core-js": { @@ -1587,13 +1571,13 @@ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "dev": true, "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" + "cache-base": "1.0.1", + "class-utils": "0.3.6", + "component-emitter": "1.2.1", + "define-property": "1.0.0", + "isobject": "3.0.1", + "mixin-deep": "1.3.1", + "pascalcase": "0.1.1" }, "dependencies": { "define-property": { @@ -1602,7 +1586,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "^1.0.0" + "is-descriptor": "1.0.2" } }, "is-accessor-descriptor": { @@ -1611,7 +1595,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "kind-of": "6.0.2" } }, "is-data-descriptor": { @@ -1620,7 +1604,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "kind-of": "6.0.2" } }, "is-descriptor": { @@ -1629,9 +1613,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" } } } @@ -1648,7 +1632,7 @@ "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", "dev": true, "requires": { - "tweetnacl": "^0.14.3" + "tweetnacl": "0.14.5" } }, "big.js": { @@ -1683,8 +1667,8 @@ "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "requires": { - "readable-stream": "^2.3.5", - "safe-buffer": "^5.1.1" + "readable-stream": "2.3.6", + "safe-buffer": "5.1.2" } }, "bluebird": { @@ -1705,15 +1689,15 @@ "dev": true, "requires": { "bytes": "3.0.0", - "content-type": "~1.0.4", + "content-type": "1.0.4", "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "~1.6.3", + "depd": "1.1.2", + "http-errors": "1.6.3", "iconv-lite": "0.4.23", - "on-finished": "~2.3.0", + "on-finished": "2.3.0", "qs": "6.5.2", "raw-body": "2.3.3", - "type-is": "~1.6.16" + "type-is": "1.6.16" }, "dependencies": { "debug": { @@ -1731,7 +1715,7 @@ "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", "dev": true, "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "safer-buffer": "2.1.2" } }, "ms": { @@ -1754,13 +1738,13 @@ "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", "dev": true, "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" + "ansi-align": "2.0.0", + "camelcase": "4.1.0", + "chalk": "2.4.1", + "cli-boxes": "1.0.0", + "string-width": "2.1.1", + "term-size": "1.2.0", + "widest-line": "2.0.1" }, "dependencies": { "ansi-regex": { @@ -1781,8 +1765,8 @@ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" } }, "strip-ansi": { @@ -1791,7 +1775,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "3.0.0" } } } @@ -1801,7 +1785,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "requires": { - "balanced-match": "^1.0.0", + "balanced-match": "1.0.0", "concat-map": "0.0.1" } }, @@ -1811,16 +1795,16 @@ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" + "arr-flatten": "1.1.0", + "array-unique": "0.3.2", + "extend-shallow": "2.0.1", + "fill-range": "4.0.0", + "isobject": "3.0.1", + "repeat-element": "1.1.3", + "snapdragon": "0.8.2", + "snapdragon-node": "2.1.1", + "split-string": "3.1.0", + "to-regex": "3.0.2" }, "dependencies": { "extend-shallow": { @@ -1829,7 +1813,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "is-extendable": "0.1.1" } } } @@ -1846,12 +1830,12 @@ "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "buffer-xor": "1.0.3", + "cipher-base": "1.0.4", + "create-hash": "1.2.0", + "evp_bytestokey": "1.0.3", + "inherits": "2.0.3", + "safe-buffer": "5.1.2" } }, "browserify-cipher": { @@ -1860,9 +1844,9 @@ "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "dev": true, "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" + "browserify-aes": "1.2.0", + "browserify-des": "1.0.2", + "evp_bytestokey": "1.0.3" } }, "browserify-des": { @@ -1871,10 +1855,10 @@ "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", "dev": true, "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "cipher-base": "1.0.4", + "des.js": "1.0.0", + "inherits": "2.0.3", + "safe-buffer": "5.1.2" } }, "browserify-rsa": { @@ -1883,8 +1867,8 @@ "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", "dev": true, "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" + "bn.js": "4.11.8", + "randombytes": "2.0.6" } }, "browserify-sign": { @@ -1893,13 +1877,13 @@ "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", "dev": true, "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.2.0", + "create-hmac": "1.1.7", + "elliptic": "6.4.1", + "inherits": "2.0.3", + "parse-asn1": "5.1.1" } }, "browserify-versionify": { @@ -1907,7 +1891,7 @@ "resolved": "https://registry.npmjs.org/browserify-versionify/-/browserify-versionify-1.0.6.tgz", "integrity": "sha1-qy3GHWoRnmJ77Eh1mNGYO3/bJ14=", "requires": { - "find-root": "^0.1.1", + "find-root": "0.1.2", "through2": "0.6.3" } }, @@ -1917,7 +1901,7 @@ "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, "requires": { - "pako": "~1.0.5" + "pako": "1.0.6" } }, "browserslist": { @@ -1926,9 +1910,9 @@ "integrity": "sha512-1oO0c7Zhejwd+LXihS89WqtKionSbz298rJZKJgfrHIZhrV8AC15gw553VcB0lcEugja7IhWD7iAlrsamfYVPA==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30000890", - "electron-to-chromium": "^1.3.79", - "node-releases": "^1.0.0-alpha.14" + "caniuse-lite": "1.0.30000893", + "electron-to-chromium": "1.3.79", + "node-releases": "1.0.0-alpha.14" } }, "buffer": { @@ -1937,9 +1921,9 @@ "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "dev": true, "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" + "base64-js": "1.2.0", + "ieee754": "1.1.12", + "isarray": "1.0.0" } }, "buffer-alloc": { @@ -1947,8 +1931,8 @@ "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" + "buffer-alloc-unsafe": "1.1.0", + "buffer-fill": "1.0.0" } }, "buffer-alloc-unsafe": { @@ -1978,13 +1962,13 @@ "integrity": "sha512-uYhbiTOEahw9+ewR4GYxHsBL7OSCbA8EtBnugtT27ZTU3dDZRPJWptzrlEe7O4blTSz7YcFCmTnaG+c5Ng04Jg==", "dev": true, "requires": { - "chalk": "^2.3.0", - "concat-stream": "^1.6.0", - "find-nearest-file": "^1.1.0", - "meow": "^4.0.0", - "minimist": "^1.2.0", - "pino": "^4.10.3", - "run-parallel": "^1.1.6" + "chalk": "2.4.1", + "concat-stream": "1.6.2", + "find-nearest-file": "1.1.0", + "meow": "4.0.1", + "minimist": "1.2.0", + "pino": "4.17.6", + "run-parallel": "1.1.9" } }, "bugsnag-js": { @@ -1992,12 +1976,12 @@ "resolved": "https://registry.npmjs.org/bugsnag-js/-/bugsnag-js-4.7.3.tgz", "integrity": "sha512-j9n6E45y8R0hx4A2IGkbOIEsDwRzZlhe+rtCfFo6RE6DgmTezeia+kqUMb4iitkSCZjEBMAPGhAe1l3vXfwbqQ==", "requires": { - "@bugsnag/cuid": "^3.0.0", - "@bugsnag/safe-json-stringify": "^2.1.0", - "browserify-versionify": "^1.0.6", - "error-stack-parser": "^2.0.2", + "@bugsnag/cuid": "3.0.0", + "@bugsnag/safe-json-stringify": "2.1.0", + "browserify-versionify": "1.0.6", + "error-stack-parser": "2.0.2", "iserror": "0.0.2", - "stack-generator": "^2.0.3" + "stack-generator": "2.0.3" } }, "bugsnag-react": { @@ -2011,12 +1995,12 @@ "integrity": "sha512-AUnvubm/gDYkpdvw/dq/oQlC2zR9EvZUukpr4bgeBSEFGLnE1sCs4GINXuw0HBgsYKJ3dq5zRFyndtGXK+5Odw==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", - "listr": "^0.12.0", - "meow": "^3.7.0", - "rc": "^1.2.1", - "read-pkg-up": "^2.0.0", - "request": "^2.79.0" + "graceful-fs": "4.1.11", + "listr": "0.12.0", + "meow": "3.7.0", + "rc": "1.2.8", + "read-pkg-up": "2.0.0", + "request": "2.88.0" }, "dependencies": { "camelcase": { @@ -2031,8 +2015,8 @@ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" + "camelcase": "2.1.1", + "map-obj": "1.0.1" } }, "find-up": { @@ -2041,8 +2025,8 @@ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "dev": true, "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" } }, "indent-string": { @@ -2051,7 +2035,7 @@ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", "dev": true, "requires": { - "repeating": "^2.0.0" + "repeating": "2.0.1" } }, "load-json-file": { @@ -2060,11 +2044,11 @@ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" } }, "map-obj": { @@ -2079,16 +2063,16 @@ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" + "camelcase-keys": "2.1.0", + "decamelize": "1.2.0", + "loud-rejection": "1.6.0", + "map-obj": "1.0.1", + "minimist": "1.2.0", + "normalize-package-data": "2.4.0", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "redent": "1.0.0", + "trim-newlines": "1.0.0" }, "dependencies": { "read-pkg-up": { @@ -2097,8 +2081,8 @@ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "dev": true, "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" + "find-up": "1.1.2", + "read-pkg": "1.1.0" } } } @@ -2109,7 +2093,7 @@ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { - "error-ex": "^1.2.0" + "error-ex": "1.3.2" } }, "path-exists": { @@ -2118,7 +2102,7 @@ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, "requires": { - "pinkie-promise": "^2.0.0" + "pinkie-promise": "2.0.1" } }, "path-type": { @@ -2127,9 +2111,9 @@ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" } }, "pify": { @@ -2144,9 +2128,9 @@ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", "dev": true, "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" } }, "read-pkg-up": { @@ -2155,8 +2139,8 @@ "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", "dev": true, "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" + "find-up": "2.1.0", + "read-pkg": "2.0.0" }, "dependencies": { "find-up": { @@ -2165,7 +2149,7 @@ "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { - "locate-path": "^2.0.0" + "locate-path": "2.0.0" } }, "load-json-file": { @@ -2174,10 +2158,10 @@ "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" } }, "path-type": { @@ -2186,7 +2170,7 @@ "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", "dev": true, "requires": { - "pify": "^2.0.0" + "pify": "2.3.0" } }, "read-pkg": { @@ -2195,9 +2179,9 @@ "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", "dev": true, "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" } }, "strip-bom": { @@ -2214,8 +2198,8 @@ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", "dev": true, "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" + "indent-string": "2.1.0", + "strip-indent": "1.0.1" } }, "strip-bom": { @@ -2224,7 +2208,7 @@ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", "dev": true, "requires": { - "is-utf8": "^0.2.0" + "is-utf8": "0.2.1" } }, "strip-indent": { @@ -2233,7 +2217,7 @@ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", "dev": true, "requires": { - "get-stdin": "^4.0.1" + "get-stdin": "4.0.1" } }, "trim-newlines": { @@ -2268,19 +2252,19 @@ "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", "dev": true, "requires": { - "bluebird": "^3.5.1", - "chownr": "^1.0.1", - "glob": "^7.1.2", - "graceful-fs": "^4.1.11", - "lru-cache": "^4.1.1", - "mississippi": "^2.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.2", - "ssri": "^5.2.4", - "unique-filename": "^1.1.0", - "y18n": "^4.0.0" + "bluebird": "3.5.2", + "chownr": "1.1.1", + "glob": "7.1.3", + "graceful-fs": "4.1.11", + "lru-cache": "4.1.3", + "mississippi": "2.0.0", + "mkdirp": "0.5.1", + "move-concurrently": "1.0.1", + "promise-inflight": "1.0.1", + "rimraf": "2.6.2", + "ssri": "5.3.0", + "unique-filename": "1.1.1", + "y18n": "4.0.0" } }, "cache-base": { @@ -2289,15 +2273,15 @@ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", "dev": true, "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" + "collection-visit": "1.0.0", + "component-emitter": "1.2.1", + "get-value": "2.0.6", + "has-value": "1.0.0", + "isobject": "3.0.1", + "set-value": "2.0.0", + "to-object-path": "0.3.0", + "union-value": "1.0.0", + "unset-value": "1.0.0" } }, "camel-case": { @@ -2306,8 +2290,8 @@ "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", "dev": true, "requires": { - "no-case": "^2.2.0", - "upper-case": "^1.1.1" + "no-case": "2.3.2", + "upper-case": "1.1.3" } }, "camelcase": { @@ -2322,9 +2306,9 @@ "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", "dev": true, "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" + "camelcase": "4.1.0", + "map-obj": "2.0.0", + "quick-lru": "1.1.0" } }, "caniuse-lite": { @@ -2351,9 +2335,9 @@ "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.5.0" } }, "character-entities": { @@ -2383,19 +2367,19 @@ "integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==", "dev": true, "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.0", - "braces": "^2.3.0", - "fsevents": "^1.2.2", - "glob-parent": "^3.1.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "lodash.debounce": "^4.0.8", - "normalize-path": "^2.1.1", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0", - "upath": "^1.0.5" + "anymatch": "2.0.0", + "async-each": "1.0.1", + "braces": "2.3.2", + "fsevents": "1.2.4", + "glob-parent": "3.1.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "4.0.0", + "lodash.debounce": "4.0.8", + "normalize-path": "2.1.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.2.1", + "upath": "1.1.0" } }, "chownr": { @@ -2409,7 +2393,7 @@ "integrity": "sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A==", "dev": true, "requires": { - "tslib": "^1.9.0" + "tslib": "1.9.3" } }, "chromium-pickle-js": { @@ -2430,8 +2414,8 @@ "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dev": true, "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "inherits": "2.0.3", + "safe-buffer": "5.1.2" } }, "class-utils": { @@ -2440,10 +2424,10 @@ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", "dev": true, "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "arr-union": "3.1.0", + "define-property": "0.2.5", + "isobject": "3.0.1", + "static-extend": "0.1.2" }, "dependencies": { "define-property": { @@ -2452,7 +2436,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "is-descriptor": "0.1.6" } } } @@ -2468,7 +2452,7 @@ "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", "dev": true, "requires": { - "source-map": "~0.6.0" + "source-map": "0.6.1" } }, "cli": { @@ -2477,7 +2461,7 @@ "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=", "requires": { "exit": "0.1.2", - "glob": "^7.1.1" + "glob": "7.1.3" } }, "cli-boxes": { @@ -2492,7 +2476,7 @@ "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", "dev": true, "requires": { - "restore-cursor": "^1.0.1" + "restore-cursor": "1.0.1" } }, "cli-spinners": { @@ -2508,7 +2492,7 @@ "dev": true, "requires": { "slice-ansi": "0.0.4", - "string-width": "^1.0.1" + "string-width": "1.0.2" } }, "cli-width": { @@ -2523,9 +2507,9 @@ "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", "dev": true, "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" + "string-width": "2.1.1", + "strip-ansi": "4.0.0", + "wrap-ansi": "2.1.0" }, "dependencies": { "ansi-regex": { @@ -2546,8 +2530,8 @@ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" } }, "strip-ansi": { @@ -2556,7 +2540,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "3.0.0" } } } @@ -2572,10 +2556,10 @@ "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==", "dev": true, "requires": { - "for-own": "^1.0.0", - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.0", - "shallow-clone": "^1.0.0" + "for-own": "1.0.0", + "is-plain-object": "2.0.4", + "kind-of": "6.0.2", + "shallow-clone": "1.0.0" } }, "co": { @@ -2600,8 +2584,8 @@ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "dev": true, "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" + "map-visit": "1.0.0", + "object-visit": "1.0.1" } }, "color-convert": { @@ -2625,7 +2609,7 @@ "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", "dev": true, "requires": { - "delayed-stream": "~1.0.0" + "delayed-stream": "1.0.0" } }, "commander": { @@ -2662,10 +2646,10 @@ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" + "buffer-from": "1.1.1", + "inherits": "2.0.3", + "readable-stream": "2.3.6", + "typedarray": "0.0.6" } }, "concurrently": { @@ -2674,15 +2658,15 @@ "integrity": "sha512-D8UI+mlI/bfvrA57SeKOht6sEpb01dKk+8Yee4fbnkk1Ue8r3S+JXoEdFZIpzQlXJGtnxo47Wvvg/kG4ba3U6Q==", "dev": true, "requires": { - "chalk": "^2.4.1", - "date-fns": "^1.23.0", - "lodash": "^4.17.10", - "read-pkg": "^4.0.1", + "chalk": "2.4.1", + "date-fns": "1.29.0", + "lodash": "4.17.11", + "read-pkg": "4.0.1", "rxjs": "6.2.2", - "spawn-command": "^0.0.2-1", - "supports-color": "^4.5.0", - "tree-kill": "^1.1.0", - "yargs": "^12.0.1" + "spawn-command": "0.0.2-1", + "supports-color": "4.5.0", + "tree-kill": "1.2.0", + "yargs": "12.0.2" }, "dependencies": { "has-flag": { @@ -2697,9 +2681,9 @@ "integrity": "sha1-ljYlN48+HE1IyFhytabsfV0JMjc=", "dev": true, "requires": { - "normalize-package-data": "^2.3.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0" + "normalize-package-data": "2.4.0", + "parse-json": "4.0.0", + "pify": "3.0.0" } }, "rxjs": { @@ -2708,7 +2692,7 @@ "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==", "dev": true, "requires": { - "tslib": "^1.9.0" + "tslib": "1.9.3" } }, "supports-color": { @@ -2717,7 +2701,7 @@ "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", "dev": true, "requires": { - "has-flag": "^2.0.0" + "has-flag": "2.0.0" } } } @@ -2728,12 +2712,12 @@ "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", "dev": true, "requires": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" + "dot-prop": "4.2.0", + "graceful-fs": "4.1.11", + "make-dir": "1.3.0", + "unique-string": "1.0.0", + "write-file-atomic": "2.3.0", + "xdg-basedir": "3.0.0" } }, "console-browserify": { @@ -2742,7 +2726,7 @@ "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", "dev": true, "requires": { - "date-now": "^0.1.4" + "date-now": "0.1.4" } }, "console-control-strings": { @@ -2774,7 +2758,7 @@ "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", "dev": true, "requires": { - "safe-buffer": "~5.1.1" + "safe-buffer": "5.1.2" } }, "cookie": { @@ -2795,12 +2779,12 @@ "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", "dev": true, "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" + "aproba": "1.2.0", + "fs-write-stream-atomic": "1.0.10", + "iferr": "0.1.5", + "mkdirp": "0.5.1", + "rimraf": "2.6.2", + "run-queue": "1.0.3" } }, "copy-descriptor": { @@ -2809,22 +2793,6 @@ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", "dev": true }, - "copy-webpack-plugin": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.5.3.tgz", - "integrity": "sha512-VKCiNXQcc8zyznaepXfKpCH2cZD+/j3T3B+gsFY97P7qMlEsj34wr/sI9OCG7QPUUh7gAHVx3q8Q1rdQIDM4bA==", - "dev": true, - "requires": { - "cacache": "^10.0.4", - "find-cache-dir": "^1.0.0", - "globby": "^7.1.1", - "is-glob": "^4.0.0", - "loader-utils": "^1.1.0", - "minimatch": "^3.0.4", - "p-limit": "^1.0.0", - "serialize-javascript": "^1.4.0" - } - }, "core-js": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", @@ -2841,8 +2809,8 @@ "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", "dev": true, "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" + "bn.js": "4.11.8", + "elliptic": "6.4.1" } }, "create-error-class": { @@ -2851,7 +2819,7 @@ "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", "dev": true, "requires": { - "capture-stack-trace": "^1.0.0" + "capture-stack-trace": "1.0.1" } }, "create-hash": { @@ -2860,11 +2828,11 @@ "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "cipher-base": "1.0.4", + "inherits": "2.0.3", + "md5.js": "1.3.5", + "ripemd160": "2.0.2", + "sha.js": "2.4.11" } }, "create-hmac": { @@ -2873,12 +2841,12 @@ "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "cipher-base": "1.0.4", + "create-hash": "1.2.0", + "inherits": "2.0.3", + "ripemd160": "2.0.2", + "safe-buffer": "5.1.2", + "sha.js": "2.4.11" } }, "create-react-context": { @@ -2886,8 +2854,8 @@ "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.2.3.tgz", "integrity": "sha512-CQBmD0+QGgTaxDL3OX1IDXYqjkp2It4RIbcb99jS6AEg27Ga+a9G3JtK6SIu0HBwPLZlmwt9F7UwWA4Bn92Rag==", "requires": { - "fbjs": "^0.8.0", - "gud": "^1.0.0" + "fbjs": "0.8.17", + "gud": "1.0.0" } }, "cross-env": { @@ -2896,8 +2864,8 @@ "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", "dev": true, "requires": { - "cross-spawn": "^6.0.5", - "is-windows": "^1.0.0" + "cross-spawn": "6.0.5", + "is-windows": "1.0.2" } }, "cross-spawn": { @@ -2906,11 +2874,11 @@ "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dev": true, "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "nice-try": "1.0.5", + "path-key": "2.0.1", + "semver": "5.6.0", + "shebang-command": "1.2.0", + "which": "1.3.1" } }, "cross-unzip": { @@ -2925,17 +2893,17 @@ "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" + "browserify-cipher": "1.0.1", + "browserify-sign": "4.0.4", + "create-ecdh": "4.0.3", + "create-hash": "1.2.0", + "create-hmac": "1.1.7", + "diffie-hellman": "5.0.3", + "inherits": "2.0.3", + "pbkdf2": "3.0.17", + "public-encrypt": "4.0.3", + "randombytes": "2.0.6", + "randomfill": "1.0.4" } }, "crypto-js": { @@ -2955,18 +2923,18 @@ "integrity": "sha512-tMXlTYf3mIMt3b0dDCOQFJiVvxbocJ5Ho577WiGPYPZcqVEO218L2iU22pDXzkTZCLDE+9AmGSUkWxeh/nZReA==", "dev": true, "requires": { - "babel-code-frame": "^6.26.0", - "css-selector-tokenizer": "^0.7.0", - "icss-utils": "^2.1.0", - "loader-utils": "^1.0.2", - "lodash.camelcase": "^4.3.0", - "postcss": "^6.0.23", - "postcss-modules-extract-imports": "^1.2.0", - "postcss-modules-local-by-default": "^1.2.0", - "postcss-modules-scope": "^1.1.0", - "postcss-modules-values": "^1.3.0", - "postcss-value-parser": "^3.3.0", - "source-list-map": "^2.0.0" + "babel-code-frame": "6.26.0", + "css-selector-tokenizer": "0.7.0", + "icss-utils": "2.1.0", + "loader-utils": "1.1.0", + "lodash.camelcase": "4.3.0", + "postcss": "6.0.23", + "postcss-modules-extract-imports": "1.2.0", + "postcss-modules-local-by-default": "1.2.0", + "postcss-modules-scope": "1.1.0", + "postcss-modules-values": "1.3.0", + "postcss-value-parser": "3.3.1", + "source-list-map": "2.0.1" } }, "css-select": { @@ -2975,10 +2943,10 @@ "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", "dev": true, "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", + "boolbase": "1.0.0", + "css-what": "2.1.0", "domutils": "1.5.1", - "nth-check": "~1.0.1" + "nth-check": "1.0.1" } }, "css-selector-tokenizer": { @@ -2987,9 +2955,9 @@ "integrity": "sha1-5piEdK6MlTR3v15+/s/OzNnPTIY=", "dev": true, "requires": { - "cssesc": "^0.1.0", - "fastparse": "^1.1.1", - "regexpu-core": "^1.0.0" + "cssesc": "0.1.0", + "fastparse": "1.1.1", + "regexpu-core": "1.0.0" }, "dependencies": { "jsesc": { @@ -3004,9 +2972,9 @@ "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", "dev": true, "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" + "regenerate": "1.4.0", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" } }, "regjsgen": { @@ -3021,7 +2989,7 @@ "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", "dev": true, "requires": { - "jsesc": "~0.5.0" + "jsesc": "0.5.0" } } } @@ -3044,7 +3012,7 @@ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", "dev": true, "requires": { - "array-find-index": "^1.0.1" + "array-find-index": "1.0.2" } }, "cyclist": { @@ -3078,7 +3046,7 @@ "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.3.2.tgz", "integrity": "sha512-NlNKGopqaz9qM1PXh9gBF1KSCVh+jSFErrSlD/4hybwoNX/gt1d8CDbDW+3i+5UOHhjC6s6nMvRxcuoMVNgL2w==", "requires": { - "d3-color": "1" + "d3-color": "1.2.3" } }, "d3-path": { @@ -3091,12 +3059,12 @@ "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-2.1.2.tgz", "integrity": "sha512-bESpd64ylaKzCDzvULcmHKZTlzA/6DGSVwx7QSDj/EnX9cpSevsdiwdHFYI9ouo9tNBbV3v5xztHS2uFeOzh8Q==", "requires": { - "d3-array": "^1.2.0", - "d3-collection": "1", - "d3-format": "1", - "d3-interpolate": "1", - "d3-time": "1", - "d3-time-format": "2" + "d3-array": "1.2.4", + "d3-collection": "1.0.7", + "d3-format": "1.3.2", + "d3-interpolate": "1.3.2", + "d3-time": "1.0.10", + "d3-time-format": "2.1.3" } }, "d3-shape": { @@ -3104,7 +3072,7 @@ "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.2.2.tgz", "integrity": "sha512-hUGEozlKecFZ2bOSNt7ENex+4Tk9uc/m0TtTEHBvitCBxUNjhzm5hS2GrrVRD/ae4IylSmxGeqX5tWC2rASMlQ==", "requires": { - "d3-path": "1" + "d3-path": "1.0.7" } }, "d3-time": { @@ -3117,7 +3085,7 @@ "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.1.3.tgz", "integrity": "sha512-6k0a2rZryzGm5Ihx+aFMuO1GgelgIz+7HhB4PH4OEndD5q2zGn1mDfRdNrulspOfR6JXkb2sThhDK41CSK85QA==", "requires": { - "d3-time": "1" + "d3-time": "1.0.10" } }, "dart-sass": { @@ -3126,7 +3094,7 @@ "integrity": "sha512-vFKMG9DvUB5vgquFbSRD6D5oM9FqiWjKjBlAWjdm9sIOakz7uJpL76h+gDsFliAtbcA2F+CLyJuyuEQC9ETJlw==", "dev": true, "requires": { - "chokidar": "^2.0.0" + "chokidar": "2.0.4" } }, "dashdash": { @@ -3135,7 +3103,7 @@ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "dev": true, "requires": { - "assert-plus": "^1.0.0" + "assert-plus": "1.0.0" } }, "date-fns": { @@ -3156,7 +3124,7 @@ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.1" } }, "decamelize": { @@ -3171,8 +3139,8 @@ "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", "dev": true, "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" + "decamelize": "1.2.0", + "map-obj": "1.0.1" }, "dependencies": { "map-obj": { @@ -3199,7 +3167,7 @@ "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", "requires": { - "mimic-response": "^1.0.0" + "mimic-response": "1.0.1" } }, "deep-extend": { @@ -3213,7 +3181,7 @@ "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, "requires": { - "object-keys": "^1.0.12" + "object-keys": "1.0.12" } }, "define-property": { @@ -3222,8 +3190,8 @@ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" + "is-descriptor": "1.0.2", + "isobject": "3.0.1" }, "dependencies": { "is-accessor-descriptor": { @@ -3232,7 +3200,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "kind-of": "6.0.2" } }, "is-data-descriptor": { @@ -3241,7 +3209,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "kind-of": "6.0.2" } }, "is-descriptor": { @@ -3250,9 +3218,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" } } } @@ -3280,8 +3248,8 @@ "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", "dev": true, "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1" } }, "destroy": { @@ -3301,8 +3269,8 @@ "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", "dev": true, "requires": { - "address": "^1.0.1", - "debug": "^2.6.0" + "address": "1.0.3", + "debug": "2.6.9" }, "dependencies": { "debug": { @@ -3328,19 +3296,9 @@ "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "dev": true, "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" + "bn.js": "4.11.8", + "miller-rabin": "4.0.1", + "randombytes": "2.0.6" } }, "dom-converter": { @@ -3349,7 +3307,7 @@ "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", "dev": true, "requires": { - "utila": "~0.4" + "utila": "0.4.0" } }, "dom-helpers": { @@ -3361,15 +3319,17 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", + "dev": true, "requires": { - "domelementtype": "~1.1.1", - "entities": "~1.1.1" + "domelementtype": "1.1.3", + "entities": "1.1.1" }, "dependencies": { "domelementtype": { "version": "1.1.3", "resolved": "http://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", - "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=" + "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", + "dev": true } } }, @@ -3382,7 +3342,8 @@ "domelementtype": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz", - "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=" + "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=", + "dev": true }, "domhandler": { "version": "2.1.0", @@ -3390,16 +3351,17 @@ "integrity": "sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ=", "dev": true, "requires": { - "domelementtype": "1" + "domelementtype": "1.3.0" } }, "domutils": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, "requires": { - "dom-serializer": "0", - "domelementtype": "1" + "dom-serializer": "0.1.0", + "domelementtype": "1.3.0" } }, "dot-prop": { @@ -3408,7 +3370,7 @@ "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", "dev": true, "requires": { - "is-obj": "^1.0.0" + "is-obj": "1.0.1" } }, "dotenv": { @@ -3441,10 +3403,10 @@ "integrity": "sha512-vM58DwdnKmty+FSPzT14K9JXb90H+j5emaR4KYbr2KTIz00WHGbWOe5ghQTx233ZCLZtrGDALzKwcjEtSt35mA==", "dev": true, "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" + "end-of-stream": "1.4.1", + "inherits": "2.0.3", + "readable-stream": "2.3.6", + "stream-shift": "1.0.0" } }, "ecc-jsbn": { @@ -3453,8 +3415,8 @@ "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", "dev": true, "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" + "jsbn": "0.1.1", + "safer-buffer": "2.1.2" } }, "ee-first": { @@ -3475,9 +3437,9 @@ "integrity": "sha512-I39IeQP3NOlbjKzTDK8uK2JdiHDfhV5SruCS2Gttkn2MaKCY+yIzQ6Wr4DyBXLeTEkL1sbZxbqQVhCavAliv5w==", "dev": true, "requires": { - "@types/node": "^8.0.24", - "electron-download": "^4.1.0", - "extract-zip": "^1.0.3" + "@types/node": "8.10.36", + "electron-download": "4.1.1", + "extract-zip": "1.6.7" } }, "electron-builder": { @@ -3487,18 +3449,18 @@ "dev": true, "requires": { "app-builder-lib": "20.38.0", - "bluebird-lst": "^1.0.6", + "bluebird-lst": "1.0.6", "builder-util": "9.5.0", "builder-util-runtime": "8.0.2", - "chalk": "^2.4.1", + "chalk": "2.4.1", "dmg-builder": "6.5.1", - "fs-extra-p": "^7.0.0", - "is-ci": "^1.2.1", - "lazy-val": "^1.0.3", + "fs-extra-p": "7.0.0", + "is-ci": "1.2.1", + "lazy-val": "1.0.3", "read-config-file": "3.2.0", - "sanitize-filename": "^1.6.1", - "update-notifier": "^2.5.0", - "yargs": "^12.0.5" + "sanitize-filename": "1.6.1", + "update-notifier": "2.5.0", + "yargs": "12.0.5" }, "dependencies": { "7zip-bin": { @@ -3513,10 +3475,10 @@ "integrity": "sha512-ZCIMdm75ps9usdeb0GQL9rKOUlTtS0p0vU2nQVXgRIu6Yb00G9GY7AvbVLwTQ5Po4JDKIwJlT5nwggoRDrDVAw==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "fast-deep-equal": "2.0.1", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" } }, "ansi-regex": { @@ -3537,30 +3499,30 @@ "integrity": "sha512-QhS+hFhdVQYjHsl3CrfOrRH+4JcHGbXKqEAougA3OXlbuYmR9w/6qDDTWYDdQg/xtWx7LBbPccfIYYP6LiEJ0Q==", "dev": true, "requires": { - "7zip-bin": "~4.1.0", + "7zip-bin": "4.1.0", "app-builder-bin": "2.5.5", - "async-exit-hook": "^2.0.1", - "bluebird-lst": "^1.0.6", + "async-exit-hook": "2.0.1", + "bluebird-lst": "1.0.6", "builder-util": "9.5.0", "builder-util-runtime": "8.0.2", - "chromium-pickle-js": "^0.2.0", - "debug": "^4.1.0", - "ejs": "^2.6.1", + "chromium-pickle-js": "0.2.0", + "debug": "4.1.0", + "ejs": "2.6.1", "electron-osx-sign": "0.4.11", "electron-publish": "20.38.0", - "fs-extra-p": "^7.0.0", - "hosted-git-info": "^2.7.1", - "is-ci": "^1.2.1", - "isbinaryfile": "^3.0.3", - "js-yaml": "^3.12.0", - "lazy-val": "^1.0.3", - "minimatch": "^3.0.4", - "normalize-package-data": "^2.4.0", - "plist": "^3.0.1", + "fs-extra-p": "7.0.0", + "hosted-git-info": "2.7.1", + "is-ci": "1.2.1", + "isbinaryfile": "3.0.3", + "js-yaml": "3.12.0", + "lazy-val": "1.0.3", + "minimatch": "3.0.4", + "normalize-package-data": "2.4.0", + "plist": "3.0.1", "read-config-file": "3.2.0", - "sanitize-filename": "^1.6.1", - "semver": "^5.6.0", - "temp-file": "^3.3.2" + "sanitize-filename": "1.6.1", + "semver": "5.6.0", + "temp-file": "3.3.2" } }, "bluebird-lst": { @@ -3569,7 +3531,7 @@ "integrity": "sha512-CBWFoPuUPpcvMUxfyr8DKdI5d4kjxFl1h39+VbKxP3KJWJHEsLtuT4pPLkjpxCGU6Ask21tvbnftWXdqIxYldQ==", "dev": true, "requires": { - "bluebird": "^3.5.2" + "bluebird": "3.5.2" } }, "builder-util": { @@ -3578,18 +3540,18 @@ "integrity": "sha512-1YIozlovksOa3xegMTO9wibqmYzFJ7RNfSbr4IbmXA81Czqgl5hezqDS2luvgH+qMa/Ra4fE8k202fdzvfEEkw==", "dev": true, "requires": { - "7zip-bin": "~4.1.0", + "7zip-bin": "4.1.0", "app-builder-bin": "2.5.5", - "bluebird-lst": "^1.0.6", - "builder-util-runtime": "^8.0.2", - "chalk": "^2.4.1", - "debug": "^4.1.0", - "fs-extra-p": "^7.0.0", - "is-ci": "^1.2.1", - "js-yaml": "^3.12.0", - "source-map-support": "^0.5.9", - "stat-mode": "^0.2.2", - "temp-file": "^3.3.2" + "bluebird-lst": "1.0.6", + "builder-util-runtime": "8.0.2", + "chalk": "2.4.1", + "debug": "4.1.0", + "fs-extra-p": "7.0.0", + "is-ci": "1.2.1", + "js-yaml": "3.12.0", + "source-map-support": "0.5.9", + "stat-mode": "0.2.2", + "temp-file": "3.3.2" } }, "builder-util-runtime": { @@ -3598,10 +3560,10 @@ "integrity": "sha512-46AjyMQ1/yBvGnXWmqNGlg8te7jCPCs7TJ0zDC2+4vV/t5iZp2dR1H9UfVpcBxlvBq3dlAOmwb9fz1d9xZN1+Q==", "dev": true, "requires": { - "bluebird-lst": "^1.0.6", - "debug": "^4.1.0", - "fs-extra-p": "^7.0.0", - "sax": "^1.2.4" + "bluebird-lst": "1.0.6", + "debug": "4.1.0", + "fs-extra-p": "7.0.0", + "sax": "1.2.4" } }, "camelcase": { @@ -3616,7 +3578,7 @@ "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.1" } }, "dmg-builder": { @@ -3625,14 +3587,14 @@ "integrity": "sha512-7Nn0jDO9uzwSOuldOrWaVqvNp4QtjCO/L4wJsAvEP9l8baAgQO1t7cdvd8Qjz0zhPet99vWVihmPlvOFeg4QOA==", "dev": true, "requires": { - "app-builder-lib": "~20.38.0", - "bluebird-lst": "^1.0.6", - "builder-util": "~9.5.0", - "fs-extra-p": "^7.0.0", - "iconv-lite": "^0.4.24", - "js-yaml": "^3.12.0", - "parse-color": "^1.0.0", - "sanitize-filename": "^1.6.1" + "app-builder-lib": "20.38.0", + "bluebird-lst": "1.0.6", + "builder-util": "9.5.0", + "fs-extra-p": "7.0.0", + "iconv-lite": "0.4.24", + "js-yaml": "3.12.0", + "parse-color": "1.0.0", + "sanitize-filename": "1.6.1" } }, "electron-osx-sign": { @@ -3641,12 +3603,12 @@ "integrity": "sha512-VVd40nrnVqymvFrY9ZkOYgHJOvexHHYTR3di/SN+mjJ0OWhR1I8BRVj3U+Yamw6hnkZZNKZp52rqL5EFAAPFkQ==", "dev": true, "requires": { - "bluebird": "^3.5.0", - "compare-version": "^0.1.2", - "debug": "^2.6.8", - "isbinaryfile": "^3.0.2", - "minimist": "^1.2.0", - "plist": "^3.0.1" + "bluebird": "3.5.2", + "compare-version": "0.1.2", + "debug": "2.6.9", + "isbinaryfile": "3.0.3", + "minimist": "1.2.0", + "plist": "3.0.1" }, "dependencies": { "debug": { @@ -3672,13 +3634,13 @@ "integrity": "sha512-mdfn+Ckx6RVQ46lCPxfsW09+0nVDtHAs6qqzFjKvo8TLv4P01lT/1XycXU/7B8oDUldoDsE906I24gjSypMqJw==", "dev": true, "requires": { - "bluebird-lst": "^1.0.6", - "builder-util": "~9.5.0", - "builder-util-runtime": "^8.0.2", - "chalk": "^2.4.1", - "fs-extra-p": "^7.0.0", - "lazy-val": "^1.0.3", - "mime": "^2.4.0" + "bluebird-lst": "1.0.6", + "builder-util": "9.5.0", + "builder-util-runtime": "8.0.2", + "chalk": "2.4.1", + "fs-extra-p": "7.0.0", + "lazy-val": "1.0.3", + "mime": "2.4.0" } }, "fast-deep-equal": { @@ -3693,7 +3655,7 @@ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "3.0.0" } }, "fs-extra": { @@ -3702,9 +3664,9 @@ "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "graceful-fs": "4.1.11", + "jsonfile": "4.0.0", + "universalify": "0.1.2" } }, "fs-extra-p": { @@ -3713,8 +3675,8 @@ "integrity": "sha512-5tg5jBOd0xIXjwj4PDnafOXL5TyPVzjxLby4DPKev53wurEXp7IsojBaD4Lj5M5w7jxw0pbkEU0fFEPmcKoMnA==", "dev": true, "requires": { - "bluebird-lst": "^1.0.6", - "fs-extra": "^7.0.0" + "bluebird-lst": "1.0.6", + "fs-extra": "7.0.1" } }, "is-fullwidth-code-point": { @@ -3735,7 +3697,7 @@ "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", "dev": true, "requires": { - "minimist": "^1.2.0" + "minimist": "1.2.0" } }, "locate-path": { @@ -3744,8 +3706,8 @@ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "3.0.0", + "path-exists": "3.0.0" } }, "mime": { @@ -3760,7 +3722,7 @@ "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", "dev": true, "requires": { - "p-try": "^2.0.0" + "p-try": "2.0.0" } }, "p-locate": { @@ -3769,7 +3731,7 @@ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { - "p-limit": "^2.0.0" + "p-limit": "2.0.0" } }, "p-try": { @@ -3784,15 +3746,15 @@ "integrity": "sha512-i1QRc5jy4sHm9YBGb6ArA5SU1mDrc5wu2mnm3r9gPnm+LVZhBGbpTCKqAXyvV4TJHnBR3Yaaww+9b3DyRZcfww==", "dev": true, "requires": { - "ajv": "^6.5.5", - "ajv-keywords": "^3.2.0", - "bluebird-lst": "^1.0.6", - "dotenv": "^6.1.0", - "dotenv-expand": "^4.2.0", - "fs-extra-p": "^7.0.0", - "js-yaml": "^3.12.0", - "json5": "^2.1.0", - "lazy-val": "^1.0.3" + "ajv": "6.6.0", + "ajv-keywords": "3.2.0", + "bluebird-lst": "1.0.6", + "dotenv": "6.1.0", + "dotenv-expand": "4.2.0", + "fs-extra-p": "7.0.0", + "js-yaml": "3.12.0", + "json5": "2.1.0", + "lazy-val": "1.0.3" } }, "string-width": { @@ -3801,8 +3763,8 @@ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" } }, "strip-ansi": { @@ -3811,7 +3773,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "3.0.0" } }, "temp-file": { @@ -3820,9 +3782,9 @@ "integrity": "sha512-FGKccAW0Mux9hC/2bdUIe4bJRv4OyVo4RpVcuplFird1V/YoplIFbnPZjfzbJSf/qNvRZIRB9/4n/RkI0GziuQ==", "dev": true, "requires": { - "async-exit-hook": "^2.0.1", - "bluebird-lst": "^1.0.6", - "fs-extra-p": "^7.0.0" + "async-exit-hook": "2.0.1", + "bluebird-lst": "1.0.6", + "fs-extra-p": "7.0.0" } }, "yargs": { @@ -3831,18 +3793,18 @@ "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", "dev": true, "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "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 || ^4.0.0", - "yargs-parser": "^11.1.1" + "cliui": "4.1.0", + "decamelize": "1.2.0", + "find-up": "3.0.0", + "get-caller-file": "1.0.3", + "os-locale": "3.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "4.0.0", + "yargs-parser": "11.1.1" } }, "yargs-parser": { @@ -3851,8 +3813,8 @@ "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", "dev": true, "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "camelcase": "5.0.0", + "decamelize": "1.2.0" } } } @@ -3865,8 +3827,8 @@ "requires": { "7zip": "0.0.6", "cross-unzip": "0.0.2", - "rimraf": "^2.5.2", - "semver": "^5.3.0" + "rimraf": "2.6.2", + "semver": "5.6.0" } }, "electron-download": { @@ -3875,15 +3837,15 @@ "integrity": "sha512-FjEWG9Jb/ppK/2zToP+U5dds114fM1ZOJqMAR4aXXL5CvyPE9fiqBK/9YcwC9poIFQTEJk/EM/zyRwziziRZrg==", "dev": true, "requires": { - "debug": "^3.0.0", - "env-paths": "^1.0.0", - "fs-extra": "^4.0.1", - "minimist": "^1.2.0", - "nugget": "^2.0.1", - "path-exists": "^3.0.0", - "rc": "^1.2.1", - "semver": "^5.4.1", - "sumchecker": "^2.0.2" + "debug": "3.2.6", + "env-paths": "1.0.0", + "fs-extra": "4.0.3", + "minimist": "1.2.0", + "nugget": "2.0.1", + "path-exists": "3.0.0", + "rc": "1.2.8", + "semver": "5.6.0", + "sumchecker": "2.0.2" }, "dependencies": { "fs-extra": { @@ -3892,9 +3854,9 @@ "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "graceful-fs": "4.1.11", + "jsonfile": "4.0.0", + "universalify": "0.1.2" } } } @@ -3910,8 +3872,8 @@ "resolved": "https://registry.npmjs.org/electron-settings/-/electron-settings-3.2.0.tgz", "integrity": "sha512-7U+vDKd5Gch4Z9K6FjGq80eB3Anwz2GuPc2h/6hOiuvZrS1w+UNPcAA0oAU8G1s9sWAVEadCsr4ZJR6J4iTdzA==", "requires": { - "clone": "^2.1.1", - "jsonfile": "^4.0.0" + "clone": "2.1.2", + "jsonfile": "4.0.0" } }, "electron-to-chromium": { @@ -3925,15 +3887,15 @@ "resolved": "https://registry.npmjs.org/electron-updater/-/electron-updater-4.0.4.tgz", "integrity": "sha512-y3wddJQyC5h1UTJhNAWoX4McJ5Z1r1ZDqyifpYWniVS286YCXe1xSLkbe9C6ZzxzPurt1jg2ZubPuBNt/811Dw==", "requires": { - "bluebird-lst": "^1.0.6", - "builder-util-runtime": "~8.0.2", - "fs-extra-p": "^7.0.0", - "js-yaml": "^3.12.0", - "lazy-val": "^1.0.3", - "lodash.isequal": "^4.5.0", - "pako": "^1.0.6", - "semver": "^5.6.0", - "source-map-support": "^0.5.9" + "bluebird-lst": "1.0.6", + "builder-util-runtime": "8.0.2", + "fs-extra-p": "7.0.0", + "js-yaml": "3.12.0", + "lazy-val": "1.0.3", + "lodash.isequal": "4.5.0", + "pako": "1.0.6", + "semver": "5.6.0", + "source-map-support": "0.5.9" }, "dependencies": { "bluebird-lst": { @@ -3941,7 +3903,7 @@ "resolved": "https://registry.npmjs.org/bluebird-lst/-/bluebird-lst-1.0.6.tgz", "integrity": "sha512-CBWFoPuUPpcvMUxfyr8DKdI5d4kjxFl1h39+VbKxP3KJWJHEsLtuT4pPLkjpxCGU6Ask21tvbnftWXdqIxYldQ==", "requires": { - "bluebird": "^3.5.2" + "bluebird": "3.5.2" } }, "builder-util-runtime": { @@ -3949,10 +3911,10 @@ "resolved": "https://registry.npmjs.org/builder-util-runtime/-/builder-util-runtime-8.0.2.tgz", "integrity": "sha512-46AjyMQ1/yBvGnXWmqNGlg8te7jCPCs7TJ0zDC2+4vV/t5iZp2dR1H9UfVpcBxlvBq3dlAOmwb9fz1d9xZN1+Q==", "requires": { - "bluebird-lst": "^1.0.6", - "debug": "^4.1.0", - "fs-extra-p": "^7.0.0", - "sax": "^1.2.4" + "bluebird-lst": "1.0.6", + "debug": "4.1.0", + "fs-extra-p": "7.0.0", + "sax": "1.2.4" } }, "debug": { @@ -3960,7 +3922,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", "requires": { - "ms": "^2.1.1" + "ms": "2.1.1" } }, "fs-extra": { @@ -3968,9 +3930,9 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "graceful-fs": "4.1.11", + "jsonfile": "4.0.0", + "universalify": "0.1.2" } }, "fs-extra-p": { @@ -3978,8 +3940,8 @@ "resolved": "https://registry.npmjs.org/fs-extra-p/-/fs-extra-p-7.0.0.tgz", "integrity": "sha512-5tg5jBOd0xIXjwj4PDnafOXL5TyPVzjxLby4DPKev53wurEXp7IsojBaD4Lj5M5w7jxw0pbkEU0fFEPmcKoMnA==", "requires": { - "bluebird-lst": "^1.0.6", - "fs-extra": "^7.0.0" + "bluebird-lst": "1.0.6", + "fs-extra": "7.0.1" } } } @@ -3996,13 +3958,13 @@ "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", "dev": true, "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" + "bn.js": "4.11.8", + "brorand": "1.1.0", + "hash.js": "1.1.5", + "hmac-drbg": "1.0.1", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1", + "minimalistic-crypto-utils": "1.0.1" } }, "emojis-list": { @@ -4022,7 +3984,7 @@ "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", "requires": { - "iconv-lite": "~0.4.13" + "iconv-lite": "0.4.24" } }, "end-of-stream": { @@ -4030,7 +3992,7 @@ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", "requires": { - "once": "^1.4.0" + "once": "1.4.0" } }, "enhanced-resolve": { @@ -4039,23 +4001,53 @@ "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", - "tapable": "^1.0.0" + "graceful-fs": "4.1.11", + "memory-fs": "0.4.1", + "tapable": "1.1.0" } }, "entangled-node": { - "version": "github:rihardsgravis/entangled-node#25d4b75986b1945512c92a7879fc7c45bde14193", - "from": "github:rihardsgravis/entangled-node", + "version": "github:rihardsgravis/entangled-node#5ec2b0b97fcf8faa70f3730be7fa632b91daa71a", "requires": { - "nan": "^2.10.0", - "prebuild-install": "^5.0.0" + "nan": "2.11.1", + "prebuild-install": "5.2.2" + }, + "dependencies": { + "expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" + }, + "prebuild-install": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.2.2.tgz", + "integrity": "sha512-4e8VJnP3zJdZv/uP0eNWmr2r9urp4NECw7Mt1OSAi3rcLrbBRxGiAkfUFtre2MhQ5wfREAjRV+K1gubvs/GPsA==", + "requires": { + "detect-libc": "1.0.3", + "expand-template": "2.0.3", + "github-from-package": "0.0.0", + "minimist": "1.2.0", + "mkdirp": "0.5.1", + "napi-build-utils": "1.0.1", + "node-abi": "2.4.5", + "noop-logger": "0.1.1", + "npmlog": "4.1.2", + "os-homedir": "1.0.2", + "pump": "2.0.1", + "rc": "1.2.8", + "simple-get": "2.8.1", + "tar-fs": "1.16.3", + "tunnel-agent": "0.6.0", + "which-pm-runs": "1.0.0" + } + } } }, "entities": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", - "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=" + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", + "dev": true }, "env-paths": { "version": "1.0.0", @@ -4069,7 +4061,7 @@ "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", "dev": true, "requires": { - "prr": "~1.0.1" + "prr": "1.0.1" } }, "error-ex": { @@ -4078,7 +4070,7 @@ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { - "is-arrayish": "^0.2.1" + "is-arrayish": "0.2.1" } }, "error-stack-parser": { @@ -4086,7 +4078,7 @@ "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.2.tgz", "integrity": "sha512-E1fPutRDdIj/hohG0UpT5mayXNCxXP9d+snxFsPU9X0XgccOumKraa3juDMwTUyi7+Bu5+mCGagjg4IYeNbOdw==", "requires": { - "stackframe": "^1.0.4" + "stackframe": "1.0.4" } }, "es-abstract": { @@ -4095,11 +4087,11 @@ "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", "dev": true, "requires": { - "es-to-primitive": "^1.1.1", - "function-bind": "^1.1.1", - "has": "^1.0.1", - "is-callable": "^1.1.3", - "is-regex": "^1.0.4" + "es-to-primitive": "1.2.0", + "function-bind": "1.1.1", + "has": "1.0.3", + "is-callable": "1.1.4", + "is-regex": "1.0.4" } }, "es-to-primitive": { @@ -4108,9 +4100,9 @@ "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", "dev": true, "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "is-callable": "1.1.4", + "is-date-object": "1.0.1", + "is-symbol": "1.0.2" } }, "es6-promise": { @@ -4125,7 +4117,7 @@ "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", "dev": true, "requires": { - "es6-promise": "^4.0.3" + "es6-promise": "4.2.5" } }, "escape-html": { @@ -4146,8 +4138,8 @@ "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==", "dev": true, "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" + "esrecurse": "4.2.1", + "estraverse": "4.2.0" } }, "esprima": { @@ -4161,7 +4153,7 @@ "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", "dev": true, "requires": { - "estraverse": "^4.1.0" + "estraverse": "4.2.0" } }, "estraverse": { @@ -4194,7 +4186,7 @@ "integrity": "sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI=", "dev": true, "requires": { - "original": ">=0.0.5" + "original": "1.0.2" } }, "evp_bytestokey": { @@ -4203,8 +4195,8 @@ "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "md5.js": "1.3.5", + "safe-buffer": "5.1.2" } }, "execa": { @@ -4213,13 +4205,13 @@ "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", "dev": true, "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^3.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" + "cross-spawn": "6.0.5", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" } }, "exit": { @@ -4239,13 +4231,13 @@ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "posix-character-classes": "0.1.1", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" }, "dependencies": { "debug": { @@ -4263,7 +4255,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "is-descriptor": "0.1.6" } }, "extend-shallow": { @@ -4272,7 +4264,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "is-extendable": "0.1.1" } }, "ms": { @@ -4294,7 +4286,7 @@ "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", "dev": true, "requires": { - "homedir-polyfill": "^1.0.1" + "homedir-polyfill": "1.0.1" } }, "express": { @@ -4303,36 +4295,36 @@ "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", "dev": true, "requires": { - "accepts": "~1.3.5", + "accepts": "1.3.5", "array-flatten": "1.1.1", "body-parser": "1.18.3", "content-disposition": "0.5.2", - "content-type": "~1.0.4", + "content-type": "1.0.4", "cookie": "0.3.1", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", + "depd": "1.1.2", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", "finalhandler": "1.1.1", "fresh": "0.5.2", "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", + "methods": "1.1.2", + "on-finished": "2.3.0", + "parseurl": "1.3.2", "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.4", + "proxy-addr": "2.0.4", "qs": "6.5.2", - "range-parser": "~1.2.0", + "range-parser": "1.2.0", "safe-buffer": "5.1.2", "send": "0.16.2", "serve-static": "1.13.2", "setprototypeof": "1.1.0", - "statuses": "~1.4.0", - "type-is": "~1.6.16", + "statuses": "1.4.0", + "type-is": "1.6.16", "utils-merge": "1.0.1", - "vary": "~1.1.2" + "vary": "1.1.2" }, "dependencies": { "debug": { @@ -4369,8 +4361,8 @@ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" + "assign-symbols": "1.0.0", + "is-extendable": "1.0.1" }, "dependencies": { "is-extendable": { @@ -4379,7 +4371,7 @@ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "is-plain-object": "^2.0.4" + "is-plain-object": "2.0.4" } } } @@ -4390,9 +4382,9 @@ "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", "dev": true, "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "chardet": "0.7.0", + "iconv-lite": "0.4.24", + "tmp": "0.0.33" } }, "extglob": { @@ -4401,14 +4393,14 @@ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "array-unique": "0.3.2", + "define-property": "1.0.0", + "expand-brackets": "2.1.4", + "extend-shallow": "2.0.1", + "fragment-cache": "0.2.1", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" }, "dependencies": { "define-property": { @@ -4417,7 +4409,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "^1.0.0" + "is-descriptor": "1.0.2" } }, "extend-shallow": { @@ -4426,7 +4418,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "is-extendable": "0.1.1" } }, "is-accessor-descriptor": { @@ -4435,7 +4427,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "kind-of": "6.0.2" } }, "is-data-descriptor": { @@ -4444,7 +4436,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "kind-of": "6.0.2" } }, "is-descriptor": { @@ -4453,9 +4445,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" } } } @@ -4531,7 +4523,7 @@ "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", "dev": true, "requires": { - "websocket-driver": ">=0.5.1" + "websocket-driver": "0.7.0" } }, "fbjs": { @@ -4539,13 +4531,13 @@ "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.17.tgz", "integrity": "sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=", "requires": { - "core-js": "^1.0.0", - "isomorphic-fetch": "^2.1.1", - "loose-envify": "^1.0.0", - "object-assign": "^4.1.0", - "promise": "^7.1.1", - "setimmediate": "^1.0.5", - "ua-parser-js": "^0.7.18" + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.18" } }, "fd-slicer": { @@ -4554,7 +4546,7 @@ "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", "dev": true, "requires": { - "pend": "~1.2.0" + "pend": "1.2.0" } }, "figures": { @@ -4563,8 +4555,8 @@ "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "dev": true, "requires": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" } }, "file-loader": { @@ -4573,8 +4565,8 @@ "integrity": "sha512-YCsBfd1ZGCyonOKLxPiKPdu+8ld9HAaMEvJewzz+b2eTF7uL5Zm/HdBF6FjCrpCMRq25Mi0U1gl4pwn2TlH7hQ==", "dev": true, "requires": { - "loader-utils": "^1.0.2", - "schema-utils": "^1.0.0" + "loader-utils": "1.1.0", + "schema-utils": "1.0.0" } }, "filesize": { @@ -4589,10 +4581,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" + "extend-shallow": "2.0.1", + "is-number": "3.0.0", + "repeat-string": "1.6.1", + "to-regex-range": "2.1.1" }, "dependencies": { "extend-shallow": { @@ -4601,7 +4593,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "is-extendable": "0.1.1" } } } @@ -4613,12 +4605,12 @@ "dev": true, "requires": { "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "statuses": "~1.4.0", - "unpipe": "~1.0.0" + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "statuses": "1.4.0", + "unpipe": "1.0.0" }, "dependencies": { "debug": { @@ -4643,9 +4635,9 @@ "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", "requires": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" + "commondir": "1.0.1", + "make-dir": "1.3.0", + "pkg-dir": "2.0.0" } }, "find-nearest-file": { @@ -4664,7 +4656,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "requires": { - "locate-path": "^2.0.0" + "locate-path": "2.0.0" } }, "flatstr": { @@ -4679,8 +4671,8 @@ "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", "dev": true, "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.4" + "inherits": "2.0.3", + "readable-stream": "2.3.6" } }, "for-in": { @@ -4695,7 +4687,7 @@ "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", "dev": true, "requires": { - "for-in": "^1.0.1" + "for-in": "1.0.2" } }, "forever-agent": { @@ -4710,9 +4702,9 @@ "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", "dev": true, "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "asynckit": "0.4.0", + "combined-stream": "1.0.7", + "mime-types": "2.1.20" } }, "forwarded": { @@ -4727,7 +4719,7 @@ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "dev": true, "requires": { - "map-cache": "^0.2.2" + "map-cache": "0.2.2" } }, "fresh": { @@ -4742,8 +4734,8 @@ "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", "dev": true, "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" + "inherits": "2.0.3", + "readable-stream": "2.3.6" } }, "fs-constants": { @@ -4751,12 +4743,23 @@ "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" }, + "fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "jsonfile": "4.0.0", + "universalify": "0.1.2" + } + }, "fs-minipass": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", "requires": { - "minipass": "^2.2.1" + "minipass": "2.3.5" } }, "fs-write-stream-atomic": { @@ -4765,10 +4768,10 @@ "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" + "graceful-fs": "4.1.11", + "iferr": "0.1.5", + "imurmurhash": "0.1.4", + "readable-stream": "2.3.6" } }, "fs.realpath": { @@ -4783,8 +4786,8 @@ "dev": true, "optional": true, "requires": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" + "nan": "2.11.1", + "node-pre-gyp": "0.10.0" }, "dependencies": { "abbrev": { @@ -4814,8 +4817,8 @@ "dev": true, "optional": true, "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "delegates": "1.0.0", + "readable-stream": "2.3.6" } }, "balanced-match": { @@ -4830,7 +4833,7 @@ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "requires": { - "balanced-match": "^1.0.0", + "balanced-match": "1.0.0", "concat-map": "0.0.1" } }, @@ -4904,7 +4907,7 @@ "dev": true, "optional": true, "requires": { - "minipass": "^2.2.1" + "minipass": "2.2.4" } }, "fs.realpath": { @@ -4921,14 +4924,14 @@ "dev": true, "optional": true, "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" } }, "glob": { @@ -4938,12 +4941,12 @@ "dev": true, "optional": true, "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" } }, "has-unicode": { @@ -4960,7 +4963,7 @@ "dev": true, "optional": true, "requires": { - "safer-buffer": "^2.1.0" + "safer-buffer": "2.1.2" } }, "ignore-walk": { @@ -4970,7 +4973,7 @@ "dev": true, "optional": true, "requires": { - "minimatch": "^3.0.4" + "minimatch": "3.0.4" } }, "inflight": { @@ -4980,8 +4983,8 @@ "dev": true, "optional": true, "requires": { - "once": "^1.3.0", - "wrappy": "1" + "once": "1.4.0", + "wrappy": "1.0.2" } }, "inherits": { @@ -5003,7 +5006,7 @@ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "number-is-nan": "^1.0.0" + "number-is-nan": "1.0.1" } }, "isarray": { @@ -5019,7 +5022,7 @@ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { - "brace-expansion": "^1.1.7" + "brace-expansion": "1.1.11" } }, "minimist": { @@ -5034,8 +5037,8 @@ "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", "dev": true, "requires": { - "safe-buffer": "^5.1.1", - "yallist": "^3.0.0" + "safe-buffer": "5.1.1", + "yallist": "3.0.2" } }, "minizlib": { @@ -5045,7 +5048,7 @@ "dev": true, "optional": true, "requires": { - "minipass": "^2.2.1" + "minipass": "2.2.4" } }, "mkdirp": { @@ -5071,9 +5074,9 @@ "dev": true, "optional": true, "requires": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" + "debug": "2.6.9", + "iconv-lite": "0.4.21", + "sax": "1.2.4" } }, "node-pre-gyp": { @@ -5083,16 +5086,16 @@ "dev": true, "optional": true, "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.0", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.1.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" + "detect-libc": "1.0.3", + "mkdirp": "0.5.1", + "needle": "2.2.0", + "nopt": "4.0.1", + "npm-packlist": "1.1.10", + "npmlog": "4.1.2", + "rc": "1.2.7", + "rimraf": "2.6.2", + "semver": "5.5.0", + "tar": "4.4.1" } }, "nopt": { @@ -5102,8 +5105,8 @@ "dev": true, "optional": true, "requires": { - "abbrev": "1", - "osenv": "^0.1.4" + "abbrev": "1.1.1", + "osenv": "0.1.5" } }, "npm-bundled": { @@ -5120,8 +5123,8 @@ "dev": true, "optional": true, "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" + "ignore-walk": "3.0.1", + "npm-bundled": "1.0.3" } }, "npmlog": { @@ -5131,10 +5134,10 @@ "dev": true, "optional": true, "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" } }, "number-is-nan": { @@ -5156,7 +5159,7 @@ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { - "wrappy": "1" + "wrappy": "1.0.2" } }, "os-homedir": { @@ -5180,8 +5183,8 @@ "dev": true, "optional": true, "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" } }, "path-is-absolute": { @@ -5205,10 +5208,10 @@ "dev": true, "optional": true, "requires": { - "deep-extend": "^0.5.1", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" + "deep-extend": "0.5.1", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" }, "dependencies": { "minimist": { @@ -5227,13 +5230,13 @@ "dev": true, "optional": true, "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "2.0.0", + "safe-buffer": "5.1.1", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" } }, "rimraf": { @@ -5243,7 +5246,7 @@ "dev": true, "optional": true, "requires": { - "glob": "^7.0.5" + "glob": "7.1.2" } }, "safe-buffer": { @@ -5293,9 +5296,9 @@ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" } }, "string_decoder": { @@ -5305,7 +5308,7 @@ "dev": true, "optional": true, "requires": { - "safe-buffer": "~5.1.0" + "safe-buffer": "5.1.1" } }, "strip-ansi": { @@ -5314,7 +5317,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "2.1.1" } }, "strip-json-comments": { @@ -5331,13 +5334,13 @@ "dev": true, "optional": true, "requires": { - "chownr": "^1.0.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.2.4", - "minizlib": "^1.1.0", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.1", - "yallist": "^3.0.2" + "chownr": "1.0.1", + "fs-minipass": "1.2.5", + "minipass": "2.2.4", + "minizlib": "1.1.0", + "mkdirp": "0.5.1", + "safe-buffer": "5.1.1", + "yallist": "3.0.2" } }, "util-deprecate": { @@ -5354,7 +5357,7 @@ "dev": true, "optional": true, "requires": { - "string-width": "^1.0.2" + "string-width": "1.0.2" } }, "wrappy": { @@ -5382,14 +5385,14 @@ "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.3" } }, "get-caller-file": { @@ -5422,7 +5425,7 @@ "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "dev": true, "requires": { - "assert-plus": "^1.0.0" + "assert-plus": "1.0.0" } }, "github-from-package": { @@ -5435,12 +5438,12 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" } }, "glob-parent": { @@ -5449,8 +5452,8 @@ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" + "is-glob": "3.1.0", + "path-dirname": "1.0.2" }, "dependencies": { "is-glob": { @@ -5459,7 +5462,7 @@ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "dev": true, "requires": { - "is-extglob": "^2.1.0" + "is-extglob": "2.1.1" } } } @@ -5470,7 +5473,7 @@ "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", "dev": true, "requires": { - "ini": "^1.3.4" + "ini": "1.3.5" } }, "global-modules": { @@ -5479,9 +5482,9 @@ "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", "dev": true, "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" + "global-prefix": "1.0.2", + "is-windows": "1.0.2", + "resolve-dir": "1.0.1" } }, "global-modules-path": { @@ -5496,11 +5499,11 @@ "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", "dev": true, "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" + "expand-tilde": "2.0.2", + "homedir-polyfill": "1.0.1", + "ini": "1.3.5", + "is-windows": "1.0.2", + "which": "1.3.1" } }, "globals": { @@ -5509,37 +5512,23 @@ "integrity": "sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA==", "dev": true }, - "globby": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", - "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "dir-glob": "^2.0.0", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - } - }, "got": { "version": "6.7.1", "resolved": "http://registry.npmjs.org/got/-/got-6.7.1.tgz", "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", "dev": true, "requires": { - "create-error-class": "^3.0.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" + "create-error-class": "3.0.2", + "duplexer3": "0.1.4", + "get-stream": "3.0.0", + "is-redirect": "1.0.0", + "is-retry-allowed": "1.1.0", + "is-stream": "1.1.0", + "lowercase-keys": "1.0.1", + "safe-buffer": "5.1.2", + "timed-out": "4.0.1", + "unzip-response": "2.0.1", + "url-parse-lax": "1.0.0" } }, "graceful-fs": { @@ -5558,8 +5547,8 @@ "integrity": "sha512-5iI7omclyqrnWw4XbXAmGhPsABkSIDQonv2K0h61lybgofWa6iZyvrI3r2zsJH4P8Nb64fFVzlvfhs0g7BBxAA==", "dev": true, "requires": { - "duplexer": "^0.1.1", - "pify": "^3.0.0" + "duplexer": "0.1.1", + "pify": "3.0.0" } }, "har-schema": { @@ -5574,8 +5563,8 @@ "integrity": "sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==", "dev": true, "requires": { - "ajv": "^5.3.0", - "har-schema": "^2.0.0" + "ajv": "5.5.2", + "har-schema": "2.0.0" } }, "has": { @@ -5584,7 +5573,7 @@ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "requires": { - "function-bind": "^1.1.1" + "function-bind": "1.1.1" } }, "has-ansi": { @@ -5593,7 +5582,7 @@ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "dev": true, "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "2.1.1" } }, "has-flag": { @@ -5619,9 +5608,9 @@ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", "dev": true, "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" + "get-value": "2.0.6", + "has-values": "1.0.0", + "isobject": "3.0.1" } }, "has-values": { @@ -5630,8 +5619,8 @@ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", "dev": true, "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" + "is-number": "3.0.0", + "kind-of": "4.0.0" }, "dependencies": { "kind-of": { @@ -5640,7 +5629,7 @@ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "is-buffer": "1.1.6" } } } @@ -5651,8 +5640,8 @@ "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", "dev": true, "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "inherits": "2.0.3", + "safe-buffer": "5.1.2" } }, "hash.js": { @@ -5661,8 +5650,8 @@ "integrity": "sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA==", "dev": true, "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1" } }, "he": { @@ -5676,11 +5665,11 @@ "resolved": "https://registry.npmjs.org/history/-/history-4.7.2.tgz", "integrity": "sha512-1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA==", "requires": { - "invariant": "^2.2.1", - "loose-envify": "^1.2.0", - "resolve-pathname": "^2.2.0", - "value-equal": "^0.4.0", - "warning": "^3.0.0" + "invariant": "2.2.4", + "loose-envify": "1.4.0", + "resolve-pathname": "2.2.0", + "value-equal": "0.4.0", + "warning": "3.0.0" }, "dependencies": { "warning": { @@ -5688,7 +5677,7 @@ "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", "requires": { - "loose-envify": "^1.0.0" + "loose-envify": "1.4.0" } } } @@ -5699,9 +5688,9 @@ "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", "dev": true, "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "hash.js": "1.1.5", + "minimalistic-assert": "1.0.1", + "minimalistic-crypto-utils": "1.0.1" } }, "hoist-non-react-statics": { @@ -5709,7 +5698,7 @@ "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.0.1.tgz", "integrity": "sha512-1kXwPsOi0OGQIZNVMPvgWJ9tSnGMiMfJdihqEzrPEXlHOBh9AAHXX/QYmAJTXztnz/K+PQ8ryCb4eGaN6HlGbQ==", "requires": { - "react-is": "^16.3.2" + "react-is": "16.5.2" } }, "home-or-tmp": { @@ -5723,7 +5712,7 @@ "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", "dev": true, "requires": { - "parse-passwd": "^1.0.0" + "parse-passwd": "1.0.0" } }, "hosted-git-info": { @@ -5744,13 +5733,13 @@ "integrity": "sha512-ZmgNLaTp54+HFKkONyLFEfs5dd/ZOtlquKaTnqIWFmx3Av5zG6ZPcV2d0o9XM2fXOTxxIf6eDcwzFFotke/5zA==", "dev": true, "requires": { - "camel-case": "3.0.x", - "clean-css": "4.2.x", - "commander": "2.17.x", - "he": "1.1.x", - "param-case": "2.1.x", - "relateurl": "0.2.x", - "uglify-js": "3.4.x" + "camel-case": "3.0.0", + "clean-css": "4.2.1", + "commander": "2.17.1", + "he": "1.1.1", + "param-case": "2.1.1", + "relateurl": "0.2.7", + "uglify-js": "3.4.9" } }, "html-parse-stringify2": { @@ -5758,7 +5747,7 @@ "resolved": "https://registry.npmjs.org/html-parse-stringify2/-/html-parse-stringify2-2.0.1.tgz", "integrity": "sha1-3FZwtyksoVi3vJFsmmc1rIhyg0o=", "requires": { - "void-elements": "^2.0.1" + "void-elements": "2.0.1" } }, "html-webpack-plugin": { @@ -5767,12 +5756,12 @@ "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", "dev": true, "requires": { - "html-minifier": "^3.2.3", - "loader-utils": "^0.2.16", - "lodash": "^4.17.3", - "pretty-error": "^2.0.2", - "tapable": "^1.0.0", - "toposort": "^1.0.0", + "html-minifier": "3.5.20", + "loader-utils": "0.2.17", + "lodash": "4.17.11", + "pretty-error": "2.1.1", + "tapable": "1.1.0", + "toposort": "1.0.7", "util.promisify": "1.0.0" }, "dependencies": { @@ -5782,10 +5771,10 @@ "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", "dev": true, "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0", - "object-assign": "^4.0.1" + "big.js": "3.2.0", + "emojis-list": "2.1.0", + "json5": "0.5.1", + "object-assign": "4.1.1" } } } @@ -5796,10 +5785,10 @@ "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", "dev": true, "requires": { - "domelementtype": "1", - "domhandler": "2.1", - "domutils": "1.1", - "readable-stream": "1.0" + "domelementtype": "1.3.0", + "domhandler": "2.1.0", + "domutils": "1.1.6", + "readable-stream": "1.0.34" }, "dependencies": { "domutils": { @@ -5808,7 +5797,7 @@ "integrity": "sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU=", "dev": true, "requires": { - "domelementtype": "1" + "domelementtype": "1.3.0" } }, "isarray": { @@ -5823,10 +5812,10 @@ "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "dev": true, "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", + "core-util-is": "1.0.2", + "inherits": "2.0.3", "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "string_decoder": "0.10.31" } }, "string_decoder": { @@ -5843,10 +5832,10 @@ "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", "dev": true, "requires": { - "depd": "~1.1.2", + "depd": "1.1.2", "inherits": "2.0.3", "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" + "statuses": "1.4.0" } }, "http-parser-js": { @@ -5861,9 +5850,9 @@ "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", "dev": true, "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "assert-plus": "1.0.0", + "jsprim": "1.4.1", + "sshpk": "1.15.1" } }, "https-browserify": { @@ -5878,8 +5867,8 @@ "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", "dev": true, "requires": { - "agent-base": "^4.1.0", - "debug": "^3.1.0" + "agent-base": "4.2.1", + "debug": "3.2.6" } }, "hw-app-iota": { @@ -5887,10 +5876,10 @@ "resolved": "https://registry.npmjs.org/hw-app-iota/-/hw-app-iota-0.5.1.tgz", "integrity": "sha512-H8N6TGG/TFCmqMLCd94v5XLqpSmNZTq2yDbYNBf3McJpsacHdw9aiQFuqY1V2LMXzHeL6tj2o0F+EVwl8c5u1Q==", "requires": { - "babel-runtime": "^6.26.0", - "bip32-path": "^0.4.2", - "iota.lib.js": "^0.5.0", - "semver": "^5.6.0", + "babel-runtime": "6.26.0", + "bip32-path": "0.4.2", + "iota.lib.js": "0.5.1", + "semver": "5.6.0", "struct": "0.0.12" } }, @@ -5904,7 +5893,7 @@ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "safer-buffer": "2.1.2" } }, "icss-replace-symbols": { @@ -5919,7 +5908,7 @@ "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", "dev": true, "requires": { - "postcss": "^6.0.1" + "postcss": "6.0.23" } }, "ieee754": { @@ -5934,18 +5923,12 @@ "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", "dev": true }, - "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", - "dev": true - }, "ignore-walk": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", "requires": { - "minimatch": "^3.0.4" + "minimatch": "3.0.4" } }, "import-lazy": { @@ -5960,8 +5943,8 @@ "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", "dev": true, "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" + "pkg-dir": "3.0.0", + "resolve-cwd": "2.0.0" }, "dependencies": { "find-up": { @@ -5970,7 +5953,7 @@ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "3.0.0" } }, "locate-path": { @@ -5979,8 +5962,8 @@ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "3.0.0", + "path-exists": "3.0.0" } }, "p-limit": { @@ -5989,7 +5972,7 @@ "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", "dev": true, "requires": { - "p-try": "^2.0.0" + "p-try": "2.0.0" } }, "p-locate": { @@ -5998,7 +5981,7 @@ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { - "p-limit": "^2.0.0" + "p-limit": "2.0.0" } }, "p-try": { @@ -6013,7 +5996,7 @@ "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", "dev": true, "requires": { - "find-up": "^3.0.0" + "find-up": "3.0.0" } } } @@ -6041,8 +6024,8 @@ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "requires": { - "once": "^1.3.0", - "wrappy": "1" + "once": "1.4.0", + "wrappy": "1.0.2" } }, "inherits": { @@ -6061,19 +6044,19 @@ "integrity": "sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg==", "dev": true, "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.0", - "figures": "^2.0.0", - "lodash": "^4.17.10", + "ansi-escapes": "3.1.0", + "chalk": "2.4.1", + "cli-cursor": "2.1.0", + "cli-width": "2.2.0", + "external-editor": "3.0.3", + "figures": "2.0.0", + "lodash": "4.17.11", "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.1.0", - "string-width": "^2.1.0", - "strip-ansi": "^4.0.0", - "through": "^2.3.6" + "run-async": "2.3.0", + "rxjs": "6.3.3", + "string-width": "2.1.1", + "strip-ansi": "4.0.0", + "through": "2.3.8" }, "dependencies": { "ansi-escapes": { @@ -6094,7 +6077,7 @@ "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "dev": true, "requires": { - "restore-cursor": "^2.0.0" + "restore-cursor": "2.0.0" } }, "figures": { @@ -6103,7 +6086,7 @@ "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "dev": true, "requires": { - "escape-string-regexp": "^1.0.5" + "escape-string-regexp": "1.0.5" } }, "is-fullwidth-code-point": { @@ -6118,7 +6101,7 @@ "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", "dev": true, "requires": { - "mimic-fn": "^1.0.0" + "mimic-fn": "1.2.0" } }, "restore-cursor": { @@ -6127,8 +6110,8 @@ "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", "dev": true, "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" + "onetime": "2.0.1", + "signal-exit": "3.0.2" } }, "rxjs": { @@ -6137,7 +6120,7 @@ "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { - "tslib": "^1.9.0" + "tslib": "1.9.3" } }, "string-width": { @@ -6146,8 +6129,8 @@ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" } }, "strip-ansi": { @@ -6156,7 +6139,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "3.0.0" } } } @@ -6172,7 +6155,7 @@ "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", "requires": { - "loose-envify": "^1.0.0" + "loose-envify": "1.4.0" } }, "invert-kv": { @@ -6186,10 +6169,10 @@ "resolved": "https://registry.npmjs.org/iota.lib.js/-/iota.lib.js-0.5.1.tgz", "integrity": "sha512-4DHieyh24o8TJGSj/j1aINrLtYO2Pj9NZa3kqY1lKT0kZcIOkFMJoOsPiLPqVFpAC0RRONoBxni+d48gRyH5SQ==", "requires": { - "async": "^2.5.0", - "bignumber.js": "^4.1.0", - "crypto-js": "^3.1.9-1", - "xmlhttprequest": "^1.8.0" + "async": "2.6.1", + "bignumber.js": "4.1.0", + "crypto-js": "3.1.9-1", + "xmlhttprequest": "1.8.0" } }, "ipaddr.js": { @@ -6204,7 +6187,7 @@ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "^3.0.2" + "kind-of": "3.2.2" }, "dependencies": { "kind-of": { @@ -6213,7 +6196,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "is-buffer": "1.1.6" } } } @@ -6228,8 +6211,8 @@ "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.2.tgz", "integrity": "sha512-pyfU/0kHdISIgslFfZN9nfY1Gk3MquQgUm1mJTjdkEPpkAKNWuBTSqFwewOpR7N351VkErCiyV71zX7mlQQqsg==", "requires": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" + "is-alphabetical": "1.0.2", + "is-decimal": "1.0.2" } }, "is-arrayish": { @@ -6244,7 +6227,7 @@ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, "requires": { - "binary-extensions": "^1.0.0" + "binary-extensions": "1.12.0" } }, "is-buffer": { @@ -6258,7 +6241,7 @@ "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", "dev": true, "requires": { - "builtin-modules": "^1.0.0" + "builtin-modules": "1.1.1" } }, "is-callable": { @@ -6273,7 +6256,7 @@ "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", "dev": true, "requires": { - "ci-info": "^1.5.0" + "ci-info": "1.6.0" } }, "is-data-descriptor": { @@ -6282,7 +6265,7 @@ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "^3.0.2" + "kind-of": "3.2.2" }, "dependencies": { "kind-of": { @@ -6291,7 +6274,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "is-buffer": "1.1.6" } } } @@ -6313,9 +6296,9 @@ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" }, "dependencies": { "kind-of": { @@ -6344,7 +6327,7 @@ "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", "dev": true, "requires": { - "number-is-nan": "^1.0.0" + "number-is-nan": "1.0.1" } }, "is-fullwidth-code-point": { @@ -6352,7 +6335,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "^1.0.0" + "number-is-nan": "1.0.1" } }, "is-glob": { @@ -6361,7 +6344,7 @@ "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", "dev": true, "requires": { - "is-extglob": "^2.1.1" + "is-extglob": "2.1.1" } }, "is-hexadecimal": { @@ -6375,8 +6358,8 @@ "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", "dev": true, "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" + "global-dirs": "0.1.1", + "is-path-inside": "1.0.1" } }, "is-npm": { @@ -6391,7 +6374,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "^3.0.2" + "kind-of": "3.2.2" }, "dependencies": { "kind-of": { @@ -6400,7 +6383,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "is-buffer": "1.1.6" } } } @@ -6417,7 +6400,7 @@ "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", "dev": true, "requires": { - "path-is-inside": "^1.0.1" + "path-is-inside": "1.0.2" } }, "is-plain-obj": { @@ -6431,7 +6414,7 @@ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "requires": { - "isobject": "^3.0.1" + "isobject": "3.0.1" } }, "is-promise": { @@ -6452,7 +6435,7 @@ "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", "dev": true, "requires": { - "has": "^1.0.1" + "has": "1.0.3" } }, "is-retry-allowed": { @@ -6478,7 +6461,7 @@ "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", "dev": true, "requires": { - "has-symbols": "^1.0.0" + "has-symbols": "1.0.0" } }, "is-typedarray": { @@ -6526,7 +6509,7 @@ "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", "dev": true, "requires": { - "buffer-alloc": "^1.2.0" + "buffer-alloc": "1.2.0" } }, "iserror": { @@ -6551,8 +6534,8 @@ "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", "requires": { - "node-fetch": "^1.0.1", - "whatwg-fetch": ">=0.10.0" + "node-fetch": "1.7.3", + "whatwg-fetch": "3.0.0" } }, "isstream": { @@ -6577,8 +6560,8 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "argparse": "1.0.10", + "esprima": "4.0.1" } }, "jsbn": { @@ -6634,7 +6617,7 @@ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", "requires": { - "graceful-fs": "^4.1.6" + "graceful-fs": "4.1.11" } }, "jsonify": { @@ -6685,9 +6668,9 @@ "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", "requires": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" + "kind-of": "3.1.0", + "longest": "1.0.1", + "repeat-string": "1.6.1" } }, "amdefine": { @@ -6710,8 +6693,8 @@ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.0.tgz", "integrity": "sha1-o+Uvo5FoyCX/V7AkgSbOWo/5VQc=", "requires": { - "arrify": "^1.0.0", - "micromatch": "^2.1.5" + "arrify": "1.0.1", + "micromatch": "2.3.11" } }, "argparse": { @@ -6719,7 +6702,7 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", "requires": { - "sprintf-js": "~1.0.2" + "sprintf-js": "1.0.3" } }, "arr-diff": { @@ -6727,7 +6710,7 @@ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", "requires": { - "arr-flatten": "^1.0.1" + "arr-flatten": "1.0.1" } }, "arr-flatten": { @@ -6768,7 +6751,7 @@ "resolved": "https://registry.npmjs.org/async/-/async-2.1.4.tgz", "integrity": "sha1-LSFgx3iAMuTdbL4lAvH5osj2zeQ=", "requires": { - "lodash": "^4.14.0" + "lodash": "4.17.4" } }, "async-each": { @@ -6812,7 +6795,7 @@ "integrity": "sha1-PKdrhSQccXC/fZcD57mqdGMAQNQ=", "optional": true, "requires": { - "tweetnacl": "^0.14.3" + "tweetnacl": "0.14.5" } }, "big.js": { @@ -6830,7 +6813,7 @@ "resolved": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz", "integrity": "sha1-/cqHGplxOqANGeO7ukHER4emU5g=", "requires": { - "readable-stream": "~2.0.5" + "readable-stream": "2.0.6" } }, "boom": { @@ -6838,7 +6821,7 @@ "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", "requires": { - "hoek": "2.x.x" + "hoek": "2.16.3" } }, "brace-expansion": { @@ -6846,7 +6829,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz", "integrity": "sha1-cZfX6qm4fmSDkOph/GbIRCdCDfk=", "requires": { - "balanced-match": "^0.4.1", + "balanced-match": "0.4.2", "concat-map": "0.0.1" } }, @@ -6855,9 +6838,9 @@ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" } }, "browser-stdout": { @@ -6870,7 +6853,7 @@ "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-0.4.0.tgz", "integrity": "sha1-BnFJtmjfMcS1hTPgLQHoBthgjiw=", "requires": { - "inherits": "^2.0.1" + "inherits": "2.0.3" } }, "browserify-zlib": { @@ -6878,7 +6861,7 @@ "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", "requires": { - "pako": "~0.2.0" + "pako": "0.2.9" }, "dependencies": { "pako": { @@ -6893,9 +6876,9 @@ "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" + "base64-js": "1.2.0", + "ieee754": "1.1.8", + "isarray": "1.0.0" } }, "buffer-shims": { @@ -6923,8 +6906,8 @@ "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", "requires": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" + "align-text": "0.1.4", + "lazy-cache": "1.0.4" } }, "chalk": { @@ -6932,11 +6915,11 @@ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { - "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" + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" } }, "chokidar": { @@ -6944,15 +6927,15 @@ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.6.1.tgz", "integrity": "sha1-L0RHq16W5Q+z14n9kNTHLg5McMI=", "requires": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "fsevents": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0" + "anymatch": "1.3.0", + "async-each": "1.0.1", + "fsevents": "1.0.17", + "glob-parent": "2.0.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "2.0.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.1.0" } }, "cli": { @@ -6961,7 +6944,7 @@ "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=", "requires": { "exit": "0.1.2", - "glob": "^7.1.1" + "glob": "7.1.1" }, "dependencies": { "glob": { @@ -6969,12 +6952,12 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.2", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.3", + "once": "1.4.0", + "path-is-absolute": "1.0.1" } } } @@ -6984,8 +6967,8 @@ "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", + "center-align": "0.1.3", + "right-align": "0.1.3", "wordwrap": "0.0.2" }, "dependencies": { @@ -7006,7 +6989,7 @@ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", "requires": { - "delayed-stream": "~1.0.0" + "delayed-stream": "1.0.0" } }, "commander": { @@ -7014,7 +6997,7 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", "requires": { - "graceful-readlink": ">= 1.0.0" + "graceful-readlink": "1.0.1" } }, "concat-map": { @@ -7027,7 +7010,7 @@ "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", "requires": { - "date-now": "^0.1.4" + "date-now": "0.1.4" } }, "constants-browserify": { @@ -7057,7 +7040,7 @@ "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", "requires": { - "boom": "2.x.x" + "boom": "2.10.1" } }, "crypto-browserify": { @@ -7076,7 +7059,7 @@ "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "requires": { - "assert-plus": "^1.0.0" + "assert-plus": "1.0.0" }, "dependencies": { "assert-plus": { @@ -7124,8 +7107,8 @@ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", "requires": { - "domelementtype": "~1.1.1", - "entities": "~1.1.1" + "domelementtype": "1.1.3", + "entities": "1.1.1" }, "dependencies": { "domelementtype": { @@ -7155,7 +7138,7 @@ "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz", "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=", "requires": { - "domelementtype": "1" + "domelementtype": "1.3.0" } }, "domutils": { @@ -7163,8 +7146,8 @@ "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", "requires": { - "dom-serializer": "0", - "domelementtype": "1" + "dom-serializer": "0.1.0", + "domelementtype": "1.3.0" } }, "ecc-jsbn": { @@ -7173,7 +7156,7 @@ "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", "optional": true, "requires": { - "jsbn": "~0.1.0" + "jsbn": "0.1.0" } }, "emojis-list": { @@ -7186,9 +7169,9 @@ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-0.9.1.tgz", "integrity": "sha1-TW5omzcl+GCQknzMhs2fFjW4ni4=", "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.2.0", - "tapable": "^0.1.8" + "graceful-fs": "4.1.11", + "memory-fs": "0.2.0", + "tapable": "0.1.10" }, "dependencies": { "memory-fs": { @@ -7208,7 +7191,7 @@ "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.4.tgz", "integrity": "sha1-uJbiOp5ei6M4cfyZar02NfyaHH0=", "requires": { - "prr": "~0.0.0" + "prr": "0.0.0" } }, "escape-string-regexp": { @@ -7221,11 +7204,11 @@ "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", "requires": { - "esprima": "^2.7.1", - "estraverse": "^1.9.1", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.2.0" + "esprima": "2.7.3", + "estraverse": "1.9.3", + "esutils": "2.0.2", + "optionator": "0.8.2", + "source-map": "0.2.0" }, "dependencies": { "source-map": { @@ -7234,7 +7217,7 @@ "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", "optional": true, "requires": { - "amdefine": ">=0.0.4" + "amdefine": "1.0.1" } } } @@ -7269,7 +7252,7 @@ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", "requires": { - "is-posix-bracket": "^0.1.0" + "is-posix-bracket": "0.1.1" } }, "expand-range": { @@ -7277,7 +7260,7 @@ "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", "requires": { - "fill-range": "^2.1.0" + "fill-range": "2.2.3" } }, "expect.js": { @@ -7290,8 +7273,8 @@ "resolved": "https://registry.npmjs.org/exports-loader/-/exports-loader-0.6.3.tgz", "integrity": "sha1-V9x4kX9wm5byR/qR5ptVTIVQE8g=", "requires": { - "loader-utils": "0.2.x", - "source-map": "0.1.x" + "loader-utils": "0.2.16", + "source-map": "0.1.43" } }, "extend": { @@ -7304,7 +7287,7 @@ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", "requires": { - "is-extglob": "^1.0.0" + "is-extglob": "1.0.0" } }, "extsprintf": { @@ -7327,11 +7310,11 @@ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", "requires": { - "is-number": "^2.1.0", - "isobject": "^2.0.0", - "randomatic": "^1.1.3", - "repeat-element": "^1.1.2", - "repeat-string": "^1.5.2" + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.6", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" } }, "for-in": { @@ -7344,7 +7327,7 @@ "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.4.tgz", "integrity": "sha1-AUm0GjkIjHUV9R6+HBOG1F+TUHI=", "requires": { - "for-in": "^0.1.5" + "for-in": "0.1.6" } }, "forever-agent": { @@ -7357,9 +7340,9 @@ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.0.0.tgz", "integrity": "sha1-bwrrrcxdoWwT4ezBETfYX5uIOyU=", "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.5", - "mime-types": "^2.1.11" + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.14" } }, "fs-walk": { @@ -7367,7 +7350,7 @@ "resolved": "https://registry.npmjs.org/fs-walk/-/fs-walk-0.0.1.tgz", "integrity": "sha1-9/yRw64e6tB8mYvF0N1B8tvr0zU=", "requires": { - "async": "*" + "async": "2.1.4" } }, "fs.realpath": { @@ -7381,8 +7364,8 @@ "integrity": "sha1-hTfz8SJyZ4dltP1lKMDx9m+PRVg=", "optional": true, "requires": { - "nan": "^2.3.0", - "node-pre-gyp": "^0.6.29" + "nan": "2.5.1", + "node-pre-gyp": "0.6.32" }, "dependencies": { "abbrev": { @@ -7414,8 +7397,8 @@ "integrity": "sha1-gORw6VoIR5T+GJkmLFZnxuiN4bM=", "optional": true, "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.0 || ^1.1.13" + "delegates": "1.0.0", + "readable-stream": "2.2.2" } }, "asn1": { @@ -7459,7 +7442,7 @@ "integrity": "sha1-PKdrhSQccXC/fZcD57mqdGMAQNQ=", "optional": true, "requires": { - "tweetnacl": "^0.14.3" + "tweetnacl": "0.14.5" } }, "block-stream": { @@ -7467,7 +7450,7 @@ "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", "requires": { - "inherits": "~2.0.0" + "inherits": "2.0.3" } }, "boom": { @@ -7475,7 +7458,7 @@ "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", "requires": { - "hoek": "2.x.x" + "hoek": "2.16.3" } }, "brace-expansion": { @@ -7483,7 +7466,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz", "integrity": "sha1-cZfX6qm4fmSDkOph/GbIRCdCDfk=", "requires": { - "balanced-match": "^0.4.1", + "balanced-match": "0.4.2", "concat-map": "0.0.1" } }, @@ -7504,11 +7487,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "optional": true, "requires": { - "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" + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" }, "dependencies": { "supports-color": { @@ -7529,7 +7512,7 @@ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", "requires": { - "delayed-stream": "~1.0.0" + "delayed-stream": "1.0.0" } }, "commander": { @@ -7538,7 +7521,7 @@ "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", "optional": true, "requires": { - "graceful-readlink": ">= 1.0.0" + "graceful-readlink": "1.0.1" } }, "concat-map": { @@ -7562,7 +7545,7 @@ "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", "optional": true, "requires": { - "boom": "2.x.x" + "boom": "2.10.1" } }, "dashdash": { @@ -7571,7 +7554,7 @@ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "optional": true, "requires": { - "assert-plus": "^1.0.0" + "assert-plus": "1.0.0" }, "dependencies": { "assert-plus": { @@ -7614,7 +7597,7 @@ "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", "optional": true, "requires": { - "jsbn": "~0.1.0" + "jsbn": "0.1.0" } }, "escape-string-regexp": { @@ -7646,9 +7629,9 @@ "integrity": "sha1-icNTQAi5fq2ky7FX1Y9vXfAl6uQ=", "optional": true, "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.5", - "mime-types": "^2.1.12" + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.13" } }, "fs.realpath": { @@ -7661,10 +7644,10 @@ "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.10.tgz", "integrity": "sha1-YE6Kkv4m/9n2+uMDmdSYThqyKCI=", "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.5.4" } }, "fstream-ignore": { @@ -7673,9 +7656,9 @@ "integrity": "sha1-nDHa40dnAY/h0kmyTa2mfQktoQU=", "optional": true, "requires": { - "fstream": "^1.0.0", - "inherits": "2", - "minimatch": "^3.0.0" + "fstream": "1.0.10", + "inherits": "2.0.3", + "minimatch": "3.0.3" } }, "gauge": { @@ -7684,15 +7667,15 @@ "integrity": "sha1-Fc7MMbAtBTRaXWsOFxzbOtIwd3Q=", "optional": true, "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "supports-color": "^0.2.0", - "wide-align": "^1.1.0" + "aproba": "1.0.4", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.0", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "supports-color": "0.2.0", + "wide-align": "1.1.0" } }, "generate-function": { @@ -7707,7 +7690,7 @@ "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", "optional": true, "requires": { - "is-property": "^1.0.0" + "is-property": "1.0.2" } }, "getpass": { @@ -7716,7 +7699,7 @@ "integrity": "sha1-KD/9n8ElaECHUxHBtg6MQBhxEOY=", "optional": true, "requires": { - "assert-plus": "^1.0.0" + "assert-plus": "1.0.0" }, "dependencies": { "assert-plus": { @@ -7732,12 +7715,12 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.2", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.3", + "once": "1.4.0", + "path-is-absolute": "1.0.1" } }, "graceful-fs": { @@ -7757,10 +7740,10 @@ "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", "optional": true, "requires": { - "chalk": "^1.1.1", - "commander": "^2.9.0", - "is-my-json-valid": "^2.12.4", - "pinkie-promise": "^2.0.0" + "chalk": "1.1.3", + "commander": "2.9.0", + "is-my-json-valid": "2.15.0", + "pinkie-promise": "2.0.1" } }, "has-ansi": { @@ -7769,7 +7752,7 @@ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "optional": true, "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "2.0.0" } }, "has-unicode": { @@ -7784,10 +7767,10 @@ "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", "optional": true, "requires": { - "boom": "2.x.x", - "cryptiles": "2.x.x", - "hoek": "2.x.x", - "sntp": "1.x.x" + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" } }, "hoek": { @@ -7801,9 +7784,9 @@ "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", "optional": true, "requires": { - "assert-plus": "^0.2.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "assert-plus": "0.2.0", + "jsprim": "1.3.1", + "sshpk": "1.10.1" } }, "inflight": { @@ -7811,8 +7794,8 @@ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "requires": { - "once": "^1.3.0", - "wrappy": "1" + "once": "1.4.0", + "wrappy": "1.0.2" } }, "inherits": { @@ -7831,7 +7814,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "^1.0.0" + "number-is-nan": "1.0.1" } }, "is-my-json-valid": { @@ -7840,10 +7823,10 @@ "integrity": "sha1-k27do8o8IR/ZjzstPgjaQ/eykVs=", "optional": true, "requires": { - "generate-function": "^2.0.0", - "generate-object-property": "^1.1.0", - "jsonpointer": "^4.0.0", - "xtend": "^4.0.0" + "generate-function": "2.0.0", + "generate-object-property": "1.2.0", + "jsonpointer": "4.0.1", + "xtend": "4.0.1" } }, "is-property": { @@ -7875,7 +7858,7 @@ "integrity": "sha1-BtSRIlUJNBlHfUJWM2BuDpB4KWc=", "optional": true, "requires": { - "jsbn": "~0.1.0" + "jsbn": "0.1.0" } }, "jsbn": { @@ -7923,7 +7906,7 @@ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.13.tgz", "integrity": "sha1-4HqqnGxrmnyjASxpADrSWjnpKog=", "requires": { - "mime-db": "~1.25.0" + "mime-db": "1.25.0" } }, "minimatch": { @@ -7931,7 +7914,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", "requires": { - "brace-expansion": "^1.0.0" + "brace-expansion": "1.1.6" } }, "minimist": { @@ -7959,15 +7942,15 @@ "integrity": "sha1-/EUrN25zGbPSVfXzSFPvb9j+H9U=", "optional": true, "requires": { - "mkdirp": "~0.5.1", - "nopt": "~3.0.6", - "npmlog": "^4.0.1", - "rc": "~1.1.6", - "request": "^2.79.0", - "rimraf": "~2.5.4", - "semver": "~5.3.0", - "tar": "~2.2.1", - "tar-pack": "~3.3.0" + "mkdirp": "0.5.1", + "nopt": "3.0.6", + "npmlog": "4.0.2", + "rc": "1.1.6", + "request": "2.79.0", + "rimraf": "2.5.4", + "semver": "5.3.0", + "tar": "2.2.1", + "tar-pack": "3.3.0" } }, "nopt": { @@ -7976,7 +7959,7 @@ "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", "optional": true, "requires": { - "abbrev": "1" + "abbrev": "1.0.9" } }, "npmlog": { @@ -7985,10 +7968,10 @@ "integrity": "sha1-0DlQ4OeM4VJ7om0qdZLpNIrD518=", "optional": true, "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.1", - "set-blocking": "~2.0.0" + "are-we-there-yet": "1.1.2", + "console-control-strings": "1.1.0", + "gauge": "2.7.2", + "set-blocking": "2.0.0" } }, "number-is-nan": { @@ -8013,7 +7996,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "requires": { - "wrappy": "1" + "wrappy": "1.0.2" } }, "path-is-absolute": { @@ -8033,7 +8016,7 @@ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "optional": true, "requires": { - "pinkie": "^2.0.0" + "pinkie": "2.0.4" } }, "process-nextick-args": { @@ -8059,10 +8042,10 @@ "integrity": "sha1-Q2UbdrauU7XIAvEVH6P8OwWZack=", "optional": true, "requires": { - "deep-extend": "~0.4.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~1.0.4" + "deep-extend": "0.4.1", + "ini": "1.3.4", + "minimist": "1.2.0", + "strip-json-comments": "1.0.4" }, "dependencies": { "minimist": { @@ -8079,13 +8062,13 @@ "integrity": "sha1-qeb+w8fdqF+LsbO6cChgRVb8gl4=", "optional": true, "requires": { - "buffer-shims": "^1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" + "buffer-shims": "1.0.0", + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "0.10.31", + "util-deprecate": "1.0.2" } }, "request": { @@ -8094,26 +8077,26 @@ "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=", "optional": true, "requires": { - "aws-sign2": "~0.6.0", - "aws4": "^1.2.1", - "caseless": "~0.11.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.0", - "forever-agent": "~0.6.1", - "form-data": "~2.1.1", - "har-validator": "~2.0.6", - "hawk": "~3.1.3", - "http-signature": "~1.1.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.7", - "oauth-sign": "~0.8.1", - "qs": "~6.3.0", - "stringstream": "~0.0.4", - "tough-cookie": "~2.3.0", - "tunnel-agent": "~0.4.1", - "uuid": "^3.0.0" + "aws-sign2": "0.6.0", + "aws4": "1.5.0", + "caseless": "0.11.0", + "combined-stream": "1.0.5", + "extend": "3.0.0", + "forever-agent": "0.6.1", + "form-data": "2.1.2", + "har-validator": "2.0.6", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.13", + "oauth-sign": "0.8.2", + "qs": "6.3.0", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.4.3", + "uuid": "3.0.1" } }, "rimraf": { @@ -8121,7 +8104,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz", "integrity": "sha1-loAAk8vxoMhr2VtGJUZ1NcKd+gQ=", "requires": { - "glob": "^7.0.5" + "glob": "7.1.1" } }, "semver": { @@ -8148,7 +8131,7 @@ "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", "optional": true, "requires": { - "hoek": "2.x.x" + "hoek": "2.16.3" } }, "sshpk": { @@ -8157,15 +8140,15 @@ "integrity": "sha1-MOGl0ykkSXShr2FREznVla9mOLA=", "optional": true, "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jodid25519": "^1.0.0", - "jsbn": "~0.1.0", - "tweetnacl": "~0.14.0" + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.0", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.6", + "jodid25519": "1.0.2", + "jsbn": "0.1.0", + "tweetnacl": "0.14.5" }, "dependencies": { "assert-plus": { @@ -8181,9 +8164,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" } }, "string_decoder": { @@ -8202,7 +8185,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "2.0.0" } }, "strip-json-comments": { @@ -8222,9 +8205,9 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", "requires": { - "block-stream": "*", - "fstream": "^1.0.2", - "inherits": "2" + "block-stream": "0.0.9", + "fstream": "1.0.10", + "inherits": "2.0.3" } }, "tar-pack": { @@ -8233,14 +8216,14 @@ "integrity": "sha1-MJMYFkGPVa/E0hd1r91nIM7kXa4=", "optional": true, "requires": { - "debug": "~2.2.0", - "fstream": "~1.0.10", - "fstream-ignore": "~1.0.5", - "once": "~1.3.3", - "readable-stream": "~2.1.4", - "rimraf": "~2.5.1", - "tar": "~2.2.1", - "uid-number": "~0.0.6" + "debug": "2.2.0", + "fstream": "1.0.10", + "fstream-ignore": "1.0.5", + "once": "1.3.3", + "readable-stream": "2.1.5", + "rimraf": "2.5.4", + "tar": "2.2.1", + "uid-number": "0.0.6" }, "dependencies": { "once": { @@ -8249,7 +8232,7 @@ "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", "optional": true, "requires": { - "wrappy": "1" + "wrappy": "1.0.2" } }, "readable-stream": { @@ -8258,13 +8241,13 @@ "integrity": "sha1-ZvqLcg4UOLNkaB8q0aY8YYRIydA=", "optional": true, "requires": { - "buffer-shims": "^1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" + "buffer-shims": "1.0.0", + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "0.10.31", + "util-deprecate": "1.0.2" } } } @@ -8275,7 +8258,7 @@ "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=", "optional": true, "requires": { - "punycode": "^1.4.1" + "punycode": "1.4.1" } }, "tunnel-agent": { @@ -8322,7 +8305,7 @@ "integrity": "sha1-QO3egCpx/qHwcNo+YtzaLnrdlq0=", "optional": true, "requires": { - "string-width": "^1.0.1" + "string-width": "1.0.2" } }, "wrappy": { @@ -8348,7 +8331,7 @@ "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", "requires": { - "is-property": "^1.0.0" + "is-property": "1.0.2" } }, "getpass": { @@ -8356,7 +8339,7 @@ "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.6.tgz", "integrity": "sha1-KD/9n8ElaECHUxHBtg6MQBhxEOY=", "requires": { - "assert-plus": "^1.0.0" + "assert-plus": "1.0.0" }, "dependencies": { "assert-plus": { @@ -8371,11 +8354,11 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.3", + "once": "1.4.0", + "path-is-absolute": "1.0.1" } }, "glob-base": { @@ -8383,8 +8366,8 @@ "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" + "glob-parent": "2.0.0", + "is-glob": "2.0.1" } }, "glob-parent": { @@ -8392,7 +8375,7 @@ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", "requires": { - "is-glob": "^2.0.0" + "is-glob": "2.0.1" } }, "graceful-fs": { @@ -8415,10 +8398,10 @@ "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.6.tgz", "integrity": "sha1-LORISFBTf5yXqAJtU5m5NcTtTtc=", "requires": { - "async": "^1.4.0", - "optimist": "^0.6.1", - "source-map": "^0.4.4", - "uglify-js": "^2.6" + "async": "1.5.2", + "optimist": "0.6.1", + "source-map": "0.4.4", + "uglify-js": "2.7.5" }, "dependencies": { "async": { @@ -8431,7 +8414,7 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", "requires": { - "amdefine": ">=0.0.4" + "amdefine": "1.0.1" } } } @@ -8441,10 +8424,10 @@ "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", "requires": { - "chalk": "^1.1.1", - "commander": "^2.9.0", - "is-my-json-valid": "^2.12.4", - "pinkie-promise": "^2.0.0" + "chalk": "1.1.3", + "commander": "2.9.0", + "is-my-json-valid": "2.15.0", + "pinkie-promise": "2.0.1" } }, "has-ansi": { @@ -8452,7 +8435,7 @@ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "2.1.1" } }, "has-flag": { @@ -8465,10 +8448,10 @@ "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", "requires": { - "boom": "2.x.x", - "cryptiles": "2.x.x", - "hoek": "2.x.x", - "sntp": "1.x.x" + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" } }, "hoek": { @@ -8481,11 +8464,11 @@ "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz", "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=", "requires": { - "domelementtype": "1", - "domhandler": "2.3", - "domutils": "1.5", - "entities": "1.0", - "readable-stream": "1.1" + "domelementtype": "1.3.0", + "domhandler": "2.3.0", + "domutils": "1.5.1", + "entities": "1.0.0", + "readable-stream": "1.1.14" }, "dependencies": { "isarray": { @@ -8498,10 +8481,10 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", + "core-util-is": "1.0.2", + "inherits": "2.0.3", "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "string_decoder": "0.10.31" } } } @@ -8511,9 +8494,9 @@ "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", "requires": { - "assert-plus": "^0.2.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "assert-plus": "0.2.0", + "jsprim": "1.3.1", + "sshpk": "1.10.2" } }, "https-browserify": { @@ -8536,8 +8519,8 @@ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "requires": { - "once": "^1.3.0", - "wrappy": "1" + "once": "1.4.0", + "wrappy": "1.0.2" } }, "inherits": { @@ -8555,7 +8538,7 @@ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "requires": { - "binary-extensions": "^1.0.0" + "binary-extensions": "1.8.0" } }, "is-buffer": { @@ -8573,7 +8556,7 @@ "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", "requires": { - "is-primitive": "^2.0.0" + "is-primitive": "2.0.0" } }, "is-extendable": { @@ -8591,7 +8574,7 @@ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "requires": { - "is-extglob": "^1.0.0" + "is-extglob": "1.0.0" } }, "is-my-json-valid": { @@ -8599,10 +8582,10 @@ "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.15.0.tgz", "integrity": "sha1-k27do8o8IR/ZjzstPgjaQ/eykVs=", "requires": { - "generate-function": "^2.0.0", - "generate-object-property": "^1.1.0", - "jsonpointer": "^4.0.0", - "xtend": "^4.0.0" + "generate-function": "2.0.0", + "generate-object-property": "1.2.0", + "jsonpointer": "4.0.1", + "xtend": "4.0.1" } }, "is-number": { @@ -8610,7 +8593,7 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", "requires": { - "kind-of": "^3.0.2" + "kind-of": "3.1.0" } }, "is-posix-bracket": { @@ -8661,20 +8644,20 @@ "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", "requires": { - "abbrev": "1.0.x", - "async": "1.x", - "escodegen": "1.8.x", - "esprima": "2.7.x", - "glob": "^5.0.15", - "handlebars": "^4.0.1", - "js-yaml": "3.x", - "mkdirp": "0.5.x", - "nopt": "3.x", - "once": "1.x", - "resolve": "1.1.x", - "supports-color": "^3.1.0", - "which": "^1.1.1", - "wordwrap": "^1.0.0" + "abbrev": "1.0.9", + "async": "1.5.2", + "escodegen": "1.8.1", + "esprima": "2.7.3", + "glob": "5.0.15", + "handlebars": "4.0.6", + "js-yaml": "3.6.1", + "mkdirp": "0.5.1", + "nopt": "3.0.6", + "once": "1.4.0", + "resolve": "1.1.7", + "supports-color": "3.2.3", + "which": "1.2.12", + "wordwrap": "1.0.0" }, "dependencies": { "async": { @@ -8687,7 +8670,7 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", "requires": { - "has-flag": "^1.0.0" + "has-flag": "1.0.0" } } } @@ -8698,7 +8681,7 @@ "integrity": "sha1-BtSRIlUJNBlHfUJWM2BuDpB4KWc=", "optional": true, "requires": { - "jsbn": "~0.1.0" + "jsbn": "0.1.0" } }, "js-yaml": { @@ -8706,8 +8689,8 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.6.1.tgz", "integrity": "sha1-bl/mfYsgXOTSL60Ft3geja3MSzA=", "requires": { - "argparse": "^1.0.7", - "esprima": "^2.6.0" + "argparse": "1.0.9", + "esprima": "2.7.3" } }, "jsbn": { @@ -8721,14 +8704,14 @@ "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.9.4.tgz", "integrity": "sha1-XjupeEjVKQJz21FK7kf+JM9ZKTQ=", "requires": { - "cli": "~1.0.0", - "console-browserify": "1.1.x", - "exit": "0.1.x", - "htmlparser2": "3.8.x", - "lodash": "3.7.x", - "minimatch": "~3.0.2", - "shelljs": "0.3.x", - "strip-json-comments": "1.0.x" + "cli": "1.0.1", + "console-browserify": "1.1.0", + "exit": "0.1.2", + "htmlparser2": "3.8.3", + "lodash": "3.7.0", + "minimatch": "3.0.3", + "shelljs": "0.3.0", + "strip-json-comments": "1.0.4" }, "dependencies": { "lodash": { @@ -8743,9 +8726,9 @@ "resolved": "https://registry.npmjs.org/jshint-loader/-/jshint-loader-0.8.3.tgz", "integrity": "sha1-ahbOiH5NLxuvveBXXjwQ970uaUs=", "requires": { - "loader-utils": "0.2.x", - "rcloader": "=0.1.2", - "strip-json-comments": "0.1.x" + "loader-utils": "0.2.16", + "rcloader": "0.1.2", + "strip-json-comments": "0.1.3" }, "dependencies": { "strip-json-comments": { @@ -8795,7 +8778,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.1.0.tgz", "integrity": "sha1-R11pil5J/15T0U4+cyQp3Iv0z0c=", "requires": { - "is-buffer": "^1.0.2" + "is-buffer": "1.1.4" } }, "lazy-cache": { @@ -8813,8 +8796,8 @@ "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "prelude-ls": "1.1.2", + "type-check": "0.3.2" } }, "loader-utils": { @@ -8822,10 +8805,10 @@ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.16.tgz", "integrity": "sha1-8IYyBm7YKCg13/iN+1JwR2Wt7m0=", "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0", - "object-assign": "^4.0.1" + "big.js": "3.1.3", + "emojis-list": "2.1.0", + "json5": "0.5.1", + "object-assign": "4.1.1" } }, "lodash": { @@ -8838,8 +8821,8 @@ "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=", "requires": { - "lodash._basecopy": "^3.0.0", - "lodash.keys": "^3.0.0" + "lodash._basecopy": "3.0.1", + "lodash.keys": "3.1.2" } }, "lodash._basecopy": { @@ -8872,9 +8855,9 @@ "resolved": "https://registry.npmjs.org/lodash.create/-/lodash.create-3.1.1.tgz", "integrity": "sha1-1/KEnw29p+BGgruM1yqwIkYd6+c=", "requires": { - "lodash._baseassign": "^3.0.0", - "lodash._basecreate": "^3.0.0", - "lodash._isiterateecall": "^3.0.0" + "lodash._baseassign": "3.2.0", + "lodash._basecreate": "3.0.3", + "lodash._isiterateecall": "3.0.9" } }, "lodash.isarguments": { @@ -8892,9 +8875,9 @@ "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", "requires": { - "lodash._getnative": "^3.0.0", - "lodash.isarguments": "^3.0.0", - "lodash.isarray": "^3.0.0" + "lodash._getnative": "3.9.1", + "lodash.isarguments": "3.1.0", + "lodash.isarray": "3.0.4" } }, "log-driver": { @@ -8912,8 +8895,8 @@ "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.3.0.tgz", "integrity": "sha1-e8xrYp46Q+hx1+Kaymrop/FcuyA=", "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" + "errno": "0.1.4", + "readable-stream": "2.0.6" } }, "micromatch": { @@ -8921,19 +8904,19 @@ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", "requires": { - "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" + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.0", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.1.0", + "normalize-path": "2.0.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.3" } }, "mime-db": { @@ -8946,7 +8929,7 @@ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.14.tgz", "integrity": "sha1-9+99l1g/yvO30oK2+LVnnaselO4=", "requires": { - "mime-db": "~1.26.0" + "mime-db": "1.26.0" } }, "minimatch": { @@ -8954,7 +8937,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", "requires": { - "brace-expansion": "^1.0.0" + "brace-expansion": "1.1.6" } }, "minimist": { @@ -9000,12 +8983,12 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.5.tgz", "integrity": "sha1-tCAqaQmbu00pKnwblbZoK2fr3JU=", "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.2", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.3", + "once": "1.4.0", + "path-is-absolute": "1.0.1" } }, "supports-color": { @@ -9013,7 +8996,7 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.1.2.tgz", "integrity": "sha1-cqJiiU2dQIuVbKBf83su2KbiotU=", "requires": { - "has-flag": "^1.0.0" + "has-flag": "1.0.0" } } } @@ -9034,28 +9017,28 @@ "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-0.7.0.tgz", "integrity": "sha1-PicsCBnjCJNeJmdECNevDhSRuDs=", "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.1.4", - "buffer": "^4.9.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", + "assert": "1.4.1", + "browserify-zlib": "0.1.4", + "buffer": "4.9.1", + "console-browserify": "1.1.0", + "constants-browserify": "1.0.0", "crypto-browserify": "3.3.0", - "domain-browser": "^1.1.1", - "events": "^1.0.0", + "domain-browser": "1.1.7", + "events": "1.1.1", "https-browserify": "0.0.1", - "os-browserify": "^0.2.0", + "os-browserify": "0.2.1", "path-browserify": "0.0.0", - "process": "^0.11.0", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.0.5", - "stream-browserify": "^2.0.1", - "stream-http": "^2.3.1", - "string_decoder": "^0.10.25", - "timers-browserify": "^2.0.2", + "process": "0.11.9", + "punycode": "1.4.1", + "querystring-es3": "0.2.1", + "readable-stream": "2.0.6", + "stream-browserify": "2.0.1", + "stream-http": "2.6.3", + "string_decoder": "0.10.31", + "timers-browserify": "2.0.2", "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.10.3", + "url": "0.11.0", + "util": "0.10.3", "vm-browserify": "0.0.4" } }, @@ -9069,7 +9052,7 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", "requires": { - "abbrev": "1" + "abbrev": "1.0.9" } }, "normalize-path": { @@ -9092,8 +9075,8 @@ "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", "requires": { - "for-own": "^0.1.4", - "is-extendable": "^0.1.1" + "for-own": "0.1.4", + "is-extendable": "0.1.1" } }, "once": { @@ -9101,7 +9084,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "requires": { - "wrappy": "1" + "wrappy": "1.0.2" } }, "optimist": { @@ -9109,8 +9092,8 @@ "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" + "minimist": "0.0.10", + "wordwrap": "0.0.3" }, "dependencies": { "minimist": { @@ -9130,12 +9113,12 @@ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "wordwrap": "~1.0.0" + "deep-is": "0.1.3", + "fast-levenshtein": "2.0.6", + "levn": "0.3.0", + "prelude-ls": "1.1.2", + "type-check": "0.3.2", + "wordwrap": "1.0.0" } }, "os-browserify": { @@ -9144,18 +9127,17 @@ "integrity": "sha1-Y/xMzuXS13Y9Jrv4YBB45sLgBE8=" }, "pako": { - "version": "github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc", - "from": "pako@github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc" + "version": "github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc" }, "parse-glob": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", "requires": { - "glob-base": "^0.3.0", - "is-dotfile": "^1.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.0" + "glob-base": "0.3.0", + "is-dotfile": "1.0.2", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" } }, "path-browserify": { @@ -9183,7 +9165,7 @@ "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "requires": { - "pinkie": "^2.0.0" + "pinkie": "2.0.4" } }, "prelude-ls": { @@ -9236,8 +9218,8 @@ "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.6.tgz", "integrity": "sha1-EQ3Kv/OX6dz/fAeJzMCkmt8exbs=", "requires": { - "is-number": "^2.0.2", - "kind-of": "^3.0.2" + "is-number": "2.1.0", + "kind-of": "3.1.0" } }, "rcfinder": { @@ -9245,7 +9227,7 @@ "resolved": "https://registry.npmjs.org/rcfinder/-/rcfinder-0.1.9.tgz", "integrity": "sha1-8+gPOH3fmugK4wpBADKWQuroERU=", "requires": { - "lodash.clonedeep": "^4.3.2" + "lodash.clonedeep": "4.5.0" } }, "rcloader": { @@ -9253,8 +9235,8 @@ "resolved": "https://registry.npmjs.org/rcloader/-/rcloader-0.1.2.tgz", "integrity": "sha1-oJY6ZDfQnvjLktky0trUl7DRc2w=", "requires": { - "lodash": "~2.4.1", - "rcfinder": "~0.1.6" + "lodash": "2.4.2", + "rcfinder": "0.1.9" }, "dependencies": { "lodash": { @@ -9269,12 +9251,12 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "0.10.31", + "util-deprecate": "1.0.2" } }, "readdirp": { @@ -9282,10 +9264,10 @@ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", "requires": { - "graceful-fs": "^4.1.2", - "minimatch": "^3.0.2", - "readable-stream": "^2.0.2", - "set-immediate-shim": "^1.0.1" + "graceful-fs": "4.1.11", + "minimatch": "3.0.3", + "readable-stream": "2.0.6", + "set-immediate-shim": "1.0.1" } }, "regex-cache": { @@ -9293,8 +9275,8 @@ "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.3.tgz", "integrity": "sha1-mxpsNdTQ3871cRrmUejp09cRQUU=", "requires": { - "is-equal-shallow": "^0.1.3", - "is-primitive": "^2.0.0" + "is-equal-shallow": "0.1.3", + "is-primitive": "2.0.0" } }, "repeat-element": { @@ -9312,27 +9294,27 @@ "resolved": "https://registry.npmjs.org/request/-/request-2.75.0.tgz", "integrity": "sha1-0rgmiihtoT6qXQGt9dGMyQ9lfZM=", "requires": { - "aws-sign2": "~0.6.0", - "aws4": "^1.2.1", - "bl": "~1.1.2", - "caseless": "~0.11.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.0", - "forever-agent": "~0.6.1", - "form-data": "~2.0.0", - "har-validator": "~2.0.6", - "hawk": "~3.1.3", - "http-signature": "~1.1.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.7", - "node-uuid": "~1.4.7", - "oauth-sign": "~0.8.1", - "qs": "~6.2.0", - "stringstream": "~0.0.4", - "tough-cookie": "~2.3.0", - "tunnel-agent": "~0.4.1" + "aws-sign2": "0.6.0", + "aws4": "1.5.0", + "bl": "1.1.2", + "caseless": "0.11.0", + "combined-stream": "1.0.5", + "extend": "3.0.0", + "forever-agent": "0.6.1", + "form-data": "2.0.0", + "har-validator": "2.0.6", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.14", + "node-uuid": "1.4.7", + "oauth-sign": "0.8.2", + "qs": "6.2.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.4.3" } }, "resolve": { @@ -9345,7 +9327,7 @@ "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", "requires": { - "align-text": "^0.1.1" + "align-text": "0.1.4" } }, "rimraf": { @@ -9353,7 +9335,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz", "integrity": "sha1-loAAk8vxoMhr2VtGJUZ1NcKd+gQ=", "requires": { - "glob": "^7.0.5" + "glob": "7.1.1" }, "dependencies": { "glob": { @@ -9361,12 +9343,12 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.2", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.3", + "once": "1.4.0", + "path-is-absolute": "1.0.1" } } } @@ -9401,7 +9383,7 @@ "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", "requires": { - "hoek": "2.x.x" + "hoek": "2.16.3" } }, "source-list-map": { @@ -9414,7 +9396,7 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", "requires": { - "amdefine": ">=0.0.4" + "amdefine": "1.0.1" } }, "sprintf-js": { @@ -9427,15 +9409,15 @@ "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.10.2.tgz", "integrity": "sha1-1agEziJpVRVjjnmNviMnPeBwpfo=", "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jodid25519": "^1.0.0", - "jsbn": "~0.1.0", - "tweetnacl": "~0.14.0" + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.0", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.6", + "jodid25519": "1.0.2", + "jsbn": "0.1.0", + "tweetnacl": "0.14.5" }, "dependencies": { "assert-plus": { @@ -9455,8 +9437,8 @@ "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" + "inherits": "2.0.3", + "readable-stream": "2.0.6" } }, "stream-http": { @@ -9464,11 +9446,11 @@ "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.6.3.tgz", "integrity": "sha1-TD3b+WNZaOos/U5I1D3l3vJiWsM=", "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.1.0", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" + "builtin-status-codes": "3.0.0", + "inherits": "2.0.3", + "readable-stream": "2.2.2", + "to-arraybuffer": "1.0.1", + "xtend": "4.0.1" }, "dependencies": { "readable-stream": { @@ -9476,13 +9458,13 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", "integrity": "sha1-qeb+w8fdqF+LsbO6cChgRVb8gl4=", "requires": { - "buffer-shims": "^1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" + "buffer-shims": "1.0.0", + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "0.10.31", + "util-deprecate": "1.0.2" } } } @@ -9502,7 +9484,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "2.1.1" } }, "strip-json-comments": { @@ -9521,15 +9503,14 @@ "integrity": "sha1-KcNXB8K3DlDQdIK10gLo7URtr9Q=" }, "text-encoding": { - "version": "github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb", - "from": "text-encoding@github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb" + "version": "github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb" }, "timers-browserify": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.2.tgz", "integrity": "sha1-q0iDz1l9zVCvIRNJoA+8pWrIa4Y=", "requires": { - "setimmediate": "^1.0.4" + "setimmediate": "1.0.5" } }, "to-arraybuffer": { @@ -9542,7 +9523,7 @@ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz", "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=", "requires": { - "punycode": "^1.4.1" + "punycode": "1.4.1" } }, "tty-browserify": { @@ -9566,7 +9547,7 @@ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", "requires": { - "prelude-ls": "~1.1.2" + "prelude-ls": "1.1.2" } }, "uglify-js": { @@ -9574,10 +9555,10 @@ "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.7.5.tgz", "integrity": "sha1-RhLAx7qu4rp8SH3kkErhIgefLKg=", "requires": { - "async": "~0.2.6", - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" + "async": "0.2.10", + "source-map": "0.5.6", + "uglify-to-browserify": "1.0.2", + "yargs": "3.10.0" }, "dependencies": { "async": { @@ -9597,9 +9578,9 @@ "resolved": "https://registry.npmjs.org/uglify-loader/-/uglify-loader-1.4.0.tgz", "integrity": "sha1-wmlbk0xO2npKzc1LpCWFtjmTA2A=", "requires": { - "loader-utils": "^0.2.7", - "source-map": "^0.5.6", - "uglify-js": "^2.4.16" + "loader-utils": "0.2.16", + "source-map": "0.5.6", + "uglify-js": "2.7.5" }, "dependencies": { "source-map": { @@ -9671,9 +9652,9 @@ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-0.2.9.tgz", "integrity": "sha1-Yuqkq15bo1/fwBgnVibjwPXj+ws=", "requires": { - "async": "^0.9.0", - "chokidar": "^1.0.0", - "graceful-fs": "^4.1.2" + "async": "0.9.2", + "chokidar": "1.6.1", + "graceful-fs": "4.1.11" }, "dependencies": { "async": { @@ -9688,21 +9669,21 @@ "resolved": "https://registry.npmjs.org/webpack/-/webpack-1.14.0.tgz", "integrity": "sha1-VPH/uSBRoyilsgV9auM8KJRiyCM=", "requires": { - "acorn": "^3.0.0", - "async": "^1.3.0", - "clone": "^1.0.2", - "enhanced-resolve": "~0.9.0", - "interpret": "^0.6.4", - "loader-utils": "^0.2.11", - "memory-fs": "~0.3.0", - "mkdirp": "~0.5.0", - "node-libs-browser": "^0.7.0", - "optimist": "~0.6.0", - "supports-color": "^3.1.0", - "tapable": "~0.1.8", - "uglify-js": "~2.7.3", - "watchpack": "^0.2.1", - "webpack-core": "~0.6.9" + "acorn": "3.3.0", + "async": "1.5.2", + "clone": "1.0.2", + "enhanced-resolve": "0.9.1", + "interpret": "0.6.6", + "loader-utils": "0.2.16", + "memory-fs": "0.3.0", + "mkdirp": "0.5.1", + "node-libs-browser": "0.7.0", + "optimist": "0.6.1", + "supports-color": "3.2.3", + "tapable": "0.1.10", + "uglify-js": "2.7.5", + "watchpack": "0.2.9", + "webpack-core": "0.6.9" }, "dependencies": { "async": { @@ -9715,7 +9696,7 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", "requires": { - "has-flag": "^1.0.0" + "has-flag": "1.0.0" } } } @@ -9725,8 +9706,8 @@ "resolved": "https://registry.npmjs.org/webpack-core/-/webpack-core-0.6.9.tgz", "integrity": "sha1-/FcViMhVjad76e+23r3Fo7FyvcI=", "requires": { - "source-list-map": "~0.1.7", - "source-map": "~0.4.1" + "source-list-map": "0.1.8", + "source-map": "0.4.4" }, "dependencies": { "source-map": { @@ -9734,7 +9715,7 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", "requires": { - "amdefine": ">=0.0.4" + "amdefine": "1.0.1" } } } @@ -9744,7 +9725,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-1.2.12.tgz", "integrity": "sha1-3me15FAmnxlJCe8j7OTr5Bb6EZI=", "requires": { - "isexe": "^1.1.1" + "isexe": "1.1.2" } }, "window-size": { @@ -9763,8 +9744,7 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "xmldom": { - "version": "github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6", - "from": "xmldom@github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6" + "version": "github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6" }, "xtend": { "version": "4.0.1", @@ -9776,9 +9756,9 @@ "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", + "camelcase": "1.2.1", + "cliui": "2.1.0", + "decamelize": "1.2.0", "window-size": "0.1.0" } } @@ -9790,7 +9770,7 @@ "integrity": "sha512-pd++/v+fS0LQKmzWlW6R1lziTXFqhfGeS6sYLfuTIqEy2pDzAbjutbSW8f9tnJdEEMn/9XhAQlT34VAtl9h4MQ==", "requires": { "nan": "2.8.0", - "prebuild-install": "^5.0.0" + "prebuild-install": "5.2.0" }, "dependencies": { "nan": { @@ -9812,7 +9792,7 @@ "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", "dev": true, "requires": { - "package-json": "^4.0.0" + "package-json": "4.0.1" } }, "lazy-val": { @@ -9826,7 +9806,7 @@ "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", "dev": true, "requires": { - "invert-kv": "^2.0.0" + "invert-kv": "2.0.0" } }, "listr": { @@ -9835,22 +9815,22 @@ "integrity": "sha1-a84sD1YD+klYDqF81qAMwOX6RRo=", "dev": true, "requires": { - "chalk": "^1.1.3", - "cli-truncate": "^0.2.1", - "figures": "^1.7.0", - "indent-string": "^2.1.0", - "is-promise": "^2.1.0", - "is-stream": "^1.1.0", - "listr-silent-renderer": "^1.1.1", - "listr-update-renderer": "^0.2.0", - "listr-verbose-renderer": "^0.4.0", - "log-symbols": "^1.0.2", - "log-update": "^1.0.2", - "ora": "^0.2.3", - "p-map": "^1.1.1", - "rxjs": "^5.0.0-beta.11", - "stream-to-observable": "^0.1.0", - "strip-ansi": "^3.0.1" + "chalk": "1.1.3", + "cli-truncate": "0.2.1", + "figures": "1.7.0", + "indent-string": "2.1.0", + "is-promise": "2.1.0", + "is-stream": "1.1.0", + "listr-silent-renderer": "1.1.1", + "listr-update-renderer": "0.2.0", + "listr-verbose-renderer": "0.4.1", + "log-symbols": "1.0.2", + "log-update": "1.0.2", + "ora": "0.2.3", + "p-map": "1.2.0", + "rxjs": "5.5.12", + "stream-to-observable": "0.1.0", + "strip-ansi": "3.0.1" }, "dependencies": { "ansi-styles": { @@ -9865,11 +9845,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "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" + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" } }, "indent-string": { @@ -9878,7 +9858,7 @@ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", "dev": true, "requires": { - "repeating": "^2.0.0" + "repeating": "2.0.1" } }, "supports-color": { @@ -9901,14 +9881,14 @@ "integrity": "sha1-yoDhd5tOcCZoB+ju0a1qvjmFUPk=", "dev": true, "requires": { - "chalk": "^1.1.3", - "cli-truncate": "^0.2.1", - "elegant-spinner": "^1.0.1", - "figures": "^1.7.0", - "indent-string": "^3.0.0", - "log-symbols": "^1.0.2", - "log-update": "^1.0.2", - "strip-ansi": "^3.0.1" + "chalk": "1.1.3", + "cli-truncate": "0.2.1", + "elegant-spinner": "1.0.1", + "figures": "1.7.0", + "indent-string": "3.2.0", + "log-symbols": "1.0.2", + "log-update": "1.0.2", + "strip-ansi": "3.0.1" }, "dependencies": { "ansi-styles": { @@ -9923,11 +9903,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "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" + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" } }, "supports-color": { @@ -9944,10 +9924,10 @@ "integrity": "sha1-ggb0z21S3cWCfl/RSYng6WWTOjU=", "dev": true, "requires": { - "chalk": "^1.1.3", - "cli-cursor": "^1.0.2", - "date-fns": "^1.27.2", - "figures": "^1.7.0" + "chalk": "1.1.3", + "cli-cursor": "1.0.2", + "date-fns": "1.29.0", + "figures": "1.7.0" }, "dependencies": { "ansi-styles": { @@ -9962,11 +9942,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "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" + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" } }, "supports-color": { @@ -9983,10 +9963,10 @@ "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "graceful-fs": "4.1.11", + "parse-json": "4.0.0", + "pify": "3.0.0", + "strip-bom": "3.0.0" } }, "loader-runner": { @@ -10001,9 +9981,9 @@ "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", "dev": true, "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0" + "big.js": "3.2.0", + "emojis-list": "2.1.0", + "json5": "0.5.1" } }, "locate-path": { @@ -10011,8 +9991,8 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "p-locate": "2.0.0", + "path-exists": "3.0.0" } }, "lodash": { @@ -10058,7 +10038,7 @@ "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", "dev": true, "requires": { - "chalk": "^1.0.0" + "chalk": "1.1.3" }, "dependencies": { "ansi-styles": { @@ -10073,11 +10053,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "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" + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" } }, "supports-color": { @@ -10094,8 +10074,8 @@ "integrity": "sha1-GZKfZMQJPS0ucHWh2tivWcKWuNE=", "dev": true, "requires": { - "ansi-escapes": "^1.0.0", - "cli-cursor": "^1.0.2" + "ansi-escapes": "1.4.0", + "cli-cursor": "1.0.2" } }, "loose-envify": { @@ -10103,7 +10083,7 @@ "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" + "js-tokens": "4.0.0" } }, "lottie-web": { @@ -10117,8 +10097,8 @@ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", "dev": true, "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" + "currently-unhandled": "0.4.1", + "signal-exit": "3.0.2" } }, "lower-case": { @@ -10139,15 +10119,14 @@ "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", "dev": true, "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "pseudomap": "1.0.2", + "yallist": "2.1.2" } }, "machine-uuid-sync": { "version": "git+https://github.com/rajivshah3/machine-uuid-sync.git#a5ffa8eab86764db0c69aadbeef9a14b2ae9ae5c", - "from": "git+https://github.com/rajivshah3/machine-uuid-sync.git", "requires": { - "uuid": "^3.1.0" + "uuid": "3.3.2" } }, "make-dir": { @@ -10155,7 +10134,7 @@ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", "requires": { - "pify": "^3.0.0" + "pify": "3.0.0" } }, "map-age-cleaner": { @@ -10164,7 +10143,7 @@ "integrity": "sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ==", "dev": true, "requires": { - "p-defer": "^1.0.0" + "p-defer": "1.0.0" } }, "map-cache": { @@ -10185,7 +10164,7 @@ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", "dev": true, "requires": { - "object-visit": "^1.0.0" + "object-visit": "1.0.1" } }, "markdown-escapes": { @@ -10204,9 +10183,9 @@ "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dev": true, "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "hash-base": "3.0.4", + "inherits": "2.0.3", + "safe-buffer": "5.1.2" } }, "mdast-add-list-metadata": { @@ -10229,9 +10208,9 @@ "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==", "dev": true, "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^1.0.0", - "p-is-promise": "^1.1.0" + "map-age-cleaner": "0.1.2", + "mimic-fn": "1.2.0", + "p-is-promise": "1.1.0" } }, "memory-fs": { @@ -10240,8 +10219,8 @@ "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", "dev": true, "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" + "errno": "0.1.7", + "readable-stream": "2.3.6" } }, "meow": { @@ -10250,15 +10229,15 @@ "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", "dev": true, "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist": "^1.1.3", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0" + "camelcase-keys": "4.2.0", + "decamelize-keys": "1.1.0", + "loud-rejection": "1.6.0", + "minimist": "1.2.0", + "minimist-options": "3.0.2", + "normalize-package-data": "2.4.0", + "read-pkg-up": "3.0.0", + "redent": "2.0.0", + "trim-newlines": "2.0.0" } }, "merge-descriptors": { @@ -10279,19 +10258,19 @@ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "braces": "2.3.2", + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "extglob": "2.0.4", + "fragment-cache": "0.2.1", + "kind-of": "6.0.2", + "nanomatch": "1.2.13", + "object.pick": "1.3.0", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" } }, "miller-rabin": { @@ -10300,8 +10279,8 @@ "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", "dev": true, "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" + "bn.js": "4.11.8", + "brorand": "1.1.0" } }, "mime": { @@ -10322,7 +10301,7 @@ "integrity": "sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==", "dev": true, "requires": { - "mime-db": "~1.36.0" + "mime-db": "1.36.0" } }, "mimic-fn": { @@ -10342,9 +10321,9 @@ "integrity": "sha512-o+Jm+ocb0asEngdM6FsZWtZsRzA8koFUudIDwYUfl94M3PejPHG7Vopw5hN9V8WsMkSFpm3tZP3Fesz89EyrfQ==", "dev": true, "requires": { - "loader-utils": "^1.1.0", - "schema-utils": "^1.0.0", - "webpack-sources": "^1.1.0" + "loader-utils": "1.1.0", + "schema-utils": "1.0.0", + "webpack-sources": "1.3.0" } }, "minimalistic-assert": { @@ -10364,7 +10343,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "requires": { - "brace-expansion": "^1.1.7" + "brace-expansion": "1.1.11" } }, "minimist": { @@ -10378,8 +10357,8 @@ "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", "dev": true, "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" + "arrify": "1.0.1", + "is-plain-obj": "1.1.0" } }, "minipass": { @@ -10387,8 +10366,8 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" + "safe-buffer": "5.1.2", + "yallist": "3.0.2" }, "dependencies": { "yallist": { @@ -10403,7 +10382,7 @@ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.1.tgz", "integrity": "sha512-TrfjCjk4jLhcJyGMYymBH6oTXcWjYbUAXTHDbtnWHjZC25h0cdajHuPE1zxb4DVmu8crfh+HwH/WMuyLG0nHBg==", "requires": { - "minipass": "^2.2.1" + "minipass": "2.3.5" } }, "mississippi": { @@ -10412,16 +10391,16 @@ "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", "dev": true, "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^2.0.1", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" + "concat-stream": "1.6.2", + "duplexify": "3.6.1", + "end-of-stream": "1.4.1", + "flush-write-stream": "1.0.3", + "from2": "2.3.0", + "parallel-transform": "1.1.0", + "pump": "2.0.1", + "pumpify": "1.5.1", + "stream-each": "1.2.3", + "through2": "2.0.3" }, "dependencies": { "through2": { @@ -10430,8 +10409,8 @@ "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", "dev": true, "requires": { - "readable-stream": "^2.1.5", - "xtend": "~4.0.1" + "readable-stream": "2.3.6", + "xtend": "4.0.1" } } } @@ -10442,8 +10421,8 @@ "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", "dev": true, "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" + "for-in": "1.0.2", + "is-extendable": "1.0.1" }, "dependencies": { "is-extendable": { @@ -10452,7 +10431,7 @@ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "is-plain-object": "^2.0.4" + "is-plain-object": "2.0.4" } } } @@ -10463,8 +10442,8 @@ "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", "dev": true, "requires": { - "for-in": "^0.1.3", - "is-extendable": "^0.1.1" + "for-in": "0.1.8", + "is-extendable": "0.1.1" }, "dependencies": { "for-in": { @@ -10496,12 +10475,12 @@ "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", "dev": true, "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" + "aproba": "1.2.0", + "copy-concurrently": "1.0.5", + "fs-write-stream-atomic": "1.0.10", + "mkdirp": "0.5.1", + "rimraf": "2.6.2", + "run-queue": "1.0.3" } }, "ms": { @@ -10526,17 +10505,17 @@ "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", "dev": true, "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "fragment-cache": "0.2.1", + "is-windows": "1.0.2", + "kind-of": "6.0.2", + "object.pick": "1.3.0", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" } }, "napi-build-utils": { @@ -10549,9 +10528,9 @@ "resolved": "https://registry.npmjs.org/needle/-/needle-2.2.4.tgz", "integrity": "sha512-HyoqEb4wr/rsoaIDfTH2aVL9nWtQqba2/HvMv+++m8u0dz808MaagKILxtfeSN7QU7nvbQ79zk3vYOJp9zsNEA==", "requires": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" + "debug": "2.6.9", + "iconv-lite": "0.4.24", + "sax": "1.2.4" }, "dependencies": { "debug": { @@ -10593,7 +10572,7 @@ "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", "dev": true, "requires": { - "lower-case": "^1.1.1" + "lower-case": "1.1.4" } }, "node-abi": { @@ -10601,7 +10580,7 @@ "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.4.5.tgz", "integrity": "sha512-aa/UC6Nr3+tqhHGRsAuw/edz7/q9nnetBrKWxj6rpTtm+0X9T1qU7lIEHMS3yN9JwAbRiKUbRRFy1PLz/y3aaA==", "requires": { - "semver": "^5.4.1" + "semver": "5.6.0" } }, "node-fetch": { @@ -10609,8 +10588,8 @@ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", "requires": { - "encoding": "^0.1.11", - "is-stream": "^1.0.1" + "encoding": "0.1.12", + "is-stream": "1.1.0" } }, "node-hid": { @@ -10618,9 +10597,9 @@ "resolved": "https://registry.npmjs.org/node-hid/-/node-hid-0.7.3.tgz", "integrity": "sha512-LOCqWqcOlng+Kn1Qj/54zrPVfCagg1O7RlSgMmugykBcoYvUud6BswTrJM2aXuBac+bCCm3lA2srRG8YfmyXZQ==", "requires": { - "bindings": "^1.3.0", - "nan": "^2.10.0", - "prebuild-install": "^4.0.0" + "bindings": "1.3.0", + "nan": "2.11.1", + "prebuild-install": "4.0.0" }, "dependencies": { "prebuild-install": { @@ -10628,21 +10607,21 @@ "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-4.0.0.tgz", "integrity": "sha512-7tayxeYboJX0RbVzdnKyGl2vhQRWr6qfClEXDhOkXjuaOKCw2q8aiuFhONRYVsG/czia7KhpykIlI2S2VaPunA==", "requires": { - "detect-libc": "^1.0.3", - "expand-template": "^1.0.2", + "detect-libc": "1.0.3", + "expand-template": "1.1.1", "github-from-package": "0.0.0", - "minimist": "^1.2.0", - "mkdirp": "^0.5.1", - "node-abi": "^2.2.0", - "noop-logger": "^0.1.1", - "npmlog": "^4.0.1", - "os-homedir": "^1.0.1", - "pump": "^2.0.1", - "rc": "^1.1.6", - "simple-get": "^2.7.0", - "tar-fs": "^1.13.0", - "tunnel-agent": "^0.6.0", - "which-pm-runs": "^1.0.0" + "minimist": "1.2.0", + "mkdirp": "0.5.1", + "node-abi": "2.4.5", + "noop-logger": "0.1.1", + "npmlog": "4.1.2", + "os-homedir": "1.0.2", + "pump": "2.0.1", + "rc": "1.2.8", + "simple-get": "2.8.1", + "tar-fs": "1.16.3", + "tunnel-agent": "0.6.0", + "which-pm-runs": "1.0.0" } } } @@ -10653,28 +10632,28 @@ "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", "dev": true, "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^1.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", + "assert": "1.4.1", + "browserify-zlib": "0.2.0", + "buffer": "4.9.1", + "console-browserify": "1.1.0", + "constants-browserify": "1.0.0", + "crypto-browserify": "3.12.0", + "domain-browser": "1.2.0", + "events": "1.1.1", + "https-browserify": "1.0.0", + "os-browserify": "0.3.0", "path-browserify": "0.0.0", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", + "process": "0.11.10", + "punycode": "1.4.1", + "querystring-es3": "0.2.1", + "readable-stream": "2.3.6", + "stream-browserify": "2.0.1", + "stream-http": "2.8.3", + "string_decoder": "1.1.1", + "timers-browserify": "2.0.10", "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.10.3", + "url": "0.11.0", + "util": "0.10.4", "vm-browserify": "0.0.4" } }, @@ -10688,16 +10667,16 @@ "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz", "integrity": "sha512-d1xFs+C/IPS8Id0qPTZ4bUT8wWryfR/OzzAFxweG+uLN85oPzyo2Iw6bVlLQ/JOdgNonXLCoRyqDzDWq4iw72A==", "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" + "detect-libc": "1.0.3", + "mkdirp": "0.5.1", + "needle": "2.2.4", + "nopt": "4.0.1", + "npm-packlist": "1.1.12", + "npmlog": "4.1.2", + "rc": "1.2.8", + "rimraf": "2.6.2", + "semver": "5.6.0", + "tar": "4.4.6" } }, "node-releases": { @@ -10706,7 +10685,7 @@ "integrity": "sha512-G8nnF9cP9QPP/jUmYWw/uUUhumHmkm+X/EarCugYFjYm2uXRMFeOD6CVT3RLdoyCvDUNy51nirGfUItKWs/S1g==", "dev": true, "requires": { - "semver": "^5.3.0" + "semver": "5.6.0" } }, "noop-logger": { @@ -10719,8 +10698,8 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", "requires": { - "abbrev": "1", - "osenv": "^0.1.4" + "abbrev": "1.1.1", + "osenv": "0.1.5" } }, "normalize-package-data": { @@ -10729,10 +10708,10 @@ "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", "dev": true, "requires": { - "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "hosted-git-info": "2.7.1", + "is-builtin-module": "1.0.0", + "semver": "5.6.0", + "validate-npm-package-license": "3.0.4" } }, "normalize-path": { @@ -10741,7 +10720,7 @@ "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "dev": true, "requires": { - "remove-trailing-separator": "^1.0.1" + "remove-trailing-separator": "1.1.0" } }, "notp": { @@ -10759,8 +10738,8 @@ "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.1.12.tgz", "integrity": "sha512-WJKFOVMeAlsU/pjXuqVdzU0WfgtIBCupkEVwn+1Y0ERAbUfWw8R4GjgVbaKnUjRoD2FoQbHOCbOyT5Mbs9Lw4g==", "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" + "ignore-walk": "3.0.1", + "npm-bundled": "1.0.5" } }, "npm-run-path": { @@ -10769,7 +10748,7 @@ "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", "dev": true, "requires": { - "path-key": "^2.0.0" + "path-key": "2.0.1" } }, "npmlog": { @@ -10777,10 +10756,10 @@ "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" + "are-we-there-yet": "1.1.5", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" } }, "nth-check": { @@ -10789,7 +10768,7 @@ "integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=", "dev": true, "requires": { - "boolbase": "~1.0.0" + "boolbase": "1.0.0" } }, "nugget": { @@ -10798,12 +10777,12 @@ "integrity": "sha1-IBCVpIfhrTYIGzQy+jytpPjQcbA=", "dev": true, "requires": { - "debug": "^2.1.3", - "minimist": "^1.1.0", - "pretty-bytes": "^1.0.2", - "progress-stream": "^1.1.0", - "request": "^2.45.0", - "single-line-log": "^1.1.2", + "debug": "2.6.9", + "minimist": "1.2.0", + "pretty-bytes": "1.0.4", + "progress-stream": "1.2.0", + "request": "2.88.0", + "single-line-log": "1.1.2", "throttleit": "0.0.2" }, "dependencies": { @@ -10846,9 +10825,9 @@ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", "dev": true, "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" + "copy-descriptor": "0.1.1", + "define-property": "0.2.5", + "kind-of": "3.2.2" }, "dependencies": { "define-property": { @@ -10857,7 +10836,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "is-descriptor": "0.1.6" } }, "kind-of": { @@ -10866,7 +10845,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "is-buffer": "1.1.6" } } } @@ -10883,7 +10862,7 @@ "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", "dev": true, "requires": { - "isobject": "^3.0.0" + "isobject": "3.0.1" } }, "object.getownpropertydescriptors": { @@ -10892,8 +10871,8 @@ "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", "dev": true, "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.5.1" + "define-properties": "1.1.3", + "es-abstract": "1.12.0" } }, "object.pick": { @@ -10902,7 +10881,7 @@ "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", "dev": true, "requires": { - "isobject": "^3.0.1" + "isobject": "3.0.1" } }, "on-finished": { @@ -10919,7 +10898,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "requires": { - "wrappy": "1" + "wrappy": "1.0.2" } }, "onetime": { @@ -10934,7 +10913,7 @@ "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", "dev": true, "requires": { - "is-wsl": "^1.1.0" + "is-wsl": "1.1.0" } }, "ora": { @@ -10943,10 +10922,10 @@ "integrity": "sha1-N1J9Igrc1Tw5tzVx11QVbV22V6Q=", "dev": true, "requires": { - "chalk": "^1.1.1", - "cli-cursor": "^1.0.2", - "cli-spinners": "^0.1.2", - "object-assign": "^4.0.1" + "chalk": "1.1.3", + "cli-cursor": "1.0.2", + "cli-spinners": "0.1.2", + "object-assign": "4.1.1" }, "dependencies": { "ansi-styles": { @@ -10961,11 +10940,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "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" + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" } }, "supports-color": { @@ -10982,7 +10961,7 @@ "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", "dev": true, "requires": { - "url-parse": "^1.4.3" + "url-parse": "1.4.3" } }, "os-browserify": { @@ -11002,9 +10981,9 @@ "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==", "dev": true, "requires": { - "execa": "^0.10.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" + "execa": "0.10.0", + "lcid": "2.0.0", + "mem": "4.0.0" } }, "os-tmpdir": { @@ -11017,8 +10996,8 @@ "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" } }, "p-defer": { @@ -11044,7 +11023,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "requires": { - "p-try": "^1.0.0" + "p-try": "1.0.0" } }, "p-locate": { @@ -11052,7 +11031,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "requires": { - "p-limit": "^1.1.0" + "p-limit": "1.3.0" } }, "p-map": { @@ -11072,10 +11051,10 @@ "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", "dev": true, "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" + "got": "6.7.1", + "registry-auth-token": "3.3.2", + "registry-url": "3.1.0", + "semver": "5.6.0" } }, "pako": { @@ -11089,9 +11068,9 @@ "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", "dev": true, "requires": { - "cyclist": "~0.2.2", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" + "cyclist": "0.2.2", + "inherits": "2.0.3", + "readable-stream": "2.3.6" } }, "param-case": { @@ -11100,7 +11079,7 @@ "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", "dev": true, "requires": { - "no-case": "^2.2.0" + "no-case": "2.3.2" } }, "parse-asn1": { @@ -11109,11 +11088,11 @@ "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", "dev": true, "requires": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3" + "asn1.js": "4.10.1", + "browserify-aes": "1.2.0", + "create-hash": "1.2.0", + "evp_bytestokey": "1.0.3", + "pbkdf2": "3.0.17" } }, "parse-color": { @@ -11122,7 +11101,7 @@ "integrity": "sha1-e3SLlag/A/FqlPU15S1/PZRlhhk=", "dev": true, "requires": { - "color-convert": "~0.5.0" + "color-convert": "0.5.3" }, "dependencies": { "color-convert": { @@ -11138,12 +11117,12 @@ "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.0.tgz", "integrity": "sha512-XXtDdOPLSB0sHecbEapQi6/58U/ODj/KWfIXmmMCJF/eRn8laX6LZbOyioMoETOOJoWRW8/qTSl5VQkUIfKM5g==", "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" + "character-entities": "1.2.2", + "character-entities-legacy": "1.1.2", + "character-reference-invalid": "1.1.2", + "is-alphanumerical": "1.0.2", + "is-decimal": "1.0.2", + "is-hexadecimal": "1.0.2" } }, "parse-json": { @@ -11152,8 +11131,8 @@ "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "error-ex": "1.3.2", + "json-parse-better-errors": "1.0.2" } }, "parse-passwd": { @@ -11174,6 +11153,69 @@ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", "dev": true }, + "patch-package": { + "version": "5.1.1", + "resolved": "http://registry.npmjs.org/patch-package/-/patch-package-5.1.1.tgz", + "integrity": "sha512-bO+vfFGgTVTtv89kXWGEMIPnrYhhhMtbOnJKStfIhNWUxperVjlI++1ixksi0YPCMPGuFy9W3zsKHxIITV2r2A==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "cross-spawn": "5.1.0", + "fs-extra": "4.0.3", + "minimist": "1.2.0", + "rimraf": "2.6.2", + "slash": "1.0.0", + "tmp": "0.0.31", + "update-notifier": "2.5.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "4.1.3", + "shebang-command": "1.2.0", + "which": "1.3.1" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "tmp": { + "version": "0.0.31", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz", + "integrity": "sha1-jzirlDjhcxXl29izZX6L+yd65Kc=", + "dev": true, + "requires": { + "os-tmpdir": "1.0.2" + } + } + } + }, "path-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", @@ -11235,7 +11277,7 @@ "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, "requires": { - "pify": "^3.0.0" + "pify": "3.0.0" } }, "pbkdf2": { @@ -11244,11 +11286,11 @@ "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", "dev": true, "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "create-hash": "1.2.0", + "create-hmac": "1.1.7", + "ripemd160": "2.0.2", + "safe-buffer": "5.1.2", + "sha.js": "2.4.11" } }, "pend": { @@ -11284,7 +11326,7 @@ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { - "pinkie": "^2.0.0" + "pinkie": "2.0.4" } }, "pino": { @@ -11293,14 +11335,14 @@ "integrity": "sha512-LFDwmhyWLBnmwO/2UFbWu1jEGVDzaPupaVdx0XcZ3tIAx1EDEBauzxXf2S0UcFK7oe+X9MApjH0hx9U1XMgfCA==", "dev": true, "requires": { - "chalk": "^2.4.1", - "fast-json-parse": "^1.0.3", - "fast-safe-stringify": "^1.2.3", - "flatstr": "^1.0.5", - "pino-std-serializers": "^2.0.0", - "pump": "^3.0.0", - "quick-format-unescaped": "^1.1.2", - "split2": "^2.2.0" + "chalk": "2.4.1", + "fast-json-parse": "1.0.3", + "fast-safe-stringify": "1.2.3", + "flatstr": "1.0.8", + "pino-std-serializers": "2.3.0", + "pump": "3.0.0", + "quick-format-unescaped": "1.1.2", + "split2": "2.2.0" }, "dependencies": { "pump": { @@ -11309,8 +11351,8 @@ "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "end-of-stream": "1.4.1", + "once": "1.4.0" } } } @@ -11326,7 +11368,7 @@ "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.0.tgz", "integrity": "sha512-8t5BsXy1LUIjn3WWOlOuFDuKswhQb/tkak641lvBgmPOBUQHXveORtlMCp6OdPV1dtuTaEahKA8VNz6uLfKBtA==", "requires": { - "node-modules-regexp": "^1.0.0" + "node-modules-regexp": "1.0.0" } }, "pkg-dir": { @@ -11334,7 +11376,7 @@ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "requires": { - "find-up": "^2.1.0" + "find-up": "2.1.0" } }, "pkg-up": { @@ -11343,7 +11385,7 @@ "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", "dev": true, "requires": { - "find-up": "^2.1.0" + "find-up": "2.1.0" } }, "plist": { @@ -11352,9 +11394,9 @@ "integrity": "sha512-GpgvHHocGRyQm74b6FWEZZVRroHKE1I0/BTjAmySaohK+cUn+hZpbqXkc3KWgW3gQYkqcQej35FohcT0FRlkRQ==", "dev": true, "requires": { - "base64-js": "^1.2.3", - "xmlbuilder": "^9.0.7", - "xmldom": "0.1.x" + "base64-js": "1.3.0", + "xmlbuilder": "9.0.7", + "xmldom": "0.1.27" }, "dependencies": { "base64-js": { @@ -11383,9 +11425,9 @@ "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", "dev": true, "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.0" + "chalk": "2.4.1", + "source-map": "0.6.1", + "supports-color": "5.5.0" } }, "postcss-modules-extract-imports": { @@ -11394,7 +11436,7 @@ "integrity": "sha1-ZhQOzs447wa/DT41XWm/WdFB6oU=", "dev": true, "requires": { - "postcss": "^6.0.1" + "postcss": "6.0.23" } }, "postcss-modules-local-by-default": { @@ -11403,8 +11445,8 @@ "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", "dev": true, "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" + "css-selector-tokenizer": "0.7.0", + "postcss": "6.0.23" } }, "postcss-modules-scope": { @@ -11413,8 +11455,8 @@ "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", "dev": true, "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" + "css-selector-tokenizer": "0.7.0", + "postcss": "6.0.23" } }, "postcss-modules-values": { @@ -11423,8 +11465,8 @@ "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", "dev": true, "requires": { - "icss-replace-symbols": "^1.1.0", - "postcss": "^6.0.1" + "icss-replace-symbols": "1.1.0", + "postcss": "6.0.23" } }, "postcss-value-parser": { @@ -11438,22 +11480,22 @@ "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.2.0.tgz", "integrity": "sha512-cpuyMS8y30Df0bnN+I8pdmpwtZbm8fj9cQADOhSH/qnS1exb80elZ707FTMohFBJax4NyWjJVSg0chRQXzHSvg==", "requires": { - "detect-libc": "^1.0.3", - "expand-template": "^1.0.2", + "detect-libc": "1.0.3", + "expand-template": "1.1.1", "github-from-package": "0.0.0", - "minimist": "^1.2.0", - "mkdirp": "^0.5.1", - "napi-build-utils": "^1.0.1", - "node-abi": "^2.2.0", - "noop-logger": "^0.1.1", - "npmlog": "^4.0.1", - "os-homedir": "^1.0.1", - "pump": "^2.0.1", - "rc": "^1.2.7", - "simple-get": "^2.7.0", - "tar-fs": "^1.13.0", - "tunnel-agent": "^0.6.0", - "which-pm-runs": "^1.0.0" + "minimist": "1.2.0", + "mkdirp": "0.5.1", + "napi-build-utils": "1.0.1", + "node-abi": "2.4.5", + "noop-logger": "0.1.1", + "npmlog": "4.1.2", + "os-homedir": "1.0.2", + "pump": "2.0.1", + "rc": "1.2.8", + "simple-get": "2.8.1", + "tar-fs": "1.16.3", + "tunnel-agent": "0.6.0", + "which-pm-runs": "1.0.0" } }, "prepend-http": { @@ -11468,8 +11510,8 @@ "integrity": "sha1-CiLoIQYJrTVUL4yNXSFZr/B1HIQ=", "dev": true, "requires": { - "get-stdin": "^4.0.1", - "meow": "^3.1.0" + "get-stdin": "4.0.1", + "meow": "3.7.0" }, "dependencies": { "camelcase": { @@ -11484,8 +11526,8 @@ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" + "camelcase": "2.1.1", + "map-obj": "1.0.1" } }, "find-up": { @@ -11494,8 +11536,8 @@ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "dev": true, "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" } }, "indent-string": { @@ -11504,7 +11546,7 @@ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", "dev": true, "requires": { - "repeating": "^2.0.0" + "repeating": "2.0.1" } }, "load-json-file": { @@ -11513,11 +11555,11 @@ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" } }, "map-obj": { @@ -11532,16 +11574,16 @@ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" + "camelcase-keys": "2.1.0", + "decamelize": "1.2.0", + "loud-rejection": "1.6.0", + "map-obj": "1.0.1", + "minimist": "1.2.0", + "normalize-package-data": "2.4.0", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "redent": "1.0.0", + "trim-newlines": "1.0.0" } }, "parse-json": { @@ -11550,7 +11592,7 @@ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { - "error-ex": "^1.2.0" + "error-ex": "1.3.2" } }, "path-exists": { @@ -11559,7 +11601,7 @@ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, "requires": { - "pinkie-promise": "^2.0.0" + "pinkie-promise": "2.0.1" } }, "path-type": { @@ -11568,9 +11610,9 @@ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" } }, "pify": { @@ -11585,9 +11627,9 @@ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", "dev": true, "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" } }, "read-pkg-up": { @@ -11596,8 +11638,8 @@ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "dev": true, "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" + "find-up": "1.1.2", + "read-pkg": "1.1.0" } }, "redent": { @@ -11606,8 +11648,8 @@ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", "dev": true, "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" + "indent-string": "2.1.0", + "strip-indent": "1.0.1" } }, "strip-bom": { @@ -11616,7 +11658,7 @@ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", "dev": true, "requires": { - "is-utf8": "^0.2.0" + "is-utf8": "0.2.1" } }, "strip-indent": { @@ -11625,7 +11667,7 @@ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", "dev": true, "requires": { - "get-stdin": "^4.0.1" + "get-stdin": "4.0.1" } }, "trim-newlines": { @@ -11642,8 +11684,8 @@ "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", "dev": true, "requires": { - "renderkid": "^2.0.1", - "utila": "~0.4" + "renderkid": "2.0.2", + "utila": "0.4.0" } }, "private": { @@ -11675,8 +11717,8 @@ "integrity": "sha1-LNPP6jO6OonJwSHsM0er6asSX3c=", "dev": true, "requires": { - "speedometer": "~0.1.2", - "through2": "~0.2.3" + "speedometer": "0.1.4", + "through2": "0.2.3" }, "dependencies": { "isarray": { @@ -11697,10 +11739,10 @@ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "dev": true, "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", + "core-util-is": "1.0.2", + "inherits": "2.0.3", "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "string_decoder": "0.10.31" } }, "string_decoder": { @@ -11715,8 +11757,8 @@ "integrity": "sha1-6zKE2k6jEbbMis42U3SKUqvyWj8=", "dev": true, "requires": { - "readable-stream": "~1.1.9", - "xtend": "~2.1.1" + "readable-stream": "1.1.14", + "xtend": "2.1.2" } }, "xtend": { @@ -11725,7 +11767,7 @@ "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", "dev": true, "requires": { - "object-keys": "~0.4.0" + "object-keys": "0.4.0" } } } @@ -11735,7 +11777,7 @@ "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", "requires": { - "asap": "~2.0.3" + "asap": "2.0.6" } }, "promise-inflight": { @@ -11749,8 +11791,8 @@ "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.2.tgz", "integrity": "sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ==", "requires": { - "loose-envify": "^1.3.1", - "object-assign": "^4.1.1" + "loose-envify": "1.4.0", + "object-assign": "4.1.1" } }, "proxy-addr": { @@ -11759,7 +11801,7 @@ "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", "dev": true, "requires": { - "forwarded": "~0.1.2", + "forwarded": "0.1.2", "ipaddr.js": "1.8.0" } }, @@ -11793,12 +11835,12 @@ "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", "dev": true, "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.2.0", + "parse-asn1": "5.1.1", + "randombytes": "2.0.6", + "safe-buffer": "5.1.2" } }, "pump": { @@ -11806,8 +11848,8 @@ "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "end-of-stream": "1.4.1", + "once": "1.4.0" } }, "pumpify": { @@ -11816,9 +11858,9 @@ "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", "dev": true, "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" + "duplexify": "3.6.1", + "inherits": "2.0.3", + "pump": "2.0.1" } }, "punycode": { @@ -11833,14 +11875,14 @@ "integrity": "sha512-GH4PmhJf9wBRAPvtJkEJLAvdNNOofZortmBZSj8cGWYni98GUFqsf66blOEfJbo5B8l0KG5HR2d/W2MejnUrzg==", "dev": true, "requires": { - "debug": "^3.1.0", - "extract-zip": "^1.6.6", - "https-proxy-agent": "^2.2.1", - "mime": "^2.0.3", - "progress": "^2.0.0", - "proxy-from-env": "^1.0.0", - "rimraf": "^2.6.1", - "ws": "^5.1.1" + "debug": "3.2.6", + "extract-zip": "1.6.7", + "https-proxy-agent": "2.2.1", + "mime": "2.3.1", + "progress": "2.0.1", + "proxy-from-env": "1.0.0", + "rimraf": "2.6.2", + "ws": "5.2.2" } }, "qr.js": { @@ -11883,7 +11925,7 @@ "integrity": "sha1-DKWB3jF0vs7yWsPC6JVjQjgdtpg=", "dev": true, "requires": { - "fast-safe-stringify": "^1.0.8" + "fast-safe-stringify": "1.2.3" } }, "quick-lru": { @@ -11897,7 +11939,7 @@ "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.0.tgz", "integrity": "sha512-pDP/NMRAXoTfrhCfyfSEwJAKLaxBU9eApMeBPB1TkDouZmvPerIClV8lTAd+uF8ZiTaVl69e1FCxQrAd/VTjGw==", "requires": { - "performance-now": "^2.1.0" + "performance-now": "2.1.0" } }, "randombytes": { @@ -11906,7 +11948,7 @@ "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", "dev": true, "requires": { - "safe-buffer": "^5.1.0" + "safe-buffer": "5.1.2" } }, "randomfill": { @@ -11915,8 +11957,8 @@ "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", "dev": true, "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" + "randombytes": "2.0.6", + "safe-buffer": "5.1.2" } }, "range-parser": { @@ -11943,7 +11985,7 @@ "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", "dev": true, "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "safer-buffer": "2.1.2" } } } @@ -11953,10 +11995,10 @@ "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" + "deep-extend": "0.6.0", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" } }, "react": { @@ -11964,10 +12006,10 @@ "resolved": "https://registry.npmjs.org/react/-/react-16.6.0.tgz", "integrity": "sha512-zJPnx/jKtuOEXCbQ9BKaxDMxR0001/hzxXwYxG8septeyYGfsgAei6NgfbVgOhbY1WOP2o3VPs/E9HaN+9hV3Q==", "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.10.0" + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "prop-types": "15.6.2", + "scheduler": "0.10.0" } }, "react-dev-utils": { @@ -11992,7 +12034,7 @@ "loader-utils": "1.1.0", "opn": "5.4.0", "pkg-up": "2.0.0", - "react-error-overlay": "^5.0.5", + "react-error-overlay": "5.0.5", "recursive-readdir": "2.2.2", "shell-quote": "1.6.1", "sockjs-client": "1.1.5", @@ -12012,9 +12054,9 @@ "integrity": "sha512-VBorw+tgpOtZ1BYhrVSVTzTt/3+vSE3eFUh0N2GCFK1HffceOaf32YS/bs6WiFhjDAblAFrx85jMy3BG9fBK2Q==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30000884", - "electron-to-chromium": "^1.3.62", - "node-releases": "^1.0.0-alpha.11" + "caniuse-lite": "1.0.30000893", + "electron-to-chromium": "1.3.79", + "node-releases": "1.0.0-alpha.14" } }, "find-up": { @@ -12023,7 +12065,7 @@ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "3.0.0" } }, "locate-path": { @@ -12032,8 +12074,8 @@ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "3.0.0", + "path-exists": "3.0.0" } }, "p-limit": { @@ -12042,7 +12084,7 @@ "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", "dev": true, "requires": { - "p-try": "^2.0.0" + "p-try": "2.0.0" } }, "p-locate": { @@ -12051,7 +12093,7 @@ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { - "p-limit": "^2.0.0" + "p-limit": "2.0.0" } }, "p-try": { @@ -12066,7 +12108,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "3.0.0" } } } @@ -12076,10 +12118,10 @@ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.5.2.tgz", "integrity": "sha512-RC8LDw8feuZOHVgzEf7f+cxBr/DnKdqp56VU0lAs1f4UfKc4cU8wU4fTq/mgnvynLQo8OtlPC19NUFh/zjZPuA==", "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "schedule": "^0.5.0" + "loose-envify": "1.4.0", + "object-assign": "4.1.1", + "prop-types": "15.6.2", + "schedule": "0.5.0" } }, "react-error-overlay": { @@ -12093,7 +12135,7 @@ "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-8.0.8.tgz", "integrity": "sha512-q2TGVLubP3IOeMMeeqgMKoI9nnkmq1ukDCEAI8AGlqI4mRDpImyv014Urs2QHTnaYzrHkT6xzGuRrCu1i41fdg==", "requires": { - "@babel/runtime": "^7.1.2", + "@babel/runtime": "7.1.2", "create-react-context": "0.2.3", "hoist-non-react-statics": "3.0.1", "html-parse-stringify2": "2.0.1" @@ -12114,8 +12156,8 @@ "resolved": "https://registry.npmjs.org/react-lottie/-/react-lottie-1.2.3.tgz", "integrity": "sha512-qLCERxUr8M+4mm1LU0Ruxw5Y5Fn/OmYkGfnA+JDM/dZb3oKwVAJCjwnjkj9TMHtzR2U6sMEUD3ZZ1RaHagM7kA==", "requires": { - "babel-runtime": "^6.26.0", - "lottie-web": "^5.1.3" + "babel-runtime": "6.26.0", + "lottie-web": "5.3.4" } }, "react-markdown": { @@ -12124,11 +12166,11 @@ "integrity": "sha512-TV0wQDHHPCEeKJHWXFfEAKJ8uSEsJ9LgrMERkXx05WV/3q6Ig+59KDNaTmjcoqlCpE/sH5PqqLMh4t0QWKrJ8Q==", "requires": { "mdast-add-list-metadata": "1.0.1", - "prop-types": "^15.6.1", - "remark-parse": "^5.0.0", - "unified": "^6.1.5", - "unist-util-visit": "^1.3.0", - "xtend": "^4.0.1" + "prop-types": "15.6.2", + "remark-parse": "5.0.0", + "unified": "6.2.0", + "unist-util-visit": "1.4.0", + "xtend": "4.0.1" } }, "react-qr-reader": { @@ -12136,9 +12178,9 @@ "resolved": "https://registry.npmjs.org/react-qr-reader/-/react-qr-reader-2.1.1.tgz", "integrity": "sha512-Xid7aBPZMMl9Xh4mdz9w8HZZsbL1BVbRLuoE2ixs5zwtgF0IGarWZ5cbJVaxCydus6vzEL4FQf4gpItC/jz8hg==", "requires": { - "jsqr": "^1.1.1", - "prop-types": "^15.5.8", - "webrtc-adapter": "^6.4.0" + "jsqr": "1.1.1", + "prop-types": "15.6.2", + "webrtc-adapter": "6.4.3" } }, "react-redux": { @@ -12146,12 +12188,12 @@ "resolved": "http://registry.npmjs.org/react-redux/-/react-redux-5.0.7.tgz", "integrity": "sha512-5VI8EV5hdgNgyjfmWzBbdrqUkrVRKlyTKk1sGH3jzM2M2Mhj/seQgPXaz6gVAj2lz/nz688AdTqMO18Lr24Zhg==", "requires": { - "hoist-non-react-statics": "^2.5.0", - "invariant": "^2.0.0", - "lodash": "^4.17.5", - "lodash-es": "^4.17.5", - "loose-envify": "^1.1.0", - "prop-types": "^15.6.0" + "hoist-non-react-statics": "2.5.5", + "invariant": "2.2.4", + "lodash": "4.17.11", + "lodash-es": "4.17.11", + "loose-envify": "1.4.0", + "prop-types": "15.6.2" }, "dependencies": { "hoist-non-react-statics": { @@ -12166,10 +12208,10 @@ "resolved": "http://registry.npmjs.org/react-resize-detector/-/react-resize-detector-2.3.0.tgz", "integrity": "sha512-oCAddEWWeFWYH5FAcHdBYcZjAw9fMzRUK9sWSx6WvSSOPVRxcHd5zTIGy/mOus+AhN/u6T4TMiWxvq79PywnJQ==", "requires": { - "lodash.debounce": "^4.0.8", - "lodash.throttle": "^4.1.1", - "prop-types": "^15.6.0", - "resize-observer-polyfill": "^1.5.0" + "lodash.debounce": "4.0.8", + "lodash.throttle": "4.1.1", + "prop-types": "15.6.2", + "resize-observer-polyfill": "1.5.0" } }, "react-router": { @@ -12177,13 +12219,13 @@ "resolved": "https://registry.npmjs.org/react-router/-/react-router-4.3.1.tgz", "integrity": "sha512-yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg==", "requires": { - "history": "^4.7.2", - "hoist-non-react-statics": "^2.5.0", - "invariant": "^2.2.4", - "loose-envify": "^1.3.1", - "path-to-regexp": "^1.7.0", - "prop-types": "^15.6.1", - "warning": "^4.0.1" + "history": "4.7.2", + "hoist-non-react-statics": "2.5.5", + "invariant": "2.2.4", + "loose-envify": "1.4.0", + "path-to-regexp": "1.7.0", + "prop-types": "15.6.2", + "warning": "4.0.2" }, "dependencies": { "hoist-non-react-statics": { @@ -12198,12 +12240,12 @@ "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-4.3.1.tgz", "integrity": "sha512-c/MlywfxDdCp7EnB7YfPMOfMD3tOtIjrQlj/CKfNMBxdmpJP8xcz5P/UAFn3JbnQCNUxsHyVVqllF9LhgVyFCA==", "requires": { - "history": "^4.7.2", - "invariant": "^2.2.4", - "loose-envify": "^1.3.1", - "prop-types": "^15.6.1", - "react-router": "^4.3.1", - "warning": "^4.0.1" + "history": "4.7.2", + "invariant": "2.2.4", + "loose-envify": "1.4.0", + "prop-types": "15.6.2", + "react-router": "4.3.1", + "warning": "4.0.2" } }, "react-smooth": { @@ -12211,20 +12253,10 @@ "resolved": "https://registry.npmjs.org/react-smooth/-/react-smooth-1.0.2.tgz", "integrity": "sha512-pIGzL1g9VGAsRsdZQokIK0vrCkcdKtnOnS1gyB2rrowdLy69lNSWoIjCTWAfgbiYvria8tm5hEZqj+jwXMkV4A==", "requires": { - "lodash": "~4.17.4", - "prop-types": "^15.6.0", - "raf": "^3.4.0", - "react-transition-group": "^2.5.0" - } - }, - "react-tooltip": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-3.9.0.tgz", - "integrity": "sha512-vpn738FVv2oe2LzdwUchped3WqLgZSQwrBow+ceChS1+lFEJBPjOa9KD3JH/L/s0Aorxawi3A20qBcHX7vqaag==", - "requires": { - "classnames": "^2.2.5", - "prop-types": "^15.6.0", - "sanitize-html-react": "^1.13.0" + "lodash": "4.17.11", + "prop-types": "15.6.2", + "raf": "3.4.0", + "react-transition-group": "2.5.0" } }, "react-transition-group": { @@ -12232,10 +12264,10 @@ "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-2.5.0.tgz", "integrity": "sha512-qYB3JBF+9Y4sE4/Mg/9O6WFpdoYjeeYqx0AFb64PTazVy8RPMiE3A47CG9QmM4WJ/mzDiZYslV+Uly6O1Erlgw==", "requires": { - "dom-helpers": "^3.3.1", - "loose-envify": "^1.4.0", - "prop-types": "^15.6.2", - "react-lifecycles-compat": "^3.0.4" + "dom-helpers": "3.3.1", + "loose-envify": "1.4.0", + "prop-types": "15.6.2", + "react-lifecycles-compat": "3.0.4" } }, "read-pkg": { @@ -12244,9 +12276,9 @@ "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "dev": true, "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" + "load-json-file": "4.0.0", + "normalize-package-data": "2.4.0", + "path-type": "3.0.0" } }, "read-pkg-up": { @@ -12255,8 +12287,8 @@ "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", "dev": true, "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" + "find-up": "2.1.0", + "read-pkg": "3.0.0" } }, "readable-stream": { @@ -12264,13 +12296,13 @@ "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "2.0.0", + "safe-buffer": "5.1.2", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" } }, "readdirp": { @@ -12279,9 +12311,9 @@ "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" + "graceful-fs": "4.1.11", + "micromatch": "3.1.10", + "readable-stream": "2.3.6" } }, "recharts": { @@ -12289,17 +12321,17 @@ "resolved": "https://registry.npmjs.org/recharts/-/recharts-1.3.4.tgz", "integrity": "sha512-jOImzEnTsHjEDxLnfbuTpxZHz1XV3vPWFyujrbFzrkSWBwoR0He9HbkSui8x/LpoDzwgeO25J0t6z+edFuwgWw==", "requires": { - "classnames": "~2.2.5", - "core-js": "~2.5.1", - "d3-interpolate": "~1.3.0", - "d3-scale": "~2.1.0", - "d3-shape": "~1.2.0", - "lodash": "~4.17.4", - "prop-types": "~15.6.0", - "react-resize-detector": "~2.3.0", - "react-smooth": "~1.0.0", - "recharts-scale": "^0.4.2", - "reduce-css-calc": "~1.3.0" + "classnames": "2.2.6", + "core-js": "2.5.7", + "d3-interpolate": "1.3.2", + "d3-scale": "2.1.2", + "d3-shape": "1.2.2", + "lodash": "4.17.11", + "prop-types": "15.6.2", + "react-resize-detector": "2.3.0", + "react-smooth": "1.0.2", + "recharts-scale": "0.4.2", + "reduce-css-calc": "1.3.0" }, "dependencies": { "core-js": { @@ -12314,7 +12346,7 @@ "resolved": "https://registry.npmjs.org/recharts-scale/-/recharts-scale-0.4.2.tgz", "integrity": "sha512-p/cKt7j17D1CImLgX2f5+6IXLbRHGUQkogIp06VUoci/XkhOQiGSzUrsD1uRmiI7jha4u8XNFOjkHkzzBPivMg==", "requires": { - "decimal.js-light": "^2.4.1" + "decimal.js-light": "2.5.0" } }, "recursive-readdir": { @@ -12332,8 +12364,8 @@ "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", "dev": true, "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" + "indent-string": "3.2.0", + "strip-indent": "2.0.0" } }, "reduce-css-calc": { @@ -12341,9 +12373,9 @@ "resolved": "http://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz", "integrity": "sha1-dHyRTgSWFKTJz7umKYca0dKSdxY=", "requires": { - "balanced-match": "^0.4.2", - "math-expression-evaluator": "^1.2.14", - "reduce-function-call": "^1.0.1" + "balanced-match": "0.4.2", + "math-expression-evaluator": "1.2.17", + "reduce-function-call": "1.0.2" }, "dependencies": { "balanced-match": { @@ -12358,7 +12390,7 @@ "resolved": "https://registry.npmjs.org/reduce-function-call/-/reduce-function-call-1.0.2.tgz", "integrity": "sha1-WiAL+S4ON3UXUv5FsKszD9S2vpk=", "requires": { - "balanced-match": "^0.4.2" + "balanced-match": "0.4.2" }, "dependencies": { "balanced-match": { @@ -12373,8 +12405,8 @@ "resolved": "https://registry.npmjs.org/redux/-/redux-4.0.1.tgz", "integrity": "sha512-R7bAtSkk7nY6O/OYMVR9RiBI+XghjF9rlbl5806HJbQph0LJVHZrU5oaO4q70eUKiqMRqm4y07KLTlMZ2BlVmg==", "requires": { - "loose-envify": "^1.4.0", - "symbol-observable": "^1.2.0" + "loose-envify": "1.4.0", + "symbol-observable": "1.2.0" } }, "regenerate": { @@ -12389,7 +12421,7 @@ "integrity": "sha512-s5NGghCE4itSlUS+0WUj88G6cfMVMmH8boTPNvABf8od+2dhT9WDlWu8n01raQAJZMOK8Ch6jSexaRO7swd6aw==", "dev": true, "requires": { - "regenerate": "^1.4.0" + "regenerate": "1.4.0" } }, "regenerator-runtime": { @@ -12403,7 +12435,7 @@ "integrity": "sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA==", "dev": true, "requires": { - "private": "^0.1.6" + "private": "0.1.8" } }, "regex-not": { @@ -12412,27 +12444,22 @@ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", "dev": true, "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" + "extend-shallow": "3.0.2", + "safe-regex": "1.1.0" } }, - "regexp-quote": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/regexp-quote/-/regexp-quote-0.0.0.tgz", - "integrity": "sha1-Hg9GUMhi3L/tVP1CsUjpuxch/PI=" - }, "regexpu-core": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.2.0.tgz", "integrity": "sha512-Z835VSnJJ46CNBttalHD/dB+Sj2ezmY6Xp38npwU87peK6mqOzOpV8eYktdkLTEkzzD+JsTcxd84ozd8I14+rw==", "dev": true, "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^7.0.0", - "regjsgen": "^0.4.0", - "regjsparser": "^0.3.0", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.0.2" + "regenerate": "1.4.0", + "regenerate-unicode-properties": "7.0.0", + "regjsgen": "0.4.0", + "regjsparser": "0.3.0", + "unicode-match-property-ecmascript": "1.0.4", + "unicode-match-property-value-ecmascript": "1.0.2" } }, "registry-auth-token": { @@ -12441,8 +12468,8 @@ "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", "dev": true, "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" + "rc": "1.2.8", + "safe-buffer": "5.1.2" } }, "registry-url": { @@ -12451,7 +12478,7 @@ "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", "dev": true, "requires": { - "rc": "^1.0.1" + "rc": "1.2.8" } }, "regjsgen": { @@ -12466,7 +12493,7 @@ "integrity": "sha512-zza72oZBBHzt64G7DxdqrOo/30bhHkwMUoT0WqfGu98XLd7N+1tsy5MJ96Bk4MD0y74n629RhmrGW6XlnLLwCA==", "dev": true, "requires": { - "jsesc": "~0.5.0" + "jsesc": "0.5.0" }, "dependencies": { "jsesc": { @@ -12488,21 +12515,21 @@ "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-5.0.0.tgz", "integrity": "sha512-b3iXszZLH1TLoyUzrATcTQUZrwNl1rE70rVdSruJFlDaJ9z5aMkhrG43Pp68OgfHndL/ADz6V69Zow8cTQu+JA==", "requires": { - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^1.1.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", + "collapse-white-space": "1.0.4", + "is-alphabetical": "1.0.2", + "is-decimal": "1.0.2", + "is-whitespace-character": "1.0.2", + "is-word-character": "1.0.2", + "markdown-escapes": "1.0.2", + "parse-entities": "1.2.0", + "repeat-string": "1.6.1", + "state-toggle": "1.0.1", "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^1.0.0", - "vfile-location": "^2.0.0", - "xtend": "^4.0.1" + "trim-trailing-lines": "1.1.1", + "unherit": "1.1.1", + "unist-util-remove-position": "1.1.2", + "vfile-location": "2.0.3", + "xtend": "4.0.1" } }, "remove-trailing-separator": { @@ -12517,11 +12544,11 @@ "integrity": "sha512-FsygIxevi1jSiPY9h7vZmBFUbAOcbYm9UwyiLNdVsLRs/5We9Ob5NMPbGYUTWiLq5L+ezlVdE0A8bbME5CWTpg==", "dev": true, "requires": { - "css-select": "^1.1.0", - "dom-converter": "~0.2", - "htmlparser2": "~3.3.0", - "strip-ansi": "^3.0.0", - "utila": "^0.4.0" + "css-select": "1.2.0", + "dom-converter": "0.2.0", + "htmlparser2": "3.3.0", + "strip-ansi": "3.0.1", + "utila": "0.4.0" } }, "repeat-element": { @@ -12541,7 +12568,7 @@ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", "dev": true, "requires": { - "is-finite": "^1.0.0" + "is-finite": "1.0.2" } }, "replace-ext": { @@ -12555,26 +12582,26 @@ "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", "dev": true, "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" + "aws-sign2": "0.7.0", + "aws4": "1.8.0", + "caseless": "0.12.0", + "combined-stream": "1.0.7", + "extend": "3.0.2", + "forever-agent": "0.6.1", + "form-data": "2.3.3", + "har-validator": "5.1.0", + "http-signature": "1.2.0", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.20", + "oauth-sign": "0.9.0", + "performance-now": "2.1.0", + "qs": "6.5.2", + "safe-buffer": "5.1.2", + "tough-cookie": "2.4.3", + "tunnel-agent": "0.6.0", + "uuid": "3.3.2" } }, "require-directory": { @@ -12606,7 +12633,7 @@ "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", "dev": true, "requires": { - "path-parse": "^1.0.5" + "path-parse": "1.0.6" } }, "resolve-cwd": { @@ -12615,7 +12642,7 @@ "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", "dev": true, "requires": { - "resolve-from": "^3.0.0" + "resolve-from": "3.0.0" } }, "resolve-dir": { @@ -12624,8 +12651,8 @@ "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", "dev": true, "requires": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" + "expand-tilde": "2.0.2", + "global-modules": "1.0.0" } }, "resolve-from": { @@ -12651,8 +12678,8 @@ "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", "dev": true, "requires": { - "exit-hook": "^1.0.0", - "onetime": "^1.0.0" + "exit-hook": "1.1.1", + "onetime": "1.1.0" } }, "ret": { @@ -12666,7 +12693,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "requires": { - "glob": "^7.0.5" + "glob": "7.1.3" } }, "ripemd160": { @@ -12675,8 +12702,8 @@ "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "dev": true, "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "hash-base": "3.0.4", + "inherits": "2.0.3" } }, "rtcpeerconnection-shim": { @@ -12684,7 +12711,7 @@ "resolved": "https://registry.npmjs.org/rtcpeerconnection-shim/-/rtcpeerconnection-shim-1.2.14.tgz", "integrity": "sha512-/sl1vgarkFPU2rbXy+EMmytMQIzCKNbIm3fChjPnsdytKAROgoivB0KLE7PQRjKx/d/nr/Yx+6qu0/eCpoxn/A==", "requires": { - "sdp": "^2.6.0" + "sdp": "2.9.0" } }, "run-async": { @@ -12693,7 +12720,7 @@ "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", "dev": true, "requires": { - "is-promise": "^2.1.0" + "is-promise": "2.1.0" } }, "run-parallel": { @@ -12708,7 +12735,7 @@ "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", "dev": true, "requires": { - "aproba": "^1.1.1" + "aproba": "1.2.0" } }, "rxjs": { @@ -12739,7 +12766,7 @@ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "dev": true, "requires": { - "ret": "~0.1.10" + "ret": "0.1.15" } }, "safer-buffer": { @@ -12753,50 +12780,7 @@ "integrity": "sha1-YS2hyWRz+gLczaktzVtKsWSmdyo=", "dev": true, "requires": { - "truncate-utf8-bytes": "^1.0.0" - } - }, - "sanitize-html-react": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/sanitize-html-react/-/sanitize-html-react-1.13.0.tgz", - "integrity": "sha1-51e5rbryyKdi89Lf9wE4g44FQgo=", - "requires": { - "htmlparser2": "^3.9.0", - "regexp-quote": "0.0.0", - "xtend": "^4.0.0" - }, - "dependencies": { - "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "requires": { - "domelementtype": "1" - } - }, - "htmlparser2": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.0.tgz", - "integrity": "sha512-J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ==", - "requires": { - "domelementtype": "^1.3.0", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.0.6" - } - }, - "readable-stream": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.0.6.tgz", - "integrity": "sha512-9E1oLoOWfhSXHGv6QlwXJim7uNzd9EVlWK+21tCU9Ju/kR0/p2AZYPz4qSchgO8PlLIH4FpZYfzwS+rEksZjIg==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "truncate-utf8-bytes": "1.0.2" } }, "sass-loader": { @@ -12805,12 +12789,12 @@ "integrity": "sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w==", "dev": true, "requires": { - "clone-deep": "^2.0.1", - "loader-utils": "^1.0.1", - "lodash.tail": "^4.1.1", - "neo-async": "^2.5.0", - "pify": "^3.0.0", - "semver": "^5.5.0" + "clone-deep": "2.0.2", + "loader-utils": "1.1.0", + "lodash.tail": "4.1.1", + "neo-async": "2.6.0", + "pify": "3.0.0", + "semver": "5.6.0" } }, "sax": { @@ -12823,7 +12807,7 @@ "resolved": "https://registry.npmjs.org/schedule/-/schedule-0.5.0.tgz", "integrity": "sha512-HUcJicG5Ou8xfR//c2rPT0lPIRR09vVvN81T9fqfVgBmhERUbDEQoYKjpBxbueJnCPpSu2ujXzOnRQt6x9o/jw==", "requires": { - "object-assign": "^4.1.1" + "object-assign": "4.1.1" } }, "scheduler": { @@ -12831,8 +12815,8 @@ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.10.0.tgz", "integrity": "sha512-+TSTVTCBAA3h8Anei3haDc1IRwMeDmtI/y/o3iBe3Mjl2vwYF9DtPDt929HyRmV/e7au7CLu8sc4C4W0VOs29w==", "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "1.4.0", + "object-assign": "4.1.1" } }, "schema-utils": { @@ -12841,9 +12825,9 @@ "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", "dev": true, "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" + "ajv": "6.5.4", + "ajv-errors": "1.0.0", + "ajv-keywords": "3.2.0" }, "dependencies": { "ajv": { @@ -12852,10 +12836,10 @@ "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "fast-deep-equal": "2.0.1", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" } }, "fast-deep-equal": { @@ -12888,7 +12872,7 @@ "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", "dev": true, "requires": { - "semver": "^5.0.3" + "semver": "5.6.0" } }, "send": { @@ -12898,18 +12882,18 @@ "dev": true, "requires": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", + "depd": "1.1.2", + "destroy": "1.0.4", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", "fresh": "0.5.2", - "http-errors": "~1.6.2", + "http-errors": "1.6.3", "mime": "1.4.1", "ms": "2.0.0", - "on-finished": "~2.3.0", - "range-parser": "~1.2.0", - "statuses": "~1.4.0" + "on-finished": "2.3.0", + "range-parser": "1.2.0", + "statuses": "1.4.0" }, "dependencies": { "debug": { @@ -12947,9 +12931,9 @@ "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", "dev": true, "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.2", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "parseurl": "1.3.2", "send": "0.16.2" } }, @@ -12964,10 +12948,10 @@ "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", "dev": true, "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "split-string": "3.1.0" }, "dependencies": { "extend-shallow": { @@ -12976,7 +12960,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "is-extendable": "0.1.1" } } } @@ -12998,8 +12982,8 @@ "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "inherits": "2.0.3", + "safe-buffer": "5.1.2" } }, "shallow-clone": { @@ -13008,9 +12992,9 @@ "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", "dev": true, "requires": { - "is-extendable": "^0.1.1", - "kind-of": "^5.0.0", - "mixin-object": "^2.0.1" + "is-extendable": "0.1.1", + "kind-of": "5.1.0", + "mixin-object": "2.0.1" }, "dependencies": { "kind-of": { @@ -13027,7 +13011,7 @@ "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "dev": true, "requires": { - "shebang-regex": "^1.0.0" + "shebang-regex": "1.0.0" } }, "shebang-regex": { @@ -13042,10 +13026,10 @@ "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", "dev": true, "requires": { - "array-filter": "~0.0.0", - "array-map": "~0.0.0", - "array-reduce": "~0.0.0", - "jsonify": "~0.0.0" + "array-filter": "0.0.1", + "array-map": "0.0.0", + "array-reduce": "0.0.0", + "jsonify": "0.0.0" } }, "signal-exit": { @@ -13063,9 +13047,9 @@ "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.1.tgz", "integrity": "sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==", "requires": { - "decompress-response": "^3.3.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" + "decompress-response": "3.3.0", + "once": "1.4.0", + "simple-concat": "1.0.0" } }, "single-line-log": { @@ -13074,7 +13058,7 @@ "integrity": "sha1-wvg/Jzo+GhbtsJlWYdoO1e8DM2Q=", "dev": true, "requires": { - "string-width": "^1.0.1" + "string-width": "1.0.2" } }, "slash": { @@ -13095,14 +13079,14 @@ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", "dev": true, "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" + "base": "0.11.2", + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "map-cache": "0.2.2", + "source-map": "0.5.7", + "source-map-resolve": "0.5.2", + "use": "3.1.1" }, "dependencies": { "debug": { @@ -13120,7 +13104,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "is-descriptor": "0.1.6" } }, "extend-shallow": { @@ -13129,7 +13113,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "is-extendable": "0.1.1" } }, "ms": { @@ -13152,9 +13136,9 @@ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "dev": true, "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" + "define-property": "1.0.0", + "isobject": "3.0.1", + "snapdragon-util": "3.0.1" }, "dependencies": { "define-property": { @@ -13163,7 +13147,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "^1.0.0" + "is-descriptor": "1.0.2" } }, "is-accessor-descriptor": { @@ -13172,7 +13156,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "kind-of": "6.0.2" } }, "is-data-descriptor": { @@ -13181,7 +13165,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "kind-of": "6.0.2" } }, "is-descriptor": { @@ -13190,9 +13174,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" } } } @@ -13203,7 +13187,7 @@ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "dev": true, "requires": { - "kind-of": "^3.2.0" + "kind-of": "3.2.2" }, "dependencies": { "kind-of": { @@ -13212,7 +13196,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "is-buffer": "1.1.6" } } } @@ -13223,12 +13207,12 @@ "integrity": "sha1-G7fA9yIsQPQq3xT0RCy9Eml3GoM=", "dev": true, "requires": { - "debug": "^2.6.6", + "debug": "2.6.9", "eventsource": "0.1.6", - "faye-websocket": "~0.11.0", - "inherits": "^2.0.1", - "json3": "^3.3.2", - "url-parse": "^1.1.8" + "faye-websocket": "0.11.1", + "inherits": "2.0.3", + "json3": "3.3.2", + "url-parse": "1.4.3" }, "dependencies": { "debug": { @@ -13265,11 +13249,11 @@ "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", "dev": true, "requires": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "atob": "2.1.2", + "decode-uri-component": "0.2.0", + "resolve-url": "0.2.1", + "source-map-url": "0.4.0", + "urix": "0.1.0" } }, "source-map-support": { @@ -13277,8 +13261,8 @@ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.9.tgz", "integrity": "sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA==", "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "buffer-from": "1.1.1", + "source-map": "0.6.1" } }, "source-map-url": { @@ -13299,8 +13283,8 @@ "integrity": "sha512-q9hedtzyXHr5S0A1vEPoK/7l8NpfkFYTq6iCY+Pno2ZbdZR6WexZFtqeVGkGxW3TEJMN914Z55EnAGMmenlIQQ==", "dev": true, "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "spdx-expression-parse": "3.0.0", + "spdx-license-ids": "3.0.1" } }, "spdx-exceptions": { @@ -13315,8 +13299,8 @@ "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", "dev": true, "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "spdx-exceptions": "2.2.0", + "spdx-license-ids": "3.0.1" } }, "spdx-license-ids": { @@ -13337,7 +13321,7 @@ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "dev": true, "requires": { - "extend-shallow": "^3.0.0" + "extend-shallow": "3.0.2" } }, "split2": { @@ -13346,7 +13330,7 @@ "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==", "dev": true, "requires": { - "through2": "^2.0.2" + "through2": "2.0.3" }, "dependencies": { "through2": { @@ -13355,8 +13339,8 @@ "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", "dev": true, "requires": { - "readable-stream": "^2.1.5", - "xtend": "~4.0.1" + "readable-stream": "2.3.6", + "xtend": "4.0.1" } } } @@ -13372,15 +13356,15 @@ "integrity": "sha512-mSdgNUaidk+dRU5MhYtN9zebdzF2iG0cNPWy8HG+W8y+fT1JnSkh0fzzpjOa0L7P8i1Rscz38t0h4gPcKz43xA==", "dev": true, "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" + "asn1": "0.2.4", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.2", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.2", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "safer-buffer": "2.1.2", + "tweetnacl": "0.14.5" } }, "ssri": { @@ -13389,7 +13373,7 @@ "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", "dev": true, "requires": { - "safe-buffer": "^5.1.1" + "safe-buffer": "5.1.2" } }, "stack-generator": { @@ -13397,7 +13381,7 @@ "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.3.tgz", "integrity": "sha512-kdzGoqrnqsMxOEuXsXyQTmvWXZmG0f3Ql2GDx5NtmZs59sT2Bt9Vdyq0XdtxUi58q/+nxtbF9KOQ9HkV1QznGg==", "requires": { - "stackframe": "^1.0.4" + "stackframe": "1.0.4" } }, "stackframe": { @@ -13422,8 +13406,8 @@ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", "dev": true, "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" + "define-property": "0.2.5", + "object-copy": "0.1.0" }, "dependencies": { "define-property": { @@ -13432,7 +13416,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "is-descriptor": "0.1.6" } } } @@ -13449,8 +13433,8 @@ "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", "dev": true, "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" + "inherits": "2.0.3", + "readable-stream": "2.3.6" } }, "stream-each": { @@ -13459,8 +13443,8 @@ "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", "dev": true, "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" + "end-of-stream": "1.4.1", + "stream-shift": "1.0.0" } }, "stream-http": { @@ -13469,11 +13453,11 @@ "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", "dev": true, "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" + "builtin-status-codes": "3.0.0", + "inherits": "2.0.3", + "readable-stream": "2.3.6", + "to-arraybuffer": "1.0.1", + "xtend": "4.0.1" } }, "stream-shift": { @@ -13493,9 +13477,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" } }, "string_decoder": { @@ -13503,7 +13487,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "requires": { - "safe-buffer": "~5.1.0" + "safe-buffer": "5.1.2" } }, "strip-ansi": { @@ -13511,7 +13495,7 @@ "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "2.1.1" } }, "strip-bom": { @@ -13548,8 +13532,8 @@ "integrity": "sha512-XK+uv9kWwhZMZ1y7mysB+zoihsEj4wneFWAS5qoiLwzW0WzSqMrrsIy+a3zkQJq0ipFtBpX5W3MqyRIBF/WFGg==", "dev": true, "requires": { - "loader-utils": "^1.1.0", - "schema-utils": "^1.0.0" + "loader-utils": "1.1.0", + "schema-utils": "1.0.0" } }, "sumchecker": { @@ -13558,7 +13542,7 @@ "integrity": "sha1-D0LBDl0F2l1C7qPlbDOZo31sWz4=", "dev": true, "requires": { - "debug": "^2.2.0" + "debug": "2.6.9" }, "dependencies": { "debug": { @@ -13584,7 +13568,7 @@ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "has-flag": "3.0.0" } }, "symbol-observable": { @@ -13603,13 +13587,13 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.6.tgz", "integrity": "sha512-tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==", "requires": { - "chownr": "^1.0.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.3", - "minizlib": "^1.1.0", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" + "chownr": "1.1.1", + "fs-minipass": "1.2.5", + "minipass": "2.3.5", + "minizlib": "1.1.1", + "mkdirp": "0.5.1", + "safe-buffer": "5.1.2", + "yallist": "3.0.2" }, "dependencies": { "yallist": { @@ -13624,10 +13608,10 @@ "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.3.tgz", "integrity": "sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw==", "requires": { - "chownr": "^1.0.1", - "mkdirp": "^0.5.1", - "pump": "^1.0.0", - "tar-stream": "^1.1.2" + "chownr": "1.1.1", + "mkdirp": "0.5.1", + "pump": "1.0.3", + "tar-stream": "1.6.2" }, "dependencies": { "pump": { @@ -13635,8 +13619,8 @@ "resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz", "integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==", "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "end-of-stream": "1.4.1", + "once": "1.4.0" } } } @@ -13646,13 +13630,13 @@ "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", "requires": { - "bl": "^1.0.0", - "buffer-alloc": "^1.2.0", - "end-of-stream": "^1.0.0", - "fs-constants": "^1.0.0", - "readable-stream": "^2.3.0", - "to-buffer": "^1.1.1", - "xtend": "^4.0.0" + "bl": "1.2.2", + "buffer-alloc": "1.2.0", + "end-of-stream": "1.4.1", + "fs-constants": "1.0.0", + "readable-stream": "2.3.6", + "to-buffer": "1.1.1", + "xtend": "4.0.1" } }, "term-size": { @@ -13661,7 +13645,7 @@ "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", "dev": true, "requires": { - "execa": "^0.7.0" + "execa": "0.7.0" }, "dependencies": { "cross-spawn": { @@ -13670,9 +13654,9 @@ "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "dev": true, "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "lru-cache": "4.1.3", + "shebang-command": "1.2.0", + "which": "1.3.1" } }, "execa": { @@ -13681,13 +13665,13 @@ "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", "dev": true, "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.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" + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" } } } @@ -13720,8 +13704,8 @@ "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.3.tgz", "integrity": "sha1-eVKS/enyVMKjaLOPnMXRvUZjr7Y=", "requires": { - "readable-stream": ">=1.0.33-1 <1.1.0-0", - "xtend": ">=4.0.0 <4.1.0-0" + "readable-stream": "1.0.34", + "xtend": "4.0.1" }, "dependencies": { "isarray": { @@ -13734,10 +13718,10 @@ "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", + "core-util-is": "1.0.2", + "inherits": "2.0.3", "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "string_decoder": "0.10.31" } }, "string_decoder": { @@ -13759,7 +13743,7 @@ "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", "dev": true, "requires": { - "setimmediate": "^1.0.4" + "setimmediate": "1.0.5" } }, "tmp": { @@ -13768,7 +13752,7 @@ "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, "requires": { - "os-tmpdir": "~1.0.2" + "os-tmpdir": "1.0.2" } }, "to-arraybuffer": { @@ -13794,7 +13778,7 @@ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", "dev": true, "requires": { - "kind-of": "^3.0.2" + "kind-of": "3.2.2" }, "dependencies": { "kind-of": { @@ -13803,7 +13787,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "is-buffer": "1.1.6" } } } @@ -13814,10 +13798,10 @@ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", "dev": true, "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "regex-not": "1.0.2", + "safe-regex": "1.1.0" } }, "to-regex-range": { @@ -13826,8 +13810,8 @@ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "dev": true, "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "is-number": "3.0.0", + "repeat-string": "1.6.1" } }, "toposort": { @@ -13842,8 +13826,8 @@ "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", "dev": true, "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" + "psl": "1.1.29", + "punycode": "1.4.1" } }, "tree-kill": { @@ -13885,7 +13869,7 @@ "integrity": "sha1-QFkjkJWS1W94pYGENLC3hInKXys=", "dev": true, "requires": { - "utf8-byte-length": "^1.0.1" + "utf8-byte-length": "1.0.4" } }, "tslib": { @@ -13905,7 +13889,7 @@ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", "requires": { - "safe-buffer": "^5.0.1" + "safe-buffer": "5.1.2" } }, "tweetnacl": { @@ -13921,7 +13905,7 @@ "dev": true, "requires": { "media-typer": "0.3.0", - "mime-types": "~2.1.18" + "mime-types": "2.1.20" } }, "typedarray": { @@ -13941,8 +13925,8 @@ "integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==", "dev": true, "requires": { - "commander": "~2.17.1", - "source-map": "~0.6.1" + "commander": "2.17.1", + "source-map": "0.6.1" } }, "uglifyjs-webpack-plugin": { @@ -13951,14 +13935,14 @@ "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", "dev": true, "requires": { - "cacache": "^10.0.4", - "find-cache-dir": "^1.0.0", - "schema-utils": "^0.4.5", - "serialize-javascript": "^1.4.0", - "source-map": "^0.6.1", - "uglify-es": "^3.3.4", - "webpack-sources": "^1.1.0", - "worker-farm": "^1.5.2" + "cacache": "10.0.4", + "find-cache-dir": "1.0.0", + "schema-utils": "0.4.7", + "serialize-javascript": "1.5.0", + "source-map": "0.6.1", + "uglify-es": "3.3.9", + "webpack-sources": "1.3.0", + "worker-farm": "1.6.0" }, "dependencies": { "ajv": { @@ -13967,10 +13951,10 @@ "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "fast-deep-equal": "2.0.1", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" } }, "commander": { @@ -13997,8 +13981,8 @@ "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", "dev": true, "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" + "ajv": "6.5.4", + "ajv-keywords": "3.2.0" } }, "uglify-es": { @@ -14007,8 +13991,8 @@ "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", "dev": true, "requires": { - "commander": "~2.13.0", - "source-map": "~0.6.1" + "commander": "2.13.0", + "source-map": "0.6.1" } } } @@ -14018,8 +14002,8 @@ "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.1.tgz", "integrity": "sha512-+XZuV691Cn4zHsK0vkKYwBEwB74T3IZIcxrgn2E4rKwTfFyI1zCh7X7grwh9Re08fdPlarIdyWgI8aVB3F5A5g==", "requires": { - "inherits": "^2.0.1", - "xtend": "^4.0.1" + "inherits": "2.0.3", + "xtend": "4.0.1" } }, "unicode-canonical-property-names-ecmascript": { @@ -14034,8 +14018,8 @@ "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", "dev": true, "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" + "unicode-canonical-property-names-ecmascript": "1.0.4", + "unicode-property-aliases-ecmascript": "1.0.4" } }, "unicode-match-property-value-ecmascript": { @@ -14055,12 +14039,12 @@ "resolved": "https://registry.npmjs.org/unified/-/unified-6.2.0.tgz", "integrity": "sha512-1k+KPhlVtqmG99RaTbAv/usu85fcSRu3wY8X+vnsEhIxNP5VbVIDiXnLqyKIG+UMdyTg0ZX9EI6k2AfjJkHPtA==", "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-plain-obj": "^1.1.0", - "trough": "^1.0.0", - "vfile": "^2.0.0", - "x-is-string": "^0.1.0" + "bail": "1.0.3", + "extend": "3.0.2", + "is-plain-obj": "1.1.0", + "trough": "1.0.3", + "vfile": "2.3.0", + "x-is-string": "0.1.0" } }, "union-value": { @@ -14069,10 +14053,10 @@ "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", "dev": true, "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" + "arr-union": "3.1.0", + "get-value": "2.0.6", + "is-extendable": "0.1.1", + "set-value": "0.4.3" }, "dependencies": { "extend-shallow": { @@ -14081,7 +14065,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "is-extendable": "0.1.1" } }, "set-value": { @@ -14090,10 +14074,10 @@ "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", "dev": true, "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "to-object-path": "0.3.0" } } } @@ -14104,7 +14088,7 @@ "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "dev": true, "requires": { - "unique-slug": "^2.0.0" + "unique-slug": "2.0.1" } }, "unique-slug": { @@ -14113,7 +14097,7 @@ "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==", "dev": true, "requires": { - "imurmurhash": "^0.1.4" + "imurmurhash": "0.1.4" } }, "unique-string": { @@ -14122,7 +14106,7 @@ "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", "dev": true, "requires": { - "crypto-random-string": "^1.0.0" + "crypto-random-string": "1.0.0" } }, "unist-util-is": { @@ -14135,7 +14119,7 @@ "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.2.tgz", "integrity": "sha512-XxoNOBvq1WXRKXxgnSYbtCF76TJrRoe5++pD4cCBsssSiWSnPEktyFrFLE8LTk3JW5mt9hB0Sk5zn4x/JeWY7Q==", "requires": { - "unist-util-visit": "^1.1.0" + "unist-util-visit": "1.4.0" } }, "unist-util-stringify-position": { @@ -14148,7 +14132,7 @@ "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.0.tgz", "integrity": "sha512-FiGu34ziNsZA3ZUteZxSFaczIjGmksfSgdKqBfOejrrfzyUy5b7YrlzT1Bcvi+djkYDituJDy2XB7tGTeBieKw==", "requires": { - "unist-util-visit-parents": "^2.0.0" + "unist-util-visit-parents": "2.0.1" }, "dependencies": { "unist-util-visit-parents": { @@ -14156,7 +14140,7 @@ "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.0.1.tgz", "integrity": "sha512-6B0UTiMfdWql4cQ03gDTCSns+64Zkfo2OCbK31Ov0uMizEz+CJeAp0cgZVb5Fhmcd7Bct2iRNywejT0orpbqUA==", "requires": { - "unist-util-is": "^2.1.2" + "unist-util-is": "2.1.2" } } } @@ -14183,8 +14167,8 @@ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", "dev": true, "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" + "has-value": "0.3.1", + "isobject": "3.0.1" }, "dependencies": { "has-value": { @@ -14193,9 +14177,9 @@ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", "dev": true, "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" + "get-value": "2.0.6", + "has-values": "0.1.4", + "isobject": "2.1.0" }, "dependencies": { "isobject": { @@ -14235,16 +14219,16 @@ "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", "dev": true, "requires": { - "boxen": "^1.2.1", - "chalk": "^2.0.1", - "configstore": "^3.0.0", - "import-lazy": "^2.1.0", - "is-ci": "^1.0.10", - "is-installed-globally": "^0.1.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" + "boxen": "1.3.0", + "chalk": "2.4.1", + "configstore": "3.1.2", + "import-lazy": "2.1.0", + "is-ci": "1.2.1", + "is-installed-globally": "0.1.0", + "is-npm": "1.0.0", + "latest-version": "3.1.0", + "semver-diff": "2.1.0", + "xdg-basedir": "3.0.0" } }, "upper-case": { @@ -14259,7 +14243,7 @@ "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", "dev": true, "requires": { - "punycode": "^2.1.0" + "punycode": "2.1.1" }, "dependencies": { "punycode": { @@ -14300,9 +14284,9 @@ "integrity": "sha512-dXHkKmw8FhPqu8asTc1puBfe3TehOCo2+RmOOev5suNCIYBcT626kxiWg1NBVkwc4rO8BGa7gP70W7VXuqHrjg==", "dev": true, "requires": { - "loader-utils": "^1.1.0", - "mime": "^2.0.3", - "schema-utils": "^1.0.0" + "loader-utils": "1.1.0", + "mime": "2.3.1", + "schema-utils": "1.0.0" } }, "url-parse": { @@ -14311,8 +14295,8 @@ "integrity": "sha512-rh+KuAW36YKo0vClhQzLLveoj8FwPJNu65xLb7Mrt+eZht0IPT0IXgSv8gcMegZ6NvjJUALf6Mf25POlMwD1Fw==", "dev": true, "requires": { - "querystringify": "^2.0.0", - "requires-port": "^1.0.0" + "querystringify": "2.1.0", + "requires-port": "1.0.0" } }, "url-parse-lax": { @@ -14321,7 +14305,7 @@ "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", "dev": true, "requires": { - "prepend-http": "^1.0.1" + "prepend-http": "1.0.4" } }, "usb": { @@ -14329,8 +14313,8 @@ "resolved": "https://registry.npmjs.org/usb/-/usb-1.3.3.tgz", "integrity": "sha512-WRBxI54yEs2QPj28G6kITI3Wu7VxrtHbqiDvDRUDKdg97lcK1pTP8y9LoDWF22OiCCrEvrdeq0lNcr84QOzjXQ==", "requires": { - "nan": "^2.8.0", - "node-pre-gyp": "^0.10.0" + "nan": "2.11.1", + "node-pre-gyp": "0.10.3" } }, "use": { @@ -14365,8 +14349,8 @@ "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", "dev": true, "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" + "define-properties": "1.1.3", + "object.getownpropertydescriptors": "2.0.3" } }, "utila": { @@ -14398,8 +14382,8 @@ "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "spdx-correct": "3.0.2", + "spdx-expression-parse": "3.0.0" } }, "value-equal": { @@ -14419,9 +14403,9 @@ "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", "dev": true, "requires": { - "assert-plus": "^1.0.0", + "assert-plus": "1.0.0", "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "extsprintf": "1.3.0" } }, "vfile": { @@ -14429,10 +14413,10 @@ "resolved": "https://registry.npmjs.org/vfile/-/vfile-2.3.0.tgz", "integrity": "sha512-ASt4mBUHcTpMKD/l5Q+WJXNtshlWxOogYyGYYrg4lt/vuRjC1EFQtlAofL5VmtVNIZJzWYFJjzGWZ0Gw8pzW1w==", "requires": { - "is-buffer": "^1.1.4", + "is-buffer": "1.1.6", "replace-ext": "1.0.0", - "unist-util-stringify-position": "^1.0.0", - "vfile-message": "^1.0.0" + "unist-util-stringify-position": "1.1.2", + "vfile-message": "1.0.1" } }, "vfile-location": { @@ -14445,7 +14429,7 @@ "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-1.0.1.tgz", "integrity": "sha512-vSGCkhNvJzO6VcWC6AlJW4NtYOVtS+RgCaqFIYUjoGIlHnFL+i0LbtYvonDWOMcB97uTPT4PRsyYY7REWC9vug==", "requires": { - "unist-util-stringify-position": "^1.1.1" + "unist-util-stringify-position": "1.1.2" } }, "vm-browserify": { @@ -14467,7 +14451,7 @@ "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.2.tgz", "integrity": "sha512-wbTp09q/9C+jJn4KKJfJfoS6VleK/Dti0yqWSm6KMvJ4MRCXFQNapHuJXutJIrWV0Cf4AhTdeIe4qdKHR1+Hug==", "requires": { - "loose-envify": "^1.0.0" + "loose-envify": "1.4.0" } }, "watchpack": { @@ -14476,9 +14460,9 @@ "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", "dev": true, "requires": { - "chokidar": "^2.0.2", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" + "chokidar": "2.0.4", + "graceful-fs": "4.1.11", + "neo-async": "2.6.0" } }, "webpack": { @@ -14491,26 +14475,26 @@ "@webassemblyjs/helper-module-context": "1.7.8", "@webassemblyjs/wasm-edit": "1.7.8", "@webassemblyjs/wasm-parser": "1.7.8", - "acorn": "^5.6.2", - "acorn-dynamic-import": "^3.0.0", - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0", - "chrome-trace-event": "^1.0.0", - "enhanced-resolve": "^4.1.0", - "eslint-scope": "^4.0.0", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.3.0", - "loader-utils": "^1.1.0", - "memory-fs": "~0.4.1", - "micromatch": "^3.1.8", - "mkdirp": "~0.5.0", - "neo-async": "^2.5.0", - "node-libs-browser": "^2.0.0", - "schema-utils": "^0.4.4", - "tapable": "^1.1.0", - "uglifyjs-webpack-plugin": "^1.2.4", - "watchpack": "^1.5.0", - "webpack-sources": "^1.3.0" + "acorn": "5.7.3", + "acorn-dynamic-import": "3.0.0", + "ajv": "6.5.4", + "ajv-keywords": "3.2.0", + "chrome-trace-event": "1.0.0", + "enhanced-resolve": "4.1.0", + "eslint-scope": "4.0.0", + "json-parse-better-errors": "1.0.2", + "loader-runner": "2.3.1", + "loader-utils": "1.1.0", + "memory-fs": "0.4.1", + "micromatch": "3.1.10", + "mkdirp": "0.5.1", + "neo-async": "2.6.0", + "node-libs-browser": "2.1.0", + "schema-utils": "0.4.7", + "tapable": "1.1.0", + "uglifyjs-webpack-plugin": "1.3.0", + "watchpack": "1.6.0", + "webpack-sources": "1.3.0" }, "dependencies": { "ajv": { @@ -14519,10 +14503,10 @@ "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "fast-deep-equal": "2.0.1", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" } }, "fast-deep-equal": { @@ -14543,8 +14527,8 @@ "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", "dev": true, "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" + "ajv": "6.5.4", + "ajv-keywords": "3.2.0" } } } @@ -14555,16 +14539,16 @@ "integrity": "sha512-Cnqo7CeqeSvC6PTdts+dywNi5CRlIPbLx1AoUPK2T6vC1YAugMG3IOoO9DmEscd+Dghw7uRlnzV1KwOe5IrtgQ==", "dev": true, "requires": { - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "enhanced-resolve": "^4.1.0", - "global-modules-path": "^2.3.0", - "import-local": "^2.0.0", - "interpret": "^1.1.0", - "loader-utils": "^1.1.0", - "supports-color": "^5.5.0", - "v8-compile-cache": "^2.0.2", - "yargs": "^12.0.2" + "chalk": "2.4.1", + "cross-spawn": "6.0.5", + "enhanced-resolve": "4.1.0", + "global-modules-path": "2.3.0", + "import-local": "2.0.0", + "interpret": "1.1.0", + "loader-utils": "1.1.0", + "supports-color": "5.5.0", + "v8-compile-cache": "2.0.2", + "yargs": "12.0.2" } }, "webpack-dev-middleware": { @@ -14573,10 +14557,10 @@ "integrity": "sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA==", "dev": true, "requires": { - "memory-fs": "~0.4.1", - "mime": "^2.3.1", - "range-parser": "^1.0.3", - "webpack-log": "^2.0.0" + "memory-fs": "0.4.1", + "mime": "2.3.1", + "range-parser": "1.2.0", + "webpack-log": "2.0.0" } }, "webpack-hot-middleware": { @@ -14586,9 +14570,9 @@ "dev": true, "requires": { "ansi-html": "0.0.7", - "html-entities": "^1.2.0", - "querystring": "^0.2.0", - "strip-ansi": "^3.0.0" + "html-entities": "1.2.1", + "querystring": "0.2.0", + "strip-ansi": "3.0.1" } }, "webpack-log": { @@ -14597,8 +14581,8 @@ "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", "dev": true, "requires": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" + "ansi-colors": "3.1.0", + "uuid": "3.3.2" } }, "webpack-sources": { @@ -14607,8 +14591,8 @@ "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", "dev": true, "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" + "source-list-map": "2.0.1", + "source-map": "0.6.1" } }, "webrtc-adapter": { @@ -14616,8 +14600,8 @@ "resolved": "https://registry.npmjs.org/webrtc-adapter/-/webrtc-adapter-6.4.3.tgz", "integrity": "sha512-hWbIPXnCLsDP9QHtIM6LF8wjQ73FmgZxkCNS7poAAwRi2lGZfiu8FJq7Su5SO7fbzufaQ7flmQzGdepxerzJvQ==", "requires": { - "rtcpeerconnection-shim": "^1.2.14", - "sdp": "^2.9.0" + "rtcpeerconnection-shim": "1.2.14", + "sdp": "2.9.0" } }, "websocket-driver": { @@ -14626,8 +14610,8 @@ "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", "dev": true, "requires": { - "http-parser-js": ">=0.4.0", - "websocket-extensions": ">=0.1.1" + "http-parser-js": "0.4.13", + "websocket-extensions": "0.1.3" } }, "websocket-extensions": { @@ -14647,7 +14631,7 @@ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "requires": { - "isexe": "^2.0.0" + "isexe": "2.0.0" } }, "which-module": { @@ -14666,7 +14650,7 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", "requires": { - "string-width": "^1.0.2 || 2" + "string-width": "1.0.2" } }, "widest-line": { @@ -14675,7 +14659,7 @@ "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", "dev": true, "requires": { - "string-width": "^2.1.1" + "string-width": "2.1.1" }, "dependencies": { "ansi-regex": { @@ -14696,8 +14680,8 @@ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" } }, "strip-ansi": { @@ -14706,7 +14690,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "3.0.0" } } } @@ -14717,7 +14701,7 @@ "integrity": "sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==", "dev": true, "requires": { - "errno": "~0.1.7" + "errno": "0.1.7" } }, "wrap-ansi": { @@ -14726,8 +14710,8 @@ "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "dev": true, "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" + "string-width": "1.0.2", + "strip-ansi": "3.0.1" } }, "wrappy": { @@ -14741,9 +14725,9 @@ "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" + "graceful-fs": "4.1.11", + "imurmurhash": "0.1.4", + "signal-exit": "3.0.2" } }, "ws": { @@ -14752,7 +14736,7 @@ "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", "dev": true, "requires": { - "async-limiter": "~1.0.0" + "async-limiter": "1.0.0" } }, "x-is-string": { @@ -14806,18 +14790,18 @@ "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", "dev": true, "requires": { - "cliui": "^4.0.0", - "decamelize": "^2.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "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 || ^4.0.0", - "yargs-parser": "^10.1.0" + "cliui": "4.1.0", + "decamelize": "2.0.0", + "find-up": "3.0.0", + "get-caller-file": "1.0.3", + "os-locale": "3.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "4.0.0", + "yargs-parser": "10.1.0" }, "dependencies": { "ansi-regex": { @@ -14841,7 +14825,7 @@ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "3.0.0" } }, "is-fullwidth-code-point": { @@ -14856,8 +14840,8 @@ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "3.0.0", + "path-exists": "3.0.0" } }, "p-limit": { @@ -14866,7 +14850,7 @@ "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", "dev": true, "requires": { - "p-try": "^2.0.0" + "p-try": "2.0.0" } }, "p-locate": { @@ -14875,7 +14859,7 @@ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "dev": true, "requires": { - "p-limit": "^2.0.0" + "p-limit": "2.0.0" } }, "p-try": { @@ -14890,8 +14874,8 @@ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" } }, "strip-ansi": { @@ -14900,7 +14884,7 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "3.0.0" } } } @@ -14911,7 +14895,7 @@ "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", "dev": true, "requires": { - "camelcase": "^4.1.0" + "camelcase": "4.1.0" } }, "yauzl": { @@ -14920,7 +14904,7 @@ "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", "dev": true, "requires": { - "fd-slicer": "~1.0.1" + "fd-slicer": "1.0.1" } } } diff --git a/src/desktop/package.json b/src/desktop/package.json index 43361c2286..2bd35679b8 100644 --- a/src/desktop/package.json +++ b/src/desktop/package.json @@ -145,7 +145,7 @@ "classnames": "^2.2.6", "electron-settings": "^3.2.0", "electron-updater": "4.0.4", - "entangled-node": "rihardsgravis/entangled-node", + "entangled-node": "rihardsgravis/entangled-node#v0.1.3", "hw-app-iota": "^0.5.1", "i18next": "^12.0.0", "iota.lib.js": "^0.5.1", From 40553a965d39b3373e57dc99e4884c60c23d973b Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Fri, 7 Dec 2018 11:10:12 -0500 Subject: [PATCH 106/141] Desktop: Fix environment detection (#707) --- src/desktop/native/preload/Electron.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/desktop/native/preload/Electron.js b/src/desktop/native/preload/Electron.js index 8f37e6c024..cede3c13e4 100644 --- a/src/desktop/native/preload/Electron.js +++ b/src/desktop/native/preload/Electron.js @@ -47,7 +47,7 @@ let onboardingSeed = null; let onboardingGenerated = false; // Use a different keychain entry for development versions -const KEYTAR_SERVICE = process.env.NODE_ENV === 'development' ? 'Trinity wallet (dev)' : 'Trinity wallet'; +const KEYTAR_SERVICE = remote.app.isPackaged ? 'Trinity wallet' : 'Trinity wallet (dev)'; /** * Global Electron helper for native support From f81609dc2f00390d9845fa8e5372beaecf1a78d7 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 7 Dec 2018 16:20:32 +0000 Subject: [PATCH 107/141] Mobile: Fix QR Scanner sizing --- src/mobile/src/ui/components/QrScanner.js | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/src/mobile/src/ui/components/QrScanner.js b/src/mobile/src/ui/components/QrScanner.js index aba9c03e00..0ef3c13c5e 100644 --- a/src/mobile/src/ui/components/QrScanner.js +++ b/src/mobile/src/ui/components/QrScanner.js @@ -1,11 +1,12 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import { View, Text, StyleSheet, PermissionsAndroid } from 'react-native'; +import { Text, StyleSheet, PermissionsAndroid } from 'react-native'; import QRCodeScanner from 'react-native-qrcode-scanner'; import { withNamespaces } from 'react-i18next'; import { Styling } from 'ui/theme/general'; import { isAndroid } from 'libs/device'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; +import { height } from 'libs/dimensions'; import ModalView from './ModalView'; const styles = StyleSheet.create({ @@ -13,11 +14,14 @@ const styles = StyleSheet.create({ fontFamily: 'SourceSansPro-Regular', textAlign: 'center', fontSize: Styling.fontSize4, + justifyContent: 'center', }, textContainer: { - flex: 1, justifyContent: 'center', alignItems: 'center', + backgroundColor: 'red', + height: height / 6, + paddingBottom: height / 12, }, }); @@ -78,11 +82,13 @@ export class QRScanner extends Component { onButtonPress={() => this.props.hideModal()} buttonText={t('global:close')} > - - {t('scan')} - - this.props.onQRRead(data.data)} /> - + {t('scan')}} + onRead={(data) => this.props.onQRRead(data.data)} + /> ); } From bc536790c3d654d204300f8e615c8cc2ef327369 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 7 Dec 2018 16:22:30 +0000 Subject: [PATCH 108/141] Mobile: Fix save seed confirmation logic --- src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js b/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js index 133a1850cd..eaac6a2a5e 100644 --- a/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js +++ b/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js @@ -125,7 +125,11 @@ class SaveSeedConfirmation extends Component { const { t } = this.props; if (!this.state.hasAgreedToNotCopyPaste) { this.setState({ hasAgreedToNotCopyPaste: true }); - timer.setTimeout('delayTextUpdate', () => this.setState({ confirmationText: t('iHaveBackedUp') }), 1000); + return timer.setTimeout( + 'delayTextUpdate', + () => this.setState({ confirmationText: t('iHaveBackedUp') }), + 1000, + ); } this.setState({ hasConfirmedBackup: true }); } From bf4d706cc23f03539bf1b330d52cf0c6b2de95b4 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 7 Dec 2018 18:36:50 +0000 Subject: [PATCH 109/141] Mobile: Fix Android back press --- src/mobile/src/ui/components/BackPress.js | 64 +++++++++++++++++------ 1 file changed, 49 insertions(+), 15 deletions(-) diff --git a/src/mobile/src/ui/components/BackPress.js b/src/mobile/src/ui/components/BackPress.js index 635c86675d..188127f1d8 100644 --- a/src/mobile/src/ui/components/BackPress.js +++ b/src/mobile/src/ui/components/BackPress.js @@ -6,17 +6,20 @@ import { navigator } from 'libs/navigation'; import RNExitApp from 'react-native-exit-app'; import i18next from 'shared-modules/libs/i18next.js'; import { setSetting } from 'shared-modules/actions/wallet'; +import { setLoginRoute } from 'shared-modules/actions/ui'; import { connect } from 'react-redux'; import PropTypes from 'prop-types'; import { isAndroid } from 'libs/device'; const mapDispatchToProps = { setSetting, + setLoginRoute, }; const mapStateToProps = (state) => ({ currentSetting: state.wallet.currentSetting, currentRoute: last(state.wallet.navStack), + loginRoute: state.ui.loginRoute, }); /** @@ -27,14 +30,18 @@ const mapStateToProps = (state) => ({ export default function withBackPress(C) { class EnhancedComponent extends Component { static propTypes = { + /** Component ID */ + componentId: PropTypes.string.isRequired, /** @ignore */ setSetting: PropTypes.func.isRequired, /** @ignore */ currentSetting: PropTypes.string.isRequired, /** @ignore */ currentRoute: PropTypes.string.isRequired, - /** Component ID */ - componentId: PropTypes.string.isRequired, + /** @ignore */ + loginRoute: PropTypes.string.isRequired, + /** @ignore */ + setLoginRoute: PropTypes.func.isRequired, }; constructor(props) { super(props); @@ -70,7 +77,6 @@ export default function withBackPress(C) { */ withBackPressPopRoute() { navigator.pop(this.props.componentId); - return true; } /** @@ -84,7 +90,6 @@ export default function withBackPress(C) { } this.lastBackPressed = Date.now(); ToastAndroid.show(i18next.t('global:pressBackAgain'), ToastAndroid.SHORT); - return true; } /** @@ -95,7 +100,8 @@ export default function withBackPress(C) { withBackPressNavigateSettings(currentSetting) { switch (currentSetting) { case 'mainSettings': - return this.withBackPressCloseApp(); + this.withBackPressCloseApp(); + break; case 'modeSelection': case 'themeCustomisation': case 'currencySelection': @@ -104,28 +110,48 @@ export default function withBackPress(C) { case 'securitySettings': case 'advancedSettings': case 'about': - return this.props.setSetting('mainSettings'); + this.props.setSetting('mainSettings'); + break; case 'nodeSelection': case 'addCustomNode': case 'manualSync': case 'snapshotTransition': case 'pow': case 'autoPromotion': - return this.props.setSetting('advancedSettings'); + this.props.setSetting('advancedSettings'); + break; case 'viewSeed': case 'viewAddresses': case 'editAccountName': case 'deleteAccount': case 'addNewAccount': - return this.props.setSetting('accountManagement'); + case 'exportSeedVault': + this.props.setSetting('accountManagement'); + break; case 'addExistingSeed': - return this.props.setSetting('addNewAccount'); + this.props.setSetting('addNewAccount'); + break; case 'changePassword': - return this.props.setSetting('securitySettings'); + this.props.setSetting('securitySettings'); + break; + default: + break; + } + } + + withBackPressNavigateNodeOptions(loginRoute) { + switch (loginRoute) { + case 'complete2FA': + case 'nodeOptions': + this.props.setLoginRoute('login'); + break; + case 'nodeSelection': + case 'customNode': + this.props.setLoginRoute('nodeOptions'); + break; default: break; } - return true; } /** @@ -134,17 +160,25 @@ export default function withBackPress(C) { * @method handleBackPress */ handleBackPress = () => { - const { currentSetting, currentRoute } = this.props; + const { currentSetting, currentRoute, loginRoute } = this.props; switch (currentRoute) { case 'home': - return this.withBackPressNavigateSettings(currentSetting); + this.withBackPressNavigateSettings(currentSetting); + break; case 'languageSetup': case 'onboardingComplete': case 'login': - return this.withBackPressCloseApp(); + if (loginRoute !== 'login') { + this.withBackPressNavigateNodeOptions(loginRoute); + break; + } + this.withBackPressCloseApp(); + break; default: - return this.withBackPressPopRoute(); + this.withBackPressPopRoute(); + break; } + return true; }; render() { From 2c816d9f1ecb6d77bbf96b70ea5bbab343865b67 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 7 Dec 2018 22:10:07 +0000 Subject: [PATCH 110/141] Mobile: Refactor headers, update spacing and update strings --- .../__tests__/ui/components/Header.spec.js | 2 +- .../views/wallet/TwoFactorSetupAddKey.spec.js | 4 +- src/mobile/package.json | 2 +- .../src/ui/components/EnterPasswordOnLogin.js | 11 ++-- src/mobile/src/ui/components/Header.js | 11 +++- .../src/ui/views/onboarding/EnterSeed.js | 53 ++++++++----------- .../src/ui/views/onboarding/NewSeedSetup.js | 28 +++++----- .../views/onboarding/SaveSeedConfirmation.js | 17 ++---- .../src/ui/views/onboarding/SaveYourSeed.js | 13 +---- .../src/ui/views/onboarding/SeedReentry.js | 51 ++++++++---------- .../ui/views/onboarding/SeedVaultBackup.js | 15 ++---- .../src/ui/views/onboarding/SetAccountName.js | 40 ++++++-------- .../src/ui/views/onboarding/SetPassword.js | 16 ++---- .../src/ui/views/onboarding/WalletSetup.js | 35 +++++------- .../src/ui/views/onboarding/WriteSeedDown.js | 11 +--- src/mobile/src/ui/views/wallet/Disable2FA.js | 9 ++-- .../src/ui/views/wallet/FingerprintSetup.js | 8 +-- .../ui/views/wallet/TwoFactorSetupAddKey.js | 12 ++--- .../views/wallet/TwoFactorSetupEnterToken.js | 16 +++--- .../views/wallet/WalletResetConfirmation.js | 13 ++--- .../wallet/WalletResetRequirePassword.js | 12 ++--- src/mobile/yarn.lock | 8 +-- src/shared/locales/en/translation.json | 12 ++--- 23 files changed, 156 insertions(+), 243 deletions(-) diff --git a/src/mobile/__tests__/ui/components/Header.spec.js b/src/mobile/__tests__/ui/components/Header.spec.js index 6e0d6c55ab..eb6a3d74ad 100644 --- a/src/mobile/__tests__/ui/components/Header.spec.js +++ b/src/mobile/__tests__/ui/components/Header.spec.js @@ -21,7 +21,7 @@ describe('Testing Header component', () => { }); it('should require a children string as a prop', () => { - expect(Header.propTypes.children).toEqual(PropTypes.string.isRequired); + expect(Header.propTypes.children).toEqual(PropTypes.string); }); }); diff --git a/src/mobile/__tests__/ui/views/wallet/TwoFactorSetupAddKey.spec.js b/src/mobile/__tests__/ui/views/wallet/TwoFactorSetupAddKey.spec.js index 20e0525f86..cf1d2a109e 100644 --- a/src/mobile/__tests__/ui/views/wallet/TwoFactorSetupAddKey.spec.js +++ b/src/mobile/__tests__/ui/views/wallet/TwoFactorSetupAddKey.spec.js @@ -72,11 +72,11 @@ describe('Testing TwoFactorSetupAddKey component', () => { expect(wrapper.name()).toEqual('View'); }); - it('should return six View components', () => { + it('should return five View components', () => { const props = getProps(); const wrapper = shallow(); - expect(wrapper.find('View').length).toEqual(6); + expect(wrapper.find('View').length).toEqual(5); }); it('should return a QRCode component', () => { diff --git a/src/mobile/package.json b/src/mobile/package.json index 2930fb5f0c..15e3914b8a 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -213,4 +213,4 @@ "tls": false }, "snyk": true -} \ No newline at end of file +} diff --git a/src/mobile/src/ui/components/EnterPasswordOnLogin.js b/src/mobile/src/ui/components/EnterPasswordOnLogin.js index 56205d2dad..bfee5166c9 100644 --- a/src/mobile/src/ui/components/EnterPasswordOnLogin.js +++ b/src/mobile/src/ui/components/EnterPasswordOnLogin.js @@ -4,8 +4,8 @@ import { withNamespaces } from 'react-i18next'; import { StyleSheet, View, TouchableWithoutFeedback, Keyboard } from 'react-native'; import { connect } from 'react-redux'; import { toggleModalActivity } from 'shared-modules/actions/ui'; -import { width, height } from 'libs/dimensions'; -import { Icon } from 'ui/theme/icons'; +import { width } from 'libs/dimensions'; +import Header from 'ui/components/Header'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; import { Styling } from 'ui/theme/general'; import CustomTextInput from './CustomTextInput'; @@ -13,13 +13,12 @@ import DualFooterButtons from './DualFooterButtons'; const styles = StyleSheet.create({ topContainer: { - flex: 2.4, + flex: 2.6, alignItems: 'center', justifyContent: 'flex-start', - paddingTop: height / 16, }, midContainer: { - flex: 3.2, + flex: 3, width, alignItems: 'center', }, @@ -93,7 +92,7 @@ export class EnterPasswordOnLogin extends Component { - +
    - {children} + + {children && {children}} ); } diff --git a/src/mobile/src/ui/views/onboarding/EnterSeed.js b/src/mobile/src/ui/views/onboarding/EnterSeed.js index adb0e9d46d..6ce41f7456 100644 --- a/src/mobile/src/ui/views/onboarding/EnterSeed.js +++ b/src/mobile/src/ui/views/onboarding/EnterSeed.js @@ -15,8 +15,7 @@ import InfoBox from 'ui/components/InfoBox'; import DualFooterButtons from 'ui/components/DualFooterButtons'; import SeedVaultImport from 'ui/components/SeedVaultImportComponent'; import AnimatedComponent from 'ui/components/AnimatedComponent'; -import { width, height } from 'libs/dimensions'; -import { Icon } from 'ui/theme/icons'; +import { width } from 'libs/dimensions'; import { isAndroid } from 'libs/device'; import { Styling } from 'ui/theme/general'; import Header from 'ui/components/Header'; @@ -31,13 +30,12 @@ const styles = StyleSheet.create({ alignItems: 'center', }, topContainer: { - flex: 1, - paddingTop: height / 16, + flex: 1.4, alignItems: 'center', justifyContent: 'flex-start', }, midContainer: { - flex: 3, + flex: 2.6, alignItems: 'center', width, justifyContent: 'space-between', @@ -47,10 +45,6 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'flex-end', }, - header: { - flex: 1, - alignItems: 'center', - }, infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, @@ -67,7 +61,6 @@ const styles = StyleSheet.create({ flex: 0.5, alignItems: 'center', justifyContent: 'center', - marginBottom: width / 18, }, }); @@ -233,19 +226,31 @@ class EnterSeed extends React.Component { animationInType={['slideInRight', 'fadeIn']} animationOutType={['slideOutLeft', 'fadeOut']} delay={400} - style={styles.header} > - -
    {t('seedReentry:enterYourSeed')}
    - + + + {t('seedExplanation', { maxLength: MAX_SEED_LENGTH })} + + + {'\n'} + {t('neverShare')} + + + + + + - - - - {t('seedExplanation', { maxLength: MAX_SEED_LENGTH })} - - - {'\n'} - {t('neverShare')} - - - - + - - +
    + + + + - - this.openModal()} style={{ marginTop: height / 65, marginBottom: height / 80 }} @@ -271,7 +271,7 @@ class NewSeedSetup extends Component { - -
    {t('didSaveSeed')}
    - - -
    {t('saveYourSeed')}
    diff --git a/src/mobile/src/ui/views/onboarding/SeedReentry.js b/src/mobile/src/ui/views/onboarding/SeedReentry.js index 24b56e1b3d..902e0624a5 100644 --- a/src/mobile/src/ui/views/onboarding/SeedReentry.js +++ b/src/mobile/src/ui/views/onboarding/SeedReentry.js @@ -16,7 +16,6 @@ import InfoBox from 'ui/components/InfoBox'; import DualFooterButtons from 'ui/components/DualFooterButtons'; import AnimatedComponent from 'ui/components/AnimatedComponent'; import SeedVaultImport from 'ui/components/SeedVaultImportComponent'; -import { Icon } from 'ui/theme/icons'; import Header from 'ui/components/Header'; import { isAndroid } from 'libs/device'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -28,13 +27,12 @@ const styles = StyleSheet.create({ alignItems: 'center', }, topContainer: { - flex: 1, - paddingTop: height / 16, + flex: 1.4, justifyContent: 'flex-start', alignItems: 'center', }, midContainer: { - flex: 3, + flex: 2.6, alignItems: 'center', justifyContent: 'space-between', width, @@ -44,10 +42,6 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'flex-end', }, - header: { - flex: 1, - alignItems: 'center', - }, infoTextBottom: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, @@ -61,10 +55,9 @@ const styles = StyleSheet.create({ textAlign: 'center', }, seedVaultImportContainer: { - flex: 0.7, + flex: 0.5, alignItems: 'center', justifyContent: 'center', - marginBottom: width / 18, }, }); @@ -226,19 +219,30 @@ class SeedReentry extends Component { animationInType={['slideInRight', 'fadeIn']} animationOutType={['slideOutLeft', 'fadeOut']} delay={400} - style={styles.header} > - -
    {t('pleaseConfirmYourSeed')}
    - + + + {t('ifYouHaveNotSaved')} + + + {t('trinityWillNeverAskToReenter')} + + + + + + - - - - {t('ifYouHaveNotSaved')} - - - {t('trinityWillNeverAskToReenter')} - - - - + - -
    {t('exportSeedVault')}
    diff --git a/src/mobile/src/ui/views/onboarding/SetAccountName.js b/src/mobile/src/ui/views/onboarding/SetAccountName.js index f2f44d987d..01dd4b105d 100644 --- a/src/mobile/src/ui/views/onboarding/SetAccountName.js +++ b/src/mobile/src/ui/views/onboarding/SetAccountName.js @@ -14,10 +14,9 @@ import { VALID_SEED_REGEX } from 'shared-modules/libs/iota/utils'; import CustomTextInput from 'ui/components/CustomTextInput'; import DualFooterButtons from 'ui/components/DualFooterButtons'; import AnimatedComponent from 'ui/components/AnimatedComponent'; -import { width, height } from 'libs/dimensions'; +import { width } from 'libs/dimensions'; import SeedStore from 'libs/SeedStore'; import InfoBox from 'ui/components/InfoBox'; -import { Icon } from 'ui/theme/icons'; import { Styling } from 'ui/theme/general'; import Header from 'ui/components/Header'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -29,13 +28,12 @@ const styles = StyleSheet.create({ alignItems: 'center', }, topContainer: { - flex: 1, + flex: 1.4, alignItems: 'center', justifyContent: 'flex-start', - paddingTop: height / 16, }, midContainer: { - flex: 3, + flex: 2.6, justifyContent: 'flex-start', alignItems: 'center', width, @@ -45,10 +43,6 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'flex-end', }, - header: { - flex: 1, - alignItems: 'center', - }, infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, @@ -212,19 +206,26 @@ export class SetAccountName extends Component { animationInType={['slideInRight', 'fadeIn']} animationOutType={['slideOutLeft', 'fadeOut']} delay={400} - style={styles.header} > - -
    {t('letsAddName')}
    - + + {t('canUseMultipleSeeds')} + {t('youCanAdd')} + + + + - - - - {t('canUseMultipleSeeds')} - {t('youCanAdd')} - - - + diff --git a/src/mobile/src/ui/views/onboarding/SetPassword.js b/src/mobile/src/ui/views/onboarding/SetPassword.js index 312743fc7a..5625f6006d 100644 --- a/src/mobile/src/ui/views/onboarding/SetPassword.js +++ b/src/mobile/src/ui/views/onboarding/SetPassword.js @@ -15,7 +15,6 @@ import DualFooterButtons from 'ui/components/DualFooterButtons'; import AnimatedComponent from 'ui/components/AnimatedComponent'; import { width, height } from 'libs/dimensions'; import InfoBox from 'ui/components/InfoBox'; -import { Icon } from 'ui/theme/icons'; import { Styling } from 'ui/theme/general'; import Header from 'ui/components/Header'; import PasswordFields from 'ui/components/PasswordFields'; @@ -31,13 +30,12 @@ const styles = StyleSheet.create({ alignItems: 'center', }, topContainer: { - flex: 1, + flex: 1.4, alignItems: 'center', justifyContent: 'flex-start', - paddingTop: height / 16, }, midContainer: { - flex: 3, + flex: 2.6, justifyContent: 'space-around', alignItems: 'center', width, @@ -47,10 +45,6 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'flex-end', }, - header: { - flex: 1, - alignItems: 'center', - }, infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, @@ -197,15 +191,11 @@ class SetPassword extends Component { animationInType={['slideInRight', 'fadeIn']} animationOutType={['slideOutLeft', 'fadeOut']} delay={400} - style={styles.header} > - -
    {t('choosePassword')}
    - this.setState({ reentry })} /> - + diff --git a/src/mobile/src/ui/views/onboarding/WalletSetup.js b/src/mobile/src/ui/views/onboarding/WalletSetup.js index bdf94046a1..0860549d88 100644 --- a/src/mobile/src/ui/views/onboarding/WalletSetup.js +++ b/src/mobile/src/ui/views/onboarding/WalletSetup.js @@ -12,7 +12,6 @@ import { generateAlert } from 'shared-modules/actions/alerts'; import { toggleModalActivity } from 'shared-modules/actions/ui'; import DualFooterButtons from 'ui/components/DualFooterButtons'; import InfoBox from 'ui/components/InfoBox'; -import { Icon } from 'ui/theme/icons'; import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; import Header from 'ui/components/Header'; @@ -28,13 +27,12 @@ const styles = StyleSheet.create({ alignItems: 'center', }, topContainer: { - flex: 1, + flex: 1.4, alignItems: 'center', justifyContent: 'flex-start', - paddingTop: height / 16, }, midContainer: { - flex: 3, + flex: 2.6, alignItems: 'center', }, bottomContainer: { @@ -42,10 +40,6 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'flex-end', }, - header: { - flex: 1, - alignItems: 'center', - }, infoText: { fontFamily: 'SourceSansPro-Light', fontSize: Styling.fontSize3, @@ -208,29 +202,16 @@ class WalletSetup extends Component { animationInType={['slideInRight', 'fadeIn']} animationOutType={['slideOutLeft', 'fadeOut']} delay={400} - style={styles.header} > - -
    {t('welcome:thankYou')}
    - + - - {t('doYouNeedASeed')} - - - - @@ -249,6 +230,16 @@ class WalletSetup extends Component { + + + + {t('doYouNeedASeed')} + + diff --git a/src/mobile/src/ui/views/onboarding/WriteSeedDown.js b/src/mobile/src/ui/views/onboarding/WriteSeedDown.js index 25673f6607..143cbe2666 100644 --- a/src/mobile/src/ui/views/onboarding/WriteSeedDown.js +++ b/src/mobile/src/ui/views/onboarding/WriteSeedDown.js @@ -13,9 +13,8 @@ import SeedPicker from 'ui/components/SeedPicker'; import WithUserActivity from 'ui/components/UserActivity'; import DualFooterButtons from 'ui/components/DualFooterButtons'; import AnimatedComponent from 'ui/components/AnimatedComponent'; -import { width, height } from 'libs/dimensions'; +import { height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; -import { Icon } from 'ui/theme/icons'; import { isAndroid } from 'libs/device'; import Header from 'ui/components/Header'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -31,7 +30,6 @@ const styles = StyleSheet.create({ flex: 1, alignItems: 'center', justifyContent: 'flex-start', - paddingTop: height / 16, }, midContainer: { flex: 3, @@ -42,10 +40,6 @@ const styles = StyleSheet.create({ flex: 0.5, justifyContent: 'flex-end', }, - header: { - flex: 1, - alignItems: 'center', - }, textContainer: { width: Styling.contentWidth5, alignItems: 'center', @@ -205,10 +199,7 @@ class WriteSeedDown extends Component { animationInType={['slideInRight', 'fadeIn']} animationOutType={['slideOutLeft', 'fadeOut']} delay={400} - style={styles.header} > - -
    {t('saveYourSeed:writeYourSeedDown')}
    diff --git a/src/mobile/src/ui/views/wallet/Disable2FA.js b/src/mobile/src/ui/views/wallet/Disable2FA.js index 84feb8a3f9..753c7c17fe 100644 --- a/src/mobile/src/ui/views/wallet/Disable2FA.js +++ b/src/mobile/src/ui/views/wallet/Disable2FA.js @@ -12,8 +12,8 @@ import Fonts from 'ui/theme/fonts'; import CustomTextInput from 'ui/components/CustomTextInput'; import DualFooterButtons from 'ui/components/DualFooterButtons'; import AnimatedComponent from 'ui/components/AnimatedComponent'; -import { width, height } from 'libs/dimensions'; -import { Icon } from 'ui/theme/icons'; +import Header from 'ui/components/Header'; +import { height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; @@ -24,10 +24,9 @@ const styles = StyleSheet.create({ alignItems: 'center', }, topWrapper: { - flex: 1.3, + flex: 1.6, alignItems: 'center', justifyContent: 'flex-start', - paddingTop: height / 16, }, midWrapper: { flex: 1.6, @@ -125,7 +124,7 @@ class Disable2FA extends Component { animationOutType={['slideOutLeft', 'fadeOut']} delay={400} > - +
    diff --git a/src/mobile/src/ui/views/wallet/FingerprintSetup.js b/src/mobile/src/ui/views/wallet/FingerprintSetup.js index 04621dbb23..ce09134a48 100644 --- a/src/mobile/src/ui/views/wallet/FingerprintSetup.js +++ b/src/mobile/src/ui/views/wallet/FingerprintSetup.js @@ -12,6 +12,7 @@ import Fonts from 'ui/theme/fonts'; import { width, height } from 'libs/dimensions'; import { Styling } from 'ui/theme/general'; import { Icon } from 'ui/theme/icons'; +import Header from 'ui/components/Header'; import SingleFooterButton from 'ui/components/SingleFooterButton'; import AnimatedComponent from 'ui/components/AnimatedComponent'; import { isAndroid, isIPhoneX } from 'libs/device'; @@ -24,14 +25,13 @@ const styles = StyleSheet.create({ alignItems: 'center', }, topWrapper: { - flex: 0.3, + flex: 0.65, alignItems: 'center', justifyContent: 'flex-start', - paddingTop: height / 16, width, }, midWrapper: { - flex: 2, + flex: 3.9, alignItems: 'center', justifyContent: 'flex-start', paddingHorizontal: width / 10, @@ -225,7 +225,7 @@ class FingerprintEnable extends Component { animationOutType={['slideOutLeft', 'fadeOut']} delay={400} > - +
    diff --git a/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js b/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js index a5fce88fd5..19f5f442ab 100644 --- a/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js +++ b/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js @@ -13,7 +13,7 @@ import DualFooterButtons from 'ui/components/DualFooterButtons'; import AnimatedComponent from 'ui/components/AnimatedComponent'; import { Styling } from 'ui/theme/general'; import { width, height } from 'libs/dimensions'; -import { Icon } from 'ui/theme/icons'; +import Header from 'ui/components/Header'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; const styles = StyleSheet.create({ @@ -23,10 +23,9 @@ const styles = StyleSheet.create({ alignItems: 'center', }, topWrapper: { - flex: 0.3, + flex: 0.9, alignItems: 'center', justifyContent: 'flex-start', - paddingTop: height / 16, width, }, midWrapper: { @@ -44,7 +43,7 @@ const styles = StyleSheet.create({ fontSize: Styling.fontSize4, textAlign: 'center', backgroundColor: 'transparent', - marginBottom: height / 20, + marginBottom: height / 15, }, infoText: { fontSize: Styling.fontSize3, @@ -60,7 +59,7 @@ const styles = StyleSheet.create({ backgroundColor: 'white', borderRadius: Styling.borderRadiusLarge, padding: width / 30, - marginBottom: height / 20, + marginBottom: height / 15, alignItems: 'center', }, }); @@ -172,11 +171,10 @@ export class TwoFactorSetupAddKey extends Component { animationOutType={['slideOutLeft', 'fadeOut']} delay={400} > - +
    - - +
    - {t('enterCode')} - - +
    - - + - +
    @@ -220,7 +218,7 @@ class WalletResetRequirePassword extends Component { secureTextEntry /> - + diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 428b017954..61802f55d6 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -6845,10 +6845,10 @@ react-native-animatable@^1.2.4: dependencies: prop-types "^15.5.10" -react-native-camera@^1.1.4: - version "1.4.2" - resolved "https://registry.yarnpkg.com/react-native-camera/-/react-native-camera-1.4.2.tgz#d4f90863f2e4cf4603d9cc4b9eac0341536afa63" - integrity sha512-R8CzoAeZU/tkLKuwpvTbW2uns7iWRhQotKuM3urtKGBB8zmLzCySsDtn043Bt8JUGbLYtfassKRI39RJRhiwzA== +react-native-camera@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/react-native-camera/-/react-native-camera-1.5.1.tgz#c241cc0456e5dd31f1d05812bf3d0e86fb6931a3" + integrity sha512-qD3XTNU2Zh13vfiWZPCtXSFDFFBq8cKyDiaes+viMTCLP1VE81Uklbi21VdoOdTcTgrZe0OOCYUrZ3vj58RxWw== dependencies: lodash "^4.17.10" prop-types "^15.6.2" diff --git a/src/shared/locales/en/translation.json b/src/shared/locales/en/translation.json index 7af2ed6af0..2c0f2da6cf 100644 --- a/src/shared/locales/en/translation.json +++ b/src/shared/locales/en/translation.json @@ -224,7 +224,7 @@ "passwordMismatch": "Passwords do not match", "passwordMismatchExplanation": "The passwords you have entered do not match. Please try again.", "anEncryptedCopy": - "An encrypted copy of your seed will be stored on your device. You will use this password to access your wallet in future.", + "This is your main wallet password. You will use it to log in.", "retypePassword": "Retype Password" }, "copyToClipboard": { @@ -616,10 +616,10 @@ "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { @@ -650,7 +650,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation" : "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation" : "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -670,7 +670,7 @@ "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as your Trinity password.", + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", "retypeKey": "Retype key" }, "chart": { From a326b71d845fe4e16472042dfe7a9c0c2250a9e3 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Fri, 7 Dec 2018 22:37:32 +0000 Subject: [PATCH 111/141] Fix npm shrinkwrap --- src/desktop/npm-shrinkwrap.json | 249 -------------------------------- 1 file changed, 249 deletions(-) diff --git a/src/desktop/npm-shrinkwrap.json b/src/desktop/npm-shrinkwrap.json index c45f4bef29..908ae601e3 100644 --- a/src/desktop/npm-shrinkwrap.json +++ b/src/desktop/npm-shrinkwrap.json @@ -23,12 +23,8 @@ "@babel/core": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.1.2.tgz", -<<<<<<< HEAD "integrity": "sha512-IFeSSnjXdhDaoysIlev//UzHZbdEmm7D0EIH2qtse9xK7mXEZQpYjs2P00XlP1qYsYvid79p+Zgg6tz1mp6iVw==", -======= - "integrity": "sha512-IFeSSnjXdhDaoysIlev//UzHZbdEmm7D0EIH2qtse9xK7mXEZQpYjs2P00XlP1qYsYvid79p+Zgg6tz1mp6iVw==", ->>>>>>> feat/animations "dev": true, "requires": { "@babel/code-frame": "7.0.0", @@ -854,12 +850,8 @@ "@babel/preset-env": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.1.0.tgz", -<<<<<<< HEAD "integrity": "sha512-ZLVSynfAoDHB/34A17/JCZbyrzbQj59QC1Anyueb4Bwjh373nVPq5/HMph0z+tCmcDjXDe+DlKQq9ywQuvWrQg==", -======= - "integrity": "sha512-ZLVSynfAoDHB/34A17/JCZbyrzbQj59QC1Anyueb4Bwjh373nVPq5/HMph0z+tCmcDjXDe+DlKQq9ywQuvWrQg==", ->>>>>>> feat/animations "dev": true, "requires": { "@babel/helper-module-imports": "7.0.0", @@ -1874,12 +1866,8 @@ "bluebird": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.2.tgz", -<<<<<<< HEAD "integrity": "sha512-dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg==" -======= - "integrity": "sha512-dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg==" ->>>>>>> feat/animations }, "bn.js": { "version": "4.11.8", @@ -2004,12 +1992,8 @@ "braces": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", -<<<<<<< HEAD "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", -======= - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", ->>>>>>> feat/animations "dev": true, "requires": { "arr-flatten": "1.1.0", @@ -3403,12 +3387,8 @@ "debug": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", -<<<<<<< HEAD "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", -======= - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", ->>>>>>> feat/animations "dev": true, "requires": { "ms": "2.1.1" @@ -3589,12 +3569,8 @@ "diffie-hellman": { "version": "5.0.3", "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", -<<<<<<< HEAD "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", -======= - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", ->>>>>>> feat/animations "dev": true, "requires": { "bn.js": "4.11.8", @@ -3742,12 +3718,8 @@ "electron": { "version": "3.0.10", "resolved": "https://registry.npmjs.org/electron/-/electron-3.0.10.tgz", -<<<<<<< HEAD "integrity": "sha512-I39IeQP3NOlbjKzTDK8uK2JdiHDfhV5SruCS2Gttkn2MaKCY+yIzQ6Wr4DyBXLeTEkL1sbZxbqQVhCavAliv5w==", -======= - "integrity": "sha512-I39IeQP3NOlbjKzTDK8uK2JdiHDfhV5SruCS2Gttkn2MaKCY+yIzQ6Wr4DyBXLeTEkL1sbZxbqQVhCavAliv5w==", ->>>>>>> feat/animations "dev": true, "requires": { "@types/node": "8.10.36", @@ -3787,12 +3759,8 @@ "ajv": { "version": "6.6.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.0.tgz", -<<<<<<< HEAD "integrity": "sha512-ZCIMdm75ps9usdeb0GQL9rKOUlTtS0p0vU2nQVXgRIu6Yb00G9GY7AvbVLwTQ5Po4JDKIwJlT5nwggoRDrDVAw==", -======= - "integrity": "sha512-ZCIMdm75ps9usdeb0GQL9rKOUlTtS0p0vU2nQVXgRIu6Yb00G9GY7AvbVLwTQ5Po4JDKIwJlT5nwggoRDrDVAw==", ->>>>>>> feat/animations "dev": true, "requires": { "fast-deep-equal": "2.0.1", @@ -3901,12 +3869,8 @@ "debug": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", -<<<<<<< HEAD "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", -======= - "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", ->>>>>>> feat/animations "dev": true, "requires": { "ms": "2.1.1" @@ -4172,15 +4136,10 @@ }, "electron-devtools-installer": { "version": "2.2.4", -<<<<<<< HEAD "resolved": "https://registry.npmjs.org/electron-devtools-installer/-/electron-devtools-installer-2.2.4.tgz", "integrity": "sha512-b5kcM3hmUqn64+RUcHjjr8ZMpHS2WJ5YO0pnG9+P/RTdx46of/JrEjuciHWux6pE+On6ynWhHJF53j/EDJN0PA==", -======= - "resolved": "https://registry.npmjs.org/electron-devtools-installer/-/electron-devtools-installer-2.2.4.tgz", - "integrity": "sha512-b5kcM3hmUqn64+RUcHjjr8ZMpHS2WJ5YO0pnG9+P/RTdx46of/JrEjuciHWux6pE+On6ynWhHJF53j/EDJN0PA==", ->>>>>>> feat/animations "dev": true, "requires": { "7zip": "0.0.6", @@ -4782,12 +4741,8 @@ "extglob": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", -<<<<<<< HEAD "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", -======= - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", ->>>>>>> feat/animations "dev": true, "requires": { "array-unique": "0.3.2", @@ -5208,12 +5163,8 @@ "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", -<<<<<<< HEAD "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", -======= - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", ->>>>>>> feat/animations "dev": true, "optional": true }, @@ -5226,12 +5177,8 @@ "aproba": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", -<<<<<<< HEAD "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", -======= - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", ->>>>>>> feat/animations "dev": true, "optional": true }, @@ -5255,12 +5202,8 @@ "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", -<<<<<<< HEAD "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", -======= - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", ->>>>>>> feat/animations "dev": true, "requires": { "balanced-match": "1.0.0", @@ -5303,12 +5246,8 @@ "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", -<<<<<<< HEAD "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", -======= - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5318,12 +5257,8 @@ "deep-extend": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.1.tgz", -<<<<<<< HEAD "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==", -======= - "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==", ->>>>>>> feat/animations "dev": true, "optional": true }, @@ -5344,12 +5279,8 @@ "fs-minipass": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", -<<<<<<< HEAD "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", -======= - "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5383,12 +5314,8 @@ "glob": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", -<<<<<<< HEAD "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", -======= - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5410,12 +5337,8 @@ "iconv-lite": { "version": "0.4.21", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.21.tgz", -<<<<<<< HEAD "integrity": "sha512-En5V9za5mBt2oUA03WGD3TwDv0MKAruqsuxstbMUZaj9W9k/m1CV/9py3l0L5kw9Bln8fdHQmzHSYtvpvTLpKw==", -======= - "integrity": "sha512-En5V9za5mBt2oUA03WGD3TwDv0MKAruqsuxstbMUZaj9W9k/m1CV/9py3l0L5kw9Bln8fdHQmzHSYtvpvTLpKw==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5425,12 +5348,8 @@ "ignore-walk": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", -<<<<<<< HEAD "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", -======= - "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5457,12 +5376,8 @@ "ini": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", -<<<<<<< HEAD "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", -======= - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", ->>>>>>> feat/animations "dev": true, "optional": true }, @@ -5486,12 +5401,8 @@ "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", -<<<<<<< HEAD "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", -======= - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", ->>>>>>> feat/animations "dev": true, "requires": { "brace-expansion": "1.1.11" @@ -5506,12 +5417,8 @@ "minipass": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz", -<<<<<<< HEAD "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", -======= - "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", ->>>>>>> feat/animations "dev": true, "requires": { "safe-buffer": "5.1.1", @@ -5521,12 +5428,8 @@ "minizlib": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz", -<<<<<<< HEAD "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==", -======= - "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5552,12 +5455,8 @@ "needle": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/needle/-/needle-2.2.0.tgz", -<<<<<<< HEAD "integrity": "sha512-eFagy6c+TYayorXw/qtAdSvaUpEbBsDwDyxYFgLZ0lTojfH7K+OdBqAF7TAFwDokJaGpubpSGG0wO3iC0XPi8w==", -======= - "integrity": "sha512-eFagy6c+TYayorXw/qtAdSvaUpEbBsDwDyxYFgLZ0lTojfH7K+OdBqAF7TAFwDokJaGpubpSGG0wO3iC0XPi8w==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5569,12 +5468,8 @@ "node-pre-gyp": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.10.0.tgz", -<<<<<<< HEAD "integrity": "sha512-G7kEonQLRbcA/mOoFoxvlMrw6Q6dPf92+t/l0DFSMuSlDoWaI9JWIyPwK0jyE1bph//CUEL65/Fz1m2vJbmjQQ==", -======= - "integrity": "sha512-G7kEonQLRbcA/mOoFoxvlMrw6Q6dPf92+t/l0DFSMuSlDoWaI9JWIyPwK0jyE1bph//CUEL65/Fz1m2vJbmjQQ==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5604,24 +5499,16 @@ "npm-bundled": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.3.tgz", -<<<<<<< HEAD "integrity": "sha512-ByQ3oJ/5ETLyglU2+8dBObvhfWXX8dtPZDMePCahptliFX2iIuhyEszyFk401PZUNQH20vvdW5MLjJxkwU80Ow==", -======= - "integrity": "sha512-ByQ3oJ/5ETLyglU2+8dBObvhfWXX8dtPZDMePCahptliFX2iIuhyEszyFk401PZUNQH20vvdW5MLjJxkwU80Ow==", ->>>>>>> feat/animations "dev": true, "optional": true }, "npm-packlist": { "version": "1.1.10", "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.1.10.tgz", -<<<<<<< HEAD "integrity": "sha512-AQC0Dyhzn4EiYEfIUjCdMl0JJ61I2ER9ukf/sLxJUcZHfo+VyEfz2rMJgLZSS1v30OxPQe1cN0LZA1xbcaVfWA==", -======= - "integrity": "sha512-AQC0Dyhzn4EiYEfIUjCdMl0JJ61I2ER9ukf/sLxJUcZHfo+VyEfz2rMJgLZSS1v30OxPQe1cN0LZA1xbcaVfWA==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5632,12 +5519,8 @@ "npmlog": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", -<<<<<<< HEAD "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", -======= - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5686,12 +5569,8 @@ "osenv": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", -<<<<<<< HEAD "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", -======= - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5709,24 +5588,16 @@ "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", -<<<<<<< HEAD "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", -======= - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", ->>>>>>> feat/animations "dev": true, "optional": true }, "rc": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.7.tgz", -<<<<<<< HEAD "integrity": "sha512-LdLD8xD4zzLsAT5xyushXDNscEjB7+2ulnl8+r1pnESlYtlJtVSoCMBGr30eDRJ3+2Gq89jK9P9e4tCEH1+ywA==", -======= - "integrity": "sha512-LdLD8xD4zzLsAT5xyushXDNscEjB7+2ulnl8+r1pnESlYtlJtVSoCMBGr30eDRJ3+2Gq89jK9P9e4tCEH1+ywA==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5748,12 +5619,8 @@ "readable-stream": { "version": "2.3.6", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", -<<<<<<< HEAD "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", -======= - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5769,12 +5636,8 @@ "rimraf": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", -<<<<<<< HEAD "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", -======= - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5784,47 +5647,31 @@ "safe-buffer": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", -<<<<<<< HEAD "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", -======= - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", ->>>>>>> feat/animations "dev": true }, "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", -<<<<<<< HEAD "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", -======= - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", ->>>>>>> feat/animations "dev": true, "optional": true }, "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", -<<<<<<< HEAD "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", -======= - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", ->>>>>>> feat/animations "dev": true, "optional": true }, "semver": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", -<<<<<<< HEAD "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", -======= - "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", ->>>>>>> feat/animations "dev": true, "optional": true }, @@ -5856,12 +5703,8 @@ "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", -<<<<<<< HEAD "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", -======= - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5887,12 +5730,8 @@ "tar": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.1.tgz", -<<<<<<< HEAD "integrity": "sha512-O+v1r9yN4tOsvl90p5HAP4AEqbYhx4036AGMm075fH9F8Qwi3oJ+v4u50FkT/KkvywNGtwkk0zRI+8eYm1X/xg==", -======= - "integrity": "sha512-O+v1r9yN4tOsvl90p5HAP4AEqbYhx4036AGMm075fH9F8Qwi3oJ+v4u50FkT/KkvywNGtwkk0zRI+8eYm1X/xg==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -5915,12 +5754,8 @@ "wide-align": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", -<<<<<<< HEAD "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", -======= - "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", ->>>>>>> feat/animations "dev": true, "optional": true, "requires": { @@ -6241,12 +6076,8 @@ "history": { "version": "4.7.2", "resolved": "https://registry.npmjs.org/history/-/history-4.7.2.tgz", -<<<<<<< HEAD "integrity": "sha512-1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA==", -======= - "integrity": "sha512-1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA==", ->>>>>>> feat/animations "requires": { "invariant": "2.2.4", "loose-envify": "1.4.0", @@ -6461,12 +6292,8 @@ "hw-app-iota": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/hw-app-iota/-/hw-app-iota-0.5.1.tgz", -<<<<<<< HEAD "integrity": "sha512-H8N6TGG/TFCmqMLCd94v5XLqpSmNZTq2yDbYNBf3McJpsacHdw9aiQFuqY1V2LMXzHeL6tj2o0F+EVwl8c5u1Q==", -======= - "integrity": "sha512-H8N6TGG/TFCmqMLCd94v5XLqpSmNZTq2yDbYNBf3McJpsacHdw9aiQFuqY1V2LMXzHeL6tj2o0F+EVwl8c5u1Q==", ->>>>>>> feat/animations "requires": { "babel-runtime": "6.26.0", "bip32-path": "0.4.2", @@ -6667,12 +6494,8 @@ "ansi-escapes": { "version": "3.1.0", "resolved": "http://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", -<<<<<<< HEAD "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", -======= - "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", ->>>>>>> feat/animations "dev": true }, "ansi-regex": { @@ -10783,12 +10606,8 @@ } }, "machine-uuid-sync": { -<<<<<<< HEAD "version": "git+https://github.com/rajivshah3/machine-uuid-sync.git#a5ffa8eab86764db0c69aadbeef9a14b2ae9ae5c", -======= - "version": "git+https://github.com/rajivshah3/machine-uuid-sync.git#a5ffa8eab86764db0c69aadbeef9a14b2ae9ae5c", ->>>>>>> feat/animations "requires": { "uuid": "3.3.2" } @@ -10796,12 +10615,8 @@ "make-dir": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", -<<<<<<< HEAD "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", -======= - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", ->>>>>>> feat/animations "requires": { "pify": "3.0.0" } @@ -11076,12 +10891,8 @@ "mississippi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", -<<<<<<< HEAD "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", -======= - "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", ->>>>>>> feat/animations "dev": true, "requires": { "concat-stream": "1.6.2", @@ -11337,12 +11148,8 @@ "node-libs-browser": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", -<<<<<<< HEAD "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", -======= - "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", ->>>>>>> feat/animations "dev": true, "requires": { "assert": "1.4.1", @@ -11748,12 +11555,8 @@ "p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", -<<<<<<< HEAD "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", -======= - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", ->>>>>>> feat/animations "requires": { "p-try": "1.0.0" } @@ -11793,12 +11596,8 @@ "pako": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", -<<<<<<< HEAD "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==" -======= - "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==" ->>>>>>> feat/animations }, "parallel-transform": { "version": "1.1.0", @@ -12077,12 +11876,8 @@ "pino": { "version": "4.17.6", "resolved": "https://registry.npmjs.org/pino/-/pino-4.17.6.tgz", -<<<<<<< HEAD "integrity": "sha512-LFDwmhyWLBnmwO/2UFbWu1jEGVDzaPupaVdx0XcZ3tIAx1EDEBauzxXf2S0UcFK7oe+X9MApjH0hx9U1XMgfCA==", -======= - "integrity": "sha512-LFDwmhyWLBnmwO/2UFbWu1jEGVDzaPupaVdx0XcZ3tIAx1EDEBauzxXf2S0UcFK7oe+X9MApjH0hx9U1XMgfCA==", ->>>>>>> feat/animations "dev": true, "requires": { "chalk": "2.4.1", @@ -12982,12 +12777,8 @@ "react-redux": { "version": "5.0.7", "resolved": "http://registry.npmjs.org/react-redux/-/react-redux-5.0.7.tgz", -<<<<<<< HEAD "integrity": "sha512-5VI8EV5hdgNgyjfmWzBbdrqUkrVRKlyTKk1sGH3jzM2M2Mhj/seQgPXaz6gVAj2lz/nz688AdTqMO18Lr24Zhg==", -======= - "integrity": "sha512-5VI8EV5hdgNgyjfmWzBbdrqUkrVRKlyTKk1sGH3jzM2M2Mhj/seQgPXaz6gVAj2lz/nz688AdTqMO18Lr24Zhg==", ->>>>>>> feat/animations "requires": { "hoist-non-react-statics": "2.5.5", "invariant": "2.2.4", @@ -13021,12 +12812,8 @@ "react-router": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/react-router/-/react-router-4.3.1.tgz", -<<<<<<< HEAD "integrity": "sha512-yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg==", -======= - "integrity": "sha512-yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg==", ->>>>>>> feat/animations "requires": { "history": "4.7.2", "hoist-non-react-statics": "2.5.5", @@ -13063,12 +12850,8 @@ "react-smooth": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/react-smooth/-/react-smooth-1.0.2.tgz", -<<<<<<< HEAD "integrity": "sha512-pIGzL1g9VGAsRsdZQokIK0vrCkcdKtnOnS1gyB2rrowdLy69lNSWoIjCTWAfgbiYvria8tm5hEZqj+jwXMkV4A==", -======= - "integrity": "sha512-pIGzL1g9VGAsRsdZQokIK0vrCkcdKtnOnS1gyB2rrowdLy69lNSWoIjCTWAfgbiYvria8tm5hEZqj+jwXMkV4A==", ->>>>>>> feat/animations "requires": { "lodash": "4.17.11", "prop-types": "15.6.2", @@ -13139,12 +12922,8 @@ "recharts": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/recharts/-/recharts-1.3.4.tgz", -<<<<<<< HEAD "integrity": "sha512-jOImzEnTsHjEDxLnfbuTpxZHz1XV3vPWFyujrbFzrkSWBwoR0He9HbkSui8x/LpoDzwgeO25J0t6z+edFuwgWw==", -======= - "integrity": "sha512-jOImzEnTsHjEDxLnfbuTpxZHz1XV3vPWFyujrbFzrkSWBwoR0He9HbkSui8x/LpoDzwgeO25J0t6z+edFuwgWw==", ->>>>>>> feat/animations "requires": { "classnames": "2.2.6", "core-js": "2.5.7", @@ -13352,12 +13131,8 @@ "remark-parse": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-5.0.0.tgz", -<<<<<<< HEAD "integrity": "sha512-b3iXszZLH1TLoyUzrATcTQUZrwNl1rE70rVdSruJFlDaJ9z5aMkhrG43Pp68OgfHndL/ADz6V69Zow8cTQu+JA==", -======= - "integrity": "sha512-b3iXszZLH1TLoyUzrATcTQUZrwNl1rE70rVdSruJFlDaJ9z5aMkhrG43Pp68OgfHndL/ADz6V69Zow8cTQu+JA==", ->>>>>>> feat/animations "requires": { "collapse-white-space": "1.0.4", "is-alphabetical": "1.0.2", @@ -13425,12 +13200,8 @@ "request": { "version": "2.88.0", "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", -<<<<<<< HEAD "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", -======= - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", ->>>>>>> feat/animations "dev": true, "requires": { "aws-sign2": "0.7.0", @@ -13958,12 +13729,8 @@ "snapdragon": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", -<<<<<<< HEAD "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", -======= - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", ->>>>>>> feat/animations "dev": true, "requires": { "base": "0.11.2", @@ -14503,12 +14270,8 @@ "tar": { "version": "4.4.6", "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.6.tgz", -<<<<<<< HEAD "integrity": "sha512-tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==", -======= - "integrity": "sha512-tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==", ->>>>>>> feat/animations "requires": { "chownr": "1.1.1", "fs-minipass": "1.2.5", @@ -14553,12 +14316,8 @@ "tar-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", -<<<<<<< HEAD "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", -======= - "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", ->>>>>>> feat/animations "requires": { "bl": "1.2.2", "buffer-alloc": "1.2.0", @@ -14874,12 +14633,8 @@ "uglifyjs-webpack-plugin": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", -<<<<<<< HEAD "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", -======= - "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", ->>>>>>> feat/animations "dev": true, "requires": { "cacache": "10.0.4", @@ -15802,12 +15557,8 @@ "yargs": { "version": "12.0.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", -<<<<<<< HEAD "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", -======= - "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", ->>>>>>> feat/animations "dev": true, "requires": { "cliui": "4.1.0", From f75ef757de28c0c815edac25de28b349423ce014 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Fri, 7 Dec 2018 20:12:50 -0500 Subject: [PATCH 112/141] Desktop: Drag-and-drop localization fixes (#711) --- src/desktop/src/ui/components/Dropzone.js | 6 +++--- src/desktop/src/ui/components/input/Seed.js | 5 +++-- src/shared/locales/en/translation.json | 3 ++- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/desktop/src/ui/components/Dropzone.js b/src/desktop/src/ui/components/Dropzone.js index 2601177d16..7a74547d7e 100644 --- a/src/desktop/src/ui/components/Dropzone.js +++ b/src/desktop/src/ui/components/Dropzone.js @@ -157,15 +157,15 @@ class Dropzone extends React.Component {
    {' '} - - Drop SeedVault here
    or click to browse + + Drop SeedVault or text here
    or click to browse
    -

    {t('seedVault:dropSeedVaultHere')}

    +

    {t('seedVault:dropActive')}

    ); diff --git a/src/desktop/src/ui/components/input/Seed.js b/src/desktop/src/ui/components/input/Seed.js index 468f8f7a93..a04c828f05 100644 --- a/src/desktop/src/ui/components/input/Seed.js +++ b/src/desktop/src/ui/components/input/Seed.js @@ -110,11 +110,12 @@ class SeedInput extends React.PureComponent { }; onDrop = async (buffer) => { + const { t } = this.props; if (!buffer) { return this.props.generateAlert( 'error', - 'Error opening keystore file', - 'There was an error opening keystore file', + t('seedVault:seedFileError'), + t('seedVault:seedFileErrorExplanation'), ); } diff --git a/src/shared/locales/en/translation.json b/src/shared/locales/en/translation.json index b466e82501..1b25e9b345 100644 --- a/src/shared/locales/en/translation.json +++ b/src/shared/locales/en/translation.json @@ -649,7 +649,8 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", From b8b9d2a2917f1b1d964e9d6c9ace79853f65dd36 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 10 Dec 2018 03:52:53 +0000 Subject: [PATCH 113/141] Bump fastlane from 2.108.0 to 2.109.1 in /src/mobile/android Bumps [fastlane](https://github.com/fastlane/fastlane) from 2.108.0 to 2.109.1. - [Release notes](https://github.com/fastlane/fastlane/releases) - [Commits](https://github.com/fastlane/fastlane/commits) Signed-off-by: dependabot[bot] --- src/mobile/android/Gemfile.lock | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/mobile/android/Gemfile.lock b/src/mobile/android/Gemfile.lock index 418042fce2..ee7be7ef1d 100644 --- a/src/mobile/android/Gemfile.lock +++ b/src/mobile/android/Gemfile.lock @@ -18,15 +18,15 @@ GEM dotenv (2.5.0) emoji_regex (0.1.1) excon (0.62.0) - faraday (0.15.3) + faraday (0.15.4) multipart-post (>= 1.2, < 3) faraday-cookie_jar (0.0.6) faraday (>= 0.7.4) http-cookie (~> 1.0.0) faraday_middleware (0.12.2) faraday (>= 0.7.4, < 1.0) - fastimage (2.1.4) - fastlane (2.108.0) + fastimage (2.1.5) + fastlane (2.109.1) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.3, < 3.0.0) babosa (>= 1.0.2, < 2.0.0) @@ -62,8 +62,6 @@ GEM xcodeproj (>= 1.6.0, < 2.0.0) xcpretty (~> 0.3.0) xcpretty-travis-formatter (>= 0.0.3) - fastlane-plugin-increment_version_code (0.4.3) - fastlane-plugin-load_json (0.0.1) gh_inspector (1.1.3) google-api-client (0.23.9) addressable (~> 2.5, >= 2.5.1) @@ -124,8 +122,8 @@ GEM unicode-display_width (~> 1.1, >= 1.1.1) tty-cursor (0.6.0) tty-screen (0.6.5) - tty-spinner (0.8.0) - tty-cursor (>= 0.5.0) + tty-spinner (0.9.0) + tty-cursor (~> 0.6.0) uber (0.1.0) unf (0.1.4) unf_ext @@ -148,8 +146,6 @@ PLATFORMS DEPENDENCIES fastlane - fastlane-plugin-increment_version_code - fastlane-plugin-load_json nokogiri BUNDLED WITH From db2f69635a098626fe893ab603fb1b3f9ae88593 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 10 Dec 2018 03:56:50 +0000 Subject: [PATCH 114/141] Bump @babel/core from 7.1.2 to 7.2.0 in /src/desktop Bumps [@babel/core](https://github.com/babel/babel) from 7.1.2 to 7.2.0. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md) - [Commits](https://github.com/babel/babel/compare/v7.1.2...v7.2.0) Signed-off-by: dependabot[bot] --- src/desktop/npm-shrinkwrap.json | 426 +++++++++++++++++++++++--------- src/desktop/package.json | 2 +- 2 files changed, 304 insertions(+), 124 deletions(-) diff --git a/src/desktop/npm-shrinkwrap.json b/src/desktop/npm-shrinkwrap.json index fd24346214..6100b82d5a 100644 --- a/src/desktop/npm-shrinkwrap.json +++ b/src/desktop/npm-shrinkwrap.json @@ -20,27 +20,92 @@ } }, "@babel/core": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.1.2.tgz", - "integrity": "sha512-IFeSSnjXdhDaoysIlev//UzHZbdEmm7D0EIH2qtse9xK7mXEZQpYjs2P00XlP1qYsYvid79p+Zgg6tz1mp6iVw==", - "dev": true, - "requires": { - "@babel/code-frame": "7.0.0", - "@babel/generator": "7.1.3", - "@babel/helpers": "7.1.2", - "@babel/parser": "7.1.3", - "@babel/template": "7.1.2", - "@babel/traverse": "7.1.4", - "@babel/types": "7.1.3", - "convert-source-map": "1.6.0", - "debug": "3.2.6", - "json5": "0.5.1", - "lodash": "4.17.11", - "resolve": "1.8.1", - "semver": "5.6.0", - "source-map": "0.5.7" + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.2.0.tgz", + "integrity": "sha512-7pvAdC4B+iKjFFp9Ztj0QgBndJ++qaMeonT185wAqUnhipw8idm9Rv1UMyBuKtYjfl6ORNkgEgcsYLfHX/GpLw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.2.0", + "@babel/helpers": "^7.2.0", + "@babel/parser": "^7.2.0", + "@babel/template": "^7.1.2", + "@babel/traverse": "^7.1.6", + "@babel/types": "^7.2.0", + "convert-source-map": "^1.1.0", + "debug": "^4.1.0", + "json5": "^2.1.0", + "lodash": "^4.17.10", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" }, "dependencies": { + "@babel/generator": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.2.0.tgz", + "integrity": "sha512-BA75MVfRlFQG2EZgFYIwyT1r6xSkwfP2bdkY/kLZusEYWiJs4xCowab/alaEaT0wSvmVuXGqiefeBlP+7V1yKg==", + "dev": true, + "requires": { + "@babel/types": "^7.2.0", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + } + }, + "@babel/parser": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.2.0.tgz", + "integrity": "sha512-M74+GvK4hn1eejD9lZ7967qAwvqTZayQa3g10ag4s9uewgR7TKjeaT0YMyoq+gVfKYABiWZ4MQD701/t5e1Jhg==", + "dev": true + }, + "@babel/traverse": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.6.tgz", + "integrity": "sha512-CXedit6GpISz3sC2k2FsGCUpOhUqKdyL0lqNrImQojagnUMXf8hex4AxYFRuMkNGcvJX5QAFGzB5WJQmSv8SiQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.1.6", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/parser": "^7.1.6", + "@babel/types": "^7.1.6", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.10" + } + }, + "@babel/types": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.2.0.tgz", + "integrity": "sha512-b4v7dyfApuKDvmPb+O488UlGuR1WbwMXFsO/cyqMrnfvRAChZKJAYeeglWTjUO1b9UghKKgepAQM5tsvBJca6A==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + } + }, + "debug": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", + "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "json5": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz", + "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", @@ -273,14 +338,78 @@ } }, "@babel/helpers": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.1.2.tgz", - "integrity": "sha512-Myc3pUE8eswD73aWcartxB16K6CGmHDv9KxOmD2CeOs/FaEAQodr3VYGmlvOmog60vNQ2w8QbatuahepZwrHiA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.2.0.tgz", + "integrity": "sha512-Fr07N+ea0dMcMN8nFpuK6dUIT7/ivt9yKQdEEnjVS83tG2pHwPi03gYmk/tyuwONnZ+sY+GFFPlWGgCtW1hF9A==", "dev": true, "requires": { - "@babel/template": "7.1.2", - "@babel/traverse": "7.1.4", - "@babel/types": "7.1.3" + "@babel/template": "^7.1.2", + "@babel/traverse": "^7.1.5", + "@babel/types": "^7.2.0" + }, + "dependencies": { + "@babel/generator": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.2.0.tgz", + "integrity": "sha512-BA75MVfRlFQG2EZgFYIwyT1r6xSkwfP2bdkY/kLZusEYWiJs4xCowab/alaEaT0wSvmVuXGqiefeBlP+7V1yKg==", + "dev": true, + "requires": { + "@babel/types": "^7.2.0", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + } + }, + "@babel/parser": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.2.0.tgz", + "integrity": "sha512-M74+GvK4hn1eejD9lZ7967qAwvqTZayQa3g10ag4s9uewgR7TKjeaT0YMyoq+gVfKYABiWZ4MQD701/t5e1Jhg==", + "dev": true + }, + "@babel/traverse": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.6.tgz", + "integrity": "sha512-CXedit6GpISz3sC2k2FsGCUpOhUqKdyL0lqNrImQojagnUMXf8hex4AxYFRuMkNGcvJX5QAFGzB5WJQmSv8SiQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.1.6", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/parser": "^7.1.6", + "@babel/types": "^7.1.6", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.10" + } + }, + "@babel/types": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.2.0.tgz", + "integrity": "sha512-b4v7dyfApuKDvmPb+O488UlGuR1WbwMXFsO/cyqMrnfvRAChZKJAYeeglWTjUO1b9UghKKgepAQM5tsvBJca6A==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + } + }, + "debug": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", + "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } } }, "@babel/highlight": { @@ -900,7 +1029,7 @@ "resolved": "https://registry.npmjs.org/@phc/format/-/format-0.5.0.tgz", "integrity": "sha512-JWtZ5P1bfXU0bAtTzCpOLYHDXuxSVdtL/oqz4+xa97h8w9E5IlVN333wugXVFv8vZ1hbXObKQf1ptXmFFcMByg==", "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "^5.1.2" } }, "@types/node": { @@ -1267,12 +1396,13 @@ }, "argon2": { "version": "github:rihardsgravis/node-argon2#ae1a860bd4cf4f54643f209fdd7fcc20d97c543b", + "from": "github:rihardsgravis/node-argon2#prebuild-release", "requires": { - "@phc/format": "0.5.0", - "any-promise": "1.3.0", - "bindings": "1.3.0", - "nan": "2.11.1", - "prebuild-install": "5.2.0" + "@phc/format": "^0.5.0", + "any-promise": "^1.3.0", + "bindings": "^1.3.0", + "nan": "^2.10.0", + "prebuild-install": "^5.0.0" } }, "argparse": { @@ -1385,7 +1515,7 @@ }, "util": { "version": "0.10.3", - "resolved": "http://registry.npmjs.org/util/-/util-0.10.3.tgz", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", "dev": true, "requires": { @@ -1497,7 +1627,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -1664,7 +1794,7 @@ }, "bl": { "version": "1.2.2", - "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "requires": { "readable-stream": "2.3.6", @@ -1826,7 +1956,7 @@ }, "browserify-aes": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, "requires": { @@ -1917,7 +2047,7 @@ }, "buffer": { "version": "4.9.1", - "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "dev": true, "requires": { @@ -2011,7 +2141,7 @@ }, "camelcase-keys": { "version": "2.1.0", - "resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { @@ -2040,7 +2170,7 @@ }, "load-json-file": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { @@ -2059,7 +2189,7 @@ }, "meow": { "version": "3.7.0", - "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { @@ -2118,7 +2248,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -2154,7 +2284,7 @@ }, "load-json-file": { "version": "2.0.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, "requires": { @@ -2758,7 +2888,7 @@ "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", "dev": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "~5.1.1" } }, "cookie": { @@ -2979,7 +3109,7 @@ }, "regjsgen": { "version": "0.2.0", - "resolved": "http://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", "dev": true }, @@ -3327,7 +3457,7 @@ "dependencies": { "domelementtype": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", "dev": true } @@ -4008,9 +4138,10 @@ }, "entangled-node": { "version": "github:rihardsgravis/entangled-node#5ec2b0b97fcf8faa70f3730be7fa632b91daa71a", + "from": "github:rihardsgravis/entangled-node#v0.1.3", "requires": { - "nan": "2.11.1", - "prebuild-install": "5.2.2" + "nan": "^2.11.1", + "prebuild-install": "^5.2.2" }, "dependencies": { "expand-template": { @@ -4023,22 +4154,22 @@ "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.2.2.tgz", "integrity": "sha512-4e8VJnP3zJdZv/uP0eNWmr2r9urp4NECw7Mt1OSAi3rcLrbBRxGiAkfUFtre2MhQ5wfREAjRV+K1gubvs/GPsA==", "requires": { - "detect-libc": "1.0.3", - "expand-template": "2.0.3", + "detect-libc": "^1.0.3", + "expand-template": "^2.0.3", "github-from-package": "0.0.0", - "minimist": "1.2.0", - "mkdirp": "0.5.1", - "napi-build-utils": "1.0.1", - "node-abi": "2.4.5", - "noop-logger": "0.1.1", - "npmlog": "4.1.2", - "os-homedir": "1.0.2", - "pump": "2.0.1", - "rc": "1.2.8", - "simple-get": "2.8.1", - "tar-fs": "1.16.3", - "tunnel-agent": "0.6.0", - "which-pm-runs": "1.0.0" + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "napi-build-utils": "^1.0.1", + "node-abi": "^2.2.0", + "noop-logger": "^0.1.1", + "npmlog": "^4.0.1", + "os-homedir": "^1.0.1", + "pump": "^2.0.1", + "rc": "^1.2.7", + "simple-get": "^2.7.0", + "tar-fs": "^1.13.0", + "tunnel-agent": "^0.6.0", + "which-pm-runs": "^1.0.0" } } } @@ -4176,7 +4307,7 @@ }, "events": { "version": "1.1.1", - "resolved": "http://registry.npmjs.org/events/-/events-1.1.1.tgz", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", "dev": true }, @@ -4489,7 +4620,7 @@ }, "fast-deep-equal": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", "dev": true }, @@ -4801,7 +4932,8 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -4825,13 +4957,15 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "optional": true, "requires": { "balanced-match": "1.0.0", "concat-map": "0.0.1" @@ -4848,19 +4982,22 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -4991,7 +5128,8 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -5005,6 +5143,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, + "optional": true, "requires": { "number-is-nan": "1.0.1" } @@ -5021,6 +5160,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, + "optional": true, "requires": { "brace-expansion": "1.1.11" } @@ -5029,13 +5169,15 @@ "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz", "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", "dev": true, + "optional": true, "requires": { "safe-buffer": "5.1.1", "yallist": "3.0.2" @@ -5056,6 +5198,7 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -5144,7 +5287,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -5158,6 +5302,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, + "optional": true, "requires": { "wrappy": "1.0.2" } @@ -5253,7 +5398,8 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -5295,6 +5441,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, + "optional": true, "requires": { "code-point-at": "1.1.0", "is-fullwidth-code-point": "1.0.0", @@ -5316,6 +5463,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, + "optional": true, "requires": { "ansi-regex": "2.1.1" } @@ -5364,13 +5512,15 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=", - "dev": true + "dev": true, + "optional": true } } }, @@ -5781,7 +5931,7 @@ }, "htmlparser2": { "version": "3.3.0", - "resolved": "http://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", "dev": true, "requires": { @@ -5808,7 +5958,7 @@ }, "readable-stream": { "version": "1.0.34", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "dev": true, "requires": { @@ -6608,7 +6758,7 @@ }, "json5": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", "dev": true }, @@ -7377,7 +7527,8 @@ "ansi-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", - "integrity": "sha1-xQYbbg74qBd15Q9dZhUb9r83EQc=" + "integrity": "sha1-xQYbbg74qBd15Q9dZhUb9r83EQc=", + "optional": true }, "ansi-styles": { "version": "2.2.1", @@ -7449,6 +7600,7 @@ "version": "0.0.9", "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "optional": true, "requires": { "inherits": "2.0.3" } @@ -7457,6 +7609,7 @@ "version": "2.10.1", "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", + "optional": true, "requires": { "hoek": "2.16.3" } @@ -7473,7 +7626,8 @@ "buffer-shims": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=" + "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=", + "optional": true }, "caseless": { "version": "0.11.0", @@ -7505,12 +7659,14 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "optional": true }, "combined-stream": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", + "optional": true, "requires": { "delayed-stream": "1.0.0" } @@ -7532,12 +7688,14 @@ "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "optional": true }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "optional": true }, "cryptiles": { "version": "2.0.5", @@ -7583,7 +7741,8 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "optional": true }, "delegates": { "version": "1.0.0", @@ -7615,7 +7774,8 @@ "extsprintf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz", - "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=" + "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=", + "optional": true }, "forever-agent": { "version": "0.6.1", @@ -7643,6 +7803,7 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.10.tgz", "integrity": "sha1-YE6Kkv4m/9n2+uMDmdSYThqyKCI=", + "optional": true, "requires": { "graceful-fs": "4.1.11", "inherits": "2.0.3", @@ -7726,7 +7887,8 @@ "graceful-fs": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "optional": true }, "graceful-readlink": { "version": "1.0.1", @@ -7776,7 +7938,8 @@ "hoek": { "version": "2.16.3", "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" + "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", + "optional": true }, "http-signature": { "version": "1.1.1", @@ -7813,6 +7976,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "optional": true, "requires": { "number-is-nan": "1.0.1" } @@ -7844,7 +8008,8 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "optional": true }, "isstream": { "version": "0.1.2", @@ -7899,12 +8064,14 @@ "mime-db": { "version": "1.25.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.25.0.tgz", - "integrity": "sha1-wY29fHOl2/b0SgJNwNFloeexw5I=" + "integrity": "sha1-wY29fHOl2/b0SgJNwNFloeexw5I=", + "optional": true }, "mime-types": { "version": "2.1.13", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.13.tgz", "integrity": "sha1-4HqqnGxrmnyjASxpADrSWjnpKog=", + "optional": true, "requires": { "mime-db": "1.25.0" } @@ -7920,12 +8087,14 @@ "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "optional": true }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "optional": true, "requires": { "minimist": "0.0.8" } @@ -7977,7 +8146,8 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "optional": true }, "oauth-sign": { "version": "0.8.2", @@ -8022,7 +8192,8 @@ "process-nextick-args": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "optional": true }, "punycode": { "version": "1.4.1", @@ -8163,6 +8334,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "optional": true, "requires": { "code-point-at": "1.1.0", "is-fullwidth-code-point": "1.0.0", @@ -8172,7 +8344,8 @@ "string_decoder": { "version": "0.10.31", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "optional": true }, "stringstream": { "version": "0.0.5", @@ -8184,6 +8357,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "optional": true, "requires": { "ansi-regex": "2.0.0" } @@ -8204,6 +8378,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", + "optional": true, "requires": { "block-stream": "0.0.9", "fstream": "1.0.10", @@ -8282,7 +8457,8 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "optional": true }, "uuid": { "version": "3.0.1", @@ -9127,7 +9303,8 @@ "integrity": "sha1-Y/xMzuXS13Y9Jrv4YBB45sLgBE8=" }, "pako": { - "version": "github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc" + "version": "github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc", + "from": "pako@github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc" }, "parse-glob": { "version": "3.0.4", @@ -9503,7 +9680,8 @@ "integrity": "sha1-KcNXB8K3DlDQdIK10gLo7URtr9Q=" }, "text-encoding": { - "version": "github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb" + "version": "github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb", + "from": "text-encoding@github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb" }, "timers-browserify": { "version": "2.0.2", @@ -9744,7 +9922,8 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "xmldom": { - "version": "github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6" + "version": "github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6", + "from": "xmldom@github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6" }, "xtend": { "version": "4.0.1", @@ -9841,7 +10020,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -9899,7 +10078,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -9938,7 +10117,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -10049,7 +10228,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -10125,8 +10304,9 @@ }, "machine-uuid-sync": { "version": "git+https://github.com/rajivshah3/machine-uuid-sync.git#a5ffa8eab86764db0c69aadbeef9a14b2ae9ae5c", + "from": "git+https://github.com/rajivshah3/machine-uuid-sync.git", "requires": { - "uuid": "3.3.2" + "uuid": "^3.1.0" } }, "make-dir": { @@ -10316,14 +10496,14 @@ "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" }, "mini-css-extract-plugin": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.4.tgz", - "integrity": "sha512-o+Jm+ocb0asEngdM6FsZWtZsRzA8koFUudIDwYUfl94M3PejPHG7Vopw5hN9V8WsMkSFpm3tZP3Fesz89EyrfQ==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.5.0.tgz", + "integrity": "sha512-IuaLjruM0vMKhUUT51fQdQzBYTX49dLj8w68ALEAe2A4iYNpIC4eMac67mt3NzycvjOlf07/kYxJDc0RTl1Wqw==", "dev": true, "requires": { - "loader-utils": "1.1.0", - "schema-utils": "1.0.0", - "webpack-sources": "1.3.0" + "loader-utils": "^1.1.0", + "schema-utils": "^1.0.0", + "webpack-sources": "^1.1.0" } }, "minimalistic-assert": { @@ -10348,7 +10528,7 @@ }, "minimist": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" }, "minimist-options": { @@ -10456,7 +10636,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "requires": { "minimist": "0.0.8" @@ -10464,7 +10644,7 @@ "dependencies": { "minimist": { "version": "0.0.8", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" } } @@ -10903,7 +11083,7 @@ }, "onetime": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", "dev": true }, @@ -10936,7 +11116,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -11177,7 +11357,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -11522,7 +11702,7 @@ }, "camelcase-keys": { "version": "2.1.0", - "resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { @@ -11551,7 +11731,7 @@ }, "load-json-file": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { @@ -11570,7 +11750,7 @@ }, "meow": { "version": "3.7.0", - "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { @@ -11617,7 +11797,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -11735,7 +11915,7 @@ }, "readable-stream": { "version": "1.1.14", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "dev": true, "requires": { @@ -12293,7 +12473,7 @@ }, "readable-stream": { "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "requires": { "core-util-is": "1.0.2", @@ -12633,7 +12813,7 @@ "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", "dev": true, "requires": { - "path-parse": "1.0.6" + "path-parse": "^1.0.5" } }, "resolve-cwd": { @@ -12978,7 +13158,7 @@ }, "sha.js": { "version": "2.4.11", - "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, "requires": { @@ -13492,7 +13672,7 @@ }, "strip-ansi": { "version": "3.0.1", - "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { "ansi-regex": "2.1.1" @@ -13715,7 +13895,7 @@ }, "readable-stream": { "version": "1.0.34", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "requires": { "core-util-is": "1.0.2", diff --git a/src/desktop/package.json b/src/desktop/package.json index 9f87e494f9..11be294b25 100644 --- a/src/desktop/package.json +++ b/src/desktop/package.json @@ -35,7 +35,7 @@ "release": "./node_modules/.bin/cross-env CSC_IDENTITY_AUTO_DISCOVERY=false build -mwl" }, "devDependencies": { - "@babel/core": "^7.1.2", + "@babel/core": "^7.2.0", "@babel/plugin-proposal-class-properties": "^7.1.0", "@babel/plugin-proposal-object-rest-spread": "^7.0.0", "@babel/preset-env": "^7.1.0", From 52c6294848756049cc6cf239661d7ef3e712a6f9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 10 Dec 2018 03:59:56 +0000 Subject: [PATCH 115/141] Bump recharts from 1.3.4 to 1.4.1 in /src/desktop Bumps [recharts](https://github.com/recharts/recharts) from 1.3.4 to 1.4.1. - [Release notes](https://github.com/recharts/recharts/releases) - [Changelog](https://github.com/recharts/recharts/blob/master/CHANGELOG.md) - [Commits](https://github.com/recharts/recharts/compare/v1.3.4...v1.4.1) Signed-off-by: dependabot[bot] --- src/desktop/npm-shrinkwrap.json | 331 ++++++++++++++++++-------------- src/desktop/package.json | 2 +- 2 files changed, 192 insertions(+), 141 deletions(-) diff --git a/src/desktop/npm-shrinkwrap.json b/src/desktop/npm-shrinkwrap.json index fd24346214..e658242017 100644 --- a/src/desktop/npm-shrinkwrap.json +++ b/src/desktop/npm-shrinkwrap.json @@ -900,7 +900,7 @@ "resolved": "https://registry.npmjs.org/@phc/format/-/format-0.5.0.tgz", "integrity": "sha512-JWtZ5P1bfXU0bAtTzCpOLYHDXuxSVdtL/oqz4+xa97h8w9E5IlVN333wugXVFv8vZ1hbXObKQf1ptXmFFcMByg==", "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "^5.1.2" } }, "@types/node": { @@ -1267,12 +1267,13 @@ }, "argon2": { "version": "github:rihardsgravis/node-argon2#ae1a860bd4cf4f54643f209fdd7fcc20d97c543b", + "from": "github:rihardsgravis/node-argon2#prebuild-release", "requires": { - "@phc/format": "0.5.0", - "any-promise": "1.3.0", - "bindings": "1.3.0", - "nan": "2.11.1", - "prebuild-install": "5.2.0" + "@phc/format": "^0.5.0", + "any-promise": "^1.3.0", + "bindings": "^1.3.0", + "nan": "^2.10.0", + "prebuild-install": "^5.0.0" } }, "argparse": { @@ -1385,7 +1386,7 @@ }, "util": { "version": "0.10.3", - "resolved": "http://registry.npmjs.org/util/-/util-0.10.3.tgz", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", "dev": true, "requires": { @@ -1497,7 +1498,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -1664,7 +1665,7 @@ }, "bl": { "version": "1.2.2", - "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "requires": { "readable-stream": "2.3.6", @@ -1826,7 +1827,7 @@ }, "browserify-aes": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, "requires": { @@ -1917,7 +1918,7 @@ }, "buffer": { "version": "4.9.1", - "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "dev": true, "requires": { @@ -2011,7 +2012,7 @@ }, "camelcase-keys": { "version": "2.1.0", - "resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { @@ -2040,7 +2041,7 @@ }, "load-json-file": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { @@ -2059,7 +2060,7 @@ }, "meow": { "version": "3.7.0", - "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { @@ -2118,7 +2119,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -2154,7 +2155,7 @@ }, "load-json-file": { "version": "2.0.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, "requires": { @@ -2979,7 +2980,7 @@ }, "regjsgen": { "version": "0.2.0", - "resolved": "http://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", "dev": true }, @@ -3046,7 +3047,7 @@ "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.3.2.tgz", "integrity": "sha512-NlNKGopqaz9qM1PXh9gBF1KSCVh+jSFErrSlD/4hybwoNX/gt1d8CDbDW+3i+5UOHhjC6s6nMvRxcuoMVNgL2w==", "requires": { - "d3-color": "1.2.3" + "d3-color": "1" } }, "d3-path": { @@ -3059,12 +3060,12 @@ "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-2.1.2.tgz", "integrity": "sha512-bESpd64ylaKzCDzvULcmHKZTlzA/6DGSVwx7QSDj/EnX9cpSevsdiwdHFYI9ouo9tNBbV3v5xztHS2uFeOzh8Q==", "requires": { - "d3-array": "1.2.4", - "d3-collection": "1.0.7", - "d3-format": "1.3.2", - "d3-interpolate": "1.3.2", - "d3-time": "1.0.10", - "d3-time-format": "2.1.3" + "d3-array": "^1.2.0", + "d3-collection": "1", + "d3-format": "1", + "d3-interpolate": "1", + "d3-time": "1", + "d3-time-format": "2" } }, "d3-shape": { @@ -3072,7 +3073,7 @@ "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.2.2.tgz", "integrity": "sha512-hUGEozlKecFZ2bOSNt7ENex+4Tk9uc/m0TtTEHBvitCBxUNjhzm5hS2GrrVRD/ae4IylSmxGeqX5tWC2rASMlQ==", "requires": { - "d3-path": "1.0.7" + "d3-path": "1" } }, "d3-time": { @@ -3085,7 +3086,7 @@ "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.1.3.tgz", "integrity": "sha512-6k0a2rZryzGm5Ihx+aFMuO1GgelgIz+7HhB4PH4OEndD5q2zGn1mDfRdNrulspOfR6JXkb2sThhDK41CSK85QA==", "requires": { - "d3-time": "1.0.10" + "d3-time": "1" } }, "dart-sass": { @@ -3327,7 +3328,7 @@ "dependencies": { "domelementtype": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", "dev": true } @@ -4008,9 +4009,10 @@ }, "entangled-node": { "version": "github:rihardsgravis/entangled-node#5ec2b0b97fcf8faa70f3730be7fa632b91daa71a", + "from": "github:rihardsgravis/entangled-node#v0.1.3", "requires": { - "nan": "2.11.1", - "prebuild-install": "5.2.2" + "nan": "^2.11.1", + "prebuild-install": "^5.2.2" }, "dependencies": { "expand-template": { @@ -4023,22 +4025,22 @@ "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.2.2.tgz", "integrity": "sha512-4e8VJnP3zJdZv/uP0eNWmr2r9urp4NECw7Mt1OSAi3rcLrbBRxGiAkfUFtre2MhQ5wfREAjRV+K1gubvs/GPsA==", "requires": { - "detect-libc": "1.0.3", - "expand-template": "2.0.3", + "detect-libc": "^1.0.3", + "expand-template": "^2.0.3", "github-from-package": "0.0.0", - "minimist": "1.2.0", - "mkdirp": "0.5.1", - "napi-build-utils": "1.0.1", - "node-abi": "2.4.5", - "noop-logger": "0.1.1", - "npmlog": "4.1.2", - "os-homedir": "1.0.2", - "pump": "2.0.1", - "rc": "1.2.8", - "simple-get": "2.8.1", - "tar-fs": "1.16.3", - "tunnel-agent": "0.6.0", - "which-pm-runs": "1.0.0" + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "napi-build-utils": "^1.0.1", + "node-abi": "^2.2.0", + "noop-logger": "^0.1.1", + "npmlog": "^4.0.1", + "os-homedir": "^1.0.1", + "pump": "^2.0.1", + "rc": "^1.2.7", + "simple-get": "^2.7.0", + "tar-fs": "^1.13.0", + "tunnel-agent": "^0.6.0", + "which-pm-runs": "^1.0.0" } } } @@ -4176,7 +4178,7 @@ }, "events": { "version": "1.1.1", - "resolved": "http://registry.npmjs.org/events/-/events-1.1.1.tgz", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", "dev": true }, @@ -4489,7 +4491,7 @@ }, "fast-deep-equal": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", "dev": true }, @@ -4801,7 +4803,8 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -4825,13 +4828,15 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "optional": true, "requires": { "balanced-match": "1.0.0", "concat-map": "0.0.1" @@ -4848,19 +4853,22 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -4991,7 +4999,8 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -5005,6 +5014,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, + "optional": true, "requires": { "number-is-nan": "1.0.1" } @@ -5021,6 +5031,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, + "optional": true, "requires": { "brace-expansion": "1.1.11" } @@ -5029,13 +5040,15 @@ "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz", "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", "dev": true, + "optional": true, "requires": { "safe-buffer": "5.1.1", "yallist": "3.0.2" @@ -5056,6 +5069,7 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -5144,7 +5158,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -5158,6 +5173,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, + "optional": true, "requires": { "wrappy": "1.0.2" } @@ -5253,7 +5269,8 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -5295,6 +5312,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, + "optional": true, "requires": { "code-point-at": "1.1.0", "is-fullwidth-code-point": "1.0.0", @@ -5316,6 +5334,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, + "optional": true, "requires": { "ansi-regex": "2.1.1" } @@ -5364,13 +5383,15 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=", - "dev": true + "dev": true, + "optional": true } } }, @@ -5781,7 +5802,7 @@ }, "htmlparser2": { "version": "3.3.0", - "resolved": "http://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", "dev": true, "requires": { @@ -5808,7 +5829,7 @@ }, "readable-stream": { "version": "1.0.34", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "dev": true, "requires": { @@ -6608,7 +6629,7 @@ }, "json5": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", "dev": true }, @@ -7377,7 +7398,8 @@ "ansi-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", - "integrity": "sha1-xQYbbg74qBd15Q9dZhUb9r83EQc=" + "integrity": "sha1-xQYbbg74qBd15Q9dZhUb9r83EQc=", + "optional": true }, "ansi-styles": { "version": "2.2.1", @@ -7449,6 +7471,7 @@ "version": "0.0.9", "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "optional": true, "requires": { "inherits": "2.0.3" } @@ -7457,6 +7480,7 @@ "version": "2.10.1", "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", + "optional": true, "requires": { "hoek": "2.16.3" } @@ -7473,7 +7497,8 @@ "buffer-shims": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=" + "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=", + "optional": true }, "caseless": { "version": "0.11.0", @@ -7505,12 +7530,14 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "optional": true }, "combined-stream": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", + "optional": true, "requires": { "delayed-stream": "1.0.0" } @@ -7532,12 +7559,14 @@ "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "optional": true }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "optional": true }, "cryptiles": { "version": "2.0.5", @@ -7583,7 +7612,8 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "optional": true }, "delegates": { "version": "1.0.0", @@ -7615,7 +7645,8 @@ "extsprintf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz", - "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=" + "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=", + "optional": true }, "forever-agent": { "version": "0.6.1", @@ -7643,6 +7674,7 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.10.tgz", "integrity": "sha1-YE6Kkv4m/9n2+uMDmdSYThqyKCI=", + "optional": true, "requires": { "graceful-fs": "4.1.11", "inherits": "2.0.3", @@ -7726,7 +7758,8 @@ "graceful-fs": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "optional": true }, "graceful-readlink": { "version": "1.0.1", @@ -7776,7 +7809,8 @@ "hoek": { "version": "2.16.3", "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" + "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", + "optional": true }, "http-signature": { "version": "1.1.1", @@ -7813,6 +7847,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "optional": true, "requires": { "number-is-nan": "1.0.1" } @@ -7844,7 +7879,8 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "optional": true }, "isstream": { "version": "0.1.2", @@ -7899,12 +7935,14 @@ "mime-db": { "version": "1.25.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.25.0.tgz", - "integrity": "sha1-wY29fHOl2/b0SgJNwNFloeexw5I=" + "integrity": "sha1-wY29fHOl2/b0SgJNwNFloeexw5I=", + "optional": true }, "mime-types": { "version": "2.1.13", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.13.tgz", "integrity": "sha1-4HqqnGxrmnyjASxpADrSWjnpKog=", + "optional": true, "requires": { "mime-db": "1.25.0" } @@ -7920,12 +7958,14 @@ "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "optional": true }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "optional": true, "requires": { "minimist": "0.0.8" } @@ -7977,7 +8017,8 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "optional": true }, "oauth-sign": { "version": "0.8.2", @@ -8022,7 +8063,8 @@ "process-nextick-args": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "optional": true }, "punycode": { "version": "1.4.1", @@ -8163,6 +8205,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "optional": true, "requires": { "code-point-at": "1.1.0", "is-fullwidth-code-point": "1.0.0", @@ -8172,7 +8215,8 @@ "string_decoder": { "version": "0.10.31", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "optional": true }, "stringstream": { "version": "0.0.5", @@ -8184,6 +8228,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "optional": true, "requires": { "ansi-regex": "2.0.0" } @@ -8204,6 +8249,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", + "optional": true, "requires": { "block-stream": "0.0.9", "fstream": "1.0.10", @@ -8282,7 +8328,8 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "optional": true }, "uuid": { "version": "3.0.1", @@ -9127,7 +9174,8 @@ "integrity": "sha1-Y/xMzuXS13Y9Jrv4YBB45sLgBE8=" }, "pako": { - "version": "github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc" + "version": "github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc", + "from": "pako@github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc" }, "parse-glob": { "version": "3.0.4", @@ -9503,7 +9551,8 @@ "integrity": "sha1-KcNXB8K3DlDQdIK10gLo7URtr9Q=" }, "text-encoding": { - "version": "github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb" + "version": "github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb", + "from": "text-encoding@github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb" }, "timers-browserify": { "version": "2.0.2", @@ -9744,7 +9793,8 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "xmldom": { - "version": "github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6" + "version": "github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6", + "from": "xmldom@github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6" }, "xtend": { "version": "4.0.1", @@ -9841,7 +9891,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -9899,7 +9949,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -9938,7 +9988,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -10049,7 +10099,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -10125,8 +10175,9 @@ }, "machine-uuid-sync": { "version": "git+https://github.com/rajivshah3/machine-uuid-sync.git#a5ffa8eab86764db0c69aadbeef9a14b2ae9ae5c", + "from": "git+https://github.com/rajivshah3/machine-uuid-sync.git", "requires": { - "uuid": "3.3.2" + "uuid": "^3.1.0" } }, "make-dir": { @@ -10316,14 +10367,14 @@ "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" }, "mini-css-extract-plugin": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.4.tgz", - "integrity": "sha512-o+Jm+ocb0asEngdM6FsZWtZsRzA8koFUudIDwYUfl94M3PejPHG7Vopw5hN9V8WsMkSFpm3tZP3Fesz89EyrfQ==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.5.0.tgz", + "integrity": "sha512-IuaLjruM0vMKhUUT51fQdQzBYTX49dLj8w68ALEAe2A4iYNpIC4eMac67mt3NzycvjOlf07/kYxJDc0RTl1Wqw==", "dev": true, "requires": { - "loader-utils": "1.1.0", - "schema-utils": "1.0.0", - "webpack-sources": "1.3.0" + "loader-utils": "^1.1.0", + "schema-utils": "^1.0.0", + "webpack-sources": "^1.1.0" } }, "minimalistic-assert": { @@ -10348,7 +10399,7 @@ }, "minimist": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" }, "minimist-options": { @@ -10456,7 +10507,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "requires": { "minimist": "0.0.8" @@ -10464,7 +10515,7 @@ "dependencies": { "minimist": { "version": "0.0.8", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" } } @@ -10903,7 +10954,7 @@ }, "onetime": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", "dev": true }, @@ -10936,7 +10987,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -11177,7 +11228,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -11522,7 +11573,7 @@ }, "camelcase-keys": { "version": "2.1.0", - "resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { @@ -11551,7 +11602,7 @@ }, "load-json-file": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { @@ -11570,7 +11621,7 @@ }, "meow": { "version": "3.7.0", - "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { @@ -11617,7 +11668,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -11735,7 +11786,7 @@ }, "readable-stream": { "version": "1.1.14", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "dev": true, "requires": { @@ -11935,11 +11986,11 @@ "dev": true }, "raf": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.0.tgz", - "integrity": "sha512-pDP/NMRAXoTfrhCfyfSEwJAKLaxBU9eApMeBPB1TkDouZmvPerIClV8lTAd+uF8ZiTaVl69e1FCxQrAd/VTjGw==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", "requires": { - "performance-now": "2.1.0" + "performance-now": "^2.1.0" } }, "randombytes": { @@ -12208,10 +12259,10 @@ "resolved": "http://registry.npmjs.org/react-resize-detector/-/react-resize-detector-2.3.0.tgz", "integrity": "sha512-oCAddEWWeFWYH5FAcHdBYcZjAw9fMzRUK9sWSx6WvSSOPVRxcHd5zTIGy/mOus+AhN/u6T4TMiWxvq79PywnJQ==", "requires": { - "lodash.debounce": "4.0.8", - "lodash.throttle": "4.1.1", - "prop-types": "15.6.2", - "resize-observer-polyfill": "1.5.0" + "lodash.debounce": "^4.0.8", + "lodash.throttle": "^4.1.1", + "prop-types": "^15.6.0", + "resize-observer-polyfill": "^1.5.0" } }, "react-router": { @@ -12253,10 +12304,10 @@ "resolved": "https://registry.npmjs.org/react-smooth/-/react-smooth-1.0.2.tgz", "integrity": "sha512-pIGzL1g9VGAsRsdZQokIK0vrCkcdKtnOnS1gyB2rrowdLy69lNSWoIjCTWAfgbiYvria8tm5hEZqj+jwXMkV4A==", "requires": { - "lodash": "4.17.11", - "prop-types": "15.6.2", - "raf": "3.4.0", - "react-transition-group": "2.5.0" + "lodash": "~4.17.4", + "prop-types": "^15.6.0", + "raf": "^3.4.0", + "react-transition-group": "^2.5.0" } }, "react-transition-group": { @@ -12293,7 +12344,7 @@ }, "readable-stream": { "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "requires": { "core-util-is": "1.0.2", @@ -12317,21 +12368,21 @@ } }, "recharts": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/recharts/-/recharts-1.3.4.tgz", - "integrity": "sha512-jOImzEnTsHjEDxLnfbuTpxZHz1XV3vPWFyujrbFzrkSWBwoR0He9HbkSui8x/LpoDzwgeO25J0t6z+edFuwgWw==", - "requires": { - "classnames": "2.2.6", - "core-js": "2.5.7", - "d3-interpolate": "1.3.2", - "d3-scale": "2.1.2", - "d3-shape": "1.2.2", - "lodash": "4.17.11", - "prop-types": "15.6.2", - "react-resize-detector": "2.3.0", - "react-smooth": "1.0.2", - "recharts-scale": "0.4.2", - "reduce-css-calc": "1.3.0" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/recharts/-/recharts-1.4.1.tgz", + "integrity": "sha512-HtI3B4xGPn591kNDU5MaCcJeUtlSqOH3cOBtHuhXGxDU2MDkS6abaQtgZD1J4mQiUCUZT3LCziTz5+wD7k+pvw==", + "requires": { + "classnames": "~2.2.5", + "core-js": "~2.5.1", + "d3-interpolate": "~1.3.0", + "d3-scale": "~2.1.0", + "d3-shape": "~1.2.0", + "lodash": "~4.17.4", + "prop-types": "~15.6.0", + "react-resize-detector": "~2.3.0", + "react-smooth": "~1.0.0", + "recharts-scale": "^0.4.2", + "reduce-css-calc": "~1.3.0" }, "dependencies": { "core-js": { @@ -12346,7 +12397,7 @@ "resolved": "https://registry.npmjs.org/recharts-scale/-/recharts-scale-0.4.2.tgz", "integrity": "sha512-p/cKt7j17D1CImLgX2f5+6IXLbRHGUQkogIp06VUoci/XkhOQiGSzUrsD1uRmiI7jha4u8XNFOjkHkzzBPivMg==", "requires": { - "decimal.js-light": "2.5.0" + "decimal.js-light": "^2.4.1" } }, "recursive-readdir": { @@ -12373,9 +12424,9 @@ "resolved": "http://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz", "integrity": "sha1-dHyRTgSWFKTJz7umKYca0dKSdxY=", "requires": { - "balanced-match": "0.4.2", - "math-expression-evaluator": "1.2.17", - "reduce-function-call": "1.0.2" + "balanced-match": "^0.4.2", + "math-expression-evaluator": "^1.2.14", + "reduce-function-call": "^1.0.1" }, "dependencies": { "balanced-match": { @@ -12390,7 +12441,7 @@ "resolved": "https://registry.npmjs.org/reduce-function-call/-/reduce-function-call-1.0.2.tgz", "integrity": "sha1-WiAL+S4ON3UXUv5FsKszD9S2vpk=", "requires": { - "balanced-match": "0.4.2" + "balanced-match": "^0.4.2" }, "dependencies": { "balanced-match": { @@ -12623,9 +12674,9 @@ "dev": true }, "resize-observer-polyfill": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.0.tgz", - "integrity": "sha512-M2AelyJDVR/oLnToJLtuDJRBBWUGUvvGigj1411hXhAdyFWqMaqHp7TixW3FpiLuVaikIcR1QL+zqoJoZlOgpg==" + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" }, "resolve": { "version": "1.8.1", @@ -12978,7 +13029,7 @@ }, "sha.js": { "version": "2.4.11", - "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, "requires": { @@ -13492,7 +13543,7 @@ }, "strip-ansi": { "version": "3.0.1", - "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { "ansi-regex": "2.1.1" @@ -13715,7 +13766,7 @@ }, "readable-stream": { "version": "1.0.34", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "requires": { "core-util-is": "1.0.2", diff --git a/src/desktop/package.json b/src/desktop/package.json index 9f87e494f9..852864bd01 100644 --- a/src/desktop/package.json +++ b/src/desktop/package.json @@ -163,7 +163,7 @@ "react-redux": "^5.0.7", "react-router-dom": "^4.3.1", "react-transition-group": "^2.5.0", - "recharts": "^1.3.2", + "recharts": "^1.4.1", "redux": "^4.0.0" } } From b5d8953a6dcd4dd067da95d2949403e01cca13cf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 10 Dec 2018 04:02:48 +0000 Subject: [PATCH 116/141] Bump puppeteer from 1.9.0 to 1.11.0 in /src/desktop Bumps [puppeteer](https://github.com/GoogleChrome/puppeteer) from 1.9.0 to 1.11.0. - [Release notes](https://github.com/GoogleChrome/puppeteer/releases) - [Commits](https://github.com/GoogleChrome/puppeteer/compare/v1.9.0...v1.11.0) Signed-off-by: dependabot[bot] --- src/desktop/npm-shrinkwrap.json | 302 +++++++++++++++++++------------- src/desktop/package.json | 2 +- 2 files changed, 183 insertions(+), 121 deletions(-) diff --git a/src/desktop/npm-shrinkwrap.json b/src/desktop/npm-shrinkwrap.json index fd24346214..baa5da303d 100644 --- a/src/desktop/npm-shrinkwrap.json +++ b/src/desktop/npm-shrinkwrap.json @@ -900,7 +900,7 @@ "resolved": "https://registry.npmjs.org/@phc/format/-/format-0.5.0.tgz", "integrity": "sha512-JWtZ5P1bfXU0bAtTzCpOLYHDXuxSVdtL/oqz4+xa97h8w9E5IlVN333wugXVFv8vZ1hbXObKQf1ptXmFFcMByg==", "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "^5.1.2" } }, "@types/node": { @@ -1135,7 +1135,7 @@ "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", "dev": true, "requires": { - "es6-promisify": "5.0.0" + "es6-promisify": "^5.0.0" } }, "ajv": { @@ -1267,12 +1267,13 @@ }, "argon2": { "version": "github:rihardsgravis/node-argon2#ae1a860bd4cf4f54643f209fdd7fcc20d97c543b", + "from": "github:rihardsgravis/node-argon2#prebuild-release", "requires": { - "@phc/format": "0.5.0", - "any-promise": "1.3.0", - "bindings": "1.3.0", - "nan": "2.11.1", - "prebuild-install": "5.2.0" + "@phc/format": "^0.5.0", + "any-promise": "^1.3.0", + "bindings": "^1.3.0", + "nan": "^2.10.0", + "prebuild-install": "^5.0.0" } }, "argparse": { @@ -1385,7 +1386,7 @@ }, "util": { "version": "0.10.3", - "resolved": "http://registry.npmjs.org/util/-/util-0.10.3.tgz", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", "dev": true, "requires": { @@ -1497,7 +1498,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -1664,7 +1665,7 @@ }, "bl": { "version": "1.2.2", - "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "requires": { "readable-stream": "2.3.6", @@ -1826,7 +1827,7 @@ }, "browserify-aes": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, "requires": { @@ -1917,7 +1918,7 @@ }, "buffer": { "version": "4.9.1", - "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "dev": true, "requires": { @@ -2011,7 +2012,7 @@ }, "camelcase-keys": { "version": "2.1.0", - "resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { @@ -2040,7 +2041,7 @@ }, "load-json-file": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { @@ -2059,7 +2060,7 @@ }, "meow": { "version": "3.7.0", - "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { @@ -2118,7 +2119,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -2154,7 +2155,7 @@ }, "load-json-file": { "version": "2.0.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, "requires": { @@ -2979,7 +2980,7 @@ }, "regjsgen": { "version": "0.2.0", - "resolved": "http://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", "dev": true }, @@ -3327,7 +3328,7 @@ "dependencies": { "domelementtype": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", "dev": true } @@ -4008,9 +4009,10 @@ }, "entangled-node": { "version": "github:rihardsgravis/entangled-node#5ec2b0b97fcf8faa70f3730be7fa632b91daa71a", + "from": "github:rihardsgravis/entangled-node#v0.1.3", "requires": { - "nan": "2.11.1", - "prebuild-install": "5.2.2" + "nan": "^2.11.1", + "prebuild-install": "^5.2.2" }, "dependencies": { "expand-template": { @@ -4023,22 +4025,22 @@ "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.2.2.tgz", "integrity": "sha512-4e8VJnP3zJdZv/uP0eNWmr2r9urp4NECw7Mt1OSAi3rcLrbBRxGiAkfUFtre2MhQ5wfREAjRV+K1gubvs/GPsA==", "requires": { - "detect-libc": "1.0.3", - "expand-template": "2.0.3", + "detect-libc": "^1.0.3", + "expand-template": "^2.0.3", "github-from-package": "0.0.0", - "minimist": "1.2.0", - "mkdirp": "0.5.1", - "napi-build-utils": "1.0.1", - "node-abi": "2.4.5", - "noop-logger": "0.1.1", - "npmlog": "4.1.2", - "os-homedir": "1.0.2", - "pump": "2.0.1", - "rc": "1.2.8", - "simple-get": "2.8.1", - "tar-fs": "1.16.3", - "tunnel-agent": "0.6.0", - "which-pm-runs": "1.0.0" + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "napi-build-utils": "^1.0.1", + "node-abi": "^2.2.0", + "noop-logger": "^0.1.1", + "npmlog": "^4.0.1", + "os-homedir": "^1.0.1", + "pump": "^2.0.1", + "rc": "^1.2.7", + "simple-get": "^2.7.0", + "tar-fs": "^1.13.0", + "tunnel-agent": "^0.6.0", + "which-pm-runs": "^1.0.0" } } } @@ -4117,7 +4119,7 @@ "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", "dev": true, "requires": { - "es6-promise": "4.2.5" + "es6-promise": "^4.0.3" } }, "escape-html": { @@ -4176,7 +4178,7 @@ }, "events": { "version": "1.1.1", - "resolved": "http://registry.npmjs.org/events/-/events-1.1.1.tgz", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", "dev": true }, @@ -4489,7 +4491,7 @@ }, "fast-deep-equal": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", "dev": true }, @@ -4801,7 +4803,8 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -4825,13 +4828,15 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "optional": true, "requires": { "balanced-match": "1.0.0", "concat-map": "0.0.1" @@ -4848,19 +4853,22 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -4991,7 +4999,8 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -5005,6 +5014,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, + "optional": true, "requires": { "number-is-nan": "1.0.1" } @@ -5021,6 +5031,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, + "optional": true, "requires": { "brace-expansion": "1.1.11" } @@ -5029,13 +5040,15 @@ "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz", "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", "dev": true, + "optional": true, "requires": { "safe-buffer": "5.1.1", "yallist": "3.0.2" @@ -5056,6 +5069,7 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -5144,7 +5158,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -5158,6 +5173,7 @@ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, + "optional": true, "requires": { "wrappy": "1.0.2" } @@ -5253,7 +5269,8 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -5295,6 +5312,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, + "optional": true, "requires": { "code-point-at": "1.1.0", "is-fullwidth-code-point": "1.0.0", @@ -5316,6 +5334,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, + "optional": true, "requires": { "ansi-regex": "2.1.1" } @@ -5364,13 +5383,15 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=", - "dev": true + "dev": true, + "optional": true } } }, @@ -5781,7 +5802,7 @@ }, "htmlparser2": { "version": "3.3.0", - "resolved": "http://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", "dev": true, "requires": { @@ -5808,7 +5829,7 @@ }, "readable-stream": { "version": "1.0.34", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "dev": true, "requires": { @@ -5867,8 +5888,8 @@ "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", "dev": true, "requires": { - "agent-base": "4.2.1", - "debug": "3.2.6" + "agent-base": "^4.1.0", + "debug": "^3.1.0" } }, "hw-app-iota": { @@ -6608,7 +6629,7 @@ }, "json5": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", "dev": true }, @@ -7377,7 +7398,8 @@ "ansi-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", - "integrity": "sha1-xQYbbg74qBd15Q9dZhUb9r83EQc=" + "integrity": "sha1-xQYbbg74qBd15Q9dZhUb9r83EQc=", + "optional": true }, "ansi-styles": { "version": "2.2.1", @@ -7449,6 +7471,7 @@ "version": "0.0.9", "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "optional": true, "requires": { "inherits": "2.0.3" } @@ -7457,6 +7480,7 @@ "version": "2.10.1", "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", + "optional": true, "requires": { "hoek": "2.16.3" } @@ -7473,7 +7497,8 @@ "buffer-shims": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=" + "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=", + "optional": true }, "caseless": { "version": "0.11.0", @@ -7505,12 +7530,14 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "optional": true }, "combined-stream": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", + "optional": true, "requires": { "delayed-stream": "1.0.0" } @@ -7532,12 +7559,14 @@ "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "optional": true }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "optional": true }, "cryptiles": { "version": "2.0.5", @@ -7583,7 +7612,8 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "optional": true }, "delegates": { "version": "1.0.0", @@ -7615,7 +7645,8 @@ "extsprintf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz", - "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=" + "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=", + "optional": true }, "forever-agent": { "version": "0.6.1", @@ -7643,6 +7674,7 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.10.tgz", "integrity": "sha1-YE6Kkv4m/9n2+uMDmdSYThqyKCI=", + "optional": true, "requires": { "graceful-fs": "4.1.11", "inherits": "2.0.3", @@ -7726,7 +7758,8 @@ "graceful-fs": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "optional": true }, "graceful-readlink": { "version": "1.0.1", @@ -7776,7 +7809,8 @@ "hoek": { "version": "2.16.3", "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" + "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", + "optional": true }, "http-signature": { "version": "1.1.1", @@ -7813,6 +7847,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "optional": true, "requires": { "number-is-nan": "1.0.1" } @@ -7844,7 +7879,8 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "optional": true }, "isstream": { "version": "0.1.2", @@ -7899,12 +7935,14 @@ "mime-db": { "version": "1.25.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.25.0.tgz", - "integrity": "sha1-wY29fHOl2/b0SgJNwNFloeexw5I=" + "integrity": "sha1-wY29fHOl2/b0SgJNwNFloeexw5I=", + "optional": true }, "mime-types": { "version": "2.1.13", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.13.tgz", "integrity": "sha1-4HqqnGxrmnyjASxpADrSWjnpKog=", + "optional": true, "requires": { "mime-db": "1.25.0" } @@ -7920,12 +7958,14 @@ "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "optional": true }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "optional": true, "requires": { "minimist": "0.0.8" } @@ -7977,7 +8017,8 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "optional": true }, "oauth-sign": { "version": "0.8.2", @@ -8022,7 +8063,8 @@ "process-nextick-args": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "optional": true }, "punycode": { "version": "1.4.1", @@ -8163,6 +8205,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "optional": true, "requires": { "code-point-at": "1.1.0", "is-fullwidth-code-point": "1.0.0", @@ -8172,7 +8215,8 @@ "string_decoder": { "version": "0.10.31", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "optional": true }, "stringstream": { "version": "0.0.5", @@ -8184,6 +8228,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "optional": true, "requires": { "ansi-regex": "2.0.0" } @@ -8204,6 +8249,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", + "optional": true, "requires": { "block-stream": "0.0.9", "fstream": "1.0.10", @@ -8282,7 +8328,8 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "optional": true }, "uuid": { "version": "3.0.1", @@ -9127,7 +9174,8 @@ "integrity": "sha1-Y/xMzuXS13Y9Jrv4YBB45sLgBE8=" }, "pako": { - "version": "github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc" + "version": "github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc", + "from": "pako@github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc" }, "parse-glob": { "version": "3.0.4", @@ -9503,7 +9551,8 @@ "integrity": "sha1-KcNXB8K3DlDQdIK10gLo7URtr9Q=" }, "text-encoding": { - "version": "github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb" + "version": "github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb", + "from": "text-encoding@github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb" }, "timers-browserify": { "version": "2.0.2", @@ -9744,7 +9793,8 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "xmldom": { - "version": "github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6" + "version": "github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6", + "from": "xmldom@github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6" }, "xtend": { "version": "4.0.1", @@ -9841,7 +9891,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -9899,7 +9949,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -9938,7 +9988,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -10049,7 +10099,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -10125,8 +10175,9 @@ }, "machine-uuid-sync": { "version": "git+https://github.com/rajivshah3/machine-uuid-sync.git#a5ffa8eab86764db0c69aadbeef9a14b2ae9ae5c", + "from": "git+https://github.com/rajivshah3/machine-uuid-sync.git", "requires": { - "uuid": "3.3.2" + "uuid": "^3.1.0" } }, "make-dir": { @@ -10316,14 +10367,14 @@ "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" }, "mini-css-extract-plugin": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.4.tgz", - "integrity": "sha512-o+Jm+ocb0asEngdM6FsZWtZsRzA8koFUudIDwYUfl94M3PejPHG7Vopw5hN9V8WsMkSFpm3tZP3Fesz89EyrfQ==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.5.0.tgz", + "integrity": "sha512-IuaLjruM0vMKhUUT51fQdQzBYTX49dLj8w68ALEAe2A4iYNpIC4eMac67mt3NzycvjOlf07/kYxJDc0RTl1Wqw==", "dev": true, "requires": { - "loader-utils": "1.1.0", - "schema-utils": "1.0.0", - "webpack-sources": "1.3.0" + "loader-utils": "^1.1.0", + "schema-utils": "^1.0.0", + "webpack-sources": "^1.1.0" } }, "minimalistic-assert": { @@ -10348,7 +10399,7 @@ }, "minimist": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" }, "minimist-options": { @@ -10456,7 +10507,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "requires": { "minimist": "0.0.8" @@ -10464,7 +10515,7 @@ "dependencies": { "minimist": { "version": "0.0.8", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" } } @@ -10903,7 +10954,7 @@ }, "onetime": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", "dev": true }, @@ -10936,7 +10987,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -11177,7 +11228,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -11522,7 +11573,7 @@ }, "camelcase-keys": { "version": "2.1.0", - "resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { @@ -11551,7 +11602,7 @@ }, "load-json-file": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { @@ -11570,7 +11621,7 @@ }, "meow": { "version": "3.7.0", - "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { @@ -11617,7 +11668,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, @@ -11706,9 +11757,9 @@ "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" }, "progress": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.1.tgz", - "integrity": "sha512-OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true }, "progress-stream": { @@ -11735,7 +11786,7 @@ }, "readable-stream": { "version": "1.1.14", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "dev": true, "requires": { @@ -11870,19 +11921,30 @@ "dev": true }, "puppeteer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.9.0.tgz", - "integrity": "sha512-GH4PmhJf9wBRAPvtJkEJLAvdNNOofZortmBZSj8cGWYni98GUFqsf66blOEfJbo5B8l0KG5HR2d/W2MejnUrzg==", - "dev": true, - "requires": { - "debug": "3.2.6", - "extract-zip": "1.6.7", - "https-proxy-agent": "2.2.1", - "mime": "2.3.1", - "progress": "2.0.1", - "proxy-from-env": "1.0.0", - "rimraf": "2.6.2", - "ws": "5.2.2" + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.11.0.tgz", + "integrity": "sha512-iG4iMOHixc2EpzqRV+pv7o3GgmU2dNYEMkvKwSaQO/vMZURakwSOn/EYJ6OIRFYOque1qorzIBvrytPIQB3YzQ==", + "dev": true, + "requires": { + "debug": "^4.1.0", + "extract-zip": "^1.6.6", + "https-proxy-agent": "^2.2.1", + "mime": "^2.0.3", + "progress": "^2.0.1", + "proxy-from-env": "^1.0.0", + "rimraf": "^2.6.1", + "ws": "^6.1.0" + }, + "dependencies": { + "debug": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", + "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } } }, "qr.js": { @@ -12293,7 +12355,7 @@ }, "readable-stream": { "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "requires": { "core-util-is": "1.0.2", @@ -12978,7 +13040,7 @@ }, "sha.js": { "version": "2.4.11", - "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, "requires": { @@ -13492,7 +13554,7 @@ }, "strip-ansi": { "version": "3.0.1", - "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { "ansi-regex": "2.1.1" @@ -13715,7 +13777,7 @@ }, "readable-stream": { "version": "1.0.34", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "requires": { "core-util-is": "1.0.2", @@ -14731,12 +14793,12 @@ } }, "ws": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", - "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.1.2.tgz", + "integrity": "sha512-rfUqzvz0WxmSXtJpPMX2EeASXabOrSMk1ruMOV3JBTBjo4ac2lDjGGsbQSyxj8Odhw5fBib8ZKEjDNvgouNKYw==", "dev": true, "requires": { - "async-limiter": "1.0.0" + "async-limiter": "~1.0.0" } }, "x-is-string": { diff --git a/src/desktop/package.json b/src/desktop/package.json index 9f87e494f9..1da0414c60 100644 --- a/src/desktop/package.json +++ b/src/desktop/package.json @@ -56,7 +56,7 @@ "html-webpack-plugin": "^3.2.0", "mini-css-extract-plugin": "^0.5.0", "patch-package": "^5.1.1", - "puppeteer": "^1.9.0", + "puppeteer": "^1.11.0", "react-dev-utils": "^6.0.4", "rimraf": "^2.6.2", "sass-loader": "^7.1.0", From e3f6c1dfe3c19e3054cfc608f7dcbe9f5c6b858a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Sun, 9 Dec 2018 23:08:25 -0500 Subject: [PATCH 117/141] Bump fastlane from 2.108.0 to 2.109.1 in /src/mobile/ios (#728) * Bump fastlane from 2.108.0 to 2.109.1 in /src/mobile/ios Bumps [fastlane](https://github.com/fastlane/fastlane) from 2.108.0 to 2.109.1. - [Release notes](https://github.com/fastlane/fastlane/releases) - [Commits](https://github.com/fastlane/fastlane/commits) Signed-off-by: dependabot[bot] * Mobile: Reinstall Fastlane plugins [ci skip] --- src/mobile/ios/Gemfile.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/mobile/ios/Gemfile.lock b/src/mobile/ios/Gemfile.lock index bd30939e15..6f1c7b7529 100644 --- a/src/mobile/ios/Gemfile.lock +++ b/src/mobile/ios/Gemfile.lock @@ -18,15 +18,15 @@ GEM dotenv (2.5.0) emoji_regex (0.1.1) excon (0.62.0) - faraday (0.15.3) + faraday (0.15.4) multipart-post (>= 1.2, < 3) faraday-cookie_jar (0.0.6) faraday (>= 0.7.4) http-cookie (~> 1.0.0) faraday_middleware (0.12.2) faraday (>= 0.7.4, < 1.0) - fastimage (2.1.4) - fastlane (2.108.0) + fastimage (2.1.5) + fastlane (2.109.1) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.3, < 3.0.0) babosa (>= 1.0.2, < 2.0.0) @@ -126,8 +126,8 @@ GEM unicode-display_width (~> 1.1, >= 1.1.1) tty-cursor (0.6.0) tty-screen (0.6.5) - tty-spinner (0.8.0) - tty-cursor (>= 0.5.0) + tty-spinner (0.9.0) + tty-cursor (~> 0.6.0) uber (0.1.0) unf (0.1.4) unf_ext From 380a0d91596c6f4fd9fc925137f3206713f49a73 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Sun, 9 Dec 2018 23:09:15 -0500 Subject: [PATCH 118/141] Mobile: Reinstall Fastlane plugins --- src/mobile/android/Gemfile.lock | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mobile/android/Gemfile.lock b/src/mobile/android/Gemfile.lock index ee7be7ef1d..23b506163e 100644 --- a/src/mobile/android/Gemfile.lock +++ b/src/mobile/android/Gemfile.lock @@ -62,6 +62,8 @@ GEM xcodeproj (>= 1.6.0, < 2.0.0) xcpretty (~> 0.3.0) xcpretty-travis-formatter (>= 0.0.3) + fastlane-plugin-increment_version_code (0.4.3) + fastlane-plugin-load_json (0.0.1) gh_inspector (1.1.3) google-api-client (0.23.9) addressable (~> 2.5, >= 2.5.1) @@ -146,6 +148,8 @@ PLATFORMS DEPENDENCIES fastlane + fastlane-plugin-increment_version_code + fastlane-plugin-load_json nokogiri BUNDLED WITH From 0049856b63dcd7d0fd0378377c31dcc7278c0ecc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Sun, 9 Dec 2018 23:45:02 -0500 Subject: [PATCH 119/141] Bump snyk from 1.110.1 to 1.116.2 (#740) Bumps [snyk](https://github.com/snyk/snyk) from 1.110.1 to 1.116.2. - [Release notes](https://github.com/snyk/snyk/releases) - [Changelog](https://github.com/snyk/snyk/blob/master/.releaserc) - [Commits](https://github.com/snyk/snyk/compare/v1.110.1...v1.116.2) Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 58 ++++++++++++++++++++++++++++++++++------------------ 2 files changed, 39 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index 8d8428a237..402f9dede5 100644 --- a/package.json +++ b/package.json @@ -54,7 +54,7 @@ "shared-modules": "./src/shared/" }, "dependencies": { - "snyk": "^1.96.0" + "snyk": "^1.116.2" }, "snyk": true } diff --git a/yarn.lock b/yarn.lock index c8b238f2d2..77f1d41a64 100644 --- a/yarn.lock +++ b/yarn.lock @@ -94,6 +94,21 @@ lodash "^4.2.0" to-fast-properties "^2.0.0" +"@snyk/dep-graph@1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@snyk/dep-graph/-/dep-graph-1.1.2.tgz#a0377fbb29dd42bc12d1c2493b51a7b7fe0d334a" + integrity sha512-mCoAFKtmezBL61JOzLMzqqd/sXXxp0iektEwf4zw+sM3zuG4Tnmhf8OqNO6Wscn84bMIfLlI/nvECdxvSS7MTw== + dependencies: + graphlib "^2.1.5" + lodash "^4" + source-map-support "^0.5.9" + tslib "^1.9.3" + +"@snyk/gemfile@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@snyk/gemfile/-/gemfile-1.1.0.tgz#8c254dfc7739b2e8513c44c976fc41872d5f6af0" + integrity sha512-mLwF+ccuvRZMS0SxUAxA3dAp8mB3m2FxIsBIUWFTYvzxl+E4XTZb8uFrUqXHbcxhZH1Z8taHohNTbzXZn3M8ag== + "@yarnpkg/lockfile@^1.0.2": version "1.1.0" resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" @@ -2927,7 +2942,7 @@ lodash@4.17.10: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" integrity sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg== -lodash@^4.11.1, lodash@^4.17.10, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.3.0: +lodash@^4, lodash@^4.11.1, lodash@^4.17.10, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.3.0: version "4.17.11" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== @@ -4798,19 +4813,19 @@ snyk-config@2.2.0: lodash "^4.17.5" nconf "^0.10.0" -snyk-docker-plugin@1.12.3: - version "1.12.3" - resolved "https://registry.yarnpkg.com/snyk-docker-plugin/-/snyk-docker-plugin-1.12.3.tgz#a4a7c81a8e4e3c6a6cc303d4bc9aa98645274bca" - integrity sha512-ZbvaFCPCd0wxhqxjzU/iyf39tKlq2nvI9nPW32uZV3RGdHrkQH55BzCtBCF9d0dapxX+PKgae/4u2BKNw8hd9Q== +snyk-docker-plugin@1.13.1: + version "1.13.1" + resolved "https://registry.yarnpkg.com/snyk-docker-plugin/-/snyk-docker-plugin-1.13.1.tgz#4d5ad62fe76b03e36b2c414b9576e67daef21f73" + integrity sha512-rhVPwMryfGanLXeDoDzjQabGq8VlEPSkvDvraiOhm/F9o5E4zam6vDlVQXsYVRb4ydVKPLgux2ejWyFiG6shFA== dependencies: debug "^3" dockerfile-ast "0.0.12" tslib "^1" -snyk-go-plugin@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/snyk-go-plugin/-/snyk-go-plugin-1.6.0.tgz#4b312db52fdde6d9b2ac75fe1f9712b88563737d" - integrity sha512-E6aYw7XAXSs2wJR3fU+vGQ1lVyjAw8PHIQYQwBwMkTHByhJIWPcu6Hy/jT5LcjJHlhYXlpOuk53HeLVK+kcXrQ== +snyk-go-plugin@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/snyk-go-plugin/-/snyk-go-plugin-1.6.1.tgz#fad24de943a587d676af9408e5b3976d6b20267d" + integrity sha512-hFOMyznfcMzF1HaZP18VmjQSqK/jBOowh0lpJY4UqmaQSZyJury3Ax+44O9oVUJi8lb8A4g7RVbxhlWl6bIqlA== dependencies: graphlib "^2.1.1" tmp "0.0.33" @@ -4836,10 +4851,10 @@ snyk-mvn-plugin@2.0.0: resolved "https://registry.yarnpkg.com/snyk-mvn-plugin/-/snyk-mvn-plugin-2.0.0.tgz#875dcfe0d77b50396321552f2469ee69ca8d1416" integrity sha512-9jAhZhv+7YcqtoQYCYlgMoxK+dWBKlk+wkX27Ebg3vNddNop9q5jZitRXTjsXwfSUZHRt+Ptw1f8vei9kjzZVg== -snyk-nodejs-lockfile-parser@1.7.1: - version "1.7.1" - resolved "https://registry.yarnpkg.com/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.7.1.tgz#499fd29db9a9185e3cb90a314b204fa1244fffb6" - integrity sha512-0gHELqMhzUxb/t3Tg6d6G9LTDioOXCrEMt9aetOeV8wD/ZRL5VFNjwcdrm8qILLqzDFaFjFIyMc66c0OL4zFAQ== +snyk-nodejs-lockfile-parser@1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.9.0.tgz#66e7295774e3854a4cc1a61200f01833adb60d25" + integrity sha512-GRn70VDe+JISkRbnxc9vxCBV+Ekkdr79krVXbYNDJgQyIjH+FXh6PXVvpregVsvCcNqP1ctbBw/u1w6e9xX1QA== dependencies: "@yarnpkg/lockfile" "^1.0.2" graphlib "^2.1.5" @@ -4940,11 +4955,13 @@ snyk-try-require@1.3.1, snyk-try-require@^1.1.1, snyk-try-require@^1.3.1: lru-cache "^4.0.0" then-fs "^2.0.0" -snyk@^1.96.0: - version "1.110.1" - resolved "https://registry.yarnpkg.com/snyk/-/snyk-1.110.1.tgz#d43b2bc1befe79131b19365cf47736407b37b429" - integrity sha512-+AN35LLGqUI2cfizTlreIJUqSTrzoAw3Il52+pCJ4jNk86ejmjd1f9wdVlh15LS2QK94+Jx0md3K/Rn6tfQ1Ug== +snyk@^1.116.2: + version "1.116.2" + resolved "https://registry.yarnpkg.com/snyk/-/snyk-1.116.2.tgz#d82fa2090bc25f892708a3623fc0e1c2383f53cc" + integrity sha512-zkW+IjSEDJ5f4leXck7a7aF36pJcIKRk3o2or78cnabq1mxQzgY8+ooECPDBnwvqySIwUKA8jOjnGRujaNCMpg== dependencies: + "@snyk/dep-graph" "1.1.2" + "@snyk/gemfile" "1.1.0" abbrev "^1.1.1" ansi-escapes "^3.1.0" chalk "^2.4.1" @@ -4961,12 +4978,12 @@ snyk@^1.96.0: recursive-readdir "^2.2.2" semver "^5.5.0" snyk-config "2.2.0" - snyk-docker-plugin "1.12.3" - snyk-go-plugin "1.6.0" + snyk-docker-plugin "1.13.1" + snyk-go-plugin "1.6.1" snyk-gradle-plugin "2.1.1" snyk-module "1.9.1" snyk-mvn-plugin "2.0.0" - snyk-nodejs-lockfile-parser "1.7.1" + snyk-nodejs-lockfile-parser "1.9.0" snyk-nuget-plugin "1.6.5" snyk-php-plugin "1.5.1" snyk-policy "1.13.1" @@ -4980,6 +4997,7 @@ snyk@^1.96.0: tempfile "^2.0.0" then-fs "^2.0.0" undefsafe "^2.0.0" + update-notifier "^2.5.0" uuid "^3.2.1" socks-proxy-agent@^3.0.0, socks-proxy-agent@^3.0.1: From e0205ae28ffde6fb9492b6dd80b30b39caf0cbb8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 10 Dec 2018 00:16:14 -0500 Subject: [PATCH 120/141] Bump husky from 1.1.3 to 1.2.0 (#739) Bumps [husky](https://github.com/typicode/husky) from 1.1.3 to 1.2.0. - [Release notes](https://github.com/typicode/husky/releases) - [Changelog](https://github.com/typicode/husky/blob/master/CHANGELOG.md) - [Commits](https://github.com/typicode/husky/compare/v1.1.3...v1.2.0) Signed-off-by: dependabot[bot] --- package.json | 2 +- yarn.lock | 47 +++++++++++++++++++++++++++++++++++------------ 2 files changed, 36 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index 402f9dede5..297203187f 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "eslint-plugin-jsx-a11y": "^6.0.3", "eslint-plugin-react": "^7.7.0", "eslint-plugin-react-native": "^3.2.1", - "husky": "^1.1.3", + "husky": "^1.2.0", "lint-staged": "^4.2.3", "node-cmd": "^3.0.0", "os": "^0.1.1", diff --git a/yarn.lock b/yarn.lock index 77f1d41a64..194f2b86d8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -967,6 +967,17 @@ cross-spawn@^5.0.1, cross-spawn@^5.1.0: shebang-command "^1.2.0" which "^1.2.9" +cross-spawn@^6.0.0: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + cryptiles@3.x.x: version "3.1.2" resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" @@ -1533,13 +1544,13 @@ execa@^0.8.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -execa@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.9.0.tgz#adb7ce62cf985071f60580deb4a88b9e34712d01" - integrity sha512-BbUMBiX4hqiHZUA5+JujIjNb6TyAlp2D5KLheMjMluwOuzcnylDL4AxZYLLn1n2AGB49eSWwyKvvEQoRpnAtmA== +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 "^5.0.1" - get-stream "^3.0.0" + 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" @@ -1887,6 +1898,13 @@ get-stream@^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-uri@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/get-uri/-/get-uri-2.0.2.tgz#5c795e71326f6ca1286f2fc82575cd2bab2af578" @@ -2139,13 +2157,13 @@ humanize-ms@^1.2.1: dependencies: ms "^2.0.0" -husky@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/husky/-/husky-1.1.3.tgz#3ccfdb4d7332896bf7cd0e618c6fb8be09d9de4b" - integrity sha512-6uc48B/A2Mqi65yeg37d/TPcTb0bZ1GTkMYOM0nXLOPuPaTRhXCeee80/noOrbavWd12x72Tusja7GJ5rzvV6g== +husky@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/husky/-/husky-1.2.0.tgz#d631dda1e4a9ee8ba69a10b0c51a0e2c66e711e5" + integrity sha512-/ib3+iycykXC0tYIxsyqierikVa9DA2DrT32UEirqNEFVqOj1bFMTgP3jAz8HM7FgC/C8pc/BTUa9MV2GEkZaA== dependencies: cosmiconfig "^5.0.6" - execa "^0.9.0" + execa "^1.0.0" find-up "^3.0.0" get-stdin "^6.0.0" is-ci "^1.2.1" @@ -3269,6 +3287,11 @@ netmask@^1.0.6: resolved "https://registry.yarnpkg.com/netmask/-/netmask-1.0.6.tgz#20297e89d86f6f6400f250d9f4f6b4c1945fcd35" integrity sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU= +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + node-cmd@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/node-cmd/-/node-cmd-3.0.0.tgz#38fff70a4aaa4f659d203eb57862737018e24f6f" @@ -3934,7 +3957,7 @@ path-is-inside@^1.0.1, path-is-inside@^1.0.2, path-is-inside@~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.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= From e36f9ed444b767aac6785ff3ad945d336e650c8d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 10 Dec 2018 00:30:33 -0500 Subject: [PATCH 121/141] [Security] Bump lodash-es from 4.17.4 to 4.17.11 in /src/shared (#731) Bumps [lodash-es](https://github.com/lodash/lodash) from 4.17.4 to 4.17.11. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Changelog](https://github.com/lodash/lodash/blob/master/CHANGELOG) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.11) Signed-off-by: dependabot[bot] --- src/shared/yarn.lock | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/shared/yarn.lock b/src/shared/yarn.lock index 51ce541ecf..fcc74683de 100644 --- a/src/shared/yarn.lock +++ b/src/shared/yarn.lock @@ -1250,16 +1250,11 @@ locate-path@^2.0.0: p-locate "^2.0.0" path-exists "^3.0.0" -lodash-es@^4.17.4: +lodash-es@^4.17.4, lodash-es@^4.2.0: version "4.17.11" resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.11.tgz#145ab4a7ac5c5e52a3531fb4f310255a152b4be0" integrity sha512-DHb1ub+rMjjrxqlB3H56/6MXtm1lSksDp2rA2cNWjG8mlDUYFhUj3Di2Zn5IwSU87xLv8tNIQ7sSwE/YOX/D/Q== -lodash-es@^4.2.0: - version "4.17.4" - resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.4.tgz#dcc1d7552e150a0640073ba9cb31d70f032950e7" - integrity sha1-3MHXVS4VCgZABzupyzHXDwMpUOc= - lodash.get@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" From bcfdde95d2a537a6804385db615201dae263ab71 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 10 Dec 2018 01:24:56 -0500 Subject: [PATCH 122/141] [Security] Bump lodash from 4.17.4 to 4.17.10 (#723) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.4 to 4.17.10. **This update includes security fixes.** - [Release notes](https://github.com/lodash/lodash/releases) - [Changelog](https://github.com/lodash/lodash/blob/master/CHANGELOG) - [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.10) Signed-off-by: dependabot[bot] --- yarn.lock | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/yarn.lock b/yarn.lock index 194f2b86d8..6aa476fc09 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2960,21 +2960,11 @@ lodash@4.17.10: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" integrity sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg== -lodash@^4, lodash@^4.11.1, lodash@^4.17.10, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.3.0: +lodash@^4, lodash@^4.11.1, lodash@^4.14.0, lodash@^4.17.10, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.3.0: version "4.17.11" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== -lodash@^4.14.0: - version "4.17.5" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" - integrity sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw== - -lodash@^4.17.4: - version "4.17.4" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" - integrity sha1-eCA6TRwyiuHYbcpkYONptX9AVa4= - log-symbols@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" From 57c1414f16fe2eb264e06873cdbbb2666dab3589 Mon Sep 17 00:00:00 2001 From: Umair Sarfraz Date: Mon, 10 Dec 2018 18:47:48 +0500 Subject: [PATCH 123/141] Preserve order of themes via indexes in ThemeCustomisation component (#763) --- .../src/ui/views/wallet/ThemeCustomisation.js | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/mobile/src/ui/views/wallet/ThemeCustomisation.js b/src/mobile/src/ui/views/wallet/ThemeCustomisation.js index e2e19add14..4121e0837e 100644 --- a/src/mobile/src/ui/views/wallet/ThemeCustomisation.js +++ b/src/mobile/src/ui/views/wallet/ThemeCustomisation.js @@ -138,7 +138,7 @@ class ThemeCustomisation extends Component { this.state = { theme: props.theme, themeName: props.themeName, - themes: Object.keys(THEMES), + themes: Object.keys(THEMES).map((theme, index) => ({ theme, index })), }; } @@ -165,14 +165,20 @@ class ThemeCustomisation extends Component { getLocalizedThemes() { const localizedThemes = this.state.themes.map((item) => { - return this.getLocalizedThemeName(item); + return { + ...item, + theme: this.getLocalizedThemeName(item.theme), + }; }); + return localizedThemes; } getThemeName(localizedThemeName) { const localizedThemes = this.getLocalizedThemes(); - return this.state.themes[localizedThemes.indexOf(localizedThemeName)]; + const { index } = localizedThemes.find(({ theme }) => theme === localizedThemeName); + + return this.state.themes.find((value) => value.index === index).theme; } render() { @@ -201,7 +207,7 @@ class ThemeCustomisation extends Component { background shadow defaultOption={this.getLocalizedThemeName(themeName)} - options={this.getLocalizedThemes()} + options={this.getLocalizedThemes().map(({ theme }) => theme)} saveSelection={(localizedSelection) => { const selection = this.getThemeName(localizedSelection); const newTHEMES = cloneDeep(THEMES); From 9b021eefbe754786ab8bda3a76d5c58e2f16e278 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Mon, 10 Dec 2018 14:21:10 +0000 Subject: [PATCH 124/141] Update src/mobile/src/ui/components/TransferConfirmationModal.js Co-Authored-By: cvarley100 --- src/mobile/src/ui/components/TransferConfirmationModal.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mobile/src/ui/components/TransferConfirmationModal.js b/src/mobile/src/ui/components/TransferConfirmationModal.js index 581d104066..ab4999ff14 100644 --- a/src/mobile/src/ui/components/TransferConfirmationModal.js +++ b/src/mobile/src/ui/components/TransferConfirmationModal.js @@ -204,7 +204,7 @@ class TransferConfirmationModal extends Component { source={arrowAnimation} style={{ width: width / 17, height: height / 18 }} loop - autoplay + autoPlay ref={(animation) => { this.animation = animation; }} From 5cc6c597e4e96c82becf4dfa95ed1a74e540fd68 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Mon, 10 Dec 2018 14:21:18 +0000 Subject: [PATCH 125/141] Update src/mobile/src/ui/views/wallet/DeleteAccount.js Co-Authored-By: cvarley100 --- src/mobile/src/ui/views/wallet/DeleteAccount.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mobile/src/ui/views/wallet/DeleteAccount.js b/src/mobile/src/ui/views/wallet/DeleteAccount.js index d6f11c0b9e..567c544282 100644 --- a/src/mobile/src/ui/views/wallet/DeleteAccount.js +++ b/src/mobile/src/ui/views/wallet/DeleteAccount.js @@ -142,7 +142,7 @@ class DeleteAccount extends Component { } /** - * Deleres account if user entered correct/valid password + * Deletes account if user entered correct/valid password * Otherwise generates an alert * * @method onContinuePress From 6eb117272c04bc15d8cafc82e4ed95cdaf60c28e Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 10 Dec 2018 14:38:39 +0000 Subject: [PATCH 126/141] Localise string --- src/mobile/src/ui/views/wallet/Send.js | 2 +- src/shared/locales/en/translation.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mobile/src/ui/views/wallet/Send.js b/src/mobile/src/ui/views/wallet/Send.js index 964023c9da..5b0b68a919 100644 --- a/src/mobile/src/ui/views/wallet/Send.js +++ b/src/mobile/src/ui/views/wallet/Send.js @@ -845,7 +845,7 @@ export class Send extends Component { postSwipeColor={primary.color} interupt={this.state.shouldInteruptSendAnimation} progressText={this.getProgressBarText()} - staticText="Swipe to send" + staticText={t('swipeToSend')} onSwipeSuccess={() => { this.onSendPress(); if (address === '' && amount === '' && message && '') { diff --git a/src/shared/locales/en/translation.json b/src/shared/locales/en/translation.json index 72c5374fba..f650cf1e02 100644 --- a/src/shared/locales/en/translation.json +++ b/src/shared/locales/en/translation.json @@ -375,7 +375,8 @@ "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -627,7 +628,6 @@ "aMessage": "a message", "fromAccount": "From {{selectedAccountName}}", "toAddress": "To address", - "view": "View", "sendingAMessage": "Sending a message", "sendingAnEmptyMessage": "Sending an empty message" }, From 611e2ded6c014d15a91474027d5022bedc44baf5 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 10 Dec 2018 14:46:23 +0000 Subject: [PATCH 127/141] Fix unresolved conflict --- src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj index 409c283d33..376ddab77c 100644 --- a/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj +++ b/src/mobile/ios/iotaWallet.xcodeproj/project.pbxproj @@ -818,10 +818,6 @@ files = ( 6020D31F21A507BC00159E5A /* libReact.a in Frameworks */, 6020D31E21A5077600159E5A /* libRCTAnimation.a in Frameworks */, -======= - 6020D31F21A507BC00159E5A /* libReact.a in Frameworks */, - 6020D31E21A5077600159E5A /* libRCTAnimation.a in Frameworks */, ->>>>>>> feat/page-animations CBEA4C9421494823007DA583 /* libReactNativeNavigation.a in Frameworks */, 60F7E4242125EBE7005355C7 /* libRNDocumentPicker.a in Frameworks */, CB305F0421185EF800657575 /* libRNFetchBlob.a in Frameworks */, From 5506416c2e0854ecdef2d4e5916e7a205bada76d Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 10 Dec 2018 14:56:44 +0000 Subject: [PATCH 128/141] Mobile: Minor code cleanup --- src/mobile/src/ui/components/AnimatedComponent.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/mobile/src/ui/components/AnimatedComponent.js b/src/mobile/src/ui/components/AnimatedComponent.js index a657afd1eb..b456cfaafe 100644 --- a/src/mobile/src/ui/components/AnimatedComponent.js +++ b/src/mobile/src/ui/components/AnimatedComponent.js @@ -190,7 +190,6 @@ class AnimatedComponent extends Component { case 'fadeIn': return 1; case 'fadeOut': - return 0; case 'slideInLeft': case 'slideInRight': return 0; From 2448fe29ef4e831e75ed58290f5ee333fe90b49b Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Mon, 10 Dec 2018 15:10:21 +0000 Subject: [PATCH 129/141] Update src/mobile/android/gradlew.bat Co-Authored-By: cvarley100 --- src/mobile/android/gradlew.bat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mobile/android/gradlew.bat b/src/mobile/android/gradlew.bat index aec99730b4..72d362dafd 100644 --- a/src/mobile/android/gradlew.bat +++ b/src/mobile/android/gradlew.bat @@ -46,7 +46,7 @@ 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 From a07d1973f7ff90b33cff99db5f35baae77f035a7 Mon Sep 17 00:00:00 2001 From: cvarley100 Date: Mon, 10 Dec 2018 15:16:17 +0000 Subject: [PATCH 130/141] Mobile: Minor refactor --- src/mobile/src/ui/components/KeyboardMonitor.js | 7 +++---- src/mobile/src/ui/components/ModalComponent.js | 6 +++++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/mobile/src/ui/components/KeyboardMonitor.js b/src/mobile/src/ui/components/KeyboardMonitor.js index 83baf2d194..cde8767714 100644 --- a/src/mobile/src/ui/components/KeyboardMonitor.js +++ b/src/mobile/src/ui/components/KeyboardMonitor.js @@ -35,13 +35,12 @@ export default function withKeyboardMonitor(C) { }; componentWillMount() { - if (!isAndroid) { - this.keyboardWillShowSub = Keyboard.addListener('keyboardWillShow', this.keyboardWillShow); - this.keyboardWillHideSub = Keyboard.addListener('keyboardWillHide', this.keyboardWillHide); - } if (isAndroid) { this.keyboardWillShowSub = Keyboard.addListener('keyboardDidShow', this.keyboardDidShow); this.keyboardWillHideSub = Keyboard.addListener('keyboardDidHide', this.keyboardDidHide); + } else { + this.keyboardWillShowSub = Keyboard.addListener('keyboardWillShow', this.keyboardWillShow); + this.keyboardWillHideSub = Keyboard.addListener('keyboardWillHide', this.keyboardWillHide); } } diff --git a/src/mobile/src/ui/components/ModalComponent.js b/src/mobile/src/ui/components/ModalComponent.js index 5cb2415ff5..a3b60d00e4 100644 --- a/src/mobile/src/ui/components/ModalComponent.js +++ b/src/mobile/src/ui/components/ModalComponent.js @@ -110,7 +110,7 @@ export default function withSafeAreaView(WrappedComponent) { if (!this.props.isModalActive && newProps.isModalActive) { if (this.props.isKeyboardActive && !isAndroid) { Keyboard.dismiss(); - return timer.setTimeout('test', () => this.setState({ isModalActive: true }), 2800); + return timer.setTimeout('delayOpenModal', () => this.setState({ isModalActive: true }), 2800); } this.setState({ isModalActive: true }); } @@ -119,6 +119,10 @@ export default function withSafeAreaView(WrappedComponent) { } } + componentWillUnmount() { + timer.clearTimeout('delayOpenModal'); + } + render() { const { modalProps, isModalActive, modalContent, theme: { body } } = this.props; const ModalContent = MODAL_CONTENT[modalContent]; From 9012d4b7c375b89f13bd189668002f10ed9812fb Mon Sep 17 00:00:00 2001 From: Rihards Gravis <31288628+rihardsgravis@users.noreply.github.com> Date: Mon, 10 Dec 2018 20:52:42 +0200 Subject: [PATCH 131/141] Update Seed write down view `Done` locale to `Back` (#765) --- src/desktop/src/ui/views/onboarding/SeedSaveWrite.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/desktop/src/ui/views/onboarding/SeedSaveWrite.js b/src/desktop/src/ui/views/onboarding/SeedSaveWrite.js index dcd78876ab..2384ca4f34 100644 --- a/src/desktop/src/ui/views/onboarding/SeedSaveWrite.js +++ b/src/desktop/src/ui/views/onboarding/SeedSaveWrite.js @@ -96,7 +96,7 @@ class SeedSave extends PureComponent { variant="primary" className="square" > - {t('done')} + {t('back')} From 77778af6844d1a904e55d7592a5a3c193adbeea0 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Mon, 10 Dec 2018 14:06:09 -0500 Subject: [PATCH 132/141] Desktop: Delete yarn.lock (#768) --- src/desktop/yarn.lock | 8316 ----------------------------------------- 1 file changed, 8316 deletions(-) delete mode 100644 src/desktop/yarn.lock diff --git a/src/desktop/yarn.lock b/src/desktop/yarn.lock deleted file mode 100644 index 7da4c8122b..0000000000 --- a/src/desktop/yarn.lock +++ /dev/null @@ -1,8316 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"7zip-bin@~4.0.2": - version "4.0.2" - resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-4.0.2.tgz#6abbdc22f33cab742053777a26db2e25ca527179" - integrity sha512-XtGk+IF57pr852UK1AhQJXqmm1WmSgS5uISL+LPs0z/iAxXouMvdlLJrHPeukP6gd7yR2rDTMSMkHNODgwIq7A== - -"7zip@0.0.6": - version "0.0.6" - resolved "https://registry.yarnpkg.com/7zip/-/7zip-0.0.6.tgz#9cafb171af82329490353b4816f03347aa150a30" - integrity sha1-nK+xca+CMpSQNTtIFvAzR6oVCjA= - -"@babel/code-frame@7.0.0", "@babel/code-frame@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" - integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== - dependencies: - "@babel/highlight" "^7.0.0" - -"@babel/core@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.1.2.tgz#f8d2a9ceb6832887329a7b60f9d035791400ba4e" - integrity sha512-IFeSSnjXdhDaoysIlev//UzHZbdEmm7D0EIH2qtse9xK7mXEZQpYjs2P00XlP1qYsYvid79p+Zgg6tz1mp6iVw== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.1.2" - "@babel/helpers" "^7.1.2" - "@babel/parser" "^7.1.2" - "@babel/template" "^7.1.2" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.1.2" - convert-source-map "^1.1.0" - debug "^3.1.0" - json5 "^0.5.0" - lodash "^4.17.10" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/generator@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.0.0.tgz#1efd58bffa951dc846449e58ce3a1d7f02d393aa" - integrity sha512-/BM2vupkpbZXq22l1ALO7MqXJZH2k8bKVv8Y+pABFnzWdztDB/ZLveP5At21vLz5c2YtSE6p7j2FZEsqafMz5Q== - dependencies: - "@babel/types" "^7.0.0" - jsesc "^2.5.1" - lodash "^4.17.10" - source-map "^0.5.0" - trim-right "^1.0.1" - -"@babel/generator@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.1.2.tgz#fde75c072575ce7abbd97322e8fef5bae67e4630" - integrity sha512-70A9HWLS/1RHk3Ck8tNHKxOoKQuSKocYgwDN85Pyl/RBduss6AKxUR7RIZ/lzduQMSYfWEM4DDBu6A+XGbkFig== - dependencies: - "@babel/types" "^7.1.2" - jsesc "^2.5.1" - lodash "^4.17.10" - source-map "^0.5.0" - trim-right "^1.0.1" - -"@babel/helper-annotate-as-pure@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32" - integrity sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" - integrity sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w== - dependencies: - "@babel/helper-explode-assignable-expression" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-builder-react-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.0.0.tgz#fa154cb53eb918cf2a9a7ce928e29eb649c5acdb" - integrity sha512-ebJ2JM6NAKW0fQEqN8hOLxK84RbRz9OkUhGS/Xd5u56ejMfVbayJ4+LykERZCOUM6faa6Fp3SZNX3fcT16MKHw== - dependencies: - "@babel/types" "^7.0.0" - esutils "^2.0.0" - -"@babel/helper-call-delegate@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.1.0.tgz#6a957f105f37755e8645343d3038a22e1449cc4a" - integrity sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ== - dependencies: - "@babel/helper-hoist-variables" "^7.0.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-define-map@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz#3b74caec329b3c80c116290887c0dd9ae468c20c" - integrity sha512-yPPcW8dc3gZLN+U1mhYV91QU3n5uTbx7DUdf8NnPbjS0RMwBuHi9Xt2MUgppmNz7CJxTBWsGczTiEp1CSOTPRg== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/types" "^7.0.0" - lodash "^4.17.10" - -"@babel/helper-explode-assignable-expression@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" - integrity sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA== - dependencies: - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-function-name@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" - integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== - dependencies: - "@babel/helper-get-function-arity" "^7.0.0" - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-get-function-arity@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" - integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-hoist-variables@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz#46adc4c5e758645ae7a45deb92bab0918c23bb88" - integrity sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w== - dependencies: - "@babel/types" "^7.0.0" - -"@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== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-module-imports@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz#96081b7111e486da4d2cd971ad1a4fe216cc2e3d" - integrity sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-module-transforms@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.1.0.tgz#470d4f9676d9fad50b324cdcce5fbabbc3da5787" - integrity sha512-0JZRd2yhawo79Rcm4w0LwSMILFmFXjugG3yqf+P/UsKsRS1mJCmMwwlHDlMg7Avr9LrvSpp4ZSULO9r8jpCzcw== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" - lodash "^4.17.10" - -"@babel/helper-optimise-call-expression@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" - integrity sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-plugin-utils@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" - integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== - -"@babel/helper-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.0.0.tgz#2c1718923b57f9bbe64705ffe5640ac64d9bdb27" - integrity sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg== - dependencies: - lodash "^4.17.10" - -"@babel/helper-remap-async-to-generator@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz#361d80821b6f38da75bd3f0785ece20a88c5fe7f" - integrity sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-wrap-function" "^7.1.0" - "@babel/template" "^7.1.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-replace-supers@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.1.0.tgz#5fc31de522ec0ef0899dc9b3e7cf6a5dd655f362" - integrity sha512-BvcDWYZRWVuDeXTYZWxekQNO5D4kO55aArwZOTFXw6rlLQA8ZaDicJR1sO47h+HrnCiDFiww0fSPV0d713KBGQ== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.0.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-simple-access@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c" - integrity sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w== - dependencies: - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helper-split-export-declaration@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" - integrity sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-wrap-function@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.1.0.tgz#8cf54e9190706067f016af8f75cb3df829cc8c66" - integrity sha512-R6HU3dete+rwsdAfrOzTlE9Mcpk4RjU3aX3gi9grtmugQY0u79X7eogUvfXA5sI81Mfq1cn6AgxihfN33STjJA== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/template" "^7.1.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/helpers@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.1.2.tgz#ab752e8c35ef7d39987df4e8586c63b8846234b5" - integrity sha512-Myc3pUE8eswD73aWcartxB16K6CGmHDv9KxOmD2CeOs/FaEAQodr3VYGmlvOmog60vNQ2w8QbatuahepZwrHiA== - dependencies: - "@babel/template" "^7.1.2" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.1.2" - -"@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== - dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^4.0.0" - -"@babel/parser@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.1.0.tgz#a7cd42cb3c12aec52e24375189a47b39759b783e" - integrity sha512-SmjnXCuPAlai75AFtzv+KCBcJ3sDDWbIn+WytKw1k+wAtEy6phqI2RqKh/zAnw53i1NR8su3Ep/UoqaKcimuLg== - -"@babel/parser@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.1.2.tgz#85c5c47af6d244fab77bce6b9bd830e38c978409" - integrity sha512-x5HFsW+E/nQalGMw7hu+fvPqnBeBaIr0lWJ2SG0PPL2j+Pm9lYvCrsZJGIgauPIENx0v10INIyFjmSNUD/gSqQ== - -"@babel/plugin-proposal-async-generator-functions@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.1.0.tgz#41c1a702e10081456e23a7b74d891922dd1bb6ce" - integrity sha512-Fq803F3Jcxo20MXUSDdmZZXrPe6BWyGcWBPPNB/M7WaUYESKDeKMOGIxEzQOjGSmW/NWb6UaPZrtTB2ekhB/ew== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.1.0" - "@babel/plugin-syntax-async-generators" "^7.0.0" - -"@babel/plugin-proposal-class-properties@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.1.0.tgz#9af01856b1241db60ec8838d84691aa0bd1e8df4" - integrity sha512-/PCJWN+CKt5v1xcGn4vnuu13QDoV+P7NcICP44BoonAJoPSGwVkgrXihFIQGiEjjPlUDBIw1cM7wYFLARS2/hw== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-member-expression-to-functions" "^7.0.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/plugin-syntax-class-properties" "^7.0.0" - -"@babel/plugin-proposal-json-strings@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.0.0.tgz#3b4d7b5cf51e1f2e70f52351d28d44fc2970d01e" - integrity sha512-kfVdUkIAGJIVmHmtS/40i/fg/AGnw/rsZBCaapY5yjeO5RA9m165Xbw9KMOu2nqXP5dTFjEjHdfNdoVcHv133Q== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-json-strings" "^7.0.0" - -"@babel/plugin-proposal-object-rest-spread@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0.tgz#9a17b547f64d0676b6c9cecd4edf74a82ab85e7e" - integrity sha512-14fhfoPcNu7itSen7Py1iGN0gEm87hX/B+8nZPqkdmANyyYWYMY2pjA3r8WXbWVKMzfnSNS0xY8GVS0IjXi/iw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - -"@babel/plugin-proposal-optional-catch-binding@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.0.0.tgz#b610d928fe551ff7117d42c8bb410eec312a6425" - integrity sha512-JPqAvLG1s13B/AuoBjdBYvn38RqW6n1TzrQO839/sIpqLpbnXKacsAgpZHzLD83Sm8SDXMkkrAvEnJ25+0yIpw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.0.0" - -"@babel/plugin-proposal-unicode-property-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.0.0.tgz#498b39cd72536cd7c4b26177d030226eba08cd33" - integrity sha512-tM3icA6GhC3ch2SkmSxv7J/hCWKISzwycub6eGsDrFDgukD4dZ/I+x81XgW0YslS6mzNuQ1Cbzh5osjIMgepPQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.2.0" - -"@babel/plugin-syntax-async-generators@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.0.0.tgz#bf0891dcdbf59558359d0c626fdc9490e20bc13c" - integrity sha512-im7ged00ddGKAjcZgewXmp1vxSZQQywuQXe2B1A7kajjZmDeY/ekMPmWr9zJgveSaQH0k7BcGrojQhcK06l0zA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-class-properties@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.0.0.tgz#e051af5d300cbfbcec4a7476e37a803489881634" - integrity sha512-cR12g0Qzn4sgkjrbrzWy2GE7m9vMl/sFkqZ3gIpAQdrvPDnLM8180i+ANDFIXfjHo9aqp0ccJlQ0QNZcFUbf9w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-json-strings@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.0.0.tgz#0d259a68090e15b383ce3710e01d5b23f3770cbd" - integrity sha512-UlSfNydC+XLj4bw7ijpldc1uZ/HB84vw+U6BTuqMdIEmz/LDe63w/GHtpQMdXWdqQZFeAI9PjnHe/vDhwirhKA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.0.0.tgz#034d5e2b4e14ccaea2e4c137af7e4afb39375ffd" - integrity sha512-PdmL2AoPsCLWxhIr3kG2+F9v4WH06Q3z+NoGVpQgnUNGcagXHq5sB3OXxkSahKq9TLdNMN/AJzFYSOo8UKDMHg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-object-rest-spread@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.0.0.tgz#37d8fbcaf216bd658ea1aebbeb8b75e88ebc549b" - integrity sha512-5A0n4p6bIiVe5OvQPxBnesezsgFJdHhSs3uFSvaPdMqtsovajLZ+G2vZyvNe10EzJBWWo3AcHGKhAFUxqwp2dw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-syntax-optional-catch-binding@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.0.0.tgz#886f72008b3a8b185977f7cb70713b45e51ee475" - integrity sha512-Wc+HVvwjcq5qBg1w5RG9o9RVzmCaAg/Vp0erHCKpAYV8La6I94o4GQAmFYNmkzoMO6gzoOSulpKeSSz6mPEoZw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-arrow-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.0.0.tgz#a6c14875848c68a3b4b3163a486535ef25c7e749" - integrity sha512-2EZDBl1WIO/q4DIkIp4s86sdp4ZifL51MoIviLY/gG/mLSuOIEg7J8o6mhbxOTvUJkaN50n+8u41FVsr5KLy/w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-async-to-generator@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.1.0.tgz#109e036496c51dd65857e16acab3bafdf3c57811" - integrity sha512-rNmcmoQ78IrvNCIt/R9U+cixUHeYAzgusTFgIAv+wQb9HJU4szhpDD6e5GCACmj/JP5KxuCwM96bX3L9v4ZN/g== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.1.0" - -"@babel/plugin-transform-block-scoped-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.0.0.tgz#482b3f75103927e37288b3b67b65f848e2aa0d07" - integrity sha512-AOBiyUp7vYTqz2Jibe1UaAWL0Hl9JUXEgjFvvvcSc9MVDItv46ViXFw2F7SVt1B5k+KWjl44eeXOAk3UDEaJjQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-block-scoping@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0.tgz#1745075edffd7cdaf69fab2fb6f9694424b7e9bc" - integrity sha512-GWEMCrmHQcYWISilUrk9GDqH4enf3UmhOEbNbNrlNAX1ssH3MsS1xLOS6rdjRVPgA7XXVPn87tRkdTEoA/dxEg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - lodash "^4.17.10" - -"@babel/plugin-transform-classes@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.1.0.tgz#ab3f8a564361800cbc8ab1ca6f21108038432249" - integrity sha512-rNaqoD+4OCBZjM7VaskladgqnZ1LO6o2UxuWSDzljzW21pN1KXkB7BstAVweZdxQkHAujps5QMNOTWesBciKFg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-define-map" "^7.1.0" - "@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.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - globals "^11.1.0" - -"@babel/plugin-transform-computed-properties@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.0.0.tgz#2fbb8900cd3e8258f2a2ede909b90e7556185e31" - integrity sha512-ubouZdChNAv4AAWAgU7QKbB93NU5sHwInEWfp+/OzJKA02E6Woh9RVoX4sZrbRwtybky/d7baTUqwFx+HgbvMA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-destructuring@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.0.0.tgz#68e911e1935dda2f06b6ccbbf184ffb024e9d43a" - integrity sha512-Fr2GtF8YJSXGTyFPakPFB4ODaEKGU04bPsAllAIabwoXdFrPxL0LVXQX5dQWoxOjjgozarJcC9eWGsj0fD6Zsg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-dotall-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.0.0.tgz#73a24da69bc3c370251f43a3d048198546115e58" - integrity sha512-00THs8eJxOJUFVx1w8i1MBF4XH4PsAjKjQ1eqN/uCH3YKwP21GCKfrn6YZFZswbOk9+0cw1zGQPHVc1KBlSxig== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.1.3" - -"@babel/plugin-transform-duplicate-keys@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.0.0.tgz#a0601e580991e7cace080e4cf919cfd58da74e86" - integrity sha512-w2vfPkMqRkdxx+C71ATLJG30PpwtTpW7DDdLqYt2acXU7YjztzeWW2Jk1T6hKqCLYCcEA5UQM/+xTAm+QCSnuQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-exponentiation-operator@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.1.0.tgz#9c34c2ee7fd77e02779cfa37e403a2e1003ccc73" - integrity sha512-uZt9kD1Pp/JubkukOGQml9tqAeI8NkE98oZnHZ2qHRElmeKCodbTZgOEUtujSCSLhHSBWbzNiFSDIMC4/RBTLQ== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-for-of@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.0.0.tgz#f2ba4eadb83bd17dc3c7e9b30f4707365e1c3e39" - integrity sha512-TlxKecN20X2tt2UEr2LNE6aqA0oPeMT1Y3cgz8k4Dn1j5ObT8M3nl9aA37LLklx0PBZKETC9ZAf9n/6SujTuXA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-function-name@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.1.0.tgz#29c5550d5c46208e7f730516d41eeddd4affadbb" - integrity sha512-VxOa1TMlFMtqPW2IDYZQaHsFrq/dDoIjgN098NowhexhZcz3UGlvPgZXuE1jEvNygyWyxRacqDpCZt+par1FNg== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-literals@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.0.0.tgz#2aec1d29cdd24c407359c930cdd89e914ee8ff86" - integrity sha512-1NTDBWkeNXgpUcyoVFxbr9hS57EpZYXpje92zv0SUzjdu3enaRwF/l3cmyRnXLtIdyJASyiS6PtybK+CgKf7jA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-modules-amd@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.1.0.tgz#f9e0a7072c12e296079b5a59f408ff5b97bf86a8" - integrity sha512-wt8P+xQ85rrnGNr2x1iV3DW32W8zrB6ctuBkYBbf5/ZzJY99Ob4MFgsZDFgczNU76iy9PWsy4EuxOliDjdKw6A== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-modules-commonjs@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.1.0.tgz#0a9d86451cbbfb29bd15186306897c67f6f9a05c" - integrity sha512-wtNwtMjn1XGwM0AXPspQgvmE6msSJP15CX2RVfpTSTNPLhKhaOjaIfBaVfj4iUZ/VrFSodcFedwtPg/NxwQlPA== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - -"@babel/plugin-transform-modules-systemjs@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.0.0.tgz#8873d876d4fee23209decc4d1feab8f198cf2df4" - integrity sha512-8EDKMAsitLkiF/D4Zhe9CHEE2XLh4bfLbb9/Zf3FgXYQOZyZYyg7EAel/aT2A7bHv62jwHf09q2KU/oEexr83g== - dependencies: - "@babel/helper-hoist-variables" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-modules-umd@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.1.0.tgz#a29a7d85d6f28c3561c33964442257cc6a21f2a8" - integrity sha512-enrRtn5TfRhMmbRwm7F8qOj0qEYByqUvTttPEGimcBH4CJHphjyK1Vg7sdU7JjeEmgSpM890IT/efS2nMHwYig== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-new-target@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz#ae8fbd89517fa7892d20e6564e641e8770c3aa4a" - integrity sha512-yin069FYjah+LbqfGeTfzIBODex/e++Yfa0rH0fpfam9uTbuEeEOx5GLGr210ggOV77mVRNoeqSYqeuaqSzVSw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-object-super@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.1.0.tgz#b1ae194a054b826d8d4ba7ca91486d4ada0f91bb" - integrity sha512-/O02Je1CRTSk2SSJaq0xjwQ8hG4zhZGNjE8psTsSNPXyLRCODv7/PBozqT5AmQMzp7MI3ndvMhGdqp9c96tTEw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - -"@babel/plugin-transform-parameters@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.1.0.tgz#44f492f9d618c9124026e62301c296bf606a7aed" - integrity sha512-vHV7oxkEJ8IHxTfRr3hNGzV446GAb+0hgbA7o/0Jd76s+YzccdWuTU296FOCOl/xweU4t/Ya4g41yWz80RFCRw== - dependencies: - "@babel/helper-call-delegate" "^7.1.0" - "@babel/helper-get-function-arity" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-react-display-name@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.0.0.tgz#93759e6c023782e52c2da3b75eca60d4f10533ee" - integrity sha512-BX8xKuQTO0HzINxT6j/GiCwoJB0AOMs0HmLbEnAvcte8U8rSkNa/eSCAY+l1OA4JnCVq2jw2p6U8QQryy2fTPg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-react-jsx-self@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.0.0.tgz#a84bb70fea302d915ea81d9809e628266bb0bc11" - integrity sha512-pymy+AK12WO4safW1HmBpwagUQRl9cevNX+82AIAtU1pIdugqcH+nuYP03Ja6B+N4gliAaKWAegIBL/ymALPHA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" - -"@babel/plugin-transform-react-jsx-source@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.0.0.tgz#28e00584f9598c0dd279f6280eee213fa0121c3c" - integrity sha512-OSeEpFJEH5dw/TtxTg4nijl4nHBbhqbKL94Xo/Y17WKIf2qJWeIk/QeXACF19lG1vMezkxqruwnTjVizaW7u7w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" - -"@babel/plugin-transform-react-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.0.0.tgz#524379e4eca5363cd10c4446ba163f093da75f3e" - integrity sha512-0TMP21hXsSUjIQJmu/r7RiVxeFrXRcMUigbKu0BLegJK9PkYodHstaszcig7zxXfaBji2LYUdtqIkHs+hgYkJQ== - dependencies: - "@babel/helper-builder-react-jsx" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" - -"@babel/plugin-transform-regenerator@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz#5b41686b4ed40bef874d7ed6a84bdd849c13e0c1" - integrity sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw== - dependencies: - regenerator-transform "^0.13.3" - -"@babel/plugin-transform-shorthand-properties@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0.tgz#85f8af592dcc07647541a0350e8c95c7bf419d15" - integrity sha512-g/99LI4vm5iOf5r1Gdxq5Xmu91zvjhEG5+yZDJW268AZELAu4J1EiFLnkSG3yuUsZyOipVOVUKoGPYwfsTymhw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-spread@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.0.0.tgz#93583ce48dd8c85e53f3a46056c856e4af30b49b" - integrity sha512-L702YFy2EvirrR4shTj0g2xQp7aNwZoWNCkNu2mcoU0uyzMl0XRwDSwzB/xp6DSUFiBmEXuyAyEN16LsgVqGGQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-sticky-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.0.0.tgz#30a9d64ac2ab46eec087b8530535becd90e73366" - integrity sha512-LFUToxiyS/WD+XEWpkx/XJBrUXKewSZpzX68s+yEOtIbdnsRjpryDw9U06gYc6klYEij/+KQVRnD3nz3AoKmjw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - -"@babel/plugin-transform-template-literals@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.0.0.tgz#084f1952efe5b153ddae69eb8945f882c7a97c65" - integrity sha512-vA6rkTCabRZu7Nbl9DfLZE1imj4tzdWcg5vtdQGvj+OH9itNNB6hxuRMHuIY8SGnEt1T9g5foqs9LnrHzsqEFg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-typeof-symbol@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.0.0.tgz#4dcf1e52e943e5267b7313bff347fdbe0f81cec9" - integrity sha512-1r1X5DO78WnaAIvs5uC48t41LLckxsYklJrZjNKcevyz83sF2l4RHbw29qrCPr/6ksFsdfRpT/ZgxNWHXRnffg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - -"@babel/plugin-transform-unicode-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.0.0.tgz#c6780e5b1863a76fe792d90eded9fcd5b51d68fc" - integrity sha512-uJBrJhBOEa3D033P95nPHu3nbFwFE9ZgXsfEitzoIXIwqAZWk7uXcg06yFKXz9FSxBH5ucgU/cYdX0IV8ldHKw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.1.3" - -"@babel/preset-env@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.1.0.tgz#e67ea5b0441cfeab1d6f41e9b5c79798800e8d11" - integrity sha512-ZLVSynfAoDHB/34A17/JCZbyrzbQj59QC1Anyueb4Bwjh373nVPq5/HMph0z+tCmcDjXDe+DlKQq9ywQuvWrQg== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-async-generator-functions" "^7.1.0" - "@babel/plugin-proposal-json-strings" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.0.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.0.0" - "@babel/plugin-syntax-async-generators" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-async-to-generator" "^7.1.0" - "@babel/plugin-transform-block-scoped-functions" "^7.0.0" - "@babel/plugin-transform-block-scoping" "^7.0.0" - "@babel/plugin-transform-classes" "^7.1.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.0.0" - "@babel/plugin-transform-dotall-regex" "^7.0.0" - "@babel/plugin-transform-duplicate-keys" "^7.0.0" - "@babel/plugin-transform-exponentiation-operator" "^7.1.0" - "@babel/plugin-transform-for-of" "^7.0.0" - "@babel/plugin-transform-function-name" "^7.1.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-modules-amd" "^7.1.0" - "@babel/plugin-transform-modules-commonjs" "^7.1.0" - "@babel/plugin-transform-modules-systemjs" "^7.0.0" - "@babel/plugin-transform-modules-umd" "^7.1.0" - "@babel/plugin-transform-new-target" "^7.0.0" - "@babel/plugin-transform-object-super" "^7.1.0" - "@babel/plugin-transform-parameters" "^7.1.0" - "@babel/plugin-transform-regenerator" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-sticky-regex" "^7.0.0" - "@babel/plugin-transform-template-literals" "^7.0.0" - "@babel/plugin-transform-typeof-symbol" "^7.0.0" - "@babel/plugin-transform-unicode-regex" "^7.0.0" - browserslist "^4.1.0" - invariant "^2.2.2" - js-levenshtein "^1.1.3" - semver "^5.3.0" - -"@babel/preset-react@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.0.0.tgz#e86b4b3d99433c7b3e9e91747e2653958bc6b3c0" - integrity sha512-oayxyPS4Zj+hF6Et11BwuBkmpgT/zMxyuZgFrMeZID6Hdh3dGlk4sHCAhdBCpuCKW2ppBfl2uCCetlrUIJRY3w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" - -"@babel/runtime@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.1.2.tgz#81c89935f4647706fc54541145e6b4ecfef4b8e3" - integrity sha512-Y3SCjmhSupzFB6wcv1KmmFucH6gDVnI30WjOcicV10ju0cZjak3Jcs67YLIXBrmZYw1xCrVeJPbycFwrqNyxpg== - dependencies: - regenerator-runtime "^0.12.0" - -"@babel/template@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.1.0.tgz#58cc9572e1bfe24fe1537fdf99d839d53e517e22" - integrity sha512-yZ948B/pJrwWGY6VxG6XRFsVTee3IQ7bihq9zFpM00Vydu6z5Xwg0C3J644kxI9WOTzd+62xcIsQ+AT1MGhqhA== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - -"@babel/template@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.1.2.tgz#090484a574fef5a2d2d7726a674eceda5c5b5644" - integrity sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.1.2" - "@babel/types" "^7.1.2" - -"@babel/traverse@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.1.0.tgz#503ec6669387efd182c3888c4eec07bcc45d91b2" - integrity sha512-bwgln0FsMoxm3pLOgrrnGaXk18sSM9JNf1/nHC/FksmNGFbYnPWY4GYCfLxyP1KRmfsxqkRpfoa6xr6VuuSxdw== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.0.0" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - debug "^3.1.0" - globals "^11.1.0" - lodash "^4.17.10" - -"@babel/types@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0.tgz#6e191793d3c854d19c6749989e3bc55f0e962118" - integrity sha512-5tPDap4bGKTLPtci2SUl/B7Gv8RnuJFuQoWx26RJobS0fFrz4reUA3JnwIM+HVHEmWE0C1mzKhDtTp8NsWY02Q== - dependencies: - esutils "^2.0.2" - lodash "^4.17.10" - to-fast-properties "^2.0.0" - -"@babel/types@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.1.2.tgz#183e7952cf6691628afdc2e2b90d03240bac80c0" - integrity sha512-pb1I05sZEKiSlMUV9UReaqsCPUpgbHHHu2n1piRm7JkuBkm6QxcaIzKu6FMnMtCbih/cEYTR+RGYYC96Yk9HAg== - dependencies: - esutils "^2.0.2" - lodash "^4.17.10" - to-fast-properties "^2.0.0" - -"@bugsnag/cuid@^3.0.0": - version "3.0.0" - resolved "http://registry.npmjs.org/@bugsnag/cuid/-/cuid-3.0.0.tgz#2ee7642a30aee6dc86f5e7f824653741e42e5c35" - integrity sha512-LOt8aaBI+KvOQGneBtpuCz3YqzyEAehd1f3nC5yr9TIYW1+IzYKa2xWS4EiMz5pPOnRPHkyyS5t/wmSmN51Gjg== - -"@bugsnag/safe-json-stringify@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@bugsnag/safe-json-stringify/-/safe-json-stringify-2.1.0.tgz#c7dd30a33bd888c39cd36d45216f7252f307ed36" - integrity sha512-tE2cPhAq+WFnA9XrfMfP+u/6L63eH7+PmONMNSXtP6kPt/iUXnwkDsxc1Q6lUP1oM3LsmWBrxn+/93M8JE6fpA== - -"@ledgerhq/hw-transport-node-hid@^4.24.0": - version "4.24.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-node-hid/-/hw-transport-node-hid-4.24.0.tgz#8457969d66819e8f7f50d5dd96527ab26cd3787d" - integrity sha512-RA3ZlRM+6y/XL/sAFKUpuLIU5tsmEpDBwJEBKC+qdzG508Vl/kBJDMuQyo6pmx/YcKZrtjfKiXXQEXP9Fgk75w== - dependencies: - "@ledgerhq/hw-transport" "^4.24.0" - lodash "^4.17.11" - node-hid "^0.7.2" - usb "^1.3.3" - -"@ledgerhq/hw-transport@^4.24.0": - version "4.24.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport/-/hw-transport-4.24.0.tgz#8def925d8c2e1f73d15128d9e27ead729870be58" - integrity sha512-L34TG1Ss7goRB+5BxtvBwUuu0CmDSIxS33oUqkpEy6rCs31k7XicV48iUGAnRnt8hNY2DvJ9WFyaOroUE9h6wQ== - dependencies: - events "^3.0.0" - -"@phc/format@^0.5.0": - version "0.5.0" - resolved "https://registry.yarnpkg.com/@phc/format/-/format-0.5.0.tgz#a99d27a83d78b3100a191412adda04315e2e3aba" - integrity sha512-JWtZ5P1bfXU0bAtTzCpOLYHDXuxSVdtL/oqz4+xa97h8w9E5IlVN333wugXVFv8vZ1hbXObKQf1ptXmFFcMByg== - dependencies: - safe-buffer "^5.1.2" - -"@types/node@^8.0.24": - version "8.10.29" - resolved "https://registry.yarnpkg.com/@types/node/-/node-8.10.29.tgz#b3a13b58dd7b0682bf1b42022bef4a5a9718f687" - integrity sha512-zbteaWZ2mdduacm0byELwtRyhYE40aK+pAanQk415gr1eRuu67x7QGOLmn8jz5zI8LDK7d0WI/oT6r5Trz4rzQ== - -"@webassemblyjs/ast@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.7.8.tgz#f31f480debeef957f01b623f27eabc695fa4fe8f" - integrity sha512-dOrtdtEyB8sInpl75yLPNksY4sRl0j/+t6aHyB/YA+ab9hV3Fo7FmG12FHzP+2MvWVAJtDb+6eXR5EZbZJ+uVg== - dependencies: - "@webassemblyjs/helper-module-context" "1.7.8" - "@webassemblyjs/helper-wasm-bytecode" "1.7.8" - "@webassemblyjs/wast-parser" "1.7.8" - -"@webassemblyjs/floating-point-hex-parser@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.8.tgz#1b3ed0e27e384032254e9322fc646dd3e70ef1b9" - integrity sha512-kn2zNKGsbql5i56VAgRYkpG+VazqHhQQZQycT2uXAazrAEDs23gy+Odkh5VblybjnwX2/BITkDtNmSO76hdIvQ== - -"@webassemblyjs/helper-api-error@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.8.tgz#a2b49c11f615e736f815ec927f035dcfa690d572" - integrity sha512-xUwxDXsd1dUKArJEP5wWM5zxgCSwZApSOJyP1XO7M8rNUChUDblcLQ4FpzTpWG2YeylMwMl1MlP5Ztryiz1x4g== - -"@webassemblyjs/helper-buffer@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.8.tgz#3fc66bfa09c1c60e824cf3d5887826fac062877d" - integrity sha512-WXiIMnuvuwlhWvVOm8xEXU9DnHaa3AgAU0ZPfvY8vO1cSsmYb2WbGbHnMLgs43vXnA7XAob9b56zuZaMkxpCBg== - -"@webassemblyjs/helper-code-frame@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.8.tgz#cc5a7e9522b70e7580df056dfd34020cf29645b0" - integrity sha512-TLQxyD9qGOIdX5LPQOPo0Ernd88U5rHkFb8WAjeMIeA0sPjCHeVPaGqUGGIXjUcblUkjuDAc07bruCcNHUrHDA== - dependencies: - "@webassemblyjs/wast-printer" "1.7.8" - -"@webassemblyjs/helper-fsm@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.8.tgz#fe4607430af466912797c21acafd3046080182ea" - integrity sha512-TjK0CnD8hAPkV5mbSp5aWl6SO1+H3WFcjWtixWoy8EMA99YnNzYhpc/WSYWhf7yrhpzkq5tZB0tvLK3Svr3IXA== - -"@webassemblyjs/helper-module-context@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.8.tgz#3c2e7ee93d14ff4768ba66fb1be42fdc9dc7160a" - integrity sha512-uCutAKR7Nm0VsFixcvnB4HhAyHouNbj0Dx1p7eRjFjXGGZ+N7ftTaG1ZbWCasAEbtwGj54LP8+lkBZdTCPmLGg== - -"@webassemblyjs/helper-wasm-bytecode@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.8.tgz#89bdb78cd6dd5209ae2ed2925de78d0f0e00b6f0" - integrity sha512-AdCCE3BMW6V34WYaKUmPgVHa88t2Z14P4/0LjLwuGkI0X6pf7nzp0CehzVVk51cKm2ymVXjl9dCG+gR1yhITIQ== - -"@webassemblyjs/helper-wasm-section@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.8.tgz#c68ef7d26a6fc12421b2e6e56f9bc810dfb33e87" - integrity sha512-BkBhYQuzyl4hgTGOKo87Vdw6f9nj8HhI7WYpI0MCC5qFa5ahrAPOGgyETVdnRbv+Rjukl9MxxfDmVcVC435lDg== - dependencies: - "@webassemblyjs/ast" "1.7.8" - "@webassemblyjs/helper-buffer" "1.7.8" - "@webassemblyjs/helper-wasm-bytecode" "1.7.8" - "@webassemblyjs/wasm-gen" "1.7.8" - -"@webassemblyjs/ieee754@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.7.8.tgz#1f37974b13cb486a9237e73ce04cac7a2f1265ed" - integrity sha512-tOarWChdG1a3y1yqCX0JMDKzrat5tQe4pV6K/TX19BcXsBLYxFQOL1DEDa5KG9syeyvCrvZ+i1+Mv1ExngvktQ== - dependencies: - "@xtuc/ieee754" "^1.2.0" - -"@webassemblyjs/leb128@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.7.8.tgz#1bee83426819192db2ea1a234b84c7ebc6d34c1f" - integrity sha512-GCYeGPgUFWJiZuP4NICbcyUQNxNLJIf476Ei+K+jVuuebtLpfvwkvYT6iTUE7oZYehhkor4Zz2g7SJ/iZaPudQ== - dependencies: - "@xtuc/long" "4.2.1" - -"@webassemblyjs/utf8@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.7.8.tgz#2b489d5cf43e0aebb93d8e2d792aff9879c61f05" - integrity sha512-9X+f0VV+xNXW2ujfIRSXBJENGE6Qh7bNVKqu3yDjTFB3ar3nsThsGBBKdTG58aXOm2iUH6v28VIf88ymPXODHA== - -"@webassemblyjs/wasm-edit@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.8.tgz#f8bdbe7088718eca27b1c349bb7c06b8a457950c" - integrity sha512-6D3Hm2gFixrfyx9XjSON4ml1FZTugqpkIz5Awvrou8fnpyprVzcm4X8pyGRtA2Piixjl3DqmX/HB1xdWyE097A== - dependencies: - "@webassemblyjs/ast" "1.7.8" - "@webassemblyjs/helper-buffer" "1.7.8" - "@webassemblyjs/helper-wasm-bytecode" "1.7.8" - "@webassemblyjs/helper-wasm-section" "1.7.8" - "@webassemblyjs/wasm-gen" "1.7.8" - "@webassemblyjs/wasm-opt" "1.7.8" - "@webassemblyjs/wasm-parser" "1.7.8" - "@webassemblyjs/wast-printer" "1.7.8" - -"@webassemblyjs/wasm-gen@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.8.tgz#7e8abf1545eae74ac6781d545c034af3cfd0c7d5" - integrity sha512-a7O/wE6eBeVKKUYgpMK7NOHmMADD85rSXLe3CqrWRDwWff5y3cSVbzpN6Qv3z6C4hdkpq9qyij1Ga1kemOZGvQ== - dependencies: - "@webassemblyjs/ast" "1.7.8" - "@webassemblyjs/helper-wasm-bytecode" "1.7.8" - "@webassemblyjs/ieee754" "1.7.8" - "@webassemblyjs/leb128" "1.7.8" - "@webassemblyjs/utf8" "1.7.8" - -"@webassemblyjs/wasm-opt@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.8.tgz#7ada6e211914728fce02ff0ff9c344edc6d41f26" - integrity sha512-3lbQ0PT81NHCdi1sR/7+SNpZadM4qYcTSr62nFFAA7e5lFwJr14M1Gi+A/Y3PgcDWOHYjsaNGPpPU0H03N6Blg== - dependencies: - "@webassemblyjs/ast" "1.7.8" - "@webassemblyjs/helper-buffer" "1.7.8" - "@webassemblyjs/wasm-gen" "1.7.8" - "@webassemblyjs/wasm-parser" "1.7.8" - -"@webassemblyjs/wasm-parser@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.8.tgz#dac47c291fb6a3e63529aecd647592cd34afbf94" - integrity sha512-rZ/zlhp9DHR/05zh1MbAjT2t624sjrPP/OkJCjXqzm7ynH+nIdNcn9Ixc+qzPMFXhIrk0rBoQ3to6sEIvHh9jQ== - dependencies: - "@webassemblyjs/ast" "1.7.8" - "@webassemblyjs/helper-api-error" "1.7.8" - "@webassemblyjs/helper-wasm-bytecode" "1.7.8" - "@webassemblyjs/ieee754" "1.7.8" - "@webassemblyjs/leb128" "1.7.8" - "@webassemblyjs/utf8" "1.7.8" - -"@webassemblyjs/wast-parser@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.7.8.tgz#f8aab9a450c048c1f9537695c89faeb92fabfba5" - integrity sha512-Q/zrvtUvzWuSiJMcSp90fi6gp2nraiHXjTV2VgAluVdVapM4gy1MQn7akja2p6eSBDQpKJPJ6P4TxRkghRS5dg== - dependencies: - "@webassemblyjs/ast" "1.7.8" - "@webassemblyjs/floating-point-hex-parser" "1.7.8" - "@webassemblyjs/helper-api-error" "1.7.8" - "@webassemblyjs/helper-code-frame" "1.7.8" - "@webassemblyjs/helper-fsm" "1.7.8" - "@xtuc/long" "4.2.1" - -"@webassemblyjs/wast-printer@1.7.8": - version "1.7.8" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.7.8.tgz#e7e965782c1912f6a965f14a53ff43d8ad0403a5" - integrity sha512-GllIthRtwTxRDAURRNXscu7Napzmdf1jt1gpiZiK/QN4fH0lSGs3OTmvdfsMNP7tqI4B3ZtfaaWRlNIQug6Xyg== - dependencies: - "@webassemblyjs/ast" "1.7.8" - "@webassemblyjs/wast-parser" "1.7.8" - "@xtuc/long" "4.2.1" - -"@xtuc/ieee754@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" - integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== - -"@xtuc/long@4.2.1": - version "4.2.1" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.1.tgz#5c85d662f76fa1d34575766c5dcd6615abcd30d8" - integrity sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g== - -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== - -accepts@~1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" - integrity sha1-63d99gEXI6OxTopywIBcjoZ0a9I= - dependencies: - mime-types "~2.1.18" - negotiator "0.6.1" - -acorn-dynamic-import@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz#901ceee4c7faaef7e07ad2a47e890675da50a278" - integrity sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg== - dependencies: - acorn "^5.0.0" - -acorn@^5.0.0, acorn@^5.6.2: - version "5.7.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" - integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== - -address@1.0.3, address@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/address/-/address-1.0.3.tgz#b5f50631f8d6cec8bd20c963963afb55e06cbce9" - integrity sha512-z55ocwKBRLryBs394Sm3ushTtBeg6VAeuku7utSoSnsJKvKcnXFIyC6vh27n3rXyxSgkJBBCAvyOn7gSUcTYjg== - -agent-base@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9" - integrity sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg== - dependencies: - es6-promisify "^5.0.0" - -ajv-errors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.0.tgz#ecf021fa108fd17dfb5e6b383f2dd233e31ffc59" - integrity sha1-7PAh+hCP0X37Xms4Py3SM+Mf/Fk= - -ajv-keywords@^3.1.0, ajv-keywords@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.2.0.tgz#e86b819c602cf8821ad637413698f1dec021847a" - integrity sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo= - -ajv@^5.3.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU= - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - -ajv@^6.1.0, ajv@^6.5.2: - version "6.5.3" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.5.3.tgz#71a569d189ecf4f4f321224fecb166f071dd90f9" - integrity sha512-LqZ9wY+fx3UMiiPd741yB2pj3hhil+hQc8taf4o2QGRFpWgZ2V5C8HA165DY9sS3fJwsk7uT7ZlFEyC3Ig3lLg== - dependencies: - fast-deep-equal "^2.0.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -ansi-align@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f" - integrity sha1-w2rsy6VjuJzrVW82kPCx2eNUf38= - dependencies: - string-width "^2.0.0" - -ansi-colors@^3.0.0: - version "3.0.5" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.0.5.tgz#cb9dc64993b64fd6945485f797fc3853137d9a7b" - integrity sha512-VVjWpkfaphxUBFarydrQ3n26zX5nIK7hcbT3/ielrvwDDyBBjuh2vuSw1P9zkPq0cfqvdw7lkYHnu+OLSfIBsg== - -ansi-escapes@^1.0.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" - integrity sha1-06ioOzGapneTZisT52HHkRQiMG4= - -ansi-escapes@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" - integrity sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw== - -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= - -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.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -any-promise@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" - integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -app-builder-bin@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-2.1.2.tgz#528ce8e543aa595210c9595f91bdf5638cecd79b" - integrity sha512-PZJspzAqB0+z60OalXChP9I05BzODd/ffDz6RvTmDG3qclr7YrnpqzvPF+T7vGVtk2nN7syuveTQROJfXcB8xA== - -app-builder-lib@20.28.4, app-builder-lib@~20.28.3: - version "20.28.4" - resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-20.28.4.tgz#0bee3366364c65d17a2aaab75b30bb10df76ece5" - integrity sha512-RY4/NJs1HCFWAOpLMivuDzbesU5VyaZVKuQllxgCNZ56+ihgO5aGexla2DVjG/bBQleWfF3DPnEsF3sbZPlpHw== - dependencies: - "7zip-bin" "~4.0.2" - app-builder-bin "2.1.2" - async-exit-hook "^2.0.1" - bluebird-lst "^1.0.5" - builder-util "6.1.3" - builder-util-runtime "4.4.1" - chromium-pickle-js "^0.2.0" - debug "^3.1.0" - ejs "^2.6.1" - electron-osx-sign "0.4.10" - electron-publish "20.28.3" - fs-extra-p "^4.6.1" - hosted-git-info "^2.7.1" - is-ci "^1.2.0" - isbinaryfile "^3.0.3" - js-yaml "^3.12.0" - lazy-val "^1.0.3" - minimatch "^3.0.4" - normalize-package-data "^2.4.0" - plist "^3.0.1" - read-config-file "3.1.2" - sanitize-filename "^1.6.1" - semver "^5.5.1" - temp-file "^3.1.3" - -aproba@^1.0.3, aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - -are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -argon2@rihardsgravis/node-argon2#prebuild-release: - version "0.19.3" - resolved "https://codeload.github.com/rihardsgravis/node-argon2/tar.gz/ae1a860bd4cf4f54643f209fdd7fcc20d97c543b" - dependencies: - "@phc/format" "^0.5.0" - any-promise "^1.3.0" - bindings "^1.3.0" - nan "^2.10.0" - prebuild-install "^5.0.0" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= - -arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= - -array-filter@~0.0.0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" - integrity sha1-fajPLiZijtcygDWB/SH2fKzS7uw= - -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= - -array-map@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" - integrity sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI= - -array-reduce@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" - integrity sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys= - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= - -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= - -asap@~2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= - -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= - -assert@^1.1.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" - integrity sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE= - dependencies: - util "0.10.3" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= - -async-each@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - integrity sha1-GdOGodntxufByF04iu28xW0zYC0= - -async-exit-hook@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/async-exit-hook/-/async-exit-hook-2.0.1.tgz#8bd8b024b0ec9b1c01cccb9af9db29bd717dfaf3" - integrity sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw== - -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== - -async@^2.5.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" - integrity sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ== - dependencies: - lodash "^4.17.10" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= - -atob@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -authenticator-cli@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/authenticator-cli/-/authenticator-cli-1.0.5.tgz#4374783c654918050711f044e7b45526631243c2" - integrity sha512-8FjXzLnytd93zE9IxtOr7/uptlxGBjQhWw6qEjPPLhfq1TqrUpaBEhPYOErtHWIPuveAgzHHEBgp2bh6GdQ6Ew== - dependencies: - authenticator "^1.1.0" - cli "^1.0.1" - qrcode-terminal "^0.12.0" - -authenticator@^1.1.0, authenticator@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/authenticator/-/authenticator-1.1.5.tgz#ebc6d01ea91b91d631c6549f8cde82ec38f487f1" - integrity sha512-eaT0Trfxka28DkljLQDxuoSn9uDTaYIoXhZMsAw3Z54fNC7BMIsvIxfG6Y5s+y02CH59IIyY3p1EOMqeIpljWQ== - dependencies: - authenticator-cli "^1.0.5" - notp "^2.0.3" - thirty-two "0.0.2" - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "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-loader@^8.0.4: - version "8.0.4" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.0.4.tgz#7bbf20cbe4560629e2e41534147692d3fecbdce6" - integrity sha512-fhBhNkUToJcW9nV46v8w87AJOwAJDz84c1CL57n3Stj73FANM/b9TbCUK4YhdOwEyZ+OxhYpdeZDNzSI29Firw== - dependencies: - find-cache-dir "^1.0.0" - loader-utils "^1.0.2" - mkdirp "^0.5.1" - util.promisify "^1.0.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" - -bail@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.3.tgz#63cfb9ddbac829b02a3128cd53224be78e6c21a3" - integrity sha512-1X8CnjFVQ+a+KW36uBNMTU5s8+v5FzeqrP7hTG5aTb4aPreSbZJlhwPon9VKMuEVgV++JM+SQrALY3kr7eswdg== - -balanced-match@^0.4.2: - version "0.4.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" - integrity sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg= - -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.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" - integrity sha1-o5mS1yNYSBGYK+XikLtqU9hnAPE= - -base64-js@^1.0.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== - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= - dependencies: - tweetnacl "^0.14.3" - -big.js@^3.1.3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" - integrity sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q== - -bignumber.js@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-4.1.0.tgz#db6f14067c140bd46624815a7916c92d9b6c24b1" - integrity sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA== - -binary-extensions@^1.0.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.12.0.tgz#c2d780f53d45bba8317a8902d4ceeaf3a6385b14" - integrity sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg== - -bindings@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.3.0.tgz#b346f6ecf6a95f5a815c5839fc7cdb22502f1ed7" - integrity sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw== - -bip32-path@^0.4.2: - version "0.4.2" - resolved "https://registry.yarnpkg.com/bip32-path/-/bip32-path-0.4.2.tgz#5db0416ad6822712f077836e2557b8697c0c7c99" - integrity sha1-XbBBataCJxLwd4NuJVe4aXwMfJk= - -bl@^1.0.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" - integrity sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA== - dependencies: - readable-stream "^2.3.5" - safe-buffer "^5.1.1" - -bluebird-lst@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/bluebird-lst/-/bluebird-lst-1.0.5.tgz#bebc83026b7e92a72871a3dc599e219cbfb002a9" - integrity sha512-Ey0bDNys5qpYPhZ/oQ9vOEvD0TYQDTILMXWP2iGfvMg7rSDde+oV4aQQgqRH+CvBFNz2BSDQnPGMUl6LKBUUQA== - dependencies: - bluebird "^3.5.1" - -bluebird@^3.5.0, bluebird@^3.5.1: - version "3.5.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.2.tgz#1be0908e054a751754549c270489c1505d4ab15a" - integrity sha512-dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg== - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: - version "4.11.8" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" - integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== - -body-parser@1.18.2: - version "1.18.2" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" - integrity sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ= - dependencies: - bytes "3.0.0" - content-type "~1.0.4" - debug "2.6.9" - depd "~1.1.1" - http-errors "~1.6.2" - iconv-lite "0.4.19" - on-finished "~2.3.0" - qs "6.5.1" - raw-body "2.3.2" - type-is "~1.6.15" - -boolbase@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= - -boxen@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b" - integrity sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw== - dependencies: - ansi-align "^2.0.0" - camelcase "^4.0.0" - chalk "^2.0.1" - cli-boxes "^1.0.0" - string-width "^2.0.0" - term-size "^1.2.0" - widest-line "^2.0.0" - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^2.3.0, 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== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= - -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.2.0" - resolved "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -browserify-rsa@^4.0.0: - version "4.0.1" - resolved "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= - dependencies: - bn.js "^4.1.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" - integrity sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= - dependencies: - bn.js "^4.1.1" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.2" - elliptic "^6.0.0" - inherits "^2.0.1" - parse-asn1 "^5.0.0" - -browserify-versionify@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/browserify-versionify/-/browserify-versionify-1.0.6.tgz#ab2dc61d6a119e627bec487598d1983b7fdb275e" - integrity sha1-qy3GHWoRnmJ77Eh1mNGYO3/bJ14= - dependencies: - find-root "^0.1.1" - through2 "0.6.3" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== - dependencies: - pako "~1.0.5" - -browserslist@4.1.1, browserslist@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.1.1.tgz#328eb4ff1215b12df6589e9ab82f8adaa4fc8cd6" - integrity sha512-VBorw+tgpOtZ1BYhrVSVTzTt/3+vSE3eFUh0N2GCFK1HffceOaf32YS/bs6WiFhjDAblAFrx85jMy3BG9fBK2Q== - dependencies: - caniuse-lite "^1.0.30000884" - electron-to-chromium "^1.3.62" - node-releases "^1.0.0-alpha.11" - -buffer-alloc-unsafe@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" - integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg== - -buffer-alloc@^1.1.0, buffer-alloc@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec" - integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow== - dependencies: - buffer-alloc-unsafe "^1.1.0" - buffer-fill "^1.0.0" - -buffer-fill@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" - integrity sha1-+PeLdniYiO858gXNY39o5wISKyw= - -buffer-from@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== - -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= - -buffer@^4.3.0: - version "4.9.1" - resolved "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" - integrity sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg= - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -bugsnag-build-reporter@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/bugsnag-build-reporter/-/bugsnag-build-reporter-1.0.0.tgz#2a71d855d5f2440aed54d1ea4e03f20aaf50cce2" - integrity sha512-uYhbiTOEahw9+ewR4GYxHsBL7OSCbA8EtBnugtT27ZTU3dDZRPJWptzrlEe7O4blTSz7YcFCmTnaG+c5Ng04Jg== - dependencies: - chalk "^2.3.0" - concat-stream "^1.6.0" - find-nearest-file "^1.1.0" - meow "^4.0.0" - minimist "^1.2.0" - pino "^4.10.3" - run-parallel "^1.1.6" - -bugsnag-js@^4.7.3: - version "4.7.3" - resolved "https://registry.yarnpkg.com/bugsnag-js/-/bugsnag-js-4.7.3.tgz#fd81eed6882b629d5f059de5bc916ecd19c82aa1" - integrity sha512-j9n6E45y8R0hx4A2IGkbOIEsDwRzZlhe+rtCfFo6RE6DgmTezeia+kqUMb4iitkSCZjEBMAPGhAe1l3vXfwbqQ== - dependencies: - "@bugsnag/cuid" "^3.0.0" - "@bugsnag/safe-json-stringify" "^2.1.0" - browserify-versionify "^1.0.6" - error-stack-parser "^2.0.2" - iserror "0.0.2" - stack-generator "^2.0.3" - -bugsnag-react@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/bugsnag-react/-/bugsnag-react-1.1.1.tgz#da210c9102acfa427a3cdd00efa8cca785b87ea8" - integrity sha512-u+aodYDZwlmPMj0kCC+nZiO0Rhw4LaJ8ve1cYzEb5gcToPjuIkOfFIQO4T7QhR96V2Uy6UdVw7e04OEPR4/0wg== - -bugsnag-sourcemaps@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/bugsnag-sourcemaps/-/bugsnag-sourcemaps-1.0.4.tgz#5b49c98edf2f931cf881dc22177cda8db8534371" - integrity sha512-AUnvubm/gDYkpdvw/dq/oQlC2zR9EvZUukpr4bgeBSEFGLnE1sCs4GINXuw0HBgsYKJ3dq5zRFyndtGXK+5Odw== - dependencies: - graceful-fs "^4.1.11" - listr "^0.12.0" - meow "^3.7.0" - rc "^1.2.1" - read-pkg-up "^2.0.0" - request "^2.79.0" - -builder-util-runtime@4.4.1, builder-util-runtime@^4.4.1: - version "4.4.1" - resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-4.4.1.tgz#2770d03241e51fde46acacc7ed3ed8a9f45f02cb" - integrity sha512-8L2pbL6D3VdI1f8OMknlZJpw0c7KK15BRz3cY77AOUElc4XlCv2UhVV01jJM7+6Lx7henaQh80ALULp64eFYAQ== - dependencies: - bluebird-lst "^1.0.5" - debug "^3.1.0" - fs-extra-p "^4.6.1" - sax "^1.2.4" - -builder-util-runtime@~5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-5.0.0.tgz#1f35cc28c87ca7de336efa098c6d3fd550db15a5" - integrity sha512-mTyLqmzdPzavKQNAfxcGu6kqaDiPCtFKJG+nNO9SYfL6lY7VgTUW+45iXhowc5ElmPj0eSTDaIGlScxVMwFUEA== - dependencies: - bluebird-lst "^1.0.5" - debug "^4.1.0" - fs-extra-p "^4.6.1" - sax "^1.2.4" - -builder-util@6.1.3, builder-util@~6.1.3: - version "6.1.3" - resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-6.1.3.tgz#6bd3a5253c99afa31e3574e6fc3b796e218f8cfd" - integrity sha512-MXeARNff9KHlzJYGJcAhLI/tpE57PmUnleaYfL22IE+viRt192Yr3wQL444ztsA+LUHJ8d12moUoG00jh1hfLA== - dependencies: - "7zip-bin" "~4.0.2" - app-builder-bin "2.1.2" - bluebird-lst "^1.0.5" - builder-util-runtime "^4.4.1" - chalk "^2.4.1" - debug "^3.1.0" - fs-extra-p "^4.6.1" - is-ci "^1.2.0" - js-yaml "^3.12.0" - lazy-val "^1.0.3" - semver "^5.5.1" - source-map-support "^0.5.9" - stat-mode "^0.2.2" - temp-file "^3.1.3" - -builtin-modules@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= - -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= - -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= - -cacache@^10.0.4: - version "10.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.4.tgz#6452367999eff9d4188aefd9a14e9d7c6a263460" - integrity sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA== - dependencies: - bluebird "^3.5.1" - chownr "^1.0.1" - glob "^7.1.2" - graceful-fs "^4.1.11" - lru-cache "^4.1.1" - mississippi "^2.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.2" - ssri "^5.2.4" - unique-filename "^1.1.0" - y18n "^4.0.0" - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -camel-case@3.0.x: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" - integrity sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M= - dependencies: - no-case "^2.2.0" - upper-case "^1.1.1" - -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc= - dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" - -camelcase-keys@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-4.2.0.tgz#a2aa5fb1af688758259c32c141426d78923b9b77" - integrity sha1-oqpfsa9oh1glnDLBQUJteJI7m3c= - dependencies: - camelcase "^4.1.0" - map-obj "^2.0.0" - quick-lru "^1.0.0" - -camelcase@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= - -camelcase@^4.0.0, camelcase@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= - -caniuse-lite@^1.0.30000884: - version "1.0.30000885" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000885.tgz#e889e9f8e7e50e769f2a49634c932b8aee622984" - integrity sha512-cXKbYwpxBLd7qHyej16JazPoUacqoVuDhvR61U7Fr5vSxMUiodzcYa1rQYRYfZ5GexV03vGZHd722vNPLjPJGQ== - -capture-stack-trace@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz#a6c0bbe1f38f3aa0b92238ecb6ff42c344d4135d" - integrity sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw== - -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@2.4.1, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.3.0, chalk@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" - integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: - version "1.1.3" - resolved "http://registry.npmjs.org/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" - -character-entities-legacy@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.2.tgz#7c6defb81648498222c9855309953d05f4d63a9c" - integrity sha512-9NB2VbXtXYWdXzqrvAHykE/f0QJxzaKIpZ5QzNZrrgQ7Iyxr2vnfS8fCBNVW9nUEZE0lo57nxKRqnzY/dKrwlA== - -character-entities@^1.0.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.2.tgz#58c8f371c0774ef0ba9b2aca5f00d8f100e6e363" - integrity sha512-sMoHX6/nBiy3KKfC78dnEalnpn0Az0oSNvqUWYTtYrhRI5iUIYsROU48G+E+kMFQzqXaJ8kHJZ85n7y6/PHgwQ== - -character-reference-invalid@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.2.tgz#21e421ad3d84055952dab4a43a04e73cd425d3ed" - integrity sha512-7I/xceXfKyUJmSAn/jw8ve/9DyOP7XxufNYLI9Px7CmsKgEUaZLUTax6nZxGQtaoiZCjpu6cHPj20xC/vqRReQ== - -chardet@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - -chokidar@^2.0.0, chokidar@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.4.tgz#356ff4e2b0e8e43e322d18a372460bbcf3accd26" - integrity sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.0" - braces "^2.3.0" - glob-parent "^3.1.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - lodash.debounce "^4.0.8" - normalize-path "^2.1.1" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - upath "^1.0.5" - optionalDependencies: - fsevents "^1.2.2" - -chownr@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" - integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== - -chrome-trace-event@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz#45a91bd2c20c9411f0963b5aaeb9a1b95e09cc48" - integrity sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A== - dependencies: - tslib "^1.9.0" - -chromium-pickle-js@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz#04a106672c18b085ab774d983dfa3ea138f22205" - integrity sha1-BKEGZywYsIWrd02YPfo+oTjyIgU= - -ci-info@^1.5.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.5.1.tgz#17e8eb5de6f8b2b6038f0cbb714d410bfa9f3030" - integrity sha512-fKFIKXaYiL1exImwJ0AhR/6jxFPSKQBk2ayV5NiNoruUs2+rxC2kNw0EG+1Z9dugZRdCrppskQ8DN2cyaUM1Hw== - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -classnames@^2.2.5, classnames@^2.2.6, classnames@~2.2.5: - version "2.2.6" - resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce" - integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q== - -clean-css@4.2.x: - version "4.2.1" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.1.tgz#2d411ef76b8569b6d0c84068dabe85b0aa5e5c17" - integrity sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g== - dependencies: - source-map "~0.6.0" - -cli-boxes@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" - integrity sha1-T6kXw+WclKAEzWH47lCdplFocUM= - -cli-cursor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" - integrity sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc= - dependencies: - restore-cursor "^1.0.1" - -cli-cursor@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" - integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= - dependencies: - restore-cursor "^2.0.0" - -cli-spinners@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-0.1.2.tgz#bb764d88e185fb9e1e6a2a1f19772318f605e31c" - integrity sha1-u3ZNiOGF+54eaiofGXcjGPYF4xw= - -cli-truncate@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" - integrity sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ= - dependencies: - slice-ansi "0.0.4" - string-width "^1.0.1" - -cli-width@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" - integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= - -cli@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cli/-/cli-1.0.1.tgz#22817534f24bfa4950c34d532d48ecbc621b8c14" - integrity sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ= - dependencies: - exit "0.1.2" - glob "^7.1.1" - -cliui@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" - integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" - -clone-deep@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" - integrity sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ== - dependencies: - for-own "^1.0.0" - is-plain-object "^2.0.4" - kind-of "^6.0.0" - shallow-clone "^1.0.0" - -clone@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - -collapse-white-space@^1.0.2: - version "1.0.4" - resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.4.tgz#ce05cf49e54c3277ae573036a26851ba430a0091" - integrity sha512-YfQ1tAUZm561vpYD+5eyWN8+UsceQbSrqqlc/6zDY2gtAE+uZLSdkkovhnGpmCThsvKBFakq4EdY/FF93E8XIw== - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@~0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" - integrity sha1-vbbGnOZg+t/+CwAHzER+G59ygr0= - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -combined-stream@1.0.6: - version "1.0.6" - resolved "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" - integrity sha1-cj599ugBrFYTETp+RFqbactjKBg= - dependencies: - delayed-stream "~1.0.0" - -combined-stream@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.7.tgz#2d1d24317afb8abe95d6d2c0b07b57813539d828" - integrity sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w== - dependencies: - delayed-stream "~1.0.0" - -commander@2.17.x, commander@~2.17.1: - version "2.17.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" - integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== - -commander@~2.13.0: - version "2.13.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" - integrity sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA== - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - -compare-version@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/compare-version/-/compare-version-0.1.2.tgz#0162ec2d9351f5ddd59a9202cba935366a725080" - integrity sha1-AWLsLZNR9d3VmpICy6k1NmpyUIA= - -component-emitter@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" - integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -concat-stream@1.6.2, concat-stream@^1.5.0, concat-stream@^1.6.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -concurrently@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-4.0.1.tgz#f6310fbadf2f476dd95df952edb5c0ab789f672c" - integrity sha512-D8UI+mlI/bfvrA57SeKOht6sEpb01dKk+8Yee4fbnkk1Ue8r3S+JXoEdFZIpzQlXJGtnxo47Wvvg/kG4ba3U6Q== - dependencies: - chalk "^2.4.1" - date-fns "^1.23.0" - lodash "^4.17.10" - read-pkg "^4.0.1" - rxjs "6.2.2" - spawn-command "^0.0.2-1" - supports-color "^4.5.0" - tree-kill "^1.1.0" - yargs "^12.0.1" - -configstore@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.1.2.tgz#c6f25defaeef26df12dd33414b001fe81a543f8f" - integrity sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw== - dependencies: - dot-prop "^4.1.0" - graceful-fs "^4.1.2" - make-dir "^1.0.0" - unique-string "^1.0.0" - write-file-atomic "^2.0.0" - xdg-basedir "^3.0.0" - -console-browserify@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" - integrity sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA= - dependencies: - date-now "^0.1.4" - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= - -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= - -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - -convert-source-map@^1.1.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== - dependencies: - safe-buffer "~5.1.1" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= - -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= - -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= - -copy-webpack-plugin@^4.5.2: - version "4.5.2" - resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-4.5.2.tgz#d53444a8fea2912d806e78937390ddd7e632ee5c" - integrity sha512-zmC33E8FFSq3AbflTvqvPvBo621H36Afsxlui91d+QyZxPIuXghfnTsa1CuqiAaCPgJoSUWfTFbKJnadZpKEbQ== - dependencies: - cacache "^10.0.4" - find-cache-dir "^1.0.0" - globby "^7.1.1" - is-glob "^4.0.0" - loader-utils "^1.1.0" - minimatch "^3.0.4" - p-limit "^1.0.0" - serialize-javascript "^1.4.0" - -core-js@^1.0.0: - version "1.2.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" - integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY= - -core-js@^2.4.0, core-js@~2.5.1: - version "2.5.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" - integrity sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw== - -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= - -create-ecdh@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" - integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== - dependencies: - bn.js "^4.1.0" - elliptic "^6.0.0" - -create-error-class@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" - integrity sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y= - dependencies: - capture-stack-trace "^1.0.0" - -create-hash@^1.1.0, create-hash@^1.1.2: - version "1.2.0" - resolved "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: - version "1.1.7" - resolved "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -create-react-context@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.2.3.tgz#9ec140a6914a22ef04b8b09b7771de89567cb6f3" - integrity sha512-CQBmD0+QGgTaxDL3OX1IDXYqjkp2It4RIbcb99jS6AEg27Ga+a9G3JtK6SIu0HBwPLZlmwt9F7UwWA4Bn92Rag== - dependencies: - fbjs "^0.8.0" - gud "^1.0.0" - -cross-env@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-5.2.0.tgz#6ecd4c015d5773e614039ee529076669b9d126f2" - integrity sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg== - dependencies: - cross-spawn "^6.0.5" - is-windows "^1.0.0" - -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== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= - dependencies: - lru-cache "^4.0.1" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-unzip@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/cross-unzip/-/cross-unzip-0.0.2.tgz#5183bc47a09559befcf98cc4657964999359372f" - integrity sha1-UYO8R6CVWb78+YzEZXlkmZNZNy8= - -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" - -crypto-js@^3.1.9-1: - version "3.1.9-1" - resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.1.9-1.tgz#fda19e761fc077e01ffbfdc6e9fdfc59e8806cd8" - integrity sha1-/aGedh/Ad+Af+/3G6f38WeiAbNg= - -crypto-random-string@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e" - integrity sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4= - -css-loader@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-1.0.0.tgz#9f46aaa5ca41dbe31860e3b62b8e23c42916bf56" - integrity sha512-tMXlTYf3mIMt3b0dDCOQFJiVvxbocJ5Ho577WiGPYPZcqVEO218L2iU22pDXzkTZCLDE+9AmGSUkWxeh/nZReA== - dependencies: - babel-code-frame "^6.26.0" - css-selector-tokenizer "^0.7.0" - icss-utils "^2.1.0" - loader-utils "^1.0.2" - lodash.camelcase "^4.3.0" - postcss "^6.0.23" - postcss-modules-extract-imports "^1.2.0" - postcss-modules-local-by-default "^1.2.0" - postcss-modules-scope "^1.1.0" - postcss-modules-values "^1.3.0" - postcss-value-parser "^3.3.0" - source-list-map "^2.0.0" - -css-select@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= - dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" - -css-selector-tokenizer@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz#e6988474ae8c953477bf5e7efecfceccd9cf4c86" - integrity sha1-5piEdK6MlTR3v15+/s/OzNnPTIY= - dependencies: - cssesc "^0.1.0" - fastparse "^1.1.1" - regexpu-core "^1.0.0" - -css-what@2.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" - integrity sha1-lGfQMsOM+u+58teVASUwYvh/ob0= - -cssesc@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" - integrity sha1-yBSQPkViM3GgR3tAEJqq++6t27Q= - -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= - dependencies: - array-find-index "^1.0.1" - -cyclist@~0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" - integrity sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA= - -d3-array@^1.2.0: - version "1.2.4" - resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.4.tgz#635ce4d5eea759f6f605863dbcfc30edc737f71f" - integrity sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw== - -d3-collection@1: - version "1.0.7" - resolved "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.7.tgz#349bd2aa9977db071091c13144d5e4f16b5b310e" - integrity sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A== - -d3-color@1: - version "1.2.3" - resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-1.2.3.tgz#6c67bb2af6df3cc8d79efcc4d3a3e83e28c8048f" - integrity sha512-x37qq3ChOTLd26hnps36lexMRhNXEtVxZ4B25rL0DVdDsGQIJGB18S7y9XDwlDD6MD/ZBzITCf4JjGMM10TZkw== - -d3-format@1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-1.3.2.tgz#6a96b5e31bcb98122a30863f7d92365c00603562" - integrity sha512-Z18Dprj96ExragQ0DeGi+SYPQ7pPfRMtUXtsg/ChVIKNBCzjO8XYJvRTC1usblx52lqge56V5ect+frYTQc8WQ== - -d3-interpolate@1, d3-interpolate@~1.3.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-1.3.2.tgz#417d3ebdeb4bc4efcc8fd4361c55e4040211fd68" - integrity sha512-NlNKGopqaz9qM1PXh9gBF1KSCVh+jSFErrSlD/4hybwoNX/gt1d8CDbDW+3i+5UOHhjC6s6nMvRxcuoMVNgL2w== - dependencies: - d3-color "1" - -d3-path@1: - version "1.0.7" - resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.7.tgz#8de7cd693a75ac0b5480d3abaccd94793e58aae8" - integrity sha512-q0cW1RpvA5c5ma2rch62mX8AYaiLX0+bdaSM2wxSU9tXjU4DNvkx9qiUvjkuWCj3p22UO/hlPivujqMiR9PDzA== - -d3-scale@~2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-2.1.2.tgz#4e932b7b60182aee9073ede8764c98423e5f9a94" - integrity sha512-bESpd64ylaKzCDzvULcmHKZTlzA/6DGSVwx7QSDj/EnX9cpSevsdiwdHFYI9ouo9tNBbV3v5xztHS2uFeOzh8Q== - dependencies: - d3-array "^1.2.0" - d3-collection "1" - d3-format "1" - d3-interpolate "1" - d3-time "1" - d3-time-format "2" - -d3-shape@~1.2.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.2.2.tgz#f9dba3777a5825f9a8ce8bc928da08c17679e9a7" - integrity sha512-hUGEozlKecFZ2bOSNt7ENex+4Tk9uc/m0TtTEHBvitCBxUNjhzm5hS2GrrVRD/ae4IylSmxGeqX5tWC2rASMlQ== - dependencies: - d3-path "1" - -d3-time-format@2: - version "2.1.3" - resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-2.1.3.tgz#ae06f8e0126a9d60d6364eac5b1533ae1bac826b" - integrity sha512-6k0a2rZryzGm5Ihx+aFMuO1GgelgIz+7HhB4PH4OEndD5q2zGn1mDfRdNrulspOfR6JXkb2sThhDK41CSK85QA== - dependencies: - d3-time "1" - -d3-time@1: - version "1.0.10" - resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-1.0.10.tgz#8259dd71288d72eeacfd8de281c4bf5c7393053c" - integrity sha512-hF+NTLCaJHF/JqHN5hE8HVGAXPStEq6/omumPE/SxyHVrR7/qQxusFDo0t0c/44+sCGHthC7yNGFZIEgju0P8g== - -dart-sass@^1.14.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dart-sass/-/dart-sass-1.14.1.tgz#d8a65ccb90a1b0bb71154c1ed6df2ecfc2dbcd16" - integrity sha512-SYbca+jIhw7/Or8j52V9xBGvSoPmi3g367CDD9HwOoBHn47E2dbvbDGDawkLNjg604xKj4VQCHmQomrjNohHvw== - dependencies: - chokidar "^2.0.0" - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - -date-fns@^1.23.0, date-fns@^1.27.2: - version "1.29.0" - resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.29.0.tgz#12e609cdcb935127311d04d33334e2960a2a54e6" - integrity sha512-lbTXWZ6M20cWH8N9S6afb0SBm6tMk+uUg6z3MqHPKE9atmsY3kJkTm8vKe93izJ2B2+q5MV990sM2CHgtAZaOw== - -date-now@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" - integrity sha1-6vQ5/U1ISK105cx9vvIAZyueNFs= - -debug@2.6.9, debug@^2.1.2, debug@^2.1.3, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8: - 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.0.0, debug@^3.1.0: - version "3.2.5" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.5.tgz#c2418fbfd7a29f4d4f70ff4cea604d4b64c46407" - integrity sha512-D61LaDQPQkxJ5AUM2mbSJRbPkNs/TmdmOeLAi1hgDkpDfIfetSrjmWhccwtuResSwMbACjx/xXQofvM9CE/aeg== - dependencies: - ms "^2.1.1" - -debug@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.0.tgz#373687bffa678b38b1cd91f861b63850035ddc87" - integrity sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg== - dependencies: - ms "^2.1.1" - -decamelize-keys@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" - integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= - dependencies: - decamelize "^1.1.0" - map-obj "^1.0.0" - -decamelize@^1.1.0, decamelize@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decamelize@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-2.0.0.tgz#656d7bbc8094c4c788ea53c5840908c9c7d063c7" - integrity sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg== - dependencies: - xregexp "4.0.0" - -decimal.js-light@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/decimal.js-light/-/decimal.js-light-2.4.1.tgz#3260d025fa504f30b94b0ef8721f0b4d37dcfc72" - integrity sha512-OToPy7ssm+ha36h4Af2Yyh3ky51GcKmirdTcyQ1zmjCzV8/M6kqJqjOYMSxWAfm311mtOWLZPnD13JcQngr3vw== - -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= - -decompress-response@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" - integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= - dependencies: - mimic-response "^1.0.0" - -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - -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== - dependencies: - object-keys "^1.0.12" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= - -depd@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" - integrity sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k= - -depd@~1.1.1, depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - -des.js@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" - integrity sha1-wHTS4qpqipoH29YfmhXCzYPsjsw= - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= - -detect-libc@^1.0.2, detect-libc@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - -detect-port-alt@1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" - integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== - dependencies: - address "^1.0.1" - debug "^2.6.0" - -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -dir-glob@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" - integrity sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag== - dependencies: - arrify "^1.0.1" - path-type "^3.0.0" - -dmg-builder@5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-5.3.1.tgz#b4d66d1dd010e1c9e7a5787bf1369e8157cac3cf" - integrity sha512-/+vtqlgvTtha/4Gc76XIRKS2KzYO58sTWXhZ/kgfNr05ZXY6bIw26v7xDu8ZBpTYnfWI09JRZTMv1yIXT/vvfg== - dependencies: - app-builder-lib "~20.28.3" - bluebird-lst "^1.0.5" - builder-util "~6.1.3" - fs-extra-p "^4.6.1" - iconv-lite "^0.4.24" - js-yaml "^3.12.0" - parse-color "^1.0.0" - sanitize-filename "^1.6.1" - -dom-converter@~0.1: - version "0.1.4" - resolved "http://registry.npmjs.org/dom-converter/-/dom-converter-0.1.4.tgz#a45ef5727b890c9bffe6d7c876e7b19cb0e17f3b" - integrity sha1-pF71cnuJDJv/5tfIduexnLDhfzs= - dependencies: - utila "~0.3" - -dom-helpers@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-3.3.1.tgz#fc1a4e15ffdf60ddde03a480a9c0fece821dd4a6" - integrity sha512-2Sm+JaYn74OiTM2wHvxJOo3roiq/h25Yi69Fqk269cNUwIXsCvATB6CRSFC9Am/20G2b28hGv/+7NiWydIrPvg== - -dom-serializer@0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" - integrity sha1-BzxpdUbOB4DOI75KKOKT5AvDDII= - dependencies: - domelementtype "~1.1.1" - entities "~1.1.1" - -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== - -domelementtype@1, domelementtype@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" - integrity sha1-sXrtguirWeUt2cGbF1bg/BhyBMI= - -domelementtype@~1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" - integrity sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs= - -domhandler@2.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594" - integrity sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ= - dependencies: - domelementtype "1" - -domhandler@^2.3.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" - integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== - dependencies: - domelementtype "1" - -domutils@1.1: - version "1.1.6" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485" - integrity sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU= - dependencies: - domelementtype "1" - -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= - dependencies: - dom-serializer "0" - domelementtype "1" - -domutils@^1.5.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== - dependencies: - dom-serializer "0" - domelementtype "1" - -dot-prop@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" - integrity sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ== - dependencies: - is-obj "^1.0.0" - -dotenv-expand@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-4.2.0.tgz#def1f1ca5d6059d24a766e587942c21106ce1275" - integrity sha1-3vHxyl1gWdJKdm5YeULCEQbOEnU= - -dotenv@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-6.0.0.tgz#24e37c041741c5f4b25324958ebbc34bca965935" - integrity sha512-FlWbnhgjtwD+uNLUGHbMykMOYQaTivdHEmYwAKFjn6GKe/CqY0fNae93ZHTd20snh9ZLr8mTzIL9m0APQ1pjQg== - -duplexer3@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" - integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= - -duplexer@^0.1.1: - version "0.1.1" - resolved "http://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" - integrity sha1-rOb/gIwc5mtX0ev5eXessCM0z8E= - -duplexify@^3.4.2, duplexify@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.6.0.tgz#592903f5d80b38d037220541264d69a198fb3410" - integrity sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= - -ejs@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.6.1.tgz#498ec0d495655abc6f23cd61868d926464071aa0" - integrity sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ== - -electron-builder@^20.28.4: - version "20.28.4" - resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-20.28.4.tgz#c9355b92b0971d51aaed0c945d2944bac41e9fbf" - integrity sha512-JMOzMfx9BrC9SJr6+UacuvQZmuodL02Zua8iFn0l5bv32GkWcNj1D6FwybV33BpsmdQ8sF1SkQj+7L+FEIxang== - dependencies: - app-builder-lib "20.28.4" - bluebird-lst "^1.0.5" - builder-util "6.1.3" - builder-util-runtime "4.4.1" - chalk "^2.4.1" - dmg-builder "5.3.1" - fs-extra-p "^4.6.1" - is-ci "^1.2.0" - lazy-val "^1.0.3" - read-config-file "3.1.2" - sanitize-filename "^1.6.1" - update-notifier "^2.5.0" - yargs "^12.0.1" - -electron-devtools-installer@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/electron-devtools-installer/-/electron-devtools-installer-2.2.4.tgz#261a50337e37121d338b966f07922eb4939a8763" - integrity sha512-b5kcM3hmUqn64+RUcHjjr8ZMpHS2WJ5YO0pnG9+P/RTdx46of/JrEjuciHWux6pE+On6ynWhHJF53j/EDJN0PA== - dependencies: - "7zip" "0.0.6" - cross-unzip "0.0.2" - rimraf "^2.5.2" - semver "^5.3.0" - -electron-download@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/electron-download/-/electron-download-4.1.1.tgz#02e69556705cc456e520f9e035556ed5a015ebe8" - integrity sha512-FjEWG9Jb/ppK/2zToP+U5dds114fM1ZOJqMAR4aXXL5CvyPE9fiqBK/9YcwC9poIFQTEJk/EM/zyRwziziRZrg== - dependencies: - debug "^3.0.0" - env-paths "^1.0.0" - fs-extra "^4.0.1" - minimist "^1.2.0" - nugget "^2.0.1" - path-exists "^3.0.0" - rc "^1.2.1" - semver "^5.4.1" - sumchecker "^2.0.2" - -electron-is-dev@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/electron-is-dev/-/electron-is-dev-0.3.0.tgz#14e6fda5c68e9e4ecbeff9ccf037cbd7c05c5afe" - integrity sha1-FOb9pcaOnk7L7/nM8DfL18BcWv4= - -electron-osx-sign@0.4.10: - version "0.4.10" - resolved "https://registry.yarnpkg.com/electron-osx-sign/-/electron-osx-sign-0.4.10.tgz#be4f3b89b2a75a1dc5f1e7249081ab2929ca3a26" - integrity sha1-vk87ibKnWh3F8eckkIGrKSnKOiY= - dependencies: - bluebird "^3.5.0" - compare-version "^0.1.2" - debug "^2.6.8" - isbinaryfile "^3.0.2" - minimist "^1.2.0" - plist "^2.1.0" - -electron-publish@20.28.3: - version "20.28.3" - resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-20.28.3.tgz#0cc360ecaffd16e22780ee1630e0bd88fe6395e2" - integrity sha512-/2t5zk9EKgH7p7rFZ+ynTKLmpKGF9bktMP2UR6u4bbPz9w4r3WEUbPOeZ1TLqUCAqdfZECcj4ThjrlcAJTghCA== - dependencies: - bluebird-lst "^1.0.5" - builder-util "~6.1.3" - builder-util-runtime "^4.4.1" - chalk "^2.4.1" - fs-extra-p "^4.6.1" - lazy-val "^1.0.3" - mime "^2.3.1" - -electron-screenshot@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/electron-screenshot/-/electron-screenshot-1.0.5.tgz#8cd46c4eb3d86b0401b0408228bdce033c535369" - integrity sha512-nTLZZ8urMraLwL0KYb5dz2o76cRPx+6WBQ0sOujqqfcUe1k/alj0UoLPmQpFs8VuIccF4K7ZNpeK95h0ob8p6Q== - -electron-settings@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/electron-settings/-/electron-settings-3.2.0.tgz#01461e153f95b6f18adbe0c360c70898eb0f43c3" - integrity sha512-7U+vDKd5Gch4Z9K6FjGq80eB3Anwz2GuPc2h/6hOiuvZrS1w+UNPcAA0oAU8G1s9sWAVEadCsr4ZJR6J4iTdzA== - dependencies: - clone "^2.1.1" - jsonfile "^4.0.0" - -electron-to-chromium@^1.3.62: - version "1.3.69" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.69.tgz#0fd5d4bfd89ba6a431a144375245aea65073e3ca" - integrity sha512-BXOfu4dyeouzx9CuSnU2fV6ElZYUlVxADxkJI4jUl1DlmkmaaEqDhgm7balB5yR0jMtk2p+h68geOv9z1/F10g== - -electron-updater@3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/electron-updater/-/electron-updater-3.0.4.tgz#de3f394038a29c5d06815a118279528b039db03f" - integrity sha512-/JDbjy7gjrB6LHGCswACKDynE/QWNs89NnyiWEF2xXr8FVp6v0k/3B3wQI6ux2oCJAvxr14+kpi+xz5wkWnkuQ== - dependencies: - bluebird-lst "^1.0.5" - builder-util-runtime "~4.4.1" - electron-is-dev "^0.3.0" - fs-extra-p "^4.6.1" - js-yaml "^3.12.0" - lazy-val "^1.0.3" - lodash.isequal "^4.5.0" - semver "^5.5.0" - source-map-support "^0.5.6" - -electron@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/electron/-/electron-3.0.3.tgz#2857ed8d37c1b46e0a75a72684800252255f3243" - integrity sha512-5ypkMO368UbWd1e0ZwKaflYLXSHSw2wAvC5/yApv03pX/KV3uD/2/qF7rW841H9I3QPmS03YZ6UZmlQV/fNczw== - dependencies: - "@types/node" "^8.0.24" - electron-download "^4.1.0" - extract-zip "^1.0.3" - -elegant-spinner@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" - integrity sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4= - -elliptic@^6.0.0: - version "6.4.1" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.1.tgz#c2d0b7776911b86722c632c3c06c60f2f819939a" - integrity sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ== - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= - -encoding@^0.1.11: - version "0.1.12" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" - integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= - dependencies: - iconv-lite "~0.4.13" - -end-of-stream@^1.0.0, 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" - -enhanced-resolve@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" - integrity sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.4.0" - tapable "^1.0.0" - -entangled-node@rihardsgravis/entangled-node: - version "0.1.1" - resolved "https://codeload.github.com/rihardsgravis/entangled-node/tar.gz/6a5e585f24d2fd8bad38a31ed765ad50f8081653" - dependencies: - nan "^2.10.0" - prebuild-install "^5.0.0" - -entities@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - -entities@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" - integrity sha1-blwtClYhtdra7O+AuQ7ftc13cvA= - -env-paths@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-1.0.0.tgz#4168133b42bb05c38a35b1ae4397c8298ab369e0" - integrity sha1-QWgTO0K7BcOKNbGuQ5fIKYqzaeA= - -errno@^0.1.3, errno@~0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" - integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg== - dependencies: - prr "~1.0.1" - -error-ex@^1.2.0, error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -error-stack-parser@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.0.2.tgz#4ae8dbaa2bf90a8b450707b9149dcabca135520d" - integrity sha512-E1fPutRDdIj/hohG0UpT5mayXNCxXP9d+snxFsPU9X0XgccOumKraa3juDMwTUyi7+Bu5+mCGagjg4IYeNbOdw== - dependencies: - stackframe "^1.0.4" - -es-abstract@^1.5.1: - version "1.12.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.12.0.tgz#9dbbdd27c6856f0001421ca18782d786bf8a6165" - integrity sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA== - dependencies: - es-to-primitive "^1.1.1" - function-bind "^1.1.1" - has "^1.0.1" - is-callable "^1.1.3" - is-regex "^1.0.4" - -es-to-primitive@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" - integrity sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0= - dependencies: - is-callable "^1.1.1" - is-date-object "^1.0.1" - is-symbol "^1.0.1" - -es6-promise@^4.0.3: - version "4.2.5" - resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.5.tgz#da6d0d5692efb461e082c14817fe2427d8f5d054" - integrity sha512-n6wvpdE43VFtJq+lUDYDBFUwV8TZbuGXLV4D6wKafg13ldznKsyEvatubnmUe31zcvelSzOHF+XbaT+Bl9ObDg== - -es6-promisify@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" - integrity sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM= - dependencies: - es6-promise "^4.0.3" - -escape-html@~1.0.3: - version "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.5, escape-string-regexp@^1.0.2, 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= - -eslint-scope@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.0.tgz#50bf3071e9338bcdc43331794a0cb533f0136172" - integrity sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== - dependencies: - estraverse "^4.1.0" - -estraverse@^4.1.0, estraverse@^4.1.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= - -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= - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= - -events@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= - -events@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.0.0.tgz#9a0a0dfaf62893d92b875b8f2698ca4114973e88" - integrity sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA== - -eventsource@0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232" - integrity sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI= - dependencies: - original ">=0.0.5" - -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -execa@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50" - integrity sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw== - dependencies: - cross-spawn "^6.0.0" - get-stream "^3.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" - -execa@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" - integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.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-hook@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" - integrity sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g= - -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@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expand-template@^1.0.2: - version "1.1.1" - resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-1.1.1.tgz#981f188c0c3a87d2e28f559bc541426ff94f21dd" - integrity sha512-cebqLtV8KOZfw0UI8TEFWxtczxxC1jvyUvx6H4fyp1K1FN7A4Q+uggVUlOsI1K8AGU0rwOGqP8nCapdrw8CYQg== - -expand-tilde@^2.0.0, expand-tilde@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" - integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI= - dependencies: - homedir-polyfill "^1.0.1" - -express@^4.16.3: - version "4.16.3" - resolved "http://registry.npmjs.org/express/-/express-4.16.3.tgz#6af8a502350db3246ecc4becf6b5a34d22f7ed53" - integrity sha1-avilAjUNsyRuzEvs9rWjTSL37VM= - dependencies: - accepts "~1.3.5" - array-flatten "1.1.1" - body-parser "1.18.2" - content-disposition "0.5.2" - content-type "~1.0.4" - cookie "0.3.1" - cookie-signature "1.0.6" - debug "2.6.9" - depd "~1.1.2" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "1.1.1" - fresh "0.5.2" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "~2.3.0" - parseurl "~1.3.2" - path-to-regexp "0.1.7" - proxy-addr "~2.0.3" - qs "6.5.1" - range-parser "~1.2.0" - safe-buffer "5.1.1" - send "0.16.2" - serve-static "1.13.2" - setprototypeof "1.1.0" - statuses "~1.4.0" - type-is "~1.6.16" - utils-merge "1.0.1" - vary "~1.1.2" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@^3.0.0, extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -external-editor@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27" - integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA== - dependencies: - chardet "^0.7.0" - iconv-lite "^0.4.24" - tmp "^0.0.33" - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extract-zip@^1.0.3, extract-zip@^1.6.6: - version "1.6.7" - resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.7.tgz#a840b4b8af6403264c8db57f4f1a74333ef81fe9" - integrity sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k= - dependencies: - concat-stream "1.6.2" - debug "2.6.9" - mkdirp "0.5.1" - yauzl "2.4.1" - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= - -fast-deep-equal@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" - integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ= - -fast-deep-equal@^2.0.1: - version "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-json-parse@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/fast-json-parse/-/fast-json-parse-1.0.3.tgz#43e5c61ee4efa9265633046b770fb682a7577c4d" - integrity sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw== - -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" - integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= - -fast-safe-stringify@^1.0.8, fast-safe-stringify@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-1.2.3.tgz#9fe22c37fb2f7f86f06b8f004377dbf8f1ee7bc1" - integrity sha512-QJYT/i0QYoiZBQ71ivxdyTqkwKkQ0oxACXHYxH2zYHJEgzi2LsbjgvtzTbLi1SZcF190Db2YP7I7eTsU2egOlw== - -fastparse@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8" - integrity sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg= - -faye-websocket@~0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" - integrity sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg= - dependencies: - websocket-driver ">=0.5.1" - -fbjs@^0.8.0: - version "0.8.17" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd" - integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90= - dependencies: - core-js "^1.0.0" - isomorphic-fetch "^2.1.1" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^0.7.18" - -fd-slicer@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65" - integrity sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU= - dependencies: - pend "~1.2.0" - -figures@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" - integrity sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4= - dependencies: - escape-string-regexp "^1.0.5" - object-assign "^4.1.0" - -figures@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" - integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= - dependencies: - escape-string-regexp "^1.0.5" - -file-loader@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-2.0.0.tgz#39749c82f020b9e85901dcff98e8004e6401cfde" - integrity sha512-YCsBfd1ZGCyonOKLxPiKPdu+8ld9HAaMEvJewzz+b2eTF7uL5Zm/HdBF6FjCrpCMRq25Mi0U1gl4pwn2TlH7hQ== - dependencies: - loader-utils "^1.0.2" - schema-utils "^1.0.0" - -filesize@3.6.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.6.1.tgz#090bb3ee01b6f801a8a8be99d31710b3422bb317" - integrity sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg== - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -finalhandler@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" - integrity sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg== - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.2" - statuses "~1.4.0" - unpipe "~1.0.0" - -find-cache-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" - integrity sha1-kojj6ePMN0hxfTnq3hfPcfww7m8= - dependencies: - commondir "^1.0.1" - make-dir "^1.0.0" - pkg-dir "^2.0.0" - -find-nearest-file@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/find-nearest-file/-/find-nearest-file-1.1.0.tgz#e29441740329a2015f7655faecd7b85e02cad686" - integrity sha512-NMsS0ITOwpBPrHOyO7YUtDhaVEGUKS0kBJDVaWZPuCzO7JMW+uzFQQVts/gPyIV9ioyNWDb5LjhHWXVf1OnBDA== - -find-root@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/find-root/-/find-root-0.1.2.tgz#98d2267cff1916ccaf2743b3a0eea81d79d7dcd1" - integrity sha1-mNImfP8ZFsyvJ0OzoO6oHXnX3NE= - -find-up@3.0.0, find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^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: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - -flatstr@^1.0.5: - version "1.0.8" - resolved "https://registry.yarnpkg.com/flatstr/-/flatstr-1.0.8.tgz#0e849229751f2b9f6a0919f8e81e1229e84ba901" - integrity sha512-YXblbv/vc1zuVVUtnKl1hPqqk7TalZCppnKE7Pr8FI/Rp48vzckS/4SJ4Y9O9RNiI82Vcw/FydmtqdQOg1Dpqw== - -flush-write-stream@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.3.tgz#c5d586ef38af6097650b49bc41b55fabb19f35bd" - integrity sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw== - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.4" - -for-in@^0.1.3: - version "0.1.8" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" - integrity sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE= - -for-in@^1.0.1, 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@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" - integrity sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs= - 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" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - -form-data@~2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099" - integrity sha1-SXBJi+YEwgwAXU9cI67NIda0kJk= - dependencies: - asynckit "^0.4.0" - combined-stream "1.0.6" - mime-types "^2.1.12" - -forwarded@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" - integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= - dependencies: - map-cache "^0.2.2" - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= - -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-constants@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" - integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== - -fs-extra-p@^4.6.1: - version "4.6.1" - resolved "https://registry.yarnpkg.com/fs-extra-p/-/fs-extra-p-4.6.1.tgz#6156e0cc98097f415fcd17029578fc41c78b5092" - integrity sha512-IsTMbUS0svZKZTvqF4vDS9c/L7Mw9n8nZQWWeSzAGacOSe+8CzowhUN0tdZEZFIJNP5HC7L9j3MMikz/G4hDeQ== - dependencies: - bluebird-lst "^1.0.5" - fs-extra "^6.0.1" - -fs-extra@^4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" - integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-6.0.1.tgz#8abc128f7946e310135ddc93b98bddb410e7a34b" - integrity sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-minipass@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.5.tgz#06c277218454ec288df77ada54a03b8702aacb9d" - integrity sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ== - dependencies: - minipass "^2.2.1" - -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - -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.2: - version "1.2.4" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.4.tgz#f41dcb1af2582af3692da36fc55cbd8e1041c426" - integrity sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg== - dependencies: - nan "^2.9.2" - node-pre-gyp "^0.10.0" - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -get-caller-file@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" - integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== - -get-stdin@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= - -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-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" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - -github-from-package@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" - integrity sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4= - -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= - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -global-dirs@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" - integrity sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU= - dependencies: - ini "^1.3.4" - -global-modules-path@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/global-modules-path/-/global-modules-path-2.3.0.tgz#b0e2bac6beac39745f7db5c59d26a36a0b94f7dc" - integrity sha512-HchvMJNYh9dGSCy8pOQ2O8u/hoXaL+0XhnrwH0RyLiSXMMTl9W3N6KUU73+JFOg5PGjtzl6VZzUQsnrpm7Szag== - -global-modules@1.0.0, global-modules@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" - integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== - dependencies: - global-prefix "^1.0.1" - is-windows "^1.0.1" - resolve-dir "^1.0.0" - -global-prefix@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" - integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4= - dependencies: - expand-tilde "^2.0.2" - homedir-polyfill "^1.0.1" - ini "^1.3.4" - is-windows "^1.0.1" - which "^1.2.14" - -globals@^11.1.0: - version "11.7.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.7.0.tgz#a583faa43055b1aca771914bf68258e2fc125673" - integrity sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg== - -globby@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680" - integrity sha1-+yzP+UAfhgCUXfral0QMypcrhoA= - dependencies: - array-union "^1.0.1" - dir-glob "^2.0.0" - glob "^7.1.2" - ignore "^3.3.5" - pify "^3.0.0" - slash "^1.0.0" - -got@^6.7.1: - version "6.7.1" - resolved "http://registry.npmjs.org/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0" - integrity sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA= - dependencies: - create-error-class "^3.0.0" - duplexer3 "^0.1.4" - get-stream "^3.0.0" - is-redirect "^1.0.0" - is-retry-allowed "^1.0.0" - is-stream "^1.0.0" - lowercase-keys "^1.0.0" - safe-buffer "^5.0.1" - timed-out "^4.0.0" - unzip-response "^2.0.1" - url-parse-lax "^1.0.0" - -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" - integrity sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg= - -gud@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gud/-/gud-1.0.0.tgz#a489581b17e6a70beca9abe3ae57de7a499852c0" - integrity sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw== - -gzip-size@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.0.0.tgz#a55ecd99222f4c48fd8c01c625ce3b349d0a0e80" - integrity sha512-5iI7omclyqrnWw4XbXAmGhPsABkSIDQonv2K0h61lybgofWa6iZyvrI3r2zsJH4P8Nb64fFVzlvfhs0g7BBxAA== - dependencies: - duplexer "^0.1.1" - pify "^3.0.0" - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.0.tgz#44657f5688a22cfd4b72486e81b3a3fb11742c29" - integrity sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA== - dependencies: - ajv "^5.3.0" - 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@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" - integrity sha1-6CB68cx7MNRGzHC3NLXovhj4jVE= - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -has@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hash-base@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" - integrity sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.5" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.5.tgz#e38ab4b85dfb1e0c40fe9265c0e9b54854c23812" - integrity sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - -he@1.1.x: - version "1.1.1" - resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" - integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0= - -history@^4.7.2: - version "4.7.2" - resolved "https://registry.yarnpkg.com/history/-/history-4.7.2.tgz#22b5c7f31633c5b8021c7f4a8a954ac139ee8d5b" - integrity sha512-1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA== - dependencies: - invariant "^2.2.1" - loose-envify "^1.2.0" - resolve-pathname "^2.2.0" - value-equal "^0.4.0" - warning "^3.0.0" - -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hoist-non-react-statics@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.0.1.tgz#fba3e7df0210eb9447757ca1a7cb607162f0a364" - integrity sha512-1kXwPsOi0OGQIZNVMPvgWJ9tSnGMiMfJdihqEzrPEXlHOBh9AAHXX/QYmAJTXztnz/K+PQ8ryCb4eGaN6HlGbQ== - dependencies: - react-is "^16.3.2" - -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" - integrity sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw== - -homedir-polyfill@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" - integrity sha1-TCu8inWJmP7r9e1oWA921GdotLw= - dependencies: - parse-passwd "^1.0.0" - -hosted-git-info@^2.1.4, hosted-git-info@^2.7.1: - 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== - -html-entities@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" - integrity sha1-DfKTUfByEWNRXfueVUPl9u7VFi8= - -html-minifier@^3.2.3: - version "3.5.20" - resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.20.tgz#7b19fd3caa0cb79f7cde5ee5c3abdf8ecaa6bb14" - integrity sha512-ZmgNLaTp54+HFKkONyLFEfs5dd/ZOtlquKaTnqIWFmx3Av5zG6ZPcV2d0o9XM2fXOTxxIf6eDcwzFFotke/5zA== - dependencies: - camel-case "3.0.x" - clean-css "4.2.x" - commander "2.17.x" - he "1.1.x" - param-case "2.1.x" - relateurl "0.2.x" - uglify-js "3.4.x" - -html-parse-stringify2@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/html-parse-stringify2/-/html-parse-stringify2-2.0.1.tgz#dc5670b7292ca158b7bc916c9a6735ac8872834a" - integrity sha1-3FZwtyksoVi3vJFsmmc1rIhyg0o= - dependencies: - void-elements "^2.0.1" - -html-webpack-plugin@^3.2.0: - version "3.2.0" - resolved "http://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz#b01abbd723acaaa7b37b6af4492ebda03d9dd37b" - integrity sha1-sBq71yOsqqeze2r0SS69oD2d03s= - dependencies: - html-minifier "^3.2.3" - loader-utils "^0.2.16" - lodash "^4.17.3" - pretty-error "^2.0.2" - tapable "^1.0.0" - toposort "^1.0.0" - util.promisify "1.0.0" - -htmlparser2@^3.9.0: - version "3.10.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.0.tgz#5f5e422dcf6119c0d983ed36260ce9ded0bee464" - integrity sha512-J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ== - dependencies: - domelementtype "^1.3.0" - domhandler "^2.3.0" - domutils "^1.5.1" - entities "^1.1.1" - inherits "^2.0.1" - readable-stream "^3.0.6" - -htmlparser2@~3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe" - integrity sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4= - dependencies: - domelementtype "1" - domhandler "2.1" - domutils "1.1" - readable-stream "1.0" - -http-errors@1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" - integrity sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY= - dependencies: - depd "1.1.1" - inherits "2.0.3" - setprototypeof "1.0.3" - statuses ">= 1.3.1 < 2" - -http-errors@~1.6.2: - version "1.6.3" - resolved "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-parser-js@>=0.4.0: - version "0.4.13" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.13.tgz#3bd6d6fde6e3172c9334c3b33b6c193d80fe1137" - integrity sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc= - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= - -https-proxy-agent@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz#51552970fa04d723e04c56d04178c3f92592bbc0" - integrity sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ== - dependencies: - agent-base "^4.1.0" - debug "^3.1.0" - -hw-app-iota@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/hw-app-iota/-/hw-app-iota-0.4.1.tgz#4acfe75aa218f27ff6e16dc540815d4fcd5cc858" - integrity sha512-tee0BAt9QexaoNkdPEoRnp5lJX3KIwOnWH80xSiRERPS49RJ0+qg3wLYStHBE//YO7R08Hr7b3KMxwbOnd5qdg== - dependencies: - babel-runtime "^6.26.0" - bip32-path "^0.4.2" - iota.lib.js "^0.5.0" - struct "0.0.12" - -i18next@^12.0.0: - version "12.0.0" - resolved "https://registry.yarnpkg.com/i18next/-/i18next-12.0.0.tgz#27c1494219dde0451a8d714d5bfc19bf055d51bb" - integrity sha512-Zy/nFpmBZxgmi6k9HkHbf+MwvAwiY5BDzNjNfvyLPKyalc2YBwwZtblESDlTKLDO8XSv23qYRY2uZcADDlRSjQ== - -iconv-lite@0.4.19: - version "0.4.19" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" - integrity sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ== - -iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -icss-replace-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" - integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= - -icss-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962" - integrity sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI= - dependencies: - postcss "^6.0.1" - -ieee754@^1.1.4: - version "1.1.12" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.12.tgz#50bf24e5b9c8bb98af4964c941cdb0918da7b60b" - integrity sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA== - -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= - -ignore-walk@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8" - integrity sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ== - dependencies: - minimatch "^3.0.4" - -ignore@^3.3.5: - version "3.3.10" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" - integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== - -import-lazy@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" - integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= - -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 "^3.0.0" - resolve-cwd "^2.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA= - dependencies: - repeating "^2.0.0" - -indent-string@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" - integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= - -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" - integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, 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.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= - -ini@^1.3.4, ini@~1.3.0: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== - -inquirer@6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.0.tgz#51adcd776f661369dc1e894859c2560a224abdd8" - integrity sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg== - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.0" - cli-cursor "^2.1.0" - cli-width "^2.0.0" - external-editor "^3.0.0" - figures "^2.0.0" - lodash "^4.17.10" - mute-stream "0.0.7" - run-async "^2.2.0" - rxjs "^6.1.0" - string-width "^2.1.0" - strip-ansi "^4.0.0" - through "^2.3.6" - -interpret@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" - integrity sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ= - -invariant@^2.0.0, invariant@^2.2.1, invariant@^2.2.2, 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== - dependencies: - loose-envify "^1.0.0" - -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== - -iota.lib.js@^0.5.0, iota.lib.js@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/iota.lib.js/-/iota.lib.js-0.5.1.tgz#87d424e030308f0029ca6396c92e15d460e7c1b7" - integrity sha512-4DHieyh24o8TJGSj/j1aINrLtYO2Pj9NZa3kqY1lKT0kZcIOkFMJoOsPiLPqVFpAC0RRONoBxni+d48gRyH5SQ== - dependencies: - async "^2.5.0" - bignumber.js "^4.1.0" - crypto-js "^3.1.9-1" - xmlhttprequest "^1.8.0" - -ipaddr.js@1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.0.tgz#eaa33d6ddd7ace8f7f6fe0c9ca0440e706738b1e" - integrity sha1-6qM9bd16zo9/b+DJygRA5wZzix4= - -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" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -is-alphabetical@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.2.tgz#1fa6e49213cb7885b75d15862fb3f3d96c884f41" - integrity sha512-V0xN4BYezDHcBSKb1QHUFMlR4as/XEuCZBzMJUU4n7+Cbt33SmUnSol+pnXFvLxSHNq2CemUXNdaXV6Flg7+xg== - -is-alphanumerical@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.2.tgz#1138e9ae5040158dc6ff76b820acd6b7a181fd40" - integrity sha512-pyfU/0kHdISIgslFfZN9nfY1Gk3MquQgUm1mJTjdkEPpkAKNWuBTSqFwewOpR7N351VkErCiyV71zX7mlQQqsg== - dependencies: - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - -is-arrayish@^0.2.1: - version "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.4, is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-builtin-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" - integrity sha1-VAVy0096wxGfj3bDDLwbHgN6/74= - dependencies: - builtin-modules "^1.0.0" - -is-callable@^1.1.1, is-callable@^1.1.3: - version "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, is-ci@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" - integrity sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg== - dependencies: - ci-info "^1.5.0" - -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-date-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= - -is-decimal@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.2.tgz#894662d6a8709d307f3a276ca4339c8fa5dff0ff" - integrity sha512-TRzl7mOCchnhchN+f3ICUCzYvL9ul7R+TYOsZ8xia++knyZAJfv/uA1FvQXsAnYIl1T3B2X5E/J7Wb1QXiIBXg== - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -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" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^2.1.0, 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" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "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-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-glob@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" - integrity sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A= - dependencies: - is-extglob "^2.1.1" - -is-hexadecimal@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.2.tgz#b6e710d7d07bb66b98cb8cece5c9b4921deeb835" - integrity sha512-but/G3sapV3MNyqiDBLrOi4x8uCIw0RY3o/Vb5GT0sMFHrVV7731wFSVy41T5FO1og7G0gXLJh0MkgPRouko/A== - -is-installed-globally@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.1.0.tgz#0dfd98f5a9111716dd535dda6492f67bf3d25a80" - integrity sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA= - dependencies: - global-dirs "^0.1.0" - is-path-inside "^1.0.0" - -is-npm@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4" - integrity sha1-8vtjpl5JBbQGyGBydloaTceTufQ= - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= - dependencies: - kind-of "^3.0.2" - -is-obj@^1.0.0: - version "1.0.1" - resolved "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= - -is-path-inside@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" - integrity sha1-jvW33lBDej/cprToZe96pVy0gDY= - dependencies: - path-is-inside "^1.0.1" - -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: - 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-promise@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" - integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= - -is-redirect@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" - integrity sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ= - -is-regex@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= - dependencies: - has "^1.0.1" - -is-retry-allowed@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" - integrity sha1-EaBgVotnM5REAz0BJaYaINVk+zQ= - -is-root@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.0.0.tgz#838d1e82318144e5a6f77819d90207645acc7019" - integrity sha512-F/pJIk8QD6OX5DNhRB7hWamLsUilmkDGho48KbgZ6xg/lmAZXHxzXQ91jzB3yRSw5kdQGGGc4yz8HYhTYIMWPg== - -is-stream@^1.0.0, is-stream@^1.0.1, is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= - -is-symbol@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" - integrity sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI= - -is-typedarray@~1.0.0: - version "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-whitespace-character@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.2.tgz#ede53b4c6f6fb3874533751ec9280d01928d03ed" - integrity sha512-SzM+T5GKUCtLhlHFKt2SDAX2RFzfS6joT91F2/WSi9LxgFdsnhfPK/UIA+JhRR2xuyLdrCys2PiFDrtn1fU5hQ== - -is-windows@^1.0.0, is-windows@^1.0.1, is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -is-word-character@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.2.tgz#46a5dac3f2a1840898b91e576cd40d493f3ae553" - integrity sha512-T3FlsX8rCHAH8e7RE7PfOPZVFQlcV3XRF9eOOBQ1uf70OxO7CjjSOjeImMPCADBdYWcStAbVbYvJ1m2D3tb+EA== - -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= - -isarray@0.0.1: - version "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: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= - -isbinaryfile@^3.0.2, isbinaryfile@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.3.tgz#5d6def3edebf6e8ca8cae9c30183a804b5f8be80" - integrity sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw== - dependencies: - buffer-alloc "^1.2.0" - -iserror@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/iserror/-/iserror-0.0.2.tgz#bd53451fe2f668b9f2402c1966787aaa2c7c0bf5" - integrity sha1-vVNFH+L2aLnyQCwZZnh6qix8C/U= - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - -isomorphic-fetch@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" - integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= - dependencies: - node-fetch "^1.0.1" - whatwg-fetch ">=0.10.0" - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - -js-levenshtein@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.3.tgz#3ef627df48ec8cf24bacf05c0f184ff30ef413c5" - integrity sha512-/812MXr9RBtMObviZ8gQBhHO8MOrGj8HlEE+4ccMTElNA/6I3u39u+bhny55Lk921yn44nSZFy9naNLElL5wgQ== - -"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.12.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" - integrity sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= - -jsesc@^2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.1.tgz#e421a2a8e20d6b0819df28908f782526b96dd1fe" - integrity sha1-5CGiqOINawgZ3yiQj3glJrlt0f4= - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= - -json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - -json3@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" - integrity sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE= - -json5@^0.5.0: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= - -json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== - dependencies: - minimist "^1.2.0" - -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" - integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -jsqr@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/jsqr/-/jsqr-1.1.1.tgz#a0d7f95e6c3b0bec913dfef2ca64a877f28ed05f" - integrity sha512-FVoMU2ncTyjaOqN/vwvDnZ7jaAVvFzM3LK3vG3jvQZFWJQlAwJ1XTCOgAEKo+4Rkd6ydMXTTvqGV/4w5VunmTw== - -kdbxweb@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/kdbxweb/-/kdbxweb-1.2.4.tgz#b9add7a1af60e56298732015fd425bcd95c4859b" - integrity sha512-n5ls0UtwcN+N2lalDP/ULDX9AhV37cNAnxKGjpnqOZL3OmTMnbVW01wGwWxZpdxRBOxUIQZ4w7dNlQFbngrtbA== - dependencies: - pako "github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc" - text-encoding "github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb" - xmldom "github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6" - -keytar@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/keytar/-/keytar-4.3.0.tgz#4a3afd64fdeec300716ccf3985fdcf1cfd6e77e9" - integrity sha512-pd++/v+fS0LQKmzWlW6R1lziTXFqhfGeS6sYLfuTIqEy2pDzAbjutbSW8f9tnJdEEMn/9XhAQlT34VAtl9h4MQ== - dependencies: - nan "2.8.0" - prebuild-install "^5.0.0" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" - integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== - -latest-version@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15" - integrity sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU= - dependencies: - package-json "^4.0.0" - -lazy-val@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/lazy-val/-/lazy-val-1.0.3.tgz#bb97b200ef00801d94c317e29dc6ed39e31c5edc" - integrity sha512-pjCf3BYk+uv3ZcPzEVM0BFvO9Uw58TmlrU0oG5tTrr9Kcid3+kdKxapH8CjdYmVa2nO5wOoZn2rdvZx2PKj/xg== - -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" - -listr-silent-renderer@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" - integrity sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4= - -listr-update-renderer@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.2.0.tgz#ca80e1779b4e70266807e8eed1ad6abe398550f9" - integrity sha1-yoDhd5tOcCZoB+ju0a1qvjmFUPk= - dependencies: - chalk "^1.1.3" - cli-truncate "^0.2.1" - elegant-spinner "^1.0.1" - figures "^1.7.0" - indent-string "^3.0.0" - log-symbols "^1.0.2" - log-update "^1.0.2" - strip-ansi "^3.0.1" - -listr-verbose-renderer@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#8206f4cf6d52ddc5827e5fd14989e0e965933a35" - integrity sha1-ggb0z21S3cWCfl/RSYng6WWTOjU= - dependencies: - chalk "^1.1.3" - cli-cursor "^1.0.2" - date-fns "^1.27.2" - figures "^1.7.0" - -listr@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/listr/-/listr-0.12.0.tgz#6bce2c0f5603fa49580ea17cd6a00cc0e5fa451a" - integrity sha1-a84sD1YD+klYDqF81qAMwOX6RRo= - dependencies: - chalk "^1.1.3" - cli-truncate "^0.2.1" - figures "^1.7.0" - indent-string "^2.1.0" - is-promise "^2.1.0" - is-stream "^1.1.0" - listr-silent-renderer "^1.1.1" - listr-update-renderer "^0.2.0" - listr-verbose-renderer "^0.4.0" - log-symbols "^1.0.2" - log-update "^1.0.2" - ora "^0.2.3" - p-map "^1.1.1" - rxjs "^5.0.0-beta.11" - stream-to-observable "^0.1.0" - strip-ansi "^3.0.1" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "http://registry.npmjs.org/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 "http://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.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" - -loader-runner@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2" - integrity sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI= - -loader-utils@1.1.0, loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" - integrity sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0= - dependencies: - big.js "^3.1.3" - emojis-list "^2.0.0" - json5 "^0.5.0" - -loader-utils@^0.2.16: - version "0.2.17" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" - integrity sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g= - dependencies: - big.js "^3.1.3" - emojis-list "^2.0.0" - json5 "^0.5.0" - object-assign "^4.0.1" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -lodash-es@^4.17.5: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.11.tgz#145ab4a7ac5c5e52a3531fb4f310255a152b4be0" - integrity sha512-DHb1ub+rMjjrxqlB3H56/6MXtm1lSksDp2rA2cNWjG8mlDUYFhUj3Di2Zn5IwSU87xLv8tNIQ7sSwE/YOX/D/Q== - -lodash.camelcase@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" - integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= - -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= - -lodash.isequal@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" - integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= - -lodash.tail@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" - integrity sha1-0jM6NtnncXyK0vfKyv7HwytERmQ= - -lodash.throttle@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4" - integrity sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ= - -lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.3, lodash@^4.17.5, lodash@~4.17.4: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" - integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== - -log-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" - integrity sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg= - dependencies: - chalk "^1.0.0" - -log-update@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-1.0.2.tgz#19929f64c4093d2d2e7075a1dad8af59c296b8d1" - integrity sha1-GZKfZMQJPS0ucHWh2tivWcKWuNE= - dependencies: - ansi-escapes "^1.0.0" - cli-cursor "^1.0.2" - -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lottie-web@^5.1.3: - version "5.3.1" - resolved "https://registry.yarnpkg.com/lottie-web/-/lottie-web-5.3.1.tgz#455c549429e589869ea8ae7f94ed754c6cce5bfa" - integrity sha512-hp5nYg/j0kusnpG6XliG4DhrJylz2+wLuxrAFM4uVHWplTVj0SFyYqxo6EGoG/G36BgAbUUNyBdsrJDolJJHFA== - -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - -lower-case@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" - integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw= - -lowercase-keys@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" - integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== - -lru-cache@^4.0.1, lru-cache@^4.1.1: - version "4.1.3" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.3.tgz#a1175cf3496dfc8436c156c334b4955992bce69c" - integrity sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA== - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - -"machine-uuid-sync@https://github.com/rajivshah3/machine-uuid-sync": - version "1.0.9" - resolved "https://github.com/rajivshah3/machine-uuid-sync#a5ffa8eab86764db0c69aadbeef9a14b2ae9ae5c" - dependencies: - uuid "^3.1.0" - -make-dir@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" - integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== - dependencies: - pify "^3.0.0" - -map-age-cleaner@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz#098fb15538fd3dbe461f12745b0ca8568d4e3f74" - integrity sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ== - 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" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= - -map-obj@^1.0.0, map-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= - -map-obj@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" - integrity sha1-plzSkIepJZi4eRJXpSPgISIqwfk= - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= - dependencies: - object-visit "^1.0.0" - -markdown-escapes@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/markdown-escapes/-/markdown-escapes-1.0.2.tgz#e639cbde7b99c841c0bacc8a07982873b46d2122" - integrity sha512-lbRZ2mE3Q9RtLjxZBZ9+IMl68DKIXaVAhwvwn9pmjnPLS0h/6kyBMgNhqi1xFJ/2yv6cSyv0jbiZavZv93JkkA== - -math-expression-evaluator@^1.2.14: - version "1.2.17" - resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz#de819fdbcd84dccd8fae59c6aeb79615b9d266ac" - integrity sha1-3oGf282E3M2PrlnGrreWFbnSZqw= - -md5.js@^1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.4.tgz#e9bdbde94a20a5ac18b04340fc5764d5b09d901d" - integrity sha1-6b296UogpawYsENA/Fdk1bCdkB0= - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - -mdast-add-list-metadata@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mdast-add-list-metadata/-/mdast-add-list-metadata-1.0.1.tgz#95e73640ce2fc1fa2dcb7ec443d09e2bfe7db4cf" - integrity sha512-fB/VP4MJ0LaRsog7hGPxgOrSL3gE/2uEdZyDuSEnKCv/8IkYHiDkIQSbChiJoHyxZZXZ9bzckyRk+vNxFzh8rA== - dependencies: - unist-util-visit-parents "1.1.2" - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= - -mem@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-4.0.0.tgz#6437690d9471678f6cc83659c00cbafcd6b0cdaf" - integrity sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA== - dependencies: - map-age-cleaner "^0.1.1" - mimic-fn "^1.0.0" - p-is-promise "^1.1.0" - -memory-fs@^0.4.0, memory-fs@~0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -meow@^3.1.0, meow@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - -meow@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/meow/-/meow-4.0.1.tgz#d48598f6f4b1472f35bf6317a95945ace347f975" - integrity sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A== - dependencies: - camelcase-keys "^4.0.0" - decamelize-keys "^1.0.0" - loud-rejection "^1.0.0" - minimist "^1.1.3" - minimist-options "^3.0.1" - normalize-package-data "^2.3.4" - read-pkg-up "^3.0.0" - redent "^2.0.0" - trim-newlines "^2.0.0" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= - -micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - -mime-db@~1.36.0: - version "1.36.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.36.0.tgz#5020478db3c7fe93aad7bbcc4dcf869c43363397" - integrity sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw== - -mime-types@^2.1.12, mime-types@~2.1.18, mime-types@~2.1.19: - version "2.1.20" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.20.tgz#930cb719d571e903738520f8470911548ca2cc19" - integrity sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A== - dependencies: - mime-db "~1.36.0" - -mime@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" - integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== - -mime@^2.0.3, mime@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.3.1.tgz#b1621c54d63b97c47d3cfe7f7215f7d64517c369" - integrity sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg== - -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-response@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" - integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== - -mini-css-extract-plugin@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.3.tgz#98d60fcc5d228c3e36a9bd15a1d6816d6580beb8" - integrity sha512-Mxs0nxzF1kxPv4TRi2NimewgXlJqh0rGE30vviCU2WHrpbta6wklnUV9dr9FUtoAHmB3p3LeXEC+ZjgHvB0Dzg== - dependencies: - loader-utils "^1.1.0" - schema-utils "^1.0.0" - webpack-sources "^1.1.0" - -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= - -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== - dependencies: - brace-expansion "^1.1.7" - -minimist-options@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-3.0.2.tgz#fba4c8191339e13ecf4d61beb03f070103f3d954" - integrity sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ== - dependencies: - arrify "^1.0.1" - is-plain-obj "^1.1.0" - -minimist@0.0.8: - version "0.0.8" - resolved "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= - -minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0: - version "1.2.0" - resolved "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= - -minipass@^2.2.1, minipass@^2.3.3: - version "2.3.4" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.4.tgz#4768d7605ed6194d6d576169b9e12ef71e9d9957" - integrity sha512-mlouk1OHlaUE8Odt1drMtG1bAJA4ZA6B/ehysgV0LUIrDHdKgo1KorZq3pK0b/7Z7LJIQ12MNM6aC+Tn6lUZ5w== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minizlib@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.1.0.tgz#11e13658ce46bc3a70a267aac58359d1e0c29ceb" - integrity sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA== - dependencies: - minipass "^2.2.1" - -mississippi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" - integrity sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^2.0.1" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -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== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mixin-object@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" - integrity sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4= - dependencies: - for-in "^0.1.3" - is-extendable "^0.1.1" - -mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0: - version "0.5.1" - resolved "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= - dependencies: - minimist "0.0.8" - -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -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== - -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= - -nan@2.8.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" - integrity sha1-7XFfP+neArV6XmJS2QqWZ14fCFo= - -nan@^2.10.0, nan@^2.9.2: - version "2.11.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.11.0.tgz#574e360e4d954ab16966ec102c0c049fd961a099" - integrity sha512-F4miItu2rGnV2ySkXOQoA8FKz/SR2Q2sWP0sbTxNxz/tuokeC8WxOhPMcwi0qIyGtVn/rrSeLbvVkznqCdwYnw== - -nan@^2.8.0: - version "2.11.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.11.1.tgz#90e22bccb8ca57ea4cd37cc83d3819b52eea6766" - integrity sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -needle@^2.2.1: - version "2.2.3" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.3.tgz#c1b04da378cd634d8befe2de965dc2cfb0fd65ca" - integrity sha512-GPL22d/U9cai87FcCPO6e+MT3vyHS2j+zwotakDc7kE2DtUAqFKMXLJCTtRp+5S75vXIwQPvIxkvlctxf9q4gQ== - dependencies: - debug "^2.1.2" - iconv-lite "^0.4.4" - sax "^1.2.4" - -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - integrity sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk= - -neo-async@^2.5.0: - version "2.5.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.5.2.tgz#489105ce7bc54e709d736b195f82135048c50fcc" - integrity sha512-vdqTKI9GBIYcAEbFAcpKPErKINfPF5zIuz3/niBfq8WUZjpT2tytLlFVrBgWdOtqI4uaA/Rb6No0hux39XXDuw== - -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - -no-case@^2.2.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" - integrity sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ== - dependencies: - lower-case "^1.1.1" - -node-abi@^2.2.0: - version "2.4.4" - resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.4.4.tgz#410d8968809fe616dc078a181c44a370912f12fd" - integrity sha512-DQ9Mo2mf/XectC+s6+grPPRQ1Z9gI3ZbrGv6nyXRkjwT3HrE0xvtvrfnH7YHYBLgC/KLadg+h3XHnhZw1sv88A== - dependencies: - semver "^5.4.1" - -node-fetch@^1.0.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" - integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== - dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" - -node-hid@^0.7.2: - version "0.7.3" - resolved "https://registry.yarnpkg.com/node-hid/-/node-hid-0.7.3.tgz#736e9a4dee5eec96c20fbe301e0311bb185cb2f4" - integrity sha512-LOCqWqcOlng+Kn1Qj/54zrPVfCagg1O7RlSgMmugykBcoYvUud6BswTrJM2aXuBac+bCCm3lA2srRG8YfmyXZQ== - dependencies: - bindings "^1.3.0" - nan "^2.10.0" - prebuild-install "^4.0.0" - -node-libs-browser@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df" - integrity sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg== - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^1.0.0" - https-browserify "^1.0.0" - os-browserify "^0.3.0" - path-browserify "0.0.0" - process "^0.11.10" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.3.3" - stream-browserify "^2.0.1" - stream-http "^2.7.2" - string_decoder "^1.0.0" - timers-browserify "^2.0.4" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.10.3" - vm-browserify "0.0.4" - -node-pre-gyp@^0.10.0: - version "0.10.3" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz#3070040716afdc778747b61b6887bf78880b80fc" - integrity sha512-d1xFs+C/IPS8Id0qPTZ4bUT8wWryfR/OzzAFxweG+uLN85oPzyo2Iw6bVlLQ/JOdgNonXLCoRyqDzDWq4iw72A== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4" - -node-releases@^1.0.0-alpha.11: - version "1.0.0-alpha.11" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.0.0-alpha.11.tgz#73c810acc2e5b741a17ddfbb39dfca9ab9359d8a" - integrity sha512-CaViu+2FqTNYOYNihXa5uPS/zry92I3vPU4nCB6JB3OeZ2UGtOpF5gRwuN4+m3hbEcL47bOXyun1jX2iC+3uEQ== - dependencies: - semver "^5.3.0" - -noop-logger@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/noop-logger/-/noop-logger-0.1.1.tgz#94a2b1633c4f1317553007d8966fd0e841b6a4c2" - integrity sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI= - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= - dependencies: - abbrev "1" - osenv "^0.1.4" - -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - integrity sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw== - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.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" - -notp@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/notp/-/notp-2.0.3.tgz#a9fd11e25cfe1ccb39fc6689544ee4c10ef9a577" - integrity sha1-qf0R4lz+HMs5/GaJVE7kwQ75pXc= - -npm-bundled@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.5.tgz#3c1732b7ba936b3a10325aef616467c0ccbcc979" - integrity sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g== - -npm-packlist@^1.1.6: - version "1.1.11" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.11.tgz#84e8c683cbe7867d34b1d357d893ce29e28a02de" - integrity sha512-CxKlZ24urLkJk+9kCm48RTQ7L4hsmgSVzEk0TLGPzzyuFxD7VNgy5Sl24tOLMzQv773a/NeJ1ce1DKeacqffEA== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" - -npmlog@^4.0.1, npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -nth-check@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" - integrity sha1-mSms32KPwsQQmN6rgqxYDPFJquQ= - dependencies: - boolbase "~1.0.0" - -nugget@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/nugget/-/nugget-2.0.1.tgz#201095a487e1ad36081b3432fa3cada4f8d071b0" - integrity sha1-IBCVpIfhrTYIGzQy+jytpPjQcbA= - dependencies: - debug "^2.1.3" - minimist "^1.1.0" - pretty-bytes "^1.0.2" - progress-stream "^1.1.0" - request "^2.45.0" - single-line-log "^1.1.2" - throttleit "0.0.2" - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= - -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - -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" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= - -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-keys@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2" - integrity sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag== - -object-keys@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336" - integrity sha1-KKaq50KN0sOpLz2V8hM13SBOAzY= - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= - dependencies: - isobject "^3.0.0" - -object.getownpropertydescriptors@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" - integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.5.1" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= - dependencies: - isobject "^3.0.1" - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= - dependencies: - ee-first "1.1.1" - -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= - dependencies: - wrappy "1" - -onetime@^1.0.0: - version "1.1.0" - resolved "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" - integrity sha1-ofeDj4MUxRbwXs78vEzP4EtO14k= - -onetime@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" - integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= - dependencies: - mimic-fn "^1.0.0" - -opn@5.4.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/opn/-/opn-5.4.0.tgz#cb545e7aab78562beb11aa3bfabc7042e1761035" - integrity sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw== - dependencies: - is-wsl "^1.1.0" - -ora@^0.2.3: - version "0.2.3" - resolved "http://registry.npmjs.org/ora/-/ora-0.2.3.tgz#37527d220adcd53c39b73571d754156d5db657a4" - integrity sha1-N1J9Igrc1Tw5tzVx11QVbV22V6Q= - dependencies: - chalk "^1.1.1" - cli-cursor "^1.0.2" - cli-spinners "^0.1.2" - object-assign "^4.0.1" - -original@>=0.0.5: - version "1.0.2" - resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" - integrity sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg== - dependencies: - url-parse "^1.4.3" - -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= - -os-homedir@^1.0.0, os-homedir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - -os-locale@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.0.1.tgz#3b014fbf01d87f60a1e5348d80fe870dc82c4620" - integrity sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw== - dependencies: - execa "^0.10.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= - -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -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-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@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" - integrity sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4= - -p-limit@^1.0.0, p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - -p-limit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.0.0.tgz#e624ed54ee8c460a778b3c9f3670496ff8a57aec" - integrity sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A== - dependencies: - p-try "^2.0.0" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= - dependencies: - p-limit "^1.1.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-map@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" - integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA== - -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - -p-try@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" - integrity sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ== - -package-json@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/package-json/-/package-json-4.0.1.tgz#8869a0401253661c4c4ca3da6c2121ed555f5eed" - integrity sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0= - dependencies: - got "^6.7.1" - registry-auth-token "^3.0.1" - registry-url "^3.0.3" - semver "^5.1.0" - -"pako@github:keeweb/pako#653c0b00d8941c89d09ed4546d2179001ec44efc": - version "1.0.3" - resolved "https://codeload.github.com/keeweb/pako/tar.gz/653c0b00d8941c89d09ed4546d2179001ec44efc" - -pako@~1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258" - integrity sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg== - -parallel-transform@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" - integrity sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY= - dependencies: - cyclist "~0.2.2" - inherits "^2.0.3" - readable-stream "^2.1.5" - -param-case@2.1.x: - version "2.1.1" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" - integrity sha1-35T9jPZTHs915r75oIWPvHK+Ikc= - dependencies: - no-case "^2.2.0" - -parse-asn1@^5.0.0: - version "5.1.1" - resolved "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz#f6bf293818332bd0dab54efb16087724745e6ca8" - integrity sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw== - dependencies: - asn1.js "^4.0.0" - browserify-aes "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - -parse-color@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-color/-/parse-color-1.0.0.tgz#7b748b95a83f03f16a94f535e52d7f3d94658619" - integrity sha1-e3SLlag/A/FqlPU15S1/PZRlhhk= - dependencies: - color-convert "~0.5.0" - -parse-entities@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-1.1.2.tgz#9eaf719b29dc3bd62246b4332009072e01527777" - integrity sha512-5N9lmQ7tmxfXf+hO3X6KRG6w7uYO/HL9fHalSySTdyn63C3WNvTM/1R8tn1u1larNcEbo3Slcy2bsVDQqvEpUg== - dependencies: - character-entities "^1.0.0" - character-entities-legacy "^1.0.0" - character-reference-invalid "^1.0.0" - is-alphanumerical "^1.0.0" - is-decimal "^1.0.0" - is-hexadecimal "^1.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" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= - dependencies: - error-ex "^1.2.0" - -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - -parse-passwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" - integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= - -parseurl@~1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" - integrity sha1-/CidTtiZMRlGDBViUyYs3I3mW/M= - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= - -path-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" - integrity sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo= - -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: - 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.1: - 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: - version "1.0.6" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" - integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= - -path-to-regexp@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d" - integrity sha1-Wf3g9DW62suhA6hOnTvGTpa5k30= - 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" - integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= - 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" - -pbkdf2@^3.0.3: - version "3.0.16" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.16.tgz#7404208ec6b01b62d85bf83853a8064f8d9c2a5c" - integrity sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA== - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -pend@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" - integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= - -perfect-scrollbar@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/perfect-scrollbar/-/perfect-scrollbar-1.4.0.tgz#5d014ef9775e1f43058a1dbae9ed1daf0e7091f1" - integrity sha512-/2Sk/khljhdrsamjJYS5NjrH+GKEHEwh7zFSiYyxROyYKagkE4kSn2zDQDRTOMo8mpT2jikxx6yI1dG7lNP/hw== - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= - -pify@^2.0.0: - version "2.3.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= - -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= - -pino-std-serializers@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-2.2.1.tgz#ceb583374358c75949e9c4ddbdd690428c15958e" - integrity sha512-QqL7kkF7eMCpFG4hpZD8UPQga/kxkkh3E62HzMzTIL4OQyijyisAnBL8msBEAml8xcb/ioGhH7UUzGxuHqczhQ== - -pino@^4.10.3: - version "4.17.6" - resolved "https://registry.yarnpkg.com/pino/-/pino-4.17.6.tgz#8c237f3a29f4104f89321c25037deab6a7998fb4" - integrity sha512-LFDwmhyWLBnmwO/2UFbWu1jEGVDzaPupaVdx0XcZ3tIAx1EDEBauzxXf2S0UcFK7oe+X9MApjH0hx9U1XMgfCA== - dependencies: - chalk "^2.4.1" - fast-json-parse "^1.0.3" - fast-safe-stringify "^1.2.3" - flatstr "^1.0.5" - pino-std-serializers "^2.0.0" - pump "^3.0.0" - quick-format-unescaped "^1.1.2" - split2 "^2.2.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" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - -pkg-up@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" - integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= - dependencies: - find-up "^2.1.0" - -plist@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/plist/-/plist-2.1.0.tgz#57ccdb7a0821df21831217a3cad54e3e146a1025" - integrity sha1-V8zbeggh3yGDEhejytVOPhRqECU= - dependencies: - base64-js "1.2.0" - xmlbuilder "8.2.2" - xmldom "0.1.x" - -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== - dependencies: - base64-js "^1.2.3" - xmlbuilder "^9.0.7" - xmldom "0.1.x" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= - -postcss-modules-extract-imports@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.0.tgz#66140ecece38ef06bf0d3e355d69bf59d141ea85" - integrity sha1-ZhQOzs447wa/DT41XWm/WdFB6oU= - dependencies: - postcss "^6.0.1" - -postcss-modules-local-by-default@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" - integrity sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk= - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-scope@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" - integrity sha1-1upkmUx5+XtipytCb75gVqGUu5A= - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-values@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" - integrity sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA= - dependencies: - icss-replace-symbols "^1.1.0" - postcss "^6.0.1" - -postcss-value-parser@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15" - integrity sha1-h/OPnxj3dKSrTIojL1xc6IcqnRU= - -postcss@^6.0.1, postcss@^6.0.23: - version "6.0.23" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" - integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== - dependencies: - chalk "^2.4.1" - source-map "^0.6.1" - supports-color "^5.4.0" - -prebuild-install@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-4.0.0.tgz#206ce8106ce5efa4b6cf062fc8a0a7d93c17f3a8" - integrity sha512-7tayxeYboJX0RbVzdnKyGl2vhQRWr6qfClEXDhOkXjuaOKCw2q8aiuFhONRYVsG/czia7KhpykIlI2S2VaPunA== - dependencies: - detect-libc "^1.0.3" - expand-template "^1.0.2" - github-from-package "0.0.0" - minimist "^1.2.0" - mkdirp "^0.5.1" - node-abi "^2.2.0" - noop-logger "^0.1.1" - npmlog "^4.0.1" - os-homedir "^1.0.1" - pump "^2.0.1" - rc "^1.1.6" - simple-get "^2.7.0" - tar-fs "^1.13.0" - tunnel-agent "^0.6.0" - which-pm-runs "^1.0.0" - -prebuild-install@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-5.1.0.tgz#799cf2e443065eaff4880ecfa32b4d1a4a3ad000" - integrity sha512-jGdh2Ws5OUCvBm+aQ/je7hgOBfLIFcgnF9DZ1PIEvht0JKfMwn3Gy0MPHL16JcAUI6tu7LX0D3VxmvMm1XZwAw== - dependencies: - detect-libc "^1.0.3" - expand-template "^1.0.2" - github-from-package "0.0.0" - minimist "^1.2.0" - mkdirp "^0.5.1" - node-abi "^2.2.0" - noop-logger "^0.1.1" - npmlog "^4.0.1" - os-homedir "^1.0.1" - pump "^2.0.1" - rc "^1.2.7" - simple-get "^2.7.0" - tar-fs "^1.13.0" - tunnel-agent "^0.6.0" - which-pm-runs "^1.0.0" - -prepend-http@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= - -pretty-bytes@^1.0.2: - version "1.0.4" - resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-1.0.4.tgz#0a22e8210609ad35542f8c8d5d2159aff0751c84" - integrity sha1-CiLoIQYJrTVUL4yNXSFZr/B1HIQ= - dependencies: - get-stdin "^4.0.1" - meow "^3.1.0" - -pretty-error@^2.0.2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" - integrity sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM= - dependencies: - renderkid "^2.0.1" - utila "~0.4" - -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== - -process@^0.11.10: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= - -progress-stream@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/progress-stream/-/progress-stream-1.2.0.tgz#2cd3cfea33ba3a89c9c121ec3347abe9ab125f77" - integrity sha1-LNPP6jO6OonJwSHsM0er6asSX3c= - dependencies: - speedometer "~0.1.2" - through2 "~0.2.3" - -progress@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" - integrity sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8= - -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= - -promise@^7.1.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" - integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== - dependencies: - asap "~2.0.3" - -prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@~15.6.0: - version "15.6.2" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102" - integrity sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ== - dependencies: - loose-envify "^1.3.1" - object-assign "^4.1.1" - -proxy-addr@~2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.4.tgz#ecfc733bf22ff8c6f407fa275327b9ab67e48b93" - integrity sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA== - dependencies: - forwarded "~0.1.2" - ipaddr.js "1.8.0" - -proxy-from-env@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.0.0.tgz#33c50398f70ea7eb96d21f7b817630a55791c7ee" - integrity sha1-M8UDmPcOp+uW0h97gXYwpVeRx+4= - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= - -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= - -psl@^1.1.24: - version "1.1.29" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.29.tgz#60f580d360170bb722a797cc704411e6da850c67" - integrity sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ== - -public-encrypt@^4.0.0: - version "4.0.2" - resolved "http://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz#46eb9107206bf73489f8b85b69d91334c6610994" - integrity sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q== - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - -pump@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.3.tgz#5dfe8311c33bbf6fc18261f9f34702c47c08a954" - integrity sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pump@^2.0.0, pump@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -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" - -pumpify@^1.3.3: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - -punycode@^1.2.4, punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= - -punycode@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -puppeteer@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-1.9.0.tgz#56dba79e7ea4faac807877bee3b23d63291fc59e" - integrity sha512-GH4PmhJf9wBRAPvtJkEJLAvdNNOofZortmBZSj8cGWYni98GUFqsf66blOEfJbo5B8l0KG5HR2d/W2MejnUrzg== - dependencies: - debug "^3.1.0" - extract-zip "^1.6.6" - https-proxy-agent "^2.2.1" - mime "^2.0.3" - progress "^2.0.0" - proxy-from-env "^1.0.0" - rimraf "^2.6.1" - ws "^5.1.1" - -qr.js@^0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/qr.js/-/qr.js-0.0.0.tgz#cace86386f59a0db8050fa90d9b6b0e88a1e364f" - integrity sha1-ys6GOG9ZoNuAUPqQ2baw6IoeNk8= - -qrcode-terminal@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz#bb5b699ef7f9f0505092a3748be4464fe71b5819" - integrity sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ== - -qs@6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" - integrity sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A== - -qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= - -querystring@0.2.0, querystring@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= - -querystringify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.0.0.tgz#fa3ed6e68eb15159457c89b37bc6472833195755" - integrity sha512-eTPo5t/4bgaMNZxyjWx6N2a6AuE0mq51KWvpc7nU/MAqixcI6v6KrGUKES0HaomdnolQBBXU/++X6/QQ9KL4tw== - -quick-format-unescaped@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-1.1.2.tgz#0ca581de3174becef25ac3c2e8956342381db698" - integrity sha1-DKWB3jF0vs7yWsPC6JVjQjgdtpg= - dependencies: - fast-safe-stringify "^1.0.8" - -quick-lru@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-1.1.0.tgz#4360b17c61136ad38078397ff11416e186dcfbb8" - integrity sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g= - -raf@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.0.tgz#a28876881b4bc2ca9117d4138163ddb80f781575" - integrity sha512-pDP/NMRAXoTfrhCfyfSEwJAKLaxBU9eApMeBPB1TkDouZmvPerIClV8lTAd+uF8ZiTaVl69e1FCxQrAd/VTjGw== - dependencies: - performance-now "^2.1.0" - -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80" - integrity sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A== - dependencies: - safe-buffer "^5.1.0" - -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - -range-parser@^1.0.3, range-parser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" - integrity sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4= - -raw-body@2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89" - integrity sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k= - dependencies: - bytes "3.0.0" - http-errors "1.6.2" - iconv-lite "0.4.19" - unpipe "1.0.0" - -rc@^1.0.1, rc@^1.1.6, rc@^1.2.1, rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -react-dev-utils@^6.0.4: - version "6.0.4" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-6.0.4.tgz#cd6d2712aa22d67751ef6757dc82787351da8826" - integrity sha512-0I+eRcb4RrmlWCKRJhDLi29oTEqpDEbbVGI1DrN/ZTJbvhzycsg03Edi67YQVUjYl690URufowi54+u0TUnQMw== - dependencies: - "@babel/code-frame" "7.0.0" - address "1.0.3" - browserslist "4.1.1" - chalk "2.4.1" - cross-spawn "6.0.5" - detect-port-alt "1.1.6" - escape-string-regexp "1.0.5" - filesize "3.6.1" - find-up "3.0.0" - global-modules "1.0.0" - gzip-size "5.0.0" - inquirer "6.2.0" - is-root "2.0.0" - loader-utils "1.1.0" - opn "5.4.0" - pkg-up "2.0.0" - react-error-overlay "^5.0.4" - recursive-readdir "2.2.2" - shell-quote "1.6.1" - sockjs-client "1.1.5" - strip-ansi "4.0.0" - text-table "0.2.0" - -react-dom@^16.5.2: - version "16.5.2" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.5.2.tgz#b69ee47aa20bab5327b2b9d7c1fe2a30f2cfa9d7" - integrity sha512-RC8LDw8feuZOHVgzEf7f+cxBr/DnKdqp56VU0lAs1f4UfKc4cU8wU4fTq/mgnvynLQo8OtlPC19NUFh/zjZPuA== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - schedule "^0.5.0" - -react-error-overlay@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-5.0.4.tgz#39cf184d770f98b65a2ee59a779d03b8d092b69e" - integrity sha512-grVJtoDzIbSMYgy5rKbSOmt2FvzR4iJnpMBjXmZolSYJM5acQvBHoEbBBNW0FzTE/TLZMZ+gSy0bAHydc1hFEw== - -react-i18next@^8.0.7: - version "8.0.7" - resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-8.0.7.tgz#9e6ffdaa01f4454ba216fa50377a7c2ba6f1e662" - integrity sha512-oJDVe5X8QK72NYYH7/VQtopONZPcNiarlWdVuCSkn9PucQCEAOf/yRt0V2LdjC4nBY48Y20/540glwR1nlE9gA== - dependencies: - "@babel/runtime" "^7.1.2" - create-react-context "0.2.3" - hoist-non-react-statics "3.0.1" - html-parse-stringify2 "2.0.1" - -react-is@^16.3.2: - version "16.5.2" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.5.2.tgz#e2a7b7c3f5d48062eb769fcb123505eb928722e3" - integrity sha512-hSl7E6l25GTjNEZATqZIuWOgSnpXb3kD0DVCujmg46K5zLxsbiKaaT6VO9slkSBDPZfYs30lwfJwbOFOnoEnKQ== - -react-lifecycles-compat@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362" - integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== - -react-lottie@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/react-lottie/-/react-lottie-1.2.3.tgz#8544b96939e088658072eea5e12d912cdaa3acc1" - integrity sha512-qLCERxUr8M+4mm1LU0Ruxw5Y5Fn/OmYkGfnA+JDM/dZb3oKwVAJCjwnjkj9TMHtzR2U6sMEUD3ZZ1RaHagM7kA== - dependencies: - babel-runtime "^6.26.0" - lottie-web "^5.1.3" - -react-markdown@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/react-markdown/-/react-markdown-3.6.0.tgz#29f6aaab5270c8ef0a5e234093a873ec3e01722b" - integrity sha512-TV0wQDHHPCEeKJHWXFfEAKJ8uSEsJ9LgrMERkXx05WV/3q6Ig+59KDNaTmjcoqlCpE/sH5PqqLMh4t0QWKrJ8Q== - dependencies: - mdast-add-list-metadata "1.0.1" - prop-types "^15.6.1" - remark-parse "^5.0.0" - unified "^6.1.5" - unist-util-visit "^1.3.0" - xtend "^4.0.1" - -react-qr-reader@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/react-qr-reader/-/react-qr-reader-2.1.1.tgz#25fdb9812d61f727ef20614342eb54394f8e0ab6" - integrity sha512-Xid7aBPZMMl9Xh4mdz9w8HZZsbL1BVbRLuoE2ixs5zwtgF0IGarWZ5cbJVaxCydus6vzEL4FQf4gpItC/jz8hg== - dependencies: - jsqr "^1.1.1" - prop-types "^15.5.8" - webrtc-adapter "^6.4.0" - -react-redux@^5.0.7: - version "5.0.7" - resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-5.0.7.tgz#0dc1076d9afb4670f993ffaef44b8f8c1155a4c8" - integrity sha512-5VI8EV5hdgNgyjfmWzBbdrqUkrVRKlyTKk1sGH3jzM2M2Mhj/seQgPXaz6gVAj2lz/nz688AdTqMO18Lr24Zhg== - dependencies: - hoist-non-react-statics "^2.5.0" - invariant "^2.0.0" - lodash "^4.17.5" - lodash-es "^4.17.5" - loose-envify "^1.1.0" - prop-types "^15.6.0" - -react-resize-detector@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/react-resize-detector/-/react-resize-detector-2.3.0.tgz#57bad1ae26a28a62a2ddb678ba6ffdf8fa2b599c" - integrity sha512-oCAddEWWeFWYH5FAcHdBYcZjAw9fMzRUK9sWSx6WvSSOPVRxcHd5zTIGy/mOus+AhN/u6T4TMiWxvq79PywnJQ== - dependencies: - lodash.debounce "^4.0.8" - lodash.throttle "^4.1.1" - prop-types "^15.6.0" - resize-observer-polyfill "^1.5.0" - -react-router-dom@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-4.3.1.tgz#4c2619fc24c4fa87c9fd18f4fb4a43fe63fbd5c6" - integrity sha512-c/MlywfxDdCp7EnB7YfPMOfMD3tOtIjrQlj/CKfNMBxdmpJP8xcz5P/UAFn3JbnQCNUxsHyVVqllF9LhgVyFCA== - dependencies: - history "^4.7.2" - invariant "^2.2.4" - loose-envify "^1.3.1" - prop-types "^15.6.1" - react-router "^4.3.1" - warning "^4.0.1" - -react-router@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-4.3.1.tgz#aada4aef14c809cb2e686b05cee4742234506c4e" - integrity sha512-yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg== - dependencies: - history "^4.7.2" - hoist-non-react-statics "^2.5.0" - invariant "^2.2.4" - loose-envify "^1.3.1" - path-to-regexp "^1.7.0" - prop-types "^15.6.1" - warning "^4.0.1" - -react-smooth@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/react-smooth/-/react-smooth-1.0.2.tgz#f7a2d932ece8db898646078c3c97f3e9533e0486" - integrity sha512-pIGzL1g9VGAsRsdZQokIK0vrCkcdKtnOnS1gyB2rrowdLy69lNSWoIjCTWAfgbiYvria8tm5hEZqj+jwXMkV4A== - dependencies: - lodash "~4.17.4" - prop-types "^15.6.0" - raf "^3.4.0" - react-transition-group "^2.5.0" - -react-tooltip@^3.9.0: - version "3.9.0" - resolved "https://registry.yarnpkg.com/react-tooltip/-/react-tooltip-3.9.0.tgz#d874df922c3b34b2e547ec62ff8b2eef42017b51" - integrity sha512-vpn738FVv2oe2LzdwUchped3WqLgZSQwrBow+ceChS1+lFEJBPjOa9KD3JH/L/s0Aorxawi3A20qBcHX7vqaag== - dependencies: - classnames "^2.2.5" - prop-types "^15.6.0" - sanitize-html-react "^1.13.0" - -react-transition-group@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-2.5.0.tgz#70bca0e3546102c4dc5cf3f5f57f73447cce6874" - integrity sha512-qYB3JBF+9Y4sE4/Mg/9O6WFpdoYjeeYqx0AFb64PTazVy8RPMiE3A47CG9QmM4WJ/mzDiZYslV+Uly6O1Erlgw== - dependencies: - dom-helpers "^3.3.1" - loose-envify "^1.4.0" - prop-types "^15.6.2" - react-lifecycles-compat "^3.0.4" - -react@^16.5.2: - version "16.6.0" - resolved "https://registry.yarnpkg.com/react/-/react-16.6.0.tgz#b34761cfaf3e30f5508bc732fb4736730b7da246" - integrity sha512-zJPnx/jKtuOEXCbQ9BKaxDMxR0001/hzxXwYxG8septeyYGfsgAei6NgfbVgOhbY1WOP2o3VPs/E9HaN+9hV3Q== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.10.0" - -read-config-file@3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/read-config-file/-/read-config-file-3.1.2.tgz#9b299cb7a2bcec1511a4c22e71620df0a2e3b896" - integrity sha512-QCATYzlYHvmWps/W/eP7rcKuhYRYZg5XKeXFxSJRIXvn+KSw1+Ntz2et1aBz5TrEpawGrxWZ7zBipj+/v0xwWQ== - dependencies: - ajv "^6.5.2" - ajv-keywords "^3.2.0" - bluebird-lst "^1.0.5" - dotenv "^6.0.0" - dotenv-expand "^4.2.0" - fs-extra-p "^4.6.1" - js-yaml "^3.12.0" - json5 "^1.0.1" - lazy-val "^1.0.3" - -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" - integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= - dependencies: - find-up "^2.0.0" - read-pkg "^2.0.0" - -read-pkg-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" - integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= - dependencies: - find-up "^2.0.0" - read-pkg "^3.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= - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - -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" - -read-pkg@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-4.0.1.tgz#963625378f3e1c4d48c85872b5a6ec7d5d093237" - integrity sha1-ljYlN48+HE1IyFhytabsfV0JMjc= - dependencies: - normalize-package-data "^2.3.2" - parse-json "^4.0.0" - pify "^3.0.0" - -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6: - version "2.3.6" - resolved "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~2.0.0" - safe-buffer "~5.1.1" - string_decoder "~1.1.1" - util-deprecate "~1.0.1" - -readable-stream@1.0, "readable-stream@>=1.0.33-1 <1.1.0-0": - version "1.0.34" - resolved "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readable-stream@^3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.0.6.tgz#351302e4c68b5abd6a2ed55376a7f9a25be3057a" - integrity sha512-9E1oLoOWfhSXHGv6QlwXJim7uNzd9EVlWK+21tCU9Ju/kR0/p2AZYPz4qSchgO8PlLIH4FpZYfzwS+rEksZjIg== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - -readable-stream@~1.1.9: - version "1.1.14" - resolved "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" - integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readdirp@^2.0.0: - 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" - -recharts-scale@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/recharts-scale/-/recharts-scale-0.4.0.tgz#a8dca2b32abc4c68ee0a214e6376b7af3e04513c" - integrity sha512-+XRGUAZsw5Fs6aiosBVcmu76JZXmb1HLUMFeAPzAfrPlO6muPNEXMuC5fXOO8Sy1bZ6QVJzAFY5w1nXXZzqB5Q== - dependencies: - decimal.js-light "^2.4.1" - -recharts@^1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/recharts/-/recharts-1.3.2.tgz#46673f3da903d7cdf69c678f37ae71e36ea3fcf7" - integrity sha512-wQAYKscZccZtA3QSnn0PKV9yjXMkU+cU4fG7yOM1kmWMymoDN71u6MN5kDFAcbsirpTo/I1QZxTYoV0AF7spYQ== - dependencies: - classnames "~2.2.5" - core-js "~2.5.1" - d3-interpolate "~1.3.0" - d3-scale "~2.1.0" - d3-shape "~1.2.0" - lodash "~4.17.4" - prop-types "~15.6.0" - react-resize-detector "~2.3.0" - react-smooth "~1.0.0" - recharts-scale "^0.4.0" - reduce-css-calc "~1.3.0" - -recursive-readdir@2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.2.tgz#9946fb3274e1628de6e36b2f6714953b4845094f" - integrity sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg== - dependencies: - minimatch "3.0.4" - -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= - dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" - -redent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa" - integrity sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo= - dependencies: - indent-string "^3.0.0" - strip-indent "^2.0.0" - -reduce-css-calc@~1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz#747c914e049614a4c9cfbba629871ad1d2927716" - integrity sha1-dHyRTgSWFKTJz7umKYca0dKSdxY= - dependencies: - balanced-match "^0.4.2" - math-expression-evaluator "^1.2.14" - reduce-function-call "^1.0.1" - -reduce-function-call@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/reduce-function-call/-/reduce-function-call-1.0.2.tgz#5a200bf92e0e37751752fe45b0ab330fd4b6be99" - integrity sha1-WiAL+S4ON3UXUv5FsKszD9S2vpk= - dependencies: - balanced-match "^0.4.2" - -redux@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/redux/-/redux-4.0.1.tgz#436cae6cc40fbe4727689d7c8fae44808f1bfef5" - integrity sha512-R7bAtSkk7nY6O/OYMVR9RiBI+XghjF9rlbl5806HJbQph0LJVHZrU5oaO4q70eUKiqMRqm4y07KLTlMZ2BlVmg== - dependencies: - loose-envify "^1.4.0" - symbol-observable "^1.2.0" - -regenerate-unicode-properties@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz#107405afcc4a190ec5ed450ecaa00ed0cafa7a4c" - integrity sha512-s5NGghCE4itSlUS+0WUj88G6cfMVMmH8boTPNvABf8od+2dhT9WDlWu8n01raQAJZMOK8Ch6jSexaRO7swd6aw== - dependencies: - regenerate "^1.4.0" - -regenerate@^1.2.1, regenerate@^1.4.0: - version "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.12.0: - version "0.12.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz#fa1a71544764c036f8c49b13a08b2594c9f8a0de" - integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg== - -regenerator-transform@^0.13.3: - version "0.13.3" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.13.3.tgz#264bd9ff38a8ce24b06e0636496b2c856b57bcbb" - integrity sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA== - dependencies: - private "^0.1.6" - -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" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regexp-quote@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/regexp-quote/-/regexp-quote-0.0.0.tgz#1e0f4650c862dcbfed54fd42b148e9bb1721fcf2" - integrity sha1-Hg9GUMhi3L/tVP1CsUjpuxch/PI= - -regexpu-core@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" - integrity sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs= - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regexpu-core@^4.1.3, regexpu-core@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.2.0.tgz#a3744fa03806cffe146dea4421a3e73bdcc47b1d" - integrity sha512-Z835VSnJJ46CNBttalHD/dB+Sj2ezmY6Xp38npwU87peK6mqOzOpV8eYktdkLTEkzzD+JsTcxd84ozd8I14+rw== - dependencies: - regenerate "^1.4.0" - regenerate-unicode-properties "^7.0.0" - regjsgen "^0.4.0" - regjsparser "^0.3.0" - unicode-match-property-ecmascript "^1.0.4" - unicode-match-property-value-ecmascript "^1.0.2" - -registry-auth-token@^3.0.1: - version "3.3.2" - resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.3.2.tgz#851fd49038eecb586911115af845260eec983f20" - integrity sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ== - dependencies: - rc "^1.1.6" - safe-buffer "^5.0.1" - -registry-url@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz#3d4ef870f73dde1d77f0cf9a381432444e174942" - integrity sha1-PU74cPc93h138M+aOBQyRE4XSUI= - dependencies: - rc "^1.0.1" - -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= - -regjsgen@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.4.0.tgz#c1eb4c89a209263f8717c782591523913ede2561" - integrity sha512-X51Lte1gCYUdlwhF28+2YMO0U6WeN0GLpgpA7LK7mbdDnkQYiwvEpmpe0F/cv5L14EbxgrdayAG3JETBv0dbXA== - -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= - dependencies: - jsesc "~0.5.0" - -regjsparser@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.3.0.tgz#3c326da7fcfd69fa0d332575a41c8c0cdf588c96" - integrity sha512-zza72oZBBHzt64G7DxdqrOo/30bhHkwMUoT0WqfGu98XLd7N+1tsy5MJ96Bk4MD0y74n629RhmrGW6XlnLLwCA== - dependencies: - jsesc "~0.5.0" - -relateurl@0.2.x: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= - -remark-parse@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-5.0.0.tgz#4c077f9e499044d1d5c13f80d7a98cf7b9285d95" - integrity sha512-b3iXszZLH1TLoyUzrATcTQUZrwNl1rE70rVdSruJFlDaJ9z5aMkhrG43Pp68OgfHndL/ADz6V69Zow8cTQu+JA== - dependencies: - collapse-white-space "^1.0.2" - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - is-whitespace-character "^1.0.0" - is-word-character "^1.0.0" - markdown-escapes "^1.0.0" - parse-entities "^1.1.0" - repeat-string "^1.5.4" - state-toggle "^1.0.0" - trim "0.0.1" - trim-trailing-lines "^1.0.0" - unherit "^1.0.4" - unist-util-remove-position "^1.0.0" - vfile-location "^2.0.0" - xtend "^4.0.1" - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - -renderkid@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.1.tgz#898cabfc8bede4b7b91135a3ffd323e58c0db319" - integrity sha1-iYyr/Ivt5Le5ETWj/9Mj5YwNsxk= - dependencies: - css-select "^1.1.0" - dom-converter "~0.1" - htmlparser2 "~3.3.0" - strip-ansi "^3.0.0" - utila "~0.3" - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== - -repeat-string@^1.5.4, 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" - -replace-ext@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" - integrity sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs= - -request@^2.45.0, request@^2.79.0: - version "2.88.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" - integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.0" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.4.3" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= - -resize-observer-polyfill@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.0.tgz#660ff1d9712a2382baa2cad450a4716209f9ca69" - integrity sha512-M2AelyJDVR/oLnToJLtuDJRBBWUGUvvGigj1411hXhAdyFWqMaqHp7TixW3FpiLuVaikIcR1QL+zqoJoZlOgpg== - -resolve-cwd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" - integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= - dependencies: - resolve-from "^3.0.0" - -resolve-dir@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" - integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= - dependencies: - expand-tilde "^2.0.0" - global-modules "^1.0.0" - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - integrity sha1-six699nWiBvItuZTM17rywoYh0g= - -resolve-pathname@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-2.2.0.tgz#7e9ae21ed815fd63ab189adeee64dc831eefa879" - integrity sha512-bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg== - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= - -resolve@^1.3.2: - version "1.8.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" - integrity sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA== - dependencies: - path-parse "^1.0.5" - -restore-cursor@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" - integrity sha1-NGYfRohjJ/7SmRR5FSJS35LapUE= - dependencies: - exit-hook "^1.0.0" - onetime "^1.0.0" - -restore-cursor@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" - integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= - dependencies: - onetime "^2.0.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.5.2, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" - integrity sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w== - dependencies: - glob "^7.0.5" - -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - -rtcpeerconnection-shim@^1.2.14: - version "1.2.14" - resolved "https://registry.yarnpkg.com/rtcpeerconnection-shim/-/rtcpeerconnection-shim-1.2.14.tgz#67903d6f7b7bf508d6d1e4791de3e3b49c3754c0" - integrity sha512-/sl1vgarkFPU2rbXy+EMmytMQIzCKNbIm3fChjPnsdytKAROgoivB0KLE7PQRjKx/d/nr/Yx+6qu0/eCpoxn/A== - dependencies: - sdp "^2.6.0" - -run-async@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" - integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA= - dependencies: - is-promise "^2.1.0" - -run-parallel@^1.1.6: - version "1.1.9" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" - integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== - -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= - dependencies: - aproba "^1.1.1" - -rxjs@6.2.2: - version "6.2.2" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.2.2.tgz#eb75fa3c186ff5289907d06483a77884586e1cf9" - integrity sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ== - dependencies: - tslib "^1.9.0" - -rxjs@^5.0.0-beta.11: - 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.1.0: - version "6.3.2" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.3.2.tgz#6a688b16c4e6e980e62ea805ec30648e1c60907f" - integrity sha512-hV7criqbR0pe7EeL3O66UYVg92IR0XsA97+9y+BWTePK9SKmEI5Qd3Zj6uPnGkNzXsBywBQWTvujPl+1Kn9Zjw== - dependencies: - tslib "^1.9.0" - -safe-buffer@5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" - integrity sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg== - -safe-buffer@^5.0.1, 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-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= - dependencies: - ret "~0.1.10" - -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sanitize-filename@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.1.tgz#612da1c96473fa02dccda92dcd5b4ab164a6772a" - integrity sha1-YS2hyWRz+gLczaktzVtKsWSmdyo= - dependencies: - truncate-utf8-bytes "^1.0.0" - -sanitize-html-react@^1.13.0: - version "1.13.0" - resolved "https://registry.yarnpkg.com/sanitize-html-react/-/sanitize-html-react-1.13.0.tgz#e757b9adbaf2c8a762f3d2dff70138838e05420a" - integrity sha1-51e5rbryyKdi89Lf9wE4g44FQgo= - dependencies: - htmlparser2 "^3.9.0" - regexp-quote "0.0.0" - xtend "^4.0.0" - -sass-loader@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.1.0.tgz#16fd5138cb8b424bf8a759528a1972d72aad069d" - integrity sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w== - dependencies: - clone-deep "^2.0.1" - loader-utils "^1.0.1" - lodash.tail "^4.1.1" - neo-async "^2.5.0" - pify "^3.0.0" - semver "^5.5.0" - -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== - -schedule@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/schedule/-/schedule-0.5.0.tgz#c128fffa0b402488b08b55ae74bb9df55cc29cc8" - integrity sha512-HUcJicG5Ou8xfR//c2rPT0lPIRR09vVvN81T9fqfVgBmhERUbDEQoYKjpBxbueJnCPpSu2ujXzOnRQt6x9o/jw== - dependencies: - object-assign "^4.1.1" - -scheduler@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.10.0.tgz#7988de90fe7edccc774ea175a783e69c40c521e1" - integrity sha512-+TSTVTCBAA3h8Anei3haDc1IRwMeDmtI/y/o3iBe3Mjl2vwYF9DtPDt929HyRmV/e7au7CLu8sc4C4W0VOs29w== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - -schema-utils@^0.4.4, schema-utils@^0.4.5: - version "0.4.7" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" - integrity sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ== - dependencies: - ajv "^6.1.0" - ajv-keywords "^3.1.0" - -schema-utils@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== - dependencies: - ajv "^6.1.0" - ajv-errors "^1.0.0" - ajv-keywords "^3.1.0" - -sdp@^2.6.0, sdp@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/sdp/-/sdp-2.9.0.tgz#2eed2d9c0b26c81ff87593107895c68d6fb9a0a6" - integrity sha512-XAVZQO4qsfzVTHorF49zCpkdxiGmPNjA8ps8RcJGtGP3QJ/A8I9/SVg/QnkAFDMXIyGbHZBBFwYBw6WdnhT96w== - -semver-diff@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" - integrity sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY= - dependencies: - semver "^5.0.3" - -"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: - version "5.5.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.1.tgz#7dfdd8814bdb7cabc7be0fb1d734cfb66c940477" - integrity sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw== - -send@0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" - integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== - dependencies: - debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "~1.6.2" - mime "1.4.1" - ms "2.0.0" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.4.0" - -serialize-javascript@^1.4.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.5.0.tgz#1aa336162c88a890ddad5384baebc93a655161fe" - integrity sha512-Ga8c8NjAAp46Br4+0oZ2WxJCwIzwP60Gq1YPgU+39PiTVxyed/iKE/zyZI6+UlVYH5Q4PaQdHhcegIFPZTUfoQ== - -serve-static@1.13.2: - version "1.13.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" - integrity sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.2" - send "0.16.2" - -set-blocking@^2.0.0, set-blocking@~2.0.0: - version "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== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4, setimmediate@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= - -setprototypeof@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" - integrity sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ= - -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.11" - resolved "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -shallow-clone@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-1.0.0.tgz#4480cd06e882ef68b2ad88a3ea54832e2c48b571" - integrity sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA== - dependencies: - is-extendable "^0.1.1" - kind-of "^5.0.0" - mixin-object "^2.0.1" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= - dependencies: - shebang-regex "^1.0.0" - -shebang-regex@^1.0.0: - version "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: - version "1.6.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" - integrity sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c= - dependencies: - array-filter "~0.0.0" - array-map "~0.0.0" - array-reduce "~0.0.0" - jsonify "~0.0.0" - -signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= - -simple-concat@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.0.tgz#7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6" - integrity sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY= - -simple-get@^2.7.0: - version "2.8.1" - resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.1.tgz#0e22e91d4575d87620620bc91308d57a77f44b5d" - integrity sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw== - dependencies: - decompress-response "^3.3.0" - once "^1.3.1" - simple-concat "^1.0.0" - -single-line-log@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/single-line-log/-/single-line-log-1.1.2.tgz#c2f83f273a3e1a16edb0995661da0ed5ef033364" - integrity sha1-wvg/Jzo+GhbtsJlWYdoO1e8DM2Q= - dependencies: - string-width "^1.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= - -slice-ansi@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" - integrity sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU= - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -sockjs-client@1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.5.tgz#1bb7c0f7222c40f42adf14f4442cbd1269771a83" - integrity sha1-G7fA9yIsQPQq3xT0RCy9Eml3GoM= - dependencies: - debug "^2.6.6" - eventsource "0.1.6" - faye-websocket "~0.11.0" - inherits "^2.0.1" - json3 "^3.3.2" - url-parse "^1.1.8" - -source-list-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085" - integrity sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A== - -source-map-resolve@^0.5.0: - version "0.5.2" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" - integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== - dependencies: - atob "^2.1.1" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - -source-map-support@^0.5.6, source-map-support@^0.5.9: - version "0.5.9" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" - integrity sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map-url@^0.4.0: - version "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.6: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -spawn-command@^0.0.2-1: - version "0.0.2-1" - resolved "https://registry.yarnpkg.com/spawn-command/-/spawn-command-0.0.2-1.tgz#62f5e9466981c1b796dc5929937e11c9c6921bd0" - integrity sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A= - -spdx-correct@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.0.tgz#05a5b4d7153a195bc92c3c425b69f3b2a9524c82" - integrity sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz#2c7ae61056c714a5b9b9b2b2af7d311ef5c78fe9" - integrity sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg== - -spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.1.tgz#e2a303236cac54b04031fa7a5a79c7e701df852f" - integrity sha512-TfOfPcYGBB5sDuPn3deByxPhmfegAhpDYKSOXZQN81Oyrrif8ZCodOLzK3AesELnCx03kikhyDwh0pfvvQvF8w== - -speedometer@~0.1.2: - version "0.1.4" - resolved "https://registry.yarnpkg.com/speedometer/-/speedometer-0.1.4.tgz#9876dbd2a169d3115402d48e6ea6329c8816a50d" - integrity sha1-mHbb0qFp0xFUAtSObqYynIgWpQ0= - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -split2@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" - integrity sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw== - dependencies: - through2 "^2.0.2" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -sshpk@^1.7.0: - version "1.14.2" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.2.tgz#c6fc61648a3d9c4e764fd3fcdf4ea105e492ba98" - integrity sha1-xvxhZIo9nE52T9P8306hBeSSupg= - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - dashdash "^1.12.0" - getpass "^0.1.1" - safer-buffer "^2.0.2" - optionalDependencies: - bcrypt-pbkdf "^1.0.0" - ecc-jsbn "~0.1.1" - jsbn "~0.1.0" - tweetnacl "~0.14.0" - -ssri@^5.2.4: - version "5.3.0" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.3.0.tgz#ba3872c9c6d33a0704a7d71ff045e5ec48999d06" - integrity sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ== - dependencies: - safe-buffer "^5.1.1" - -stack-generator@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/stack-generator/-/stack-generator-2.0.3.tgz#bb74385c67ffc4ccf3c4dee5831832d4e509c8a0" - integrity sha512-kdzGoqrnqsMxOEuXsXyQTmvWXZmG0f3Ql2GDx5NtmZs59sT2Bt9Vdyq0XdtxUi58q/+nxtbF9KOQ9HkV1QznGg== - dependencies: - stackframe "^1.0.4" - -stackframe@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.0.4.tgz#357b24a992f9427cba6b545d96a14ed2cbca187b" - integrity sha512-to7oADIniaYwS3MhtCa/sQhrxidCCQiF/qp4/m5iN3ipf0Y7Xlri0f6eG29r08aL7JYl8n32AF3Q5GYBZ7K8vw== - -stat-mode@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/stat-mode/-/stat-mode-0.2.2.tgz#e6c80b623123d7d80cf132ce538f346289072502" - integrity sha1-5sgLYjEj19gM8TLOU480YokHJQI= - -state-toggle@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.1.tgz#c3cb0974f40a6a0f8e905b96789eb41afa1cde3a" - integrity sha512-Qe8QntFrrpWTnHwvwj2FZTgv+PKIsp0B9VxLzLLbSpPXWOgRgc5LVj/aTiSfK1RqIeF9jeC1UeOH8Q8y60A7og== - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -"statuses@>= 1.3.1 < 2", "statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - -statuses@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" - integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== - -stream-browserify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" - integrity sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds= - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - -stream-http@^2.7.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= - -stream-to-observable@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/stream-to-observable/-/stream-to-observable-0.1.0.tgz#45bf1d9f2d7dc09bed81f1c307c430e68b84cffe" - integrity sha1-Rb8dny19wJvtgfHDB8Qw5ouEz/4= - -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -string_decoder@^1.0.0, string_decoder@^1.1.1, string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= - -strip-ansi@4.0.0, strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - -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-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-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-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= - dependencies: - get-stdin "^4.0.1" - -strip-indent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" - integrity sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g= - -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= - -struct@0.0.12: - version "0.0.12" - resolved "https://registry.yarnpkg.com/struct/-/struct-0.0.12.tgz#8330af872664e9a5bd678664524857c50908038a" - integrity sha1-gzCvhyZk6aW9Z4ZkUkhXxQkIA4o= - -style-loader@^0.23.0: - version "0.23.0" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.0.tgz#8377fefab68416a2e05f1cabd8c3a3acfcce74f1" - integrity sha512-uCcN7XWHkqwGVt7skpInW6IGO1tG6ReyFQ1Cseh0VcN6VdcFQi62aG/2F3Y9ueA8x4IVlfaSUxpmQXQD9QrEuQ== - dependencies: - loader-utils "^1.1.0" - schema-utils "^0.4.5" - -sumchecker@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/sumchecker/-/sumchecker-2.0.2.tgz#0f42c10e5d05da5d42eea3e56c3399a37d6c5b3e" - integrity sha1-D0LBDl0F2l1C7qPlbDOZo31sWz4= - dependencies: - debug "^2.2.0" - -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@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" - integrity sha1-vnoN5ITexcXN34s9WRJQRJEvY1s= - dependencies: - has-flag "^2.0.0" - -supports-color@^5.3.0, supports-color@^5.4.0, supports-color@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - 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-observable@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" - integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== - -tapable@^1.0.0, tapable@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.0.tgz#0d076a172e3d9ba088fd2272b2668fb8d194b78c" - integrity sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA== - -tar-fs@^1.13.0: - version "1.16.3" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.16.3.tgz#966a628841da2c4010406a82167cbd5e0c72d509" - integrity sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw== - dependencies: - chownr "^1.0.1" - mkdirp "^0.5.1" - pump "^1.0.0" - tar-stream "^1.1.2" - -tar-stream@^1.1.2: - version "1.6.1" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.6.1.tgz#f84ef1696269d6223ca48f6e1eeede3f7e81f395" - integrity sha512-IFLM5wp3QrJODQFPm6/to3LJZrONdBY/otxcvDIQzu217zKye6yVR3hhi9lAjrC2Z+m/j5oDxMPb1qcd8cIvpA== - dependencies: - bl "^1.0.0" - buffer-alloc "^1.1.0" - end-of-stream "^1.0.0" - fs-constants "^1.0.0" - readable-stream "^2.3.0" - to-buffer "^1.1.0" - xtend "^4.0.0" - -tar@^4: - version "4.4.6" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.6.tgz#63110f09c00b4e60ac8bcfe1bf3c8660235fbc9b" - integrity sha512-tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg== - dependencies: - chownr "^1.0.1" - fs-minipass "^1.2.5" - minipass "^2.3.3" - minizlib "^1.1.0" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.2" - -temp-file@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/temp-file/-/temp-file-3.1.3.tgz#24c144994f033be1ccf6773280c8f7f1c91691a9" - integrity sha512-oz2J77loDE9sGrlRTqBzwbsUvoBD2BpyXeaRPKyGwBIwaamSs2jdqAfhutw7Tch9llr1u8E2ruoug09rNPa3PA== - dependencies: - async-exit-hook "^2.0.1" - bluebird-lst "^1.0.5" - fs-extra-p "^4.6.1" - lazy-val "^1.0.3" - -term-size@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" - integrity sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk= - dependencies: - execa "^0.7.0" - -"text-encoding@github:keeweb/text-encoding#4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb": - version "0.6.0" - resolved "https://codeload.github.com/keeweb/text-encoding/tar.gz/4dfb7cb0954c222852092f8b06ae4f6b4f60bfbb" - -text-table@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -thirty-two@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/thirty-two/-/thirty-two-0.0.2.tgz#4253e29d8cb058f0480267c5698c0e4927e54b6a" - integrity sha1-QlPinYywWPBIAmfFaYwOSSflS2o= - -throttleit@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/throttleit/-/throttleit-0.0.2.tgz#cfedf88e60c00dd9697b61fdd2a8343a9b680eaf" - integrity sha1-z+34jmDADdlpe2H90qg0OptoDq8= - -through2@0.6.3: - version "0.6.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.3.tgz#795292fde9f254c2a368b38f9cc5d1bd4663afb6" - integrity sha1-eVKS/enyVMKjaLOPnMXRvUZjr7Y= - dependencies: - readable-stream ">=1.0.33-1 <1.1.0-0" - xtend ">=4.0.0 <4.1.0-0" - -through2@^2.0.0, through2@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" - integrity sha1-AARWmzfHx0ujnEPzzteNGtlBQL4= - dependencies: - readable-stream "^2.1.5" - xtend "~4.0.1" - -through2@~0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-0.2.3.tgz#eb3284da4ea311b6cc8ace3653748a52abf25a3f" - integrity sha1-6zKE2k6jEbbMis42U3SKUqvyWj8= - dependencies: - readable-stream "~1.1.9" - xtend "~2.1.1" - -through@^2.3.6: - version "2.3.8" - resolved "http://registry.npmjs.org/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= - -timed-out@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" - integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= - -timers-browserify@^2.0.4: - version "2.0.10" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz#1d28e3d2aadf1d5a5996c4e9f95601cd053480ae" - integrity sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg== - dependencies: - setimmediate "^1.0.4" - -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= - -to-buffer@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80" - integrity sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg== - -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" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -toposort@^1.0.0: - version "1.0.7" - resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.7.tgz#2e68442d9f64ec720b8cc89e6443ac6caa950029" - integrity sha1-LmhELZ9k7HILjMieZEOsbKqVACk= - -tough-cookie@~2.4.3: - version "2.4.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" - integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== - dependencies: - psl "^1.1.24" - punycode "^1.4.1" - -tree-kill@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.0.tgz#5846786237b4239014f05db156b643212d4c6f36" - integrity sha512-DlX6dR0lOIRDFxI0mjL9IYg6OTncLm/Zt+JiBhE5OlFcAR8yc9S7FFXU9so0oda47frdM/JFsk7UjNt9vscKcg== - -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= - -trim-newlines@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz#b403d0b91be50c331dfc4b82eeceb22c3de16d20" - integrity sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA= - -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= - -trim-trailing-lines@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.1.1.tgz#e0ec0810fd3c3f1730516b45f49083caaf2774d9" - integrity sha512-bWLv9BbWbbd7mlqqs2oQYnLD/U/ZqeJeJwbO0FG2zA1aTq+HTvxfHNKFa/HGCVyJpDiioUYaBhfiT6rgk+l4mg== - -trim@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" - integrity sha1-WFhUf2spB1fulczMZm+1AITEYN0= - -trough@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.3.tgz#e29bd1614c6458d44869fc28b255ab7857ef7c24" - integrity sha512-fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw== - -truncate-utf8-bytes@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz#405923909592d56f78a5818434b0b78489ca5f2b" - integrity sha1-QFkjkJWS1W94pYGENLC3hInKXys= - dependencies: - utf8-byte-length "^1.0.1" - -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== - -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - -type-is@~1.6.15, type-is@~1.6.16: - version "1.6.16" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" - integrity sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.18" - -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.18" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.18.tgz#a7bfd92f56edfb117083b69e31d2aa8882d4b1ed" - integrity sha512-LtzwHlVHwFGTptfNSgezHp7WUlwiqb0gA9AALRbKaERfxwJoiX0A73QbTToxteIAuIaFshhgIZfqK8s7clqgnA== - -uglify-es@^3.3.4: - version "3.3.9" - resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" - integrity sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ== - dependencies: - commander "~2.13.0" - source-map "~0.6.1" - -uglify-js@3.4.x: - version "3.4.9" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.9.tgz#af02f180c1207d76432e473ed24a28f4a782bae3" - integrity sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q== - dependencies: - commander "~2.17.1" - source-map "~0.6.1" - -uglifyjs-webpack-plugin@^1.2.4: - version "1.3.0" - resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz#75f548160858163a08643e086d5fefe18a5d67de" - integrity sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw== - dependencies: - cacache "^10.0.4" - find-cache-dir "^1.0.0" - schema-utils "^0.4.5" - serialize-javascript "^1.4.0" - source-map "^0.6.1" - uglify-es "^3.3.4" - webpack-sources "^1.1.0" - worker-farm "^1.5.2" - -unherit@^1.0.4: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unherit/-/unherit-1.1.1.tgz#132748da3e88eab767e08fabfbb89c5e9d28628c" - integrity sha512-+XZuV691Cn4zHsK0vkKYwBEwB74T3IZIcxrgn2E4rKwTfFyI1zCh7X7grwh9Re08fdPlarIdyWgI8aVB3F5A5g== - dependencies: - inherits "^2.0.1" - xtend "^4.0.1" - -unicode-canonical-property-names-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" - integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== - -unicode-match-property-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" - integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== - dependencies: - unicode-canonical-property-names-ecmascript "^1.0.4" - unicode-property-aliases-ecmascript "^1.0.4" - -unicode-match-property-value-ecmascript@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.2.tgz#9f1dc76926d6ccf452310564fd834ace059663d4" - integrity sha512-Rx7yODZC1L/T8XKo/2kNzVAQaRE88AaMvI1EF/Xnj3GW2wzN6fop9DDWuFAKUVFH7vozkz26DzP0qyWLKLIVPQ== - -unicode-property-aliases-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz#5a533f31b4317ea76f17d807fa0d116546111dd0" - integrity sha512-2WSLa6OdYd2ng8oqiGIWnJqyFArvhn+5vgx5GTxMbUYjCYKUcuKS62YLFF0R/BDGlB1yzXjQOLtPAfHsgirEpg== - -unified@^6.1.5: - version "6.2.0" - resolved "https://registry.yarnpkg.com/unified/-/unified-6.2.0.tgz#7fbd630f719126d67d40c644b7e3f617035f6dba" - integrity sha512-1k+KPhlVtqmG99RaTbAv/usu85fcSRu3wY8X+vnsEhIxNP5VbVIDiXnLqyKIG+UMdyTg0ZX9EI6k2AfjJkHPtA== - dependencies: - bail "^1.0.0" - extend "^3.0.0" - is-plain-obj "^1.1.0" - trough "^1.0.0" - vfile "^2.0.0" - x-is-string "^0.1.0" - -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= - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^0.4.3" - -unique-filename@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.0.tgz#d05f2fe4032560871f30e93cbe735eea201514f3" - integrity sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM= - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.0.tgz#db6676e7c7cc0629878ff196097c78855ae9f4ab" - integrity sha1-22Z258fMBimHj/GWCXx4hVrp9Ks= - dependencies: - imurmurhash "^0.1.4" - -unique-string@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" - integrity sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo= - dependencies: - crypto-random-string "^1.0.0" - -unist-util-is@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-2.1.2.tgz#1193fa8f2bfbbb82150633f3a8d2eb9a1c1d55db" - integrity sha512-YkXBK/H9raAmG7KXck+UUpnKiNmUdB+aBGrknfQ4EreE1banuzrKABx3jP6Z5Z3fMSPMQQmeXBlKpCbMwBkxVw== - -unist-util-remove-position@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-1.1.2.tgz#86b5dad104d0bbfbeb1db5f5c92f3570575c12cb" - integrity sha512-XxoNOBvq1WXRKXxgnSYbtCF76TJrRoe5++pD4cCBsssSiWSnPEktyFrFLE8LTk3JW5mt9hB0Sk5zn4x/JeWY7Q== - dependencies: - unist-util-visit "^1.1.0" - -unist-util-stringify-position@^1.0.0, unist-util-stringify-position@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-1.1.2.tgz#3f37fcf351279dcbca7480ab5889bb8a832ee1c6" - integrity sha512-pNCVrk64LZv1kElr0N1wPiHEUoXNVFERp+mlTg/s9R5Lwg87f9bM/3sQB99w+N9D/qnM9ar3+AKDBwo/gm/iQQ== - -unist-util-visit-parents@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-1.1.2.tgz#f6e3afee8bdbf961c0e6f028ea3c0480028c3d06" - integrity sha512-yvo+MMLjEwdc3RhhPYSximset7rwjMrdt9E41Smmvg25UQIenzrN83cRnF1JMzoMi9zZOQeYXHSDf7p+IQkW3Q== - -unist-util-visit-parents@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-2.0.1.tgz#63fffc8929027bee04bfef7d2cce474f71cb6217" - integrity sha512-6B0UTiMfdWql4cQ03gDTCSns+64Zkfo2OCbK31Ov0uMizEz+CJeAp0cgZVb5Fhmcd7Bct2iRNywejT0orpbqUA== - dependencies: - unist-util-is "^2.1.2" - -unist-util-visit@^1.1.0, unist-util-visit@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-1.4.0.tgz#1cb763647186dc26f5e1df5db6bd1e48b3cc2fb1" - integrity sha512-FiGu34ziNsZA3ZUteZxSFaczIjGmksfSgdKqBfOejrrfzyUy5b7YrlzT1Bcvi+djkYDituJDy2XB7tGTeBieKw== - dependencies: - unist-util-visit-parents "^2.0.0" - -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, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -unzip-response@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" - integrity sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c= - -upath@^1.0.5: - version "1.1.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.0.tgz#35256597e46a581db4793d0ce47fa9aebfc9fabd" - integrity sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw== - -update-notifier@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-2.5.0.tgz#d0744593e13f161e406acb1d9408b72cad08aff6" - integrity sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw== - dependencies: - boxen "^1.2.1" - chalk "^2.0.1" - configstore "^3.0.0" - import-lazy "^2.1.0" - is-ci "^1.0.10" - is-installed-globally "^0.1.0" - is-npm "^1.0.0" - latest-version "^3.0.0" - semver-diff "^2.0.0" - xdg-basedir "^3.0.0" - -upper-case@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" - integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= - -uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== - dependencies: - punycode "^2.1.0" - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= - -url-loader@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-1.1.1.tgz#4d1f3b4f90dde89f02c008e662d604d7511167c1" - integrity sha512-vugEeXjyYFBCUOpX+ZuaunbK3QXMKaQ3zUnRfIpRBlGkY7QizCnzyyn2ASfcxsvyU3ef+CJppVywnl3Kgf13Gg== - dependencies: - loader-utils "^1.1.0" - mime "^2.0.3" - schema-utils "^1.0.0" - -url-parse-lax@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" - integrity sha1-evjzA2Rem9eaJy56FKxovAYJ2nM= - dependencies: - prepend-http "^1.0.1" - -url-parse@^1.1.8, url-parse@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.3.tgz#bfaee455c889023219d757e045fa6a684ec36c15" - integrity sha512-rh+KuAW36YKo0vClhQzLLveoj8FwPJNu65xLb7Mrt+eZht0IPT0IXgSv8gcMegZ6NvjJUALf6Mf25POlMwD1Fw== - dependencies: - querystringify "^2.0.0" - requires-port "^1.0.0" - -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= - dependencies: - punycode "1.3.2" - querystring "0.2.0" - -usb@^1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/usb/-/usb-1.3.3.tgz#4e8a4b44ab8833fa1c4fb99778ebae1d2d626970" - integrity sha512-WRBxI54yEs2QPj28G6kITI3Wu7VxrtHbqiDvDRUDKdg97lcK1pTP8y9LoDWF22OiCCrEvrdeq0lNcr84QOzjXQ== - dependencies: - nan "^2.8.0" - node-pre-gyp "^0.10.0" - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - -utf8-byte-length@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61" - integrity sha1-9F8VDExm7uloGGUFq5P8u4rWv2E= - -util-deprecate@^1.0.1, util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -util.promisify@1.0.0, util.promisify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== - dependencies: - define-properties "^1.1.2" - object.getownpropertydescriptors "^2.0.3" - -util@0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= - dependencies: - inherits "2.0.1" - -util@^0.10.3: - version "0.10.4" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" - integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A== - dependencies: - inherits "2.0.3" - -utila@~0.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.3.3.tgz#d7e8e7d7e309107092b05f8d9688824d633a4226" - integrity sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY= - -utila@~0.4: - version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= - -uuid@^3.1.0, 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== - -v8-compile-cache@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz#a428b28bb26790734c4fc8bc9fa106fccebf6a6c" - integrity sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw== - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -value-equal@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-0.4.0.tgz#c5bdd2f54ee093c04839d71ce2e4758a6890abc7" - integrity sha512-x+cYdNnaA3CxvMaTX0INdTCN8m8aF2uY9BvEqmxuYp8bL09cs/kWVQPVGcA35fMktdOsP69IgU7wFj/61dJHEw== - -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -vfile-location@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-2.0.3.tgz#083ba80e50968e8d420be49dd1ea9a992131df77" - integrity sha512-zM5/l4lfw1CBoPx3Jimxoc5RNDAHHpk6AM6LM0pTIkm5SUSsx8ZekZ0PVdf0WEZ7kjlhSt7ZlqbRL6Cd6dBs6A== - -vfile-message@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-1.0.1.tgz#51a2ccd8a6b97a7980bb34efb9ebde9632e93677" - integrity sha512-vSGCkhNvJzO6VcWC6AlJW4NtYOVtS+RgCaqFIYUjoGIlHnFL+i0LbtYvonDWOMcB97uTPT4PRsyYY7REWC9vug== - dependencies: - unist-util-stringify-position "^1.1.1" - -vfile@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/vfile/-/vfile-2.3.0.tgz#e62d8e72b20e83c324bc6c67278ee272488bf84a" - integrity sha512-ASt4mBUHcTpMKD/l5Q+WJXNtshlWxOogYyGYYrg4lt/vuRjC1EFQtlAofL5VmtVNIZJzWYFJjzGWZ0Gw8pzW1w== - dependencies: - is-buffer "^1.1.4" - replace-ext "1.0.0" - unist-util-stringify-position "^1.0.0" - vfile-message "^1.0.0" - -vm-browserify@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" - integrity sha1-XX6kW7755Kb/ZflUOOCofDV9WnM= - dependencies: - indexof "0.0.1" - -void-elements@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" - integrity sha1-wGavtYK7HLQSjWDqkjkulNXp2+w= - -warning@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c" - integrity sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w= - dependencies: - loose-envify "^1.0.0" - -warning@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.2.tgz#aa6876480872116fa3e11d434b0d0d8d91e44607" - integrity sha512-wbTp09q/9C+jJn4KKJfJfoS6VleK/Dti0yqWSm6KMvJ4MRCXFQNapHuJXutJIrWV0Cf4AhTdeIe4qdKHR1+Hug== - dependencies: - loose-envify "^1.0.0" - -watchpack@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.6.0.tgz#4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00" - integrity sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA== - dependencies: - chokidar "^2.0.2" - graceful-fs "^4.1.2" - neo-async "^2.5.0" - -webpack-cli@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.1.2.tgz#17d7e01b77f89f884a2bbf9db545f0f6a648e746" - integrity sha512-Cnqo7CeqeSvC6PTdts+dywNi5CRlIPbLx1AoUPK2T6vC1YAugMG3IOoO9DmEscd+Dghw7uRlnzV1KwOe5IrtgQ== - dependencies: - chalk "^2.4.1" - cross-spawn "^6.0.5" - enhanced-resolve "^4.1.0" - global-modules-path "^2.3.0" - import-local "^2.0.0" - interpret "^1.1.0" - loader-utils "^1.1.0" - supports-color "^5.5.0" - v8-compile-cache "^2.0.2" - yargs "^12.0.2" - -webpack-dev-middleware@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz#1132fecc9026fd90f0ecedac5cbff75d1fb45890" - integrity sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA== - dependencies: - memory-fs "~0.4.1" - mime "^2.3.1" - range-parser "^1.0.3" - webpack-log "^2.0.0" - -webpack-hot-middleware@^2.24.2: - version "2.24.3" - resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.24.3.tgz#5bb76259a8fc0d97463ab517640ba91d3382d4a6" - integrity sha512-pPlmcdoR2Fn6UhYjAhp1g/IJy1Yc9hD+T6O9mjRcWV2pFbBjIFoJXhP0CoD0xPOhWJuWXuZXGBga9ybbOdzXpg== - dependencies: - ansi-html "0.0.7" - html-entities "^1.2.0" - querystring "^0.2.0" - strip-ansi "^3.0.0" - -webpack-log@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" - integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== - dependencies: - ansi-colors "^3.0.0" - uuid "^3.3.2" - -webpack-sources@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.2.0.tgz#18181e0d013fce096faf6f8e6d41eeffffdceac2" - integrity sha512-9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack-sources@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.3.0.tgz#2a28dcb9f1f45fe960d8f1493252b5ee6530fa85" - integrity sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack@^4.20.2: - version "4.20.2" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.20.2.tgz#89f6486b6bb276a91b0823453d377501fc625b5a" - integrity sha512-75WFUMblcWYcocjSLlXCb71QuGyH7egdBZu50FtBGl2Nso8CK3Ej+J7bTZz2FPFq5l6fzCisD9modB7t30ikuA== - dependencies: - "@webassemblyjs/ast" "1.7.8" - "@webassemblyjs/helper-module-context" "1.7.8" - "@webassemblyjs/wasm-edit" "1.7.8" - "@webassemblyjs/wasm-parser" "1.7.8" - acorn "^5.6.2" - acorn-dynamic-import "^3.0.0" - ajv "^6.1.0" - ajv-keywords "^3.1.0" - chrome-trace-event "^1.0.0" - enhanced-resolve "^4.1.0" - eslint-scope "^4.0.0" - json-parse-better-errors "^1.0.2" - loader-runner "^2.3.0" - loader-utils "^1.1.0" - memory-fs "~0.4.1" - micromatch "^3.1.8" - mkdirp "~0.5.0" - neo-async "^2.5.0" - node-libs-browser "^2.0.0" - schema-utils "^0.4.4" - tapable "^1.1.0" - uglifyjs-webpack-plugin "^1.2.4" - watchpack "^1.5.0" - webpack-sources "^1.3.0" - -webrtc-adapter@^6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/webrtc-adapter/-/webrtc-adapter-6.4.0.tgz#5c67d2126a718abeaca9fbf8e5b8fd99f99225c4" - integrity sha512-VUX/YMIRWwJy74Q2K2KBTh2VlvD4GgxLzLtGC+mecdeTjb+nxzhlCpxwx0lqpiU2apKXHqKLfxMWcrxYnmd6LA== - dependencies: - rtcpeerconnection-shim "^1.2.14" - sdp "^2.9.0" - -websocket-driver@>=0.5.1: - version "0.7.0" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" - integrity sha1-DK+dLXVdk67gSdS90NP+LMoqJOs= - dependencies: - http-parser-js ">=0.4.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" - integrity sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg== - -whatwg-fetch@>=0.10.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" - integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - -which-pm-runs@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" - integrity sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs= - -which@^1.2.14, which@^1.2.9: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -wide-align@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - -widest-line@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.0.tgz#0142a4e8a243f8882c0233aa0e0281aa76152273" - integrity sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM= - dependencies: - string-width "^2.1.1" - -worker-farm@^1.5.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.6.0.tgz#aecc405976fab5a95526180846f0dba288f3a4a0" - integrity sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ== - dependencies: - errno "~0.1.7" - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -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.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" - integrity sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA== - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - signal-exit "^3.0.2" - -ws@^5.1.1: - version "5.2.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f" - integrity sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA== - dependencies: - async-limiter "~1.0.0" - -x-is-string@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/x-is-string/-/x-is-string-0.1.0.tgz#474b50865af3a49a9c4657f05acd145458f77d82" - integrity sha1-R0tQhlrzpJqcRlfwWs0UVFj3fYI= - -xdg-basedir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" - integrity sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ= - -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= - -xmldom@0.1.x: - version "0.1.27" - resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9" - integrity sha1-1QH5ezvbQDr4757MIFcxh6rawOk= - -"xmldom@github:keeweb/xmldom#ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6": - version "0.1.21" - resolved "https://codeload.github.com/keeweb/xmldom/tar.gz/ec8f61f723e2f403adaf7a1bbf55ced4ff1ea0c6" - -xmlhttprequest@^1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc" - integrity sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw= - -xregexp@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz#e698189de49dd2a18cc5687b05e17c8e43943020" - integrity sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg== - -"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= - -xtend@~2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b" - integrity sha1-bv7MKk2tjmlixJAbM3znuoe10os= - dependencies: - object-keys "~0.4.0" - -"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" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= - -yallist@^3.0.0, yallist@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.2.tgz#8452b4bb7e83c7c188d8041c1a837c773d6d8bb9" - integrity sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k= - -yargs-parser@^10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" - integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== - dependencies: - camelcase "^4.1.0" - -yargs@^12.0.1, yargs@^12.0.2: - version "12.0.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.2.tgz#fe58234369392af33ecbef53819171eff0f5aadc" - integrity sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ== - dependencies: - cliui "^4.0.0" - decamelize "^2.0.0" - find-up "^3.0.0" - get-caller-file "^1.0.1" - 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 || ^4.0.0" - yargs-parser "^10.1.0" - -yauzl@2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.4.1.tgz#9528f442dab1b2284e58b4379bb194e22e0c4005" - integrity sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU= - dependencies: - fd-slicer "~1.0.1" From 8a4f1e10dc941d335e55cc38545a3d3440221d2d Mon Sep 17 00:00:00 2001 From: iotasyncbot Date: Tue, 11 Dec 2018 03:24:37 +0800 Subject: [PATCH 133/141] New Crowdin translations [ci skip] (#667) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Polish) * New translations translation.json (Czech) * New translations translation.json (Slovak) * New translations translation.json (Croatian) * New translations translation.json (Croatian) * New translations translation.json (Croatian) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Spanish) * New translations translation.json (Spanish) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Slovak) * New translations translation.json (Spanish) * New translations translation.json (Arabic) * New translations translation.json (Thai) * New translations translation.json (Tamil) * New translations translation.json (Swedish) * New translations translation.json (Spanish) * New translations translation.json (Slovenian) * New translations translation.json (Slovak) * New translations translation.json (Russian) * New translations translation.json (Romanian) * New translations translation.json (Portuguese, Brazilian) * New translations translation.json (Turkish) * New translations translation.json (Urdu (Pakistan)) * New translations translation.json (Portuguese) * New translations translation.json (Bulgarian) * New translations translation.json (Japanese) * New translations translation.json (Italian) * New translations translation.json (Polish) * New translations translation.json (Serbian (Latin)) * New translations translation.json (Kannada) * New translations translation.json (Spanish, Latin America) * New translations translation.json (Vietnamese) * New translations translation.json (French) * New translations translation.json (Finnish) * New translations translation.json (Estonian) * New translations translation.json (Dutch) * New translations translation.json (Danish) * New translations translation.json (Czech) * New translations translation.json (Croatian) * New translations translation.json (Chinese Traditional) * New translations translation.json (Chinese Simplified) * New translations translation.json (Georgian) * New translations translation.json (German) * New translations translation.json (Persian) * New translations translation.json (Norwegian) * New translations translation.json (Lithuanian) * New translations translation.json (Latvian) * New translations translation.json (Korean) * New translations translation.json (Indonesian) * New translations translation.json (Hungarian) * New translations translation.json (Hindi) * New translations translation.json (Hebrew) * New translations translation.json (Greek) * New translations translation.json (Japanese) * New translations translation.json (Polish) * New translations translation.json (Czech) * New translations translation.json (Swedish) * New translations translation.json (Croatian) * New translations translation.json (Slovak) * New translations translation.json (German) * New translations translation.json (Portuguese, Brazilian) * New translations translation.json (Portuguese, Brazilian) * New translations translation.json (Portuguese, Brazilian) * New translations translation.json (Portuguese, Brazilian) * New translations translation.json (Arabic) * New translations translation.json (Thai) * New translations translation.json (Tamil) * New translations translation.json (Swedish) * New translations translation.json (Spanish) * New translations translation.json (Slovenian) * New translations translation.json (Slovak) * New translations translation.json (Russian) * New translations translation.json (Romanian) * New translations translation.json (Portuguese, Brazilian) * New translations translation.json (Turkish) * New translations translation.json (Urdu (Pakistan)) * New translations translation.json (Portuguese) * New translations translation.json (Bulgarian) * New translations translation.json (Japanese) * New translations translation.json (Italian) * New translations translation.json (Polish) * New translations translation.json (Serbian (Latin)) * New translations translation.json (Kannada) * New translations translation.json (Spanish, Latin America) * New translations translation.json (Vietnamese) * New translations translation.json (French) * New translations translation.json (Finnish) * New translations translation.json (Estonian) * New translations translation.json (Dutch) * New translations translation.json (Danish) * New translations translation.json (Czech) * New translations translation.json (Croatian) * New translations translation.json (Chinese Traditional) * New translations translation.json (Chinese Simplified) * New translations translation.json (Georgian) * New translations translation.json (German) * New translations translation.json (Persian) * New translations translation.json (Norwegian) * New translations translation.json (Lithuanian) * New translations translation.json (Latvian) * New translations translation.json (Korean) * New translations translation.json (Indonesian) * New translations translation.json (Hungarian) * New translations translation.json (Hindi) * New translations translation.json (Hebrew) * New translations translation.json (Greek) * New translations translation.json (Polish) * New translations translation.json (Polish) * New translations translation.json (French) * New translations translation.json (French) * New translations translation.json (French) * New translations translation.json (French) * New translations translation.json (Japanese) * New translations translation.json (Hungarian) * New translations translation.json (Hungarian) * New translations translation.json (German) * New translations translation.json (Croatian) * New translations translation.json (Croatian) * New translations translation.json (Italian) * New translations translation.json (Arabic) * New translations translation.json (Thai) * New translations translation.json (Tamil) * New translations translation.json (Swedish) * New translations translation.json (Spanish) * New translations translation.json (Slovenian) * New translations translation.json (Slovak) * New translations translation.json (Russian) * New translations translation.json (Romanian) * New translations translation.json (Portuguese, Brazilian) * New translations translation.json (Turkish) * New translations translation.json (Urdu (Pakistan)) * New translations translation.json (Portuguese) * New translations translation.json (Bulgarian) * New translations translation.json (Japanese) * New translations translation.json (Italian) * New translations translation.json (Polish) * New translations translation.json (Serbian (Latin)) * New translations translation.json (Kannada) * New translations translation.json (Spanish, Latin America) * New translations translation.json (Vietnamese) * New translations translation.json (French) * New translations translation.json (Finnish) * New translations translation.json (Estonian) * New translations translation.json (Dutch) * New translations translation.json (Danish) * New translations translation.json (Czech) * New translations translation.json (Croatian) * New translations translation.json (Chinese Traditional) * New translations translation.json (Chinese Simplified) * New translations translation.json (Georgian) * New translations translation.json (German) * New translations translation.json (Persian) * New translations translation.json (Norwegian) * New translations translation.json (Lithuanian) * New translations translation.json (Latvian) * New translations translation.json (Korean) * New translations translation.json (Indonesian) * New translations translation.json (Hungarian) * New translations translation.json (Hindi) * New translations translation.json (Hebrew) * New translations translation.json (Greek) * New translations translation.json (Polish) * New translations translation.json (Polish) * New translations translation.json (Polish) * New translations translation.json (Polish) * New translations translation.json (Polish) * New translations translation.json (Croatian) * New translations translation.json (Croatian) --- src/shared/locales/ar/translation.json | 66 ++++--- src/shared/locales/bg/translation.json | 66 ++++--- src/shared/locales/cs/translation.json | 68 ++++--- src/shared/locales/da/translation.json | 66 ++++--- src/shared/locales/de/translation.json | 64 +++--- src/shared/locales/el/translation.json | 66 ++++--- src/shared/locales/es-ES/translation.json | 100 ++++++---- src/shared/locales/es-LA/translation.json | 66 ++++--- src/shared/locales/et/translation.json | 66 ++++--- src/shared/locales/fa/translation.json | 66 ++++--- src/shared/locales/fi/translation.json | 66 ++++--- src/shared/locales/fr/translation.json | 150 +++++++------- src/shared/locales/he/translation.json | 66 ++++--- src/shared/locales/hi/translation.json | 66 ++++--- src/shared/locales/hr/translation.json | 76 +++++--- src/shared/locales/hu/translation.json | 72 ++++--- src/shared/locales/id/translation.json | 66 ++++--- src/shared/locales/it/translation.json | 70 ++++--- src/shared/locales/ja/translation.json | 66 ++++--- src/shared/locales/ka/translation.json | 66 ++++--- src/shared/locales/kn/translation.json | 66 ++++--- src/shared/locales/ko/translation.json | 66 ++++--- src/shared/locales/lt/translation.json | 66 ++++--- src/shared/locales/lv/translation.json | 66 ++++--- src/shared/locales/nl/translation.json | 66 ++++--- src/shared/locales/no/translation.json | 66 ++++--- src/shared/locales/pl/translation.json | 62 +++--- src/shared/locales/pt-BR/translation.json | 158 ++++++++------- src/shared/locales/pt-PT/translation.json | 66 ++++--- src/shared/locales/ro/translation.json | 66 ++++--- src/shared/locales/ru/translation.json | 66 ++++--- src/shared/locales/sk/translation.json | 226 ++++++++++++---------- src/shared/locales/sl/translation.json | 66 ++++--- src/shared/locales/sr/translation.json | 66 ++++--- src/shared/locales/sv-SE/translation.json | 66 ++++--- src/shared/locales/ta/translation.json | 66 ++++--- src/shared/locales/th/translation.json | 66 ++++--- src/shared/locales/tr/translation.json | 66 ++++--- src/shared/locales/ur/translation.json | 66 ++++--- src/shared/locales/vi/translation.json | 66 ++++--- src/shared/locales/zh-CN/translation.json | 66 ++++--- src/shared/locales/zh-TW/translation.json | 66 ++++--- 42 files changed, 1957 insertions(+), 1201 deletions(-) diff --git a/src/shared/locales/ar/translation.json b/src/shared/locales/ar/translation.json index 80880db5bd..3dc9c1e87a 100644 --- a/src/shared/locales/ar/translation.json +++ b/src/shared/locales/ar/translation.json @@ -74,6 +74,8 @@ "wallet": "المحفظة", "all": "All", "sent": "أرسلت", + "youReceived": "You received", + "youSent": "You sent", "received": "تلقي", "sending": "إرسال", "receiving": "تلقي", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Your password must be at least {{minLength}} characters. It is currently {{currentLength}} characters long. Please try again.", "passwordMismatch": "كلمتي المرور لا تتطابق", "passwordMismatchExplanation": "كلمتي المرور المدخلة لا تتطابق، يرجى المحاولة مرة أخرى.", - "anEncryptedCopy": "سيتم تخزين نسخة مشفرة من السييد الخاص بك على الجهاز الخاص بك. وسوف تستخدم كلمة المرور هذه للوصول إلى المحفظة الخاصة بك في المستقبل.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "أعد كتابة كلمة المرور" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "تحميل البذور لأول مرة.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "لا تقم ابداً بمشاركة السييد الخاص بك مع اي شخص.", "iotaLogo": "شعار IOTA", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>You must save your seed with <1>at least one<2> of the options listed below." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "عرض السييد", @@ -504,18 +512,21 @@ "currency": "عملة" }, "logoutConfirmationModal": { - "logoutConfirmation": "هل أنت متأكد أنك تريد تسجيل الخروج؟" + "logoutConfirmation": "هل أنت متأكد أنك تريد تسجيل الخروج؟", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "مسح رمز QR" }, "unitInfoModal": { - "unitSystem": "UNIT SYSTEM", + "unitSystem": "Unit System", "trillion": "تريليون", "billion": "مليار", "million": "مليون", "thousand": "ألف", - "one": "واحد" + "one": "واحد", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "لقد حفظت السييد الخاص بي", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "الحالة", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "رسالة" + "aMessage": "رسالة", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Wrong code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "القيمة السوقية", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/bg/translation.json b/src/shared/locales/bg/translation.json index 2c2b684ea7..3536ba5fb8 100644 --- a/src/shared/locales/bg/translation.json +++ b/src/shared/locales/bg/translation.json @@ -74,6 +74,8 @@ "wallet": "Wallet", "all": "All", "sent": "Sent", + "youReceived": "You received", + "youSent": "You sent", "received": "Received", "sending": "Sending", "receiving": "Receiving", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Your password must be at least {{minLength}} characters. It is currently {{currentLength}} characters long. Please try again.", "passwordMismatch": "Passwords do not match", "passwordMismatchExplanation": "The passwords you have entered do not match. Please try again.", - "anEncryptedCopy": "An encrypted copy of your seed will be stored on your device. You will use this password to access your wallet in future.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Retype Password" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Loading seed for the first time.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Never share your seed with anyone.", "iotaLogo": "IOTA logo", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>You must back up your seed with <1>at least one<2> of the options listed below." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "View seed", @@ -504,18 +512,21 @@ "currency": "Currency" }, "logoutConfirmationModal": { - "logoutConfirmation": "Are you sure you want to log out?" + "logoutConfirmation": "Are you sure you want to log out?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Scan your QR code" }, "unitInfoModal": { - "unitSystem": "UNIT SYSTEM", + "unitSystem": "Unit System", "trillion": "Trillion", "billion": "Billion", "million": "Million", "thousand": "Thousand", - "one": "One" + "one": "One", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "I have backed up my seed", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "a message" + "aMessage": "a message", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Wrong code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/cs/translation.json b/src/shared/locales/cs/translation.json index 0b5d0caed7..4a31dd4049 100644 --- a/src/shared/locales/cs/translation.json +++ b/src/shared/locales/cs/translation.json @@ -6,7 +6,7 @@ "noTransactions": "ŽÁDNÁ NEDÁVNÁ HISTORIE", "refresh": "Obnovit", "balanceError": "Nedostatečný zůstatek", - "balanceErrorMessage": "Nemáte dostatek IOTA k dokončení této transakce.", + "balanceErrorMessage": "Nemáte dostatek peněz na vytvoření této bedny.", "totalBalance": "Celkový zůstatek", "transferError": "Chyba transakce", "transferErrorMessage": "Došlo k chybě při odesílání transakce. Prosím zkuste to znovu.", @@ -74,6 +74,8 @@ "wallet": "Peněženka", "all": "Vše ", "sent": "Odesláno", + "youReceived": "You received", + "youSent": "You sent", "received": "Přijato", "sending": "Odesílání", "receiving": "Příjem", @@ -128,7 +130,7 @@ "spentAddressExplanation": "VAROVÁNÍ: Zjištěny prostředky na již použitých adresách", "discordInformation": "Odesílání ze stejné adresy více než jednou je nebezpečné. Pro více informací je vám k dispozici kanál #help na službě Discord.", "androidInsecureClipboardWarning": "Schránka v systému Android není bezpečná.", - "androidCopyPasteWarning": "Nikdy nekopírujte/nevkládejte Váš Seed na Android zařízení.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Nebudu kopírovat/vkládat svůj seed", "mustBeStoredAppropriately": "Musí být uloženo odpovídajícím způsobem.", "deviceMayBecomeUnresponsive": "Vaše zařízení může na chvíli přestat reagovat.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Chyba klíčenky", "errorAccessingKeychainExplanation": "Nelze získat přístup k úložišti klíčů.", "mainWallet": "HLAVNÍ ÚČET", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "Nová aktualizace je k dispozici", "shouldUpdateExplanation": "Byla vydána nová aktualizace. Doporučujeme aktualizovat na nejnovější verzi.", "forceUpdate": "Chcete-li pokračovat, aktualizujte aplikaci", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Heslo musí obsahovat minimálně {{minLength}} znaků. Nyní je {{currentLength}} znaků dlouhé. Prosím zkuste to znovu.", "passwordMismatch": "Hesla se neshodují", "passwordMismatchExplanation": "Zadané heslo je neplatné. Prosím zkuste znovu.", - "anEncryptedCopy": "V zařízení se uloží zašifrovaná kopie Vašeho Seedu. Tímto heslem se budete přihlašovat k Vaší peněžence.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Znovu zadejte heslo" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Přihlásit se", "setNode": "Nastavit Node", "whyBiometricDisabled": "Proč je biometrické ověřování vypnuté?", - "whyBiometricDisabledExplanation": "Biometrické přihlášení je zakázané při prvním načítání aplikace pro Vaší bezpečnost. Když budete při používání Trinity odhlášeni z důvodu nečinnosti, poté se můžete přihlásit zpět pomocí biometrického ověření." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "První načítání Seedu.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Nikdy s nikým nesdílejte Váš Seed!", "iotaLogo": "IOTA logo", - "print": "TISK", + "print": "Print", "paperConvenience": "Vytištění papírové kopie vašeho seedu je vhodný způsob, jak ho uchovat.", "publicInsecure": "Ale tisk na veřejné wifi síti, nebo na veřejné tiskárně není bezpečné.", - "tapCheckboxes": "Pro potvrzení, prosím, zaškrtněte políčka níže.", - "wifiCheckbox": "Nebudu tisknout na veřejné wifi síti", - "printerCheckbox": "Nebudu tisknout na veřejné tiskárně" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Vaše adresa", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Zapište si někam Váš Seed", "youCanHighlightCharacters": "Můžete zvýraznit 9 znaků najednou", "printBlankWallet": "Tisk prázdné peněženky", - "whatIsChecksum": "Každý Seed má odpovídající 3-znakový kontrolní součet", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Svůj Seed mám uložený", "checksumExplanation": "Vždy, když přidáte Seed do Vaší peněženky, byste se měli ujistit, že kontrolní součet vygenerovaný peněženkou odpovídá tomu, který jste si zapsali.", "mustSaveYourSeed": "<0><0>Musíte uložit nejméně <1>jeden Seed<2>z níže uvedených možností." @@ -345,7 +351,8 @@ "totalTime": "Celkový čas", "addressPasteDetected": "Zjištěno kopírování adresy", "addressPasteExplanation": "Vaše adresa byla zkopírována ze schránky. Zkontrolujte, že vložená adresa je opravdu ta, kam chcete prostředky poslat.", - "invalid": "NEPLATNÉ" + "invalid": "NEPLATNÉ", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Přidejte jméno", @@ -446,7 +453,8 @@ "empty": "Prázdné", "retrying": "Opakování", "yesterday": "Včera", - "promotingAnotherBundle": "Podpora dalšího balíčku" + "promotingAnotherBundle": "Podpora dalšího balíčku", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Zobrazit Seed", @@ -504,18 +512,21 @@ "currency": "Měna" }, "logoutConfirmationModal": { - "logoutConfirmation": "Opravdu se chcete odhlásit?" + "logoutConfirmation": "Opravdu se chcete odhlásit?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Naskenujte Váš QR kód" }, "unitInfoModal": { - "unitSystem": "JEDNOTKOVÝ SYSTÉM", + "unitSystem": "Unit System", "trillion": "Bilion", "billion": "Miliard", "million": "Milion", "thousand": "Tisíc", - "one": "Jedna" + "one": "Jedna", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Proč nemohu použít celý zůstatek mého účtu?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Zazálohovali jste si Váš Seed?", - "alreadyHave": "Svůj Seed mám uložený", - "reenterSeed": "V dalším kroku budete požádáni o znovu vložení Vašeho Seedu.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Pokud jste si nezálohovali Váš Seed a Vaše zařízení bude poškozeno, ztratíte všechny Vaše IOTY.", "pleaseConfirm": "Prosím potvrďte, že máte bezpečně uložen Váš Seed." }, @@ -572,15 +583,19 @@ "status": "Stav", "fingerprintUnavailable": "Biometrická autentizace není k dispozici", "fingerprintUnavailableExplanation": "Vaše zařízení nepodporuje biometrickou autentizaci, nebo v nastavení zařízení nebylo povoleno její používání.", - "buttonInstructionsDisable": "Stisknutím tlačítka níže vypnete ověřování otisku prstů.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Stisknutím tlačítka níže aktivujete ověření otisků prstů.", - "buttonInstructionsDisableIPhoneX": "Stisknutím tlačítka níže vypnete ověření pomocí rozpoznávání obličeje.", - "buttonInstructionsEnableIPhoneX": "Stisknutím tlačítka níže zapnete ověření pomocí rozpoznávání obličeje.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Pro přihlášení přiložte prst na čtečku" }, "transferConfirmation": { "youAreAbout": "Chystáte se odeslat {{contents}} na adresu", - "aMessage": "zpráva" + "aMessage": "zpráva", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Nesprávný kód", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Exportovat SeedVault", - "seedVaultExplanation": "SeedVault je šifrovaný soubor pro bezpečné uložení Vašeho Seedu. Seed je šifrován heslem a není k dispozici bez jeho zadání.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Ujistěte se, že si zálohujete soubor na více místech (například pevný disk, cloud, USB). Pokud ztratíte tento soubor a nebudete mít uložený Váš Seed jiným způsobem, ztratíte Vaše IOTA.", "exportFail": "Export SeedVault se nezdařil", "exportFailExplanation": "Během exportování Vašeho SeedVault nastal problém. Zkontrolujte zda máte oprávnění na zápis souboru a dostatek volného místa.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Váš Seed byl úspěšně importován.", "saveToDownloadFolder": "Uložit do složky pro stahování", "importSeedVault": "Importovat SeedVault", - "dropSeedVaultHere": "Přetáhněte SeedVault sem <1> nebo klepněte na tlačítko Procházet", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Zadejte Vaše heslo k otevření souboru SeedVault", "noSeedFound": "SeedVault neobsahuje platný Seed", "noSeedFoundExplanation": "SeedVault je buď prázdný, nebo obsahuje Seed v neplatném formátu.", "seedFileError": "Otevření SeedVault se nezdařilo", "seedFileErrorExplanation": "Během otevírání SeedVault nastal problém. Jestliže jste zvolili správný soubor, je možné, že je poškozený.", - "seedVaultKeyExplanation": "Nejprve potřebujeme zabezpečit Váš SeedVault. Zadejte heslo k zašifrování souboru. Toto heslo budete potřebovat k obnovení Vašeho Seedu ze zálohy souboru SeedVault. Můžete použít stejné heslo, které používáte pro přihlášení do Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Příprava transakce", "gettingTransactionsToApprove": "Získávání transakcí ke schválení", "proofOfWork": "Dokončení proof of work", - "broadcasting": "Odesílání transakcí do sítě" + "broadcasting": "Odesílání transakcí do sítě", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Není možné dokončit aktualizaci údajů po Snapshotu", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Pomocí proxy serveru", - "proxyExplanation": "Rozpoznat a použít systémové nastavení proxy serveru. Po změně tohoto nastavení restartujte peněženku." + "proxyExplanation": "Rozpoznat a použít systémové nastavení proxy serveru. Po změně tohoto nastavení musí být peněženka restartována." }, "notifications": { "notifications": "Oznámení", diff --git a/src/shared/locales/da/translation.json b/src/shared/locales/da/translation.json index 741e145948..85a090e1b2 100644 --- a/src/shared/locales/da/translation.json +++ b/src/shared/locales/da/translation.json @@ -74,6 +74,8 @@ "wallet": "Tegnebog", "all": "Alle", "sent": "Sendt", + "youReceived": "You received", + "youSent": "You sent", "received": "Modtaget", "sending": "Sender", "receiving": "Modtager", @@ -128,7 +130,7 @@ "spentAddressExplanation": "ADVARSEL: Værdier på en brugt adresse", "discordInformation": "At sende fra samme adresse mere end én gang er risikabelt. Gå venligst til #help-kanalen på Discord for at finde ud af, hvad du kan gøre.", "androidInsecureClipboardWarning": "Android har ikke en sikker Udklipsholder.", - "androidCopyPasteWarning": "Kopiér/indsæt aldrig din seed på en Android-enhed.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Jeg vil ikke kopiere/indsætte min seed", "mustBeStoredAppropriately": "Det skal opbevares hensigtsmæssigt.", "deviceMayBecomeUnresponsive": "Din enhed kan ophøre med at reagere i et stykke tid.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Nøgleringsfejl", "errorAccessingKeychainExplanation": "Kan ikke tilgå nødvendig nøglering til sikker lagring.", "mainWallet": "HOVEDKONTO", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "Ny opdateringer er tilgængelig", "shouldUpdateExplanation": "En ny opdatering er frigivet. Det anbefales at opdatere til den seneste version.", "forceUpdate": "Opdatér app'en for at fortsætte", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Din adgangskode skal indeholde mindst {{minLength}} tegn. Den indeholder i øjeblikket {{currentLength}} tegn. Prøv venligst igen.", "passwordMismatch": "Adgangskoderne er ikke ens", "passwordMismatchExplanation": "Adgangskoderne, du har indtastet, er ikke ens. Prøv venligst igen.", - "anEncryptedCopy": "En krypteret kopi af din hovednøgle lagres på din enhed. Du skal fremadrettet benytte denne adgangskode for at tilgå din tegnebog.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Gentag adgangskode" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log ind", "setNode": "Indstil node", "whyBiometricDisabled": "Hvorfor er biometrisk autentificering deaktiveret?", - "whyBiometricDisabledExplanation": "Biometrisk login er deaktiveret ved første app-start grundet din sikkerhed. Benyttes Trinity, vil du blive logget af pga. inaktivitet. Du kan derefter logge ind igen med biometrisk autentificering." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Indlæser hovednøgle for første gang.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Del aldrig din hovednøgle med nogen.", "iotaLogo": "IOTA-logo", - "print": "UDSKRIV", + "print": "Print", "paperConvenience": "Udskrivning af en papirkopi af din hovednøgle er en praktisk måde at gemme den på.", "publicInsecure": "Men at udskrive på et offentligt wifi-netværk eller printer er usikkert.", - "tapCheckboxes": "Tryk på afkrydsningsfelterne nedenfor for at bekræfte.", - "wifiCheckbox": "Jeg printer ikke via offentlige Wi-Fi-netværk", - "printerCheckbox": "Jeg printer ikke via en offentlig printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Din adresse", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Lad os skrive din hovednøgle ned", "youCanHighlightCharacters": "Du kan markere 9 tegn ad gangen", "printBlankWallet": "Udskriv en tom tegnebog", - "whatIsChecksum": "Hver hovednøgle har en korresponderende 3-tegns kontrolsum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Jeg har gemt min hovednøgle", "checksumExplanation": "Når du tilføjer en hovednøgle i din tegnebog, skal du sikre dig, at den genererede kontrolsum matcher den, du har nedskrevet.", "mustSaveYourSeed": "<0><0>Du skal sikkerhedskopiere din hovednøgle med <1>mindst én<2> af valgmulighederne nedenfor." @@ -345,7 +351,8 @@ "totalTime": "Tid i alt", "addressPasteDetected": "Adresseindsættelse registreret", "addressPasteExplanation": "Det ser ud til, at du har indsat en adresse. Kontrollér venligst, at adressen matcher den, du ønsker at sende til.", - "invalid": "UGYLDIG" + "invalid": "UGYLDIG", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Lad os tilføje et navn", @@ -446,7 +453,8 @@ "empty": "Tom", "retrying": "Forsøger igen", "yesterday": "I går", - "promotingAnotherBundle": "Forfremmer et anden bundt" + "promotingAnotherBundle": "Forfremmer et anden bundt", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Se hovednøgle", @@ -504,18 +512,21 @@ "currency": "Valuta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Er du sikker på, at du vil logge ud?" + "logoutConfirmation": "Er du sikker på, at du vil logge ud?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Skan din QR-kode" }, "unitInfoModal": { - "unitSystem": "ENHED SYSTEM", + "unitSystem": "Unit System", "trillion": "Trillion", "billion": "Milliard", "million": "Million", "thousand": "Tusind", - "one": "En" + "one": "En", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Hvorfor kan jeg ikke bruge hele saldoen?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Sikkerhedskopierede du din hovednøgle?", - "alreadyHave": "Jeg har sikkerhedskopieret min hovednøgle", - "reenterSeed": "På næste trin vil du blive bedt om at genindtaste din hovednøgle.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Har du ikke sikkerhedskopieret din hovednøgle, og fejler din enhed, mister du alle dine IOTA.", "pleaseConfirm": "Bekræft, at du har lagret din hovednøgle forsvarligt." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometrisk autentificering utilgængelig", "fingerprintUnavailableExplanation": "Din enhed understøtter ikke biometrisk godkendelse, eller også er dette ikke konfigureret under indstillingerne på din enhed.", - "buttonInstructionsDisable": "Tryk på knappen nedenfor for at deaktivere godkendelse med fingeraftryk.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Tryk på knappen nedenfor for at aktivere godkendelse med fingeraftryk.", - "buttonInstructionsDisableIPhoneX": "Tryk på knappen herunder for at deaktivere ansigtsgenkendelse.", - "buttonInstructionsEnableIPhoneX": "Tryk på knappen herunder for at aktivere ansigtsgenkendelse.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Berør fingeraftrykslæseren for at logge ind" }, "transferConfirmation": { "youAreAbout": "Du er ved at sende {{contents}} til adressen", - "aMessage": "en besked" + "aMessage": "en besked", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Forkert kode", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Eksportere SeedVault", - "seedVaultExplanation": "En SeedVault er en krypteret fil til sikker lagring af din hovednøgle. Hovednøglen er krypteret bag en SeedVault-nøgle og kan ikke tilgås uden denne nøgle.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Sørg for, at du opretter flere sikkerhedskopier af filen (på f.eks. harddisk, Sky, USB-nøgle). Mister du denne fil, og har du ikke lagret din hovednøgle andetsteds, vil du miste dine IOTA.", "exportFail": "SeedVault-eksport mislykkedes", "exportFailExplanation": "Der opstod et problem ved eksport af SeedVault. Kontrollér at du har de nødvendige tilladelser og tilstrækkelig ledig lagerplads.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Din hovednøgle er importeret.", "saveToDownloadFolder": "Gem i Download-mappe", "importSeedVault": "Impotér SeedVault", - "dropSeedVaultHere": "Slip SeedVault hér <1> eller klik for at gennemse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Angiv din nøgle for at nulstille denne SeedVault", "noSeedFound": "SeedVault indeholder ikke en gyldig hovednøgle", "noSeedFoundExplanation": "SeedVault er enten tom eller indeholder en hovednøgle i et ugyldigt format.", "seedFileError": "Kunne ikke åbne SeedVault", "seedFileErrorExplanation": "Der var problemer med at åbne af SeedVault. Har du valgt den korrekte fil, kan denne være beskadiget.", - "seedVaultKeyExplanation": "Din SeedVault skal først sikres. Vælg en nøgle til at kryptering af filen. Du skal benytte denne nøgle til at genoprette din hovednøgle fra SeedVault-sikkerhedskopien. Nøglen kan være den samme som den adgangskode, du benytter til Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Forbererder transaktioner", "gettingTransactionsToApprove": "Modtager transaktion til godkendelse", "proofOfWork": "Fuldfører PoW", - "broadcasting": "Sender transaktion til netværk" + "broadcasting": "Sender transaktion til netværk", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Kan ikke fuldføre snapshot synkroniseringen", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/de/translation.json b/src/shared/locales/de/translation.json index c9804e9ee0..c10f8a5bfc 100644 --- a/src/shared/locales/de/translation.json +++ b/src/shared/locales/de/translation.json @@ -74,6 +74,8 @@ "wallet": "Wallet", "all": "Alle", "sent": "Gesendet", + "youReceived": "You received", + "youSent": "You sent", "received": "Empfangen", "sending": "Sende...", "receiving": "Empfange...", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNUNG: Guthaben auf verwendeten Adressen", "discordInformation": "Es ist gefährlich, mehr als einmal von der gleichen Adresse zu senden. Bitte besuche den #help Kanal in Discord um herauszufinden, wie du das Problem lösen kannst.", "androidInsecureClipboardWarning": "Leider bietet Android keine sichere Zwischenablage.", - "androidCopyPasteWarning": "Verwende auf einem Android-Gerät niemals die \"Kopieren / Einfügen\"-Funktion für den Seed.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Ich werde meinen Seed nicht kopieren/einfügen", "mustBeStoredAppropriately": "Er muss in angemessener Weise gesichert werden.", "deviceMayBecomeUnresponsive": "Dein Gerät könnte für eine Weile nicht reagieren.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Schlüsselbund-Fehler", "errorAccessingKeychainExplanation": "Der Schlüsselbund konnte nicht geöffnet werden.", "mainWallet": "HAUPTKONTO", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "Ein neues Update ist verfügbar", "shouldUpdateExplanation": "Ein neues Update wurde veröffentlicht. Es wird empfohlen, dass du die neueste Version installierst.", "forceUpdate": "Aktualisiere Trinity um fortzufahren", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Dein Passwort muss mindestens {{minLength}} Zeichen lang sein. Es ist im Moment {{currentLength}} Zeichen lang. Bitte versuche es erneut.", "passwordMismatch": "Die Passwörter stimmen nicht überein", "passwordMismatchExplanation": "Die eingegebenen Passwörter stimmen nicht überein. Bitte erneut eingeben.", - "anEncryptedCopy": "Eine verschlüsselte Kopie deines Seeds wird auf diesem Gerät gespeichert. In Zukunft wirst du dieses Passwort verwenden um auf dein Wallet zuzugreifen.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Passwort erneut eingeben" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Anmelden", "setNode": "Node wählen", "whyBiometricDisabled": "Warum ist die biometrische Authentifizierung deaktiviert?", - "whyBiometricDisabledExplanation": "Die biometrische Anmeldung ist für den ersten Start zu deiner eigenen Sicherheit deaktiviert. Während der Nutzung von Trinity wirst du bei Inaktivität ausgeloggt. Du kannst dich dann erneut mit biometrischer Authentifizierung einloggen." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Dein Seed wird das erste Mal geladen.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Teile niemals deinen Seed.", "iotaLogo": "IOTA Logo", - "print": "DRUCKEN", + "print": "Print", "paperConvenience": "Deinen Seed auszudrucken ist ein komfortabler Weg der Aufbewahrung.", "publicInsecure": "Doch beachte, dass Drucken in öffentlichen WLAN's oder über öffentliche Drucker unsicher ist.", - "tapCheckboxes": "Bitte aktiviere folgende Kontrollboxen um zu Bestätigen.", - "wifiCheckbox": "Ich werde nicht drucken während ich ein öffentliches WLAN verwende", - "printerCheckbox": "Ich werde nicht auf einem öffentlich zugänglichen Drucker ausdrucken" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Deine Adresse", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Notiere deinen Seed", "youCanHighlightCharacters": "Du kannst neun Buchstaben gleichzeitig auswählen", "printBlankWallet": "Leeres Paper-Wallet drucken", - "whatIsChecksum": "Jeder Seed hat eine dreistellige Prüfsumme", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Ich habe meinen Seed gesichert", "checksumExplanation": "Immer wenn du einen Seed eingibst, solltest du sicherstellen, dass die angezeigte Prüfsumme mit deiner aufgeschriebenen Prüfsumme übereinstimmt.", "mustSaveYourSeed": "<0><0>Du musst deinen Seed mit <1>mindestens einer<2> der unten aufgelisteten Optionen sichern." @@ -345,7 +351,8 @@ "totalTime": "Gesamtzeit", "addressPasteDetected": "Eingefügte Adresse erkannt", "addressPasteExplanation": "Scheinbar hast Du eine Adresse eingefügt. Stelle sicher, dass es tatsächlich jene ist, an die Du senden möchtest.", - "invalid": "UNGÜLTIG" + "invalid": "UNGÜLTIG", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Füge einen Namen ein", @@ -446,7 +453,8 @@ "empty": "Keine", "retrying": "Erneuter Versuch", "yesterday": "Gestern", - "promotingAnotherBundle": "Promote anderes Bundle" + "promotingAnotherBundle": "Promote anderes Bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Seed anzeigen", @@ -504,18 +512,21 @@ "currency": "Währung" }, "logoutConfirmationModal": { - "logoutConfirmation": "Bist du sicher, dass du dich ausloggen möchtest?" + "logoutConfirmation": "Bist du sicher, dass du dich ausloggen möchtest?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "QR-Code scannen" }, "unitInfoModal": { - "unitSystem": "EINHEITENSYSTEM", + "unitSystem": "Unit System", "trillion": "Billionen", "billion": "Milliarden", "million": "Millionen", "thousand": "Tausend", - "one": "Ein" + "one": "Ein", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Warum kann ich nicht mein gesamtes Guthaben ausgeben?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Hast du deinen Seed gespeichert?", - "alreadyHave": "Ich habe mein Seed gesichert", - "reenterSeed": "Im nächsten Schritt wirst du aufgefordert deinen Seed erneut einzugeben.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Falls dein Gerät nicht mehr funktioniert und du deinen Seed nicht gesichert hast, wirst du alle deine IOTA verlieren.", "pleaseConfirm": "Bestätige, dass du deinen Seed sicher gespeichert hast." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometrische Authentifizierung ist nicht verfügbar", "fingerprintUnavailableExplanation": "Dein Gerät unterstützt keine biometrische Authentifizierung oder die Funktion wurde in den Einstellungen deines Gerätes deaktiviert.", - "buttonInstructionsDisable": "Drücke die folgende Schaltfläche, um die Fingerabdruck-Authentifizierung zu deaktivieren.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Drücke die folgende Schaltfläche, um die Fingerabdruck-Authentifizierung zu aktivieren.", - "buttonInstructionsDisableIPhoneX": "Drücke den folgenden Button um Face ID zu deaktivieren.", - "buttonInstructionsEnableIPhoneX": "Drücke den folgenden Button um Face ID zu aktivieren.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Zur Anmeldung den Fingerabdrucksensor berühren" }, "transferConfirmation": { "youAreAbout": "Du sendest jetzt {{contents}} an die Adresse", - "aMessage": "eine Nachricht" + "aMessage": "eine Nachricht", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Falscher Code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "SeedVault exportieren", - "seedVaultExplanation": "Ein SeedVault ist eine Möglichkeit deinen Seed sicher zu speichern. Dein Seed wird verschlüsselt in einer Datei gespeichert und kann ohne den dazugehörigen Schlüssel nicht eingesehen werden.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Stelle sicher dass du die Datei an verschiedenen Orten ablegst (zum Beispiel auf einer externen Festplatte, einem Cloudspeicher, etc.). Falls du die Datei verlierst und dein Seed nicht an einem weiteren Ort gespeichert wurde, wirst du deine IOTA verlieren.", "exportFail": "SeedVault Export fehlgeschlagen", "exportFailExplanation": "Beim Export ist ein Fehler aufgetreten. Bitte stelle sicher dass du der Trinity-Wallet App die korrekten Berechtigungen gegeben hast und genug freier Speicher zu Verfügung steht.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Dein Seed wurde erfolgreich importiert.", "saveToDownloadFolder": "In Downloads-Ordner speichern", "importSeedVault": "SeedVault importieren", - "dropSeedVaultHere": "SeedVault hierher ziehen <1> oder hier klicken um Datei zu wählen", + "dropInstructions": "SeedVault hierher ziehen <1> oder hier klicken um Datei zu wählen", + "dropActive": "SeedVault oder Text hier ablegen", "enterKeyExplanation": "Gib deinen Schlüssel ein um den SeedVault zu öffnen", "noSeedFound": "Dein SeedVault enthält keinen gültigen Seed", "noSeedFoundExplanation": "Dein SeedVault ist entweder leer oder enthält einen Seed in einem ungültigen Format.", "seedFileError": "Fehler beim Öffnen", "seedFileErrorExplanation": "Beim Öffnen deines SeedVault ist ein Fehler aufgetreten. Stelle sicher dass du die korrekte Datei auswählt hast und die Datei nicht beschädigt ist.", - "seedVaultKeyExplanation": "Zunächst müssen wir deinen SeedVault absichern. Bitte vergib ein Passwort, mit dem deine SeedVault-Datei verschlüsselt wird. Du wirst dieses Passwort bei einer Wiederherstellung deines Kontos benötigen. Wenn du möchtest, kannst du das gleiche Passwort verwenden, welches du auch für Trinity verwendest." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Vorbereitung der Transaktion", "gettingTransactionsToApprove": "Warte auf Bestätigung der Transaktion", "proofOfWork": "Vervollständige Proof of Work", - "broadcasting": "Übertrage" + "broadcasting": "Übertrage", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Snapshot-Wiederherstellung konnte nicht abgeschlossen werden", diff --git a/src/shared/locales/el/translation.json b/src/shared/locales/el/translation.json index 9077ecffd7..cfc7925285 100644 --- a/src/shared/locales/el/translation.json +++ b/src/shared/locales/el/translation.json @@ -74,6 +74,8 @@ "wallet": "Πορτοφόλι", "all": "All", "sent": "Εστάλη", + "youReceived": "You received", + "youSent": "You sent", "received": "Ελήφθη", "sending": "Αποστολή σε εξέλιξη", "receiving": "Λήψη σε εξέλιξη", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Οι σπόροι πρέπει να έχουν {{minLength}} χαρακτήρες μήκος. Ο σπόρος σας επί του παρόντος έχει {{currentLength}} χαρακτήρες. Παρακαλώ δοκιμάστε ξανά.", "passwordMismatch": "Οι κωδικοί πρόσβασης δεν ταιριάζουν", "passwordMismatchExplanation": "Οι κωδικοί πρόσβασης που έχετε καταχωρήσει δεν ταιριάζουν. Παρακαλώ ξαναπροσπαθήστε.", - "anEncryptedCopy": "Ένα κρυπτογραφημένο αντίγραφο του σπόρου σας θα αποθηκευτεί στη συσκευή σας. Θα μπορείτε να χρησιμοποιήσετε αυτόν τον κωδικό πρόσβασης για να αποκτήσετε πρόσβαση το πορτοφόλι σας στο μέλλον.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Πληκτρολογήστε ξανά τον κωδικό πρόσβασης" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Φόρτωση σπόρου για πρώτη φορά.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Ποτέ μη μοιράζεστε το σπόρο σας με κανέναν.", "iotaLogo": "Λογότυπο ΙΟΤΑ", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>Θα πρέπει να αποθηκεύσετε το seed σας με <1>τουλάχιστον ένα <2>από τους παρακάτω τρόπους." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Προβολή σπόρου", @@ -504,18 +512,21 @@ "currency": "Νόμισμα" }, "logoutConfirmationModal": { - "logoutConfirmation": "Είστε βέβαιοι ότι θέλετε να αποσυνδεθείτε;" + "logoutConfirmation": "Είστε βέβαιοι ότι θέλετε να αποσυνδεθείτε;", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Σάρωση QR κωδικού" }, "unitInfoModal": { - "unitSystem": "ΣΥΣΤΗΜΑ ΜΟΝΑΔΑΣ", + "unitSystem": "Unit System", "trillion": "Τρισεκατομμύριο", "billion": "Δισεκατομμύριο", "million": "Εκατομμύριο", "thousand": "Χίλια", - "one": "Ένα" + "one": "Ένα", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "Έχω αποθηκεύσει το σπόρο μου", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Κατάσταση", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Πατήστε το παρακάτω κουμπί για να απενεργοποιήσετε την είσοδο με χρήση δακτυλικών αποτυπωμάτων.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Πατήστε το παρακάτω κουμπί για να ενεργοποιήσετε την είσοδο με χρήση δακτυλικών αποτυπωμάτων.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Αγγίξτε τη συσκευή ανάγνωσης δακτυλικών αποτυπωμάτων για να συνδεθείτε" }, "transferConfirmation": { "youAreAbout": "Είστε έτοιμοι να στείλετε {{contents}} στη διεύθυνση", - "aMessage": "ένα μήνυμα" + "aMessage": "ένα μήνυμα", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Λανθασμένος κωδικός", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Ετοιμάζοντας τις μεταφορές", "gettingTransactionsToApprove": "Προσπαθώντας να επικυρώσουμε τις συναλλαγές", "proofOfWork": "Τελειώνοντας το Proof of Work", - "broadcasting": "Μεταδίδοντας" + "broadcasting": "Μεταδίδοντας", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Δεν μπορεί να ολοκληρώσει τη μετάβαση στιγμιότυπο", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/es-ES/translation.json b/src/shared/locales/es-ES/translation.json index c201861f3e..0824a90a8b 100644 --- a/src/shared/locales/es-ES/translation.json +++ b/src/shared/locales/es-ES/translation.json @@ -19,7 +19,7 @@ "invalidResponse": "Error de nodo", "invalidResponseExplanation": "El nodo devolvió un error. Pruebe cambiando de nodo.", "invalidResponseFetchingAccount": "El servidor devolvió un error mientras obtenía la información de su cuenta. Intenta cambiar el nodo.", - "invalidResponseFetchingAccountDesktop": "The node returned an error while fetching your account information. If your problem persists, try changing node or disabling your system proxy in Trinity Settings.", + "invalidResponseFetchingAccountDesktop": "Error al intentar obtener información del nodo. Si el problema persiste intente cambiar el nodo o deshabilite el proxy en la configuración.", "nodeOutOfSync": "Nodo desincronizado", "nodeOutOfSyncExplanation": "Su nodo seleccionado esta desincronizado. Por favor cámbielo y pruebe devuelta.", "thisNodeOutOfSync": "Este nodo no está sincronizado. Por favor, cambie de nodo o pruebe de nuevo.", @@ -74,6 +74,8 @@ "wallet": "Cartera", "all": "Todo", "sent": "Enviada", + "youReceived": "You received", + "youSent": "You sent", "received": "Recibida", "sending": "Enviando", "receiving": "Recibiendo", @@ -128,7 +130,7 @@ "spentAddressExplanation": "ALERTA: Fondos en direcciones usadas", "discordInformation": "Enviar desde la misma dirección más de una vez es peligroso. Por favor diríjase al canal #help en Discord para averiguar qué puede hacer.", "androidInsecureClipboardWarning": "Android no ofrece un portapapeles seguro.", - "androidCopyPasteWarning": "Nunca copiar/pegar tu seed en un dispositivo Android.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "No copiaré/pegaré mi semilla", "mustBeStoredAppropriately": "Debe ser almacenado apropiadamente.", "deviceMayBecomeUnresponsive": "Su dispositivo puede estar sin responder por un rato.", @@ -144,14 +146,16 @@ "tryingAgainWithLocalPoW": "Intente nuevamente con local PoW.", "tryingAgainWithDifferentNode": "Intente nuevamente con un nodo diferente.", "errorFetchingAccountInformation": "Error al obtener la información de la cuenta.", - "errorSyncingAddresses": "Error syncing address information. Trying again with a different node.", + "errorSyncingAddresses": "Error de sincronización de la información. Intente devuelta con otro nodo.", "errorAccessingKeychain": "Error de keychain", "errorAccessingKeychainExplanation": "No se puede acceder a la keychain requerida para almacenamiento seguro.", "mainWallet": "CUENTA PRINCIPAL", - "shouldUpdate": "A new update is available", - "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", - "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "confirm": "Confirm", + "delete": "Delete", + "shouldUpdate": "Hay una nueva actualización disponible", + "shouldUpdateExplanation": "Hay una nueva actualización disponible. Siempre es recomendado actualizar a la ultima version.", + "forceUpdate": "Actualice la aplicacion para continuar", + "forceUpdateExplanation": "Una actualización crítica esta disponible. Por favor actualice inmediatamente." }, "addAdditionalSeed": { "seedInvalidChars": "La semilla contiene caracteres inválidos", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Su contraseña debe tener al menos {{minLength}} caracteres. Actualmente tiene {{currentLength}} caracteres. Por favor inténtelo nuevamente.", "passwordMismatch": "Las contraseñas no coinciden", "passwordMismatchExplanation": "Las contraseñas introducidas no coinciden. Por favor, inténtalo de nuevo.", - "anEncryptedCopy": "Se almacenará en su dispositivo una copia encriptada de la semilla. Esta contraseña será la que utilizará para acceder a su cartera en futuros accesos.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Escribe la contraseña de nuevo" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Iniciar Sesión", "setNode": "Seleccionar nodo", "whyBiometricDisabled": "Por que la autentificación biométrica está deshabilitada?", - "whyBiometricDisabledExplanation": "El inicio de sesión biométrico está deshabilitado en la primera carga de la aplicación por seguridad. Al utilizar Trinity, se cerrará la sesión por inactividad. Entonces podrá iniciar sesión de nuevo con la autentificación biométrica." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Cargando la semilla por primera vez.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Nunca comparta su semilla con nadie.", "iotaLogo": "Logo IOTA", - "print": "IMPRIMIR", + "print": "Print", "paperConvenience": "Imprimir una copia en papel de su semilla es una buena manera de guardarla.", "publicInsecure": "Pero imprimir en un WiFi público o una impresora publica es inseguro.", - "tapCheckboxes": "Por favor tilde los cuadros de verificación para confirmar.", - "wifiCheckbox": "No lo imprimiré con un WiFi publico", - "printerCheckbox": "No lo imprimiré en una impresora publica" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Su dirección", @@ -282,15 +287,15 @@ "copyAddress": "Copie dirección", "addressCopied": "Dirección Copiada", "addressCopiedExplanation": "La dirección se ha copiado en el portapapeles.", - "generateNewAddress": "Generate address", + "generateNewAddress": "Generar dirección", "noAddresses": "SIN DIRECCIONES", "spent": "Gastado", "missingPermission": "Permisos de sistema requeridos", "missingPermissionExplanation": "El acceso a los archivos del sistema son requeridos para compartir los códigos QR.", "tag": "Etiqueta", - "generateAnAddress": "Generate address", - "generateAnAddressTitle": "Generate an address", - "generateAnAddressExplanation": "Please generate an address before using this function." + "generateAnAddress": "Generar dirección", + "generateAnAddressTitle": "Generar una dirección", + "generateAnAddressExplanation": "Por favor genere una dirección antes de usar esta función." }, "saveYourSeed": { "saveYourSeed": "Haga una copia de respaldo de su semilla", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Vamos a anotar su semilla", "youCanHighlightCharacters": "Puede resaltar 9 caracteres a la vez", "printBlankWallet": "Imprima una cartera en blanco", - "whatIsChecksum": "Cada semilla tiene su correspondiente checksum de 3 caracteres", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "He guardado mi semilla", "checksumExplanation": "Cada vez que añada una semilla a su cartera, debería asegurarse de que el checksum generado para la cartera coincide con el que ha anotado.", "mustSaveYourSeed": "<0><0>Debe guardar su semilla con <1>al menos una<2> de las opciones a continuación." @@ -345,7 +351,8 @@ "totalTime": "Tiempo total", "addressPasteDetected": "Se ha detectado una dirección pegada", "addressPasteExplanation": "Parace que ha pegado una dirección. Asegúrese de que la dirección coincida con aquella a la que quiere enviar.", - "invalid": "INVALIDO" + "invalid": "INVALIDO", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Vamos a añadir un nombre", @@ -446,7 +453,8 @@ "empty": "Vacío", "retrying": "Reintentar", "yesterday": "Ayer", - "promotingAnotherBundle": "Promoviendo otro paquete" + "promotingAnotherBundle": "Promoviendo otro paquete", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Ver semilla", @@ -504,18 +512,21 @@ "currency": "Divisa" }, "logoutConfirmationModal": { - "logoutConfirmation": "¿Estás seguro que quieres desconectarte?" + "logoutConfirmation": "¿Estás seguro que quieres desconectarte?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Escanee su código QR" }, "unitInfoModal": { - "unitSystem": "UNIDAD DE SISTEMA", + "unitSystem": "Unit System", "trillion": "Billón", "billion": "Mil millones", "million": "Millón", "thousand": "Mil", - "one": "Unidad" + "one": "Unidad", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Porque no puedo gastar todos mis fondos?", @@ -547,12 +558,12 @@ "hideSeed": "Ocultar semilla", "notAvailable": "La exportación de la semilla no está disponible para el tipo de cuenta {{accountType}}", "accountIndex": "Su índice del ledger de la cuenta", - "accountPage": "Your Ledger account page" + "accountPage": "Su página de cuenta de ledger" }, "saveSeedConfirmation": { "didSaveSeed": "¿Hizo una copia de seguridad de la semilla?", - "alreadyHave": "He guardado mi semilla", - "reenterSeed": "En el próximo paso, se le pedirá que vuelva a introducir la semilla.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Si no ha guardado su semilla y su dispositivo falla, usted perderá todas sus IOTA.", "pleaseConfirm": "Por favor confirme que ha almacenado seguramente su semilla." }, @@ -572,15 +583,19 @@ "status": "Estado", "fingerprintUnavailable": "Autenticación biométrica no disponible", "fingerprintUnavailableExplanation": "Su dispositivo no soporta autenticación biométrica o no está correctamente configurada.", - "buttonInstructionsDisable": "Pulsa el botón que hay a continuación para deshabilitar la autenticación de huellas dactilares.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Pulsa el botón que hay a continuación para habilitar la autenticación de huellas dactilares.", - "buttonInstructionsDisableIPhoneX": "Presione el botón debajo para desactivar Face ID.", - "buttonInstructionsEnableIPhoneX": "Presione el botón debajo para activar Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Toque el lector de huellas para loguearse" }, "transferConfirmation": { "youAreAbout": "Estás a punto de enviar {{contents}} a la dirección", - "aMessage": "un mensaje" + "aMessage": "un mensaje", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Código incorrecto", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Exportar SeedVault", - "seedVaultExplanation": "Un SeedVault es un archivo cifrado para almacenar con seguridad su semilla. La semilla está encriptada detrás de una contraseña y no se puede acceder sin ella.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Asegúrese de copiar el archivo en varios lugares (ej. disco duro, nube, USB). Si pierde este archivo y no ha almacena su semilla en otro lugar, perderá sus IOTA.", "exportFail": "Fallo en la exportación de SeedVault", "exportFailExplanation": "Hubo un problema al exportar el SeedVault. Por favor asegúrese de que tiene los servicios apropiados y suficiente espacio libre.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Su semilla fue importada con éxito.", "saveToDownloadFolder": "Guardar para descargar la carpeta", "importSeedVault": "Importar SeedVault", - "dropSeedVaultHere": "Suelte su SeedVault aquí <1> o haga click para buscar", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Ingrese su clave para abrir el SeedVault", "noSeedFound": "SeedVault no contiene un semilla válida", "noSeedFoundExplanation": "El SeedVault se encuentra vacío o contiene una semilla con un formato no válido.", "seedFileError": "Fallo al abrir SeedVault", "seedFileErrorExplanation": "Hubo un problema al abrir el SeedVault. Si ha seleccionado el archivo correcto entonces puede estar corrompido.", - "seedVaultKeyExplanation": "Primero tenemos que garantizar su SeedVault. Por favor, elija una contraseña para cifrar el archivo. Usted necesitará esta contraseña para restaurar la semilla. No dude en utilizar la misma contraseña que utiliza para Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -630,7 +647,7 @@ "error": "Error obteniendo datos de gráfico" }, "rootDetection": { - "warning": "ALERTA", + "warning": "ADVERTENCIA", "appearsRooted": "Su dispositivo parece estar rooteado.", "securityRisk": "Esto puede significar un gran riesgo para la seguridad de su cartera.", "continueDepsiteRisk": "Desea continuar a pesar de este riesgo?" @@ -655,7 +672,8 @@ "preparingTransfers": "Preparando transferencias", "gettingTransactionsToApprove": "Obteniendo transacciones para aprobar", "proofOfWork": "Completando PoW", - "broadcasting": "Transmitiendo" + "broadcasting": "Transmitiendo", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "No se puede completar la transición de snapshot", @@ -680,7 +698,7 @@ "noUpdatesAvailable": "No hay actualizaciones disponibles", "noUpdatesAvailableExplanation": "You have the latest version of Trinity Desktop.", "newVersionAvailable": "Nueva versión disponible", - "newVersionAvailableExplanation": "A new Trinity {{version}} version is available. Carefully read the release notes and verify the download source before updating:", + "newVersionAvailableExplanation": "Una nueva versión de Trinity está disponible. Quieres actualizar ahora?", "installUpdate": "Instalar actualización y reiniciar", "installUpdateExplanation": "Descarga completa, Trinity ahora se reiniciará para instalar la actualización.", "downloadingUpdate": "Descargando actualización", @@ -706,8 +724,8 @@ "completeSetup": "Configuración completada" }, "proxy": { - "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxy": "Usar proxy del sistema", + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notificaciones", @@ -760,8 +778,8 @@ "ledgerIncorrectIndex": "Desajuste en el dispositivo Ledger", "ledgerIncorrectIndexExplanation": "El dispositivo ledger conectado no encuentra el índice referido a esta cuenta, o la frase de recuperación ha cambiado.", "checkAddress": "Revise la dirección de recepción", - "checkAddressExplanation": "Check that the address matches the one displayed on your Ledger device.", - "applicationNotInitialised": "Warning unconfirmed", - "applicationNotInitialisedExplanation": "Reopen the IOTA app on your Ledger device, accept the informational warning and try again." + "checkAddressExplanation": "Compruebe que la dirección coincida con la mostrada en su dispositivo de ledger.", + "applicationNotInitialised": "Advertencia no confirmada", + "applicationNotInitialisedExplanation": "Re abra la aplicación IOTA en su dispositivo ledger, acepte la advertencia informativa y reintente." } } \ No newline at end of file diff --git a/src/shared/locales/es-LA/translation.json b/src/shared/locales/es-LA/translation.json index 37104c1d8c..41068afb36 100644 --- a/src/shared/locales/es-LA/translation.json +++ b/src/shared/locales/es-LA/translation.json @@ -74,6 +74,8 @@ "wallet": "Billetera", "all": "Todo", "sent": "Enviada", + "youReceived": "You received", + "youSent": "You sent", "received": "Recibida", "sending": "Enviando", "receiving": "Recibiendo", @@ -128,7 +130,7 @@ "spentAddressExplanation": "ALERTA: Fondos en direcciones usadas", "discordInformation": "Enviar desde la misma dirección más de una vez es peligroso. Por favor diríjase al canal #help en Discord para averiguar qué puede hacer.", "androidInsecureClipboardWarning": "Android no ofrece un portapapeles seguro.", - "androidCopyPasteWarning": "Nunca copiar/pegar tu seed en un dispositivo Android.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "No copiaré/pegaré mi semilla", "mustBeStoredAppropriately": "Debe ser almacenado apropiadamente.", "deviceMayBecomeUnresponsive": "Su dispositivo puede dejar de responder durante un rato.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Tu contraseña debe tener al menos {{minLength}} caracteres. Actualmente tiene {{currentLength}} caracteres. Por favor inténtalo nuevamente.", "passwordMismatch": "Las contraseñas no coinciden", "passwordMismatchExplanation": "Las contraseñas introducidas no coinciden. Por favor, inténtalo de nuevo.", - "anEncryptedCopy": "Se almacenará en tu dispositivo una copia encriptada de la semilla. Esta contraseña será la que utilizarás para acceder a tu cartera en futuros ingresos.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Escribe la contraseña de nuevo" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "INICIAR SESIÓN", "setNode": "ESTABLECER NODO", "whyBiometricDisabled": "Por que la autentificación biométrica está deshabilitada?", - "whyBiometricDisabledExplanation": "El inicio de sesión biométrico está deshabilitado en la primera carga de la aplicación por seguridad. Al utilizar Trinity, se cerrará la sesión por inactividad. Entonces podrá iniciar sesión de nuevo con la autentificación biométrica." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Cargando la semilla por primera vez.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Nunca compartas tu semilla con nadie.", "iotaLogo": "Logo IOTA", - "print": "IMPRIMIR", + "print": "Print", "paperConvenience": "Imprimir una copia en papel de su semilla es una buena forma de guardarla.", "publicInsecure": "Pero imprimir con WiFi o impresora publica es inseguro.", - "tapCheckboxes": "Por favor marque las casillas de verificación debajo para confirmar.", - "wifiCheckbox": "No lo imprimiré con un WiFi publico", - "printerCheckbox": "No lo imprimiré en una impresora publica" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Su dirección", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Vamos a anotar su semilla", "youCanHighlightCharacters": "Puede resaltar 9 caracteres a la vez", "printBlankWallet": "Imprima una billetera en blanco", - "whatIsChecksum": "Cada semilla tiene su correspondiente checksum de 3 caracteres", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "He guardado mi semilla", "checksumExplanation": "Cada vez que añada una semilla a su cartera, debería asegurarse de que el checksum generado para la cartera coincide con el que ha anotado.", "mustSaveYourSeed": "<0><0>Debes guardar tu seed con<1>al menos una<2>de las opciones a continuación." @@ -345,7 +351,8 @@ "totalTime": "Tiempo total", "addressPasteDetected": "Dirección copiada en el portapapeles", "addressPasteExplanation": "Parece que ha pegado una dirección. Asegúrese de que la dirección coincida con aquella a la que quiere enviar.", - "invalid": "INVALIDO" + "invalid": "INVALIDO", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Vamos a añadir un nombre", @@ -446,7 +453,8 @@ "empty": "Vacío", "retrying": "Reintentando", "yesterday": "Ayer", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Ver semilla", @@ -504,18 +512,21 @@ "currency": "Divisa" }, "logoutConfirmationModal": { - "logoutConfirmation": "¿Estás seguro que quieres desconectarte?" + "logoutConfirmation": "¿Estás seguro que quieres desconectarte?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Escanea tu código QR" }, "unitInfoModal": { - "unitSystem": "UNIDAD DE SISTEMA", + "unitSystem": "Unit System", "trillion": "Billón", "billion": "Mil millones", "million": "Millón", "thousand": "Mil", - "one": "Unidad" + "one": "Unidad", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "¿Por qué no puedo gastar mi saldo total?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "¿Hizo una copia de seguridad de la semilla?", - "alreadyHave": "He guardado mi semilla", - "reenterSeed": "En el próximo paso, se le pedirá que vuelva a introducir la semilla.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Si no ha guardado su semilla y su dispositivo falla, usted perderá todas sus IOTA.", "pleaseConfirm": "Por favor confirme que ha almacenado correctamente su semilla." }, @@ -572,15 +583,19 @@ "status": "Estado", "fingerprintUnavailable": "Autenticación biométrica no disponible", "fingerprintUnavailableExplanation": "Tu dispositivo no soporta autenticación biométrica o no está configurada en los ajustes del equipo.", - "buttonInstructionsDisable": "Pulsa el botón que hay a continuación para deshabilitar la autenticación de huella dactilar.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Pulsa el botón que hay a continuación para habilitar la autenticación de huella dactilar.", - "buttonInstructionsDisableIPhoneX": "Presione el botón de abajo para desactivar el ID de cara.", - "buttonInstructionsEnableIPhoneX": "Presione el botón de abajo para activar ID de cara.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Toque el lector de huella dactilar para iniciar sesión" }, "transferConfirmation": { "youAreAbout": "Estás a punto de enviar {{contents}} a la dirección", - "aMessage": "un mensaje" + "aMessage": "un mensaje", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Código incorrecto", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Exportar SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Asegúrese de copiar el archivo en varios lugares (ej. disco duro, nube, USB). Si pierde este archivo y no ha almacenado su semilla en otro lugar, perderá sus IOTA.", "exportFail": "Fallo en la exportación de SeedVault", "exportFailExplanation": "Hubo un problema al exportar el SeedVault. Por favor asegúrese de que tiene los permisos apropiados y suficiente espacio libre.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Su semilla fue importada con éxito.", "saveToDownloadFolder": "Guardar para descargar la carpeta", "importSeedVault": "Importar SeedVault", - "dropSeedVaultHere": "Suelte su SeedVault aquí <1> o haga click para buscar", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault no contiene un semilla válida", "noSeedFoundExplanation": "El SeedVault se encuentra vacío o contiene una semilla con un formato no válido.", "seedFileError": "Fallo al abrir SeedVault", "seedFileErrorExplanation": "Hubo un problema al abrir el SeedVault. Si ha seleccionado el archivo correcto entonces puede estar corrompido.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "Market cap", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparando transferencias", "gettingTransactionsToApprove": "Obteniendo transacciones para aprobar", "proofOfWork": "Completando PoW", - "broadcasting": "Transmitiendo" + "broadcasting": "Transmitiendo", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "No se puede completar la transicion de snapshot", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notificaciones", diff --git a/src/shared/locales/et/translation.json b/src/shared/locales/et/translation.json index 6693840626..bd0f131015 100644 --- a/src/shared/locales/et/translation.json +++ b/src/shared/locales/et/translation.json @@ -74,6 +74,8 @@ "wallet": "Rahakott", "all": "Kõik", "sent": "Saadetud", + "youReceived": "You received", + "youSent": "You sent", "received": "Laekunud", "sending": "Saatmine", "receiving": "Saamine", @@ -128,7 +130,7 @@ "spentAddressExplanation": "Hoiatus: Vahendid on kasutatud aadressil", "discordInformation": "Samalt aadressilt saatmine rohkem kui üks kord on ohtlik. Palun suunduge #help kanalile Discordis, et teada saada, mida saakiste teha.", "androidInsecureClipboardWarning": "Android ei paku turvalist lõikepuhvrit.", - "androidCopyPasteWarning": "Ära mitte kunagi kopeeri/kleebi oma seemet Android seadmes.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Ma ei kopeeri/kleebi oma seemet", "mustBeStoredAppropriately": "Seda tuleb nõuetekohaselt varundada.", "deviceMayBecomeUnresponsive": "Teie seade võib mõnda aega mitte vastata.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Teie parool peab olema vähemalt {{minLength}} tähemärki pikk. See on hetkel {{currentLength}} tähemärgi pikkune. Palun proovige uuesti.", "passwordMismatch": "Paroolid ei kattu", "passwordMismatchExplanation": "Sisestatud paroolid ei kattu. Palun proovige uuesti.", - "anEncryptedCopy": "Seemne krüpteeritud koopia salvestatakse teie seadmesse. Seda parooli kasutate edaspidi oma rahakotti sisenemiseks.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Parool uuesti" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Logi sisse", "setNode": "Vali sõlm", "whyBiometricDisabled": "Miks on biomeetriline autentimine keelatud?", - "whyBiometricDisabledExplanation": "Teie turvalisuse huvides on rakenduse esmakordsel avamisel biomeetriline sisselogimine keelatud. Kui kasutate Trinityit, siis logitakse teid välja tegevusetuse tõttu. Seejärel saate sisse logida biomeetrilise autentimisega." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Laadin esimest korda seemet.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Ärge jagage oma seemet kunagi.", "iotaLogo": "IOTA logo", - "print": "PRINDI", + "print": "Print", "paperConvenience": "Teie seemne paberkoopia printimine on sovib viis selle varundamiseks.", "publicInsecure": "Kuid printimine avalikku WiFit või avalikku printerit kasutades on ohtlik.", - "tapCheckboxes": "Kinnitamiseks puudutage palun allpool olevaid märkeruute.", - "wifiCheckbox": "Ma ei prindi avalikku WiFit kasutades", - "printerCheckbox": "Ma ei prindi avalikku printerit kasutades" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Sinu aadress", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Kirjutame teie seemne üles", "youCanHighlightCharacters": "Korraga saate esile tõsta 9 tähemärki", "printBlankWallet": "Prindi tühi rahakott", - "whatIsChecksum": "Igal seemnel on vastav 3-kohaline kontrollsumma", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Ma olen oma seemne salvestanud", "checksumExplanation": "Kui lisate oma rahakotile seemne, peate veenduma, et rahakoti loodud kontrollsumma vastab sellele, mille olete endale üles kirjutanud.", "mustSaveYourSeed": "<0><0>Peate oma seemne salvestama tehes vähemalt <1>ühe <2> alljärgnevatest valikutest." @@ -345,7 +351,8 @@ "totalTime": "Aeg kokku", "addressPasteDetected": "Aadressi lisamine tuvastatud", "addressPasteExplanation": "Tundub, et olete kleepinud aadressi. Veenduge, et aadress vastab sellele, millele soovite saata.", - "invalid": "SOBIMATU" + "invalid": "SOBIMATU", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Lisame nime", @@ -446,7 +453,8 @@ "empty": "Tühi", "retrying": "Uuesti proovimine", "yesterday": "Eile", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Vaata seemet", @@ -504,18 +512,21 @@ "currency": "Valuuta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Kas soovite kindlasti välja logida?" + "logoutConfirmation": "Kas soovite kindlasti välja logida?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Skännige oma QR-koodi" }, "unitInfoModal": { - "unitSystem": "ÜHIKUSÜSTEEM", + "unitSystem": "Unit System", "trillion": "Triljon", "billion": "Miljard", "million": "Miljon", "thousand": "Tuhat", - "one": "Üks" + "one": "Üks", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Miks ma ei saa oma täielikku kontojääki kulutada?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Kas te varundasite oma seemne?", - "alreadyHave": "Ma olen oma seemne varundanud", - "reenterSeed": "Järgmisel sammul palutakse teil oma seemne uuesti sisestada.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Kui te ei ole varundanud oma seemet ja teie seade ebaõnnestub, kaotate kogu oma IOTA.", "pleaseConfirm": "Palun kinnitage, et olete oma seemne turvaliselt varundanud." }, @@ -572,15 +583,19 @@ "status": "Olek", "fingerprintUnavailable": "Biomeetriline autentimine pole saadaval", "fingerprintUnavailableExplanation": "Teie seade ei toeta biomeetrilist autentimist või pole see seadme seadetes konfigureeritud.", - "buttonInstructionsDisable": "Sõrmejäljega autentimise keelamiseks vajutage allpool olevat nuppu.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Sõrmejäljega autentimise lubamiseks vajutage allolevat nuppu.", - "buttonInstructionsDisableIPhoneX": "Face ID keelamiseks vajutage allolevat nuppu.", - "buttonInstructionsEnableIPhoneX": "Face ID lubamiseks vajutage allolevat nuppu.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Sisse logimiseks puudutage sõrmejäljelugejat" }, "transferConfirmation": { "youAreAbout": "Te olete saatmas {{contents}} aadressile", - "aMessage": "sõnum" + "aMessage": "sõnum", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Vale kood", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Ekspordi seemnehoidla", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Veenduge, et olete varundanud faili eri kohtades (nt kõvakettale, pilve, USB). Kui te kaotada selle faili ja pole salvestanud oma seemet mujale, siis kaotate oma IOTA.", "exportFail": "Seemnehoidla eksportimine nurjus", "exportFailExplanation": "Seemnehoidla eksportimisega tekkis probleem. Palun veenduge, et teil on vastavad õigused ja piisavalt vaba ruumi.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Teie seeme imporditi edukalt.", "saveToDownloadFolder": "Salvesta allalaadimiste kausta", "importSeedVault": "Importige seemnehoidla", - "dropSeedVaultHere": "Sisestage seemnehoidla siia <1> või vajutage sirvimiseks", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "Seemnehoidla ei sisalda kehtivat seemet", "noSeedFoundExplanation": "Seemnehoidla on tühi või sisaldab seemet vales vormingus.", "seedFileError": "Seemnehoidla avamine nurjus", "seedFileErrorExplanation": "Seemnehoidla avamisega oli probleem. Kui valisite õige faili, siis võib see olla rikutud.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "TURUKAPITAL", @@ -655,7 +672,8 @@ "preparingTransfers": "Ülekannete ettevalmistamine", "gettingTransactionsToApprove": "Otsin tehinguid, mida heaks kiita", "proofOfWork": "Valmistan töötõendit", - "broadcasting": "Edastamine" + "broadcasting": "Edastamine", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Ei saa hetkvõtte üleminekut lõpetada", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Teated", diff --git a/src/shared/locales/fa/translation.json b/src/shared/locales/fa/translation.json index 8d5f97ce14..1c62ff6c5b 100644 --- a/src/shared/locales/fa/translation.json +++ b/src/shared/locales/fa/translation.json @@ -74,6 +74,8 @@ "wallet": "کیف پول", "all": "All", "sent": "ارسال", + "youReceived": "You received", + "youSent": "You sent", "received": "دریافت شده", "sending": "در حال ارسال", "receiving": "در حال دریافت", @@ -128,7 +130,7 @@ "spentAddressExplanation": "اخطار: موجودی بر روی آدرس های از قبل ساخته شده", "discordInformation": "ارسال برای یک آدرس بیش از یک بار خطرناک است. برای حل این مسئله، به کانال #help در برنامه Discord مراجعه کنید.", "androidInsecureClipboardWarning": "اندروید کلیپ بورد امن را فراهم نمی کند.", - "androidCopyPasteWarning": "هرگز سید خود را بر روی یک دستگاه اندروید کپی و جایگذاری نکنید.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "من اجازه کپی و جایگذاری سید شما را ندارم", "mustBeStoredAppropriately": "این باید به صورت مناسب ذخیره شود.", "deviceMayBecomeUnresponsive": "دستگاه شما ممکن است برای مدتی پاسخگو باشد.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "گذرواژه شما باید حداقل {{minLength}} کاراکتر باشد. در حال حاضر {{currentLength}} کاراکتر میباشد. لطفا دوباره تلاش کنید.", "passwordMismatch": "گذرواژه‌ ها یکسان نیستند", "passwordMismatchExplanation": "گذرواژه هایی که وارد کرده اید، مطابقت ندارند. لطفا دوباره تلاش کنید.", - "anEncryptedCopy": "کپی رمز شده از سید شما بر روی دستگاه شما ذخیره می شود. از این گذرواژه برای دسترسی به کیف پول خود در آینده استفاده خواهید کرد.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "دوباره گذرواژه را وارد کنید" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "ورود", "setNode": "تنظیم Node", "whyBiometricDisabled": "چرا احراز هویت بیومتریک غیرفعال است؟", - "whyBiometricDisabledExplanation": "ورود به سیستم بیومتریک بار اول برای امنیت شما غیر فعال است. هنگام استفاده از Trinity، برای غیرفعال شدن از سیستم خارج می شوید. سپس می توانید با احراز هویت بیومتریک وارد شوید." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "بارگذاری سید برای اولین بار.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "هرگز سید خود را با کسی شریک نکنید.", "iotaLogo": "لوگو آیوتا", - "print": "چاپ", + "print": "Print", "paperConvenience": "چاپ کپی کاغذی از سید شما یک راه مناسب برای ذخیره آن است.", "publicInsecure": "اما چاپ در وای فای عمومی یا چاپگر عمومی نا امن است.", - "tapCheckboxes": "لطفا برای تایید صحت تیک های زیر بزنید.", - "wifiCheckbox": "من در وای فای عمومی چاپ نمی کنم", - "printerCheckbox": "من بر روی چاپگر عمومی چاپ نمی کنم" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "آدرس شما", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "شما می توانید 9 کاراکتر را در یک زمان برجسته کنید", "printBlankWallet": "یک کیف پول خالی را چاپ کنید", - "whatIsChecksum": "هر سید یک کد اعتبارسنجی 3 حرفی دارد", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "من سید خود را ذخیره کردم", "checksumExplanation": "هر گاه سید را به کیف پول خود اضافه می کنید، باید اطمینان حاصل کنید که کد اعتبارسنجی تولید شده از کیف پول مطابق با آنچه نوشته شده است.", "mustSaveYourSeed": "<0><0>شما باید از سید خود پشتیبان تهیه کنید با <1>حداقل یکی<2>از گزینه های ذکر شده در لیست زیر" @@ -345,7 +351,8 @@ "totalTime": "کل زمان", "addressPasteDetected": "آدرس جایگذاری تشخیص داده شد", "addressPasteExplanation": "به نظر می رسد که یک آدرس را جاگذاری کرده اید. اطمینان حاصل کنید که آدرس جایگذاری شده با آدرسی که شما می خواهید به آن ارسال کنید یکسان باشد.", - "invalid": "نامعتبر" + "invalid": "نامعتبر", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "لطفا یک نام اضافه کنید", @@ -446,7 +453,8 @@ "empty": "خالی", "retrying": "درحال تلاش دوباره", "yesterday": "دیروز", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "مشاهده سید", @@ -504,18 +512,21 @@ "currency": "واحد پول" }, "logoutConfirmationModal": { - "logoutConfirmation": "آیا مطمئنید که می‌خواهید خارج شوید؟" + "logoutConfirmation": "آیا مطمئنید که می‌خواهید خارج شوید؟", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "اسکن کد QR شما" }, "unitInfoModal": { - "unitSystem": "واحد سیستم", + "unitSystem": "Unit System", "trillion": "تریلیون", "billion": "بیلیون", "million": "میلیون", "thousand": "هزار", - "one": "یک" + "one": "یک", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "چرا من نمی توانم موجودی کامل خود را انتقال بدهم؟", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "آیا از سید خود پشتیبانی گرفتید؟", - "alreadyHave": "من از سید خود پشتیبانی گرفتم", - "reenterSeed": "در مرحله بعد، از شما خواسته می شود تا سید خود را دوباره وارد کنید.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "اگر از سید خودتان پشتیبانی تهیه نکنید و دستگاه شما خراب بشود، شما تمام آیوتای خود را از دست خواهید داد.", "pleaseConfirm": "لطفا تایید کنید که سید خود را ایمن نگه داشته اید." }, @@ -572,15 +583,19 @@ "status": "وضعیت", "fingerprintUnavailable": "احراز هویت بیومتریک در دسترس نیست", "fingerprintUnavailableExplanation": "دستگاه شما از تاییدیه بیومتریک پشتیبانی نمیکند یا در تنظیمات دستگاه پیکربندی نشده است.", - "buttonInstructionsDisable": "برای غیرفعال کردن تایید اثر انگشت، دکمه زیر را فشار دهید.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "برای فعال کردن تایید اثر انگشت، دکمه زیر را فشار دهید.", - "buttonInstructionsDisableIPhoneX": "برای غیرفعال کردن Face ID، دکمه زیر را فشار دهید.", - "buttonInstructionsEnableIPhoneX": "برای فعال کردن Face ID، دکمه زیر را فشار دهید.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "اثر انگشت برای ورود به سیستم را لمس کنید" }, "transferConfirmation": { "youAreAbout": "شما در حال ارسال به آدرس {{contents}} هستید", - "aMessage": "یک پیام" + "aMessage": "یک پیام", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "کد اشتباه است", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "استخراج سید Vault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "اطمینان حاصل کنید که فایل را در چندین مکان (مانند هارد دیسک، فضای ابری، فلش) پشتیبان بگیرید. اگر این فایل را از دست بدهید و سید خود را در جایی ذخیره نکرده باشید، آیوتای خود را از دست خواهید داد.", "exportFail": "استخراج سید Vault ناموفق بود", "exportFailExplanation": "مشکل استخراج سید Vault وجود داشت. لطفا اطمینان حاصل کنید که مجوز های مناسب و فضای آزاد کافی دارید.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "وارد کردن سید Vault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "سید Vault حاوی سید معتبر نیست", "noSeedFoundExplanation": "سید Vault یا خالی است یا حاوی یک سید در قالب نامعتبر است.", "seedFileError": "باز کردن فایل سید Vault ناموفق بود", "seedFileErrorExplanation": "در باز کردن سید Vault با مشکل مواجه شد. اگر فایل درست را انتخاب کردید، ممکن است خراب شده باشد.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "آماده سازی انتقال", "gettingTransactionsToApprove": "گرفتن معاملات برای تایید", "proofOfWork": "تکمیل اثبات کار", - "broadcasting": "در حال پخش" + "broadcasting": "در حال پخش", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "انتقال عکس فوری امکانپذیر نیست", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/fi/translation.json b/src/shared/locales/fi/translation.json index bbedcc7a42..31d38bdf32 100644 --- a/src/shared/locales/fi/translation.json +++ b/src/shared/locales/fi/translation.json @@ -74,6 +74,8 @@ "wallet": "Lompakko", "all": "Kaikki", "sent": "Lähetetty", + "youReceived": "You received", + "youSent": "You sent", "received": "Vastaanotettu", "sending": "Lähettää", "receiving": "Odottaa", @@ -128,7 +130,7 @@ "spentAddressExplanation": "VAROITUS: Varoja jo käytetyssä osoitteessa", "discordInformation": "Lähettäminen osoitteesta, josta on aikaisemmin lähetetty varoja on vaarallista. Saadaksesi apua tilanteeseen voit liittyä Iotan Discord palvelun #help kanavalle.", "androidInsecureClipboardWarning": "Leikepöydän käyttö Android-laitteella ei ole turvallista.", - "androidCopyPasteWarning": "Älä kopio tai liitä seed-lukua Android-laitteella.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "En kopio tai liitä seed-lukua android puhelimessa", "mustBeStoredAppropriately": "Se on tallennettava turvallisesti.", "deviceMayBecomeUnresponsive": "Laitteesi saattaa toimia hitaasti hetken aikaa.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Salasanasi on oltava vähintään {{minLength}} merkkiä. Se on tällä hetkellä {{currentLength}} merkin pituinen. Yritä uudelleen.", "passwordMismatch": "Salasanat eivät täsmää", "passwordMismatchExplanation": "Annetut salasanat eivät täsmää. Yritä uudelleen.", - "anEncryptedCopy": "Seed-lukusi salattu kopio tallennetaan laitteellesi. Tällä salasanalla pääset käyttämään lompakkoasi jatkossa.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Kirjoita Salasana Uudelleen" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Kirjaudu Sisään", "setNode": "Aseta Palvelin", "whyBiometricDisabled": "Miksi biometrinen tunnistus pois käytöstä?", - "whyBiometricDisabledExplanation": "Biometrinen tunnistus on pois käytöstä kun sovellus käynnistetään ensimmäistä kertaa. Ensimäisen käynnistyksen jälkeen biometristä tunnistusta voidaan käyttää. Tunnistus nollautuu, kun laite käynnistetään uudelleen, tämä johtuu sovelluksen tietoturvasta." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Ladataan seed-lukua ensimmäistä kertaa.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Älä koskaa jaa seed-lukua kenenkään ulkopuolisen kanssa.", "iotaLogo": "IOTA-logo", - "print": "TULOSTA", + "print": "Print", "paperConvenience": "Seed-luvun tulostaminen paperille on hyvä tapa tallentaa se laitteen ulkopuolelle.", "publicInsecure": "Tulostaminen julkisessa verkossa tai julkisella tulostimella ei kuitenkaan ole turvallista.", - "tapCheckboxes": "Paina alla olevia laatikoita vahvistaaksesi että ymmärrät ohjeistuksen.", - "wifiCheckbox": "En tulosta julkisessa wifi-verkossa", - "printerCheckbox": "En tulosta julkisella tulostimella" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Osoitteesi", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "Voit korostaa 9 merkkiä kerrallaan", "printBlankWallet": "Tulosta tyhjä lompakko", - "whatIsChecksum": "Jokaisella seed-luvulla on kolmen merkin pituinen tarkistussumma", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Seed-luku turvassa", "checksumExplanation": "Kun lisäät seed-luvun lompakkoon, varmista että kolmen merkin pituinen tarkistussumma vastaa alkuperäistä.", "mustSaveYourSeed": "<0><0>Tallenna seed-lukusi käyttäen <1>vähintään yhtä<2> alla olevista vaihtoehdoista." @@ -345,7 +351,8 @@ "totalTime": "Kokonaisaika", "addressPasteDetected": "Osoitteen liittäminen havaittu", "addressPasteExplanation": "Näyttää siltä että olet liittänyt osoitteen muualta. Varmista että liitetty osoite vastaa alkuperäistä.", - "invalid": "VIRHEELLINEN" + "invalid": "VIRHEELLINEN", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Annetaan seed-luvulle nimi", @@ -446,7 +453,8 @@ "empty": "Tyhjä", "retrying": "Yritetään uudelleen", "yesterday": "Eilen", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Katso seed-luku", @@ -504,18 +512,21 @@ "currency": "Valuutta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Haluatko varmasti kirjautua ulos?" + "logoutConfirmation": "Haluatko varmasti kirjautua ulos?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Skannaa QR-koodi" }, "unitInfoModal": { - "unitSystem": "YKSIKKÖJÄRJESTELMÄ", + "unitSystem": "Unit System", "trillion": "Biljoonaa", "billion": "Miljardia", "million": "Miljoonaa", "thousand": "Tuhatta", - "one": "Yksi" + "one": "Yksi", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Miksi en voi käyttää koko tilin saldoa?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Tallensitko seed-lukusi?", - "alreadyHave": "Seed-luku turvassa", - "reenterSeed": "Seuraavassa vaiheessa sinua pyydetään antamaan seed-lukusi uudelleen.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Jos et ole tallentanut seed-lukuasi laitteen ulkopuolelle, saatat laitteen hajotessa menettää kaikki varasi.", "pleaseConfirm": "Varmista, että olet tallentanut seed-lukusi turvallisesti." }, @@ -572,15 +583,19 @@ "status": "Tila", "fingerprintUnavailable": "Biometrinen tunnistus ei ole käytettävissä", "fingerprintUnavailableExplanation": "Laitteesi ei tue biometristä tunnistusta tai se on otettu pois käytöstä asetuksista.", - "buttonInstructionsDisable": "Paina alla olevaa painiketta poistaaksesi sormenjälkitunnistuksen käytöstä.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Paina alla olevaa painiketta ottaaksesi sormenjälkitunnistuksen käyttöön.", - "buttonInstructionsDisableIPhoneX": "Paina alla olevaa painiketta poistaaksesi kasvotunnistuksen.", - "buttonInstructionsEnableIPhoneX": "Paina alla olevaa painiketta ottaaksesi kasvontunnistuksen käyttöön.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Kosketa sormenjälkilukijaa kirjautuaksesi sisään" }, "transferConfirmation": { "youAreAbout": "Olet lähettämässä {{contents}} osoitteeseen", - "aMessage": "viesti" + "aMessage": "viesti", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Väärä koodi", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Vie SeedVault-tiedosto", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Varmista että tallennat tiedoston useaan eri paikkaan (kovalevy, pilvi, USB-tikku). Jos hävitä tiedoston, etkä ole tallentanut tiedostoa muualle, menetät pääsyn IOTA-varoihisi.", "exportFail": "SeedVault-tiedoston vienti epäonnistui", "exportFailExplanation": "SeedVault-tiedoston viennissä ilmeni ongelmia. Varmista että sinulla on riittävät oikeudet ja tarpeeksi tilaa levyllä.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Tuo Seedvault-tiedosto", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault-tiedosto ei sisällä kelvolista seed-lukua", "noSeedFoundExplanation": "SeedVault-tiedosto on joko tyhjä tai sisältää seed-luvun virheellisessä muodossa.", "seedFileError": "SeedVault-tiedoston avaaminen epäonnistui", "seedFileErrorExplanation": "SeedVault-tiedoston avaamisessa ilmeni ongelmia. Varmista että sinulla on oikea tiedosto, eikä se ole korruptoitunut.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MARVO", @@ -655,7 +672,8 @@ "preparingTransfers": "Alustetaan siirtoja", "gettingTransactionsToApprove": "Odotetaan siirtoja hyväksyttäväksi", "proofOfWork": "Viimeistellään laskentatyö (Proof of Work)", - "broadcasting": "Lähetetään" + "broadcasting": "Lähetetään", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Snapshot-siirtymä ei onnistu", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/fr/translation.json b/src/shared/locales/fr/translation.json index d302fd125c..8c70cae370 100644 --- a/src/shared/locales/fr/translation.json +++ b/src/shared/locales/fr/translation.json @@ -19,7 +19,7 @@ "invalidResponse": "Erreur de serveur", "invalidResponseExplanation": "Le serveur a renvoyé une erreur. Essayez de changer de serveur.", "invalidResponseFetchingAccount": "Le serveur a renvoyé une erreur lors de la récupération des informations de votre compte. Essayez de changer de serveur.", - "invalidResponseFetchingAccountDesktop": "The node returned an error while fetching your account information. If your problem persists, try changing node or disabling your system proxy in Trinity Settings.", + "invalidResponseFetchingAccountDesktop": "Le nœud a renvoyé une erreur en allant chercher les informations de votre compte. Si le problème persiste, essayez de changer nœud ou désactiver votre proxy dans les paramètres de la Trinity.", "nodeOutOfSync": "Serveur non synchronisé", "nodeOutOfSyncExplanation": "Le serveur actuellement sélectionné est désynchronisé. Veuillez changer le serveur ou essayer à nouveau.", "thisNodeOutOfSync": "Ce serveur est désynchronisé. Veuillez changer le serveur ou essayer à nouveau.", @@ -74,6 +74,8 @@ "wallet": "Portefeuille", "all": "Tout", "sent": "Envoyé", + "youReceived": "You received", + "youSent": "You sent", "received": "Reçue", "sending": "Envoi en cours", "receiving": "Réception", @@ -128,7 +130,7 @@ "spentAddressExplanation": "ATTENTION : Fonds sur des adresses déjà utilisées", "discordInformation": "Envoyer des fonds depuis une adresse déjà utilisée est dangereux. Merci de prendre contact avec le canal #help sur Discord pour savoir ce qu'il est possible de faire.", "androidInsecureClipboardWarning": "Android ne fournit pas de presse-papier sécurisé.", - "androidCopyPasteWarning": "Ne jamais copier/coller votre seed sur un appareil Android.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Je ne copierai/collerai pas ma seed", "mustBeStoredAppropriately": "Elle doit être stockée correctement.", "deviceMayBecomeUnresponsive": "Votre appareil peut ne pas répondre pendant un certain temps.", @@ -144,14 +146,16 @@ "tryingAgainWithLocalPoW": "Réessayez en choisissant la preuve de travail locale.", "tryingAgainWithDifferentNode": "Réessayez avec un autre nœud.", "errorFetchingAccountInformation": "Erreur durant la récupération des informations de votre compte.", - "errorSyncingAddresses": "Error syncing address information. Trying again with a different node.", + "errorSyncingAddresses": "Une erreur a été rencontrée pendant la synchronisation des informations de vos adresses. Essayer de nouveau avec un autre nœud.", "errorAccessingKeychain": "Erreur de Porte-clés", "errorAccessingKeychainExplanation": "Impossible d'accéder au porte-clés nécessaire au stockage sécurisé.", "mainWallet": "COMPTE PRINCIPAL", - "shouldUpdate": "A new update is available", - "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", - "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "confirm": "Confirm", + "delete": "Delete", + "shouldUpdate": "Une mise à jour est disponible", + "shouldUpdateExplanation": "Une nouvelle mise à jour a été publiée. Il est recommandé que vous mettiez à jour vers la dernière version.", + "forceUpdate": "Mettez à jour l'application pour continuer", + "forceUpdateExplanation": "Une mise à jour critique est disponible. S’il vous plaît, mettez à jour l’application maintenant." }, "addAdditionalSeed": { "seedInvalidChars": "La seed contient des caractères invalides", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Votre mot de passe doit comporter au moins {{minLength}} caractères. Il comporte actuellement {{currentLength}} caractères. Veuillez réessayer.", "passwordMismatch": "Les mots de passe ne correspondent pas", "passwordMismatchExplanation": "Les mots de passe que vous avez saisis ne correspondent pas. Veuillez réessayer.", - "anEncryptedCopy": "Une copie chiffrée de votre seed sera stockée sur votre appareil. Vous utiliserez ce mot de passe pour accéder à votre portefeuille à l’avenir.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Confirmer le mot de passe" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Connexion", "setNode": "Choisir un serveur", "whyBiometricDisabled": "Pourquoi l'authentification biométrique est-elle désactivée?", - "whyBiometricDisabledExplanation": "L'authentification biométrique est désactivée lors du premier chargement pour votre sécurité. Lorsque vous utilisez Trinity, vous serez déconnecté pour inactivité. Vous pourrez alors vous reconnecter avec l’authentification biométrique." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Chargement de la seed pour la première fois.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Ne communiquez votre seed à personne.", "iotaLogo": "Logo IOTA", - "print": "IMPRIMER", + "print": "Print", "paperConvenience": "Imprimer une copie papier de votre seed est un moyen pratique de la stocker.", "publicInsecure": "Mais l’impression avec un wifi public ou une imprimante publique n’est pas sécurisée.", - "tapCheckboxes": "Veuillez cocher les cases ci-dessous pour confirmer.", - "wifiCheckbox": "Je n'imprimerai pas avec un wifi publique", - "printerCheckbox": "Je ne l'imprimerai pas sur une imprimante publique" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Votre adresse", @@ -282,15 +287,15 @@ "copyAddress": "Copier l'adresse", "addressCopied": "Adresse copiée", "addressCopiedExplanation": "Votre adresse a été copiée dans le presse-papier.", - "generateNewAddress": "Generate address", + "generateNewAddress": "Générer une nouvelle adresse", "noAddresses": "AUCUNE ADRESSE", "spent": "Envoyé", "missingPermission": "Autorisation de système de fichiers requise", "missingPermissionExplanation": "L'accès au système de fichiers est nécessaire afin de partager les codes QR.", "tag": "Étiquette", - "generateAnAddress": "Generate address", - "generateAnAddressTitle": "Generate an address", - "generateAnAddressExplanation": "Please generate an address before using this function." + "generateAnAddress": "Générer une nouvelle adresse", + "generateAnAddressTitle": "Générer une nouvelle adresse", + "generateAnAddressExplanation": "S’il vous plaît, générez une adresse avant d’utiliser cette fonction." }, "saveYourSeed": { "saveYourSeed": "Sauvegarder votre seed", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Écrivez votre seed", "youCanHighlightCharacters": "Vous pouvez sélectionner 9 caractères à la fois", "printBlankWallet": "Imprimer un portefeuille vide", - "whatIsChecksum": "Chaque seed a une somme de contrôle de 3 caractères", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "J’ai enregistré ma seed", "checksumExplanation": "Chaque fois que vous ajoutez une seed à votre portefeuille, vous devez vous assurer que les sommes de contrôle affichées correspondent bien à celle de votre seed.", "mustSaveYourSeed": "<0><0>Vous devez sauvegarder votre seed avec <1>au moins une<2> des options citées ci-dessous." @@ -345,7 +351,8 @@ "totalTime": "Temps total", "addressPasteDetected": "Adresse collée détectée", "addressPasteExplanation": "On dirait que vous avez collé une adresse. Assurez-vous que l’adresse collée corresponde à celle que vous voulez utiliser.", - "invalid": "INVALIDE" + "invalid": "INVALIDE", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Veuillez ajouter un nom", @@ -446,7 +453,8 @@ "empty": "Vide", "retrying": "Nouvelle tentative", "yesterday": "Hier", - "promotingAnotherBundle": "Promotion d'un autre bundle en cours" + "promotingAnotherBundle": "Promotion d'un autre bundle en cours", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Afficher la seed", @@ -504,18 +512,21 @@ "currency": "Devise" }, "logoutConfirmationModal": { - "logoutConfirmation": "Êtes-vous sûr(e) de vouloir vous déconnecter ?" + "logoutConfirmation": "Êtes-vous sûr(e) de vouloir vous déconnecter ?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Scannez votre QR code" }, "unitInfoModal": { - "unitSystem": "SYSTÈME D’UNITÉS", + "unitSystem": "Unit System", "trillion": "Billion", "billion": "Milliard", "million": "Million", "thousand": "Mille", - "one": "Un" + "one": "Un", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Pourquoi ne puis-je pas dépenser l'intégralité de mon solde ?", @@ -545,14 +556,14 @@ "enterPassword": "Saisissez le mot de passe pour afficher votre seed.", "viewSeed": "Afficher la seed", "hideSeed": "Masquer la seed", - "notAvailable": "Seed export is not available for {{accountType}} account type", + "notAvailable": "L'exportation de la seed n’est pas disponible pour le compte {{accountType}}", "accountIndex": "Sommaire de votre compte général", - "accountPage": "Your Ledger account page" + "accountPage": "Numéro de page du compte de la Ledger" }, "saveSeedConfirmation": { "didSaveSeed": "Avez-vous enregistré votre seed ?", - "alreadyHave": "J’ai enregistré ma seed", - "reenterSeed": "À l’étape suivante, on vous demandera d’entrer de nouveau votre seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Si vous n’avez pas sauvegardé votre seed et que votre appareil tombe en panne, vous perdrez tous vos IOTA.", "pleaseConfirm": "Veuillez confirmer que vous avez stocké votre seed en toute sécurité." }, @@ -572,15 +583,19 @@ "status": "Statut", "fingerprintUnavailable": "Authentification biométrique indisponible", "fingerprintUnavailableExplanation": "Votre appareil ne supporte pas l'authentification biométrique, ou cette fonction n'a pas été configurée dans les paramètres de votre appareil.", - "buttonInstructionsDisable": "Appuyez sur le bouton ci-dessous pour désactiver l’authentification par empreinte digitale.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Appuyez sur le bouton ci-dessous pour activer l’authentification par empreinte digitale.", - "buttonInstructionsDisableIPhoneX": "Appuyez sur le bouton ci-dessous pour désactiver Face ID.", - "buttonInstructionsEnableIPhoneX": "Appuyez sur le bouton ci-dessous pour activer Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touchez le lecteur d'empreintes pour vous connecter" }, "transferConfirmation": { "youAreAbout": "Vous êtes sur le point d’envoyer {{contents}} à l’adresse", - "aMessage": "un message" + "aMessage": "un message", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Code incorrect", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Exporter SeedVault", - "seedVaultExplanation": "Un SeedVault est un fichier crypté pour stocker votre seed en toute sécurité. La seed est encryptée à l'aide d'un mot de passe et n'est pas accessible sans ce mot de passe.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Assurez-bous de conserver le fichier en plusieurs endroits (par ex. disque dur, cloud, USB). Si vous perdez ce fichier et que vous n'avez pas stocké votre seed ailleurs, vous perdrez vos IOTA.", "exportFail": "Échec de l'exportation de SeedVault", "exportFailExplanation": "Il y a eu un problème lors de l'exportation de SeedVault. Veuillez vous assurer que vous avez les autorisations requises et suffisamment d'espace libre.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Votre seed a été importée avec succès.", "saveToDownloadFolder": "Enregistrer dans le dossier Téléchargements", "importSeedVault": "Importer un SeedVault", - "dropSeedVaultHere": "Déposez le SeedVault ici <1> ou cliquez sur parcourir", + "dropInstructions": "Déposez le fichier SeedVault ici <1> ou cliquez sur parcourir", + "dropActive": "Déposez le fichier SeedVault ou du texte ici", "enterKeyExplanation": "Entrez votre mot de passe pour ouvrir le SeedVault", "noSeedFound": "Le SeedVault ne contient pas de seed valide", "noSeedFoundExplanation": "Le SeedVault est vide ou contient une seed dans un format non valide.", "seedFileError": "Échec de l'ouverture du SeedVaulet", "seedFileErrorExplanation": "Il y a eu un problème lors de l'ouverture du SeedVault. Si vous avez sélectionné le bon fichier, il est peut-être endommagé.", - "seedVaultKeyExplanation": "Tout d’abord, nous avons besoin de sécuriser votre SeedVault. Veuillez choisir un mot de passe pour chiffrer le fichier. Vous aurez besoin de ce mot de passe pour restaurer votre seed à partir de la sauvegarde SeedVault. N’hésitez pas à utiliser le même mot de passe que vous utilisez pour Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Préparation des transferts", "gettingTransactionsToApprove": "Réception des transactions à valider", "proofOfWork": "Finalisation de la preuve de travail", - "broadcasting": "Diffusion en cours" + "broadcasting": "Diffusion en cours", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Impossible de terminer la transition du snapshot", @@ -706,8 +724,8 @@ "completeSetup": "Configuration terminée" }, "proxy": { - "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxy": "Utiliser le proxy du système", + "proxyExplanation": "Détecter et utiliser les paramètres proxy du système réseau étendu. Fermez, puis ré ouvrez Trinity après avoir modifié ce paramètre." }, "notifications": { "notifications": "Notifications", @@ -733,35 +751,35 @@ "sweepConfirmationTitle": "Confirmation de balayage" }, "ledger": { - "ready": "Ledger device connected and ready", - "notReady": "If you wish to use a Ledger device, connect and unlock it now", + "ready": "La Ledger est connectée et prête", + "notReady": "Si vous souhaitez utiliser une clé Ledger, connectez et débloquez la maintenant", "indexInUse": "Index en cours d'utilisation pour le compte {{account}}", - "indexInUseExplanation": "Your chosen index is already in use on one of your accounts. Please choose another index number.", - "proceedWithLedger": "Proceed with Ledger setup", - "accountIndex": "Account index", - "accountPage": "Account page", - "chooseAccountIndex": "Choose your Ledger account index", - "accountIndexExplanation": "Your Ledger can store multiple seeds. Each seed is identified by a unique index number. An unused index has been pre-selected, but feel free to choose your own. Make sure you note down your chosen index number.", - "accountPageExplanation": "Some third party wallets require pages.", - "connectionError": "Cannot connect to Ledger", - "connectionErrorExplanation": "Check that your Ledger is connected and unlocked.", - "connectionTitle": "Connect your Ledger", - "connectionExplanation": "A Ledger device must be connected to perform this function.", - "transactionTitle": "Scroll through and approve the transaction on your Ledger", - "transactionExplanation": "Use your Ledger device to approve the outgoing transaction.", - "applicationTitle": "Open Ledger IOTA app", - "applicationExplanation": "Go to your Ledger and open the IOTA app to continue using Trinity.", - "cannotSendZeroValueTitle": "Cannot send zero value transfer", - "cannotSendZeroValueExplanation": "Cannot send zero value transfers with a Ledger device.", - "ledgerDisconnectedTitle": "Ledger device disconnected", - "ledgerDisconnectedExplanation": "The Ledger device was disconnected. Please reconnect and try again.", - "ledgerDeniedTitle": "Transaction denied", - "ledgerDeniedExplanation": "The transaction was denied on the Ledger device.", - "ledgerIncorrectIndex": "Ledger device mismatch", - "ledgerIncorrectIndexExplanation": "The connected Ledger device does not match the one linked to this account, or the recovery phrase has been changed.", - "checkAddress": "Check the receive address", - "checkAddressExplanation": "Check that the address matches the one displayed on your Ledger device.", - "applicationNotInitialised": "Warning unconfirmed", - "applicationNotInitialisedExplanation": "Reopen the IOTA app on your Ledger device, accept the informational warning and try again." + "indexInUseExplanation": "Votre index choisi est déjà utilisé sur l’un de vos comptes. Veuillez choisir un autre numéro d’index.", + "proceedWithLedger": "Continuer avec la Ledger", + "accountIndex": "Index du compte", + "accountPage": "Page du compte", + "chooseAccountIndex": "Choisissez l'index de le Ledger", + "accountIndexExplanation": "Votre clé Ledger peut stocker plusieurs seed. Chaque seed est identifiée par un numéro d’index unique. Un index inutilisé a été présélectionné, mais n’hésitez pas à choisir par vous même. Assurez-vous de notez votre numéro d’index choisi.", + "accountPageExplanation": "Certains portefeuilles tiers nécessitent l'utilisation de page.", + "connectionError": "Impossible de se connecter à la Ledger", + "connectionErrorExplanation": "Vérifiez que votre Ledger est connectée et déverrouillée.", + "connectionTitle": "Connectez votre Ledger", + "connectionExplanation": "Une Ledger doit être connectée pour utiliser cette fonction.", + "transactionTitle": "Faites défiler et approuvez la transaction sur votre clé Ledger", + "transactionExplanation": "Utilisez votre clé Ledger pour approuver la transaction sortante.", + "applicationTitle": "Ouvrez l'app IOTA sur votre clé Ledger", + "applicationExplanation": "Allez dans votre clé Ledger et ouvrez l’application IOTA pour continuer à utiliser Trinity.", + "cannotSendZeroValueTitle": "Impossible d’envoyer des transactions sans valeur", + "cannotSendZeroValueExplanation": "Impossible d’envoyer des transactions sans valeur avec une clé Ledger.", + "ledgerDisconnectedTitle": "Clé Ledger déconnectée", + "ledgerDisconnectedExplanation": "La clé Ledger a été déconnectée. Veuillez la reconnecter et réessayez.", + "ledgerDeniedTitle": "Transaction refusée", + "ledgerDeniedExplanation": "La transaction a été refusée par la clé Ledger.", + "ledgerIncorrectIndex": "Incompatibilité de la Ledger", + "ledgerIncorrectIndexExplanation": "La clé Ledger ne correspond pas à celle liée à ce compte, ou la phrase de récupération de la clé a été changée.", + "checkAddress": "Vérifiez l’adresse de réception", + "checkAddressExplanation": "Vérifiez que les adresses affichées par la Ledger et votre ordinateur correspondent bien.", + "applicationNotInitialised": "Avertissements non confirmés", + "applicationNotInitialisedExplanation": "Ré ouvrez l’application IOTA sur clé Ledger, acceptez l’avertissement d’information et essayez à nouveau." } } \ No newline at end of file diff --git a/src/shared/locales/he/translation.json b/src/shared/locales/he/translation.json index 486f1ef270..dfd14075a1 100644 --- a/src/shared/locales/he/translation.json +++ b/src/shared/locales/he/translation.json @@ -74,6 +74,8 @@ "wallet": "ארנק", "all": "All", "sent": "נשלח", + "youReceived": "You received", + "youSent": "You sent", "received": "התקבל", "sending": "שולח", "receiving": "מקבל", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Your password must be at least {{minLength}} characters. It is currently {{currentLength}} characters long. Please try again.", "passwordMismatch": "הסיסמאות לא תואמות", "passwordMismatchExplanation": "The passwords you have entered do not match. Please try again.", - "anEncryptedCopy": "An encrypted copy of your seed will be stored on your device. You will use this password to access your wallet in future.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Retype Password" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "טוען את הסיד בפעם הראשונה.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Never share your seed with anyone.", "iotaLogo": "IOTA logo", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>עליך לשמור את הסיד שלך עם <1>לפחות פעם אחת<2> ממספר הפעמים שמופיע." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "צפה בסיד", @@ -504,18 +512,21 @@ "currency": "מטבע" }, "logoutConfirmationModal": { - "logoutConfirmation": "אתה בטוח שאתה רוצה להתנתק?" + "logoutConfirmation": "אתה בטוח שאתה רוצה להתנתק?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Scan your QR code" }, "unitInfoModal": { - "unitSystem": "UNIT SYSTEM", + "unitSystem": "Unit System", "trillion": "Trillion", "billion": "Billion", "million": "Million", "thousand": "Thousand", - "one": "אחד" + "one": "אחד", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "אני שמרתי את הסיד שלי", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "סטאטוס", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "a message" + "aMessage": "a message", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "קוד שגוי", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/hi/translation.json b/src/shared/locales/hi/translation.json index bbc68f7dc2..8d92f855ce 100644 --- a/src/shared/locales/hi/translation.json +++ b/src/shared/locales/hi/translation.json @@ -74,6 +74,8 @@ "wallet": "वॉलेट", "all": "All", "sent": "भेजे गए", + "youReceived": "You received", + "youSent": "You sent", "received": "प्राप्त हुआ", "sending": "भेज रहे है", "receiving": "प्राप्त हो रहा है", @@ -128,7 +130,7 @@ "spentAddressExplanation": "चेतावनी: पहले से उपयोग एड्रेस पर बैलेंस", "discordInformation": "एक ही पते से एक से अधिक बार भेजना खतरनाक है । आप क्या कर सकते हैं पता लगाने के लिए कलह पर #help चैनल के लिए सिर कृपया ।", "androidInsecureClipboardWarning": "एंड्रॉयड एक सुरक्षित क्लिपबोर्ड प्रदान नहीं करता है ।", - "androidCopyPasteWarning": "एक Android डिवाइस पर अपने सीड कभी भी कॉपी पेस्ट न करे |", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "मैं अपने सीड को कॉपी पेस्ट नहीं करूंगा", "mustBeStoredAppropriately": "यह उचित रूप से संग्रहीत किया जाना चाहिए ।", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "आपका पासवर्ड कम से कम {{minLength}} वर्ण होना चाहिए। यह वर्तमान में {{currentLength}} वर्ण लंबा है कृपया पुन: प्रयास करें।", "passwordMismatch": "पासवर्ड्स समान नहीं हैं", "passwordMismatchExplanation": "पासवर्ड्स जो आप दर्ज किया, मिलान नहीं हो रहा हैं। कृपया दोबारा लिखें।", - "anEncryptedCopy": "अपने सीड की एक एंक्रिप्टेड प्रतिलिपि आपके डिवाइस पर संग्रहीत किया जाएगा । आप भविष्य में अपने वॉलेट तक पहुंचने के लिए इस पासवर्ड का उपयोग करेंगे ।", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "पासवर्ड पुन: लिखें" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "लॉग इन करें", "setNode": "नोड सेट करें", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "पहली बार के लिए seed लोड हो रहा है ।", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "कभी किसी के साथ अपने सीड का साझा न करे ।", "iotaLogo": "IOTA लोगो", - "print": "प्रिंट", + "print": "Print", "paperConvenience": "अपने सीड की एक कागज प्रति प्रिंट एक सुविधाजनक तरीका है सहेजने के लिए |", "publicInsecure": "लेकिन सार्वजनिक वाईफ़ाई या एक सार्वजनिक प्रिंटर पर मुद्रण असुरक्षित है ।", - "tapCheckboxes": "कृपया पुष्टि करने के लिए नीचे चेकबॉक्स टैप करें ।", - "wifiCheckbox": "मैं किसी सार्वजनिक प्रिंटर पर प्रिंट नहीं करूंगा", - "printerCheckbox": "मैं किसी सार्वजनिक प्रिंटर पर प्रिंट नहीं करूंगा" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "आप एक बार में 9 वर्णों को हाइलाइट कर सकते हैं", "printBlankWallet": "खाली वॉलेट प्रिंट करे", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "मैंने अपना सीड सहेज लिया है", "checksumExplanation": "जब भी आप अपने वॉलेट में कोई बीज जोड़ते हैं, तो आपको यह सुनिश्चित करना चाहिए कि वॉलेट जेनरेट किया गया checksum आपके द्वारा लिखे गए एक से मेल खाता है ।", "mustSaveYourSeed": "<0> <0> आपको <1> के साथ अपने सीड को नीचे सूचीबद्ध विकल्पों में से कम एक <2> से बचाना होगा । " @@ -345,7 +351,8 @@ "totalTime": "कुल समय", "addressPasteDetected": "एड्रेस पेस्ट डेटेक्टेड", "addressPasteExplanation": "ऐसा लगता है कि आपने एक एड्रेस पेस्ट किया है । सुनिश्चित करें कि एड्रेस उस एक से मेल खाता है जिसे आप भेजना चाहते हैं ।", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "आइए एक नाम जोड़ें", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "सीड देखें", @@ -504,18 +512,21 @@ "currency": "करेंसी" }, "logoutConfirmationModal": { - "logoutConfirmation": "क्या वाकई आप लॉग आउट करने के लिए चाहते हैं?" + "logoutConfirmation": "क्या वाकई आप लॉग आउट करने के लिए चाहते हैं?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "QR कोड स्कैन करें" }, "unitInfoModal": { - "unitSystem": "यूनिट सिस्टम", + "unitSystem": "Unit System", "trillion": "ट्रिलीयन", "billion": "बिलियन", "million": "मिलियन", "thousand": "हज़ार", - "one": "एक" + "one": "एक", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "मैं अपना पूरा बैलेंस क्यों नहीं खर्च कर सकता?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "क्या आपने सीड का बैक अप ले लिया?", - "alreadyHave": "मैंने अपना सीड सहेज लिया है", - "reenterSeed": "अगले कदम पर आप अपने सीड फिर से दर्ज करने के लिए कहा जाएगा ।", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "आप अपने सीड का समर्थन नहीं किया है और अपने डिवाइस विफल रहता है, तो आप अपने IOTA के सभी खो देंगे ।", "pleaseConfirm": "कृपया पुष्टि करें कि आप सुरक्षित रूप से अपने सीड संग्रहीत है ।" }, @@ -572,15 +583,19 @@ "status": "स्टेटस", "fingerprintUnavailable": "बायोमेट्रिक प्रमाणीकरण अनुपलब्ध", "fingerprintUnavailableExplanation": "आपका डिवाइस बायोमेट्रिक प्रमाणीकरण का समर्थन नहीं करता है या यह डिवाइस सेटिंग्स में कॉंफ़िगर नहीं किया गया है ।", - "buttonInstructionsDisable": "फ़िंगरप्रिंट प्रमाणीकरण को बंद करने के लिए नीचे बटन दबाएँ.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "फ़िंगरप्रिंट प्रमाणीकरण को चालू करने के लिए नीचे बटन दबाएँ.", - "buttonInstructionsDisableIPhoneX": "चेहरा आईडी को निष्क्रिय करने के लिए नीचे बटन दबाएँ.", - "buttonInstructionsEnableIPhoneX": "चेहरा आईडी सक्षम करने के लिए नीचे दिए गए बटन दबाएँ.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "लॉग इन करने के लिए फ़िंगरप्रिंट रीडर स्पर्श करें ।" }, "transferConfirmation": { "youAreAbout": "आप पते पर {{contents}} भेजने वाले है", - "aMessage": "संदेश" + "aMessage": "संदेश", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "गलत कोड!", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "ट्रांसफर के लिए रेडी हो रहे है", "gettingTransactionsToApprove": "लेन-देन को मंजूरी मिल रही", "proofOfWork": "काम का प्रमाण पूरा करना", - "broadcasting": "प्रसारण" + "broadcasting": "प्रसारण", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "स्नैपशॉट पूरा नहीं कर सकता", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/hr/translation.json b/src/shared/locales/hr/translation.json index f8c799eb64..8634634c69 100644 --- a/src/shared/locales/hr/translation.json +++ b/src/shared/locales/hr/translation.json @@ -19,7 +19,7 @@ "invalidResponse": "Pogreška na čvoru", "invalidResponseExplanation": "Čvor je poslao pogrešku. Probajte sa promjenom čvora.", "invalidResponseFetchingAccount": "Greška prilikom dohvata podataka o vašem računu. Pokušajte promijeniti node.", - "invalidResponseFetchingAccountDesktop": "The node returned an error while fetching your account information. If your problem persists, try changing node or disabling your system proxy in Trinity Settings.", + "invalidResponseFetchingAccountDesktop": "Greška prilikom dohvata podataka o vašem računu. U slučaju ponavljanja problema, pokušajte promijeniti node ili onemogućiti korištenje proxy postavka sustava u Trinity postavkama.", "nodeOutOfSync": "Vaš node nije sinkroniziran", "nodeOutOfSyncExplanation": "Vaš odabrani node nije sinkroniziran. Molimo vas promijenite node i pokušajte ponovno.", "thisNodeOutOfSync": "Ovaj node nije sinkroniziran. Molimo vas promijenite node ili pokušajte ponovno.", @@ -74,6 +74,8 @@ "wallet": "Novčanik", "all": "Sve", "sent": "Poslano", + "youReceived": "Primili ste", + "youSent": "Poslali ste", "received": "Primljeno", "sending": "Slanje", "receiving": "Primanje", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain greška", "errorAccessingKeychainExplanation": "Nije moguće pristupiti keychain-u potrebnom za sigurnu pohranu.", "mainWallet": "GLAVNI RAČUN", + "confirm": "Potvrdi", + "delete": "Obriši", "shouldUpdate": "Dostupno je novo ažuriranje", "shouldUpdateExplanation": "Dostupna je nova verzija aplikacije. Preporučuje se ažuriranje aplikacije na najnoviju verziju.", "forceUpdate": "Ažurirajte aplikaciju kako bi mogli nastaviti dalje", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Minimalni broj znakova koji vaša lozinka mora sadržavati je {{minLength}}. Trenutni broj znakova je {{currentLength}}. Molimo pokušajte ponovno.", "passwordMismatch": "Lozinke nisu iste", "passwordMismatchExplanation": "Lozinke koje ste unijeli nisu iste. Molimo pokušajte ponovo.", - "anEncryptedCopy": "Kodirana kopija vašeg seed-a biti će pohranjena na vašem uređaju. Ovu lozinku ćete koristiti za pristup novčaniku u budućnosti.", + "anEncryptedCopy": "Ovo je lozinka vašeg glavnog novčanika. Koristit ćete ju za prijavu.", "retypePassword": "Ponovo unesite lozinku" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Prijavi se", "setNode": "Postavi node", "whyBiometricDisabled": "Zašto je biometrijska autorizacija onemogućena?", - "whyBiometricDisabledExplanation": "Biometrijska prijava je onemogućena prilikom prvog pokretanja aplikacije radi vaše sigurnosti. Prilikom korištenja Trinity novčanika bit ćete odjavljeni nakon određenog perioda neaktivnosti. Tek tada se možete ponovno prijaviti koristeći biometrijsku autorizaciju." + "whyBiometricDisabledExplanationPart1": "Biometrijska autorizacija je onemogućena prilikom prvog pokretanja aplikacije radi vaše sigurnosti.", + "whyBiometricDisabledExplanationPart2": "Prilikom korištenja, Trinity će vas automatski odjaviti uslijed neaktivnosti. Nakon toga se slobodno možete ponovno prijaviti koristeći biometrijsku autorizaciju." }, "loading": { "loadingFirstTime": "Prvotno učitavanje seed-a.", @@ -254,10 +259,10 @@ "pressForNewSeed": "Pritisnite za novi seed", "generateSuccess": "Seed uspješno generiran", "individualLetters": "Pritisnite individualna slova da bi ih učinili nasumičnim.", - "individualLetterCount": "Preostali broj znakova koje treba učiniti nasumičnim <1><0>{{count}}.", - "individualLetterCount_plural": "Preostali broj znakova koje treba učiniti nasumičnim <1><0>{{count}}.", - "randomiseCharsToContinue": "Preostali broj znakova koje treba učiniti nasumičnim prije nastavka <1>{{count}}.", - "randomiseCharsToContinue_plural": "Preostali broj znakova koje treba učiniti nasumičnim prije nastavka <1>{{count}}.", + "individualLetterCount": "Preostali broj znakova koje treba učiniti nasumičnim: <1><0>{{count}}.", + "individualLetterCount_plural": "Preostali broj znakova koje treba učiniti nasumičnim: <1><0>{{count}}.", + "randomiseCharsToContinue": "Preostali broj znakova koje treba učiniti nasumičnim prije nastavka: <1>{{count}}.", + "randomiseCharsToContinue_plural": "Preostali broj znakova koje treba učiniti nasumičnim prije nastavka: <1>{{count}}.", "whatIsASeed": "Što je seed?" }, "onboardingComplete": { @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Nikada nemojte podijeliti svoj seed s bilo kime.", "iotaLogo": "IOTA logo", - "print": "ISPIS", + "print": "Ispis", "paperConvenience": "Ispis vašeg seed-a na papir je pogodan način za njegovo spremanje.", "publicInsecure": "No ispis putem javno dostupnog wifi-a ili javno dostupnog pisača je nesigurno.", - "tapCheckboxes": "Molimo kliknite na kvadratiće ispod za potvrdu.", - "wifiCheckbox": "Neću ispisati seed putem javno dostupnog wifi-a", - "printerCheckbox": "Neću vršiti ispis na javnom pisaču" + "pleaseCheck": "Molimo provjerite i potvrdite prije ispisa", + "wifiConfirmation": "Moj uređaj nije spojen na javno dostupan wifi", + "printerConfirmation": "Ne vršim ispis na javno dostupnom pisaču" }, "receive": { "yourAddress": "Vaša adresa", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Zapišimo vaš seed", "youCanHighlightCharacters": "Možete označiti 9 znakova odjednom", "printBlankWallet": "Ispišite prazni novčanik", - "whatIsChecksum": "Svaki seed ima pripadajući kontrolni zbroj od 3 znaka", + "whatIsAChecksum": "Što je kontrolni zbroj?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Svoj seed imam spremljen", "checksumExplanation": "Svaki put kada dodajete seed u svoj novčanik, pobrinite se da je kontrolni zbroj generiran od strane novčanika isti kao onaj koji ste zapisali.", "mustSaveYourSeed": "<0><0>Morate napraviti sigurnosnu kopiju seed-a koristeći <1>barem jednu<2> od niže navedenih opcija." @@ -345,7 +351,8 @@ "totalTime": "Ukupno vrijeme", "addressPasteDetected": "Detektirana kopija adrese u međuspremniku", "addressPasteExplanation": "Izgleda da ste zalijepili adresu. Provjerite da li je adresa istovjetna onoj na koju želite poslati.", - "invalid": "NEISPRAVNO" + "invalid": "NEISPRAVNO", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Dodajte naziv", @@ -446,7 +453,8 @@ "empty": "Prazno", "retrying": "Ponovni pokušaj u tijeku", "yesterday": "Jučer", - "promotingAnotherBundle": "Promocija drugog paketa" + "promotingAnotherBundle": "Promocija drugog paketa", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Prikaži seed", @@ -504,18 +512,21 @@ "currency": "Valuta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Da li ste sigurni da se želite odjaviti?" + "logoutConfirmation": "Da li ste sigurni da se želite odjaviti?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Skeniraj QR kod" }, "unitInfoModal": { - "unitSystem": "SUSTAV JEDINICA", + "unitSystem": "Unit System", "trillion": "Trilijun", "billion": "Milijarda", "million": "Milijun", "thousand": "Tisuću", - "one": "Jedna" + "one": "Jedna", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Zašto ne mogu potrošiti cijeli iznos?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Da li ste napravili sigurnosnu kopiju vašeg seed-a?", - "alreadyHave": "Napravio sam sigurnosnu kopiju svojeg seed-a", - "reenterSeed": "U sljedećem koraku morat ćete ponovno unijeti svoj seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Ako niste napravili sigurnosnu kopiju svog seed-a, a vaš uređaj se pokvari, izgubit ćete svu svoju IOTA-u.", "pleaseConfirm": "Molimo potvrdite da ste spremili svoj seed na sigurno." }, @@ -572,15 +583,19 @@ "status": "Stanje", "fingerprintUnavailable": "Biometrijska autorizacija nedostupna", "fingerprintUnavailableExplanation": "Vaš uređaj ne podržava biometrijsku autorizaciju ili ista nije konfigurirana u postavkama uređaja.", - "buttonInstructionsDisable": "Pritisnite donji gumb kako bi onemogućili autorizaciju putem otiska prsta.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Pritisnite donji gumb kako bi omogućili autorizaciju putem otiska prsta.", - "buttonInstructionsDisableIPhoneX": "Pritisnite donji gumb kako bi onemogućili Face ID.", - "buttonInstructionsEnableIPhoneX": "Pritisnite donji gumb kako bi omogućili Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Dodirnite čitač otiska prstiju za prijavu" }, "transferConfirmation": { "youAreAbout": "Poslat ćete {{contents}} na adresu", - "aMessage": "poruka" + "aMessage": "poruka", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Pogrešan kod", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Izvezi SeedVault", - "seedVaultExplanation": "SeedVault je kodirana datoteka namijenjena spremanju vašeg seed-a na siguran način. Seed je kodiran i zaštićen lozinkom, te mu se ne može pristupiti bez lozinke.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Pobrinite se da napravite sigurnosne kopije datoteke, te ih pohranite na više mjesta (npr. hard disk, oblak, USB). Ako izgubite ovu datoteku, a niste pohranili svoj seed na nekom drugom mjestu, izgubit ćete svoje IOTA-e.", "exportFail": "Izvoz SeedVault-a neuspješan", "exportFailExplanation": "Došlo je do greške prilikom izvoza SeedVault-a. Molimo provjerite da li imate sva potrebna ovlaštenja i dovoljno slobodnog prostora na disku.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Vaš seed je uspješno uvezen.", "saveToDownloadFolder": "Spremi u Download mapu", "importSeedVault": "Uvezi SeedVault", - "dropSeedVaultHere": "Ovdje ispustite SeedVault <1> ili kliknite da bi ga potražili na računalu", + "dropInstructions": "Ovdje dovucite te ispustite SeedVault <1> ili kliknite da bi ga potražili na uređaju.\nAlternativno možete označiti i dovući Seed iz tekst editora.", + "dropActive": "Ispustite SeedVault/Seed ovdje", "enterKeyExplanation": "Unesite SeedVault lozinku kako biste ga otvorili", "noSeedFound": "SeedVault ne sadrži valjani seed", "noSeedFoundExplanation": "SeedVault je prazan ili sadrži seed u neispravnom formatu.", "seedFileError": "Neuspješno otvaranje SeedVault-a", "seedFileErrorExplanation": "Došlo je do greške prilikom otvaranja SeedVault-a. Ako ste odabrali ispravnu datoteku moguće je da je oštećena.", - "seedVaultKeyExplanation": "Prvo trebamo osigurati vaš SeedVault. Molimo odaberite lozinku za enkripciju vaše SeedVault datoteke. Ova lozinka bit će potrebna za ponovni pristup sigurnosnoj kopiji vašeg seed-a koja se nalazi u SeedVault-u. Možete koristiti istu lozinku koju koristite za pristup Trinity novčaniku." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Priprema transakcija", "gettingTransactionsToApprove": "Dohvat transakcija za odobriti", "proofOfWork": "Završetak PoW-a", - "broadcasting": "Emitiranje" + "broadcasting": "Emitiranje", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Nije bilo moguće izvršiti snapshot tranziciju", @@ -706,8 +724,8 @@ "completeSetup": "Završi postavljanje" }, "proxy": { - "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxy": "Korištenje proxy postavka sustava", + "proxyExplanation": "Detektiraj i koristi mrežne proxy postavke sustava. Zatvori te ponovno pokreni Trinity nakon promjene ove postavke." }, "notifications": { "notifications": "Obavijesti", diff --git a/src/shared/locales/hu/translation.json b/src/shared/locales/hu/translation.json index bb2f3e9496..14f5c316c5 100644 --- a/src/shared/locales/hu/translation.json +++ b/src/shared/locales/hu/translation.json @@ -19,7 +19,7 @@ "invalidResponse": "Csomóponti hiba", "invalidResponseExplanation": "A csomópont hibát jelzett. Kérjük, próbáljon egy másik csomópontot választani.", "invalidResponseFetchingAccount": "A csomópont hibát jelzett a számla adatainak lekérése közben. Próbáljon egy másik csomópontot választani.", - "invalidResponseFetchingAccountDesktop": "The node returned an error while fetching your account information. If your problem persists, try changing node or disabling your system proxy in Trinity Settings.", + "invalidResponseFetchingAccountDesktop": "A csomópont hibát jelzett a számlaadatok betöltése közben. Ha a hiba továbbra is fennáll, próbáljon egy másik csomópontra váltani vagy kapcsolja ki a proxy szerver használatát a beállítások között.", "nodeOutOfSync": "A csomópont nincs szinkronban", "nodeOutOfSyncExplanation": "A kiválasztott csomópont nincs szinkronban. Próbálja újra vagy használjon másik csomópontot.", "thisNodeOutOfSync": "Ez a csomópont nincs szinkronban. Próbálja újra vagy használjon másik csomópontot.", @@ -74,6 +74,8 @@ "wallet": "Tárca", "all": "Összes", "sent": "Elküldött", + "youReceived": "You received", + "youSent": "You sent", "received": "Fogadott", "sending": "Küldés...", "receiving": "Fogadás...", @@ -128,7 +130,7 @@ "spentAddressExplanation": "FIGYELEM: egyenleg található a már felhasznált címek egyikén", "discordInformation": "Egy címről többször tranzakciót indítani nagyon veszélyes. Kérjük mihamarabb látogasson el a #help csatornára az IOTA Discord-on, hogy segítséget kaphasson, mit tehet ilyen esetben.", "androidInsecureClipboardWarning": "Androidon a vágólap használata nem biztonságos.", - "androidCopyPasteWarning": "Soha ne kivágás/beillesztés műveletekkel adja meg mester jelszavát Android készüléken.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Nem fogom kivágni/beilleszteni a mester jelszavam", "mustBeStoredAppropriately": "A mester jelszót megfelelő módon kell tárolni.", "deviceMayBecomeUnresponsive": "Előfordulhat, hogy a készüléke egy ideig nem reagál majd.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Kulcstár-hiba", "errorAccessingKeychainExplanation": "A kulcstár nem hozzáférhető, így a jelszó nem tárolható biztonságosan.", "mainWallet": "Elsődleges számla", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "Új frissítés érhető el", "shouldUpdateExplanation": "Egy új szoftverfrissítés jelent meg. Ajánlott az alkalmazást a legújabb verzióra frissíteni.", "forceUpdate": "Frissítse az alkalmazást a folytatáshoz", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "A jelszónak minimum {{minLength}} karakterből kell állnia. A jelenleg megadott jelszó {{currentLength}} karakter hosszú. Kérjük, próbálja újra.", "passwordMismatch": "A jelszavak nem egyeznek meg", "passwordMismatchExplanation": "A megadott jelszavak nem egyeznek meg. Kérjük, próbálja újra.", - "anEncryptedCopy": "A mester jelszavát titkosított formában fogjuk tárolni a készülékén. A jelenleg megadott jelszót fogja tudni használni a jövőben a tárca megnyitásához.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Jelszó újra" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Belépés", "setNode": "Csomópont beállítása", "whyBiometricDisabled": "Miért van a biometrikus azonosítás kikapcsolva?", - "whyBiometricDisabledExplanation": "A biometrikus azonosítás az alkalmazás indításakor az Ön biztonsága érdekében nem elérhető. Ha a Trinity esetleges tétlenség után automatikusan kijelentkeztette, akkor tudja használja a biometrikus azonosítást az ismételt bejelentkezéshez." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Mester jelszó betöltése első alkalommal.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Soha, senkivel ne ossza meg a mester jelszavát.", "iotaLogo": "IOTA logó", - "print": "Nyomtat", + "print": "Print", "paperConvenience": "A mester jelszó papírra nyomtatása egy kényelmes módja annak tárolására.", "publicInsecure": "De vegye figyelembe, hogy nyilvános nyomtató használata, különösen ha ingyenesen elérhető nyilvános WiFi-n keresztül nyomtatna, nem biztonságos.", - "tapCheckboxes": "Kérjük, az elfogadáshoz jelölje be az alábbi négyzeteket.", - "wifiCheckbox": "Nem fogok ingyenesen elérhető nyilvános WiFi-n keresztül nyomtatni", - "printerCheckbox": "Nem fogok nyilvánosan elérhető nyomtatón nyomtatni" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Ön címe", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Írja le a mester jelszót", "youCanHighlightCharacters": "9 karaktert emelhet ki egyszerre", "printBlankWallet": "Mester jelszó nyomtatvány minta nyomtatása", - "whatIsChecksum": "Minden mester jelszóhoz tartozik egy 3 karakterből álló ellenőrző összeg", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Elmentettem a mester jelszót", "checksumExplanation": "Amikor egy új mester jelszót ad hozzá a tárcához, mindig győződjön meg arról, hogy a tárca által generált ellenőrző összeg megegyezik a korábban feljegyzett ellenőrző összeggel.", "mustSaveYourSeed": "<0><0>A mester jelszaváról biztonsági másolatot kell készítenie<1>legalább egyféleképp<2>az alább felsorolt lehetőségek közül." @@ -345,7 +351,8 @@ "totalTime": "Küldés időtartama", "addressPasteDetected": "Cím másolás érzékelve", "addressPasteExplanation": "Úgy tűnik bemásolt egy címet. Kérjük, győződjön meg arról, hogy valóban erre a címre kíván küldeni.", - "invalid": "Érvénytelen" + "invalid": "Érvénytelen", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Kérjük, adjon meg egy nevet", @@ -446,7 +453,8 @@ "empty": "Üres", "retrying": "Újrapróbálkozás", "yesterday": "Tegnap", - "promotingAnotherBundle": "Újabb tranzakciós csomag előrehelyezése" + "promotingAnotherBundle": "Újabb tranzakciós csomag előrehelyezése", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Mester jelszó megtekintése", @@ -478,7 +486,7 @@ "pow": "Kiszabott munka elvégzése", "autoPromotion": "Auto-tranzakció előrehelyezés", "autoPromotionExplanation": "Az automatikus tranzakció előrehelyezés segítségével a tranzakciók hamarabb teljesülhetnek. Engedélyezze ezt a beállítást, ha a tranzakciói sokáig nem teljesülnek.", - "autoPromotionPoW": "Az automatikus tranzakció előrehelyezés csak azon csomópontok esetén lehetséges, melyek támogatják a kiszabott munka távoli elvégzését." + "autoPromotionPoW": "Az automatikus tranzakció előrehelyezés csak azon csomópontok esetén lehetséges, amelyek támogatják a kiszabott munka távoli elvégzését." }, "advancedThemeCustomisation": { "background": "Háttér", @@ -504,18 +512,21 @@ "currency": "Pénznem" }, "logoutConfirmationModal": { - "logoutConfirmation": "Biztosan ki szeretne jelentkezni?" + "logoutConfirmation": "Biztosan ki szeretne jelentkezni?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "QR kód beolvasása" }, "unitInfoModal": { - "unitSystem": "Mértékegységek", + "unitSystem": "Unit System", "trillion": "Trillió", "billion": "Milliárd", "million": "Millió", "thousand": "Ezer", - "one": "Egy" + "one": "Egy", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Miért nem tudom a teljes egyenlegem elkölteni?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Készített biztonsági másolatot a mester jelszaváról?", - "alreadyHave": "Készítettem biztonsági másolatot a mester jelszavamról", - "reenterSeed": "A következő lépésben a rendszer kérni fogja, hogy adja meg újra a mester jelszavát.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Ha nem rendelkezik biztonsági másolattal a mester jelszaváról, és a készüléke meghibásodik, az összes IOTA-ját elveszíti.", "pleaseConfirm": "Kérjük, erősítse meg, hogy biztonságosan eltárolta a mester jelszavát." }, @@ -572,15 +583,19 @@ "status": "Állapot", "fingerprintUnavailable": "Biometrikus azonosítás nem elérhető", "fingerprintUnavailableExplanation": "A készüléke nem támogatja a biometrikus azonosítást, vagy a készülék beállításai között nem lett engedélyezve.", - "buttonInstructionsDisable": "Kérjük, nyomja meg az alábbi gombot az ujjlenyomat-azonosítás letiltásához.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Kérjük, nyomja meg az alábbi gombot az ujjlenyomat-azonosítás engedélyezéséhez.", - "buttonInstructionsDisableIPhoneX": "Kérjük, nyomja meg az alábbi gombot a Face ID letiltásához.", - "buttonInstructionsEnableIPhoneX": "Kérjük, nyomja meg az alábbi gombot a Face ID engedélyezéséhez.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Érintse meg az ujjlenyomat leolvasót a bejelentkezéshez" }, "transferConfirmation": { "youAreAbout": "Ön {{contents}} összeget készül elküldeni az alábbi címre", - "aMessage": "egy üzenet" + "aMessage": "egy üzenet", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Hibás kód", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "SeedVault exportálása", - "seedVaultExplanation": "A SeedVault egy titkosított fájl a mester jelszavának biztonságos tárolásához. A mester jelszavát egy SeedVault fájlhoz megadott jelszóval titkosítjuk és a jelszó nélkül a mester jelszó semmilyen módon nem visszafejthető.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Kérjük, készítsen biztonsági másolatot a SeedVault fájlról több helyre is (pl. merevlemez, felhő tárhely, pendrive). Ha elveszíti ezt a fájlt, és nem tárolta el máshol a mester jelszavát, elveszíti az összes IOTA-ját.", "exportFail": "SeedVault exportálása sikertelen", "exportFailExplanation": "Nem sikerült a SeedVault fájl exportálása. Kérjük, győződjön meg arról, hogy van joga a megadott helyre írni és van elegendő tárhelye.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "A mester jelszavát biztonságosan tároltuk.", "saveToDownloadFolder": "Mentés a letöltések mappába", "importSeedVault": "SeedVault importálása", - "dropSeedVaultHere": "Húzza be ide <1> a SeedVault fájlt vagy klikkeljen a tallózáshoz", + "dropInstructions": "Húzza ide a SeedVault fájlt vagy a kijelölt mesterjelszót <1> vagy klikkeljen a tallózáshoz", + "dropActive": "Húzza ide a SeedVault fájlt vagy a kijelölt mester jelszót", "enterKeyExplanation": "Adja meg a SeedVault jelszavát", "noSeedFound": "Érvénytelen mester jelszó a SeedVault fájlban", "noSeedFoundExplanation": "A SeedVault fájl üres vagy érvénytelen formátumú mester jelszót tartalmaz.", "seedFileError": "SeedVault fájl megnyitás sikertelen", "seedFileErrorExplanation": "Nem sikerült megnyitni a SeedVault fájlt. Ha biztosan jó fájlt adott meg, lehetséges, hogy a fájl megsérült.", - "seedVaultKeyExplanation": "A mester jelszavát egy jelszóval védett ún. SeedVault fájlban tároljuk. Kérjük, válasszon egy jelszót a fájl titkosításához. Erre a jelszóra akkor lesz szüksége, ha a mester jelszavát a titkosított SeedVault biztonsági mentésből kívánja betölteni. Nyugodtan használhatja ugyanazt a jelszót, amelyet a Trinity tárcába való belépéshez is használ." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "Piaci kapitalizáció", @@ -655,7 +672,8 @@ "preparingTransfers": "Tranzakciók előkészítése", "gettingTransactionsToApprove": "Ellenőrizendő tranzakciók lekérése", "proofOfWork": "Kiszabott munka elvégzése", - "broadcasting": "Tranzakció elküldése" + "broadcasting": "Tranzakció elküldése", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Pillanatkép utáni egyenlegátvezetés sikertelen", @@ -706,8 +724,8 @@ "completeSetup": "Beállítások befejezése" }, "proxy": { - "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxy": "Rendszer proxy használata", + "proxyExplanation": "Rendszer proxy automatikus felismerése és beállítása. Zárja be majd nyissa meg újra a tárcát, hogy a beállítás érvényre jusson." }, "notifications": { "notifications": "Értesítések", diff --git a/src/shared/locales/id/translation.json b/src/shared/locales/id/translation.json index f6df6552c2..01cba8a46d 100644 --- a/src/shared/locales/id/translation.json +++ b/src/shared/locales/id/translation.json @@ -74,6 +74,8 @@ "wallet": "Dompet", "all": "Semua", "sent": "Terkirim", + "youReceived": "You received", + "youSent": "You sent", "received": "Diterima", "sending": "Mengirim", "receiving": "Menerima", @@ -128,7 +130,7 @@ "spentAddressExplanation": "PERINGATAN: Dana ada di alamat yang sudah digunakan", "discordInformation": "Mengirim dari alamat yang sama lebih dari sekali sangat berbahaya. Silahkan ke Channel #help di Discord untuk mengetahui lebih lanjut.", "androidInsecureClipboardWarning": "Android tidak menyediakan Papan Klip yang aman.", - "androidCopyPasteWarning": "Jangan pernah copy/paste Seed anda di perangkat Android.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Saya tidak akan copy/paste Seed saya", "mustBeStoredAppropriately": "Ini harus disimpan dengan sebaiknya.", "deviceMayBecomeUnresponsive": "Perangkat anda mungkin tidak responsif dalam beberapa saat.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Kata sandi harus setidaknya {{minLength}} karakter. Kata Sandi Anda adalah {{currentLength}} karakter. Silahkan coba lagi.", "passwordMismatch": "Kata sandi tidak sama", "passwordMismatchExplanation": "Kata sandi yang Anda masukkan tidak sama. Silahkan coba lagi.", - "anEncryptedCopy": "Salinan dari Seed yang terenkripsi akan disimpan di perangkat anda. Anda akan menggunakan kata sandi ini untuk mengakses dompet anda.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Ketik ulang kata sandi" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Masuk", "setNode": "Set Node", "whyBiometricDisabled": "Kenapa otentikasi sidik jari dimatikan?", - "whyBiometricDisabledExplanation": "Biometrik otentikasi dimatikan pertama kali untuk keamanan Anda. Trinity akan mengeluarkan anda bila tidak aktif. Anda dapat masuk kembali dengan otentikasi biometrik." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Menyiapkan Seed untuk pertama kalinya.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Jangan pernah memberitahukan Seed Anda dengan siapa pun.", "iotaLogo": "Logo IOTA", - "print": "CETAK", + "print": "Print", "paperConvenience": "Mencetak Seed ke kertas adalah cara yang mudah untuk menyimpan.", "publicInsecure": "Tetapi mencetak dengan Wifi atau printer publik tidak aman.", - "tapCheckboxes": "Silahkan tekan Checkbox dibawah ini untuk konfirmasi.", - "wifiCheckbox": "Saya tidak akan mencetak dari wifi publik", - "printerCheckbox": "Saya tidak akan mencetak dari printer publik" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Alamat Anda", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Mari tulis Seed Anda", "youCanHighlightCharacters": "Ada dapat menyoroti 9 karakter dalam satu waktu", "printBlankWallet": "Cetak dompet kosong", - "whatIsChecksum": "Setiap Seed terdiri dari 3 karakter Checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Saya telah menyimpan Seed", "checksumExplanation": "Ketika menambah Seed ke dompet, pastikan checksum dari dompet sama dengan yang anda tulis.", "mustSaveYourSeed": "<0><0>Anda harus menyimpang Seed dengan <1>setidaknya<2> salah satu opsi dibawah ini." @@ -345,7 +351,8 @@ "totalTime": "Waktu total", "addressPasteDetected": "Terdeteksi alamat hasil salinan", "addressPasteExplanation": "Sepertinya Anda telah menyalin alamat. Pastikan alamat sama dengan yang ingin Anda kirim.", - "invalid": "SALAH" + "invalid": "SALAH", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Mari tambahkan nama", @@ -446,7 +453,8 @@ "empty": "Kosong", "retrying": "Mencoba lagi", "yesterday": "Kemarin", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Lihat seed", @@ -504,18 +512,21 @@ "currency": "Mata Uang" }, "logoutConfirmationModal": { - "logoutConfirmation": "Yakin ingin keluar?" + "logoutConfirmation": "Yakin ingin keluar?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Memindai kode QR" }, "unitInfoModal": { - "unitSystem": "Sistem Unit", + "unitSystem": "Unit System", "trillion": "Trilyun", "billion": "Miliar", "million": "Juta", "thousand": "Ribu", - "one": "Salah satu" + "one": "Salah satu", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Mengapa saya tidak bisa menghabiskan saldo saya?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Apa Anda telah menyimpan Seed?", - "alreadyHave": "Saya telah menyelamatkan saya benih", - "reenterSeed": "Langkah selanjutnya anda akan ditanya untuk memasukan Seed kembali.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Jika anda belum menyimpan Seed dan perangkat rusak, Anda akan kehilangan IOTA.", "pleaseConfirm": "Silahkan konfirmasi bahwa Seed sudah Anda simpan dengan aman." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Otentikasi biometrik tidak tersedia", "fingerprintUnavailableExplanation": "Perangkat anda tidak mendukung otentikasi biometrik atau belum dikonfigurasi di pengaturan perangkat.", - "buttonInstructionsDisable": "Tekan tombol dibawah ini untuk menonaktifkan autentikasi sidik jari.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Tekan tombol dibawah ini untuk mengaktifkan autentikasi sidik jari.", - "buttonInstructionsDisableIPhoneX": "Tekan tombol di bawah ini untuk mematikan Face ID.", - "buttonInstructionsEnableIPhoneX": "Tekan tombol di bawah ini untuk mengaktifkan Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Tekan pemindai sidik jari untuk masuk" }, "transferConfirmation": { "youAreAbout": "Anda akan mengirim {{contents}} ke alamat", - "aMessage": "pesan" + "aMessage": "pesan", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Kode salah", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Ekspor SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Pastikan anda buat cadangan di beberapa lokasi (seperti: Hard disk, Cloud, USB). Jika anda kehilangan file dan tidak mempunyai cadangan. Anda akan kehilangan IOTA.", "exportFail": "Gagal ekspor SeedVault", "exportFailExplanation": "Terjadi kesalahan mengekspor SeedVault. Pastikan anda mempunyai izin yang valid dan cukup ruang.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Impor SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault tidak mengandung Seed", "noSeedFoundExplanation": "SeedVault kosong atau tidak mempunyai format Seed yang valid.", "seedFileError": "Gagal membuka SeedVault", "seedFileErrorExplanation": "Gagal membuka SeedVault. Jika ini benar, file ini mungkin rusak.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Menyiapkan transfer", "gettingTransactionsToApprove": "Menyiapkan transaksi untuk disetujui", "proofOfWork": "Menyelesaikan Proof of Work", - "broadcasting": "Menyiarkan" + "broadcasting": "Menyiarkan", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Tidak dapat menyelesaikan transisi snapshot", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifikasi", diff --git a/src/shared/locales/it/translation.json b/src/shared/locales/it/translation.json index 250aac0383..73543a8fdd 100644 --- a/src/shared/locales/it/translation.json +++ b/src/shared/locales/it/translation.json @@ -19,7 +19,7 @@ "invalidResponse": "Errore di nodo", "invalidResponseExplanation": "Il nodo ha restituito un errore. Provare a cambiare il nodo.", "invalidResponseFetchingAccount": "Il nodo ha restituito un errore durante il recupero di informazioni del tuo conto. Prova a cambiare nodo.", - "invalidResponseFetchingAccountDesktop": "The node returned an error while fetching your account information. If your problem persists, try changing node or disabling your system proxy in Trinity Settings.", + "invalidResponseFetchingAccountDesktop": "Il nodo ha restituito un errore mentre si reperivano i dati del tuo conto. Se il problema persiste, prova a cambiare il nodo o a disabilitare l'uso del proxy nelle impostazioni di Trinity.", "nodeOutOfSync": "Nodo non sincronizzato", "nodeOutOfSyncExplanation": "Il nodo attualmente selezionato non è sincronizzato. Si prega di cambiare il nodo o riprovare.", "thisNodeOutOfSync": "Questo nodo non è sincronizzato. Si prega di cambiare il nodo o riprovare.", @@ -74,6 +74,8 @@ "wallet": "Portafoglio", "all": "Tutti", "sent": "Inviato", + "youReceived": "You received", + "youSent": "You sent", "received": "Ricevuto", "sending": "Invio", "receiving": "Ricezione", @@ -128,7 +130,7 @@ "spentAddressExplanation": "AVVISO: Fondi su indirizzi spesi", "discordInformation": "È pericoloso inviare dallo stesso indirizzo più di una volta. Consulta il canale #help su Discord per scoprire cosa si può fare.", "androidInsecureClipboardWarning": "Android non fornisce una copia negli Appunti sicura.", - "androidCopyPasteWarning": "Mai copiare/incollare il vostro seme su un dispositivo Android.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Non farò copia/incolla del mio seme", "mustBeStoredAppropriately": "Deve essere memorizzato in modo appropriato.", "deviceMayBecomeUnresponsive": "Il dispositivo potrebbe non rispondere per un po'.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Errore di portachiavi", "errorAccessingKeychainExplanation": "Non è stato possibile accedere al portachiavi per l'archiviazione sicura.", "mainWallet": "CONTO PRINCIPALE", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "E' disponibile un nuovo aggiornamento", "shouldUpdateExplanation": "È stato rilasciato un nuovo aggiornamento. Si consiglia di aggiornare all'ultima versione.", "forceUpdate": "Aggiornare l'app per continuare", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "La password deve essere almeno {{minLength}} caratteri. Attualmente è {{currentLength}} caratteri. Si prega di riprovare.", "passwordMismatch": "Le password non corrispondono", "passwordMismatchExplanation": "Le password immesse non corrispondono. Si prega di riprovare.", - "anEncryptedCopy": "Una copia crittografata del tuo seme sarà memorizzata sul dispositivo. Userai questa password per accedere in futuro al tuo portafoglio.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Reinserisci la password" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Accedi", "setNode": "Seleziona nodo", "whyBiometricDisabled": "Perché è disattivata l'autenticazione biometrica?", - "whyBiometricDisabledExplanation": "L'accesso biometrico è disattivato al primo avvio dell'app per la tua sicurezza. Durante l'uso di Trinity, verrai disconnesso in caso di inattività. Allora ti sarà possibile accedere nuovamente con l'autenticazione biometrica." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Carico il seme per la prima volta.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Non condividere mai il tuo seme con nessuno.", "iotaLogo": "Logo IOTA", - "print": "STAMPA", + "print": "Print", "paperConvenience": "Stampare una copia cartacea del tuo seme è un modo conveniente per memorizzarlo.", "publicInsecure": "Ma stampare attraverso Wi-Fi pubblico o su una stampante pubblica è insicuro.", - "tapCheckboxes": "Seleziona le caselle di controllo qui sotto per confermare.", - "wifiCheckbox": "Non stamperò su una connessione Wi-Fi pubblica", - "printerCheckbox": "Non stamperò su una stampante pubblica" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Il tuo indirizzo", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Ti aiuto a scrivere il tuo seme", "youCanHighlightCharacters": "È possibile evidenziare 9 caratteri alla volta", "printBlankWallet": "Stampare un portafoglio vuoto", - "whatIsChecksum": "Ogni seme ha un corrispondente checksum di 3 caratteri", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Ho salvato il mio seme", "checksumExplanation": "Ogni volta che aggiungi un seme al tuo portafoglio, devi assicurarti che il checksum generato dal portafoglio combacia con quello che avevi annotato.", "mustSaveYourSeed": "<0><0>È necessario che salvi il tuo seme con <1>almeno una<2> delle opzioni elencate di seguito" @@ -345,7 +351,8 @@ "totalTime": "Tempo totale", "addressPasteDetected": "Rilevato indirizzo da incollare", "addressPasteExplanation": "Sembra che hai incollato un indirizzo. Assicurati che l'indirizzo incollato corrisponda a quello al quale desideri inviare.", - "invalid": "NON VALIDO" + "invalid": "NON VALIDO", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Aggiungiamo un nome", @@ -446,7 +453,8 @@ "empty": "Vuota", "retrying": "Sto riprovando", "yesterday": "Ieri", - "promotingAnotherBundle": "Promozione di un altro pacchetto" + "promotingAnotherBundle": "Promozione di un altro pacchetto", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Visualizza seme", @@ -504,18 +512,21 @@ "currency": "Valuta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Sei sicuro di volerti disconnettere?" + "logoutConfirmation": "Sei sicuro di volerti disconnettere?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Scansionare il proprio codice QR" }, "unitInfoModal": { - "unitSystem": "SISTEMA DI UNITÀ", + "unitSystem": "Unit System", "trillion": "Mille miliardi", "billion": "Miliardi", "million": "Milioni", "thousand": "Migliaia", - "one": "Unità" + "one": "Unità", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Perché non posso spendere tutto il contenuto del portafoglio?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Hai salvato il tuo seme?", - "alreadyHave": "Ho salvato il mio seme", - "reenterSeed": "Nel passaggio successivo ti si richiederà di inserire nuovamente il tuo seme.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Se non hai eseguito il backup del tuo seme e il dispositivo si rompe, perderai tutti i tuoi IOTA.", "pleaseConfirm": "Si prega di confermare che hai memorizzato in modo sicuro il tuo seme." }, @@ -572,15 +583,19 @@ "status": "Stato", "fingerprintUnavailable": "Autenticazione biometrica non disponibile", "fingerprintUnavailableExplanation": "Il tuo dispositivo non supporta l'autenticazione biometrica o non è stato configurato nelle impostazioni del dispositivo.", - "buttonInstructionsDisable": "Premi il pulsante sotto per disabilitare l'autenticazione tramite impronta digitale.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Premi il pulsante sotto per abilitare l'autenticazione tramite impronta digitale.", - "buttonInstructionsDisableIPhoneX": "Premere il pulsante qui sotto per disabilitare Face ID.", - "buttonInstructionsEnableIPhoneX": "Premere il pulsante qui sotto per attivare Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Tocca il lettore di impronte digitali per accedere" }, "transferConfirmation": { "youAreAbout": "Stai per inviare {{contents}} all'indirizzo", - "aMessage": "un messaggio" + "aMessage": "un messaggio", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Codice errato", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Esporta come SeedVault", - "seedVaultExplanation": "Un SeedVault è un file crittografato per archiviare in modo sicuro il tuo seme. Il seme viene crittografato con la password del SeedVault e non è possibile accedere al seme senza la password.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Assicurarsi di eseguire un backup del file in più posizioni (per esempio hard disk, nel cloud, USB). Se perdi questo file e non hai archiviato il seme altrove, perderai i tuoi IOTA.", "exportFail": "Esportazione come SeedVault fallita", "exportFailExplanation": "Si è verificato un problema esportando il SeedVault. Assicurati di avere le autorizzazioni appropriate e spazio libero sufficiente.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Il seme è stato importato con successo.", "saveToDownloadFolder": "Salva nella cartella Scaricamenti", "importSeedVault": "Importa un SeedVault", - "dropSeedVaultHere": "Trascinare il SeedVault qui <1> o fare clic per sfogliare", + "dropInstructions": "Trascinare un SeedVault o testo qui <1> o fare clic per sfogliare", + "dropActive": "Trascina qui un SeedVault o testo", "enterKeyExplanation": "Immetti la tua password per accedere il SeedVault", "noSeedFound": "Il SeedVault non contiene un seme valido", "noSeedFoundExplanation": "Il SeedVault o è vuoto o contiene un seme in un formato non valido.", "seedFileError": "Impossibile accedere il SeedVault", "seedFileErrorExplanation": "Si è verificato un problema accedendo il SeedVault. Se è stato selezionato il file corretto questo potrebbe essere danneggiato.", - "seedVaultKeyExplanation": "In primo luogo abbiamo bisogno di mettere in sicurezza il tuo SeedVault. Si prega di scegliere una password per crittografare il file. Avrai bisogno di questa password per recuperare il tuo seme dal SeedVault di backup. Sentiti libero di usare la stessa password che usi per Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparo i trasferimenti", "gettingTransactionsToApprove": "Ottengo le transazioni da approvare", "proofOfWork": "Completo la prova di lavoro", - "broadcasting": "Trasmissione" + "broadcasting": "Trasmissione", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Non è possibile completare il passaggio allo snapshot", @@ -706,8 +724,8 @@ "completeSetup": "Completa la configurazione" }, "proxy": { - "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxy": "Usa il proxy di rete del sistema", + "proxyExplanation": "Rileva e usa le impostazioni di sistema per il proxy di rete. Chiudere e riaprire il portafoglio dopo aver modificato questa impostazione." }, "notifications": { "notifications": "Notifiche", diff --git a/src/shared/locales/ja/translation.json b/src/shared/locales/ja/translation.json index bed2069709..d0471d1473 100644 --- a/src/shared/locales/ja/translation.json +++ b/src/shared/locales/ja/translation.json @@ -74,6 +74,8 @@ "wallet": "ウォレット", "all": "すべて", "sent": "送金完了", + "youReceived": "You received", + "youSent": "You sent", "received": "受取完了", "sending": "送金中", "receiving": "受取中", @@ -128,7 +130,7 @@ "spentAddressExplanation": "警告:使用済みアドレスの資金です!", "discordInformation": "同じアドレスから複数回送金するのは危険です。どうしたらいいのかはDiscordの#Japaneseチャンネルか#helpチャンネルにお尋ねください。", "androidInsecureClipboardWarning": "Androidは安全なクリップボードを提供していません。", - "androidCopyPasteWarning": "絶対にシードをAndroidデバイス上でコピー&ペーストしないでください。", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "私はシードをコピー&ペーストしません。", "mustBeStoredAppropriately": "シードは適切に保管しなければなりません。", "deviceMayBecomeUnresponsive": "しばらくの間、お使いのデバイスが応答しなくなることがあります。", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "キーチェーンに関するエラー", "errorAccessingKeychainExplanation": "安全な保管に必要なキーチェーンにアクセスできません。", "mainWallet": "メインアカウント", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "新しいアップデートがあります", "shouldUpdateExplanation": "新しいアップデートがリリースされています。最新バージョンに更新することをお勧めします。", "forceUpdate": "続けるにはアプリをアップデートしてください", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "パスワードは少なくとも{{minLength}}文字以上にする必要があります。今は{{currentLength}}文字です。もう一度やり直してください。", "passwordMismatch": "パスワードが一致しません。", "passwordMismatchExplanation": "入力した 2 つのパスワードが一致しません、もう一度やり直してください。", - "anEncryptedCopy": "暗号化されたシードのコピーがデバイスに保存されます。今後パスワードを使用してウォレットにアクセスします。", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "パスワードを再入力してください。" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "ログイン", "setNode": "ノードの設定", "whyBiometricDisabled": "生体認証が無効になっている理由。", - "whyBiometricDisabledExplanation": "生体認証によるログインはセキュリティ上、最初のアプリの読み込み時には無効になっています。Trinityを使用中、非アクティブが続くとログアウトします。その時には、生体認証を使ってログインすることができます。" + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "初めてのシードを読み込んでいます。", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "シードは他の人に絶対に教えてはいけません。", "iotaLogo": "IOTAロゴ", - "print": "印刷", + "print": "Print", "paperConvenience": "シードのコピーを紙に印刷して保存することは便利な方法です。", "publicInsecure": "しかし、公共のWi-Fiや公共のプリンタでの印刷は安全ではないので行わないでください。", - "tapCheckboxes": "確認するには、下の2つのチェックボックスをタップしてください。", - "wifiCheckbox": "私は公共のWi-Fiで印刷しません。", - "printerCheckbox": "私は公共のプリンタで印刷しません。" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "あなたのアドレス", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "シードを書き写しましょう。", "youCanHighlightCharacters": "一度に9文字を強調表示しています。", "printBlankWallet": "空のペーパーウォレットを印刷", - "whatIsChecksum": "すべてのシードには対応する3文字のチェックサムがあります。", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "バックアップ完了", "checksumExplanation": "ウォレットにシードを追加するたびに、ウォレットによって生成されるチェックサムが、書き写したチェックサムと一致することを必ず確認してください。", "mustSaveYourSeed": "<0><0>下の方法から<1>最低一つ選んで<2>シードを必ずバックアップしてください。" @@ -345,7 +351,8 @@ "totalTime": "合計時間", "addressPasteDetected": "アドレスのペーストを検出", "addressPasteExplanation": "アドレスをペーストしたようです。送金先のアドレスと一致することを確かめてください。", - "invalid": "無効" + "invalid": "無効", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "アカウント名を追加してください。", @@ -446,7 +453,8 @@ "empty": "空", "retrying": "再試行中", "yesterday": "昨日", - "promotingAnotherBundle": "別のバンドルを促進中" + "promotingAnotherBundle": "別のバンドルを促進中", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "シードを表示", @@ -504,18 +512,21 @@ "currency": "通貨" }, "logoutConfirmationModal": { - "logoutConfirmation": "ログアウトしてもよろしいですか?" + "logoutConfirmation": "ログアウトしてもよろしいですか?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "QRコード読み取り" }, "unitInfoModal": { - "unitSystem": "単位系", + "unitSystem": "Unit System", "trillion": "一兆", "billion": "十億", "million": "百万", "thousand": "千", - "one": "一" + "one": "一", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "どうして全ての残高を使えないのか?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "シードのバックアップはされましたか?", - "alreadyHave": "私はシードをバックアップしました。", - "reenterSeed": "次のステップで、シードを再入力するよう求められます。", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "もし、シードをバックアップせずにデバイスが故障した場合、そのシードにあるIOTAはすべて失われます。", "pleaseConfirm": "シードが安全に保管されていることを確認してください。" }, @@ -572,15 +583,19 @@ "status": "ステータス", "fingerprintUnavailable": "生体認証が利用できません。", "fingerprintUnavailableExplanation": "お使いのデバイスは生体認証をサポートしていないか、デバイス設定で設定されていません。", - "buttonInstructionsDisable": "指紋認証を無効にするには、下のボタンを押してください。", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "指紋認証を有効にするには、下のボタンを押してください。", - "buttonInstructionsDisableIPhoneX": "顔認証を無効にするには、下のボタンを押してください。", - "buttonInstructionsEnableIPhoneX": "顔認証を有効にするには、下のボタンを押してください。", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "指紋リーダに触れてログインしてください。" }, "transferConfirmation": { "youAreAbout": "アドレスに {{contents}} を送信しようとしています。", - "aMessage": "メッセージ" + "aMessage": "メッセージ", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "コードが間違っています。", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "シード金庫へ書き出す", - "seedVaultExplanation": "シード金庫は、シードを安全に保管するための暗号化されたファイルです。シードはシード金庫鍵によって暗号化され、この鍵がなければアクセスできません。", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "シード金庫を複数の場所(ハードドライブ、クラウド、USBなど)にバックアップしてください。シード金庫を紛失し、かつ他の場所にシードを保存していないと、IOTAが失われます。", "exportFail": "シード金庫の書き出しに失敗しました", "exportFailExplanation": "シード金庫を書き出す際に問題が発生しました。 適切な権限と十分な空き容量があることを確認してください。", @@ -615,13 +630,15 @@ "importSuccessExplanation": "シードは正常に読み込まれました。", "saveToDownloadFolder": "ダウンロードフォルダに保存", "importSeedVault": "シード金庫を読み込む", - "dropSeedVaultHere": "シード金庫ファイルがある場合、ここにドラッグ&ドロップするか、<1>ここをクリックしてください。", + "dropInstructions": "シード金庫やテキストがある場合、ここ<1>に移動させるか、クリックして参照してください", + "dropActive": "シード金庫やテキストをここに移動させてください", "enterKeyExplanation": "シード金庫を開くために、シード金庫鍵を入力してください", "noSeedFound": "シード金庫に有効なシードが含まれていません", "noSeedFoundExplanation": "シード金庫は空か、無効な形式のシードが含まれています。", "seedFileError": "イオタ金庫を開けませんでした", "seedFileErrorExplanation": "シード金庫を開く際に問題が発生しました。 正しいファイルを選択している場合、ファイルが破損している可能性があります。", - "seedVaultKeyExplanation": "最初にシード金庫を保護する必要があります。シード金庫を暗号化するためのシード金庫鍵を選んでください。バックアップ用のシード金庫からシードを復元するには、このシード金庫鍵が必要です。シード金庫鍵はTrinityウォレットのパスワードと同じにできます。" + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "時価総額", @@ -655,7 +672,8 @@ "preparingTransfers": "送金を準備中", "gettingTransactionsToApprove": "承認する取引を取得中", "proofOfWork": "プルーフ・オブ・ワークを完了中", - "broadcasting": "ブロードキャスト中" + "broadcasting": "ブロードキャスト中", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "スナップショットの移行を完了できません。", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "システムプロキシを使用", - "proxyExplanation": "システム全体のネットワークプロキシ設定を検出して使用します。この設定を変更した後は、Trinityを再起動してください。" + "proxyExplanation": "システム全体のネットワークプロキシ設定を検出して使用します。この設定を変更した時は、Trinityを一度閉じてから再起動を行ってください。" }, "notifications": { "notifications": "通知設定", diff --git a/src/shared/locales/ka/translation.json b/src/shared/locales/ka/translation.json index 1b01f5c9d1..7bcd47c438 100644 --- a/src/shared/locales/ka/translation.json +++ b/src/shared/locales/ka/translation.json @@ -74,6 +74,8 @@ "wallet": "საფულე", "all": "All", "sent": "გაგზავნილი", + "youReceived": "You received", + "youSent": "You sent", "received": "მიღებული", "sending": "იგზავნება", "receiving": "Receiving", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Your password must be at least {{minLength}} characters. It is currently {{currentLength}} characters long. Please try again.", "passwordMismatch": "Passwords do not match", "passwordMismatchExplanation": "The passwords you have entered do not match. Please try again.", - "anEncryptedCopy": "An encrypted copy of your seed will be stored on your device. You will use this password to access your wallet in future.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Retype Password" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Loading seed for the first time.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Never share your seed with anyone.", "iotaLogo": "IOTA logo", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>You must save your seed with <1>at least one<2> of the options listed below." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "View seed", @@ -504,18 +512,21 @@ "currency": "Currency" }, "logoutConfirmationModal": { - "logoutConfirmation": "Are you sure you want to log out?" + "logoutConfirmation": "Are you sure you want to log out?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Scan your QR code" }, "unitInfoModal": { - "unitSystem": "UNIT SYSTEM", + "unitSystem": "Unit System", "trillion": "Trillion", "billion": "Billion", "million": "Million", "thousand": "Thousand", - "one": "One" + "one": "One", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "I have saved my seed", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "a message" + "aMessage": "a message", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Wrong code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/kn/translation.json b/src/shared/locales/kn/translation.json index 1e0b3a946e..94c5f48ce5 100644 --- a/src/shared/locales/kn/translation.json +++ b/src/shared/locales/kn/translation.json @@ -74,6 +74,8 @@ "wallet": "ವಾಲೆಟ್", "all": "ಎಲ್ಲಾ", "sent": "ಕಳುಹಿಸಲಾಗಿದೆ", + "youReceived": "You received", + "youSent": "You sent", "received": "ಸ್ವೀಕರಿಸಲಾಗಿದೆ", "sending": "ಕಳುಹಿಸಲಾಗುತ್ತಿದೆ", "receiving": "ಸ್ವೀಕರಿಸಲಾಗುತ್ತಿದೆ", @@ -128,7 +130,7 @@ "spentAddressExplanation": "ಎಚ್ಚರಿಕೆ: ಖರ್ಚು ಮಾಡಿದ ವಿಳಾಸಗಳಲ್ಲಿ ಹಣ", "discordInformation": "ಅದೇ ವಿಳಾಸದಿಂದ ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ಬಾರಿ ವ್ಯವಹರಿಸುವುದು ಅಪಾಯಕಾರಿ. ದಯವಿಟ್ಟು ನೀವು ಏನು ಮಾಡಬಹುದು ಎಂಬುದನ್ನು ಕಂಡುಹಿಡಿಯಲು IOTA ಡಿಸ್ಕೋರ್ಡ್ನಲ್ಲಿ #help ಚಾನಲ್ಗೆ ಹೋಗಿ.", "androidInsecureClipboardWarning": "ಆಂಡ್ರಾಯ್ಡ್ ಸುರಕ್ಷಿತ ಕ್ಲಿಪ್ಬೋರ್ಡ್ ಅನ್ನು ಒದಗಿಸುವುದಿಲ್ಲ.", - "androidCopyPasteWarning": "ಆಂಡ್ರಾಯ್ಡ್ ಸಾಧನದಲ್ಲಿ ನಿಮ್ಮ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ನಕಲಿಸಿಬೇಡಿ ಹಾಗು ಅಂಟಿಸಬೇಡಿ.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "ನನ್ನ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ನಾನು ನಕಲಿಸುವುದಿಲ್ಲ / ಅಂಟಿಸುವುದಿಲ್ಲ", "mustBeStoredAppropriately": "ಅದನ್ನು ಸೂಕ್ತವಾಗಿ ಸಂಗ್ರಹಿಸಬೇಕು.", "deviceMayBecomeUnresponsive": "ಸ್ವಲ್ಪ ಸಮಯದವರೆಗೆ ನಿಮ್ಮ ಸಾಧನ ಸ್ಪಂದಿಸದಿರಬಹುದು.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "ನಿಮ್ಮ ಗುಪ್ತಪದ ಕನಿಷ್ಠ {{minLength}} ಅಕ್ಷರಗಳನ್ನು ಹೊಂದಿರಬೇಕು. ಇದು ಪ್ರಸ್ತುತ {{currentLength}} ಅಕ್ಷರಗಳ ಉದ್ದವಾಗಿದೆ. ದಯವಿಟ್ಟು ಪುನಃ ಪ್ರಯತ್ನಿಸಿ.", "passwordMismatch": "ಗುಪ್ತಪದಗಳು ಹೊಂದುತ್ತಿಲ್ಲ", "passwordMismatchExplanation": "ನೀವು ನಮೂದಿಸಿದ ಗುಪ್ತಪದಗಳು ಹೊಂದಿಕೆಯಾಗುತ್ತಿಲ್ಲ. ದಯವಿಟ್ಟು ಪುನಃ ಪ್ರಯತ್ನಿಸಿ.", - "anEncryptedCopy": "ನಿಮ್ಮ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತ ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಿದ ನಕಲನ್ನು ನಿಮ್ಮ ಸಾಧನದಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ. ಭವಿಷ್ಯದಲ್ಲಿ ನಿಮ್ಮ ವಾಲೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಲು ನೀವು ಈ ಗುಪ್ತಪದ ಅನ್ನು ಬಳಸುತ್ತೀರಿ.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "ಗುಪ್ತಪದವನ್ನು ಮತ್ತೆ ನಮೂದಿಸಿ" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "ಲಾಗ್ ಇನ್", "setNode": "ನೋಡ್ ಹೊಂದಿಸಿ", "whyBiometricDisabled": "ಬಯೋಮೆಟ್ರಿಕ್ ದೃಢೀಕರಣವನ್ನು ಏಕೆ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ?", - "whyBiometricDisabledExplanation": "ನಿಮ್ಮ ಭದ್ರತೆಗಾಗಿ ಮೊದಲ ಅಪ್ಲಿಕೇಶನ್ ಲೋಡ್ನಲ್ಲಿ ಬಯೊಮೀಟ್ರಿಕ್ ಲಾಗಿನ್ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ. ಟ್ರಿನಿಟಿ ಬಳಸುವಾಗ, ನಿಷ್ಕ್ರಿಯತೆಗಾಗಿ ನೀವು ಲಾಗ್ ಔಟ್ ಆಗುತ್ತೀರಿ. ನಂತರ ನೀವು ಬಯೋಮೆಟ್ರಿಕ್ ದೃಢೀಕರಣದೊಂದಿಗೆ ಮತ್ತೆ ಪ್ರವೇಶಿಸಬಹುದು." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "ಮೊದಲ ಬಾರಿಗೆ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "ನಿಮ್ಮ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ಯಾರೊಂದಿಗೂ ಹಂಚಿಕೊಳ್ಳಬೇಡಿ.", "iotaLogo": "IOTA ಚಿಹ್ನೆ", - "print": "ಮುದ್ರಿಸಿ", + "print": "Print", "paperConvenience": "ನಿಮ್ಮ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತ ಕಾಗದದ ನಕಲನ್ನು ಮುದ್ರಿಸುವುದು ಅದನ್ನು ಶೇಖರಿಸಿಡಲು ಅನುಕೂಲಕರ ಮಾರ್ಗವಾಗಿದೆ.", "publicInsecure": "ಆದರೆ ಸಾರ್ವಜನಿಕ ವೈಫೈ ಅಥವಾ ಸಾರ್ವಜನಿಕ ಪ್ರಿಂಟರ್ನಲ್ಲಿ ಮುದ್ರಣ ಮಾಡುವುದು ಅಸುರಕ್ಷಿತವಾಗಿದೆ.", - "tapCheckboxes": "ದಯವಿಟ್ಟು ಖಚಿತಪಡಿಸಲು ಕೆಳಗಿನ ಚೆಕ್ಬಾಕ್ಸ್ ಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡಿ.", - "wifiCheckbox": "ನಾನು ಸಾರ್ವಜನಿಕ ವೈಫೈನಲ್ಲಿ ಮುದ್ರಿಸುವುದಿಲ್ಲ", - "printerCheckbox": "ನಾನು ಸಾರ್ವಜನಿಕ ಮುದ್ರಕದಲ್ಲಿ ಮುದ್ರಿಸುವುದಿಲ್ಲ" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "ನಿಮ್ಮ ವಿಳಾಸ", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "ನಿಮ್ಮ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ಬರೆದಿಟ್ಟುಕೊಳ್ಳೋಣ", "youCanHighlightCharacters": "ನೀವು ಒಂದು ಸಮಯದಲ್ಲಿ 9 ಅಕ್ಷರಗಳನ್ನು ಹೈಲೈಟ್ ಮಾಡಬಹುದು", "printBlankWallet": "ಖಾಲಿ ವಾಲೆಟ್ ಅನ್ನು ಮುದ್ರಿಸಿ", - "whatIsChecksum": "ಪ್ರತಿಯೊಂದು ಬೀಜವು ಅನುಗುಣವಾದ 3-ಪಾತ್ರದ ಖಾತೆ ಪರಿಶೀಲನೆಯನ್ನು ಹೊಂದಿರುತ್ತದೆ", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "ನಾನು ನನ್ನ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ಉಳಿಸಿದೆ", "checksumExplanation": "ನಿಮ್ಮ ವ್ಯಾಲೆಟ್ಗೆ ನೀವು ಬೀಜವನ್ನು ಸೇರಿಸಿದಾಗಲೆಲ್ಲ, ನೀವು ಬರೆದಿರುವ ಒಂದು ವಾಲೆಟ್ ನಿಂದ ಉತ್ಪಾದಿಸಿದ ಖಾತೆ ಪರಿಶೀಲನೆಯ ಸಂಕೇತವನ್ನು ಹೋಲಿಸಿ ನೀವು ಖಾತ್ರಿಪಡಿಸಿಕೊಳ್ಳಬೇಕು.", "mustSaveYourSeed": "<0><0>ಕೆಳಗೆ ಪಟ್ಟಿ ಮಾಡಲಾದ ಆಯ್ಕೆಗಳಲ್ಲಿ ನಿಮ್ಮ ಬೀಜವನ್ನು<1>ಕನಿಷ್ಠ ಒಂದು<2>ನೊಂದಿಗೆ ಬ್ಯಾಕ್ಅಪ್ ಮಾಡಬೇಕು." @@ -345,7 +351,8 @@ "totalTime": "ಒಟ್ಟು ಸಮಯ", "addressPasteDetected": "ವಿಳಾಸ ಅಂಟಿಯನ್ನು ಕಂಡುಹಿಡಿದಿದೆ", "addressPasteExplanation": "ನೀವು ವಿಳಾಸವನ್ನು ಅಂಟಿಸಲಾಗಿದೆ ಎಂದು ತೋರುತ್ತಿದೆ. ನೀವು ಕಳುಹಿಸಲು ಬಯಸುವ ವಿಳಾಸವನ್ನು ಹೊಂದಿಕೆಯಾಗುತ್ತದೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.", - "invalid": "ಅಮಾನ್ಯವಾಗಿದೆ" + "invalid": "ಅಮಾನ್ಯವಾಗಿದೆ", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "ನಾವು ಒಂದು ಹೆಸರನ್ನು ಸೇರಿಸೋಣ", @@ -446,7 +453,8 @@ "empty": "ಖಾಲಿ", "retrying": "ಮರುಪ್ರಯತ್ನಿಸಲಾಗುತ್ತಿದೆ", "yesterday": "ನೆನ್ನೆ ದಿನ", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ವೀಕ್ಷಿಸಿ", @@ -504,18 +512,21 @@ "currency": "ಚಲಾವಣೆಯ ನಾಣ್ಯ" }, "logoutConfirmationModal": { - "logoutConfirmation": "ಲಾಗ್ ಔಟ್ ಮಾಡಲು ನೀವು ಖಚಿತವಾಗಿ ಬಯಸುವಿರಾ?" + "logoutConfirmation": "ಲಾಗ್ ಔಟ್ ಮಾಡಲು ನೀವು ಖಚಿತವಾಗಿ ಬಯಸುವಿರಾ?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "ನಿಮ್ಮ QR ಸಂಕೇತವನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡಿ" }, "unitInfoModal": { - "unitSystem": "ಪ್ರಮಾಣ ವ್ಯವಸ್ಥೆ", + "unitSystem": "Unit System", "trillion": "ಟ್ರಿಲಿಯನ್", "billion": "ಶತಕೋಟಿ", "million": "ಹತ್ತುಲಕ್ಷ", "thousand": "ಸಾವಿರ", - "one": "ಒಂದು" + "one": "ಒಂದು", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "ನನ್ನ ಸಂಪೂರ್ಣ ಖಾತೆಯ ಮೊತ್ತವನ್ನು ನಾನು ಏಕೆ ಕಳೆಯಲು ಸಾಧ್ಯವಿಲ್ಲ?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "ನಿಮ್ಮ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ನೀವು ಬ್ಯಾಕ್ ಅಪ್ ಮಾಡಿದ್ದೀರಾ?", - "alreadyHave": "ನನ್ನ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ನಾನು ಬ್ಯಾಕ್ ಅಪ್ ಮಾಡಿದ್ದೇನೆ", - "reenterSeed": "ಮುಂದಿನ ಹಂತದಲ್ಲಿ ನಿಮ್ಮ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ಮರು ನಮೂದಿಸಲು ನಿಮ್ಮನ್ನು ಕೇಳಲಾಗುತ್ತದೆ.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "ನಿಮ್ಮ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ನೀವು ಬ್ಯಾಕಪ್ ಮಾಡಿಲ್ಲವಾದರೆ ಮತ್ತು ನಿಮ್ಮ ಸಾಧನ ವಿಫಲವಾದಲ್ಲಿ, ನಿಮ್ಮ ಎಲ್ಲಾ IOTA ಅನ್ನು ನೀವು ಕಳೆದುಕೊಳ್ಳುತ್ತೀರಿ.", "pleaseConfirm": "ದಯವಿಟ್ಟು ನೀವು ನಿಮ್ಮ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ಸುರಕ್ಷಿತವಾಗಿ ಸಂಗ್ರಹಿಸಿದ್ದೀರಿ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ." }, @@ -572,15 +583,19 @@ "status": "ಸ್ಥಿತಿ", "fingerprintUnavailable": "ಬಯೊಮೀಟ್ರಿಕ್ ದೃಢೀಕರಣ ಲಭ್ಯವಿಲ್ಲ", "fingerprintUnavailableExplanation": "ನಿಮ್ಮ ಸಾಧನವು ಬಯೋಮೆಟ್ರಿಕ್ ದೃಢೀಕರಣವನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ ಅಥವಾ ಸಾಧನ ಸೆಟ್ಟಿಂಗ್ಗಳಲ್ಲಿ ಇದನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಲಾಗಿಲ್ಲ.", - "buttonInstructionsDisable": "ಬೆರಳಿನ ಗುರುತು ದೃಢೀಕರಣವನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲು ಕೆಳಗಿನ ಬಟನ್ ಒತ್ತಿರಿ.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "ಬೆರಳುಗುರುತು ದೃಢೀಕರಣ ಸಕ್ರಿಯಗೊಳಿಸಲು ಕೆಳಗಿನ ಬಟನ್ ಒತ್ತಿರಿ.", - "buttonInstructionsDisableIPhoneX": "ಫೇಸ್ ಐಡಿ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲು ಕೆಳಗಿನ ಬಟನ್ ಒತ್ತಿರಿ.", - "buttonInstructionsEnableIPhoneX": "ಫೇಸ್ ಐಡಿ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಕೆಳಗಿನ ಬಟನ್ ಒತ್ತಿರಿ.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "ಲಾಗ್ ಇನ್ ಮಾಡಲು ಬೆರಳಿನ ಗುರುತು ರೀಡರ್ ಸ್ಪರ್ಶಿಸಿ" }, "transferConfirmation": { "youAreAbout": "ನೀವು {{contents}} ಅನ್ನು ವಿಳಾಸಕ್ಕೆ ಕಳುಹಿಸಲಿದ್ದೀರಿ", - "aMessage": "ಒಂದು ಸಂದೇಶ" + "aMessage": "ಒಂದು ಸಂದೇಶ", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "ತಪ್ಪಾದ ಸಂಕೇತ", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "ಸೀಡ್ವಾಲ್ಟ್ ರಫ್ತು ಮಾಡಿ", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "ನೀವು ಬಹು ಸ್ಥಳಗಳಲ್ಲಿ ಫೈಲ್ ಅನ್ನು ಬ್ಯಾಕಪ್ ಮಾಡಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ (ಉದಾ. ಹಾರ್ಡ್ ಡ್ರೈವ್, ಕ್ಲೌಡ್, ಯುಎಸ್ಬಿ). ನೀವು ಈ ಫೈಲ್ ಅನ್ನು ಕಳೆದುಕೊಂಡರೆ ಮತ್ತು ಬೇರೆಲ್ಲಿಯಾದರೂ ನಿಮ್ಮ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ಸಂಗ್ರಹಿಸದಿದ್ದರೆ, ನಿಮ್ಮ IOTA ವನ್ನು ನೀವು ಕಳೆದುಕೊಳ್ಳುತ್ತೀರಿ.", "exportFail": "ಸೀಡ್ವಾಲ್ಟ್ ರಫ್ತು ವಿಫಲವಾಗಿದೆ", "exportFailExplanation": "ಸೀಡ್ವಾಲ್ಟ್ ರಫ್ತು ಮಾಡುವಲ್ಲಿ ಸಮಸ್ಯೆ ಇದೆ. ನಿಮಗೆ ಸೂಕ್ತವಾದ ಅನುಮತಿಗಳು ಮತ್ತು ಸಾಕಷ್ಟು ಉಚಿತ ಸ್ಥಳಾವಕಾಶವಿದೆಯೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "ಸೀಡ್ವಾಲ್ಟ್ ಅನ್ನು ಆಮದು ಮಾಡಿಕೊಳ್ಳಿ", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "ಸೀಡ್ವಾಲ್ಟ್ ಮಾನ್ಯ ಬೀಜವನ್ನು ಒಳಗೊಂಡಿಲ್ಲ", "noSeedFoundExplanation": "ಸೀಡ್ವಾಲ್ಟ್ ಖಾಲಿಯಾಗಿದೆ ಅಥವಾ ಅಮಾನ್ಯ ಸ್ವರೂಪದಲ್ಲಿ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವನ್ನು ಹೊಂದಿರುತ್ತದೆ.", "seedFileError": "ಸೀಡ್ವಾಲ್ಟ್ ತೆರೆಯಲು ವಿಫಲವಾಗಿದೆ", "seedFileErrorExplanation": "ಸೀಡ್ವಾಲ್ಟ್ ಅನ್ನು ತೆರೆಯುವಲ್ಲಿ ಸಮಸ್ಯೆ ಕಂಡುಬಂದಿದೆ. ನೀವು ಸರಿಯಾದ ಫೈಲ್ ಅನ್ನು ಆರಿಸಿದರೆ ಅದು ದೋಷಪೂರಿತವಾಗಬಹುದು.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "ಮಾರುಕಟ್ಟೆ ಬಂಡವಾಳ", @@ -655,7 +672,8 @@ "preparingTransfers": "ವರ್ಗಾವಣೆಯನ್ನು ಸಿದ್ಧಪಡಿಸಲಾಗುತ್ತಿದೆ", "gettingTransactionsToApprove": "ವ್ಯವಹಾರಗಳನ್ನು ಅಂಗೀಕರಿಸಲಾಗುತ್ತದೆ", "proofOfWork": "ಕೆಲಸದ ಪುರಾವೆ ಪೂರ್ಣಗಳಿಸಲಾಗುತ್ತಿದೆ", - "broadcasting": "ಪ್ರಕಟಿಸಲಾಗುತ್ತಿದೆ" + "broadcasting": "ಪ್ರಕಟಿಸಲಾಗುತ್ತಿದೆ", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "ಸ್ನ್ಯಾಪ್ಶಾಟ್ ಪರಿವರ್ತನೆಯನ್ನು ಪೂರ್ಣಗೊಳಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "ಅಧಿಸೂಚನೆಗಳು", diff --git a/src/shared/locales/ko/translation.json b/src/shared/locales/ko/translation.json index e3a8b7f679..7aeb8cfde7 100644 --- a/src/shared/locales/ko/translation.json +++ b/src/shared/locales/ko/translation.json @@ -74,6 +74,8 @@ "wallet": "지갑", "all": "전부", "sent": "보냄", + "youReceived": "You received", + "youSent": "You sent", "received": "받음", "sending": "보내는 중", "receiving": "받는 중", @@ -128,7 +130,7 @@ "spentAddressExplanation": "경고: 이미 사용한 주소에 잔고가 있습니다", "discordInformation": "동일한 주소에서 한 번 이상 전송하는 행위는 위험합니다. 디스코드 #help 채널로 오셔서 대처 방안에 대해 알아보세요.", "androidInsecureClipboardWarning": "안드로이드는 클립보드의 보안성이 떨어집니다.", - "androidCopyPasteWarning": "안드로이드 기기에서는 시드를 클립보드에 복사하지 말아주세요.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "시드를 클립보드에 복사하지 않겠습니다", "mustBeStoredAppropriately": "안전하게 보관해 주세요.", "deviceMayBecomeUnresponsive": "기기가 잠시 느려질 수 있습니다.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "키체인 오류", "errorAccessingKeychainExplanation": "보안 저장에 필요한 키체인에 접근할 수 없습니다.", "mainWallet": "주 계정", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "비밀번호는 최소 {{minLength}}글자로 구성되어야 합니다. 입력하신 비밀번호는 {{currentLength}}글자로 구성되어 있습니다. 다시 시도해 주십시오.", "passwordMismatch": "비밀번호가 일치하지 않음", "passwordMismatchExplanation": "비밀번호가 일치하지 않습니다. 다시 시도해 주세요.", - "anEncryptedCopy": "기기에 암호화된 시드가 저장됩니다. 입력하신 비밀번호가 있어야 지갑을 사용할 수 있습니다.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "비밀번호 다시 입력" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "로그인", "setNode": "노드 선택", "whyBiometricDisabled": "왜 생체 인증이 비활성화되어 있나요?", - "whyBiometricDisabledExplanation": "앱 최초 실행 시 보안을 위해 생체 인증이 비활성화됩니다. 트리니티 사용 중 미사용으로 인해 앱이 잠길 경우 생체 인증을 사용하여 다시 로그인할 수 있습니다." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "처음으로 시드를 불러오는 중입니다.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "절대로 다른 사람에게 시드를 알려줘서는 안 됩니다.", "iotaLogo": "IOTA 로고", - "print": "인쇄하기", + "print": "Print", "paperConvenience": "시드를 종이에 인쇄해 놓으면 편리하게 보관할 수 있습니다.", "publicInsecure": "하지만 공용 와이파이를 통해 인쇄하거나 공용 프린터를 사용해 인쇄하는 것은 위험합니다.", - "tapCheckboxes": "확인하셨으면 아래의 박스에 체크해 주세요.", - "wifiCheckbox": "공용 와이파이를 통해 인쇄하지 않겠습니다.", - "printerCheckbox": "공용 프린터를 사용해 인쇄하지 않겠습니다." + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "주소", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "시드를 종이에 기록하세요", "youCanHighlightCharacters": "9글자 단위로 강조해서 볼 수 있습니다", "printBlankWallet": "빈 지갑 인쇄하기", - "whatIsChecksum": "모든 시드에는 3글자로 구성된 체크섬이 존재합니다", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "시드를 저장하였습니다", "checksumExplanation": "지갑에 시드를 추가할 때 보여지는 체크섬이 기록한 체크섬과 일치하는지를 확인해 주세요", "mustSaveYourSeed": "<0><0>반드시 아래 나열된 방법 중 <1>하나 이상<2>을 사용하여 시드를 기록해야 합니다." @@ -345,7 +351,8 @@ "totalTime": "총 소요시간", "addressPasteDetected": "주소 붙여넣기가 확인됨", "addressPasteExplanation": "받을 주소를 붙여넣은 것으로 보입니다. 붙여넣는 주소가 보내고자 하는 주소와 일치하는지 다시 한번 확인해 주세요.", - "invalid": "유효하지 않음" + "invalid": "유효하지 않음", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "이름을 지정해 주세요", @@ -446,7 +453,8 @@ "empty": "없음", "retrying": "다시 시도 중", "yesterday": "어제", - "promotingAnotherBundle": "다른 번들 프로모트중" + "promotingAnotherBundle": "다른 번들 프로모트중", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "시드 보기", @@ -504,18 +512,21 @@ "currency": "통화" }, "logoutConfirmationModal": { - "logoutConfirmation": "정말로 로그아웃 하시겠습니까?" + "logoutConfirmation": "정말로 로그아웃 하시겠습니까?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "QR 코드 스캔" }, "unitInfoModal": { - "unitSystem": "단위", + "unitSystem": "Unit System", "trillion": "조", "billion": "십억", "million": "백만", "thousand": "천", - "one": "일" + "one": "일", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "왜 거래에 잔고를 전부 사용할 수 없죠?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "시드를 저장하셨나요?", - "alreadyHave": "시드를 저장했습니다", - "reenterSeed": "다음 단계에서 시드를 다시 입력하셔야 합니다.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "기기가 고장났을 때 기존에 별도로 저장해 둔 시드가 없다면 지갑에 저장한 IOTA를 모두 잃게 됩니다.", "pleaseConfirm": "시드를 안전하게 저장하였는지 확인해 주세요." }, @@ -572,15 +583,19 @@ "status": "상태", "fingerprintUnavailable": "생체 인증을 사용할 수 없음", "fingerprintUnavailableExplanation": "본 기기는 생체 인증을 사용할 수 없거나 사용하지 않도록 설정되어 있습니다.", - "buttonInstructionsDisable": "아래 버튼을 눌러 지문 인증을 비활성화할 수 있습니다.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "아래 버튼을 눌러 지문 인증을 활성화할 수 있습니다.", - "buttonInstructionsDisableIPhoneX": "아래 버튼을 눌러 Face ID를 비활성화할 수 있습니다.", - "buttonInstructionsEnableIPhoneX": "아래 버튼을 눌러 Face ID를 활성화할 수 있습니다.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "로그인하려면 손가락을 지문 센서 위에 올리세요" }, "transferConfirmation": { "youAreAbout": "아래의 주소로 {{contents}}를 보내려고 합니다.", - "aMessage": "메시지" + "aMessage": "메시지", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "잘못된 코드", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "SeedValut 내보내기", - "seedVaultExplanation": "SeedVault는 시드를 안전하게 저장하도록 암호화된 파일입니다. 시드는 SeedVault 키를 이용하여 암호화되고, 이 키 없이는 시드에 접근할 수 없습니다.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "여러 위치(예: 하드 드라이브, 클라우드, USB)에 이 파일을 백업하십시오. 이 파일을 잃어버리고 별도로 시드를 보관하지 않은 경우 IOTA를 잃게 됩니다.", "exportFail": "SeedVault 내보내기 실패", "exportFailExplanation": "SeedVault를 내보내는 도중 문제가 발생하였습니다. 적절한 권한과 충분한 저장 공간이 있는지 다시 확인하세요.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "시드를 성공적으로 가져왔습니다.", "saveToDownloadFolder": "다운로드 폴더에 저장", "importSeedVault": "SeedValut 가져오기", - "dropSeedVaultHere": "SeedVault 끌어다 놓기 <1> 또는 여기를 눌러 찾아보기", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "SeedVault를 열기 위해 키를 입력하세요", "noSeedFound": "SeedVault 내 유효한 시드 없음", "noSeedFoundExplanation": "SeedVault가 비어있거나 시드가 유효하지 않은 형식으로 저장되어 있습니다.", "seedFileError": "SeedVault 열기 실패함", "seedFileErrorExplanation": "SeedVault를 여는 도중 문제가 발생하였습니다. 파일이 손상되었을 수 있습니다.", - "seedVaultKeyExplanation": "먼저 SeedVault를 암호화하여야 합니다. 파일을 암호화하는 데 사용할 SeedVault 키를 입력해 주세요. 이 키가 있어야 SeedVault에서 시드를 꺼낼 수 있습니다. 트리니티에 사용하는 암호를 키로 사용하여도 됩니다." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "시가총액", @@ -655,7 +672,8 @@ "preparingTransfers": "전송 준비중", "gettingTransactionsToApprove": "승인할 트랜잭션을 받아오는 중", "proofOfWork": "작업 증명 수행중", - "broadcasting": "송출중" + "broadcasting": "송출중", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "스냅샷 이전을 완료할 수 없음", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "알림", diff --git a/src/shared/locales/lt/translation.json b/src/shared/locales/lt/translation.json index 446eb18a68..a63fe93650 100644 --- a/src/shared/locales/lt/translation.json +++ b/src/shared/locales/lt/translation.json @@ -74,6 +74,8 @@ "wallet": "Piniginė", "all": "Visi", "sent": "Išsiųsta", + "youReceived": "You received", + "youSent": "You sent", "received": "Gauta", "sending": "Siunčiama", "receiving": "Gaunama", @@ -128,7 +130,7 @@ "spentAddressExplanation": "DĖMESIO: Lėšos panaudotame adrese", "discordInformation": "Pinigų siuntimas iš to pačio adreso daugiau nei kartą yra nesaugus. Apsilankykite #help kanale Discord programoje norėdami sužinoti ką daryti tokiu atveju.", "androidInsecureClipboardWarning": "Android nesuteikia saugios iškarpinės.", - "androidCopyPasteWarning": "Kopijuoti/Įklijuoti užraktą su Android įrenginiu nerekomenduojama.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Aš nekopijuosiu/neįklijuosiu užrakto", "mustBeStoredAppropriately": "Jis privalo būti tinkamai laikomas.", "deviceMayBecomeUnresponsive": "Jūsų įrenginys kurį laiką gali neatsakyti į užklausas.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain klaida", "errorAccessingKeychainExplanation": "Prieiga prie keychain nepasiekiama.", "mainWallet": "PAGRINDINĖ PASKYRA", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "Yra naujų atnaujinimų", "shouldUpdateExplanation": "Išleistas naujas atnaujinimas. Rekomenduojama atsinaujinti iki naujausios versijos.", "forceUpdate": "Atnaujinkite programėlę norėdami tęsti", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Slaptažodis privalo būti iš mažiausiai {{minLength}} simbolių. Jūsų įvedėte {{currentLength}}. Bandykite dar kartą.", "passwordMismatch": "Slaptažodžiai nesutampa", "passwordMismatchExplanation": "Įvesti slaptažodžiai nesutampa. Bandykite dar kartą.", - "anEncryptedCopy": "Užšifruota jūsų užrakto kopija bus laikoma jūsų įrenginyje. Nuo šiol prisijungiant prie piniginės, naudokitės šiuo slaptažodžiu.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Pakartokite slaptažodį" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Prisijungti", "setNode": "Nustatyti serverį", "whyBiometricDisabled": "Kodėl biometrinis autentifikavimas išjungtas?", - "whyBiometricDisabledExplanation": "Pirmą kartą užkraunant programėlę, biometrinis prisijungimas yra išjungtas dėl jūsų saugumo. Trinity jus automatiškai atjungs jei tapsite neaktyviu. Tada vėl galėsite prisijungti su biometriniu prisijungimu." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Užraktas užkraunamas pirmą kartą.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Su niekuo nesidalinkite savo užraktu.", "iotaLogo": "IOTA logotipas", - "print": "ATSPAUSDINTI", + "print": "Print", "paperConvenience": "Vienas iš patogių užrakto laikymo būdų yra laikyti jį atspausdintame lape.", "publicInsecure": "Bet spausdinimas naudojant viešą wifi arba viešą spausdintuvą yra nesaugus.", - "tapCheckboxes": "Sužymėkite varneles norėdami patvirtinti.", - "wifiCheckbox": "Nespausdinsiu naudodamas viešą wifi", - "printerCheckbox": "Nespausdinsiu naudodamas viešą spausdintuvą" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Jūsų adresas", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Nusirašykite savo užraktą", "youCanHighlightCharacters": "Žymėkitės po 9 simbolius į eilutę", "printBlankWallet": "Atspausdinti neužpildytą versiją", - "whatIsChecksum": "Kiekvienas užraktas turi atitinkamą 3 simbolių kontrolinę sumą", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Išsisaugojau savo užraktą", "checksumExplanation": "Kai pridedate užraktą į savo piniginę, turite įsitikinti, kad piniginės sukurta kontrolinė suma sutampa su ta, kurią nusirašėte.", "mustSaveYourSeed": "<0><0>Užraktą privalote išsisaugoti pasinaudodami <1>bent vienu<2> iš šių būdų, nurodytų žemiau." @@ -345,7 +351,8 @@ "totalTime": "Bendras laikas", "addressPasteDetected": "Aptiktas adreso įklijavimas", "addressPasteExplanation": "Atrodo, kad jūs įklijavote adresą. Įsitikinkite, kad adresas tikrai sutampa su gavėjo adresu.", - "invalid": "KLAIDA" + "invalid": "KLAIDA", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Sukurkite vardą", @@ -446,7 +453,8 @@ "empty": "Tuščia", "retrying": "Kraunama", "yesterday": "Vakar", - "promotingAnotherBundle": "Iškeliamas kitas paketas" + "promotingAnotherBundle": "Iškeliamas kitas paketas", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Rodyti užraktą", @@ -504,18 +512,21 @@ "currency": "Valiuta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Ar tikrai norite atsijungti?" + "logoutConfirmation": "Ar tikrai norite atsijungti?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Skenuoti QR kodą" }, "unitInfoModal": { - "unitSystem": "VIENETŲ SISTEMA", + "unitSystem": "Unit System", "trillion": "Trilijonai", "billion": "Milijardai", "million": "Milijonai", "thousand": "Tūkstančiai", - "one": "Vienetai" + "one": "Vienetai", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Kodėl negaliu išleisti viso savo balanso?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Ar išsisaugojote savo užraktą?", - "alreadyHave": "Užraktą išsisaugojau", - "reenterSeed": "Kitame žingsnyje, jums reikės pakartotinai įvesti užraktą.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Jei neišsisaugojote savo užrakto ir jūsų įrenginys suges, prarasite savo IOTA.", "pleaseConfirm": "Patvirtinkite, kad jūsų užraktas saugiai išsaugotas." }, @@ -572,15 +583,19 @@ "status": "Būsena", "fingerprintUnavailable": "Biometrinis autentifikavimas nepasiekiamas", "fingerprintUnavailableExplanation": "Jūsų įrenginys nepalaiko biometrinio autentifikavimo arba ši funkcija yra nesukonfigūruota jūsų įrenginyje.", - "buttonInstructionsDisable": "Spauskite žemiau esantį mygtuką, norėdami atjungti piršto antspaudo autentifikavimą.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Spauskite žemiau esantį mygtuką, norėdami įjungti piršto antspaudo autentifikavimą.", - "buttonInstructionsDisableIPhoneX": "Spauskite žemiau esantį mygtuką, norėdami išjungti Face ID.", - "buttonInstructionsEnableIPhoneX": "Spauskite žemiau esantį mygtuką, norėdami įjungti Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Palieskite piršto antspaudo skaitytuvą, norėdami prisijungti" }, "transferConfirmation": { "youAreAbout": "Jūs ruošiatės išsiųsti {{contents}} į adresą", - "aMessage": "žinutę" + "aMessage": "žinutę", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Neteisingas kodas", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Iškelti SeedVault", - "seedVaultExplanation": "SeedVault yra užšifruotas failas skirtas saugiai laikyti savo užraktą. Užraktas yra užšifruojamas SeedVault raktu ir negali būti atskleistas be to rakto.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Įsitikinkite, kad išsisaugojote failą keliose vietose (kietajame diske, \"debesyje\", USB). Jei prarasite šį failą, o savo užrakto nebūsite išsisaugoję kitoje vietoje, jūs prarasite savo IOTA.", "exportFail": "SeedVault iškėlimo klaida", "exportFailExplanation": "Įvyko klaida iškeliant SeedVault. Įsitikinkite, kad turite tinkamus leidimus ir pakankamai laisvos vietos.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Jūsų užraktas sėkmingai įkeltas.", "saveToDownloadFolder": "Išsaugoti į atsisiuntimų failą", "importSeedVault": "Įkelti SeedVault", - "dropSeedVaultHere": "Įkelti SeedVault čia <1> arba spauskite ieškoti failo", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Įveskite raktą norėdami atidaryti SeedVault", "noSeedFound": "SeedVault neturi tinkamo užrakto", "noSeedFoundExplanation": "SeedVault yra tuščias arba turi netinkamo formato užraktą.", "seedFileError": "Atidaryti SeedVault nepavyko", "seedFileErrorExplanation": "Įvyko klaida atidarant SeedVault. Jeigu pasirinkote teisingą failą, gali būti, kad jis yra pažeistas.", - "seedVaultKeyExplanation": "Pirmiausia, jums reikia apsaugoti SeedVault. Sukurkite raktą norėdami užšifruoti failą. Šio rakto jums prireiks, norint susigrąžinti užraktą iš SeedVault failo. Raktas gali būti toks pat, kaip ir slaptažodis Trinity piniginei." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Ruošiami pavedimai", "gettingTransactionsToApprove": "Pavedimai ruošiami patvirtinimui", "proofOfWork": "Atliekami skaičiavimai", - "broadcasting": "Transliuojama" + "broadcasting": "Transliuojama", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Nepavyksta perkelti tinklo duomenų", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Pranešimai", diff --git a/src/shared/locales/lv/translation.json b/src/shared/locales/lv/translation.json index d611b00f5f..5a92467729 100644 --- a/src/shared/locales/lv/translation.json +++ b/src/shared/locales/lv/translation.json @@ -74,6 +74,8 @@ "wallet": "Wallet", "all": "All", "sent": "Sent", + "youReceived": "You received", + "youSent": "You sent", "received": "Received", "sending": "Sūta", "receiving": "Receiving", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Your password must be at least {{minLength}} characters. It is currently {{currentLength}} characters long. Please try again.", "passwordMismatch": "Passwords do not match", "passwordMismatchExplanation": "The passwords you have entered do not match. Please try again.", - "anEncryptedCopy": "An encrypted copy of your seed will be stored on your device. You will use this password to access your wallet in future.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Retype Password" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Loading seed for the first time.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Never share your seed with anyone.", "iotaLogo": "IOTA logo", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>You must save your seed with <1>at least one<2> of the options listed below." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "View seed", @@ -504,18 +512,21 @@ "currency": "Currency" }, "logoutConfirmationModal": { - "logoutConfirmation": "Are you sure you want to log out?" + "logoutConfirmation": "Are you sure you want to log out?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Scan your QR code" }, "unitInfoModal": { - "unitSystem": "UNIT SYSTEM", + "unitSystem": "Unit System", "trillion": "Trillion", "billion": "Billion", "million": "Million", "thousand": "Thousand", - "one": "One" + "one": "One", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "I have saved my seed", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "a message" + "aMessage": "a message", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Wrong code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/nl/translation.json b/src/shared/locales/nl/translation.json index 4dfffb7cb2..6165c4b69e 100644 --- a/src/shared/locales/nl/translation.json +++ b/src/shared/locales/nl/translation.json @@ -74,6 +74,8 @@ "wallet": "Portemonnee", "all": "Alle", "sent": "Verzonden", + "youReceived": "You received", + "youSent": "You sent", "received": "Ontvangen", "sending": "Uitgaand", "receiving": "Inkomend", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WAARSCHUWING: Saldo op verbruikte adressen", "discordInformation": "Vaker dan een keer sturen vanaf hetzelfde adres is gevaarlijk. Ga naar het #help kanaal in Discord om uit te vinden wat u kunt doen.", "androidInsecureClipboardWarning": "Android heeft geen veilig kladblok.", - "androidCopyPasteWarning": "Kopieer/plak nooit uw seed op een Android apparaat.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Ik zal mijn seed niet kopiëren/plakken", "mustBeStoredAppropriately": "Het moet adequaat worden opgeslagen.", "deviceMayBecomeUnresponsive": "Uw apparaat kan wellicht even niet reageren.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Fout met keychain", "errorAccessingKeychainExplanation": "Kan keychain nodig voor veilige opslag niet bereiken.", "mainWallet": "HOOFDACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Uw wachtwoord moet minstens {{minLength}} tekens lang zijn. Het is momenteel {{currentLength}} tekens lang. Probeer het opnieuw.", "passwordMismatch": "Wachtwoorden komen niet overeen", "passwordMismatchExplanation": "Het ingevoerde wachtwoord is onjuist. Probeer het nogmaals.", - "anEncryptedCopy": "Een gecodeerde kopie van uw seed wordt opgeslagen op uw apparaat. U gebruikt dit wachtwoord voor toegang tot uw portemonnee in de toekomst.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Herhaal wachtwoord" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Kies Node", "whyBiometricDisabled": "Waarom is biometrische autenticatie uitgeschakeld?", - "whyBiometricDisabledExplanation": "Biometrisch inloggen is uitgeschakeld tijdens de eerste inlog voor jouw veiligheid. Bij het gebruik van Trinity wordt u uitgelogd bij inactiviteit. Daarna kunt u opnieuw inloggen met biometrische autenticatie." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Seed voor de eerste keer laden.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Deel uw seed met niemand.", "iotaLogo": "IOTA logo", - "print": "PRINT", + "print": "Print", "paperConvenience": "Een papieren kopie van uw seed printen is een handige manier om het op te slaan.", "publicInsecure": "Maar printen op publieke wifi of een publieke printer is onveilig.", - "tapCheckboxes": "Tik op de selectievakjes om te bevestigen.", - "wifiCheckbox": "Ik zal niet printen op publieke wifi", - "printerCheckbox": "Ik zal niet printen op een publieke printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Jouw adres", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Laten we uw seed opschrijven", "youCanHighlightCharacters": "U kan 9 karakters tegelijk markeren", "printBlankWallet": "Print een lege portemonnee", - "whatIsChecksum": "Iedereen seed heeft een overeenkomende 3-karakter controlesleutel", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Ik heb mijn seed opgeslagen", "checksumExplanation": "Wanneer u uw seed toevoegt aan uw portemonnee, moet u er zeker van zijn dat de gegenereerde controlesom hetzelfde is als degene die u heeft opgeschreven.", "mustSaveYourSeed": "<0><0>U moet uw seed opslaan met <1>tenminste één<2> van de onderstaande opties." @@ -345,7 +351,8 @@ "totalTime": "Totale tijd", "addressPasteDetected": "Adres plakken gedetecteerd", "addressPasteExplanation": "Het lijkt erop dat u een adres wil plakken. Zorg ervoor dat dit adres overeenkomt met het adres waarnaar u wilt zenden.", - "invalid": "ONGELDIG" + "invalid": "ONGELDIG", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Laten we een naam toevoegen", @@ -446,7 +453,8 @@ "empty": "Leeg", "retrying": "Opnieuw proberen...", "yesterday": "Gisteren", - "promotingAnotherBundle": "Andere bundel aan het promoten" + "promotingAnotherBundle": "Andere bundel aan het promoten", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Seed bekijken", @@ -504,18 +512,21 @@ "currency": "Valuta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Weet u zeker dat u wilt uitloggen?" + "logoutConfirmation": "Weet u zeker dat u wilt uitloggen?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "QR-code scannen" }, "unitInfoModal": { - "unitSystem": "Eenhedenstelsel", + "unitSystem": "Unit System", "trillion": "Biljoen", "billion": "Miljard", "million": "Miljoen", "thousand": "Duizend", - "one": "Één" + "one": "Één", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Waarom kan ik mijn volledige saldo niet uitgeven?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Heeft u uw seed opgeslagen?", - "alreadyHave": "Ik heb mijn seed opgeslagen", - "reenterSeed": "Bij de volgende stap wordt u gevraagd om uw seed opnieuw in te voeren.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Als u geen back-up heeft van uw seed en uw apparaat werkt niet meer, bent u al uw IOTA kwijt.", "pleaseConfirm": "Bevestig dat u uw seed veilig hebt opgeslagen." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometrische authenticatie onbeschikbaar", "fingerprintUnavailableExplanation": "Uw apparaat ondersteunt geen biometrische authenticatie of het is niet ingesteld in de apparaatinstellingen.", - "buttonInstructionsDisable": "Druk op de knop hieronder om vingerafdruk-verificatie uit te schakelen.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Druk op de knop hieronder om vingerafdruk-verificatie uit te schakelen.", - "buttonInstructionsDisableIPhoneX": "Druk op de knop hieronder om Face ID uit te schakelen.", - "buttonInstructionsEnableIPhoneX": "Druk op de knop hieronder om Face ID in te schakelen.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Raak vingerafdruklezer aan om in te loggen" }, "transferConfirmation": { "youAreAbout": "U staat op het punt om {{contents}} te versturen naar het adres", - "aMessage": "een bericht" + "aMessage": "een bericht", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Verkeerde code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Seedkluis exporteren", - "seedVaultExplanation": "Een SeedVault is een versleuteld bestand voor het veilig opslaan van uw seed. Uw seed is vergrendeld achter een SeedVault Key (Sleutel) en zonder deze Key kunt u geen toegang tot uw seed verkrijgen.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Zorg ervoor dat u het bestand op meerdere locaties backupt (bijvoorbeeld: harde schijf, cloud, USB). Raakt u dit bestand kwijt en heeft u uw seed niet ergens opgeslagen, bent u uw IOTA kwijt.", "exportFail": "Exporteren van Seedkluis mislukt", "exportFailExplanation": "Er was een probleem met het exporteren van de Seedkluis. Zorg ervoor dat u de juiste bevoegdheden en genoeg vrije ruimte hebt.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Uw seed is succesvol geïmporteerd.", "saveToDownloadFolder": "Opslaan in Download map", "importSeedVault": "Seedkluis importeren", - "dropSeedVaultHere": "Sleep SeedVault hier naar toe <1> of klik om te zoeken", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Voer uw Key in om de SeedVault te openen", "noSeedFound": "Seedkluis bevat geen geldige seed", "noSeedFoundExplanation": "De Seedkluis is leeg, of heeft een seed in een ongeldig formaat.", "seedFileError": "Kan Seedkluis niet openen", "seedFileErrorExplanation": "Er was een probleem tijdens het openen van de Seedkluis. Als u het juiste bestand hebt gekozen, kan het zijn dat dit corrupt is.", - "seedVaultKeyExplanation": "Allereerst moeten we uw SeedVault beveiligen. Kies een Key om het bestand mee te versleutelen. U heeft deze Key nodig om uw seed te herstellen vanuit SeedVault back-up. De Key mag hetzelfde als het wachtwoord dat u voor Trinity gebruikt." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Voorbereiding van transacties", "gettingTransactionsToApprove": "Bezig met transacties akkoorderen", "proofOfWork": "Bewijs van inspanning voltooien", - "broadcasting": "Uitzenden" + "broadcasting": "Uitzenden", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Snapshot transitie kan niet worden voltooid", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notificaties", diff --git a/src/shared/locales/no/translation.json b/src/shared/locales/no/translation.json index c2e774759c..483308a8d6 100644 --- a/src/shared/locales/no/translation.json +++ b/src/shared/locales/no/translation.json @@ -74,6 +74,8 @@ "wallet": "Lommebok", "all": "Alle", "sent": "Sendt", + "youReceived": "You received", + "youSent": "You sent", "received": "Mottatt", "sending": "Sender", "receiving": "Mottar", @@ -128,7 +130,7 @@ "spentAddressExplanation": "ADVARSEL: Midler på en brukt adresse", "discordInformation": "Det er risikabelt å sende midler fra samme adresse flere ganger. Vennligst besøk kanalen #help på Discord for å finne ut hva du kan gjøre.", "androidInsecureClipboardWarning": "Android har ikke en sikker utklippstavle.", - "androidCopyPasteWarning": "Aldri klipp og lim hovednøkkelen på en Android enhet.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Jeg skal ikke klippe og lime hovednøkkelen", "mustBeStoredAppropriately": "Den må lagres på riktig måte.", "deviceMayBecomeUnresponsive": "Enheten kan slutte å svare en stund.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Nøkkelring feil", "errorAccessingKeychainExplanation": "Ingen tilgang til nøkkelring nødvendig for sikker lagring.", "mainWallet": "HOVEDKONTO", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Passordet må være minst {{minLength}} tegn. Det er nå {{currentLength}} tegn. Prøv på nytt.", "passwordMismatch": "Passordene samsvarer ikke", "passwordMismatchExplanation": "Passordene du anga samsvarer ikke. Prøv på nytt.", - "anEncryptedCopy": "En kryptert kopi av hovednøkkelen blir lagret på din enhet. Du vil bruke dette passordet for å åpne lommeboken i fremtiden.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Skriv inn passordet på nytt" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Logg inn", "setNode": "Angi Node", "whyBiometricDisabled": "Hvorfor er biometrisk autentisering deaktivert?", - "whyBiometricDisabledExplanation": "Biometrisk pålogging er deaktivert første gang du starter applikasjonen av hensyn til sikkerhet. Når du bruker Trinity, vil du bli logget ut ved inaktivitet. Du kan deretter logge inn igjen med biometrisk autentisering." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Laster hovednøkkel for første gang.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Del aldri hovednøkkelen med noen.", "iotaLogo": "IOTA logo", - "print": "SKRIV UT", + "print": "Print", "paperConvenience": "En praktisk måte å oppbevare hovednøkkelen er å skrive den ut på papir.", "publicInsecure": "Men å skrive den ut på et offentlig nettverk eller printer er usikkert.", - "tapCheckboxes": "Vennligst trykk på avkryssingsfeltet nedenfor for å bekrefte.", - "wifiCheckbox": "Jeg vil ikke skrive ut på et offentlig nettverk", - "printerCheckbox": "Jeg vil ikke skrive ut på en offentlig printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Din adresse", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "La oss skrive ned din hovednøkkel", "youCanHighlightCharacters": "Du kan utheve 9 tegn om gangen", "printBlankWallet": "Skriv ut en tom lommebok", - "whatIsChecksum": "Hver hovednøkkel har en egen 3-tegn kontrollsum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Jeg har lagret min hovednøkkel", "checksumExplanation": "Når du legger til en hovednøkkel i lommeboken, bør du forsikre deg om at kontrollsummen samsvarer med den du har skrevet ned.", "mustSaveYourSeed": "<0><0>Du må lagre din hovednøkkel med <1>minst én<2> av alternativene nedenfor." @@ -345,7 +351,8 @@ "totalTime": "Total tid", "addressPasteDetected": "Adresse \"lim inn\" gjenkjent", "addressPasteExplanation": "Det ser ut som at du har limt inn en adresse. Vær sikker på at denne adressen samsvarer med den du ønsker å sende til.", - "invalid": "UGYLDIG" + "invalid": "UGYLDIG", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "La oss legge til et navn", @@ -446,7 +453,8 @@ "empty": "Tom", "retrying": "Prøver på nytt", "yesterday": "I går", - "promotingAnotherBundle": "Fremme en pakke til" + "promotingAnotherBundle": "Fremme en pakke til", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Vis hovednøkkel", @@ -504,18 +512,21 @@ "currency": "Valuta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Er du sikker på at du vil logge ut?" + "logoutConfirmation": "Er du sikker på at du vil logge ut?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Skann QR-kode" }, "unitInfoModal": { - "unitSystem": "ENHETSSYSTEMET", + "unitSystem": "Unit System", "trillion": "Billioner", "billion": "Milliarder", "million": "Millioner", "thousand": "Tusen", - "one": "En" + "one": "En", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Hvorfor kan jeg ikke bruke hele saldoen?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Har du lagret hovednøkkelen?", - "alreadyHave": "Jeg har lagret min hovednøkkel", - "reenterSeed": "På neste trinn vil du bli bedt om å skrive inn hovednøkkelen.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Hvis du ikke har lagret hovednøkkelen og enheten din blir ødelagt vil du miste tilgangen til dine IOTA.", "pleaseConfirm": "Vennligst bekreft at du har lagret hovednøkkelen." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometrisk autentisering er ikke tilgjengelig", "fingerprintUnavailableExplanation": "Enheten din støtter ikke biometrisk autentisering eller så har ikke dette blitt konfigurert i enhetens innstillinger.", - "buttonInstructionsDisable": "Trykk på knappen nedenfor for å deaktivere biometrisk autentisering.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Trykk på knappen nedenfor for å aktivere biometrisk autentisering.", - "buttonInstructionsDisableIPhoneX": "Trykk på knappen nedenfor for å deaktivere Face ID.", - "buttonInstructionsEnableIPhoneX": "Trykk på knappen nedenfor for å aktivere Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Berør fingeravtrykkleseren for å logge inn" }, "transferConfirmation": { "youAreAbout": "Du er nå klar til å sende {{contents}} til adressen", - "aMessage": "en melding" + "aMessage": "en melding", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Feil kode", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Eksporter SeedVault", - "seedVaultExplanation": "SeedVault er en kryptert fil for å lagre din hovednøkkel sikkert. Hovednøkkelen er kryptert bak en SeedVault Nøkkel og kan ikke brukes uten nøkkelen.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Pass på å sikkerhetskopiere filen flere steder (f.eks harddisk, nettsky, USB). Hvis du mister denne filen og du ikke har hovednøkkelen din lagret et annet sted, mister du tilgangen til dine IOTA.", "exportFail": "SeedVault eksport mislyktes", "exportFailExplanation": "Det oppstod et problem med å eksportere SeedVault. Kontroller at du har riktige tillatelser og nok plass.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Din hovednøkkel ble importert.", "saveToDownloadFolder": "Lagre til nedlastingsmappen", "importSeedVault": "Importer SeedVault", - "dropSeedVaultHere": "Slipp SeedVault her <1> eller klikk for å bla igjennom", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Skriv inn din nøkkel for å åpne SeedVault", "noSeedFound": "SeedVault inneholder ikke en gyldig hovednøkkel", "noSeedFoundExplanation": "SeedVault er enten tom eller inneholder en hovednøkkel i et ugyldig format.", "seedFileError": "Kunne ikke åpne SeedVault", "seedFileErrorExplanation": "Det var et problem med åpning av SeedVault. Hvis du valgte den riktige filen kan den være skadet.", - "seedVaultKeyExplanation": "Først må vi å sikre din SeedVault. Velg en nøkkel for å kryptere filen. Du vil trenge denne nøkkelen for å gjenopprette din hovednøkkel fra SeedVault-sikkerhetskopien. Nøkkelen kan være den samme som passordet du bruker for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Forbereder transaksjoner", "gettingTransactionsToApprove": "Mottar transaksjoner til godkjenning", "proofOfWork": "Fullfører PoW (Proof of Work)", - "broadcasting": "Kringkasting" + "broadcasting": "Kringkasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Kan ikke fullføre snapshot synkronisering", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Varslinger", diff --git a/src/shared/locales/pl/translation.json b/src/shared/locales/pl/translation.json index 13863d5e58..2aa04e645e 100644 --- a/src/shared/locales/pl/translation.json +++ b/src/shared/locales/pl/translation.json @@ -74,6 +74,8 @@ "wallet": "Portfel", "all": "Wszystkie", "sent": "Wysłano", + "youReceived": "Otrzymano", + "youSent": "Wysłano", "received": "Odebrano", "sending": "Wysyłanie", "receiving": "Odbieranie", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Błąd magazynu kluczy", "errorAccessingKeychainExplanation": "Nie można uzyskać dostępu do magazynu kluczy, odpowiedzialnego za bezpieczną pamięć.", "mainWallet": "KONTO GŁÓWNE", + "confirm": "Potwierdź", + "delete": "Usuń", "shouldUpdate": "Dostępna jest nowa aktualizacja", "shouldUpdateExplanation": "Dostępna jest nowa aktualizacja. Zaleca się aktualizację do najnowszej wersji.", "forceUpdate": "Zaktualizuj aplikację, aby kontynuować", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Twoje hasło musi mieć co najmniej {{minLength}} znaków. Obecna ilość znaków wynosi {{currentLength}}. Proszę spróbować ponownie.", "passwordMismatch": "Hasła nie są zgodne", "passwordMismatchExplanation": "Wpisane hasła różnią się. Spróbuj ponownie.", - "anEncryptedCopy": "Zaszyfrowana kopia Twojego klucza seed będzie przechowywana na Twoim urządzeniu. Będziesz korzystał z tego hasła w celu uzyskania dostępu do swojego portfela w przyszłości.", + "anEncryptedCopy": "To jest główne hasło do Twojego portfela. Będziesz go używać do logowania się.", "retypePassword": "Wpisz hasło ponownie" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Zaloguj", "setNode": "Serwer", "whyBiometricDisabled": "Dlaczego logowanie biometryczne jest niedostępne?", - "whyBiometricDisabledExplanation": "Dla Twojego bezpieczeństwa, logowanie odciskiem palca jest wyłączone przy pierwszym uruchomieniu aplikacji. Z tej metody logowania możesz skorzystać jedynie wtedy, gdy zostałeś wylogowany z Trinity ze względu na Twoją bezczynność w aplikacji." + "whyBiometricDisabledExplanationPart1": "Autoryzacja odciskiem palca, przy pierwszym uruchomieniu aplikacji, została wyłączona, dla Twojego bezpieczeństwa.", + "whyBiometricDisabledExplanationPart2": "Bezczynność w Trinity, będzie skutkowała automatycznym wylogowaniem z aplikacji. Później, będziesz mógł zalogować się, używając odcisku palca." }, "loading": { "loadingFirstTime": "Ładowanie klucza seed po raz pierwszy.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Nie udostępniaj swojego klucza nikomu.", "iotaLogo": "Logo IOTA", - "print": "DRUKUJ", + "print": "Drukuj", "paperConvenience": "Wydruk papierowej kopii klucza seed jest wygodnym sposobem na jego przechowywanie.", "publicInsecure": "Jednak drukowanie na publicznej sieci WiFi lub publicznej drukarce jest niebezpieczne.", - "tapCheckboxes": "Zaznacz poniższe pola, aby potwierdzić.", - "wifiCheckbox": "Nie będę drukował na publicznym WiFi", - "printerCheckbox": "Nie będę drukował na publicznej drukarce" + "pleaseCheck": "Sprawdź i potwierdź przed wydrukowaniem", + "wifiConfirmation": "Nie jestem połączony z publicznym WiFi", + "printerConfirmation": "Nie drukuję na publicznej drukarce" }, "receive": { "yourAddress": "Twój adres", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Zapiszmy Twój seed", "youCanHighlightCharacters": "Możesz wyróżnić 9 znaków naraz", "printBlankWallet": "Drukuj pusty portfel", - "whatIsChecksum": "Każdy seed posiada swoją 3-znakową sumę kontrolną", + "whatIsAChecksum": "Czym jest suma kontrolna?", + "everySeedHasAChecksum": "Każdy seed posiada swoją 3-znakową sumę kontrolną.", "iHavesavedMySeed": "Zapisałem swój seed", "checksumExplanation": "Za każdym razem, gdy dodajesz seed do portfela, powinieneś upewnić się, że suma kontrolna generowana przez portfel jest zgodna z tą, którą zapisałeś.", "mustSaveYourSeed": "<0><0>Musisz zapisać swój seed, wybierając <1>co najmniej jedną<2> z poniższych opcji." @@ -345,7 +351,8 @@ "totalTime": "Całkowity czas", "addressPasteDetected": "Wykryto wklejenie adresu", "addressPasteExplanation": "Wygląda na to, że wkleiłeś adres. Upewnij się, że wklejony adres odpowiada temu, na który chcesz wysłać.", - "invalid": "BŁĄD" + "invalid": "BŁĄD", + "swipeToSend": "Przesuń palcem, aby wysłać" }, "setSeedName": { "letsAddName": "Nazwij swoje konto", @@ -446,7 +453,8 @@ "empty": "Brak", "retrying": "Ponawianie", "yesterday": "Wczoraj", - "promotingAnotherBundle": "Promowanie innego pakietu" + "promotingAnotherBundle": "Promowanie innego pakietu", + "pleaseWait": "Proszę czekać, Trinity promuje obecnie inny pakiet." }, "accountManagement": { "viewSeed": "Pokaż seed", @@ -504,18 +512,21 @@ "currency": "Waluta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Czy na pewno chcesz się wylogować?" + "logoutConfirmation": "Czy na pewno chcesz się wylogować?", + "aboutToLogOut": "Za chwilę zostaniesz wylogowany", + "areYouSure": "Czy jesteś pewny?" }, "qrScanner": { "scan": "Zeskanuj swój kod QR" }, "unitInfoModal": { - "unitSystem": "JEDNOSTKI MIARY", + "unitSystem": "Jednostka miary", "trillion": "Bilion", "billion": "Miliard", "million": "Milion", "thousand": "Tysiąc", - "one": "Jeden" + "one": "Jeden", + "unitInfoExplanation": "Tokeny IOTA są zazwyczaj nabywane w wielokrotnościach jednego miliona, ale mogą być też transferowane, jako pojedyncze IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Dlaczego nie mogę zużyć całego stanu mojego konta?", @@ -551,7 +562,7 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Czy zrobiłeś kopię swojego klucza?", - "alreadyHave": "Zapisałem swój seed", + "iHaveBackedUp": "Bezpiecznie zapisałem swój seed", "reenterSeed": "W następnym kroku zostaniesz poproszony o ponowne wprowadzenie swojego klucza seed.", "reenterSeedWarning": "Jeśli nie zapisałeś swojego klucza, a Twoje urządzenie ulegnie uszkodzeniu, stracisz swoje środki IOTA.", "pleaseConfirm": "Proszę potwierdzić, że bezpiecznie przechowujesz swój klucz seed." @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Autoryzacja odciskiem palca niedostępna", "fingerprintUnavailableExplanation": "Twoje urządzenie nie obsługuje funkcji rozpoznawania odcisku palca lub funkcja ta nie została skonfigurowana w ustawieniach urządzenia.", - "buttonInstructionsDisable": "Naciśnij poniższy przycisk, aby wyłączyć funkcję autoryzacji odciskiem palca.", + "buttonInstructionsDisable": "Naciśnij poniższy przycisk, aby wyłączyć funkcję autoryzacji odciskiem palca", "buttonInstructionsEnable": "Naciśnij poniższy przycisk, aby włączyć funkcję autoryzacji odciskiem palca.", - "buttonInstructionsDisableIPhoneX": "Naciśnij poniższy przycisk, aby wyłączyć Face ID.", - "buttonInstructionsEnableIPhoneX": "Naciśnij poniższy przycisk, aby włączyć Face ID.", + "buttonInstructionsDisableIPhoneX": "Naciśnij poniższy przycisk, aby wyłączyć Face ID", + "buttonInstructionsEnableIPhoneX": "Naciśnij poniższy przycisk, aby włączyć Face ID", "instructionsLogin": "Przyłóż palec do czytnika, aby się zalogować" }, "transferConfirmation": { "youAreAbout": "Masz zamiar wysłać {{contents}} na adres", - "aMessage": "wiadomość" + "aMessage": "wiadomość", + "fromAccount": "Z {{selectedAccountName}}", + "toAddress": "Na adres", + "sendingAMessage": "Wysyłanie wiadomości", + "sendingAnEmptyMessage": "Wysyłanie pustej wiadomości" }, "twoFA": { "wrongCode": "Błędny kod", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Twój klucz seed został pomyślnie zaimportowany.", "saveToDownloadFolder": "Zapisz do folderu pobierania", "importSeedVault": "Importuj SeedVault", - "dropSeedVaultHere": "Upuść plik SeedVault tutaj <1> lub kliknij, aby wyszukać ręcznie", + "dropInstructions": "Upuść tutaj plik SeedVault lub tekst <1>\n(kliknij, aby wyszukać plik ręcznie)", + "dropActive": "Upuść tutaj plik SeedVault lub tekst", "enterKeyExplanation": "Wprowadź swoje hasło pliku SeedVault, aby go otworzyć", "noSeedFound": "SeedVault nie zawiera poprawnego klucza seed", "noSeedFoundExplanation": "Plik SeedVault jest pusty lub zawiera seed w nieprawidłowym formacie.", "seedFileError": "Nie można otworzyć SeedVault", "seedFileErrorExplanation": "Wystąpił problem podczas otwierania pliku SeedVault. Jeśli wybrano poprawny plik, to może być on uszkodzony.", - "seedVaultKeyExplanation": "Najpierw musisz zabezpieczyć swój SeedVault hasłem. Będziesz potrzebować tego hasła, aby przywrócić swój klucz seed z kopii zapasowej pliku SeedVault. Możesz użyć tego samego hasła, którego używasz do logowania w Trinity." + "seedVaultKeyExplanation": "Najpierw musisz zabezpieczyć swój SeedVault. Wybierz hasło do zaszyfrowania pliku. Będziesz potrzebować tego hasła, aby przywrócić swój seed z kopii zapasowej pliku SeedVault.", + "retypeKey": "Wpisz hasło ponownie" }, "chart": { "mcap": "Market", @@ -655,7 +672,8 @@ "preparingTransfers": "Przygotowywanie transferów", "gettingTransactionsToApprove": "Uzyskiwanie transakcji do potwierdzenia", "proofOfWork": "Finalizacja Proof of Work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer zakończony" }, "snapshotTransition": { "cannotCompleteTransition": "Nie można zakończyć aktualizacji środków", @@ -706,8 +724,8 @@ "completeSetup": "Zakończ konfigurację" }, "proxy": { - "proxy": "Używaj systemowych ustawień proxy", - "proxyExplanation": "Wykryj i używaj ogólnosystemowych ustawień serwera proxy. Zrestartuj portfel po zmianie tego ustawienia." + "proxy": "Użycie ustawień proxy", + "proxyExplanation": "Wykryj i używaj ogólnosystemowych ustawień serwera proxy. Po zmianie tego ustawienia należy ponownie uruchomić aplikację." }, "notifications": { "notifications": "Powiadomienia", diff --git a/src/shared/locales/pt-BR/translation.json b/src/shared/locales/pt-BR/translation.json index c484abf311..2d5ed50b4e 100644 --- a/src/shared/locales/pt-BR/translation.json +++ b/src/shared/locales/pt-BR/translation.json @@ -19,7 +19,7 @@ "invalidResponse": "Erro no servidor", "invalidResponseExplanation": "O servidor retornou um erro. Tente mudar o servidor.", "invalidResponseFetchingAccount": "O servidor retornou uma resposta inválida ao transmitir informações da sua conta. Tente mudar de servidor.", - "invalidResponseFetchingAccountDesktop": "The node returned an error while fetching your account information. If your problem persists, try changing node or disabling your system proxy in Trinity Settings.", + "invalidResponseFetchingAccountDesktop": "O servidor retornou um erro durante a busca de informações de sua conta. Se o problema persistir, tente alterar o servidor ou desative o proxy do sistema em configurações da Trinity.", "nodeOutOfSync": "Servidor não sincronizado", "nodeOutOfSyncExplanation": "O servidor selecionado não está sincronizado. Por favor, altere o servidor e tente novamente.", "thisNodeOutOfSync": "O servidor selecionado não está sincronizado. Por favor, altere o servidor e tente novamente.", @@ -74,6 +74,8 @@ "wallet": "Carteira", "all": "Todos", "sent": "Enviado", + "youReceived": "You received", + "youSent": "You sent", "received": "Recebido", "sending": "Enviando", "receiving": "Recebendo", @@ -128,7 +130,7 @@ "spentAddressExplanation": "AVISO: Saldos em endereços já gasto", "discordInformation": "Enviar mais de uma vez no mesmo endereço é perigoso. Por favor, acesse o canal de #help no Discord para descobrir o que fazer.", "androidInsecureClipboardWarning": "O Android não oferece uma Área de Transferência segura.", - "androidCopyPasteWarning": "Nunca copiar/colar sua seed em um dispositivo Android.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Eu não vou copiar/colar minha seed", "mustBeStoredAppropriately": "Ela deve ser armazenada adequadamente.", "deviceMayBecomeUnresponsive": "Seu dispositivo pode ficar sem responder por um tempo.", @@ -144,14 +146,16 @@ "tryingAgainWithLocalPoW": "Tentando novamente com prova de trabalho local.", "tryingAgainWithDifferentNode": "Tentar novamente com um servidor diferente.", "errorFetchingAccountInformation": "Erro ao buscar informações da conta.", - "errorSyncingAddresses": "Error syncing address information. Trying again with a different node.", + "errorSyncingAddresses": "Erro ao sincronizar informações do endereço. Tente novamente com um servidor diferente.", "errorAccessingKeychain": "Erro de chaveiro", "errorAccessingKeychainExplanation": "Não foi possível acessar o chaveiro necessário para armazenamento seguro.", "mainWallet": "CONTA PRINCIPAL", - "shouldUpdate": "A new update is available", - "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", - "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "confirm": "Confirm", + "delete": "Delete", + "shouldUpdate": "Uma atualização está disponível", + "shouldUpdateExplanation": "Uma nova atualização foi lançada. É recomendável você atualizar para a versão mais recente.", + "forceUpdate": "Atualize o aplicativo para continuar", + "forceUpdateExplanation": "Foi lançada uma atualização importante. Por favor, atualize o aplicativo agora." }, "addAdditionalSeed": { "seedInvalidChars": "A Seed contém caracteres inválidos", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Sua senha deve ter pelo menos {{minLength}} caracteres. Atualmente ela possui {{currentLength}} caracteres. Por favor, tente novamente.", "passwordMismatch": "As senhas não conferem", "passwordMismatchExplanation": "As senhas digitadas são diferentes. Tente novamente.", - "anEncryptedCopy": "Um cópia criptografada da sua Seed será armazenada em seu dispositivo. Você usará esta senha para acessar sua carteira no futuro.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Digite a Senha Novamente" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Iniciar Sessão", "setNode": "Selecionar Servidor", "whyBiometricDisabled": "Por que a Autenticação Biométrica está desabilitada?", - "whyBiometricDisabledExplanation": "Para sua segurança, a Autenticação Biométrica está desabilitada ao abrir o aplicativo pela primeira vez. Ao usar a Trinity você terá que fazer o login novamente, e então poderá usar a autenticação biométrica." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Carregando a seed pela primeira vez.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Nunca revele sua seed a ninguém.", "iotaLogo": "Logotipo da IOTA", - "print": "IMPRIMIR", + "print": "Print", "paperConvenience": "Imprimir uma cópia de sua Seed é uma maneira conveniente para armazená-la.", "publicInsecure": "Mas imprimir em um wifi público ou uma impressora pública não é seguro.", - "tapCheckboxes": "Por favor, toque as caixas de seleção abaixo para confirmar.", - "wifiCheckbox": "Eu não vou imprimir em um rede publica", - "printerCheckbox": "Eu não vou imprimir em uma impressora publica" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Seu endereço", @@ -282,15 +287,15 @@ "copyAddress": "Copiar endereço", "addressCopied": "Endereço copiado", "addressCopiedExplanation": "O seu endereço foi copiado para a área de transferência.", - "generateNewAddress": "Generate address", + "generateNewAddress": "Gerar novo endereço", "noAddresses": "NÃO EXISTEM ENDEREÇOS", "spent": "Gasto", "missingPermission": "Permissões do sistema de arquivo necessárias", "missingPermissionExplanation": "Acesso ao sistema de arquivo é necessário para compartilhar códigos QR.", "tag": "Etiqueta", - "generateAnAddress": "Generate address", - "generateAnAddressTitle": "Generate an address", - "generateAnAddressExplanation": "Please generate an address before using this function." + "generateAnAddress": "Gerar novo endereço", + "generateAnAddressTitle": "Gerar novo endereço", + "generateAnAddressExplanation": "Por favor, gere um endereço antes de usar esta função." }, "saveYourSeed": { "saveYourSeed": "Faça o backup de sua seed", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Vamos salvar sua seed", "youCanHighlightCharacters": "Você pode marcar 9 caracteres por vez", "printBlankWallet": "Imprimir uma carteira em branco", - "whatIsChecksum": "Toda Seed possui um Código de Verificação de 3 caracteres", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Eu salvei a minha Seed", "checksumExplanation": "Sempre que você adicionar uma seed na sua carteira, você deve verificar que as somas de verificação geradas pela carteira são iguais às que você tem anotado.", "mustSaveYourSeed": "<0><0>Você deve salvar sua seed usando <1>pelo menos uma<2> das opções abaixo." @@ -345,7 +351,8 @@ "totalTime": "Tempo total", "addressPasteDetected": "Colagem de endereço detectado", "addressPasteExplanation": "Parece que você colou um endereço. Certifique-se de que o endereço coincide com o qual você quer enviar.", - "invalid": "INVÁLIDO" + "invalid": "INVÁLIDO", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Vamos adicionar um nome", @@ -446,7 +453,8 @@ "empty": "Vazio", "retrying": "Tentando de novo", "yesterday": "Ontem", - "promotingAnotherBundle": "Promover outro pacote" + "promotingAnotherBundle": "Promover outro pacote", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Ver Seed", @@ -504,18 +512,21 @@ "currency": "Moeda" }, "logoutConfirmationModal": { - "logoutConfirmation": "Tem certeza que deseja sair?" + "logoutConfirmation": "Tem certeza que deseja sair?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Ler código QR" }, "unitInfoModal": { - "unitSystem": "SISTEMA DE UNIDADES", + "unitSystem": "Unit System", "trillion": "Trilhão", "billion": "Bilhão", "million": "Milhão", "thousand": "Mil", - "one": "Um" + "one": "Um", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Por que eu não posso usar meu saldo integral?", @@ -545,14 +556,14 @@ "enterPassword": "Digite a senha para exibir sua seed.", "viewSeed": "Ver Seed", "hideSeed": "Esconder Seed", - "notAvailable": "Seed export is not available for {{accountType}} account type", - "accountIndex": "Your Ledger account index", - "accountPage": "Your Ledger account page" + "notAvailable": "Exportação da Seed não está disponível para o tipo de conta {{accountType}}", + "accountIndex": "Seu índice de conta Ledger", + "accountPage": "Página de sua conta Ledger" }, "saveSeedConfirmation": { "didSaveSeed": "Você fez backup de sua seed?", - "alreadyHave": "Eu tenho minha Seed armazenada", - "reenterSeed": "No próximo passo você deverá re-digitar sua seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Se você não fez o backup de sua seed e seu dispositivo falhar, você perderá toda sua IOTA.", "pleaseConfirm": "Por favor, confirme que você tem armazenado sua seed de modo seguro." }, @@ -572,15 +583,19 @@ "status": "Situação", "fingerprintUnavailable": "Autenticação Biométrica indisponível", "fingerprintUnavailableExplanation": "Seu dispositivo não suporta reconhecimento de biometria ou não está configurado nas opções do dispositivo.", - "buttonInstructionsDisable": "Pressione o botão abaixo para desabilitar a autenticação biométrica.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Pressione o botão abaixo para habilitar a autenticação biométrica.", - "buttonInstructionsDisableIPhoneX": "Pressione o botão abaixo para desabilitar a identificação do rosto.", - "buttonInstructionsEnableIPhoneX": "Pressione o botão abaixo para permitir a identificação do rosto.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Toque o leitor de impressão digital para entrar" }, "transferConfirmation": { "youAreAbout": "Você está prestes a enviar {{contents}} para o endereço", - "aMessage": "uma mensagem" + "aMessage": "uma mensagem", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Código incorreto", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Exportar SeedVault", - "seedVaultExplanation": "O SeedVault é um arquivo criptografado para armazenar sua Seed com segurança. A Seed é criptografada por trás de uma chave SeedVault e não pode ser acessada sem a chave.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Certifique-se de fazer backup do arquivo em vários locais (por exemplo, disco rígido, nuvem, USB). Se você perde esse arquivo e não armazenou sua semente em outro lugar, você vai perder seus IOTAs.", "exportFail": "SeedVault exportação falhou", "exportFailExplanation": "Houve um problema ao exportar o SeedVault. Por favor, certifique-se de que você tem as permissões apropriadas e espaço livre suficiente.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Sua seed foi importada com sucesso.", "saveToDownloadFolder": "Salvar na pasta de download", "importSeedVault": "Importar SeedVault", - "dropSeedVaultHere": "Arraste sua SeedVault até aqui <1> ou clique para procurar", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Digite sua senha para abrir o SeedVault", "noSeedFound": "SeedVault não contém uma Seed válida", "noSeedFoundExplanation": "O SeedVault está vazio ou contém uma Seed com um formato inválido.", "seedFileError": "Falha ao abrir o SeedVault", "seedFileErrorExplanation": "Houve um problema ao abrir o SeedVault. Se você selecionou o arquivo correto então o mesmo pode estar corrompido.", - "seedVaultKeyExplanation": "Primeiro temos que proteger seu SeedVault. Por favor, escolha uma senha para criptografar o arquivo. Você precisará desta senha para recuperar a seed do backup do SeedVault. Sinta-se livre para usar a mesma senha que você usa na Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparando as transferências", "gettingTransactionsToApprove": "Obtendo as transações para aprovação", "proofOfWork": "Completando a aprovação", - "broadcasting": "Transmitindo" + "broadcasting": "Transmitindo", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "A transição do registro instantâneo não pode ser concluída", @@ -683,8 +701,8 @@ "newVersionAvailableExplanation": "A new Trinity {{version}} version is available. Carefully read the release notes and verify the download source before updating:", "installUpdate": "Instale a atualização e reinicie", "installUpdateExplanation": "Download completo, A Trinity será reiniciada agora para instalar a atualização.", - "downloadingUpdate": "Downloading update", - "downloadProgress": "{{transferred}} of {{total}} downloaded" + "downloadingUpdate": "Baixando atualizações", + "downloadProgress": "{{transferred}} de {{total}} baixado" }, "notificationLog": { "errorLog": "Registros de erro" @@ -706,8 +724,8 @@ "completeSetup": "Configuração completa" }, "proxy": { - "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxy": "Usar proxy do sistema", + "proxyExplanation": "Detectar e usar as configurações de proxy do sistema. Feche e reabra a carteira depois de alterar essa configuração." }, "notifications": { "notifications": "Notificações", @@ -733,35 +751,35 @@ "sweepConfirmationTitle": "Confirmação de varredura" }, "ledger": { - "ready": "Ledger device connected and ready", - "notReady": "If you wish to use a Ledger device, connect and unlock it now", - "indexInUse": "Index already in use for account {{account}}", - "indexInUseExplanation": "Your chosen index is already in use on one of your accounts. Please choose another index number.", - "proceedWithLedger": "Proceed with Ledger setup", - "accountIndex": "Account index", - "accountPage": "Account page", - "chooseAccountIndex": "Choose your Ledger account index", - "accountIndexExplanation": "Your Ledger can store multiple seeds. Each seed is identified by a unique index number. An unused index has been pre-selected, but feel free to choose your own. Make sure you note down your chosen index number.", - "accountPageExplanation": "Some third party wallets require pages.", - "connectionError": "Cannot connect to Ledger", - "connectionErrorExplanation": "Check that your Ledger is connected and unlocked.", - "connectionTitle": "Connect your Ledger", - "connectionExplanation": "A Ledger device must be connected to perform this function.", - "transactionTitle": "Scroll through and approve the transaction on your Ledger", - "transactionExplanation": "Use your Ledger device to approve the outgoing transaction.", - "applicationTitle": "Open Ledger IOTA app", - "applicationExplanation": "Go to your Ledger and open the IOTA app to continue using Trinity.", - "cannotSendZeroValueTitle": "Cannot send zero value transfer", - "cannotSendZeroValueExplanation": "Cannot send zero value transfers with a Ledger device.", - "ledgerDisconnectedTitle": "Ledger device disconnected", - "ledgerDisconnectedExplanation": "The Ledger device was disconnected. Please reconnect and try again.", - "ledgerDeniedTitle": "Transaction denied", - "ledgerDeniedExplanation": "The transaction was denied on the Ledger device.", - "ledgerIncorrectIndex": "Ledger device mismatch", - "ledgerIncorrectIndexExplanation": "The connected Ledger device does not match the one linked to this account, or the recovery phrase has been changed.", - "checkAddress": "Check the receive address", - "checkAddressExplanation": "Check that the address matches the one displayed on your Ledger device.", - "applicationNotInitialised": "Warning unconfirmed", - "applicationNotInitialisedExplanation": "Reopen the IOTA app on your Ledger device, accept the informational warning and try again." + "ready": "Dispositivo Ledger conectado e pronto", + "notReady": "Se você deseja usar um dispositivo de Ledger, conecte e desbloqueie agora", + "indexInUse": "Índice já em uso para conta {{account}}", + "indexInUseExplanation": "Índice escolhido já está em uso em uma das suas contas. Por favor escolha outro número de índice.", + "proceedWithLedger": "Continuar com a configuração de Ledger", + "accountIndex": "Índice de conta", + "accountPage": "Página da conta", + "chooseAccountIndex": "Escolha o seu índice da conta Ledger", + "accountIndexExplanation": "Seu Ledger pode armazenar varias Seeds. Cada Seed é identificada por um número de índice único. Um índice ainda não usado foi pre-selecionado, mas sinta-se a vontade de escolher o seu próprio. Certifique-se de anotar o número do índice escolhido.", + "accountPageExplanation": "Algumas carteiras de terceiros exigem páginas.", + "connectionError": "Não foi possível conectar-se ao Ledger", + "connectionErrorExplanation": "Verifique se seu Ledger está conectado e desbloqueado.", + "connectionTitle": "Conecte seu Ledger", + "connectionExplanation": "Um dispositivo de Ledger deve estar conectado para executar esta função.", + "transactionTitle": "Use a barra de rolagem para aprovar a transação no seu Ledger", + "transactionExplanation": "Use seu dispositivo de Ledger para aprovar a transação de saída.", + "applicationTitle": "Abrir IOTA Ledger app", + "applicationExplanation": "Vá para seu Ledger e abra o aplicativo IOTA para continuar usando a Trinity.", + "cannotSendZeroValueTitle": "Não é possível enviar uma transferência sem valor", + "cannotSendZeroValueExplanation": "Não possível enviar transferências sem valor com um dispositivo de Ledger.", + "ledgerDisconnectedTitle": "Dispositivo Ledger desconectado", + "ledgerDisconnectedExplanation": "O dispositivo Ledger foi desconectado. Por favor, reconecte e tente novamente.", + "ledgerDeniedTitle": "Transação recusada", + "ledgerDeniedExplanation": "A transação foi recusada no dispositivo Ledger.", + "ledgerIncorrectIndex": "Dispositivo Ledger incompatível", + "ledgerIncorrectIndexExplanation": "O Ledger conectado não consta com o Ledger registrado nessa conta, ou a frase de recuperação foi mudada.", + "checkAddress": "Verifique o endereço do destinatário", + "checkAddressExplanation": "Verifique se o endereço é igual ao endereço no dispositivo Ledger.", + "applicationNotInitialised": "Aviso não confirmado", + "applicationNotInitialisedExplanation": "Reabra o aplicativo IOTA no seu dispositivo Ledger, aceite o aviso e tente novamente." } } \ No newline at end of file diff --git a/src/shared/locales/pt-PT/translation.json b/src/shared/locales/pt-PT/translation.json index 9f85c27ec2..2bb296b948 100644 --- a/src/shared/locales/pt-PT/translation.json +++ b/src/shared/locales/pt-PT/translation.json @@ -74,6 +74,8 @@ "wallet": "Wallet", "all": "All", "sent": "Sent", + "youReceived": "You received", + "youSent": "You sent", "received": "Received", "sending": "Enviando", "receiving": "Receiving", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Your password must be at least {{minLength}} characters. It is currently {{currentLength}} characters long. Please try again.", "passwordMismatch": "As palavras-passe não coincidem", "passwordMismatchExplanation": "As palavras-passe que inseriu não coincidem. Por favor tente de novo.", - "anEncryptedCopy": "Um cópia cifrada da sua Seed será guardada no seu dispositivo. Utilizará esta palavra-passe para aceder, futuramente, à sua carteira.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Digite de novo a password" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "A carregar a Seed pela primeira vez.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Nunca partilhe a sua Seed com ninguém.", "iotaLogo": "Logótipo IOTA", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>You must save your seed with <1>at least one<2> of the options listed below." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "View seed", @@ -504,18 +512,21 @@ "currency": "Moeda" }, "logoutConfirmationModal": { - "logoutConfirmation": "Are you sure you want to log out?" + "logoutConfirmation": "Are you sure you want to log out?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Scan your QR code" }, "unitInfoModal": { - "unitSystem": "UNIT SYSTEM", + "unitSystem": "Unit System", "trillion": "Trillion", "billion": "Billion", "million": "Million", "thousand": "Thousand", - "one": "Um" + "one": "Um", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "I have saved my seed", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "uma mensagem" + "aMessage": "uma mensagem", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Wrong code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/ro/translation.json b/src/shared/locales/ro/translation.json index c6216e0c09..9bf68e8cbc 100644 --- a/src/shared/locales/ro/translation.json +++ b/src/shared/locales/ro/translation.json @@ -74,6 +74,8 @@ "wallet": "Portofel", "all": "All", "sent": "Trimis", + "youReceived": "You received", + "youSent": "You sent", "received": "Primit", "sending": "Se trimite", "receiving": "Se primește", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Your password must be at least {{minLength}} characters. It is currently {{currentLength}} characters long. Please try again.", "passwordMismatch": "Passwords do not match", "passwordMismatchExplanation": "The passwords you have entered do not match. Please try again.", - "anEncryptedCopy": "An encrypted copy of your seed will be stored on your device. You will use this password to access your wallet in future.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Retype Password" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Loading seed for the first time.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Never share your seed with anyone.", "iotaLogo": "IOTA logo", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>You must save your seed with <1>at least one<2> of the options listed below." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "View seed", @@ -504,18 +512,21 @@ "currency": "Currency" }, "logoutConfirmationModal": { - "logoutConfirmation": "Are you sure you want to log out?" + "logoutConfirmation": "Are you sure you want to log out?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Scan your QR code" }, "unitInfoModal": { - "unitSystem": "UNIT SYSTEM", + "unitSystem": "Unit System", "trillion": "Trillion", "billion": "Billion", "million": "Million", "thousand": "Thousand", - "one": "One" + "one": "One", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "I have saved my seed", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "a message" + "aMessage": "a message", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Wrong code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/ru/translation.json b/src/shared/locales/ru/translation.json index 53777645e1..4214ec4cb2 100644 --- a/src/shared/locales/ru/translation.json +++ b/src/shared/locales/ru/translation.json @@ -74,6 +74,8 @@ "wallet": "Кошелёк", "all": "All", "sent": "Отправлено", + "youReceived": "You received", + "youSent": "You sent", "received": "Получено", "sending": "Отправка", "receiving": "Получение", @@ -128,7 +130,7 @@ "spentAddressExplanation": "Предупреждение: Средства на использованном адресе", "discordInformation": "Отправлять с одного адреса несколько раз опасно. Пожалуйста, посетите канал #help в Discord'е, чтобы узнать, что вы можете сделать.", "androidInsecureClipboardWarning": "Андроид не предоставляет безопасного буфера обмена.", - "androidCopyPasteWarning": "Никогда не пользуйтесь функцией \"Скопировать/Вставить\" на Андроиде.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Я не буду копировать/вставлять мой ключ", "mustBeStoredAppropriately": "Нужно хранить надлежащим образом.", "deviceMayBecomeUnresponsive": "Ваше устройство может не отвечать какое-то время.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Ваш пароль должен быть длиной как минимум {{minLength}} символов. Текущая длина {{currentLength}} символов. Пожалуйста, попробуйте еще раз.", "passwordMismatch": "Пароли не совпадают", "passwordMismatchExplanation": "Введенные пароли не совпадают. Пожалуйста, попробуйте еще раз.", - "anEncryptedCopy": "Зашифрованная копия Вашего ключа будет сохранена на Вашем устройстве. В дальнейшем Вы будете использовать для доступа к кошельку данный пароль.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Введите пароль еще раз" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Войти", "setNode": "Выбрать узел", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Загрузка ключа в самый первый раз.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Никогда не сообщайте свой ключ кому-либо.", "iotaLogo": "Логотип IOTA", - "print": "НАПЕЧАТАТЬ", + "print": "Print", "paperConvenience": "Печать бумажной копии Вашего ключа - это удобный способ его хранения.", "publicInsecure": "Но печать через общественный Wi-Fi или на общедоступном принтере небезопасна.", - "tapCheckboxes": "Пожалуйста, поставьте галочки ниже, чтобы подтвердить.", - "wifiCheckbox": "Я не буду печатать через общественный Wi-Fi", - "printerCheckbox": "Я не буду печатать на общедоступном принтере" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "Одновременно можно выделить 9 символов", "printBlankWallet": "Распечатать чистый кошелёк", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Я сохранил свой ключ", "checksumExplanation": "Каждый раз, когда Вы добавляете ключ к Вашему кошельку, Вы должны убедиться, что контрольная сумма, сгенерированная кошельком, соответствует той, которую Вы записали.", "mustSaveYourSeed": "<0><0>Вы должны сохранить свой ключ <1>как минимум одним <2> из перечисленных ниже способов." @@ -345,7 +351,8 @@ "totalTime": "Общее время", "addressPasteDetected": "Обнаружена вставка адреса", "addressPasteExplanation": "Похоже, что Вы вставили адрес. Убедитесь, что этот адрес соответствует тому, на который Вы хотите отправить.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Пожалуйста, добавьте название", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Показать ключ", @@ -504,18 +512,21 @@ "currency": "Валюта" }, "logoutConfirmationModal": { - "logoutConfirmation": "Вы уверены, что хотите выйти?" + "logoutConfirmation": "Вы уверены, что хотите выйти?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Сканировать QR-код" }, "unitInfoModal": { - "unitSystem": "СИСТЕМА ЕДИНИЦ", + "unitSystem": "Unit System", "trillion": "Триллион", "billion": "Миллиард", "million": "Миллион", "thousand": "Тысяча", - "one": "Одна" + "one": "Одна", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Почему нельзя тратить мои баланс целиком?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Вы создали резервную копию Вашего ключа?", - "alreadyHave": "Я сохранил свой ключ", - "reenterSeed": "На следующем этапе Вам будет предложено повторно ввести Ваш ключ.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Если вы не создали резервную копию Вашего ключа и на Вашем устройстве возникнет сбой, Вы потеряете все Ваши IOTA.", "pleaseConfirm": "Пожалуйста, подтвердите, что Вы надежно сохранили Ваш ключ." }, @@ -572,15 +583,19 @@ "status": "Статус", "fingerprintUnavailable": "Биометрическая аутентификация недоступна", "fingerprintUnavailableExplanation": "Ваше устройство не поддерживает биометрической аутентификации, или она не была настроена в параметрах устройства.", - "buttonInstructionsDisable": "Нажмите на кнопку ниже, чтобы отключить аутентификацию на основе отпечатков пальцев.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Нажмите на кнопку ниже, чтобы включить аутентификацию на основе отпечатков пальцев.", - "buttonInstructionsDisableIPhoneX": "Нажмите на кнопку ниже, чтобы отключить идентификатор лица.", - "buttonInstructionsEnableIPhoneX": "Нажмите на кнопку ниже, чтобы включить идентификатор лица.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Приложите палец к сенсору чтения отпечатков пальцев для входа" }, "transferConfirmation": { "youAreAbout": "Вы собираетесь отправить {{contents}} на адрес", - "aMessage": "сообщение" + "aMessage": "сообщение", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Неправильный код", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Подготовка трансфера", "gettingTransactionsToApprove": "Подтверждение транзакции", "proofOfWork": "Завершение доказательства работы", - "broadcasting": "Трансляция" + "broadcasting": "Трансляция", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Не удается завершить процесс актуализации после снимка сети", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/sk/translation.json b/src/shared/locales/sk/translation.json index b34bad00d9..e13817cc90 100644 --- a/src/shared/locales/sk/translation.json +++ b/src/shared/locales/sk/translation.json @@ -19,7 +19,7 @@ "invalidResponse": "Chyba Nodu", "invalidResponseExplanation": "Node vrátil chybu. Vyskúšajte zmeniť Node.", "invalidResponseFetchingAccount": "Node vrátil chybu pri získavani informácií o účte. Vyskúšajte zmeniť Node.", - "invalidResponseFetchingAccountDesktop": "The node returned an error while fetching your account information. If your problem persists, try changing node or disabling your system proxy in Trinity Settings.", + "invalidResponseFetchingAccountDesktop": "Pri načítavaní informácii o Vašom účte došlo ku chybe. Ak problém pretrváva, skúste zmeniť Node, alebo zakázať proxy server v nastaveniach Trinity.", "nodeOutOfSync": "Váš Node nie je synchronizovaný", "nodeOutOfSyncExplanation": "Vami zvolený Node nie je synchronizovaný. Prosím, zmeňte Node alebo to skúste znova.", "thisNodeOutOfSync": "Vami zvolený Node nie je synchronizovaný. Prosím, zmeňte Node alebo to skúste znova.", @@ -74,6 +74,8 @@ "wallet": "Peňaženka", "all": "Všetko", "sent": "Odoslané", + "youReceived": "You received", + "youSent": "You sent", "received": "Prijaté", "sending": "Odosielanie", "receiving": "Prijímanie", @@ -98,7 +100,7 @@ "noLongerValid": "Balíček, ktorý sa snažíte podporiť, už nie je platný", "transactionAlreadyConfirmed": "Transakcia už bola potvrdená", "transactionAlreadyConfirmedExplanation": "Transakcia, ktorú sa pokúšate podporiť, je už potvrdená.", - "cannotSendToOwn": "Sending to an input address", + "cannotSendToOwn": "Odosielate na vstupnú adresu", "cannotSendToOwnExplanation": "Nie je možné odoslať na adresu, ktorá je použitá ako vstup v transakcií.", "pleaseWait": "Prosím čakajte", "pleaseWaitEllipses": "Prosím čakajte...", @@ -128,7 +130,7 @@ "spentAddressExplanation": "UPOZORNENIE: Prostriedky na adresách z ktorých bolo už odoslané", "discordInformation": "Odosielanie z rovnakej adresy viackrát je nebezpečné. Prosím, navštívte #help kanál v aplikácii Discord, aby ste zistili, čo môžete urobiť.", "androidInsecureClipboardWarning": "Schránka v systéme Android nie je bezpečná.", - "androidCopyPasteWarning": "Nikdy nekopírujte/nevkladajte váš Seed do Android zariadenia.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Nebudem kopírovať/vkladať svoj Seed", "mustBeStoredAppropriately": "Musí byť uložený zodpovedajúcim spôsobom.", "deviceMayBecomeUnresponsive": "Vaše zariadenie môže na chvíľu prestať reagovať.", @@ -144,10 +146,12 @@ "tryingAgainWithLocalPoW": "Opakovanie pomocou miestneho režimu PoW.", "tryingAgainWithDifferentNode": "Opakovanie s iným Nodom.", "errorFetchingAccountInformation": "Pri načítavaní informacií o účte došlo ku chybe.", - "errorSyncingAddresses": "Error syncing address information. Trying again with a different node.", + "errorSyncingAddresses": "Chyba pri synchronizácii informácii adresy. Skúste opakovať s iným Nodom.", "errorAccessingKeychain": "Chyba kľúčenky", - "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", + "errorAccessingKeychainExplanation": "Nie je možné získať prístup k úložišti kľúčov.", "mainWallet": "HLAVNÝ ÚČET", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "Je k dispozicii nová aktualizácia", "shouldUpdateExplanation": "Bola vydaná nová aktualizácia. Doporučujeme aktualizovať na najnovšiu verziu.", "forceUpdate": "Ak chcete pokračovať, aktualizujte aplikáciu", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Heslo musí obsahovať minimálne {{minLength}} znakov. Vaše heslo má momentálne {{currentLength}} znakov. Prosím, skúste to znova.", "passwordMismatch": "Heslá sa nezhodujú", "passwordMismatchExplanation": "Zadané heslo je neplatné. Prosím, skúste to znova.", - "anEncryptedCopy": "Vo vašom zariadení sa uloží zašifrovaná kópia vášho Seedu. Týmto heslom sa budete prihlasovať do svojej peňaženky.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Zadajte heslo znova" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Prihlásiť sa", "setNode": "Nastaviť Node", "whyBiometricDisabled": "Prečo je biometrické overovanie vypnuté?", - "whyBiometricDisabledExplanation": "Pri prvom načítaní aplikácie je biometrické prihlásenie pre vašu bezpečnosť vypnuté. Ak budete pri použití Trinity, odhlásený z dôvodu nečinnosti, môžete prihlásiť späť pomocou biometrického overenia." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Prvotné načítanie Seedu.", @@ -256,8 +261,8 @@ "individualLetters": "Vyberte náhodné znaky.", "individualLetterCount": "Stlačte <1><0>{{count}} písmeno pre náhodný výber.", "individualLetterCount_plural": "Stlačte <1><0>{{count}} písmen pre náhodný výber.", - "randomiseCharsToContinue": "Randomise <1>{{count}} character to continue.", - "randomiseCharsToContinue_plural": "Randomise <1>{{count}} characters to continue.", + "randomiseCharsToContinue": "Pre pokračovanie vyberte <1> {{count}} náhodný znak.", + "randomiseCharsToContinue_plural": "Pre pokračovanie vyberte <1> {{count}} náhodné znaky.", "whatIsASeed": "Čo je to Seed?" }, "onboardingComplete": { @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Svoj Seed nikdy nikomu neprezrádzajte.", "iotaLogo": "IOTA logo", - "print": "TLAČIŤ", + "print": "Print", "paperConvenience": "Vytlačenie papierovej kópie vášho Seedu je vhodný spôsob, ako ho uchovať.", "publicInsecure": "Ale tlačenie cez verejnú wifi alebo na verejnej tlačiarni nie je bezpečné.", - "tapCheckboxes": "Pre potvrdenie, prosím, zaškrtnite políčka nižšie.", - "wifiCheckbox": "Nebudem tlačiť cez verejnú wifi", - "printerCheckbox": "Nebudem tlačiť na verejnej tlačiarni" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Vaša adresa", @@ -290,7 +295,7 @@ "tag": "Značka", "generateAnAddress": "Generovať adresu", "generateAnAddressTitle": "Generovať adresu", - "generateAnAddressExplanation": "Please generate an address before using this function." + "generateAnAddressExplanation": "Prosím vygenerujte adresu pred použitím tejto funkcie." }, "saveYourSeed": { "saveYourSeed": "Zálohujte váš Seed", @@ -301,10 +306,11 @@ "paperWallet": "Papierová peňaženka", "writeYourSeedDown": "Zapíšte si váš Seed", "seedClearedExplanation": "Kvôli väčšej bezpečnosti bol Seed zo schránky vymazaný.", - "letsWriteDownYourSeed": "Let's write down your seed", + "letsWriteDownYourSeed": "Zapíšte si niekde Váš Seed", "youCanHighlightCharacters": "Môžete zvýrazniť 9 znakov súčasne", "printBlankWallet": "Tlač prázdnej šablóny", - "whatIsChecksum": "Každý Seed má zodpovedajúci 3-znakový kontrolný súčet", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Svoj Seed mám uložený", "checksumExplanation": "Vždy, keď pridáte Seed do vašej peňaženky, mali by ste sa uistiť, že kontrolný súčet vygenerovaný peňaženkou zodpovedá tomu, ktorý ste si zapísali.", "mustSaveYourSeed": "<0><0>Je potrebné zálohovať váš Seed <1>aspoň jedným<2> z nižšie uvedených spôsobov." @@ -317,8 +323,8 @@ "incorrectSeedExplanation": "Seed, ktorý ste zadali, je neplatný. Prosím, skúste to znova.", "ifYouHaveNotSaved": "Ak nemáte svoj Seed zálohovaný, vráťte sa, prosím, späť a urobte tak.", "enterSeedBelow": "Zadajte nižšie váš novovytvorený Seed pre potvrdenie, že ste si ho správne zazálohovali", - "clipboardWarning": "Do not copy paste your seed", - "clipboardWarningExplanation": "WARNING: Copy paste is disabled for your security." + "clipboardWarning": "Váš Seed nie je možné kopírovať ani vkladať", + "clipboardWarningExplanation": "UPOZORNENIE: Kopírovanie a vkladanie je zakázané pre Vašu bezpečnosť." }, "send": { "invalidAddress": "Neplatná adresa", @@ -345,7 +351,8 @@ "totalTime": "Celkový čas", "addressPasteDetected": "Zistené kopírovanie adresy", "addressPasteExplanation": "Vyzerá to, že ste skopírovali adresu zo schránky. Uistite sa, že vložená adresa je naozaj tá, na ktorú chcete odoslať prostriedky.", - "invalid": "NEPLATNÝ" + "invalid": "NEPLATNÝ", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Zadajte názov", @@ -355,10 +362,10 @@ "modeSelection": { "advanced": "Pokročilý", "standard": "Štandardný", - "advancedModeExplanation": "Advanced mode will display more detailed technical information.", - "modesExplanation": "Only enable Advanced mode if you are experienced using IOTA. You may find it confusing otherwise.", - "modeUpdated": "Mode updated", - "modeUpdatedExplanation": "You have changed to {{mode}} mode" + "advancedModeExplanation": "Pokročilý režim zobrazí podrobnejšie technické informácie.", + "modesExplanation": "Pokročilý režim povolte iba ako skúsený uživateľ IOTA. Inak to môže byť pre Vás matúce.", + "modeUpdated": "Režim zmenený", + "modeUpdatedExplanation": "Zmenili ste na {{mode}} rezimu" }, "settings": { "transferSending": "Odosielanie transakcie", @@ -446,7 +453,8 @@ "empty": "Prázdne", "retrying": "Pokúša sa znova", "yesterday": "Včera", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Podpora ďalšieho balíčku", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Zobraziť Seed", @@ -504,18 +512,21 @@ "currency": "Mena" }, "logoutConfirmationModal": { - "logoutConfirmation": "Určite sa chcete odhlásiť?" + "logoutConfirmation": "Určite sa chcete odhlásiť?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Naskenujte QR kód" }, "unitInfoModal": { - "unitSystem": "JEDNOTKOVÝ SYSTÉM", + "unitSystem": "Unit System", "trillion": "Bilión", "billion": "Miliarda", "million": "Milión", "thousand": "Tisíc", - "one": "Jedna" + "one": "Jedna", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Prečo nemôžem použiť celý zostatok môjho účtu?", @@ -523,9 +534,9 @@ "discordInformation": "Pokiaľ chcete zistiť vaše možnosti, prejdite do #help v aplikácii Discord." }, "deleteAccount": { - "areYouSure": "Are you sure you want to delete your account?", + "areYouSure": "Naozaj si prajete vymazať tento účet?", "yourSeedWillBeRemoved": "Váš Seed a história transakcií budú odstránené.", - "thisAction": "This action cannot be undone", + "thisAction": "Túto akciu nie je možné vrátiť späť", "enterPassword": "Pre zmazanie účtu vložte svoje heslo." }, "manualSync": { @@ -545,14 +556,14 @@ "enterPassword": "Pre zobrazenie vášho Seedu vložte heslo.", "viewSeed": "Zobraziť Seed", "hideSeed": "Skryť Seed", - "notAvailable": "Seed export is not available for {{accountType}} account type", - "accountIndex": "Your Ledger account index", - "accountPage": "Your Ledger account page" + "notAvailable": "Seed export nie je k dispozícii pre typ účtu {{accountType}}", + "accountIndex": "Index účtu vo Vašom Ledgeri", + "accountPage": "Stránka účtu vo Vašom Ledgeri" }, "saveSeedConfirmation": { "didSaveSeed": "Zazálohovali ste si váš Seed?", - "alreadyHave": "Svoj Seed mám zálohovaný", - "reenterSeed": "V ďalšom kroku budete požiadaný o znovuvloženie vášho Seedu.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Ak ste si nezazálohovali váš Seed a vaše zariadenie bude poškodené, stratíte všetky vaše IOTY.", "pleaseConfirm": "Potvrďte, prosím, že máte váš Seed bezpečne uložený." }, @@ -572,15 +583,19 @@ "status": "Stav", "fingerprintUnavailable": "Biometrické overenie nie je k dispozícii", "fingerprintUnavailableExplanation": "Vaše zariadenie nepodporuje biometrické overenie alebo nebolo povolené v nastaveniach vášho zariadenia.", - "buttonInstructionsDisable": "Tlačidlom nižšie vypnete overovanie odtlačkom prsta.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Tlačidlom nižšie zapnete overovanie odtlačkom prsta.", - "buttonInstructionsDisableIPhoneX": "Stlačením tlačidla nižšie vypnete overenie pomocou rozpoznávania tváre.", - "buttonInstructionsEnableIPhoneX": "Stlačením tlačidla nižšie zapnete overenie pomocou rozpoznávania tváre.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Pre prihlásenie priložte prst na čítačku" }, "transferConfirmation": { "youAreAbout": "Chystáte se odoslať {{contents}} na adresu", - "aMessage": "správa" + "aMessage": "správa", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Neplatný kód", @@ -601,27 +616,29 @@ }, "seedVault": { "exportSeedVault": "Exportovať SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Uistite sa, že si zálohujete súbor na viacerých miestach (napríklad pevný disk, cloud, USB). Ak stratíte tento súbor a nebudete mať uložený Váš seed iným spôsobom, stratíte Vaše IOTA.", "exportFail": "Export SeedVault zlyhal", "exportFailExplanation": "Počas exportovania Vášho SeedVault nastal problém. Prosím, uistite sa, že máte povolenie na zápis súborov a dostatok miesta.", "exportSuccess": "SeedVault je exportovaný", "exportSuccessExplanation": "Váš kryptovaný seed súbor bol úspešne exportovaný.", - "unrecognisedKey": "Unrecognised SeedVault Key", - "unrecognisedKeyExplanation": "The key was not recognised. Please try again.", - "emptyKey": "No SeedVault Key entered", - "emptyKeyExplanation": "You must enter a key. Please try again.", + "unrecognisedKey": "Heslo súboru SeedVault nie je rozpoznané", + "unrecognisedKeyExplanation": "Nesprávne heslo, skúste to znova.", + "emptyKey": "Nebolo zadané žiadne heslo súboru SeedVault", + "emptyKeyExplanation": "Musíte zadať heslo. Skúste to znova.", "importSuccess": "Seed importovaný", "importSuccessExplanation": "Váš Seed bol úspešne importovaný.", "saveToDownloadFolder": "Uložiť do priečinku stiahnuté", "importSeedVault": "Importovať SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", - "enterKeyExplanation": "Enter your key to open the SeedVault", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", + "enterKeyExplanation": "Zadajte Vaše heslo k otvoreniu súboru SeedVault", "noSeedFound": "SeedVault neobsahuje platný seed", "noSeedFoundExplanation": "SeedVault je buď prázdny, alebo obsahuje seed v neplatnom formáte.", "seedFileError": "Otvorenie SeedVault zlyhalo", "seedFileErrorExplanation": "Počas otvárania SeedVault nastal problém. Ak Ste zvolili naozaj správny súbor, je možné, že je poškodený.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Príprava transakcie", "gettingTransactionsToApprove": "Získanie transakcií na schválenie", "proofOfWork": "Dokončenie proof of work", - "broadcasting": "Odosielanie transakcií do siete" + "broadcasting": "Odosielanie transakcií do siete", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Nie je možné dokončiť aktualizáciu údajov po Snapshote", @@ -681,10 +699,10 @@ "noUpdatesAvailableExplanation": "You have the latest version of Trinity Desktop.", "newVersionAvailable": "K dispozícií je nová verzia", "newVersionAvailableExplanation": "A new Trinity {{version}} version is available. Carefully read the release notes and verify the download source before updating:", - "installUpdate": "Install update and restart", - "installUpdateExplanation": "Download complete, Trinity will now restart to install the update.", + "installUpdate": "Nainštalujte aktualizáciu a reštartujte", + "installUpdateExplanation": "Stahovanie bolo dokončené, Trinity reštartuje a nainštaluje aktualizáciu.", "downloadingUpdate": "Sťahuje sa aktualizácia...", - "downloadProgress": "{{transferred}} of {{total}} downloaded" + "downloadProgress": "Stiahnuté {{transferred}} z {{total}}" }, "notificationLog": { "errorLog": "Zoznam chýb" @@ -692,76 +710,76 @@ "terms": { "termsAndConditions": "Podmienky používania", "accept": "Akceptujem", - "readAllToContinue": "Please read the full text" + "readAllToContinue": "Prečítajte si prosím celý text" }, "privacyPolicy": { "privacyPolicy": "Zásady ochrany osobných údajov", "agree": "Súhlasím" }, "tray": { - "trayApplication": "Tray application", - "trayExplanation": "Provides an overview of your account balances and recent transaction history.", - "notLoggedIn": "You are not logged in", + "trayApplication": "System Tray - Ikona v oznamovacej oblasti", + "trayExplanation": "Poskytuje prehľad o zostatku a nedávnej historii transakcii.", + "notLoggedIn": "Nie ste prihláseny(a)", "setupIncomplete": "Nastavenia nekompletné", "completeSetup": "Inštalácia kompletná" }, "proxy": { - "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxy": "Pomocou proxy serveru", + "proxyExplanation": "Rozpoznať a použiť systémové nastavenie proxy serveru. Po zmene tohoto nastavenia reštartujte peňaženku." }, "notifications": { "notifications": "Hlásenia", - "notificationExplanation": "Receive system-wide notifications about new transactions.", - "typeConfirmations": "Notify me about confirmations", - "typeMessages": "Notify me about zero value transactions", - "multipleTx": "Receiving multiple transactions to {{account}}", - "valueTx": "Receiving {{value}} to {{account}}", - "messageTx": "You received a message to {{account}}", - "confirmedIn": "Incoming {{value}} to {{account}} has confirmed", - "confirmedOut": "Outgoing {{value}} from {{account}} has confirmed" + "notificationExplanation": "Dostávať systémové upozornenia o nových transakciach.", + "typeConfirmations": "Informuj ma o potvrdení transakcie", + "typeMessages": "Informuj ma o nulových transakciach", + "multipleTx": "Príjímanie viacero transakcii na {{account}}", + "valueTx": "Prijímanie {{value}} na {{account}}", + "messageTx": "Dostali ste správu pre {{account}}", + "confirmedIn": "Bola potvrdená príchozia {{value}} pre {{account}}", + "confirmedOut": "Bola potvrdená odchádzajúca {{value}} pre {{account}}" }, "bytetrit": { - "sweepSucceeded": "Funds successfully unlocked", - "sweepSucceededExplanation": "Your funds have been successfully unlocked and moved to a new address. Promote the transactions to help them confirm.", - "sweepError": "Error unlocking funds", - "sweepErrorExplanation": "Something went wrong while unlocking your funds. Trying again.", - "warningTitle": "Warning: Locked funds detected", - "explanation": "Trinity Desktop version 0.3.4 contained a bug that can temporarily lock funds. This affects a small number of users that performed transactions with 0.3.4.", - "explanationAccounts": "Locked funds have been detected on your accounts: {{accounts}}. Trinity will now automatically recover your funds, by moving them to a new address.", - "proceed": "Proceed to Recovery", - "sweepConfirmation": "You are about to sweep {{amount}} to the address {{address}}. Account: {{accountName}}, address index: {{index}}", - "sweepConfirmationTitle": "Sweep confirmation" + "sweepSucceeded": "Vaše finančné prostriedky boli úspešne odblokované", + "sweepSucceededExplanation": "Vaše finančné prostriedky boli úspešne odblokované a prenesené na novú adresu. Podporujte transakcie, ktoré Vám pomôžu v procese potvrdzovania.", + "sweepError": "Chyba uvoľnenie finančných prostriedkov", + "sweepErrorExplanation": "Došlo ku chybe pri odblokovaní vašich finančných prostriedkov. Skúste to znova.", + "warningTitle": "Varovanie: Boli zistené blokované prostriedky", + "explanation": "Peňaženka Trinity Desktop 0.3.4 obsahovala chybu, ktorá by mohla dočasne zablokovať finančné prostriedky na účte. Tento problém ovplyvňuje malý počet užívateľov, ktorí uskutočnili transakcie s verziou 0.3.4.", + "explanationAccounts": "Na vašich účtoch boli zistené blokované prostriedky: {{accounts}}. Trinity teraz automaticky obnoví vaše prostriedky a prenesie ich na novú adresu.", + "proceed": "Prejsť na obnovenie", + "sweepConfirmation": "Chystáte sa preniesť {{amount}} na {{address}}. Účet: {{accountName}}, index adresy: {{index}}", + "sweepConfirmationTitle": "Potvrdenie prevodu" }, "ledger": { - "ready": "Ledger device connected and ready", - "notReady": "If you wish to use a Ledger device, connect and unlock it now", - "indexInUse": "Index already in use for account {{account}}", - "indexInUseExplanation": "Your chosen index is already in use on one of your accounts. Please choose another index number.", - "proceedWithLedger": "Proceed with Ledger setup", - "accountIndex": "Account index", - "accountPage": "Account page", - "chooseAccountIndex": "Choose your Ledger account index", - "accountIndexExplanation": "Your Ledger can store multiple seeds. Each seed is identified by a unique index number. An unused index has been pre-selected, but feel free to choose your own. Make sure you note down your chosen index number.", - "accountPageExplanation": "Some third party wallets require pages.", - "connectionError": "Cannot connect to Ledger", - "connectionErrorExplanation": "Check that your Ledger is connected and unlocked.", - "connectionTitle": "Connect your Ledger", - "connectionExplanation": "A Ledger device must be connected to perform this function.", - "transactionTitle": "Scroll through and approve the transaction on your Ledger", - "transactionExplanation": "Use your Ledger device to approve the outgoing transaction.", - "applicationTitle": "Open Ledger IOTA app", - "applicationExplanation": "Go to your Ledger and open the IOTA app to continue using Trinity.", - "cannotSendZeroValueTitle": "Cannot send zero value transfer", - "cannotSendZeroValueExplanation": "Cannot send zero value transfers with a Ledger device.", - "ledgerDisconnectedTitle": "Ledger device disconnected", - "ledgerDisconnectedExplanation": "The Ledger device was disconnected. Please reconnect and try again.", - "ledgerDeniedTitle": "Transaction denied", - "ledgerDeniedExplanation": "The transaction was denied on the Ledger device.", - "ledgerIncorrectIndex": "Ledger device mismatch", - "ledgerIncorrectIndexExplanation": "The connected Ledger device does not match the one linked to this account, or the recovery phrase has been changed.", - "checkAddress": "Check the receive address", - "checkAddressExplanation": "Check that the address matches the one displayed on your Ledger device.", - "applicationNotInitialised": "Warning unconfirmed", - "applicationNotInitialisedExplanation": "Reopen the IOTA app on your Ledger device, accept the informational warning and try again." + "ready": "Zariadenie Ledger je pripojené a pripravené k práci", + "notReady": "Ak si želáte použiť Ledger, tak ho pripojte a odomknite", + "indexInUse": "Tento index už používa účet {{account}}", + "indexInUseExplanation": "Váš zvolený index je už používaný na niektorom z Vašich účtov. Vyberte si iné číslo indexu.", + "proceedWithLedger": "Pokračovať v nastavovaní Ledgeru", + "accountIndex": "Index účtu", + "accountPage": "Stránka účtu", + "chooseAccountIndex": "Vyberte index účtu vo Vašom Ledgeri", + "accountIndexExplanation": "Vaše zariadenie Ledger môže ukladať viacero Seedov. Každý Seed je označený jedinečným indexovým číslom. Nepoužitý index bol dopredu vybraný, ale môžete si zvoliť vlastný. Presvedčte sa, že ste si zaznamenali zvolené číslo indexu.", + "accountPageExplanation": "Niektoré peňaženky tretích strán vyžadujú použitie \"stron\".", + "connectionError": "Nie je možné pripojiť sa k Vašemu Ledgeru", + "connectionErrorExplanation": "Skontrolujte, či je Váš Ledger pripojený a odomknutý.", + "connectionTitle": "Pripojte Váš Ledger", + "connectionExplanation": "K vykonaniu tejto funkcie musí byť pripojené zariadenie Ledger.", + "transactionTitle": "Prekontrolujte a potvrďte transakciu vo Vašom zariadení Ledger", + "transactionExplanation": "Potvrďte odchádzajúcu transakciu pomocou zariadenia Ledger.", + "applicationTitle": "Spustite aplikáciu IOTA na Vašom zariadení Ledger", + "applicationExplanation": "Aby ste mohli pokračovať v používaní Trinity, otvorte v zariadení Ledger aplikáciu IOTA.", + "cannotSendZeroValueTitle": "Transakcie s nulovou hodnotou nie je možné odoslať", + "cannotSendZeroValueExplanation": "Transakcie s nulovou hodnotou nie je možné pomocou zariadenia Ledger odoslať.", + "ledgerDisconnectedTitle": "Ledger je odpojený", + "ledgerDisconnectedExplanation": "Ledger bol odpojený. Pripojte ho a opakujte akciu.", + "ledgerDeniedTitle": "Transakcia bola odmietnutá", + "ledgerDeniedExplanation": "Transakcia bola zamietnutá na zariadení Ledger.", + "ledgerIncorrectIndex": "Nekompatibilné zariadenie Ledger", + "ledgerIncorrectIndexExplanation": "Pripojené zariadenie Ledger sa nezhoduje s tým ktoré je spárované s týmto účtom, alebo jeho heslo bolo zmenené.", + "checkAddress": "Skontrolujte adresu príjemcu", + "checkAddressExplanation": "Skontrolujte, či adresa odpovedá adrese zobrazenej na Vašom zariadení Ledger.", + "applicationNotInitialised": "Informačné upozornenie nebolo prijaté", + "applicationNotInitialisedExplanation": "Znovu otvorte aplikáciu IOTA na Vašom zariadení Ledger, prijmite informačné upozornenie a skúste to znova." } } \ No newline at end of file diff --git a/src/shared/locales/sl/translation.json b/src/shared/locales/sl/translation.json index 3d8c67c335..ed52c67ae3 100644 --- a/src/shared/locales/sl/translation.json +++ b/src/shared/locales/sl/translation.json @@ -74,6 +74,8 @@ "wallet": "Denarnica", "all": "All", "sent": "Poslano", + "youReceived": "You received", + "youSent": "You sent", "received": "Prejeto", "sending": "Pošiljanje", "receiving": "Prejemanje", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Vaše geslo mora biti vsaj {{minLength}} znakov dolgo. Vaše trenutno geslo je {{currentLength}} znakov dolgo. Prosimo poskusite ponovno.", "passwordMismatch": "Gesli se ne ujemata", "passwordMismatchExplanation": "Vnešeni gesli se ne ujemata. Prosimo, poskusite ponovno.", - "anEncryptedCopy": "Šifrirana kopija vaše generirane vrednosti bo shranjena v napravi. Uporabite geslo za dostop do vaše denarnice v prihodnosti.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Ponovno vnesite geslo" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Nalaganje generirane vrednosti prvič.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Nikoli z nikomer ne delite svojega seeda.", "iotaLogo": "IOTA logotip", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>You must save your seed with <1>at least one<2> of the options listed below." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "View seed", @@ -504,18 +512,21 @@ "currency": "Valuta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Are you sure you want to log out?" + "logoutConfirmation": "Are you sure you want to log out?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Skeniraj QR kodo" }, "unitInfoModal": { - "unitSystem": "UNIT SYSTEM", + "unitSystem": "Unit System", "trillion": "Trillion", "billion": "Miljarda", "million": "Million", "thousand": "Thousand", - "one": "One" + "one": "One", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "I have saved my seed", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "a message" + "aMessage": "a message", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Wrong code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "Tržna kapitalizacija", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/sr/translation.json b/src/shared/locales/sr/translation.json index f2be7e81d1..31e3199242 100644 --- a/src/shared/locales/sr/translation.json +++ b/src/shared/locales/sr/translation.json @@ -74,6 +74,8 @@ "wallet": "Novčanik", "all": "Sve", "sent": "Poslato", + "youReceived": "You received", + "youSent": "You sent", "received": "Primljeno", "sending": "Slanje", "receiving": "Prijem", @@ -128,7 +130,7 @@ "spentAddressExplanation": "UPOZORENJE: Sredstva na već korišćenim adresama", "discordInformation": "Slanje sa iste adrese više puta je rizično. Posetite kanal #help na paltformi Discord kako biste saznali šta možete da uradite.", "androidInsecureClipboardWarning": "Android ne obezbeđuje bezbedan klipbord.", - "androidCopyPasteWarning": "Nikada ne koristite opciju kopiraj/nalepi za seed na Android uređajima.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Neću korirati/nalepiti moj seed", "mustBeStoredAppropriately": "Mora se odgovarajuće čuvati.", "deviceMayBecomeUnresponsive": "Vaš uređaj na kratko može prestati da reaguje.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain greška", "errorAccessingKeychainExplanation": "Nije moguće pristupiti keychain-u za sigurno skladištenje.", "mainWallet": "GLAVNI RAČUN", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Vaša lozinka mora imati najmanje {{minLength}} karaktera. Trenutno ima {{currentLength}} karaktera. Pokušajte ponovo.", "passwordMismatch": "Lozinke se ne podudaraju", "passwordMismatchExplanation": "Lozinke koje ste uneli se ne podudaraju. Pokušajte ponovo.", - "anEncryptedCopy": "Šifrovana kopija vašeg seed-a će biti sačuvana na vašem uređaju. Koristićete ovu lozinku da biste pristupili novčaniku u budućnosti.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Ponovo ukucajte lozinku" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Prijavi se", "setNode": "Postavi node", "whyBiometricDisabled": "Zašto je biometrijska autentikacija onemogućena?", - "whyBiometricDisabledExplanation": "Biometrijska prijava je onemogućena pri prvom pokretanju aplikacije radi vaše sigurnosti. Kada koristite Trinity novčanik, bićete odjavljeni nakon određenog perioda neaktivnosti. Zatim se možete ponovo prijaviti koristeći biometrijsku autorizaciju." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Prvo učitavanje seed-a.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Nikada nikome ne otkrivajte svoj seed.", "iotaLogo": "IOTA logo", - "print": "ŠTAMPANJE", + "print": "Print", "paperConvenience": "Štampanje seed-a je pogodan način za čuvanje istog.", "publicInsecure": "Ali štampanje na javnoj wifi mreži ili javno dostupnom štampaču nije bezbedno.", - "tapCheckboxes": "Kliknite na polja u nastavku za potvrdu.", - "wifiCheckbox": "Neću odštampati seed na javno dostupnoj wifi mreži", - "printerCheckbox": "Neću odštampati seed na javnom štampaču" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Vaša adresa", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Zapišimo vaš seed", "youCanHighlightCharacters": "Možete označiti 9 znakova odjednom", "printBlankWallet": "Odštampajte prazni novčanik", - "whatIsChecksum": "Svaki seed ima odgovarajući kontrolni zbir od 3 znaka", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Sačuvao sam seed", "checksumExplanation": "Svaki put kada dodajete seed u novčanik, treba da se uverite da je kontrolni zbir koji novčanik generiše identičan onom koji ste zapisali.", "mustSaveYourSeed": "<0><0>Morate napraviti rezervnu kopiju seed-a pomoću <1>najmanje jedne<2> od opcija koje su navedene u nastavku." @@ -345,7 +351,8 @@ "totalTime": "Ukupno vreme", "addressPasteDetected": "Detektovano umetanje adrese", "addressPasteExplanation": "Izgleda da ste umetnuli adresu. Proverite da li adresa odgovara onoj na koju želite poslati sredstva.", - "invalid": "NEISPRAVNO" + "invalid": "NEISPRAVNO", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Dodajte naziv", @@ -446,7 +453,8 @@ "empty": "Prazno", "retrying": "Ponovni pokušaj u toku", "yesterday": "Juče", - "promotingAnotherBundle": "Promocija drugog paketa" + "promotingAnotherBundle": "Promocija drugog paketa", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Prikaži seed", @@ -504,18 +512,21 @@ "currency": "Valuta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Da li ste sigurni da se želite odjaviti?" + "logoutConfirmation": "Da li ste sigurni da se želite odjaviti?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Skeniraj QR kod" }, "unitInfoModal": { - "unitSystem": "SISTEM JEDINICA", + "unitSystem": "Unit System", "trillion": "Trilion", "billion": "Milijarda", "million": "Milion", "thousand": "Hiljada", - "one": "Jedna" + "one": "Jedna", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Zašto ne mogu potrošiti ceo iznos?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Da li ste napravili rezervnu kopiju seed-a?", - "alreadyHave": "Napravio sam rezervnu kopiju seed-a", - "reenterSeed": "U sledećem koraku ćete ponovo morati da unesete seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Ako niste napravili rezervnu kopiju seed-a, a vaš uređaj se pokvari, izgubićete sve IOTA tokene.", "pleaseConfirm": "Potvrdite da ste sigurno sačuvali svoj seed." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometrijska autorizacija nedostupna", "fingerprintUnavailableExplanation": "Vaš uređaj ne podržava biometrijsku autentikaciji ili nije konfigurisan u postavkama uređaja.", - "buttonInstructionsDisable": "Pritisnite dugme u nastavku da biste onemogućili autorizaciju pomoću otiska prsta.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Pritisnite dugme u nastavku da biste omogućii autentikaciji pomoću otiska prsta.", - "buttonInstructionsDisableIPhoneX": "Pritisnite dugme u nastavku da biste onemogućili Face ID.", - "buttonInstructionsEnableIPhoneX": "Pritisnite dugme u nastavku da biste omogućili Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Dodirnite čitač otisaka prstiju za prijavu" }, "transferConfirmation": { "youAreAbout": "Poslaćete {{contents}} na adresu", - "aMessage": "poruka" + "aMessage": "poruka", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Pogrešan kod", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Izvezi SeedVault", - "seedVaultExplanation": "SeedVault je kodirana datoteka namenjena sigurnom skladištenju vašeg seed-a. Seed je kodiran i SeedVault ključem, te mu se ne može pristupiti bez lozinke.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Uverite se da ste napravili rezervne kopije datoteka na više lokacija (npr. hard disk, cloud, USB). Ako izgubite ovu datoteke a niste sačuvali svoj seed na drugom mestu, izgubićete svoje IOTA tokene.", "exportFail": "Izvoz SeedVault-a neuspešan", "exportFailExplanation": "Došlo je do greške prilikom izvoza SeedVault-a. Proverite da li imate sva potrebne dozvole i dovoljno slobodnog prostora.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Seed je uspešno uvezen.", "saveToDownloadFolder": "Sačuvaj u Download fascikli", "importSeedVault": "Uvezi SeedVault", - "dropSeedVaultHere": "Ovde ispustite SeedVault <1> ili kliknite da biste ga potražili na računaru", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Unesite SeedVault lozinku kako biste ga otvorili", "noSeedFound": "SeedVault ne sadrži ispravni seed", "noSeedFoundExplanation": "SeedVault je prazan ili sadrži seed u neispravnom formatu.", "seedFileError": "Neuspešno otvaranje SeedVault-a", "seedFileErrorExplanation": "Došlo je do greške prilikom otvaranja SeedVault-a. Ako ste odabrali ispravnu datoteku moguće je da je oštećena.", - "seedVaultKeyExplanation": "Prvo treba da osiguramo vaš SeedVault. Odaberite lozinku za enkripciju vaše SeedVault datoteke. Ova lozinka će biti potrebna za povraćaj rezervne kopije vašeg seed-a koja se nalazi u SeedVault-u. Možete koristiti istu lozinku koju koristite za pristup Trinity novčaniku." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Priprema transakcija", "gettingTransactionsToApprove": "Rad na odobrenju transakcije", "proofOfWork": "Završetak PoW-a", - "broadcasting": "Emitovanje" + "broadcasting": "Emitovanje", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Nije moguće izvršiti snapshot tranziciju", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Obaveštenja", diff --git a/src/shared/locales/sv-SE/translation.json b/src/shared/locales/sv-SE/translation.json index e69c07b33a..2c0316a3f4 100644 --- a/src/shared/locales/sv-SE/translation.json +++ b/src/shared/locales/sv-SE/translation.json @@ -74,6 +74,8 @@ "wallet": "Plånbok", "all": "Allt", "sent": "Skickat", + "youReceived": "You received", + "youSent": "You sent", "received": "Mottaget", "sending": "Skickar", "receiving": "Tar emot", @@ -128,7 +130,7 @@ "spentAddressExplanation": "VARNING: Tillgångar på förbrukade adresser", "discordInformation": "Det är farligt att skicka från samma adress mer än en gång. Vänligen bege dig till #help på Discord för att ta reda på vad du kan göra.", "androidInsecureClipboardWarning": "Android tillhandahåller inte säkert urklipp.", - "androidCopyPasteWarning": "Kopiera/klistra aldrig din seed på en Android-enhet.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Jag kommer inte kopiera/klistra min seed", "mustBeStoredAppropriately": "Den måste lagras på lämpligt sätt.", "deviceMayBecomeUnresponsive": "Din enhet kan sluta reagera ett tag.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Nyckelringsfel", "errorAccessingKeychainExplanation": "Kan inte komma åt nyckelringen som krävs för säker lagring.", "mainWallet": "HUVUDKONTO", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "En ny uppdatering finns tillgänglig", "shouldUpdateExplanation": "En ny uppdatering har släppts. Det rekommenderas att du uppdaterar till den senaste versionen.", "forceUpdate": "Uppdatera appen att fortsätta", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Ditt lösenord måste vara minst {{minLength}} tecken. Det är för närvarande {{currentLength}} tecken långt. Vänligen försök igen.", "passwordMismatch": "Lösenorden matchar inte", "passwordMismatchExplanation": "De lösenord du har angett stämmer inte överens. Vänligen försök igen.", - "anEncryptedCopy": "En krypterad version av din seed kommer sparas på din enhet. Detta lösenord kommer att användas för att få tillgång till din plånbok i framtiden.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Skriv lösenordet igen" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Logga in", "setNode": "Ställ in nod", "whyBiometricDisabled": "Varför är biometrisk autentisering avaktiverad?", - "whyBiometricDisabledExplanation": "Biometrisk autentisering är avaktiverad vid första inloggning för din säkerhet. När du använder Trinity, så blir du utloggad vid inaktivitet. Du kan sedan logga in igen med biometrisk autentisering." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Laddar din adress för första gången.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Dela aldrig din seed med någon.", "iotaLogo": "IOTA logotyp", - "print": "SKRIV UT", + "print": "Print", "paperConvenience": "Att skriva ut en papperskopia av din seed är ett lämpligt sätt att lagra den.", "publicInsecure": "Men utskrifter på öppet wifi eller en offentlig skrivare är osäkert.", - "tapCheckboxes": "Vänligen tryck på kryssrutorna nedan för att bekräfta.", - "wifiCheckbox": "Jag kommer inte att skriva ut på ett öppet wifi", - "printerCheckbox": "Jag kommer inte att skriva ut på en offentlig skrivare" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Din adress", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Skriv ner din seed", "youCanHighlightCharacters": "Du kan markera 9 tecken i taget", "printBlankWallet": "Skriv ut en tom plånbok", - "whatIsChecksum": "Varje seed har en tillhörande 3-tecken kontrollsumma", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Jag har sparat min seed", "checksumExplanation": "När du lägger till en seed i din plånbok, bör du kontrollera att den plånboksgenererade kontrollsumman matchar den du har skrivit ned.", "mustSaveYourSeed": "<0><0>Du måste spara din seed med<1>minst ett<2> av alternativen listade nedan." @@ -345,7 +351,8 @@ "totalTime": "Total tid", "addressPasteDetected": "Kopierad adress upptäckt", "addressPasteExplanation": "Det ser ut som att du har klistrat in en adress. Kontrollera att den inklistrade adressen matchar den som du vill skicka till.", - "invalid": "OGILTIG" + "invalid": "OGILTIG", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Låt oss lägga till ett namn", @@ -446,7 +453,8 @@ "empty": "Tomt", "retrying": "Försöker igen", "yesterday": "Igår", - "promotingAnotherBundle": "Främjar en annan transaktionsbunt" + "promotingAnotherBundle": "Främjar en annan transaktionsbunt", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Visa seed", @@ -504,18 +512,21 @@ "currency": "Valuta" }, "logoutConfirmationModal": { - "logoutConfirmation": "Är du säker på att du vill logga ut?" + "logoutConfirmation": "Är du säker på att du vill logga ut?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Skanna din QR-kod" }, "unitInfoModal": { - "unitSystem": "ENHETSSYSTEM", + "unitSystem": "Unit System", "trillion": "Biljon", "billion": "Miljard", "million": "Miljon", "thousand": "Tusen", - "one": "Ett" + "one": "Ett", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Varför kan jag inte spendera hela mitt saldo?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Sparade du din seed?", - "alreadyHave": "Jag har sparat min seed", - "reenterSeed": "Vid nästa steg kommer du bli ombedd att skriva in din seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "Om du inte har sparat din seed och din enhet kraschar, kommer du förlora all din IOTA.", "pleaseConfirm": "Vänligen bekräfta att du har säkert lagrat din seed." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometrisk autentisering otillgänglig", "fingerprintUnavailableExplanation": "Din enhet stödjer ej biometrisk autentisering eller så har det ej konfigurerats i enhetens inställningar.", - "buttonInstructionsDisable": "Tryck på knappen nedan för att avaktivera fingeravtrycksautentisering.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Tryck på knappen nedan för att aktivera fingeravtrycksautentisering.", - "buttonInstructionsDisableIPhoneX": "Tryck på knappen nedan för att avaktivera Face ID.", - "buttonInstructionsEnableIPhoneX": "Tryck på knappen nedan för att aktivera Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Lägg fingret på fingeravtrycksläsaren för att logga in" }, "transferConfirmation": { "youAreAbout": "Du kommer att skicka {{contents}} till adressen", - "aMessage": "ett meddelande" + "aMessage": "ett meddelande", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Fel kod", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Exportera SeedVault", - "seedVaultExplanation": "En SeedVault är en krypterad fil för att lagra din seed på ett säkert sätt. Din seed är krypterad bakom ett SeedVault-lösenord och kan inte nås utan lösenordet.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Kontrollera att du säkerhetskopierar filen på flera platser (t.ex. hårddisk, molnet, USB). Om du förlorar denna fil och inte har lagrat din seed på annat håll, kommer du att förlora dina IOTA.", "exportFail": "SeedVault export misslyckades", "exportFailExplanation": "Ett problem uppstod vid export av SeedVault. Vänligen se till att du har rätt behörigheter och tillräckligt med ledigt utrymme.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Din seed importerades framgångsrikt.", "saveToDownloadFolder": "Spara till Hämtade Filer", "importSeedVault": "Importera SeedVault", - "dropSeedVaultHere": "Släpp SeedVault här <1> eller klicka för att bläddra", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Ange ditt lösenord för att öppna SeedVault", "noSeedFound": "SeedVault innehåller inte en giltig seed", "noSeedFoundExplanation": "Din SeedVault är antingen tom eller innehåller en seed i ett ogiltigt format.", "seedFileError": "Det gick inte att öppna din SeedVault", "seedFileErrorExplanation": "Ett problem uppstod vid öppning av SeedVault. Om du har valt den korrekta filen kan den vara skadad.", - "seedVaultKeyExplanation": "Först måste vi säkra din SeedVault. Vänligen välj ett lösenord för att kryptera filen. Du behöver detta lösenord för att återställa din seed från din sparade SeedVault. Du kan använda samma lösenord som du använder för Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Förbereder överföringar", "gettingTransactionsToApprove": "Godkänner transaktioner", "proofOfWork": "Utför bevis på arbete", - "broadcasting": "Sändning pågår" + "broadcasting": "Sändning pågår", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Kan inte slutföra snapshot-övergången", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Använd system-proxy", - "proxyExplanation": "Upptäcka och använda systembrett nätverksproxyinställningar. Starta om plånboken efter ändring av den här inställningen." + "proxyExplanation": "Upptäcka och använda systembrett nätverksproxyinställningar. Stäng och återöppna plånboken efter ändring av den här inställningen." }, "notifications": { "notifications": "Aviseringar", diff --git a/src/shared/locales/ta/translation.json b/src/shared/locales/ta/translation.json index 5a4ffbb95f..b0f756e7a5 100644 --- a/src/shared/locales/ta/translation.json +++ b/src/shared/locales/ta/translation.json @@ -74,6 +74,8 @@ "wallet": "Wallet", "all": "All", "sent": "Sent", + "youReceived": "You received", + "youSent": "You sent", "received": "Received", "sending": "Sending", "receiving": "Receiving", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Your password must be at least {{minLength}} characters. It is currently {{currentLength}} characters long. Please try again.", "passwordMismatch": "Passwords do not match", "passwordMismatchExplanation": "The passwords you have entered do not match. Please try again.", - "anEncryptedCopy": "An encrypted copy of your seed will be stored on your device. You will use this password to access your wallet in future.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Retype Password" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Loading seed for the first time.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Never share your seed with anyone.", "iotaLogo": "IOTA logo", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>You must back up your seed with <1>at least one<2> of the options listed below." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "View seed", @@ -504,18 +512,21 @@ "currency": "Currency" }, "logoutConfirmationModal": { - "logoutConfirmation": "Are you sure you want to log out?" + "logoutConfirmation": "Are you sure you want to log out?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Scan your QR code" }, "unitInfoModal": { - "unitSystem": "UNIT SYSTEM", + "unitSystem": "Unit System", "trillion": "Trillion", "billion": "Billion", "million": "Million", "thousand": "Thousand", - "one": "One" + "one": "One", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "I have backed up my seed", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "a message" + "aMessage": "a message", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Wrong code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/th/translation.json b/src/shared/locales/th/translation.json index 3cb9f8aa67..75a1b02339 100644 --- a/src/shared/locales/th/translation.json +++ b/src/shared/locales/th/translation.json @@ -74,6 +74,8 @@ "wallet": "กระเป๋าสตางค์", "all": "All", "sent": "ส่ง", + "youReceived": "You received", + "youSent": "You sent", "received": "ได้​รับ​แล้ว", "sending": "กำลังส่ง", "receiving": "กำลังรับ", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "รหัสผ่านของคุณจะต้องมีอย่างต่ำ {{minLength}} หลัก ขณะนี้รหัสผ่านปัจจุบันของคุณมี {{currentLength}} หลัก กรุณาลองใหม่อีกครั้ง", "passwordMismatch": "รหัสผ่านไม่ตรงกัน", "passwordMismatchExplanation": "รหัสผ่าน​ที่​ใส่​ไม่​ตรง​กัน กรุณา​ลอง​อีก​ครั้ง.", - "anEncryptedCopy": "An encrypted copy of your seed will be stored on your device. You will use this password to access your wallet in future.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "ใส่รหัสผ่านอีกครั้ง" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "โหลด Seed (เลขที่บัญชี) ครั้งแรก", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "ไม่เปิดเผย Seed (เลขที่บัญชี) ของคุณให้แก่บุคคลอื่น", "iotaLogo": "IOTA logo", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>คุณต้องบันทึก Seed (เลขที่บัญชี) ด้วย<1>อย่างน้อยหนึ่ง <2>จากตัวเลือกด้านล่างนี้ " @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "View seed", @@ -504,18 +512,21 @@ "currency": "สกุลเงิน" }, "logoutConfirmationModal": { - "logoutConfirmation": "คุณแน่ใจหรือว่าต้องการออกจากระบบ" + "logoutConfirmation": "คุณแน่ใจหรือว่าต้องการออกจากระบบ", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "สแกนรหัส QR" }, "unitInfoModal": { - "unitSystem": "ระบบหน่วย", + "unitSystem": "Unit System", "trillion": "ล้านล้าน", "billion": "พันล้าน", "million": "ล้าน", "thousand": "พัน", - "one": "หนึ่ง" + "one": "หนึ่ง", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "I have saved my seed", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "สถานะ", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "a message" + "aMessage": "a message", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Wrong code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "ไม่สามารถทำรายการ Snapshot", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/tr/translation.json b/src/shared/locales/tr/translation.json index 4f55940aef..2f32db2030 100644 --- a/src/shared/locales/tr/translation.json +++ b/src/shared/locales/tr/translation.json @@ -74,6 +74,8 @@ "wallet": "Cüzdan", "all": "Tümü", "sent": "Gönderildi", + "youReceived": "You received", + "youSent": "You sent", "received": "Alındı", "sending": "Gönderiliyor", "receiving": "Alınıyor", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Aynı adresten birden çok kez göndermek tehlikeli olabilir. Ne yapabileceğinizi öğrenmek için lütfen Discord'daki #help kanalına gidin.", "androidInsecureClipboardWarning": "Android güvenli bir pano sunmuyor.", - "androidCopyPasteWarning": "Seed'inizi asla Android bir cihazda kopyalamayın/yapıştırmayın.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "Uygun şekilde saklanmalıdır.", "deviceMayBecomeUnresponsive": "Cihazınız bir süreliğine yanıt vermeyebilir.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Tohumlar {{minLength}} karakter uzunluğunda olmalıdır. Tohumunuz şu anda {{currentLength}} karakter uzunluktadır. Lütfen yeniden deneyin.", "passwordMismatch": "Parolalar eşleşmiyor", "passwordMismatchExplanation": "Girdiğiniz parolalar eşleşmiyor. Lütfen tekrar girin.", - "anEncryptedCopy": "Senin tohum şifrelenmiş bir kopyasını cihazınızda saklanacaktır. Cüzdanını gelecekte erişmek için bu parolayı kullanır.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Şifrenizi tekrar girin" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Cüzdan şifresi ilk kez yükleniyor.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Cüzdan şifrenizi sakın kimseyle paylaşmayın.", "iotaLogo": "IOTA logosu", - "print": "YAZDIR", + "print": "Print", "paperConvenience": "Oluşumunuzun bir kopyasını yazdırmak onu saklamak için etkili bir yöntemdir.", "publicInsecure": "Fakat halka açık bir Wi-fi'da veya halka açık bir yazıcıyla yazdırmak güvenli değildir.", - "tapCheckboxes": "Doğrulamak için lütfen aşağıdaki kutulara tıklayın.", - "wifiCheckbox": "Halka açık bir Wi-fi'da yazdırmayacağım", - "printerCheckbox": "Halka açık bir yazıcıda yazdırmayacağım" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>You must save your seed with <1>at least one<2> of the options listed below." @@ -345,7 +351,8 @@ "totalTime": "Toplam zaman", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Kaynağı görüntüle", @@ -504,18 +512,21 @@ "currency": "Kur" }, "logoutConfirmationModal": { - "logoutConfirmation": "Çıkmak istediğine emin misin?" + "logoutConfirmation": "Çıkmak istediğine emin misin?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "QR Kodunuzu Tarayın" }, "unitInfoModal": { - "unitSystem": "BİRİM SİSTEMİ", + "unitSystem": "Unit System", "trillion": "Trilyon", "billion": "Milyar", "million": "Milyon", "thousand": "Bin", - "one": "Bir" + "one": "Bir", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Neden varlıklarımın hepsini harcayamıyorum?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "Seed'imi kaydettim", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Durum", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Parmak izi doğrulamayı devre dışı bırakmak için aşağıdaki tuşa basın.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Parmak izi doğrulamayı aktifleştirmek için aşağıdaki tuşa basın.", - "buttonInstructionsDisableIPhoneX": "Face ID'yi devre dışış bırakmak için aşağıdaki tuşa basın.", - "buttonInstructionsEnableIPhoneX": "Face ID'yi aktifleştirmek için aşağıdaki tuşa basın.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Giriş yapmak için parmak izi okuyucusuna dokunun" }, "transferConfirmation": { "youAreAbout": "Adrese {{contents}} göndermek üzeresiniz", - "aMessage": "mesaj" + "aMessage": "mesaj", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Kod yanlış", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Transferler hazırlanıyor", "gettingTransactionsToApprove": "Onaylamak için işlemler alınıyor", "proofOfWork": "İşin kanıtı tamamlanıyor", - "broadcasting": "Yayınlanıyor" + "broadcasting": "Yayınlanıyor", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Anlık görüntü geçişi tamamlanamıyor", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/ur/translation.json b/src/shared/locales/ur/translation.json index 5f3dc5cb10..97c3357c1b 100644 --- a/src/shared/locales/ur/translation.json +++ b/src/shared/locales/ur/translation.json @@ -74,6 +74,8 @@ "wallet": "Wallet", "all": "All", "sent": "Sent", + "youReceived": "You received", + "youSent": "You sent", "received": "Received", "sending": "بھیج رہا ہے", "receiving": "Receiving", @@ -128,7 +130,7 @@ "spentAddressExplanation": "WARNING: Funds on spent addresses", "discordInformation": "Sending from the same address more than once is dangerous. Please head to the #help channel on Discord to find out what you can do.", "androidInsecureClipboardWarning": "Android does not provide a secure clipboard.", - "androidCopyPasteWarning": "Never copy/paste your seed on an Android device.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "I will not copy/paste my seed", "mustBeStoredAppropriately": "It must be stored appropriately.", "deviceMayBecomeUnresponsive": "Your device may become unresponsive for a while.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Your password must be at least {{minLength}} characters. It is currently {{currentLength}} characters long. Please try again.", "passwordMismatch": "Passwords do not match", "passwordMismatchExplanation": "The passwords you have entered do not match. Please try again.", - "anEncryptedCopy": "An encrypted copy of your seed will be stored on your device. You will use this password to access your wallet in future.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Retype Password" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Log In", "setNode": "Set Node", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Loading seed for the first time.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Never share your seed with anyone.", "iotaLogo": "IOTA logo", - "print": "PRINT", + "print": "Print", "paperConvenience": "Printing a paper copy of your seed is a convenient way to store it.", "publicInsecure": "But printing on public wifi or a public printer is insecure.", - "tapCheckboxes": "Please tap the checkboxes below to confirm.", - "wifiCheckbox": "I will not print on public wifi", - "printerCheckbox": "I will not print on a public printer" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "You can highlight 9 characters at a time", "printBlankWallet": "Print a blank wallet", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "I've saved my seed", "checksumExplanation": "Whenever you add a seed to your wallet, you should ensure that the wallet-generated checksum matches the one you have written down.", "mustSaveYourSeed": "<0><0>You must save your seed with <1>at least one<2> of the options listed below." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "View seed", @@ -504,18 +512,21 @@ "currency": "Currency" }, "logoutConfirmationModal": { - "logoutConfirmation": "Are you sure you want to log out?" + "logoutConfirmation": "Are you sure you want to log out?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Scan your QR code" }, "unitInfoModal": { - "unitSystem": "UNIT SYSTEM", + "unitSystem": "Unit System", "trillion": "Trillion", "billion": "Billion", "million": "Million", "thousand": "Thousand", - "one": "One" + "one": "One", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "I have saved my seed", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Status", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Press the button below to enable fingerprint authentication.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Touch fingerprint reader to log in" }, "transferConfirmation": { "youAreAbout": "You are about to send {{contents}} to the address", - "aMessage": "a message" + "aMessage": "a message", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Wrong code", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Preparing transfers", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Completing proof of work", - "broadcasting": "Broadcasting" + "broadcasting": "Broadcasting", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/vi/translation.json b/src/shared/locales/vi/translation.json index 29b050e594..312a057aac 100644 --- a/src/shared/locales/vi/translation.json +++ b/src/shared/locales/vi/translation.json @@ -74,6 +74,8 @@ "wallet": "Ví Điện Tử", "all": "All", "sent": "Đã Gửi", + "youReceived": "You received", + "youSent": "You sent", "received": "Đã Nhận", "sending": "Đang Gửi", "receiving": "Đang Nhận", @@ -128,7 +130,7 @@ "spentAddressExplanation": "Cảnh báo: Còn dư quỹ trên một số địa chỉ đã dùng để gửi IOTA", "discordInformation": "Gửi IOTA đi nhiều lần từ cùng một địa chỉ là một hành động nguy hiểm. Vui lòng xem kênh #help trên Discord để tìm hiểu xem bạn nên làm gì.", "androidInsecureClipboardWarning": "Tính năng sao chép của Android không an toàn.", - "androidCopyPasteWarning": "Không bao giờ được sao chép/dán chuỗi mật mã của bạn khi sử dụng thiết bị Android.", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "Tôi sẽ không chép/dán từ khoá", "mustBeStoredAppropriately": "Nó phải được lưu giữ thích đáng.", "deviceMayBecomeUnresponsive": "Thiết bị của bạn có thể ngưng phản hồi trong một thời gian.", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "Mật khẩu của bạn phải có ít nhất {{minLength}} ký tự. Mật khẩu hiện tại có {{currentLength}} ký tự. Xin vui lòng thử lại.", "passwordMismatch": "Mật khẩu không trùng khớp", "passwordMismatchExplanation": "Mật khẩu vừa nhập không trùng khớp. Xin vui lòng thử lại.", - "anEncryptedCopy": "Một bản sao mã hoá của từ khoá sẽ được lưu trên máy của bạn. Bạn sẽ phải xài mật khẩu này để truy cập ví điện tử của mình.", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "Nhập Lại Mật Khẩu" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "Đăng Nhập", "setNode": "Chọn Nút Mạng", "whyBiometricDisabled": "Why is biometric authentication disabled?", - "whyBiometricDisabledExplanation": "Biometric login is disabled on first app load for your security. When using Trinity, you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "Đang tải từ khoá lần đầu tiên.", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "Đừng bao giờ chia sẻ từ khoá với bất cứ ai.", "iotaLogo": "IOTA logo", - "print": "IN", + "print": "Print", "paperConvenience": "In chuỗi mật mã của bạn ra giấy là một cách thuận tiện để lưu trữ nó.", "publicInsecure": "Nhưng in bằng mạng Wifi công cộng hoặc bằng máy in công cộng là không an toàn.", - "tapCheckboxes": "Vui lòng bấm vào những hộp đánh dấu ở dưới để xác nhận.", - "wifiCheckbox": "Tôi sẽ không in trên wifi công cộng", - "printerCheckbox": "Tôi sẽ không in trên máy in công cộng" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "Your address", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "Let's write down your seed", "youCanHighlightCharacters": "Bạn có thể đánh dấu 9 ký tự trong một lần", "printBlankWallet": "In một ví trống", - "whatIsChecksum": "Every seed has a corresponding 3-character checksum", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "Tôi đã lưu từ khóa", "checksumExplanation": "Khi bạn cho từ khoá vào ví, bạn nên chắc chắn rằng mã kiểm tra của ví trùng khớp với mã bạn đã ghi xuống.", "mustSaveYourSeed": "<0><0>Bạn phải lưu từ khoá với <1>ít nhất một<2>trong những sự lựa chọn dưới đây." @@ -345,7 +351,8 @@ "totalTime": "Total time", "addressPasteDetected": "Address paste detected", "addressPasteExplanation": "It looks like you have pasted an address. Make sure that the address matches the one you want to send to.", - "invalid": "INVALID" + "invalid": "INVALID", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "Let's add a name", @@ -446,7 +453,8 @@ "empty": "Empty", "retrying": "Retrying", "yesterday": "Yesterday", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "Xem từ khoá", @@ -504,18 +512,21 @@ "currency": "Tiền Tệ" }, "logoutConfirmationModal": { - "logoutConfirmation": "Bạn có muốn đăng xuất không?" + "logoutConfirmation": "Bạn có muốn đăng xuất không?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "Quét mã QR" }, "unitInfoModal": { - "unitSystem": "HỆ THỐNG ĐƠN VỊ", + "unitSystem": "Unit System", "trillion": "Nghìn Tỷ", "billion": "Tỷ", "million": "Triệu", "thousand": "Nghìn", - "one": "Một" + "one": "Một", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Why can't I spend my full balance?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Did you back up your seed?", - "alreadyHave": "Tôi đã lưu từ khóa", - "reenterSeed": "At the next step you will be asked to re-enter your seed.", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "If you have not backed up your seed and your device fails, you will lose all of your IOTA.", "pleaseConfirm": "Please confirm you have securely stored your seed." }, @@ -572,15 +583,19 @@ "status": "Tình Trạng", "fingerprintUnavailable": "Biometric authentication unavailable", "fingerprintUnavailableExplanation": "Your device does not support biometric authentication or it has not been configured in the device settings.", - "buttonInstructionsDisable": "Nhấn vào nút dưới đây để vô hiệu hóa xác thực vân tay.", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "Nhấn vào nút dưới đây để kích hoạt xác thực vân tay.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID.", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID.", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "Chạm đầu đọc vân tay để đăng nhập" }, "transferConfirmation": { "youAreAbout": "Bạn chuẩn bị gửi {{contents}} đến địa chỉ", - "aMessage": "tin nhắn" + "aMessage": "tin nhắn", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "Sai mã 2FA", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Export SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "Make sure you back up the file in multiple locations (e.g. hard drive, cloud, USB). If you lose this file and have not stored your seed elsewhere, you will lose your IOTA.", "exportFail": "SeedVault export failed", "exportFailExplanation": "There was an problem exporting the SeedVault. Please ensure you have the appropriate permissions and enough free space.", @@ -615,13 +630,15 @@ "importSuccessExplanation": "Your seed was imported successfully.", "saveToDownloadFolder": "Save to Download Folder", "importSeedVault": "Import SeedVault", - "dropSeedVaultHere": "Drop SeedVault here <1> or click to browse", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault does not contain a valid seed", "noSeedFoundExplanation": "The SeedVault is either empty or contains a seed in an invalid format.", "seedFileError": "Failed to open SeedVault", "seedFileErrorExplanation": "There was a problem opening the SeedVault. If you selected the correct file then it may be corrupted.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "MCAP", @@ -655,7 +672,8 @@ "preparingTransfers": "Chuẩn bị chuyển khoản", "gettingTransactionsToApprove": "Getting transactions to approve", "proofOfWork": "Đang hoàn thành proof of work", - "broadcasting": "Đang phát sóng" + "broadcasting": "Đang phát sóng", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "Cannot complete snapshot transition", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "Notifications", diff --git a/src/shared/locales/zh-CN/translation.json b/src/shared/locales/zh-CN/translation.json index 5d673f0f94..6989fd4f7e 100644 --- a/src/shared/locales/zh-CN/translation.json +++ b/src/shared/locales/zh-CN/translation.json @@ -74,6 +74,8 @@ "wallet": "钱包", "all": "全部", "sent": "已发送", + "youReceived": "You received", + "youSent": "You sent", "received": "已收到", "sending": "发送", "receiving": "接收", @@ -128,7 +130,7 @@ "spentAddressExplanation": "警告:资金位于已用地址上。", "discordInformation": "从同一地址多次发送是危险的。请到Discord的 #help 频道寻找帮助。", "androidInsecureClipboardWarning": "安卓系统不能提供安全的剪贴板。", - "androidCopyPasteWarning": "切勿在安卓设备上复制/粘贴您的种子。", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "我不会复制/粘贴我的种子。", "mustBeStoredAppropriately": "必须恰当地存储种子。", "deviceMayBecomeUnresponsive": "您的设备可能会在一段时间内失去响应。", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "Keychain error", "errorAccessingKeychainExplanation": "Cannot access keychain required for secure storage.", "mainWallet": "MAIN ACCOUNT", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "您的密码长度必须为至少{{minLength}}个字符 。当前为{{currentLength}}个字符,请重试。", "passwordMismatch": "密码不相符", "passwordMismatchExplanation": "您输入的密码不匹配,请再试一次。", - "anEncryptedCopy": "种子的加密副本将存储在您的设备上。将来您将使用此密码访问钱包。", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "请重新输入密码" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "登录", "setNode": "设置节点", "whyBiometricDisabled": "为什么生物识别认证被停用?", - "whyBiometricDisabledExplanation": "出于安全考虑,生物识别认证在应用第一次加载时停用。在使用 Trinity 时,在一定的时间内没有动作的话会将您登出。再次登录时可以使用生物识别认证。" + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "首次读取种子", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "永远不要与任何人分享您的种子。", "iotaLogo": "IOTA标志", - "print": "打印", + "print": "Print", "paperConvenience": "为您的种子打印一份纸质副本是一种方便的存储方式。", "publicInsecure": "但是在公共Wifi或者公共打印机上打印是不安全的。", - "tapCheckboxes": "请点击下面的复选框确认。", - "wifiCheckbox": "我不会在公共WIFI下打印", - "printerCheckbox": "我不会在公共打印机上打印" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "您的地址", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "让我们写下您的种子", "youCanHighlightCharacters": "您可以一次突出显示9个字符", "printBlankWallet": "打印空白钱包", - "whatIsChecksum": "每个种子都有相应的3字符校验和", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "我已经保存好了种子", "checksumExplanation": "每当您向钱包添加种子时,您应确保钱包生成的校验和与您写下来的校验和相匹配。", "mustSaveYourSeed": "<0><0>您必须使用下列选项中的 <1>其中一项<2> 来备份您的种子。" @@ -345,7 +351,8 @@ "totalTime": "总计用时", "addressPasteDetected": "检测到地址粘贴", "addressPasteExplanation": "看起来你已经粘贴了地址。请确保该地址与您想要发送的地址是一致的。", - "invalid": "无效" + "invalid": "无效", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "让我们加上一个名字", @@ -446,7 +453,8 @@ "empty": "清空", "retrying": "重试中", "yesterday": "昨天", - "promotingAnotherBundle": "Promoting another bundle" + "promotingAnotherBundle": "Promoting another bundle", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "查看种子", @@ -504,18 +512,21 @@ "currency": "货币" }, "logoutConfirmationModal": { - "logoutConfirmation": "您确定要登出吗?" + "logoutConfirmation": "您确定要登出吗?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "扫描您的二维码" }, "unitInfoModal": { - "unitSystem": "单位系统", + "unitSystem": "Unit System", "trillion": "万亿", "billion": "十亿", "million": "百万", "thousand": "千", - "one": "一" + "one": "一", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "为什么我不能支出全部余额?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "您备份过种子了吗?", - "alreadyHave": "我已经保存了我的种子", - "reenterSeed": "下一步将要求您重新输入您的种子。", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "如果您没有备份种子,当设备损坏无法使用时,您就会失去您的IOTA。", "pleaseConfirm": "请确认您已安全地储存了您的种子。" }, @@ -572,15 +583,19 @@ "status": "状态", "fingerprintUnavailable": "生物识别认证不可用", "fingerprintUnavailableExplanation": "您的设备不支持生物识别认证或者尚未在设备设置中对此功能进行配置。", - "buttonInstructionsDisable": "点击下面的按钮禁用指纹身份验证。", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "按下方按钮启用指纹认证。", - "buttonInstructionsDisableIPhoneX": "按下方按钮禁用Face ID。", - "buttonInstructionsEnableIPhoneX": "按下方按钮启用Face ID。", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "触摸指纹读取器登录" }, "transferConfirmation": { "youAreAbout": "您将发送 {{内容}} 到地址", - "aMessage": "一条消息" + "aMessage": "一条消息", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "验证码错误", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "导出SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for storing your seed securely. The seed is encrypted behind a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "请确保您在多个位置备份了该文件(例如硬盘、云端、USB)。如果您遗失了该文件并且没有在其他地方储存您的种子,那么您将失去您的IOTA。", "exportFail": "SeedVault 导出失败", "exportFailExplanation": "导出 SeedVault 时出现问题。请确保您拥有适当的权限和足够的可用空间。", @@ -615,13 +630,15 @@ "importSuccessExplanation": "您的种子已成功导入。", "saveToDownloadFolder": "保存到下载文件夹", "importSeedVault": "导入SeedVault", - "dropSeedVaultHere": "拖动 SeedVault 到此处<1>或者点击浏览", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "Enter your key to open the SeedVault", "noSeedFound": "SeedVault 不包含有效种子", "noSeedFoundExplanation": "SeedVault 是空的或包含无效格式的种子。", "seedFileError": "打开SeedVault失败", "seedFileErrorExplanation": "打开 SeedVault 时遇到问题。如果您选择了正确的文件, 那么它可能已损坏。", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up. The key can be the same as the password you use for Trinity." + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "市值", @@ -655,7 +672,8 @@ "preparingTransfers": "准备转帐中", "gettingTransactionsToApprove": "获取交易批准", "proofOfWork": "完成工作量证明", - "broadcasting": "广播中" + "broadcasting": "广播中", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "无法完成快照转换", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "通知", diff --git a/src/shared/locales/zh-TW/translation.json b/src/shared/locales/zh-TW/translation.json index f7bcaca508..4e4e16663b 100644 --- a/src/shared/locales/zh-TW/translation.json +++ b/src/shared/locales/zh-TW/translation.json @@ -74,6 +74,8 @@ "wallet": "錢包", "all": "全部", "sent": "已支出", + "youReceived": "You received", + "youSent": "You sent", "received": "已接收", "sending": "轉帳中", "receiving": "收款中", @@ -128,7 +130,7 @@ "spentAddressExplanation": "警告:資金位於已支出的地址", "discordInformation": "用相同的地址重複轉帳是非常危險的,請前往 Discord #help 頻道尋求協助。", "androidInsecureClipboardWarning": "Android 提供的剪貼簿並不安全。", - "androidCopyPasteWarning": "請勿在 Android 裝置上複製/貼上您的種子碼。", + "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", "willNotCopyPasteSeed": "我絕不會複製/貼上我的種子碼", "mustBeStoredAppropriately": "種子碼必須妥善保存。", "deviceMayBecomeUnresponsive": "您的裝置可能會在一段時間內無法回應。", @@ -148,6 +150,8 @@ "errorAccessingKeychain": "鑰匙串錯誤", "errorAccessingKeychainExplanation": "無法訪問安全儲存所需的鑰匙串。", "mainWallet": "主帳戶", + "confirm": "Confirm", + "delete": "Delete", "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", @@ -205,7 +209,7 @@ "passwordTooShortExplanation": "您的密碼必須至少為 {{minLength}} 個字元,目前為 {{currentLength}} 個字元長,請再試一次。", "passwordMismatch": "密碼不符", "passwordMismatchExplanation": "您輸入的密碼不符,請再試一次。", - "anEncryptedCopy": "裝置上將會儲存一份您加密過的種子碼。未來您需要這份密碼來使用錢包。", + "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", "retypePassword": "重新輸入密碼" }, "copyToClipboard": { @@ -239,7 +243,8 @@ "login": "登入", "setNode": "設置節點", "whyBiometricDisabled": "為何生物識別驗證是停用的?", - "whyBiometricDisabledExplanation": "考量到您的安全,生物識別驗證在應用程式一開啟時是停用的。在使用 Trinity 時,要是一段時間沒有動作的話會將您登出。這時候再登入回來時,是可以使用生物識別驗證的。" + "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", + "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." }, "loading": { "loadingFirstTime": "首次讀取種子碼。", @@ -268,12 +273,12 @@ "paperWallet": { "neverShare": "千萬別和任何人分享您的種子碼。", "iotaLogo": "IOTA 標誌", - "print": "列印", + "print": "Print", "paperConvenience": "將您的種子碼列列印成紙本是最簡便的儲存方式。", "publicInsecure": "但請注意使用公共 wifi 或公共印表機列印的話可能會不安全。", - "tapCheckboxes": "請點擊以下方框來確認。", - "wifiCheckbox": "我不會使用公共 wifi 來列印", - "printerCheckbox": "我不會使用公共印表機來列印" + "pleaseCheck": "Please check and confirm before you print", + "wifiConfirmation": "I am not on on public wifi", + "printerConfirmation": "I am not printing on a public printer" }, "receive": { "yourAddress": "您的地址", @@ -304,7 +309,8 @@ "letsWriteDownYourSeed": "請寫下您的種子碼", "youCanHighlightCharacters": "您可以一次顯示 9 個字元", "printBlankWallet": "印出空白錢包", - "whatIsChecksum": "每個種子碼會有相對應 3 字元的檢查碼", + "whatIsAChecksum": "What is a checksum?", + "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", "iHavesavedMySeed": "我已儲存我的種子碼", "checksumExplanation": "每當您新增種子碼到錢包時,請確認錢包顯示的檢查碼和您當時寫下的相符。", "mustSaveYourSeed": "<0><0>您必須使用以下<1>其中一種<2>選項儲存您的種子碼。" @@ -345,7 +351,8 @@ "totalTime": "總計", "addressPasteDetected": "檢測到地址貼上", "addressPasteExplanation": "看起來您已貼上地址,請確認貼上的地址與您想送出去的相符。", - "invalid": "無效" + "invalid": "無效", + "swipeToSend": "Swipe to send" }, "setSeedName": { "letsAddName": "請輸入名稱", @@ -446,7 +453,8 @@ "empty": "清空", "retrying": "重試中", "yesterday": "昨日", - "promotingAnotherBundle": "正在促進另一組交易中" + "promotingAnotherBundle": "正在促進另一組交易中", + "pleaseWait": "Please wait, Trinity is promoting another bundle." }, "accountManagement": { "viewSeed": "檢視種子", @@ -504,18 +512,21 @@ "currency": "貨幣" }, "logoutConfirmationModal": { - "logoutConfirmation": "您確定要登出?" + "logoutConfirmation": "您確定要登出?", + "aboutToLogOut": "You are about to log out", + "areYouSure": "Are you sure?" }, "qrScanner": { "scan": "掃描 QR 碼" }, "unitInfoModal": { - "unitSystem": "單位系統", + "unitSystem": "Unit System", "trillion": "兆", "billion": "十億", "million": "百萬", "thousand": "千", - "one": "一" + "one": "一", + "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "我為何無法支出所有餘額?", @@ -551,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "您備份種子碼了嗎?", - "alreadyHave": "我已儲存我的種子碼", - "reenterSeed": "下一步您會需要重新輸入您的種子碼。", + "iHaveBackedUp": "I have safely backed up my seed", + "reenterSeed": "At the next step you need to re-enter your seed.", "reenterSeedWarning": "如果您尚未備份您的種子碼然後裝置停止的話,您將失去您所有的 IOTA。", "pleaseConfirm": "請確認您已安全地儲存了您的種子碼。" }, @@ -572,15 +583,19 @@ "status": "狀態", "fingerprintUnavailable": "生物識別驗證無法使用", "fingerprintUnavailableExplanation": "您的裝置不支援生物識別驗證,或者裝置設定中並沒有啟用此權限。", - "buttonInstructionsDisable": "按下方按鈕停用指紋驗證。", + "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", "buttonInstructionsEnable": "按下方按鈕啟用指紋驗證。", - "buttonInstructionsDisableIPhoneX": "按下方按鈕停用 Face ID。", - "buttonInstructionsEnableIPhoneX": "按下方按鈕啟用 Face ID。", + "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", + "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", "instructionsLogin": "觸摸指紋辨識器來登入" }, "transferConfirmation": { "youAreAbout": "您將轉帳{{contents}} 到地址", - "aMessage": "訊息" + "aMessage": "訊息", + "fromAccount": "From {{selectedAccountName}}", + "toAddress": "To address", + "sendingAMessage": "Sending a message", + "sendingAnEmptyMessage": "Sending an empty message" }, "twoFA": { "wrongCode": "驗證碼錯誤", @@ -601,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "匯出 SeedVault", - "seedVaultExplanation": "SeedVault 是份能夠安全地保存種子碼的加密檔案。種子碼透過輸入的 SeedVault 金鑰加密,而沒有該金鑰的話也就無法取得。", + "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", "seedVaultWarning": "請確認您有備份檔案在許多不同位置 (像是硬碟、雲端、USB)。如果您遺失此檔案而且沒有在其他地方儲存種子碼的話,您將失去您的 IOTA。", "exportFail": "SeedVault 匯出失敗", "exportFailExplanation": "匯出 SeedVault 時發生錯誤,請確認您有對應的權限以及足夠的可用空間。", @@ -615,13 +630,15 @@ "importSuccessExplanation": "您的種子碼已成功匯入。", "saveToDownloadFolder": "儲存至下載資料夾", "importSeedVault": "匯入 SeedVault", - "dropSeedVaultHere": "拖曳 SeedVault 至此 <1> 或者點擊瀏覽", + "dropInstructions": "Drop SeedVault or text here <1> or click to browse", + "dropActive": "Drop SeedVault or text here", "enterKeyExplanation": "請輸入您的金鑰來開啟 SeedVault", "noSeedFound": "SeedVault 裡沒儲存有效的種子碼", "noSeedFoundExplanation": "SeedVault 是空的或儲存格式不符的種子碼。", "seedFileError": "開啟 SeedVault 失敗", "seedFileErrorExplanation": "開啟 SeedVault 時遇到問題,如果您選擇的檔案是正確的,那麼它可能已損壞。", - "seedVaultKeyExplanation": "首先我們必須確保 SeedVault 的安全,請輸入金鑰來加密檔案。您將會需要此金鑰才能從 SeedVault 備份取回種子碼,金鑰也可以用和 Trinity 一樣的密碼。" + "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", + "retypeKey": "Retype key" }, "chart": { "mcap": "總市值", @@ -655,7 +672,8 @@ "preparingTransfers": "準備交易資訊", "gettingTransactionsToApprove": "取得交易確認", "proofOfWork": "完成工作量證明", - "broadcasting": "廣播中" + "broadcasting": "廣播中", + "transferComplete": "Transfer complete" }, "snapshotTransition": { "cannotCompleteTransition": "無法完成快照轉換", @@ -707,7 +725,7 @@ }, "proxy": { "proxy": "Use system proxy", - "proxyExplanation": "Detect and use system wide network proxy settings. Restart the wallet after changing this setting." + "proxyExplanation": "Detect and use system wide network proxy settings. Close and reopen the wallet after changing this setting." }, "notifications": { "notifications": "通知", From a9aa8244c0f503977d6790cc4491aefa67332b1f Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Mon, 10 Dec 2018 15:14:23 -0500 Subject: [PATCH 134/141] Mobile: Handle error if permissions are denied on SeedVault import (#719) * Mobile: Handle error if permissions are denied on SeedVault import * Update translation.json --- .../ui/components/SeedVaultImportComponent.js | 81 +++++++++++-------- src/shared/locales/en/translation.json | 6 +- 2 files changed, 49 insertions(+), 38 deletions(-) diff --git a/src/mobile/src/ui/components/SeedVaultImportComponent.js b/src/mobile/src/ui/components/SeedVaultImportComponent.js index b8f970dd32..6e67434a31 100644 --- a/src/mobile/src/ui/components/SeedVaultImportComponent.js +++ b/src/mobile/src/ui/components/SeedVaultImportComponent.js @@ -124,42 +124,53 @@ export class SeedVaultImportComponent extends Component { * @method importSeedVault */ importSeedVault() { - const { t } = this.props; - (isAndroid ? this.grantPermissions() : Promise.resolve()).then(() => { - DocumentPicker.show( - { - filetype: isAndroid - ? ['application/octet-stream'] - : ['public.data', 'public.item', 'dyn.ah62d4rv4ge8003dcta'], - }, - (error, res) => { - if (error) { - return this.props.generateAlert( - 'error', - t('global:somethingWentWrong'), - t('global:somethingWentWrongTryAgain'), - ); - } - let path = res.uri; - if (path.startsWith('file://')) { - path = path.slice(7); - } - RNFetchBlob.fs - .readFile(path, 'ascii') - .then((data) => { - this.setState({ seedVault: data }); - this.props.openPasswordValidationModal(); - }) - .catch(() => - this.props.generateAlert( + const { t, generateAlert } = this.props; + (isAndroid ? this.grantPermissions() : Promise.resolve()) + .then(() => { + DocumentPicker.show( + { + filetype: isAndroid + ? ['application/octet-stream'] + : ['public.data', 'public.item', 'dyn.ah62d4rv4ge8003dcta'], + }, + (error, res) => { + if (error) { + return generateAlert( 'error', - t('seedVault:seedFileError'), - t('seedVault:seedFileErrorExplanation'), - ), - ); - }, - ); - }); + t('global:somethingWentWrong'), + t('global:somethingWentWrongTryAgain'), + ); + } + let path = res.uri; + if (path.startsWith('file://')) { + path = path.slice(7); + } + RNFetchBlob.fs + .readFile(path, 'ascii') + .then((data) => { + this.setState({ seedVault: data }); + this.props.openPasswordValidationModal(); + }) + .catch(() => + generateAlert( + 'error', + t('seedVault:seedFileError'), + t('seedVault:seedFileErrorExplanation'), + ), + ); + }, + ); + }) + .catch((err) => { + if (err.message === 'Read permissions not granted.') { + return generateAlert( + 'error', + t('receive:missingPermission'), + t('receive:missingPermissionExplanation'), + ); + } + throw err; + }); } render() { diff --git a/src/shared/locales/en/translation.json b/src/shared/locales/en/translation.json index fc0ab4047b..71f25b85a4 100644 --- a/src/shared/locales/en/translation.json +++ b/src/shared/locales/en/translation.json @@ -164,7 +164,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed contains invalid characters", @@ -309,8 +311,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NO ADDRESSES", "spent": "Spent", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Tag", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", From a62ef8b24f866bf89528a1d1eb132bf9a7bd3fa1 Mon Sep 17 00:00:00 2001 From: Charlie Varley Date: Mon, 10 Dec 2018 21:29:20 +0000 Subject: [PATCH 135/141] Mobile: Fix keyboard avoidance globally (#767) * Mobile: Fix global keyboard avoidance * Mobile: Remove unused method --- src/mobile/android/build.gradle | 7 ++ src/mobile/android/settings.gradle | 4 +- .../src/ui/components/KeyboardMonitor.js | 24 +++- src/mobile/src/ui/components/ModalView.js | 10 +- .../ui/views/onboarding/SeedVaultBackup.js | 96 +++++++------- .../src/ui/views/onboarding/SetPassword.js | 117 ++++++++---------- src/mobile/src/ui/views/wallet/Home.js | 2 +- src/mobile/yarn.lock | 27 ++-- 8 files changed, 150 insertions(+), 137 deletions(-) diff --git a/src/mobile/android/build.gradle b/src/mobile/android/build.gradle index 43b1322e44..c16bf4b00a 100644 --- a/src/mobile/android/build.gradle +++ b/src/mobile/android/build.gradle @@ -48,6 +48,13 @@ subprojects { } } } + if (project.name.contains('react-native-modal-translucent')) { + buildscript { + repositories { + maven { url "https://dl.bintray.com/android/android-tools/" } + } + } + } project.configurations.all { resolutionStrategy.eachDependency { details -> if (details.requested.group == 'com.android.support' diff --git a/src/mobile/android/settings.gradle b/src/mobile/android/settings.gradle index 79d2a6a821..2c6f00c139 100644 --- a/src/mobile/android/settings.gradle +++ b/src/mobile/android/settings.gradle @@ -1,12 +1,12 @@ rootProject.name = 'iotaWallet' +include ':react-native-modal-translucent' +project(':react-native-modal-translucent').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-modal-translucent/android') include ':react-native-document-picker' project(':react-native-document-picker').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-document-picker/android') include ':nodejs-mobile-react-native' project(':nodejs-mobile-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/nodejs-mobile-react-native/android') include ':react-native-fast-crypto' project(':react-native-fast-crypto').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-fast-crypto/android') -include ':react-native-modal-translucent' -project(':react-native-modal-translucent').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-modal-translucent/android') include ':react-native-detect-navbar-android' project(':react-native-detect-navbar-android').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-detect-navbar-android/android') include ':react-native-fingerprint-scanner' diff --git a/src/mobile/src/ui/components/KeyboardMonitor.js b/src/mobile/src/ui/components/KeyboardMonitor.js index cde8767714..06e428d1b7 100644 --- a/src/mobile/src/ui/components/KeyboardMonitor.js +++ b/src/mobile/src/ui/components/KeyboardMonitor.js @@ -1,8 +1,10 @@ +// Updates global state when keyboard opens/closes. Applies keyboard avoidance globally + import React, { Component } from 'react'; import { Keyboard } from 'react-native'; import PropTypes from 'prop-types'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; import { connect } from 'react-redux'; -import timer from 'react-native-timer'; import { setKeyboardActivity } from 'shared-modules/actions/ui'; import { isAndroid } from 'libs/device'; @@ -14,6 +16,7 @@ const mapStateToProps = (state) => ({ isKeyboardActive: state.ui.isKeyboardActive, inactive: state.ui.inactive, minimised: state.ui.minimised, + isModalActive: state.ui.isModalActive, }); /** @@ -32,6 +35,8 @@ export default function withKeyboardMonitor(C) { inactive: PropTypes.bool.isRequired, /** @ignore */ minimised: PropTypes.bool.isRequired, + /** @ignore */ + isModalActive: PropTypes.bool.isRequired, }; componentWillMount() { @@ -47,7 +52,6 @@ export default function withKeyboardMonitor(C) { componentWillUnmount() { this.keyboardWillShowSub.remove(); this.keyboardWillHideSub.remove(); - timer.clearTimeout('iOSKeyboardTimeout'); } keyboardWillShow = () => { @@ -58,8 +62,8 @@ export default function withKeyboardMonitor(C) { this.props.setKeyboardActivity(true); }; - keyboardWillHide = (event) => { - timer.setTimeout('iOSKeyboardTimeout', () => this.props.setKeyboardActivity(false), event.duration); + keyboardWillHide = () => { + this.props.setKeyboardActivity(false); }; keyboardDidShow = () => { @@ -75,7 +79,17 @@ export default function withKeyboardMonitor(C) { }; render() { - return ; + return ( + + + + ); } } diff --git a/src/mobile/src/ui/components/ModalView.js b/src/mobile/src/ui/components/ModalView.js index 8a5ce40573..3d71f675c2 100644 --- a/src/mobile/src/ui/components/ModalView.js +++ b/src/mobile/src/ui/components/ModalView.js @@ -1,6 +1,7 @@ import React, { PureComponent } from 'react'; import PropTypes from 'prop-types'; import { View, StyleSheet, StatusBar } from 'react-native'; +import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; import SafeAreaView from 'react-native-safe-area-view'; import { connect } from 'react-redux'; import { Styling } from 'ui/theme/general'; @@ -98,7 +99,12 @@ export class ModalViewComponent extends PureComponent { } = this.props; return ( - + @@ -113,7 +119,7 @@ export class ModalViewComponent extends PureComponent { /> )) || onButtonPress()} buttonText={buttonText} />} - + ); } } diff --git a/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js b/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js index a3fccb4d4e..9bd7d300e8 100644 --- a/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js +++ b/src/mobile/src/ui/views/onboarding/SeedVaultBackup.js @@ -1,16 +1,16 @@ import React, { Component } from 'react'; import { withNamespaces } from 'react-i18next'; -import { StyleSheet, View, Keyboard, TouchableWithoutFeedback, KeyboardAvoidingView } from 'react-native'; +import { StyleSheet, View, Keyboard, TouchableWithoutFeedback } from 'react-native'; import { navigator } from 'libs/navigation'; import { connect } from 'react-redux'; import PropTypes from 'prop-types'; -import { height } from 'libs/dimensions'; import DualFooterButtons from 'ui/components/DualFooterButtons'; import AnimatedComponent from 'ui/components/AnimatedComponent'; import Header from 'ui/components/Header'; -import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; import SeedVaultExportComponent from 'ui/components/SeedVaultExportComponent'; +import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; import { isAndroid } from 'libs/device'; +import { height } from 'libs/dimensions'; const styles = StyleSheet.create({ container: { @@ -90,53 +90,49 @@ class SeedVaultBackup extends Component { return ( - - - - -
    {t('exportSeedVault')}
    -
    -
    - - - - this.setState({ step })} - goBack={() => this.goBack()} - onRef={(ref) => { - this.SeedVaultExportComponent = ref; - }} - isAuthenticated - seed={seed} - setSeed={(seed) => this.setState({ seed })} - /> - - - - - this.SeedVaultExportComponent.onBackPress()} - onRightButtonPress={() => this.onRightButtonPress()} - leftButtonText={t('global:back')} - rightButtonText={ - step === 'isExporting' && !isAndroid - ? t('global:export') - : step === 'isSelectingSaveMethodAndroid' - ? t('global:done') - : t('global:next') - } - /> - - + + + +
    {t('exportSeedVault')}
    +
    +
    + + + + this.setState({ step })} + goBack={() => this.goBack()} + onRef={(ref) => { + this.SeedVaultExportComponent = ref; + }} + isAuthenticated + seed={seed} + setSeed={(seed) => this.setState({ seed })} + /> + + + + + this.SeedVaultExportComponent.onBackPress()} + onRightButtonPress={() => this.onRightButtonPress()} + leftButtonText={t('global:back')} + rightButtonText={ + step === 'isExporting' && !isAndroid + ? t('global:export') + : step === 'isSelectingSaveMethodAndroid' ? t('global:done') : t('global:next') + } + /> +
    diff --git a/src/mobile/src/ui/views/onboarding/SetPassword.js b/src/mobile/src/ui/views/onboarding/SetPassword.js index 5625f6006d..54d08fac55 100644 --- a/src/mobile/src/ui/views/onboarding/SetPassword.js +++ b/src/mobile/src/ui/views/onboarding/SetPassword.js @@ -4,7 +4,6 @@ import { withNamespaces } from 'react-i18next'; import { StyleSheet, View, Text, TouchableWithoutFeedback, Keyboard } from 'react-native'; import { navigator } from 'libs/navigation'; import { connect } from 'react-redux'; -import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view'; import { setOnboardingComplete } from 'shared-modules/actions/accounts'; import { clearWalletData, clearSeed, setPassword } from 'shared-modules/actions/wallet'; import { generateAlert } from 'shared-modules/actions/alerts'; @@ -18,7 +17,6 @@ import InfoBox from 'ui/components/InfoBox'; import { Styling } from 'ui/theme/general'; import Header from 'ui/components/Header'; import PasswordFields from 'ui/components/PasswordFields'; -import { isIPhoneX } from 'libs/device'; import { leaveNavigationBreadcrumb } from 'libs/bugsnag'; console.ignoredYellowBox = ['Native TextInput']; // eslint-disable-line no-console @@ -178,68 +176,61 @@ class SetPassword extends Component { const { password, reentry } = this.state; return ( - - - - - -
    {t('choosePassword')}
    -
    -
    - - - - {t('anEncryptedCopy')} - - {t('changePassword:ensureStrongPassword')} - - - - - - { - this.passwordFields = ref; - }} - onAcceptPassword={() => this.onAcceptPassword()} - password={password} - reentry={reentry} - setPassword={(password) => this.setState({ password })} - setReentry={(reentry) => this.setState({ reentry })} - /> - - - - - - this.onBackPress()} - onRightButtonPress={() => this.onDonePress()} - leftButtonText={t('global:goBack')} - rightButtonText={t('global:done')} - /> - - + + + + +
    {t('choosePassword')}
    +
    -
    -
    + + + + {t('anEncryptedCopy')} + + {t('changePassword:ensureStrongPassword')} + + + + + + { + this.passwordFields = ref; + }} + onAcceptPassword={() => this.onAcceptPassword()} + password={password} + reentry={reentry} + setPassword={(password) => this.setState({ password })} + setReentry={(reentry) => this.setState({ reentry })} + /> + + + + + + this.onBackPress()} + onRightButtonPress={() => this.onDonePress()} + leftButtonText={t('global:goBack')} + rightButtonText={t('global:done')} + /> + + + + ); } } diff --git a/src/mobile/src/ui/views/wallet/Home.js b/src/mobile/src/ui/views/wallet/Home.js index b6e137d2a6..aea061e003 100644 --- a/src/mobile/src/ui/views/wallet/Home.js +++ b/src/mobile/src/ui/views/wallet/Home.js @@ -117,7 +117,7 @@ class Home extends Component { } componentWillReceiveProps(newProps) { - if (!this.props.isKeyboardActive && newProps.isKeyboardActive) { + if (!this.props.isKeyboardActive && newProps.isKeyboardActive && !this.props.isModalActive) { this.handleCloseTopBar(); if (isAndroid) { this.topBarHeight = 20; diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 803e5fecd8..199dc027ab 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -5204,18 +5204,18 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1, loose-envify@^1.4 dependencies: js-tokens "^3.0.0 || ^4.0.0" -lottie-ios@^2.1.3, lottie-ios@^2.1.5: +lottie-ios@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/lottie-ios/-/lottie-ios-2.5.0.tgz#55c808e785d4a6933b0c10b395530b17098b05de" integrity sha1-VcgI54XUppM7DBCzlVMLFwmLBd4= -lottie-react-native@2.2.7: - version "2.2.7" - resolved "https://registry.yarnpkg.com/lottie-react-native/-/lottie-react-native-2.2.7.tgz#d89cf6e0a093693d5fed2999a986cbcb1a090955" - integrity sha1-2Jz24KCTaT1f7SmZqYbLyxoJCVU= +lottie-react-native@^2.5.10: + version "2.5.10" + resolved "https://registry.yarnpkg.com/lottie-react-native/-/lottie-react-native-2.5.10.tgz#703f2fe8305dcb53e993654f7ecd96c2f04c672c" + integrity sha512-+uCQ6y4iEamenmL5rKCWOybjC1Ii12FSd+cR1nTdLsJEmKmU7ckoJTtwChj4DHQqnRDzx0oUr9yoJIGPavcaDQ== dependencies: invariant "^2.2.2" - lottie-ios "^2.1.3" + lottie-ios "^2.5.0" prop-types "^15.5.10" react-native-safe-module "^1.1.0" @@ -5889,9 +5889,9 @@ nodejs-mobile-gyp@^0.2.0: tar "^3.1.3" which "1" -"nodejs-mobile-react-native@https://github.com/rajivshah3/nodejs-mobile-react-native": - version "0.2.1" - resolved "https://github.com/rajivshah3/nodejs-mobile-react-native#e8337cfb03f72cfa88acf7b2d16d29fe848af174" +"nodejs-mobile-react-native@https://github.com/rajivshah3/nodejs-mobile-react-native#ab4a655d30a51115c34dbdb30b98df6f130467ff": + version "0.3.2" + resolved "https://github.com/rajivshah3/nodejs-mobile-react-native#ab4a655d30a51115c34dbdb30b98df6f130467ff" dependencies: mkdirp "^0.5.1" ncp "^2.0.0" @@ -6845,7 +6845,7 @@ react-native-animatable@^1.2.4: dependencies: prop-types "^15.5.10" -react-native-camera@^1.5.1: +react-native-camera@^1.1.4: version "1.5.1" resolved "https://registry.yarnpkg.com/react-native-camera/-/react-native-camera-1.5.1.tgz#c241cc0456e5dd31f1d05812bf3d0e86fb6931a3" integrity sha512-qD3XTNU2Zh13vfiWZPCtXSFDFFBq8cKyDiaes+viMTCLP1VE81Uklbi21VdoOdTcTgrZe0OOCYUrZ3vj58RxWw== @@ -6997,10 +6997,9 @@ react-native-markdown-renderer@^3.2.1: prop-types "^15.5.10" react-native-fit-image "^1.5.2" -react-native-modal-translucent@^1.1.3: - version "1.1.6" - resolved "https://registry.yarnpkg.com/react-native-modal-translucent/-/react-native-modal-translucent-1.1.6.tgz#faa72d8c1c8b902cc9252476036dadba93aa120c" - integrity sha512-eEMarVkOUpkPoK5oIv0lxahI1UxTuTAUycUWpEv4MBH8mkjzuHxSxw4MKXd1C2Yt+tzDv3De0rMFTKnQjw2Fqw== +"react-native-modal-translucent@https://github.com/listenzz/react-native-modal-translucent": + version "1.1.7" + resolved "https://github.com/listenzz/react-native-modal-translucent#87942974c2d4b1b405bd08069bcb35d8fdb19959" react-native-modal@^7.0.1: version "7.0.1" From 29ba1408ef4c86a31179291285a49f3f962530df Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Mon, 10 Dec 2018 23:53:14 -0500 Subject: [PATCH 136/141] Localization improvements (#718) * Desktop: Localize "All" in dropdown * All: Localize snapshot transition progress * Desktop: Localize context menu --- src/desktop/main.js | 35 +--------------- src/desktop/native/Menu.js | 41 ++++++++++++++++++- src/desktop/src/ui/components/List.js | 2 +- src/desktop/src/ui/views/account/Tools.js | 23 ++++++++++- .../src/ui/views/wallet/SnapshotTransition.js | 5 ++- src/shared/locales/en/translation.json | 3 +- 6 files changed, 68 insertions(+), 41 deletions(-) diff --git a/src/desktop/main.js b/src/desktop/main.js index 6a1614eb2a..b98986dd68 100644 --- a/src/desktop/main.js +++ b/src/desktop/main.js @@ -5,7 +5,7 @@ import path from 'path'; import URL from 'url'; import fs from 'fs'; -import initMenu from './native/Menu.js'; +import { initMenu, contextMenu } from './native/Menu.js'; /** * Expose Garbage Collector flag for manual trigger after seed usage @@ -210,40 +210,9 @@ function createWindow() { * Add right click context menu for input elements */ windows.main.webContents.on('context-menu', (e, props) => { - const InputMenu = electron.Menu.buildFromTemplate([ - { - label: 'Undo', - role: 'undo', - }, - { - label: 'Redo', - role: 'redo', - }, - { - type: 'separator', - }, - { - label: 'Cut', - role: 'cut', - }, - { - label: 'Copy', - role: 'copy', - }, - { - label: 'Paste', - role: 'paste', - }, - { - type: 'separator', - }, - { - label: 'Select all', - role: 'selectall', - }, - ]); const { isEditable } = props; if (isEditable) { + const InputMenu = contextMenu(); InputMenu.popup(windows.main); } }); diff --git a/src/desktop/native/Menu.js b/src/desktop/native/Menu.js index ac23f783b4..77e2da80f9 100644 --- a/src/desktop/native/Menu.js +++ b/src/desktop/native/Menu.js @@ -142,7 +142,7 @@ autoUpdater.on('download-progress', (progressObj) => { * @param {function} getWindow - Get Window instance helper * @returns {undefined} */ -const initMenu = (app, getWindowFunc) => { +export const initMenu = (app, getWindowFunc) => { let mainMenu = null; getWindow = getWindowFunc; @@ -404,4 +404,41 @@ const initMenu = (app, getWindowFunc) => { }); }; -export default initMenu; +/** + * Creates context menu + * @returns {Menu} Context menu + */ +export const contextMenu = () => { + return Menu.buildFromTemplate([ + { + label: language.undo, + role: 'undo', + }, + { + label: language.redo, + role: 'redo', + }, + { + type: 'separator', + }, + { + label: language.cut, + role: 'cut', + }, + { + label: language.copy, + role: 'copy', + }, + { + label: language.paste, + role: 'paste', + }, + { + type: 'separator', + }, + { + label: language.selectAll, + role: 'selectall', + }, + ]); +}; diff --git a/src/desktop/src/ui/components/List.js b/src/desktop/src/ui/components/List.js index 37216b31a2..8bec40fd05 100644 --- a/src/desktop/src/ui/components/List.js +++ b/src/desktop/src/ui/components/List.js @@ -229,7 +229,7 @@ class List extends React.PureComponent { totals[item] === 0 ? css.disabled : filter === item ? css.active : null, )} > - {item === 'All' ? 'All' : t(item.toLowerCase())} ({totals[item]}) + {item === 'All' ? t('global:all') : t(item.toLowerCase())} ({totals[item]}) ); })} diff --git a/src/desktop/src/ui/views/account/Tools.js b/src/desktop/src/ui/views/account/Tools.js index f3eaf6faa0..767ee24bec 100644 --- a/src/desktop/src/ui/views/account/Tools.js +++ b/src/desktop/src/ui/views/account/Tools.js @@ -23,6 +23,7 @@ import Scrollbar from 'ui/components/Scrollbar'; import Button from 'ui/components/Button'; import Loading from 'ui/components/Loading'; import ModalConfirm from 'ui/components/modal/Confirm'; +import size from 'lodash/size'; /** * Account tools component @@ -49,8 +50,22 @@ class Addresses extends PureComponent { transitionForSnapshot: PropTypes.func.isRequired, /** @ignore */ t: PropTypes.func.isRequired, + activeStepIndex: PropTypes.number.isRequired, + /** @ignore */ + activeSteps: PropTypes.array.isRequired, }; + static renderProgressChildren(activeStepIndex, sizeOfActiveSteps, t) { + if (activeStepIndex === -1) { + return null; + } + + return t('snapshotTransition:attachProgress', { + currentAddress: activeStepIndex + 1, + totalAddresses: sizeOfActiveSteps, + }); + } + componentDidUpdate(prevProps) { const { wallet, ui } = this.props; @@ -126,7 +141,8 @@ class Addresses extends PureComponent { }; render() { - const { ui, wallet, t } = this.props; + const { ui, wallet, t, activeStepIndex, activeSteps } = this.props; + const sizeOfActiveSteps = size(activeSteps); if ((ui.isTransitioning || ui.isAttachingToTangle) && !wallet.balanceCheckFlag) { return ( @@ -144,7 +160,8 @@ class Addresses extends PureComponent { ) : (
    {t('snapshotTransition:attaching')}
    - {t('loading:thisMayTake')} {t('global:pleaseWaitEllipses')} + {t('loading:thisMayTake')} {t('global:pleaseWaitEllipses')}
    + {Addresses.renderProgressChildren(activeStepIndex, sizeOfActiveSteps, t)}
    )} @@ -218,6 +235,8 @@ const mapStateToProps = (state) => ({ accountName: getSelectedAccountName(state), accountMeta: getSelectedAccountMeta(state), addresses: getAddressesForSelectedAccount(state), + activeStepIndex: state.progress.activeStepIndex, + activeSteps: state.progress.activeSteps, }); const mapDispatchToProps = { diff --git a/src/mobile/src/ui/views/wallet/SnapshotTransition.js b/src/mobile/src/ui/views/wallet/SnapshotTransition.js index 164e5050cc..bb29ecc257 100644 --- a/src/mobile/src/ui/views/wallet/SnapshotTransition.js +++ b/src/mobile/src/ui/views/wallet/SnapshotTransition.js @@ -151,12 +151,12 @@ class SnapshotTransition extends Component { cancelSnapshotTransition: PropTypes.func.isRequired, }; - static renderProgressBarChildren(activeStepIndex, sizeOfActiveSteps) { + static renderProgressBarChildren(activeStepIndex, sizeOfActiveSteps, t) { if (activeStepIndex === -1) { return null; } - return `Attaching address ${activeStepIndex + 1} / ${sizeOfActiveSteps}`; + return t('attachProgress', { currentAddress: activeStepIndex + 1, totalAddresses: sizeOfActiveSteps }); } constructor() { @@ -335,6 +335,7 @@ class SnapshotTransition extends Component { {SnapshotTransition.renderProgressBarChildren( activeStepIndex, sizeOfActiveSteps, + t, )}
    diff --git a/src/shared/locales/en/translation.json b/src/shared/locales/en/translation.json index 71f25b85a4..c1eb72b118 100644 --- a/src/shared/locales/en/translation.json +++ b/src/shared/locales/en/translation.json @@ -721,7 +721,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", From d3f3fe9fd5040975eade8436d352d3f199569701 Mon Sep 17 00:00:00 2001 From: Rihards Gravis <31288628+rihardsgravis@users.noreply.github.com> Date: Tue, 11 Dec 2018 09:11:00 +0200 Subject: [PATCH 137/141] Desktop: Add two-factor authorisation to Password modal (#764) * Add 2fa authorisation to Password modal * Revert `onSubmit` prop --- .../src/ui/components/modal/Password.js | 93 ++++++++++++++++--- src/desktop/src/ui/global/Idle.js | 7 +- 2 files changed, 85 insertions(+), 15 deletions(-) diff --git a/src/desktop/src/ui/components/modal/Password.js b/src/desktop/src/ui/components/modal/Password.js index 4857035a99..c0e7d29b52 100644 --- a/src/desktop/src/ui/components/modal/Password.js +++ b/src/desktop/src/ui/components/modal/Password.js @@ -2,11 +2,13 @@ import React, { PureComponent } from 'react'; import PropTypes from 'prop-types'; import { withI18n } from 'react-i18next'; import { connect } from 'react-redux'; +import authenticator from 'authenticator'; import { hash, authorize } from 'libs/crypto'; import { generateAlert } from 'actions/alerts'; +import Text from 'ui/components/input/Text'; import Password from 'ui/components/input/Password'; import Button from 'ui/components/Button'; import Modal from 'ui/components/modal/Modal'; @@ -25,6 +27,8 @@ class ModalPassword extends PureComponent { isOpen: PropTypes.bool, /** Should the dialog be without a cancel option */ isForced: PropTypes.bool, + /** Should 2fa authorisation be skipped */ + skip2fa: PropTypes.bool, /** Modal inline style state */ inline: PropTypes.bool, /** On dialog close event */ @@ -53,6 +57,8 @@ class ModalPassword extends PureComponent { state = { password: '', + code: '', + verifyTwoFA: false, }; componentWillReceiveProps(nextProps) { @@ -63,20 +69,45 @@ class ModalPassword extends PureComponent { } } - onSubmit = async (e) => { - const { password } = this.state; - const { onSubmit, onSuccess, generateAlert, t } = this.props; + /** + * Update 2fa code value and trigger authentication once necessary length is reached + * @param {string} value - Code value + */ + setCode = (value) => { + this.setState({ code: value }, () => value.length === 6 && this.handleSubmit()); + }; - e.preventDefault(); + handleSubmit = async (e) => { + const { password, code, verifyTwoFA } = this.state; + const { skip2fa, onSuccess, onSubmit, generateAlert, t } = this.props; + + if (e) { + e.preventDefault(); + } if (onSubmit) { return onSubmit(password); } + let authorised = false; + const passwordHash = await hash(password); try { - await authorize(passwordHash); + authorised = await authorize(passwordHash); + + if (!skip2fa && typeof authorised === 'string' && !authenticator.verifyToken(authorised, code)) { + if (verifyTwoFA) { + generateAlert('error', t('twoFA:wrongCode'), t('twoFA:wrongCodeExplanation')); + } + + this.setState({ + verifyTwoFA: true, + code: '', + }); + + return; + } } catch (err) { generateAlert( 'error', @@ -89,15 +120,14 @@ class ModalPassword extends PureComponent { onSuccess(passwordHash); }; - render() { - const { content, category, isOpen, isForced, inline, onClose, t } = this.props; + passwordContent = () => { + const { content, category, isOpen, isForced, onClose, t } = this.props; const { password } = this.state; - return ( - onClose()}> + {content.title ?

    {content.title}

    : null} {content.message ?

    {content.message}

    : null} -
    this.onSubmit(e)}> + this.handleSubmit(e)}> this.setState({ password: value })} />
    - {!isForced ? ( + {!isForced && ( - ) : null} + )}
    +
    + ); + }; + + twoFaContent = () => { + const { isForced, onClose, t } = this.props; + const { code } = this.state; + return ( + +

    {t('twoFA:enterCode')}

    +
    this.handleSubmit(e)}> + +
    + {!isForced && ( + + )} + +
    + +
    + ); + }; + + render() { + const { isOpen, isForced, inline, onClose } = this.props; + const { verifyTwoFA } = this.state; + + return ( + onClose()}> + {verifyTwoFA ? this.twoFaContent() : this.passwordContent()} ); } @@ -124,4 +188,7 @@ const mapDispatchToProps = { generateAlert, }; -export default connect(null, mapDispatchToProps)(withI18n()(ModalPassword)); +export default connect( + null, + mapDispatchToProps, +)(withI18n()(ModalPassword)); diff --git a/src/desktop/src/ui/global/Idle.js b/src/desktop/src/ui/global/Idle.js index b27e8fa4e0..80de89172a 100644 --- a/src/desktop/src/ui/global/Idle.js +++ b/src/desktop/src/ui/global/Idle.js @@ -89,7 +89,7 @@ class Idle extends React.Component { if (!this.state.locked) { return null; } - return this.unlock(password)} />; + return this.unlock(password)} />; } } @@ -102,4 +102,7 @@ const mapDispatchToProps = { setPassword, }; -export default connect(mapStateToProps, mapDispatchToProps)(Idle); +export default connect( + mapStateToProps, + mapDispatchToProps, +)(Idle); From ced0b49801c2c5a6c9a655d7399b27384060fd78 Mon Sep 17 00:00:00 2001 From: Rajiv Shah Date: Tue, 11 Dec 2018 10:41:14 -0500 Subject: [PATCH 138/141] Mobile: Fix failing tests (#770) --- .../__tests__/ui/views/onboarding/SetAccountName.spec.js | 6 ++++++ .../__tests__/ui/views/wallet/TwoFactorSetupAddKey.spec.js | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/src/mobile/__tests__/ui/views/onboarding/SetAccountName.spec.js b/src/mobile/__tests__/ui/views/onboarding/SetAccountName.spec.js index ac562943a8..c996ae70fb 100644 --- a/src/mobile/__tests__/ui/views/onboarding/SetAccountName.spec.js +++ b/src/mobile/__tests__/ui/views/onboarding/SetAccountName.spec.js @@ -14,6 +14,12 @@ jest.mock('bugsnag-react-native', () => ({ Client: jest.fn(() => ({ leaveBreadcrumb: jest.fn() })), })); +jest.mock('libs/navigation', () => ({ + navigator: { + push: jest.fn(), + }, +})); + const getProps = (overrides) => assign( {}, diff --git a/src/mobile/__tests__/ui/views/wallet/TwoFactorSetupAddKey.spec.js b/src/mobile/__tests__/ui/views/wallet/TwoFactorSetupAddKey.spec.js index cf1d2a109e..a09e7e525c 100644 --- a/src/mobile/__tests__/ui/views/wallet/TwoFactorSetupAddKey.spec.js +++ b/src/mobile/__tests__/ui/views/wallet/TwoFactorSetupAddKey.spec.js @@ -28,6 +28,12 @@ jest.mock('libs/keychain', () => ({ storeTwoFactorAuthKeyInKeychain: jest.fn(() => Promise.resolve({})), })); +jest.mock('libs/navigation', () => ({ + navigator: { + push: jest.fn(), + }, +})); + const getProps = (overrides) => assign( {}, From 80fe0ae12455bf4cf8cede8f79de37f3610f7e52 Mon Sep 17 00:00:00 2001 From: Umair Sarfraz Date: Tue, 11 Dec 2018 20:41:42 +0500 Subject: [PATCH 139/141] Assign account index to accounts in state (#715) * feat: add read-only (account) index to account info for each account * fix: order account names by account index * feat: add ability to auto assign account index to existing accounts in account state * Reorder account indexes on account deletion --- src/desktop/src/index.js | 4 + src/mobile/src/ui/routes/entry.js | 4 + src/shared/__tests__/actions/accounts.spec.js | 64 +++++ .../__tests__/reducers/accounts.spec.js | 218 ++++++------------ .../__tests__/selectors/accounts.spec.js | 6 +- src/shared/actions/accounts.js | 35 ++- src/shared/reducers/accounts.js | 46 +++- src/shared/selectors/accounts.js | 14 +- 8 files changed, 231 insertions(+), 160 deletions(-) create mode 100644 src/shared/__tests__/actions/accounts.spec.js diff --git a/src/desktop/src/index.js b/src/desktop/src/index.js index 7e84d19c71..e9d810d0f7 100644 --- a/src/desktop/src/index.js +++ b/src/desktop/src/index.js @@ -8,6 +8,7 @@ import { Provider as Redux } from 'react-redux'; import { MemoryRouter as Router } from 'react-router'; import i18next from 'libs/i18next'; import store, { persistStore } from 'store'; +import { assignAccountIndexIfNecessary } from 'actions/accounts'; import persistElectronStorage from 'libs/storage'; import { changeIotaNode } from 'libs/iota'; import createPlugin from 'bugsnag-react'; @@ -46,6 +47,9 @@ const persistor = persistStore(store, persistConfig, (err, restoredState) => { if (node) { changeIotaNode(node); } + + // Assign accountIndex to every account in accountInfo if it is not assigned already + store.dispatch(assignAccountIndexIfNecessary(get(restoredState, 'accounts.accountInfo'))); }); if (Electron.mode === 'tray') { diff --git a/src/mobile/src/ui/routes/entry.js b/src/mobile/src/ui/routes/entry.js index 9eb0012396..bd7f75e25d 100644 --- a/src/mobile/src/ui/routes/entry.js +++ b/src/mobile/src/ui/routes/entry.js @@ -7,6 +7,7 @@ import { Provider } from 'react-redux'; import { changeIotaNode, SwitchingConfig } from 'shared-modules/libs/iota'; import sharedStore from 'shared-modules/store'; import iotaNativeBindings, { overrideAsyncTransactionObject } from 'shared-modules/libs/iota/nativeBindings'; +import { assignAccountIndexIfNecessary } from 'shared-modules/actions/accounts'; import { fetchNodeList as fetchNodes } from 'shared-modules/actions/polling'; import { setCompletedForcedPasswordUpdate } from 'shared-modules/actions/settings'; import { ActionTypes } from 'shared-modules/actions/wallet'; @@ -38,6 +39,9 @@ const launch = (store) => { store.dispatch(setCompletedForcedPasswordUpdate()); } + // Assign accountIndex to every account in accountInfo if it is not assigned already + store.dispatch(assignAccountIndexIfNecessary(get(state, 'accounts.accountInfo'))); + // Set default language i18next.changeLanguage(getLocaleFromLabel(state.settings.language)); diff --git a/src/shared/__tests__/actions/accounts.spec.js b/src/shared/__tests__/actions/accounts.spec.js new file mode 100644 index 0000000000..6a013075e8 --- /dev/null +++ b/src/shared/__tests__/actions/accounts.spec.js @@ -0,0 +1,64 @@ +import configureMockStore from 'redux-mock-store'; +import thunk from 'redux-thunk'; +import { expect } from 'chai'; +import * as actions from '../../actions/accounts'; + +const middlewares = [thunk]; +const mockStore = configureMockStore(middlewares); + +describe('actions: accounts', () => { + describe('#assignAccountIndexIfNecessary', () => { + describe('provided param is empty', () => { + it('should not create an action of type IOTA/ACCOUNTS/ASSIGN_ACCOUNT_INDEX', () => { + const store = mockStore({}); + + // Dispatch action + store.dispatch(actions.assignAccountIndexIfNecessary({})); + + expect(store.getActions()).to.eql([]); + }); + }); + + describe('provided param is not empty', () => { + describe('when some accounts in accountInfo object have an index property with a non-numeric value', () => { + it('should not create an action of type IOTA/ACCOUNTS/ASSIGN_ACCOUNT_INDEX', () => { + const store = mockStore({}); + + let accountInfo = { foo: {}, baz: { index: 2 } }; + + const expectedActions = [ + { + type: 'IOTA/ACCOUNTS/ASSIGN_ACCOUNT_INDEX', + }, + ]; + + // Dispatch action + store.dispatch(actions.assignAccountIndexIfNecessary(accountInfo)); + expect(store.getActions()).to.eql(expectedActions); + + // Clear actions + store.clearActions(); + + // Reassign account info and check for undefined values + accountInfo = { foo: { index: undefined }, baz: { index: 1 } }; + + // Dispatch action + store.dispatch(actions.assignAccountIndexIfNecessary(accountInfo)); + expect(store.getActions()).to.eql(expectedActions); + }); + }); + + describe('when every account in accountInfo object has an index property with a numeric value', () => { + it('should not create an action of type IOTA/ACCOUNTS/ASSIGN_ACCOUNT_INDEX', () => { + const store = mockStore({}); + + const accountInfo = { foo: { index: 0 }, baz: { index: 1 } }; + + // Dispatch action + store.dispatch(actions.assignAccountIndexIfNecessary(accountInfo)); + expect(store.getActions()).to.eql([]); + }); + }); + }); + }); +}); diff --git a/src/shared/__tests__/reducers/accounts.spec.js b/src/shared/__tests__/reducers/accounts.spec.js index bbe3015018..123c729c09 100644 --- a/src/shared/__tests__/reducers/accounts.spec.js +++ b/src/shared/__tests__/reducers/accounts.spec.js @@ -1,5 +1,5 @@ import { expect } from 'chai'; -import reducer, { mergeAddressData } from '../../reducers/accounts'; +import reducer, { mergeAddressData, removeAccountAndReorderIndexes } from '../../reducers/accounts'; import * as actions from '../../actions/accounts'; describe('Reducer: accounts', () => { @@ -456,157 +456,6 @@ describe('Reducer: accounts', () => { }); }); - describe('FULL_ACCOUNT_INFO_FETCH_SUCCESS', () => { - it('should merge unconfirmedBundleTails in payload to unconfirmedBundleTails in state', () => { - const initialState = { - unconfirmedBundleTails: { foo: {} }, - }; - - const action = actions.fullAccountInfoFetchSuccess({ unconfirmedBundleTails: { baz: {} } }); - - const newState = reducer(initialState, action); - const expectedState = { - unconfirmedBundleTails: { baz: {}, foo: {} }, - }; - - expect(newState.unconfirmedBundleTails).to.eql(expectedState.unconfirmedBundleTails); - }); - - it('should merge addresses in payload to accountName in accountInfo', () => { - const initialState = { - accountInfo: { - foo: { - addresses: { foo: {} }, - transfers: {}, - balance: 0, - }, - }, - }; - - const action = actions.fullAccountInfoFetchSuccess({ - accountName: 'foo', - accountMeta: { type: 'bar' }, - addresses: { foo: {}, baz: {} }, - transfers: {}, - balance: 100, - hashes: [], - }); - - const newState = reducer(initialState, action); - const expectedState = { - accountInfo: { - foo: { - meta: { type: 'bar' }, - addresses: { foo: {}, baz: {} }, - transfers: {}, - balance: 100, - hashes: [], - }, - }, - }; - - expect(newState.accountInfo).to.eql(expectedState.accountInfo); - }); - - it('should assign transfers and set balance in payload to accountName in accountInfo', () => { - const initialState = { - accountInfo: { - foo: { - meta: { type: 'bar' }, - addresses: { foo: {} }, - transfers: { foo: { value: 20 }, baz: { value: 0 } }, - balance: 0, - }, - }, - }; - - const action = actions.fullAccountInfoFetchSuccess({ - accountName: 'foo', - accountMeta: { type: 'bar' }, - addresses: { foo: {}, baz: {} }, - transfers: { foo: { value: 0 } }, - balance: 100, - hashes: [], - }); - - const newState = reducer(initialState, action); - const expectedState = { - accountInfo: { - foo: { - meta: { type: 'bar' }, - addresses: { foo: {}, baz: {} }, - transfers: { foo: { value: 0 }, baz: { value: 0 } }, - balance: 100, - hashes: [], - }, - }, - }; - - expect(newState.accountInfo).to.eql(expectedState.accountInfo); - }); - - it('should set hashes in payload to accountName in accountInfo', () => { - const initialState = { - accountInfo: { - foo: { - meta: { type: 'bar' }, - balance: 0, - transfers: {}, - addresses: {}, - hashes: ['baz'], - }, - }, - }; - - const action = actions.fullAccountInfoFetchSuccess({ - accountName: 'foo', - accountMeta: { type: 'bar' }, - hashes: ['baz', 'bar'], - transfers: {}, - balance: 0, - addresses: {}, - }); - - const newState = reducer(initialState, action); - const expectedState = { - accountInfo: { - foo: { - meta: { type: 'bar' }, - balance: 0, - transfers: {}, - addresses: {}, - hashes: ['baz', 'bar'], - }, - }, - }; - - expect(newState.accountInfo).to.eql(expectedState.accountInfo); - }); - - it('should reset accountInfoDuringSetup to default state', () => { - const initialState = { - accountInfoDuringSetup: { - name: 'foo', - meta: { bar: {} }, - usedExistingSeed: true, - }, - }; - - const action = actions.fullAccountInfoFetchSuccess({}); - - const newState = reducer(initialState, action); - const expectedState = { - accountInfoDuringSetup: { - name: '', - meta: {}, - usedExistingSeed: false, - }, - }; - - expect(newState.accountInfoDuringSetup).to.eql(expectedState.accountInfoDuringSetup); - }); - }); - describe('FULL_ACCOUNT_INFO_FETCH_SUCCESS', () => { it('should merge addresses in payload to accountName in accountInfo', () => { const initialState = { @@ -622,6 +471,7 @@ describe('Reducer: accounts', () => { const action = actions.fullAccountInfoFetchSuccess({ accountName: 'foo', + accountIndex: 0, accountMeta: { type: 'bar' }, addresses: { foo: {}, baz: {} }, transfers: {}, @@ -634,6 +484,7 @@ describe('Reducer: accounts', () => { accountInfo: { foo: { meta: { type: 'bar' }, + index: 0, addresses: { foo: {}, baz: {} }, transfers: {}, balance: 100, @@ -659,6 +510,7 @@ describe('Reducer: accounts', () => { const action = actions.fullAccountInfoFetchSuccess({ accountName: 'foo', + accountIndex: 0, accountMeta: { type: 'bar' }, addresses: { foo: {}, baz: {} }, transfers: { foo: { value: 0 } }, @@ -671,6 +523,7 @@ describe('Reducer: accounts', () => { accountInfo: { foo: { meta: { type: 'bar' }, + index: 0, hashes: [], addresses: { foo: {}, baz: {} }, transfers: { foo: { value: 0 }, baz: { value: 0 } }, @@ -696,6 +549,7 @@ describe('Reducer: accounts', () => { const action = actions.fullAccountInfoFetchSuccess({ accountName: 'foo', + accountIndex: 0, accountMeta: { type: 'bar' }, hashes: ['baz', 'bar'], transfers: {}, @@ -708,6 +562,7 @@ describe('Reducer: accounts', () => { accountInfo: { foo: { meta: { type: 'bar' }, + index: 0, balance: 0, transfers: {}, addresses: {}, @@ -1070,6 +925,31 @@ describe('Reducer: accounts', () => { }); }); + describe('IOTA/ACCOUNTS/ASSIGN_ACCOUNT_INDEX', () => { + it('should assign "index" to each account in accountInfo state prop', () => { + const initialState = { + accountInfo: { + foo: { addresses: { ['U'.repeat(81)]: {} }, transfers: {} }, + baz: { addresses: {}, transfers: {} }, + }, + }; + + const action = { + type: 'IOTA/ACCOUNTS/ASSIGN_ACCOUNT_INDEX', + }; + + const newState = reducer(initialState, action); + const expectedState = { + accountInfo: { + foo: { index: 0, addresses: { ['U'.repeat(81)]: {} }, transfers: {} }, + baz: { index: 1, addresses: {}, transfers: {} }, + }, + }; + + expect(newState).to.eql(expectedState); + }); + }); + [ 'IOTA/ACCOUNTS/UPDATE_ACCOUNT_INFO_AFTER_SPENDING', 'IOTA/ACCOUNTS/SYNC_ACCOUNT_BEFORE_MANUAL_PROMOTION', @@ -1083,6 +963,7 @@ describe('Reducer: accounts', () => { const initialState = { accountInfo: { dummy: { + index: 1, meta: { type: 'bar' }, balance: 0, addresses: { foo: {} }, @@ -1106,6 +987,7 @@ describe('Reducer: accounts', () => { const expectedState = { accountInfo: { dummy: { + index: 1, meta: { type: 'bar' }, balance: 0, addresses: { foo: {}, baz: {} }, @@ -1259,4 +1141,36 @@ describe('Reducer: accounts', () => { }); }); }); + + describe('#removeAccountAndReorderIndexes', () => { + describe('when accountName does not exist in accountInfo', () => { + it('should return existing accountInfo', () => { + const accountInfo = { foo: { index: 0 } }; + + expect(removeAccountAndReorderIndexes(accountInfo, 'baz')).to.eql(accountInfo); + }); + }); + + describe('when accountName exists in accountInfo', () => { + it('should remove account from accountInfo', () => { + const accountInfo = { foo: { index: 0 }, baz: { index: 1 } }; + + expect(removeAccountAndReorderIndexes(accountInfo, 'baz')).to.eql({ foo: { index: 0 } }); + }); + + it('should reorder account indexes (Fill missing indexes)', () => { + expect( + removeAccountAndReorderIndexes({ foo: { index: 0 }, baz: { index: 1 }, bar: { index: 2 } }, 'baz'), + ).to.eql({ foo: { index: 0 }, bar: { index: 1 } }); + + expect( + removeAccountAndReorderIndexes({ foo: { index: 0 }, baz: { index: 1 }, bar: { index: 2 } }, 'bar'), + ).to.eql({ foo: { index: 0 }, baz: { index: 1 } }); + + expect( + removeAccountAndReorderIndexes({ foo: { index: 0 }, baz: { index: 1 }, bar: { index: 2 } }, 'foo'), + ).to.eql({ baz: { index: 0 }, bar: { index: 1 } }); + }); + }); + }); }); diff --git a/src/shared/__tests__/selectors/accounts.spec.js b/src/shared/__tests__/selectors/accounts.spec.js index af26d783f5..95a238735a 100644 --- a/src/shared/__tests__/selectors/accounts.spec.js +++ b/src/shared/__tests__/selectors/accounts.spec.js @@ -157,8 +157,10 @@ describe('selectors: accounts', () => { }); describe('when "accountInfo" prop is defined as a nested prop under "accounts" prop in argument', () => { - it('should return value for "accountNames" prop', () => { - expect(getAccountNamesFromState({ accounts: { accountInfo: { a: {}, b: [] } } })).to.eql(['a', 'b']); + it('should return sorted account names by indes', () => { + expect( + getAccountNamesFromState({ accounts: { accountInfo: { a: { index: 1 }, b: { index: 0 } } } }), + ).to.eql(['b', 'a']); }); }); }); diff --git a/src/shared/actions/accounts.js b/src/shared/actions/accounts.js index f3d41837ed..8bdad53798 100644 --- a/src/shared/actions/accounts.js +++ b/src/shared/actions/accounts.js @@ -1,3 +1,6 @@ +import some from 'lodash/some'; +import isEmpty from 'lodash/isEmpty'; +import isNumber from 'lodash/isNumber'; import { selectedAccountStateFactory, getAccountNamesFromState, @@ -48,6 +51,7 @@ export const ActionTypes = { MARK_BUNDLE_BROADCAST_STATUS_COMPLETE: 'IOTA/ACCOUNTS/MARK_BUNDLE_BROADCAST_STATUS_COMPLETE', SYNC_ACCOUNT_BEFORE_SWEEPING: 'IOTA/ACCOUNTS/SYNC_ACCOUNT_BEFORE_SWEEPING', OVERRIDE_ACCOUNT_INFO: 'IOTA/ACCOUNTS/OVERRIDE_ACCOUNT_INFO', + ASSIGN_ACCOUNT_INDEX: 'IOTA/ACCOUNTS/ASSIGN_ACCOUNT_INDEX', }; /** @@ -401,6 +405,17 @@ export const overrideAccountInfo = (payload) => ({ payload, }); +/** + * Dispatch to (automatically) assign accountIndex to every account in state + * + * @method assignAccountIndex + * + * @returns {{type: {string} }} + */ +export const assignAccountIndex = () => ({ + type: ActionTypes.ASSIGN_ACCOUNT_INDEX, +}); + /** * Gets full account information for the first seed added to the wallet. * @@ -425,10 +440,14 @@ export const getFullAccountInfo = (seedStore, accountName) => { .then(({ node, result }) => { dispatch(changeNode(node)); - dispatch(setSeedIndex(existingAccountNames.length)); + const seedIndex = existingAccountNames.length; + + dispatch(setSeedIndex(seedIndex)); dispatch(setBasicAccountInfo({ accountName, usedExistingSeed })); + // Assign account meta result.accountMeta = getAccountInfoDuringSetup(getState()).meta; + result.accountIndex = seedIndex; dispatch(fullAccountInfoFetchSuccess(result)); }) @@ -556,3 +575,17 @@ export const cleanUpAccountState = (seedStore, accountName) => (dispatch, getSta return result; }); }; + +/** + * Assign account index to each account if not already assigned + * + * @method assignAccountIndexIfNecessary + * @param {object} accountInfo + * + * @returns {function(*)} + */ +export const assignAccountIndexIfNecessary = (accountInfo) => (dispatch) => { + if (!isEmpty(accountInfo) && some(accountInfo, ({ index }) => !isNumber(index))) { + dispatch(assignAccountIndex()); + } +}; diff --git a/src/shared/reducers/accounts.js b/src/shared/reducers/accounts.js index ea8c70f854..551b4e1de2 100644 --- a/src/shared/reducers/accounts.js +++ b/src/shared/reducers/accounts.js @@ -1,7 +1,9 @@ import get from 'lodash/get'; import has from 'lodash/has'; import isBoolean from 'lodash/isBoolean'; +import isUndefined from 'lodash/isUndefined'; import isEmpty from 'lodash/isEmpty'; +import keys from 'lodash/keys'; import some from 'lodash/some'; import map from 'lodash/map'; import mapValues from 'lodash/mapValues'; @@ -14,6 +16,30 @@ import { ActionTypes as PollingActionTypes } from '../actions/polling'; import { ActionTypes as TransfersActionTypes } from '../actions/transfers'; import { renameKeys } from '../libs/utils'; +/** + * Removes account name from account info and reorders account indexes (Fill in missing gaps) + * + * @method removeAccountAndReorderIndexes + * @param {object} accountInfo + * @param {string} accountNameToDelete + * + * @returns {object} + */ +export const removeAccountAndReorderIndexes = (accountInfo, accountNameToDelete) => { + if (!has(accountInfo, accountNameToDelete)) { + return accountInfo; + } + + const { index } = accountInfo[accountNameToDelete]; + + return mapValues( + // Remove account + omit(accountInfo, accountNameToDelete), + // Reorder (fill in missing) account indexes + (data) => ({ ...data, index: data.index > index ? data.index - 1 : data.index }), + ); +}; + /** * Stop overriding local spend status for a known address * @@ -89,6 +115,10 @@ const updateAccountInfo = (state, payload) => ({ ...state.accountInfo, [payload.accountName]: { ...get(state.accountInfo, `${payload.accountName}`), + // Set seed index + index: isUndefined(payload.accountIndex) + ? get(state.accountInfo, `${payload.accountName}.index`) + : payload.accountIndex, meta: payload.accountMeta || get(state.accountInfo, `${payload.accountName}.meta`) || { type: 'keychain' }, balance: payload.balance, addresses: mergeAddressData(get(state.accountInfo, `${payload.accountName}.addresses`), payload.addresses), @@ -214,7 +244,7 @@ const account = ( case ActionTypes.REMOVE_ACCOUNT: return { ...state, - accountInfo: omit(state.accountInfo, action.payload), + accountInfo: removeAccountAndReorderIndexes(state.accountInfo, action.payload), failedBundleHashes: omit(state.failedBundleHashes, action.payload), tasks: omit(state.tasks, action.payload), setupInfo: omit(state.setupInfo, action.payload), @@ -261,6 +291,8 @@ const account = ( accountInfo: { ...state.accountInfo, [action.payload.accountName]: { + // Preserve the account index + index: get(state.accountInfo, `${action.payload.accountName}.index`), meta: get(state.accountInfo, `${action.payload.accountName}.meta`) || { type: 'keychain' }, balance: action.payload.balance, addresses: mergeAddressData( @@ -288,6 +320,7 @@ const account = ( accountInfo: { ...state.accountInfo, [action.payload.accountName]: { + index: get(state.accountInfo, `${action.payload.accountName}.index`), meta: get(state.accountInfo, `${action.payload.accountName}.meta`) || { type: 'keychain' }, balance: action.payload.balance, addresses: setAddressData( @@ -371,6 +404,17 @@ const account = ( ), }, }; + case ActionTypes.ASSIGN_ACCOUNT_INDEX: + return { + ...state, + accountInfo: transform( + keys(state.accountInfo), + (acc, name, index) => { + acc[name] = { ...state.accountInfo[name], index }; + }, + {}, + ), + }; default: return state; } diff --git a/src/shared/selectors/accounts.js b/src/shared/selectors/accounts.js index 4a13d43831..5427e92f82 100644 --- a/src/shared/selectors/accounts.js +++ b/src/shared/selectors/accounts.js @@ -2,6 +2,8 @@ import get from 'lodash/get'; import isEmpty from 'lodash/isEmpty'; import isUndefined from 'lodash/isUndefined'; import keys from 'lodash/keys'; +import map from 'lodash/map'; +import orderBy from 'lodash/orderBy'; import findKey from 'lodash/findKey'; import pickBy from 'lodash/pickBy'; import reduce from 'lodash/reduce'; @@ -139,10 +141,14 @@ export const selectFirstAddressFromAccountFactory = (accountName) => { * @param {object} state * @returns {array} **/ -export const getAccountNamesFromState = createSelector( - getAccountsFromState, - (state) => (state.accountInfo ? Object.keys(state.accountInfo) : []), -); +export const getAccountNamesFromState = createSelector(getAccountsFromState, (state) => { + // Get [{ index, name }] for all accounts + const accountNames = map(state.accountInfo, ({ index }, name) => ({ index, name })); + + // Order them by (account) index + const getAccountName = ({ name }) => name; + return map(orderBy(accountNames, ['index']), getAccountName); +}); /** * Selects seedIndex prop from wallet reducer state object. From f54f1e9ca5f164f285cff953b836570ff6d83a93 Mon Sep 17 00:00:00 2001 From: Charlie Varley Date: Wed, 12 Dec 2018 01:38:11 +0000 Subject: [PATCH 140/141] Mobile: Fix minor bugs (#771) * Mobile: Fix global keyboard avoidance * Mobile: Remove unused method * Mobile: Reorder useExistingSeed UI * Mobile: Minor visual fixes * Mobile: Disable back swipe gesture on iOS * Mobile: Fix animation direction when entering 2fa on login * Mobile: Cleanup navigator object * Mobile: Fix navigation animations * Resolve conflicts --- .../src/ui/components/modal/Password.js | 5 +- src/desktop/src/ui/global/Idle.js | 5 +- src/mobile/package.json | 2 +- .../src/ui/components/MultiTextInput.js | 2 +- .../ui/components/SeedVaultExportComponent.js | 72 ++++++++++--------- src/mobile/src/ui/routes/entry.js | 36 +++++----- .../src/ui/views/onboarding/EnterSeed.js | 7 -- .../src/ui/views/onboarding/LanguageSetup.js | 7 -- .../src/ui/views/onboarding/NewSeedSetup.js | 5 -- .../ui/views/onboarding/OnboardingComplete.js | 7 -- .../src/ui/views/onboarding/PrivacyPolicy.js | 7 -- .../views/onboarding/SaveSeedConfirmation.js | 7 -- .../src/ui/views/onboarding/SaveYourSeed.js | 21 ------ .../src/ui/views/onboarding/SeedReentry.js | 8 --- .../src/ui/views/onboarding/SetAccountName.js | 7 -- .../src/ui/views/onboarding/SetPassword.js | 7 -- .../ui/views/onboarding/TermsAndConditions.js | 7 -- .../src/ui/views/onboarding/WalletSetup.js | 7 -- .../src/ui/views/wallet/AddNewAccount.js | 7 -- .../src/ui/views/wallet/AdvancedSettings.js | 7 -- .../ui/views/wallet/ForceChangePassword.js | 7 -- src/mobile/src/ui/views/wallet/Loading.js | 16 +---- src/mobile/src/ui/views/wallet/Login.js | 8 --- .../src/ui/views/wallet/MainSettings.js | 7 -- .../src/ui/views/wallet/SecuritySettings.js | 14 ---- .../ui/views/wallet/TwoFactorSetupAddKey.js | 7 -- .../views/wallet/TwoFactorSetupEnterToken.js | 7 -- .../src/ui/views/wallet/UseExistingSeed.js | 39 +++++----- .../views/wallet/WalletResetConfirmation.js | 7 -- .../wallet/WalletResetRequirePassword.js | 7 -- src/mobile/yarn.lock | 5 +- src/shared/locales/en/translation.json | 2 +- 32 files changed, 80 insertions(+), 279 deletions(-) diff --git a/src/desktop/src/ui/components/modal/Password.js b/src/desktop/src/ui/components/modal/Password.js index c0e7d29b52..1bfd5e01ab 100644 --- a/src/desktop/src/ui/components/modal/Password.js +++ b/src/desktop/src/ui/components/modal/Password.js @@ -188,7 +188,4 @@ const mapDispatchToProps = { generateAlert, }; -export default connect( - null, - mapDispatchToProps, -)(withI18n()(ModalPassword)); +export default connect(null, mapDispatchToProps)(withI18n()(ModalPassword)); diff --git a/src/desktop/src/ui/global/Idle.js b/src/desktop/src/ui/global/Idle.js index 80de89172a..7af3a235d7 100644 --- a/src/desktop/src/ui/global/Idle.js +++ b/src/desktop/src/ui/global/Idle.js @@ -102,7 +102,4 @@ const mapDispatchToProps = { setPassword, }; -export default connect( - mapStateToProps, - mapDispatchToProps, -)(Idle); +export default connect(mapStateToProps, mapDispatchToProps)(Idle); diff --git a/src/mobile/package.json b/src/mobile/package.json index 61a73c0fb3..cd518336d0 100644 --- a/src/mobile/package.json +++ b/src/mobile/package.json @@ -213,4 +213,4 @@ "tls": false }, "snyk": true -} +} \ No newline at end of file diff --git a/src/mobile/src/ui/components/MultiTextInput.js b/src/mobile/src/ui/components/MultiTextInput.js index 7d94dd5923..6bd9cfc834 100644 --- a/src/mobile/src/ui/components/MultiTextInput.js +++ b/src/mobile/src/ui/components/MultiTextInput.js @@ -187,7 +187,7 @@ class MultiTextInput extends Component { {selectedTab === 'amount' && (
    - - - + + + + ); diff --git a/src/mobile/src/ui/routes/entry.js b/src/mobile/src/ui/routes/entry.js index bd7f75e25d..c391c1b5b8 100644 --- a/src/mobile/src/ui/routes/entry.js +++ b/src/mobile/src/ui/routes/entry.js @@ -63,6 +63,24 @@ const onAppStart = () => { }; const renderInitialScreen = (initialScreen, state, store) => { + Navigation.setDefaultOptions({ + layout: { + backgroundColor: state.settings.theme.body.bg, + orientation: ['portrait'], + }, + topBar: { + visible: false, + drawBehind: false, + elevation: 0, + background: { + color: 'black', + }, + }, + statusBar: { + drawBehind: false, + backgroundColor: state.settings.theme.body.bg, + }, + }); Navigation.setRoot({ root: { stack: { @@ -71,24 +89,6 @@ const renderInitialScreen = (initialScreen, state, store) => { { component: { name: initialScreen, - options: { - layout: { - backgroundColor: state.settings.theme.body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, - background: { - color: state.settings.theme.body.bg, - }, - }, - statusBar: { - drawBehind: false, - backgroundColor: state.settings.theme.body.bg, - }, - }, }, }, ], diff --git a/src/mobile/src/ui/views/onboarding/EnterSeed.js b/src/mobile/src/ui/views/onboarding/EnterSeed.js index 6ce41f7456..cf643246e8 100644 --- a/src/mobile/src/ui/views/onboarding/EnterSeed.js +++ b/src/mobile/src/ui/views/onboarding/EnterSeed.js @@ -138,15 +138,8 @@ class EnterSeed extends React.Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/LanguageSetup.js b/src/mobile/src/ui/views/onboarding/LanguageSetup.js index 709a9bd23f..d65556a27e 100644 --- a/src/mobile/src/ui/views/onboarding/LanguageSetup.js +++ b/src/mobile/src/ui/views/onboarding/LanguageSetup.js @@ -95,15 +95,8 @@ class LanguageSetup extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: !acceptedTerms || !acceptedPrivacy ? bar.bg : body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/NewSeedSetup.js b/src/mobile/src/ui/views/onboarding/NewSeedSetup.js index d5b6a15b9b..1a00cf55e4 100644 --- a/src/mobile/src/ui/views/onboarding/NewSeedSetup.js +++ b/src/mobile/src/ui/views/onboarding/NewSeedSetup.js @@ -173,18 +173,13 @@ class NewSeedSetup extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], }, topBar: { - visible: false, - drawBehind: false, - elevation: 0, title: { color: body.color, }, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/OnboardingComplete.js b/src/mobile/src/ui/views/onboarding/OnboardingComplete.js index 0ca0606919..55a703f1be 100644 --- a/src/mobile/src/ui/views/onboarding/OnboardingComplete.js +++ b/src/mobile/src/ui/views/onboarding/OnboardingComplete.js @@ -80,15 +80,8 @@ class OnboardingComplete extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js index d581a52930..f84f43f96b 100644 --- a/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js +++ b/src/mobile/src/ui/views/onboarding/PrivacyPolicy.js @@ -99,15 +99,8 @@ class PrivacyPolicy extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js b/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js index a833227017..3d6196a629 100644 --- a/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js +++ b/src/mobile/src/ui/views/onboarding/SaveSeedConfirmation.js @@ -102,15 +102,8 @@ class SaveSeedConfirmation extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/SaveYourSeed.js b/src/mobile/src/ui/views/onboarding/SaveYourSeed.js index 2bcca18ee4..6f800941c7 100644 --- a/src/mobile/src/ui/views/onboarding/SaveYourSeed.js +++ b/src/mobile/src/ui/views/onboarding/SaveYourSeed.js @@ -122,15 +122,8 @@ class SaveYourSeed extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); @@ -161,15 +154,8 @@ class SaveYourSeed extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); @@ -196,15 +182,8 @@ class SaveYourSeed extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/SeedReentry.js b/src/mobile/src/ui/views/onboarding/SeedReentry.js index 902e0624a5..ac7ad73552 100644 --- a/src/mobile/src/ui/views/onboarding/SeedReentry.js +++ b/src/mobile/src/ui/views/onboarding/SeedReentry.js @@ -121,15 +121,8 @@ class SeedReentry extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); @@ -190,7 +183,6 @@ class SeedReentry extends Component { case 'qrScanner': return this.props.toggleModalActivity(modalContent, { theme, - print: () => this.print(), hideModal: () => this.props.toggleModalActivity(), onQRRead: (data) => this.onQRRead(data), }); diff --git a/src/mobile/src/ui/views/onboarding/SetAccountName.js b/src/mobile/src/ui/views/onboarding/SetAccountName.js index 01dd4b105d..aac6f917a2 100644 --- a/src/mobile/src/ui/views/onboarding/SetAccountName.js +++ b/src/mobile/src/ui/views/onboarding/SetAccountName.js @@ -178,15 +178,8 @@ export class SetAccountName extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/SetPassword.js b/src/mobile/src/ui/views/onboarding/SetPassword.js index 54d08fac55..0388eea5e7 100644 --- a/src/mobile/src/ui/views/onboarding/SetPassword.js +++ b/src/mobile/src/ui/views/onboarding/SetPassword.js @@ -157,15 +157,8 @@ class SetPassword extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/TermsAndConditions.js b/src/mobile/src/ui/views/onboarding/TermsAndConditions.js index b22db55b3c..56f5517edc 100644 --- a/src/mobile/src/ui/views/onboarding/TermsAndConditions.js +++ b/src/mobile/src/ui/views/onboarding/TermsAndConditions.js @@ -104,15 +104,8 @@ class TermsAndConditions extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: bar.bg, }, }); diff --git a/src/mobile/src/ui/views/onboarding/WalletSetup.js b/src/mobile/src/ui/views/onboarding/WalletSetup.js index 0860549d88..036fe2b4ee 100644 --- a/src/mobile/src/ui/views/onboarding/WalletSetup.js +++ b/src/mobile/src/ui/views/onboarding/WalletSetup.js @@ -108,15 +108,8 @@ class WalletSetup extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/AddNewAccount.js b/src/mobile/src/ui/views/wallet/AddNewAccount.js index bd9aee1701..3f2c72b67b 100644 --- a/src/mobile/src/ui/views/wallet/AddNewAccount.js +++ b/src/mobile/src/ui/views/wallet/AddNewAccount.js @@ -58,15 +58,8 @@ class AddNewAccount extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/AdvancedSettings.js b/src/mobile/src/ui/views/wallet/AdvancedSettings.js index 443a95728a..bba0fd9a68 100644 --- a/src/mobile/src/ui/views/wallet/AdvancedSettings.js +++ b/src/mobile/src/ui/views/wallet/AdvancedSettings.js @@ -109,15 +109,8 @@ export class AdvancedSettings extends PureComponent { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/ForceChangePassword.js b/src/mobile/src/ui/views/wallet/ForceChangePassword.js index bd3b1142e3..e123b10db4 100644 --- a/src/mobile/src/ui/views/wallet/ForceChangePassword.js +++ b/src/mobile/src/ui/views/wallet/ForceChangePassword.js @@ -175,15 +175,8 @@ class ForceChangePassword extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/Loading.js b/src/mobile/src/ui/views/wallet/Loading.js index 0cb650088b..c9309debd4 100644 --- a/src/mobile/src/ui/views/wallet/Loading.js +++ b/src/mobile/src/ui/views/wallet/Loading.js @@ -155,7 +155,7 @@ class Loading extends Component { password, deepLinkActive, } = this.props; - + this.props.setLoginRoute('login'); leaveNavigationBreadcrumb('Loading'); KeepAwake.activate(); this.animation.play(); @@ -293,15 +293,8 @@ class Loading extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); @@ -322,15 +315,8 @@ class Loading extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: bar.alt, }, }); diff --git a/src/mobile/src/ui/views/wallet/Login.js b/src/mobile/src/ui/views/wallet/Login.js index 14d0a4ccd4..ea458c52b8 100644 --- a/src/mobile/src/ui/views/wallet/Login.js +++ b/src/mobile/src/ui/views/wallet/Login.js @@ -162,7 +162,6 @@ class Login extends Component { const verified = authenticator.verifyToken(key, token); if (verified) { this.navigateToLoading(); - this.props.setLoginRoute('login'); } else { this.props.generateAlert('error', t('twoFA:wrongCode'), t('twoFA:wrongCodeExplanation')); } @@ -227,15 +226,8 @@ class Login extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: true, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/MainSettings.js b/src/mobile/src/ui/views/wallet/MainSettings.js index 908aa4ab0f..5fb3bec715 100644 --- a/src/mobile/src/ui/views/wallet/MainSettings.js +++ b/src/mobile/src/ui/views/wallet/MainSettings.js @@ -88,15 +88,8 @@ export class MainSettings extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/SecuritySettings.js b/src/mobile/src/ui/views/wallet/SecuritySettings.js index f68ecfdcd2..072551887c 100644 --- a/src/mobile/src/ui/views/wallet/SecuritySettings.js +++ b/src/mobile/src/ui/views/wallet/SecuritySettings.js @@ -50,15 +50,8 @@ class SecuritySettings extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); @@ -81,15 +74,8 @@ class SecuritySettings extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js b/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js index 19f5f442ab..930c4bde15 100644 --- a/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js +++ b/src/mobile/src/ui/views/wallet/TwoFactorSetupAddKey.js @@ -136,15 +136,8 @@ export class TwoFactorSetupAddKey extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js b/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js index 57cf171ae9..2223ef4a3c 100644 --- a/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js +++ b/src/mobile/src/ui/views/wallet/TwoFactorSetupEnterToken.js @@ -108,15 +108,8 @@ class TwoFactorSetupEnterToken extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: bar.alt, }, }); diff --git a/src/mobile/src/ui/views/wallet/UseExistingSeed.js b/src/mobile/src/ui/views/wallet/UseExistingSeed.js index e43027eb55..fbe0a800f1 100644 --- a/src/mobile/src/ui/views/wallet/UseExistingSeed.js +++ b/src/mobile/src/ui/views/wallet/UseExistingSeed.js @@ -178,15 +178,8 @@ class UseExistingSeed extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); @@ -286,6 +279,22 @@ class UseExistingSeed extends Component { {t('useExistingSeed:title')} + { + this.accountNameField = c; + }} + label={t('addAdditionalSeed:accountName')} + onChangeText={(value) => this.setState({ accountName: value })} + containerStyle={{ width: Styling.contentWidth }} + autoCapitalize="words" + maxLength={MAX_SEED_LENGTH} + autoCorrect={false} + enablesReturnKeyAutomatically + returnKeyType="done" + theme={theme} + value={accountName} + /> + { @@ -321,22 +330,6 @@ class UseExistingSeed extends Component { this.SeedVaultImport = ref; }} /> - - { - this.accountNameField = c; - }} - label={t('addAdditionalSeed:accountName')} - onChangeText={(value) => this.setState({ accountName: value })} - containerStyle={{ width: Styling.contentWidth }} - autoCapitalize="words" - maxLength={MAX_SEED_LENGTH} - autoCorrect={false} - enablesReturnKeyAutomatically - returnKeyType="done" - theme={theme} - value={accountName} - /> diff --git a/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js b/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js index 1a1791c31f..1a4afe7d68 100644 --- a/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js +++ b/src/mobile/src/ui/views/wallet/WalletResetConfirmation.js @@ -103,15 +103,8 @@ class WalletResetConfirmation extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js b/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js index df1efd50fe..ecacda5e4e 100644 --- a/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js +++ b/src/mobile/src/ui/views/wallet/WalletResetRequirePassword.js @@ -123,15 +123,8 @@ class WalletResetRequirePassword extends Component { }, layout: { backgroundColor: body.bg, - orientation: ['portrait'], - }, - topBar: { - visible: false, - drawBehind: false, - elevation: 0, }, statusBar: { - drawBehind: false, backgroundColor: body.bg, }, }); diff --git a/src/mobile/yarn.lock b/src/mobile/yarn.lock index 199dc027ab..9a69a630aa 100644 --- a/src/mobile/yarn.lock +++ b/src/mobile/yarn.lock @@ -6997,9 +6997,10 @@ react-native-markdown-renderer@^3.2.1: prop-types "^15.5.10" react-native-fit-image "^1.5.2" -"react-native-modal-translucent@https://github.com/listenzz/react-native-modal-translucent": +react-native-modal-translucent@^1.1.3: version "1.1.7" - resolved "https://github.com/listenzz/react-native-modal-translucent#87942974c2d4b1b405bd08069bcb35d8fdb19959" + resolved "https://registry.yarnpkg.com/react-native-modal-translucent/-/react-native-modal-translucent-1.1.7.tgz#ca2599c0090a7b764c1044a03a13d44e83c95edd" + integrity sha512-HMH76pMO+yg55xubjboqlr6TFWo5fHSZtyBBllDPiKcaECrd9Q/gpD/flaFRxgx3Cd8QPLiMh270SBpEDBs1fQ== react-native-modal@^7.0.1: version "7.0.1" diff --git a/src/shared/locales/en/translation.json b/src/shared/locales/en/translation.json index c1eb72b118..f34a6055dc 100644 --- a/src/shared/locales/en/translation.json +++ b/src/shared/locales/en/translation.json @@ -579,7 +579,7 @@ "syncingYourAccount": "Syncing your account." }, "useExistingSeed": { - "title": "Enter a seed and account name.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, From dfb26319130c52801dec8c086479efcf2e6cff63 Mon Sep 17 00:00:00 2001 From: iotasyncbot Date: Wed, 12 Dec 2018 10:22:27 +0800 Subject: [PATCH 141/141] New Crowdin translations [ci skip] (#769) * New translations translation.json (Croatian) * New translations translation.json (Croatian) * New translations translation.json (Croatian) * New translations translation.json (Croatian) * New translations translation.json (Arabic) * New translations translation.json (Thai) * New translations translation.json (Tamil) * New translations translation.json (Swedish) * New translations translation.json (Spanish) * New translations translation.json (Slovenian) * New translations translation.json (Slovak) * New translations translation.json (Russian) * New translations translation.json (Romanian) * New translations translation.json (Portuguese, Brazilian) * New translations translation.json (Turkish) * New translations translation.json (Urdu (Pakistan)) * New translations translation.json (Portuguese) * New translations translation.json (Bulgarian) * New translations translation.json (Japanese) * New translations translation.json (Italian) * New translations translation.json (Polish) * New translations translation.json (Serbian (Latin)) * New translations translation.json (Kannada) * New translations translation.json (Spanish, Latin America) * New translations translation.json (Vietnamese) * New translations translation.json (French) * New translations translation.json (Finnish) * New translations translation.json (Estonian) * New translations translation.json (Dutch) * New translations translation.json (Danish) * New translations translation.json (Czech) * New translations translation.json (Croatian) * New translations translation.json (Chinese Traditional) * New translations translation.json (Chinese Simplified) * New translations translation.json (Georgian) * New translations translation.json (German) * New translations translation.json (Persian) * New translations translation.json (Norwegian) * New translations translation.json (Lithuanian) * New translations translation.json (Latvian) * New translations translation.json (Korean) * New translations translation.json (Indonesian) * New translations translation.json (Hungarian) * New translations translation.json (Hindi) * New translations translation.json (Hebrew) * New translations translation.json (Greek) * New translations translation.json (Polish) * New translations translation.json (Arabic) * New translations translation.json (Thai) * New translations translation.json (Tamil) * New translations translation.json (Swedish) * New translations translation.json (Spanish) * New translations translation.json (Slovenian) * New translations translation.json (Slovak) * New translations translation.json (Russian) * New translations translation.json (Romanian) * New translations translation.json (Portuguese, Brazilian) * New translations translation.json (Turkish) * New translations translation.json (Urdu (Pakistan)) * New translations translation.json (Portuguese) * New translations translation.json (Bulgarian) * New translations translation.json (Japanese) * New translations translation.json (Italian) * New translations translation.json (Polish) * New translations translation.json (Serbian (Latin)) * New translations translation.json (Kannada) * New translations translation.json (Spanish, Latin America) * New translations translation.json (Vietnamese) * New translations translation.json (French) * New translations translation.json (Finnish) * New translations translation.json (Estonian) * New translations translation.json (Dutch) * New translations translation.json (Danish) * New translations translation.json (Czech) * New translations translation.json (Croatian) * New translations translation.json (Chinese Traditional) * New translations translation.json (Chinese Simplified) * New translations translation.json (Georgian) * New translations translation.json (German) * New translations translation.json (Persian) * New translations translation.json (Norwegian) * New translations translation.json (Lithuanian) * New translations translation.json (Latvian) * New translations translation.json (Korean) * New translations translation.json (Indonesian) * New translations translation.json (Hungarian) * New translations translation.json (Hindi) * New translations translation.json (Hebrew) * New translations translation.json (Greek) * New translations translation.json (Japanese) * New translations translation.json (Japanese) * New translations translation.json (Japanese) * New translations translation.json (Japanese) * New translations translation.json (Japanese) * New translations translation.json (Japanese) * New translations translation.json (Japanese) * New translations translation.json (Polish) * New translations translation.json (Arabic) * New translations translation.json (Thai) * New translations translation.json (Tamil) * New translations translation.json (Swedish) * New translations translation.json (Spanish) * New translations translation.json (Slovenian) * New translations translation.json (Slovak) * New translations translation.json (Russian) * New translations translation.json (Romanian) * New translations translation.json (Portuguese, Brazilian) * New translations translation.json (Turkish) * New translations translation.json (Urdu (Pakistan)) * New translations translation.json (Portuguese) * New translations translation.json (Bulgarian) * New translations translation.json (Japanese) * New translations translation.json (Italian) * New translations translation.json (Polish) * New translations translation.json (Serbian (Latin)) * New translations translation.json (Kannada) * New translations translation.json (Spanish, Latin America) * New translations translation.json (Vietnamese) * New translations translation.json (French) * New translations translation.json (Finnish) * New translations translation.json (Estonian) * New translations translation.json (Dutch) * New translations translation.json (Danish) * New translations translation.json (Czech) * New translations translation.json (Croatian) * New translations translation.json (Chinese Traditional) * New translations translation.json (Chinese Simplified) * New translations translation.json (Georgian) * New translations translation.json (German) * New translations translation.json (Persian) * New translations translation.json (Norwegian) * New translations translation.json (Lithuanian) * New translations translation.json (Latvian) * New translations translation.json (Korean) * New translations translation.json (Indonesian) * New translations translation.json (Hungarian) * New translations translation.json (Hindi) * New translations translation.json (Hebrew) * New translations translation.json (Greek) --- src/shared/locales/ar/translation.json | 11 ++-- src/shared/locales/bg/translation.json | 11 ++-- src/shared/locales/cs/translation.json | 11 ++-- src/shared/locales/da/translation.json | 11 ++-- src/shared/locales/de/translation.json | 11 ++-- src/shared/locales/el/translation.json | 11 ++-- src/shared/locales/es-ES/translation.json | 11 ++-- src/shared/locales/es-LA/translation.json | 11 ++-- src/shared/locales/et/translation.json | 11 ++-- src/shared/locales/fa/translation.json | 11 ++-- src/shared/locales/fi/translation.json | 11 ++-- src/shared/locales/fr/translation.json | 11 ++-- src/shared/locales/he/translation.json | 11 ++-- src/shared/locales/hi/translation.json | 11 ++-- src/shared/locales/hr/translation.json | 61 +++++++++--------- src/shared/locales/hu/translation.json | 11 ++-- src/shared/locales/id/translation.json | 11 ++-- src/shared/locales/it/translation.json | 11 ++-- src/shared/locales/ja/translation.json | 77 ++++++++++++----------- src/shared/locales/ka/translation.json | 11 ++-- src/shared/locales/kn/translation.json | 11 ++-- src/shared/locales/ko/translation.json | 11 ++-- src/shared/locales/lt/translation.json | 11 ++-- src/shared/locales/lv/translation.json | 11 ++-- src/shared/locales/nl/translation.json | 11 ++-- src/shared/locales/no/translation.json | 11 ++-- src/shared/locales/pl/translation.json | 11 ++-- src/shared/locales/pt-BR/translation.json | 11 ++-- src/shared/locales/pt-PT/translation.json | 11 ++-- src/shared/locales/ro/translation.json | 11 ++-- src/shared/locales/ru/translation.json | 11 ++-- src/shared/locales/sk/translation.json | 11 ++-- src/shared/locales/sl/translation.json | 11 ++-- src/shared/locales/sr/translation.json | 11 ++-- src/shared/locales/sv-SE/translation.json | 11 ++-- src/shared/locales/ta/translation.json | 11 ++-- src/shared/locales/th/translation.json | 11 ++-- src/shared/locales/tr/translation.json | 11 ++-- src/shared/locales/ur/translation.json | 11 ++-- src/shared/locales/vi/translation.json | 11 ++-- src/shared/locales/zh-CN/translation.json | 11 ++-- src/shared/locales/zh-TW/translation.json | 11 ++-- 42 files changed, 310 insertions(+), 268 deletions(-) diff --git a/src/shared/locales/ar/translation.json b/src/shared/locales/ar/translation.json index 3dc9c1e87a..9b56dcf59a 100644 --- a/src/shared/locales/ar/translation.json +++ b/src/shared/locales/ar/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "أوتورياتاتشينج إلى تشابك", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "لا توجد عناوين", "spent": "اُنفق", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "علامة", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "جاري مزامنة حسابك." }, "useExistingSeed": { - "title": "أدخل سييد واسم حساب.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/bg/translation.json b/src/shared/locales/bg/translation.json index 3536ba5fb8..245d044153 100644 --- a/src/shared/locales/bg/translation.json +++ b/src/shared/locales/bg/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed contains invalid characters", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NO ADDRESSES", "spent": "Spent", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Tag", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Syncing your account." }, "useExistingSeed": { - "title": "Enter a seed and account name.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/cs/translation.json b/src/shared/locales/cs/translation.json index 4a31dd4049..8b93976989 100644 --- a/src/shared/locales/cs/translation.json +++ b/src/shared/locales/cs/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "Nová aktualizace je k dispozici", "shouldUpdateExplanation": "Byla vydána nová aktualizace. Doporučujeme aktualizovat na nejnovější verzi.", "forceUpdate": "Chcete-li pokračovat, aktualizujte aplikaci", - "forceUpdateExplanation": "Byla vydána kritická aktualizace. Aktualizujte aplikaci nyní." + "forceUpdateExplanation": "Byla vydána kritická aktualizace. Aktualizujte aplikaci nyní.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed obsahuje neplatné znaky", @@ -290,8 +292,6 @@ "generateNewAddress": "Vygenerovat adresu", "noAddresses": "ŽÁDNÉ ADRESY", "spent": "Utraceno", - "missingPermission": "Požadovaný přístup k souborovému systému", - "missingPermissionExplanation": "Aby bylo možné sdílet QR kódy, musí být povolen přístup do souborového systému.", "tag": "Značka", "generateAnAddress": "Vygenerovat adresu", "generateAnAddressTitle": "Vygenerovat adresu", @@ -548,7 +548,7 @@ "syncingYourAccount": "Synchronizuji Váš účet." }, "useExistingSeed": { - "title": "Zadejte Seed a název účtu.", + "title": "Enter an account name and seed", "incorrectFormat": "Nesprávný formát Seedu", "validSeedExplanation": "Platný Seed má 81 znaků a obsahuje pouze A-Z nebo 9." }, @@ -687,7 +687,8 @@ "transition": "Aktualizace", "transitioning": "Aktualizace údajů po Snapshotu.", "generatingAndDetecting": "Generuji adresy a zjišťuji zůstatek.", - "attaching": "Připojuji adresy do sítě Tangle." + "attaching": "Připojuji adresy do sítě Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Automatické vyplňování úspěšné", diff --git a/src/shared/locales/da/translation.json b/src/shared/locales/da/translation.json index 85a090e1b2..31d196c246 100644 --- a/src/shared/locales/da/translation.json +++ b/src/shared/locales/da/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "Ny opdateringer er tilgængelig", "shouldUpdateExplanation": "En ny opdatering er frigivet. Det anbefales at opdatere til den seneste version.", "forceUpdate": "Opdatér app'en for at fortsætte", - "forceUpdateExplanation": "En kritisk opdatering er frigivet. Opdatér venligst app'en nu." + "forceUpdateExplanation": "En kritisk opdatering er frigivet. Opdatér venligst app'en nu.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Hovednøglen indeholder ugyldige tegn", @@ -290,8 +292,6 @@ "generateNewAddress": "Generér adresse", "noAddresses": "INGEN ADRESSER", "spent": "Brugt", - "missingPermission": "Filsystemrettighed kræves", - "missingPermissionExplanation": "Adgang til filsystemet er nødvendig for at dele QR-koder.", "tag": "Tag", "generateAnAddress": "Generér adresse", "generateAnAddressTitle": "Generér en adresse", @@ -548,7 +548,7 @@ "syncingYourAccount": "Synkroniserer din konto." }, "useExistingSeed": { - "title": "Angiv en hovednøgle og et kontonavn.", + "title": "Enter an account name and seed", "incorrectFormat": "Forkert hovednøgleformat", "validSeedExplanation": "Gyldige hovednøgler skal være på 81 tegn og må kun indeholde A-Z eller 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Synkronisere til nyeste snapshot.", "generatingAndDetecting": "Genererer adresser og registrerer saldo.", - "attaching": "Knytter adresse til Tangle." + "attaching": "Knytter adresse til Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autoudfyldning fuldendt", diff --git a/src/shared/locales/de/translation.json b/src/shared/locales/de/translation.json index c10f8a5bfc..f6a713f6fa 100644 --- a/src/shared/locales/de/translation.json +++ b/src/shared/locales/de/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "Ein neues Update ist verfügbar", "shouldUpdateExplanation": "Ein neues Update wurde veröffentlicht. Es wird empfohlen, dass du die neueste Version installierst.", "forceUpdate": "Aktualisiere Trinity um fortzufahren", - "forceUpdateExplanation": "Ein kritisches Update wurde veröffentlicht. Bitte aktualisiere Trinity jetzt." + "forceUpdateExplanation": "Ein kritisches Update wurde veröffentlicht. Bitte aktualisiere Trinity jetzt.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed enthält ungültige Zeichen", @@ -290,8 +292,6 @@ "generateNewAddress": "Neue Adresse generieren", "noAddresses": "KEINE ADRESSEN", "spent": "Ausgegeben", - "missingPermission": "Berechtigung für Dateisystem erforderlich", - "missingPermissionExplanation": "Um QR-Codes teilen zu konenn, muss der Zugriff auf das Dateisystem erlaubt werden.", "tag": "Tag", "generateAnAddress": "Neue Adresse generieren", "generateAnAddressTitle": "Eine neue Adresse generieren", @@ -548,7 +548,7 @@ "syncingYourAccount": "Konto wird synchronisiert." }, "useExistingSeed": { - "title": "Gib einen Seed und einen Kontonamen ein.", + "title": "Enter an account name and seed", "incorrectFormat": "Ungültiges Format", "validSeedExplanation": "'Ein gültiger Seed sollte aus 81 Zeichen bestehen und die Buchstaben A-Z, sowie die Zahl 9 enthalten.'." }, @@ -687,7 +687,8 @@ "transition": "Wiederherstellen", "transitioning": "Daten werden wiederhergestellt.", "generatingAndDetecting": "Adressen werden generiert und Kontostand wird erkannt.", - "attaching": "Adressen werden dem Tangle angehängt." + "attaching": "Adressen werden dem Tangle angehängt.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Automatisches ausfüllen erfolgreich", diff --git a/src/shared/locales/el/translation.json b/src/shared/locales/el/translation.json index cfc7925285..9cf1b27c8c 100644 --- a/src/shared/locales/el/translation.json +++ b/src/shared/locales/el/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Το seed σας περιέχει μη έγκυρους χαρακτήρες", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "Καμία διαθέσιμη διεύθυνση ", "spent": "Δαπανήθηκαν", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Ετικέτα", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Ο λογαριασμός σας συντονίζεται." }, "useExistingSeed": { - "title": "Εισάγετε έναν σπόρο και όνομα λογαριασμού.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/es-ES/translation.json b/src/shared/locales/es-ES/translation.json index 0824a90a8b..e30843f98d 100644 --- a/src/shared/locales/es-ES/translation.json +++ b/src/shared/locales/es-ES/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "Hay una nueva actualización disponible", "shouldUpdateExplanation": "Hay una nueva actualización disponible. Siempre es recomendado actualizar a la ultima version.", "forceUpdate": "Actualice la aplicacion para continuar", - "forceUpdateExplanation": "Una actualización crítica esta disponible. Por favor actualice inmediatamente." + "forceUpdateExplanation": "Una actualización crítica esta disponible. Por favor actualice inmediatamente.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "La semilla contiene caracteres inválidos", @@ -290,8 +292,6 @@ "generateNewAddress": "Generar dirección", "noAddresses": "SIN DIRECCIONES", "spent": "Gastado", - "missingPermission": "Permisos de sistema requeridos", - "missingPermissionExplanation": "El acceso a los archivos del sistema son requeridos para compartir los códigos QR.", "tag": "Etiqueta", "generateAnAddress": "Generar dirección", "generateAnAddressTitle": "Generar una dirección", @@ -548,7 +548,7 @@ "syncingYourAccount": "Sincronizando su cuenta." }, "useExistingSeed": { - "title": "Introduzca una semilla y un nombre de cuenta.", + "title": "Enter an account name and seed", "incorrectFormat": "Formato incorrecto de semilla", "validSeedExplanation": "Semillas válidas deben tener 81 caracteres y solo contener A-Z o 9." }, @@ -687,7 +687,8 @@ "transition": "Transición", "transitioning": "Transicionando para el snapshot.", "generatingAndDetecting": "Generando direcciones y detectando balances.", - "attaching": "Vinculando direcciones en el Tangle." + "attaching": "Vinculando direcciones en el Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autocompletado exitoso", diff --git a/src/shared/locales/es-LA/translation.json b/src/shared/locales/es-LA/translation.json index 41068afb36..123984b3bd 100644 --- a/src/shared/locales/es-LA/translation.json +++ b/src/shared/locales/es-LA/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "La semilla contiene caracteres inválidos", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "SIN DIRECCIONES", "spent": "Usada", - "missingPermission": "Permisos de sistema requeridos", - "missingPermissionExplanation": "El acceso a los archivos del sistema son requeridos para compartir los códigos QR.", "tag": "Etiqueta", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Sincronizando tu cuenta." }, "useExistingSeed": { - "title": "Introduce una semilla y un nombre de cuenta.", + "title": "Enter an account name and seed", "incorrectFormat": "Formato incorrecto de semilla", "validSeedExplanation": "'Valid seeds should be 81 characters and contain only A-Z or 9.'" }, @@ -687,7 +687,8 @@ "transition": "TRANSICIÓN", "transitioning": "Transicionando para el snapshot.", "generatingAndDetecting": "Generando direcciones y leyendo el balance.", - "attaching": "Vinculando direcciones con la Tangle" + "attaching": "Vinculando direcciones con la Tangle", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Auto completado exitoso", diff --git a/src/shared/locales/et/translation.json b/src/shared/locales/et/translation.json index bd0f131015..7f619c0d8b 100644 --- a/src/shared/locales/et/translation.json +++ b/src/shared/locales/et/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seeme sisaldab sobimatuid tähemärke", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "AADRESSE POLE", "spent": "Kulutatud", - "missingPermission": "Failisüsteemi luba on nõutud", - "missingPermissionExplanation": "QR-koodide jagamiseks on vaja failisüsteemi luba.", "tag": "Silt", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Sünkroniseerin teie kontot." }, "useExistingSeed": { - "title": "Sisesta seeme ja konto nimi.", + "title": "Enter an account name and seed", "incorrectFormat": "Vale seemne vorming", "validSeedExplanation": "Kehtivad seemned peaksid olema 81 tähemärki pikad ja sisaldama ainult A-Z või 9." }, @@ -687,7 +687,8 @@ "transition": "Üleminek", "transitioning": "Hetkvõtte üleminek.", "generatingAndDetecting": "Aadresside genereerimine ja kontojäägi tuvastamine.", - "attaching": "Aadresside kinnitamine Tangle võrgustikku." + "attaching": "Aadresside kinnitamine Tangle võrgustikku.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Automaatne täitmine õnnestus", diff --git a/src/shared/locales/fa/translation.json b/src/shared/locales/fa/translation.json index 1c62ff6c5b..54cdb1a5ac 100644 --- a/src/shared/locales/fa/translation.json +++ b/src/shared/locales/fa/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "سید ورودی دارای کاراکترهای نامعتبر است", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "بدون آدرس", "spent": "از قبل ساخته شده", - "missingPermission": "نیاز به مجوز سیستم فایل است", - "missingPermissionExplanation": "برای به اشتراک گذاشتن کدهای QR، دسترسی به سیستم فایل لازم است.", "tag": "برچسب", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "همگام سازی حساب شما." }, "useExistingSeed": { - "title": "سید و نام حساب را وارد کنید.", + "title": "Enter an account name and seed", "incorrectFormat": "قالب سید اشتباه است", "validSeedExplanation": "سید های معتبر باید 81 کاراکتر باشد و فقط شامل حروف A-Z یا عدد تا 9 باشد." }, @@ -687,7 +687,8 @@ "transition": "انتقال", "transitioning": "انتقال برای عکس فوری.", "generatingAndDetecting": "تولید آدرس ها و شناسایی موجودی.", - "attaching": "پیوستن آدرس ها به Tangle." + "attaching": "پیوستن آدرس ها به Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "موفقیت در تکمبل خودکار", diff --git a/src/shared/locales/fi/translation.json b/src/shared/locales/fi/translation.json index 31d38bdf32..6101c763e1 100644 --- a/src/shared/locales/fi/translation.json +++ b/src/shared/locales/fi/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed-luku sisältää virheellisiä merkkejä", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "EI OSOITTEITA", "spent": "Käytetty", - "missingPermission": "Tiedostojärjestelmän kirjoitusoikeudet tarvitaan", - "missingPermissionExplanation": "Tiedostojärjestelmän kirjoitusoikeudet tarvitaan, jotta voit jakaa QR-koodeja.", "tag": "Tunniste", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Synkronoidaan tiliä." }, "useExistingSeed": { - "title": "Anna seed-luku ja tilin nimi.", + "title": "Enter an account name and seed", "incorrectFormat": "Seed-luku on virheellinen", "validSeedExplanation": "Hyväksytyn seed-luvun on oltava 81 merkkiä pitkä ja sisältää ainoastaan merkkejä A-Z tai 9." }, @@ -687,7 +687,8 @@ "transition": "Siirtymä", "transitioning": "Siirrytään uuteen snapshot -versioon.", "generatingAndDetecting": "Luodaan osoitteita ja haetaan saldoa.", - "attaching": "Yhdistetään osoitteita Tangle-verkkoon." + "attaching": "Yhdistetään osoitteita Tangle-verkkoon.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Tiedot haettu onnistuneesti", diff --git a/src/shared/locales/fr/translation.json b/src/shared/locales/fr/translation.json index 8c70cae370..574deea104 100644 --- a/src/shared/locales/fr/translation.json +++ b/src/shared/locales/fr/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "Une mise à jour est disponible", "shouldUpdateExplanation": "Une nouvelle mise à jour a été publiée. Il est recommandé que vous mettiez à jour vers la dernière version.", "forceUpdate": "Mettez à jour l'application pour continuer", - "forceUpdateExplanation": "Une mise à jour critique est disponible. S’il vous plaît, mettez à jour l’application maintenant." + "forceUpdateExplanation": "Une mise à jour critique est disponible. S’il vous plaît, mettez à jour l’application maintenant.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "La seed contient des caractères invalides", @@ -290,8 +292,6 @@ "generateNewAddress": "Générer une nouvelle adresse", "noAddresses": "AUCUNE ADRESSE", "spent": "Envoyé", - "missingPermission": "Autorisation de système de fichiers requise", - "missingPermissionExplanation": "L'accès au système de fichiers est nécessaire afin de partager les codes QR.", "tag": "Étiquette", "generateAnAddress": "Générer une nouvelle adresse", "generateAnAddressTitle": "Générer une nouvelle adresse", @@ -548,7 +548,7 @@ "syncingYourAccount": "Synchronisation de votre compte." }, "useExistingSeed": { - "title": "Saisissez une seed et un nom de compte.", + "title": "Enter an account name and seed", "incorrectFormat": "Format de seed incorrect", "validSeedExplanation": "Les seeds valides doivent être composées de 81 caractères et contenir uniquement A-Z ou 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "En cours de transition pour le snapshot.", "generatingAndDetecting": "Génération des adresses et détection du solde.", - "attaching": "Attachement des adresses au Tangle." + "attaching": "Attachement des adresses au Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Succès du remplissage automatique", diff --git a/src/shared/locales/he/translation.json b/src/shared/locales/he/translation.json index dfd14075a1..a6766d54de 100644 --- a/src/shared/locales/he/translation.json +++ b/src/shared/locales/he/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "הסיד מכיל תווים לא חוקיים", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NO ADDRESSES", "spent": "Spent", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "תג", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "מסנכרן את החשבון שלך." }, "useExistingSeed": { - "title": "הכנס סיד ושם חשבון.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/hi/translation.json b/src/shared/locales/hi/translation.json index 8d92f855ce..275f17725d 100644 --- a/src/shared/locales/hi/translation.json +++ b/src/shared/locales/hi/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "सीड में अवैध वर्ण हैं।", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "कोई पता नहीं", "spent": "खर्च", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "टैग", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "अपना खाता सिंक्रनाइज़ कर रहा है ।" }, "useExistingSeed": { - "title": "सीड और खाता नाम दर्ज करें ।", + "title": "Enter an account name and seed", "incorrectFormat": "सीड का फॉर्मेट सही नहीं है", "validSeedExplanation": "वैध सीड 81 वर्ण होना चाहिए और केवल A-Z या 9 होते हैं ।" }, @@ -687,7 +687,8 @@ "transition": "ट्रांजीशन", "transitioning": "स्नैपशॉट के लिए स्नैपशॉट ।", "generatingAndDetecting": "बैलेंस चेक करने के साथ नया एड्रेस गेनेराते हो रहा है |", - "attaching": "एड्रेस को टैंगल से अटैच कर रहे है" + "attaching": "एड्रेस को टैंगल से अटैच कर रहे है", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "ऑटो फील सफल", diff --git a/src/shared/locales/hr/translation.json b/src/shared/locales/hr/translation.json index 8634634c69..651a8e5928 100644 --- a/src/shared/locales/hr/translation.json +++ b/src/shared/locales/hr/translation.json @@ -6,9 +6,9 @@ "noTransactions": "NEMA NEDAVNE POVIJESTI", "refresh": "Osvježi", "balanceError": "Nedostatak sredstva", - "balanceErrorMessage": "Nemate dovoljno IOTA kako biste nastavili s prijenosom.", + "balanceErrorMessage": "Nemate dovoljno sredstava da bi izvršili ovu transakciju.", "totalBalance": "Ukupno stanje", - "transferError": "Pogreška prilikom prijenosa", + "transferError": "Greška prilikom slanja transakcije", "transferErrorMessage": "Greška prilikom slanja transakcije. Molimo pokušajte ponovno.", "transferSent": "Prijenos izvršen", "transferSentMessage": "Vaša transakcija je poslana na Tangle.", @@ -119,7 +119,7 @@ "nodeDuplicatedExplanation": "Prilagođeni node se već nalazi na listi.", "nodeAutoChanged": "Node automatski promijenjen", "nodeAutoChangedExplanation": "Promijenjeno na novi node {{- nodeAddress}} pošto je trenutno odabrani offline.", - "fingerprintOnSend": "Dodirnite čitač otiska prstiju kako bi odobrili transfer", + "fingerprintOnSend": "Dodirnite čitač otiska prstiju kako bi odobrili transakciju", "masterKey": "Vaš IOTA seed je master ključ za vaša sredstva.", "seedThief": "Ako netko drugi ima vaš seed, on može ukrasti vaše IOTA tokene.", "googlePlayServicesNotAvailable": "Google Play usluga nije dostupna", @@ -139,7 +139,7 @@ "headToAdvancedSettingsForTransition": "Otvorite Napredne Postavke i izvršite Snapshot tranziciju.", "usingTrinityWalletWithKeePass": "Korištenje Trinity novčanika s Keepass2Android", "signedTrytesBroadcastErrorExplanation": "Došlo je do greške u vezi prilikom emitiranja vaše transakcije.", - "broadcastError": "Nije bilo moguće emitirati transfer", + "broadcastError": "Nije bilo moguće emitirati transakciju", "addressesAlreadySpentFrom": "Jedna ili više adresa je već upotrijebljeno.", "problemSendingYourTransaction": "Došlo je do greške prilikom slanja vaše transakcije.", "problemPerformingProofOfWork": "Došlo je do greške prilikom izvođenja PoW-a.", @@ -155,7 +155,9 @@ "shouldUpdate": "Dostupno je novo ažuriranje", "shouldUpdateExplanation": "Dostupna je nova verzija aplikacije. Preporučuje se ažuriranje aplikacije na najnoviju verziju.", "forceUpdate": "Ažurirajte aplikaciju kako bi mogli nastaviti dalje", - "forceUpdateExplanation": "Kritično ažuriranje je dostupno. Molimo ažurirajte aplikaciju." + "forceUpdateExplanation": "Kritično ažuriranje je dostupno. Molimo ažurirajte aplikaciju.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed sadrži nedopuštene znakove", @@ -290,8 +292,6 @@ "generateNewAddress": "Generiraj adresu", "noAddresses": "NEMA ADRESA", "spent": "Upotrijebljeno", - "missingPermission": "Potreban pristup datotečnom sustavu", - "missingPermissionExplanation": "Potreban je pristup datotečnom sustavu da bi se QR kod mogao podijeliti.", "tag": "Etiketa", "generateAnAddress": "Generiraj adresu", "generateAnAddressTitle": "Generiraj adresu", @@ -310,7 +310,7 @@ "youCanHighlightCharacters": "Možete označiti 9 znakova odjednom", "printBlankWallet": "Ispišite prazni novčanik", "whatIsAChecksum": "Što je kontrolni zbroj?", - "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", + "everySeedHasAChecksum": "Svaki seed ima pripadajući kontrolni zbroj od 3 znaka.", "iHavesavedMySeed": "Svoj seed imam spremljen", "checksumExplanation": "Svaki put kada dodajete seed u svoj novčanik, pobrinite se da je kontrolni zbroj generiran od strane novčanika isti kao onaj koji ste zapisali.", "mustSaveYourSeed": "<0><0>Morate napraviti sigurnosnu kopiju seed-a koristeći <1>barem jednu<2> od niže navedenih opcija." @@ -333,7 +333,7 @@ "invalidAddressExplanation3": "Adresa sadrži neispravan kontrolni zbroj.", "invalidAddressExplanationGeneric": "Ispravne adrese morale bi sadržavati 90 znakova i to samo znakove A-Z ili broj 9.", "notEnoughFunds": "Nedovoljno sredstava na računu", - "notEnoughFundsExplanation": "Nemate dovoljno IOTA kako biste nastavili s prijenosom.", + "notEnoughFundsExplanation": "Nemate dovoljno sredstava da bi izvršili ovu transakciju.", "recipientAddress": "Adresa primatelja", "amount": "Iznos", "max": "MAKSIMALNO", @@ -352,7 +352,7 @@ "addressPasteDetected": "Detektirana kopija adrese u međuspremniku", "addressPasteExplanation": "Izgleda da ste zalijepili adresu. Provjerite da li je adresa istovjetna onoj na koju želite poslati.", "invalid": "NEISPRAVNO", - "swipeToSend": "Swipe to send" + "swipeToSend": "Kliznite po ekranu za slanje" }, "setSeedName": { "letsAddName": "Dodajte naziv", @@ -454,7 +454,7 @@ "retrying": "Ponovni pokušaj u tijeku", "yesterday": "Jučer", "promotingAnotherBundle": "Promocija drugog paketa", - "pleaseWait": "Please wait, Trinity is promoting another bundle." + "pleaseWait": "Molimo pričekajte. Promocija drugog paketa je trenutno u tijeku." }, "accountManagement": { "viewSeed": "Prikaži seed", @@ -513,20 +513,20 @@ }, "logoutConfirmationModal": { "logoutConfirmation": "Da li ste sigurni da se želite odjaviti?", - "aboutToLogOut": "You are about to log out", - "areYouSure": "Are you sure?" + "aboutToLogOut": "Ovom radnjom ćete se odjaviti", + "areYouSure": "Jeste li sigurni da se želite odjaviti?" }, "qrScanner": { "scan": "Skeniraj QR kod" }, "unitInfoModal": { - "unitSystem": "Unit System", + "unitSystem": "Sustav jedinica", "trillion": "Trilijun", "billion": "Milijarda", "million": "Milijun", "thousand": "Tisuću", "one": "Jedna", - "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." + "unitInfoExplanation": "IOTA se obično kupuje u jedinicama od 1Mi (jedne Miota-e odnosno jedan milijun iota-e), no može se slati koristeći najmanju jedinicu od 1i (jedne iota-e)." }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "Zašto ne mogu potrošiti cijeli iznos?", @@ -548,7 +548,7 @@ "syncingYourAccount": "Sinkroniziranje računa u tijeku." }, "useExistingSeed": { - "title": "Unesite seed i naziv računa.", + "title": "Enter an account name and seed", "incorrectFormat": "Neispravan format seed-a", "validSeedExplanation": "Valjani seed bi se trebao sastojati od 81 znaka i sadržavati samo velika slova A-Z ili broj 9." }, @@ -562,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "Da li ste napravili sigurnosnu kopiju vašeg seed-a?", - "iHaveBackedUp": "I have safely backed up my seed", - "reenterSeed": "At the next step you need to re-enter your seed.", + "iHaveBackedUp": "Napravio sam sigurnosnu kopiju svojeg seed-a", + "reenterSeed": "U sljedećem koraku morat ćete ponovno unijeti svoj seed.", "reenterSeedWarning": "Ako niste napravili sigurnosnu kopiju svog seed-a, a vaš uređaj se pokvari, izgubit ćete svu svoju IOTA-u.", "pleaseConfirm": "Molimo potvrdite da ste spremili svoj seed na sigurno." }, @@ -583,19 +583,19 @@ "status": "Stanje", "fingerprintUnavailable": "Biometrijska autorizacija nedostupna", "fingerprintUnavailableExplanation": "Vaš uređaj ne podržava biometrijsku autorizaciju ili ista nije konfigurirana u postavkama uređaja.", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", + "buttonInstructionsDisable": "Pritisnite donji gumb kako bi onemogućili autorizaciju putem otiska prsta", "buttonInstructionsEnable": "Pritisnite donji gumb kako bi omogućili autorizaciju putem otiska prsta.", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", + "buttonInstructionsDisableIPhoneX": "Pritisnite donji gumb kako bi onemogućili Face ID", + "buttonInstructionsEnableIPhoneX": "Pritisnite donji gumb kako bi omogućili Face ID", "instructionsLogin": "Dodirnite čitač otiska prstiju za prijavu" }, "transferConfirmation": { "youAreAbout": "Poslat ćete {{contents}} na adresu", "aMessage": "poruka", - "fromAccount": "From {{selectedAccountName}}", - "toAddress": "To address", - "sendingAMessage": "Sending a message", - "sendingAnEmptyMessage": "Sending an empty message" + "fromAccount": "S {{selectedAccountName}}", + "toAddress": "Na adresu", + "sendingAMessage": "Šaljem poruku", + "sendingAnEmptyMessage": "Šaljem praznu poruku" }, "twoFA": { "wrongCode": "Pogrešan kod", @@ -616,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "Izvezi SeedVault", - "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "SeedVault je kodirana datoteka namijenjena spremanju vašeg seed-a na siguran način. Seed je kodiran i zaštićen lozinkom, te mu se ne može pristupiti bez te lozinke.", "seedVaultWarning": "Pobrinite se da napravite sigurnosne kopije datoteke, te ih pohranite na više mjesta (npr. hard disk, oblak, USB). Ako izgubite ovu datoteku, a niste pohranili svoj seed na nekom drugom mjestu, izgubit ćete svoje IOTA-e.", "exportFail": "Izvoz SeedVault-a neuspješan", "exportFailExplanation": "Došlo je do greške prilikom izvoza SeedVault-a. Molimo provjerite da li imate sva potrebna ovlaštenja i dovoljno slobodnog prostora na disku.", @@ -637,8 +637,8 @@ "noSeedFoundExplanation": "SeedVault je prazan ili sadrži seed u neispravnom formatu.", "seedFileError": "Neuspješno otvaranje SeedVault-a", "seedFileErrorExplanation": "Došlo je do greške prilikom otvaranja SeedVault-a. Ako ste odabrali ispravnu datoteku moguće je da je oštećena.", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", - "retypeKey": "Retype key" + "seedVaultKeyExplanation": "Prvo trebamo osigurati vaš SeedVault. Molimo odaberite lozinku za enkripciju vaše SeedVault datoteke. Ova lozinka bit će potrebna za ponovni pristup sigurnosnoj kopiji vašeg seed-a koja se nalazi u SeedVault-u.", + "retypeKey": "Ponovno unesite lozinku" }, "chart": { "mcap": "MCAP", @@ -673,7 +673,7 @@ "gettingTransactionsToApprove": "Dohvat transakcija za odobriti", "proofOfWork": "Završetak PoW-a", "broadcasting": "Emitiranje", - "transferComplete": "Transfer complete" + "transferComplete": "Transakcija dovršena" }, "snapshotTransition": { "cannotCompleteTransition": "Nije bilo moguće izvršiti snapshot tranziciju", @@ -687,7 +687,8 @@ "transition": "Tranzicija", "transitioning": "Tranzicija snapshot-a u tijeku.", "generatingAndDetecting": "Generiranje adresa i detektiranje salda.", - "attaching": "Pridodavanje adresa na Tangle." + "attaching": "Pridodavanje adresa na Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Uspješno automatsko popunjavanje", diff --git a/src/shared/locales/hu/translation.json b/src/shared/locales/hu/translation.json index 14f5c316c5..4ecadfcfab 100644 --- a/src/shared/locales/hu/translation.json +++ b/src/shared/locales/hu/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "Új frissítés érhető el", "shouldUpdateExplanation": "Egy új szoftverfrissítés jelent meg. Ajánlott az alkalmazást a legújabb verzióra frissíteni.", "forceUpdate": "Frissítse az alkalmazást a folytatáshoz", - "forceUpdateExplanation": "Egy kritikus hibát javító frissítés jelent meg. Kérjük, frissítse most az alkalmazást." + "forceUpdateExplanation": "Egy kritikus hibát javító frissítés jelent meg. Kérjük, frissítse most az alkalmazást.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "A mester jelszó érvénytelen karaktereket tartalmaz", @@ -290,8 +292,6 @@ "generateNewAddress": "Új cím generálása", "noAddresses": "Nincs cím", "spent": "Elköltve", - "missingPermission": "Fájl hozzáférési engedély szükséges", - "missingPermissionExplanation": "A QR kód megosztásához szükség van a fájlrendszerhez való hozzáféréshez.", "tag": "Címke", "generateAnAddress": "Új cím generálása", "generateAnAddressTitle": "Új cím generálása", @@ -548,7 +548,7 @@ "syncingYourAccount": "Számla szinkronizálása." }, "useExistingSeed": { - "title": "Adjon meg egy mester jelszót és egy számlanevet.", + "title": "Enter an account name and seed", "incorrectFormat": "Helytelen mester jelszó formátum", "validSeedExplanation": "A mester jelszónak pontosan 81 karakter hosszúnak kell lennie, valamint csak nagy A-Z betűkből és a 9-es számjegyből állhat." }, @@ -687,7 +687,8 @@ "transition": "Egyenlegátvezetés", "transitioning": "Egyenlegátvezetés pillanatkép készítése után.", "generatingAndDetecting": "Címek előállítása és az egyenleg átvezetése.", - "attaching": "Címek hozzácsatolása a Tangle-höz." + "attaching": "Címek hozzácsatolása a Tangle-höz.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Automatikus kitöltés sikeres", diff --git a/src/shared/locales/id/translation.json b/src/shared/locales/id/translation.json index 01cba8a46d..b967d6f8f8 100644 --- a/src/shared/locales/id/translation.json +++ b/src/shared/locales/id/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed berisi karakter yang tidak valid", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "TIDAK ADA ALAMAT", "spent": "Dihabiskan", - "missingPermission": "Izin akses File System dibutuhkan", - "missingPermissionExplanation": "Izin akses ke File System dibutuhkan untuk membagi QR codes.", "tag": "Label", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Sinkronkan akun Anda." }, "useExistingSeed": { - "title": "Masukkan nama akun.", + "title": "Enter an account name and seed", "incorrectFormat": "Salah format Seed", "validSeedExplanation": "Seed valid harus 81 karakter terdiri dari A-Z atau 9." }, @@ -687,7 +687,8 @@ "transition": "Transisi", "transitioning": "Transisi untuk Snapshot.", "generatingAndDetecting": "Menghasilkan alamat dan mendeteksi saldo.", - "attaching": "Melampirkan alamat-alamat ke Tangle." + "attaching": "Melampirkan alamat-alamat ke Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Isi otomatis sukses", diff --git a/src/shared/locales/it/translation.json b/src/shared/locales/it/translation.json index 73543a8fdd..3f1c2e7b2c 100644 --- a/src/shared/locales/it/translation.json +++ b/src/shared/locales/it/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "E' disponibile un nuovo aggiornamento", "shouldUpdateExplanation": "È stato rilasciato un nuovo aggiornamento. Si consiglia di aggiornare all'ultima versione.", "forceUpdate": "Aggiornare l'app per continuare", - "forceUpdateExplanation": "È stato rilasciato un aggiornamento critico. Si prega di aggiornare l'app ora." + "forceUpdateExplanation": "È stato rilasciato un aggiornamento critico. Si prega di aggiornare l'app ora.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Il seme contiene caratteri non validi", @@ -290,8 +292,6 @@ "generateNewAddress": "Genera un indirizzo", "noAddresses": "NESSUN INDIRIZZO", "spent": "Speso", - "missingPermission": "È richiesto l'accesso al file system", - "missingPermissionExplanation": "L'accesso al file system è necessario al fine di condividere codici QR.", "tag": "Etichetta", "generateAnAddress": "Genera un indirizzo", "generateAnAddressTitle": "Genera un indirizzo", @@ -548,7 +548,7 @@ "syncingYourAccount": "Sto sincronizzando il tuo conto." }, "useExistingSeed": { - "title": "Inserisci un seme e un nome di conto.", + "title": "Enter an account name and seed", "incorrectFormat": "Formato di seme non corretto", "validSeedExplanation": "Un seme valido consta di 81 caratteri e contiene solo A-Z o 9." }, @@ -687,7 +687,8 @@ "transition": "Transizione", "transitioning": "Passaggio in corso allo snapshot.", "generatingAndDetecting": "Generazione di indirizzi e rilevamento del saldo.", - "attaching": "Attacco gli indirizzi al Tangle." + "attaching": "Attacco gli indirizzi al Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Riempimento automatico", diff --git a/src/shared/locales/ja/translation.json b/src/shared/locales/ja/translation.json index d0471d1473..7a2112ed65 100644 --- a/src/shared/locales/ja/translation.json +++ b/src/shared/locales/ja/translation.json @@ -74,8 +74,8 @@ "wallet": "ウォレット", "all": "すべて", "sent": "送金完了", - "youReceived": "You received", - "youSent": "You sent", + "youReceived": "受取完了", + "youSent": "送金完了", "received": "受取完了", "sending": "送金中", "receiving": "受取中", @@ -130,7 +130,7 @@ "spentAddressExplanation": "警告:使用済みアドレスの資金です!", "discordInformation": "同じアドレスから複数回送金するのは危険です。どうしたらいいのかはDiscordの#Japaneseチャンネルか#helpチャンネルにお尋ねください。", "androidInsecureClipboardWarning": "Androidは安全なクリップボードを提供していません。", - "androidCopyPasteWarning": "Never copy/paste a seed on an Android device.", + "androidCopyPasteWarning": "Androidデバイス上で、絶対にシードをコピー&ペーストしないでください。", "willNotCopyPasteSeed": "私はシードをコピー&ペーストしません。", "mustBeStoredAppropriately": "シードは適切に保管しなければなりません。", "deviceMayBecomeUnresponsive": "しばらくの間、お使いのデバイスが応答しなくなることがあります。", @@ -150,12 +150,14 @@ "errorAccessingKeychain": "キーチェーンに関するエラー", "errorAccessingKeychainExplanation": "安全な保管に必要なキーチェーンにアクセスできません。", "mainWallet": "メインアカウント", - "confirm": "Confirm", - "delete": "Delete", + "confirm": "確定", + "delete": "削除", "shouldUpdate": "新しいアップデートがあります", "shouldUpdateExplanation": "新しいアップデートがリリースされています。最新バージョンに更新することをお勧めします。", "forceUpdate": "続けるにはアプリをアップデートしてください", - "forceUpdateExplanation": "重要なアップデートがリリースされています。今すぐアプリを更新してください。" + "forceUpdateExplanation": "重要なアップデートがリリースされています。今すぐアプリを更新してください。", + "missingPermission": "ファイルシステム権限が必要です", + "missingPermissionExplanation": "この機能を実行するには、ファイルシステムへのアクセス権限が必要です。" }, "addAdditionalSeed": { "seedInvalidChars": "無効な文字を含んだシードです。", @@ -209,7 +211,7 @@ "passwordTooShortExplanation": "パスワードは少なくとも{{minLength}}文字以上にする必要があります。今は{{currentLength}}文字です。もう一度やり直してください。", "passwordMismatch": "パスワードが一致しません。", "passwordMismatchExplanation": "入力した 2 つのパスワードが一致しません、もう一度やり直してください。", - "anEncryptedCopy": "This is your main wallet password. You will use it to log in.", + "anEncryptedCopy": "これがメインウォレットのパスワードです。これを使ってログインします。", "retypePassword": "パスワードを再入力してください。" }, "copyToClipboard": { @@ -243,8 +245,8 @@ "login": "ログイン", "setNode": "ノードの設定", "whyBiometricDisabled": "生体認証が無効になっている理由。", - "whyBiometricDisabledExplanationPart1": "Biometric authentication is disabled on first app load for your security.", - "whyBiometricDisabledExplanationPart2": "When using Trinity you will be logged out for inactivity. You can then log back in with biometric authentication." + "whyBiometricDisabledExplanationPart1": "安全性のため、初回のアプリ起動時には生体認証が無効になっています。", + "whyBiometricDisabledExplanationPart2": "Trinityを使用していると、非アクティブのためにログアウトすることがあります。その時には、生体認証を使用して再度ログインすることができます。" }, "loading": { "loadingFirstTime": "初めてのシードを読み込んでいます。", @@ -273,12 +275,12 @@ "paperWallet": { "neverShare": "シードは他の人に絶対に教えてはいけません。", "iotaLogo": "IOTAロゴ", - "print": "Print", + "print": "印刷する", "paperConvenience": "シードのコピーを紙に印刷して保存することは便利な方法です。", "publicInsecure": "しかし、公共のWi-Fiや公共のプリンタでの印刷は安全ではないので行わないでください。", - "pleaseCheck": "Please check and confirm before you print", - "wifiConfirmation": "I am not on on public wifi", - "printerConfirmation": "I am not printing on a public printer" + "pleaseCheck": "印刷する前にチェックと確定をお願いいたします", + "wifiConfirmation": "私は公共のWi-Fiを使用していません", + "printerConfirmation": "私は公共のプリンタで印刷していません" }, "receive": { "yourAddress": "あなたのアドレス", @@ -290,8 +292,6 @@ "generateNewAddress": "アドレスを生成", "noAddresses": "アドレスなし", "spent": "使用済", - "missingPermission": "ファイルシステム権限が必要です。", - "missingPermissionExplanation": "QRコードを共有するには、ファイルシステムへのアクセス権が必要です。", "tag": "タグ", "generateAnAddress": "アドレスを生成", "generateAnAddressTitle": "アドレスを生成", @@ -309,8 +309,8 @@ "letsWriteDownYourSeed": "シードを書き写しましょう。", "youCanHighlightCharacters": "一度に9文字を強調表示しています。", "printBlankWallet": "空のペーパーウォレットを印刷", - "whatIsAChecksum": "What is a checksum?", - "everySeedHasAChecksum": "Every seed has a corresponding 3-character checksum.", + "whatIsAChecksum": "チェックサムとは何か?", + "everySeedHasAChecksum": "すべてのシードには対応する3文字のチェックサムがあります。", "iHavesavedMySeed": "バックアップ完了", "checksumExplanation": "ウォレットにシードを追加するたびに、ウォレットによって生成されるチェックサムが、書き写したチェックサムと一致することを必ず確認してください。", "mustSaveYourSeed": "<0><0>下の方法から<1>最低一つ選んで<2>シードを必ずバックアップしてください。" @@ -352,7 +352,7 @@ "addressPasteDetected": "アドレスのペーストを検出", "addressPasteExplanation": "アドレスをペーストしたようです。送金先のアドレスと一致することを確かめてください。", "invalid": "無効", - "swipeToSend": "Swipe to send" + "swipeToSend": "スワイプして送金する" }, "setSeedName": { "letsAddName": "アカウント名を追加してください。", @@ -454,7 +454,7 @@ "retrying": "再試行中", "yesterday": "昨日", "promotingAnotherBundle": "別のバンドルを促進中", - "pleaseWait": "Please wait, Trinity is promoting another bundle." + "pleaseWait": "少々お待ちください。Trinityは他のバンドルを促進しています。" }, "accountManagement": { "viewSeed": "シードを表示", @@ -513,20 +513,20 @@ }, "logoutConfirmationModal": { "logoutConfirmation": "ログアウトしてもよろしいですか?", - "aboutToLogOut": "You are about to log out", - "areYouSure": "Are you sure?" + "aboutToLogOut": "ログアウトしようとしています", + "areYouSure": "本当によろしいですか?" }, "qrScanner": { "scan": "QRコード読み取り" }, "unitInfoModal": { - "unitSystem": "Unit System", + "unitSystem": "単位", "trillion": "一兆", "billion": "十億", "million": "百万", "thousand": "千", "one": "一", - "unitInfoExplanation": "IOTAs are typically acquired in multiples of one million, but can be transferred as a single IOTA." + "unitInfoExplanation": "IOTAは通常100万(1Mi)の倍数で取得されますが、1i単位でも取引できます。" }, "usedAddressModal": { "cantSpendFullBalanceQuestion": "どうして全ての残高を使えないのか?", @@ -548,7 +548,7 @@ "syncingYourAccount": "アカウントを同期しています。" }, "useExistingSeed": { - "title": "シードとアカウント名を入力してください。", + "title": "Enter an account name and seed", "incorrectFormat": "不正確なシードの形式です。", "validSeedExplanation": "有効なシードは81文字で、A〜Zまたは9のみを含む必要があります。" }, @@ -562,8 +562,8 @@ }, "saveSeedConfirmation": { "didSaveSeed": "シードのバックアップはされましたか?", - "iHaveBackedUp": "I have safely backed up my seed", - "reenterSeed": "At the next step you need to re-enter your seed.", + "iHaveBackedUp": "私はシードを安全にバックアップしました", + "reenterSeed": "次のステップで、シードを再入力する必要があります。", "reenterSeedWarning": "もし、シードをバックアップせずにデバイスが故障した場合、そのシードにあるIOTAはすべて失われます。", "pleaseConfirm": "シードが安全に保管されていることを確認してください。" }, @@ -583,19 +583,19 @@ "status": "ステータス", "fingerprintUnavailable": "生体認証が利用できません。", "fingerprintUnavailableExplanation": "お使いのデバイスは生体認証をサポートしていないか、デバイス設定で設定されていません。", - "buttonInstructionsDisable": "Press the button below to disable fingerprint authentication", + "buttonInstructionsDisable": "指紋認証を無効にするには、下のボタンを押してください", "buttonInstructionsEnable": "指紋認証を有効にするには、下のボタンを押してください。", - "buttonInstructionsDisableIPhoneX": "Press the button below to disable Face ID", - "buttonInstructionsEnableIPhoneX": "Press the button below to enable Face ID", + "buttonInstructionsDisableIPhoneX": "顔認証を無効にするには、下のボタンを押してください", + "buttonInstructionsEnableIPhoneX": "顔認証を有効にするには、下のボタンを押してください", "instructionsLogin": "指紋リーダに触れてログインしてください。" }, "transferConfirmation": { "youAreAbout": "アドレスに {{contents}} を送信しようとしています。", "aMessage": "メッセージ", - "fromAccount": "From {{selectedAccountName}}", - "toAddress": "To address", - "sendingAMessage": "Sending a message", - "sendingAnEmptyMessage": "Sending an empty message" + "fromAccount": "{{selectedAccountName}}から", + "toAddress": "送信先アドレスへ", + "sendingAMessage": "メッセージを送信中", + "sendingAnEmptyMessage": "空のメッセージを送信中" }, "twoFA": { "wrongCode": "コードが間違っています。", @@ -616,7 +616,7 @@ }, "seedVault": { "exportSeedVault": "シード金庫へ書き出す", - "seedVaultExplanation": "A SeedVault is an encrypted file for backing up your seed. The seed is encrypted with a SeedVault Key and cannot be accessed without that key.", + "seedVaultExplanation": "シード金庫は、シードをバックアップするための暗号化されたファイルです。シードはシード金庫鍵で暗号化されており、このシード金庫鍵なしではアクセスできません。", "seedVaultWarning": "シード金庫を複数の場所(ハードドライブ、クラウド、USBなど)にバックアップしてください。シード金庫を紛失し、かつ他の場所にシードを保存していないと、IOTAが失われます。", "exportFail": "シード金庫の書き出しに失敗しました", "exportFailExplanation": "シード金庫を書き出す際に問題が発生しました。 適切な権限と十分な空き容量があることを確認してください。", @@ -637,8 +637,8 @@ "noSeedFoundExplanation": "シード金庫は空か、無効な形式のシードが含まれています。", "seedFileError": "イオタ金庫を開けませんでした", "seedFileErrorExplanation": "シード金庫を開く際に問題が発生しました。 正しいファイルを選択している場合、ファイルが破損している可能性があります。", - "seedVaultKeyExplanation": "First we need to secure your SeedVault. Please choose a key to encrypt the file. You will need this key to restore your seed from the SeedVault back up.", - "retypeKey": "Retype key" + "seedVaultKeyExplanation": "最初にシード金庫を保護する必要があります。シード金庫を暗号化するためのシード金庫鍵を選んでください。バックアップ用のシード金庫からシードを復元するには、このシード金庫鍵が必要です。", + "retypeKey": "鍵を再入力してください" }, "chart": { "mcap": "時価総額", @@ -673,7 +673,7 @@ "gettingTransactionsToApprove": "承認する取引を取得中", "proofOfWork": "プルーフ・オブ・ワークを完了中", "broadcasting": "ブロードキャスト中", - "transferComplete": "Transfer complete" + "transferComplete": "送金完了" }, "snapshotTransition": { "cannotCompleteTransition": "スナップショットの移行を完了できません。", @@ -687,7 +687,8 @@ "transition": "移行", "transitioning": "スナップショットを移行しています。", "generatingAndDetecting": "アドレス生成と残高検出を行なっています。", - "attaching": "タングルにアドレスを添付しています。" + "attaching": "タングルにアドレスを添付しています。", + "attachProgress": "{{totalAddresses}}のアドレス{{currentAddress}}を添付中" }, "deepLink": { "autofill": "自動入力成功", diff --git a/src/shared/locales/ka/translation.json b/src/shared/locales/ka/translation.json index 7bcd47c438..f6b8814723 100644 --- a/src/shared/locales/ka/translation.json +++ b/src/shared/locales/ka/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed contains invalid characters", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NO ADDRESSES", "spent": "Spent", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Tag", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Syncing your account." }, "useExistingSeed": { - "title": "Enter a seed and account name.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/kn/translation.json b/src/shared/locales/kn/translation.json index 94c5f48ce5..5a6cf7118f 100644 --- a/src/shared/locales/kn/translation.json +++ b/src/shared/locales/kn/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತವು ಅಮಾನ್ಯ ಅಕ್ಷರಗಳನ್ನು ಹೊಂದಿದೆ", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "ವಿಳಾಸವಿಲ್ಲ", "spent": "ಖರ್ಚು ಮಾಡಿದ", - "missingPermission": "ಫೈಲ್ ವ್ಯವಸ್ಥೆ ಅನುಮತಿ ಅಗತ್ಯವಿದೆ", - "missingPermissionExplanation": "QR ಸಂಕೇತಗಳನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಫೈಲ್ ವ್ಯವಸ್ಥೆಗೆ ಪ್ರವೇಶ ಅಗತ್ಯವಿರುತ್ತದೆ.", "tag": "೨೭ ಅಕ್ಷರಗಳ ಕಿರು ಸಂದೇಶ", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "ನಿಮ್ಮ ಖಾತೆಯನ್ನು ಒಡವಾಗುನಂಟು ಮಾಡಲಾಗುತ್ತಿದೆ." }, "useExistingSeed": { - "title": "ಒಂದು ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತ ಮತ್ತು ಖಾತೆಯ ಹೆಸರನ್ನು ನಮೂದಿಸಿ.", + "title": "Enter an account name and seed", "incorrectFormat": "ತಪ್ಪಾದ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತ ಸ್ವರೂಪ", "validSeedExplanation": "ಮಾನ್ಯವಾದ ರಹಸ್ಯ ಪ್ರವೇಶ ಸಂಕೇತ 81 ಅಕ್ಷರಗಳಾಗಿರಬೇಕು ಮತ್ತು A-Z ಅಥವಾ 9 ಅನ್ನು ಮಾತ್ರ ಹೊಂದಿರಬೇಕು." }, @@ -687,7 +687,8 @@ "transition": "ಪರಿವರ್ತನೆ", "transitioning": "ಸ್ನ್ಯಾಪ್ಶಾಟ್ಗಾಗಿ ಪರಿವರ್ತನೆ.", "generatingAndDetecting": "ವಿಳಾಸಗಳನ್ನು ಉತ್ಪಾದಿಸಲಾಗುತ್ತಿದೆ ಮತ್ತು ಖಾತೆಯ ಮೊತ್ತವನ್ನು ಕಂಡುಹಿಡಿಯಲಾಗುತ್ತಿದೆ.", - "attaching": "ಟ್ಯಾಂಗಲ್ಗೆ ವಿಳಾಸಗಳನ್ನು ಲಗತ್ತಿಸಲಾಗುತ್ತಿದೆ." + "attaching": "ಟ್ಯಾಂಗಲ್ಗೆ ವಿಳಾಸಗಳನ್ನು ಲಗತ್ತಿಸಲಾಗುತ್ತಿದೆ.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "ಸ್ವಯಂತುಂಬುವಿಕೆ ಯಶಸ್ಸು", diff --git a/src/shared/locales/ko/translation.json b/src/shared/locales/ko/translation.json index 7aeb8cfde7..a0f0f2052c 100644 --- a/src/shared/locales/ko/translation.json +++ b/src/shared/locales/ko/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "유효하지 않은 문자가 포함되어 있음", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "주소 없음", "spent": "이미 사용함", - "missingPermission": "파일 시스템 권한 필요", - "missingPermissionExplanation": "QR 코드를 공유하려면 파일 시스템 권한이 필요합니다.", "tag": "태그", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "계정을 동기화 중입니다." }, "useExistingSeed": { - "title": "시드와 계정 이름을 입력하십시오.", + "title": "Enter an account name and seed", "incorrectFormat": "잘못된 시드 형식", "validSeedExplanation": "유효한 시드는 대문자 A-Z와 숫자 9만을 사용한 81자의 문자열 형태를 갖습니다." }, @@ -687,7 +687,8 @@ "transition": "이전", "transitioning": "스냅샷 이전 수행 중", "generatingAndDetecting": "주소를 생성하고 잔고를 찾는 중", - "attaching": "주소를 탱글에 어태치하는 중." + "attaching": "주소를 탱글에 어태치하는 중.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "자동 완성 성공", diff --git a/src/shared/locales/lt/translation.json b/src/shared/locales/lt/translation.json index a63fe93650..388b80e7ad 100644 --- a/src/shared/locales/lt/translation.json +++ b/src/shared/locales/lt/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "Yra naujų atnaujinimų", "shouldUpdateExplanation": "Išleistas naujas atnaujinimas. Rekomenduojama atsinaujinti iki naujausios versijos.", "forceUpdate": "Atnaujinkite programėlę norėdami tęsti", - "forceUpdateExplanation": "Išleistas svarbus atnaujinimas. Prašome nedelsiant atsinaujinti programėlę." + "forceUpdateExplanation": "Išleistas svarbus atnaujinimas. Prašome nedelsiant atsinaujinti programėlę.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Užraktas turi neleistinų simbolių", @@ -290,8 +292,6 @@ "generateNewAddress": "Sukurti adresą", "noAddresses": "ADRESŲ NĖRA", "spent": "Panaudotas", - "missingPermission": "Reikalingas failų sistemos leidimas", - "missingPermissionExplanation": "Reikalinga prieiga prie failų sistemos norint dalintis QR kodais.", "tag": "Etiketė", "generateAnAddress": "Sukurti adresą", "generateAnAddressTitle": "Sukurti adresą", @@ -548,7 +548,7 @@ "syncingYourAccount": "Paskyra sinchronizuojama." }, "useExistingSeed": { - "title": "Įveskite užraktą ir paskyros vardą.", + "title": "Enter an account name and seed", "incorrectFormat": "Neteisingas užrakto formatas", "validSeedExplanation": "Užraktai turi būti sudaryti iš 81 simbolio, galimos tik raidės A-Z ir skaičius 9." }, @@ -687,7 +687,8 @@ "transition": "Perkelti", "transitioning": "Perkeliami tinklo duomenys.", "generatingAndDetecting": "Kuriami adresai ir nustatinėjamas balansas.", - "attaching": "Adresai prijungiami prie Tangle." + "attaching": "Adresai prijungiami prie Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Automatinis įkėlimas sėkmingas", diff --git a/src/shared/locales/lv/translation.json b/src/shared/locales/lv/translation.json index 5a92467729..97cdeaec67 100644 --- a/src/shared/locales/lv/translation.json +++ b/src/shared/locales/lv/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed contains invalid characters", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NO ADDRESSES", "spent": "Spent", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Birka", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Syncing your account." }, "useExistingSeed": { - "title": "Enter a seed and account name.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/nl/translation.json b/src/shared/locales/nl/translation.json index 6165c4b69e..1814cf1f59 100644 --- a/src/shared/locales/nl/translation.json +++ b/src/shared/locales/nl/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "De seed bevat ongeldige tekens", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "GEEN ADRESSEN", "spent": "Uitgegeven", - "missingPermission": "Toegang tot bestandsysteem vereist", - "missingPermissionExplanation": "Toegang tot het bestandsysteem is nodig om QR codes te delen.", "tag": "Label", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Account wordt gesynchroniseerd." }, "useExistingSeed": { - "title": "Voer een seed en accountnaam in.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrecte seed opmaak", "validSeedExplanation": "Geldige seeds bestaan uit 81 karakters en bevatten alleen A-Z of 9." }, @@ -687,7 +687,8 @@ "transition": "Transitie", "transitioning": "Aan het overgaan voor de snapshot.", "generatingAndDetecting": "Adressen aan het genereren en saldo aan het detecteren.", - "attaching": "Adressen aan het koppelen aan de Tangle." + "attaching": "Adressen aan het koppelen aan de Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Automatisch vullen succesvol", diff --git a/src/shared/locales/no/translation.json b/src/shared/locales/no/translation.json index 483308a8d6..022f74b7fa 100644 --- a/src/shared/locales/no/translation.json +++ b/src/shared/locales/no/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Hovednøkkelen inneholder ugyldige tegn", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "INGEN ADRESSER", "spent": "Brukt", - "missingPermission": "Trenger tillatelse til filsystemet", - "missingPermissionExplanation": "Tilgang til filsystemet er nødvendig for å dele QR-koder.", "tag": "Etikett", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Synkroniserer din konto." }, "useExistingSeed": { - "title": "Angi en hovednøkkel og et kontonavn.", + "title": "Enter an account name and seed", "incorrectFormat": "Feil format på hovednøkkelen", "validSeedExplanation": "En gyldig hovednøkkel skal være 81 tegn bestående av bokstavene A-Z og tallet 9." }, @@ -687,7 +687,8 @@ "transition": "Overgang", "transitioning": "Overfører til ny snapshot.", "generatingAndDetecting": "Genererer adresser og laster inn saldo.", - "attaching": "Kobler adressene til Tangle." + "attaching": "Kobler adressene til Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Automatisk utfylling vellykket", diff --git a/src/shared/locales/pl/translation.json b/src/shared/locales/pl/translation.json index 2aa04e645e..1f63989cb8 100644 --- a/src/shared/locales/pl/translation.json +++ b/src/shared/locales/pl/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "Dostępna jest nowa aktualizacja", "shouldUpdateExplanation": "Dostępna jest nowa aktualizacja. Zaleca się aktualizację do najnowszej wersji.", "forceUpdate": "Zaktualizuj aplikację, aby kontynuować", - "forceUpdateExplanation": "Dostępna jest aktualizacja krytyczna. Zaktualizuj aplikację teraz." + "forceUpdateExplanation": "Dostępna jest aktualizacja krytyczna. Zaktualizuj aplikację teraz.", + "missingPermission": "Wymagany dostęp do systemu plików", + "missingPermissionExplanation": "Aby wykonać tę funkcję, potrzebny jest dostęp do systemu plików." }, "addAdditionalSeed": { "seedInvalidChars": "Seed zawiera nieprawidłowe znaki", @@ -290,8 +292,6 @@ "generateNewAddress": "Wygeneruj adres", "noAddresses": "BRAK ADRESÓW", "spent": "Adres zużyty", - "missingPermission": "Wymagany dostęp do systemu plików", - "missingPermissionExplanation": "W celu udostępniania kodów QR, wymagany jest dostęp do systemu plików.", "tag": "Tag", "generateAnAddress": "Wygeneruj adres", "generateAnAddressTitle": "Wygeneruj adres", @@ -548,7 +548,7 @@ "syncingYourAccount": "Synchronizuje Twoje konto." }, "useExistingSeed": { - "title": "Wprowadź seed oraz nazwę konta.", + "title": "Enter an account name and seed", "incorrectFormat": "Nieprawidłowy format klucza", "validSeedExplanation": "Poprawny seed powinien składać się z 81 znaków i zawierać jedynie wielkie litery A-Z oraz cyfry 9." }, @@ -687,7 +687,8 @@ "transition": "Aktualizacja", "transitioning": "Trwa aktualizacja Twoich środków.", "generatingAndDetecting": "Generuję adresy oraz wykrywam saldo.", - "attaching": "Dołączam adresy do sieci Tangle." + "attaching": "Dołączam adresy do sieci Tangle.", + "attachProgress": "Dołączam adres {{currentAddress}} z {{totalAddresses}}" }, "deepLink": { "autofill": "Autouzupełniono", diff --git a/src/shared/locales/pt-BR/translation.json b/src/shared/locales/pt-BR/translation.json index 2d5ed50b4e..a0758e9ce3 100644 --- a/src/shared/locales/pt-BR/translation.json +++ b/src/shared/locales/pt-BR/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "Uma atualização está disponível", "shouldUpdateExplanation": "Uma nova atualização foi lançada. É recomendável você atualizar para a versão mais recente.", "forceUpdate": "Atualize o aplicativo para continuar", - "forceUpdateExplanation": "Foi lançada uma atualização importante. Por favor, atualize o aplicativo agora." + "forceUpdateExplanation": "Foi lançada uma atualização importante. Por favor, atualize o aplicativo agora.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "A Seed contém caracteres inválidos", @@ -290,8 +292,6 @@ "generateNewAddress": "Gerar novo endereço", "noAddresses": "NÃO EXISTEM ENDEREÇOS", "spent": "Gasto", - "missingPermission": "Permissões do sistema de arquivo necessárias", - "missingPermissionExplanation": "Acesso ao sistema de arquivo é necessário para compartilhar códigos QR.", "tag": "Etiqueta", "generateAnAddress": "Gerar novo endereço", "generateAnAddressTitle": "Gerar novo endereço", @@ -548,7 +548,7 @@ "syncingYourAccount": "Sincronizando sua conta." }, "useExistingSeed": { - "title": "Digite a seed e o nome da conta.", + "title": "Enter an account name and seed", "incorrectFormat": "Formato de servidor incorreto", "validSeedExplanation": "Seeds válidas devem possuir 81 caracteres e conter apenas A-Z ou 9." }, @@ -687,7 +687,8 @@ "transition": "Transição", "transitioning": "Fazendo a transição para o Snapshot.", "generatingAndDetecting": "Gerando endereços e detectando saldo.", - "attaching": "Anexando endereços para o Tangle." + "attaching": "Anexando endereços para o Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Sucesso no preenchimento automático", diff --git a/src/shared/locales/pt-PT/translation.json b/src/shared/locales/pt-PT/translation.json index 2bb296b948..7e1664bb75 100644 --- a/src/shared/locales/pt-PT/translation.json +++ b/src/shared/locales/pt-PT/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "A Seed contém caracteres inválidos", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NO ADDRESSES", "spent": "Spent", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Etiqueta", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Syncing your account." }, "useExistingSeed": { - "title": "Enter a seed and account name.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/ro/translation.json b/src/shared/locales/ro/translation.json index 9bf68e8cbc..8d5f307a9f 100644 --- a/src/shared/locales/ro/translation.json +++ b/src/shared/locales/ro/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed contains invalid characters", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NO ADDRESSES", "spent": "Spent", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Tag", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Syncing your account." }, "useExistingSeed": { - "title": "Enter a seed and account name.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/ru/translation.json b/src/shared/locales/ru/translation.json index 4214ec4cb2..2e6df8e405 100644 --- a/src/shared/locales/ru/translation.json +++ b/src/shared/locales/ru/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Ключ содержит недопустимые символы", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "НЕТ АДРЕСОВ", "spent": "Использованный адрес", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Метка", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Синхронизация Вашего счёта." }, "useExistingSeed": { - "title": "Введите ключ и название счёта.", + "title": "Enter an account name and seed", "incorrectFormat": "Неверный формат ключа", "validSeedExplanation": "Корректный ключ должен содержать 81 символ и состоять только из A-Z и 9." }, @@ -687,7 +687,8 @@ "transition": "Переход", "transitioning": "Процесс актуализации после снимка сети.", "generatingAndDetecting": "Genererer adresser og registrerer balance.", - "attaching": "Привязка адресов к Tangle." + "attaching": "Привязка адресов к Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Автозаполнение прошло успешно", diff --git a/src/shared/locales/sk/translation.json b/src/shared/locales/sk/translation.json index e13817cc90..735cacc00c 100644 --- a/src/shared/locales/sk/translation.json +++ b/src/shared/locales/sk/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "Je k dispozicii nová aktualizácia", "shouldUpdateExplanation": "Bola vydaná nová aktualizácia. Doporučujeme aktualizovať na najnovšiu verziu.", "forceUpdate": "Ak chcete pokračovať, aktualizujte aplikáciu", - "forceUpdateExplanation": "Bola vydaná kritická aktualizácia. Ihneď aktualizujte aplikáciu." + "forceUpdateExplanation": "Bola vydaná kritická aktualizácia. Ihneď aktualizujte aplikáciu.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed obsahuje neplatné znaky", @@ -290,8 +292,6 @@ "generateNewAddress": "Generovať adresu", "noAddresses": "ŽIADNE ADRESY", "spent": "Utratené", - "missingPermission": "Je požadované povolenie súborového systému", - "missingPermissionExplanation": "Pre zdieľanie QR kódu je požadivaný prístup k súborovému systému.", "tag": "Značka", "generateAnAddress": "Generovať adresu", "generateAnAddressTitle": "Generovať adresu", @@ -548,7 +548,7 @@ "syncingYourAccount": "Váš účet sa synchronizuje." }, "useExistingSeed": { - "title": "Zadajte svoj Seed a názov účtu.", + "title": "Enter an account name and seed", "incorrectFormat": "Nesprávny formát Seedu", "validSeedExplanation": "Platný Seed má 81 znakov a obsahuje iba znaky A-Z alebo 9." }, @@ -687,7 +687,8 @@ "transition": "Aktualizovať", "transitioning": "Aktualizácia údajov po Snapshote.", "generatingAndDetecting": "Generujem adresy a zisťujem zostatok.", - "attaching": "Pripájam adresy do siete Tangle." + "attaching": "Pripájam adresy do siete Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Automatické vyplnenie úspešné", diff --git a/src/shared/locales/sl/translation.json b/src/shared/locales/sl/translation.json index ed52c67ae3..6ace51db18 100644 --- a/src/shared/locales/sl/translation.json +++ b/src/shared/locales/sl/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Generirana vrednost vsebuje neveljavne znake", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NO ADDRESSES", "spent": "Porabljeno", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Značka", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Syncing your account." }, "useExistingSeed": { - "title": "Enter a seed and account name.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/sr/translation.json b/src/shared/locales/sr/translation.json index 31e3199242..8d4d410180 100644 --- a/src/shared/locales/sr/translation.json +++ b/src/shared/locales/sr/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed sadrži nedozvoljene znakove", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NEMA ADRESA", "spent": "Upotrebljeno", - "missingPermission": "Potrebna dozvola za pristup sistemu datoteka", - "missingPermissionExplanation": "Potreban je pristup sistemu datoteka radi deljenja QR kodova.", "tag": "Oznaka", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Sinhronizacija u toku." }, "useExistingSeed": { - "title": "Unesite seed i naziv računa.", + "title": "Enter an account name and seed", "incorrectFormat": "Neispravan format seed-a", "validSeedExplanation": "Važeći seed treba da se sastoji od 81 znaka i isključivo od slova A-Z ili broja 9." }, @@ -687,7 +687,8 @@ "transition": "Tranzicija", "transitioning": "Tranzija snapshot-a u toku.", "generatingAndDetecting": "Generisanje adresa i detektovanje salda.", - "attaching": "Dodavanje adresa u Tangle." + "attaching": "Dodavanje adresa u Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Uspešno automatsko popunjavanje", diff --git a/src/shared/locales/sv-SE/translation.json b/src/shared/locales/sv-SE/translation.json index 2c0316a3f4..28ae2312d7 100644 --- a/src/shared/locales/sv-SE/translation.json +++ b/src/shared/locales/sv-SE/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "En ny uppdatering finns tillgänglig", "shouldUpdateExplanation": "En ny uppdatering har släppts. Det rekommenderas att du uppdaterar till den senaste versionen.", "forceUpdate": "Uppdatera appen att fortsätta", - "forceUpdateExplanation": "En viktig uppdatering har släppts. Vänligen uppdatera appen nu." + "forceUpdateExplanation": "En viktig uppdatering har släppts. Vänligen uppdatera appen nu.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Din seed innehåller felaktiga tecken", @@ -290,8 +292,6 @@ "generateNewAddress": "Generera ny adress", "noAddresses": "INGA ADRESSER", "spent": "Förbrukat", - "missingPermission": "Åtkomst till filsystem krävs", - "missingPermissionExplanation": "Åtkomst till filsystem krävs för att dela QR-koder.", "tag": "Tagg", "generateAnAddress": "Generera ny adress", "generateAnAddressTitle": "Generera en adress", @@ -548,7 +548,7 @@ "syncingYourAccount": "Synkar konto." }, "useExistingSeed": { - "title": "Ange din seed och ett kontonamn.", + "title": "Enter an account name and seed", "incorrectFormat": "Felaktigt seed-format", "validSeedExplanation": "Giltig seed bör vara 81 tecken och innehålla A-Z eller 9." }, @@ -687,7 +687,8 @@ "transition": "Övergång", "transitioning": "Övergång för snapshoten.", "generatingAndDetecting": "Genererar adresser och upptäcker saldo.", - "attaching": "Fäster adresser till Tangle." + "attaching": "Fäster adresser till Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofyll lyckat", diff --git a/src/shared/locales/ta/translation.json b/src/shared/locales/ta/translation.json index b0f756e7a5..c99013495d 100644 --- a/src/shared/locales/ta/translation.json +++ b/src/shared/locales/ta/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed contains invalid characters", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NO ADDRESSES", "spent": "Spent", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Tag", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Syncing your account." }, "useExistingSeed": { - "title": "Enter a seed and account name.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/th/translation.json b/src/shared/locales/th/translation.json index 75a1b02339..f06678a9f8 100644 --- a/src/shared/locales/th/translation.json +++ b/src/shared/locales/th/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed (เลขที่บัญชี) ประกอบด้วยอักขระที่ไม่ถูกต้อง", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "ไม่มีที่อยู่", "spent": "Spent", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Tag", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "กำลังซิงค์บัญชีของคุณ" }, "useExistingSeed": { - "title": "Enter a seed and account name.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/tr/translation.json b/src/shared/locales/tr/translation.json index 2f32db2030..0d901036c6 100644 --- a/src/shared/locales/tr/translation.json +++ b/src/shared/locales/tr/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Geçersiz karakterler içeriyor", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "ADRESİ YOK", "spent": "Harcanan", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Etiket", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Hesabınız eşitleniyor." }, "useExistingSeed": { - "title": "Oluşum ve hesap adınızı girin.", + "title": "Enter an account name and seed", "incorrectFormat": "Geçersiz oluşum formatı", "validSeedExplanation": "Geçerli oluşumlar 81 karakter uzunluğunda ve sadece A'dan Z'ye harfler veya 9 içermelidir." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Anlık görüntü için geçiş sağlanıyor.", "generatingAndDetecting": "Adresler yaratılıyor ve varlıklar algılanıyor.", - "attaching": "Tangle'a adresler ekleniyor." + "attaching": "Tangle'a adresler ekleniyor.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Otomatik doldurma başarılı", diff --git a/src/shared/locales/ur/translation.json b/src/shared/locales/ur/translation.json index 97c3357c1b..9aa3c0fd4d 100644 --- a/src/shared/locales/ur/translation.json +++ b/src/shared/locales/ur/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Seed contains invalid characters", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "NO ADDRESSES", "spent": "Spent", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "ٹیگ", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Syncing your account." }, "useExistingSeed": { - "title": "Enter a seed and account name.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Generating addresses and detecting balance.", - "attaching": "Attaching addresses to Tangle." + "attaching": "Attaching addresses to Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/vi/translation.json b/src/shared/locales/vi/translation.json index 312a057aac..7d4d05bf48 100644 --- a/src/shared/locales/vi/translation.json +++ b/src/shared/locales/vi/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "Từ khoá chứa ký tự không hợp lệ", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "KHÔNG CÓ ĐỊA CHỈ", "spent": "Đã Gửi", - "missingPermission": "File system permission required", - "missingPermissionExplanation": "Access to the file system is required in order to share QR codes.", "tag": "Tag", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "Đang đồng bộ tài khoản." }, "useExistingSeed": { - "title": "Nhập từ khóa và tên tài khoản.", + "title": "Enter an account name and seed", "incorrectFormat": "Incorrect seed format", "validSeedExplanation": "Valid seeds should be 81 characters and contain only A-Z or 9." }, @@ -687,7 +687,8 @@ "transition": "Transition", "transitioning": "Transitioning for the snapshot.", "generatingAndDetecting": "Tạo địa chỉ mới và tìm ra số tiền trong tài khoản.", - "attaching": "Kết nối địa chỉ vào mạng Tangle." + "attaching": "Kết nối địa chỉ vào mạng Tangle.", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "Autofill success", diff --git a/src/shared/locales/zh-CN/translation.json b/src/shared/locales/zh-CN/translation.json index 6989fd4f7e..1b46769743 100644 --- a/src/shared/locales/zh-CN/translation.json +++ b/src/shared/locales/zh-CN/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "种子包含无效字符", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "无地址", "spent": "使用过", - "missingPermission": "需要文件系统权限", - "missingPermissionExplanation": "分享二维码需要具备文件系统访问权限。", "tag": "标签", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "正在同步您的账号" }, "useExistingSeed": { - "title": "输入种子和帐户名称。", + "title": "Enter an account name and seed", "incorrectFormat": "种子格式不正确", "validSeedExplanation": "有效的种子应该是81个字符,并且只包含 A-Z 或9。" }, @@ -687,7 +687,8 @@ "transition": "转换", "transitioning": "正在转换快照。", "generatingAndDetecting": "正在生成地址和检测余额。", - "attaching": "将地址添加到Tanlge。" + "attaching": "将地址添加到Tanlge。", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "自动填充成功", diff --git a/src/shared/locales/zh-TW/translation.json b/src/shared/locales/zh-TW/translation.json index 4e4e16663b..27d124c650 100644 --- a/src/shared/locales/zh-TW/translation.json +++ b/src/shared/locales/zh-TW/translation.json @@ -155,7 +155,9 @@ "shouldUpdate": "A new update is available", "shouldUpdateExplanation": "A new update has been released. It is recommended that you update to the latest version.", "forceUpdate": "Update the app to continue", - "forceUpdateExplanation": "A critical update has been released. Please update the app now." + "forceUpdateExplanation": "A critical update has been released. Please update the app now.", + "missingPermission": "File system permission required", + "missingPermissionExplanation": "Access to the file system is required in order to perform this function." }, "addAdditionalSeed": { "seedInvalidChars": "種子碼包含無效字元", @@ -290,8 +292,6 @@ "generateNewAddress": "Generate address", "noAddresses": "無地址", "spent": "已支出", - "missingPermission": "需要檔案系統權限", - "missingPermissionExplanation": "分享 QR 碼必須要有訪問檔案系統的權限。", "tag": "標籤", "generateAnAddress": "Generate address", "generateAnAddressTitle": "Generate an address", @@ -548,7 +548,7 @@ "syncingYourAccount": "同步您的帳戶中。" }, "useExistingSeed": { - "title": "輸入種子碼和帳戶名稱。", + "title": "Enter an account name and seed", "incorrectFormat": "種子碼格式不符", "validSeedExplanation": "有效的種子碼應為 81 個字元而且僅包含 A-Z 或 9。" }, @@ -687,7 +687,8 @@ "transition": "轉換", "transitioning": "進行快照轉換。", "generatingAndDetecting": "產生地址並檢測餘額。", - "attaching": "連接地址到 Tangle。" + "attaching": "連接地址到 Tangle。", + "attachProgress": "Attaching address {{currentAddress}} of {{totalAddresses}}" }, "deepLink": { "autofill": "自動填入成功",