Dev #4

Merged
Horhik merged 18 commits from dev into master 2020-04-11 16:52:54 +00:00
84 changed files with 17363 additions and 10470 deletions

View file

@ -3,4 +3,5 @@ module.exports = {
jsxBracketSameLine: true, jsxBracketSameLine: true,
singleQuote: true, singleQuote: true,
trailingComma: 'all', trailingComma: 'all',
tabWidth: 2,
}; };

View file

@ -2,10 +2,13 @@ import React, {useEffect} from 'react';
import {Provider} from 'react-redux'; import {Provider} from 'react-redux';
import StartScreen from './src/components/add-anklan-model'; import StartScreen from './src/components/add-anklan-model';
import store from './src/store'; import store from './src/store';
import {ScrollView} from 'react-native';
const App = props => { const App = props => {
return ( return (
<Provider store={store}> <Provider store={store}>
<ScrollView keyboardShouldPersistTaps={'handled'}>
<StartScreen /> <StartScreen />
</ScrollView>
</Provider> </Provider>
); );
}; };

View file

@ -143,12 +143,21 @@ android {
} }
} }
signingConfigs { signingConfigs {
release {
if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
debug { debug {
storeFile file('debug.keystore') storeFile file('debug.keystore')
storePassword 'android' storePassword 'android'
keyAlias 'androiddebugkey' keyAlias 'androiddebugkey'
keyPassword 'android' keyPassword 'android'
} }
}
} }
buildTypes { buildTypes {
debug { debug {
@ -157,9 +166,10 @@ android {
release { release {
// Caution! In production, you need to generate your own keystore file. // Caution! In production, you need to generate your own keystore file.
// see https://facebook.github.io/react-native/docs/signed-apk-android. // see https://facebook.github.io/react-native/docs/signed-apk-android.
signingConfig signingConfigs.debug // signingConfig signingConfigs.debug
minifyEnabled enableProguardInReleaseBuilds minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
signingConfig signingConfigs.release
} }
} }
// applicationVariants are e.g. debug, release // applicationVariants are e.g. debug, release
@ -179,6 +189,7 @@ android {
} }
dependencies { dependencies {
implementation project(':react-native-vector-icons')
implementation project(':@react-native-community_async-storage') implementation project(':@react-native-community_async-storage')
implementation fileTree(dir: "libs", include: ["*.jar"]) implementation fileTree(dir: "libs", include: ["*.jar"])
implementation "com.facebook.react:react-native:+" // From node_modules implementation "com.facebook.react:react-native:+" // From node_modules
@ -199,4 +210,9 @@ task copyDownloadableDepsToLibs(type: Copy) {
into 'libs' into 'libs'
} }
//apply from: "../../node_modules/react-native-vector-icons/fonts.gradle
apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project) apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
//project.ext.vectoricons = [
// iconFontNames: [ 'MaterialIcons.ttf', 'EvilIcons.ttf' ] // Name of the font files you want to copy
//]

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

View file

@ -4,6 +4,7 @@ import android.app.Application;
import android.content.Context; import android.content.Context;
import com.facebook.react.PackageList; import com.facebook.react.PackageList;
import com.facebook.react.ReactApplication; import com.facebook.react.ReactApplication;
import com.oblador.vectoricons.VectorIconsPackage;
import com.reactnativecommunity.asyncstorage.AsyncStoragePackage; import com.reactnativecommunity.asyncstorage.AsyncStoragePackage;
import com.facebook.react.ReactNativeHost; import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage; import com.facebook.react.ReactPackage;

View file

@ -0,0 +1,4 @@
{
"name": "ankilan",
"displayName": "ankilan"
}

View file

@ -0,0 +1,300 @@
{
"stepforward": 58880,
"stepbackward": 58881,
"forward": 58882,
"banckward": 58883,
"caretright": 58884,
"caretleft": 58885,
"caretdown": 58886,
"caretup": 58887,
"rightcircle": 58888,
"leftcircle": 58889,
"upcircle": 58890,
"downcircle": 58891,
"rightcircleo": 58892,
"leftcircleo": 58893,
"upcircleo": 58894,
"downcircleo": 58895,
"verticleleft": 58896,
"verticleright": 58897,
"back": 58898,
"retweet": 58899,
"shrink": 58900,
"arrowsalt": 58901,
"doubleright": 58903,
"doubleleft": 58904,
"arrowdown": 58905,
"arrowup": 58906,
"arrowright": 58907,
"arrowleft": 58908,
"down": 58909,
"up": 58910,
"right": 58911,
"left": 58912,
"minussquareo": 58913,
"minuscircle": 58914,
"minuscircleo": 58915,
"minus": 58916,
"pluscircleo": 58917,
"pluscircle": 58918,
"plus": 58919,
"infocirlce": 58920,
"infocirlceo": 58921,
"info": 58922,
"exclamation": 58923,
"exclamationcircle": 58924,
"exclamationcircleo": 58925,
"closecircle": 58926,
"closecircleo": 58927,
"checkcircle": 58928,
"checkcircleo": 58929,
"check": 58930,
"close": 58931,
"customerservice": 58932,
"creditcard": 58933,
"codesquareo": 58934,
"book": 58935,
"barschart": 58936,
"bars": 58937,
"question": 58938,
"questioncircle": 58939,
"questioncircleo": 58940,
"pause": 58941,
"pausecircle": 58942,
"pausecircleo": 58943,
"clockcircle": 58944,
"clockcircleo": 58945,
"swap": 58946,
"swapleft": 58947,
"swapright": 58948,
"plussquareo": 58949,
"frown": 58950,
"menufold": 58968,
"mail": 58969,
"link": 58971,
"areachart": 58972,
"linechart": 58973,
"home": 58974,
"laptop": 58975,
"star": 58976,
"staro": 58977,
"filter": 58979,
"meho": 58982,
"meh": 58983,
"shoppingcart": 58984,
"save": 58985,
"user": 58986,
"videocamera": 58987,
"totop": 58988,
"team": 58989,
"sharealt": 58993,
"setting": 58994,
"picture": 58996,
"phone": 58997,
"paperclip": 58998,
"notification": 58999,
"menuunfold": 59001,
"inbox": 59002,
"lock": 59003,
"qrcode": 59004,
"tags": 59005,
"tagso": 59006,
"cloudo": 59007,
"cloud": 59008,
"cloudupload": 59009,
"clouddownload": 59010,
"clouddownloado": 59011,
"clouduploado": 59012,
"enviroment": 59013,
"enviromento": 59014,
"eye": 59015,
"eyeo": 59016,
"camera": 59017,
"camerao": 59018,
"windows": 59019,
"export2": 59024,
"export": 59025,
"circledowno": 59027,
"circledown": 59028,
"hdd": 59034,
"ie": 59035,
"delete": 59039,
"enter": 59040,
"pushpino": 59041,
"pushpin": 59042,
"heart": 59043,
"hearto": 59044,
"smile-circle": 59047,
"smileo": 59048,
"frowno": 59049,
"calculator": 59050,
"chrome": 59052,
"github": 59053,
"iconfontdesktop": 59060,
"caretcircleoup": 59061,
"upload": 59062,
"download": 59063,
"piechart": 59064,
"lock1": 59065,
"unlock": 59066,
"windowso": 59068,
"dotchart": 59069,
"barchart": 59070,
"codesquare": 59071,
"plussquare": 59072,
"minussquare": 59073,
"closesquare": 59074,
"closesquareo": 59075,
"checksquare": 59076,
"checksquareo": 59077,
"fastbackward": 59078,
"fastforward": 59079,
"upsquare": 59080,
"downsquare": 59081,
"leftsquare": 59082,
"rightsquare": 59083,
"rightsquareo": 59084,
"leftsquareo": 59085,
"down-square-o": 59086,
"up-square-o": 59087,
"play": 59088,
"playcircleo": 59089,
"tag": 59090,
"tago": 59091,
"addfile": 59664,
"folder1": 58978,
"file1": 58980,
"switcher": 59667,
"addfolder": 59668,
"folderopen": 59033,
"search1": 58992,
"ellipsis1": 58951,
"calendar": 59067,
"filetext1": 59032,
"copy1": 58952,
"jpgfile1": 59036,
"pdffile1": 59059,
"exclefile1": 59056,
"pptfile1": 59057,
"unknowfile1": 59055,
"wordfile1": 59058,
"dingding": 59683,
"dingding-o": 59685,
"mobile1": 59000,
"tablet1": 58990,
"bells": 58958,
"disconnect": 58959,
"database": 58960,
"barcode": 58962,
"hourglass": 58963,
"key": 58964,
"flag": 58965,
"layout": 58966,
"printer": 58995,
"USB": 59095,
"skin": 59096,
"tool": 59097,
"car": 59100,
"addusergroup": 59101,
"carryout": 59103,
"deleteuser": 59104,
"deleteusergroup": 59105,
"man": 59106,
"isv": 59107,
"gift": 59108,
"idcard": 59109,
"medicinebox": 59110,
"redenvelopes": 59111,
"rest": 59112,
"Safety": 59114,
"wallet": 59115,
"woman": 59116,
"adduser": 59117,
"bank": 59118,
"Trophy": 59119,
"loading1": 59054,
"loading2": 58957,
"like2": 59037,
"dislike2": 59038,
"like1": 58956,
"dislike1": 58955,
"bulb1": 58953,
"rocket1": 59663,
"select1": 58954,
"apple1": 59020,
"apple-o": 59092,
"android1": 59704,
"android": 59021,
"aliwangwang-o1": 59023,
"aliwangwang": 59022,
"pay-circle1": 59045,
"pay-circle-o1": 59046,
"poweroff": 59093,
"trademark": 58961,
"find": 59099,
"copyright": 59102,
"sound": 59113,
"earth": 59121,
"wifi": 59094,
"sync": 59098,
"login": 58967,
"logout": 58970,
"reload1": 58902,
"message1": 59051,
"shake": 59727,
"API": 59729,
"appstore-o": 59029,
"appstore1": 59030,
"scan1": 59031,
"exception1": 58981,
"contacts": 59120,
"solution1": 58991,
"fork": 59122,
"edit": 59026,
"form": 59798,
"warning": 59799,
"table": 59800,
"profile": 59801,
"dashboard": 59802,
"indent-left": 59814,
"indent-right": 59815,
"menu-unfold": 59820,
"menu-fold": 59821,
"antdesign": 59826,
"alipay-square": 59827,
"codepen-circle": 59828,
"google": 59829,
"amazon": 59830,
"codepen": 59831,
"facebook-square": 59832,
"dropbox": 59833,
"googleplus": 59834,
"linkedin-square": 59835,
"medium-monogram": 59836,
"gitlab": 59837,
"medium-wordmark": 59838,
"QQ": 59839,
"skype": 59840,
"taobao-square": 59841,
"alipay-circle": 59842,
"youtube": 59843,
"wechat": 59844,
"twitter": 59845,
"weibo": 59846,
"HTML": 59847,
"taobao-circle": 59123,
"weibo-circle": 59124,
"weibo-square": 59125,
"CodeSandbox": 59860,
"aliyun": 59892,
"zhihu": 59139,
"behance": 59143,
"dribbble": 59145,
"dribbble-square": 59146,
"behance-square": 59144,
"file-markdown": 59140,
"instagram": 59147,
"yuque": 59148,
"slack": 59141,
"slack-square": 59142
}

View file

@ -0,0 +1,413 @@
{
"500px": 61696,
"500px-with-circle": 61697,
"add-to-list": 61698,
"add-user": 61699,
"address": 61700,
"adjust": 61701,
"air": 61702,
"aircraft": 61703,
"aircraft-landing": 61704,
"aircraft-take-off": 61705,
"align-bottom": 61706,
"align-horizontal-middle": 61707,
"align-left": 61708,
"align-right": 61709,
"align-top": 61710,
"align-vertical-middle": 61711,
"app-store": 61712,
"archive": 61713,
"area-graph": 61714,
"arrow-bold-down": 61715,
"arrow-bold-left": 61716,
"arrow-bold-right": 61717,
"arrow-bold-up": 61718,
"arrow-down": 61719,
"arrow-left": 61720,
"arrow-long-down": 61721,
"arrow-long-left": 61722,
"arrow-long-right": 61723,
"arrow-long-up": 61724,
"arrow-right": 61725,
"arrow-up": 61726,
"arrow-with-circle-down": 61727,
"arrow-with-circle-left": 61728,
"arrow-with-circle-right": 61729,
"arrow-with-circle-up": 61730,
"attachment": 61731,
"awareness-ribbon": 61732,
"back": 61733,
"back-in-time": 61734,
"baidu": 61735,
"bar-graph": 61736,
"basecamp": 61737,
"battery": 61738,
"beamed-note": 61739,
"behance": 61740,
"bell": 61741,
"blackboard": 61742,
"block": 61743,
"book": 61744,
"bookmark": 61745,
"bookmarks": 61746,
"bowl": 61747,
"box": 61748,
"briefcase": 61749,
"browser": 61750,
"brush": 61751,
"bucket": 61752,
"bug": 61753,
"cake": 61754,
"calculator": 61755,
"calendar": 61756,
"camera": 61757,
"ccw": 61758,
"chat": 61759,
"check": 61760,
"chevron-down": 61761,
"chevron-left": 61762,
"chevron-right": 61763,
"chevron-small-down": 61764,
"chevron-small-left": 61765,
"chevron-small-right": 61766,
"chevron-small-up": 61767,
"chevron-thin-down": 61768,
"chevron-thin-left": 61769,
"chevron-thin-right": 61770,
"chevron-thin-up": 61771,
"chevron-up": 61772,
"chevron-with-circle-down": 61773,
"chevron-with-circle-left": 61774,
"chevron-with-circle-right": 61775,
"chevron-with-circle-up": 61776,
"circle": 61777,
"circle-with-cross": 61778,
"circle-with-minus": 61779,
"circle-with-plus": 61780,
"circular-graph": 61781,
"clapperboard": 61782,
"classic-computer": 61783,
"clipboard": 61784,
"clock": 61785,
"cloud": 61786,
"code": 61787,
"cog": 61788,
"colours": 61789,
"compass": 61790,
"controller-fast-backward": 61791,
"controller-fast-forward": 61792,
"controller-jump-to-start": 61793,
"controller-next": 61794,
"controller-paus": 61795,
"controller-play": 61796,
"controller-record": 61797,
"controller-stop": 61798,
"controller-volume": 61799,
"copy": 61800,
"creative-cloud": 61801,
"creative-commons": 61802,
"creative-commons-attribution": 61803,
"creative-commons-noderivs": 61804,
"creative-commons-noncommercial-eu": 61805,
"creative-commons-noncommercial-us": 61806,
"creative-commons-public-domain": 61807,
"creative-commons-remix": 61808,
"creative-commons-share": 61809,
"creative-commons-sharealike": 61810,
"credit": 61811,
"credit-card": 61812,
"crop": 61813,
"cross": 61814,
"cup": 61815,
"cw": 61816,
"cycle": 61817,
"database": 61818,
"dial-pad": 61819,
"direction": 61820,
"document": 61821,
"document-landscape": 61822,
"documents": 61823,
"dot-single": 61824,
"dots-three-horizontal": 61825,
"dots-three-vertical": 61826,
"dots-two-horizontal": 61827,
"dots-two-vertical": 61828,
"download": 61829,
"dribbble": 61830,
"dribbble-with-circle": 61831,
"drink": 61832,
"drive": 61833,
"drop": 61834,
"dropbox": 61835,
"edit": 61836,
"email": 61837,
"emoji-flirt": 61838,
"emoji-happy": 61839,
"emoji-neutral": 61840,
"emoji-sad": 61841,
"erase": 61842,
"eraser": 61843,
"evernote": 61844,
"export": 61845,
"eye": 61846,
"eye-with-line": 61847,
"facebook": 61848,
"facebook-with-circle": 61849,
"feather": 61850,
"fingerprint": 61851,
"flag": 61852,
"flash": 61853,
"flashlight": 61854,
"flat-brush": 61855,
"flattr": 61856,
"flickr": 61857,
"flickr-with-circle": 61858,
"flow-branch": 61859,
"flow-cascade": 61860,
"flow-line": 61861,
"flow-parallel": 61862,
"flow-tree": 61863,
"flower": 61864,
"folder": 61865,
"folder-images": 61866,
"folder-music": 61867,
"folder-video": 61868,
"forward": 61869,
"foursquare": 61870,
"funnel": 61871,
"game-controller": 61872,
"gauge": 61873,
"github": 61874,
"github-with-circle": 61875,
"globe": 61876,
"google-": 61877,
"google--with-circle": 61878,
"google-drive": 61879,
"google-hangouts": 61880,
"google-play": 61881,
"graduation-cap": 61882,
"grid": 61883,
"grooveshark": 61884,
"hair-cross": 61885,
"hand": 61886,
"heart": 61887,
"heart-outlined": 61888,
"help": 61889,
"help-with-circle": 61890,
"home": 61891,
"hour-glass": 61892,
"houzz": 61893,
"icloud": 61894,
"image": 61895,
"image-inverted": 61896,
"images": 61897,
"inbox": 61898,
"infinity": 61899,
"info": 61900,
"info-with-circle": 61901,
"instagram": 61902,
"instagram-with-circle": 61903,
"install": 61904,
"key": 61905,
"keyboard": 61906,
"lab-flask": 61907,
"landline": 61908,
"language": 61909,
"laptop": 61910,
"lastfm": 61911,
"lastfm-with-circle": 61912,
"layers": 61913,
"leaf": 61914,
"level-down": 61915,
"level-up": 61916,
"lifebuoy": 61917,
"light-bulb": 61918,
"light-down": 61919,
"light-up": 61920,
"line-graph": 61921,
"link": 61922,
"linkedin": 61923,
"linkedin-with-circle": 61924,
"list": 61925,
"location": 61926,
"location-pin": 61927,
"lock": 61928,
"lock-open": 61929,
"log-out": 61930,
"login": 61931,
"loop": 61932,
"magnet": 61933,
"magnifying-glass": 61934,
"mail": 61935,
"mail-with-circle": 61936,
"man": 61937,
"map": 61938,
"mask": 61939,
"medal": 61940,
"medium": 61941,
"medium-with-circle": 61942,
"megaphone": 61943,
"menu": 61944,
"merge": 61945,
"message": 61946,
"mic": 61947,
"minus": 61948,
"mixi": 61949,
"mobile": 61950,
"modern-mic": 61951,
"moon": 61952,
"mouse": 61953,
"mouse-pointer": 61954,
"music": 61955,
"network": 61956,
"new": 61957,
"new-message": 61958,
"news": 61959,
"newsletter": 61960,
"note": 61961,
"notification": 61962,
"notifications-off": 61963,
"old-mobile": 61964,
"old-phone": 61965,
"onedrive": 61966,
"open-book": 61967,
"palette": 61968,
"paper-plane": 61969,
"paypal": 61970,
"pencil": 61971,
"phone": 61972,
"picasa": 61973,
"pie-chart": 61974,
"pin": 61975,
"pinterest": 61976,
"pinterest-with-circle": 61977,
"plus": 61978,
"popup": 61979,
"power-plug": 61980,
"price-ribbon": 61981,
"price-tag": 61982,
"print": 61983,
"progress-empty": 61984,
"progress-full": 61985,
"progress-one": 61986,
"progress-two": 61987,
"publish": 61988,
"qq": 61989,
"qq-with-circle": 61990,
"quote": 61991,
"radio": 61992,
"raft": 61993,
"raft-with-circle": 61994,
"rainbow": 61995,
"rdio": 61996,
"rdio-with-circle": 61997,
"remove-user": 61998,
"renren": 61999,
"reply": 62000,
"reply-all": 62001,
"resize-100-": 62002,
"resize-full-screen": 62003,
"retweet": 62004,
"rocket": 62005,
"round-brush": 62006,
"rss": 62007,
"ruler": 62008,
"save": 62009,
"scissors": 62010,
"scribd": 62011,
"select-arrows": 62012,
"share": 62013,
"share-alternative": 62014,
"shareable": 62015,
"shield": 62016,
"shop": 62017,
"shopping-bag": 62018,
"shopping-basket": 62019,
"shopping-cart": 62020,
"shuffle": 62021,
"signal": 62022,
"sina-weibo": 62023,
"skype": 62024,
"skype-with-circle": 62025,
"slideshare": 62026,
"smashing": 62027,
"sound": 62028,
"sound-mix": 62029,
"sound-mute": 62030,
"soundcloud": 62031,
"sports-club": 62032,
"spotify": 62033,
"spotify-with-circle": 62034,
"spreadsheet": 62035,
"squared-cross": 62036,
"squared-minus": 62037,
"squared-plus": 62038,
"star": 62039,
"star-outlined": 62040,
"stopwatch": 62041,
"stumbleupon": 62042,
"stumbleupon-with-circle": 62043,
"suitcase": 62044,
"swap": 62045,
"swarm": 62046,
"sweden": 62047,
"switch": 62048,
"tablet": 62049,
"tablet-mobile-combo": 62050,
"tag": 62051,
"text": 62052,
"text-document": 62053,
"text-document-inverted": 62054,
"thermometer": 62055,
"thumbs-down": 62056,
"thumbs-up": 62057,
"thunder-cloud": 62058,
"ticket": 62059,
"time-slot": 62060,
"tools": 62061,
"traffic-cone": 62062,
"trash": 62063,
"tree": 62064,
"triangle-down": 62065,
"triangle-left": 62066,
"triangle-right": 62067,
"triangle-up": 62068,
"tripadvisor": 62069,
"trophy": 62070,
"tumblr": 62071,
"tumblr-with-circle": 62072,
"tv": 62073,
"twitter": 62074,
"twitter-with-circle": 62075,
"typing": 62076,
"uninstall": 62077,
"unread": 62078,
"untag": 62079,
"upload": 62080,
"upload-to-cloud": 62081,
"user": 62082,
"users": 62083,
"v-card": 62084,
"video": 62085,
"video-camera": 62086,
"vimeo": 62087,
"vimeo-with-circle": 62088,
"vine": 62089,
"vine-with-circle": 62090,
"vinyl": 62091,
"vk": 62092,
"vk-alternitive": 62093,
"vk-with-circle": 62094,
"voicemail": 62095,
"wallet": 62096,
"warning": 62097,
"water": 62098,
"windows-store": 62099,
"xing": 62100,
"xing-with-circle": 62101,
"yelp": 62102,
"youko": 62103,
"youko-with-circle": 62104,
"youtube": 62105,
"youtube-with-circle": 62106
}

View file

@ -0,0 +1,72 @@
{
"archive": 61696,
"arrow-down": 61697,
"arrow-left": 61698,
"arrow-right": 61699,
"arrow-up": 61700,
"bell": 61701,
"calendar": 61702,
"camera": 61703,
"cart": 61704,
"chart": 61705,
"check": 61706,
"chevron-down": 61707,
"chevron-left": 61708,
"chevron-right": 61709,
"chevron-up": 61710,
"clock": 61711,
"close": 61712,
"close-o": 61713,
"comment": 61714,
"credit-card": 61715,
"envelope": 61716,
"exclamation": 61717,
"external-link": 61718,
"eye": 61719,
"gear": 61720,
"heart": 61721,
"image": 61722,
"like": 61723,
"link": 61724,
"location": 61725,
"lock": 61726,
"minus": 61727,
"navicon": 61728,
"paperclip": 61729,
"pencil": 61730,
"play": 61731,
"plus": 61732,
"pointer": 61733,
"question": 61734,
"redo": 61735,
"refresh": 61736,
"retweet": 61737,
"sc-facebook": 61738,
"sc-github": 61739,
"sc-google-plus": 61740,
"sc-instagram": 61741,
"sc-linkedin": 61742,
"sc-odnoklassniki": 61743,
"sc-pinterest": 61744,
"sc-skype": 61745,
"sc-soundcloud": 61746,
"sc-telegram": 61747,
"sc-tumblr": 61748,
"sc-twitter": 61749,
"sc-vimeo": 61750,
"sc-vk": 61751,
"sc-youtube": 61752,
"search": 61753,
"share-apple": 61754,
"share-google": 61755,
"spinner": 61756,
"spinner-2": 61757,
"spinner-3": 61758,
"star": 61759,
"tag": 61760,
"trash": 61761,
"trophy": 61762,
"undo": 61763,
"unlock": 61764,
"user": 61765
}

View file

@ -0,0 +1,281 @@
{
"activity": 61696,
"airplay": 61697,
"alert-circle": 61698,
"alert-octagon": 61699,
"alert-triangle": 61700,
"align-center": 61701,
"align-justify": 61702,
"align-left": 61703,
"align-right": 61704,
"anchor": 61705,
"aperture": 61706,
"archive": 61707,
"arrow-down": 61708,
"arrow-down-circle": 61709,
"arrow-down-left": 61710,
"arrow-down-right": 61711,
"arrow-left": 61712,
"arrow-left-circle": 61713,
"arrow-right": 61714,
"arrow-right-circle": 61715,
"arrow-up": 61716,
"arrow-up-circle": 61717,
"arrow-up-left": 61718,
"arrow-up-right": 61719,
"at-sign": 61720,
"award": 61721,
"bar-chart": 61722,
"bar-chart-2": 61723,
"battery": 61724,
"battery-charging": 61725,
"bell": 61726,
"bell-off": 61727,
"bluetooth": 61728,
"bold": 61729,
"book": 61730,
"book-open": 61731,
"bookmark": 61732,
"box": 61733,
"briefcase": 61734,
"calendar": 61735,
"camera": 61736,
"camera-off": 61737,
"cast": 61738,
"check": 61739,
"check-circle": 61740,
"check-square": 61741,
"chevron-down": 61742,
"chevron-left": 61743,
"chevron-right": 61744,
"chevron-up": 61745,
"chevrons-down": 61746,
"chevrons-left": 61747,
"chevrons-right": 61748,
"chevrons-up": 61749,
"chrome": 61750,
"circle": 61751,
"clipboard": 61752,
"clock": 61753,
"cloud": 61754,
"cloud-drizzle": 61755,
"cloud-lightning": 61756,
"cloud-off": 61757,
"cloud-rain": 61758,
"cloud-snow": 61759,
"code": 61760,
"codepen": 61761,
"codesandbox": 61972,
"coffee": 61762,
"columns": 61973,
"command": 61763,
"compass": 61764,
"copy": 61765,
"corner-down-left": 61766,
"corner-down-right": 61767,
"corner-left-down": 61768,
"corner-left-up": 61769,
"corner-right-down": 61770,
"corner-right-up": 61771,
"corner-up-left": 61772,
"corner-up-right": 61773,
"cpu": 61774,
"credit-card": 61775,
"crop": 61776,
"crosshair": 61777,
"database": 61778,
"delete": 61779,
"disc": 61780,
"dollar-sign": 61781,
"download": 61782,
"download-cloud": 61783,
"droplet": 61784,
"edit": 61785,
"edit-2": 61786,
"edit-3": 61787,
"external-link": 61788,
"eye": 61789,
"eye-off": 61790,
"facebook": 61791,
"fast-forward": 61792,
"feather": 61793,
"figma": 61970,
"file": 61794,
"file-minus": 61795,
"file-plus": 61796,
"file-text": 61797,
"film": 61798,
"filter": 61799,
"flag": 61800,
"folder": 61801,
"folder-minus": 61802,
"folder-plus": 61803,
"frown": 61804,
"gift": 61805,
"git-branch": 61806,
"git-commit": 61807,
"git-merge": 61808,
"git-pull-request": 61809,
"github": 61810,
"gitlab": 61811,
"globe": 61812,
"grid": 61813,
"hard-drive": 61814,
"hash": 61815,
"headphones": 61816,
"heart": 61817,
"help-circle": 61818,
"hexagon": 61974,
"home": 61819,
"image": 61820,
"inbox": 61821,
"info": 61822,
"instagram": 61823,
"italic": 61824,
"key": 61967,
"layers": 61825,
"layout": 61826,
"life-buoy": 61827,
"link": 61828,
"link-2": 61829,
"linkedin": 61830,
"list": 61831,
"loader": 61832,
"lock": 61833,
"log-in": 61834,
"log-out": 61835,
"mail": 61836,
"map": 61837,
"map-pin": 61838,
"maximize": 61839,
"maximize-2": 61840,
"meh": 61841,
"menu": 61842,
"message-circle": 61843,
"message-square": 61844,
"mic": 61845,
"mic-off": 61846,
"minimize": 61847,
"minimize-2": 61848,
"minus": 61849,
"minus-circle": 61850,
"minus-square": 61851,
"monitor": 61852,
"moon": 61853,
"more-horizontal": 61854,
"more-vertical": 61855,
"mouse-pointer": 61968,
"move": 61856,
"music": 61857,
"navigation": 61858,
"navigation-2": 61859,
"octagon": 61860,
"package": 61861,
"paperclip": 61862,
"pause": 61863,
"pause-circle": 61864,
"pen-tool": 61969,
"percent": 61865,
"phone": 61866,
"phone-call": 61867,
"phone-forwarded": 61868,
"phone-incoming": 61869,
"phone-missed": 61870,
"phone-off": 61871,
"phone-outgoing": 61872,
"pie-chart": 61873,
"play": 61874,
"play-circle": 61875,
"plus": 61876,
"plus-circle": 61877,
"plus-square": 61878,
"pocket": 61879,
"power": 61880,
"printer": 61881,
"radio": 61882,
"refresh-ccw": 61883,
"refresh-cw": 61884,
"repeat": 61885,
"rewind": 61886,
"rotate-ccw": 61887,
"rotate-cw": 61888,
"rss": 61889,
"save": 61890,
"scissors": 61891,
"search": 61892,
"send": 61893,
"server": 61894,
"settings": 61895,
"share": 61896,
"share-2": 61897,
"shield": 61898,
"shield-off": 61899,
"shopping-bag": 61900,
"shopping-cart": 61901,
"shuffle": 61902,
"sidebar": 61903,
"skip-back": 61904,
"skip-forward": 61905,
"slack": 61906,
"slash": 61907,
"sliders": 61908,
"smartphone": 61909,
"smile": 61910,
"speaker": 61911,
"square": 61912,
"star": 61913,
"stop-circle": 61914,
"sun": 61915,
"sunrise": 61916,
"sunset": 61917,
"tablet": 61975,
"tag": 61919,
"target": 61920,
"terminal": 61921,
"thermometer": 61922,
"thumbs-down": 61923,
"thumbs-up": 61924,
"toggle-left": 61925,
"toggle-right": 61926,
"trash": 61927,
"trash-2": 61928,
"trello": 61929,
"trending-down": 61930,
"trending-up": 61931,
"triangle": 61932,
"truck": 61933,
"tv": 61934,
"twitter": 61935,
"type": 61936,
"umbrella": 61937,
"underline": 61938,
"unlock": 61939,
"upload": 61940,
"upload-cloud": 61941,
"user": 61942,
"user-check": 61943,
"user-minus": 61944,
"user-plus": 61945,
"user-x": 61946,
"users": 61947,
"video": 61948,
"video-off": 61949,
"voicemail": 61950,
"volume": 61951,
"volume-1": 61952,
"volume-2": 61953,
"volume-x": 61954,
"watch": 61955,
"wifi": 61956,
"wifi-off": 61957,
"wind": 61958,
"x": 61959,
"x-circle": 61960,
"x-octagon": 61971,
"x-square": 61961,
"youtube": 61962,
"zap": 61963,
"zap-off": 61964,
"zoom-in": 61965,
"zoom-out": 61966
}

View file

@ -0,0 +1,788 @@
{
"glass": 61440,
"music": 61441,
"search": 61442,
"envelope-o": 61443,
"heart": 61444,
"star": 61445,
"star-o": 61446,
"user": 61447,
"film": 61448,
"th-large": 61449,
"th": 61450,
"th-list": 61451,
"check": 61452,
"remove": 61453,
"close": 61453,
"times": 61453,
"search-plus": 61454,
"search-minus": 61456,
"power-off": 61457,
"signal": 61458,
"gear": 61459,
"cog": 61459,
"trash-o": 61460,
"home": 61461,
"file-o": 61462,
"clock-o": 61463,
"road": 61464,
"download": 61465,
"arrow-circle-o-down": 61466,
"arrow-circle-o-up": 61467,
"inbox": 61468,
"play-circle-o": 61469,
"rotate-right": 61470,
"repeat": 61470,
"refresh": 61473,
"list-alt": 61474,
"lock": 61475,
"flag": 61476,
"headphones": 61477,
"volume-off": 61478,
"volume-down": 61479,
"volume-up": 61480,
"qrcode": 61481,
"barcode": 61482,
"tag": 61483,
"tags": 61484,
"book": 61485,
"bookmark": 61486,
"print": 61487,
"camera": 61488,
"font": 61489,
"bold": 61490,
"italic": 61491,
"text-height": 61492,
"text-width": 61493,
"align-left": 61494,
"align-center": 61495,
"align-right": 61496,
"align-justify": 61497,
"list": 61498,
"dedent": 61499,
"outdent": 61499,
"indent": 61500,
"video-camera": 61501,
"photo": 61502,
"image": 61502,
"picture-o": 61502,
"pencil": 61504,
"map-marker": 61505,
"adjust": 61506,
"tint": 61507,
"edit": 61508,
"pencil-square-o": 61508,
"share-square-o": 61509,
"check-square-o": 61510,
"arrows": 61511,
"step-backward": 61512,
"fast-backward": 61513,
"backward": 61514,
"play": 61515,
"pause": 61516,
"stop": 61517,
"forward": 61518,
"fast-forward": 61520,
"step-forward": 61521,
"eject": 61522,
"chevron-left": 61523,
"chevron-right": 61524,
"plus-circle": 61525,
"minus-circle": 61526,
"times-circle": 61527,
"check-circle": 61528,
"question-circle": 61529,
"info-circle": 61530,
"crosshairs": 61531,
"times-circle-o": 61532,
"check-circle-o": 61533,
"ban": 61534,
"arrow-left": 61536,
"arrow-right": 61537,
"arrow-up": 61538,
"arrow-down": 61539,
"mail-forward": 61540,
"share": 61540,
"expand": 61541,
"compress": 61542,
"plus": 61543,
"minus": 61544,
"asterisk": 61545,
"exclamation-circle": 61546,
"gift": 61547,
"leaf": 61548,
"fire": 61549,
"eye": 61550,
"eye-slash": 61552,
"warning": 61553,
"exclamation-triangle": 61553,
"plane": 61554,
"calendar": 61555,
"random": 61556,
"comment": 61557,
"magnet": 61558,
"chevron-up": 61559,
"chevron-down": 61560,
"retweet": 61561,
"shopping-cart": 61562,
"folder": 61563,
"folder-open": 61564,
"arrows-v": 61565,
"arrows-h": 61566,
"bar-chart-o": 61568,
"bar-chart": 61568,
"twitter-square": 61569,
"facebook-square": 61570,
"camera-retro": 61571,
"key": 61572,
"gears": 61573,
"cogs": 61573,
"comments": 61574,
"thumbs-o-up": 61575,
"thumbs-o-down": 61576,
"star-half": 61577,
"heart-o": 61578,
"sign-out": 61579,
"linkedin-square": 61580,
"thumb-tack": 61581,
"external-link": 61582,
"sign-in": 61584,
"trophy": 61585,
"github-square": 61586,
"upload": 61587,
"lemon-o": 61588,
"phone": 61589,
"square-o": 61590,
"bookmark-o": 61591,
"phone-square": 61592,
"twitter": 61593,
"facebook-f": 61594,
"facebook": 61594,
"github": 61595,
"unlock": 61596,
"credit-card": 61597,
"feed": 61598,
"rss": 61598,
"hdd-o": 61600,
"bullhorn": 61601,
"bell": 61683,
"certificate": 61603,
"hand-o-right": 61604,
"hand-o-left": 61605,
"hand-o-up": 61606,
"hand-o-down": 61607,
"arrow-circle-left": 61608,
"arrow-circle-right": 61609,
"arrow-circle-up": 61610,
"arrow-circle-down": 61611,
"globe": 61612,
"wrench": 61613,
"tasks": 61614,
"filter": 61616,
"briefcase": 61617,
"arrows-alt": 61618,
"group": 61632,
"users": 61632,
"chain": 61633,
"link": 61633,
"cloud": 61634,
"flask": 61635,
"cut": 61636,
"scissors": 61636,
"copy": 61637,
"files-o": 61637,
"paperclip": 61638,
"save": 61639,
"floppy-o": 61639,
"square": 61640,
"navicon": 61641,
"reorder": 61641,
"bars": 61641,
"list-ul": 61642,
"list-ol": 61643,
"strikethrough": 61644,
"underline": 61645,
"table": 61646,
"magic": 61648,
"truck": 61649,
"pinterest": 61650,
"pinterest-square": 61651,
"google-plus-square": 61652,
"google-plus": 61653,
"money": 61654,
"caret-down": 61655,
"caret-up": 61656,
"caret-left": 61657,
"caret-right": 61658,
"columns": 61659,
"unsorted": 61660,
"sort": 61660,
"sort-down": 61661,
"sort-desc": 61661,
"sort-up": 61662,
"sort-asc": 61662,
"envelope": 61664,
"linkedin": 61665,
"rotate-left": 61666,
"undo": 61666,
"legal": 61667,
"gavel": 61667,
"dashboard": 61668,
"tachometer": 61668,
"comment-o": 61669,
"comments-o": 61670,
"flash": 61671,
"bolt": 61671,
"sitemap": 61672,
"umbrella": 61673,
"paste": 61674,
"clipboard": 61674,
"lightbulb-o": 61675,
"exchange": 61676,
"cloud-download": 61677,
"cloud-upload": 61678,
"user-md": 61680,
"stethoscope": 61681,
"suitcase": 61682,
"bell-o": 61602,
"coffee": 61684,
"cutlery": 61685,
"file-text-o": 61686,
"building-o": 61687,
"hospital-o": 61688,
"ambulance": 61689,
"medkit": 61690,
"fighter-jet": 61691,
"beer": 61692,
"h-square": 61693,
"plus-square": 61694,
"angle-double-left": 61696,
"angle-double-right": 61697,
"angle-double-up": 61698,
"angle-double-down": 61699,
"angle-left": 61700,
"angle-right": 61701,
"angle-up": 61702,
"angle-down": 61703,
"desktop": 61704,
"laptop": 61705,
"tablet": 61706,
"mobile-phone": 61707,
"mobile": 61707,
"circle-o": 61708,
"quote-left": 61709,
"quote-right": 61710,
"spinner": 61712,
"circle": 61713,
"mail-reply": 61714,
"reply": 61714,
"github-alt": 61715,
"folder-o": 61716,
"folder-open-o": 61717,
"smile-o": 61720,
"frown-o": 61721,
"meh-o": 61722,
"gamepad": 61723,
"keyboard-o": 61724,
"flag-o": 61725,
"flag-checkered": 61726,
"terminal": 61728,
"code": 61729,
"mail-reply-all": 61730,
"reply-all": 61730,
"star-half-empty": 61731,
"star-half-full": 61731,
"star-half-o": 61731,
"location-arrow": 61732,
"crop": 61733,
"code-fork": 61734,
"unlink": 61735,
"chain-broken": 61735,
"question": 61736,
"info": 61737,
"exclamation": 61738,
"superscript": 61739,
"subscript": 61740,
"eraser": 61741,
"puzzle-piece": 61742,
"microphone": 61744,
"microphone-slash": 61745,
"shield": 61746,
"calendar-o": 61747,
"fire-extinguisher": 61748,
"rocket": 61749,
"maxcdn": 61750,
"chevron-circle-left": 61751,
"chevron-circle-right": 61752,
"chevron-circle-up": 61753,
"chevron-circle-down": 61754,
"html5": 61755,
"css3": 61756,
"anchor": 61757,
"unlock-alt": 61758,
"bullseye": 61760,
"ellipsis-h": 61761,
"ellipsis-v": 61762,
"rss-square": 61763,
"play-circle": 61764,
"ticket": 61765,
"minus-square": 61766,
"minus-square-o": 61767,
"level-up": 61768,
"level-down": 61769,
"check-square": 61770,
"pencil-square": 61771,
"external-link-square": 61772,
"share-square": 61773,
"compass": 61774,
"toggle-down": 61776,
"caret-square-o-down": 61776,
"toggle-up": 61777,
"caret-square-o-up": 61777,
"toggle-right": 61778,
"caret-square-o-right": 61778,
"euro": 61779,
"eur": 61779,
"gbp": 61780,
"dollar": 61781,
"usd": 61781,
"rupee": 61782,
"inr": 61782,
"cny": 61783,
"rmb": 61783,
"yen": 61783,
"jpy": 61783,
"ruble": 61784,
"rouble": 61784,
"rub": 61784,
"won": 61785,
"krw": 61785,
"bitcoin": 61786,
"btc": 61786,
"file": 61787,
"file-text": 61788,
"sort-alpha-asc": 61789,
"sort-alpha-desc": 61790,
"sort-amount-asc": 61792,
"sort-amount-desc": 61793,
"sort-numeric-asc": 61794,
"sort-numeric-desc": 61795,
"thumbs-up": 61796,
"thumbs-down": 61797,
"youtube-square": 61798,
"youtube": 61799,
"xing": 61800,
"xing-square": 61801,
"youtube-play": 61802,
"dropbox": 61803,
"stack-overflow": 61804,
"instagram": 61805,
"flickr": 61806,
"adn": 61808,
"bitbucket": 61809,
"bitbucket-square": 61810,
"tumblr": 61811,
"tumblr-square": 61812,
"long-arrow-down": 61813,
"long-arrow-up": 61814,
"long-arrow-left": 61815,
"long-arrow-right": 61816,
"apple": 61817,
"windows": 61818,
"android": 61819,
"linux": 61820,
"dribbble": 61821,
"skype": 61822,
"foursquare": 61824,
"trello": 61825,
"female": 61826,
"male": 61827,
"gittip": 61828,
"gratipay": 61828,
"sun-o": 61829,
"moon-o": 61830,
"archive": 61831,
"bug": 61832,
"vk": 61833,
"weibo": 61834,
"renren": 61835,
"pagelines": 61836,
"stack-exchange": 61837,
"arrow-circle-o-right": 61838,
"arrow-circle-o-left": 61840,
"toggle-left": 61841,
"caret-square-o-left": 61841,
"dot-circle-o": 61842,
"wheelchair": 61843,
"vimeo-square": 61844,
"turkish-lira": 61845,
"try": 61845,
"plus-square-o": 61846,
"space-shuttle": 61847,
"slack": 61848,
"envelope-square": 61849,
"wordpress": 61850,
"openid": 61851,
"institution": 61852,
"bank": 61852,
"university": 61852,
"mortar-board": 61853,
"graduation-cap": 61853,
"yahoo": 61854,
"google": 61856,
"reddit": 61857,
"reddit-square": 61858,
"stumbleupon-circle": 61859,
"stumbleupon": 61860,
"delicious": 61861,
"digg": 61862,
"pied-piper-pp": 61863,
"pied-piper-alt": 61864,
"drupal": 61865,
"joomla": 61866,
"language": 61867,
"fax": 61868,
"building": 61869,
"child": 61870,
"paw": 61872,
"spoon": 61873,
"cube": 61874,
"cubes": 61875,
"behance": 61876,
"behance-square": 61877,
"steam": 61878,
"steam-square": 61879,
"recycle": 61880,
"automobile": 61881,
"car": 61881,
"cab": 61882,
"taxi": 61882,
"tree": 61883,
"spotify": 61884,
"deviantart": 61885,
"soundcloud": 61886,
"database": 61888,
"file-pdf-o": 61889,
"file-word-o": 61890,
"file-excel-o": 61891,
"file-powerpoint-o": 61892,
"file-photo-o": 61893,
"file-picture-o": 61893,
"file-image-o": 61893,
"file-zip-o": 61894,
"file-archive-o": 61894,
"file-sound-o": 61895,
"file-audio-o": 61895,
"file-movie-o": 61896,
"file-video-o": 61896,
"file-code-o": 61897,
"vine": 61898,
"codepen": 61899,
"jsfiddle": 61900,
"life-bouy": 61901,
"life-buoy": 61901,
"life-saver": 61901,
"support": 61901,
"life-ring": 61901,
"circle-o-notch": 61902,
"ra": 61904,
"resistance": 61904,
"rebel": 61904,
"ge": 61905,
"empire": 61905,
"git-square": 61906,
"git": 61907,
"y-combinator-square": 61908,
"yc-square": 61908,
"hacker-news": 61908,
"tencent-weibo": 61909,
"qq": 61910,
"wechat": 61911,
"weixin": 61911,
"send": 61912,
"paper-plane": 61912,
"send-o": 61913,
"paper-plane-o": 61913,
"history": 61914,
"circle-thin": 61915,
"header": 61916,
"paragraph": 61917,
"sliders": 61918,
"share-alt": 61920,
"share-alt-square": 61921,
"bomb": 61922,
"soccer-ball-o": 61923,
"futbol-o": 61923,
"tty": 61924,
"binoculars": 61925,
"plug": 61926,
"slideshare": 61927,
"twitch": 61928,
"yelp": 61929,
"newspaper-o": 61930,
"wifi": 61931,
"calculator": 61932,
"paypal": 61933,
"google-wallet": 61934,
"cc-visa": 61936,
"cc-mastercard": 61937,
"cc-discover": 61938,
"cc-amex": 61939,
"cc-paypal": 61940,
"cc-stripe": 61941,
"bell-slash": 61942,
"bell-slash-o": 61943,
"trash": 61944,
"copyright": 61945,
"at": 61946,
"eyedropper": 61947,
"paint-brush": 61948,
"birthday-cake": 61949,
"area-chart": 61950,
"pie-chart": 61952,
"line-chart": 61953,
"lastfm": 61954,
"lastfm-square": 61955,
"toggle-off": 61956,
"toggle-on": 61957,
"bicycle": 61958,
"bus": 61959,
"ioxhost": 61960,
"angellist": 61961,
"cc": 61962,
"shekel": 61963,
"sheqel": 61963,
"ils": 61963,
"meanpath": 61964,
"buysellads": 61965,
"connectdevelop": 61966,
"dashcube": 61968,
"forumbee": 61969,
"leanpub": 61970,
"sellsy": 61971,
"shirtsinbulk": 61972,
"simplybuilt": 61973,
"skyatlas": 61974,
"cart-plus": 61975,
"cart-arrow-down": 61976,
"diamond": 61977,
"ship": 61978,
"user-secret": 61979,
"motorcycle": 61980,
"street-view": 61981,
"heartbeat": 61982,
"venus": 61985,
"mars": 61986,
"mercury": 61987,
"intersex": 61988,
"transgender": 61988,
"transgender-alt": 61989,
"venus-double": 61990,
"mars-double": 61991,
"venus-mars": 61992,
"mars-stroke": 61993,
"mars-stroke-v": 61994,
"mars-stroke-h": 61995,
"neuter": 61996,
"genderless": 61997,
"facebook-official": 62000,
"pinterest-p": 62001,
"whatsapp": 62002,
"server": 62003,
"user-plus": 62004,
"user-times": 62005,
"hotel": 62006,
"bed": 62006,
"viacoin": 62007,
"train": 62008,
"subway": 62009,
"medium": 62010,
"yc": 62011,
"y-combinator": 62011,
"optin-monster": 62012,
"opencart": 62013,
"expeditedssl": 62014,
"battery-4": 62016,
"battery": 62016,
"battery-full": 62016,
"battery-3": 62017,
"battery-three-quarters": 62017,
"battery-2": 62018,
"battery-half": 62018,
"battery-1": 62019,
"battery-quarter": 62019,
"battery-0": 62020,
"battery-empty": 62020,
"mouse-pointer": 62021,
"i-cursor": 62022,
"object-group": 62023,
"object-ungroup": 62024,
"sticky-note": 62025,
"sticky-note-o": 62026,
"cc-jcb": 62027,
"cc-diners-club": 62028,
"clone": 62029,
"balance-scale": 62030,
"hourglass-o": 62032,
"hourglass-1": 62033,
"hourglass-start": 62033,
"hourglass-2": 62034,
"hourglass-half": 62034,
"hourglass-3": 62035,
"hourglass-end": 62035,
"hourglass": 62036,
"hand-grab-o": 62037,
"hand-rock-o": 62037,
"hand-stop-o": 62038,
"hand-paper-o": 62038,
"hand-scissors-o": 62039,
"hand-lizard-o": 62040,
"hand-spock-o": 62041,
"hand-pointer-o": 62042,
"hand-peace-o": 62043,
"trademark": 62044,
"registered": 62045,
"creative-commons": 62046,
"gg": 62048,
"gg-circle": 62049,
"tripadvisor": 62050,
"odnoklassniki": 62051,
"odnoklassniki-square": 62052,
"get-pocket": 62053,
"wikipedia-w": 62054,
"safari": 62055,
"chrome": 62056,
"firefox": 62057,
"opera": 62058,
"internet-explorer": 62059,
"tv": 62060,
"television": 62060,
"contao": 62061,
"500px": 62062,
"amazon": 62064,
"calendar-plus-o": 62065,
"calendar-minus-o": 62066,
"calendar-times-o": 62067,
"calendar-check-o": 62068,
"industry": 62069,
"map-pin": 62070,
"map-signs": 62071,
"map-o": 62072,
"map": 62073,
"commenting": 62074,
"commenting-o": 62075,
"houzz": 62076,
"vimeo": 62077,
"black-tie": 62078,
"fonticons": 62080,
"reddit-alien": 62081,
"edge": 62082,
"credit-card-alt": 62083,
"codiepie": 62084,
"modx": 62085,
"fort-awesome": 62086,
"usb": 62087,
"product-hunt": 62088,
"mixcloud": 62089,
"scribd": 62090,
"pause-circle": 62091,
"pause-circle-o": 62092,
"stop-circle": 62093,
"stop-circle-o": 62094,
"shopping-bag": 62096,
"shopping-basket": 62097,
"hashtag": 62098,
"bluetooth": 62099,
"bluetooth-b": 62100,
"percent": 62101,
"gitlab": 62102,
"wpbeginner": 62103,
"wpforms": 62104,
"envira": 62105,
"universal-access": 62106,
"wheelchair-alt": 62107,
"question-circle-o": 62108,
"blind": 62109,
"audio-description": 62110,
"volume-control-phone": 62112,
"braille": 62113,
"assistive-listening-systems": 62114,
"asl-interpreting": 62115,
"american-sign-language-interpreting": 62115,
"deafness": 62116,
"hard-of-hearing": 62116,
"deaf": 62116,
"glide": 62117,
"glide-g": 62118,
"signing": 62119,
"sign-language": 62119,
"low-vision": 62120,
"viadeo": 62121,
"viadeo-square": 62122,
"snapchat": 62123,
"snapchat-ghost": 62124,
"snapchat-square": 62125,
"pied-piper": 62126,
"first-order": 62128,
"yoast": 62129,
"themeisle": 62130,
"google-plus-circle": 62131,
"google-plus-official": 62131,
"fa": 62132,
"font-awesome": 62132,
"handshake-o": 62133,
"envelope-open": 62134,
"envelope-open-o": 62135,
"linode": 62136,
"address-book": 62137,
"address-book-o": 62138,
"vcard": 62139,
"address-card": 62139,
"vcard-o": 62140,
"address-card-o": 62140,
"user-circle": 62141,
"user-circle-o": 62142,
"user-o": 62144,
"id-badge": 62145,
"drivers-license": 62146,
"id-card": 62146,
"drivers-license-o": 62147,
"id-card-o": 62147,
"quora": 62148,
"free-code-camp": 62149,
"telegram": 62150,
"thermometer-4": 62151,
"thermometer": 62151,
"thermometer-full": 62151,
"thermometer-3": 62152,
"thermometer-three-quarters": 62152,
"thermometer-2": 62153,
"thermometer-half": 62153,
"thermometer-1": 62154,
"thermometer-quarter": 62154,
"thermometer-0": 62155,
"thermometer-empty": 62155,
"shower": 62156,
"bathtub": 62157,
"s15": 62157,
"bath": 62157,
"podcast": 62158,
"window-maximize": 62160,
"window-minimize": 62161,
"window-restore": 62162,
"times-rectangle": 62163,
"window-close": 62163,
"times-rectangle-o": 62164,
"window-close-o": 62164,
"bandcamp": 62165,
"grav": 62166,
"etsy": 62167,
"imdb": 62168,
"ravelry": 62169,
"eercast": 62170,
"microchip": 62171,
"snowflake-o": 62172,
"superpowers": 62173,
"wpexplorer": 62174,
"meetup": 62176
}

View file

@ -0,0 +1,619 @@
{
"acrobat-reader": 60095,
"applemusic": 60096,
"atlassian": 60097,
"aws": 60098,
"baidu": 60099,
"bing": 60100,
"bower": 60101,
"dailymotion": 60102,
"delicious": 60103,
"deviantart": 60104,
"disqus": 60105,
"flipboard": 60106,
"graphql": 60107,
"hexo": 60108,
"hipchat": 60109,
"icq": 60110,
"invision": 60111,
"jekyll": 60112,
"jira": 60113,
"json": 60114,
"livestream": 60115,
"messenger": 60116,
"meteor": 60117,
"onenote": 60118,
"mongodb": 60119,
"netflix": 60120,
"nginx": 60121,
"odnoklassniki": 60122,
"onedrive": 60123,
"origin": 60124,
"pingdom": 60125,
"rails": 60126,
"raspberry-pi": 60127,
"redis": 60128,
"redux": 60129,
"saucelabs": 60130,
"scorp": 60131,
"sentry": 60132,
"shazam": 60133,
"shopify": 60134,
"sinaweibo": 60135,
"slides": 60136,
"sublimetext": 60137,
"swift": 60138,
"ted": 60139,
"telegram": 60140,
"tesla": 60141,
"tinder": 60142,
"treehouse": 60143,
"twoo": 60144,
"udacity": 60145,
"webstorm": 60146,
"wix": 60147,
"yandex-international": 60148,
"yandex": 60149,
"ember": 60087,
"cpanel": 60088,
"viber": 60089,
"deskpro": 60090,
"discord": 60091,
"discourse": 60092,
"adobe": 60059,
"algolia": 60060,
"atom": 60061,
"babel": 60062,
"coffeescript": 60063,
"electronjs": 60064,
"mysql": 60065,
"oracle": 60066,
"php": 60067,
"sourcetree": 60068,
"ubuntu": 60069,
"unity": 60070,
"unreal-engine": 60071,
"webpack": 60072,
"angelist": 60026,
"app-store": 60027,
"digg": 60030,
"dockers": 60031,
"envato": 60032,
"gitlab": 60033,
"google-drive": 60034,
"google-play": 60035,
"grunt": 60036,
"gulp": 60037,
"hacker-news": 60038,
"imdb": 60039,
"jenkins": 60040,
"joomla": 60041,
"kickstarter": 60042,
"laravel": 60043,
"less": 60044,
"line": 60045,
"npm": 60046,
"periscope": 60047,
"product-hunt": 60048,
"quora": 60049,
"skyatlas": 60050,
"stylus": 60051,
"travis": 60052,
"trello": 60053,
"uber": 60054,
"vine": 60055,
"visual-studio": 60056,
"vk": 60057,
"vuejs": 60058,
"microsoft": 60025,
"blogger": 60028,
"500px": 59658,
"amazon": 59659,
"ampproject": 59660,
"android": 59661,
"angularjs": 59662,
"apple": 59663,
"behance": 59664,
"bitbucket": 59665,
"bluetooth-b": 59666,
"cloudflare": 59667,
"codepen": 59668,
"css3": 59669,
"dribbble": 59670,
"dropbox": 59671,
"facebook": 59672,
"flickr": 59673,
"foursquare": 59674,
"git": 59675,
"github": 59676,
"google-plus": 59677,
"google": 59678,
"hangout": 59679,
"houzz": 59680,
"html5": 59681,
"instagram": 59682,
"java": 59683,
"jquery": 59684,
"jsfiddle": 59685,
"linkedin": 59686,
"linux": 59687,
"magento": 59688,
"maxcdn": 59689,
"medium": 59690,
"meetup": 59691,
"nodejs": 59692,
"opencart": 59693,
"pinterest": 59694,
"playstation": 59695,
"python": 59696,
"react": 59697,
"reddit": 59698,
"ruby": 59699,
"sass": 59700,
"skype": 59701,
"slack": 59702,
"snapchat": 59703,
"soundcloud": 59704,
"spotify": 59705,
"stack-overflow": 59706,
"steam": 59707,
"stumbleupon": 59708,
"svn": 59709,
"swarm": 59710,
"tripadvisor": 59711,
"tumblr": 59712,
"twitch": 59713,
"twitter": 59714,
"vimeo": 59715,
"wetransfer": 59716,
"whatsapp": 59717,
"wifi-logo": 59718,
"wikipedia": 59719,
"windows": 59720,
"wordpress": 59721,
"xbox": 59722,
"yahoo": 59723,
"yelp": 59724,
"youtube-play": 59725,
"cocoapods": 60200,
"composer": 60201,
"yarn": 60202,
"language": 59943,
"toggle-off": 59948,
"toggle-on": 60029,
"anchor": 60094,
"archive": 60150,
"at": 60151,
"ban": 60152,
"battery-half": 60153,
"battery-full": 60154,
"battery-empty": 60155,
"battery-quarter": 60156,
"battery-three-quarters": 60157,
"bell-alt": 60158,
"bell": 60159,
"bookmark-alt": 60160,
"bookmark": 60161,
"bug": 60162,
"calculator": 60163,
"calendar": 60164,
"crosshairs": 60165,
"desktop": 60166,
"download": 60167,
"film": 60168,
"history": 60169,
"hourglass-end": 60170,
"hourglass-half": 60171,
"hourglass-start": 60172,
"hourglass": 60173,
"info": 60174,
"key": 60175,
"keyboard": 60176,
"laptop": 60177,
"lightbulb": 60178,
"magnet": 60179,
"map-marker-alt": 60180,
"map-marker": 60181,
"map": 60182,
"mobile-alt": 60183,
"mobile": 60184,
"paw": 60185,
"phone": 60186,
"power": 60187,
"qrcode": 60188,
"question": 60189,
"search": 60190,
"sitemap": 60191,
"star-half": 60192,
"stopwatch": 60193,
"tablet-alt": 60194,
"tablet": 60195,
"ticket": 60196,
"tv": 60197,
"upload": 60198,
"user-secret": 60199,
"camera": 59798,
"clock": 59799,
"close-a": 59800,
"code": 59801,
"comment": 59802,
"commenting": 59803,
"comments": 59804,
"crop": 59805,
"cursor": 59806,
"database": 59807,
"date": 59808,
"earth": 59809,
"email": 59810,
"eye": 59811,
"female": 59812,
"favorite": 59813,
"filter": 59814,
"fire": 59815,
"flag": 59816,
"flash": 59817,
"home": 59818,
"link": 59819,
"locked": 59820,
"male": 59821,
"minus-a": 59822,
"more-v-a": 59823,
"more-v": 59824,
"move-h-a": 59825,
"move-h": 59826,
"nav-icon-a": 59827,
"nav-icon-grid-a": 59828,
"nav-icon-grid": 59829,
"nav-icon-list-a": 59830,
"nav-icon-list": 59831,
"nav-icon": 59832,
"navigate": 59833,
"paper-plane": 59834,
"person": 59835,
"persons": 59836,
"picture": 59837,
"plus-a": 59838,
"print": 59839,
"quote-a-left": 59840,
"quote-a-right": 59841,
"quote-left": 59842,
"quote-right": 59843,
"reply": 59844,
"rss": 59845,
"scissors": 59846,
"share-a": 59847,
"share": 59848,
"trash": 59849,
"unlocked": 59850,
"usb": 59851,
"wifi": 59852,
"world-o": 59853,
"world": 59854,
"zoom": 59855,
"adjust": 60015,
"recycle": 60016,
"pinboard": 60093,
"zoom-minus": 60082,
"zoom-plus": 60083,
"check": 60084,
"asterisk": 60085,
"hashtag": 60086,
"checkbox-active": 59778,
"checkbox-passive": 59779,
"radio-btn-active": 59780,
"radio-btn-passive": 59781,
"shopping-bag-1": 60011,
"shopping-bag": 60012,
"shopping-barcode": 60017,
"shopping-basket-add": 60018,
"shopping-basket-remove": 60019,
"shopping-basket": 60020,
"shopping-package": 60021,
"shopping-pos-machine": 60022,
"shopping-sale": 60023,
"shopping-store": 60024,
"angle-dobule-down": 59748,
"angle-dobule-left": 59749,
"angle-dobule-right": 59750,
"angle-dobule-up": 59751,
"angle-down": 59752,
"angle-left": 59753,
"angle-right": 59754,
"angle-up": 59755,
"arrow-down-l": 59756,
"arrow-down": 59757,
"arrow-expand": 59758,
"arrow-h": 59759,
"arrow-left-l": 59760,
"arrow-left": 59761,
"arrow-move": 59762,
"arrow-resize": 59763,
"arrow-return-left": 59764,
"arrow-return-right": 59765,
"arrow-right-l": 59766,
"arrow-right": 59767,
"arrow-swap": 59768,
"arrow-up-l": 59769,
"arrow-up": 59770,
"arrow-v": 59771,
"caret-down": 59772,
"caret-left": 59773,
"caret-right": 59774,
"caret-up": 59775,
"fi": 59776,
"fontisto": 59777,
"backward": 59866,
"eject": 59867,
"equalizer": 59868,
"forward": 59869,
"headphone": 59870,
"heart": 59871,
"mic": 59872,
"music-note": 59873,
"pause": 59874,
"play-list": 59875,
"play": 59876,
"player-settings": 59877,
"podcast": 59878,
"random": 59879,
"record": 59880,
"star": 59881,
"step-backwrad": 59882,
"step-forward": 59883,
"stop": 59884,
"volume-down": 59885,
"volume-mute": 59886,
"volume-off": 59887,
"volume-up": 59888,
"airplay": 60008,
"bold": 59918,
"broken-link": 59919,
"center-align": 59920,
"close": 59921,
"columns": 59922,
"copy": 59923,
"eraser": 59924,
"export": 59925,
"file-1": 59926,
"file-2": 59927,
"folder": 59928,
"font": 59929,
"import": 59930,
"indent": 59931,
"italic": 59932,
"justify": 59933,
"left-align": 59934,
"link2": 59935,
"list-1": 59936,
"list-2": 59937,
"outdent": 59938,
"paperclip": 59939,
"paragraph": 59940,
"paste": 59941,
"preview": 59942,
"print2": 59943,
"redo": 59944,
"right-align": 59945,
"save-1": 59946,
"save": 59947,
"scissors2": 59948,
"strikethrough": 59949,
"subscript": 59950,
"superscript": 59951,
"table-1": 59952,
"table-2": 59953,
"text-height": 59954,
"text-width": 59955,
"underline": 59956,
"undo": 59957,
"cloud-down": 59958,
"cloud-refresh": 59959,
"cloud-up": 59960,
"cloudy-gusts": 59961,
"cloudy": 59962,
"compass": 59963,
"day-cloudy": 59964,
"day-haze": 59965,
"day-lightning": 59966,
"day-rain": 59967,
"day-snow": 59968,
"day-sunny": 59969,
"fog": 59970,
"horizon-alt": 59971,
"horizon": 59972,
"lightning": 59973,
"lightnings": 59974,
"night-alt-cloudy": 59975,
"night-alt-lightning": 59976,
"night-alt-rain": 59977,
"night-alt-snow": 59978,
"night-clear": 59979,
"rain": 59980,
"rainbow": 59981,
"rains": 59982,
"snow": 59983,
"snows": 59984,
"thermometer": 59985,
"umbrella": 59986,
"wind": 59987,
"confused": 59988,
"dizzy": 59989,
"expressionless": 59990,
"frowning": 59991,
"heart-eyes": 59992,
"laughing": 59993,
"mad": 59994,
"nervous": 59995,
"neutral": 59996,
"open-mouth": 59997,
"rage": 59998,
"slightly-smile": 59999,
"smiley": 60000,
"smiling": 60001,
"stuck-out-tongue": 60002,
"sunglasses": 60003,
"surprised": 60004,
"tongue": 60005,
"wink": 60006,
"zipper-mouth": 60007,
"aids": 60233,
"ambulance": 60234,
"bandage": 60235,
"bed-patient": 60236,
"blood-drop": 60237,
"blood-test": 60238,
"blood": 60239,
"dna": 60240,
"doctor": 60241,
"drug-pack": 60242,
"first-aid-alt": 60243,
"heart-alt": 60244,
"heartbeat-alt": 60245,
"heartbeat": 60246,
"helicopter-ambulance": 60247,
"hospital": 60248,
"injection-syringe": 60249,
"laboratory": 60250,
"nurse": 60251,
"nursing-home": 60252,
"paralysis-disability": 60253,
"pills": 60254,
"prescription": 60255,
"pulse": 60256,
"stethoscope": 60257,
"surgical-knife": 60258,
"tablets": 60259,
"test-bottle": 60260,
"test-tube-alt": 60261,
"test-tube": 60262,
"thermometer-alt": 60263,
"american-express": 59856,
"credit-card": 59857,
"google-wallet": 59858,
"iyzigo": 59859,
"mastercard": 59860,
"paypal-p": 59861,
"paypal": 59862,
"payu": 59863,
"troy": 59864,
"visa": 59865,
"dinners-club": 60010,
"apple-pay": 60009,
"discover": 60013,
"jcb": 60014,
"dislike": 59796,
"like": 59797,
"audio-description": 59648,
"blind": 59649,
"braille": 59650,
"deaf": 59651,
"fa-american-sign-language-interpreting": 59652,
"low-vision": 59654,
"tty": 59655,
"universal-acces": 59656,
"wheelchair": 59657,
"area-chart": 59732,
"bar-chart": 59733,
"line-chart": 59734,
"pie-chart-1": 59735,
"pie-chart-2": 59736,
"chrome": 59726,
"edge": 59727,
"firefox": 59728,
"internet-explorer": 59729,
"opera": 59730,
"safari": 59731,
"bitcoin": 59737,
"dollar": 59738,
"euro": 59739,
"gbp": 59740,
"gg": 59741,
"ils": 59742,
"inr": 59743,
"krw": 59744,
"rouble": 59745,
"tl": 59746,
"yen": 59747,
"genderless": 59782,
"intersex": 59783,
"mars-double": 59784,
"mars-stroke-h": 59785,
"mars-stroke-v": 59786,
"mars-stroke": 59787,
"mars": 59788,
"mercury": 59789,
"neuter": 59790,
"transgender-alt": 59791,
"transgender": 59792,
"venus-double": 59793,
"venus-mars": 59794,
"venus": 59795,
"automobile": 59899,
"bicycle": 59900,
"bus": 59901,
"car": 59902,
"helicopter": 59903,
"metro": 59904,
"motorcycle": 59905,
"plane": 59906,
"rocket": 59907,
"ship": 59908,
"subway": 59909,
"taxi": 59910,
"train": 59911,
"truck": 59912,
"yacht": 59913,
"beach-slipper": 60203,
"bus-ticket": 60204,
"cocktail": 60205,
"compass-alt": 60206,
"direction-sign": 60207,
"do-not-disturb": 60208,
"flotation-ring": 60209,
"holiday-village": 60210,
"hot-air-balloon": 60211,
"hotel-alt": 60212,
"hotel": 60213,
"island": 60214,
"money-symbol": 60215,
"parasol": 60216,
"passport-alt": 60217,
"passport": 60218,
"photograph": 60219,
"plane-ticket": 60220,
"room": 60221,
"sait-boat": 60222,
"snorkel": 60223,
"suitcase-alt": 60224,
"suitcase": 60225,
"sun": 60226,
"sunglasses-alt": 60227,
"swimsuit": 60228,
"tent": 60229,
"ticket-alt": 60230,
"train-ticket": 60231,
"wallet": 60232,
"circle-o-notch": 59889,
"propeller-1": 59890,
"propeller-2": 59891,
"propeller-3": 59892,
"propeller-4": 59893,
"spinner-cog": 59894,
"spinner-fidget": 59895,
"spinner-refresh": 59896,
"spinner-rotate-forward": 59897,
"spinner": 59898,
"snowflake": 60081,
"snowflake-1": 60073,
"snowflake-2": 60074,
"snowflake-3": 60075,
"snowflake-4": 60076,
"snowflake-5": 60077,
"snowflake-6": 60078,
"snowflake-7": 60079,
"snowflake-8": 60080,
"curve": 59915,
"ellipse": 59916,
"rectangle": 59917,
"shield": 59914
}

View file

@ -0,0 +1,285 @@
{
"address-book": 61696,
"alert": 61697,
"align-center": 61698,
"align-justify": 61699,
"align-left": 61700,
"align-right": 61701,
"anchor": 61702,
"annotate": 61703,
"archive": 61704,
"arrow-down": 61705,
"arrow-left": 61706,
"arrow-right": 61707,
"arrow-up": 61708,
"arrows-compress": 61709,
"arrows-expand": 61710,
"arrows-in": 61711,
"arrows-out": 61712,
"asl": 61713,
"asterisk": 61714,
"at-sign": 61715,
"background-color": 61716,
"battery-empty": 61717,
"battery-full": 61718,
"battery-half": 61719,
"bitcoin-circle": 61720,
"bitcoin": 61721,
"blind": 61722,
"bluetooth": 61723,
"bold": 61724,
"book-bookmark": 61725,
"book": 61726,
"bookmark": 61727,
"braille": 61728,
"burst-new": 61729,
"burst-sale": 61730,
"burst": 61731,
"calendar": 61732,
"camera": 61733,
"check": 61734,
"checkbox": 61735,
"clipboard-notes": 61736,
"clipboard-pencil": 61737,
"clipboard": 61738,
"clock": 61739,
"closed-caption": 61740,
"cloud": 61741,
"comment-minus": 61742,
"comment-quotes": 61743,
"comment-video": 61744,
"comment": 61745,
"comments": 61746,
"compass": 61747,
"contrast": 61748,
"credit-card": 61749,
"crop": 61750,
"crown": 61751,
"css3": 61752,
"database": 61753,
"die-five": 61754,
"die-four": 61755,
"die-one": 61756,
"die-six": 61757,
"die-three": 61758,
"die-two": 61759,
"dislike": 61760,
"dollar-bill": 61761,
"dollar": 61762,
"download": 61763,
"eject": 61764,
"elevator": 61765,
"euro": 61766,
"eye": 61767,
"fast-forward": 61768,
"female-symbol": 61769,
"female": 61770,
"filter": 61771,
"first-aid": 61772,
"flag": 61773,
"folder-add": 61774,
"folder-lock": 61775,
"folder": 61776,
"foot": 61777,
"foundation": 61778,
"graph-bar": 61779,
"graph-horizontal": 61780,
"graph-pie": 61781,
"graph-trend": 61782,
"guide-dog": 61783,
"hearing-aid": 61784,
"heart": 61785,
"home": 61786,
"html5": 61787,
"indent-less": 61788,
"indent-more": 61789,
"info": 61790,
"italic": 61791,
"key": 61792,
"laptop": 61793,
"layout": 61794,
"lightbulb": 61795,
"like": 61796,
"link": 61797,
"list-bullet": 61798,
"list-number": 61799,
"list-thumbnails": 61800,
"list": 61801,
"lock": 61802,
"loop": 61803,
"magnifying-glass": 61804,
"mail": 61805,
"male-female": 61806,
"male-symbol": 61807,
"male": 61808,
"map": 61809,
"marker": 61810,
"megaphone": 61811,
"microphone": 61812,
"minus-circle": 61813,
"minus": 61814,
"mobile-signal": 61815,
"mobile": 61816,
"monitor": 61817,
"mountains": 61818,
"music": 61819,
"next": 61820,
"no-dogs": 61821,
"no-smoking": 61822,
"page-add": 61823,
"page-copy": 61824,
"page-csv": 61825,
"page-delete": 61826,
"page-doc": 61827,
"page-edit": 61828,
"page-export-csv": 61829,
"page-export-doc": 61830,
"page-export-pdf": 61831,
"page-export": 61832,
"page-filled": 61833,
"page-multiple": 61834,
"page-pdf": 61835,
"page-remove": 61836,
"page-search": 61837,
"page": 61838,
"paint-bucket": 61839,
"paperclip": 61840,
"pause": 61841,
"paw": 61842,
"paypal": 61843,
"pencil": 61844,
"photo": 61845,
"play-circle": 61846,
"play-video": 61847,
"play": 61848,
"plus": 61849,
"pound": 61850,
"power": 61851,
"previous": 61852,
"price-tag": 61853,
"pricetag-multiple": 61854,
"print": 61855,
"prohibited": 61856,
"projection-screen": 61857,
"puzzle": 61858,
"quote": 61859,
"record": 61860,
"refresh": 61861,
"results-demographics": 61862,
"results": 61863,
"rewind-ten": 61864,
"rewind": 61865,
"rss": 61866,
"safety-cone": 61867,
"save": 61868,
"share": 61869,
"sheriff-badge": 61870,
"shield": 61871,
"shopping-bag": 61872,
"shopping-cart": 61873,
"shuffle": 61874,
"skull": 61875,
"social-500px": 61876,
"social-adobe": 61877,
"social-amazon": 61878,
"social-android": 61879,
"social-apple": 61880,
"social-behance": 61881,
"social-bing": 61882,
"social-blogger": 61883,
"social-delicious": 61884,
"social-designer-news": 61885,
"social-deviant-art": 61886,
"social-digg": 61887,
"social-dribbble": 61888,
"social-drive": 61889,
"social-dropbox": 61890,
"social-evernote": 61891,
"social-facebook": 61892,
"social-flickr": 61893,
"social-forrst": 61894,
"social-foursquare": 61895,
"social-game-center": 61896,
"social-github": 61897,
"social-google-plus": 61898,
"social-hacker-news": 61899,
"social-hi5": 61900,
"social-instagram": 61901,
"social-joomla": 61902,
"social-lastfm": 61903,
"social-linkedin": 61904,
"social-medium": 61905,
"social-myspace": 61906,
"social-orkut": 61907,
"social-path": 61908,
"social-picasa": 61909,
"social-pinterest": 61910,
"social-rdio": 61911,
"social-reddit": 61912,
"social-skillshare": 61913,
"social-skype": 61914,
"social-smashing-mag": 61915,
"social-snapchat": 61916,
"social-spotify": 61917,
"social-squidoo": 61918,
"social-stack-overflow": 61919,
"social-steam": 61920,
"social-stumbleupon": 61921,
"social-treehouse": 61922,
"social-tumblr": 61923,
"social-twitter": 61924,
"social-vimeo": 61925,
"social-windows": 61926,
"social-xbox": 61927,
"social-yahoo": 61928,
"social-yelp": 61929,
"social-youtube": 61930,
"social-zerply": 61931,
"social-zurb": 61932,
"sound": 61933,
"star": 61934,
"stop": 61935,
"strikethrough": 61936,
"subscript": 61937,
"superscript": 61938,
"tablet-landscape": 61939,
"tablet-portrait": 61940,
"target-two": 61941,
"target": 61942,
"telephone-accessible": 61943,
"telephone": 61944,
"text-color": 61945,
"thumbnails": 61946,
"ticket": 61947,
"torso-business": 61948,
"torso-female": 61949,
"torso": 61950,
"torsos-all-female": 61951,
"torsos-all": 61952,
"torsos-female-male": 61953,
"torsos-male-female": 61954,
"torsos": 61955,
"trash": 61956,
"trees": 61957,
"trophy": 61958,
"underline": 61959,
"universal-access": 61960,
"unlink": 61961,
"unlock": 61962,
"upload-cloud": 61963,
"upload": 61964,
"usb": 61965,
"video": 61966,
"volume-none": 61967,
"volume-strike": 61968,
"volume": 61969,
"web": 61970,
"wheelchair": 61971,
"widget": 61972,
"wrench": 61973,
"x-circle": 61974,
"x": 61975,
"yen": 61976,
"zoom-in": 61977,
"zoom-out": 61978
}

View file

@ -0,0 +1,698 @@
{
"ios-add": 61698,
"ios-add-circle": 61697,
"ios-add-circle-outline": 61696,
"ios-airplane": 61751,
"ios-alarm": 62408,
"ios-albums": 62410,
"ios-alert": 61700,
"ios-american-football": 61702,
"ios-analytics": 62414,
"ios-aperture": 61704,
"ios-apps": 61706,
"ios-appstore": 61708,
"ios-archive": 61710,
"ios-arrow-back": 62415,
"ios-arrow-down": 62416,
"ios-arrow-dropdown": 61712,
"ios-arrow-dropdown-circle": 61733,
"ios-arrow-dropleft": 61714,
"ios-arrow-dropleft-circle": 61737,
"ios-arrow-dropright": 61716,
"ios-arrow-dropright-circle": 61739,
"ios-arrow-dropup": 61718,
"ios-arrow-dropup-circle": 61741,
"ios-arrow-forward": 62417,
"ios-arrow-round-back": 61719,
"ios-arrow-round-down": 61720,
"ios-arrow-round-forward": 61721,
"ios-arrow-round-up": 61722,
"ios-arrow-up": 62424,
"ios-at": 62426,
"ios-attach": 61723,
"ios-backspace": 61725,
"ios-barcode": 62428,
"ios-baseball": 62430,
"ios-basket": 61727,
"ios-basketball": 62432,
"ios-battery-charging": 61728,
"ios-battery-dead": 61729,
"ios-battery-full": 61730,
"ios-beaker": 61732,
"ios-bed": 61753,
"ios-beer": 61734,
"ios-bicycle": 61735,
"ios-bluetooth": 61736,
"ios-boat": 61738,
"ios-body": 62436,
"ios-bonfire": 61740,
"ios-book": 62440,
"ios-bookmark": 61742,
"ios-bookmarks": 62442,
"ios-bowtie": 61744,
"ios-briefcase": 62446,
"ios-browsers": 62448,
"ios-brush": 61746,
"ios-bug": 61748,
"ios-build": 61750,
"ios-bulb": 61752,
"ios-bus": 61754,
"ios-business": 61859,
"ios-cafe": 61756,
"ios-calculator": 62450,
"ios-calendar": 62452,
"ios-call": 61758,
"ios-camera": 62454,
"ios-car": 61760,
"ios-card": 61762,
"ios-cart": 62456,
"ios-cash": 61764,
"ios-cellular": 61757,
"ios-chatboxes": 62458,
"ios-chatbubbles": 61766,
"ios-checkbox": 61768,
"ios-checkbox-outline": 61767,
"ios-checkmark": 62463,
"ios-checkmark-circle": 61770,
"ios-checkmark-circle-outline": 61769,
"ios-clipboard": 61772,
"ios-clock": 62467,
"ios-close": 62470,
"ios-close-circle": 61774,
"ios-close-circle-outline": 61773,
"ios-cloud": 62476,
"ios-cloud-circle": 61778,
"ios-cloud-done": 61780,
"ios-cloud-download": 62472,
"ios-cloud-outline": 62473,
"ios-cloud-upload": 62475,
"ios-cloudy": 62480,
"ios-cloudy-night": 62478,
"ios-code": 61783,
"ios-code-download": 61781,
"ios-code-working": 61782,
"ios-cog": 62482,
"ios-color-fill": 61785,
"ios-color-filter": 62484,
"ios-color-palette": 61787,
"ios-color-wand": 62486,
"ios-compass": 61789,
"ios-construct": 61791,
"ios-contact": 62490,
"ios-contacts": 61793,
"ios-contract": 61794,
"ios-contrast": 61795,
"ios-copy": 62492,
"ios-create": 61797,
"ios-crop": 62494,
"ios-cube": 61800,
"ios-cut": 61802,
"ios-desktop": 61804,
"ios-disc": 61806,
"ios-document": 61808,
"ios-done-all": 61809,
"ios-download": 62496,
"ios-easel": 61811,
"ios-egg": 61813,
"ios-exit": 61815,
"ios-expand": 61816,
"ios-eye": 62501,
"ios-eye-off": 61818,
"ios-fastforward": 62503,
"ios-female": 61819,
"ios-filing": 62505,
"ios-film": 62507,
"ios-finger-print": 61820,
"ios-fitness": 61867,
"ios-flag": 62509,
"ios-flame": 62511,
"ios-flash": 61822,
"ios-flash-off": 61743,
"ios-flashlight": 61761,
"ios-flask": 62513,
"ios-flower": 62515,
"ios-folder": 62517,
"ios-folder-open": 61824,
"ios-football": 62519,
"ios-funnel": 61826,
"ios-gift": 61841,
"ios-git-branch": 61827,
"ios-git-commit": 61828,
"ios-git-compare": 61829,
"ios-git-merge": 61830,
"ios-git-network": 61831,
"ios-git-pull-request": 61832,
"ios-glasses": 62527,
"ios-globe": 61834,
"ios-grid": 61836,
"ios-hammer": 61838,
"ios-hand": 61840,
"ios-happy": 61842,
"ios-headset": 61844,
"ios-heart": 62531,
"ios-heart-dislike": 61759,
"ios-heart-empty": 61851,
"ios-heart-half": 61853,
"ios-help": 62534,
"ios-help-buoy": 61846,
"ios-help-circle": 61848,
"ios-help-circle-outline": 61847,
"ios-home": 62536,
"ios-hourglass": 61699,
"ios-ice-cream": 61850,
"ios-image": 61852,
"ios-images": 61854,
"ios-infinite": 62538,
"ios-information": 62541,
"ios-information-circle": 61856,
"ios-information-circle-outline": 61855,
"ios-jet": 61861,
"ios-journal": 61833,
"ios-key": 61863,
"ios-keypad": 62544,
"ios-laptop": 61864,
"ios-leaf": 61866,
"ios-link": 61994,
"ios-list": 62548,
"ios-list-box": 61763,
"ios-locate": 61870,
"ios-lock": 61872,
"ios-log-in": 61873,
"ios-log-out": 61874,
"ios-magnet": 61876,
"ios-mail": 61880,
"ios-mail-open": 61878,
"ios-mail-unread": 61765,
"ios-male": 61881,
"ios-man": 61883,
"ios-map": 61885,
"ios-medal": 61887,
"ios-medical": 62556,
"ios-medkit": 62558,
"ios-megaphone": 61889,
"ios-menu": 61891,
"ios-mic": 62561,
"ios-mic-off": 62559,
"ios-microphone": 61894,
"ios-moon": 62568,
"ios-more": 61896,
"ios-move": 61899,
"ios-musical-note": 62571,
"ios-musical-notes": 62572,
"ios-navigate": 62574,
"ios-notifications": 61907,
"ios-notifications-off": 61905,
"ios-notifications-outline": 61747,
"ios-nuclear": 61909,
"ios-nutrition": 62576,
"ios-open": 61911,
"ios-options": 61913,
"ios-outlet": 61915,
"ios-paper": 62578,
"ios-paper-plane": 61917,
"ios-partly-sunny": 61919,
"ios-pause": 62584,
"ios-paw": 62586,
"ios-people": 62588,
"ios-person": 62590,
"ios-person-add": 61921,
"ios-phone-landscape": 61922,
"ios-phone-portrait": 61923,
"ios-photos": 62594,
"ios-pie": 62596,
"ios-pin": 61925,
"ios-pint": 62598,
"ios-pizza": 61927,
"ios-planet": 61931,
"ios-play": 62600,
"ios-play-circle": 61715,
"ios-podium": 61933,
"ios-power": 61935,
"ios-pricetag": 62605,
"ios-pricetags": 62607,
"ios-print": 61937,
"ios-pulse": 62611,
"ios-qr-scanner": 61939,
"ios-quote": 61941,
"ios-radio": 61945,
"ios-radio-button-off": 61942,
"ios-radio-button-on": 61943,
"ios-rainy": 62613,
"ios-recording": 62615,
"ios-redo": 62617,
"ios-refresh": 62620,
"ios-refresh-circle": 61749,
"ios-remove": 61948,
"ios-remove-circle": 61947,
"ios-remove-circle-outline": 61946,
"ios-reorder": 61949,
"ios-repeat": 61950,
"ios-resize": 61951,
"ios-restaurant": 61953,
"ios-return-left": 61954,
"ios-return-right": 61955,
"ios-reverse-camera": 62623,
"ios-rewind": 62625,
"ios-ribbon": 61957,
"ios-rocket": 61771,
"ios-rose": 62627,
"ios-sad": 61959,
"ios-save": 61862,
"ios-school": 61961,
"ios-search": 62629,
"ios-send": 61964,
"ios-settings": 62631,
"ios-share": 61969,
"ios-share-alt": 61967,
"ios-shirt": 61971,
"ios-shuffle": 62633,
"ios-skip-backward": 61973,
"ios-skip-forward": 61975,
"ios-snow": 61976,
"ios-speedometer": 62640,
"ios-square": 61978,
"ios-square-outline": 61788,
"ios-star": 62643,
"ios-star-half": 62641,
"ios-star-outline": 62642,
"ios-stats": 61980,
"ios-stopwatch": 62645,
"ios-subway": 61982,
"ios-sunny": 62647,
"ios-swap": 61983,
"ios-switch": 61985,
"ios-sync": 61986,
"ios-tablet-landscape": 61987,
"ios-tablet-portrait": 62030,
"ios-tennisball": 62651,
"ios-text": 62032,
"ios-thermometer": 62034,
"ios-thumbs-down": 62036,
"ios-thumbs-up": 62038,
"ios-thunderstorm": 62653,
"ios-time": 62655,
"ios-timer": 62657,
"ios-today": 61775,
"ios-train": 62040,
"ios-transgender": 62041,
"ios-trash": 62661,
"ios-trending-down": 62042,
"ios-trending-up": 62043,
"ios-trophy": 62045,
"ios-tv": 61717,
"ios-umbrella": 62047,
"ios-undo": 62663,
"ios-unlock": 62049,
"ios-videocam": 62669,
"ios-volume-high": 61724,
"ios-volume-low": 61726,
"ios-volume-mute": 62051,
"ios-volume-off": 62052,
"ios-walk": 62054,
"ios-wallet": 61835,
"ios-warning": 62056,
"ios-watch": 62057,
"ios-water": 62059,
"ios-wifi": 62061,
"ios-wine": 62063,
"ios-woman": 62065,
"logo-android": 61989,
"logo-angular": 61991,
"logo-apple": 61993,
"logo-bitbucket": 61843,
"logo-bitcoin": 61995,
"logo-buffer": 61997,
"logo-chrome": 61999,
"logo-closed-captioning": 61701,
"logo-codepen": 62000,
"logo-css3": 62001,
"logo-designernews": 62002,
"logo-dribbble": 62003,
"logo-dropbox": 62004,
"logo-euro": 62005,
"logo-facebook": 62006,
"logo-flickr": 61703,
"logo-foursquare": 62007,
"logo-freebsd-devil": 62008,
"logo-game-controller-a": 61755,
"logo-game-controller-b": 61825,
"logo-github": 62009,
"logo-google": 62010,
"logo-googleplus": 62011,
"logo-hackernews": 62012,
"logo-html5": 62013,
"logo-instagram": 62014,
"logo-ionic": 61776,
"logo-ionitron": 61777,
"logo-javascript": 62015,
"logo-linkedin": 62016,
"logo-markdown": 62017,
"logo-model-s": 61779,
"logo-no-smoking": 61705,
"logo-nodejs": 62018,
"logo-npm": 61845,
"logo-octocat": 62019,
"logo-pinterest": 62020,
"logo-playstation": 62021,
"logo-polymer": 61790,
"logo-python": 62022,
"logo-reddit": 62023,
"logo-rss": 62024,
"logo-sass": 62025,
"logo-skype": 62026,
"logo-slack": 61707,
"logo-snapchat": 62027,
"logo-steam": 62028,
"logo-tumblr": 62029,
"logo-tux": 62126,
"logo-twitch": 62127,
"logo-twitter": 62128,
"logo-usd": 62129,
"logo-vimeo": 62148,
"logo-vk": 61709,
"logo-whatsapp": 62149,
"logo-windows": 62255,
"logo-wordpress": 62256,
"logo-xbox": 62284,
"logo-xing": 61711,
"logo-yahoo": 62285,
"logo-yen": 62286,
"logo-youtube": 62287,
"md-add": 62067,
"md-add-circle": 62066,
"md-add-circle-outline": 61784,
"md-airplane": 61786,
"md-alarm": 62068,
"md-albums": 62069,
"md-alert": 62070,
"md-american-football": 62071,
"md-analytics": 62072,
"md-aperture": 62073,
"md-apps": 62074,
"md-appstore": 62075,
"md-archive": 62076,
"md-arrow-back": 62077,
"md-arrow-down": 62078,
"md-arrow-dropdown": 62080,
"md-arrow-dropdown-circle": 62079,
"md-arrow-dropleft": 62082,
"md-arrow-dropleft-circle": 62081,
"md-arrow-dropright": 62084,
"md-arrow-dropright-circle": 62083,
"md-arrow-dropup": 62086,
"md-arrow-dropup-circle": 62085,
"md-arrow-forward": 62087,
"md-arrow-round-back": 62088,
"md-arrow-round-down": 62089,
"md-arrow-round-forward": 62090,
"md-arrow-round-up": 62091,
"md-arrow-up": 62092,
"md-at": 62093,
"md-attach": 62094,
"md-backspace": 62095,
"md-barcode": 62096,
"md-baseball": 62097,
"md-basket": 62098,
"md-basketball": 62099,
"md-battery-charging": 62100,
"md-battery-dead": 62101,
"md-battery-full": 62102,
"md-beaker": 62103,
"md-bed": 61792,
"md-beer": 62104,
"md-bicycle": 62105,
"md-bluetooth": 62106,
"md-boat": 62107,
"md-body": 62108,
"md-bonfire": 62109,
"md-book": 62110,
"md-bookmark": 62111,
"md-bookmarks": 62112,
"md-bowtie": 62113,
"md-briefcase": 62114,
"md-browsers": 62115,
"md-brush": 62116,
"md-bug": 62117,
"md-build": 62118,
"md-bulb": 62119,
"md-bus": 62120,
"md-business": 61860,
"md-cafe": 62121,
"md-calculator": 62122,
"md-calendar": 62123,
"md-call": 62124,
"md-camera": 62125,
"md-car": 62130,
"md-card": 62131,
"md-cart": 62132,
"md-cash": 62133,
"md-cellular": 61796,
"md-chatboxes": 62134,
"md-chatbubbles": 62135,
"md-checkbox": 62137,
"md-checkbox-outline": 62136,
"md-checkmark": 62140,
"md-checkmark-circle": 62139,
"md-checkmark-circle-outline": 62138,
"md-clipboard": 62141,
"md-clock": 62142,
"md-close": 62144,
"md-close-circle": 62143,
"md-close-circle-outline": 61798,
"md-cloud": 62153,
"md-cloud-circle": 62146,
"md-cloud-done": 62147,
"md-cloud-download": 62150,
"md-cloud-outline": 62151,
"md-cloud-upload": 62152,
"md-cloudy": 62155,
"md-cloudy-night": 62154,
"md-code": 62158,
"md-code-download": 62156,
"md-code-working": 62157,
"md-cog": 62159,
"md-color-fill": 62160,
"md-color-filter": 62161,
"md-color-palette": 62162,
"md-color-wand": 62163,
"md-compass": 62164,
"md-construct": 62165,
"md-contact": 62166,
"md-contacts": 62167,
"md-contract": 62168,
"md-contrast": 62169,
"md-copy": 62170,
"md-create": 62171,
"md-crop": 62172,
"md-cube": 62173,
"md-cut": 62174,
"md-desktop": 62175,
"md-disc": 62176,
"md-document": 62177,
"md-done-all": 62178,
"md-download": 62179,
"md-easel": 62180,
"md-egg": 62181,
"md-exit": 62182,
"md-expand": 62183,
"md-eye": 62185,
"md-eye-off": 62184,
"md-fastforward": 62186,
"md-female": 62187,
"md-filing": 62188,
"md-film": 62189,
"md-finger-print": 62190,
"md-fitness": 61868,
"md-flag": 62191,
"md-flame": 62192,
"md-flash": 62193,
"md-flash-off": 61801,
"md-flashlight": 61803,
"md-flask": 62194,
"md-flower": 62195,
"md-folder": 62197,
"md-folder-open": 62196,
"md-football": 62198,
"md-funnel": 62199,
"md-gift": 61849,
"md-git-branch": 62202,
"md-git-commit": 62203,
"md-git-compare": 62204,
"md-git-merge": 62205,
"md-git-network": 62206,
"md-git-pull-request": 62207,
"md-glasses": 62208,
"md-globe": 62209,
"md-grid": 62210,
"md-hammer": 62211,
"md-hand": 62212,
"md-happy": 62213,
"md-headset": 62214,
"md-heart": 62216,
"md-heart-dislike": 61799,
"md-heart-empty": 61857,
"md-heart-half": 61858,
"md-help": 62219,
"md-help-buoy": 62217,
"md-help-circle": 62218,
"md-help-circle-outline": 61805,
"md-home": 62220,
"md-hourglass": 61713,
"md-ice-cream": 62221,
"md-image": 62222,
"md-images": 62223,
"md-infinite": 62224,
"md-information": 62226,
"md-information-circle": 62225,
"md-information-circle-outline": 61807,
"md-jet": 62229,
"md-journal": 61837,
"md-key": 62230,
"md-keypad": 62231,
"md-laptop": 62232,
"md-leaf": 62233,
"md-link": 61998,
"md-list": 62235,
"md-list-box": 62234,
"md-locate": 62236,
"md-lock": 62237,
"md-log-in": 62238,
"md-log-out": 62239,
"md-magnet": 62240,
"md-mail": 62242,
"md-mail-open": 62241,
"md-mail-unread": 61810,
"md-male": 62243,
"md-man": 62244,
"md-map": 62245,
"md-medal": 62246,
"md-medical": 62247,
"md-medkit": 62248,
"md-megaphone": 62249,
"md-menu": 62250,
"md-mic": 62252,
"md-mic-off": 62251,
"md-microphone": 62253,
"md-moon": 62254,
"md-more": 61897,
"md-move": 62257,
"md-musical-note": 62258,
"md-musical-notes": 62259,
"md-navigate": 62260,
"md-notifications": 62264,
"md-notifications-off": 62262,
"md-notifications-outline": 62263,
"md-nuclear": 62265,
"md-nutrition": 62266,
"md-open": 62267,
"md-options": 62268,
"md-outlet": 62269,
"md-paper": 62271,
"md-paper-plane": 62270,
"md-partly-sunny": 62272,
"md-pause": 62273,
"md-paw": 62274,
"md-people": 62275,
"md-person": 62277,
"md-person-add": 62276,
"md-phone-landscape": 62278,
"md-phone-portrait": 62279,
"md-photos": 62280,
"md-pie": 62281,
"md-pin": 62282,
"md-pint": 62283,
"md-pizza": 62292,
"md-planet": 62294,
"md-play": 62295,
"md-play-circle": 61812,
"md-podium": 62296,
"md-power": 62297,
"md-pricetag": 62298,
"md-pricetags": 62299,
"md-print": 62300,
"md-pulse": 62301,
"md-qr-scanner": 62302,
"md-quote": 62303,
"md-radio": 62306,
"md-radio-button-off": 62304,
"md-radio-button-on": 62305,
"md-rainy": 62307,
"md-recording": 62308,
"md-redo": 62309,
"md-refresh": 62310,
"md-refresh-circle": 61992,
"md-remove": 62312,
"md-remove-circle": 62311,
"md-remove-circle-outline": 61814,
"md-reorder": 62313,
"md-repeat": 62314,
"md-resize": 62315,
"md-restaurant": 62316,
"md-return-left": 62317,
"md-return-right": 62318,
"md-reverse-camera": 62319,
"md-rewind": 62320,
"md-ribbon": 62321,
"md-rocket": 61817,
"md-rose": 62322,
"md-sad": 62323,
"md-save": 61865,
"md-school": 62324,
"md-search": 62325,
"md-send": 62326,
"md-settings": 62327,
"md-share": 62329,
"md-share-alt": 62328,
"md-shirt": 62330,
"md-shuffle": 62331,
"md-skip-backward": 62332,
"md-skip-forward": 62333,
"md-snow": 62334,
"md-speedometer": 62335,
"md-square": 62337,
"md-square-outline": 62336,
"md-star": 62340,
"md-star-half": 62338,
"md-star-outline": 62339,
"md-stats": 62341,
"md-stopwatch": 62342,
"md-subway": 62343,
"md-sunny": 62344,
"md-swap": 62345,
"md-switch": 62346,
"md-sync": 62347,
"md-tablet-landscape": 62348,
"md-tablet-portrait": 62349,
"md-tennisball": 62350,
"md-text": 62351,
"md-thermometer": 62352,
"md-thumbs-down": 62353,
"md-thumbs-up": 62354,
"md-thunderstorm": 62355,
"md-time": 62356,
"md-timer": 62357,
"md-today": 61821,
"md-train": 62358,
"md-transgender": 62359,
"md-trash": 62360,
"md-trending-down": 62361,
"md-trending-up": 62362,
"md-trophy": 62363,
"md-tv": 61823,
"md-umbrella": 62364,
"md-undo": 62365,
"md-unlock": 62366,
"md-videocam": 62367,
"md-volume-high": 61731,
"md-volume-low": 61745,
"md-volume-mute": 62369,
"md-volume-off": 62370,
"md-walk": 62372,
"md-wallet": 61839,
"md-warning": 62373,
"md-watch": 62374,
"md-water": 62375,
"md-wifi": 62376,
"md-wine": 62377,
"md-woman": 62378
}

View file

@ -0,0 +1,934 @@
{
"3d-rotation": 59469,
"ac-unit": 60219,
"access-alarm": 57744,
"access-alarms": 57745,
"access-time": 57746,
"accessibility": 59470,
"accessible": 59668,
"account-balance": 59471,
"account-balance-wallet": 59472,
"account-box": 59473,
"account-circle": 59475,
"adb": 58894,
"add": 57669,
"add-a-photo": 58425,
"add-alarm": 57747,
"add-alert": 57347,
"add-box": 57670,
"add-circle": 57671,
"add-circle-outline": 57672,
"add-location": 58727,
"add-shopping-cart": 59476,
"add-to-photos": 58269,
"add-to-queue": 57436,
"adjust": 58270,
"airline-seat-flat": 58928,
"airline-seat-flat-angled": 58929,
"airline-seat-individual-suite": 58930,
"airline-seat-legroom-extra": 58931,
"airline-seat-legroom-normal": 58932,
"airline-seat-legroom-reduced": 58933,
"airline-seat-recline-extra": 58934,
"airline-seat-recline-normal": 58935,
"airplanemode-active": 57749,
"airplanemode-inactive": 57748,
"airplay": 57429,
"airport-shuttle": 60220,
"alarm": 59477,
"alarm-add": 59478,
"alarm-off": 59479,
"alarm-on": 59480,
"album": 57369,
"all-inclusive": 60221,
"all-out": 59659,
"android": 59481,
"announcement": 59482,
"apps": 58819,
"archive": 57673,
"arrow-back": 58820,
"arrow-downward": 58843,
"arrow-drop-down": 58821,
"arrow-drop-down-circle": 58822,
"arrow-drop-up": 58823,
"arrow-forward": 58824,
"arrow-upward": 58840,
"art-track": 57440,
"aspect-ratio": 59483,
"assessment": 59484,
"assignment": 59485,
"assignment-ind": 59486,
"assignment-late": 59487,
"assignment-return": 59488,
"assignment-returned": 59489,
"assignment-turned-in": 59490,
"assistant": 58271,
"assistant-photo": 58272,
"attach-file": 57894,
"attach-money": 57895,
"attachment": 58044,
"audiotrack": 58273,
"autorenew": 59491,
"av-timer": 57371,
"backspace": 57674,
"backup": 59492,
"battery-alert": 57756,
"battery-charging-full": 57763,
"battery-full": 57764,
"battery-std": 57765,
"battery-unknown": 57766,
"beach-access": 60222,
"beenhere": 58669,
"block": 57675,
"bluetooth": 57767,
"bluetooth-audio": 58895,
"bluetooth-connected": 57768,
"bluetooth-disabled": 57769,
"bluetooth-searching": 57770,
"blur-circular": 58274,
"blur-linear": 58275,
"blur-off": 58276,
"blur-on": 58277,
"book": 59493,
"bookmark": 59494,
"bookmark-border": 59495,
"border-all": 57896,
"border-bottom": 57897,
"border-clear": 57898,
"border-color": 57899,
"border-horizontal": 57900,
"border-inner": 57901,
"border-left": 57902,
"border-outer": 57903,
"border-right": 57904,
"border-style": 57905,
"border-top": 57906,
"border-vertical": 57907,
"branding-watermark": 57451,
"brightness-1": 58278,
"brightness-2": 58279,
"brightness-3": 58280,
"brightness-4": 58281,
"brightness-5": 58282,
"brightness-6": 58283,
"brightness-7": 58284,
"brightness-auto": 57771,
"brightness-high": 57772,
"brightness-low": 57773,
"brightness-medium": 57774,
"broken-image": 58285,
"brush": 58286,
"bubble-chart": 59101,
"bug-report": 59496,
"build": 59497,
"burst-mode": 58428,
"business": 57519,
"business-center": 60223,
"cached": 59498,
"cake": 59369,
"call": 57520,
"call-end": 57521,
"call-made": 57522,
"call-merge": 57523,
"call-missed": 57524,
"call-missed-outgoing": 57572,
"call-received": 57525,
"call-split": 57526,
"call-to-action": 57452,
"camera": 58287,
"camera-alt": 58288,
"camera-enhance": 59644,
"camera-front": 58289,
"camera-rear": 58290,
"camera-roll": 58291,
"cancel": 58825,
"card-giftcard": 59638,
"card-membership": 59639,
"card-travel": 59640,
"casino": 60224,
"cast": 58119,
"cast-connected": 58120,
"center-focus-strong": 58292,
"center-focus-weak": 58293,
"change-history": 59499,
"chat": 57527,
"chat-bubble": 57546,
"chat-bubble-outline": 57547,
"check": 58826,
"check-box": 59444,
"check-box-outline-blank": 59445,
"check-circle": 59500,
"chevron-left": 58827,
"chevron-right": 58828,
"child-care": 60225,
"child-friendly": 60226,
"chrome-reader-mode": 59501,
"class": 59502,
"clear": 57676,
"clear-all": 57528,
"close": 58829,
"closed-caption": 57372,
"cloud": 58045,
"cloud-circle": 58046,
"cloud-done": 58047,
"cloud-download": 58048,
"cloud-off": 58049,
"cloud-queue": 58050,
"cloud-upload": 58051,
"code": 59503,
"collections": 58294,
"collections-bookmark": 58417,
"color-lens": 58295,
"colorize": 58296,
"comment": 57529,
"compare": 58297,
"compare-arrows": 59669,
"computer": 58122,
"confirmation-number": 58936,
"contact-mail": 57552,
"contact-phone": 57551,
"contacts": 57530,
"content-copy": 57677,
"content-cut": 57678,
"content-paste": 57679,
"control-point": 58298,
"control-point-duplicate": 58299,
"copyright": 59660,
"create": 57680,
"create-new-folder": 58060,
"credit-card": 59504,
"crop": 58302,
"crop-16-9": 58300,
"crop-3-2": 58301,
"crop-5-4": 58303,
"crop-7-5": 58304,
"crop-din": 58305,
"crop-free": 58306,
"crop-landscape": 58307,
"crop-original": 58308,
"crop-portrait": 58309,
"crop-rotate": 58423,
"crop-square": 58310,
"dashboard": 59505,
"data-usage": 57775,
"date-range": 59670,
"dehaze": 58311,
"delete": 59506,
"delete-forever": 59691,
"delete-sweep": 57708,
"description": 59507,
"desktop-mac": 58123,
"desktop-windows": 58124,
"details": 58312,
"developer-board": 58125,
"developer-mode": 57776,
"device-hub": 58165,
"devices": 57777,
"devices-other": 58167,
"dialer-sip": 57531,
"dialpad": 57532,
"directions": 58670,
"directions-bike": 58671,
"directions-boat": 58674,
"directions-bus": 58672,
"directions-car": 58673,
"directions-railway": 58676,
"directions-run": 58726,
"directions-subway": 58675,
"directions-transit": 58677,
"directions-walk": 58678,
"disc-full": 58896,
"dns": 59509,
"do-not-disturb": 58898,
"do-not-disturb-alt": 58897,
"do-not-disturb-off": 58947,
"do-not-disturb-on": 58948,
"dock": 58126,
"domain": 59374,
"done": 59510,
"done-all": 59511,
"donut-large": 59671,
"donut-small": 59672,
"drafts": 57681,
"drag-handle": 57949,
"drive-eta": 58899,
"dvr": 57778,
"edit": 58313,
"edit-location": 58728,
"eject": 59643,
"email": 57534,
"enhanced-encryption": 58943,
"equalizer": 57373,
"error": 57344,
"error-outline": 57345,
"euro-symbol": 59686,
"ev-station": 58733,
"event": 59512,
"event-available": 58900,
"event-busy": 58901,
"event-note": 58902,
"event-seat": 59651,
"exit-to-app": 59513,
"expand-less": 58830,
"expand-more": 58831,
"explicit": 57374,
"explore": 59514,
"exposure": 58314,
"exposure-neg-1": 58315,
"exposure-neg-2": 58316,
"exposure-plus-1": 58317,
"exposure-plus-2": 58318,
"exposure-zero": 58319,
"extension": 59515,
"face": 59516,
"fast-forward": 57375,
"fast-rewind": 57376,
"favorite": 59517,
"favorite-border": 59518,
"featured-play-list": 57453,
"featured-video": 57454,
"feedback": 59519,
"fiber-dvr": 57437,
"fiber-manual-record": 57441,
"fiber-new": 57438,
"fiber-pin": 57450,
"fiber-smart-record": 57442,
"file-download": 58052,
"file-upload": 58054,
"filter": 58323,
"filter-1": 58320,
"filter-2": 58321,
"filter-3": 58322,
"filter-4": 58324,
"filter-5": 58325,
"filter-6": 58326,
"filter-7": 58327,
"filter-8": 58328,
"filter-9": 58329,
"filter-9-plus": 58330,
"filter-b-and-w": 58331,
"filter-center-focus": 58332,
"filter-drama": 58333,
"filter-frames": 58334,
"filter-hdr": 58335,
"filter-list": 57682,
"filter-none": 58336,
"filter-tilt-shift": 58338,
"filter-vintage": 58339,
"find-in-page": 59520,
"find-replace": 59521,
"fingerprint": 59661,
"first-page": 58844,
"fitness-center": 60227,
"flag": 57683,
"flare": 58340,
"flash-auto": 58341,
"flash-off": 58342,
"flash-on": 58343,
"flight": 58681,
"flight-land": 59652,
"flight-takeoff": 59653,
"flip": 58344,
"flip-to-back": 59522,
"flip-to-front": 59523,
"folder": 58055,
"folder-open": 58056,
"folder-shared": 58057,
"folder-special": 58903,
"font-download": 57703,
"format-align-center": 57908,
"format-align-justify": 57909,
"format-align-left": 57910,
"format-align-right": 57911,
"format-bold": 57912,
"format-clear": 57913,
"format-color-fill": 57914,
"format-color-reset": 57915,
"format-color-text": 57916,
"format-indent-decrease": 57917,
"format-indent-increase": 57918,
"format-italic": 57919,
"format-line-spacing": 57920,
"format-list-bulleted": 57921,
"format-list-numbered": 57922,
"format-paint": 57923,
"format-quote": 57924,
"format-shapes": 57950,
"format-size": 57925,
"format-strikethrough": 57926,
"format-textdirection-l-to-r": 57927,
"format-textdirection-r-to-l": 57928,
"format-underlined": 57929,
"forum": 57535,
"forward": 57684,
"forward-10": 57430,
"forward-30": 57431,
"forward-5": 57432,
"free-breakfast": 60228,
"fullscreen": 58832,
"fullscreen-exit": 58833,
"functions": 57930,
"g-translate": 59687,
"gamepad": 58127,
"games": 57377,
"gavel": 59662,
"gesture": 57685,
"get-app": 59524,
"gif": 59656,
"golf-course": 60229,
"gps-fixed": 57779,
"gps-not-fixed": 57780,
"gps-off": 57781,
"grade": 59525,
"gradient": 58345,
"grain": 58346,
"graphic-eq": 57784,
"grid-off": 58347,
"grid-on": 58348,
"group": 59375,
"group-add": 59376,
"group-work": 59526,
"hd": 57426,
"hdr-off": 58349,
"hdr-on": 58350,
"hdr-strong": 58353,
"hdr-weak": 58354,
"headset": 58128,
"headset-mic": 58129,
"healing": 58355,
"hearing": 57379,
"help": 59527,
"help-outline": 59645,
"high-quality": 57380,
"highlight": 57951,
"highlight-off": 59528,
"history": 59529,
"home": 59530,
"hot-tub": 60230,
"hotel": 58682,
"hourglass-empty": 59531,
"hourglass-full": 59532,
"http": 59650,
"https": 59533,
"image": 58356,
"image-aspect-ratio": 58357,
"import-contacts": 57568,
"import-export": 57539,
"important-devices": 59666,
"inbox": 57686,
"indeterminate-check-box": 59657,
"info": 59534,
"info-outline": 59535,
"input": 59536,
"insert-chart": 57931,
"insert-comment": 57932,
"insert-drive-file": 57933,
"insert-emoticon": 57934,
"insert-invitation": 57935,
"insert-link": 57936,
"insert-photo": 57937,
"invert-colors": 59537,
"invert-colors-off": 57540,
"iso": 58358,
"keyboard": 58130,
"keyboard-arrow-down": 58131,
"keyboard-arrow-left": 58132,
"keyboard-arrow-right": 58133,
"keyboard-arrow-up": 58134,
"keyboard-backspace": 58135,
"keyboard-capslock": 58136,
"keyboard-hide": 58138,
"keyboard-return": 58139,
"keyboard-tab": 58140,
"keyboard-voice": 58141,
"kitchen": 60231,
"label": 59538,
"label-outline": 59539,
"landscape": 58359,
"language": 59540,
"laptop": 58142,
"laptop-chromebook": 58143,
"laptop-mac": 58144,
"laptop-windows": 58145,
"last-page": 58845,
"launch": 59541,
"layers": 58683,
"layers-clear": 58684,
"leak-add": 58360,
"leak-remove": 58361,
"lens": 58362,
"library-add": 57390,
"library-books": 57391,
"library-music": 57392,
"lightbulb-outline": 59663,
"line-style": 59673,
"line-weight": 59674,
"linear-scale": 57952,
"link": 57687,
"linked-camera": 58424,
"list": 59542,
"live-help": 57542,
"live-tv": 58937,
"local-activity": 58687,
"local-airport": 58685,
"local-atm": 58686,
"local-bar": 58688,
"local-cafe": 58689,
"local-car-wash": 58690,
"local-convenience-store": 58691,
"local-dining": 58710,
"local-drink": 58692,
"local-florist": 58693,
"local-gas-station": 58694,
"local-grocery-store": 58695,
"local-hospital": 58696,
"local-hotel": 58697,
"local-laundry-service": 58698,
"local-library": 58699,
"local-mall": 58700,
"local-movies": 58701,
"local-offer": 58702,
"local-parking": 58703,
"local-pharmacy": 58704,
"local-phone": 58705,
"local-pizza": 58706,
"local-play": 58707,
"local-post-office": 58708,
"local-printshop": 58709,
"local-see": 58711,
"local-shipping": 58712,
"local-taxi": 58713,
"location-city": 59377,
"location-disabled": 57782,
"location-off": 57543,
"location-on": 57544,
"location-searching": 57783,
"lock": 59543,
"lock-open": 59544,
"lock-outline": 59545,
"looks": 58364,
"looks-3": 58363,
"looks-4": 58365,
"looks-5": 58366,
"looks-6": 58367,
"looks-one": 58368,
"looks-two": 58369,
"loop": 57384,
"loupe": 58370,
"low-priority": 57709,
"loyalty": 59546,
"mail": 57688,
"mail-outline": 57569,
"map": 58715,
"markunread": 57689,
"markunread-mailbox": 59547,
"memory": 58146,
"menu": 58834,
"merge-type": 57938,
"message": 57545,
"mic": 57385,
"mic-none": 57386,
"mic-off": 57387,
"mms": 58904,
"mode-comment": 57939,
"mode-edit": 57940,
"monetization-on": 57955,
"money-off": 57948,
"monochrome-photos": 58371,
"mood": 59378,
"mood-bad": 59379,
"more": 58905,
"more-horiz": 58835,
"more-vert": 58836,
"motorcycle": 59675,
"mouse": 58147,
"move-to-inbox": 57704,
"movie": 57388,
"movie-creation": 58372,
"movie-filter": 58426,
"multiline-chart": 59103,
"music-note": 58373,
"music-video": 57443,
"my-location": 58716,
"nature": 58374,
"nature-people": 58375,
"navigate-before": 58376,
"navigate-next": 58377,
"navigation": 58717,
"near-me": 58729,
"network-cell": 57785,
"network-check": 58944,
"network-locked": 58906,
"network-wifi": 57786,
"new-releases": 57393,
"next-week": 57706,
"nfc": 57787,
"no-encryption": 58945,
"no-sim": 57548,
"not-interested": 57395,
"note": 57455,
"note-add": 59548,
"notifications": 59380,
"notifications-active": 59383,
"notifications-none": 59381,
"notifications-off": 59382,
"notifications-paused": 59384,
"offline-pin": 59658,
"ondemand-video": 58938,
"opacity": 59676,
"open-in-browser": 59549,
"open-in-new": 59550,
"open-with": 59551,
"pages": 59385,
"pageview": 59552,
"palette": 58378,
"pan-tool": 59685,
"panorama": 58379,
"panorama-fish-eye": 58380,
"panorama-horizontal": 58381,
"panorama-vertical": 58382,
"panorama-wide-angle": 58383,
"party-mode": 59386,
"pause": 57396,
"pause-circle-filled": 57397,
"pause-circle-outline": 57398,
"payment": 59553,
"people": 59387,
"people-outline": 59388,
"perm-camera-mic": 59554,
"perm-contact-calendar": 59555,
"perm-data-setting": 59556,
"perm-device-information": 59557,
"perm-identity": 59558,
"perm-media": 59559,
"perm-phone-msg": 59560,
"perm-scan-wifi": 59561,
"person": 59389,
"person-add": 59390,
"person-outline": 59391,
"person-pin": 58714,
"person-pin-circle": 58730,
"personal-video": 58939,
"pets": 59677,
"phone": 57549,
"phone-android": 58148,
"phone-bluetooth-speaker": 58907,
"phone-forwarded": 58908,
"phone-in-talk": 58909,
"phone-iphone": 58149,
"phone-locked": 58910,
"phone-missed": 58911,
"phone-paused": 58912,
"phonelink": 58150,
"phonelink-erase": 57563,
"phonelink-lock": 57564,
"phonelink-off": 58151,
"phonelink-ring": 57565,
"phonelink-setup": 57566,
"photo": 58384,
"photo-album": 58385,
"photo-camera": 58386,
"photo-filter": 58427,
"photo-library": 58387,
"photo-size-select-actual": 58418,
"photo-size-select-large": 58419,
"photo-size-select-small": 58420,
"picture-as-pdf": 58389,
"picture-in-picture": 59562,
"picture-in-picture-alt": 59665,
"pie-chart": 59076,
"pie-chart-outlined": 59077,
"pin-drop": 58718,
"place": 58719,
"play-arrow": 57399,
"play-circle-filled": 57400,
"play-circle-outline": 57401,
"play-for-work": 59654,
"playlist-add": 57403,
"playlist-add-check": 57445,
"playlist-play": 57439,
"plus-one": 59392,
"poll": 59393,
"polymer": 59563,
"pool": 60232,
"portable-wifi-off": 57550,
"portrait": 58390,
"power": 58940,
"power-input": 58166,
"power-settings-new": 59564,
"pregnant-woman": 59678,
"present-to-all": 57567,
"print": 59565,
"priority-high": 58949,
"public": 59403,
"publish": 57941,
"query-builder": 59566,
"question-answer": 59567,
"queue": 57404,
"queue-music": 57405,
"queue-play-next": 57446,
"radio": 57406,
"radio-button-checked": 59447,
"radio-button-unchecked": 59446,
"rate-review": 58720,
"receipt": 59568,
"recent-actors": 57407,
"record-voice-over": 59679,
"redeem": 59569,
"redo": 57690,
"refresh": 58837,
"remove": 57691,
"remove-circle": 57692,
"remove-circle-outline": 57693,
"remove-from-queue": 57447,
"remove-red-eye": 58391,
"remove-shopping-cart": 59688,
"reorder": 59646,
"repeat": 57408,
"repeat-one": 57409,
"replay": 57410,
"replay-10": 57433,
"replay-30": 57434,
"replay-5": 57435,
"reply": 57694,
"reply-all": 57695,
"report": 57696,
"report-problem": 59570,
"restaurant": 58732,
"restaurant-menu": 58721,
"restore": 59571,
"restore-page": 59689,
"ring-volume": 57553,
"room": 59572,
"room-service": 60233,
"rotate-90-degrees-ccw": 58392,
"rotate-left": 58393,
"rotate-right": 58394,
"rounded-corner": 59680,
"router": 58152,
"rowing": 59681,
"rss-feed": 57573,
"rv-hookup": 58946,
"satellite": 58722,
"save": 57697,
"scanner": 58153,
"schedule": 59573,
"school": 59404,
"screen-lock-landscape": 57790,
"screen-lock-portrait": 57791,
"screen-lock-rotation": 57792,
"screen-rotation": 57793,
"screen-share": 57570,
"sd-card": 58915,
"sd-storage": 57794,
"search": 59574,
"security": 58154,
"select-all": 57698,
"send": 57699,
"sentiment-dissatisfied": 59409,
"sentiment-neutral": 59410,
"sentiment-satisfied": 59411,
"sentiment-very-dissatisfied": 59412,
"sentiment-very-satisfied": 59413,
"settings": 59576,
"settings-applications": 59577,
"settings-backup-restore": 59578,
"settings-bluetooth": 59579,
"settings-brightness": 59581,
"settings-cell": 59580,
"settings-ethernet": 59582,
"settings-input-antenna": 59583,
"settings-input-component": 59584,
"settings-input-composite": 59585,
"settings-input-hdmi": 59586,
"settings-input-svideo": 59587,
"settings-overscan": 59588,
"settings-phone": 59589,
"settings-power": 59590,
"settings-remote": 59591,
"settings-system-daydream": 57795,
"settings-voice": 59592,
"share": 59405,
"shop": 59593,
"shop-two": 59594,
"shopping-basket": 59595,
"shopping-cart": 59596,
"short-text": 57953,
"show-chart": 59105,
"shuffle": 57411,
"signal-cellular-4-bar": 57800,
"signal-cellular-connected-no-internet-4-bar": 57805,
"signal-cellular-no-sim": 57806,
"signal-cellular-null": 57807,
"signal-cellular-off": 57808,
"signal-wifi-4-bar": 57816,
"signal-wifi-4-bar-lock": 57817,
"signal-wifi-off": 57818,
"sim-card": 58155,
"sim-card-alert": 58916,
"skip-next": 57412,
"skip-previous": 57413,
"slideshow": 58395,
"slow-motion-video": 57448,
"smartphone": 58156,
"smoke-free": 60234,
"smoking-rooms": 60235,
"sms": 58917,
"sms-failed": 58918,
"snooze": 57414,
"sort": 57700,
"sort-by-alpha": 57427,
"spa": 60236,
"space-bar": 57942,
"speaker": 58157,
"speaker-group": 58158,
"speaker-notes": 59597,
"speaker-notes-off": 59690,
"speaker-phone": 57554,
"spellcheck": 59598,
"star": 59448,
"star-border": 59450,
"star-half": 59449,
"stars": 59600,
"stay-current-landscape": 57555,
"stay-current-portrait": 57556,
"stay-primary-landscape": 57557,
"stay-primary-portrait": 57558,
"stop": 57415,
"stop-screen-share": 57571,
"storage": 57819,
"store": 59601,
"store-mall-directory": 58723,
"straighten": 58396,
"streetview": 58734,
"strikethrough-s": 57943,
"style": 58397,
"subdirectory-arrow-left": 58841,
"subdirectory-arrow-right": 58842,
"subject": 59602,
"subscriptions": 57444,
"subtitles": 57416,
"subway": 58735,
"supervisor-account": 59603,
"surround-sound": 57417,
"swap-calls": 57559,
"swap-horiz": 59604,
"swap-vert": 59605,
"swap-vertical-circle": 59606,
"switch-camera": 58398,
"switch-video": 58399,
"sync": 58919,
"sync-disabled": 58920,
"sync-problem": 58921,
"system-update": 58922,
"system-update-alt": 59607,
"tab": 59608,
"tab-unselected": 59609,
"tablet": 58159,
"tablet-android": 58160,
"tablet-mac": 58161,
"tag-faces": 58400,
"tap-and-play": 58923,
"terrain": 58724,
"text-fields": 57954,
"text-format": 57701,
"textsms": 57560,
"texture": 58401,
"theaters": 59610,
"thumb-down": 59611,
"thumb-up": 59612,
"thumbs-up-down": 59613,
"time-to-leave": 58924,
"timelapse": 58402,
"timeline": 59682,
"timer": 58405,
"timer-10": 58403,
"timer-3": 58404,
"timer-off": 58406,
"title": 57956,
"toc": 59614,
"today": 59615,
"toll": 59616,
"tonality": 58407,
"touch-app": 59667,
"toys": 58162,
"track-changes": 59617,
"traffic": 58725,
"train": 58736,
"tram": 58737,
"transfer-within-a-station": 58738,
"transform": 58408,
"translate": 59618,
"trending-down": 59619,
"trending-flat": 59620,
"trending-up": 59621,
"tune": 58409,
"turned-in": 59622,
"turned-in-not": 59623,
"tv": 58163,
"unarchive": 57705,
"undo": 57702,
"unfold-less": 58838,
"unfold-more": 58839,
"update": 59683,
"usb": 57824,
"verified-user": 59624,
"vertical-align-bottom": 57944,
"vertical-align-center": 57945,
"vertical-align-top": 57946,
"vibration": 58925,
"video-call": 57456,
"video-label": 57457,
"video-library": 57418,
"videocam": 57419,
"videocam-off": 57420,
"videogame-asset": 58168,
"view-agenda": 59625,
"view-array": 59626,
"view-carousel": 59627,
"view-column": 59628,
"view-comfy": 58410,
"view-compact": 58411,
"view-day": 59629,
"view-headline": 59630,
"view-list": 59631,
"view-module": 59632,
"view-quilt": 59633,
"view-stream": 59634,
"view-week": 59635,
"vignette": 58421,
"visibility": 59636,
"visibility-off": 59637,
"voice-chat": 58926,
"voicemail": 57561,
"volume-down": 57421,
"volume-mute": 57422,
"volume-off": 57423,
"volume-up": 57424,
"vpn-key": 57562,
"vpn-lock": 58927,
"wallpaper": 57788,
"warning": 57346,
"watch": 58164,
"watch-later": 59684,
"wb-auto": 58412,
"wb-cloudy": 58413,
"wb-incandescent": 58414,
"wb-iridescent": 58422,
"wb-sunny": 58416,
"wc": 58941,
"web": 57425,
"web-asset": 57449,
"weekend": 57707,
"whatshot": 59406,
"widgets": 57789,
"wifi": 58942,
"wifi-lock": 57825,
"wifi-tethering": 57826,
"work": 59641,
"wrap-text": 57947,
"youtube-searched-for": 59642,
"zoom-in": 59647,
"zoom-out": 59648,
"zoom-out-map": 58731
}

View file

@ -0,0 +1,186 @@
{
"alert": 61696,
"archive": 61697,
"arrow-both": 61698,
"arrow-down": 61699,
"arrow-left": 61700,
"arrow-right": 61701,
"arrow-small-down": 61702,
"arrow-small-left": 61703,
"arrow-small-right": 61704,
"arrow-small-up": 61705,
"arrow-up": 61706,
"beaker": 61707,
"bell": 61708,
"bold": 61709,
"book": 61710,
"bookmark": 61711,
"briefcase": 61712,
"broadcast": 61713,
"browser": 61714,
"bug": 61715,
"calendar": 61716,
"check": 61717,
"checklist": 61718,
"chevron-down": 61719,
"chevron-left": 61720,
"chevron-right": 61721,
"chevron-up": 61722,
"circle-slash": 61723,
"circuit-board": 61724,
"clippy": 61725,
"clock": 61726,
"cloud-download": 61727,
"cloud-upload": 61728,
"code": 61729,
"comment": 61730,
"comment-discussion": 61731,
"credit-card": 61732,
"dash": 61733,
"dashboard": 61734,
"database": 61735,
"desktop-download": 61736,
"device-camera": 61737,
"device-camera-video": 61738,
"device-desktop": 61739,
"device-mobile": 61740,
"diff": 61741,
"diff-added": 61742,
"diff-ignored": 61743,
"diff-modified": 61744,
"diff-removed": 61745,
"diff-renamed": 61746,
"ellipsis": 61747,
"eye": 61748,
"eye-closed": 61749,
"file": 61750,
"file-binary": 61751,
"file-code": 61752,
"file-directory": 61753,
"file-media": 61754,
"file-pdf": 61755,
"file-submodule": 61756,
"file-symlink-directory": 61757,
"file-symlink-file": 61758,
"file-zip": 61759,
"flame": 61760,
"fold": 61761,
"fold-down": 61762,
"fold-up": 61763,
"gear": 61764,
"gift": 61765,
"gist": 61766,
"gist-secret": 61767,
"git-branch": 61768,
"git-commit": 61769,
"git-compare": 61770,
"git-merge": 61771,
"git-pull-request": 61772,
"github-action": 61773,
"globe": 61774,
"grabber": 61775,
"graph": 61776,
"heart": 61777,
"history": 61778,
"home": 61779,
"horizontal-rule": 61780,
"hubot": 61781,
"inbox": 61782,
"info": 61783,
"issue-closed": 61784,
"issue-opened": 61785,
"issue-reopened": 61786,
"italic": 61787,
"jersey": 61788,
"kebab-horizontal": 61789,
"kebab-vertical": 61790,
"key": 61791,
"keyboard": 61792,
"law": 61793,
"light-bulb": 61794,
"link": 61795,
"link-external": 61796,
"list-ordered": 61797,
"list-unordered": 61798,
"location": 61799,
"lock": 61800,
"logo-gist": 61801,
"logo-github": 61802,
"mail": 61803,
"mail-read": 61804,
"mark-github": 61805,
"markdown": 61806,
"megaphone": 61807,
"mention": 61808,
"milestone": 61809,
"mirror": 61810,
"mortar-board": 61811,
"mute": 61812,
"no-newline": 61813,
"note": 61814,
"octoface": 61815,
"organization": 61816,
"package": 61817,
"paintcan": 61818,
"pencil": 61819,
"person": 61820,
"pin": 61821,
"play": 61822,
"plug": 61823,
"plus": 61824,
"plus-small": 61825,
"primitive-dot": 61826,
"primitive-square": 61827,
"project": 61828,
"pulse": 61829,
"question": 61830,
"quote": 61831,
"radio-tower": 61832,
"reply": 61833,
"repo": 61834,
"repo-clone": 61835,
"repo-force-push": 61836,
"repo-forked": 61837,
"repo-pull": 61838,
"repo-push": 61839,
"report": 61840,
"request-changes": 61841,
"rocket": 61842,
"rss": 61843,
"ruby": 61844,
"screen-full": 61845,
"screen-normal": 61846,
"search": 61847,
"server": 61848,
"settings": 61849,
"shield": 61850,
"sign-in": 61851,
"sign-out": 61852,
"smiley": 61853,
"squirrel": 61854,
"star": 61855,
"stop": 61856,
"sync": 61857,
"tag": 61858,
"tasklist": 61859,
"telescope": 61860,
"terminal": 61861,
"text-size": 61862,
"three-bars": 61863,
"thumbsdown": 61864,
"thumbsup": 61865,
"tools": 61866,
"trashcan": 61867,
"triangle-down": 61868,
"triangle-left": 61869,
"triangle-right": 61870,
"triangle-up": 61871,
"unfold": 61872,
"unmute": 61873,
"unverified": 61874,
"verified": 61875,
"versions": 61876,
"watch": 61877,
"x": 61878,
"zap": 61879
}

View file

@ -0,0 +1,191 @@
{
"user": 57349,
"people": 57345,
"user-female": 57344,
"user-follow": 57346,
"user-following": 57347,
"user-unfollow": 57348,
"login": 57446,
"logout": 57445,
"emotsmile": 57377,
"phone": 58880,
"call-end": 57416,
"call-in": 57415,
"call-out": 57414,
"map": 57395,
"location-pin": 57494,
"direction": 57410,
"directions": 57409,
"compass": 57413,
"layers": 57396,
"menu": 58881,
"list": 57447,
"options-vertical": 58882,
"options": 58883,
"arrow-down": 58884,
"arrow-left": 58885,
"arrow-right": 58886,
"arrow-up": 58887,
"arrow-up-circle": 57464,
"arrow-left-circle": 57466,
"arrow-right-circle": 57465,
"arrow-down-circle": 57467,
"check": 57472,
"clock": 57473,
"plus": 57493,
"minus": 58901,
"close": 57474,
"event": 58905,
"exclamation": 58903,
"organization": 58902,
"trophy": 57350,
"screen-smartphone": 57360,
"screen-desktop": 57361,
"plane": 57362,
"notebook": 57363,
"mustache": 57364,
"mouse": 57365,
"magnet": 57366,
"energy": 57376,
"disc": 57378,
"cursor": 57454,
"cursor-move": 57379,
"crop": 57380,
"chemistry": 57382,
"speedometer": 57351,
"shield": 57358,
"screen-tablet": 57359,
"magic-wand": 57367,
"hourglass": 57368,
"graduation": 57369,
"ghost": 57370,
"game-controller": 57371,
"fire": 57372,
"eyeglass": 57373,
"envelope-open": 57374,
"envelope-letter": 57375,
"bell": 57383,
"badge": 57384,
"anchor": 57385,
"wallet": 57386,
"vector": 57387,
"speech": 57388,
"puzzle": 57389,
"printer": 57390,
"present": 57391,
"playlist": 57392,
"pin": 57393,
"picture": 57394,
"handbag": 57397,
"globe-alt": 57398,
"globe": 57399,
"folder-alt": 57401,
"folder": 57481,
"film": 57402,
"feed": 57403,
"drop": 57406,
"drawer": 57407,
"docs": 57408,
"doc": 57477,
"diamond": 57411,
"cup": 57412,
"calculator": 57417,
"bubbles": 57418,
"briefcase": 57419,
"book-open": 57420,
"basket-loaded": 57421,
"basket": 57422,
"bag": 57423,
"action-undo": 57424,
"action-redo": 57425,
"wrench": 57426,
"umbrella": 57427,
"trash": 57428,
"tag": 57429,
"support": 57430,
"frame": 57400,
"size-fullscreen": 57431,
"size-actual": 57432,
"shuffle": 57433,
"share-alt": 57434,
"share": 57435,
"rocket": 57436,
"question": 57437,
"pie-chart": 57438,
"pencil": 57439,
"note": 57440,
"loop": 57444,
"home": 57449,
"grid": 57450,
"graph": 57451,
"microphone": 57443,
"music-tone-alt": 57441,
"music-tone": 57442,
"earphones-alt": 57404,
"earphones": 57405,
"equalizer": 57452,
"like": 57448,
"dislike": 57453,
"control-start": 57455,
"control-rewind": 57456,
"control-play": 57457,
"control-pause": 57458,
"control-forward": 57459,
"control-end": 57460,
"volume-1": 57503,
"volume-2": 57504,
"volume-off": 57505,
"calendar": 57461,
"bulb": 57462,
"chart": 57463,
"ban": 57468,
"bubble": 57469,
"camrecorder": 57470,
"camera": 57471,
"cloud-download": 57475,
"cloud-upload": 57476,
"envelope": 57478,
"eye": 57479,
"flag": 57480,
"heart": 57482,
"info": 57483,
"key": 57484,
"link": 57485,
"lock": 57486,
"lock-open": 57487,
"magnifier": 57488,
"magnifier-add": 57489,
"magnifier-remove": 57490,
"paper-clip": 57491,
"paper-plane": 57492,
"power": 57495,
"refresh": 57496,
"reload": 57497,
"settings": 57498,
"star": 57499,
"symbol-female": 57500,
"symbol-male": 57501,
"target": 57502,
"credit-card": 57381,
"paypal": 58888,
"social-tumblr": 57354,
"social-twitter": 57353,
"social-facebook": 57355,
"social-instagram": 58889,
"social-linkedin": 58890,
"social-pinterest": 58891,
"social-github": 58892,
"social-google": 58893,
"social-reddit": 58894,
"social-skype": 58895,
"social-dribbble": 57357,
"social-behance": 58896,
"social-foursqare": 58897,
"social-soundcloud": 58898,
"social-spotify": 58899,
"social-stumbleupon": 58900,
"social-youtube": 57352,
"social-dropbox": 57356,
"social-vkontakte": 58904,
"social-steam": 58912
}

View file

@ -0,0 +1,102 @@
{
"acrobat": 61696,
"amazon": 61697,
"android": 61698,
"angellist": 61699,
"aol": 61700,
"appnet": 61701,
"appstore": 61702,
"bitbucket": 61703,
"bitcoin": 61704,
"blogger": 61705,
"buffer": 61706,
"cal": 61707,
"call": 61708,
"cart": 61709,
"chrome": 61710,
"cloudapp": 61711,
"creativecommons": 61712,
"delicious": 61713,
"digg": 61714,
"disqus": 61715,
"dribbble": 61716,
"dropbox": 61717,
"drupal": 61718,
"dwolla": 61720,
"email": 61721,
"eventasaurus": 61722,
"eventbrite": 61723,
"eventful": 61724,
"evernote": 61725,
"facebook": 61726,
"fivehundredpx": 61727,
"flattr": 61728,
"flickr": 61729,
"forrst": 61730,
"foursquare": 61731,
"github": 61732,
"gmail": 61733,
"google": 61734,
"googleplay": 61735,
"googleplus": 61736,
"gowalla": 61737,
"grooveshark": 61738,
"guest": 61739,
"html5": 61740,
"ie": 61741,
"instagram": 61742,
"instapaper": 61743,
"intensedebate": 61744,
"itunes": 61745,
"klout": 61746,
"lanyrd": 61747,
"lastfm": 61748,
"lego": 61749,
"linkedin": 61750,
"lkdto": 61751,
"logmein": 61752,
"macstore": 61753,
"meetup": 61754,
"myspace": 61755,
"ninetyninedesigns": 61756,
"openid": 61757,
"opentable": 61758,
"paypal": 61759,
"persona": 61796,
"pinboard": 61760,
"pinterest": 61761,
"plancast": 61762,
"plurk": 61763,
"pocket": 61764,
"podcast": 61765,
"posterous": 61766,
"print": 61767,
"quora": 61768,
"reddit": 61769,
"rss": 61770,
"scribd": 61771,
"skype": 61772,
"smashing": 61773,
"songkick": 61774,
"soundcloud": 61775,
"spotify": 61776,
"stackoverflow": 61777,
"statusnet": 61778,
"steam": 61779,
"stripe": 61780,
"stumbleupon": 61781,
"tumblr": 61782,
"twitter": 61783,
"viadeo": 61784,
"vimeo": 61785,
"vk": 61786,
"weibo": 61787,
"wikipedia": 61788,
"windows": 61789,
"wordpress": 61790,
"xing": 61791,
"yahoo": 61792,
"ycombinator": 61793,
"yelp": 61794,
"youtube": 61795
}

View file

@ -1,4 +1,6 @@
rootProject.name = 'ankilan' rootProject.name = 'ankilan'
include ':react-native-vector-icons'
project(':react-native-vector-icons').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-vector-icons/android')
include ':@react-native-community_async-storage' include ':@react-native-community_async-storage'
project(':@react-native-community_async-storage').projectDir = new File(rootProject.projectDir, '../node_modules/@react-native-community/async-storage/android') project(':@react-native-community_async-storage').projectDir = new File(rootProject.projectDir, '../node_modules/@react-native-community/async-storage/android')
apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)

View file

@ -36,6 +36,8 @@ target 'ankilan' do
pod 'RNCAsyncStorage', :path => '../node_modules/@react-native-community/async-storage' pod 'RNCAsyncStorage', :path => '../node_modules/@react-native-community/async-storage'
pod 'RNVectorIcons', :path => '../node_modules/react-native-vector-icons'
target 'ankilanTests' do target 'ankilanTests' do
inherit! :search_paths inherit! :search_paths
# Pods for testing # Pods for testing

View file

@ -16,6 +16,41 @@
2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; };
2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
2DCD954D1E0B4F2C00145EB5 /* ankilanTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* ankilanTests.m */; }; 2DCD954D1E0B4F2C00145EB5 /* ankilanTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* ankilanTests.m */; };
4D52FDE523E84B2791C3D67D /* AntDesign.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 3000D2B3834E4C66A28382F8 /* AntDesign.ttf */; };
B90493FFE9264DF5B6CC7C44 /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = ADE75B0AF3E84621B5059B43 /* Entypo.ttf */; };
31DBC812F4DE446B9D3DC7B1 /* EvilIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7AD629F9A4B44BFE9AFEA2E9 /* EvilIcons.ttf */; };
52508E432BC44BF7A5E64891 /* Feather.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 4712AA6A09254CA2B29AF3F5 /* Feather.ttf */; };
BA64553EADB24FB9AB6E0F82 /* FontAwesome.ttf in Resources */ = {isa = PBXBuildFile; fileRef = DE8FAE89F42A46C381F68DAF /* FontAwesome.ttf */; };
42092AB24C2F4A0987A993FA /* FontAwesome5_Brands.ttf in Resources */ = {isa = PBXBuildFile; fileRef = F6F0D28CAB1A451DAA9BA6AE /* FontAwesome5_Brands.ttf */; };
A2E24CE7C18C4CFF97F78377 /* FontAwesome5_Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BCC0EEAD424E456DA490EE4F /* FontAwesome5_Regular.ttf */; };
631DA64D244F4F8F915F2121 /* FontAwesome5_Solid.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BDB3D4C6185B4CB69E360505 /* FontAwesome5_Solid.ttf */; };
369E14D730C449659A20A504 /* Fontisto.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 256E5C94D0AC40E381A107A5 /* Fontisto.ttf */; };
0F7CA4B8C6454C77B1E45705 /* Foundation.ttf in Resources */ = {isa = PBXBuildFile; fileRef = D3378FED83674C7297D95B3C /* Foundation.ttf */; };
D2D1008687164C9CB74A95D7 /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CCF85275316C4FA29EBEBEF3 /* Ionicons.ttf */; };
659D1586ED4C433BA9DD67DB /* MaterialCommunityIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 37CF45EBB8E541AFB0AEEED1 /* MaterialCommunityIcons.ttf */; };
97EA10A37A0942C0B0FD6C44 /* MaterialIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 99E0F4267E0B4BB69A5994F3 /* MaterialIcons.ttf */; };
60D08C8669D9491891F0EAE0 /* Octicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 006C0665080F4DB581A45597 /* Octicons.ttf */; };
157D60FEAF7C49948291342D /* SimpleLineIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 00E332BD0E6B4F69AD2BFB66 /* SimpleLineIcons.ttf */; };
31C2D4A00BF24B9989303435 /* Zocial.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 16C65B2FFA244990A98EED99 /* Zocial.ttf */; };
8D8BE89F91D74671AFB64D2C /* AntDesign.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 815103740257422193FC7AE2 /* AntDesign.ttf */; };
4A17FB4653CC440AB4AB4727 /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 65310CCA118F4BDCAA2703C7 /* Entypo.ttf */; };
4B80D071E9CE49CCBE5DEA8C /* EvilIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BDF8E1DB2454481E9F053ED8 /* EvilIcons.ttf */; };
7CD9E571FBE84C439B621424 /* Feather.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CFA238B086774C5182CF9E74 /* Feather.ttf */; };
91FB71DDF4AD4E539A0EA9AC /* FontAwesome.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 89FF5EEC421940BD9B87E05B /* FontAwesome.ttf */; };
672335B5103340FCA6134245 /* FontAwesome5_Brands.ttf in Resources */ = {isa = PBXBuildFile; fileRef = B0A9A880302045279E1AC169 /* FontAwesome5_Brands.ttf */; };
2BA06EF0BEC14ECAB6E0EB75 /* FontAwesome5_Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CE20899185F54519B1E99CD4 /* FontAwesome5_Regular.ttf */; };
EB754F50B18843438AE9584B /* FontAwesome5_Solid.ttf in Resources */ = {isa = PBXBuildFile; fileRef = F729C7E2EE884946A9355C09 /* FontAwesome5_Solid.ttf */; };
59E7B35F18164C33B0B5EF05 /* Fontisto.ttf in Resources */ = {isa = PBXBuildFile; fileRef = EDC60BAA3424456EBA1B6E60 /* Fontisto.ttf */; };
1FA456BCAB83416A8D5F2D87 /* Foundation.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CF8C1A780F814B8D84C7F4B1 /* Foundation.ttf */; };
D95A4E6E2CD941F391A5EEB4 /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = D66B241207A741E496B56CE6 /* Ionicons.ttf */; };
4537D47615C74572A714AA90 /* MaterialCommunityIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 2449D789EDFA490F94CDFF70 /* MaterialCommunityIcons.ttf */; };
E44A942AC14D4507BC99DECE /* MaterialIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 0BE4128DA4E948CBB5CEBAB6 /* MaterialIcons.ttf */; };
4566B253DB464EBDB664384E /* Octicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 5E88A5C8BFD24316B071099E /* Octicons.ttf */; };
0CB4E4F529864AC2B859B391 /* Roboto_medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = A0C3A73E3BBC4852925DDA84 /* Roboto_medium.ttf */; };
4A6A9E3F180B402088CB7AED /* Roboto.ttf in Resources */ = {isa = PBXBuildFile; fileRef = C4B0005B2ABE4F319327EA88 /* Roboto.ttf */; };
A6FC377548264D7AA86CB2F7 /* rubicon-icon-font.ttf in Resources */ = {isa = PBXBuildFile; fileRef = B3663D02D2B24A3A91096EC7 /* rubicon-icon-font.ttf */; };
EA1F8F76E9FF490E905EADFF /* SimpleLineIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = D3D982862ECF4A74991ECB71 /* SimpleLineIcons.ttf */; };
F39BB18FAFFB4B0FBEF0AC9B /* Zocial.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 80AB858D3BA841F7A5A31B64 /* Zocial.ttf */; };
/* End PBXBuildFile section */ /* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */ /* Begin PBXContainerItemProxy section */
@ -51,6 +86,41 @@
2D02E4901E0B4A5D006451C7 /* ankilan-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "ankilan-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; 2D02E4901E0B4A5D006451C7 /* ankilan-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "ankilan-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; };
3000D2B3834E4C66A28382F8 /* AntDesign.ttf */ = {isa = PBXFileReference; name = "AntDesign.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
ADE75B0AF3E84621B5059B43 /* Entypo.ttf */ = {isa = PBXFileReference; name = "Entypo.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Entypo.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
7AD629F9A4B44BFE9AFEA2E9 /* EvilIcons.ttf */ = {isa = PBXFileReference; name = "EvilIcons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
4712AA6A09254CA2B29AF3F5 /* Feather.ttf */ = {isa = PBXFileReference; name = "Feather.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Feather.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
DE8FAE89F42A46C381F68DAF /* FontAwesome.ttf */ = {isa = PBXFileReference; name = "FontAwesome.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
F6F0D28CAB1A451DAA9BA6AE /* FontAwesome5_Brands.ttf */ = {isa = PBXFileReference; name = "FontAwesome5_Brands.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
BCC0EEAD424E456DA490EE4F /* FontAwesome5_Regular.ttf */ = {isa = PBXFileReference; name = "FontAwesome5_Regular.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
BDB3D4C6185B4CB69E360505 /* FontAwesome5_Solid.ttf */ = {isa = PBXFileReference; name = "FontAwesome5_Solid.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
256E5C94D0AC40E381A107A5 /* Fontisto.ttf */ = {isa = PBXFileReference; name = "Fontisto.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
D3378FED83674C7297D95B3C /* Foundation.ttf */ = {isa = PBXFileReference; name = "Foundation.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Foundation.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
CCF85275316C4FA29EBEBEF3 /* Ionicons.ttf */ = {isa = PBXFileReference; name = "Ionicons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
37CF45EBB8E541AFB0AEEED1 /* MaterialCommunityIcons.ttf */ = {isa = PBXFileReference; name = "MaterialCommunityIcons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
99E0F4267E0B4BB69A5994F3 /* MaterialIcons.ttf */ = {isa = PBXFileReference; name = "MaterialIcons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
006C0665080F4DB581A45597 /* Octicons.ttf */ = {isa = PBXFileReference; name = "Octicons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Octicons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
00E332BD0E6B4F69AD2BFB66 /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; name = "SimpleLineIcons.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
16C65B2FFA244990A98EED99 /* Zocial.ttf */ = {isa = PBXFileReference; name = "Zocial.ttf"; path = "../node_modules/react-native-vector-icons/Fonts/Zocial.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
815103740257422193FC7AE2 /* AntDesign.ttf */ = {isa = PBXFileReference; name = "AntDesign.ttf"; path = "../node_modules/native-base/Fonts/AntDesign.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
65310CCA118F4BDCAA2703C7 /* Entypo.ttf */ = {isa = PBXFileReference; name = "Entypo.ttf"; path = "../node_modules/native-base/Fonts/Entypo.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
BDF8E1DB2454481E9F053ED8 /* EvilIcons.ttf */ = {isa = PBXFileReference; name = "EvilIcons.ttf"; path = "../node_modules/native-base/Fonts/EvilIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
CFA238B086774C5182CF9E74 /* Feather.ttf */ = {isa = PBXFileReference; name = "Feather.ttf"; path = "../node_modules/native-base/Fonts/Feather.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
89FF5EEC421940BD9B87E05B /* FontAwesome.ttf */ = {isa = PBXFileReference; name = "FontAwesome.ttf"; path = "../node_modules/native-base/Fonts/FontAwesome.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
B0A9A880302045279E1AC169 /* FontAwesome5_Brands.ttf */ = {isa = PBXFileReference; name = "FontAwesome5_Brands.ttf"; path = "../node_modules/native-base/Fonts/FontAwesome5_Brands.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
CE20899185F54519B1E99CD4 /* FontAwesome5_Regular.ttf */ = {isa = PBXFileReference; name = "FontAwesome5_Regular.ttf"; path = "../node_modules/native-base/Fonts/FontAwesome5_Regular.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
F729C7E2EE884946A9355C09 /* FontAwesome5_Solid.ttf */ = {isa = PBXFileReference; name = "FontAwesome5_Solid.ttf"; path = "../node_modules/native-base/Fonts/FontAwesome5_Solid.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
EDC60BAA3424456EBA1B6E60 /* Fontisto.ttf */ = {isa = PBXFileReference; name = "Fontisto.ttf"; path = "../node_modules/native-base/Fonts/Fontisto.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
CF8C1A780F814B8D84C7F4B1 /* Foundation.ttf */ = {isa = PBXFileReference; name = "Foundation.ttf"; path = "../node_modules/native-base/Fonts/Foundation.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
D66B241207A741E496B56CE6 /* Ionicons.ttf */ = {isa = PBXFileReference; name = "Ionicons.ttf"; path = "../node_modules/native-base/Fonts/Ionicons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
2449D789EDFA490F94CDFF70 /* MaterialCommunityIcons.ttf */ = {isa = PBXFileReference; name = "MaterialCommunityIcons.ttf"; path = "../node_modules/native-base/Fonts/MaterialCommunityIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
0BE4128DA4E948CBB5CEBAB6 /* MaterialIcons.ttf */ = {isa = PBXFileReference; name = "MaterialIcons.ttf"; path = "../node_modules/native-base/Fonts/MaterialIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
5E88A5C8BFD24316B071099E /* Octicons.ttf */ = {isa = PBXFileReference; name = "Octicons.ttf"; path = "../node_modules/native-base/Fonts/Octicons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
A0C3A73E3BBC4852925DDA84 /* Roboto_medium.ttf */ = {isa = PBXFileReference; name = "Roboto_medium.ttf"; path = "../node_modules/native-base/Fonts/Roboto_medium.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
C4B0005B2ABE4F319327EA88 /* Roboto.ttf */ = {isa = PBXFileReference; name = "Roboto.ttf"; path = "../node_modules/native-base/Fonts/Roboto.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
B3663D02D2B24A3A91096EC7 /* rubicon-icon-font.ttf */ = {isa = PBXFileReference; name = "rubicon-icon-font.ttf"; path = "../node_modules/native-base/Fonts/rubicon-icon-font.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
D3D982862ECF4A74991ECB71 /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; name = "SimpleLineIcons.ttf"; path = "../node_modules/native-base/Fonts/SimpleLineIcons.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
80AB858D3BA841F7A5A31B64 /* Zocial.ttf */ = {isa = PBXFileReference; name = "Zocial.ttf"; path = "../node_modules/native-base/Fonts/Zocial.ttf"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; };
/* End PBXFileReference section */ /* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */ /* Begin PBXFrameworksBuildPhase section */
@ -140,6 +210,7 @@
00E356EF1AD99517003FC87E /* ankilanTests */, 00E356EF1AD99517003FC87E /* ankilanTests */,
83CBBA001A601CBA00E9B192 /* Products */, 83CBBA001A601CBA00E9B192 /* Products */,
2D16E6871FA4F8E400B85C8A /* Frameworks */, 2D16E6871FA4F8E400B85C8A /* Frameworks */,
F26EA599C9CA4864823C1698 /* Resources */,
); );
indentWidth = 2; indentWidth = 2;
sourceTree = "<group>"; sourceTree = "<group>";
@ -157,6 +228,49 @@
name = Products; name = Products;
sourceTree = "<group>"; sourceTree = "<group>";
}; };
F26EA599C9CA4864823C1698 /* Resources */ = {
isa = "PBXGroup";
children = (
3000D2B3834E4C66A28382F8 /* AntDesign.ttf */,
ADE75B0AF3E84621B5059B43 /* Entypo.ttf */,
7AD629F9A4B44BFE9AFEA2E9 /* EvilIcons.ttf */,
4712AA6A09254CA2B29AF3F5 /* Feather.ttf */,
DE8FAE89F42A46C381F68DAF /* FontAwesome.ttf */,
F6F0D28CAB1A451DAA9BA6AE /* FontAwesome5_Brands.ttf */,
BCC0EEAD424E456DA490EE4F /* FontAwesome5_Regular.ttf */,
BDB3D4C6185B4CB69E360505 /* FontAwesome5_Solid.ttf */,
256E5C94D0AC40E381A107A5 /* Fontisto.ttf */,
D3378FED83674C7297D95B3C /* Foundation.ttf */,
CCF85275316C4FA29EBEBEF3 /* Ionicons.ttf */,
37CF45EBB8E541AFB0AEEED1 /* MaterialCommunityIcons.ttf */,
99E0F4267E0B4BB69A5994F3 /* MaterialIcons.ttf */,
006C0665080F4DB581A45597 /* Octicons.ttf */,
00E332BD0E6B4F69AD2BFB66 /* SimpleLineIcons.ttf */,
16C65B2FFA244990A98EED99 /* Zocial.ttf */,
815103740257422193FC7AE2 /* AntDesign.ttf */,
65310CCA118F4BDCAA2703C7 /* Entypo.ttf */,
BDF8E1DB2454481E9F053ED8 /* EvilIcons.ttf */,
CFA238B086774C5182CF9E74 /* Feather.ttf */,
89FF5EEC421940BD9B87E05B /* FontAwesome.ttf */,
B0A9A880302045279E1AC169 /* FontAwesome5_Brands.ttf */,
CE20899185F54519B1E99CD4 /* FontAwesome5_Regular.ttf */,
F729C7E2EE884946A9355C09 /* FontAwesome5_Solid.ttf */,
EDC60BAA3424456EBA1B6E60 /* Fontisto.ttf */,
CF8C1A780F814B8D84C7F4B1 /* Foundation.ttf */,
D66B241207A741E496B56CE6 /* Ionicons.ttf */,
2449D789EDFA490F94CDFF70 /* MaterialCommunityIcons.ttf */,
0BE4128DA4E948CBB5CEBAB6 /* MaterialIcons.ttf */,
5E88A5C8BFD24316B071099E /* Octicons.ttf */,
A0C3A73E3BBC4852925DDA84 /* Roboto_medium.ttf */,
C4B0005B2ABE4F319327EA88 /* Roboto.ttf */,
B3663D02D2B24A3A91096EC7 /* rubicon-icon-font.ttf */,
D3D982862ECF4A74991ECB71 /* SimpleLineIcons.ttf */,
80AB858D3BA841F7A5A31B64 /* Zocial.ttf */,
);
name = Resources;
sourceTree = "<group>";
path = "";
};
/* End PBXGroup section */ /* End PBXGroup section */
/* Begin PBXNativeTarget section */ /* Begin PBXNativeTarget section */
@ -240,7 +354,7 @@
83CBB9F71A601CBA00E9B192 /* Project object */ = { 83CBB9F71A601CBA00E9B192 /* Project object */ = {
isa = PBXProject; isa = PBXProject;
attributes = { attributes = {
LastUpgradeCheck = 0940; LastUpgradeCheck = 940;
ORGANIZATIONNAME = Facebook; ORGANIZATIONNAME = Facebook;
TargetAttributes = { TargetAttributes = {
00E356ED1AD99517003FC87E = { 00E356ED1AD99517003FC87E = {
@ -293,6 +407,41 @@
files = ( files = (
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */,
13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */,
4D52FDE523E84B2791C3D67D /* AntDesign.ttf in Resources */,
B90493FFE9264DF5B6CC7C44 /* Entypo.ttf in Resources */,
31DBC812F4DE446B9D3DC7B1 /* EvilIcons.ttf in Resources */,
52508E432BC44BF7A5E64891 /* Feather.ttf in Resources */,
BA64553EADB24FB9AB6E0F82 /* FontAwesome.ttf in Resources */,
42092AB24C2F4A0987A993FA /* FontAwesome5_Brands.ttf in Resources */,
A2E24CE7C18C4CFF97F78377 /* FontAwesome5_Regular.ttf in Resources */,
631DA64D244F4F8F915F2121 /* FontAwesome5_Solid.ttf in Resources */,
369E14D730C449659A20A504 /* Fontisto.ttf in Resources */,
0F7CA4B8C6454C77B1E45705 /* Foundation.ttf in Resources */,
D2D1008687164C9CB74A95D7 /* Ionicons.ttf in Resources */,
659D1586ED4C433BA9DD67DB /* MaterialCommunityIcons.ttf in Resources */,
97EA10A37A0942C0B0FD6C44 /* MaterialIcons.ttf in Resources */,
60D08C8669D9491891F0EAE0 /* Octicons.ttf in Resources */,
157D60FEAF7C49948291342D /* SimpleLineIcons.ttf in Resources */,
31C2D4A00BF24B9989303435 /* Zocial.ttf in Resources */,
8D8BE89F91D74671AFB64D2C /* AntDesign.ttf in Resources */,
4A17FB4653CC440AB4AB4727 /* Entypo.ttf in Resources */,
4B80D071E9CE49CCBE5DEA8C /* EvilIcons.ttf in Resources */,
7CD9E571FBE84C439B621424 /* Feather.ttf in Resources */,
91FB71DDF4AD4E539A0EA9AC /* FontAwesome.ttf in Resources */,
672335B5103340FCA6134245 /* FontAwesome5_Brands.ttf in Resources */,
2BA06EF0BEC14ECAB6E0EB75 /* FontAwesome5_Regular.ttf in Resources */,
EB754F50B18843438AE9584B /* FontAwesome5_Solid.ttf in Resources */,
59E7B35F18164C33B0B5EF05 /* Fontisto.ttf in Resources */,
1FA456BCAB83416A8D5F2D87 /* Foundation.ttf in Resources */,
D95A4E6E2CD941F391A5EEB4 /* Ionicons.ttf in Resources */,
4537D47615C74572A714AA90 /* MaterialCommunityIcons.ttf in Resources */,
E44A942AC14D4507BC99DECE /* MaterialIcons.ttf in Resources */,
4566B253DB464EBDB664384E /* Octicons.ttf in Resources */,
0CB4E4F529864AC2B859B391 /* Roboto_medium.ttf in Resources */,
4A6A9E3F180B402088CB7AED /* Roboto.ttf in Resources */,
A6FC377548264D7AA86CB2F7 /* rubicon-icon-font.ttf in Resources */,
EA1F8F76E9FF490E905EADFF /* SimpleLineIcons.ttf in Resources */,
F39BB18FAFFB4B0FBEF0AC9B /* Zocial.ttf in Resources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
}; };

View file

@ -38,7 +38,7 @@
</dict> </dict>
</dict> </dict>
<key>NSLocationWhenInUseUsageDescription</key> <key>NSLocationWhenInUseUsageDescription</key>
<string></string> <string/>
<key>UILaunchStoryboardName</key> <key>UILaunchStoryboardName</key>
<string>LaunchScreen</string> <string>LaunchScreen</string>
<key>UIRequiredDeviceCapabilities</key> <key>UIRequiredDeviceCapabilities</key>
@ -53,5 +53,27 @@
</array> </array>
<key>UIViewControllerBasedStatusBarAppearance</key> <key>UIViewControllerBasedStatusBarAppearance</key>
<false/> <false/>
<key>UIAppFonts</key>
<array>
<string>AntDesign.ttf</string>
<string>Entypo.ttf</string>
<string>EvilIcons.ttf</string>
<string>Feather.ttf</string>
<string>FontAwesome.ttf</string>
<string>FontAwesome5_Brands.ttf</string>
<string>FontAwesome5_Regular.ttf</string>
<string>FontAwesome5_Solid.ttf</string>
<string>Fontisto.ttf</string>
<string>Foundation.ttf</string>
<string>Ionicons.ttf</string>
<string>MaterialCommunityIcons.ttf</string>
<string>MaterialIcons.ttf</string>
<string>Octicons.ttf</string>
<string>SimpleLineIcons.ttf</string>
<string>Zocial.ttf</string>
<string>Roboto_medium.ttf</string>
<string>Roboto.ttf</string>
<string>rubicon-icon-font.ttf</string>
</array>
</dict> </dict>
</plist> </plist>

9694
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -20,6 +20,7 @@
"react-native": "^0.61.5", "react-native": "^0.61.5",
"react-native-ankidroid": "^0.4.0", "react-native-ankidroid": "^0.4.0",
"react-native-material-textfield": "^0.16.1", "react-native-material-textfield": "^0.16.1",
"react-native-vector-icons": "^6.6.0",
"react-redux": "^7.2.0", "react-redux": "^7.2.0",
"redux": "^4.0.5", "redux": "^4.0.5",
"redux-devtools-extension": "^2.13.8", "redux-devtools-extension": "^2.13.8",

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

33
readme.md Normal file
View file

@ -0,0 +1,33 @@
# AnkiLan
App which provide translating and adding words to anki
- - -
![screenshot](./readme-files/screenshot1.png)
## Build and start
```bash
git clone https://github.com/Horhik/ankilan
yarn install
yarn start
# launch paralell
react-native run-android
```
if something not working read [react native docs](https://reactnative.dev/docs/getting-started)
## Debug
##### For linux:
Read [this](https://gist.github.com/Horhik/28c40259a79fabdd358822cede105c09#file-rn-redux-devtools-md)
Instead yarn start and react-native run-android, you may launch `./rn-start.sh` and `./tools-start.sh`
##### Other
It's up to you 😜
## Goals
- [x] ~~Basic functional~~
- [ ] Add Urban dictionary support
- [ ] Support for other languages than Russian
- [ ] Add fields editor
- [ ] Add dark theme
- [ ] Create flexibility models
- [ ] Download sound of word to filesystem

3
rn-start.fs Executable file
View file

@ -0,0 +1,3 @@
#! /usr/bin/fish
set REACT_DEBUGGER "rndebugger-open --open --port 8081" yarn start

View file

@ -6,10 +6,12 @@ import {
GET_FIELD_LIST, GET_FIELD_LIST,
GET_MODEL_LIST, GET_MODEL_LIST,
REQUEST_PERMISSIONS, REQUEST_PERMISSIONS,
SET_ANKI_DATA,
SET_EXISTING_OF_ANKI_LAN_MODEL, SET_EXISTING_OF_ANKI_LAN_MODEL,
SET_FIELD_LIST, SET_FIELD_LIST,
} from '../constants/anki-constants'; } from '../constants/anki-constants';
import {createAnkiLanModel} from './createAnkiLanModel'; import {createAnkiLanModel} from './createAnkiLanModel';
import {getAnkiData} from './filesystem';
/*Permissions*/ /*Permissions*/
@ -22,7 +24,6 @@ export const requestAnkiPermission = () => async dispatch => {
try { try {
const [err, res] = await AnkiDroid.requestPermission(); const [err, res] = await AnkiDroid.requestPermission();
if (err) throw err; if (err) throw err;
console.log(res);
await dispatch(setRequestAnkiPermissions(err, res)); await dispatch(setRequestAnkiPermissions(err, res));
return res; return res;
} catch (err) { } catch (err) {
@ -105,8 +106,10 @@ export const checkAnkiLanModelForExisting = (
modelList, modelList,
) => async dispatch => { ) => async dispatch => {
try { try {
let id = 0;
for (let model of modelList) { for (let model of modelList) {
if (model.name === name) { if (model.name === name) {
id = model.id;
await dispatch(setExistingOfAnkiLanModel(true)); await dispatch(setExistingOfAnkiLanModel(true));
return true; return true;
} }
@ -118,3 +121,24 @@ export const checkAnkiLanModelForExisting = (
await dispatch(setExistingOfAnkiLanModel(false)); await dispatch(setExistingOfAnkiLanModel(false));
} }
}; };
export const getModelId = (models, name) => {
let id;
models.forEach(model => {
if (model.name === name) {
id = model.id;
return id;
}
});
return id;
};
const setSavedData = data => ({
type: SET_ANKI_DATA,
payload: data,
});
export const getSavedData = () => async dispatch => {
const data = await getAnkiData();
await dispatch(setSavedData(data));
};

View file

@ -3,6 +3,7 @@ import {
SET_CREATOR_TEMPLATE, SET_CREATOR_TEMPLATE,
SET_DECK, SET_DECK,
SET_FIELDS, SET_FIELDS,
SET_GLOBAL_DEF,
} from '../constants/anki-constants'; } from '../constants/anki-constants';
export const selectDeck = id => ({ export const selectDeck = id => ({
@ -21,6 +22,7 @@ export const setCreatorTemplate = template => ({
}); });
const parseToAnkiFormat = dict => { const parseToAnkiFormat = dict => {
console.log('SDFfasdfsadf', dict);
/* /*
*** TEMPLATE *** *** TEMPLATE ***
const modelFields = [ const modelFields = [
@ -40,14 +42,15 @@ const modelFields = [
const tr1 = dict.compounded[0]; const tr1 = dict.compounded[0];
const tr2 = dict.compounded[1] || {}; const tr2 = dict.compounded[1] || {};
return [ return [
dict.word, dict.word || '',
tr1.pos, tr1.pos || '',
tr1.tr, tr1.tr || '',
tr1.definition, tr1.definition || '',
tr2.pos || '', tr2.pos || '',
tr2.tr || '', tr2.tr || '',
tr2.definition || '', tr2.definition || '',
`${tr1.example || ''} \n ${tr2.example || ''}`, // `${tr1.example || ''} \n ${tr2.example || ''}`,
dict.example,
dict.pronunciation, dict.pronunciation,
`[sound:${dict.sound}]`, `[sound:${dict.sound}]`,
]; ];

View file

@ -1,6 +1,7 @@
import {search} from 'urban-dictionary-client'; import {search} from 'urban-dictionary-client';
import { import {
SET_AVAILABLE_API, SET_AVAILABLE_API,
SET_LOADING_STATE,
SET_PARSED_DICTIONARY, SET_PARSED_DICTIONARY,
URBAN_DICTIONARY_API, URBAN_DICTIONARY_API,
WORDS_API, WORDS_API,
@ -14,6 +15,9 @@ import {
import {createDictionary} from '../dictionary/create-dictionary'; import {createDictionary} from '../dictionary/create-dictionary';
import {setFields} from '../anki-set-actions'; import {setFields} from '../anki-set-actions';
import {sendWord, submit} from '../form-actions'; import {sendWord, submit} from '../form-actions';
import store from '../../store';
import {getModelId} from '../anki-get-actions';
import {AnkiDroid} from 'react-native-ankidroid/dist/ankidroid';
const getAvailableApi = (apiArray = []) => { const getAvailableApi = (apiArray = []) => {
for (const api of apiArray) { for (const api of apiArray) {
@ -32,25 +36,35 @@ const setDictioanry = dictioanry => ({
type: SET_PARSED_DICTIONARY, type: SET_PARSED_DICTIONARY,
payload: dictioanry, payload: dictioanry,
}); });
const setLoadingState = status => ({
type: SET_LOADING_STATE,
payload: status,
});
export const wordInfo = word => async dispatch => { export const wordInfo = word => async dispatch => {
try { try {
const api1 = await getResFromWordsAPI(word); const api1 = await getResFromWordsAPI(word);
//TODO add Urban Dictionary //TODO add Urban Dictionary
/* ********Working with Urban Dictionary*******
// const api2 = await getResFromUrbanDictionary(word); const api2 = await getResFromUrbanDictionary(word);
// const availableApi = getAvailableApi([api1, api2]); const availableApi = getAvailableApi([api1, api2]);
// if (availableApi === false) { if (availableApi === false) {
// throw new Error('word not found'); throw new Error('word not found');
// } }
*/
//function which return universal template for more simple interaction with api //function which return universal template for more simple interaction with api
dispatch(setLoadingState(false));
//TODO available dictionary instead api1 //TODO available dictionary instead api1
await dispatch(setAvailableApi(api1)); await dispatch(setAvailableApi(api1));
const wordDictionary = await createDictionary(api1); const wordDictionary = await createDictionary(api1);
dispatch(setDictioanry(wordDictionary)); dispatch(setDictioanry(wordDictionary));
sendWord(setFields(wordDictionary)); /* TODO: move sendWord to submit function */
// sendWord(setFields(wordDictionary));
drawFields();
} catch (e) { } catch (e) {
console.log(e); console.log(e);
} }
}; };
export const drawFields = fields => {};

View file

@ -1,27 +0,0 @@
// The object
// the string version of a function with /Function(
// in front and )/ at the end.
export const fJsonStingify = obj => {
return JSON.stringify(obj, function(key, value) {
if (typeof value === 'function') {
return '/Function(' + value.toString() + ')/';
}
return value;
});
};
// Convert to an object using a reviver function that
// recognizes the /Function(...)/ value and converts it
// into a function via -shudder- `eval`.
export const fJsonParse = json => {
return JSON.parse(json, function(key, value) {
if (
typeof value === 'string' &&
value.startsWith('/Function(') &&
value.endsWith(')/')
) {
value = value.substring(10, value.length - 2);
return eval('(' + value + ')');
}
return value;
});
};

View file

@ -1,5 +1,5 @@
import {search} from "urban-dictionary-client"; import {search} from 'urban-dictionary-client';
import {URBAN_DICTIONARY_API} from "../../constants/api-constants"; import {URBAN_DICTIONARY_API} from '../../constants/api-constants';
export async function getResFromUrbanDictionary(word) { export async function getResFromUrbanDictionary(word) {
const res = await search(word); const res = await search(word);
@ -10,4 +10,4 @@ export async function getResFromUrbanDictionary(word) {
return Promise.resolve({...res, word, source: URBAN_DICTIONARY_API}); return Promise.resolve({...res, word, source: URBAN_DICTIONARY_API});
} }
export const parseUrbanDictionaryApi = api => {} export const parseUrbanDictionaryApi = api => {};

View file

@ -17,35 +17,37 @@ export async function getResFromWordsAPI(word) {
return Promise.resolve(res); return Promise.resolve(res);
} }
const parsePOS = wordArray => {
let posSet = new Set();
let posArray = [];
wordArray.forEach((result, id) => {
const pos = result.partOfSpeech;
if (!posSet.has(pos)) {
posSet.add(pos);
posArray.push({pos, id});
}
});
return posArray;
};
//get all what anki template need for template //get all what anki template need for template
const getDefinitionList = wordsArray => { const getDefinitionList = wordsArray => {
const partOfSpeeches = parsePOS(wordsArray);
let definitionList = []; let definitionList = [];
partOfSpeeches.forEach(pos => { /*partOfSpeeches*/
const currentWord = wordsArray[pos.id]; let posSet = new Set();
definitionList.push({ let examples = [];
definition: currentWord.definition, wordsArray.forEach(words => {
example: currentWord.examples ? currentWord.examples[0] : undefined, posSet.add(words.partOfSpeech);
id: pos.id, if (words.examples) {
pos: pos.pos, examples.push(...words.examples);
}
}); });
posSet.forEach(pos => {
let defArray = [];
wordsArray.forEach(words => {
if (pos === words.partOfSpeech) {
defArray.push(words.definition);
}
}); });
return definitionList; definitionList.push({pos, definitions: defArray});
});
return {examples, definitions: definitionList};
}; };
export const parseWordsApi = api => ({ export const parseWordsApi = api => {
const words = getDefinitionList(api.results).definitions;
const examples = getDefinitionList(api.results).examples;
return {
pronunciation: api.pronunciation.all, pronunciation: api.pronunciation.all,
words: api.results ? getDefinitionList(api.results) : [], words: api.results ? words : [],
}); examples,
};
};

View file

@ -13,7 +13,8 @@ const yDictionary = async (
{method: 'GET'}, {method: 'GET'},
); );
const json = await res.json(); const json = await res.json();
return findPartofSpeech(json.def); // console.log('JSON', json);
return parseResponse(json.def);
} catch (e) { } catch (e) {
console.log('err in yandex-dictionary.js: ', e); console.log('err in yandex-dictionary.js: ', e);
} }
@ -24,6 +25,15 @@ const translateTemplate = (pos, tr) => ({
tr, tr,
}); });
const parseResponse = res => {
const parsed = res.map((item, id) => {
const pos = item.pos;
const tr = item.tr.map(translate => translate.text);
return {pos, tr};
});
return parsed;
};
export const findPartofSpeech = dictionary => { export const findPartofSpeech = dictionary => {
if (dictionary.length > 1) { if (dictionary.length > 1) {
return [ return [

View file

@ -1,6 +1,6 @@
import {AnkiDroid} from 'react-native-ankidroid/dist/ankidroid'; import {AnkiDroid} from 'react-native-ankidroid/dist/ankidroid';
import {setAnkiNoteCreator, setCreatorTemplate} from './anki-set-actions'; import {setAnkiNoteCreator, setCreatorTemplate} from './anki-set-actions';
import sendDataToLocaleStorage from './filesystem'; import sendDataToLocaleStorage, {getAnkiData} from './filesystem';
import setSettings, { import setSettings, {
modelFields, modelFields,
valueFields, valueFields,
@ -8,6 +8,7 @@ import setSettings, {
import { import {
checkAnkiLanModelForExisting, checkAnkiLanModelForExisting,
getFieldList, getFieldList,
getModelId,
getModelList, getModelList,
} from './anki-get-actions'; } from './anki-get-actions';
@ -16,15 +17,15 @@ import store from '../store';
export const createAnkiLanModel = model => async dispatch => { export const createAnkiLanModel = model => async dispatch => {
try { try {
const settings = setSettings(model); const settings = setSettings(model);
const selectedDeck = new AnkiDroid(settings); const selectedDeck = new AnkiDroid(settings);
await dispatch(setAnkiNoteCreator(selectedDeck)); await dispatch(setAnkiNoteCreator(selectedDeck));
await dispatch(setCreatorTemplate(modelFields)); await dispatch(setCreatorTemplate(modelFields));
// const sd = JSON.parse(JSON.stringify(selectedDeck)); // const sd = JSON.parse(JSON.stringify(selectedDeck));
// console.log(sd === selectedDeck); // console.log(sd === selectedDeck);
// **************** // ****************
alert('oh shit');
addNote(selectedDeck, valueFields, modelFields); firstNote(selectedDeck, valueFields, modelFields);
// **************** // ****************
// sendDataToLocaleStorage( // sendDataToLocaleStorage(
// setAnkiNoteCreator(sd), //send creator to locale storage // setAnkiNoteCreator(sd), //send creator to locale storage
@ -32,21 +33,42 @@ export const createAnkiLanModel = model => async dispatch => {
// ); // );
checkAnkiLanModelForExisting(model.name, model.list); checkAnkiLanModelForExisting(model.name, model.list);
await dispatch(getModelList()); await dispatch(getModelList());
await dispatch(getFieldList(model.name)); const [err, modelList] = await AnkiDroid.getModelList();
const modelId = await getModelId(modelList, model.name);
await console.log(modelId);
const [, fieldList] = await AnkiDroid.getFieldList(model.name);
console.log(fieldList, modelId);
await sendDataToLocaleStorage({
fieldList,
modelName: model.name,
modelId,
});
console.log(await getAnkiData());
} catch (err) { } catch (err) {
console.log(err); console.log('irror is ghere', err);
} }
}; };
const firstNote = (creator, fields, template) =>
creator.addNote(fields, template);
//creator is an object what have to store in locale storage. //creator is an object what have to store in locale storage.
export const addNote = words => { export const addNote = async words => {
const template = store.getState().anki.noteTemplate; const ankiData = await getAnkiData();
await console.log(ankiData);
const template = await ankiData.fieldList;
const deckId = store.getState().anki.selectedDeck.id;
const modelId = await ankiData.modelId;
console.log(template, deckId, modelId);
const settings = { const settings = {
deckId: '1', deckId,
modelId: '1585139654585', modelId,
}; };
const creator = new AnkiDroid(settings); const creator = new AnkiDroid(settings);
console.log(template);
console.log(words);
creator.addNote(words, template); creator.addNote(words, template);
alert('sucssess'); alert('sucssess');
}; };

View file

@ -6,6 +6,8 @@ export const createDictionary = async apiRes => {
const word = apiRes.word; const word = apiRes.word;
const parsedDictionary = parseDictionary(apiRes); const parsedDictionary = parseDictionary(apiRes);
const audio = await getAudio(word); const audio = await getAudio(word);
const compounded = await compoundWithYDictionary(parsedDictionary, word); const compounded = await compoundWithYDictionary(parsedDictionary, word);
return {...compounded, sound: audio}; //TODO add shrinkToOneExample(compounded)
return {...compounded, sound: audio, examples: parsedDictionary.examples};
}; };

View file

@ -1,43 +1,58 @@
import yDictionary from '../api/yandex-dictionary'; import yDictionary from '../api/yandex-dictionary';
import {parseDictionary} from './parsing-dictionary';
const selectByPos = wordArray => {
let posSet = new Set();
let selectedArray = [];
wordArray.forEach((result, id) => {
const pos = result.pos;
if (!posSet.has(pos)) {
posSet.add(pos);
selectedArray.push(result);
}
});
return selectedArray;
};
export const compoundWithYDictionary = async (definitionList, word) => { export const compoundWithYDictionary = async (definitionList, word) => {
try { try {
const translations = await yDictionary(word); const translations = await yDictionary(word);
const words = definitionList.words;
let compounded = []; let compounded = [];
// console.log('YANDEX ', translations); // console.log('YANDEX ', translations);
// console.log('WORDS', definitionList); // console.log('WORDS', definitionList);
translations.forEach(translate => { let PoSes = new Set();
definitionList.words.forEach(definition => { translations.forEach(tr => PoSes.add(tr.pos));
if (definition.pos === translate.pos) { words.forEach(df => PoSes.add(df.pos));
const compound = {...definition, ...translate};
compounded.push(compound); PoSes.forEach(pos => {
let trs = [];
translations.forEach(tr => {
if (tr.pos === pos) {
tr.tr.forEach(trans => trs.push(trans));
} }
}); });
if (definitionList.words.length === 0) { let definitions = [];
compounded.push(translate); words.forEach(word => {
if (word.pos === pos) {
word.definitions.forEach(w => definitions.push(w));
} }
}); });
// console.log(`RESPONSE FOR: ${word}`, {word, compounded}); // compounded.push({pos, trs, definitions});
compounded.push({
pos: pos,
translates: trs,
definitions,
});
});
return { return {
word, word,
pronunciation: `/${definitionList.pronunciation}/`, pronunciation: `/${definitionList.pronunciation}/`,
compounded, compounded,
}; };
} catch (e) { } catch (e) {
console.log('erris HERE', e); console.log('error is HERE', e);
} }
}; };
/*
import yDictionary from '../api/yandex-dictionary';
let smallStore = {};
export const compoundWithYDictionary = async (definitionList, word) => {
let properDefinitions = [];
const translations = (() => {
yDictionary(word).then(res => {
smallStore.res = res;
});
})();
const yDictionaryRes = smallStore.res.payload;
console.log(yDictionaryRes, definitionList);
};*/

View file

@ -1,48 +1,31 @@
import AsyncStorage from '@react-native-community/async-storage'; import AsyncStorage from '@react-native-community/async-storage';
import { import {
ANKILAN_DATA,
ANKILAN_NOTE_CREATOR, ANKILAN_NOTE_CREATOR,
ANKILAN_NOTE_TEMPLATE, ANKILAN_NOTE_TEMPLATE,
} from '../constants/anki-constants'; } from '../constants/anki-constants';
import JSONfn from 'jsonfn';
const sendDataToLocaleStorage = async (creator, template) => { const sendDataToLocaleStorage = async data => {
try { try {
await AsyncStorage.clear(); await AsyncStorage.clear();
await AsyncStorage.setItem(ANKILAN_DATA, JSON.stringify(data));
await AsyncStorage.setItem(ANKILAN_NOTE_CREATOR, JSONfn.stringify(creator));
await AsyncStorage.setItem(
ANKILAN_NOTE_TEMPLATE,
JSONfn.stringify(template),
);
} catch (e) { } catch (e) {
// saving error // saving error
alert('Error while syncing with filesystem'); alert('Error while syncing with filesystem');
console.log(e); console.log(e);
} }
}; };
export const getAnkiData = async () => {
try {
const value = await AsyncStorage.getItem(ANKILAN_DATA);
if (value !== null) {
// value previously stored
return JSON.parse(value);
}
} catch (e) {
// error reading value
}
};
export default sendDataToLocaleStorage; export default sendDataToLocaleStorage;
export const getTemplate = async () => {
try {
const value = await AsyncStorage.getItem(ANKILAN_NOTE_TEMPLATE);
console.log(value);
if (value !== null) {
// value previously stored
return JSONfn.parse(value);
}
} catch (e) {
// error reading value
}
};
export const getCreator = async () => {
try {
const value = await AsyncStorage.getItem(ANKILAN_NOTE_CREATOR);
if (value !== null) {
// value previously stored
return JSONfn.parse(value);
}
} catch (e) {
// error reading value
}
};

View file

@ -1,12 +1,14 @@
import {getCreator, getTemplate} from './filesystem'; import {getCreator, getTemplate} from './filesystem';
import {addNote} from './createAnkiLanModel'; import {addNote} from './createAnkiLanModel';
import {SEND_FIELD} from '../constants/anki-constants';
export const submit = () => ({}); export const submit = () => ({});
export const sendWord = async fields => { export const sendWord = async fields => {
// const creator = await getCreator();
// const template = JSON.parse(await getTemplate()).payload;
// console.log(creator);
// console.log(template);
console.log(fields);
addNote(fields.payload); addNote(fields.payload);
}; };
export const sendField = field => ({
type: SEND_FIELD,
payload: field.text,
role: field.role,
});

View file

@ -0,0 +1,2 @@
const drawFields = () => {};
export default drawFields;

View file

@ -0,0 +1,163 @@
import React, {useEffect, useRef, useState} from 'react';
import TextField from 'react-native-material-textfield/src/components/field';
import {StyleSheet} from 'react-native';
import {Picker, Text, View} from 'native-base';
import IconedButton from '../view/iconed-button.jsx';
import {POS_PICKER} from '../../constants/component-types';
const FieldEditor = props => {
const [data, setData] = useState(props.data);
const [values, setValues] = useState(props.data.values);
const [editing, setEditing] = useState(false);
const [selectedValue, setSelectedValue] = useState(
props.data.values[props.id] || props.data.values[0],
);
const [userText, setUserText] = useState(
props.data.values[props.id] || props.data.values[0],
);
const [valuesUpdated, setValuesUpdated] = useState(false);
const input = useRef();
useEffect(() => {
// console.log(userText)
// console.log("SELECTED", selectedValue)
if (props.hasChanged) {
// console.log("HAS CHANGED")
props.hasChanged(selectedValue);
}
if (props.type === POS_PICKER) {
console.log(userText);
}
});
useEffect(() => {
if (props.data.values.length === values.length) {
setData(props.data);
setValues(props.data.values);
}
}, [props.data.values]);
const selectValue = selected => {
setSelectedValue(selected);
if (props.type === POS_PICKER) {
values.forEach((value, id) => {
if (value === selected) {
console.warn(id);
props.onSelect(id);
}
});
}
};
const typing = text => {
setUserText(text);
};
const select = value => {
setUserText(value);
selectValue(value);
};
const confirmTyped = () => {
let newValues = new Set(values);
const valuesArray = Array.from(newValues.add(userText));
setValues(valuesArray);
setData({...data, values: valuesArray});
setEditing(!editing);
if (valuesArray.length !== values.length) {
setValuesUpdated(true);
}
};
useEffect(() => {
if (valuesUpdated) {
setSelectedValue(values[values.length - 1]);
setUserText(values[values.length - 1]);
setValuesUpdated(false);
}
setValuesUpdated(false);
}, [valuesUpdated]);
const styles = StyleSheet.create({
wrapper: {},
inner: {
display: 'flex',
justifyContent: 'space-between',
flexDirection: 'row',
alignItems: 'center',
alignContent: 'center',
},
row: {
display: 'flex',
flexDirection: 'row',
justifyContent: 'space-between',
width: 90,
},
button: {
width: 40,
height: 40,
display: 'flex',
justifyContent: 'center',
alignItems: 'center',
},
tfWrapper: {
width: editing ? '75%' : '84%',
},
pickerLabel: {
color: '#00000050',
fontSize: 12,
marginLeft: 2,
},
hr: {
height: 1,
width: '100%',
backgroundColor: '#00000070',
},
});
return (
<View style={styles.wrapper}>
<View style={styles.inner}>
<View style={styles.tfWrapper}>
{editing ? (
<TextField
lineType={'none'}
multiline={true}
label={props.data.label}
value={userText}
editable={true}
ref={input}
onChangeText={text => typing(text)}
/>
) : (
<View>
<Text style={styles.pickerLabel}>{props.data.label}</Text>
<Picker
selectedValue={selectedValue}
onValueChange={value => select(value)}>
{values.map((value, id) => {
return <Picker.Item value={value} label={value} key={id} />;
})}
</Picker>
</View>
)}
</View>
{editing ? (
<View style={styles.row}>
<IconedButton
icon="caret-down"
onPress={() => {
setEditing(!editing);
setUserText(selectedValue);
}}
/>
<IconedButton icon="check" onPress={confirmTyped} />
</View>
) : (
<IconedButton
icon="pen"
onPress={() => {
setEditing(!editing);
}}
/>
)}
</View>
<View style={styles.hr} />
</View>
);
};
export default FieldEditor;

View file

@ -0,0 +1,182 @@
import React, {useEffect, useState} from 'react';
import TextField from 'react-native-material-textfield/src/components/field';
import {ScrollView, StyleSheet} from 'react-native';
import {Picker, Text, View} from 'native-base';
import IconedButton from '../view/iconed-button.jsx';
import {POS_PICKER} from '../../constants/component-types';
import set from '@babel/runtime/helpers/esm/set';
const FieldEditor = props => {
const label = props.data.label;
const constantValues = props.pos | '';
const [values, setValues] = useState(props.data.values);
const [editingValue, setEditingValue] = useState(
props.data.values[props.id] || props.data.values[0],
);
const [selectedValue, setSelectedValue] = useState(
props.data.values[props.id] || props.data.values[0],
);
const [finiteValue, setFiniteValue] = useState(
props.data.values[props.id] || props.data.values[0],
);
const [editing, isEditing] = useState(false);
const [] = useState();
const [] = useState();
const [] = useState();
const select = value => {
setSelectedValue(value);
setFiniteValue(value);
setEditingValue(value);
};
const typing = text => {
setEditingValue(text);
};
const setTyped = () => {
let valuesSet = new Set(values);
valuesSet.add(editingValue);
const valuesArray = Array.from(valuesSet).slice();
setValues(valuesArray);
isEditing(!editing);
if (selectedValue !== editingValue) {
select(valuesArray[valuesArray.length - 1]);
}
};
useEffect(() => {
if (props.type === POS_PICKER) {
values.forEach((value, id) => {
if (value === finiteValue) {
props.hasChanged(id);
}
});
} else {
props.hasChanged(finiteValue);
}
}, [finiteValue]);
useEffect(() => {
setValues(props.data.values);
setSelectedValue(props.data.values[0]);
console.log('EXECUTIN');
}, [constantValues]);
// useEffect(() => {
//
// if(props.type !== POS_PICKER){
// if(constantValues !== props.data.values){
// console.log("EXECUTIN")
// }
// }
// }, [constantValues, props.data.values])
const styles = StyleSheet.create({
wrapper: {},
inner: {
display: 'flex',
justifyContent: 'space-between',
flexDirection: 'row',
alignItems: 'center',
alignContent: 'center',
},
row: {
display: 'flex',
flexDirection: 'row',
justifyContent: 'space-between',
width: 90,
},
button: {
width: 40,
height: 40,
display: 'flex',
justifyContent: 'center',
alignItems: 'center',
},
tfWrapper: {
width: editing ? '75%' : '84%',
},
pickerLabel: {
color: '#00000050',
fontSize: 12,
marginLeft: 2,
},
hr: {
height: 1,
width: '100%',
backgroundColor: '#00000070',
},
});
return (
<ScrollView keyboardShouldPersistTaps={'handled'}>
{props.type === POS_PICKER ? (
<View>
<Text style={styles.pickerLabel}>{props.data.label}</Text>
<Picker
selectedValue={selectedValue}
onValueChange={value => select(value)}>
{values.map((value, id) => {
return <Picker.Item value={value} label={value} key={id} />;
})}
</Picker>
</View>
) : (
<View style={styles.wrapper}>
<View style={styles.inner}>
<View style={styles.tfWrapper}>
{editing ? (
<View>
<TextField
lineType={'none'}
multiline={true}
label={label}
value={editingValue}
editable={true}
onChangeText={text => typing(text)}
autoFocus={true}
/>
<View style={styles.hr} />
</View>
) : (
<View>
<Text style={styles.pickerLabel}>{props.data.label}</Text>
<Picker
selectedValue={selectedValue}
onValueChange={value => select(value)}>
{values.map((value, id) => {
return (
<Picker.Item value={value} label={value} key={id} />
);
})}
</Picker>
</View>
)}
</View>
{editing ? (
<View style={styles.row}>
<IconedButton icon="check" onPress={setTyped} />
<IconedButton
icon="caret-down"
onPress={() => {
isEditing(!editing);
setEditingValue(selectedValue);
}}
/>
</View>
) : (
<IconedButton
icon="pen"
onPress={() => {
isEditing(!editing);
}}
/>
)}
</View>
<View style={styles.hr} />
</View>
)}
</ScrollView>
);
};
export default FieldEditor;

View file

@ -0,0 +1,128 @@
import React, {useState, useEffect} from 'react';
import {connect} from 'react-redux';
import {View, Icon, Button, Text} from 'native-base';
import {TextField} from 'react-native-material-textfield';
import FieldEditor from './field-editor';
import TextInput from './text-input';
import {ScrollView} from 'react-native';
import PickerList from './picker-list';
import {setFields} from '../../actions/anki-set-actions';
import {
DEF_LIST1,
DEF_LIST2,
EXAMPLES,
PRONUNCIATION,
SOUND, WORD,
} from '../../constants/anki-constants';
import {sendField} from '../../actions/form-actions';
import {addNote} from "../../actions/createAnkiLanModel";
const FieldList = props => {
const [pronunciation, setPronunciation] = useState(
props.response.pronunciation,
);
const [sound, setSound] = useState();
const [examples, setExamples] = useState();
const [completedFields, setCompletedFields] = useState({
word: props.word,
compounded: [{pos: '', tr: '', definition: ''}, {}],
examples: '',
pronunciation: '',
sound: '',
});
useEffect(() => {
if (
props.response.sound &&
props.response.pronunciation &&
props.response.compounded &&
props.response.examples
) {
// console.log("LOOOADED")
} else {
}
});
useEffect(() => {
setSound(props.response.sound);
setPronunciation(props.response.pronunciation);
setExamples(props.response.examples);
}, [props]);
const [loadingState, setLoadingState] = useState(false);
useEffect(() => {
console.log('STATE', examples, pronunciation, sound);
if (examples && pronunciation && sound) {
setLoadingState(true);
} else {
setLoadingState(false);
}
});
const submit = () => {
props.setFields(props.fields);
};
return (
<ScrollView keyboardShouldPersistTaps={'handled'} style={{height: '100%'}}>
{loadingState && props.loadingState ? (
<View>
<PickerList labelNum={1} id={0} role={DEF_LIST1} />
{/*<PickerList labelNum={2} id={1} role={DEF_LIST2} />*/}
<PickerList
labelNum={2}
id={props.response.compounded.length >= 2 ? 1 : 0}
role={DEF_LIST2}
/>
<FieldEditor
hasChanged={c =>
props.sendField({
text: c,
role: EXAMPLES,
})
}
role={EXAMPLES}
data={{
label: 'Usage example',
values: examples || ['can not find the example'],
}}
/>
<FieldEditor
hasChanged={c =>
props.sendField({
text: c,
role: SOUND,
})
}
data={{values: [sound], label: 'Sound'}}
role={SOUND}
/>
<FieldEditor
hasChanged={c =>
props.sendField({
text: c,
role: PRONUNCIATION,
})
}
role={PRONUNCIATION}
data={{values: [pronunciation], label: 'Pronunciation'}}
/>
<Button style={{marginTop: 10}} onPress={submit}>
<Text>Submit</Text>
<Icon name={'send'} />
</Button>
</View>
) : (
<Text>Loading...</Text>
)}
</ScrollView>
);
};
export default connect(
state => ({
response: state.api.parsedDictionary,
word: state.api.availableApi.word,
loadingState: state.api.apiIsLoaded,
fields: state.anki.currentFields
}),
{
sendField,
setFields
},
)(FieldList);

View file

@ -0,0 +1,106 @@
import React, {useState, useEffect, useRef} from 'react';
import {View} from 'native-base';
import {connect} from 'react-redux';
import PosPicker from './pos-picker';
import FieldEditor from './field-editor';
import {setDef} from '../../actions/anki-set-actions';
import {sendField} from '../../actions/form-actions';
/*
****************** props:*****************
* startId props.data[0] / [1] /[8] ...
* labelNum // Translate 1 / Translate 2 ...
* */
const PickerList = props => {
const [data, setData] = useState(props.data[props.id]);
const [tr, setTr] = useState(props.data[props.id].definitions[0]);
const [def, setDef] = useState(props.data[props.id].definitions[0]);
const [pos, setPos] = useState(props.data[props.id].pos);
const [globID, setId] = useState(props.id);
useEffect(() => {
setData(props.data[props.id]);
setTimeout(() => {
selectDef(0);
}, 0);
}, [props]);
const selectDef = id => {
setId(id);
setPos(props.data[id].pos);
setDef(props.data[id].definitions[0]);
setTr(props.data[id].translates[0]);
};
useEffect(() => {
props.sendField({
text: {
pos: pos,
tr: tr,
definition: def,
},
role: props.role,
});
props.sendField("HDFSL:FJL:SKDJF: SLDKJF:LSDJF:LSDKFJ SDF",
{
text: {
pos: pos,
tr: tr,
definition: def,
},
role: props.role,
})
}, [tr, def, pos]);
const updateData = c => {
console.log("HDFLSDKFJ SDF",
{
text: {
pos: pos,
tr: tr,
definition: def,
},
role: props.role,
})
};
return (
<View>
<PosPicker
labelNum={props.labelNum}
defaultId={props.id}
onSelect={id => selectDef(id | props.id)}
/>
<FieldEditor
hasChanged={c => {
setTr(c);
updateData(c );
}}
pos={pos}
data={{
label: `Translate ${props.labelNum}`,
values: props.data[globID].translates,
}}
/>
<FieldEditor
hasChanged={c => {
setDef(c);
updateData(c);
}}
pos={pos}
data={{
label: `Definition ${props.labelNum}`,
values: props.data[globID].definitions,
}}
/>
</View>
);
};
export default connect(
state => ({
data: state.api.parsedDictionary.compounded,
word: state.api.availableApi.word,
}),
{
setDef,
sendField,
},
)(PickerList);

View file

@ -0,0 +1,37 @@
import React, {useState, useEffect} from 'react';
import {connect} from 'react-redux';
import {View} from 'native-base';
import FieldEditor from './field-editor';
import {POS_PICKER} from '../../constants/component-types';
const PosPicker = props => {
const [ready, setReady] = useState(false);
const [poses, setPoses] = useState([]);
useEffect(() => {
if (props.parts) {
let posArray = props.parts.map((part, id) => part.pos);
setPoses(posArray);
setReady(true);
}
}, [props]);
return (
<View>
{ready ? (
<FieldEditor
data={{
label: `Part of speech ${props.labelNum} `,
values: poses,
}}
id={props.defaultId}
type={POS_PICKER}
hasChanged={value => props.onSelect(value)}
/>
) : (
<View />
)}
</View>
);
};
export default connect(state => ({
parts: state.api.parsedDictionary.compounded,
}))(PosPicker);

View file

@ -5,9 +5,8 @@ import {Button, Text} from 'native-base';
const SubmitButton = props => { const SubmitButton = props => {
return ( return (
<Button onPress={props.onSubmit}> <Button onPress={props.onSubmit}>
<Text>Submit</Text> <Text>Send</Text>
</Button> </Button>
); );
}; };
export default SubmitButton export default SubmitButton;

View file

@ -0,0 +1,36 @@
import React, {useState, useEffect, useRef} from 'react';
import {connect} from 'react-redux';
import {TextField} from 'react-native-material-textfield';
import {View} from 'native-base';
import {sendField} from '../../actions/form-actions';
import FieldEditor from './field-editor';
const TextInput = props => {
useEffect(() => {
// console.log(props.value)
});
return (
<View>
<FieldEditor
hasChanged={c => true}
data={{
values: [props.value],
label: props.label,
}}
/>
<View
style={{
width: '100%',
height: 1,
backgroundColor: '#00000050',
}}
/>
</View>
);
};
export default connect(
null,
{
sendField,
},
)(TextInput);

View file

@ -7,18 +7,24 @@ import DeckPicker from './view/deck-picker';
import AddWordForm from './anki-form'; import AddWordForm from './anki-form';
import AnkiTemplate from './view/add-main-template'; import AnkiTemplate from './view/add-main-template';
import {Grid, Row} from 'native-base'; import {Grid, Row} from 'native-base';
import {checkAnkiLanModelForExisting, getDeckList, getModelList} from '../actions/anki-get-actions'; import {
checkAnkiLanModelForExisting,
getDeckList,
getModelList,
getSavedData,
} from '../actions/anki-get-actions';
const StartScreen = props => { const StartScreen = props => {
useEffect(() => { useEffect(() => {
props.getDeckList(); props.getDeckList();
props.getModelList(); props.getModelList();
}, []) props.getSavedData();
}, []);
useEffect(() => { useEffect(() => {
props.checkAnkiLanModelForExisting(props.modelName, props.modelList); props.checkAnkiLanModelForExisting(props.modelName, props.modelList);
}); });
return ( return (
<ScrollView> <ScrollView keyboardShouldPersistTaps="handled">
{props.ankiAvailable ? ( {props.ankiAvailable ? (
props.ankiLanModelExists ? ( props.ankiLanModelExists ? (
<AddWordForm /> <AddWordForm />
@ -43,5 +49,7 @@ export default connect(
{ {
checkAnkiLanModelForExisting, checkAnkiLanModelForExisting,
getDeckList, getDeckList,
getModelList getModelList,
})(StartScreen); getSavedData,
},
)(StartScreen);

View file

@ -4,11 +4,19 @@ import DeckPicker from './view/deck-picker';
import {Form, Container, Item} from 'native-base'; import {Form, Container, Item} from 'native-base';
import {checkAnkiLanModelForExisting} from '../actions/anki-get-actions'; import {checkAnkiLanModelForExisting} from '../actions/anki-get-actions';
import InputWord from './view/translatable-word'; import InputWord from './view/translatable-word';
import SubmitButton from './view/submit-button'; import SubmitButton from './Form/submit-button';
import {wordInfo} from "../actions/api/dictionary"; import {ScrollView} from 'react-native';
import {wordInfo} from '../actions/api/dictionary';
import FieldEditor from './Form/field-editor';
import FieldList from './Form/field-list';
import {WORD} from "../constants/anki-constants";
import {sendField} from "../actions/form-actions";
const AnkiForm = props => { const AnkiForm = props => {
const [target, setTarget] = useState('') const [target, setTarget] = useState('');
const [fields, setFields] = useState({});
const [submitted, setSubmitted] = useState(false);
useEffect(() => { useEffect(() => {
// props.wordInfo('Urge'); // props.wordInfo('Urge');
// props.wordInfo('Maze'); // props.wordInfo('Maze');
@ -17,23 +25,28 @@ const AnkiForm = props => {
// props.wordInfo('Entrepreneurship'); // props.wordInfo('Entrepreneurship');
// props.wordInfo('meagre'); // props.wordInfo('meagre');
// props.wordInfo('meager'); // props.wordInfo('meager');
}, []); }, []);
const getWord = (word) => { const getWord = word => {
setTarget(word) setTarget(word);
}; };
const submit = () => { const submit = () => {
props.wordInfo(target); props.wordInfo(target);
setSubmitted(true);
props.sendField({
text: target,
role: WORD
})
// console.log(props.available, props.data)
}; };
return ( return (
<Container style={{padding: 20}}> <ScrollView style={{padding: 20}}>
<Form> <Form>
<DeckPicker /> <DeckPicker />
<InputWord word={getWord} onSubmit={submit} /> <InputWord word={getWord} onSubmit={submit} />
<SubmitButton onSubmit={submit} /> {submitted ? <FieldList /> : <SubmitButton onSubmit={submit} />}
</Form> </Form>
</Container> </ScrollView>
); );
}; };
@ -43,10 +56,13 @@ export default connect(
modelName: state.anki.ankiLanModelName, modelName: state.anki.ankiLanModelName,
modelList: state.anki.modelList, modelList: state.anki.modelList,
creator: state.anki.noteCreator, creator: state.anki.noteCreator,
data: state,
word: state.api.availableApi.word,
available: state.api.apiIsLoaded,
}), }),
{ {
checkAnkiLanModelForExisting, checkAnkiLanModelForExisting,
wordInfo wordInfo,
sendField
}, },
)(AnkiForm); )(AnkiForm);

View file

@ -1,27 +1,38 @@
import React from 'react' import React from 'react';
import {Text, Button, Grid, Container} from 'native-base'; import {Text, Button, Grid, Container} from 'native-base';
import {connect} from 'react-redux' import {connect} from 'react-redux';
import {createAnkiLanModel} from '../../actions/createAnkiLanModel'; import {createAnkiLanModel} from '../../actions/createAnkiLanModel';
const AnkiTemplate = props => { const AnkiTemplate = props => {
return ( return (
<Grid style={{display: 'flex', alignItems: 'center', justifyContent: 'space-between' }}> <Grid
style={{
display: 'flex',
alignItems: 'center',
justifyContent: 'space-between',
}}>
<Text>You have no AnkiLan card template</Text> <Text>You have no AnkiLan card template</Text>
<Button onPress={() => props.createAnkiLanModel({ <Button
onPress={() =>
props.createAnkiLanModel({
name: props.modelName, name: props.modelName,
list: props.modelList, list: props.modelList,
...props.currentDeck ...props.currentDeck,
})}><Text>Create</Text></Button> })
}>
<Text>Create</Text>
</Button>
</Grid> </Grid>
) );
};
} export default connect(
state => ({
export default connect(state => ({
modelName: state.anki.ankiLanModelName, modelName: state.anki.ankiLanModelName,
currentDeck: state.anki.selectedDeck, currentDeck: state.anki.selectedDeck,
modelList: state.anki.modelList, modelList: state.anki.modelList,
}), { }),
{
createAnkiLanModel, createAnkiLanModel,
})(AnkiTemplate) },
)(AnkiTemplate);

View file

@ -1,32 +1,37 @@
import React, {useEffect, useState} from 'react' import React, {useEffect, useState} from 'react';
import {connect} from 'react-redux' import {connect} from 'react-redux';
import {Picker, Text} from 'native-base' import {Picker, Text} from 'native-base';
import {getDeckList, getModelList} from '../../actions/anki-get-actions'; import {getDeckList, getModelList} from '../../actions/anki-get-actions';
import {selectDeck} from '../../actions/anki-set-actions'; import {selectDeck} from '../../actions/anki-set-actions';
const DeckPicker = props => { const DeckPicker = props => {
const [deckList, setDeckList] = useState([{name: "no decks", id: 0}]); const [deckList, setDeckList] = useState([{name: 'no decks', id: 0}]);
useEffect(() => { useEffect(() => {
props.getDeckList() props.getDeckList();
props.getModelList() props.getModelList();
}, []) }, []);
useEffect(() => { useEffect(() => {
setDeckList(props.decks) setDeckList(props.decks);
}, [props.decks]) }, [props.decks]);
return ( return (
<Picker onValueChange={id => props.selectDeck({id, deck: deckList[id]})} selectedValue={props.selectedDeck.id}> <Picker
onValueChange={id => props.selectDeck({id, deck: deckList[id]})}
selectedValue={props.selectedDeck.id}>
{deckList.map((deck, index) => ( {deckList.map((deck, index) => (
<Picker.Item label={deck.name} key={deck.id} value={index} /> <Picker.Item label={deck.name} key={deck.id} value={index} />
))} ))}
</Picker> </Picker>
) );
} };
export default connect(state => ({ export default connect(
state => ({
decks: state.anki.deckList, decks: state.anki.deckList,
selectedDeck: state.anki.selectedDeck, selectedDeck: state.anki.selectedDeck,
}),{ }),
{
getDeckList, getDeckList,
selectDeck, selectDeck,
getModelList getModelList,
})(DeckPicker) },
)(DeckPicker);

View file

@ -0,0 +1,26 @@
import React, {useState} from 'react';
import TextField from 'react-native-material-textfield/src/components/field';
import {StyleSheet} from 'react-native';
import {View, Text, Button, Picker} from 'native-base';
import Icon from 'react-native-vector-icons/FontAwesome5';
const IconedButton = props => {
return (
<Button bordered style={styles.button} onPress={props.onPress}>
<Icon name={props.icon} size={20} color={'blue'} />
</Button>
);
};
const styles = StyleSheet.create({
button: {
width: 40,
height: 40,
display: 'flex',
justifyContent: 'center',
alignItems: 'center',
},
});
export default IconedButton;

View file

@ -3,9 +3,18 @@ import {connect} from 'react-redux';
import {TextField} from 'react-native-material-textfield'; import {TextField} from 'react-native-material-textfield';
const InputWord = props => { const InputWord = props => {
const sendWord = (word) => { const sendWord = word => {
props.word(word) props.word(word);
}; };
return <TextField label={'Your word'} onChangeText={word => sendWord(word)} onSubmitEditing={props.onSubmit}/>; return (
<TextField
label={'Your word'}
onChangeText={word => sendWord(word)}
onSubmitEditing={props.onSubmit}
/>
);
}; };
export default connect(state => ({}), {})(InputWord); export default connect(
state => ({}),
{},
)(InputWord);

View file

@ -18,6 +18,8 @@ export const SET_WORD_TRANSLATE = 'SET_WORD_TRANSLATE';
export const SET_ANKI_NOTE_CREATOR = 'SET_ANKI_NOTE_CREATOR'; export const SET_ANKI_NOTE_CREATOR = 'SET_ANKI_NOTE_CREATOR';
export const SET_CREATOR_TEMPLATE = 'SET_CREATOR_TEMPLATE'; export const SET_CREATOR_TEMPLATE = 'SET_CREATOR_TEMPLATE';
export const SET_FIELDS = 'SET_FIELDS'; export const SET_FIELDS = 'SET_FIELDS';
export const SET_ANKI_DATA = 'SET_ANKI_DATA';
export const SET_GLOBAL_DEF = 'SET_GLOBAL_DEF';
//Anki ui actions //Anki ui actions
export const SHOW_FIELDS = 'SHOW_FIELDS'; export const SHOW_FIELDS = 'SHOW_FIELDS';
// Anki check actions // Anki check actions
@ -26,3 +28,15 @@ export const SET_EXISTING_OF_ANKI_LAN_MODEL = 'SET_EXISTING_OF_ANKI_LAN_MODEL';
//rn-async-storage kesy //rn-async-storage kesy
export const ANKILAN_NOTE_CREATOR = '@ANKILAN_NOTE_CREATOR'; export const ANKILAN_NOTE_CREATOR = '@ANKILAN_NOTE_CREATOR';
export const ANKILAN_NOTE_TEMPLATE = '@ANKILAN_NOTE_TEMPLATE'; export const ANKILAN_NOTE_TEMPLATE = '@ANKILAN_NOTE_TEMPLATE';
export const ANKILAN_DATA = 'ANKILAN_DATA';
//form actions
export const SEND_FIELD = 'SEND_FIELD';
//field names
export const SOUND = 'SOUND';
export const EXAMPLES = 'EXAMPLES';
export const PRONUNCIATION = 'PRONUNCIATION';
export const DEF_LIST1 = 'DEF_LIST1';
export const DEF_LIST2 = 'DEF_LIST2';
export const WORD = 'WORD';

View file

@ -1,8 +1,9 @@
// export const ct = 'ct' // export const ct = 'ct'
export const SET_YANDEX_DICTIONARY_RESPONSE = 'SET_YANDEX_DICTIONARY_RESPONSE'; export const SET_YANDEX_DICTIONARY_RESPONSE = 'SET_YANDEX_DICTIONARY_RESPONSE';
export const SET_AVAILABLE_API = 'SET_AVAILABLE_API'; export const SET_AVAILABLE_API = 'SET_AVAILABLE_API';
export const WORDS_API = 'WORDS_API' export const WORDS_API = 'WORDS_API';
export const URBAN_DICTIONARY_API = 'URBAN_DICTIONARY_API' export const URBAN_DICTIONARY_API = 'URBAN_DICTIONARY_API';
export const SET_ALL_FIELDS = 'SET_ALL_FIELDS';
export const SET_PARSED_DICTIONARY = 'SET_PARSED_DICTIONARY';
export const SET_PARSED_DICTIONARY = 'SET_PARSED_DICTIONARY' export const SET_LOADING_STATE = 'SET_LOADING_STATE';

View file

@ -0,0 +1 @@
export const POS_PICKER = 'POS_PICKER'

View file

@ -1,11 +1,19 @@
import { import {
DEF_LIST1,
DEF_LIST2,
EXAMPLES,
GET_DECK_LIST, GET_DECK_LIST,
GET_MODEL_LIST, GET_MODEL_LIST,
PRONUNCIATION,
REQUEST_PERMISSIONS, REQUEST_PERMISSIONS,
SEND_FIELD,
SET_ANKI_DATA,
SET_ANKI_NOTE_CREATOR, SET_ANKI_NOTE_CREATOR,
SET_CREATOR_TEMPLATE, SET_CREATOR_TEMPLATE,
SET_DECK, SET_DECK,
SET_EXISTING_OF_ANKI_LAN_MODEL, SET_EXISTING_OF_ANKI_LAN_MODEL,
SOUND,
WORD,
} from '../constants/anki-constants'; } from '../constants/anki-constants';
const initialState = { const initialState = {
@ -20,9 +28,20 @@ const initialState = {
mainFieldIsAvailable: false, mainFieldIsAvailable: false,
fieldList: [], fieldList: [],
ankiLanModelIsAlreadyExists: false, ankiLanModelIsAlreadyExists: false,
ankiLanModelName: '1AnkiLan1111', ankiLanModelName: 'develop_final_maybe_maybe_maybe',
noteCreator: {}, noteCreator: {},
noteTemplate: [], noteTemplate: [],
currentFields: {
word: '',
compounded: [
{pos: '', tr: '', definition: ''},
{pos: '', tr: '', definition: ''},
],
example: '',
pronunciation: '',
sound: '',
},
savedData: {},
}; };
const ankiReducer = (state = initialState, action) => { const ankiReducer = (state = initialState, action) => {
@ -44,6 +63,64 @@ const ankiReducer = (state = initialState, action) => {
return {...state, noteTemplate: action.payload}; return {...state, noteTemplate: action.payload};
case SET_ANKI_NOTE_CREATOR: case SET_ANKI_NOTE_CREATOR:
return {...state, noteCreator: action.payload}; return {...state, noteCreator: action.payload};
case SET_ANKI_DATA:
return {
...state,
savedData: action.payload,
};
case SEND_FIELD: {
const fields = state.currentFields;
switch (action.role) {
case EXAMPLES: {
return {
...state,
currentFields: {...state.currentFields, example: action.payload},
};
}
case SOUND: {
return {
...state,
currentFields: {...state.currentFields, sound: action.payload},
};
}
case PRONUNCIATION: {
return {
...state,
currentFields: {
...state.currentFields,
pronunciation: action.payload,
},
};
}
case DEF_LIST1: {
console.log(action.payload);
console.log(action.role);
return {
...state,
currentFields: {
...state.currentFields,
compounded: [action.payload, state.currentFields.compounded[1]],
},
};
}
case DEF_LIST2: {
return {
...state,
currentFields: {
...state.currentFields,
compounded: [state.currentFields.compounded[0], action.payload],
},
};
}
case WORD: {
alert(action.payload);
return {
...state,
currentFields: {...state.currentFields, word: action.payload},
};
}
}
}
default: default:
return state; return state;
} }

View file

@ -1,8 +1,12 @@
import { import {
SET_ALL_FIELDS,
SET_AVAILABLE_API, SET_AVAILABLE_API,
SET_LOADING_STATE,
SET_PARSED_DICTIONARY, SET_PARSED_DICTIONARY,
SET_YANDEX_DICTIONARY_RESPONSE, SET_YANDEX_DICTIONARY_RESPONSE,
} from '../constants/api-constants'; } from '../constants/api-constants';
import {SET_FIELDS} from '../constants/anki-constants';
import {addNote} from '../actions/createAnkiLanModel';
const initialState = { const initialState = {
word: '', word: '',
@ -12,6 +16,9 @@ const initialState = {
availableApiName: '', availableApiName: '',
yandexDictionaryInfo: [], yandexDictionaryInfo: [],
parsedDictionary: {}, parsedDictionary: {},
availableFields: [],
allFields: [],
apiIsLoaded: false,
}; };
const apiReducer = (state = initialState, action) => { const apiReducer = (state = initialState, action) => {
@ -31,6 +38,23 @@ const apiReducer = (state = initialState, action) => {
return { return {
...state, ...state,
parsedDictionary: action.payload, parsedDictionary: action.payload,
apiIsLoaded: true,
};
case SET_LOADING_STATE:
return {
...state,
apiIsLoaded: action.payload,
};
case SET_FIELDS:
addNote(action.payload);
return {
...state,
availableFields: action.payload,
};
case SET_ALL_FIELDS:
return {
...state,
allFields: action.payload,
}; };
default: default:
return state; return state;

5
tools-start.fs Executable file
View file

@ -0,0 +1,5 @@
watchman watch-del-all
watchman shutdown-server
react-native run-android
react-native-debugger &
scrcpy &

1107
yarn.lock

File diff suppressed because it is too large Load diff