Доступ к разделу запрещен!
\r\nАвторизуйтесь с правильной учетной записью или свяжитесь с администратором
\r\n{"version":3,"sources":["App.jsx","auth/AuthProvider.js","containers/403/Error403.jsx","components/Header/HeaderNavLink.jsx","components/Header/HeaderNavigation.jsx","components/Header/MenuLargeNavigation.jsx","utils/getUserInitials.js","components/Modals/MessageModal.jsx","utils/api/core.js","utils/api/services/image.js","components/Header/HeaderUserProfile.jsx","components/Preloader/Preloader.jsx","utils/history.js","utils/helpers.js","utils/api/services/files.js","components/Preloader/ContentPreloader.jsx","components/AttachedContent/AttachedContent.jsx","utils/formatDate.js","components/User/AuthorBlock.jsx","utils/api/services/contest.js","containers/Contest/PracticeCard.jsx","containers/Main/PracticeNews.jsx","containers/Main/ForumNewsItem.jsx","utils/api/services/forum.js","containers/Main/ForumNews.jsx","utils/api/services/materials.js","components/Modals/ContentModal.jsx","containers/Training/TrainingListItem.jsx","utils/api/services/statistic.js","containers/Main/EducationNews.jsx","utils/api/services/news.js","containers/Main/NewsSliderItem.jsx","containers/Main/NewsSlider.jsx","components/SocialBlock/SocialBlock.jsx","components/Modals/Modal.jsx","components/Modals/AnimatedTitle.jsx","components/Modals/WelcomeModal.jsx","containers/Main/Main.jsx","components/BreadСrumbs/BreadСrumbs.jsx","components/Search/SimpleSearch.jsx","components/User/UserSmallAvatar.jsx","containers/Forum/TopicListItemUserList.jsx","containers/Forum/TopicListItem.jsx","containers/Forum/ForumCategoryItem.jsx","components/Search/Search.jsx","containers/Forum/ForumSearchItem.jsx","containers/Forum/ForumSearchBlock.jsx","components/ListFooter/LoadMoreButton.jsx","components/ListFooter/Pagination.jsx","components/ListFooter/TotalCounter.jsx","components/ListFooter/ListFooter.jsx","utils/urlHelper.js","containers/Forum/Forum.jsx","components/TextEditor/quill-emoji/src/emoji-list.js","components/TextEditor/quill-emoji/src/emoji-map.js","components/TextEditor/quill-emoji/src/format-emoji-blot.js","components/TextEditor/quill-emoji/src/module-toolbar-emoji.js","components/TextEditor/quill-emoji/src/quill-emoji.js","components/TextEditor/FileUploader.jsx","components/TextEditor/TextEditor.jsx","components/Inputs/CustomDropdown.jsx","components/Preloader/GlobalPreloader.jsx","containers/Forum/ForumTopicCreate.jsx","components/Inputs/CustomDropdownForum.jsx","containers/Forum/ForumTopicListHeader.jsx","containers/Forum/ForumHeaderMobile.jsx","containers/Forum/ForumHeaderDesktop.jsx","containers/Forum/ForumTopicList.jsx","containers/Forum/ForumTopicPostActions.jsx","utils/constants.js","containers/Forum/ForumAttachedFile.jsx","containers/Forum/ForumAttachList.jsx","containers/Forum/ForumTopicFirstPost.jsx","containers/Forum/ForumTopicComment.jsx","containers/Forum/ForumTopicCommentCreate.jsx","containers/Forum/ForumTopic.jsx","utils/imageCropper.js","components/Modals/CropImageModal.jsx","components/User/ProfileAvatar.jsx","components/User/UserStatistic.jsx","components/Inputs/InputWithPlaceholder.jsx","components/Inputs/PhoneInputWithPlaceholder.jsx","utils/enums.js","utils/validation.js","containers/Profile/MyProfile.jsx","utils/api/services/identity.js","components/Inputs/PersonalInfoItem.jsx","containers/Profile/Profile.jsx","utils/api/services/profile.js","containers/News/NewsItem.jsx","containers/News/NewsList.jsx","containers/Gallery/GalleryCategoryItem.jsx","containers/Gallery/GalleryCategoryList.jsx","utils/api/services/gallery.js","containers/News/NewsDetails.jsx","utils/jquery-global.js","containers/Gallery/GalleryCategoryDetails.jsx","containers/Training/TrainingList.jsx","containers/Training/Training.jsx","containers/Contest/practiceConstants.js","containers/Contest/CategoriesDesktop.jsx","components/Inputs/CustomDropdownPractice.jsx","containers/Contest/CategoriesMobile.jsx","containers/Contest/TagsDesktop.jsx","components/Inputs/CustomDropdownPracticeTags.jsx","containers/Contest/TagsMobile.jsx","containers/Contest/CategoriesDetal.jsx","containers/Contest/SortMobile.jsx","containers/Contest/CategoriesAndTagsPanel.jsx","containers/Contest/Practice.jsx","containers/Contest/PracticeDetail/PracticeDetailCaseAside.jsx","containers/Contest/PracticeDetail/PracticeDetailCase.jsx","containers/Contest/PracticeDetail/PracticeDetailForumComment.jsx","containers/Contest/PracticeDetail/PracticeDetailForumBlock.jsx","containers/Contest/PracticeDetail/PracticeDetailRelatedCases.jsx","containers/Contest/PracticeDetail/PracticeDetail.jsx","containers/404/Error404.jsx","routes.js","components/Header/Header.jsx","components/Sprite/Sprite.jsx","components/Footer/Footer.jsx","auth/AuthConsumer.js","containers/Layout.jsx","index.js","paths.js","auth/context.js"],"names":["authUrl","concat","process","App","displayName","name","react__WEBPACK_IMPORTED_MODULE_5___default","a","createElement","react_router_dom__WEBPACK_IMPORTED_MODULE_7__","react_router_dom__WEBPACK_IMPORTED_MODULE_8__","react_router_dom__WEBPACK_IMPORTED_MODULE_9__","path","paths","advocates","forbidden","exact","component","Error403","_auth_AuthProvider__WEBPACK_IMPORTED_MODULE_12__","Layout","Component","hot","module","AuthProvider","_this","Object","C_Work_CooperVision_Web_src_CooperVision_Web_Advocates_ClientApp_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__","this","_super","call","toggleLoading","bind","C_Work_CooperVision_Web_src_CooperVision_Web_Advocates_ClientApp_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__","fetchSuccess","fetchFail","refreshAuth","state","C_Work_CooperVision_Web_src_CooperVision_Web_Advocates_ClientApp_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_0__","context","defaultState","props","fetchInfo","Promise","reject","setState","isLoading","userInfo","error","data","err","oThis","reqOptions","options","method","credentials","headers","Content-Type","axios","get","then","response","status","r","json","catch","ex","window","location","href","pathname","encodeURIComponent","search","react__WEBPACK_IMPORTED_MODULE_7___default","_context__WEBPACK_IMPORTED_MODULE_9__","Provider","value","children","React","__webpack_require__","d","__webpack_exports__","Error404","react__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_0___default","n","_paths__WEBPACK_IMPORTED_MODULE_2__","className","common","signout","style","borderTop","paddingTop","Date","getFullYear","HeaderNavLink","react_default","Link","to","onClick","hideMenu","HeaderNavigation","_Component","inherits","_createSuper","classCallCheck","apply","arguments","createClass","key","navList","map","item","i","classNames","-active","active","Header_HeaderNavLink","label","MenuLargeNavigation","MenuLargeNavigation_createSuper","getUserInitials","firstName","lastaName","_firstName$split","split","_firstName$split2","slicedToArray","charAt","toUpperCase","MessageModal","root","document","body","appendChild","removeChild","_this$props","modificator","modalCloseButton","visible","title","message","ReactDOM","createPortal","display","e","currentTarget","target","hide","-alert--green","-alert--red","defaultProps","layoutClass","mainClass","contentClass","parseResponse","handleError","showDefaultError","code","msg","modalRoot","getElementById","render","MessageModal_MessageModal","unmountComponentAtNode","replace","notFound","apiRequest","url","length","undefined","toString","res","getFullImageUrl","getFullGalleryImageUrl","HeaderUserProfile","HeaderUserProfile_createSuper","fullName","user","lastName","initials","myprofile","picture","src","alt","Preloader","createBrowserHistory","getDigitsOnly","str","digits","match","join","substring","getFileExtension","filename","pop","toLowerCase","getRandomColor","colorArray","Math","floor","random","getCleanText","html","div","innerHTML","textContent","innerText","selectedTextInPost","node","textClass","sel","selText","getSelection","selection","createRange","rangeCount","range","getRangeAt","clonedSelection","cloneContents","startNode","startContainer","parentNode","isChild","child1","child2","parent","isSibling","targetTextMatch","RegExp","exec","child","current","setUrlParameters","elements","callback","newQuery","queryString","parse","indexOf","history","push","getNoun","number","one","two","five","abs","FileUrl","fileId","width","height","URL","params","keys","forEach","searchParams","append","FileDownloadUrl","ContentPreloader","AttachedContent","vimeoLink","vimeoVideoId","isPreview","vimeoPreviewUrl","classnames","frameBorder","allowFullScreen","webkitallowfullscreen","mozallowfullscreen","Fragment","ext","includes","isPicture","isVideo","preload","controls","formatDate","date","dateFormat","outputDate","moment","calendar","lastDay","sameDay","lastWeek","sameElse","nextDay","nextWeek","format","slice","locale","AuthorBlock","createDate","toPost","userLink","profile","id","pictureContent","--deleted-user","isDeleted","getPracticeCasesByFilter","categories","tags","sort","take","skip","PracticeCard","handleReflow","clamped","text","getVimeoUrl","vimeoId","getVimeoPreview","result","console","log","componentWillMount","practice","linkToDetail","practiceCase","alias","AttachedContent_AttachedContent","inContest","lib_default","description","maxLine","ellipsis","trimRight","basedOn","onReflow","AuthorBlock_AuthorBlock","author","createdDate","totalLikes","totalComments","PracticeNews","fetchData","practiceCount","finally","_this$state","Preloader_Preloader","PracticeCard_PracticeCard","ForumNewsItem","topicTitleClamped","_this$props$item","forumCategoryTitle","forumCategoryAlias","forumTopicTitle","forumTopicAlias","userId","forumCategories","forumTopic","GetCategoriesList","ForumSearch","query","searchType","ForumNews","getForumLastTopics","lastTopics","idx","ForumNewsItem_ForumNewsItem","forum","getTrainingMaterials","ContentModal","type","extension","TrainingListItem","getType","_ref","vimeoVideoLink","onClickHandler","materialId","showContentModal","setTrainingMaterialIsDownload","_this2","material","pdfUrl","MaterialPdfUrl","showDownloadButton","Material","targetType","ContentModal_ContentModal","EducationNews","materialsCount","materials","TrainingListItem_TrainingListItem","education","getNewsFeed","NewsSliderItem","announce","dangerouslySetInnerHTML","__html","news","NewsSlider","slidesCount","sliderSettings","autoplay","autoplaySpeed","adaptiveHeight","react_slick_lib_default","assign","NewsSliderItem_NewsSliderItem","SocialBlock","instagramImages","image","link","Modal","AnimatedTitle","class","viewBox","xmlns","fill","x","y","textAnchor","fontSize","mask","welcomeMessages","WelcomeSlide","WelcomeModal","handleCloseBtn","unmount","checkboxChecked","swipe","touchMove","infinite","fade","arrows","disableNextArrow","currentSlide","nextSlide","slider","slickNext","Modal_Modal","ref","disabled","next","checked","onChange","htmlFor","Main","unmountWelcomeModal","setDownShowCookie","cookies","set","dontShowWelcomeModalCookieName","showWelcomeBlock","PracticeNews_PracticeNews","ForumNews_ForumNews","EducationNews_EducationNews","NewsSlider_NewsSlider","SocialBlock_SocialBlock","WelcomeModal_WelcomeModal","withCookies","BreadCrumbs","SimpleSearch","placeholder","searchQuery","handleSearch","handleSearchEnterPress","handleSearchQueryChange","renderSearchButton","onKeyDown","false","UserSmallAvatar","color","pictureUrl","avatarBackgroundSettings","backgroundColor","backgroundPosition","backgroundSize","backgroundRepeat","avatarImage","backgroundImage","avatarStyles","objectSpread","TopicListItemUserList","usersToRender","colors","randomColors","getRandomColors","users","topicCreator","TopicListItemUserListContent","UserSmallAvatar_UserSmallAvatar","TopicListItem","_this$props$topic","topic","isOpen","hasUnreadComments","lastCommentUserIds","themes-list__row--unread","themes-list__icon--locked","dateTime","TopicListItemUserList_TopicListItemUserList","ForumCategoryItem","topicsToRender","_this$props$category","category","totalTopics","topics","forumNewTopic","handleCreateTopic","TopicListItem_TopicListItem","Search","otherProps","objectWithoutProperties","SimpleSearch_SimpleSearch","ForumSearchItem","forumCategoriesAlias","forumCategoriesTitle","ForumSearchBlock","searchResult","ForumSearchItem_ForumSearchItem","LoadMoreButton","handler","Pagination","pageCount","handlePageClick","selectPage","dist_default","breakLabel","breakClassName","marginPagesDisplayed","pageRangeDisplayed","onPageChange","containerClassName","subContainerClassName","activeClassName","previousClassName","nextClassName","pageClassName","pageLinkClassName","forcePage","TotalCounter","total","counterLabel","pullRight","marginLeft","ListFooter","handleLoadMore","pageSize","currentPage","ListFooter_LoadMoreButton","ListFooter_Pagination","ListFooter_TotalCounter","getPage","parsedQuery","Number","page","getQuery","getTags","getSort","getCategory","alert","Forum","getForums","setResult","more","urlQuery","showSearchResult","requestedSearchQuery","toConsumableArray","searchTotal","isLoadingMore","trim","keyCode","preventDefault","newPage","selected","handleGetMoreTopics","prevProps","prevState","snapshot","_this$state2","Bread_rumbs_BreadCrumbs","main","Search_Search","ForumSearchBlock_ForumSearchBlock","ListFooter_ListFooter","ForumCategoryItem_ForumCategoryItem","emojiList","unicode","shortname","code_decimal","emoji_order","emojiMap","emojiListObject","EmojiBlot","getPrototypeOf","buildSpan","valueObj","dataset","setAttribute","emojiSpan","classList","add","emojiClass","emojiPrefix","String","fromCodePoint","Quill","import","blotName","tagName","ToolbarEmoji","quill","toolbar","getModule","addHandler","checkPalatteExist","emojiBtns","getElementsByClassName","emojiBtn","buttonIcon","elementExists","remove","ele_emoji_area","querySelector","atSignBounds","getBounds","index","container","paletteMaxPos","left","top","offsetWidth","tabToolbar","panel","tabElementHolder","closeDiv","addEventListener","fn_close","getElementsByTagName","content","emojiType","tabElement","tabValue","filter","emojiFilter","tab","toggle","firstChild","fn_emojiElementsToPanel","fn_updateEmojiContainer","fn_emojiPanelInit","fn_showEmojiPalatte","fn_checkDialogOpen","on","delta","oldDelta","source","fn_updateRange","ele_emoji_plate","Fuse","shouldSort","matchAllTokens","threshold","distance","maxPatternLength","minMatchCharLength","b","focus","emoji","span","t","createTextNode","output","customButton","tag","attrs","elem","_len","Array","_key","makeElement","insertEmbed","DEFAULTS","register","formats/emoji","modules/emoji-toolbar","FileUploader","uploadFiles","accept","dropzoneRef","open","uploadImages","uploadVideos","createRef","MAXSIZE","MAXFILES","files","showModalMessage","modalMessage","modalTitle","prop","newFiles","file","size","hash","objectHash","sha1","lastModified","preview","createObjectURL","obj","pos","arr","mapObj","showAlert","attachments","setAttachments","some","fileToDismiss","_this3","updatedFiles","revokeObjectURL","_this4","fileList","bytes","parseInt","round","pow","bytesToSize","dismissFile","es","maxSize","onDropAccepted","onDropRejected","CustomToolbar","tabIndex","icons","bold","italic","underline","clean","PlainTextClipboard","Delta","insert","defaultPrevented","isEnabled","retain","clipboardData","types","getData","originalEvent","cleanedText","convert","stopPropagation","delete","updateContents","sources","USER","setSelection","SILENT","TextEditor","_super2","formats","modules","handlers","attachFile","fileUploaderRef","addPicture","addVideo","clipboard","matchVisual","emoji-toolbar","handleChange","assertThisInitialized","editorHtml","allowAttachments","TextEditor_CustomToolbar","react_quill_lib_default","el","reactQuillRef","theme","FileUploader_FileUploader","CustomDropdown","componentWillReceiveProps","nextProps","selectItem","listOpened","handleKeyboardPick","toggleList","onClickOutside","GlobalPreloader","maxWidth","textAlign","padding","ForumTopicCreate","getCategories","setDefaultCategory","categoryFromUrl","find","selectedCategory","handleSelectedCategoryChange","handleTitleChange","handleTextChange","createTopic","formData","model","handlePostAction","titleMinLength","titleMaxLength","messageMinLength","messageMaxLength","FormData","_step","_iterator","_createForOfIteratorHelper","s","done","f","Inputs_CustomDropdown","TextEditor_TextEditor_TextEditor","GlobalPreloader_GlobalPreloader","CustomDropdownForum","mobile","styleModificator","CategoryItem","themes-list__section-title","CategoryIsOpenIcon","defaltProps","ForumHeaderMobile","Inputs_CustomDropdownForum","ForumHeaderDesktop","renderDropdown","ForumTopicList","getTopicsByCategory","categoryAlias","GetTopicsByCategory","topicList","getSelectedCategory","setQueryUrl","ForumHeaderDesktop_ForumHeaderDesktop","ForumHeaderMobile_ForumHeaderMobile","ForumTopicPostActions","handleReplyClick","handleCiteClick","constants","errorMessage","email","phone","newPassword","newPasswordAgain","newPasswordsNotEquals","imageSize","miniAvatarSizes","avatarSizes","attachedImageSizes","ForumAttachedFile","vimeoVideoPreview","thumbnail_medium","vimeoVideoName","handleClick","attach","fileUrl","fileUrlForPreview","downloadUrl","fileName","post-content__file-preview--simple-icon","ForumAttachList","ForumAttachedFile_ForumAttachedFile","ForumTopicFirstPost","fullname","setBlockquote","handleMobileShowTextEditor","selectedText","topicText","ModalMessage","ForumAttachList_ForumAttachList","ForumTopicPostActions_ForumTopicPostActions","ForumTopicComment","comment","commentText","_parseText","regex","blockquote","reply","parseText","ForumTopicCommentCreate","createComment","mobileShowTextEditor","reloadComments","scrollToTopComment","handleBlockquoteClear","trimmedText","ForumTopicCommentCreate_createForOfIteratorHelper","_this$props2","mobile-hide700","ForumTopic","getTopicData","comments","getComments","topicId","GetComments","forumCategory","scrollToCreateComment","defaultPageSize","handleGetMorePosts","blockquoteAuthor","lastCommentOfPageRef","scrollIntoView","behavior","commentCreateRef","getBlockquote","_this$state3","ForumTopicFirstPost_ForumTopicFirstPost","ForumTopicComment_ForumTopicComment","ForumTopicCommentCreate_ForumTopicCommentCreate","renderToString","require","CropPhoto","destroyCropper","cropper","destroy","sendPhoto","getCroppedCanvas","toBlob","blob","close","fileSource","cropperContainer","initializeCropper","element","ratio","moveble","rotatable","scalable","zoomable","toggleDragModeOnDblclick","minCropBoxWidth","minCropBoxHeight","minContainerWidth","minContainerHeight","minCanvasWidth","minCanvasHeight","viewMode","background","aspectRatio","Cropper","initCropper","refs","ProfileAvatar","ProfileAvatar_createSuper","handlePictureChange","fr","FileReader","onload","popup","readAsDataURL","closeCropPopup","self","saveTempImage","setNewPicture","_this$props$user","newPicture","canEdit","user-profile__avatar-button--edit","user-profile__avatar-button--add","CropImageModal_CropPhoto","UserStatistic","UserStatistic_createSuper","_this$props$statistic","statistic","visitsCount","commentsCount","downloadedTrainingMaterialsCount","forumTopicCount","leftLikesCount","practiceCasesCount","setLikesCount","InputWithPlaceholder","InputWithPlaceholder_createSuper","defaultValue","validationFunc","PhoneInputWithPlaceholder","PhoneInputWithPlaceholder_createSuper","react_text_mask_hoc_esm","showMask","InputAdapter","enums","validFirstName","nameRegex","test","validLastName","validEmail","emailRegex","validPassword","pass","validPhone","phoneNumber","updateUserStatusEnum","none","personalDataUpdated","passwordChanged","passwordDoesntChanged","phoneConflict","emailConflict","personalDataDoesntUpdated","inputs","firstDataBlock","secondDataBlock","passwordBlock","MyProfile","MyProfile_createSuper","onUserDataChange","inputName","inputValue","defineProperty","onUserPasswordChange","password","handleSubmitBtnClick","JSON","stringify","Enums","oldPassword","newPass","newPassAgain","isFirstNameValid","isLastNameValid","isEmailValid","isPhoneValid","isNewPasswordsEqualityValid","isNewPasswordValid","isNewPasswordAgainValid","ProfileAvatar_ProfileAvatar","InputWithPlaceholder_InputWithPlaceholder","UserStatistic_UserStatistic","reload","PersonalInfoItem","PersonalInfoItem_createSuper","Profile","Profile_createSuper","profileId","PersonalInfoItem_PersonalInfoItem","NewsItem","NewsItem_createSuper","NewsList","NewsList_createSuper","NewsList_NewsListContent","NewsListContent","NewsItem_NewsItem","GalleryCategoryItem","GalleryCategoryItem_createSuper","gallery","GalleryCategoryList","GalleryCategoryList_createSuper","GalleryCategoryList_GalleryListContent","GalleryListContent","GalleryCategoryItem_GalleryCategoryItem","coverImageId","NewsDetails","NewsDetails_createSuper","documentFileId","documentFileName","Document","documentTitle","jQuery","jquery","$","GalleryCategoryDetails","GalleryCategoryDetails_createSuper","ready","fancybox","clickContent","galleryImages","GalleryCategoryDetails_ImagesContent","images","ImagesContent","imageId","data-fancybox","data-caption","TrainingList","searchQueryData","Training","matireals","TrainingList_TrainingList","practiceConstants","allCategory","sortTypes","CategoriesDesktop","setCategory","onChangeCategory","slidesToShow","slidesToScroll","variableWidth","cursor","CustomDropdownPractice","CategoriesMobile","selectCategory","Inputs_CustomDropdownPractice","inContestTag","TagsDesktop","openTag","selectedTags","onChangeTags","closeTag","isActive","currentValue","getTagHeight","styles","getComputedStyle","margin","parseFloat","marginTop","marginBottom","offsetHeight","ceil","toggleTags","collapsed","addActiveClass","tagsLines","maxTagsItemHeight","tagsItem","showExpandButton","tagsWrapper","scrollHeight","maxHeight","CustomDropdownPracticeTags","openItem","selectedCategories","closeItem","dropdownItem","dropdownList","documentElement","clientHeight","getBoundingClientRect","isLoadingSelectedTags","TagsMobile","selectTags","Inputs_CustomDropdownPracticeTags","CategoriesDetal","handleSelectedSearchChange","onChangeSort","handleOnClick","selectedSort","-collapse","hidden","SortMobile","selectSortType","sortType","CategoriesAndTagsPanel","fetchCategotiesData","fetchTagsData","changeCategory","changeTags","changeSort","selectedCategoryAlias","selectedSortAlias","CategoriesDesktop_CategoriesDesktop","TagsDesktop_TagsDesktop","CategoriesDetal_CategoriesDetal","CategoriesMobile_CategoriesMobile","TagsMobile_TagsMobile","SortMobile_SortMobile","Practice","fetchPracticeData","defaultSort","renderCards","selectedTagsStr","CategoriesAndTagsPanel_CategoriesAndTagsPanel","PracticeDetailCaseAside","like","likeIsLoading","practiceCaseId","args","likePractice","showLikeError","likeResponse","isLiked","showMyLikeInfo","likeErrorMessage","LIKES_TOTAL","contestCategory","contestTags","contest","practice-like-button--liked","PracticeDetailCase","PracticeDetailCaseAside_PracticeDetailCaseAside","PracticeDetailForumComment","PracticeDetailForumBlock","PracticeDetailForumComment_PracticeDetailForumComment","PracticeDetailRelatedCases","getRelatedPractices","getRelatedPracticeCase","relatedPractices","-col3","PracticeDetail","someValue","getPracticeCaseByAlias","PracticeDetailCase_PracticeDetailCase","PracticeDetailForumBlock_PracticeDetailForumBlock","PracticeDetailRelatedCases_PracticeDetailRelatedCases","routes","section","ForumTopics","Header","getMappedNavList","currentRoute","route","toggleMenu","HeaderNavigation_HeaderNavigation","HeaderUserProfile_HeaderUserProfile","xlinkHref","MenuLargeNavigation_MenuLargeNavigation","Sprite","Footer","showSocialLinks","showTopBorder","AuthConsumer","Consumer","Layout_createSuper","isMenuActive","auth_AuthConsumer","menu-active","Header_Header","Switch","Route","Footer_Footer","react_dom__WEBPACK_IMPORTED_MODULE_1__","react_dom__WEBPACK_IMPORTED_MODULE_1___default","_App__WEBPACK_IMPORTED_MODULE_2__","react_cookie__WEBPACK_IMPORTED_MODULE_3__","object_fit_images__WEBPACK_IMPORTED_MODULE_5__","objectFitImages","createContext"],"mappings":"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","file":"static/js/main.6fbb2f1b.chunk.js","sourcesContent":["import React, { Component } from 'react';\r\nimport { hot } from 'react-hot-loader';\r\nimport { BrowserRouter, Switch, Route } from 'react-router-dom';\r\nimport { Layout } from './containers/Layout';\r\nimport paths from './paths';\r\nimport AuthProvider from './auth/AuthProvider';\r\nimport 'cropperjs/dist/cropper.min.css';\r\nimport Error403 from './containers/403/Error403';\r\n\r\nconst authUrl = `${process.env.REACT_APP_BACKEND_HOST}/${process.env.REACT_APP_VERIFY_AUTH_URL}`;\r\n\r\nclass App extends Component {\r\n displayName = App.name;\r\n\r\n render() {\r\n return (\r\n
Авторизуйтесь с правильной учетной записью или свяжитесь с администратором
\r\n]*>(.*)|
]*>(.*)<\\/blockquote>/gi;\r\n const exptyDivs = /]*>(.*)<\\/div>/gi;\r\n const match = regex.exec(text);\r\n const blockquote = match && match[1] ? match[1] : '';\r\n const reply = text.replace(regex, '').replace(exptyDivs, '');\r\n\r\n return { blockquote, reply };\r\n}\r\n\r\nexport function setUrlParameters(elements, callback = null) {\r\n\r\n const newQuery = queryString.parse(window.location.search);\r\n for (var key in elements) {\r\n newQuery[key] = elements[key];\r\n }\r\n\r\n let search = '';\r\n for (var key in newQuery) {\r\n if (!newQuery[key]) {\r\n continue;\r\n }\r\n\r\n if (search.indexOf('?') < 0) {\r\n search += '?' + key + '=' + newQuery[key];\r\n } else {\r\n search += '&' + key + '=' + newQuery[key];\r\n }\r\n }\r\n \r\n if (window.location.search !== search) {\r\n history.push({\r\n pathname: window.location.pathname,\r\n search: search\r\n });\r\n }\r\n\r\n if (callback) {\r\n callback();\r\n }\r\n}\r\n\r\n// getNoun(4, 'год', 'года', 'лет')\r\nexport function getNoun(number, one, two, five) {\r\n let n = Math.abs(number);\r\n n %= 100;\r\n if (n >= 5 && n <= 20) {\r\n return five;\r\n }\r\n n %= 10;\r\n if (n === 1) {\r\n return one;\r\n }\r\n if (n >= 2 && n <= 4) {\r\n return two;\r\n }\r\n return five;\r\n}\r\n","import { apiRequest } from '../core';\r\n\r\n\r\nexport function FileUrl(fileId, width, height) {\r\n const url = new URL(`${process.env.REACT_APP_FILE_SERVICE_URL}/api/files/${fileId}`);\r\n\r\n const params = {};\r\n if (width) {\r\n params.width = width;\r\n }\r\n if (height) {\r\n params.height = height;\r\n }\r\n\r\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\r\n return url;\r\n}\r\n\r\nexport function MaterialUrl(fileId) {\r\n //const url = new URL(`${process.env.REACT_APP_FILE_SERVICE_URL}/api/trainingmaterials/${fileId}`);\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/trainingmaterials/${fileId}`);\r\n return url;\r\n}\r\n\r\nexport function MaterialPdfUrl(fileId) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/trainingmaterials/pdf/${fileId}`);\r\n return url;\r\n}\r\n\r\nexport function GetFile(fileId) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Files/${fileId}`);\r\n return apiRequest(url);\r\n}\r\n\r\n\r\nexport function FileDownloadUrl(fileId) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/files/download/${fileId}`);\r\n return url;\r\n}\r\n\r\nexport function FilePdfUrl(fileId) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/files/pdf/${fileId}`);\r\n return url;\r\n}","import React from 'react';\r\nimport './Preloader.css';\r\n\r\nexport default function ContentPreloader() {\r\n return (\r\n\r\n\r\n );\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport axios from 'axios';\r\nimport { Link } from 'react-router-dom';\r\nimport classnames from 'classnames';\r\nimport { isPicture, isVideo } from '../../utils/helpers';\r\nimport { FileUrl } from '../../utils/api/services/files';\r\nimport ContentPreloader from '../Preloader/ContentPreloader';\r\n\r\nexport default class AttachedContent extends Component {\r\n static propTypes = {\r\n filename: PropTypes.string,\r\n fileId: PropTypes.string,\r\n alt: PropTypes.string,\r\n className: PropTypes.string,\r\n isPreview: PropTypes.bool,\r\n to: PropTypes.string,\r\n vimeoLink: PropTypes.string,\r\n vimeoVideoId: PropTypes.string,\r\n vimeoPreviewUrl: PropTypes.string\r\n };\r\n\r\n static defaultProps = {\r\n alt: '',\r\n className: '',\r\n isPreview: false,\r\n to: ''\r\n };\r\n\r\n render() {\r\n const {\r\n filename,\r\n fileId,\r\n vimeoLink,\r\n vimeoVideoId,\r\n alt,\r\n className,\r\n isPreview,\r\n to,\r\n vimeoPreviewUrl\r\n } = this.props;\r\n if (vimeoLink) {\r\n return (\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n );\r\n }\r\n if (vimeoVideoId && isPreview && vimeoPreviewUrl) {\r\n return (\r\n\r\n \r\n \r\n \r\n );\r\n }\r\n if (isPicture(filename)) {\r\n return\r\n \r\n \r\n \r\n
;\r\n }\r\n if (isVideo(filename)) {\r\n if (isPreview) {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n return (\r\n \r\n );\r\n }\r\n return '';\r\n }\r\n}\r\n","/* eslint-disable react/jsx-filename-extension */\r\nimport React from 'react';\r\nimport moment from 'moment';\r\nimport 'moment/locale/ru';\r\n\r\nmoment.locale('ru');\r\n\r\nexport default function formatDate(date, dateFormat) {\r\n const normalCalendar = {\r\n lastDay: '[Вчера в] HH:mm',\r\n sameDay: '[Сегодня в] HH:mm',\r\n nextDay: '[Завтра в] HH:mm',\r\n lastWeek: '[В] dddd [в] HH:mm',\r\n nextWeek: 'dddd [at] HH:mm',\r\n sameElse: 'D MMM YYYY HH:mm',\r\n };\r\n const shortCalendar = {\r\n lastDay: '[Вчера в] HH:mm',\r\n sameDay: '[Сегодня в] HH:mm',\r\n lastWeek: 'D MMMM',\r\n sameElse: 'D MMMM',\r\n };\r\n\r\n let outputDate = '';\r\n\r\n switch (dateFormat) {\r\n case 'short':\r\n outputDate = moment(date).calendar(null, shortCalendar);\r\n\r\n break;\r\n\r\n case 'normal':\r\n outputDate = moment(date).calendar(null, normalCalendar);\r\n break;\r\n\r\n case 'full':\r\n outputDate = moment(date).format('D MMMM YYYY HH:mm');\r\n break;\r\n\r\n case 'forNews':\r\n outputDate = moment(date).format('MMMM D, YYYY');\r\n break;\r\n\r\n default:\r\n outputDate = moment(date).format(dateFormat);\r\n break;\r\n }\r\n\r\n outputDate = outputDate.toString();\r\n outputDate = outputDate.charAt(0).toUpperCase() + outputDate.slice(1);\r\n\r\n return outputDate;\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport classNames from 'classnames';\r\nimport formatDate from '../../utils/formatDate';\r\nimport getUserInitials from '../../utils/getUserInitials';\r\nimport { getFullImageUrl } from '../../utils/api/services/image';\r\nimport paths from '../../paths';\r\n\r\n// таблица дат https://momentjs.com/docs/#/displaying/format/\r\n\r\nexport default class AuthorBlock extends Component {\r\n static defaultProps = {\r\n dateFormat: 'normal',\r\n className: '',\r\n createDate: null,\r\n };\r\n\r\n static propTypes = {\r\n createDate: PropTypes.string,\r\n dateFormat: PropTypes.oneOf(['short', 'normal', 'full']),\r\n className: PropTypes.string,\r\n toPost: PropTypes.string,\r\n user: PropTypes.object.isRequired,\r\n };\r\n\r\n render() {\r\n const {\r\n createDate, dateFormat, className, toPost, user,\r\n } = this.props;\r\n\r\n if (!user) {\r\n return ;\r\n }\r\n \r\n const firstName = user.firstName || '';\r\n const lastName = user.lastName || '';\r\n const picture = user.picture || '';\r\n\r\n const fullName = `${firstName} ${lastName}`;\r\n const initials = getUserInitials(fullName) || fullName;\r\n const userLink = `${paths.advocates.profile}/${user.id}`;\r\n\r\n let pictureContent =\r\n picture\r\n ? ()\r\n : (
{initials});\r\n\r\n return (\r\n\r\n {user.isDeleted\r\n ? (\r\n );\r\n }\r\n}\r\n","import { apiRequest } from '../core';\r\n\r\n\r\nexport function getPracticeCasesByFilter(categories, tags, sort, take, skip) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Contest/GetPracticeCasesByFilter`);\r\n\r\n const params = {};\r\n if (categories) {\r\n params.categories = categories;\r\n }\r\n if (tags) {\r\n params.tags = tags;\r\n }\r\n if (take) {\r\n params.take = take;\r\n }\r\n if (skip) {\r\n params.skip = skip;\r\n }\r\n if (sort) {\r\n params.sort = sort;\r\n }\r\n\r\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\r\n return apiRequest(url);\r\n}\r\n\r\nexport function getPracticeCaseByAlias(alias) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Contest/GetPracticeCaseByAlias`);\r\n\r\n const params = {};\r\n if (alias) {\r\n params.alias = alias;\r\n }\r\n\r\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\r\n return apiRequest(url);\r\n}\r\n\r\nexport function getRelatedPracticeCase(practiceCaseId) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Contest/GetRelatedPracticeCase`);\r\n\r\n const params = {};\r\n if (practiceCaseId) {\r\n params.practiceCaseId = practiceCaseId;\r\n }\r\n\r\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\r\n return apiRequest(url);\r\n}\r\n\r\nexport function getContestCategoties() {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Contest/GetContestCategoties`);\r\n return apiRequest(url);\r\n}\r\n\r\nexport function getContestTags() {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Contest/GetContestTags`);\r\n return apiRequest(url);\r\n}\r\n\r\nexport function getVimeoPreview(vimeoId) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Contest/GetVimeoPreview/`);\r\n \r\n if (vimeoId) {\r\n url.searchParams.append(\"vimeoId\", vimeoId);\r\n }\r\n return apiRequest(url);\r\n}","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport LinesEllipsis from 'react-lines-ellipsis';\r\nimport AttachedContent from '../../components/AttachedContent/AttachedContent';\r\nimport AuthorBlock from '../../components/User/AuthorBlock';\r\nimport paths from '../../paths';\r\nimport ContentPreloader from '../../components/Preloader/ContentPreloader';\r\nimport { getVimeoPreview } from '../../utils/api/services/contest';\r\n\r\nexport default class PracticeCard extends Component {\r\n static propTypes = {\r\n practice: PropTypes.object.isRequired,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n clamped: false,\r\n url: props.practice.vimeoPreviewUrl,\r\n };\r\n }\r\n\r\n handleReflow = (state) => {\r\n const { clamped, text } = state;\r\n // установить state только 1 раз, если произошло обрезание\r\n if (clamped !== true || this.state.clamped === true) return;\r\n this.setState({\r\n clamped: true,\r\n });\r\n };\r\n\r\n getVimeoUrl = (vimeoVideoId) => {\r\n getVimeoPreview(vimeoVideoId)\r\n .then((result) => {\r\n this.setState({ url: result });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n });\r\n };\r\n\r\n componentWillMount = () =>\r\n this.getVimeoUrl(this.props.practice.vimeoVideoId);\r\n\r\n render() {\r\n const { url } = this.state;\r\n const { practice } = this.props;\r\n const linkToDetail = `${paths.advocates.practiceCase}/${practice.alias}`;\r\n return (\r\n{pictureContent})\r\n : ({pictureContent})\r\n }\r\n\r\n\r\n\r\n\r\n {user.isDeleted\r\n ? fullName \r\n : {fullName}\r\n }\r\n\r\n {createDate ? (\r\n toPost ? (\r\n\r\n {formatDate(createDate, dateFormat)}\r\n\r\n ) : (\r\n{formatDate(createDate, dateFormat)}\r\n )\r\n ) : (\r\n ''\r\n )}\r\n\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport PracticeCard from '../Contest/PracticeCard';\r\nimport paths from '../../paths';\r\nimport { getPracticeCasesByFilter } from '../../utils/api/services/contest';\r\n\r\nexport default class PracticeNews extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.practiceCount = 2;\r\n\r\n this.state = {\r\n isLoading: false,\r\n practice: [],\r\n };\r\n }\r\n\r\n static propTypes = {\r\n };\r\n\r\n componentWillMount() {\r\n this.fetchData();\r\n }\r\n\r\n fetchData = () => {\r\n this.setState({ isLoading: true });\r\n getPracticeCasesByFilter(null, null, 'date', this.practiceCount, 0)\r\n .then((result) => {\r\n this.setState({\r\n practice: result.data,\r\n });\r\n })\r\n .catch ((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n }\r\n\r\n render() {\r\n const { practice, isLoading } = this.state; \r\n\r\n if (!practice.length) {\r\n return (\r\n\r\n\r\n \r\n {practice.inContest && Участвует в голосовании}\r\n\r\n \r\n {practice.title}\r\n \r\n\r\n \r\n\r\n\r\n\r\n {this.state.clamped && (\r\n \r\n {'Читать далее'}\r\n \r\n )}\r\n \r\n\r\n\r\n \r\n {practice.totalLikes != 0 && (\r\n \r\n\r\n\r\n {` ${practice.totalLikes}`}\r\n \r\n )}\r\n \r\n {practice.totalComments != 0 && (\r\n \r\n
\r\n {` ${practice.totalComments}`}\r\n \r\n )}\r\n
);\r\n }\r\n\r\n return (\r\n \r\n {isLoading ? ( \r\n );\r\n }\r\n}\r\n\r\n\r\n ","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport LinesEllipsis from 'react-lines-ellipsis';\r\nimport AuthorBlock from '../../components/User/AuthorBlock';\r\nimport paths from '../../paths';\r\n\r\nexport default class ForumNewsItem extends Component {\r\n static propTypes = {\r\n item: PropTypes.shape({\r\n forumCategoryTitle: PropTypes.string.isRequired,\r\n forumCategoryAlias: PropTypes.string.isRequired,\r\n forumTopicTitle: PropTypes.string.isRequired,\r\n forumTopicAlias: PropTypes.string.isRequired,\r\n userId: PropTypes.string.isRequired,\r\n createDate: PropTypes.string.isRequired,\r\n user: PropTypes.object\r\n }).isRequired\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n topicTitleClamped: false\r\n };\r\n }\r\n\r\n handleReflow = (state) => {\r\n const { clamped, text } = state;\r\n // установить state только 1 раз, если произошло обрезание\r\n if (clamped !== true || this.state.topicTitleClamped === true) return;\r\n this.setState({\r\n topicTitleClamped: true\r\n });\r\n };\r\n\r\n render() {\r\n const {\r\n forumCategoryTitle,\r\n forumCategoryAlias,\r\n forumTopicTitle,\r\n forumTopicAlias,\r\n userId,\r\n createDate,\r\n user\r\n } = this.props.item;\r\n const { topicTitleClamped } = this.state;\r\n\r\n return (\r\n) :\r\n (\r\n \r\n \r\n )}\r\nНовое в разделе Практика
\r\n\r\n\r\n\r\n {practice.map(item => (\r\n\r\n\r\n\r\n ))}\r\n \r\n \r\n Все материалы раздела Практика\r\n \r\n\r\n\r\n \r\n \r\n {forumCategoryTitle}\r\n \r\n\r\n\r\n );\r\n }\r\n}\r\n","import { apiRequest } from '../core';\r\n\r\nexport function GetCategoriesList() {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Forum/GetCategoriesListByPopup`);\r\n return apiRequest(url);\r\n}\r\n\r\nexport function GetTopicsByCategory(categoryAlias, take, skip) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Forum/topics/${categoryAlias}`);\r\n\r\n const params = {};\r\n if (take) {\r\n params.take = take;\r\n }\r\n if (skip) {\r\n params.skip = skip;\r\n }\r\n\r\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\r\n return apiRequest(url);\r\n}\r\n\r\nexport function GetForumBlockData() {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Forum/GetForumBlockData`);\r\n return apiRequest(url);\r\n}\r\n\r\nexport function GetMainPage() {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Forum/GetMainPage`);\r\n return apiRequest(url);\r\n}\r\n\r\nexport function GetTopic(alias) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Forum/topic/${alias}`);\r\n return apiRequest(url);\r\n}\r\n\r\nexport function GetComments(topicId, take, skip) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Forum/comments/${topicId}`);\r\n\r\n const params = {};\r\n if (take) {\r\n params.take = take;\r\n }\r\n if (skip) {\r\n params.skip = skip;\r\n }\r\n\r\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\r\n return apiRequest(url);\r\n}\r\n\r\nexport function CreateTopic(model) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Forum/CreateTopic`);\r\n return apiRequest(url, {\r\n method: 'POST',\r\n credentials: 'same-origin',\r\n body: model,\r\n });\r\n}\r\n\r\nexport function CreateComment(comment) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Forum/CreateComment`);\r\n return apiRequest(url, {\r\n method: 'POST',\r\n credentials: 'same-origin',\r\n body: comment,\r\n });\r\n}\r\n\r\nexport function ForumSearch(query, searchType, alias, take, skip) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/Forum/search/${query}/${searchType}`);\r\n\r\n const params = {};\r\n if (alias) {\r\n params.alias = alias;\r\n }\r\n if (take) {\r\n params.take = take;\r\n }\r\n if (skip) {\r\n params.skip = skip;\r\n }\r\n\r\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\r\n return apiRequest(url);\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport ForumNewsItem from './ForumNewsItem';\r\nimport { GetForumBlockData } from '../../utils/api/services/forum';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport paths from '../../paths';\r\n\r\nexport default class ForumNews extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n lastTopics: [],\r\n isLoading: false,\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n this.getForumLastTopics();\r\n };\r\n\r\n getForumLastTopics = () => {\r\n this.setState({ isLoading: true });\r\n GetForumBlockData()\r\n .then((result) => {\r\n this.setState({\r\n lastTopics: result,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n };\r\n\r\n render() {\r\n const { isLoading, lastTopics } = this.state;\r\n\r\n if (!lastTopics.length) {\r\n return (\r\n \r\n\r\n\r\n\r\n \r\n \r\n\r\n\r\n );\r\n }\r\n\r\n return (\r\n \r\n\r\n );\r\n }\r\n}\r\n","import { apiRequest } from '../core';\r\n\r\n\r\nexport function getTrainingMaterials(skip, take, query) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/TrainingMaterials/GetTrainingMaterials`);\r\n\r\n const params = {};\r\n if (take) {\r\n params.take = take;\r\n }\r\n if (skip) {\r\n params.skip = skip;\r\n }\r\n if (query) {\r\n params.query = query;\r\n }\r\n\r\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\r\n return apiRequest(url);\r\n}\r\n\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport ContentPreloader from '../Preloader/ContentPreloader';\r\n\r\nexport default class ContentModal extends React.Component {\r\n static defaultProps = {\r\n visible: false,\r\n };\r\n\r\n static propTypes = {\r\n visible: PropTypes.bool.isRequired,\r\n src: PropTypes.string.isRequired,\r\n name: PropTypes.string.isRequired,\r\n type: PropTypes.string.isRequired,\r\n extension: PropTypes.string,\r\n hide: PropTypes.func.isRequired,\r\n };\r\n\r\n componentWillMount() {\r\n this.root = document.createElement('div');\r\n document.body.appendChild(this.root);\r\n }\r\n\r\n componentWillUnmount() {\r\n document.body.removeChild(this.root);\r\n }\r\n\r\n render() {\r\n const {\r\n visible, src, name, type, extension,\r\n } = this.props;\r\n\r\n return ReactDOM.createPortal(\r\n\r\n\r\n\r\nНовое в разделе Форум\r\n\r\n\r\n {isLoading ? (\r\n\r\n\r\n ) : (\r\n lastTopics.map((item, idx) => )\r\n )}\r\n \r\n \r\n Все материалы раздела Форум\r\n \r\n\r\n{\r\n if (e.currentTarget == e.target) this.props.hide();\r\n }}\r\n >\r\n,\r\n\r\n this.root,\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { MaterialUrl, MaterialPdfUrl } from '../../utils/api/services/files';\r\nimport formatDate from '../../utils/formatDate';\r\nimport formatSize from '../../utils/formatFileSize';\r\nimport ContentModal from '../../components/Modals/ContentModal';\r\nimport { setTrainingMaterialIsDownload } from '../../utils/api/services/statistic';\r\n\r\nexport default class TrainingListItem extends Component {\r\n\r\n static propTypes = {\r\n material: PropTypes.object.isRequired,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n showContentModal: false,\r\n };\r\n }\r\n\r\n getType = ({ extension, vimeoVideoLink }) => {\r\n if (vimeoVideoLink) {\r\n return 'vimeoVideo';\r\n }\r\n switch (extension) {\r\n case 'pdf':\r\n return 'pdf';\r\n break;\r\n\r\n case 'ogg':\r\n case 'mp4':\r\n return 'video';\r\n break;\r\n\r\n default:\r\n return 'file';\r\n break;\r\n }\r\n };\r\n\r\n onClickHandler = (materialId, type) => {\r\n if (type === 'video' || type === 'vimeoVideo') {\r\n this.setState({\r\n showContentModal: true,\r\n });\r\n } else {\r\n this.setState({\r\n showContentModal: false,\r\n });\r\n }\r\n setTrainingMaterialIsDownload(materialId);\r\n };\r\n\r\n render() {\r\n const { material } = this.props;\r\n const { showContentModal } = this.state;\r\n const type = this.getType({\r\n extension: material.extension,\r\n vimeoVideoLink: material.vimeoVideoLink,\r\n });\r\n const url = type === 'vimeoVideo' ? material.vimeoVideoLink : MaterialUrl(material.id);\r\n const pdfUrl = MaterialPdfUrl(material.id);\r\n const showDownloadButton = type !== 'vimeoVideo';\r\n return (\r\n\r\n\r\n\r\n\r\n\r\n{name}
\r\n\r\n\r\n {type === 'image' ?\r\n: ''}\r\n {type === 'vimeoVideo' ? (\r\n
\r\n\r\n ) : (\r\n ''\r\n )}\r\n {type === 'video' ? (\r\n\r\n \r\n \r\n\r\n ) : (\r\n ''\r\n )}\r\n\r\n \r\n \r\n {'Закрыть всплывающее окно'}\r\n\r\n\r\n \r\n );\r\n }\r\n}\r\n\r\nfunction Material(props) {\r\n const {\r\n item, url, type, onClickHandler, targetType, showDownloadButton,\r\n } = props;\r\n return (\r\n\r\n {type === 'vimeoVideo' && (\r\n\r\n {showContentModal && (\r\n\r\n )}\r\n\r\n {type === 'video' && (\r\n \r\n )}\r\n\r\n {type === 'pdf' && (\r\n \r\n )}\r\n\r\n {type === 'file' && (\r\n \r\n )}\r\n {\r\n this.setState({ showContentModal: false });\r\n }}\r\n />\r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n","import { apiRequest } from '../core';\r\n\r\nexport function getStatisticByUserId(userId) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/statistic/${userId}`);\r\n return apiRequest(url);\r\n}\r\n\r\nexport function likePractice(practiceCaseId, ...args) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/statistic/like/${practiceCaseId}`);\r\n return apiRequest(url, {\r\n method: 'POST',\r\n credentials: 'same-origin',\r\n body: null,\r\n }, args ? args[0] : true);\r\n}\r\n\r\nexport function setTrainingMaterialIsDownload(materialId) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/statistic/downloadmaterial/${materialId}`);\r\n return apiRequest(url, {\r\n method: 'POST',\r\n credentials: 'same-origin',\r\n body: null\r\n });\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { getTrainingMaterials } from '../../utils/api/services/materials';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport TrainingListItem from '../Training/TrainingListItem';\r\nimport paths from '../../paths';\r\n\r\nexport default class EducationNews extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.materialsCount = 5; \r\n\r\n this.state = {\r\n isLoading: false,\r\n materials: [],\r\n };\r\n }\r\n\r\n static propTypes = {\r\n };\r\n\r\n componentWillMount() {\r\n this.fetchData();\r\n }\r\n\r\n fetchData = () => {\r\n this.setState({ isLoading: true });\r\n getTrainingMaterials(0, this.materialsCount, null)\r\n .then((result) => {\r\n this.setState({\r\n materials: result.data,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n }\r\n\r\n render() {\r\n const { materials, isLoading } = this.state;\r\n\r\n if (!materials.length) {\r\n return (\r\n {showDownloadButton && (\r\n onClickHandler(item.id, type)}>\r\n \r\n \r\n )}\r\n\r\n);\r\n }\r\n\r\n return ( \r\n \r\n {isLoading ? ( \r\n );\r\n }\r\n}\r\n\r\n\r\n","import { apiRequest } from \"../core\";\r\n\r\nexport function getNewsFeed(skip, take) {\r\n let url = new URL(process.env.REACT_APP_BACKEND_HOST + \"/api/news\");\r\n\r\n let params = {};\r\n if (skip) {\r\n params.skip = skip;\r\n }\r\n if (take) {\r\n params.take = take;\r\n }\r\n\r\n Object.keys(params).forEach(key => url.searchParams.append(key, params[key]));\r\n return apiRequest(url);\r\n}\r\n\r\nexport function getNewsByAlias(alias) {\r\n let url = new URL(process.env.REACT_APP_BACKEND_HOST + `/api/news/${alias}`);\r\n return apiRequest(url);\r\n}","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport paths from '../../paths';\r\nimport formatDate from '../../utils/formatDate';\r\n\r\nexport default class NewsSliderItem extends Component {\r\n static defaultProps = {\r\n to: paths.advocates.news,\r\n };\r\n\r\n static propTypes = {\r\n title: PropTypes.string.isRequired,\r\n announce: PropTypes.string.isRequired,\r\n createdDate: PropTypes.string.isRequired,\r\n to: PropTypes.string,\r\n };\r\n\r\n render() {\r\n const {\r\n title, announce, createdDate, to,\r\n } = this.props;\r\n return (\r\n) :\r\n (\r\n \r\n\r\n )}\r\n\r\n\r\n\r\nНовое в разделе Обучение\r\n\r\n\r\n {materials.map(item => (\r\n\r\n\r\n ))}\r\n \r\n \r\n Все материалы раздела Обучение\r\n \r\n\r\n\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport Slider from 'react-slick';\r\nimport { Link } from 'react-router-dom';\r\nimport { getNewsFeed } from '../../utils/api/services/news';\r\nimport NewsSliderItem from './NewsSliderItem';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport paths from '../../paths';\r\n\r\nexport default class NewsSlider extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.slidesCount = 4;\r\n this.sliderSettings = {\r\n autoplay: true,\r\n autoplaySpeed: 3000,\r\n adaptiveHeight: true,\r\n };\r\n\r\n this.state = {\r\n isLoading: false,\r\n news: [],\r\n };\r\n }\r\n\r\n componentWillMount() {\r\n this.fetchData();\r\n }\r\n\r\n fetchData = () => {\r\n this.setState({ isLoading: true });\r\n getNewsFeed(0, this.slidesCount)\r\n .then((result) => {\r\n this.setState({\r\n news: result.data,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n };\r\n\r\n render() {\r\n const { news, isLoading } = this.state;\r\n\r\n if (!news.length) {\r\n return (\r\n \r\n {formatDate(createdDate, 'forNews')}\r\n\r\n \r\n {title}\r\n \r\n \r\n);\r\n }\r\n\r\n return (\r\n \r\n {\r\n isLoading ? (\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { getInstagramPhoto } from '../../utils/api/services/image';\r\n\r\nexport default class SocialBlock extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n instagramImages: []\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n this.fetchData();\r\n };\r\n\r\n fetchData = () => {\r\n getInstagramPhoto()\r\n .then((result) => {\r\n this.setState({\r\n instagramImages: result\r\n });\r\n })\r\n .catch((e) => {\r\n console.log('не удалось получить информацию c api instagram', e);\r\n });\r\n };\r\n\r\n render() {\r\n const { instagramImages } = this.state;\r\n return (\r\n\r\n ) : (\r\n \r\n {news.map(item => (\r\n )\r\n\r\n }\r\n\r\n\r\n ))}\r\n \r\n \r\n Читать все новости\r\n \r\n\r\n\r\n \r\n );\r\n }\r\n}\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\n\r\n/**\r\n * Модальные окна встраиваются в конец с помощью порталов реакта\r\n *\r\n * Модальное окно у нас состоит из 3 оберток\r\n * на все классы есть свои модификаторы\r\n * modal-layout -- основной класс ( расположение, напр. -mobile-halfsize )\r\n * modal-main -- размер окна (-m и т.д.)\r\n * modal-content -- контент (доп классы для фона и др. оформления, напр. bg-dragonfly4)\r\n */\r\n\r\nexport default class Modal extends React.Component {\r\n static defaultProps = {\r\n layoutClass: '',\r\n mainClass: '',\r\n contentClass: '',\r\n modalCloseButton: true,\r\n };\r\n\r\n static propTypes = {\r\n layoutClass: PropTypes.string,\r\n mainClass: PropTypes.string,\r\n contentClass: PropTypes.string,\r\n modalCloseButton: PropTypes.bool,\r\n children: PropTypes.any.isRequired,\r\n };\r\n\r\n componentWillMount() {\r\n this.root = document.createElement('div');\r\n document.body.appendChild(this.root);\r\n }\r\n\r\n componentWillUnmount() {\r\n document.body.removeChild(this.root);\r\n }\r\n\r\n render() {\r\n const {\r\n layoutClass, mainClass, contentClass, modalCloseButton,\r\n } = this.props;\r\n\r\n return ReactDOM.createPortal(\r\n\r\n \r\n {' CooperVision_ru'}\r\n \r\n \r\n {'CooperVision Russia'}\r\n \r\n\r\n\r\n\r\n\r\n\r\n {instagramImages\r\n && instagramImages.map((image, i) => (\r\n \r\n\r\n\r\n \r\n ))}\r\n
\r\n,\r\n\r\n this.root,\r\n );\r\n }\r\n}\r\n","import React from 'react';\r\n\r\nexport default function AnimatedTitle() {\r\n return (\r\n\r\n\r\n\r\n {this.props.children}\r\n\r\n\r\n {modalCloseButton ?Закрыть всплывающее окно: ''}\r\n\r\n\r\n );\r\n}\r\n","import React, { Component } from 'react';\r\nimport Slider from 'react-slick';\r\nimport PropTypes from 'prop-types';\r\nimport Modal from './Modal';\r\nimport AnimatedTitle from './AnimatedTitle';\r\n\r\nconst welcomeMessages = [\r\n {\r\n id: 1,\r\n text: `В разделе Обучение Вы сможете просмотреть опубликованные обучающие материалы по разным категориям и темам. \r\n Некоторые материалы доступны для скачивания.`,\r\n },\r\n {\r\n id: 2,\r\n text: `В разделе Форум доступно обсуждение актуальных вопросов. Вы сможете найти ответ на важный для Вас вопрос \r\n и поучаствовать в обсуждениях.`,\r\n },\r\n {\r\n id: 3,\r\n text: `В разделе Практика доступны для просмотра видеоролики, иллюстрирующие случаи из практики\r\n Адвокатов Бренда. Каждый случай участвует в конкурсе, Вы можете оставить свой\r\n голос за понравившийся кейс. В каждом конкурсе у Вас доступно ограниченное количество голосов. В любой\r\n момент до завершения конкурса Вы можете отозвать свой голос.`,\r\n },\r\n {\r\n id: 4,\r\n text: `В разделе Новости Вам доступна последняя информация об актуальных событиях компании. Новости отображаются\r\n в хронологическом порядке – сверху самые свежие. Следите за нашими новостями и будьте в курсе последних\r\n событий!`,\r\n },\r\n];\r\n\r\nfunction WelcomeSlide(props) {\r\n const { item } = props;\r\n return (\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n\r\n\r\n \r\n\r\n );\r\n}\r\n\r\nexport default class WelcomeModal extends Component {\r\n constructor(props) {\r\n super(props);\r\n \r\n this.sliderSettings = {\r\n autoplay: false,\r\n swipe: false,\r\n touchMove: false,\r\n infinite: false,\r\n fade: true,\r\n arrows: false,\r\n adaptiveHeight: true,\r\n };\r\n \r\n this.state = {\r\n disableNextArrow: false,\r\n checkboxChecked: false,\r\n currentSlide: 1,\r\n };\r\n }\r\n\r\n handleCloseBtn = () => {\r\n this.props.unmount(this.state.checkboxChecked);\r\n }\r\n\r\n next() {\r\n const nextSlide = this.state.currentSlide + 1;\r\n if (nextSlide <= welcomeMessages.length) {\r\n this.setState({ currentSlide: nextSlide });\r\n this.slider.slickNext();\r\n }\r\n if (nextSlide >= welcomeMessages.length) {\r\n this.setState({ disableNextArrow: true });\r\n }\r\n }\r\n\r\n render() {\r\n const { disableNextArrow, checkboxChecked } = this.state;\r\n return (\r\n\r\n \r\n );\r\n }\r\n\r\n static propTypes = {\r\n unmount: PropTypes.func.isRequired,\r\n };\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport PracticeNews from './PracticeNews';\r\nimport ForumNews from './ForumNews';\r\nimport EducationNews from './EducationNews';\r\nimport NewsSlider from './NewsSlider';\r\nimport SocialBlock from '../../components/SocialBlock/SocialBlock';\r\nimport WelcomeModal from '../../components/Modals/WelcomeModal';\r\nimport { withCookies, Cookies } from 'react-cookie';\r\n\r\nclass Main extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.dontShowWelcomeModalCookieName = 'dontShowWelcomeModal';\r\n const { cookies } = props;\r\n this.state = {\r\n showWelcomeBlock: !cookies.get(this.dontShowWelcomeModalCookieName),\r\n };\r\n }\r\n\r\n static propTypes = {\r\n //cookies: instanceOf(Cookies).isRequired,\r\n };\r\n\r\n unmountWelcomeModal = (setDownShowCookie) => {\r\n if (setDownShowCookie) {\r\n this.props.cookies.set(this.dontShowWelcomeModalCookieName, true);\r\n }\r\n this.setState({ showWelcomeBlock: false });\r\n }\r\n\r\n render() {\r\n return (\r\n\r\n\r\n\r\n\r\n Добро пожаловать на сайт\r\n\r\n\r\n компании CooperVision\r\n (this.slider = slider)}\r\n className=\"welcome-modal__slider\"\r\n >\r\n {welcomeMessages.map(item => (\r\n \r\n\r\n\r\n ))}\r\n \r\n \r\n \r\n\r\n\r\n\r\n this.setState({ checkboxChecked: !checkboxChecked })\r\n }\r\n />\r\n \r\n\r\n\r\n\r\n );\r\n }\r\n}\r\n\r\nexport default withCookies(Main);","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\n\r\nexport default class BreadCrumbs extends Component {\r\n static propTypes = {\r\n data: PropTypes.array.isRequired\r\n }\r\n\r\n render() {\r\n return (\r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n {this.state.showWelcomeBlock ? (\r\n { this.unmountWelcomeModal(setDownShowCookie) }}/>\r\n ) : (\r\n ''\r\n )}\r\n \r\n {this.props.data.map((item, idx) => (\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\n\r\nexport default class SimpleSearch extends Component {\r\n static defaultProps = {\r\n className: '',\r\n false: true,\r\n };\r\n\r\n static propTypes = {\r\n placeholder: PropTypes.string.isRequired,\r\n searchQuery: PropTypes.string.isRequired,\r\n handleSearchQueryChange: PropTypes.func.isRequired,\r\n handleSearch: PropTypes.func.isRequired,\r\n handleSearchEnterPress: PropTypes.func.isRequired,\r\n className: PropTypes.string,\r\n renderSearchButton: PropTypes.bool,\r\n };\r\n\r\n render() {\r\n const {\r\n placeholder,\r\n searchQuery,\r\n handleSearch,\r\n handleSearchEnterPress,\r\n handleSearchQueryChange,\r\n className,\r\n renderSearchButton,\r\n children,\r\n } = this.props;\r\n return (\r\n //\r\n \r\n {item.text}\r\n \r\n {idx != this.props.data.length - 1 && \r\n ))}\r\n• }\r\n\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport getUserInitials from '../../utils/getUserInitials';\r\nimport { getFullImageUrl } from '../../utils/api/services/image';\r\n\r\nexport default class UserSmallAvatar extends Component {\r\n static defaultProps = {\r\n color: ''\r\n };\r\n\r\n static propTypes = {\r\n user: PropTypes.object.isRequired,\r\n color: PropTypes.string\r\n };\r\n\r\n render() {\r\n const { color } = this.props;\r\n const pictureUrl = this.props.user.picture;\r\n const fullName = `${this.props.user.firstName} ${this.props.user.lastName}`;\r\n const initials = getUserInitials(fullName) || fullName;\r\n const avatarBackgroundSettings = {\r\n backgroundColor: color,\r\n backgroundPosition: 'center',\r\n backgroundSize: 'cover',\r\n backgroundRepeat: 'no-repeat'\r\n };\r\n const avatarImage = pictureUrl && { backgroundImage: ` url(${getFullImageUrl(pictureUrl)})` };\r\n const avatarStyles = { ...avatarBackgroundSettings, ...avatarImage };\r\n return (\r\n\r\n \r\n //\r\n handleSearchQueryChange(e)}\r\n onKeyDown={e => handleSearchEnterPress(e)}\r\n />\r\n \r\n\r\n {renderSearchButton && (\r\n \r\n )}\r\n {children}\r\n\r\n {pictureUrl ? (\r\n \r\n ) : (\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport UserSmallAvatar from '../../components/User/UserSmallAvatar';\r\nimport { getRandomColors } from '../../utils/helpers';\r\n\r\nexport default class TopicListItemUserList extends Component {\r\n static propTypes = {\r\n users: PropTypes.array.isRequired,\r\n topicCreator: PropTypes.string.isRequired\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.usersToRender = 4;\r\n this.colors = getRandomColors(this.usersToRender);\r\n\r\n this.state = {\r\n colors: []\r\n };\r\n }\r\n\r\n render() {\r\n const { users, topicCreator } = this.props;\r\n return (\r\n\r\n {initials}\r\n\r\n )}\r\n{fullName}\r\n\r\n\r\n );\r\n }\r\n}\r\n\r\nfunction TopicListItemUserListContent(props) {\r\n const usersToRender = props.usersToRender;\r\n const users = props.users;\r\n const colors = props.colors;\r\n\r\n {\r\n /* если юзеров больше чем нужно, то взять для показа (нужное_колличество - 1)\r\n и добавить в конце серый аватар \"и другие...\" */\r\n }\r\n\r\n return users.length < usersToRender\r\n ? users.map((user, idx) =>\r\n {users.length ? (\r\n\r\n\r\n ) : (\r\n \r\n )}\r\n )\r\n : users.slice(0, usersToRender).map((user, idx) => (idx < usersToRender - 1 ? (\r\n \r\n ) : (\r\n \r\n\r\n )));\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport classNames from 'classnames';\r\nimport formatDate from '../../utils/formatDate';\r\nimport TopicListItemUserList from './TopicListItemUserList';\r\nimport paths from '../../paths';\r\n\r\nexport default class TopicListItem extends Component {\r\n static propTypes = {\r\n topic: PropTypes.shape({\r\n id: PropTypes.number.isRequired,\r\n alias: PropTypes.string.isRequired,\r\n title: PropTypes.string.isRequired,\r\n isOpen: PropTypes.bool.isRequired,\r\n totalComments: PropTypes.number.isRequired,\r\n createDate: PropTypes.string.isRequired,\r\n userId: PropTypes.string.isRequired,\r\n lastCommentUserIds: PropTypes.array.isRequired,\r\n hasUnreadComments: PropTypes.bool.isRequired,\r\n users: PropTypes.array\r\n }).isRequired,\r\n };\r\n\r\n render() {\r\n const {\r\n id, isOpen, alias, title, totalComments, createDate, userId, hasUnreadComments, lastCommentUserIds, users\r\n } = this.props.topic;\r\n return (\r\n•••\r\n И другие...\r\n\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { Link } from 'react-router-dom';\r\nimport TopicListItem from './TopicListItem';\r\nimport paths from '../../paths';\r\nimport { getNoun } from '../../utils/helpers';\r\n\r\nexport default class ForumCategoryItem extends Component {\r\n static propTypes = {\r\n category: PropTypes.shape({\r\n id: PropTypes.number.isRequired,\r\n alias: PropTypes.string.isRequired,\r\n title: PropTypes.string.isRequired,\r\n isOpen: PropTypes.bool.isRequired,\r\n totalComments: PropTypes.number.isRequired,\r\n totalTopics: PropTypes.number.isRequired,\r\n topics: PropTypes.array.isRequired,\r\n }).isRequired,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.topicsToRender = 3;\r\n\r\n this.state = {};\r\n }\r\n\r\n render() {\r\n const {\r\n id, alias, title, isOpen, totalComments, totalTopics, topics,\r\n } = this.props.category;\r\n return (\r\n\r\n \r\n\r\n\r\n \r\n {title}\r\n \r\n\r\n\r\n \r\n\r\n\r\n\r\n {users &&\r\n{totalComments}\r\n\r\n }\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport SimpleSearch from './SimpleSearch';\r\n\r\nexport default class Search extends Component {\r\n render() {\r\n const { className, ...otherProps } = this.props;\r\n return (\r\n\r\n\r\n {topics ? topics.map(topic =>\r\n \r\n\r\n\r\n {title}\r\n\r\n\r\n {totalComments}\r\n {` ${getNoun(totalComments, 'сообщение', 'сообщения', 'сообщений')}`}\r\n\r\n\r\n {totalTopics}\r\n {` ${getNoun(totalTopics, 'тема', 'темы', 'тем')}`}\r\n\r\n\r\n {isOpen && Создать тему}\r\n\r\n) : ''}\r\n \r\n {totalTopics > this.topicsToRender && (\r\n \r\n {`Посмотреть еще ${totalTopics - this.topicsToRender} ${getNoun(totalTopics - this.topicsToRender, 'тема', 'темы', 'тем')}`}\r\n \r\n )}\r\n {isOpen && Создать тему}\r\n\r\n\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport AuthorBlock from '../../components/User/AuthorBlock';\r\nimport paths from '../../paths';\r\n\r\nexport default class ForumSearchItem extends Component {\r\n static propTypes = {\r\n item: PropTypes.shape({\r\n userId: PropTypes.string.isRequired,\r\n forumCategoriesTitle: PropTypes.string.isRequired,\r\n forumCategoriesAlias: PropTypes.string.isRequired,\r\n forumTopicTitle: PropTypes.string.isRequired,\r\n forumTopicAlias: PropTypes.string.isRequired,\r\n text: PropTypes.string.isRequired,\r\n createDate: PropTypes.string.isRequired,\r\n user: PropTypes.object,\r\n }).isRequired,\r\n };\r\n\r\n render() {\r\n const {\r\n userId,\r\n forumCategoriesAlias,\r\n forumCategoriesTitle,\r\n forumTopicAlias,\r\n forumTopicTitle,\r\n text,\r\n createDate,\r\n user,\r\n } = this.props.item;\r\n return (\r\n\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport ForumSearchItem from './ForumSearchItem';\r\n\r\nexport default class ForumSearchBlock extends Component {\r\n static propTypes = {\r\n searchResult: PropTypes.array,\r\n searchQuery: PropTypes.string.isRequired,\r\n };\r\n\r\n render() {\r\n const { searchQuery, searchResult } = this.props;\r\n return (\r\n\r\n \r\n\r\n\r\n {forumCategoriesTitle}\r\n {' / '}\r\n {forumTopicTitle}\r\n\r\n\r\n\r\n\r\n\r\n );\r\n }\r\n}\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\n\r\nfunction LoadMoreButton({ handler, className }) {\r\n return (\r\n{`Результат поиска «${searchQuery}»:`}\r\n {searchResult && searchResult.length ? (\r\n searchResult.map((item, idx) =>)\r\n ) : (\r\n \r\n\r\n )}\r\nПо вашему запросу ничего не найдено\r\nПопробуйте изменить ключевое слово\r\n\r\n \r\n Загрузить еще\r\n \r\n\r\n );\r\n}\r\n\r\nLoadMoreButton.propTypes = {\r\n handler: PropTypes.func.isRequired,\r\n className: PropTypes.string,\r\n};\r\n\r\nexport default LoadMoreButton;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport ReactPaginate from 'react-paginate';\r\n\r\nfunction Pagination({ pageCount, handlePageClick, selectPage }) {\r\n return (\r\n\r\n\r\n );\r\n}\r\n\r\nPagination.propTypes = {\r\n pageCount: PropTypes.number.isRequired,\r\n handlePageClick: PropTypes.func.isRequired,\r\n selectPage: PropTypes.number.isRequired,\r\n};\r\n\r\nexport default Pagination;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nfunction TotalCounter(props) {\r\n const { total, counterLabel } = props;\r\n const pullRight = total <= 0 ? { marginLeft: 'auto' } : null;\r\n return (\r\n...}\r\n breakClassName=\"pagination-btn -other\"\r\n pageCount={pageCount}\r\n marginPagesDisplayed={1}\r\n pageRangeDisplayed={3}\r\n onPageChange={handlePageClick}\r\n containerClassName=\"pagination\"\r\n subContainerClassName=\"pages pagination\"\r\n activeClassName=\"-active\"\r\n previousClassName=\"pagination-btn -prev\"\r\n nextClassName=\"pagination-btn -next\"\r\n pageClassName=\"pagination-btn\"\r\n pageLinkClassName=\"pagination-btn-link\"\r\n forcePage={selectPage - 1}\r\n />\r\n \r\n\r\n );\r\n}\r\n\r\nTotalCounter.propTypes = {\r\n total: PropTypes.number.isRequired,\r\n counterLabel: PropTypes.string,\r\n};\r\n\r\nexport default TotalCounter;\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport LoadMoreButton from './LoadMoreButton';\r\nimport Pagination from './Pagination';\r\nimport TotalCounter from './TotalCounter';\r\n\r\nexport default class ListFooter extends Component {\r\n static defaultProps = {\r\n handleLoadMore: () => {\r\n alert('TODO');\r\n },\r\n handlePageClick: () => {\r\n alert('TODO');\r\n },\r\n };\r\n\r\n static propTypes = {\r\n handleLoadMore: PropTypes.func.isRequired,\r\n handlePageClick: PropTypes.func.isRequired,\r\n total: PropTypes.number.isRequired,\r\n pageSize: PropTypes.number.isRequired,\r\n currentPage: PropTypes.number.isRequired,\r\n counterLabel: PropTypes.string,\r\n };\r\n\r\n render() {\r\n const {\r\n counterLabel,\r\n handleLoadMore,\r\n handlePageClick,\r\n total,\r\n pageSize,\r\n currentPage,\r\n } = this.props;\r\n const pageCount = total / pageSize;\r\n return (\r\n\r\n {counterLabel ? `Всего ${counterLabel}: ` : 'Всего: '}\r\n {total}\r\n\r\n\r\n {total && total > (currentPage * pageSize) ? (\r\n\r\n );\r\n }\r\n}\r\n","import queryString from 'query-string';\r\n\r\nexport function getPage() {\r\n const parsedQuery = queryString.parse(window.location.search);\r\n return Number(parsedQuery.page || 1);\r\n}\r\n\r\nexport function getQuery() {\r\n const parsedQuery = queryString.parse(window.location.search);\r\n return (parsedQuery.query || '');\r\n}\r\n\r\nexport function getTags() {\r\n const parsedQuery = queryString.parse(window.location.search);\r\n return (parsedQuery.tags || '');\r\n}\r\n\r\nexport function getSort() {\r\n const parsedQuery = queryString.parse(window.location.search);\r\n return parsedQuery.sort;\r\n}\r\n\r\nexport function getCategory() {\r\n const parsedQuery = queryString.parse(window.location.search);\r\n return parsedQuery.category;\r\n}","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport SimpleSearch from '../../components/Search/SimpleSearch';\r\nimport { GetMainPage, ForumSearch } from '../../utils/api/services/forum';\r\nimport paths from '../../paths';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport ForumCategoryItem from './ForumCategoryItem';\r\nimport Search from '../../components/Search/Search';\r\nimport ForumSearchBlock from './ForumSearchBlock';\r\nimport ListFooter from '../../components/ListFooter/ListFooter';\r\nimport { getQuery } from '../../utils/urlHelper';\r\nimport { setUrlParameters } from '../../utils/helpers';\r\n\r\nexport default class Forum extends Component {\r\n static propTypes = {};\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.pageSize = 15;\r\n\r\n this.state = {\r\n searchQuery: '',\r\n requestedSearchQuery: '',\r\n showSearchResult: false,\r\n searchResult: [],\r\n searchTotal: 0,\r\n categories: [],\r\n page: 1,\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n this.getForums();\r\n };\r\n\r\n componentDidUpdate(prevProps, prevState, snapshot) {\r\n this.props.location.search = getQuery();\r\n if (prevProps.location.search !== this.props.location.search) {\r\n this.setState(\r\n {\r\n showSearchResult: false,\r\n searchQuery: '',\r\n },\r\n this.getForums(),\r\n );\r\n }\r\n }\r\n\r\n getForums = () => {\r\n this.setState({ isLoading: true });\r\n GetMainPage()\r\n .then((result) => {\r\n this.setState({\r\n categories: result,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n };\r\n\r\n handleSearchQueryChange = (e) => {\r\n const searchQuery = e.currentTarget.value;\r\n this.setState({ searchQuery });\r\n };\r\n\r\n setResult = (more = false) => {\r\n const urlQuery = {};\r\n urlQuery.page = null;\r\n urlQuery.query = this.state.searchQuery;\r\n setUrlParameters(urlQuery, () => {\r\n if (this.state.showSearchResult) {\r\n this.search(\r\n this.state.searchQuery,\r\n 'all',\r\n '',\r\n this.pageSize,\r\n (this.state.page - 1) * this.pageSize,\r\n more,\r\n );\r\n }\r\n });\r\n };\r\n\r\n search = (query, type, alias, take, skip, more) => {\r\n ForumSearch(query, type, alias, take, skip)\r\n .then((result) => {\r\n if (more) {\r\n this.setState({\r\n showSearchResult: true,\r\n requestedSearchQuery: query,\r\n searchResult: [...this.state.searchResult, ...result.data],\r\n searchTotal: result.total,\r\n });\r\n } else {\r\n this.setState({\r\n showSearchResult: true,\r\n searchResult: result.data,\r\n requestedSearchQuery: query,\r\n searchTotal: result.total,\r\n });\r\n }\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n isLoadingMore: false,\r\n });\r\n });\r\n };\r\n\r\n handleSearch = () => {\r\n const { searchQuery, showSearchResult } = this.state;\r\n if (searchQuery && searchQuery.trim && searchQuery.trim().length) {\r\n this.setState(\r\n {\r\n showSearchResult: true,\r\n page: 1,\r\n },\r\n this.setResult,\r\n );\r\n } else if (showSearchResult) {\r\n this.setState(\r\n {\r\n showSearchResult: false,\r\n searchQuery: [],\r\n searchTotal: null,\r\n page: 1,\r\n },\r\n this.setResult,\r\n );\r\n }\r\n };\r\n\r\n handleSearchEnterPress = (e) => {\r\n if (e.keyCode === 13) {\r\n e.preventDefault();\r\n this.handleSearch();\r\n }\r\n };\r\n\r\n handlePageClick = (e) => {\r\n const newPage = e.selected + 1;\r\n this.setState({ page: newPage }, this.setResult);\r\n };\r\n\r\n handleGetMoreTopics = () => {\r\n this.setState(\r\n {\r\n isLoadingMore: true,\r\n page: this.state.page + 1,\r\n },\r\n () => this.setResult(true),\r\n );\r\n };\r\n\r\n render() {\r\n const {\r\n searchQuery,\r\n isLoading,\r\n categories,\r\n requestedSearchQuery,\r\n showSearchResult,\r\n searchResult,\r\n searchTotal,\r\n page,\r\n } = this.state;\r\n return (\r\n= pageCount ? 'hidden' : ''}\r\n handler={handleLoadMore}\r\n />\r\n ) : (\r\n ''\r\n )}\r\n {total && total > pageSize ? (\r\n \r\n ) : (\r\n ''\r\n )}\r\n \r\n \r\n\r\n );\r\n }\r\n}\r\n","let emojiList = [\r\n {\r\n \"name\": \"100\",\r\n \"unicode\": \"1f4af\",\r\n \"shortname\": \":100:\",\r\n \"code_decimal\": \"💯\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2119\"\r\n },\r\n {\r\n \"name\": \"1234\",\r\n \"unicode\": \"1f522\",\r\n \"shortname\": \":1234:\",\r\n \"code_decimal\": \"🔢\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2122\"\r\n },\r\n {\r\n \"name\": \"grinning\",\r\n \"unicode\": \"1f600\",\r\n \"shortname\": \":grinning:\",\r\n \"code_decimal\": \"😀\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1\"\r\n },\r\n {\r\n \"name\": \"grin\",\r\n \"unicode\": \"1f601\",\r\n \"shortname\": \":grin:\",\r\n \"code_decimal\": \"😁\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"2\"\r\n },\r\n {\r\n \"name\": \"joy\",\r\n \"unicode\": \"1f602\",\r\n \"shortname\": \":joy:\",\r\n \"code_decimal\": \"😂\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"3\"\r\n },\r\n // {\r\n // \"name\": \"rolling_on_the_floor_laughing\",\r\n // \"unicode\": \"1f923\",\r\n // \"shortname\": \":rolling_on_the_floor_laughing:\",\r\n // \"code_decimal\": \"🤣\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"4\"\r\n // },\r\n {\r\n \"name\": \"smiley\",\r\n \"unicode\": \"1f603\",\r\n \"shortname\": \":smiley:\",\r\n \"code_decimal\": \"😃\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"5\"\r\n },\r\n {\r\n \"name\": \"smile\",\r\n \"unicode\": \"1f604\",\r\n \"shortname\": \":smile:\",\r\n \"code_decimal\": \"😄\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"6\"\r\n },\r\n {\r\n \"name\": \"sweat_smile\",\r\n \"unicode\": \"1f605\",\r\n \"shortname\": \":sweat_smile:\",\r\n \"code_decimal\": \"😅\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"7\"\r\n },\r\n {\r\n \"name\": \"laughing\",\r\n \"unicode\": \"1f606\",\r\n \"shortname\": \":laughing:\",\r\n \"code_decimal\": \"😆\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"8\"\r\n },\r\n {\r\n \"name\": \"wink\",\r\n \"unicode\": \"1f609\",\r\n \"shortname\": \":wink:\",\r\n \"code_decimal\": \"😉\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"9\"\r\n },\r\n {\r\n \"name\": \"blush\",\r\n \"unicode\": \"1f60a\",\r\n \"shortname\": \":blush:\",\r\n \"code_decimal\": \"😊\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"10\"\r\n },\r\n {\r\n \"name\": \"yum\",\r\n \"unicode\": \"1f60b\",\r\n \"shortname\": \":yum:\",\r\n \"code_decimal\": \"😋\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"11\"\r\n },\r\n {\r\n \"name\": \"sunglasses\",\r\n \"unicode\": \"1f60e\",\r\n \"shortname\": \":sunglasses:\",\r\n \"code_decimal\": \"😎\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"12\"\r\n },\r\n {\r\n \"name\": \"heart_eyes\",\r\n \"unicode\": \"1f60d\",\r\n \"shortname\": \":heart_eyes:\",\r\n \"code_decimal\": \"😍\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"13\"\r\n },\r\n {\r\n \"name\": \"kissing_heart\",\r\n \"unicode\": \"1f618\",\r\n \"shortname\": \":kissing_heart:\",\r\n \"code_decimal\": \"😘\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"14\"\r\n },\r\n {\r\n \"name\": \"kissing\",\r\n \"unicode\": \"1f617\",\r\n \"shortname\": \":kissing:\",\r\n \"code_decimal\": \"😗\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"15\"\r\n },\r\n {\r\n \"name\": \"kissing_smiling_eyes\",\r\n \"unicode\": \"1f619\",\r\n \"shortname\": \":kissing_smiling_eyes:\",\r\n \"code_decimal\": \"😙\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"16\"\r\n },\r\n {\r\n \"name\": \"kissing_closed_eyes\",\r\n \"unicode\": \"1f61a\",\r\n \"shortname\": \":kissing_closed_eyes:\",\r\n \"code_decimal\": \"😚\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"17\"\r\n },\r\n {\r\n \"name\": \"slightly_smiling_face\",\r\n \"unicode\": \"1f642\",\r\n \"shortname\": \":slight_smile:\",\r\n \"code_decimal\": \"🙂\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"19\"\r\n },\r\n {\r\n \"name\": \"hugging_face\",\r\n \"unicode\": \"1f917\",\r\n \"shortname\": \":hugging:\",\r\n \"code_decimal\": \"🤗\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"20\"\r\n },\r\n {\r\n \"name\": \"thinking_face\",\r\n \"unicode\": \"1f914\",\r\n \"shortname\": \":thinking:\",\r\n \"code_decimal\": \"🤔\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"21\"\r\n },\r\n {\r\n \"name\": \"neutral_face\",\r\n \"unicode\": \"1f610\",\r\n \"shortname\": \":neutral_face:\",\r\n \"code_decimal\": \"😐\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"22\"\r\n },\r\n {\r\n \"name\": \"expressionless\",\r\n \"unicode\": \"1f611\",\r\n \"shortname\": \":expressionless:\",\r\n \"code_decimal\": \"😑\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"23\"\r\n },\r\n {\r\n \"name\": \"no_mouth\",\r\n \"unicode\": \"1f636\",\r\n \"shortname\": \":no_mouth:\",\r\n \"code_decimal\": \"😶\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"24\"\r\n },\r\n {\r\n \"name\": \"face_with_rolling_eyes\",\r\n \"unicode\": \"1f644\",\r\n \"shortname\": \":rolling_eyes:\",\r\n \"code_decimal\": \"🙄\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"25\"\r\n },\r\n {\r\n \"name\": \"smirk\",\r\n \"unicode\": \"1f60f\",\r\n \"shortname\": \":smirk:\",\r\n \"code_decimal\": \"😏\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"26\"\r\n },\r\n {\r\n \"name\": \"persevere\",\r\n \"unicode\": \"1f623\",\r\n \"shortname\": \":persevere:\",\r\n \"code_decimal\": \"😣\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"27\"\r\n },\r\n {\r\n \"name\": \"disappointed_relieved\",\r\n \"unicode\": \"1f625\",\r\n \"shortname\": \":disappointed_relieved:\",\r\n \"code_decimal\": \"😥\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"28\"\r\n },\r\n {\r\n \"name\": \"open_mouth\",\r\n \"unicode\": \"1f62e\",\r\n \"shortname\": \":open_mouth:\",\r\n \"code_decimal\": \"😮\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"29\"\r\n },\r\n {\r\n \"name\": \"zipper_mouth_face\",\r\n \"unicode\": \"1f910\",\r\n \"shortname\": \":zipper_mouth:\",\r\n \"code_decimal\": \"🤐\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"30\"\r\n },\r\n {\r\n \"name\": \"hushed\",\r\n \"unicode\": \"1f62f\",\r\n \"shortname\": \":hushed:\",\r\n \"code_decimal\": \"😯\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"31\"\r\n },\r\n {\r\n \"name\": \"sleepy\",\r\n \"unicode\": \"1f62a\",\r\n \"shortname\": \":sleepy:\",\r\n \"code_decimal\": \"😪\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"32\"\r\n },\r\n {\r\n \"name\": \"tired_face\",\r\n \"unicode\": \"1f62b\",\r\n \"shortname\": \":tired_face:\",\r\n \"code_decimal\": \"😫\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"33\"\r\n },\r\n {\r\n \"name\": \"sleeping\",\r\n \"unicode\": \"1f634\",\r\n \"shortname\": \":sleeping:\",\r\n \"code_decimal\": \"😴\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"34\"\r\n },\r\n {\r\n \"name\": \"relieved\",\r\n \"unicode\": \"1f60c\",\r\n \"shortname\": \":relieved:\",\r\n \"code_decimal\": \"😌\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"35\"\r\n },\r\n {\r\n \"name\": \"nerd_face\",\r\n \"unicode\": \"1f913\",\r\n \"shortname\": \":nerd:\",\r\n \"code_decimal\": \"🤓\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"36\"\r\n },\r\n {\r\n \"name\": \"stuck_out_tongue\",\r\n \"unicode\": \"1f61b\",\r\n \"shortname\": \":stuck_out_tongue:\",\r\n \"code_decimal\": \"😛\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"37\"\r\n },\r\n {\r\n \"name\": \"stuck_out_tongue_winking_eye\",\r\n \"unicode\": \"1f61c\",\r\n \"shortname\": \":stuck_out_tongue_winking_eye:\",\r\n \"code_decimal\": \"😜\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"38\"\r\n },\r\n {\r\n \"name\": \"stuck_out_tongue_closed_eyes\",\r\n \"unicode\": \"1f61d\",\r\n \"shortname\": \":stuck_out_tongue_closed_eyes:\",\r\n \"code_decimal\": \"😝\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"39\"\r\n },\r\n // {\r\n // \"name\": \"drooling_face\",\r\n // \"unicode\": \"1f924\",\r\n // \"shortname\": \":drooling_face:\",\r\n // \"code_decimal\": \"🤤\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"40\"\r\n // },\r\n {\r\n \"name\": \"unamused\",\r\n \"unicode\": \"1f612\",\r\n \"shortname\": \":unamused:\",\r\n \"code_decimal\": \"😒\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"41\"\r\n },\r\n {\r\n \"name\": \"sweat\",\r\n \"unicode\": \"1f613\",\r\n \"shortname\": \":sweat:\",\r\n \"code_decimal\": \"😓\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"42\"\r\n },\r\n {\r\n \"name\": \"pensive\",\r\n \"unicode\": \"1f614\",\r\n \"shortname\": \":pensive:\",\r\n \"code_decimal\": \"😔\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"43\"\r\n },\r\n {\r\n \"name\": \"confused\",\r\n \"unicode\": \"1f615\",\r\n \"shortname\": \":confused:\",\r\n \"code_decimal\": \"😕\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"44\"\r\n },\r\n {\r\n \"name\": \"upside_down_face\",\r\n \"unicode\": \"1f643\",\r\n \"shortname\": \":upside_down:\",\r\n \"code_decimal\": \"🙃\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"45\"\r\n },\r\n // {\r\n // \"name\": \"money_mouth\",\r\n // \"unicode\": \"1f911\",\r\n // \"shortname\": \":money_mouth:\",\r\n // \"code_decimal\": \"🤑\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"46\"\r\n // },\r\n {\r\n \"name\": \"astonished\",\r\n \"unicode\": \"1f632\",\r\n \"shortname\": \":astonished:\",\r\n \"code_decimal\": \"😲\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"47\"\r\n },\r\n // {\r\n // \"name\": \"slight_frown\",\r\n // \"unicode\": \"1f641\",\r\n // \"shortname\": \":slight_frown:\",\r\n // \"code_decimal\": \"🙁\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"49\"\r\n // },\r\n {\r\n \"name\": \"confounded\",\r\n \"unicode\": \"1f616\",\r\n \"shortname\": \":confounded:\",\r\n \"code_decimal\": \"😖\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"50\"\r\n },\r\n {\r\n \"name\": \"disappointed\",\r\n \"unicode\": \"1f61e\",\r\n \"shortname\": \":disappointed:\",\r\n \"code_decimal\": \"😞\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"51\"\r\n },\r\n {\r\n \"name\": \"worried\",\r\n \"unicode\": \"1f61f\",\r\n \"shortname\": \":worried:\",\r\n \"code_decimal\": \"😟\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"52\"\r\n },\r\n {\r\n \"name\": \"triumph\",\r\n \"unicode\": \"1f624\",\r\n \"shortname\": \":triumph:\",\r\n \"code_decimal\": \"😤\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"53\"\r\n },\r\n {\r\n \"name\": \"cry\",\r\n \"unicode\": \"1f622\",\r\n \"shortname\": \":cry:\",\r\n \"code_decimal\": \"😢\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"54\"\r\n },\r\n {\r\n \"name\": \"sob\",\r\n \"unicode\": \"1f62d\",\r\n \"shortname\": \":sob:\",\r\n \"code_decimal\": \"😭\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"55\"\r\n },\r\n {\r\n \"name\": \"frowning\",\r\n \"unicode\": \"1f626\",\r\n \"shortname\": \":frowning:\",\r\n \"code_decimal\": \"😦\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"56\"\r\n },\r\n {\r\n \"name\": \"anguished\",\r\n \"unicode\": \"1f627\",\r\n \"shortname\": \":anguished:\",\r\n \"code_decimal\": \"😧\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"57\"\r\n },\r\n {\r\n \"name\": \"fearful\",\r\n \"unicode\": \"1f628\",\r\n \"shortname\": \":fearful:\",\r\n \"code_decimal\": \"😨\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"58\"\r\n },\r\n {\r\n \"name\": \"weary\",\r\n \"unicode\": \"1f629\",\r\n \"shortname\": \":weary:\",\r\n \"code_decimal\": \"😩\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"59\"\r\n },\r\n {\r\n \"name\": \"grimacing\",\r\n \"unicode\": \"1f62c\",\r\n \"shortname\": \":grimacing:\",\r\n \"code_decimal\": \"😬\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"60\"\r\n },\r\n {\r\n \"name\": \"cold_sweat\",\r\n \"unicode\": \"1f630\",\r\n \"shortname\": \":cold_sweat:\",\r\n \"code_decimal\": \"😰\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"61\"\r\n },\r\n {\r\n \"name\": \"scream\",\r\n \"unicode\": \"1f631\",\r\n \"shortname\": \":scream:\",\r\n \"code_decimal\": \"😱\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"62\"\r\n },\r\n {\r\n \"name\": \"flushed\",\r\n \"unicode\": \"1f633\",\r\n \"shortname\": \":flushed:\",\r\n \"code_decimal\": \"😳\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"63\"\r\n },\r\n {\r\n \"name\": \"dizzy_face\",\r\n \"unicode\": \"1f635\",\r\n \"shortname\": \":dizzy_face:\",\r\n \"code_decimal\": \"😵\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"64\"\r\n },\r\n {\r\n \"name\": \"rage\",\r\n \"unicode\": \"1f621\",\r\n \"shortname\": \":rage:\",\r\n \"code_decimal\": \"😡\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"65\"\r\n },\r\n {\r\n \"name\": \"angry\",\r\n \"unicode\": \"1f620\",\r\n \"shortname\": \":angry:\",\r\n \"code_decimal\": \"😠\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"66\"\r\n },\r\n {\r\n \"name\": \"innocent\",\r\n \"unicode\": \"1f607\",\r\n \"shortname\": \":innocent:\",\r\n \"code_decimal\": \"😇\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"67\"\r\n },\r\n // {\r\n // \"name\": \"face_with_cowboy_hat\",\r\n // \"unicode\": \"1f920\",\r\n // \"shortname\": \":cowboy:\",\r\n // \"code_decimal\": \"🤠\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"68\"\r\n // },\r\n // {\r\n // \"name\": \"clown_face\",\r\n // \"unicode\": \"1f921\",\r\n // \"shortname\": \":clown:\",\r\n // \"code_decimal\": \"🤡\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"69\"\r\n // },\r\n // {\r\n // \"name\": \"lying_face\",\r\n // \"unicode\": \"1f925\",\r\n // \"shortname\": \":lying_face:\",\r\n // \"code_decimal\": \"🤥\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"70\"\r\n // },\r\n {\r\n \"name\": \"mask\",\r\n \"unicode\": \"1f637\",\r\n \"shortname\": \":mask:\",\r\n \"code_decimal\": \"😷\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"71\"\r\n },\r\n // {\r\n // \"name\": \"thermometer_face\",\r\n // \"unicode\": \"1f912\",\r\n // \"shortname\": \":thermometer_face:\",\r\n // \"code_decimal\": \"🤒\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"72\"\r\n // },\r\n // {\r\n // \"name\": \"head_bandage\",\r\n // \"unicode\": \"1f915\",\r\n // \"shortname\": \":head_bandage:\",\r\n // \"code_decimal\": \"🤕\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"73\"\r\n // },\r\n // {\r\n // \"name\": \"nauseated_face\",\r\n // \"unicode\": \"1f922\",\r\n // \"shortname\": \":nauseated_face:\",\r\n // \"code_decimal\": \"🤢\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"74\"\r\n // },\r\n // {\r\n // \"name\": \"sneezing_face\",\r\n // \"unicode\": \"1f927\",\r\n // \"shortname\": \":sneezing_face:\",\r\n // \"code_decimal\": \"🤧\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"75\"\r\n // },\r\n {\r\n \"name\": \"smiling_imp\",\r\n \"unicode\": \"1f608\",\r\n \"shortname\": \":smiling_imp:\",\r\n \"code_decimal\": \"😈\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"76\"\r\n },\r\n {\r\n \"name\": \"imp\",\r\n \"unicode\": \"1f47f\",\r\n \"shortname\": \":imp:\",\r\n \"code_decimal\": \"👿\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"77\"\r\n },\r\n {\r\n \"name\": \"japanese_ogre\",\r\n \"unicode\": \"1f479\",\r\n \"shortname\": \":japanese_ogre:\",\r\n \"code_decimal\": \"👹\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"78\"\r\n },\r\n {\r\n \"name\": \"japanese_goblin\",\r\n \"unicode\": \"1f47a\",\r\n \"shortname\": \":japanese_goblin:\",\r\n \"code_decimal\": \"👺\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"79\"\r\n },\r\n {\r\n \"name\": \"skull\",\r\n \"unicode\": \"1f480\",\r\n \"shortname\": \":skull:\",\r\n \"code_decimal\": \"💀\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"80\"\r\n },\r\n {\r\n \"name\": \"skull_and_crossbones\",\r\n \"unicode\": \"2620\",\r\n \"shortname\": \":skull_crossbones:\",\r\n \"code_decimal\": \"☠\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"81\"\r\n },\r\n {\r\n \"name\": \"ghost\",\r\n \"unicode\": \"1f47b\",\r\n \"shortname\": \":ghost:\",\r\n \"code_decimal\": \"👻\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"82\"\r\n },\r\n {\r\n \"name\": \"alien\",\r\n \"unicode\": \"1f47d\",\r\n \"shortname\": \":alien:\",\r\n \"code_decimal\": \"👽\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"83\"\r\n },\r\n {\r\n \"name\": \"space_invader\",\r\n \"unicode\": \"1f47e\",\r\n \"shortname\": \":space_invader:\",\r\n \"code_decimal\": \"👾\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"84\"\r\n },\r\n // {\r\n // \"name\": \"robot\",\r\n // \"unicode\": \"1f916\",\r\n // \"shortname\": \":robot:\",\r\n // \"code_decimal\": \"🤖\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"85\"\r\n // },\r\n // {\r\n // \"name\": \"poop\",\r\n // \"unicode\": \"1f4a9\",\r\n // \"shortname\": \":poop:\",\r\n // \"code_decimal\": \"💩\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"86\"\r\n // },\r\n {\r\n \"name\": \"smiley_cat\",\r\n \"unicode\": \"1f63a\",\r\n \"shortname\": \":smiley_cat:\",\r\n \"code_decimal\": \"😺\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"87\"\r\n },\r\n {\r\n \"name\": \"smile_cat\",\r\n \"unicode\": \"1f638\",\r\n \"shortname\": \":smile_cat:\",\r\n \"code_decimal\": \"😸\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"88\"\r\n },\r\n {\r\n \"name\": \"joy_cat\",\r\n \"unicode\": \"1f639\",\r\n \"shortname\": \":joy_cat:\",\r\n \"code_decimal\": \"😹\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"89\"\r\n },\r\n {\r\n \"name\": \"heart_eyes_cat\",\r\n \"unicode\": \"1f63b\",\r\n \"shortname\": \":heart_eyes_cat:\",\r\n \"code_decimal\": \"😻\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"90\"\r\n },\r\n {\r\n \"name\": \"smirk_cat\",\r\n \"unicode\": \"1f63c\",\r\n \"shortname\": \":smirk_cat:\",\r\n \"code_decimal\": \"😼\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"91\"\r\n },\r\n {\r\n \"name\": \"kissing_cat\",\r\n \"unicode\": \"1f63d\",\r\n \"shortname\": \":kissing_cat:\",\r\n \"code_decimal\": \"😽\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"92\"\r\n },\r\n {\r\n \"name\": \"scream_cat\",\r\n \"unicode\": \"1f640\",\r\n \"shortname\": \":scream_cat:\",\r\n \"code_decimal\": \"🙀\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"93\"\r\n },\r\n {\r\n \"name\": \"crying_cat_face\",\r\n \"unicode\": \"1f63f\",\r\n \"shortname\": \":crying_cat_face:\",\r\n \"code_decimal\": \"😿\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"94\"\r\n },\r\n {\r\n \"name\": \"pouting_cat\",\r\n \"unicode\": \"1f63e\",\r\n \"shortname\": \":pouting_cat:\",\r\n \"code_decimal\": \"😾\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"95\"\r\n },\r\n {\r\n \"name\": \"see_no_evil\",\r\n \"unicode\": \"1f648\",\r\n \"shortname\": \":see_no_evil:\",\r\n \"code_decimal\": \"🙈\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"96\"\r\n },\r\n {\r\n \"name\": \"hear_no_evil\",\r\n \"unicode\": \"1f649\",\r\n \"shortname\": \":hear_no_evil:\",\r\n \"code_decimal\": \"🙉\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"97\"\r\n },\r\n {\r\n \"name\": \"speak_no_evil\",\r\n \"unicode\": \"1f64a\",\r\n \"shortname\": \":speak_no_evil:\",\r\n \"code_decimal\": \"🙊\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"98\"\r\n },\r\n {\r\n \"name\": \"boy\",\r\n \"unicode\": \"1f466\",\r\n \"shortname\": \":boy:\",\r\n \"code_decimal\": \"👦\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"99\"\r\n },\r\n {\r\n \"name\": \"girl\",\r\n \"unicode\": \"1f467\",\r\n \"shortname\": \":girl:\",\r\n \"code_decimal\": \"👧\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"105\"\r\n },\r\n {\r\n \"name\": \"man\",\r\n \"unicode\": \"1f468\",\r\n \"shortname\": \":man:\",\r\n \"code_decimal\": \"👨\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"111\"\r\n },\r\n {\r\n \"name\": \"woman\",\r\n \"unicode\": \"1f469\",\r\n \"shortname\": \":woman:\",\r\n \"code_decimal\": \"👩\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"117\"\r\n },\r\n {\r\n \"name\": \"older_man\",\r\n \"unicode\": \"1f474\",\r\n \"shortname\": \":older_man:\",\r\n \"code_decimal\": \"👴\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"123\"\r\n },\r\n {\r\n \"name\": \"older_woman\",\r\n \"unicode\": \"1f475\",\r\n \"shortname\": \":older_woman:\",\r\n \"code_decimal\": \"👵\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"129\"\r\n },\r\n {\r\n \"name\": \"baby\",\r\n \"unicode\": \"1f476\",\r\n \"shortname\": \":baby:\",\r\n \"code_decimal\": \"👶\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"135\"\r\n },\r\n {\r\n \"name\": \"angel\",\r\n \"unicode\": \"1f47c\",\r\n \"shortname\": \":angel:\",\r\n \"code_decimal\": \"👼\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"141\"\r\n },\r\n {\r\n \"name\": \"cop\",\r\n \"unicode\": \"1f46e\",\r\n \"shortname\": \":cop:\",\r\n \"code_decimal\": \"👮\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"339\"\r\n },\r\n // {\r\n // \"name\": \"spy\",\r\n // \"unicode\": \"1f575\",\r\n // \"shortname\": \":spy:\",\r\n // \"code_decimal\": \"🕵\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"357\"\r\n // },\r\n {\r\n \"name\": \"guardsman\",\r\n \"unicode\": \"1f482\",\r\n \"shortname\": \":guardsman:\",\r\n \"code_decimal\": \"💂\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"375\"\r\n },\r\n {\r\n \"name\": \"construction_worker\",\r\n \"unicode\": \"1f477\",\r\n \"shortname\": \":construction_worker:\",\r\n \"code_decimal\": \"👷\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"393\"\r\n },\r\n {\r\n \"name\": \"man_with_turban\",\r\n \"unicode\": \"1f473\",\r\n \"shortname\": \":man_with_turban:\",\r\n \"code_decimal\": \"👳\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"411\"\r\n },\r\n {\r\n \"name\": \"person_with_blond_hair\",\r\n \"unicode\": \"1f471\",\r\n \"shortname\": \":person_with_blond_hair:\",\r\n \"code_decimal\": \"👱\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"429\"\r\n },\r\n {\r\n \"name\": \"santa\",\r\n \"unicode\": \"1f385\",\r\n \"shortname\": \":santa:\",\r\n \"code_decimal\": \"🎅\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"447\"\r\n },\r\n // {\r\n // \"name\": \"mrs_claus\",\r\n // \"unicode\": \"1f936\",\r\n // \"shortname\": \":mrs_claus:\",\r\n // \"code_decimal\": \"🤶\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"453\"\r\n // },\r\n {\r\n \"name\": \"princess\",\r\n \"unicode\": \"1f478\",\r\n \"shortname\": \":princess:\",\r\n \"code_decimal\": \"👸\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"459\"\r\n },\r\n // {\r\n // \"name\": \"prince\",\r\n // \"unicode\": \"1f934\",\r\n // \"shortname\": \":prince:\",\r\n // \"code_decimal\": \"🤴\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"465\"\r\n // },\r\n {\r\n \"name\": \"bride_with_veil\",\r\n \"unicode\": \"1f470\",\r\n \"shortname\": \":bride_with_veil:\",\r\n \"code_decimal\": \"👰\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"471\"\r\n },\r\n // {\r\n // \"name\": \"man_in_tuxedo\",\r\n // \"unicode\": \"1f935\",\r\n // \"shortname\": \":man_in_tuxedo:\",\r\n // \"code_decimal\": \"🤵\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"477\"\r\n // },\r\n // {\r\n // \"name\": \"pregnant_woman\",\r\n // \"unicode\": \"1f930\",\r\n // \"shortname\": \":pregnant_woman:\",\r\n // \"code_decimal\": \"🤰\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"483\"\r\n // },\r\n {\r\n \"name\": \"man_with_gua_pi_mao\",\r\n \"unicode\": \"1f472\",\r\n \"shortname\": \":man_with_gua_pi_mao:\",\r\n \"code_decimal\": \"👲\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"489\"\r\n },\r\n {\r\n \"name\": \"person_frowning\",\r\n \"unicode\": \"1f64d\",\r\n \"shortname\": \":person_frowning:\",\r\n \"code_decimal\": \"🙍\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"495\"\r\n },\r\n {\r\n \"name\": \"person_with_pouting_face\",\r\n \"unicode\": \"1f64e\",\r\n \"shortname\": \":person_with_pouting_face:\",\r\n \"code_decimal\": \"🙎\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"513\"\r\n },\r\n {\r\n \"name\": \"no_good\",\r\n \"unicode\": \"1f645\",\r\n \"shortname\": \":no_good:\",\r\n \"code_decimal\": \"🙅\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"531\"\r\n },\r\n {\r\n \"name\": \"ok_woman\",\r\n \"unicode\": \"1f646\",\r\n \"shortname\": \":ok_woman:\",\r\n \"code_decimal\": \"🙆\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"549\"\r\n },\r\n {\r\n \"name\": \"information_desk_person\",\r\n \"unicode\": \"1f481\",\r\n \"shortname\": \":information_desk_person:\",\r\n \"code_decimal\": \"💁\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"567\"\r\n },\r\n {\r\n \"name\": \"raising_hand\",\r\n \"unicode\": \"1f64b\",\r\n \"shortname\": \":raising_hand:\",\r\n \"code_decimal\": \"🙋\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"585\"\r\n },\r\n {\r\n \"name\": \"bow\",\r\n \"unicode\": \"1f647\",\r\n \"shortname\": \":bow:\",\r\n \"code_decimal\": \"🙇\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"603\"\r\n },\r\n // {\r\n // \"name\": \"face_palm\",\r\n // \"unicode\": \"1f926\",\r\n // \"shortname\": \":face_palm:\",\r\n // \"code_decimal\": \"🤦\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"621\"\r\n // },\r\n // {\r\n // \"name\": \"shrug\",\r\n // \"unicode\": \"1f937\",\r\n // \"shortname\": \":shrug:\",\r\n // \"code_decimal\": \"🤷\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"639\"\r\n // },\r\n {\r\n \"name\": \"massage\",\r\n \"unicode\": \"1f486\",\r\n \"shortname\": \":massage:\",\r\n \"code_decimal\": \"💆\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"657\"\r\n },\r\n {\r\n \"name\": \"haircut\",\r\n \"unicode\": \"1f487\",\r\n \"shortname\": \":haircut:\",\r\n \"code_decimal\": \"💇\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"675\"\r\n },\r\n {\r\n \"name\": \"walking\",\r\n \"unicode\": \"1f6b6\",\r\n \"shortname\": \":walking:\",\r\n \"code_decimal\": \"🚶\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"693\"\r\n },\r\n {\r\n \"name\": \"runner\",\r\n \"unicode\": \"1f3c3\",\r\n \"shortname\": \":runner:\",\r\n \"code_decimal\": \"🏃\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"711\"\r\n },\r\n {\r\n \"name\": \"dancer\",\r\n \"unicode\": \"1f483\",\r\n \"shortname\": \":dancer:\",\r\n \"code_decimal\": \"💃\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"729\"\r\n },\r\n // {\r\n // \"name\": \"man_dancing\",\r\n // \"unicode\": \"1f57a\",\r\n // \"shortname\": \":man_dancing:\",\r\n // \"code_decimal\": \"🕺\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"735\"\r\n // },\r\n {\r\n \"name\": \"dancers\",\r\n \"unicode\": \"1f46f\",\r\n \"shortname\": \":dancers:\",\r\n \"code_decimal\": \"👯\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"741\"\r\n },\r\n // {\r\n // \"name\": \"levitate\",\r\n // \"unicode\": \"1f574\",\r\n // \"shortname\": \":levitate:\",\r\n // \"code_decimal\": \"🕴\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"759\"\r\n // },\r\n // {\r\n // \"name\": \"speaking_head\",\r\n // \"unicode\": \"1f5e3\",\r\n // \"shortname\": \":speaking_head:\",\r\n // \"code_decimal\": \"🗣\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"765\"\r\n // },\r\n // {\r\n // \"name\": \"bust_in_silhouette\",\r\n // \"unicode\": \"1f464\",\r\n // \"shortname\": \":bust_in_silhouette:\",\r\n // \"code_decimal\": \"👤\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"766\"\r\n // },\r\n {\r\n \"name\": \"busts_in_silhouette\",\r\n \"unicode\": \"1f465\",\r\n \"shortname\": \":busts_in_silhouette:\",\r\n \"code_decimal\": \"👥\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"767\"\r\n },\r\n // {\r\n // \"name\": \"fencer\",\r\n // \"unicode\": \"1f93a\",\r\n // \"shortname\": \":fencer:\",\r\n // \"code_decimal\": \"🤺\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"768\"\r\n // },\r\n {\r\n \"name\": \"horse_racing\",\r\n \"unicode\": \"1f3c7\",\r\n \"shortname\": \":horse_racing:\",\r\n \"code_decimal\": \"🏇\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"769\"\r\n },\r\n {\r\n \"name\": \"skier\",\r\n \"unicode\": \"26f7\",\r\n \"shortname\": \":skier:\",\r\n \"code_decimal\": \"⛷\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"775\"\r\n },\r\n {\r\n \"name\": \"snowboarder\",\r\n \"unicode\": \"1f3c2\",\r\n \"shortname\": \":snowboarder:\",\r\n \"code_decimal\": \"🏂\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"776\"\r\n },\r\n {\r\n \"name\": \"golfer\",\r\n \"unicode\": \"1f3cc\",\r\n \"shortname\": \":golfer:\",\r\n \"code_decimal\": \"🏌\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"782\"\r\n },\r\n {\r\n \"name\": \"surfer\",\r\n \"unicode\": \"1f3c4\",\r\n \"shortname\": \":surfer:\",\r\n \"code_decimal\": \"🏄\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"800\"\r\n },\r\n {\r\n \"name\": \"rowboat\",\r\n \"unicode\": \"1f6a3\",\r\n \"shortname\": \":rowboat:\",\r\n \"code_decimal\": \"🚣\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"818\"\r\n },\r\n {\r\n \"name\": \"swimmer\",\r\n \"unicode\": \"1f3ca\",\r\n \"shortname\": \":swimmer:\",\r\n \"code_decimal\": \"🏊\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"836\"\r\n },\r\n // {\r\n // \"name\": \"basketball_player\",\r\n // \"unicode\": \"26f9\",\r\n // \"shortname\": \":basketball_player:\",\r\n // \"code_decimal\": \"⛹\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"854\"\r\n // },\r\n // {\r\n // \"name\": \"lifter\",\r\n // \"unicode\": \"1f3cb\",\r\n // \"shortname\": \":lifter:\",\r\n // \"code_decimal\": \"🏋\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"872\"\r\n // },\r\n {\r\n \"name\": \"bicyclist\",\r\n \"unicode\": \"1f6b4\",\r\n \"shortname\": \":bicyclist:\",\r\n \"code_decimal\": \"🚴\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"890\"\r\n },\r\n {\r\n \"name\": \"mountain_bicyclist\",\r\n \"unicode\": \"1f6b5\",\r\n \"shortname\": \":mountain_bicyclist:\",\r\n \"code_decimal\": \"🚵\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"908\"\r\n },\r\n // {\r\n // \"name\": \"race_car\",\r\n // \"unicode\": \"1f3ce\",\r\n // \"shortname\": \":race_car:\",\r\n // \"code_decimal\": \"🏎\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"926\"\r\n // },\r\n // {\r\n // \"name\": \"motorcycle\",\r\n // \"unicode\": \"1f3cd\",\r\n // \"shortname\": \":motorcycle:\",\r\n // \"code_decimal\": \"🏍\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"927\"\r\n // },\r\n // {\r\n // \"name\": \"cartwheel\",\r\n // \"unicode\": \"1f938\",\r\n // \"shortname\": \":cartwheel:\",\r\n // \"code_decimal\": \"🤸\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"928\"\r\n // },\r\n // {\r\n // \"name\": \"wrestlers\",\r\n // \"unicode\": \"1f93c\",\r\n // \"shortname\": \":wrestlers:\",\r\n // \"code_decimal\": \"🤼\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"946\"\r\n // },\r\n // {\r\n // \"name\": \"water_polo\",\r\n // \"unicode\": \"1f93d\",\r\n // \"shortname\": \":water_polo:\",\r\n // \"code_decimal\": \"🤽\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"964\"\r\n // },\r\n // {\r\n // \"name\": \"handball\",\r\n // \"unicode\": \"1f93e\",\r\n // \"shortname\": \":handball:\",\r\n // \"code_decimal\": \"🤾\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"982\"\r\n // },\r\n // {\r\n // \"name\": \"juggling\",\r\n // \"unicode\": \"1f939\",\r\n // \"shortname\": \":juggling:\",\r\n // \"code_decimal\": \"🤹\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1000\"\r\n // },\r\n {\r\n \"name\": \"couple\",\r\n \"unicode\": \"1f46b\",\r\n \"shortname\": \":couple:\",\r\n \"code_decimal\": \"👫\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1018\"\r\n },\r\n {\r\n \"name\": \"two_men_holding_hands\",\r\n \"unicode\": \"1f46c\",\r\n \"shortname\": \":two_men_holding_hands:\",\r\n \"code_decimal\": \"👬\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1024\"\r\n },\r\n {\r\n \"name\": \"two_women_holding_hands\",\r\n \"unicode\": \"1f46d\",\r\n \"shortname\": \":two_women_holding_hands:\",\r\n \"code_decimal\": \"👭\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1030\"\r\n },\r\n {\r\n \"name\": \"couplekiss\",\r\n \"unicode\": \"1f48f\",\r\n \"shortname\": \":couplekiss:\",\r\n \"code_decimal\": \"💏\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1036\"\r\n },\r\n\r\n {\r\n \"name\": \"couple_with_heart\",\r\n \"unicode\": \"1f491\",\r\n \"shortname\": \":couple_with_heart:\",\r\n \"code_decimal\": \"💑\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1040\"\r\n },\r\n {\r\n \"name\": \"family\",\r\n \"unicode\": \"1f46a\",\r\n \"shortname\": \":family:\",\r\n \"code_decimal\": \"👪\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1044\"\r\n },\r\n {\r\n \"name\": \"muscle\",\r\n \"unicode\": \"1f4aa\",\r\n \"shortname\": \":muscle:\",\r\n \"code_decimal\": \"💪\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1080\"\r\n },\r\n // {\r\n // \"name\": \"selfie\",\r\n // \"unicode\": \"1f933\",\r\n // \"shortname\": \":selfie:\",\r\n // \"code_decimal\": \"🤳\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1086\"\r\n // },\r\n {\r\n \"name\": \"point_left\",\r\n \"unicode\": \"1f448\",\r\n \"shortname\": \":point_left:\",\r\n \"code_decimal\": \"👈\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1092\"\r\n },\r\n {\r\n \"name\": \"point_right\",\r\n \"unicode\": \"1f449\",\r\n \"shortname\": \":point_right:\",\r\n \"code_decimal\": \"👉\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1098\"\r\n },\r\n {\r\n \"name\": \"point_up\",\r\n \"unicode\": \"261d\",\r\n \"shortname\": \":point_up:\",\r\n \"code_decimal\": \"☝\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1104\"\r\n },\r\n {\r\n \"name\": \"point_up_2\",\r\n \"unicode\": \"1f446\",\r\n \"shortname\": \":point_up_2:\",\r\n \"code_decimal\": \"👆\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1110\"\r\n },\r\n {\r\n \"name\": \"middle_finger\",\r\n \"unicode\": \"1f595\",\r\n \"shortname\": \":middle_finger:\",\r\n \"code_decimal\": \"🖕\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1116\"\r\n },\r\n {\r\n \"name\": \"point_down\",\r\n \"unicode\": \"1f447\",\r\n \"shortname\": \":point_down:\",\r\n \"code_decimal\": \"👇\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1122\"\r\n },\r\n {\r\n \"name\": \"v\",\r\n \"unicode\": \"270c\",\r\n \"shortname\": \":v:\",\r\n \"code_decimal\": \"✌\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1128\"\r\n },\r\n // {\r\n // \"name\": \"fingers_crossed\",\r\n // \"unicode\": \"1f91e\",\r\n // \"shortname\": \":fingers_crossed:\",\r\n // \"code_decimal\": \"🤞\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1134\"\r\n // },\r\n // {\r\n // \"name\": \"vulcan\",\r\n // \"unicode\": \"1f596\",\r\n // \"shortname\": \":vulcan:\",\r\n // \"code_decimal\": \"🖖\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1140\"\r\n // },\r\n // {\r\n // \"name\": \"metal\",\r\n // \"unicode\": \"1f918\",\r\n // \"shortname\": \":metal:\",\r\n // \"code_decimal\": \"🤘\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1146\"\r\n // },\r\n // {\r\n // \"name\": \"call_me\",\r\n // \"unicode\": \"1f919\",\r\n // \"shortname\": \":call_me:\",\r\n // \"code_decimal\": \"🤙\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1152\"\r\n // },\r\n // {\r\n // \"name\": \"hand_splayed\",\r\n // \"unicode\": \"1f590\",\r\n // \"shortname\": \":hand_splayed:\",\r\n // \"code_decimal\": \"🖐\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1158\"\r\n // },\r\n // {\r\n // \"name\": \"raised_hand\",\r\n // \"unicode\": \"270b\",\r\n // \"shortname\": \":raised_hand:\",\r\n // \"code_decimal\": \"✋\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1164\"\r\n // },\r\n {\r\n \"name\": \"ok_hand\",\r\n \"unicode\": \"1f44c\",\r\n \"shortname\": \":ok_hand:\",\r\n \"code_decimal\": \"👌\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1170\"\r\n },\r\n {\r\n \"name\": \"thumbsup\",\r\n \"unicode\": \"1f44d\",\r\n \"shortname\": \":thumbsup:\",\r\n \"code_decimal\": \"👍\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1176\"\r\n },\r\n {\r\n \"name\": \"thumbsdown\",\r\n \"unicode\": \"1f44e\",\r\n \"shortname\": \":thumbsdown:\",\r\n \"code_decimal\": \"👎\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1182\"\r\n },\r\n {\r\n \"name\": \"fist\",\r\n \"unicode\": \"270a\",\r\n \"shortname\": \":fist:\",\r\n \"code_decimal\": \"✊\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1188\"\r\n },\r\n // {\r\n // \"name\": \"punch\",\r\n // \"unicode\": \"1f44a\",\r\n // \"shortname\": \":punch:\",\r\n // \"code_decimal\": \"👊\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1194\"\r\n // },\r\n // {\r\n // \"name\": \"left_facing_fist\",\r\n // \"unicode\": \"1f91b\",\r\n // \"shortname\": \":left_facing_fist:\",\r\n // \"code_decimal\": \"🤛\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1200\"\r\n // },\r\n // {\r\n // \"name\": \"right_facing_fist\",\r\n // \"unicode\": \"1f91c\",\r\n // \"shortname\": \":right_facing_fist:\",\r\n // \"code_decimal\": \"🤜\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1206\"\r\n // },\r\n // {\r\n // \"name\": \"raised_back_of_hand\",\r\n // \"unicode\": \"1f91a\",\r\n // \"shortname\": \":raised_back_of_hand:\",\r\n // \"code_decimal\": \"🤚\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1212\"\r\n // },\r\n {\r\n \"name\": \"wave\",\r\n \"unicode\": \"1f44b\",\r\n \"shortname\": \":wave:\",\r\n \"code_decimal\": \"👋\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1218\"\r\n },\r\n {\r\n \"name\": \"clap\",\r\n \"unicode\": \"1f44f\",\r\n \"shortname\": \":clap:\",\r\n \"code_decimal\": \"👏\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1224\"\r\n },\r\n {\r\n \"name\": \"writing_hand\",\r\n \"unicode\": \"270d\",\r\n \"shortname\": \":writing_hand:\",\r\n \"code_decimal\": \"✍\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1230\"\r\n },\r\n {\r\n \"name\": \"open_hands\",\r\n \"unicode\": \"1f450\",\r\n \"shortname\": \":open_hands:\",\r\n \"code_decimal\": \"👐\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1236\"\r\n },\r\n {\r\n \"name\": \"raised_hands\",\r\n \"unicode\": \"1f64c\",\r\n \"shortname\": \":raised_hands:\",\r\n \"code_decimal\": \"🙌\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1242\"\r\n },\r\n {\r\n \"name\": \"pray\",\r\n \"unicode\": \"1f64f\",\r\n \"shortname\": \":pray:\",\r\n \"code_decimal\": \"🙏\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1248\"\r\n },\r\n // {\r\n // \"name\": \"handshake\",\r\n // \"unicode\": \"1f91d\",\r\n // \"shortname\": \":handshake:\",\r\n // \"code_decimal\": \"🤝\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1254\"\r\n // },\r\n {\r\n \"name\": \"nail_care\",\r\n \"unicode\": \"1f485\",\r\n \"shortname\": \":nail_care:\",\r\n \"code_decimal\": \"💅\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1260\"\r\n },\r\n {\r\n \"name\": \"ear\",\r\n \"unicode\": \"1f442\",\r\n \"shortname\": \":ear:\",\r\n \"code_decimal\": \"👂\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1266\"\r\n },\r\n {\r\n \"name\": \"nose\",\r\n \"unicode\": \"1f443\",\r\n \"shortname\": \":nose:\",\r\n \"code_decimal\": \"👃\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1272\"\r\n },\r\n {\r\n \"name\": \"footprints\",\r\n \"unicode\": \"1f463\",\r\n \"shortname\": \":footprints:\",\r\n \"code_decimal\": \"👣\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1278\"\r\n },\r\n {\r\n \"name\": \"eyes\",\r\n \"unicode\": \"1f440\",\r\n \"shortname\": \":eyes:\",\r\n \"code_decimal\": \"👀\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1279\"\r\n },\r\n {\r\n \"name\": \"eye\",\r\n \"unicode\": \"1f441\",\r\n \"shortname\": \":eye:\",\r\n \"code_decimal\": \"👁\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1280\"\r\n },\r\n {\r\n \"name\": \"tongue\",\r\n \"unicode\": \"1f445\",\r\n \"shortname\": \":tongue:\",\r\n \"code_decimal\": \"👅\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1282\"\r\n },\r\n {\r\n \"name\": \"lips\",\r\n \"unicode\": \"1f444\",\r\n \"shortname\": \":lips:\",\r\n \"code_decimal\": \"👄\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1283\"\r\n },\r\n {\r\n \"name\": \"kiss\",\r\n \"unicode\": \"1f48b\",\r\n \"shortname\": \":kiss:\",\r\n \"code_decimal\": \"💋\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1284\"\r\n },\r\n {\r\n \"name\": \"cupid\",\r\n \"unicode\": \"1f498\",\r\n \"shortname\": \":cupid:\",\r\n \"code_decimal\": \"💘\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1285\"\r\n },\r\n {\r\n \"name\": \"heart\",\r\n \"unicode\": \"2764\",\r\n \"shortname\": \":heart:\",\r\n \"code_decimal\": \"❤\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1286\"\r\n },\r\n {\r\n \"name\": \"heartbeat\",\r\n \"unicode\": \"1f493\",\r\n \"shortname\": \":heartbeat:\",\r\n \"code_decimal\": \"💓\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1287\"\r\n },\r\n {\r\n \"name\": \"broken_heart\",\r\n \"unicode\": \"1f494\",\r\n \"shortname\": \":broken_heart:\",\r\n \"code_decimal\": \"💔\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1288\"\r\n },\r\n {\r\n \"name\": \"two_hearts\",\r\n \"unicode\": \"1f495\",\r\n \"shortname\": \":two_hearts:\",\r\n \"code_decimal\": \"💕\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1289\"\r\n },\r\n {\r\n \"name\": \"sparkling_heart\",\r\n \"unicode\": \"1f496\",\r\n \"shortname\": \":sparkling_heart:\",\r\n \"code_decimal\": \"💖\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1290\"\r\n },\r\n {\r\n \"name\": \"heartpulse\",\r\n \"unicode\": \"1f497\",\r\n \"shortname\": \":heartpulse:\",\r\n \"code_decimal\": \"💗\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1291\"\r\n },\r\n {\r\n \"name\": \"blue_heart\",\r\n \"unicode\": \"1f499\",\r\n \"shortname\": \":blue_heart:\",\r\n \"code_decimal\": \"💙\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1292\"\r\n },\r\n {\r\n \"name\": \"green_heart\",\r\n \"unicode\": \"1f49a\",\r\n \"shortname\": \":green_heart:\",\r\n \"code_decimal\": \"💚\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1293\"\r\n },\r\n {\r\n \"name\": \"yellow_heart\",\r\n \"unicode\": \"1f49b\",\r\n \"shortname\": \":yellow_heart:\",\r\n \"code_decimal\": \"💛\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1294\"\r\n },\r\n {\r\n \"name\": \"purple_heart\",\r\n \"unicode\": \"1f49c\",\r\n \"shortname\": \":purple_heart:\",\r\n \"code_decimal\": \"💜\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1295\"\r\n },\r\n {\r\n \"name\": \"black_heart\",\r\n \"unicode\": \"1f5a4\",\r\n \"shortname\": \":black_heart:\",\r\n \"code_decimal\": \"🖤\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1296\"\r\n },\r\n {\r\n \"name\": \"gift_heart\",\r\n \"unicode\": \"1f49d\",\r\n \"shortname\": \":gift_heart:\",\r\n \"code_decimal\": \"💝\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1297\"\r\n },\r\n {\r\n \"name\": \"revolving_hearts\",\r\n \"unicode\": \"1f49e\",\r\n \"shortname\": \":revolving_hearts:\",\r\n \"code_decimal\": \"💞\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1298\"\r\n },\r\n {\r\n \"name\": \"heart_decoration\",\r\n \"unicode\": \"1f49f\",\r\n \"shortname\": \":heart_decoration:\",\r\n \"code_decimal\": \"💟\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1299\"\r\n },\r\n {\r\n \"name\": \"heart_exclamation\",\r\n \"unicode\": \"2763\",\r\n \"shortname\": \":heart_exclamation:\",\r\n \"code_decimal\": \"❣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1300\"\r\n },\r\n {\r\n \"name\": \"love_letter\",\r\n \"unicode\": \"1f48c\",\r\n \"shortname\": \":love_letter:\",\r\n \"code_decimal\": \"💌\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1301\"\r\n },\r\n {\r\n \"name\": \"zzz\",\r\n \"unicode\": \"1f4a4\",\r\n \"shortname\": \":zzz:\",\r\n \"code_decimal\": \"💤\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1302\"\r\n },\r\n {\r\n \"name\": \"anger\",\r\n \"unicode\": \"1f4a2\",\r\n \"shortname\": \":anger:\",\r\n \"code_decimal\": \"💢\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1303\"\r\n },\r\n {\r\n \"name\": \"bomb\",\r\n \"unicode\": \"1f4a3\",\r\n \"shortname\": \":bomb:\",\r\n \"code_decimal\": \"💣\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1304\"\r\n },\r\n {\r\n \"name\": \"boom\",\r\n \"unicode\": \"1f4a5\",\r\n \"shortname\": \":boom:\",\r\n \"code_decimal\": \"💥\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1305\"\r\n },\r\n {\r\n \"name\": \"sweat_drops\",\r\n \"unicode\": \"1f4a6\",\r\n \"shortname\": \":sweat_drops:\",\r\n \"code_decimal\": \"💦\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1306\"\r\n },\r\n {\r\n \"name\": \"dash\",\r\n \"unicode\": \"1f4a8\",\r\n \"shortname\": \":dash:\",\r\n \"code_decimal\": \"💨\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1307\"\r\n },\r\n {\r\n \"name\": \"dizzy\",\r\n \"unicode\": \"1f4ab\",\r\n \"shortname\": \":dizzy:\",\r\n \"code_decimal\": \"💫\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1308\"\r\n },\r\n {\r\n \"name\": \"speech_balloon\",\r\n \"unicode\": \"1f4ac\",\r\n \"shortname\": \":speech_balloon:\",\r\n \"code_decimal\": \"💬\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1309\"\r\n },\r\n {\r\n \"name\": \"speech_left\",\r\n \"unicode\": \"1f5e8\",\r\n \"shortname\": \":speech_left:\",\r\n \"code_decimal\": \"🗨\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1310\"\r\n },\r\n {\r\n \"name\": \"anger_right\",\r\n \"unicode\": \"1f5ef\",\r\n \"shortname\": \":anger_right:\",\r\n \"code_decimal\": \"🗯\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1311\"\r\n },\r\n {\r\n \"name\": \"thought_balloon\",\r\n \"unicode\": \"1f4ad\",\r\n \"shortname\": \":thought_balloon:\",\r\n \"code_decimal\": \"💭\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1312\"\r\n },\r\n {\r\n \"name\": \"hole\",\r\n \"unicode\": \"1f573\",\r\n \"shortname\": \":hole:\",\r\n \"code_decimal\": \"🕳\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1313\"\r\n },\r\n {\r\n \"name\": \"eyeglasses\",\r\n \"unicode\": \"1f453\",\r\n \"shortname\": \":eyeglasses:\",\r\n \"code_decimal\": \"👓\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1314\"\r\n },\r\n {\r\n \"name\": \"dark_sunglasses\",\r\n \"unicode\": \"1f576\",\r\n \"shortname\": \":dark_sunglasses:\",\r\n \"code_decimal\": \"🕶\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1315\"\r\n },\r\n {\r\n \"name\": \"necktie\",\r\n \"unicode\": \"1f454\",\r\n \"shortname\": \":necktie:\",\r\n \"code_decimal\": \"👔\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1316\"\r\n },\r\n {\r\n \"name\": \"shirt\",\r\n \"unicode\": \"1f455\",\r\n \"shortname\": \":shirt:\",\r\n \"code_decimal\": \"👕\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1317\"\r\n },\r\n {\r\n \"name\": \"jeans\",\r\n \"unicode\": \"1f456\",\r\n \"shortname\": \":jeans:\",\r\n \"code_decimal\": \"👖\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1318\"\r\n },\r\n {\r\n \"name\": \"dress\",\r\n \"unicode\": \"1f457\",\r\n \"shortname\": \":dress:\",\r\n \"code_decimal\": \"👗\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1319\"\r\n },\r\n {\r\n \"name\": \"kimono\",\r\n \"unicode\": \"1f458\",\r\n \"shortname\": \":kimono:\",\r\n \"code_decimal\": \"👘\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1320\"\r\n },\r\n {\r\n \"name\": \"bikini\",\r\n \"unicode\": \"1f459\",\r\n \"shortname\": \":bikini:\",\r\n \"code_decimal\": \"👙\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1321\"\r\n },\r\n {\r\n \"name\": \"womans_clothes\",\r\n \"unicode\": \"1f45a\",\r\n \"shortname\": \":womans_clothes:\",\r\n \"code_decimal\": \"👚\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1322\"\r\n },\r\n {\r\n \"name\": \"purse\",\r\n \"unicode\": \"1f45b\",\r\n \"shortname\": \":purse:\",\r\n \"code_decimal\": \"👛\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1323\"\r\n },\r\n {\r\n \"name\": \"handbag\",\r\n \"unicode\": \"1f45c\",\r\n \"shortname\": \":handbag:\",\r\n \"code_decimal\": \"👜\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1324\"\r\n },\r\n {\r\n \"name\": \"pouch\",\r\n \"unicode\": \"1f45d\",\r\n \"shortname\": \":pouch:\",\r\n \"code_decimal\": \"👝\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1325\"\r\n },\r\n {\r\n \"name\": \"shopping_bags\",\r\n \"unicode\": \"1f6cd\",\r\n \"shortname\": \":shopping_bags:\",\r\n \"code_decimal\": \"🛍\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1326\"\r\n },\r\n {\r\n \"name\": \"school_satchel\",\r\n \"unicode\": \"1f392\",\r\n \"shortname\": \":school_satchel:\",\r\n \"code_decimal\": \"🎒\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1327\"\r\n },\r\n {\r\n \"name\": \"mans_shoe\",\r\n \"unicode\": \"1f45e\",\r\n \"shortname\": \":mans_shoe:\",\r\n \"code_decimal\": \"👞\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1328\"\r\n },\r\n {\r\n \"name\": \"athletic_shoe\",\r\n \"unicode\": \"1f45f\",\r\n \"shortname\": \":athletic_shoe:\",\r\n \"code_decimal\": \"👟\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1329\"\r\n },\r\n {\r\n \"name\": \"high_heel\",\r\n \"unicode\": \"1f460\",\r\n \"shortname\": \":high_heel:\",\r\n \"code_decimal\": \"👠\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1330\"\r\n },\r\n {\r\n \"name\": \"sandal\",\r\n \"unicode\": \"1f461\",\r\n \"shortname\": \":sandal:\",\r\n \"code_decimal\": \"👡\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1331\"\r\n },\r\n {\r\n \"name\": \"boot\",\r\n \"unicode\": \"1f462\",\r\n \"shortname\": \":boot:\",\r\n \"code_decimal\": \"👢\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1332\"\r\n },\r\n {\r\n \"name\": \"crown\",\r\n \"unicode\": \"1f451\",\r\n \"shortname\": \":crown:\",\r\n \"code_decimal\": \"👑\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1333\"\r\n },\r\n {\r\n \"name\": \"womans_hat\",\r\n \"unicode\": \"1f452\",\r\n \"shortname\": \":womans_hat:\",\r\n \"code_decimal\": \"👒\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1334\"\r\n },\r\n {\r\n \"name\": \"tophat\",\r\n \"unicode\": \"1f3a9\",\r\n \"shortname\": \":tophat:\",\r\n \"code_decimal\": \"🎩\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1335\"\r\n },\r\n {\r\n \"name\": \"mortar_board\",\r\n \"unicode\": \"1f393\",\r\n \"shortname\": \":mortar_board:\",\r\n \"code_decimal\": \"🎓\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1336\"\r\n },\r\n // {\r\n // \"name\": \"helmet_with_cross\",\r\n // \"unicode\": \"26d1\",\r\n // \"shortname\": \":helmet_with_cross:\",\r\n // \"code_decimal\": \"⛑\",\r\n // \"category\": \"p\",\r\n // \"emoji_order\": \"1337\"\r\n // },\r\n {\r\n \"name\": \"prayer_beads\",\r\n \"unicode\": \"1f4ff\",\r\n \"shortname\": \":prayer_beads:\",\r\n \"code_decimal\": \"📿\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1338\"\r\n },\r\n {\r\n \"name\": \"lipstick\",\r\n \"unicode\": \"1f484\",\r\n \"shortname\": \":lipstick:\",\r\n \"code_decimal\": \"💄\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1339\"\r\n },\r\n {\r\n \"name\": \"ring\",\r\n \"unicode\": \"1f48d\",\r\n \"shortname\": \":ring:\",\r\n \"code_decimal\": \"💍\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1340\"\r\n },\r\n {\r\n \"name\": \"gem\",\r\n \"unicode\": \"1f48e\",\r\n \"shortname\": \":gem:\",\r\n \"code_decimal\": \"💎\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1341\"\r\n },\r\n {\r\n \"name\": \"monkey_face\",\r\n \"unicode\": \"1f435\",\r\n \"shortname\": \":monkey_face:\",\r\n \"code_decimal\": \"🐵\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1342\"\r\n },\r\n {\r\n \"name\": \"monkey\",\r\n \"unicode\": \"1f412\",\r\n \"shortname\": \":monkey:\",\r\n \"code_decimal\": \"🐒\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1343\"\r\n },\r\n // {\r\n // \"name\": \"gorilla\",\r\n // \"unicode\": \"1f98d\",\r\n // \"shortname\": \":gorilla:\",\r\n // \"code_decimal\": \"🦍\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1344\"\r\n // },\r\n {\r\n \"name\": \"dog\",\r\n \"unicode\": \"1f436\",\r\n \"shortname\": \":dog:\",\r\n \"code_decimal\": \"🐶\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1345\"\r\n },\r\n {\r\n \"name\": \"dog2\",\r\n \"unicode\": \"1f415\",\r\n \"shortname\": \":dog2:\",\r\n \"code_decimal\": \"🐕\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1346\"\r\n },\r\n {\r\n \"name\": \"poodle\",\r\n \"unicode\": \"1f429\",\r\n \"shortname\": \":poodle:\",\r\n \"code_decimal\": \"🐩\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1347\"\r\n },\r\n {\r\n \"name\": \"wolf\",\r\n \"unicode\": \"1f43a\",\r\n \"shortname\": \":wolf:\",\r\n \"code_decimal\": \"🐺\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1348\"\r\n },\r\n // {\r\n // \"name\": \"fox\",\r\n // \"unicode\": \"1f98a\",\r\n // \"shortname\": \":fox:\",\r\n // \"code_decimal\": \"🦊\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1349\"\r\n // },\r\n {\r\n \"name\": \"cat\",\r\n \"unicode\": \"1f431\",\r\n \"shortname\": \":cat:\",\r\n \"code_decimal\": \"🐱\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1350\"\r\n },\r\n {\r\n \"name\": \"cat2\",\r\n \"unicode\": \"1f408\",\r\n \"shortname\": \":cat2:\",\r\n \"code_decimal\": \"🐈\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1351\"\r\n },\r\n {\r\n \"name\": \"lion_face\",\r\n \"unicode\": \"1f981\",\r\n \"shortname\": \":lion_face:\",\r\n \"code_decimal\": \"🦁\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1352\"\r\n },\r\n {\r\n \"name\": \"tiger\",\r\n \"unicode\": \"1f42f\",\r\n \"shortname\": \":tiger:\",\r\n \"code_decimal\": \"🐯\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1353\"\r\n },\r\n {\r\n \"name\": \"tiger2\",\r\n \"unicode\": \"1f405\",\r\n \"shortname\": \":tiger2:\",\r\n \"code_decimal\": \"🐅\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1354\"\r\n },\r\n {\r\n \"name\": \"leopard\",\r\n \"unicode\": \"1f406\",\r\n \"shortname\": \":leopard:\",\r\n \"code_decimal\": \"🐆\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1355\"\r\n },\r\n {\r\n \"name\": \"horse\",\r\n \"unicode\": \"1f434\",\r\n \"shortname\": \":horse:\",\r\n \"code_decimal\": \"🐴\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1356\"\r\n },\r\n {\r\n \"name\": \"racehorse\",\r\n \"unicode\": \"1f40e\",\r\n \"shortname\": \":racehorse:\",\r\n \"code_decimal\": \"🐎\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1357\"\r\n },\r\n // {\r\n // \"name\": \"deer\",\r\n // \"unicode\": \"1f98c\",\r\n // \"shortname\": \":deer:\",\r\n // \"code_decimal\": \"🦌\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1358\"\r\n // },\r\n // {\r\n // \"name\": \"unicorn\",\r\n // \"unicode\": \"1f984\",\r\n // \"shortname\": \":unicorn:\",\r\n // \"code_decimal\": \"🦄\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1359\"\r\n // },\r\n {\r\n \"name\": \"cow\",\r\n \"unicode\": \"1f42e\",\r\n \"shortname\": \":cow:\",\r\n \"code_decimal\": \"🐮\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1360\"\r\n },\r\n {\r\n \"name\": \"ox\",\r\n \"unicode\": \"1f402\",\r\n \"shortname\": \":ox:\",\r\n \"code_decimal\": \"🐂\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1361\"\r\n },\r\n {\r\n \"name\": \"water_buffalo\",\r\n \"unicode\": \"1f403\",\r\n \"shortname\": \":water_buffalo:\",\r\n \"code_decimal\": \"🐃\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1362\"\r\n },\r\n {\r\n \"name\": \"cow2\",\r\n \"unicode\": \"1f404\",\r\n \"shortname\": \":cow2:\",\r\n \"code_decimal\": \"🐄\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1363\"\r\n },\r\n {\r\n \"name\": \"pig\",\r\n \"unicode\": \"1f437\",\r\n \"shortname\": \":pig:\",\r\n \"code_decimal\": \"🐷\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1364\"\r\n },\r\n {\r\n \"name\": \"pig2\",\r\n \"unicode\": \"1f416\",\r\n \"shortname\": \":pig2:\",\r\n \"code_decimal\": \"🐖\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1365\"\r\n },\r\n {\r\n \"name\": \"boar\",\r\n \"unicode\": \"1f417\",\r\n \"shortname\": \":boar:\",\r\n \"code_decimal\": \"🐗\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1366\"\r\n },\r\n {\r\n \"name\": \"pig_nose\",\r\n \"unicode\": \"1f43d\",\r\n \"shortname\": \":pig_nose:\",\r\n \"code_decimal\": \"🐽\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1367\"\r\n },\r\n {\r\n \"name\": \"ram\",\r\n \"unicode\": \"1f40f\",\r\n \"shortname\": \":ram:\",\r\n \"code_decimal\": \"🐏\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1368\"\r\n },\r\n {\r\n \"name\": \"sheep\",\r\n \"unicode\": \"1f411\",\r\n \"shortname\": \":sheep:\",\r\n \"code_decimal\": \"🐑\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1369\"\r\n },\r\n {\r\n \"name\": \"goat\",\r\n \"unicode\": \"1f410\",\r\n \"shortname\": \":goat:\",\r\n \"code_decimal\": \"🐐\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1370\"\r\n },\r\n {\r\n \"name\": \"dromedary_camel\",\r\n \"unicode\": \"1f42a\",\r\n \"shortname\": \":dromedary_camel:\",\r\n \"code_decimal\": \"🐪\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1371\"\r\n },\r\n {\r\n \"name\": \"camel\",\r\n \"unicode\": \"1f42b\",\r\n \"shortname\": \":camel:\",\r\n \"code_decimal\": \"🐫\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1372\"\r\n },\r\n {\r\n \"name\": \"elephant\",\r\n \"unicode\": \"1f418\",\r\n \"shortname\": \":elephant:\",\r\n \"code_decimal\": \"🐘\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1373\"\r\n },\r\n // {\r\n // \"name\": \"rhino\",\r\n // \"unicode\": \"1f98f\",\r\n // \"shortname\": \":rhino:\",\r\n // \"code_decimal\": \"🦏\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1374\"\r\n // },\r\n {\r\n \"name\": \"mouse\",\r\n \"unicode\": \"1f42d\",\r\n \"shortname\": \":mouse:\",\r\n \"code_decimal\": \"🐭\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1375\"\r\n },\r\n {\r\n \"name\": \"mouse2\",\r\n \"unicode\": \"1f401\",\r\n \"shortname\": \":mouse2:\",\r\n \"code_decimal\": \"🐁\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1376\"\r\n },\r\n {\r\n \"name\": \"rat\",\r\n \"unicode\": \"1f400\",\r\n \"shortname\": \":rat:\",\r\n \"code_decimal\": \"🐀\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1377\"\r\n },\r\n {\r\n \"name\": \"hamster\",\r\n \"unicode\": \"1f439\",\r\n \"shortname\": \":hamster:\",\r\n \"code_decimal\": \"🐹\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1378\"\r\n },\r\n {\r\n \"name\": \"rabbit\",\r\n \"unicode\": \"1f430\",\r\n \"shortname\": \":rabbit:\",\r\n \"code_decimal\": \"🐰\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1379\"\r\n },\r\n {\r\n \"name\": \"rabbit2\",\r\n \"unicode\": \"1f407\",\r\n \"shortname\": \":rabbit2:\",\r\n \"code_decimal\": \"🐇\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1380\"\r\n },\r\n {\r\n \"name\": \"chipmunk\",\r\n \"unicode\": \"1f43f\",\r\n \"shortname\": \":chipmunk:\",\r\n \"code_decimal\": \"🐿\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1381\"\r\n },\r\n // {\r\n // \"name\": \"bat\",\r\n // \"unicode\": \"1f987\",\r\n // \"shortname\": \":bat:\",\r\n // \"code_decimal\": \"🦇\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1382\"\r\n // },\r\n {\r\n \"name\": \"bear\",\r\n \"unicode\": \"1f43b\",\r\n \"shortname\": \":bear:\",\r\n \"code_decimal\": \"🐻\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1383\"\r\n },\r\n {\r\n \"name\": \"koala\",\r\n \"unicode\": \"1f428\",\r\n \"shortname\": \":koala:\",\r\n \"code_decimal\": \"🐨\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1384\"\r\n },\r\n {\r\n \"name\": \"panda_face\",\r\n \"unicode\": \"1f43c\",\r\n \"shortname\": \":panda_face:\",\r\n \"code_decimal\": \"🐼\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1385\"\r\n },\r\n {\r\n \"name\": \"feet\",\r\n \"unicode\": \"1f43e\",\r\n \"shortname\": \":feet:\",\r\n \"code_decimal\": \"🐾\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1386\"\r\n },\r\n {\r\n \"name\": \"turkey\",\r\n \"unicode\": \"1f983\",\r\n \"shortname\": \":turkey:\",\r\n \"code_decimal\": \"🦃\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1387\"\r\n },\r\n {\r\n \"name\": \"chicken\",\r\n \"unicode\": \"1f414\",\r\n \"shortname\": \":chicken:\",\r\n \"code_decimal\": \"🐔\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1388\"\r\n },\r\n {\r\n \"name\": \"rooster\",\r\n \"unicode\": \"1f413\",\r\n \"shortname\": \":rooster:\",\r\n \"code_decimal\": \"🐓\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1389\"\r\n },\r\n {\r\n \"name\": \"hatching_chick\",\r\n \"unicode\": \"1f423\",\r\n \"shortname\": \":hatching_chick:\",\r\n \"code_decimal\": \"🐣\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1390\"\r\n },\r\n {\r\n \"name\": \"baby_chick\",\r\n \"unicode\": \"1f424\",\r\n \"shortname\": \":baby_chick:\",\r\n \"code_decimal\": \"🐤\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1391\"\r\n },\r\n {\r\n \"name\": \"hatched_chick\",\r\n \"unicode\": \"1f425\",\r\n \"shortname\": \":hatched_chick:\",\r\n \"code_decimal\": \"🐥\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1392\"\r\n },\r\n {\r\n \"name\": \"bird\",\r\n \"unicode\": \"1f426\",\r\n \"shortname\": \":bird:\",\r\n \"code_decimal\": \"🐦\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1393\"\r\n },\r\n {\r\n \"name\": \"penguin\",\r\n \"unicode\": \"1f427\",\r\n \"shortname\": \":penguin:\",\r\n \"code_decimal\": \"🐧\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1394\"\r\n },\r\n // {\r\n // \"name\": \"dove\",\r\n // \"unicode\": \"1f54a\",\r\n // \"shortname\": \":dove:\",\r\n // \"code_decimal\": \"🕊\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1395\"\r\n // },\r\n // {\r\n // \"name\": \"eagle\",\r\n // \"unicode\": \"1f985\",\r\n // \"shortname\": \":eagle:\",\r\n // \"code_decimal\": \"🦅\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1396\"\r\n // },\r\n // {\r\n // \"name\": \"duck\",\r\n // \"unicode\": \"1f986\",\r\n // \"shortname\": \":duck:\",\r\n // \"code_decimal\": \"🦆\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1397\"\r\n // },\r\n // {\r\n // \"name\": \"owl\",\r\n // \"unicode\": \"1f989\",\r\n // \"shortname\": \":owl:\",\r\n // \"code_decimal\": \"🦉\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1398\"\r\n // },\r\n {\r\n \"name\": \"frog\",\r\n \"unicode\": \"1f438\",\r\n \"shortname\": \":frog:\",\r\n \"code_decimal\": \"🐸\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1399\"\r\n },\r\n {\r\n \"name\": \"crocodile\",\r\n \"unicode\": \"1f40a\",\r\n \"shortname\": \":crocodile:\",\r\n \"code_decimal\": \"🐊\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1400\"\r\n },\r\n {\r\n \"name\": \"turtle\",\r\n \"unicode\": \"1f422\",\r\n \"shortname\": \":turtle:\",\r\n \"code_decimal\": \"🐢\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1401\"\r\n },\r\n // {\r\n // \"name\": \"lizard\",\r\n // \"unicode\": \"1f98e\",\r\n // \"shortname\": \":lizard:\",\r\n // \"code_decimal\": \"🦎\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1402\"\r\n // },\r\n {\r\n \"name\": \"snake\",\r\n \"unicode\": \"1f40d\",\r\n \"shortname\": \":snake:\",\r\n \"code_decimal\": \"🐍\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1403\"\r\n },\r\n {\r\n \"name\": \"dragon_face\",\r\n \"unicode\": \"1f432\",\r\n \"shortname\": \":dragon_face:\",\r\n \"code_decimal\": \"🐲\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1404\"\r\n },\r\n {\r\n \"name\": \"dragon\",\r\n \"unicode\": \"1f409\",\r\n \"shortname\": \":dragon:\",\r\n \"code_decimal\": \"🐉\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1405\"\r\n },\r\n {\r\n \"name\": \"whale\",\r\n \"unicode\": \"1f433\",\r\n \"shortname\": \":whale:\",\r\n \"code_decimal\": \"🐳\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1406\"\r\n },\r\n {\r\n \"name\": \"whale2\",\r\n \"unicode\": \"1f40b\",\r\n \"shortname\": \":whale2:\",\r\n \"code_decimal\": \"🐋\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1407\"\r\n },\r\n {\r\n \"name\": \"dolphin\",\r\n \"unicode\": \"1f42c\",\r\n \"shortname\": \":dolphin:\",\r\n \"code_decimal\": \"🐬\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1408\"\r\n },\r\n {\r\n \"name\": \"fish\",\r\n \"unicode\": \"1f41f\",\r\n \"shortname\": \":fish:\",\r\n \"code_decimal\": \"🐟\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1409\"\r\n },\r\n {\r\n \"name\": \"tropical_fish\",\r\n \"unicode\": \"1f420\",\r\n \"shortname\": \":tropical_fish:\",\r\n \"code_decimal\": \"🐠\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1410\"\r\n },\r\n {\r\n \"name\": \"blowfish\",\r\n \"unicode\": \"1f421\",\r\n \"shortname\": \":blowfish:\",\r\n \"code_decimal\": \"🐡\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1411\"\r\n },\r\n // {\r\n // \"name\": \"shark\",\r\n // \"unicode\": \"1f988\",\r\n // \"shortname\": \":shark:\",\r\n // \"code_decimal\": \"🦈\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1412\"\r\n // },\r\n {\r\n \"name\": \"octopus\",\r\n \"unicode\": \"1f419\",\r\n \"shortname\": \":octopus:\",\r\n \"code_decimal\": \"🐙\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1413\"\r\n },\r\n {\r\n \"name\": \"shell\",\r\n \"unicode\": \"1f41a\",\r\n \"shortname\": \":shell:\",\r\n \"code_decimal\": \"🐚\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1414\"\r\n },\r\n {\r\n \"name\": \"crab\",\r\n \"unicode\": \"1f980\",\r\n \"shortname\": \":crab:\",\r\n \"code_decimal\": \"🦀\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1415\"\r\n },\r\n // {\r\n // \"name\": \"shrimp\",\r\n // \"unicode\": \"1f990\",\r\n // \"shortname\": \":shrimp:\",\r\n // \"code_decimal\": \"🦐\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1416\"\r\n // },\r\n // {\r\n // \"name\": \"squid\",\r\n // \"unicode\": \"1f991\",\r\n // \"shortname\": \":squid:\",\r\n // \"code_decimal\": \"🦑\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1417\"\r\n // },\r\n // {\r\n // \"name\": \"butterfly\",\r\n // \"unicode\": \"1f98b\",\r\n // \"shortname\": \":butterfly:\",\r\n // \"code_decimal\": \"🦋\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1418\"\r\n // },\r\n {\r\n \"name\": \"snail\",\r\n \"unicode\": \"1f40c\",\r\n \"shortname\": \":snail:\",\r\n \"code_decimal\": \"🐌\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1419\"\r\n },\r\n {\r\n \"name\": \"bug\",\r\n \"unicode\": \"1f41b\",\r\n \"shortname\": \":bug:\",\r\n \"code_decimal\": \"🐛\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1420\"\r\n },\r\n {\r\n \"name\": \"ant\",\r\n \"unicode\": \"1f41c\",\r\n \"shortname\": \":ant:\",\r\n \"code_decimal\": \"🐜\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1421\"\r\n },\r\n {\r\n \"name\": \"bee\",\r\n \"unicode\": \"1f41d\",\r\n \"shortname\": \":bee:\",\r\n \"code_decimal\": \"🐝\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1422\"\r\n },\r\n {\r\n \"name\": \"beetle\",\r\n \"unicode\": \"1f41e\",\r\n \"shortname\": \":beetle:\",\r\n \"code_decimal\": \"🐞\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1423\"\r\n },\r\n {\r\n \"name\": \"spider\",\r\n \"unicode\": \"1f577\",\r\n \"shortname\": \":spider:\",\r\n \"code_decimal\": \"🕷\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1424\"\r\n },\r\n {\r\n \"name\": \"spider_web\",\r\n \"unicode\": \"1f578\",\r\n \"shortname\": \":spider_web:\",\r\n \"code_decimal\": \"🕸\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1425\"\r\n },\r\n {\r\n \"name\": \"scorpion\",\r\n \"unicode\": \"1f982\",\r\n \"shortname\": \":scorpion:\",\r\n \"code_decimal\": \"🦂\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1426\"\r\n },\r\n {\r\n \"name\": \"bouquet\",\r\n \"unicode\": \"1f490\",\r\n \"shortname\": \":bouquet:\",\r\n \"code_decimal\": \"💐\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1427\"\r\n },\r\n {\r\n \"name\": \"cherry_blossom\",\r\n \"unicode\": \"1f338\",\r\n \"shortname\": \":cherry_blossom:\",\r\n \"code_decimal\": \"🌸\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1428\"\r\n },\r\n {\r\n \"name\": \"white_flower\",\r\n \"unicode\": \"1f4ae\",\r\n \"shortname\": \":white_flower:\",\r\n \"code_decimal\": \"💮\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1429\"\r\n },\r\n {\r\n \"name\": \"rosette\",\r\n \"unicode\": \"1f3f5\",\r\n \"shortname\": \":rosette:\",\r\n \"code_decimal\": \"🏵\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1430\"\r\n },\r\n {\r\n \"name\": \"rose\",\r\n \"unicode\": \"1f339\",\r\n \"shortname\": \":rose:\",\r\n \"code_decimal\": \"🌹\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1431\"\r\n },\r\n // {\r\n // \"name\": \"wilted_rose\",\r\n // \"unicode\": \"1f940\",\r\n // \"shortname\": \":wilted_rose:\",\r\n // \"code_decimal\": \"🥀\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1432\"\r\n // },\r\n {\r\n \"name\": \"hibiscus\",\r\n \"unicode\": \"1f33a\",\r\n \"shortname\": \":hibiscus:\",\r\n \"code_decimal\": \"🌺\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1433\"\r\n },\r\n {\r\n \"name\": \"sunflower\",\r\n \"unicode\": \"1f33b\",\r\n \"shortname\": \":sunflower:\",\r\n \"code_decimal\": \"🌻\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1434\"\r\n },\r\n {\r\n \"name\": \"blossom\",\r\n \"unicode\": \"1f33c\",\r\n \"shortname\": \":blossom:\",\r\n \"code_decimal\": \"🌼\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1435\"\r\n },\r\n {\r\n \"name\": \"tulip\",\r\n \"unicode\": \"1f337\",\r\n \"shortname\": \":tulip:\",\r\n \"code_decimal\": \"🌷\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1436\"\r\n },\r\n {\r\n \"name\": \"seedling\",\r\n \"unicode\": \"1f331\",\r\n \"shortname\": \":seedling:\",\r\n \"code_decimal\": \"🌱\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1437\"\r\n },\r\n {\r\n \"name\": \"evergreen_tree\",\r\n \"unicode\": \"1f332\",\r\n \"shortname\": \":evergreen_tree:\",\r\n \"code_decimal\": \"🌲\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1438\"\r\n },\r\n {\r\n \"name\": \"deciduous_tree\",\r\n \"unicode\": \"1f333\",\r\n \"shortname\": \":deciduous_tree:\",\r\n \"code_decimal\": \"🌳\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1439\"\r\n },\r\n {\r\n \"name\": \"palm_tree\",\r\n \"unicode\": \"1f334\",\r\n \"shortname\": \":palm_tree:\",\r\n \"code_decimal\": \"🌴\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1440\"\r\n },\r\n {\r\n \"name\": \"cactus\",\r\n \"unicode\": \"1f335\",\r\n \"shortname\": \":cactus:\",\r\n \"code_decimal\": \"🌵\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1441\"\r\n },\r\n {\r\n \"name\": \"ear_of_rice\",\r\n \"unicode\": \"1f33e\",\r\n \"shortname\": \":ear_of_rice:\",\r\n \"code_decimal\": \"🌾\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1442\"\r\n },\r\n {\r\n \"name\": \"herb\",\r\n \"unicode\": \"1f33f\",\r\n \"shortname\": \":herb:\",\r\n \"code_decimal\": \"🌿\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1443\"\r\n },\r\n {\r\n \"name\": \"shamrock\",\r\n \"unicode\": \"2618\",\r\n \"shortname\": \":shamrock:\",\r\n \"code_decimal\": \"☘\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1444\"\r\n },\r\n {\r\n \"name\": \"four_leaf_clover\",\r\n \"unicode\": \"1f340\",\r\n \"shortname\": \":four_leaf_clover:\",\r\n \"code_decimal\": \"🍀\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1445\"\r\n },\r\n {\r\n \"name\": \"maple_leaf\",\r\n \"unicode\": \"1f341\",\r\n \"shortname\": \":maple_leaf:\",\r\n \"code_decimal\": \"🍁\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1446\"\r\n },\r\n {\r\n \"name\": \"fallen_leaf\",\r\n \"unicode\": \"1f342\",\r\n \"shortname\": \":fallen_leaf:\",\r\n \"code_decimal\": \"🍂\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1447\"\r\n },\r\n {\r\n \"name\": \"leaves\",\r\n \"unicode\": \"1f343\",\r\n \"shortname\": \":leaves:\",\r\n \"code_decimal\": \"🍃\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1448\"\r\n },\r\n {\r\n \"name\": \"grapes\",\r\n \"unicode\": \"1f347\",\r\n \"shortname\": \":grapes:\",\r\n \"code_decimal\": \"🍇\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1449\"\r\n },\r\n {\r\n \"name\": \"melon\",\r\n \"unicode\": \"1f348\",\r\n \"shortname\": \":melon:\",\r\n \"code_decimal\": \"🍈\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1450\"\r\n },\r\n {\r\n \"name\": \"watermelon\",\r\n \"unicode\": \"1f349\",\r\n \"shortname\": \":watermelon:\",\r\n \"code_decimal\": \"🍉\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1451\"\r\n },\r\n {\r\n \"name\": \"tangerine\",\r\n \"unicode\": \"1f34a\",\r\n \"shortname\": \":tangerine:\",\r\n \"code_decimal\": \"🍊\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1452\"\r\n },\r\n {\r\n \"name\": \"lemon\",\r\n \"unicode\": \"1f34b\",\r\n \"shortname\": \":lemon:\",\r\n \"code_decimal\": \"🍋\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1453\"\r\n },\r\n {\r\n \"name\": \"banana\",\r\n \"unicode\": \"1f34c\",\r\n \"shortname\": \":banana:\",\r\n \"code_decimal\": \"🍌\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1454\"\r\n },\r\n {\r\n \"name\": \"pineapple\",\r\n \"unicode\": \"1f34d\",\r\n \"shortname\": \":pineapple:\",\r\n \"code_decimal\": \"🍍\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1455\"\r\n },\r\n {\r\n \"name\": \"apple\",\r\n \"unicode\": \"1f34e\",\r\n \"shortname\": \":apple:\",\r\n \"code_decimal\": \"🍎\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1456\"\r\n },\r\n {\r\n \"name\": \"green_apple\",\r\n \"unicode\": \"1f34f\",\r\n \"shortname\": \":green_apple:\",\r\n \"code_decimal\": \"🍏\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1457\"\r\n },\r\n {\r\n \"name\": \"pear\",\r\n \"unicode\": \"1f350\",\r\n \"shortname\": \":pear:\",\r\n \"code_decimal\": \"🍐\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1458\"\r\n },\r\n {\r\n \"name\": \"peach\",\r\n \"unicode\": \"1f351\",\r\n \"shortname\": \":peach:\",\r\n \"code_decimal\": \"🍑\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1459\"\r\n },\r\n {\r\n \"name\": \"cherries\",\r\n \"unicode\": \"1f352\",\r\n \"shortname\": \":cherries:\",\r\n \"code_decimal\": \"🍒\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1460\"\r\n },\r\n {\r\n \"name\": \"strawberry\",\r\n \"unicode\": \"1f353\",\r\n \"shortname\": \":strawberry:\",\r\n \"code_decimal\": \"🍓\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1461\"\r\n },\r\n // {\r\n // \"name\": \"kiwi\",\r\n // \"unicode\": \"1f95d\",\r\n // \"shortname\": \":kiwi:\",\r\n // \"code_decimal\": \"🥝\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1462\"\r\n // },\r\n {\r\n \"name\": \"tomato\",\r\n \"unicode\": \"1f345\",\r\n \"shortname\": \":tomato:\",\r\n \"code_decimal\": \"🍅\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1463\"\r\n },\r\n // {\r\n // \"name\": \"avocado\",\r\n // \"unicode\": \"1f951\",\r\n // \"shortname\": \":avocado:\",\r\n // \"code_decimal\": \"🥑\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1464\"\r\n // },\r\n {\r\n \"name\": \"eggplant\",\r\n \"unicode\": \"1f346\",\r\n \"shortname\": \":eggplant:\",\r\n \"code_decimal\": \"🍆\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1465\"\r\n },\r\n // {\r\n // \"name\": \"potato\",\r\n // \"unicode\": \"1f954\",\r\n // \"shortname\": \":potato:\",\r\n // \"code_decimal\": \"🥔\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1466\"\r\n // },\r\n // {\r\n // \"name\": \"carrot\",\r\n // \"unicode\": \"1f955\",\r\n // \"shortname\": \":carrot:\",\r\n // \"code_decimal\": \"🥕\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1467\"\r\n // },\r\n {\r\n \"name\": \"corn\",\r\n \"unicode\": \"1f33d\",\r\n \"shortname\": \":corn:\",\r\n \"code_decimal\": \"🌽\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1468\"\r\n },\r\n {\r\n \"name\": \"hot_pepper\",\r\n \"unicode\": \"1f336\",\r\n \"shortname\": \":hot_pepper:\",\r\n \"code_decimal\": \"🌶\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1469\"\r\n },\r\n // {\r\n // \"name\": \"cucumber\",\r\n // \"unicode\": \"1f952\",\r\n // \"shortname\": \":cucumber:\",\r\n // \"code_decimal\": \"🥒\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1470\"\r\n // },\r\n {\r\n \"name\": \"mushroom\",\r\n \"unicode\": \"1f344\",\r\n \"shortname\": \":mushroom:\",\r\n \"code_decimal\": \"🍄\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1471\"\r\n },\r\n // {\r\n // \"name\": \"peanuts\",\r\n // \"unicode\": \"1f95c\",\r\n // \"shortname\": \":peanuts:\",\r\n // \"code_decimal\": \"🥜\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1472\"\r\n // },\r\n // {\r\n // \"name\": \"chestnut\",\r\n // \"unicode\": \"1f330\",\r\n // \"shortname\": \":chestnut:\",\r\n // \"code_decimal\": \"🌰\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1473\"\r\n // },\r\n {\r\n \"name\": \"bread\",\r\n \"unicode\": \"1f35e\",\r\n \"shortname\": \":bread:\",\r\n \"code_decimal\": \"🍞\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1474\"\r\n },\r\n // {\r\n // \"name\": \"croissant\",\r\n // \"unicode\": \"1f950\",\r\n // \"shortname\": \":croissant:\",\r\n // \"code_decimal\": \"🥐\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1475\"\r\n // },\r\n // {\r\n // \"name\": \"french_bread\",\r\n // \"unicode\": \"1f956\",\r\n // \"shortname\": \":french_bread:\",\r\n // \"code_decimal\": \"🥖\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1476\"\r\n // },\r\n // {\r\n // \"name\": \"pancakes\",\r\n // \"unicode\": \"1f95e\",\r\n // \"shortname\": \":pancakes:\",\r\n // \"code_decimal\": \"🥞\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1477\"\r\n // },\r\n // {\r\n // \"name\": \"cheese\",\r\n // \"unicode\": \"1f9c0\",\r\n // \"shortname\": \":cheese:\",\r\n // \"code_decimal\": \"🧀\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1478\"\r\n // },\r\n {\r\n \"name\": \"meat_on_bone\",\r\n \"unicode\": \"1f356\",\r\n \"shortname\": \":meat_on_bone:\",\r\n \"code_decimal\": \"🍖\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1479\"\r\n },\r\n {\r\n \"name\": \"poultry_leg\",\r\n \"unicode\": \"1f357\",\r\n \"shortname\": \":poultry_leg:\",\r\n \"code_decimal\": \"🍗\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1480\"\r\n },\r\n // {\r\n // \"name\": \"bacon\",\r\n // \"unicode\": \"1f953\",\r\n // \"shortname\": \":bacon:\",\r\n // \"code_decimal\": \"🥓\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1481\"\r\n // },\r\n {\r\n \"name\": \"hamburger\",\r\n \"unicode\": \"1f354\",\r\n \"shortname\": \":hamburger:\",\r\n \"code_decimal\": \"🍔\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1482\"\r\n },\r\n {\r\n \"name\": \"fries\",\r\n \"unicode\": \"1f35f\",\r\n \"shortname\": \":fries:\",\r\n \"code_decimal\": \"🍟\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1483\"\r\n },\r\n {\r\n \"name\": \"pizza\",\r\n \"unicode\": \"1f355\",\r\n \"shortname\": \":pizza:\",\r\n \"code_decimal\": \"🍕\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1484\"\r\n },\r\n {\r\n \"name\": \"hotdog\",\r\n \"unicode\": \"1f32d\",\r\n \"shortname\": \":hotdog:\",\r\n \"code_decimal\": \"🌭\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1485\"\r\n },\r\n {\r\n \"name\": \"taco\",\r\n \"unicode\": \"1f32e\",\r\n \"shortname\": \":taco:\",\r\n \"code_decimal\": \"🌮\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1486\"\r\n },\r\n {\r\n \"name\": \"burrito\",\r\n \"unicode\": \"1f32f\",\r\n \"shortname\": \":burrito:\",\r\n \"code_decimal\": \"🌯\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1487\"\r\n },\r\n // {\r\n // \"name\": \"stuffed_flatbread\",\r\n // \"unicode\": \"1f959\",\r\n // \"shortname\": \":stuffed_flatbread:\",\r\n // \"code_decimal\": \"🥙\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1488\"\r\n // },\r\n {\r\n \"name\": \"egg\",\r\n \"unicode\": \"1f95a\",\r\n \"shortname\": \":egg:\",\r\n \"code_decimal\": \"🥚\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1489\"\r\n },\r\n // {\r\n // \"name\": \"cooking\",\r\n // \"unicode\": \"1f373\",\r\n // \"shortname\": \":cooking:\",\r\n // \"code_decimal\": \"🍳\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1490\"\r\n // },\r\n // {\r\n // \"name\": \"shallow_pan_of_food\",\r\n // \"unicode\": \"1f958\",\r\n // \"shortname\": \":shallow_pan_of_food:\",\r\n // \"code_decimal\": \"🥘\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1491\"\r\n // },\r\n {\r\n \"name\": \"stew\",\r\n \"unicode\": \"1f372\",\r\n \"shortname\": \":stew:\",\r\n \"code_decimal\": \"🍲\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1492\"\r\n },\r\n // {\r\n // \"name\": \"salad\",\r\n // \"unicode\": \"1f957\",\r\n // \"shortname\": \":salad:\",\r\n // \"code_decimal\": \"🥗\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1493\"\r\n // },\r\n {\r\n \"name\": \"popcorn\",\r\n \"unicode\": \"1f37f\",\r\n \"shortname\": \":popcorn:\",\r\n \"code_decimal\": \"🍿\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1494\"\r\n },\r\n {\r\n \"name\": \"bento\",\r\n \"unicode\": \"1f371\",\r\n \"shortname\": \":bento:\",\r\n \"code_decimal\": \"🍱\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1495\"\r\n },\r\n {\r\n \"name\": \"rice_cracker\",\r\n \"unicode\": \"1f358\",\r\n \"shortname\": \":rice_cracker:\",\r\n \"code_decimal\": \"🍘\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1496\"\r\n },\r\n {\r\n \"name\": \"rice_ball\",\r\n \"unicode\": \"1f359\",\r\n \"shortname\": \":rice_ball:\",\r\n \"code_decimal\": \"🍙\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1497\"\r\n },\r\n {\r\n \"name\": \"rice\",\r\n \"unicode\": \"1f35a\",\r\n \"shortname\": \":rice:\",\r\n \"code_decimal\": \"🍚\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1498\"\r\n },\r\n {\r\n \"name\": \"curry\",\r\n \"unicode\": \"1f35b\",\r\n \"shortname\": \":curry:\",\r\n \"code_decimal\": \"🍛\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1499\"\r\n },\r\n {\r\n \"name\": \"ramen\",\r\n \"unicode\": \"1f35c\",\r\n \"shortname\": \":ramen:\",\r\n \"code_decimal\": \"🍜\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1500\"\r\n },\r\n {\r\n \"name\": \"spaghetti\",\r\n \"unicode\": \"1f35d\",\r\n \"shortname\": \":spaghetti:\",\r\n \"code_decimal\": \"🍝\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1501\"\r\n },\r\n {\r\n \"name\": \"sweet_potato\",\r\n \"unicode\": \"1f360\",\r\n \"shortname\": \":sweet_potato:\",\r\n \"code_decimal\": \"🍠\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1502\"\r\n },\r\n {\r\n \"name\": \"oden\",\r\n \"unicode\": \"1f362\",\r\n \"shortname\": \":oden:\",\r\n \"code_decimal\": \"🍢\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1503\"\r\n },\r\n {\r\n \"name\": \"sushi\",\r\n \"unicode\": \"1f363\",\r\n \"shortname\": \":sushi:\",\r\n \"code_decimal\": \"🍣\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1504\"\r\n },\r\n {\r\n \"name\": \"fried_shrimp\",\r\n \"unicode\": \"1f364\",\r\n \"shortname\": \":fried_shrimp:\",\r\n \"code_decimal\": \"🍤\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1505\"\r\n },\r\n {\r\n \"name\": \"fish_cake\",\r\n \"unicode\": \"1f365\",\r\n \"shortname\": \":fish_cake:\",\r\n \"code_decimal\": \"🍥\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1506\"\r\n },\r\n {\r\n \"name\": \"dango\",\r\n \"unicode\": \"1f361\",\r\n \"shortname\": \":dango:\",\r\n \"code_decimal\": \"🍡\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1507\"\r\n },\r\n {\r\n \"name\": \"icecream\",\r\n \"unicode\": \"1f366\",\r\n \"shortname\": \":icecream:\",\r\n \"code_decimal\": \"🍦\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1508\"\r\n },\r\n {\r\n \"name\": \"shaved_ice\",\r\n \"unicode\": \"1f367\",\r\n \"shortname\": \":shaved_ice:\",\r\n \"code_decimal\": \"🍧\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1509\"\r\n },\r\n {\r\n \"name\": \"ice_cream\",\r\n \"unicode\": \"1f368\",\r\n \"shortname\": \":ice_cream:\",\r\n \"code_decimal\": \"🍨\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1510\"\r\n },\r\n {\r\n \"name\": \"doughnut\",\r\n \"unicode\": \"1f369\",\r\n \"shortname\": \":doughnut:\",\r\n \"code_decimal\": \"🍩\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1511\"\r\n },\r\n {\r\n \"name\": \"cookie\",\r\n \"unicode\": \"1f36a\",\r\n \"shortname\": \":cookie:\",\r\n \"code_decimal\": \"🍪\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1512\"\r\n },\r\n {\r\n \"name\": \"birthday\",\r\n \"unicode\": \"1f382\",\r\n \"shortname\": \":birthday:\",\r\n \"code_decimal\": \"🎂\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1513\"\r\n },\r\n {\r\n \"name\": \"cake\",\r\n \"unicode\": \"1f370\",\r\n \"shortname\": \":cake:\",\r\n \"code_decimal\": \"🍰\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1514\"\r\n },\r\n {\r\n \"name\": \"chocolate_bar\",\r\n \"unicode\": \"1f36b\",\r\n \"shortname\": \":chocolate_bar:\",\r\n \"code_decimal\": \"🍫\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1515\"\r\n },\r\n {\r\n \"name\": \"candy\",\r\n \"unicode\": \"1f36c\",\r\n \"shortname\": \":candy:\",\r\n \"code_decimal\": \"🍬\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1516\"\r\n },\r\n {\r\n \"name\": \"lollipop\",\r\n \"unicode\": \"1f36d\",\r\n \"shortname\": \":lollipop:\",\r\n \"code_decimal\": \"🍭\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1517\"\r\n },\r\n {\r\n \"name\": \"custard\",\r\n \"unicode\": \"1f36e\",\r\n \"shortname\": \":custard:\",\r\n \"code_decimal\": \"🍮\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1518\"\r\n },\r\n {\r\n \"name\": \"honey_pot\",\r\n \"unicode\": \"1f36f\",\r\n \"shortname\": \":honey_pot:\",\r\n \"code_decimal\": \"🍯\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1519\"\r\n },\r\n {\r\n \"name\": \"baby_bottle\",\r\n \"unicode\": \"1f37c\",\r\n \"shortname\": \":baby_bottle:\",\r\n \"code_decimal\": \"🍼\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1520\"\r\n },\r\n // {\r\n // \"name\": \"milk\",\r\n // \"unicode\": \"1f95b\",\r\n // \"shortname\": \":milk:\",\r\n // \"code_decimal\": \"🥛\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1521\"\r\n // },\r\n {\r\n \"name\": \"coffee\",\r\n \"unicode\": \"2615\",\r\n \"shortname\": \":coffee:\",\r\n \"code_decimal\": \"☕\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1522\"\r\n },\r\n {\r\n \"name\": \"tea\",\r\n \"unicode\": \"1f375\",\r\n \"shortname\": \":tea:\",\r\n \"code_decimal\": \"🍵\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1523\"\r\n },\r\n {\r\n \"name\": \"sake\",\r\n \"unicode\": \"1f376\",\r\n \"shortname\": \":sake:\",\r\n \"code_decimal\": \"🍶\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1524\"\r\n },\r\n {\r\n \"name\": \"champagne\",\r\n \"unicode\": \"1f37e\",\r\n \"shortname\": \":champagne:\",\r\n \"code_decimal\": \"🍾\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1525\"\r\n },\r\n {\r\n \"name\": \"wine_glass\",\r\n \"unicode\": \"1f377\",\r\n \"shortname\": \":wine_glass:\",\r\n \"code_decimal\": \"🍷\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1526\"\r\n },\r\n {\r\n \"name\": \"cocktail\",\r\n \"unicode\": \"1f378\",\r\n \"shortname\": \":cocktail:\",\r\n \"code_decimal\": \"🍸\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1527\"\r\n },\r\n {\r\n \"name\": \"tropical_drink\",\r\n \"unicode\": \"1f379\",\r\n \"shortname\": \":tropical_drink:\",\r\n \"code_decimal\": \"🍹\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1528\"\r\n },\r\n {\r\n \"name\": \"beer\",\r\n \"unicode\": \"1f37a\",\r\n \"shortname\": \":beer:\",\r\n \"code_decimal\": \"🍺\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1529\"\r\n },\r\n {\r\n \"name\": \"beers\",\r\n \"unicode\": \"1f37b\",\r\n \"shortname\": \":beers:\",\r\n \"code_decimal\": \"🍻\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1530\"\r\n },\r\n // {\r\n // \"name\": \"champagne_glass\",\r\n // \"unicode\": \"1f942\",\r\n // \"shortname\": \":champagne_glass:\",\r\n // \"code_decimal\": \"🥂\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1531\"\r\n // },\r\n // {\r\n // \"name\": \"tumbler_glass\",\r\n // \"unicode\": \"1f943\",\r\n // \"shortname\": \":tumbler_glass:\",\r\n // \"code_decimal\": \"🥃\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1532\"\r\n // },\r\n // {\r\n // \"name\": \"fork_knife_plate\",\r\n // \"unicode\": \"1f37d\",\r\n // \"shortname\": \":fork_knife_plate:\",\r\n // \"code_decimal\": \"🍽\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1533\"\r\n // },\r\n {\r\n \"name\": \"fork_and_knife\",\r\n \"unicode\": \"1f374\",\r\n \"shortname\": \":fork_and_knife:\",\r\n \"code_decimal\": \"🍴\",\r\n \"category\": \"d\",\r\n \"emoji_order\": \"1534\"\r\n },\r\n // {\r\n // \"name\": \"spoon\",\r\n // \"unicode\": \"1f944\",\r\n // \"shortname\": \":spoon:\",\r\n // \"code_decimal\": \"🥄\",\r\n // \"category\": \"d\",\r\n // \"emoji_order\": \"1535\"\r\n // },\r\n // {\r\n // \"name\": \"knife\",\r\n // \"unicode\": \"1f52a\",\r\n // \"shortname\": \":knife:\",\r\n // \"code_decimal\": \"🔪\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1536\"\r\n // },\r\n {\r\n \"name\": \"amphora\",\r\n \"unicode\": \"1f3fa\",\r\n \"shortname\": \":amphora:\",\r\n \"code_decimal\": \"🏺\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1537\"\r\n },\r\n {\r\n \"name\": \"earth_africa\",\r\n \"unicode\": \"1f30d\",\r\n \"shortname\": \":earth_africa:\",\r\n \"code_decimal\": \"🌍\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1538\"\r\n },\r\n {\r\n \"name\": \"earth_americas\",\r\n \"unicode\": \"1f30e\",\r\n \"shortname\": \":earth_americas:\",\r\n \"code_decimal\": \"🌎\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1539\"\r\n },\r\n {\r\n \"name\": \"earth_asia\",\r\n \"unicode\": \"1f30f\",\r\n \"shortname\": \":earth_asia:\",\r\n \"code_decimal\": \"🌏\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1540\"\r\n },\r\n {\r\n \"name\": \"globe_with_meridians\",\r\n \"unicode\": \"1f310\",\r\n \"shortname\": \":globe_with_meridians:\",\r\n \"code_decimal\": \"🌐\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1541\"\r\n },\r\n // {\r\n // \"name\": \"map\",\r\n // \"unicode\": \"1f5fa\",\r\n // \"shortname\": \":map:\",\r\n // \"code_decimal\": \"🗺\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1542\"\r\n // },\r\n {\r\n \"name\": \"japan\",\r\n \"unicode\": \"1f5fe\",\r\n \"shortname\": \":japan:\",\r\n \"code_decimal\": \"🗾\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1543\"\r\n },\r\n // {\r\n // \"name\": \"mountain_snow\",\r\n // \"unicode\": \"1f3d4\",\r\n // \"shortname\": \":mountain_snow:\",\r\n // \"code_decimal\": \"🏔\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1544\"\r\n // },\r\n {\r\n \"name\": \"mountain\",\r\n \"unicode\": \"26f0\",\r\n \"shortname\": \":mountain:\",\r\n \"code_decimal\": \"⛰\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1545\"\r\n },\r\n {\r\n \"name\": \"volcano\",\r\n \"unicode\": \"1f30b\",\r\n \"shortname\": \":volcano:\",\r\n \"code_decimal\": \"🌋\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1546\"\r\n },\r\n {\r\n \"name\": \"mount_fuji\",\r\n \"unicode\": \"1f5fb\",\r\n \"shortname\": \":mount_fuji:\",\r\n \"code_decimal\": \"🗻\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1547\"\r\n },\r\n {\r\n \"name\": \"camping\",\r\n \"unicode\": \"1f3d5\",\r\n \"shortname\": \":camping:\",\r\n \"code_decimal\": \"🏕\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1548\"\r\n },\r\n // {\r\n // \"name\": \"beach\",\r\n // \"unicode\": \"1f3d6\",\r\n // \"shortname\": \":beach:\",\r\n // \"code_decimal\": \"🏖\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1549\"\r\n // },\r\n {\r\n \"name\": \"desert\",\r\n \"unicode\": \"1f3dc\",\r\n \"shortname\": \":desert:\",\r\n \"code_decimal\": \"🏜\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1550\"\r\n },\r\n // {\r\n // \"name\": \"island\",\r\n // \"unicode\": \"1f3dd\",\r\n // \"shortname\": \":island:\",\r\n // \"code_decimal\": \"🏝\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1551\"\r\n // },\r\n // {\r\n // \"name\": \"park\",\r\n // \"unicode\": \"1f3de\",\r\n // \"shortname\": \":park:\",\r\n // \"code_decimal\": \"🏞\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1552\"\r\n // },\r\n {\r\n \"name\": \"stadium\",\r\n \"unicode\": \"1f3df\",\r\n \"shortname\": \":stadium:\",\r\n \"code_decimal\": \"🏟\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1553\"\r\n },\r\n {\r\n \"name\": \"classical_building\",\r\n \"unicode\": \"1f3db\",\r\n \"shortname\": \":classical_building:\",\r\n \"code_decimal\": \"🏛\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1554\"\r\n },\r\n // {\r\n // \"name\": \"construction_site\",\r\n // \"unicode\": \"1f3d7\",\r\n // \"shortname\": \":construction_site:\",\r\n // \"code_decimal\": \"🏗\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1555\"\r\n // },\r\n // {\r\n // \"name\": \"homes\",\r\n // \"unicode\": \"1f3d8\",\r\n // \"shortname\": \":homes:\",\r\n // \"code_decimal\": \"🏘\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1556\"\r\n // },\r\n {\r\n \"name\": \"cityscape\",\r\n \"unicode\": \"1f3d9\",\r\n \"shortname\": \":cityscape:\",\r\n \"code_decimal\": \"🏙\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1557\"\r\n },\r\n // {\r\n // \"name\": \"house_abandoned\",\r\n // \"unicode\": \"1f3da\",\r\n // \"shortname\": \":house_abandoned:\",\r\n // \"code_decimal\": \"🏚\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1558\"\r\n // },\r\n {\r\n \"name\": \"house\",\r\n \"unicode\": \"1f3e0\",\r\n \"shortname\": \":house:\",\r\n \"code_decimal\": \"🏠\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1559\"\r\n },\r\n {\r\n \"name\": \"house_with_garden\",\r\n \"unicode\": \"1f3e1\",\r\n \"shortname\": \":house_with_garden:\",\r\n \"code_decimal\": \"🏡\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1560\"\r\n },\r\n {\r\n \"name\": \"office\",\r\n \"unicode\": \"1f3e2\",\r\n \"shortname\": \":office:\",\r\n \"code_decimal\": \"🏢\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1561\"\r\n },\r\n {\r\n \"name\": \"post_office\",\r\n \"unicode\": \"1f3e3\",\r\n \"shortname\": \":post_office:\",\r\n \"code_decimal\": \"🏣\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1562\"\r\n },\r\n {\r\n \"name\": \"european_post_office\",\r\n \"unicode\": \"1f3e4\",\r\n \"shortname\": \":european_post_office:\",\r\n \"code_decimal\": \"🏤\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1563\"\r\n },\r\n {\r\n \"name\": \"hospital\",\r\n \"unicode\": \"1f3e5\",\r\n \"shortname\": \":hospital:\",\r\n \"code_decimal\": \"🏥\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1564\"\r\n },\r\n {\r\n \"name\": \"bank\",\r\n \"unicode\": \"1f3e6\",\r\n \"shortname\": \":bank:\",\r\n \"code_decimal\": \"🏦\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1565\"\r\n },\r\n {\r\n \"name\": \"hotel\",\r\n \"unicode\": \"1f3e8\",\r\n \"shortname\": \":hotel:\",\r\n \"code_decimal\": \"🏨\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1566\"\r\n },\r\n {\r\n \"name\": \"love_hotel\",\r\n \"unicode\": \"1f3e9\",\r\n \"shortname\": \":love_hotel:\",\r\n \"code_decimal\": \"🏩\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1567\"\r\n },\r\n {\r\n \"name\": \"convenience_store\",\r\n \"unicode\": \"1f3ea\",\r\n \"shortname\": \":convenience_store:\",\r\n \"code_decimal\": \"🏪\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1568\"\r\n },\r\n {\r\n \"name\": \"school\",\r\n \"unicode\": \"1f3eb\",\r\n \"shortname\": \":school:\",\r\n \"code_decimal\": \"🏫\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1569\"\r\n },\r\n {\r\n \"name\": \"department_store\",\r\n \"unicode\": \"1f3ec\",\r\n \"shortname\": \":department_store:\",\r\n \"code_decimal\": \"🏬\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1570\"\r\n },\r\n {\r\n \"name\": \"factory\",\r\n \"unicode\": \"1f3ed\",\r\n \"shortname\": \":factory:\",\r\n \"code_decimal\": \"🏭\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1571\"\r\n },\r\n {\r\n \"name\": \"japanese_castle\",\r\n \"unicode\": \"1f3ef\",\r\n \"shortname\": \":japanese_castle:\",\r\n \"code_decimal\": \"🏯\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1572\"\r\n },\r\n {\r\n \"name\": \"european_castle\",\r\n \"unicode\": \"1f3f0\",\r\n \"shortname\": \":european_castle:\",\r\n \"code_decimal\": \"🏰\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1573\"\r\n },\r\n {\r\n \"name\": \"wedding\",\r\n \"unicode\": \"1f492\",\r\n \"shortname\": \":wedding:\",\r\n \"code_decimal\": \"💒\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1574\"\r\n },\r\n {\r\n \"name\": \"tokyo_tower\",\r\n \"unicode\": \"1f5fc\",\r\n \"shortname\": \":tokyo_tower:\",\r\n \"code_decimal\": \"🗼\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1575\"\r\n },\r\n {\r\n \"name\": \"statue_of_liberty\",\r\n \"unicode\": \"1f5fd\",\r\n \"shortname\": \":statue_of_liberty:\",\r\n \"code_decimal\": \"🗽\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1576\"\r\n },\r\n {\r\n \"name\": \"church\",\r\n \"unicode\": \"26ea\",\r\n \"shortname\": \":church:\",\r\n \"code_decimal\": \"⛪\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1577\"\r\n },\r\n {\r\n \"name\": \"mosque\",\r\n \"unicode\": \"1f54c\",\r\n \"shortname\": \":mosque:\",\r\n \"code_decimal\": \"🕌\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1578\"\r\n },\r\n {\r\n \"name\": \"synagogue\",\r\n \"unicode\": \"1f54d\",\r\n \"shortname\": \":synagogue:\",\r\n \"code_decimal\": \"🕍\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1579\"\r\n },\r\n {\r\n \"name\": \"shinto_shrine\",\r\n \"unicode\": \"26e9\",\r\n \"shortname\": \":shinto_shrine:\",\r\n \"code_decimal\": \"⛩\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1580\"\r\n },\r\n {\r\n \"name\": \"kaaba\",\r\n \"unicode\": \"1f54b\",\r\n \"shortname\": \":kaaba:\",\r\n \"code_decimal\": \"🕋\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1581\"\r\n },\r\n {\r\n \"name\": \"fountain\",\r\n \"unicode\": \"26f2\",\r\n \"shortname\": \":fountain:\",\r\n \"code_decimal\": \"⛲\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1582\"\r\n },\r\n {\r\n \"name\": \"tent\",\r\n \"unicode\": \"26fa\",\r\n \"shortname\": \":tent:\",\r\n \"code_decimal\": \"⛺\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1583\"\r\n },\r\n {\r\n \"name\": \"foggy\",\r\n \"unicode\": \"1f301\",\r\n \"shortname\": \":foggy:\",\r\n \"code_decimal\": \"🌁\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1584\"\r\n },\r\n {\r\n \"name\": \"night_with_stars\",\r\n \"unicode\": \"1f303\",\r\n \"shortname\": \":night_with_stars:\",\r\n \"code_decimal\": \"🌃\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1585\"\r\n },\r\n {\r\n \"name\": \"sunrise_over_mountains\",\r\n \"unicode\": \"1f304\",\r\n \"shortname\": \":sunrise_over_mountains:\",\r\n \"code_decimal\": \"🌄\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1586\"\r\n },\r\n {\r\n \"name\": \"sunrise\",\r\n \"unicode\": \"1f305\",\r\n \"shortname\": \":sunrise:\",\r\n \"code_decimal\": \"🌅\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1587\"\r\n },\r\n // {\r\n // \"name\": \"city_dusk\",\r\n // \"unicode\": \"1f306\",\r\n // \"shortname\": \":city_dusk:\",\r\n // \"code_decimal\": \"🌆\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1588\"\r\n // },\r\n {\r\n \"name\": \"city_sunset\",\r\n \"unicode\": \"1f307\",\r\n \"shortname\": \":city_sunset:\",\r\n \"code_decimal\": \"🌇\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1589\"\r\n },\r\n {\r\n \"name\": \"bridge_at_night\",\r\n \"unicode\": \"1f309\",\r\n \"shortname\": \":bridge_at_night:\",\r\n \"code_decimal\": \"🌉\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1590\"\r\n },\r\n {\r\n \"name\": \"hotsprings\",\r\n \"unicode\": \"2668\",\r\n \"shortname\": \":hotsprings:\",\r\n \"code_decimal\": \"♨\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1591\"\r\n },\r\n {\r\n \"name\": \"milky_way\",\r\n \"unicode\": \"1f30c\",\r\n \"shortname\": \":milky_way:\",\r\n \"code_decimal\": \"🌌\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1592\"\r\n },\r\n {\r\n \"name\": \"carousel_horse\",\r\n \"unicode\": \"1f3a0\",\r\n \"shortname\": \":carousel_horse:\",\r\n \"code_decimal\": \"🎠\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1593\"\r\n },\r\n {\r\n \"name\": \"ferris_wheel\",\r\n \"unicode\": \"1f3a1\",\r\n \"shortname\": \":ferris_wheel:\",\r\n \"code_decimal\": \"🎡\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1594\"\r\n },\r\n {\r\n \"name\": \"roller_coaster\",\r\n \"unicode\": \"1f3a2\",\r\n \"shortname\": \":roller_coaster:\",\r\n \"code_decimal\": \"🎢\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1595\"\r\n },\r\n {\r\n \"name\": \"barber\",\r\n \"unicode\": \"1f488\",\r\n \"shortname\": \":barber:\",\r\n \"code_decimal\": \"💈\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1596\"\r\n },\r\n {\r\n \"name\": \"circus_tent\",\r\n \"unicode\": \"1f3aa\",\r\n \"shortname\": \":circus_tent:\",\r\n \"code_decimal\": \"🎪\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1597\"\r\n },\r\n {\r\n \"name\": \"performing_arts\",\r\n \"unicode\": \"1f3ad\",\r\n \"shortname\": \":performing_arts:\",\r\n \"code_decimal\": \"🎭\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1598\"\r\n },\r\n // {\r\n // \"name\": \"frame_photo\",\r\n // \"unicode\": \"1f5bc\",\r\n // \"shortname\": \":frame_photo:\",\r\n // \"code_decimal\": \"🖼\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1599\"\r\n // },\r\n // {\r\n // \"name\": \"art\",\r\n // \"unicode\": \"1f3a8\",\r\n // \"shortname\": \":art:\",\r\n // \"code_decimal\": \"🎨\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1600\"\r\n // },\r\n {\r\n \"name\": \"slot_machine\",\r\n \"unicode\": \"1f3b0\",\r\n \"shortname\": \":slot_machine:\",\r\n \"code_decimal\": \"🎰\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1601\"\r\n },\r\n {\r\n \"name\": \"steam_locomotive\",\r\n \"unicode\": \"1f682\",\r\n \"shortname\": \":steam_locomotive:\",\r\n \"code_decimal\": \"🚂\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1602\"\r\n },\r\n {\r\n \"name\": \"railway_car\",\r\n \"unicode\": \"1f683\",\r\n \"shortname\": \":railway_car:\",\r\n \"code_decimal\": \"🚃\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1603\"\r\n },\r\n {\r\n \"name\": \"bullettrain_side\",\r\n \"unicode\": \"1f684\",\r\n \"shortname\": \":bullettrain_side:\",\r\n \"code_decimal\": \"🚄\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1604\"\r\n },\r\n {\r\n \"name\": \"bullettrain_front\",\r\n \"unicode\": \"1f685\",\r\n \"shortname\": \":bullettrain_front:\",\r\n \"code_decimal\": \"🚅\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1605\"\r\n },\r\n {\r\n \"name\": \"train2\",\r\n \"unicode\": \"1f686\",\r\n \"shortname\": \":train2:\",\r\n \"code_decimal\": \"🚆\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1606\"\r\n },\r\n {\r\n \"name\": \"metro\",\r\n \"unicode\": \"1f687\",\r\n \"shortname\": \":metro:\",\r\n \"code_decimal\": \"🚇\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1607\"\r\n },\r\n {\r\n \"name\": \"light_rail\",\r\n \"unicode\": \"1f688\",\r\n \"shortname\": \":light_rail:\",\r\n \"code_decimal\": \"🚈\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1608\"\r\n },\r\n {\r\n \"name\": \"station\",\r\n \"unicode\": \"1f689\",\r\n \"shortname\": \":station:\",\r\n \"code_decimal\": \"🚉\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1609\"\r\n },\r\n {\r\n \"name\": \"tram\",\r\n \"unicode\": \"1f68a\",\r\n \"shortname\": \":tram:\",\r\n \"code_decimal\": \"🚊\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1610\"\r\n },\r\n {\r\n \"name\": \"monorail\",\r\n \"unicode\": \"1f69d\",\r\n \"shortname\": \":monorail:\",\r\n \"code_decimal\": \"🚝\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1611\"\r\n },\r\n {\r\n \"name\": \"mountain_railway\",\r\n \"unicode\": \"1f69e\",\r\n \"shortname\": \":mountain_railway:\",\r\n \"code_decimal\": \"🚞\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1612\"\r\n },\r\n {\r\n \"name\": \"train\",\r\n \"unicode\": \"1f68b\",\r\n \"shortname\": \":train:\",\r\n \"code_decimal\": \"🚋\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1613\"\r\n },\r\n {\r\n \"name\": \"bus\",\r\n \"unicode\": \"1f68c\",\r\n \"shortname\": \":bus:\",\r\n \"code_decimal\": \"🚌\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1614\"\r\n },\r\n {\r\n \"name\": \"oncoming_bus\",\r\n \"unicode\": \"1f68d\",\r\n \"shortname\": \":oncoming_bus:\",\r\n \"code_decimal\": \"🚍\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1615\"\r\n },\r\n {\r\n \"name\": \"trolleybus\",\r\n \"unicode\": \"1f68e\",\r\n \"shortname\": \":trolleybus:\",\r\n \"code_decimal\": \"🚎\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1616\"\r\n },\r\n {\r\n \"name\": \"minibus\",\r\n \"unicode\": \"1f690\",\r\n \"shortname\": \":minibus:\",\r\n \"code_decimal\": \"🚐\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1617\"\r\n },\r\n {\r\n \"name\": \"ambulance\",\r\n \"unicode\": \"1f691\",\r\n \"shortname\": \":ambulance:\",\r\n \"code_decimal\": \"🚑\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1618\"\r\n },\r\n {\r\n \"name\": \"fire_engine\",\r\n \"unicode\": \"1f692\",\r\n \"shortname\": \":fire_engine:\",\r\n \"code_decimal\": \"🚒\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1619\"\r\n },\r\n {\r\n \"name\": \"police_car\",\r\n \"unicode\": \"1f693\",\r\n \"shortname\": \":police_car:\",\r\n \"code_decimal\": \"🚓\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1620\"\r\n },\r\n {\r\n \"name\": \"oncoming_police_car\",\r\n \"unicode\": \"1f694\",\r\n \"shortname\": \":oncoming_police_car:\",\r\n \"code_decimal\": \"🚔\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1621\"\r\n },\r\n {\r\n \"name\": \"taxi\",\r\n \"unicode\": \"1f695\",\r\n \"shortname\": \":taxi:\",\r\n \"code_decimal\": \"🚕\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1622\"\r\n },\r\n {\r\n \"name\": \"oncoming_taxi\",\r\n \"unicode\": \"1f696\",\r\n \"shortname\": \":oncoming_taxi:\",\r\n \"code_decimal\": \"🚖\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1623\"\r\n },\r\n // {\r\n // \"name\": \"red_car\",\r\n // \"unicode\": \"1f697\",\r\n // \"shortname\": \":red_car:\",\r\n // \"code_decimal\": \"🚗\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1624\"\r\n // },\r\n {\r\n \"name\": \"oncoming_automobile\",\r\n \"unicode\": \"1f698\",\r\n \"shortname\": \":oncoming_automobile:\",\r\n \"code_decimal\": \"🚘\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1625\"\r\n },\r\n {\r\n \"name\": \"blue_car\",\r\n \"unicode\": \"1f699\",\r\n \"shortname\": \":blue_car:\",\r\n \"code_decimal\": \"🚙\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1626\"\r\n },\r\n {\r\n \"name\": \"truck\",\r\n \"unicode\": \"1f69a\",\r\n \"shortname\": \":truck:\",\r\n \"code_decimal\": \"🚚\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1627\"\r\n },\r\n {\r\n \"name\": \"articulated_lorry\",\r\n \"unicode\": \"1f69b\",\r\n \"shortname\": \":articulated_lorry:\",\r\n \"code_decimal\": \"🚛\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1628\"\r\n },\r\n {\r\n \"name\": \"tractor\",\r\n \"unicode\": \"1f69c\",\r\n \"shortname\": \":tractor:\",\r\n \"code_decimal\": \"🚜\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1629\"\r\n },\r\n {\r\n \"name\": \"bike\",\r\n \"unicode\": \"1f6b2\",\r\n \"shortname\": \":bike:\",\r\n \"code_decimal\": \"🚲\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1630\"\r\n },\r\n // {\r\n // \"name\": \"scooter\",\r\n // \"unicode\": \"1f6f4\",\r\n // \"shortname\": \":scooter:\",\r\n // \"code_decimal\": \"🛴\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1631\"\r\n // },\r\n // {\r\n // \"name\": \"motor_scooter\",\r\n // \"unicode\": \"1f6f5\",\r\n // \"shortname\": \":motor_scooter:\",\r\n // \"code_decimal\": \"🛵\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1632\"\r\n // },\r\n {\r\n \"name\": \"busstop\",\r\n \"unicode\": \"1f68f\",\r\n \"shortname\": \":busstop:\",\r\n \"code_decimal\": \"🚏\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1633\"\r\n },\r\n {\r\n \"name\": \"motorway\",\r\n \"unicode\": \"1f6e3\",\r\n \"shortname\": \":motorway:\",\r\n \"code_decimal\": \"🛣\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1634\"\r\n },\r\n {\r\n \"name\": \"railway_track\",\r\n \"unicode\": \"1f6e4\",\r\n \"shortname\": \":railway_track:\",\r\n \"code_decimal\": \"🛤\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1635\"\r\n },\r\n {\r\n \"name\": \"fuelpump\",\r\n \"unicode\": \"26fd\",\r\n \"shortname\": \":fuelpump:\",\r\n \"code_decimal\": \"⛽\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1636\"\r\n },\r\n {\r\n \"name\": \"rotating_light\",\r\n \"unicode\": \"1f6a8\",\r\n \"shortname\": \":rotating_light:\",\r\n \"code_decimal\": \"🚨\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1637\"\r\n },\r\n {\r\n \"name\": \"traffic_light\",\r\n \"unicode\": \"1f6a5\",\r\n \"shortname\": \":traffic_light:\",\r\n \"code_decimal\": \"🚥\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1638\"\r\n },\r\n {\r\n \"name\": \"vertical_traffic_light\",\r\n \"unicode\": \"1f6a6\",\r\n \"shortname\": \":vertical_traffic_light:\",\r\n \"code_decimal\": \"🚦\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1639\"\r\n },\r\n {\r\n \"name\": \"construction\",\r\n \"unicode\": \"1f6a7\",\r\n \"shortname\": \":construction:\",\r\n \"code_decimal\": \"🚧\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1640\"\r\n },\r\n {\r\n \"name\": \"octagonal_sign\",\r\n \"unicode\": \"1f6d1\",\r\n \"shortname\": \":octagonal_sign:\",\r\n \"code_decimal\": \"🛑\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1641\"\r\n },\r\n {\r\n \"name\": \"anchor\",\r\n \"unicode\": \"2693\",\r\n \"shortname\": \":anchor:\",\r\n \"code_decimal\": \"⚓\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1642\"\r\n },\r\n // {\r\n // \"name\": \"sailboat\",\r\n // \"unicode\": \"26f5\",\r\n // \"shortname\": \":sailboat:\",\r\n // \"code_decimal\": \"⛵\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1643\"\r\n // },\r\n // {\r\n // \"name\": \"canoe\",\r\n // \"unicode\": \"1f6f6\",\r\n // \"shortname\": \":canoe:\",\r\n // \"code_decimal\": \"🛶\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1644\"\r\n // },\r\n {\r\n \"name\": \"speedboat\",\r\n \"unicode\": \"1f6a4\",\r\n \"shortname\": \":speedboat:\",\r\n \"code_decimal\": \"🚤\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1645\"\r\n },\r\n // {\r\n // \"name\": \"cruise_ship\",\r\n // \"unicode\": \"1f6f3\",\r\n // \"shortname\": \":cruise_ship:\",\r\n // \"code_decimal\": \"🛳\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1646\"\r\n // },\r\n {\r\n \"name\": \"ferry\",\r\n \"unicode\": \"26f4\",\r\n \"shortname\": \":ferry:\",\r\n \"code_decimal\": \"⛴\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1647\"\r\n },\r\n // {\r\n // \"name\": \"motorboat\",\r\n // \"unicode\": \"1f6e5\",\r\n // \"shortname\": \":motorboat:\",\r\n // \"code_decimal\": \"🛥\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1648\"\r\n // },\r\n {\r\n \"name\": \"ship\",\r\n \"unicode\": \"1f6a2\",\r\n \"shortname\": \":ship:\",\r\n \"code_decimal\": \"🚢\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1649\"\r\n },\r\n {\r\n \"name\": \"airplane\",\r\n \"unicode\": \"2708\",\r\n \"shortname\": \":airplane:\",\r\n \"code_decimal\": \"✈\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1650\"\r\n },\r\n // {\r\n // \"name\": \"airplane_small\",\r\n // \"unicode\": \"1f6e9\",\r\n // \"shortname\": \":airplane_small:\",\r\n // \"code_decimal\": \"🛩\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1651\"\r\n // },\r\n {\r\n \"name\": \"airplane_departure\",\r\n \"unicode\": \"1f6eb\",\r\n \"shortname\": \":airplane_departure:\",\r\n \"code_decimal\": \"🛫\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1652\"\r\n },\r\n {\r\n \"name\": \"airplane_arriving\",\r\n \"unicode\": \"1f6ec\",\r\n \"shortname\": \":airplane_arriving:\",\r\n \"code_decimal\": \"🛬\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1653\"\r\n },\r\n {\r\n \"name\": \"seat\",\r\n \"unicode\": \"1f4ba\",\r\n \"shortname\": \":seat:\",\r\n \"code_decimal\": \"💺\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1654\"\r\n },\r\n {\r\n \"name\": \"helicopter\",\r\n \"unicode\": \"1f681\",\r\n \"shortname\": \":helicopter:\",\r\n \"code_decimal\": \"🚁\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1655\"\r\n },\r\n {\r\n \"name\": \"suspension_railway\",\r\n \"unicode\": \"1f69f\",\r\n \"shortname\": \":suspension_railway:\",\r\n \"code_decimal\": \"🚟\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1656\"\r\n },\r\n {\r\n \"name\": \"mountain_cableway\",\r\n \"unicode\": \"1f6a0\",\r\n \"shortname\": \":mountain_cableway:\",\r\n \"code_decimal\": \"🚠\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1657\"\r\n },\r\n {\r\n \"name\": \"aerial_tramway\",\r\n \"unicode\": \"1f6a1\",\r\n \"shortname\": \":aerial_tramway:\",\r\n \"code_decimal\": \"🚡\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1658\"\r\n },\r\n {\r\n \"name\": \"rocket\",\r\n \"unicode\": \"1f680\",\r\n \"shortname\": \":rocket:\",\r\n \"code_decimal\": \"🚀\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1659\"\r\n },\r\n // {\r\n // \"name\": \"satellite_orbital\",\r\n // \"unicode\": \"1f6f0\",\r\n // \"shortname\": \":satellite_orbital:\",\r\n // \"code_decimal\": \"🛰\",\r\n // \"category\": \"t\",\r\n // \"emoji_order\": \"1660\"\r\n // },\r\n // {\r\n // \"name\": \"bellhop\",\r\n // \"unicode\": \"1f6ce\",\r\n // \"shortname\": \":bellhop:\",\r\n // \"code_decimal\": \"🛎\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1661\"\r\n // },\r\n {\r\n \"name\": \"door\",\r\n \"unicode\": \"1f6aa\",\r\n \"shortname\": \":door:\",\r\n \"code_decimal\": \"🚪\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1662\"\r\n },\r\n {\r\n \"name\": \"sleeping_accommodation\",\r\n \"unicode\": \"1f6cc\",\r\n \"shortname\": \":sleeping_accommodation:\",\r\n \"code_decimal\": \"🛌\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1663\"\r\n },\r\n {\r\n \"name\": \"bed\",\r\n \"unicode\": \"1f6cf\",\r\n \"shortname\": \":bed:\",\r\n \"code_decimal\": \"🛏\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1669\"\r\n },\r\n // {\r\n // \"name\": \"couch\",\r\n // \"unicode\": \"1f6cb\",\r\n // \"shortname\": \":couch:\",\r\n // \"code_decimal\": \"🛋\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1670\"\r\n // },\r\n {\r\n \"name\": \"toilet\",\r\n \"unicode\": \"1f6bd\",\r\n \"shortname\": \":toilet:\",\r\n \"code_decimal\": \"🚽\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1671\"\r\n },\r\n {\r\n \"name\": \"shower\",\r\n \"unicode\": \"1f6bf\",\r\n \"shortname\": \":shower:\",\r\n \"code_decimal\": \"🚿\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1672\"\r\n },\r\n {\r\n \"name\": \"bath\",\r\n \"unicode\": \"1f6c0\",\r\n \"shortname\": \":bath:\",\r\n \"code_decimal\": \"🛀\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1673\"\r\n },\r\n {\r\n \"name\": \"bathtub\",\r\n \"unicode\": \"1f6c1\",\r\n \"shortname\": \":bathtub:\",\r\n \"code_decimal\": \"🛁\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1679\"\r\n },\r\n {\r\n \"name\": \"hourglass\",\r\n \"unicode\": \"231b\",\r\n \"shortname\": \":hourglass:\",\r\n \"code_decimal\": \"⌛\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1680\"\r\n },\r\n {\r\n \"name\": \"hourglass_flowing_sand\",\r\n \"unicode\": \"23f3\",\r\n \"shortname\": \":hourglass_flowing_sand:\",\r\n \"code_decimal\": \"⏳\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1681\"\r\n },\r\n {\r\n \"name\": \"watch\",\r\n \"unicode\": \"231a\",\r\n \"shortname\": \":watch:\",\r\n \"code_decimal\": \"⌚\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1682\"\r\n },\r\n {\r\n \"name\": \"alarm_clock\",\r\n \"unicode\": \"23f0\",\r\n \"shortname\": \":alarm_clock:\",\r\n \"code_decimal\": \"⏰\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1683\"\r\n },\r\n {\r\n \"name\": \"stopwatch\",\r\n \"unicode\": \"23f1\",\r\n \"shortname\": \":stopwatch:\",\r\n \"code_decimal\": \"⏱\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1684\"\r\n },\r\n // {\r\n // \"name\": \"timer\",\r\n // \"unicode\": \"23f2\",\r\n // \"shortname\": \":timer:\",\r\n // \"code_decimal\": \"⏲\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1685\"\r\n // },\r\n // {\r\n // \"name\": \"clock\",\r\n // \"unicode\": \"1f570\",\r\n // \"shortname\": \":clock:\",\r\n // \"code_decimal\": \"🕰\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1686\"\r\n // },\r\n {\r\n \"name\": \"clock12\",\r\n \"unicode\": \"1f55b\",\r\n \"shortname\": \":clock12:\",\r\n \"code_decimal\": \"🕛\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1687\"\r\n },\r\n {\r\n \"name\": \"clock1230\",\r\n \"unicode\": \"1f567\",\r\n \"shortname\": \":clock1230:\",\r\n \"code_decimal\": \"🕧\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1688\"\r\n },\r\n {\r\n \"name\": \"clock1\",\r\n \"unicode\": \"1f550\",\r\n \"shortname\": \":clock1:\",\r\n \"code_decimal\": \"🕐\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1689\"\r\n },\r\n {\r\n \"name\": \"clock130\",\r\n \"unicode\": \"1f55c\",\r\n \"shortname\": \":clock130:\",\r\n \"code_decimal\": \"🕜\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1690\"\r\n },\r\n {\r\n \"name\": \"clock2\",\r\n \"unicode\": \"1f551\",\r\n \"shortname\": \":clock2:\",\r\n \"code_decimal\": \"🕑\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1691\"\r\n },\r\n {\r\n \"name\": \"clock230\",\r\n \"unicode\": \"1f55d\",\r\n \"shortname\": \":clock230:\",\r\n \"code_decimal\": \"🕝\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1692\"\r\n },\r\n {\r\n \"name\": \"clock3\",\r\n \"unicode\": \"1f552\",\r\n \"shortname\": \":clock3:\",\r\n \"code_decimal\": \"🕒\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1693\"\r\n },\r\n {\r\n \"name\": \"clock330\",\r\n \"unicode\": \"1f55e\",\r\n \"shortname\": \":clock330:\",\r\n \"code_decimal\": \"🕞\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1694\"\r\n },\r\n {\r\n \"name\": \"clock4\",\r\n \"unicode\": \"1f553\",\r\n \"shortname\": \":clock4:\",\r\n \"code_decimal\": \"🕓\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1695\"\r\n },\r\n {\r\n \"name\": \"clock430\",\r\n \"unicode\": \"1f55f\",\r\n \"shortname\": \":clock430:\",\r\n \"code_decimal\": \"🕟\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1696\"\r\n },\r\n {\r\n \"name\": \"clock5\",\r\n \"unicode\": \"1f554\",\r\n \"shortname\": \":clock5:\",\r\n \"code_decimal\": \"🕔\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1697\"\r\n },\r\n {\r\n \"name\": \"clock530\",\r\n \"unicode\": \"1f560\",\r\n \"shortname\": \":clock530:\",\r\n \"code_decimal\": \"🕠\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1698\"\r\n },\r\n {\r\n \"name\": \"clock6\",\r\n \"unicode\": \"1f555\",\r\n \"shortname\": \":clock6:\",\r\n \"code_decimal\": \"🕕\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1699\"\r\n },\r\n {\r\n \"name\": \"clock630\",\r\n \"unicode\": \"1f561\",\r\n \"shortname\": \":clock630:\",\r\n \"code_decimal\": \"🕡\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1700\"\r\n },\r\n {\r\n \"name\": \"clock7\",\r\n \"unicode\": \"1f556\",\r\n \"shortname\": \":clock7:\",\r\n \"code_decimal\": \"🕖\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1701\"\r\n },\r\n {\r\n \"name\": \"clock730\",\r\n \"unicode\": \"1f562\",\r\n \"shortname\": \":clock730:\",\r\n \"code_decimal\": \"🕢\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1702\"\r\n },\r\n {\r\n \"name\": \"clock8\",\r\n \"unicode\": \"1f557\",\r\n \"shortname\": \":clock8:\",\r\n \"code_decimal\": \"🕗\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1703\"\r\n },\r\n {\r\n \"name\": \"clock830\",\r\n \"unicode\": \"1f563\",\r\n \"shortname\": \":clock830:\",\r\n \"code_decimal\": \"🕣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1704\"\r\n },\r\n {\r\n \"name\": \"clock9\",\r\n \"unicode\": \"1f558\",\r\n \"shortname\": \":clock9:\",\r\n \"code_decimal\": \"🕘\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1705\"\r\n },\r\n {\r\n \"name\": \"clock930\",\r\n \"unicode\": \"1f564\",\r\n \"shortname\": \":clock930:\",\r\n \"code_decimal\": \"🕤\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1706\"\r\n },\r\n {\r\n \"name\": \"clock10\",\r\n \"unicode\": \"1f559\",\r\n \"shortname\": \":clock10:\",\r\n \"code_decimal\": \"🕙\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1707\"\r\n },\r\n {\r\n \"name\": \"clock1030\",\r\n \"unicode\": \"1f565\",\r\n \"shortname\": \":clock1030:\",\r\n \"code_decimal\": \"🕥\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1708\"\r\n },\r\n {\r\n \"name\": \"clock11\",\r\n \"unicode\": \"1f55a\",\r\n \"shortname\": \":clock11:\",\r\n \"code_decimal\": \"🕚\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1709\"\r\n },\r\n {\r\n \"name\": \"clock1130\",\r\n \"unicode\": \"1f566\",\r\n \"shortname\": \":clock1130:\",\r\n \"code_decimal\": \"🕦\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1710\"\r\n },\r\n {\r\n \"name\": \"new_moon\",\r\n \"unicode\": \"1f311\",\r\n \"shortname\": \":new_moon:\",\r\n \"code_decimal\": \"🌑\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1711\"\r\n },\r\n {\r\n \"name\": \"waxing_crescent_moon\",\r\n \"unicode\": \"1f312\",\r\n \"shortname\": \":waxing_crescent_moon:\",\r\n \"code_decimal\": \"🌒\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1712\"\r\n },\r\n {\r\n \"name\": \"first_quarter_moon\",\r\n \"unicode\": \"1f313\",\r\n \"shortname\": \":first_quarter_moon:\",\r\n \"code_decimal\": \"🌓\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1713\"\r\n },\r\n // {\r\n // \"name\": \"waxing_gibbous_moon\",\r\n // \"unicode\": \"1f314\",\r\n // \"shortname\": \":waxing_gibbous_moon:\",\r\n // \"code_decimal\": \"🌔\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1714\"\r\n // },\r\n {\r\n \"name\": \"full_moon\",\r\n \"unicode\": \"1f315\",\r\n \"shortname\": \":full_moon:\",\r\n \"code_decimal\": \"🌕\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1715\"\r\n },\r\n {\r\n \"name\": \"waning_gibbous_moon\",\r\n \"unicode\": \"1f316\",\r\n \"shortname\": \":waning_gibbous_moon:\",\r\n \"code_decimal\": \"🌖\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1716\"\r\n },\r\n {\r\n \"name\": \"last_quarter_moon\",\r\n \"unicode\": \"1f317\",\r\n \"shortname\": \":last_quarter_moon:\",\r\n \"code_decimal\": \"🌗\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1717\"\r\n },\r\n {\r\n \"name\": \"waning_crescent_moon\",\r\n \"unicode\": \"1f318\",\r\n \"shortname\": \":waning_crescent_moon:\",\r\n \"code_decimal\": \"🌘\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1718\"\r\n },\r\n {\r\n \"name\": \"crescent_moon\",\r\n \"unicode\": \"1f319\",\r\n \"shortname\": \":crescent_moon:\",\r\n \"code_decimal\": \"🌙\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1719\"\r\n },\r\n {\r\n \"name\": \"new_moon_with_face\",\r\n \"unicode\": \"1f31a\",\r\n \"shortname\": \":new_moon_with_face:\",\r\n \"code_decimal\": \"🌚\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1720\"\r\n },\r\n {\r\n \"name\": \"first_quarter_moon_with_face\",\r\n \"unicode\": \"1f31b\",\r\n \"shortname\": \":first_quarter_moon_with_face:\",\r\n \"code_decimal\": \"🌛\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1721\"\r\n },\r\n {\r\n \"name\": \"last_quarter_moon_with_face\",\r\n \"unicode\": \"1f31c\",\r\n \"shortname\": \":last_quarter_moon_with_face:\",\r\n \"code_decimal\": \"🌜\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1722\"\r\n },\r\n {\r\n \"name\": \"thermometer\",\r\n \"unicode\": \"1f321\",\r\n \"shortname\": \":thermometer:\",\r\n \"code_decimal\": \"🌡\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1723\"\r\n },\r\n {\r\n \"name\": \"sunny\",\r\n \"unicode\": \"2600\",\r\n \"shortname\": \":sunny:\",\r\n \"code_decimal\": \"☀\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1724\"\r\n },\r\n {\r\n \"name\": \"full_moon_with_face\",\r\n \"unicode\": \"1f31d\",\r\n \"shortname\": \":full_moon_with_face:\",\r\n \"code_decimal\": \"🌝\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1725\"\r\n },\r\n {\r\n \"name\": \"sun_with_face\",\r\n \"unicode\": \"1f31e\",\r\n \"shortname\": \":sun_with_face:\",\r\n \"code_decimal\": \"🌞\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1726\"\r\n },\r\n {\r\n \"name\": \"star\",\r\n \"unicode\": \"2b50\",\r\n \"shortname\": \":star:\",\r\n \"code_decimal\": \"⭐\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1727\"\r\n },\r\n {\r\n \"name\": \"star2\",\r\n \"unicode\": \"1f31f\",\r\n \"shortname\": \":star2:\",\r\n \"code_decimal\": \"🌟\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1728\"\r\n },\r\n {\r\n \"name\": \"stars\",\r\n \"unicode\": \"1f320\",\r\n \"shortname\": \":stars:\",\r\n \"code_decimal\": \"🌠\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1729\"\r\n },\r\n {\r\n \"name\": \"cloud\",\r\n \"unicode\": \"2601\",\r\n \"shortname\": \":cloud:\",\r\n \"code_decimal\": \"☁\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1730\"\r\n },\r\n {\r\n \"name\": \"partly_sunny\",\r\n \"unicode\": \"26c5\",\r\n \"shortname\": \":partly_sunny:\",\r\n \"code_decimal\": \"⛅\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1731\"\r\n },\r\n // {\r\n // \"name\": \"thunder_cloud_rain\",\r\n // \"unicode\": \"26c8\",\r\n // \"shortname\": \":thunder_cloud_rain:\",\r\n // \"code_decimal\": \"⛈\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1732\"\r\n // },\r\n // {\r\n // \"name\": \"white_sun_small_cloud\",\r\n // \"unicode\": \"1f324\",\r\n // \"shortname\": \":white_sun_small_cloud:\",\r\n // \"code_decimal\": \"🌤\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1733\"\r\n // },\r\n // {\r\n // \"name\": \"white_sun_cloud\",\r\n // \"unicode\": \"1f325\",\r\n // \"shortname\": \":white_sun_cloud:\",\r\n // \"code_decimal\": \"🌥\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1734\"\r\n // },\r\n // {\r\n // \"name\": \"white_sun_rain_cloud\",\r\n // \"unicode\": \"1f326\",\r\n // \"shortname\": \":white_sun_rain_cloud:\",\r\n // \"code_decimal\": \"🌦\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1735\"\r\n // },\r\n // {\r\n // \"name\": \"cloud_rain\",\r\n // \"unicode\": \"1f327\",\r\n // \"shortname\": \":cloud_rain:\",\r\n // \"code_decimal\": \"🌧\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1736\"\r\n // },\r\n // {\r\n // \"name\": \"cloud_snow\",\r\n // \"unicode\": \"1f328\",\r\n // \"shortname\": \":cloud_snow:\",\r\n // \"code_decimal\": \"🌨\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1737\"\r\n // },\r\n // {\r\n // \"name\": \"cloud_lightning\",\r\n // \"unicode\": \"1f329\",\r\n // \"shortname\": \":cloud_lightning:\",\r\n // \"code_decimal\": \"🌩\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1738\"\r\n // },\r\n // {\r\n // \"name\": \"cloud_tornado\",\r\n // \"unicode\": \"1f32a\",\r\n // \"shortname\": \":cloud_tornado:\",\r\n // \"code_decimal\": \"🌪\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1739\"\r\n // },\r\n {\r\n \"name\": \"fog\",\r\n \"unicode\": \"1f32b\",\r\n \"shortname\": \":fog:\",\r\n \"code_decimal\": \"🌫\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1740\"\r\n },\r\n {\r\n \"name\": \"wind_blowing_face\",\r\n \"unicode\": \"1f32c\",\r\n \"shortname\": \":wind_blowing_face:\",\r\n \"code_decimal\": \"🌬\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1741\"\r\n },\r\n {\r\n \"name\": \"cyclone\",\r\n \"unicode\": \"1f300\",\r\n \"shortname\": \":cyclone:\",\r\n \"code_decimal\": \"🌀\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1742\"\r\n },\r\n {\r\n \"name\": \"rainbow\",\r\n \"unicode\": \"1f308\",\r\n \"shortname\": \":rainbow:\",\r\n \"code_decimal\": \"🌈\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1743\"\r\n },\r\n {\r\n \"name\": \"closed_umbrella\",\r\n \"unicode\": \"1f302\",\r\n \"shortname\": \":closed_umbrella:\",\r\n \"code_decimal\": \"🌂\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1744\"\r\n },\r\n // {\r\n // \"name\": \"umbrella2\",\r\n // \"unicode\": \"2602\",\r\n // \"shortname\": \":umbrella2:\",\r\n // \"code_decimal\": \"☂\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1745\"\r\n // },\r\n {\r\n \"name\": \"umbrella\",\r\n \"unicode\": \"2614\",\r\n \"shortname\": \":umbrella:\",\r\n \"code_decimal\": \"☔\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1746\"\r\n },\r\n {\r\n \"name\": \"beach_umbrella\",\r\n \"unicode\": \"26f1\",\r\n \"shortname\": \":beach_umbrella:\",\r\n \"code_decimal\": \"⛱\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1747\"\r\n },\r\n {\r\n \"name\": \"zap\",\r\n \"unicode\": \"26a1\",\r\n \"shortname\": \":zap:\",\r\n \"code_decimal\": \"⚡\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1748\"\r\n },\r\n {\r\n \"name\": \"snowflake\",\r\n \"unicode\": \"2744\",\r\n \"shortname\": \":snowflake:\",\r\n \"code_decimal\": \"❄\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1749\"\r\n },\r\n // {\r\n // \"name\": \"snowman2\",\r\n // \"unicode\": \"2603\",\r\n // \"shortname\": \":snowman2:\",\r\n // \"code_decimal\": \"☃\",\r\n // \"category\": \"n\",\r\n // \"emoji_order\": \"1750\"\r\n // },\r\n {\r\n \"name\": \"snowman\",\r\n \"unicode\": \"26c4\",\r\n \"shortname\": \":snowman:\",\r\n \"code_decimal\": \"⛄\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1751\"\r\n },\r\n {\r\n \"name\": \"comet\",\r\n \"unicode\": \"2604\",\r\n \"shortname\": \":comet:\",\r\n \"code_decimal\": \"☄\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1752\"\r\n },\r\n {\r\n \"name\": \"fire\",\r\n \"unicode\": \"1f525\",\r\n \"shortname\": \":fire:\",\r\n \"code_decimal\": \"🔥\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1753\"\r\n },\r\n {\r\n \"name\": \"droplet\",\r\n \"unicode\": \"1f4a7\",\r\n \"shortname\": \":droplet:\",\r\n \"code_decimal\": \"💧\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1754\"\r\n },\r\n {\r\n \"name\": \"ocean\",\r\n \"unicode\": \"1f30a\",\r\n \"shortname\": \":ocean:\",\r\n \"code_decimal\": \"🌊\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1755\"\r\n },\r\n {\r\n \"name\": \"jack_o_lantern\",\r\n \"unicode\": \"1f383\",\r\n \"shortname\": \":jack_o_lantern:\",\r\n \"code_decimal\": \"🎃\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1756\"\r\n },\r\n {\r\n \"name\": \"christmas_tree\",\r\n \"unicode\": \"1f384\",\r\n \"shortname\": \":christmas_tree:\",\r\n \"code_decimal\": \"🎄\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1757\"\r\n },\r\n {\r\n \"name\": \"fireworks\",\r\n \"unicode\": \"1f386\",\r\n \"shortname\": \":fireworks:\",\r\n \"code_decimal\": \"🎆\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1758\"\r\n },\r\n {\r\n \"name\": \"sparkler\",\r\n \"unicode\": \"1f387\",\r\n \"shortname\": \":sparkler:\",\r\n \"code_decimal\": \"🎇\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1759\"\r\n },\r\n {\r\n \"name\": \"sparkles\",\r\n \"unicode\": \"2728\",\r\n \"shortname\": \":sparkles:\",\r\n \"code_decimal\": \"✨\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1760\"\r\n },\r\n {\r\n \"name\": \"balloon\",\r\n \"unicode\": \"1f388\",\r\n \"shortname\": \":balloon:\",\r\n \"code_decimal\": \"🎈\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1761\"\r\n },\r\n {\r\n \"name\": \"tada\",\r\n \"unicode\": \"1f389\",\r\n \"shortname\": \":tada:\",\r\n \"code_decimal\": \"🎉\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1762\"\r\n },\r\n {\r\n \"name\": \"confetti_ball\",\r\n \"unicode\": \"1f38a\",\r\n \"shortname\": \":confetti_ball:\",\r\n \"code_decimal\": \"🎊\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1763\"\r\n },\r\n {\r\n \"name\": \"tanabata_tree\",\r\n \"unicode\": \"1f38b\",\r\n \"shortname\": \":tanabata_tree:\",\r\n \"code_decimal\": \"🎋\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1764\"\r\n },\r\n {\r\n \"name\": \"bamboo\",\r\n \"unicode\": \"1f38d\",\r\n \"shortname\": \":bamboo:\",\r\n \"code_decimal\": \"🎍\",\r\n \"category\": \"n\",\r\n \"emoji_order\": \"1765\"\r\n },\r\n {\r\n \"name\": \"dolls\",\r\n \"unicode\": \"1f38e\",\r\n \"shortname\": \":dolls:\",\r\n \"code_decimal\": \"🎎\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1766\"\r\n },\r\n {\r\n \"name\": \"flags\",\r\n \"unicode\": \"1f38f\",\r\n \"shortname\": \":flags:\",\r\n \"code_decimal\": \"🎏\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1767\"\r\n },\r\n {\r\n \"name\": \"wind_chime\",\r\n \"unicode\": \"1f390\",\r\n \"shortname\": \":wind_chime:\",\r\n \"code_decimal\": \"🎐\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1768\"\r\n },\r\n {\r\n \"name\": \"rice_scene\",\r\n \"unicode\": \"1f391\",\r\n \"shortname\": \":rice_scene:\",\r\n \"code_decimal\": \"🎑\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"1769\"\r\n },\r\n {\r\n \"name\": \"ribbon\",\r\n \"unicode\": \"1f380\",\r\n \"shortname\": \":ribbon:\",\r\n \"code_decimal\": \"🎀\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1770\"\r\n },\r\n {\r\n \"name\": \"gift\",\r\n \"unicode\": \"1f381\",\r\n \"shortname\": \":gift:\",\r\n \"code_decimal\": \"🎁\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1771\"\r\n },\r\n {\r\n \"name\": \"reminder_ribbon\",\r\n \"unicode\": \"1f397\",\r\n \"shortname\": \":reminder_ribbon:\",\r\n \"code_decimal\": \"🎗\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1772\"\r\n },\r\n // {\r\n // \"name\": \"tickets\",\r\n // \"unicode\": \"1f39f\",\r\n // \"shortname\": \":tickets:\",\r\n // \"code_decimal\": \"🎟\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1773\"\r\n // },\r\n {\r\n \"name\": \"ticket\",\r\n \"unicode\": \"1f3ab\",\r\n \"shortname\": \":ticket:\",\r\n \"code_decimal\": \"🎫\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1774\"\r\n },\r\n // {\r\n // \"name\": \"military_medal\",\r\n // \"unicode\": \"1f396\",\r\n // \"shortname\": \":military_medal:\",\r\n // \"code_decimal\": \"🎖\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1775\"\r\n // },\r\n {\r\n \"name\": \"trophy\",\r\n \"unicode\": \"1f3c6\",\r\n \"shortname\": \":trophy:\",\r\n \"code_decimal\": \"🏆\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1776\"\r\n },\r\n {\r\n \"name\": \"medal\",\r\n \"unicode\": \"1f3c5\",\r\n \"shortname\": \":medal:\",\r\n \"code_decimal\": \"🏅\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1777\"\r\n },\r\n // {\r\n // \"name\": \"first_place\",\r\n // \"unicode\": \"1f947\",\r\n // \"shortname\": \":first_place:\",\r\n // \"code_decimal\": \"🥇\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1778\"\r\n // },\r\n // {\r\n // \"name\": \"second_place\",\r\n // \"unicode\": \"1f948\",\r\n // \"shortname\": \":second_place:\",\r\n // \"code_decimal\": \"🥈\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1779\"\r\n // },\r\n // {\r\n // \"name\": \"third_place\",\r\n // \"unicode\": \"1f949\",\r\n // \"shortname\": \":third_place:\",\r\n // \"code_decimal\": \"🥉\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1780\"\r\n // },\r\n {\r\n \"name\": \"soccer\",\r\n \"unicode\": \"26bd\",\r\n \"shortname\": \":soccer:\",\r\n \"code_decimal\": \"⚽\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1781\"\r\n },\r\n {\r\n \"name\": \"baseball\",\r\n \"unicode\": \"26be\",\r\n \"shortname\": \":baseball:\",\r\n \"code_decimal\": \"⚾\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1782\"\r\n },\r\n {\r\n \"name\": \"basketball\",\r\n \"unicode\": \"1f3c0\",\r\n \"shortname\": \":basketball:\",\r\n \"code_decimal\": \"🏀\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1783\"\r\n },\r\n {\r\n \"name\": \"volleyball\",\r\n \"unicode\": \"1f3d0\",\r\n \"shortname\": \":volleyball:\",\r\n \"code_decimal\": \"🏐\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1784\"\r\n },\r\n {\r\n \"name\": \"football\",\r\n \"unicode\": \"1f3c8\",\r\n \"shortname\": \":football:\",\r\n \"code_decimal\": \"🏈\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1785\"\r\n },\r\n {\r\n \"name\": \"rugby_football\",\r\n \"unicode\": \"1f3c9\",\r\n \"shortname\": \":rugby_football:\",\r\n \"code_decimal\": \"🏉\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1786\"\r\n },\r\n {\r\n \"name\": \"tennis\",\r\n \"unicode\": \"1f3be\",\r\n \"shortname\": \":tennis:\",\r\n \"code_decimal\": \"🎾\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1787\"\r\n },\r\n {\r\n \"name\": \"8ball\",\r\n \"unicode\": \"1f3b1\",\r\n \"shortname\": \":8ball:\",\r\n \"code_decimal\": \"🎱\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1788\"\r\n },\r\n {\r\n \"name\": \"bowling\",\r\n \"unicode\": \"1f3b3\",\r\n \"shortname\": \":bowling:\",\r\n \"code_decimal\": \"🎳\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1789\"\r\n },\r\n // {\r\n // \"name\": \"cricket\",\r\n // \"unicode\": \"1f3cf\",\r\n // \"shortname\": \":cricket:\",\r\n // \"code_decimal\": \"🏏\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1790\"\r\n // },\r\n // {\r\n // \"name\": \"field_hockey\",\r\n // \"unicode\": \"1f3d1\",\r\n // \"shortname\": \":field_hockey:\",\r\n // \"code_decimal\": \"🏑\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1791\"\r\n // },\r\n // {\r\n // \"name\": \"hockey\",\r\n // \"unicode\": \"1f3d2\",\r\n // \"shortname\": \":hockey:\",\r\n // \"code_decimal\": \"🏒\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1792\"\r\n // },\r\n // {\r\n // \"name\": \"ping_pong\",\r\n // \"unicode\": \"1f3d3\",\r\n // \"shortname\": \":ping_pong:\",\r\n // \"code_decimal\": \"🏓\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1793\"\r\n // },\r\n // {\r\n // \"name\": \"badminton\",\r\n // \"unicode\": \"1f3f8\",\r\n // \"shortname\": \":badminton:\",\r\n // \"code_decimal\": \"🏸\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1794\"\r\n // },\r\n // {\r\n // \"name\": \"boxing_glove\",\r\n // \"unicode\": \"1f94a\",\r\n // \"shortname\": \":boxing_glove:\",\r\n // \"code_decimal\": \"🥊\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1795\"\r\n // },\r\n // {\r\n // \"name\": \"martial_arts_uniform\",\r\n // \"unicode\": \"1f94b\",\r\n // \"shortname\": \":martial_arts_uniform:\",\r\n // \"code_decimal\": \"🥋\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1796\"\r\n // },\r\n // {\r\n // \"name\": \"goal\",\r\n // \"unicode\": \"1f945\",\r\n // \"shortname\": \":goal:\",\r\n // \"code_decimal\": \"🥅\",\r\n // \"category\": \"a\",\r\n // \"emoji_order\": \"1797\"\r\n // },\r\n {\r\n \"name\": \"dart\",\r\n \"unicode\": \"1f3af\",\r\n \"shortname\": \":dart:\",\r\n \"code_decimal\": \"🎯\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1798\"\r\n },\r\n {\r\n \"name\": \"golf\",\r\n \"unicode\": \"26f3\",\r\n \"shortname\": \":golf:\",\r\n \"code_decimal\": \"⛳\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1799\"\r\n },\r\n {\r\n \"name\": \"ice_skate\",\r\n \"unicode\": \"26f8\",\r\n \"shortname\": \":ice_skate:\",\r\n \"code_decimal\": \"⛸\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1800\"\r\n },\r\n {\r\n \"name\": \"fishing_pole_and_fish\",\r\n \"unicode\": \"1f3a3\",\r\n \"shortname\": \":fishing_pole_and_fish:\",\r\n \"code_decimal\": \"🎣\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1801\"\r\n },\r\n {\r\n \"name\": \"running_shirt_with_sash\",\r\n \"unicode\": \"1f3bd\",\r\n \"shortname\": \":running_shirt_with_sash:\",\r\n \"code_decimal\": \"🎽\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1802\"\r\n },\r\n {\r\n \"name\": \"ski\",\r\n \"unicode\": \"1f3bf\",\r\n \"shortname\": \":ski:\",\r\n \"code_decimal\": \"🎿\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1803\"\r\n },\r\n {\r\n \"name\": \"video_game\",\r\n \"unicode\": \"1f3ae\",\r\n \"shortname\": \":video_game:\",\r\n \"code_decimal\": \"🎮\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1804\"\r\n },\r\n {\r\n \"name\": \"joystick\",\r\n \"unicode\": \"1f579\",\r\n \"shortname\": \":joystick:\",\r\n \"code_decimal\": \"🕹\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1805\"\r\n },\r\n {\r\n \"name\": \"game_die\",\r\n \"unicode\": \"1f3b2\",\r\n \"shortname\": \":game_die:\",\r\n \"code_decimal\": \"🎲\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1806\"\r\n },\r\n {\r\n \"name\": \"spades\",\r\n \"unicode\": \"2660\",\r\n \"shortname\": \":spades:\",\r\n \"code_decimal\": \"♠\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1807\"\r\n },\r\n {\r\n \"name\": \"hearts\",\r\n \"unicode\": \"2665\",\r\n \"shortname\": \":hearts:\",\r\n \"code_decimal\": \"♥\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1808\"\r\n },\r\n {\r\n \"name\": \"diamonds\",\r\n \"unicode\": \"2666\",\r\n \"shortname\": \":diamonds:\",\r\n \"code_decimal\": \"♦\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1809\"\r\n },\r\n {\r\n \"name\": \"clubs\",\r\n \"unicode\": \"2663\",\r\n \"shortname\": \":clubs:\",\r\n \"code_decimal\": \"♣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1810\"\r\n },\r\n {\r\n \"name\": \"black_joker\",\r\n \"unicode\": \"1f0cf\",\r\n \"shortname\": \":black_joker:\",\r\n \"code_decimal\": \"🃏\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1811\"\r\n },\r\n {\r\n \"name\": \"mahjong\",\r\n \"unicode\": \"1f004\",\r\n \"shortname\": \":mahjong:\",\r\n \"code_decimal\": \"🀄\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1812\"\r\n },\r\n {\r\n \"name\": \"flower_playing_cards\",\r\n \"unicode\": \"1f3b4\",\r\n \"shortname\": \":flower_playing_cards:\",\r\n \"code_decimal\": \"🎴\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1813\"\r\n },\r\n {\r\n \"name\": \"mute\",\r\n \"unicode\": \"1f507\",\r\n \"shortname\": \":mute:\",\r\n \"code_decimal\": \"🔇\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1814\"\r\n },\r\n {\r\n \"name\": \"speaker\",\r\n \"unicode\": \"1f508\",\r\n \"shortname\": \":speaker:\",\r\n \"code_decimal\": \"🔈\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1815\"\r\n },\r\n {\r\n \"name\": \"sound\",\r\n \"unicode\": \"1f509\",\r\n \"shortname\": \":sound:\",\r\n \"code_decimal\": \"🔉\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1816\"\r\n },\r\n {\r\n \"name\": \"loud_sound\",\r\n \"unicode\": \"1f50a\",\r\n \"shortname\": \":loud_sound:\",\r\n \"code_decimal\": \"🔊\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1817\"\r\n },\r\n {\r\n \"name\": \"loudspeaker\",\r\n \"unicode\": \"1f4e2\",\r\n \"shortname\": \":loudspeaker:\",\r\n \"code_decimal\": \"📢\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1818\"\r\n },\r\n {\r\n \"name\": \"mega\",\r\n \"unicode\": \"1f4e3\",\r\n \"shortname\": \":mega:\",\r\n \"code_decimal\": \"📣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1819\"\r\n },\r\n {\r\n \"name\": \"postal_horn\",\r\n \"unicode\": \"1f4ef\",\r\n \"shortname\": \":postal_horn:\",\r\n \"code_decimal\": \"📯\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1820\"\r\n },\r\n {\r\n \"name\": \"bell\",\r\n \"unicode\": \"1f514\",\r\n \"shortname\": \":bell:\",\r\n \"code_decimal\": \"🔔\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1821\"\r\n },\r\n {\r\n \"name\": \"no_bell\",\r\n \"unicode\": \"1f515\",\r\n \"shortname\": \":no_bell:\",\r\n \"code_decimal\": \"🔕\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1822\"\r\n },\r\n {\r\n \"name\": \"musical_score\",\r\n \"unicode\": \"1f3bc\",\r\n \"shortname\": \":musical_score:\",\r\n \"code_decimal\": \"🎼\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1823\"\r\n },\r\n {\r\n \"name\": \"musical_note\",\r\n \"unicode\": \"1f3b5\",\r\n \"shortname\": \":musical_note:\",\r\n \"code_decimal\": \"🎵\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1824\"\r\n },\r\n {\r\n \"name\": \"notes\",\r\n \"unicode\": \"1f3b6\",\r\n \"shortname\": \":notes:\",\r\n \"code_decimal\": \"🎶\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1825\"\r\n },\r\n // {\r\n // \"name\": \"microphone2\",\r\n // \"unicode\": \"1f399\",\r\n // \"shortname\": \":microphone2:\",\r\n // \"code_decimal\": \"🎙\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1826\"\r\n // },\r\n {\r\n \"name\": \"level_slider\",\r\n \"unicode\": \"1f39a\",\r\n \"shortname\": \":level_slider:\",\r\n \"code_decimal\": \"🎚\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1827\"\r\n },\r\n {\r\n \"name\": \"control_knobs\",\r\n \"unicode\": \"1f39b\",\r\n \"shortname\": \":control_knobs:\",\r\n \"code_decimal\": \"🎛\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1828\"\r\n },\r\n {\r\n \"name\": \"microphone\",\r\n \"unicode\": \"1f3a4\",\r\n \"shortname\": \":microphone:\",\r\n \"code_decimal\": \"🎤\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1829\"\r\n },\r\n {\r\n \"name\": \"headphones\",\r\n \"unicode\": \"1f3a7\",\r\n \"shortname\": \":headphones:\",\r\n \"code_decimal\": \"🎧\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1830\"\r\n },\r\n {\r\n \"name\": \"radio\",\r\n \"unicode\": \"1f4fb\",\r\n \"shortname\": \":radio:\",\r\n \"code_decimal\": \"📻\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1831\"\r\n },\r\n {\r\n \"name\": \"saxophone\",\r\n \"unicode\": \"1f3b7\",\r\n \"shortname\": \":saxophone:\",\r\n \"code_decimal\": \"🎷\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1832\"\r\n },\r\n {\r\n \"name\": \"guitar\",\r\n \"unicode\": \"1f3b8\",\r\n \"shortname\": \":guitar:\",\r\n \"code_decimal\": \"🎸\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1833\"\r\n },\r\n {\r\n \"name\": \"musical_keyboard\",\r\n \"unicode\": \"1f3b9\",\r\n \"shortname\": \":musical_keyboard:\",\r\n \"code_decimal\": \"🎹\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1834\"\r\n },\r\n {\r\n \"name\": \"trumpet\",\r\n \"unicode\": \"1f3ba\",\r\n \"shortname\": \":trumpet:\",\r\n \"code_decimal\": \"🎺\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1835\"\r\n },\r\n {\r\n \"name\": \"violin\",\r\n \"unicode\": \"1f3bb\",\r\n \"shortname\": \":violin:\",\r\n \"code_decimal\": \"🎻\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1836\"\r\n },\r\n {\r\n \"name\": \"drum\",\r\n \"unicode\": \"1f941\",\r\n \"shortname\": \":drum:\",\r\n \"code_decimal\": \"🥁\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1837\"\r\n },\r\n {\r\n \"name\": \"iphone\",\r\n \"unicode\": \"1f4f1\",\r\n \"shortname\": \":iphone:\",\r\n \"code_decimal\": \"📱\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1838\"\r\n },\r\n {\r\n \"name\": \"calling\",\r\n \"unicode\": \"1f4f2\",\r\n \"shortname\": \":calling:\",\r\n \"code_decimal\": \"📲\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1839\"\r\n },\r\n {\r\n \"name\": \"telephone\",\r\n \"unicode\": \"260e\",\r\n \"shortname\": \":telephone:\",\r\n \"code_decimal\": \"☎\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1840\"\r\n },\r\n {\r\n \"name\": \"telephone_receiver\",\r\n \"unicode\": \"1f4de\",\r\n \"shortname\": \":telephone_receiver:\",\r\n \"code_decimal\": \"📞\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1841\"\r\n },\r\n {\r\n \"name\": \"pager\",\r\n \"unicode\": \"1f4df\",\r\n \"shortname\": \":pager:\",\r\n \"code_decimal\": \"📟\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1842\"\r\n },\r\n {\r\n \"name\": \"fax\",\r\n \"unicode\": \"1f4e0\",\r\n \"shortname\": \":fax:\",\r\n \"code_decimal\": \"📠\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1843\"\r\n },\r\n {\r\n \"name\": \"battery\",\r\n \"unicode\": \"1f50b\",\r\n \"shortname\": \":battery:\",\r\n \"code_decimal\": \"🔋\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1844\"\r\n },\r\n {\r\n \"name\": \"electric_plug\",\r\n \"unicode\": \"1f50c\",\r\n \"shortname\": \":electric_plug:\",\r\n \"code_decimal\": \"🔌\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1845\"\r\n },\r\n {\r\n \"name\": \"computer\",\r\n \"unicode\": \"1f4bb\",\r\n \"shortname\": \":computer:\",\r\n \"code_decimal\": \"💻\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1846\"\r\n },\r\n // {\r\n // \"name\": \"desktop\",\r\n // \"unicode\": \"1f5a5\",\r\n // \"shortname\": \":desktop:\",\r\n // \"code_decimal\": \"🖥\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1847\"\r\n // },\r\n {\r\n \"name\": \"printer\",\r\n \"unicode\": \"1f5a8\",\r\n \"shortname\": \":printer:\",\r\n \"code_decimal\": \"🖨\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1848\"\r\n },\r\n {\r\n \"name\": \"keyboard\",\r\n \"unicode\": \"2328\",\r\n \"shortname\": \":keyboard:\",\r\n \"code_decimal\": \"⌨\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1849\"\r\n },\r\n // {\r\n // \"name\": \"mouse_three_button\",\r\n // \"unicode\": \"1f5b1\",\r\n // \"shortname\": \":mouse_three_button:\",\r\n // \"code_decimal\": \"🖱\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1850\"\r\n // },\r\n {\r\n \"name\": \"trackball\",\r\n \"unicode\": \"1f5b2\",\r\n \"shortname\": \":trackball:\",\r\n \"code_decimal\": \"🖲\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1851\"\r\n },\r\n {\r\n \"name\": \"minidisc\",\r\n \"unicode\": \"1f4bd\",\r\n \"shortname\": \":minidisc:\",\r\n \"code_decimal\": \"💽\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1852\"\r\n },\r\n {\r\n \"name\": \"floppy_disk\",\r\n \"unicode\": \"1f4be\",\r\n \"shortname\": \":floppy_disk:\",\r\n \"code_decimal\": \"💾\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1853\"\r\n },\r\n {\r\n \"name\": \"cd\",\r\n \"unicode\": \"1f4bf\",\r\n \"shortname\": \":cd:\",\r\n \"code_decimal\": \"💿\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1854\"\r\n },\r\n {\r\n \"name\": \"dvd\",\r\n \"unicode\": \"1f4c0\",\r\n \"shortname\": \":dvd:\",\r\n \"code_decimal\": \"📀\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1855\"\r\n },\r\n {\r\n \"name\": \"movie_camera\",\r\n \"unicode\": \"1f3a5\",\r\n \"shortname\": \":movie_camera:\",\r\n \"code_decimal\": \"🎥\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1856\"\r\n },\r\n {\r\n \"name\": \"film_frames\",\r\n \"unicode\": \"1f39e\",\r\n \"shortname\": \":film_frames:\",\r\n \"code_decimal\": \"🎞\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1857\"\r\n },\r\n // {\r\n // \"name\": \"projector\",\r\n // \"unicode\": \"1f4fd\",\r\n // \"shortname\": \":projector:\",\r\n // \"code_decimal\": \"📽\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1858\"\r\n // },\r\n {\r\n \"name\": \"clapper\",\r\n \"unicode\": \"1f3ac\",\r\n \"shortname\": \":clapper:\",\r\n \"code_decimal\": \"🎬\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1859\"\r\n },\r\n {\r\n \"name\": \"tv\",\r\n \"unicode\": \"1f4fa\",\r\n \"shortname\": \":tv:\",\r\n \"code_decimal\": \"📺\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1860\"\r\n },\r\n {\r\n \"name\": \"camera\",\r\n \"unicode\": \"1f4f7\",\r\n \"shortname\": \":camera:\",\r\n \"code_decimal\": \"📷\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1861\"\r\n },\r\n {\r\n \"name\": \"camera_with_flash\",\r\n \"unicode\": \"1f4f8\",\r\n \"shortname\": \":camera_with_flash:\",\r\n \"code_decimal\": \"📸\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1862\"\r\n },\r\n {\r\n \"name\": \"video_camera\",\r\n \"unicode\": \"1f4f9\",\r\n \"shortname\": \":video_camera:\",\r\n \"code_decimal\": \"📹\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1863\"\r\n },\r\n {\r\n \"name\": \"vhs\",\r\n \"unicode\": \"1f4fc\",\r\n \"shortname\": \":vhs:\",\r\n \"code_decimal\": \"📼\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1864\"\r\n },\r\n {\r\n \"name\": \"mag\",\r\n \"unicode\": \"1f50d\",\r\n \"shortname\": \":mag:\",\r\n \"code_decimal\": \"🔍\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1865\"\r\n },\r\n {\r\n \"name\": \"mag_right\",\r\n \"unicode\": \"1f50e\",\r\n \"shortname\": \":mag_right:\",\r\n \"code_decimal\": \"🔎\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1866\"\r\n },\r\n {\r\n \"name\": \"microscope\",\r\n \"unicode\": \"1f52c\",\r\n \"shortname\": \":microscope:\",\r\n \"code_decimal\": \"🔬\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1867\"\r\n },\r\n {\r\n \"name\": \"telescope\",\r\n \"unicode\": \"1f52d\",\r\n \"shortname\": \":telescope:\",\r\n \"code_decimal\": \"🔭\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1868\"\r\n },\r\n {\r\n \"name\": \"satellite\",\r\n \"unicode\": \"1f4e1\",\r\n \"shortname\": \":satellite:\",\r\n \"code_decimal\": \"📡\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1869\"\r\n },\r\n {\r\n \"name\": \"candle\",\r\n \"unicode\": \"1f56f\",\r\n \"shortname\": \":candle:\",\r\n \"code_decimal\": \"🕯\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1870\"\r\n },\r\n {\r\n \"name\": \"bulb\",\r\n \"unicode\": \"1f4a1\",\r\n \"shortname\": \":bulb:\",\r\n \"code_decimal\": \"💡\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1871\"\r\n },\r\n {\r\n \"name\": \"flashlight\",\r\n \"unicode\": \"1f526\",\r\n \"shortname\": \":flashlight:\",\r\n \"code_decimal\": \"🔦\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1872\"\r\n },\r\n {\r\n \"name\": \"izakaya_lantern\",\r\n \"unicode\": \"1f3ee\",\r\n \"shortname\": \":izakaya_lantern:\",\r\n \"code_decimal\": \"🏮\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1873\"\r\n },\r\n {\r\n \"name\": \"notebook_with_decorative_cover\",\r\n \"unicode\": \"1f4d4\",\r\n \"shortname\": \":notebook_with_decorative_cover:\",\r\n \"code_decimal\": \"📔\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1874\"\r\n },\r\n {\r\n \"name\": \"closed_book\",\r\n \"unicode\": \"1f4d5\",\r\n \"shortname\": \":closed_book:\",\r\n \"code_decimal\": \"📕\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1875\"\r\n },\r\n {\r\n \"name\": \"book\",\r\n \"unicode\": \"1f4d6\",\r\n \"shortname\": \":book:\",\r\n \"code_decimal\": \"📖\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1876\"\r\n },\r\n {\r\n \"name\": \"green_book\",\r\n \"unicode\": \"1f4d7\",\r\n \"shortname\": \":green_book:\",\r\n \"code_decimal\": \"📗\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1877\"\r\n },\r\n {\r\n \"name\": \"blue_book\",\r\n \"unicode\": \"1f4d8\",\r\n \"shortname\": \":blue_book:\",\r\n \"code_decimal\": \"📘\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1878\"\r\n },\r\n {\r\n \"name\": \"orange_book\",\r\n \"unicode\": \"1f4d9\",\r\n \"shortname\": \":orange_book:\",\r\n \"code_decimal\": \"📙\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1879\"\r\n },\r\n {\r\n \"name\": \"books\",\r\n \"unicode\": \"1f4da\",\r\n \"shortname\": \":books:\",\r\n \"code_decimal\": \"📚\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1880\"\r\n },\r\n {\r\n \"name\": \"notebook\",\r\n \"unicode\": \"1f4d3\",\r\n \"shortname\": \":notebook:\",\r\n \"code_decimal\": \"📓\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1881\"\r\n },\r\n {\r\n \"name\": \"ledger\",\r\n \"unicode\": \"1f4d2\",\r\n \"shortname\": \":ledger:\",\r\n \"code_decimal\": \"📒\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1882\"\r\n },\r\n {\r\n \"name\": \"page_with_curl\",\r\n \"unicode\": \"1f4c3\",\r\n \"shortname\": \":page_with_curl:\",\r\n \"code_decimal\": \"📃\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1883\"\r\n },\r\n {\r\n \"name\": \"scroll\",\r\n \"unicode\": \"1f4dc\",\r\n \"shortname\": \":scroll:\",\r\n \"code_decimal\": \"📜\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1884\"\r\n },\r\n {\r\n \"name\": \"page_facing_up\",\r\n \"unicode\": \"1f4c4\",\r\n \"shortname\": \":page_facing_up:\",\r\n \"code_decimal\": \"📄\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1885\"\r\n },\r\n {\r\n \"name\": \"newspaper\",\r\n \"unicode\": \"1f4f0\",\r\n \"shortname\": \":newspaper:\",\r\n \"code_decimal\": \"📰\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1886\"\r\n },\r\n // {\r\n // \"name\": \"newspaper2\",\r\n // \"unicode\": \"1f5de\",\r\n // \"shortname\": \":newspaper2:\",\r\n // \"code_decimal\": \"🗞\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1887\"\r\n // },\r\n {\r\n \"name\": \"bookmark_tabs\",\r\n \"unicode\": \"1f4d1\",\r\n \"shortname\": \":bookmark_tabs:\",\r\n \"code_decimal\": \"📑\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1888\"\r\n },\r\n {\r\n \"name\": \"bookmark\",\r\n \"unicode\": \"1f516\",\r\n \"shortname\": \":bookmark:\",\r\n \"code_decimal\": \"🔖\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1889\"\r\n },\r\n {\r\n \"name\": \"label\",\r\n \"unicode\": \"1f3f7\",\r\n \"shortname\": \":label:\",\r\n \"code_decimal\": \"🏷\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1890\"\r\n },\r\n {\r\n \"name\": \"moneybag\",\r\n \"unicode\": \"1f4b0\",\r\n \"shortname\": \":moneybag:\",\r\n \"code_decimal\": \"💰\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1891\"\r\n },\r\n {\r\n \"name\": \"yen\",\r\n \"unicode\": \"1f4b4\",\r\n \"shortname\": \":yen:\",\r\n \"code_decimal\": \"💴\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1892\"\r\n },\r\n {\r\n \"name\": \"dollar\",\r\n \"unicode\": \"1f4b5\",\r\n \"shortname\": \":dollar:\",\r\n \"code_decimal\": \"💵\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1893\"\r\n },\r\n {\r\n \"name\": \"euro\",\r\n \"unicode\": \"1f4b6\",\r\n \"shortname\": \":euro:\",\r\n \"code_decimal\": \"💶\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1894\"\r\n },\r\n {\r\n \"name\": \"pound\",\r\n \"unicode\": \"1f4b7\",\r\n \"shortname\": \":pound:\",\r\n \"code_decimal\": \"💷\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1895\"\r\n },\r\n {\r\n \"name\": \"money_with_wings\",\r\n \"unicode\": \"1f4b8\",\r\n \"shortname\": \":money_with_wings:\",\r\n \"code_decimal\": \"💸\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1896\"\r\n },\r\n {\r\n \"name\": \"credit_card\",\r\n \"unicode\": \"1f4b3\",\r\n \"shortname\": \":credit_card:\",\r\n \"code_decimal\": \"💳\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1897\"\r\n },\r\n {\r\n \"name\": \"chart\",\r\n \"unicode\": \"1f4b9\",\r\n \"shortname\": \":chart:\",\r\n \"code_decimal\": \"💹\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1898\"\r\n },\r\n {\r\n \"name\": \"currency_exchange\",\r\n \"unicode\": \"1f4b1\",\r\n \"shortname\": \":currency_exchange:\",\r\n \"code_decimal\": \"💱\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1899\"\r\n },\r\n {\r\n \"name\": \"heavy_dollar_sign\",\r\n \"unicode\": \"1f4b2\",\r\n \"shortname\": \":heavy_dollar_sign:\",\r\n \"code_decimal\": \"💲\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1900\"\r\n },\r\n // {\r\n // \"name\": \"envelope\",\r\n // \"unicode\": \"2709\",\r\n // \"shortname\": \":envelope:\",\r\n // \"code_decimal\": \"✉\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1901\"\r\n // },\r\n {\r\n \"name\": \"e-mail\",\r\n \"unicode\": \"1f4e7\",\r\n \"shortname\": \":e-mail:\",\r\n \"code_decimal\": \"📧\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1902\"\r\n },\r\n {\r\n \"name\": \"incoming_envelope\",\r\n \"unicode\": \"1f4e8\",\r\n \"shortname\": \":incoming_envelope:\",\r\n \"code_decimal\": \"📨\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1903\"\r\n },\r\n {\r\n \"name\": \"envelope_with_arrow\",\r\n \"unicode\": \"1f4e9\",\r\n \"shortname\": \":envelope_with_arrow:\",\r\n \"code_decimal\": \"📩\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1904\"\r\n },\r\n {\r\n \"name\": \"outbox_tray\",\r\n \"unicode\": \"1f4e4\",\r\n \"shortname\": \":outbox_tray:\",\r\n \"code_decimal\": \"📤\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1905\"\r\n },\r\n {\r\n \"name\": \"inbox_tray\",\r\n \"unicode\": \"1f4e5\",\r\n \"shortname\": \":inbox_tray:\",\r\n \"code_decimal\": \"📥\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1906\"\r\n },\r\n {\r\n \"name\": \"package\",\r\n \"unicode\": \"1f4e6\",\r\n \"shortname\": \":package:\",\r\n \"code_decimal\": \"📦\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1907\"\r\n },\r\n {\r\n \"name\": \"mailbox\",\r\n \"unicode\": \"1f4eb\",\r\n \"shortname\": \":mailbox:\",\r\n \"code_decimal\": \"📫\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1908\"\r\n },\r\n {\r\n \"name\": \"mailbox_closed\",\r\n \"unicode\": \"1f4ea\",\r\n \"shortname\": \":mailbox_closed:\",\r\n \"code_decimal\": \"📪\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1909\"\r\n },\r\n {\r\n \"name\": \"mailbox_with_mail\",\r\n \"unicode\": \"1f4ec\",\r\n \"shortname\": \":mailbox_with_mail:\",\r\n \"code_decimal\": \"📬\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1910\"\r\n },\r\n {\r\n \"name\": \"mailbox_with_no_mail\",\r\n \"unicode\": \"1f4ed\",\r\n \"shortname\": \":mailbox_with_no_mail:\",\r\n \"code_decimal\": \"📭\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1911\"\r\n },\r\n {\r\n \"name\": \"postbox\",\r\n \"unicode\": \"1f4ee\",\r\n \"shortname\": \":postbox:\",\r\n \"code_decimal\": \"📮\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1912\"\r\n },\r\n {\r\n \"name\": \"ballot_box\",\r\n \"unicode\": \"1f5f3\",\r\n \"shortname\": \":ballot_box:\",\r\n \"code_decimal\": \"🗳\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1913\"\r\n },\r\n {\r\n \"name\": \"pencil2\",\r\n \"unicode\": \"270f\",\r\n \"shortname\": \":pencil2:\",\r\n \"code_decimal\": \"✏\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1914\"\r\n },\r\n {\r\n \"name\": \"black_nib\",\r\n \"unicode\": \"2712\",\r\n \"shortname\": \":black_nib:\",\r\n \"code_decimal\": \"✒\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1915\"\r\n },\r\n // {\r\n // \"name\": \"pen_fountain\",\r\n // \"unicode\": \"1f58b\",\r\n // \"shortname\": \":pen_fountain:\",\r\n // \"code_decimal\": \"🖋\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1916\"\r\n // },\r\n // {\r\n // \"name\": \"pen_ballpoint\",\r\n // \"unicode\": \"1f58a\",\r\n // \"shortname\": \":pen_ballpoint:\",\r\n // \"code_decimal\": \"🖊\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1917\"\r\n // },\r\n // {\r\n // \"name\": \"paintbrush\",\r\n // \"unicode\": \"1f58c\",\r\n // \"shortname\": \":paintbrush:\",\r\n // \"code_decimal\": \"🖌\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1918\"\r\n // },\r\n // {\r\n // \"name\": \"crayon\",\r\n // \"unicode\": \"1f58d\",\r\n // \"shortname\": \":crayon:\",\r\n // \"code_decimal\": \"🖍\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1919\"\r\n // },\r\n // {\r\n // \"name\": \"pencil\",\r\n // \"unicode\": \"1f4dd\",\r\n // \"shortname\": \":pencil:\",\r\n // \"code_decimal\": \"📝\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1920\"\r\n // },\r\n {\r\n \"name\": \"briefcase\",\r\n \"unicode\": \"1f4bc\",\r\n \"shortname\": \":briefcase:\",\r\n \"code_decimal\": \"💼\",\r\n \"category\": \"p\",\r\n \"emoji_order\": \"1921\"\r\n },\r\n {\r\n \"name\": \"file_folder\",\r\n \"unicode\": \"1f4c1\",\r\n \"shortname\": \":file_folder:\",\r\n \"code_decimal\": \"📁\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1922\"\r\n },\r\n {\r\n \"name\": \"open_file_folder\",\r\n \"unicode\": \"1f4c2\",\r\n \"shortname\": \":open_file_folder:\",\r\n \"code_decimal\": \"📂\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1923\"\r\n },\r\n // {\r\n // \"name\": \"dividers\",\r\n // \"unicode\": \"1f5c2\",\r\n // \"shortname\": \":dividers:\",\r\n // \"code_decimal\": \"🗂\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1924\"\r\n // },\r\n {\r\n \"name\": \"date\",\r\n \"unicode\": \"1f4c5\",\r\n \"shortname\": \":date:\",\r\n \"code_decimal\": \"📅\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1925\"\r\n },\r\n {\r\n \"name\": \"calendar\",\r\n \"unicode\": \"1f4c6\",\r\n \"shortname\": \":calendar:\",\r\n \"code_decimal\": \"📆\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1926\"\r\n },\r\n // {\r\n // \"name\": \"notepad_spiral\",\r\n // \"unicode\": \"1f5d2\",\r\n // \"shortname\": \":notepad_spiral:\",\r\n // \"code_decimal\": \"🗒\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1927\"\r\n // },\r\n // {\r\n // \"name\": \"calendar_spiral\",\r\n // \"unicode\": \"1f5d3\",\r\n // \"shortname\": \":calendar_spiral:\",\r\n // \"code_decimal\": \"🗓\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1928\"\r\n // },\r\n {\r\n \"name\": \"card_index\",\r\n \"unicode\": \"1f4c7\",\r\n \"shortname\": \":card_index:\",\r\n \"code_decimal\": \"📇\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1929\"\r\n },\r\n {\r\n \"name\": \"chart_with_upwards_trend\",\r\n \"unicode\": \"1f4c8\",\r\n \"shortname\": \":chart_with_upwards_trend:\",\r\n \"code_decimal\": \"📈\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1930\"\r\n },\r\n {\r\n \"name\": \"chart_with_downwards_trend\",\r\n \"unicode\": \"1f4c9\",\r\n \"shortname\": \":chart_with_downwards_trend:\",\r\n \"code_decimal\": \"📉\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1931\"\r\n },\r\n {\r\n \"name\": \"bar_chart\",\r\n \"unicode\": \"1f4ca\",\r\n \"shortname\": \":bar_chart:\",\r\n \"code_decimal\": \"📊\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1932\"\r\n },\r\n {\r\n \"name\": \"clipboard\",\r\n \"unicode\": \"1f4cb\",\r\n \"shortname\": \":clipboard:\",\r\n \"code_decimal\": \"📋\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1933\"\r\n },\r\n {\r\n \"name\": \"pushpin\",\r\n \"unicode\": \"1f4cc\",\r\n \"shortname\": \":pushpin:\",\r\n \"code_decimal\": \"📌\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1934\"\r\n },\r\n {\r\n \"name\": \"round_pushpin\",\r\n \"unicode\": \"1f4cd\",\r\n \"shortname\": \":round_pushpin:\",\r\n \"code_decimal\": \"📍\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1935\"\r\n },\r\n {\r\n \"name\": \"paperclip\",\r\n \"unicode\": \"1f4ce\",\r\n \"shortname\": \":paperclip:\",\r\n \"code_decimal\": \"📎\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1936\"\r\n },\r\n // {\r\n // \"name\": \"paperclips\",\r\n // \"unicode\": \"1f587\",\r\n // \"shortname\": \":paperclips:\",\r\n // \"code_decimal\": \"🖇\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1937\"\r\n // },\r\n {\r\n \"name\": \"straight_ruler\",\r\n \"unicode\": \"1f4cf\",\r\n \"shortname\": \":straight_ruler:\",\r\n \"code_decimal\": \"📏\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1938\"\r\n },\r\n {\r\n \"name\": \"triangular_ruler\",\r\n \"unicode\": \"1f4d0\",\r\n \"shortname\": \":triangular_ruler:\",\r\n \"code_decimal\": \"📐\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1939\"\r\n },\r\n {\r\n \"name\": \"scissors\",\r\n \"unicode\": \"2702\",\r\n \"shortname\": \":scissors:\",\r\n \"code_decimal\": \"✂\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1940\"\r\n },\r\n // {\r\n // \"name\": \"card_box\",\r\n // \"unicode\": \"1f5c3\",\r\n // \"shortname\": \":card_box:\",\r\n // \"code_decimal\": \"🗃\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1941\"\r\n // },\r\n {\r\n \"name\": \"file_cabinet\",\r\n \"unicode\": \"1f5c4\",\r\n \"shortname\": \":file_cabinet:\",\r\n \"code_decimal\": \"🗄\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1942\"\r\n },\r\n {\r\n \"name\": \"wastebasket\",\r\n \"unicode\": \"1f5d1\",\r\n \"shortname\": \":wastebasket:\",\r\n \"code_decimal\": \"🗑\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1943\"\r\n },\r\n {\r\n \"name\": \"lock\",\r\n \"unicode\": \"1f512\",\r\n \"shortname\": \":lock:\",\r\n \"code_decimal\": \"🔒\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1944\"\r\n },\r\n {\r\n \"name\": \"unlock\",\r\n \"unicode\": \"1f513\",\r\n \"shortname\": \":unlock:\",\r\n \"code_decimal\": \"🔓\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1945\"\r\n },\r\n {\r\n \"name\": \"lock_with_ink_pen\",\r\n \"unicode\": \"1f50f\",\r\n \"shortname\": \":lock_with_ink_pen:\",\r\n \"code_decimal\": \"🔏\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1946\"\r\n },\r\n {\r\n \"name\": \"closed_lock_with_key\",\r\n \"unicode\": \"1f510\",\r\n \"shortname\": \":closed_lock_with_key:\",\r\n \"code_decimal\": \"🔐\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1947\"\r\n },\r\n {\r\n \"name\": \"key\",\r\n \"unicode\": \"1f511\",\r\n \"shortname\": \":key:\",\r\n \"code_decimal\": \"🔑\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1948\"\r\n },\r\n // {\r\n // \"name\": \"key2\",\r\n // \"unicode\": \"1f5dd\",\r\n // \"shortname\": \":key2:\",\r\n // \"code_decimal\": \"🗝\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1949\"\r\n // },\r\n {\r\n \"name\": \"hammer\",\r\n \"unicode\": \"1f528\",\r\n \"shortname\": \":hammer:\",\r\n \"code_decimal\": \"🔨\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1950\"\r\n },\r\n {\r\n \"name\": \"pick\",\r\n \"unicode\": \"26cf\",\r\n \"shortname\": \":pick:\",\r\n \"code_decimal\": \"⛏\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1951\"\r\n },\r\n // {\r\n // \"name\": \"hammer_pick\",\r\n // \"unicode\": \"2692\",\r\n // \"shortname\": \":hammer_pick:\",\r\n // \"code_decimal\": \"⚒\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1952\"\r\n // },\r\n // {\r\n // \"name\": \"tools\",\r\n // \"unicode\": \"1f6e0\",\r\n // \"shortname\": \":tools:\",\r\n // \"code_decimal\": \"🛠\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1953\"\r\n // },\r\n // {\r\n // \"name\": \"dagger\",\r\n // \"unicode\": \"1f5e1\",\r\n // \"shortname\": \":dagger:\",\r\n // \"code_decimal\": \"🗡\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1954\"\r\n // },\r\n {\r\n \"name\": \"crossed_swords\",\r\n \"unicode\": \"2694\",\r\n \"shortname\": \":crossed_swords:\",\r\n \"code_decimal\": \"⚔\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1955\"\r\n },\r\n {\r\n \"name\": \"gun\",\r\n \"unicode\": \"1f52b\",\r\n \"shortname\": \":gun:\",\r\n \"code_decimal\": \"🔫\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1956\"\r\n },\r\n {\r\n \"name\": \"bow_and_arrow\",\r\n \"unicode\": \"1f3f9\",\r\n \"shortname\": \":bow_and_arrow:\",\r\n \"code_decimal\": \"🏹\",\r\n \"category\": \"a\",\r\n \"emoji_order\": \"1957\"\r\n },\r\n {\r\n \"name\": \"shield\",\r\n \"unicode\": \"1f6e1\",\r\n \"shortname\": \":shield:\",\r\n \"code_decimal\": \"🛡\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1958\"\r\n },\r\n {\r\n \"name\": \"wrench\",\r\n \"unicode\": \"1f527\",\r\n \"shortname\": \":wrench:\",\r\n \"code_decimal\": \"🔧\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1959\"\r\n },\r\n {\r\n \"name\": \"nut_and_bolt\",\r\n \"unicode\": \"1f529\",\r\n \"shortname\": \":nut_and_bolt:\",\r\n \"code_decimal\": \"🔩\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1960\"\r\n },\r\n {\r\n \"name\": \"gear\",\r\n \"unicode\": \"2699\",\r\n \"shortname\": \":gear:\",\r\n \"code_decimal\": \"⚙\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1961\"\r\n },\r\n {\r\n \"name\": \"compression\",\r\n \"unicode\": \"1f5dc\",\r\n \"shortname\": \":compression:\",\r\n \"code_decimal\": \"🗜\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1962\"\r\n },\r\n {\r\n \"name\": \"alembic\",\r\n \"unicode\": \"2697\",\r\n \"shortname\": \":alembic:\",\r\n \"code_decimal\": \"⚗\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1963\"\r\n },\r\n {\r\n \"name\": \"scales\",\r\n \"unicode\": \"2696\",\r\n \"shortname\": \":scales:\",\r\n \"code_decimal\": \"⚖\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1964\"\r\n },\r\n {\r\n \"name\": \"link\",\r\n \"unicode\": \"1f517\",\r\n \"shortname\": \":link:\",\r\n \"code_decimal\": \"🔗\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1965\"\r\n },\r\n {\r\n \"name\": \"chains\",\r\n \"unicode\": \"26d3\",\r\n \"shortname\": \":chains:\",\r\n \"code_decimal\": \"⛓\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1966\"\r\n },\r\n {\r\n \"name\": \"syringe\",\r\n \"unicode\": \"1f489\",\r\n \"shortname\": \":syringe:\",\r\n \"code_decimal\": \"💉\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1967\"\r\n },\r\n {\r\n \"name\": \"pill\",\r\n \"unicode\": \"1f48a\",\r\n \"shortname\": \":pill:\",\r\n \"code_decimal\": \"💊\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1968\"\r\n },\r\n {\r\n \"name\": \"smoking\",\r\n \"unicode\": \"1f6ac\",\r\n \"shortname\": \":smoking:\",\r\n \"code_decimal\": \"🚬\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1969\"\r\n },\r\n {\r\n \"name\": \"coffin\",\r\n \"unicode\": \"26b0\",\r\n \"shortname\": \":coffin:\",\r\n \"code_decimal\": \"⚰\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1970\"\r\n },\r\n // {\r\n // \"name\": \"urn\",\r\n // \"unicode\": \"26b1\",\r\n // \"shortname\": \":urn:\",\r\n // \"code_decimal\": \"⚱\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1971\"\r\n // },\r\n {\r\n \"name\": \"moyai\",\r\n \"unicode\": \"1f5ff\",\r\n \"shortname\": \":moyai:\",\r\n \"code_decimal\": \"🗿\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1972\"\r\n },\r\n // {\r\n // \"name\": \"oil\",\r\n // \"unicode\": \"1f6e2\",\r\n // \"shortname\": \":oil:\",\r\n // \"code_decimal\": \"🛢\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1973\"\r\n // },\r\n {\r\n \"name\": \"crystal_ball\",\r\n \"unicode\": \"1f52e\",\r\n \"shortname\": \":crystal_ball:\",\r\n \"code_decimal\": \"🔮\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"1974\"\r\n },\r\n // {\r\n // \"name\": \"shopping_cart\",\r\n // \"unicode\": \"1f6d2\",\r\n // \"shortname\": \":shopping_cart:\",\r\n // \"code_decimal\": \"🛒\",\r\n // \"category\": \"o\",\r\n // \"emoji_order\": \"1975\"\r\n // },\r\n {\r\n \"name\": \"atm\",\r\n \"unicode\": \"1f3e7\",\r\n \"shortname\": \":atm:\",\r\n \"code_decimal\": \"🏧\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1976\"\r\n },\r\n {\r\n \"name\": \"put_litter_in_its_place\",\r\n \"unicode\": \"1f6ae\",\r\n \"shortname\": \":put_litter_in_its_place:\",\r\n \"code_decimal\": \"🚮\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1977\"\r\n },\r\n {\r\n \"name\": \"potable_water\",\r\n \"unicode\": \"1f6b0\",\r\n \"shortname\": \":potable_water:\",\r\n \"code_decimal\": \"🚰\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1978\"\r\n },\r\n {\r\n \"name\": \"wheelchair\",\r\n \"unicode\": \"267f\",\r\n \"shortname\": \":wheelchair:\",\r\n \"code_decimal\": \"♿\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1979\"\r\n },\r\n {\r\n \"name\": \"mens\",\r\n \"unicode\": \"1f6b9\",\r\n \"shortname\": \":mens:\",\r\n \"code_decimal\": \"🚹\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1980\"\r\n },\r\n {\r\n \"name\": \"womens\",\r\n \"unicode\": \"1f6ba\",\r\n \"shortname\": \":womens:\",\r\n \"code_decimal\": \"🚺\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1981\"\r\n },\r\n {\r\n \"name\": \"restroom\",\r\n \"unicode\": \"1f6bb\",\r\n \"shortname\": \":restroom:\",\r\n \"code_decimal\": \"🚻\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1982\"\r\n },\r\n {\r\n \"name\": \"baby_symbol\",\r\n \"unicode\": \"1f6bc\",\r\n \"shortname\": \":baby_symbol:\",\r\n \"code_decimal\": \"🚼\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1983\"\r\n },\r\n {\r\n \"name\": \"wc\",\r\n \"unicode\": \"1f6be\",\r\n \"shortname\": \":wc:\",\r\n \"code_decimal\": \"🚾\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1984\"\r\n },\r\n {\r\n \"name\": \"passport_control\",\r\n \"unicode\": \"1f6c2\",\r\n \"shortname\": \":passport_control:\",\r\n \"code_decimal\": \"🛂\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1985\"\r\n },\r\n {\r\n \"name\": \"customs\",\r\n \"unicode\": \"1f6c3\",\r\n \"shortname\": \":customs:\",\r\n \"code_decimal\": \"🛃\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1986\"\r\n },\r\n {\r\n \"name\": \"baggage_claim\",\r\n \"unicode\": \"1f6c4\",\r\n \"shortname\": \":baggage_claim:\",\r\n \"code_decimal\": \"🛄\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1987\"\r\n },\r\n {\r\n \"name\": \"left_luggage\",\r\n \"unicode\": \"1f6c5\",\r\n \"shortname\": \":left_luggage:\",\r\n \"code_decimal\": \"🛅\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1988\"\r\n },\r\n {\r\n \"name\": \"warning\",\r\n \"unicode\": \"26a0\",\r\n \"shortname\": \":warning:\",\r\n \"code_decimal\": \"⚠\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1989\"\r\n },\r\n {\r\n \"name\": \"children_crossing\",\r\n \"unicode\": \"1f6b8\",\r\n \"shortname\": \":children_crossing:\",\r\n \"code_decimal\": \"🚸\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1990\"\r\n },\r\n {\r\n \"name\": \"no_entry\",\r\n \"unicode\": \"26d4\",\r\n \"shortname\": \":no_entry:\",\r\n \"code_decimal\": \"⛔\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1991\"\r\n },\r\n {\r\n \"name\": \"no_entry_sign\",\r\n \"unicode\": \"1f6ab\",\r\n \"shortname\": \":no_entry_sign:\",\r\n \"code_decimal\": \"🚫\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1992\"\r\n },\r\n {\r\n \"name\": \"no_bicycles\",\r\n \"unicode\": \"1f6b3\",\r\n \"shortname\": \":no_bicycles:\",\r\n \"code_decimal\": \"🚳\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1993\"\r\n },\r\n {\r\n \"name\": \"no_smoking\",\r\n \"unicode\": \"1f6ad\",\r\n \"shortname\": \":no_smoking:\",\r\n \"code_decimal\": \"🚭\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1994\"\r\n },\r\n {\r\n \"name\": \"do_not_litter\",\r\n \"unicode\": \"1f6af\",\r\n \"shortname\": \":do_not_litter:\",\r\n \"code_decimal\": \"🚯\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1995\"\r\n },\r\n {\r\n \"name\": \"non-potable_water\",\r\n \"unicode\": \"1f6b1\",\r\n \"shortname\": \":non-potable_water:\",\r\n \"code_decimal\": \"🚱\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1996\"\r\n },\r\n {\r\n \"name\": \"no_pedestrians\",\r\n \"unicode\": \"1f6b7\",\r\n \"shortname\": \":no_pedestrians:\",\r\n \"code_decimal\": \"🚷\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1997\"\r\n },\r\n {\r\n \"name\": \"no_mobile_phones\",\r\n \"unicode\": \"1f4f5\",\r\n \"shortname\": \":no_mobile_phones:\",\r\n \"code_decimal\": \"📵\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1998\"\r\n },\r\n {\r\n \"name\": \"underage\",\r\n \"unicode\": \"1f51e\",\r\n \"shortname\": \":underage:\",\r\n \"code_decimal\": \"🔞\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"1999\"\r\n },\r\n {\r\n \"name\": \"radioactive\",\r\n \"unicode\": \"2622\",\r\n \"shortname\": \":radioactive:\",\r\n \"code_decimal\": \"☢\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2000\"\r\n },\r\n {\r\n \"name\": \"biohazard\",\r\n \"unicode\": \"2623\",\r\n \"shortname\": \":biohazard:\",\r\n \"code_decimal\": \"☣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2001\"\r\n },\r\n {\r\n \"name\": \"arrow_up\",\r\n \"unicode\": \"2b06\",\r\n \"shortname\": \":arrow_up:\",\r\n \"code_decimal\": \"⬆\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2002\"\r\n },\r\n {\r\n \"name\": \"arrow_upper_right\",\r\n \"unicode\": \"2197\",\r\n \"shortname\": \":arrow_upper_right:\",\r\n \"code_decimal\": \"↗\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2003\"\r\n },\r\n {\r\n \"name\": \"arrow_right\",\r\n \"unicode\": \"27a1\",\r\n \"shortname\": \":arrow_right:\",\r\n \"code_decimal\": \"➡\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2004\"\r\n },\r\n {\r\n \"name\": \"arrow_lower_right\",\r\n \"unicode\": \"2198\",\r\n \"shortname\": \":arrow_lower_right:\",\r\n \"code_decimal\": \"↘\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2005\"\r\n },\r\n {\r\n \"name\": \"arrow_down\",\r\n \"unicode\": \"2b07\",\r\n \"shortname\": \":arrow_down:\",\r\n \"code_decimal\": \"⬇\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2006\"\r\n },\r\n {\r\n \"name\": \"arrow_lower_left\",\r\n \"unicode\": \"2199\",\r\n \"shortname\": \":arrow_lower_left:\",\r\n \"code_decimal\": \"↙\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2007\"\r\n },\r\n {\r\n \"name\": \"arrow_left\",\r\n \"unicode\": \"2b05\",\r\n \"shortname\": \":arrow_left:\",\r\n \"code_decimal\": \"⬅\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2008\"\r\n },\r\n {\r\n \"name\": \"arrow_upper_left\",\r\n \"unicode\": \"2196\",\r\n \"shortname\": \":arrow_upper_left:\",\r\n \"code_decimal\": \"↖\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2009\"\r\n },\r\n {\r\n \"name\": \"arrow_up_down\",\r\n \"unicode\": \"2195\",\r\n \"shortname\": \":arrow_up_down:\",\r\n \"code_decimal\": \"↕\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2010\"\r\n },\r\n {\r\n \"name\": \"left_right_arrow\",\r\n \"unicode\": \"2194\",\r\n \"shortname\": \":left_right_arrow:\",\r\n \"code_decimal\": \"↔\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2011\"\r\n },\r\n {\r\n \"name\": \"leftwards_arrow_with_hook\",\r\n \"unicode\": \"21a9\",\r\n \"shortname\": \":leftwards_arrow_with_hook:\",\r\n \"code_decimal\": \"↩\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2012\"\r\n },\r\n {\r\n \"name\": \"arrow_right_hook\",\r\n \"unicode\": \"21aa\",\r\n \"shortname\": \":arrow_right_hook:\",\r\n \"code_decimal\": \"↪\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2013\"\r\n },\r\n {\r\n \"name\": \"arrow_heading_up\",\r\n \"unicode\": \"2934\",\r\n \"shortname\": \":arrow_heading_up:\",\r\n \"code_decimal\": \"⤴\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2014\"\r\n },\r\n {\r\n \"name\": \"arrow_heading_down\",\r\n \"unicode\": \"2935\",\r\n \"shortname\": \":arrow_heading_down:\",\r\n \"code_decimal\": \"⤵\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2015\"\r\n },\r\n {\r\n \"name\": \"arrows_clockwise\",\r\n \"unicode\": \"1f503\",\r\n \"shortname\": \":arrows_clockwise:\",\r\n \"code_decimal\": \"🔃\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2016\"\r\n },\r\n {\r\n \"name\": \"arrows_counterclockwise\",\r\n \"unicode\": \"1f504\",\r\n \"shortname\": \":arrows_counterclockwise:\",\r\n \"code_decimal\": \"🔄\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2017\"\r\n },\r\n {\r\n \"name\": \"back\",\r\n \"unicode\": \"1f519\",\r\n \"shortname\": \":back:\",\r\n \"code_decimal\": \"🔙\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2018\"\r\n },\r\n {\r\n \"name\": \"end\",\r\n \"unicode\": \"1f51a\",\r\n \"shortname\": \":end:\",\r\n \"code_decimal\": \"🔚\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2019\"\r\n },\r\n {\r\n \"name\": \"on\",\r\n \"unicode\": \"1f51b\",\r\n \"shortname\": \":on:\",\r\n \"code_decimal\": \"🔛\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2020\"\r\n },\r\n {\r\n \"name\": \"soon\",\r\n \"unicode\": \"1f51c\",\r\n \"shortname\": \":soon:\",\r\n \"code_decimal\": \"🔜\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2021\"\r\n },\r\n {\r\n \"name\": \"top\",\r\n \"unicode\": \"1f51d\",\r\n \"shortname\": \":top:\",\r\n \"code_decimal\": \"🔝\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2022\"\r\n },\r\n {\r\n \"name\": \"place_of_worship\",\r\n \"unicode\": \"1f6d0\",\r\n \"shortname\": \":place_of_worship:\",\r\n \"code_decimal\": \"🛐\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2023\"\r\n },\r\n {\r\n \"name\": \"atom\",\r\n \"unicode\": \"269b\",\r\n \"shortname\": \":atom:\",\r\n \"code_decimal\": \"⚛\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2024\"\r\n },\r\n {\r\n \"name\": \"om_symbol\",\r\n \"unicode\": \"1f549\",\r\n \"shortname\": \":om_symbol:\",\r\n \"code_decimal\": \"🕉\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2025\"\r\n },\r\n {\r\n \"name\": \"star_of_david\",\r\n \"unicode\": \"2721\",\r\n \"shortname\": \":star_of_david:\",\r\n \"code_decimal\": \"✡\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2026\"\r\n },\r\n {\r\n \"name\": \"wheel_of_dharma\",\r\n \"unicode\": \"2638\",\r\n \"shortname\": \":wheel_of_dharma:\",\r\n \"code_decimal\": \"☸\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2027\"\r\n },\r\n {\r\n \"name\": \"yin_yang\",\r\n \"unicode\": \"262f\",\r\n \"shortname\": \":yin_yang:\",\r\n \"code_decimal\": \"☯\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2028\"\r\n },\r\n {\r\n \"name\": \"cross\",\r\n \"unicode\": \"271d\",\r\n \"shortname\": \":cross:\",\r\n \"code_decimal\": \"✝\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2029\"\r\n },\r\n {\r\n \"name\": \"orthodox_cross\",\r\n \"unicode\": \"2626\",\r\n \"shortname\": \":orthodox_cross:\",\r\n \"code_decimal\": \"☦\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2030\"\r\n },\r\n {\r\n \"name\": \"star_and_crescent\",\r\n \"unicode\": \"262a\",\r\n \"shortname\": \":star_and_crescent:\",\r\n \"code_decimal\": \"☪\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2031\"\r\n },\r\n {\r\n \"name\": \"peace\",\r\n \"unicode\": \"262e\",\r\n \"shortname\": \":peace:\",\r\n \"code_decimal\": \"☮\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2032\"\r\n },\r\n {\r\n \"name\": \"menorah\",\r\n \"unicode\": \"1f54e\",\r\n \"shortname\": \":menorah:\",\r\n \"code_decimal\": \"🕎\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2033\"\r\n },\r\n {\r\n \"name\": \"six_pointed_star\",\r\n \"unicode\": \"1f52f\",\r\n \"shortname\": \":six_pointed_star:\",\r\n \"code_decimal\": \"🔯\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2034\"\r\n },\r\n {\r\n \"name\": \"aries\",\r\n \"unicode\": \"2648\",\r\n \"shortname\": \":aries:\",\r\n \"code_decimal\": \"♈\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2035\"\r\n },\r\n {\r\n \"name\": \"taurus\",\r\n \"unicode\": \"2649\",\r\n \"shortname\": \":taurus:\",\r\n \"code_decimal\": \"♉\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2036\"\r\n },\r\n {\r\n \"name\": \"gemini\",\r\n \"unicode\": \"264a\",\r\n \"shortname\": \":gemini:\",\r\n \"code_decimal\": \"♊\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2037\"\r\n },\r\n {\r\n \"name\": \"cancer\",\r\n \"unicode\": \"264b\",\r\n \"shortname\": \":cancer:\",\r\n \"code_decimal\": \"♋\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2038\"\r\n },\r\n {\r\n \"name\": \"leo\",\r\n \"unicode\": \"264c\",\r\n \"shortname\": \":leo:\",\r\n \"code_decimal\": \"♌\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2039\"\r\n },\r\n {\r\n \"name\": \"virgo\",\r\n \"unicode\": \"264d\",\r\n \"shortname\": \":virgo:\",\r\n \"code_decimal\": \"♍\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2040\"\r\n },\r\n {\r\n \"name\": \"libra\",\r\n \"unicode\": \"264e\",\r\n \"shortname\": \":libra:\",\r\n \"code_decimal\": \"♎\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2041\"\r\n },\r\n {\r\n \"name\": \"scorpius\",\r\n \"unicode\": \"264f\",\r\n \"shortname\": \":scorpius:\",\r\n \"code_decimal\": \"♏\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2042\"\r\n },\r\n {\r\n \"name\": \"sagittarius\",\r\n \"unicode\": \"2650\",\r\n \"shortname\": \":sagittarius:\",\r\n \"code_decimal\": \"♐\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2043\"\r\n },\r\n {\r\n \"name\": \"capricorn\",\r\n \"unicode\": \"2651\",\r\n \"shortname\": \":capricorn:\",\r\n \"code_decimal\": \"♑\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2044\"\r\n },\r\n {\r\n \"name\": \"aquarius\",\r\n \"unicode\": \"2652\",\r\n \"shortname\": \":aquarius:\",\r\n \"code_decimal\": \"♒\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2045\"\r\n },\r\n {\r\n \"name\": \"pisces\",\r\n \"unicode\": \"2653\",\r\n \"shortname\": \":pisces:\",\r\n \"code_decimal\": \"♓\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2046\"\r\n },\r\n {\r\n \"name\": \"ophiuchus\",\r\n \"unicode\": \"26ce\",\r\n \"shortname\": \":ophiuchus:\",\r\n \"code_decimal\": \"⛎\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2047\"\r\n },\r\n {\r\n \"name\": \"twisted_rightwards_arrows\",\r\n \"unicode\": \"1f500\",\r\n \"shortname\": \":twisted_rightwards_arrows:\",\r\n \"code_decimal\": \"🔀\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2048\"\r\n },\r\n {\r\n \"name\": \"repeat\",\r\n \"unicode\": \"1f501\",\r\n \"shortname\": \":repeat:\",\r\n \"code_decimal\": \"🔁\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2049\"\r\n },\r\n {\r\n \"name\": \"repeat_one\",\r\n \"unicode\": \"1f502\",\r\n \"shortname\": \":repeat_one:\",\r\n \"code_decimal\": \"🔂\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2050\"\r\n },\r\n {\r\n \"name\": \"arrow_forward\",\r\n \"unicode\": \"25b6\",\r\n \"shortname\": \":arrow_forward:\",\r\n \"code_decimal\": \"▶\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2051\"\r\n },\r\n {\r\n \"name\": \"fast_forward\",\r\n \"unicode\": \"23e9\",\r\n \"shortname\": \":fast_forward:\",\r\n \"code_decimal\": \"⏩\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2052\"\r\n },\r\n {\r\n \"name\": \"track_next\",\r\n \"unicode\": \"23ed\",\r\n \"shortname\": \":track_next:\",\r\n \"code_decimal\": \"⏭\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2053\"\r\n },\r\n {\r\n \"name\": \"play_pause\",\r\n \"unicode\": \"23ef\",\r\n \"shortname\": \":play_pause:\",\r\n \"code_decimal\": \"⏯\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2054\"\r\n },\r\n {\r\n \"name\": \"arrow_backward\",\r\n \"unicode\": \"25c0\",\r\n \"shortname\": \":arrow_backward:\",\r\n \"code_decimal\": \"◀\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2055\"\r\n },\r\n {\r\n \"name\": \"rewind\",\r\n \"unicode\": \"23ea\",\r\n \"shortname\": \":rewind:\",\r\n \"code_decimal\": \"⏪\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2056\"\r\n },\r\n {\r\n \"name\": \"track_previous\",\r\n \"unicode\": \"23ee\",\r\n \"shortname\": \":track_previous:\",\r\n \"code_decimal\": \"⏮\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2057\"\r\n },\r\n {\r\n \"name\": \"arrow_up_small\",\r\n \"unicode\": \"1f53c\",\r\n \"shortname\": \":arrow_up_small:\",\r\n \"code_decimal\": \"🔼\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2058\"\r\n },\r\n {\r\n \"name\": \"arrow_double_up\",\r\n \"unicode\": \"23eb\",\r\n \"shortname\": \":arrow_double_up:\",\r\n \"code_decimal\": \"⏫\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2059\"\r\n },\r\n {\r\n \"name\": \"arrow_down_small\",\r\n \"unicode\": \"1f53d\",\r\n \"shortname\": \":arrow_down_small:\",\r\n \"code_decimal\": \"🔽\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2060\"\r\n },\r\n {\r\n \"name\": \"arrow_double_down\",\r\n \"unicode\": \"23ec\",\r\n \"shortname\": \":arrow_double_down:\",\r\n \"code_decimal\": \"⏬\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2061\"\r\n },\r\n // {\r\n // \"name\": \"pause_button\",\r\n // \"unicode\": \"23f8\",\r\n // \"shortname\": \":pause_button:\",\r\n // \"code_decimal\": \"⏸\",\r\n // \"category\": \"s\",\r\n // \"emoji_order\": \"2062\"\r\n // },\r\n // {\r\n // \"name\": \"stop_button\",\r\n // \"unicode\": \"23f9\",\r\n // \"shortname\": \":stop_button:\",\r\n // \"code_decimal\": \"⏹\",\r\n // \"category\": \"s\",\r\n // \"emoji_order\": \"2063\"\r\n // },\r\n // {\r\n // \"name\": \"record_button\",\r\n // \"unicode\": \"23fa\",\r\n // \"shortname\": \":record_button:\",\r\n // \"code_decimal\": \"⏺\",\r\n // \"category\": \"s\",\r\n // \"emoji_order\": \"2064\"\r\n // },\r\n // {\r\n // \"name\": \"eject\",\r\n // \"unicode\": \"23cf\",\r\n // \"shortname\": \":eject:\",\r\n // \"code_decimal\": \"⏏\",\r\n // \"category\": \"s\",\r\n // \"emoji_order\": \"2065\"\r\n // },\r\n {\r\n \"name\": \"cinema\",\r\n \"unicode\": \"1f3a6\",\r\n \"shortname\": \":cinema:\",\r\n \"code_decimal\": \"🎦\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2066\"\r\n },\r\n {\r\n \"name\": \"low_brightness\",\r\n \"unicode\": \"1f505\",\r\n \"shortname\": \":low_brightness:\",\r\n \"code_decimal\": \"🔅\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2067\"\r\n },\r\n {\r\n \"name\": \"high_brightness\",\r\n \"unicode\": \"1f506\",\r\n \"shortname\": \":high_brightness:\",\r\n \"code_decimal\": \"🔆\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2068\"\r\n },\r\n {\r\n \"name\": \"signal_strength\",\r\n \"unicode\": \"1f4f6\",\r\n \"shortname\": \":signal_strength:\",\r\n \"code_decimal\": \"📶\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2069\"\r\n },\r\n {\r\n \"name\": \"vibration_mode\",\r\n \"unicode\": \"1f4f3\",\r\n \"shortname\": \":vibration_mode:\",\r\n \"code_decimal\": \"📳\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2070\"\r\n },\r\n {\r\n \"name\": \"mobile_phone_off\",\r\n \"unicode\": \"1f4f4\",\r\n \"shortname\": \":mobile_phone_off:\",\r\n \"code_decimal\": \"📴\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2071\"\r\n },\r\n {\r\n \"name\": \"recycle\",\r\n \"unicode\": \"267b\",\r\n \"shortname\": \":recycle:\",\r\n \"code_decimal\": \"♻\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2072\"\r\n },\r\n {\r\n \"name\": \"name_badge\",\r\n \"unicode\": \"1f4db\",\r\n \"shortname\": \":name_badge:\",\r\n \"code_decimal\": \"📛\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2073\"\r\n },\r\n {\r\n \"name\": \"fleur-de-lis\",\r\n \"unicode\": \"269c\",\r\n \"shortname\": \":fleur-de-lis:\",\r\n \"code_decimal\": \"⚜\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2074\"\r\n },\r\n {\r\n \"name\": \"beginner\",\r\n \"unicode\": \"1f530\",\r\n \"shortname\": \":beginner:\",\r\n \"code_decimal\": \"🔰\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2075\"\r\n },\r\n {\r\n \"name\": \"trident\",\r\n \"unicode\": \"1f531\",\r\n \"shortname\": \":trident:\",\r\n \"code_decimal\": \"🔱\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2076\"\r\n },\r\n {\r\n \"name\": \"o\",\r\n \"unicode\": \"2b55\",\r\n \"shortname\": \":o:\",\r\n \"code_decimal\": \"⭕\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2077\"\r\n },\r\n {\r\n \"name\": \"white_check_mark\",\r\n \"unicode\": \"2705\",\r\n \"shortname\": \":white_check_mark:\",\r\n \"code_decimal\": \"✅\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2078\"\r\n },\r\n {\r\n \"name\": \"ballot_box_with_check\",\r\n \"unicode\": \"2611\",\r\n \"shortname\": \":ballot_box_with_check:\",\r\n \"code_decimal\": \"☑\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2079\"\r\n },\r\n {\r\n \"name\": \"heavy_check_mark\",\r\n \"unicode\": \"2714\",\r\n \"shortname\": \":heavy_check_mark:\",\r\n \"code_decimal\": \"✔\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2080\"\r\n },\r\n {\r\n \"name\": \"heavy_multiplication_x\",\r\n \"unicode\": \"2716\",\r\n \"shortname\": \":heavy_multiplication_x:\",\r\n \"code_decimal\": \"✖\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2081\"\r\n },\r\n {\r\n \"name\": \"x\",\r\n \"unicode\": \"274c\",\r\n \"shortname\": \":x:\",\r\n \"code_decimal\": \"❌\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2082\"\r\n },\r\n {\r\n \"name\": \"negative_squared_cross_mark\",\r\n \"unicode\": \"274e\",\r\n \"shortname\": \":negative_squared_cross_mark:\",\r\n \"code_decimal\": \"❎\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2083\"\r\n },\r\n {\r\n \"name\": \"heavy_plus_sign\",\r\n \"unicode\": \"2795\",\r\n \"shortname\": \":heavy_plus_sign:\",\r\n \"code_decimal\": \"➕\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2084\"\r\n },\r\n {\r\n \"name\": \"heavy_minus_sign\",\r\n \"unicode\": \"2796\",\r\n \"shortname\": \":heavy_minus_sign:\",\r\n \"code_decimal\": \"➖\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2088\"\r\n },\r\n {\r\n \"name\": \"heavy_division_sign\",\r\n \"unicode\": \"2797\",\r\n \"shortname\": \":heavy_division_sign:\",\r\n \"code_decimal\": \"➗\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2089\"\r\n },\r\n {\r\n \"name\": \"curly_loop\",\r\n \"unicode\": \"27b0\",\r\n \"shortname\": \":curly_loop:\",\r\n \"code_decimal\": \"➰\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2090\"\r\n },\r\n {\r\n \"name\": \"loop\",\r\n \"unicode\": \"27bf\",\r\n \"shortname\": \":loop:\",\r\n \"code_decimal\": \"➿\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2091\"\r\n },\r\n {\r\n \"name\": \"part_alternation_mark\",\r\n \"unicode\": \"303d\",\r\n \"shortname\": \":part_alternation_mark:\",\r\n \"code_decimal\": \"〽\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2092\"\r\n },\r\n {\r\n \"name\": \"eight_spoked_asterisk\",\r\n \"unicode\": \"2733\",\r\n \"shortname\": \":eight_spoked_asterisk:\",\r\n \"code_decimal\": \"✳\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2093\"\r\n },\r\n {\r\n \"name\": \"eight_pointed_black_star\",\r\n \"unicode\": \"2734\",\r\n \"shortname\": \":eight_pointed_black_star:\",\r\n \"code_decimal\": \"✴\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2094\"\r\n },\r\n {\r\n \"name\": \"sparkle\",\r\n \"unicode\": \"2747\",\r\n \"shortname\": \":sparkle:\",\r\n \"code_decimal\": \"❇\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2095\"\r\n },\r\n {\r\n \"name\": \"bangbang\",\r\n \"unicode\": \"203c\",\r\n \"shortname\": \":bangbang:\",\r\n \"code_decimal\": \"‼\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2096\"\r\n },\r\n {\r\n \"name\": \"interrobang\",\r\n \"unicode\": \"2049\",\r\n \"shortname\": \":interrobang:\",\r\n \"code_decimal\": \"⁉\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2097\"\r\n },\r\n {\r\n \"name\": \"question\",\r\n \"unicode\": \"2753\",\r\n \"shortname\": \":question:\",\r\n \"code_decimal\": \"❓\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2098\"\r\n },\r\n {\r\n \"name\": \"grey_question\",\r\n \"unicode\": \"2754\",\r\n \"shortname\": \":grey_question:\",\r\n \"code_decimal\": \"❔\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2099\"\r\n },\r\n {\r\n \"name\": \"grey_exclamation\",\r\n \"unicode\": \"2755\",\r\n \"shortname\": \":grey_exclamation:\",\r\n \"code_decimal\": \"❕\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2100\"\r\n },\r\n {\r\n \"name\": \"exclamation\",\r\n \"unicode\": \"2757\",\r\n \"shortname\": \":exclamation:\",\r\n \"code_decimal\": \"❗\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2101\"\r\n },\r\n {\r\n \"name\": \"wavy_dash\",\r\n \"unicode\": \"3030\",\r\n \"shortname\": \":wavy_dash:\",\r\n \"code_decimal\": \"〰\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2102\"\r\n },\r\n {\r\n \"name\": \"copyright\",\r\n \"unicode\": \"00a9\",\r\n \"shortname\": \":copyright:\",\r\n \"code_decimal\": \"©\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2103\"\r\n },\r\n {\r\n \"name\": \"registered\",\r\n \"unicode\": \"00ae\",\r\n \"shortname\": \":registered:\",\r\n \"code_decimal\": \"®\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2104\"\r\n },\r\n {\r\n \"name\": \"tm\",\r\n \"unicode\": \"2122\",\r\n \"shortname\": \":tm:\",\r\n \"code_decimal\": \"™\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2105\"\r\n },\r\n {\r\n \"name\": \"hash\",\r\n \"unicode\": \"0023-20e3\",\r\n \"shortname\": \":hash:\",\r\n \"code_decimal\": \"#⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2106\"\r\n },\r\n {\r\n \"name\": \"asterisk\",\r\n \"unicode\": \"002a-20e3\",\r\n \"shortname\": \":asterisk:\",\r\n \"code_decimal\": \"*⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2107\"\r\n },\r\n {\r\n \"name\": \"zero\",\r\n \"unicode\": \"0030-20e3\",\r\n \"shortname\": \":zero:\",\r\n \"code_decimal\": \"0⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2108\"\r\n },\r\n {\r\n \"name\": \"one\",\r\n \"unicode\": \"0031-20e3\",\r\n \"shortname\": \":one:\",\r\n \"code_decimal\": \"1⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2109\"\r\n },\r\n {\r\n \"name\": \"two\",\r\n \"unicode\": \"0032-20e3\",\r\n \"shortname\": \":two:\",\r\n \"code_decimal\": \"2⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2110\"\r\n },\r\n {\r\n \"name\": \"three\",\r\n \"unicode\": \"0033-20e3\",\r\n \"shortname\": \":three:\",\r\n \"code_decimal\": \"3⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2111\"\r\n },\r\n {\r\n \"name\": \"four\",\r\n \"unicode\": \"0034-20e3\",\r\n \"shortname\": \":four:\",\r\n \"code_decimal\": \"4⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2112\"\r\n },\r\n {\r\n \"name\": \"five\",\r\n \"unicode\": \"0035-20e3\",\r\n \"shortname\": \":five:\",\r\n \"code_decimal\": \"5⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2113\"\r\n },\r\n {\r\n \"name\": \"six\",\r\n \"unicode\": \"0036-20e3\",\r\n \"shortname\": \":six:\",\r\n \"code_decimal\": \"6⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2114\"\r\n },\r\n {\r\n \"name\": \"seven\",\r\n \"unicode\": \"0037-20e3\",\r\n \"shortname\": \":seven:\",\r\n \"code_decimal\": \"7⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2115\"\r\n },\r\n {\r\n \"name\": \"eight\",\r\n \"unicode\": \"0038-20e3\",\r\n \"shortname\": \":eight:\",\r\n \"code_decimal\": \"8⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2116\"\r\n },\r\n {\r\n \"name\": \"nine\",\r\n \"unicode\": \"0039-20e3\",\r\n \"shortname\": \":nine:\",\r\n \"code_decimal\": \"9⃣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2117\"\r\n },\r\n {\r\n \"name\": \"keycap_ten\",\r\n \"unicode\": \"1f51f\",\r\n \"shortname\": \":keycap_ten:\",\r\n \"code_decimal\": \"🔟\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2118\"\r\n },\r\n {\r\n \"name\": \"capital_abcd\",\r\n \"unicode\": \"1f520\",\r\n \"shortname\": \":capital_abcd:\",\r\n \"code_decimal\": \"🔠\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2120\"\r\n },\r\n {\r\n \"name\": \"abcd\",\r\n \"unicode\": \"1f521\",\r\n \"shortname\": \":abcd:\",\r\n \"code_decimal\": \"🔡\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2121\"\r\n },\r\n {\r\n \"name\": \"symbols\",\r\n \"unicode\": \"1f523\",\r\n \"shortname\": \":symbols:\",\r\n \"code_decimal\": \"🔣\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2123\"\r\n },\r\n {\r\n \"name\": \"abc\",\r\n \"unicode\": \"1f524\",\r\n \"shortname\": \":abc:\",\r\n \"code_decimal\": \"🔤\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2124\"\r\n },\r\n {\r\n \"name\": \"a\",\r\n \"unicode\": \"1f170\",\r\n \"shortname\": \":a:\",\r\n \"code_decimal\": \"🅰\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2125\"\r\n },\r\n {\r\n \"name\": \"ab\",\r\n \"unicode\": \"1f18e\",\r\n \"shortname\": \":ab:\",\r\n \"code_decimal\": \"🆎\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2126\"\r\n },\r\n {\r\n \"name\": \"b\",\r\n \"unicode\": \"1f171\",\r\n \"shortname\": \":b:\",\r\n \"code_decimal\": \"🅱\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2127\"\r\n },\r\n {\r\n \"name\": \"cl\",\r\n \"unicode\": \"1f191\",\r\n \"shortname\": \":cl:\",\r\n \"code_decimal\": \"🆑\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2128\"\r\n },\r\n {\r\n \"name\": \"cool\",\r\n \"unicode\": \"1f192\",\r\n \"shortname\": \":cool:\",\r\n \"code_decimal\": \"🆒\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2129\"\r\n },\r\n {\r\n \"name\": \"free\",\r\n \"unicode\": \"1f193\",\r\n \"shortname\": \":free:\",\r\n \"code_decimal\": \"🆓\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2130\"\r\n },\r\n {\r\n \"name\": \"information_source\",\r\n \"unicode\": \"2139\",\r\n \"shortname\": \":information_source:\",\r\n \"code_decimal\": \"ℹ\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2131\"\r\n },\r\n {\r\n \"name\": \"id\",\r\n \"unicode\": \"1f194\",\r\n \"shortname\": \":id:\",\r\n \"code_decimal\": \"🆔\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2132\"\r\n },\r\n {\r\n \"name\": \"m\",\r\n \"unicode\": \"24c2\",\r\n \"shortname\": \":m:\",\r\n \"code_decimal\": \"Ⓜ\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2133\"\r\n },\r\n {\r\n \"name\": \"new\",\r\n \"unicode\": \"1f195\",\r\n \"shortname\": \":new:\",\r\n \"code_decimal\": \"🆕\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2134\"\r\n },\r\n {\r\n \"name\": \"ng\",\r\n \"unicode\": \"1f196\",\r\n \"shortname\": \":ng:\",\r\n \"code_decimal\": \"🆖\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2135\"\r\n },\r\n {\r\n \"name\": \"o2\",\r\n \"unicode\": \"1f17e\",\r\n \"shortname\": \":o2:\",\r\n \"code_decimal\": \"🅾\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2136\"\r\n },\r\n {\r\n \"name\": \"ok\",\r\n \"unicode\": \"1f197\",\r\n \"shortname\": \":ok:\",\r\n \"code_decimal\": \"🆗\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2137\"\r\n },\r\n {\r\n \"name\": \"parking\",\r\n \"unicode\": \"1f17f\",\r\n \"shortname\": \":parking:\",\r\n \"code_decimal\": \"🅿\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2138\"\r\n },\r\n {\r\n \"name\": \"sos\",\r\n \"unicode\": \"1f198\",\r\n \"shortname\": \":sos:\",\r\n \"code_decimal\": \"🆘\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2139\"\r\n },\r\n {\r\n \"name\": \"up\",\r\n \"unicode\": \"1f199\",\r\n \"shortname\": \":up:\",\r\n \"code_decimal\": \"🆙\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2140\"\r\n },\r\n {\r\n \"name\": \"vs\",\r\n \"unicode\": \"1f19a\",\r\n \"shortname\": \":vs:\",\r\n \"code_decimal\": \"🆚\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2141\"\r\n },\r\n {\r\n \"name\": \"koko\",\r\n \"unicode\": \"1f201\",\r\n \"shortname\": \":koko:\",\r\n \"code_decimal\": \"🈁\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2142\"\r\n },\r\n {\r\n \"name\": \"sa\",\r\n \"unicode\": \"1f202\",\r\n \"shortname\": \":sa:\",\r\n \"code_decimal\": \"🈂\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2143\"\r\n },\r\n {\r\n \"name\": \"u6708\",\r\n \"unicode\": \"1f237\",\r\n \"shortname\": \":u6708:\",\r\n \"code_decimal\": \"🈷\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2144\"\r\n },\r\n {\r\n \"name\": \"u6709\",\r\n \"unicode\": \"1f236\",\r\n \"shortname\": \":u6709:\",\r\n \"code_decimal\": \"🈶\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2145\"\r\n },\r\n {\r\n \"name\": \"u6307\",\r\n \"unicode\": \"1f22f\",\r\n \"shortname\": \":u6307:\",\r\n \"code_decimal\": \"🈯\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2146\"\r\n },\r\n {\r\n \"name\": \"ideograph_advantage\",\r\n \"unicode\": \"1f250\",\r\n \"shortname\": \":ideograph_advantage:\",\r\n \"code_decimal\": \"🉐\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2147\"\r\n },\r\n {\r\n \"name\": \"u5272\",\r\n \"unicode\": \"1f239\",\r\n \"shortname\": \":u5272:\",\r\n \"code_decimal\": \"🈹\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2148\"\r\n },\r\n {\r\n \"name\": \"u7121\",\r\n \"unicode\": \"1f21a\",\r\n \"shortname\": \":u7121:\",\r\n \"code_decimal\": \"🈚\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2149\"\r\n },\r\n {\r\n \"name\": \"u7981\",\r\n \"unicode\": \"1f232\",\r\n \"shortname\": \":u7981:\",\r\n \"code_decimal\": \"🈲\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2150\"\r\n },\r\n {\r\n \"name\": \"accept\",\r\n \"unicode\": \"1f251\",\r\n \"shortname\": \":accept:\",\r\n \"code_decimal\": \"🉑\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2151\"\r\n },\r\n {\r\n \"name\": \"u7533\",\r\n \"unicode\": \"1f238\",\r\n \"shortname\": \":u7533:\",\r\n \"code_decimal\": \"🈸\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2152\"\r\n },\r\n {\r\n \"name\": \"u5408\",\r\n \"unicode\": \"1f234\",\r\n \"shortname\": \":u5408:\",\r\n \"code_decimal\": \"🈴\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2153\"\r\n },\r\n {\r\n \"name\": \"u7a7a\",\r\n \"unicode\": \"1f233\",\r\n \"shortname\": \":u7a7a:\",\r\n \"code_decimal\": \"🈳\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2154\"\r\n },\r\n {\r\n \"name\": \"congratulations\",\r\n \"unicode\": \"3297\",\r\n \"shortname\": \":congratulations:\",\r\n \"code_decimal\": \"㊗\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2155\"\r\n },\r\n {\r\n \"name\": \"secret\",\r\n \"unicode\": \"3299\",\r\n \"shortname\": \":secret:\",\r\n \"code_decimal\": \"㊙\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2156\"\r\n },\r\n {\r\n \"name\": \"u55b6\",\r\n \"unicode\": \"1f23a\",\r\n \"shortname\": \":u55b6:\",\r\n \"code_decimal\": \"🈺\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2157\"\r\n },\r\n {\r\n \"name\": \"u6e80\",\r\n \"unicode\": \"1f235\",\r\n \"shortname\": \":u6e80:\",\r\n \"code_decimal\": \"🈵\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2158\"\r\n },\r\n {\r\n \"name\": \"black_small_square\",\r\n \"unicode\": \"25aa\",\r\n \"shortname\": \":black_small_square:\",\r\n \"code_decimal\": \"▪\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2159\"\r\n },\r\n {\r\n \"name\": \"white_small_square\",\r\n \"unicode\": \"25ab\",\r\n \"shortname\": \":white_small_square:\",\r\n \"code_decimal\": \"▫\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2160\"\r\n },\r\n {\r\n \"name\": \"white_medium_square\",\r\n \"unicode\": \"25fb\",\r\n \"shortname\": \":white_medium_square:\",\r\n \"code_decimal\": \"◻\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2161\"\r\n },\r\n {\r\n \"name\": \"black_medium_square\",\r\n \"unicode\": \"25fc\",\r\n \"shortname\": \":black_medium_square:\",\r\n \"code_decimal\": \"◼\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2162\"\r\n },\r\n {\r\n \"name\": \"white_medium_small_square\",\r\n \"unicode\": \"25fd\",\r\n \"shortname\": \":white_medium_small_square:\",\r\n \"code_decimal\": \"◽\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2163\"\r\n },\r\n {\r\n \"name\": \"black_medium_small_square\",\r\n \"unicode\": \"25fe\",\r\n \"shortname\": \":black_medium_small_square:\",\r\n \"code_decimal\": \"◾\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2164\"\r\n },\r\n {\r\n \"name\": \"black_large_square\",\r\n \"unicode\": \"2b1b\",\r\n \"shortname\": \":black_large_square:\",\r\n \"code_decimal\": \"⬛\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2165\"\r\n },\r\n {\r\n \"name\": \"white_large_square\",\r\n \"unicode\": \"2b1c\",\r\n \"shortname\": \":white_large_square:\",\r\n \"code_decimal\": \"⬜\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2166\"\r\n },\r\n {\r\n \"name\": \"large_orange_diamond\",\r\n \"unicode\": \"1f536\",\r\n \"shortname\": \":large_orange_diamond:\",\r\n \"code_decimal\": \"🔶\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2167\"\r\n },\r\n {\r\n \"name\": \"large_blue_diamond\",\r\n \"unicode\": \"1f537\",\r\n \"shortname\": \":large_blue_diamond:\",\r\n \"code_decimal\": \"🔷\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2168\"\r\n },\r\n {\r\n \"name\": \"small_orange_diamond\",\r\n \"unicode\": \"1f538\",\r\n \"shortname\": \":small_orange_diamond:\",\r\n \"code_decimal\": \"🔸\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2169\"\r\n },\r\n {\r\n \"name\": \"small_blue_diamond\",\r\n \"unicode\": \"1f539\",\r\n \"shortname\": \":small_blue_diamond:\",\r\n \"code_decimal\": \"🔹\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2170\"\r\n },\r\n {\r\n \"name\": \"small_red_triangle\",\r\n \"unicode\": \"1f53a\",\r\n \"shortname\": \":small_red_triangle:\",\r\n \"code_decimal\": \"🔺\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2171\"\r\n },\r\n {\r\n \"name\": \"small_red_triangle_down\",\r\n \"unicode\": \"1f53b\",\r\n \"shortname\": \":small_red_triangle_down:\",\r\n \"code_decimal\": \"🔻\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2172\"\r\n },\r\n {\r\n \"name\": \"diamond_shape_with_a_dot_inside\",\r\n \"unicode\": \"1f4a0\",\r\n \"shortname\": \":diamond_shape_with_a_dot_inside:\",\r\n \"code_decimal\": \"💠\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2173\"\r\n },\r\n {\r\n \"name\": \"radio_button\",\r\n \"unicode\": \"1f518\",\r\n \"shortname\": \":radio_button:\",\r\n \"code_decimal\": \"🔘\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2174\"\r\n },\r\n {\r\n \"name\": \"black_square_button\",\r\n \"unicode\": \"1f532\",\r\n \"shortname\": \":black_square_button:\",\r\n \"code_decimal\": \"🔲\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2175\"\r\n },\r\n {\r\n \"name\": \"white_square_button\",\r\n \"unicode\": \"1f533\",\r\n \"shortname\": \":white_square_button:\",\r\n \"code_decimal\": \"🔳\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2176\"\r\n },\r\n {\r\n \"name\": \"white_circle\",\r\n \"unicode\": \"26aa\",\r\n \"shortname\": \":white_circle:\",\r\n \"code_decimal\": \"⚪\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2177\"\r\n },\r\n {\r\n \"name\": \"black_circle\",\r\n \"unicode\": \"26ab\",\r\n \"shortname\": \":black_circle:\",\r\n \"code_decimal\": \"⚫\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2178\"\r\n },\r\n {\r\n \"name\": \"red_circle\",\r\n \"unicode\": \"1f534\",\r\n \"shortname\": \":red_circle:\",\r\n \"code_decimal\": \"🔴\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2179\"\r\n },\r\n {\r\n \"name\": \"blue_circle\",\r\n \"unicode\": \"1f535\",\r\n \"shortname\": \":blue_circle:\",\r\n \"code_decimal\": \"🔵\",\r\n \"category\": \"s\",\r\n \"emoji_order\": \"2180\"\r\n },\r\n {\r\n \"name\": \"checkered_flag\",\r\n \"unicode\": \"1f3c1\",\r\n \"shortname\": \":checkered_flag:\",\r\n \"code_decimal\": \"🏁\",\r\n \"category\": \"t\",\r\n \"emoji_order\": \"2181\"\r\n },\r\n {\r\n \"name\": \"triangular_flag_on_post\",\r\n \"unicode\": \"1f6a9\",\r\n \"shortname\": \":triangular_flag_on_post:\",\r\n \"code_decimal\": \"🚩\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"2182\"\r\n },\r\n {\r\n \"name\": \"crossed_flags\",\r\n \"unicode\": \"1f38c\",\r\n \"shortname\": \":crossed_flags:\",\r\n \"code_decimal\": \"🎌\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"2183\"\r\n },\r\n {\r\n \"name\": \"waving_black_flag\",\r\n \"unicode\": \"1f3f4\",\r\n \"shortname\": \":flag_black:\",\r\n \"code_decimal\": \"🏴\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"2184\"\r\n },\r\n {\r\n \"name\": \"waving_white_flag\",\r\n \"unicode\": \"1f3f3\",\r\n \"shortname\": \":flag_white:\",\r\n \"code_decimal\": \"🏳\",\r\n \"category\": \"o\",\r\n \"emoji_order\": \"2185\"\r\n },\r\n {\r\n \"name\": \"flag-ac\",\r\n \"unicode\": \"1f1e6-1f1e8\",\r\n \"shortname\": \":flag_ac:\",\r\n \"code_decimal\": \"🇦🇨\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2187\"\r\n },\r\n {\r\n \"name\": \"flag-ad\",\r\n \"unicode\": \"1f1e6-1f1e9\",\r\n \"shortname\": \":flag_ad:\",\r\n \"code_decimal\": \"🇦🇩\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2188\"\r\n },\r\n {\r\n \"name\": \"flag-ae\",\r\n \"unicode\": \"1f1e6-1f1ea\",\r\n \"shortname\": \":flag_ae:\",\r\n \"code_decimal\": \"🇦🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2189\"\r\n },\r\n {\r\n \"name\": \"flag-af\",\r\n \"unicode\": \"1f1e6-1f1eb\",\r\n \"shortname\": \":flag_af:\",\r\n \"code_decimal\": \"🇦🇫\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2190\"\r\n },\r\n {\r\n \"name\": \"flag-ag\",\r\n \"unicode\": \"1f1e6-1f1ec\",\r\n \"shortname\": \":flag_ag:\",\r\n \"code_decimal\": \"🇦🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2191\"\r\n },\r\n {\r\n \"name\": \"flag-ai\",\r\n \"unicode\": \"1f1e6-1f1ee\",\r\n \"shortname\": \":flag_ai:\",\r\n \"code_decimal\": \"🇦🇮\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2192\"\r\n },\r\n {\r\n \"name\": \"flag-al\",\r\n \"unicode\": \"1f1e6-1f1f1\",\r\n \"shortname\": \":flag_al:\",\r\n \"code_decimal\": \"🇦🇱\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2193\"\r\n },\r\n {\r\n \"name\": \"flag-am\",\r\n \"unicode\": \"1f1e6-1f1f2\",\r\n \"shortname\": \":flag_am:\",\r\n \"code_decimal\": \"🇦🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2194\"\r\n },\r\n {\r\n \"name\": \"flag-ao\",\r\n \"unicode\": \"1f1e6-1f1f4\",\r\n \"shortname\": \":flag-ao:\",\r\n \"code_decimal\": \"🇦🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2195\"\r\n },\r\n {\r\n \"name\": \"flag-aq\",\r\n \"unicode\": \"1f1e6-1f1f6\",\r\n \"shortname\": \":flag-aq:\",\r\n \"code_decimal\": \"🇦🇶\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2196\"\r\n },\r\n {\r\n \"name\": \"flag-ar\",\r\n \"unicode\": \"1f1e6-1f1f7\",\r\n \"shortname\": \":flag-ar:\",\r\n \"code_decimal\": \"🇦🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2197\"\r\n },\r\n {\r\n \"name\": \"flag-as\",\r\n \"unicode\": \"1f1e6-1f1f8\",\r\n \"shortname\": \":flag-as:\",\r\n \"code_decimal\": \"🇦🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2198\"\r\n },\r\n {\r\n \"name\": \"flag-at\",\r\n \"unicode\": \"1f1e6-1f1f9\",\r\n \"shortname\": \":flag-at:\",\r\n \"code_decimal\": \"🇦🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2199\"\r\n },\r\n {\r\n \"name\": \"flag-au\",\r\n \"unicode\": \"1f1e6-1f1fa\",\r\n \"shortname\": \":flag-au:\",\r\n \"code_decimal\": \"🇦🇺\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2200\"\r\n },\r\n {\r\n \"name\": \"flag-aw\",\r\n \"unicode\": \"1f1e6-1f1fc\",\r\n \"shortname\": \":flag-aw:\",\r\n \"code_decimal\": \"🇦🇼\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2201\"\r\n },\r\n {\r\n \"name\": \"flag-ax\",\r\n \"unicode\": \"1f1e6-1f1fd\",\r\n \"shortname\": \":flag-ax:\",\r\n \"code_decimal\": \"🇦🇽\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2202\"\r\n },\r\n {\r\n \"name\": \"flag-az\",\r\n \"unicode\": \"1f1e6-1f1ff\",\r\n \"shortname\": \":flag-az:\",\r\n \"code_decimal\": \"🇦🇿\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2203\"\r\n },\r\n {\r\n \"name\": \"flag-ba\",\r\n \"unicode\": \"1f1e7-1f1e6\",\r\n \"shortname\": \":flag-ba:\",\r\n \"code_decimal\": \"🇧🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2204\"\r\n },\r\n {\r\n \"name\": \"flag-bb\",\r\n \"unicode\": \"1f1e7-1f1e7\",\r\n \"shortname\": \":flag-bb:\",\r\n \"code_decimal\": \"🇧🇧\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2205\"\r\n },\r\n {\r\n \"name\": \"flag-bd\",\r\n \"unicode\": \"1f1e7-1f1e9\",\r\n \"shortname\": \":flag-bd:\",\r\n \"code_decimal\": \"🇧🇩\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2206\"\r\n },\r\n {\r\n \"name\": \"flag-be\",\r\n \"unicode\": \"1f1e7-1f1ea\",\r\n \"shortname\": \":flag-be:\",\r\n \"code_decimal\": \"🇧🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2207\"\r\n },\r\n {\r\n \"name\": \"flag-bf\",\r\n \"unicode\": \"1f1e7-1f1eb\",\r\n \"shortname\": \":flag-bf:\",\r\n \"code_decimal\": \"🇧🇫\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2208\"\r\n },\r\n {\r\n \"name\": \"flag-bg\",\r\n \"unicode\": \"1f1e7-1f1ec\",\r\n \"shortname\": \":flag-bg:\",\r\n \"code_decimal\": \"🇧🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2209\"\r\n },\r\n {\r\n \"name\": \"flag-bh\",\r\n \"unicode\": \"1f1e7-1f1ed\",\r\n \"shortname\": \":flag-bh:\",\r\n \"code_decimal\": \"🇧🇭\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2210\"\r\n },\r\n {\r\n \"name\": \"flag-bi\",\r\n \"unicode\": \"1f1e7-1f1ee\",\r\n \"shortname\": \":flag-bi:\",\r\n \"code_decimal\": \"🇧🇮\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2211\"\r\n },\r\n {\r\n \"name\": \"flag-bj\",\r\n \"unicode\": \"1f1e7-1f1ef\",\r\n \"shortname\": \":flag-bj:\",\r\n \"code_decimal\": \"🇧🇯\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2212\"\r\n },\r\n {\r\n \"name\": \"flag-bl\",\r\n \"unicode\": \"1f1e7-1f1f1\",\r\n \"shortname\": \":flag-bl:\",\r\n \"code_decimal\": \"🇧🇱\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2213\"\r\n },\r\n {\r\n \"name\": \"flag-bm\",\r\n \"unicode\": \"1f1e7-1f1f2\",\r\n \"shortname\": \":flag-bm:\",\r\n \"code_decimal\": \"🇧🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2214\"\r\n },\r\n {\r\n \"name\": \"flag-bn\",\r\n \"unicode\": \"1f1e7-1f1f3\",\r\n \"shortname\": \":flag-bn:\",\r\n \"code_decimal\": \"🇧🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2215\"\r\n },\r\n {\r\n \"name\": \"flag-bo\",\r\n \"unicode\": \"1f1e7-1f1f4\",\r\n \"shortname\": \":flag-bo:\",\r\n \"code_decimal\": \"🇧🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2216\"\r\n },\r\n {\r\n \"name\": \"flag-bq\",\r\n \"unicode\": \"1f1e7-1f1f6\",\r\n \"shortname\": \":flag-bq:\",\r\n \"code_decimal\": \"🇧🇶\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2217\"\r\n },\r\n {\r\n \"name\": \"flag-br\",\r\n \"unicode\": \"1f1e7-1f1f7\",\r\n \"shortname\": \":flag-br:\",\r\n \"code_decimal\": \"🇧🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2218\"\r\n },\r\n {\r\n \"name\": \"flag-bs\",\r\n \"unicode\": \"1f1e7-1f1f8\",\r\n \"shortname\": \":flag-bs:\",\r\n \"code_decimal\": \"🇧🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2219\"\r\n },\r\n {\r\n \"name\": \"flag-bt\",\r\n \"unicode\": \"1f1e7-1f1f9\",\r\n \"shortname\": \":flag-bt:\",\r\n \"code_decimal\": \"🇧🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2220\"\r\n },\r\n {\r\n \"name\": \"flag-bv\",\r\n \"unicode\": \"1f1e7-1f1fb\",\r\n \"shortname\": \":flag-bv:\",\r\n \"code_decimal\": \"🇧🇻\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2221\"\r\n },\r\n {\r\n \"name\": \"flag-bw\",\r\n \"unicode\": \"1f1e7-1f1fc\",\r\n \"shortname\": \":flag-bw:\",\r\n \"code_decimal\": \"🇧🇼\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2222\"\r\n },\r\n {\r\n \"name\": \"flag-by\",\r\n \"unicode\": \"1f1e7-1f1fe\",\r\n \"shortname\": \":flag-by:\",\r\n \"code_decimal\": \"🇧🇾\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2223\"\r\n },\r\n {\r\n \"name\": \"flag-bz\",\r\n \"unicode\": \"1f1e7-1f1ff\",\r\n \"shortname\": \":flag-bz:\",\r\n \"code_decimal\": \"🇧🇿\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2224\"\r\n },\r\n {\r\n \"name\": \"flag-ca\",\r\n \"unicode\": \"1f1e8-1f1e6\",\r\n \"shortname\": \":flag-ca:\",\r\n \"code_decimal\": \"🇨🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2225\"\r\n },\r\n {\r\n \"name\": \"flag-cc\",\r\n \"unicode\": \"1f1e8-1f1e8\",\r\n \"shortname\": \":flag-cc:\",\r\n \"code_decimal\": \"🇨🇨\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2226\"\r\n },\r\n {\r\n \"name\": \"flag-cd\",\r\n \"unicode\": \"1f1e8-1f1e9\",\r\n \"shortname\": \":flag-cd:\",\r\n \"code_decimal\": \"🇨🇩\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2227\"\r\n },\r\n {\r\n \"name\": \"flag-cf\",\r\n \"unicode\": \"1f1e8-1f1eb\",\r\n \"shortname\": \":flag-cf:\",\r\n \"code_decimal\": \"🇨🇫\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2228\"\r\n },\r\n {\r\n \"name\": \"flag-cg\",\r\n \"unicode\": \"1f1e8-1f1ec\",\r\n \"shortname\": \":flag-cg:\",\r\n \"code_decimal\": \"🇨🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2229\"\r\n },\r\n {\r\n \"name\": \"flag-ch\",\r\n \"unicode\": \"1f1e8-1f1ed\",\r\n \"shortname\": \":flag-ch:\",\r\n \"code_decimal\": \"🇨🇭\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2230\"\r\n },\r\n {\r\n \"name\": \"flag-ci\",\r\n \"unicode\": \"1f1e8-1f1ee\",\r\n \"shortname\": \":flag-ci:\",\r\n \"code_decimal\": \"🇨🇮\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2231\"\r\n },\r\n {\r\n \"name\": \"flag-ck\",\r\n \"unicode\": \"1f1e8-1f1f0\",\r\n \"shortname\": \":flag-ck:\",\r\n \"code_decimal\": \"🇨🇰\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2232\"\r\n },\r\n {\r\n \"name\": \"flag-cl\",\r\n \"unicode\": \"1f1e8-1f1f1\",\r\n \"shortname\": \":flag-cl:\",\r\n \"code_decimal\": \"🇨🇱\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2233\"\r\n },\r\n {\r\n \"name\": \"flag-cm\",\r\n \"unicode\": \"1f1e8-1f1f2\",\r\n \"shortname\": \":flag-cm:\",\r\n \"code_decimal\": \"🇨🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2234\"\r\n },\r\n {\r\n \"name\": \"flag-cn\",\r\n \"unicode\": \"1f1e8-1f1f3\",\r\n \"shortname\": \":flag-cn:\",\r\n \"code_decimal\": \"🇨🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2235\"\r\n },\r\n {\r\n \"name\": \"flag-co\",\r\n \"unicode\": \"1f1e8-1f1f4\",\r\n \"shortname\": \":flag-co:\",\r\n \"code_decimal\": \"🇨🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2236\"\r\n },\r\n {\r\n \"name\": \"flag-cp\",\r\n \"unicode\": \"1f1e8-1f1f5\",\r\n \"shortname\": \":flag-cp:\",\r\n \"code_decimal\": \"🇨🇵\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2237\"\r\n },\r\n {\r\n \"name\": \"flag-cr\",\r\n \"unicode\": \"1f1e8-1f1f7\",\r\n \"shortname\": \":flag-cr:\",\r\n \"code_decimal\": \"🇨🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2238\"\r\n },\r\n {\r\n \"name\": \"flag-cu\",\r\n \"unicode\": \"1f1e8-1f1fa\",\r\n \"shortname\": \":flag-cu:\",\r\n \"code_decimal\": \"🇨🇺\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2239\"\r\n },\r\n {\r\n \"name\": \"flag-cv\",\r\n \"unicode\": \"1f1e8-1f1fb\",\r\n \"shortname\": \":flag-cv:\",\r\n \"code_decimal\": \"🇨🇻\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2240\"\r\n },\r\n {\r\n \"name\": \"flag-cw\",\r\n \"unicode\": \"1f1e8-1f1fc\",\r\n \"shortname\": \":flag-cw:\",\r\n \"code_decimal\": \"🇨🇼\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2241\"\r\n },\r\n {\r\n \"name\": \"flag-cx\",\r\n \"unicode\": \"1f1e8-1f1fd\",\r\n \"shortname\": \":flag-cx:\",\r\n \"code_decimal\": \"🇨🇽\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2242\"\r\n },\r\n {\r\n \"name\": \"flag-cy\",\r\n \"unicode\": \"1f1e8-1f1fe\",\r\n \"shortname\": \":flag-cy:\",\r\n \"code_decimal\": \"🇨🇾\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2243\"\r\n },\r\n {\r\n \"name\": \"flag-cz\",\r\n \"unicode\": \"1f1e8-1f1ff\",\r\n \"shortname\": \":flag-cz:\",\r\n \"code_decimal\": \"🇨🇿\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2244\"\r\n },\r\n {\r\n \"name\": \"flag-de\",\r\n \"unicode\": \"1f1e9-1f1ea\",\r\n \"shortname\": \":flag-de:\",\r\n \"code_decimal\": \"🇩🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2245\"\r\n },\r\n {\r\n \"name\": \"flag-dg\",\r\n \"unicode\": \"1f1e9-1f1ec\",\r\n \"shortname\": \":flag-dg:\",\r\n \"code_decimal\": \"🇩🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2246\"\r\n },\r\n {\r\n \"name\": \"flag-dj\",\r\n \"unicode\": \"1f1e9-1f1ef\",\r\n \"shortname\": \":flag-dj:\",\r\n \"code_decimal\": \"🇩🇯\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2247\"\r\n },\r\n {\r\n \"name\": \"flag-dk\",\r\n \"unicode\": \"1f1e9-1f1f0\",\r\n \"shortname\": \":flag-dk:\",\r\n \"code_decimal\": \"🇩🇰\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2248\"\r\n },\r\n {\r\n \"name\": \"flag-dm\",\r\n \"unicode\": \"1f1e9-1f1f2\",\r\n \"shortname\": \":flag-dm:\",\r\n \"code_decimal\": \"🇩🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2249\"\r\n },\r\n {\r\n \"name\": \"flag-do\",\r\n \"unicode\": \"1f1e9-1f1f4\",\r\n \"shortname\": \":flag-do:\",\r\n \"code_decimal\": \"🇩🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2250\"\r\n },\r\n {\r\n \"name\": \"flag-dz\",\r\n \"unicode\": \"1f1e9-1f1ff\",\r\n \"shortname\": \":flag-dz:\",\r\n \"code_decimal\": \"🇩🇿\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2251\"\r\n },\r\n {\r\n \"name\": \"flag-ea\",\r\n \"unicode\": \"1f1ea-1f1e6\",\r\n \"shortname\": \":flag-ea:\",\r\n \"code_decimal\": \"🇪🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2252\"\r\n },\r\n {\r\n \"name\": \"flag-ec\",\r\n \"unicode\": \"1f1ea-1f1e8\",\r\n \"shortname\": \":flag-ec:\",\r\n \"code_decimal\": \"🇪🇨\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2253\"\r\n },\r\n {\r\n \"name\": \"flag-ee\",\r\n \"unicode\": \"1f1ea-1f1ea\",\r\n \"shortname\": \":flag-ee:\",\r\n \"code_decimal\": \"🇪🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2254\"\r\n },\r\n {\r\n \"name\": \"flag-eg\",\r\n \"unicode\": \"1f1ea-1f1ec\",\r\n \"shortname\": \":flag-eg:\",\r\n \"code_decimal\": \"🇪🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2255\"\r\n },\r\n {\r\n \"name\": \"flag-eh\",\r\n \"unicode\": \"1f1ea-1f1ed\",\r\n \"shortname\": \":flag-eh:\",\r\n \"code_decimal\": \"🇪🇭\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2256\"\r\n },\r\n {\r\n \"name\": \"flag-er\",\r\n \"unicode\": \"1f1ea-1f1f7\",\r\n \"shortname\": \":flag-er:\",\r\n \"code_decimal\": \"🇪🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2257\"\r\n },\r\n {\r\n \"name\": \"flag-es\",\r\n \"unicode\": \"1f1ea-1f1f8\",\r\n \"shortname\": \":flag-es:\",\r\n \"code_decimal\": \"🇪🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2258\"\r\n },\r\n {\r\n \"name\": \"flag-et\",\r\n \"unicode\": \"1f1ea-1f1f9\",\r\n \"shortname\": \":flag-et:\",\r\n \"code_decimal\": \"🇪🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2259\"\r\n },\r\n {\r\n \"name\": \"flag-eu\",\r\n \"unicode\": \"1f1ea-1f1fa\",\r\n \"shortname\": \":flag-eu:\",\r\n \"code_decimal\": \"🇪🇺\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2260\"\r\n },\r\n {\r\n \"name\": \"flag-fi\",\r\n \"unicode\": \"1f1eb-1f1ee\",\r\n \"shortname\": \":flag-fi:\",\r\n \"code_decimal\": \"🇫🇮\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2261\"\r\n },\r\n {\r\n \"name\": \"flag-fj\",\r\n \"unicode\": \"1f1eb-1f1ef\",\r\n \"shortname\": \":flag-fj:\",\r\n \"code_decimal\": \"🇫🇯\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2262\"\r\n },\r\n {\r\n \"name\": \"flag-fk\",\r\n \"unicode\": \"1f1eb-1f1f0\",\r\n \"shortname\": \":flag-fk:\",\r\n \"code_decimal\": \"🇫🇰\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2263\"\r\n },\r\n {\r\n \"name\": \"flag-fm\",\r\n \"unicode\": \"1f1eb-1f1f2\",\r\n \"shortname\": \":flag-fm:\",\r\n \"code_decimal\": \"🇫🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2264\"\r\n },\r\n {\r\n \"name\": \"flag-fo\",\r\n \"unicode\": \"1f1eb-1f1f4\",\r\n \"shortname\": \":flag-fo:\",\r\n \"code_decimal\": \"🇫🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2265\"\r\n },\r\n {\r\n \"name\": \"flag-fr\",\r\n \"unicode\": \"1f1eb-1f1f7\",\r\n \"shortname\": \":flag-fr:\",\r\n \"code_decimal\": \"🇫🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2266\"\r\n },\r\n {\r\n \"name\": \"flag-ga\",\r\n \"unicode\": \"1f1ec-1f1e6\",\r\n \"shortname\": \":flag-ga:\",\r\n \"code_decimal\": \"🇬🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2267\"\r\n },\r\n {\r\n \"name\": \"flag-gb\",\r\n \"unicode\": \"1f1ec-1f1e7\",\r\n \"shortname\": \":flag-gb:\",\r\n \"code_decimal\": \"🇬🇧\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2268\"\r\n },\r\n {\r\n \"name\": \"flag-gd\",\r\n \"unicode\": \"1f1ec-1f1e9\",\r\n \"shortname\": \":flag-gd:\",\r\n \"code_decimal\": \"🇬🇩\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2269\"\r\n },\r\n {\r\n \"name\": \"flag-ge\",\r\n \"unicode\": \"1f1ec-1f1ea\",\r\n \"shortname\": \":flag-ge:\",\r\n \"code_decimal\": \"🇬🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2270\"\r\n },\r\n {\r\n \"name\": \"flag-gf\",\r\n \"unicode\": \"1f1ec-1f1eb\",\r\n \"shortname\": \":flag-gf:\",\r\n \"code_decimal\": \"🇬🇫\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2271\"\r\n },\r\n {\r\n \"name\": \"flag-gg\",\r\n \"unicode\": \"1f1ec-1f1ec\",\r\n \"shortname\": \":flag-gg:\",\r\n \"code_decimal\": \"🇬🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2272\"\r\n },\r\n {\r\n \"name\": \"flag-gh\",\r\n \"unicode\": \"1f1ec-1f1ed\",\r\n \"shortname\": \":flag-gh:\",\r\n \"code_decimal\": \"🇬🇭\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2273\"\r\n },\r\n {\r\n \"name\": \"flag-gi\",\r\n \"unicode\": \"1f1ec-1f1ee\",\r\n \"shortname\": \":flag-gi:\",\r\n \"code_decimal\": \"🇬🇮\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2274\"\r\n },\r\n {\r\n \"name\": \"flag-gl\",\r\n \"unicode\": \"1f1ec-1f1f1\",\r\n \"shortname\": \":flag-gl:\",\r\n \"code_decimal\": \"🇬🇱\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2275\"\r\n },\r\n {\r\n \"name\": \"flag-gm\",\r\n \"unicode\": \"1f1ec-1f1f2\",\r\n \"shortname\": \":flag-gm:\",\r\n \"code_decimal\": \"🇬🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2276\"\r\n },\r\n {\r\n \"name\": \"flag-gn\",\r\n \"unicode\": \"1f1ec-1f1f3\",\r\n \"shortname\": \":flag-gn:\",\r\n \"code_decimal\": \"🇬🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2277\"\r\n },\r\n {\r\n \"name\": \"flag-gp\",\r\n \"unicode\": \"1f1ec-1f1f5\",\r\n \"shortname\": \":flag-gp:\",\r\n \"code_decimal\": \"🇬🇵\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2278\"\r\n },\r\n {\r\n \"name\": \"flag-gq\",\r\n \"unicode\": \"1f1ec-1f1f6\",\r\n \"shortname\": \":flag-gq:\",\r\n \"code_decimal\": \"🇬🇶\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2279\"\r\n },\r\n {\r\n \"name\": \"flag-gr\",\r\n \"unicode\": \"1f1ec-1f1f7\",\r\n \"shortname\": \":flag-gr:\",\r\n \"code_decimal\": \"🇬🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2280\"\r\n },\r\n {\r\n \"name\": \"flag-gs\",\r\n \"unicode\": \"1f1ec-1f1f8\",\r\n \"shortname\": \":flag-gs:\",\r\n \"code_decimal\": \"🇬🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2281\"\r\n },\r\n {\r\n \"name\": \"flag-gt\",\r\n \"unicode\": \"1f1ec-1f1f9\",\r\n \"shortname\": \":flag-gt:\",\r\n \"code_decimal\": \"🇬🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2282\"\r\n },\r\n {\r\n \"name\": \"flag-gu\",\r\n \"unicode\": \"1f1ec-1f1fa\",\r\n \"shortname\": \":flag-gu:\",\r\n \"code_decimal\": \"🇬🇺\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2283\"\r\n },\r\n {\r\n \"name\": \"flag-gw\",\r\n \"unicode\": \"1f1ec-1f1fc\",\r\n \"shortname\": \":flag-gw:\",\r\n \"code_decimal\": \"🇬🇼\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2284\"\r\n },\r\n {\r\n \"name\": \"flag-gy\",\r\n \"unicode\": \"1f1ec-1f1fe\",\r\n \"shortname\": \":flag-gy:\",\r\n \"code_decimal\": \"🇬🇾\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2285\"\r\n },\r\n {\r\n \"name\": \"flag-hk\",\r\n \"unicode\": \"1f1ed-1f1f0\",\r\n \"shortname\": \":flag-hk:\",\r\n \"code_decimal\": \"🇭🇰\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2286\"\r\n },\r\n {\r\n \"name\": \"flag-hm\",\r\n \"unicode\": \"1f1ed-1f1f2\",\r\n \"shortname\": \":flag-hm:\",\r\n \"code_decimal\": \"🇭🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2287\"\r\n },\r\n {\r\n \"name\": \"flag-hn\",\r\n \"unicode\": \"1f1ed-1f1f3\",\r\n \"shortname\": \":flag-hn:\",\r\n \"code_decimal\": \"🇭🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2288\"\r\n },\r\n {\r\n \"name\": \"flag-hr\",\r\n \"unicode\": \"1f1ed-1f1f7\",\r\n \"shortname\": \":flag-hr:\",\r\n \"code_decimal\": \"🇭🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2289\"\r\n },\r\n {\r\n \"name\": \"flag-ht\",\r\n \"unicode\": \"1f1ed-1f1f9\",\r\n \"shortname\": \":flag-ht:\",\r\n \"code_decimal\": \"🇭🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2290\"\r\n },\r\n {\r\n \"name\": \"flag-hu\",\r\n \"unicode\": \"1f1ed-1f1fa\",\r\n \"shortname\": \":flag-hu:\",\r\n \"code_decimal\": \"🇭🇺\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2291\"\r\n },\r\n {\r\n \"name\": \"flag-ic\",\r\n \"unicode\": \"1f1ee-1f1e8\",\r\n \"shortname\": \":flag-ic:\",\r\n \"code_decimal\": \"🇮🇨\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2292\"\r\n },\r\n {\r\n \"name\": \"flag-id\",\r\n \"unicode\": \"1f1ee-1f1e9\",\r\n \"shortname\": \":flag-id:\",\r\n \"code_decimal\": \"🇮🇩\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2293\"\r\n },\r\n {\r\n \"name\": \"flag-ie\",\r\n \"unicode\": \"1f1ee-1f1ea\",\r\n \"shortname\": \":flag-ie:\",\r\n \"code_decimal\": \"🇮🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2294\"\r\n },\r\n {\r\n \"name\": \"flag-il\",\r\n \"unicode\": \"1f1ee-1f1f1\",\r\n \"shortname\": \":flag-il:\",\r\n \"code_decimal\": \"🇮🇱\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2295\"\r\n },\r\n\r\n\r\n\r\n {\r\n \"name\": \"flag-im\",\r\n \"unicode\": \"1f1ee-1f1f2\",\r\n \"shortname\": \":flag-im:\",\r\n \"code_decimal\": \"🇮🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2296\"\r\n },\r\n {\r\n \"name\": \"flag-in\",\r\n \"unicode\": \"1f1ee-1f1f3\",\r\n \"shortname\": \":flag-in:\",\r\n \"code_decimal\": \"🇮🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2297\"\r\n },\r\n {\r\n \"name\": \"flag-io\",\r\n \"unicode\": \"1f1ee-1f1f4\",\r\n \"shortname\": \":flag-io:\",\r\n \"code_decimal\": \"🇮🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2298\"\r\n },\r\n {\r\n \"name\": \"flag-iq\",\r\n \"unicode\": \"1f1ee-1f1f6\",\r\n \"shortname\": \":flag-iq:\",\r\n \"code_decimal\": \"🇮🇶\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2299\"\r\n },\r\n {\r\n \"name\": \"flag-ir\",\r\n \"unicode\": \"1f1ee-1f1f7\",\r\n \"shortname\": \":flag-ir:\",\r\n \"code_decimal\": \"🇮🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2300\"\r\n },\r\n {\r\n \"name\": \"flag-is\",\r\n \"unicode\": \"1f1ee-1f1f8\",\r\n \"shortname\": \":flag-is:\",\r\n \"code_decimal\": \"🇮🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2301\"\r\n },\r\n {\r\n \"name\": \"flag-it\",\r\n \"unicode\": \"1f1ee-1f1f9\",\r\n \"shortname\": \":flag-it:\",\r\n \"code_decimal\": \"🇮🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2302\"\r\n },\r\n {\r\n \"name\": \"flag-je\",\r\n \"unicode\": \"1f1ef-1f1ea\",\r\n \"shortname\": \":flag-je:\",\r\n \"code_decimal\": \"🇯🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2303\"\r\n },\r\n {\r\n \"name\": \"flag-jm\",\r\n \"unicode\": \"1f1ef-1f1f2\",\r\n \"shortname\": \":flag-jm:\",\r\n \"code_decimal\": \"🇯🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2304\"\r\n },\r\n {\r\n \"name\": \"flag-jo\",\r\n \"unicode\": \"1f1ef-1f1f4\",\r\n \"shortname\": \":flag-jo:\",\r\n \"code_decimal\": \"🇯🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2305\"\r\n },\r\n {\r\n \"name\": \"flag-jp\",\r\n \"unicode\": \"1f1ef-1f1f5\",\r\n \"shortname\": \":flag-jp:\",\r\n \"code_decimal\": \"🇯🇵\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2306\"\r\n },\r\n {\r\n \"name\": \"flag-ke\",\r\n \"unicode\": \"1f1f0-1f1ea\",\r\n \"shortname\": \":flag-ke:\",\r\n \"code_decimal\": \"🇰🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2307\"\r\n },\r\n {\r\n \"name\": \"flag-kg\",\r\n \"unicode\": \"1f1f0-1f1ec\",\r\n \"shortname\": \":flag-kg:\",\r\n \"code_decimal\": \"🇰🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2308\"\r\n },\r\n {\r\n \"name\": \"flag-kh\",\r\n \"unicode\": \"1f1f0-1f1ed\",\r\n \"shortname\": \":flag-kh:\",\r\n \"code_decimal\": \"🇰🇭\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2309\"\r\n },\r\n {\r\n \"name\": \"flag-ki\",\r\n \"unicode\": \"1f1f0-1f1ee\",\r\n \"shortname\": \":flag-ki:\",\r\n \"code_decimal\": \"🇰🇮\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2310\"\r\n },\r\n {\r\n \"name\": \"flag-km\",\r\n \"unicode\": \"1f1f0-1f1f2\",\r\n \"shortname\": \":flag-km:\",\r\n \"code_decimal\": \"🇰🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2311\"\r\n },\r\n {\r\n \"name\": \"flag-kn\",\r\n \"unicode\": \"1f1f0-1f1f3\",\r\n \"shortname\": \":flag-kn:\",\r\n \"code_decimal\": \"🇰🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2312\"\r\n },\r\n {\r\n \"name\": \"flag-kp\",\r\n \"unicode\": \"1f1f0-1f1f5\",\r\n \"shortname\": \":flag-kp:\",\r\n \"code_decimal\": \"🇰🇵\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2313\"\r\n },\r\n {\r\n \"name\": \"flag-kr\",\r\n \"unicode\": \"1f1f0-1f1f7\",\r\n \"shortname\": \":flag-kr:\",\r\n \"code_decimal\": \"🇰🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2314\"\r\n },\r\n {\r\n \"name\": \"flag-kw\",\r\n \"unicode\": \"1f1f0-1f1fc\",\r\n \"shortname\": \":flag-kw:\",\r\n \"code_decimal\": \"🇰🇼\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2315\"\r\n },\r\n {\r\n \"name\": \"flag-ky\",\r\n \"unicode\": \"1f1f0-1f1fe\",\r\n \"shortname\": \":flag-ky:\",\r\n \"code_decimal\": \"🇰🇾\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2316\"\r\n },\r\n {\r\n \"name\": \"flag-kz\",\r\n \"unicode\": \"1f1f0-1f1ff\",\r\n \"shortname\": \":flag-kz:\",\r\n \"code_decimal\": \"🇰🇿\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2317\"\r\n },\r\n {\r\n \"name\": \"flag-la\",\r\n \"unicode\": \"1f1f1-1f1e6\",\r\n \"shortname\": \":flag-la:\",\r\n \"code_decimal\": \"🇱🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2318\"\r\n },\r\n {\r\n \"name\": \"flag-lb\",\r\n \"unicode\": \"1f1f1-1f1e7\",\r\n \"shortname\": \":flag-lb:\",\r\n \"code_decimal\": \"🇱🇧\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2319\"\r\n },\r\n {\r\n \"name\": \"flag-lc\",\r\n \"unicode\": \"1f1f1-1f1e8\",\r\n \"shortname\": \":flag-lc:\",\r\n \"code_decimal\": \"🇱🇨\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2320\"\r\n },\r\n {\r\n \"name\": \"flag-li\",\r\n \"unicode\": \"1f1f1-1f1ee\",\r\n \"shortname\": \":flag-li:\",\r\n \"code_decimal\": \"🇱🇮\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2321\"\r\n },\r\n {\r\n \"name\": \"flag-lk\",\r\n \"unicode\": \"1f1f1-1f1f0\",\r\n \"shortname\": \":flag-lk:\",\r\n \"code_decimal\": \"🇱🇰\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2322\"\r\n },\r\n {\r\n \"name\": \"flag-lr\",\r\n \"unicode\": \"1f1f1-1f1f7\",\r\n \"shortname\": \":flag-lr:\",\r\n \"code_decimal\": \"🇱🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2323\"\r\n },\r\n {\r\n \"name\": \"flag-ls\",\r\n \"unicode\": \"1f1f1-1f1f8\",\r\n \"shortname\": \":flag-ls:\",\r\n \"code_decimal\": \"🇱🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2324\"\r\n },\r\n {\r\n \"name\": \"flag-lt\",\r\n \"unicode\": \"1f1f1-1f1f9\",\r\n \"shortname\": \":flag-lt:\",\r\n \"code_decimal\": \"🇱🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2325\"\r\n },\r\n {\r\n \"name\": \"flag-lu\",\r\n \"unicode\": \"1f1f1-1f1fa\",\r\n \"shortname\": \":flag-lu:\",\r\n \"code_decimal\": \"🇱🇺\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2326\"\r\n },\r\n {\r\n \"name\": \"flag-lv\",\r\n \"unicode\": \"1f1f1-1f1fb\",\r\n \"shortname\": \":flag-lv:\",\r\n \"code_decimal\": \"🇱🇻\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2327\"\r\n },\r\n {\r\n \"name\": \"flag-ly\",\r\n \"unicode\": \"1f1f1-1f1fe\",\r\n \"shortname\": \":flag-ly:\",\r\n \"code_decimal\": \"🇱🇾\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2328\"\r\n },\r\n {\r\n \"name\": \"flag-ma\",\r\n \"unicode\": \"1f1f2-1f1e6\",\r\n \"shortname\": \":flag-ma:\",\r\n \"code_decimal\": \"🇲🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2329\"\r\n },\r\n {\r\n \"name\": \"flag-mc\",\r\n \"unicode\": \"1f1f2-1f1e8\",\r\n \"shortname\": \":flag-mc:\",\r\n \"code_decimal\": \"🇲🇨\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2330\"\r\n },\r\n {\r\n \"name\": \"flag-md\",\r\n \"unicode\": \"1f1f2-1f1e9\",\r\n \"shortname\": \":flag-md:\",\r\n \"code_decimal\": \"🇲🇩\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2331\"\r\n },\r\n {\r\n \"name\": \"flag-me\",\r\n \"unicode\": \"1f1f2-1f1ea\",\r\n \"shortname\": \":flag-me:\",\r\n \"code_decimal\": \"🇲🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2332\"\r\n },\r\n {\r\n \"name\": \"flag-mf\",\r\n \"unicode\": \"1f1f2-1f1eb\",\r\n \"shortname\": \":flag-mf:\",\r\n \"code_decimal\": \"🇲🇫\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2333\"\r\n },\r\n {\r\n \"name\": \"flag-mg\",\r\n \"unicode\": \"1f1f2-1f1ec\",\r\n \"shortname\": \":flag-mg:\",\r\n \"code_decimal\": \"🇲🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2334\"\r\n },\r\n {\r\n \"name\": \"flag-mh\",\r\n \"unicode\": \"1f1f2-1f1ed\",\r\n \"shortname\": \":flag-mh:\",\r\n \"code_decimal\": \"🇲🇭\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2335\"\r\n },\r\n {\r\n \"name\": \"flag-mk\",\r\n \"unicode\": \"1f1f2-1f1f0\",\r\n \"shortname\": \":flag-mk:\",\r\n \"code_decimal\": \"🇲🇰\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2336\"\r\n },\r\n {\r\n \"name\": \"flag-ml\",\r\n \"unicode\": \"1f1f2-1f1f1\",\r\n \"shortname\": \":flag-ml:\",\r\n \"code_decimal\": \"🇲🇱\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2337\"\r\n },\r\n {\r\n \"name\": \"flag-mm\",\r\n \"unicode\": \"1f1f2-1f1f2\",\r\n \"shortname\": \":flag-mm:\",\r\n \"code_decimal\": \"🇲🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2338\"\r\n },\r\n {\r\n \"name\": \"flag-mn\",\r\n \"unicode\": \"1f1f2-1f1f3\",\r\n \"shortname\": \":flag-mn:\",\r\n \"code_decimal\": \"🇲🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2339\"\r\n },\r\n {\r\n \"name\": \"flag-mo\",\r\n \"unicode\": \"1f1f2-1f1f4\",\r\n \"shortname\": \":flag-mo:\",\r\n \"code_decimal\": \"🇲🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2340\"\r\n },\r\n {\r\n \"name\": \"flag-mp\",\r\n \"unicode\": \"1f1f2-1f1f5\",\r\n \"shortname\": \":flag-mp:\",\r\n \"code_decimal\": \"🇲🇵\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2341\"\r\n },\r\n {\r\n \"name\": \"flag-mq\",\r\n \"unicode\": \"1f1f2-1f1f6\",\r\n \"shortname\": \":flag-mq:\",\r\n \"code_decimal\": \"🇲🇶\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2342\"\r\n },\r\n {\r\n \"name\": \"flag-mr\",\r\n \"unicode\": \"1f1f2-1f1f7\",\r\n \"shortname\": \":flag-mr:\",\r\n \"code_decimal\": \"🇲🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2343\"\r\n },\r\n {\r\n \"name\": \"flag-ms\",\r\n \"unicode\": \"1f1f2-1f1f8\",\r\n \"shortname\": \":flag-ms:\",\r\n \"code_decimal\": \"🇲🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2344\"\r\n },\r\n {\r\n \"name\": \"flag-mt\",\r\n \"unicode\": \"1f1f2-1f1f9\",\r\n \"shortname\": \":flag-mt:\",\r\n \"code_decimal\": \"🇲🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2345\"\r\n },\r\n {\r\n \"name\": \"flag-mu\",\r\n \"unicode\": \"1f1f2-1f1fa\",\r\n \"shortname\": \":flag-mu:\",\r\n \"code_decimal\": \"🇲🇺\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2346\"\r\n },\r\n {\r\n \"name\": \"flag-mv\",\r\n \"unicode\": \"1f1f2-1f1fb\",\r\n \"shortname\": \":flag-mv:\",\r\n \"code_decimal\": \"🇲🇻\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2347\"\r\n },\r\n {\r\n \"name\": \"flag-mw\",\r\n \"unicode\": \"1f1f2-1f1fc\",\r\n \"shortname\": \":flag-mw:\",\r\n \"code_decimal\": \"🇲🇼\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2348\"\r\n },\r\n {\r\n \"name\": \"flag-mx\",\r\n \"unicode\": \"1f1f2-1f1fd\",\r\n \"shortname\": \":flag-mx:\",\r\n \"code_decimal\": \"🇲🇽\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2349\"\r\n },\r\n {\r\n \"name\": \"flag-my\",\r\n \"unicode\": \"1f1f2-1f1fe\",\r\n \"shortname\": \":flag-my:\",\r\n \"code_decimal\": \"🇲🇾\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2350\"\r\n },\r\n {\r\n \"name\": \"flag-mz\",\r\n \"unicode\": \"1f1f2-1f1ff\",\r\n \"shortname\": \":flag-mz:\",\r\n \"code_decimal\": \"🇲🇿\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2351\"\r\n },\r\n {\r\n \"name\": \"flag-na\",\r\n \"unicode\": \"1f1f3-1f1e6\",\r\n \"shortname\": \":flag-na:\",\r\n \"code_decimal\": \"🇳🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2352\"\r\n },\r\n {\r\n \"name\": \"flag-nc\",\r\n \"unicode\": \"1f1f3-1f1e8\",\r\n \"shortname\": \":flag-nc:\",\r\n \"code_decimal\": \"🇳🇨\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2353\"\r\n },\r\n {\r\n \"name\": \"flag-ne\",\r\n \"unicode\": \"1f1f3-1f1ea\",\r\n \"shortname\": \":flag-ne:\",\r\n \"code_decimal\": \"🇳🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2354\"\r\n },\r\n {\r\n \"name\": \"flag-nf\",\r\n \"unicode\": \"1f1f3-1f1eb\",\r\n \"shortname\": \":flag-nf:\",\r\n \"code_decimal\": \"🇳🇫\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2355\"\r\n },\r\n {\r\n \"name\": \"flag-ng\",\r\n \"unicode\": \"1f1f3-1f1ec\",\r\n \"shortname\": \":flag-ng:\",\r\n \"code_decimal\": \"🇳🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2356\"\r\n },\r\n {\r\n \"name\": \"flag-ni\",\r\n \"unicode\": \"1f1f3-1f1ee\",\r\n \"shortname\": \":flag-ni:\",\r\n \"code_decimal\": \"🇳🇮\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2357\"\r\n },\r\n {\r\n \"name\": \"flag-nl\",\r\n \"unicode\": \"1f1f3-1f1f1\",\r\n \"shortname\": \":flag-nl:\",\r\n \"code_decimal\": \"🇳🇱\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2358\"\r\n },\r\n {\r\n \"name\": \"flag-no\",\r\n \"unicode\": \"1f1f3-1f1f4\",\r\n \"shortname\": \":flag-no:\",\r\n \"code_decimal\": \"🇳🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2359\"\r\n },\r\n {\r\n \"name\": \"flag-np\",\r\n \"unicode\": \"1f1f3-1f1f5\",\r\n \"shortname\": \":flag-np:\",\r\n \"code_decimal\": \"🇳🇵\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2360\"\r\n },\r\n {\r\n \"name\": \"flag-nr\",\r\n \"unicode\": \"1f1f3-1f1f7\",\r\n \"shortname\": \":flag-nr:\",\r\n \"code_decimal\": \"🇳🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2361\"\r\n },\r\n {\r\n \"name\": \"flag-nu\",\r\n \"unicode\": \"1f1f3-1f1fa\",\r\n \"shortname\": \":flag-nu:\",\r\n \"code_decimal\": \"🇳🇺\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2362\"\r\n },\r\n {\r\n \"name\": \"flag-nz\",\r\n \"unicode\": \"1f1f3-1f1ff\",\r\n \"shortname\": \":flag-nz:\",\r\n \"code_decimal\": \"🇳🇿\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2363\"\r\n },\r\n {\r\n \"name\": \"flag-om\",\r\n \"unicode\": \"1f1f4-1f1f2\",\r\n \"shortname\": \":flag-om:\",\r\n \"code_decimal\": \"🇴🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2364\"\r\n },\r\n {\r\n \"name\": \"flag-pa\",\r\n \"unicode\": \"1f1f5-1f1e6\",\r\n \"shortname\": \":flag-pa:\",\r\n \"code_decimal\": \"🇵🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2365\"\r\n },\r\n {\r\n \"name\": \"flag-pe\",\r\n \"unicode\": \"1f1f5-1f1ea\",\r\n \"shortname\": \":flag-pe:\",\r\n \"code_decimal\": \"🇵🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2366\"\r\n },\r\n {\r\n \"name\": \"flag-pf\",\r\n \"unicode\": \"1f1f5-1f1eb\",\r\n \"shortname\": \":flag-pf:\",\r\n \"code_decimal\": \"🇵🇫\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2367\"\r\n },\r\n {\r\n \"name\": \"flag-pg\",\r\n \"unicode\": \"1f1f5-1f1ec\",\r\n \"shortname\": \":flag-pg:\",\r\n \"code_decimal\": \"🇵🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2368\"\r\n },\r\n {\r\n \"name\": \"flag-ph\",\r\n \"unicode\": \"1f1f5-1f1ed\",\r\n \"shortname\": \":flag-ph:\",\r\n \"code_decimal\": \"🇵🇭\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2369\"\r\n },\r\n {\r\n \"name\": \"flag-pk\",\r\n \"unicode\": \"1f1f5-1f1f0\",\r\n \"shortname\": \":flag-pk:\",\r\n \"code_decimal\": \"🇵🇰\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2370\"\r\n },\r\n {\r\n \"name\": \"flag-pl\",\r\n \"unicode\": \"1f1f5-1f1f1\",\r\n \"shortname\": \":flag-pl:\",\r\n \"code_decimal\": \"🇵🇱\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2371\"\r\n },\r\n {\r\n \"name\": \"flag-pm\",\r\n \"unicode\": \"1f1f5-1f1f2\",\r\n \"shortname\": \":flag-pm:\",\r\n \"code_decimal\": \"🇵🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2372\"\r\n },\r\n {\r\n \"name\": \"flag-pn\",\r\n \"unicode\": \"1f1f5-1f1f3\",\r\n \"shortname\": \":flag-pn:\",\r\n \"code_decimal\": \"🇵🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2373\"\r\n },\r\n {\r\n \"name\": \"flag-pr\",\r\n \"unicode\": \"1f1f5-1f1f7\",\r\n \"shortname\": \":flag-pr:\",\r\n \"code_decimal\": \"🇵🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2374\"\r\n },\r\n {\r\n \"name\": \"flag-ps\",\r\n \"unicode\": \"1f1f5-1f1f8\",\r\n \"shortname\": \":flag-ps:\",\r\n \"code_decimal\": \"🇵🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2375\"\r\n },\r\n {\r\n \"name\": \"flag-pt\",\r\n \"unicode\": \"1f1f5-1f1f9\",\r\n \"shortname\": \":flag-pt:\",\r\n \"code_decimal\": \"🇵🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2376\"\r\n },\r\n {\r\n \"name\": \"flag-pw\",\r\n \"unicode\": \"1f1f5-1f1fc\",\r\n \"shortname\": \":flag-pw:\",\r\n \"code_decimal\": \"🇵🇼\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2377\"\r\n },\r\n {\r\n \"name\": \"flag-py\",\r\n \"unicode\": \"1f1f5-1f1fe\",\r\n \"shortname\": \":flag-py:\",\r\n \"code_decimal\": \"🇵🇾\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2378\"\r\n },\r\n {\r\n \"name\": \"flag-qa\",\r\n \"unicode\": \"1f1f6-1f1e6\",\r\n \"shortname\": \":flag-qa:\",\r\n \"code_decimal\": \"🇶🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2379\"\r\n },\r\n {\r\n \"name\": \"flag-re\",\r\n \"unicode\": \"1f1f7-1f1ea\",\r\n \"shortname\": \":flag-re:\",\r\n \"code_decimal\": \"🇷🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2380\"\r\n },\r\n {\r\n \"name\": \"flag-ro\",\r\n \"unicode\": \"1f1f7-1f1f4\",\r\n \"shortname\": \":flag-ro:\",\r\n \"code_decimal\": \"🇷🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2381\"\r\n },\r\n {\r\n \"name\": \"flag-rs\",\r\n \"unicode\": \"1f1f7-1f1f8\",\r\n \"shortname\": \":flag-rs:\",\r\n \"code_decimal\": \"🇷🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2382\"\r\n },\r\n {\r\n \"name\": \"flag-ru\",\r\n \"unicode\": \"1f1f7-1f1fa\",\r\n \"shortname\": \":flag-ru:\",\r\n \"code_decimal\": \"🇷🇺\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2383\"\r\n },\r\n {\r\n \"name\": \"flag-rw\",\r\n \"unicode\": \"1f1f7-1f1fc\",\r\n \"shortname\": \":flag-rw:\",\r\n \"code_decimal\": \"🇷🇼\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2384\"\r\n },\r\n {\r\n \"name\": \"flag-sa\",\r\n \"unicode\": \"1f1f8-1f1e6\",\r\n \"shortname\": \":flag-sa:\",\r\n \"code_decimal\": \"🇸🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2385\"\r\n },\r\n\r\n\r\n\r\n {\r\n \"name\": \"flag-sb\",\r\n \"unicode\": \"1f1f8-1f1e7\",\r\n \"shortname\": \":flag-sb:\",\r\n \"code_decimal\": \"🇸🇧\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2386\"\r\n },\r\n {\r\n \"name\": \"flag-sc\",\r\n \"unicode\": \"1f1f8-1f1e8\",\r\n \"shortname\": \":flag-sc:\",\r\n \"code_decimal\": \"🇸🇨\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2387\"\r\n },\r\n {\r\n \"name\": \"flag-sd\",\r\n \"unicode\": \"1f1f8-1f1e9\",\r\n \"shortname\": \":flag-sd:\",\r\n \"code_decimal\": \"🇸🇩\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2388\"\r\n },\r\n {\r\n \"name\": \"flag-se\",\r\n \"unicode\": \"1f1f8-1f1ea\",\r\n \"shortname\": \":flag-se:\",\r\n \"code_decimal\": \"🇸🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2389\"\r\n },\r\n {\r\n \"name\": \"flag-sg\",\r\n \"unicode\": \"1f1f8-1f1ec\",\r\n \"shortname\": \":flag-sg:\",\r\n \"code_decimal\": \"🇸🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2390\"\r\n },\r\n {\r\n \"name\": \"flag-sh\",\r\n \"unicode\": \"1f1f8-1f1ed\",\r\n \"shortname\": \":flag-sh:\",\r\n \"code_decimal\": \"🇸🇭\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2391\"\r\n },\r\n {\r\n \"name\": \"flag-si\",\r\n \"unicode\": \"1f1f8-1f1ee\",\r\n \"shortname\": \":flag-si:\",\r\n \"code_decimal\": \"🇸🇮\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2392\"\r\n },\r\n {\r\n \"name\": \"flag-sj\",\r\n \"unicode\": \"1f1f8-1f1ef\",\r\n \"shortname\": \":flag-sj:\",\r\n \"code_decimal\": \"🇸🇯\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2393\"\r\n },\r\n {\r\n \"name\": \"flag-sk\",\r\n \"unicode\": \"1f1f8-1f1f0\",\r\n \"shortname\": \":flag-sk:\",\r\n \"code_decimal\": \"🇸🇰\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2394\"\r\n },\r\n {\r\n \"name\": \"flag-sl\",\r\n \"unicode\": \"1f1f8-1f1f1\",\r\n \"shortname\": \":flag-sl:\",\r\n \"code_decimal\": \"🇸🇱\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2395\"\r\n },\r\n {\r\n \"name\": \"flag-sm\",\r\n \"unicode\": \"1f1f8-1f1f2\",\r\n \"shortname\": \":flag-sm:\",\r\n \"code_decimal\": \"🇸🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2396\"\r\n },\r\n {\r\n \"name\": \"flag-sn\",\r\n \"unicode\": \"1f1f8-1f1f3\",\r\n \"shortname\": \":flag-sn:\",\r\n \"code_decimal\": \"🇸🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2397\"\r\n },\r\n {\r\n \"name\": \"flag-so\",\r\n \"unicode\": \"1f1f8-1f1f4\",\r\n \"shortname\": \":flag-so:\",\r\n \"code_decimal\": \"🇸🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2398\"\r\n },\r\n {\r\n \"name\": \"flag-sr\",\r\n \"unicode\": \"1f1f8-1f1f7\",\r\n \"shortname\": \":flag-sr:\",\r\n \"code_decimal\": \"🇸🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2399\"\r\n },\r\n {\r\n \"name\": \"flag-ss\",\r\n \"unicode\": \"1f1f8-1f1f8\",\r\n \"shortname\": \":flag-ss:\",\r\n \"code_decimal\": \"🇸🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2400\"\r\n },\r\n {\r\n \"name\": \"flag-st\",\r\n \"unicode\": \"1f1f8-1f1f9\",\r\n \"shortname\": \":flag-st:\",\r\n \"code_decimal\": \"🇸🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2401\"\r\n },\r\n {\r\n \"name\": \"flag-sv\",\r\n \"unicode\": \"1f1f8-1f1fb\",\r\n \"shortname\": \":flag-sv:\",\r\n \"code_decimal\": \"🇸🇻\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2402\"\r\n },\r\n {\r\n \"name\": \"flag-sx\",\r\n \"unicode\": \"1f1f8-1f1fd\",\r\n \"shortname\": \":flag-sx:\",\r\n \"code_decimal\": \"🇸🇽\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2403\"\r\n },\r\n {\r\n \"name\": \"flag-sy\",\r\n \"unicode\": \"1f1f8-1f1fe\",\r\n \"shortname\": \":flag-sy:\",\r\n \"code_decimal\": \"🇸🇾\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2404\"\r\n },\r\n {\r\n \"name\": \"flag-sz\",\r\n \"unicode\": \"1f1f8-1f1ff\",\r\n \"shortname\": \":flag-sz:\",\r\n \"code_decimal\": \"🇸🇿\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2405\"\r\n },\r\n {\r\n \"name\": \"flag-ta\",\r\n \"unicode\": \"1f1f9-1f1e6\",\r\n \"shortname\": \":flag-ta:\",\r\n \"code_decimal\": \"🇹🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2406\"\r\n },\r\n {\r\n \"name\": \"flag-tc\",\r\n \"unicode\": \"1f1f9-1f1e8\",\r\n \"shortname\": \":flag-tc:\",\r\n \"code_decimal\": \"🇹🇨\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2407\"\r\n },\r\n {\r\n \"name\": \"flag-td\",\r\n \"unicode\": \"1f1f9-1f1e9\",\r\n \"shortname\": \":flag-td:\",\r\n \"code_decimal\": \"🇹🇩\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2408\"\r\n },\r\n {\r\n \"name\": \"flag-tf\",\r\n \"unicode\": \"1f1f9-1f1eb\",\r\n \"shortname\": \":flag-tf:\",\r\n \"code_decimal\": \"🇹🇫\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2409\"\r\n },\r\n {\r\n \"name\": \"flag-tg\",\r\n \"unicode\": \"1f1f9-1f1ec\",\r\n \"shortname\": \":flag-tg:\",\r\n \"code_decimal\": \"🇹🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2410\"\r\n },\r\n {\r\n \"name\": \"flag-th\",\r\n \"unicode\": \"1f1f9-1f1ed\",\r\n \"shortname\": \":flag-th:\",\r\n \"code_decimal\": \"🇹🇭\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2411\"\r\n },\r\n {\r\n \"name\": \"flag-tj\",\r\n \"unicode\": \"1f1f9-1f1ef\",\r\n \"shortname\": \":flag-tj:\",\r\n \"code_decimal\": \"🇹🇯\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2412\"\r\n },\r\n {\r\n \"name\": \"flag-tk\",\r\n \"unicode\": \"1f1f9-1f1f0\",\r\n \"shortname\": \":flag-tk:\",\r\n \"code_decimal\": \"🇹🇰\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2413\"\r\n },\r\n {\r\n \"name\": \"flag-tl\",\r\n \"unicode\": \"1f1f9-1f1f1\",\r\n \"shortname\": \":flag-tl:\",\r\n \"code_decimal\": \"🇹🇱\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2414\"\r\n },\r\n {\r\n \"name\": \"flag-tm\",\r\n \"unicode\": \"1f1f9-1f1f2\",\r\n \"shortname\": \":flag-tm:\",\r\n \"code_decimal\": \"🇹🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2415\"\r\n },\r\n {\r\n \"name\": \"flag-tn\",\r\n \"unicode\": \"1f1f9-1f1f3\",\r\n \"shortname\": \":flag-tn:\",\r\n \"code_decimal\": \"🇹🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2416\"\r\n },\r\n {\r\n \"name\": \"flag-to\",\r\n \"unicode\": \"1f1f9-1f1f4\",\r\n \"shortname\": \":flag-to:\",\r\n \"code_decimal\": \"🇹🇴\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2417\"\r\n },\r\n {\r\n \"name\": \"flag-tr\",\r\n \"unicode\": \"1f1f9-1f1f7\",\r\n \"shortname\": \":flag-tr:\",\r\n \"code_decimal\": \"🇹🇷\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2418\"\r\n },\r\n {\r\n \"name\": \"flag-tt\",\r\n \"unicode\": \"1f1f9-1f1f9\",\r\n \"shortname\": \":flag-tt:\",\r\n \"code_decimal\": \"🇹🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2419\"\r\n },\r\n {\r\n \"name\": \"flag-tv\",\r\n \"unicode\": \"1f1f9-1f1fb\",\r\n \"shortname\": \":flag-tv:\",\r\n \"code_decimal\": \"🇹🇻\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2420\"\r\n },\r\n {\r\n \"name\": \"flag-tw\",\r\n \"unicode\": \"1f1f9-1f1fc\",\r\n \"shortname\": \":flag-tw:\",\r\n \"code_decimal\": \"🇹🇼\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2421\"\r\n },\r\n {\r\n \"name\": \"flag-tz\",\r\n \"unicode\": \"1f1f9-1f1ff\",\r\n \"shortname\": \":flag-tz:\",\r\n \"code_decimal\": \"🇹🇿\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2422\"\r\n },\r\n {\r\n \"name\": \"flag-ua\",\r\n \"unicode\": \"1f1fa-1f1e6\",\r\n \"shortname\": \":flag-ua:\",\r\n \"code_decimal\": \"🇺🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2423\"\r\n },\r\n {\r\n \"name\": \"flag-ug\",\r\n \"unicode\": \"1f1fa-1f1ec\",\r\n \"shortname\": \":flag-ug:\",\r\n \"code_decimal\": \"🇺🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2424\"\r\n },\r\n {\r\n \"name\": \"flag-um\",\r\n \"unicode\": \"1f1fa-1f1f2\",\r\n \"shortname\": \":flag-um:\",\r\n \"code_decimal\": \"🇺🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2425\"\r\n },\r\n {\r\n \"name\": \"flag-us\",\r\n \"unicode\": \"1f1fa-1f1f8\",\r\n \"shortname\": \":flag-us:\",\r\n \"code_decimal\": \"🇺🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2427\"\r\n },\r\n {\r\n \"name\": \"flag-uy\",\r\n \"unicode\": \"1f1fa-1f1fe\",\r\n \"shortname\": \":flag-uy:\",\r\n \"code_decimal\": \"🇺🇾\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2428\"\r\n },\r\n {\r\n \"name\": \"flag-uz\",\r\n \"unicode\": \"1f1fa-1f1ff\",\r\n \"shortname\": \":flag-uz:\",\r\n \"code_decimal\": \"🇺🇿\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2429\"\r\n },\r\n {\r\n \"name\": \"flag-va\",\r\n \"unicode\": \"1f1fb-1f1e6\",\r\n \"shortname\": \":flag-va:\",\r\n \"code_decimal\": \"🇻🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2430\"\r\n },\r\n {\r\n \"name\": \"flag-vc\",\r\n \"unicode\": \"1f1fb-1f1e8\",\r\n \"shortname\": \":flag-vc:\",\r\n \"code_decimal\": \"🇻🇨\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2431\"\r\n },\r\n {\r\n \"name\": \"flag-ve\",\r\n \"unicode\": \"1f1fb-1f1ea\",\r\n \"shortname\": \":flag-ve:\",\r\n \"code_decimal\": \"🇻🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2432\"\r\n },\r\n {\r\n \"name\": \"flag-vg\",\r\n \"unicode\": \"1f1fb-1f1ec\",\r\n \"shortname\": \":flag-vg:\",\r\n \"code_decimal\": \"🇻🇬\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2433\"\r\n },\r\n {\r\n \"name\": \"flag-vi\",\r\n \"unicode\": \"1f1fb-1f1ee\",\r\n \"shortname\": \":flag-vi:\",\r\n \"code_decimal\": \"🇻🇮\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2434\"\r\n },\r\n {\r\n \"name\": \"flag-vn\",\r\n \"unicode\": \"1f1fb-1f1f3\",\r\n \"shortname\": \":flag-vn:\",\r\n \"code_decimal\": \"🇻🇳\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2435\"\r\n },\r\n\r\n {\r\n \"name\": \"flag-vu\",\r\n \"unicode\": \"1f1fb-1f1fa\",\r\n \"shortname\": \":flag_vu:\",\r\n \"code_decimal\": \"🇻🇺\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2436\"\r\n },\r\n {\r\n \"name\": \"flag-wf\",\r\n \"unicode\": \"1f1fc-1f1eb\",\r\n \"shortname\": \":flag_wf:\",\r\n \"code_decimal\": \"🇼🇫\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2437\"\r\n },\r\n {\r\n \"name\": \"flag-ws\",\r\n \"unicode\": \"1f1fc-1f1f8\",\r\n \"shortname\": \":flag_ws:\",\r\n \"code_decimal\": \"🇼🇸\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2438\"\r\n },\r\n {\r\n \"name\": \"flag-xk\",\r\n \"unicode\": \"1f1fd-1f1f0\",\r\n \"shortname\": \":flag_xk:\",\r\n \"code_decimal\": \"🇽🇰\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2439\"\r\n },\r\n {\r\n \"name\": \"flag-ye\",\r\n \"unicode\": \"1f1fe-1f1ea\",\r\n \"shortname\": \":flag_ye:\",\r\n \"code_decimal\": \"🇾🇪\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2440\"\r\n },\r\n {\r\n \"name\": \"flag-yt\",\r\n \"unicode\": \"1f1fe-1f1f9\",\r\n \"shortname\": \":flag_yt:\",\r\n \"code_decimal\": \"🇾🇹\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2441\"\r\n },\r\n {\r\n \"name\": \"flag-za\",\r\n \"unicode\": \"1f1ff-1f1e6\",\r\n \"shortname\": \":flag_za:\",\r\n \"code_decimal\": \"🇿🇦\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2442\"\r\n },\r\n {\r\n \"name\": \"flag-zm\",\r\n \"unicode\": \"1f1ff-1f1f2\",\r\n \"shortname\": \":flag_zm:\",\r\n \"code_decimal\": \"🇿🇲\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2443\"\r\n },\r\n {\r\n \"name\": \"flag-zw\",\r\n \"unicode\": \"1f1ff-1f1fc\",\r\n \"shortname\": \":flag_zw:\",\r\n \"code_decimal\": \"🇿🇼\",\r\n \"category\": \"f\",\r\n \"emoji_order\": \"2444\"\r\n }\r\n];\r\n\r\nexport default emojiList;","import emojiList from \"./emoji-list\";\r\n\r\nconst emojiMap = {};\r\n\r\nemojiList.forEach((emojiListObject) => {\r\n emojiMap[emojiListObject.name] = emojiListObject;\r\n});\r\n\r\nexport default emojiMap;","import Quill from 'quill';\r\nimport emojiMap from \"./emoji-map\";\r\n\r\nconst Embed = Quill.import('blots/embed');\r\n\r\nclass EmojiBlot extends Embed {\r\n static create(value) {\r\n let node = super.create();\r\n if (typeof value === 'object') {\r\n \r\n EmojiBlot.buildSpan(value, node);\r\n } else if (typeof value === \"string\") {\r\n const valueObj = emojiMap[value];\r\n\r\n if (valueObj) {\r\n EmojiBlot.buildSpan(valueObj, node);\r\n }\r\n }\r\n\r\n return node;\r\n }\r\n\r\n static value(node) {\r\n return node.dataset.name;\r\n }\r\n\r\n static buildSpan(value, node) {\r\n node.setAttribute('data-name', value.name);\r\n let emojiSpan = document.createElement('span');\r\n emojiSpan.classList.add(this.emojiClass);\r\n emojiSpan.classList.add(this.emojiPrefix + value.name);\r\n emojiSpan.innerText = String.fromCodePoint('0x' + value.unicode);\r\n node.appendChild(emojiSpan);\r\n }\r\n}\r\n\r\nEmojiBlot.blotName = 'emoji';\r\n// EmojiBlot.className = 'ql-emojiblot';\r\nEmojiBlot.tagName = 'span';\r\nEmojiBlot.emojiClass = 'ap';\r\nEmojiBlot.emojiPrefix = 'ap-';\r\n\r\nexport default EmojiBlot;","import Quill from 'quill';\r\nimport Fuse from 'fuse.js';\r\nimport emojiList from './emoji-list.js';\r\n\r\nconst Delta = Quill.import('delta');\r\nconst Module = Quill.import('core/module');\r\n\r\nclass ToolbarEmoji extends Module {\r\n constructor(quill, options) {\r\n super(quill, options);\r\n \r\n this.quill = quill;\r\n this.toolbar = quill.getModule('toolbar');\r\n if (typeof this.toolbar !== 'undefined')\r\n this.toolbar.addHandler('emoji', this.checkPalatteExist);\r\n\r\n var emojiBtns = document.getElementsByClassName('ql-emoji');\r\n if (emojiBtns) {\r\n [].slice.call( emojiBtns ).forEach(function ( emojiBtn ) {\r\n emojiBtn.innerHTML = options.buttonIcon;\r\n });\r\n }\r\n }\r\n\r\n checkPalatteExist() {\r\n let quill = this.quill;\r\n fn_checkDialogOpen(quill);\r\n this.quill.on('text-change', function(delta, oldDelta, source) {\r\n if (source === 'user') {\r\n fn_close();\r\n fn_updateRange(quill);\r\n }\r\n });\r\n }\r\n}\r\n\r\nToolbarEmoji.DEFAULTS = {\r\n buttonIcon: ''\r\n};\r\n\r\nfunction fn_close(){\r\n let ele_emoji_plate = document.getElementById('emoji-palette');\r\n document.getElementById('emoji-close-div').style.display = \"none\";\r\n if (ele_emoji_plate) {ele_emoji_plate.remove()}\r\n}\r\n\r\nfunction fn_checkDialogOpen(quill){\r\n let elementExists = document.getElementById(\"emoji-palette\");\r\n if (elementExists) {\r\n elementExists.remove();\r\n }\r\n else{\r\n fn_showEmojiPalatte(quill);\r\n }\r\n}\r\n\r\nfunction fn_updateRange(quill){\r\n let range = quill.getSelection();\r\n return range;\r\n}\r\n\r\nfunction fn_showEmojiPalatte(quill) {\r\n let ele_emoji_area = document.createElement('div');\r\n let toolbar_container = document.querySelector('.ql-toolbar');\r\n let range = quill.getSelection();\r\n const atSignBounds = quill.getBounds(range.index);\r\n\r\n quill.container.appendChild(ele_emoji_area);\r\n let paletteMaxPos = atSignBounds.left + 250;//palette max width is 250\r\n ele_emoji_area.id = 'emoji-palette';\r\n ele_emoji_area.style.top = 10 + atSignBounds.top + atSignBounds.height + \"px\";\r\n if (paletteMaxPos > quill.container.offsetWidth) {\r\n ele_emoji_area.style.left = (atSignBounds.left - 250)+ \"px\";\r\n }\r\n else{\r\n ele_emoji_area.style.left = atSignBounds.left + \"px\";\r\n }\r\n\r\n\r\n let tabToolbar = document.createElement('div');\r\n tabToolbar.id=\"tab-toolbar\";\r\n ele_emoji_area.appendChild(tabToolbar);\r\n\r\n //panel\r\n let panel = document.createElement('div');\r\n panel.id=\"tab-panel\";\r\n ele_emoji_area.appendChild(panel);\r\n\r\n var emojiType = [\r\n {'type':'p','name':'people','content':''},\r\n {'type':'n','name':'nature','content':''},\r\n {'type':'d','name':'food','content':''},\r\n {'type':'s','name':'symbols','content':''},\r\n {'type':'a','name':'activity','content':''},\r\n {'type':'t','name':'travel','content':''},\r\n {'type':'o','name':'objects','content':''}\r\n ];\r\n\r\n let tabElementHolder = document.createElement('ul');\r\n tabToolbar.appendChild(tabElementHolder);\r\n\r\n if (document.getElementById('emoji-close-div') === null) {\r\n let closeDiv = document.createElement('div');\r\n closeDiv.id = 'emoji-close-div';\r\n closeDiv.addEventListener(\"click\", fn_close, false);\r\n document.getElementsByTagName('body')[0].appendChild(closeDiv);\r\n }\r\n else{\r\n document.getElementById('emoji-close-div').style.display = \"block\";\r\n }\r\n\r\n\r\n emojiType.map(function(emojiType) {\r\n //add tab bar\r\n let tabElement = document.createElement('li');\r\n tabElement.classList.add('emoji-tab');\r\n tabElement.classList.add('filter-'+emojiType.name);\r\n let tabValue = emojiType.content;\r\n tabElement.innerHTML = tabValue;\r\n tabElement.dataset.filter = emojiType.type;\r\n tabElementHolder.appendChild(tabElement);\r\n\r\n let emojiFilter = document.querySelector('.filter-'+emojiType.name);\r\n emojiFilter.addEventListener('click',function(){\r\n let tab = document.querySelector('.active');\r\n if (tab) {\r\n tab.classList.remove('active');\r\n }\r\n emojiFilter.classList.toggle('active');\r\n fn_updateEmojiContainer(emojiFilter,panel,quill);\r\n })\r\n });\r\n fn_emojiPanelInit(panel,quill);\r\n}\r\n\r\nfunction fn_emojiPanelInit(panel,quill){\r\n fn_emojiElementsToPanel('p', panel, quill);\r\n document.querySelector('.filter-people').classList.add('active');\r\n}\r\n\r\nfunction fn_emojiElementsToPanel(type,panel,quill){\r\n let fuseOptions = {\r\n shouldSort: true,\r\n matchAllTokens: true,\r\n threshold: 0.3,\r\n location: 0,\r\n distance: 100,\r\n maxPatternLength: 32,\r\n minMatchCharLength: 3,\r\n keys: [\r\n \"category\"\r\n ]\r\n };\r\n let fuse = new Fuse(emojiList, fuseOptions);\r\n let result = fuse.search(type);\r\n result.sort(function (a, b) {\r\n return a.emoji_order - b.emoji_order;\r\n });\r\n\r\n quill.focus();\r\n let range = fn_updateRange(quill);\r\n\r\n result.map(function(emoji) {\r\n let span = document.createElement('span');\r\n let t = document.createTextNode(emoji.shortname);\r\n span.appendChild(t);\r\n span.classList.add('bem');\r\n span.classList.add('bem-' + emoji.name);\r\n span.classList.add('ap');\r\n span.classList.add('ap-' + emoji.name);\r\n let output = '' + emoji.code_decimal + '';\r\n span.innerHTML = output + ' ';\r\n panel.appendChild(span);\r\n\r\n let customButton = document.querySelector('.bem-' + emoji.name);\r\n if (customButton) {\r\n customButton.addEventListener('click', function() {\r\n let emoji_icon_html =makeElement(\"span\", {className: \"ico\", innerHTML: ''+emoji.code_decimal+' ' });\r\n let emoji_icon = emoji_icon_html.innerHTML;\r\n quill.insertEmbed(range.index, 'emoji', emoji);\r\n fn_close();\r\n });\r\n }\r\n });\r\n}\r\n\r\nfunction fn_updateEmojiContainer(emojiFilter,panel,quill){\r\n while (panel.firstChild) {\r\n panel.removeChild(panel.firstChild);\r\n }\r\n let type = emojiFilter.dataset.filter;\r\n fn_emojiElementsToPanel(type,panel,quill);\r\n}\r\n\r\nfunction makeElement(tag, attrs, ...children) {\r\n const elem = document.createElement(tag);\r\n Object.keys(attrs).forEach(key => elem[key] = attrs[key]);\r\n children.forEach(child => {\r\n if (typeof child === \"string\")\r\n child = document.createTextNode(child);\r\n elem.appendChild(child);\r\n });\r\n return elem;\r\n}\r\n\r\nexport default ToolbarEmoji;\r\n","import Quill from 'quill';\r\nimport EmojiBlot from './format-emoji-blot';\r\nimport ToolbarEmoji from './module-toolbar-emoji';\r\n\r\nQuill.register({\r\n 'formats/emoji': EmojiBlot,\r\n 'modules/emoji-toolbar': ToolbarEmoji,\r\n }, true); \r\n\r\nexport default { EmojiBlot, ToolbarEmoji };","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport Dropzone from 'react-dropzone';\r\nimport objectHash from 'object-hash';\r\nimport { bytesToSize, removeDuplicates } from '../../utils/helpers';\r\nimport MessageModal from '../Modals/MessageModal';\r\n\r\nexport default class FileUploader extends React.Component {\r\n constructor() {\r\n super();\r\n\r\n this.dropzoneRef = React.createRef();\r\n\r\n this.MAXSIZE = 20 * 1024 * 1024; // 20 mb\r\n this.MAXFILES = 5;\r\n\r\n this.state = {\r\n files: [],\r\n showModalMessage: false,\r\n modalMessage: '',\r\n modalTitle: ''\r\n };\r\n }\r\n\r\n showAlert(message, title = '') {\r\n this.setState({\r\n modalTitle: title,\r\n modalMessage: message,\r\n showModalMessage: true,\r\n });\r\n }\r\n\r\n onDropAccepted(files) {\r\n let newFiles = [\r\n ...this.state.files,\r\n ...files.map(file => ({\r\n file,\r\n name: file.name,\r\n size: file.size,\r\n hash: objectHash.sha1(file.name + file.size + file.lastModified),\r\n preview: URL.createObjectURL(file),\r\n })),\r\n ];\r\n\r\n newFiles = removeDuplicates(newFiles, 'hash');\r\n\r\n if (newFiles.length > this.MAXFILES) {\r\n this.showAlert(`Максимальное количество файлов для загрузки - ${this.MAXFILES}`);\r\n newFiles = newFiles.slice(0, this.MAXFILES);\r\n }\r\n\r\n this.setState({\r\n files: newFiles,\r\n });\r\n\r\n const attachments = newFiles.map(item => item.file);\r\n this.props.setAttachments(attachments);\r\n }\r\n\r\n onDropRejected(files) {\r\n if (files.some(file => file.size > this.MAXSIZE)) {\r\n this.showAlert('Максимальный размер загружаемого файла - 20 МБ');\r\n } else {\r\n this.showAlert('Ваши файлы не удовлетворяют требованиям');\r\n }\r\n }\r\n\r\n uploadFiles = () => {\r\n this.setState(\r\n {\r\n // accept: '.pdf, .doc, .docx, .xls',\r\n accept: '',\r\n },\r\n this.dropzoneRef.current.open,\r\n );\r\n };\r\n\r\n uploadImages = () => {\r\n this.setState(\r\n {\r\n accept: 'image/jpeg, image/png',\r\n },\r\n this.dropzoneRef.current.open,\r\n );\r\n };\r\n\r\n uploadVideos = () => {\r\n this.setState(\r\n {\r\n accept: 'video/ogg, video/mp4',\r\n },\r\n this.dropzoneRef.current.open,\r\n );\r\n };\r\n\r\n dismissFile(fileToDismiss) {\r\n const updatedFiles = this.state.files.filter(file => file.hash !== fileToDismiss.hash);\r\n this.setState(\r\n {\r\n files: updatedFiles,\r\n },\r\n () => {\r\n const attachments = this.state.files.map(item => item.file);\r\n this.props.setAttachments(attachments);\r\n },\r\n );\r\n }\r\n\r\n componentWillUnmount() {\r\n const { files } = this.state;\r\n for (let i = files.length; i >= 0; i--) {\r\n const file = files[0];\r\n if (file) {\r\n URL.revokeObjectURL(file.preview);\r\n }\r\n }\r\n }\r\n\r\n render() {\r\n const {\r\n files, accept, showModalMessage, modalMessage,\r\n } = this.state;\r\n\r\n // const thumbs = files.map(file => (\r\n //\r\n Форум
\r\n\r\n\r\n {showSearchResult ? (\r\n \r\n \r\n ) : (\r\n\r\n \r\n \r\n {isLoading ? (\r\n\r\n )}\r\n\r\n ) : (\r\n categories.map(category => (\r\n \r\n ))\r\n )}\r\n \r\n //\r\n // ));\r\n\r\n const fileList = (\r\n\r\n // {file.preview ?\r\n //: 'filename'}\r\n //
\r\n {files.map(file => (\r\n
\r\n );\r\n\r\n return (\r\n- \r\n \r\n {`${file.name} - ${bytesToSize(+file.size)}`}\r\n \r\n
\r\n ))}\r\n\r\n \r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport ReactQuill, { Quill } from 'react-quill';\r\nimport Delta from 'quill-delta';\r\n// import quillEmoji from 'quill-emoji/dist/quill-emoji';\r\nimport { EmojiBlot, ToolbarEmoji } from './quill-emoji/src/quill-emoji.js';\r\nimport './emoji.css';\r\nimport './quill.snow-custom.css';\r\nimport './TextEditor.css';\r\nimport FileUploader from './FileUploader';\r\n\r\n/*\r\n * пример взял на\r\n * https://codepen.io/alexkrolick/pen/gmroPj?editors=0010\r\n */\r\nconst CustomToolbar = () => (\r\n\r\n\r\n {/* */}\r\n \r\n\r\n {}\r\n \r\n{\r\n this.setState({ showModalMessage: false });\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n);\r\n\r\nconst icons = Quill.import('ui/icons');\r\nicons.bold = `\r\n `;\r\nicons.italic = `
\r\n `;\r\nicons.underline = `
\r\n `;\r\nicons.link = `
\r\n `;\r\nicons.clean = `
\r\n `;\r\n\r\nconst Clipboard = Quill.import('modules/clipboard');\r\n\r\nclass PlainTextClipboard extends Clipboard {\r\n\r\n convert(html = null) {\r\n if (typeof html === 'string') {\r\n this.container.innerHTML = html;\r\n }\r\n const text = this.container.innerText;\r\n this.container.innerHTML = '';\r\n return new Delta().insert(text);\r\n }\r\n\r\n onPaste(e) {\r\n if (e.defaultPrevented || !this.quill.isEnabled()) return;\r\n const range = this.quill.getSelection();\r\n let delta = new Delta().retain(range.index);\r\n\r\n if (e && e.clipboardData && e.clipboardData.types && e.clipboardData.getData) {\r\n const text = (e.originalEvent || e).clipboardData.getData('text');\r\n\r\n const cleanedText = this.convert(text);\r\n\r\n // Stop the data from actually being pasted\r\n e.stopPropagation();\r\n e.preventDefault();\r\n\r\n // Process cleaned text\r\n delta = delta.concat(cleanedText).delete(range.length);\r\n this.quill.updateContents(delta, Quill.sources.USER);\r\n // range.length contributes to delta.length()\r\n this.quill.setSelection(delta.length() - range.length, Quill.sources.SILENT);\r\n\r\n return false;\r\n }\r\n }\r\n}\r\n\r\nQuill.register('modules/clipboard', PlainTextClipboard);\r\n\r\n/*\r\n * Editor component with custom toolbar and content containers\r\n */\r\nexport default class TextEditor extends React.Component {\r\n static defaultProps = {\r\n allowAttachments: true,\r\n placeholder: '',\r\n editorHtml: ''\r\n };\r\n\r\n static propTypes = {\r\n editorHtml: PropTypes.string,\r\n placeholder: PropTypes.string,\r\n allowAttachments: PropTypes.bool,\r\n setAttachments: PropTypes.func.isRequired\r\n };\r\n\r\n formats = ['bold', 'italic', 'underline', 'link', 'emoji', 'clean'];\r\n\r\n modules = {\r\n toolbar: {\r\n container: '#ql-custom-toolbar',\r\n handlers: {\r\n attachFile: () => this.fileUploaderRef.current.uploadFiles(),\r\n addPicture: () => this.fileUploaderRef.current.uploadImages(),\r\n addVideo: () => this.fileUploaderRef.current.uploadVideos(),\r\n emoji: () => {}\r\n }\r\n },\r\n clipboard: {\r\n matchVisual: true\r\n },\r\n 'emoji-toolbar': {\r\n buttonIcon:\r\n '
'\r\n }\r\n // 'emoji-textarea': false,\r\n // 'emoji-shortname': false,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n this.handleChange = this.handleChange.bind(this);\r\n this.fileUploaderRef = React.createRef();\r\n }\r\n\r\n handleChange(html) {\r\n this.props.onChange(html);\r\n }\r\n\r\n render() {\r\n const {\r\n editorHtml, placeholder, allowAttachments, setAttachments\r\n } = this.props;\r\n return (\r\n
\r\n \r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport onClickOutside from 'react-onclickoutside';\r\nimport classNames from 'classnames';\r\nimport Preloader from '../Preloader/Preloader';\r\n\r\nclass CustomDropdown extends Component {\r\n\r\n static propTypes = {\r\n categories: PropTypes.array.isRequired,\r\n selected: PropTypes.any.isRequired,\r\n className: PropTypes.string,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n listOpened: false,\r\n categories: [],\r\n selected: this.props.selected,\r\n placeholder: this.props.placeholder,\r\n };\r\n }\r\n\r\n componentWillReceiveProps = (nextProps) => {\r\n this.setState({\r\n ...nextProps,\r\n });\r\n };\r\n\r\n selectItem = (item) => {\r\n this.setState(\r\n {\r\n selected: item,\r\n listOpened: false,\r\n },\r\n this.props.onChange(item),\r\n );\r\n };\r\n\r\n handleKeyboardPick = (e, item) => {\r\n if (e.keyCode === 13 || e.keyCode === 32) {\r\n e.preventDefault();\r\n this.selectItem(item);\r\n }\r\n };\r\n\r\n toggleList = () => {\r\n this.setState(prevState => ({\r\n listOpened: !prevState.listOpened,\r\n }));\r\n };\r\n\r\n handleClickOutside(e) {\r\n this.setState({\r\n listOpened: false,\r\n });\r\n }\r\n\r\n render() {\r\n const { className } = this.props;\r\n const {\r\n listOpened, categories, selected, placeholder,\r\n } = this.state;\r\n return (\r\n\r\n\r\n {allowAttachments ? (\r\n\r\n {\r\n this.reactQuillRef = el;\r\n }}\r\n className=\"input-group__input input-group__input--textarea wysiwyg\"\r\n value={editorHtml}\r\n onChange={this.handleChange}\r\n placeholder={placeholder}\r\n modules={this.modules}\r\n formats={this.formats}\r\n theme=\"snow\" // pass false to use minimal theme\r\n />\r\n \r\n\r\n ) : (\r\n ''\r\n )}\r\n\r\n \r\n\r\n );\r\n }\r\n}\r\n\r\nexport default onClickOutside(CustomDropdown);\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport Preloader from './Preloader';\r\n\r\nexport default class GlobalPreloader extends React.Component {\r\n static defaultProps = {\r\n layoutClass: '',\r\n mainClass: '',\r\n contentClass: '',\r\n modalCloseButton: true,\r\n };\r\n\r\n static propTypes = {\r\n layoutClass: PropTypes.string,\r\n mainClass: PropTypes.string,\r\n contentClass: PropTypes.string,\r\n modalCloseButton: PropTypes.bool,\r\n children: PropTypes.any,\r\n };\r\n\r\n componentWillMount() {\r\n this.root = document.createElement('div');\r\n document.body.appendChild(this.root);\r\n }\r\n\r\n componentWillUnmount() {\r\n document.body.removeChild(this.root);\r\n }\r\n\r\n render() {\r\n const {\r\n layoutClass, mainClass, contentClass, modalCloseButton,\r\n } = this.props;\r\n\r\n return ReactDOM.createPortal(\r\n\r\n\r\n\r\n {selected.title || placeholder}\r\n\r\n\r\n {categories.length ? (\r\n categories.map(item => (\r\n
\r\n- this.selectItem(item)}\r\n onKeyDown={e => this.handleKeyboardPick(e, item)}\r\n >\r\n {item.title}\r\n
\r\n ))\r\n ) : (\r\n- \r\n
\r\n )}\r\n\r\n \r\n,\r\n\r\n this.root,\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport TextEditor from '../../components/TextEditor/TextEditor';\r\nimport CustomDropdown from '../../components/Inputs/CustomDropdown';\r\nimport { GetCategoriesList, CreateTopic } from '../../utils/api/services/forum.js';\r\nimport paths from '../../paths';\r\nimport GlobalPreloader from '../../components/Preloader/GlobalPreloader';\r\nimport { getCleanText } from '../../utils/helpers';\r\nimport MessageModal from '../../components/Modals/MessageModal';\r\n\r\nexport default class ForumTopicCreate extends Component {\r\n static propTypes = {\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.titleMinLength = 5;\r\n this.titleMaxLength = 100;\r\n this.messageMinLength = 10;\r\n this.messageMaxLength = 1000;\r\n\r\n this.state = {\r\n editorHtml: '',\r\n title: '',\r\n selectedCategory: {},\r\n categories: [],\r\n isLoading: false,\r\n attachments: [],\r\n showModalMessage: false,\r\n modalMessage: '',\r\n modalTitle: '',\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n this.getCategories();\r\n };\r\n\r\n getCategories = () => {\r\n GetCategoriesList()\r\n .then((result) => {\r\n this.setState(\r\n {\r\n categories: result,\r\n },\r\n this.setDefaultCategory,\r\n );\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n });\r\n };\r\n\r\n setDefaultCategory = () => {\r\n const categoryFromUrl = this.state.categories.find(\r\n item => item.alias === this.props.match.params.alias,\r\n );\r\n if (categoryFromUrl) {\r\n this.setState(\r\n {\r\n selectedCategory: categoryFromUrl,\r\n },\r\n );\r\n }\r\n };\r\n\r\n handleSelectedCategoryChange = (selectedCategory) => {\r\n this.setState({ selectedCategory });\r\n };\r\n\r\n handleTitleChange = (e) => {\r\n this.setState({\r\n title: e.currentTarget.value,\r\n });\r\n };\r\n\r\n handleTextChange = (editorHtml) => {\r\n this.setState({\r\n editorHtml,\r\n });\r\n };\r\n\r\n createTopic = (formData) => {\r\n CreateTopic(formData)\r\n .then((topic) => {\r\n this.setState(\r\n {\r\n topic,\r\n isLoading: true,\r\n },\r\n () => this.props.history.push(`${paths.advocates.forumTopic}/${topic.alias}`),\r\n );\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({ isLoading: false });\r\n });\r\n };\r\n\r\n setAttachments = (attachments) => {\r\n this.setState({\r\n attachments,\r\n });\r\n };\r\n\r\n handlePostAction = (e) => {\r\n const {\r\n selectedCategory, title, editorHtml, attachments,\r\n } = this.state;\r\n\r\n if (selectedCategory.id <= 0) {\r\n this.showAlert('Выберите категорию для публикации темы');\r\n return;\r\n }\r\n if (title.length < this.titleMinLength) {\r\n this.showAlert(`Название темы не может быть короче ${this.titleMinLength} символов)`);\r\n return;\r\n }\r\n if (title.length > this.titleMaxLength) {\r\n this.showAlert(`Название темы не может быть длиннее ${this.titleMaxLength} символов)`);\r\n return;\r\n }\r\n if (getCleanText(editorHtml).length < this.messageMinLength) {\r\n this.showAlert(\r\n `Введите ваше сообщение (длина сообщения должна быть не менее ${\r\n this.messageMinLength\r\n } символов)`,\r\n );\r\n return;\r\n }\r\n if (getCleanText(editorHtml).length > this.messageMaxLength) {\r\n this.showAlert(`Длина сообщения должна быть не более ${this.messageMaxLength} символов)`);\r\n return;\r\n }\r\n\r\n const formData = new FormData();\r\n formData.append('categoryId', selectedCategory.id);\r\n formData.append('title', title);\r\n formData.append('text', editorHtml);\r\n if (attachments) {\r\n for (const file of attachments) {\r\n formData.append('attachments', file, file.name);\r\n }\r\n }\r\n this.createTopic(formData);\r\n };\r\n\r\n showAlert(message, title = '') {\r\n this.setState({\r\n modalTitle: title,\r\n modalMessage: message,\r\n showModalMessage: true,\r\n });\r\n }\r\n\r\n render() {\r\n const {\r\n title,\r\n editorHtml,\r\n categories,\r\n selectedCategory,\r\n isLoading,\r\n showModalMessage,\r\n modalTitle,\r\n modalMessage,\r\n } = this.state;\r\n return (\r\n\r\n\r\n\r\n {this.props.children || 'Ваш запрос обрабатывается'}\r\n\r\n\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport onClickOutside from 'react-onclickoutside';\r\nimport classNames from 'classnames';\r\nimport Preloader from '../Preloader/Preloader';\r\n\r\nclass CustomDropdownForum extends Component {\r\n static defaltProps = {\r\n mobile: false,\r\n label: 'Текущий раздел:',\r\n };\r\n\r\n static propTypes = {\r\n categories: PropTypes.array.isRequired,\r\n selectedCategory: PropTypes.object.isRequired,\r\n mobile: PropTypes.bool,\r\n label: PropTypes.string,\r\n headerTitle: PropTypes.string,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n listOpened: false,\r\n };\r\n }\r\n\r\n selectItem = (item) => {\r\n this.setState(\r\n {\r\n selectedCategory: item,\r\n listOpened: false,\r\n },\r\n () => this.props.onChange(item),\r\n );\r\n };\r\n\r\n handleKeyboardPick = (e, item) => {\r\n if (e.keyCode === 13 || e.keyCode === 32) {\r\n e.preventDefault();\r\n this.selectItem(item);\r\n }\r\n };\r\n\r\n toggleList = () => {\r\n this.setState(prevState => ({\r\n listOpened: !prevState.listOpened,\r\n }));\r\n };\r\n\r\n handleClickOutside(e) {\r\n this.setState({\r\n listOpened: false,\r\n });\r\n }\r\n\r\n render() {\r\n const { listOpened } = this.state;\r\n const {\r\n mobile, label, categories, selectedCategory,\r\n } = this.props;\r\n const styleModificator = mobile ? '-type2' : 'custom-dropdown--theme';\r\n if (!categories || !selectedCategory) return\r\n\r\n Создание новой темы
\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n {\r\n this.setState({ showModalMessage: false });\r\n }}\r\n />\r\n {isLoading && }\r\n ;\r\n return (\r\n \r\n\r\n );\r\n }\r\n}\r\n\r\nfunction CategoryItem(props) {\r\n const { item, mobile, children, className } = props;\r\n return (\r\n \r\n {!mobile &&\r\n\r\n\r\n {mobile && \r\n{label}}\r\n {selectedCategory.title}\r\n\r\n {categories.length ? (\r\n categories.map(item => (\r\n
\r\n- this.selectItem(item)}\r\n onKeyDown={e => this.handleKeyboardPick(e, item)}\r\n >\r\n
\r\n ))\r\n ) : (\r\n\r\n {item.title}\r\n \r\n- \r\n
\r\n )}\r\n\r\n }\r\n {children}\r\n \r\n );\r\n}\r\n\r\nfunction CategoryIsOpenIcon(props) {\r\n return (\r\n \r\n );\r\n}\r\n\r\nexport default onClickOutside(CustomDropdownForum);\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport CustomDropdownForum from '../../components/Inputs/CustomDropdownForum';\r\nimport SimpleSearch from '../../components/Search/SimpleSearch';\r\nimport paths from '../../paths';\r\n\r\nexport default class ForumTopicListHeader extends Component {\r\n static propTypes = {\r\n categories: PropTypes.array.isRequired,\r\n selectedCategory: PropTypes.object.isRequired,\r\n handleSelectedCategoryChange: PropTypes.func.isRequired,\r\n searchQuery: PropTypes.string.isRequired,\r\n handleSearchQueryChange: PropTypes.func.isRequired,\r\n handleSearch: PropTypes.func.isRequired,\r\n handleSearchEnterPress: PropTypes.func.isRequired,\r\n };\r\n\r\n render() {\r\n const {\r\n categories,\r\n selectedCategory,\r\n handleSelectedCategoryChange,\r\n searchQuery,\r\n handleSearchQueryChange,\r\n handleSearch,\r\n handleSearchEnterPress,\r\n } = this.props;\r\n return (\r\n \r\n \r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport CustomDropdownForum from '../../components/Inputs/CustomDropdownForum';\r\nimport SimpleSearch from '../../components/Search/SimpleSearch';\r\nimport Search from '../../components/Search/Search';\r\n\r\nexport default class ForumHeaderMobile extends Component {\r\n static propTypes = {\r\n categories: PropTypes.array.isRequired,\r\n selectedCategory: PropTypes.object.isRequired,\r\n handleSelectedCategoryChange: PropTypes.func.isRequired,\r\n searchQuery: PropTypes.string.isRequired,\r\n handleSearchQueryChange: PropTypes.func.isRequired,\r\n handleSearch: PropTypes.func.isRequired,\r\n handleSearchEnterPress: PropTypes.func.isRequired,\r\n renderSearchButton: PropTypes.bool\r\n };\r\n\r\n render() {\r\n const {\r\n categories,\r\n selectedCategory,\r\n handleSelectedCategoryChange,\r\n searchQuery,\r\n handleSearchQueryChange,\r\n handleSearch,\r\n handleSearchEnterPress,\r\n renderSearchButton,\r\n children,\r\n } = this.props;\r\n return (\r\n\r\n\r\n\r\n\r\n \r\n handleSearchQueryChange(e)}\r\n onKeyDown={e => handleSearchEnterPress(e)}\r\n />\r\n \r\n\r\n\r\n \r\n Создать тему\r\n \r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n \r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component, Children } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport CustomDropdownForum from '../../components/Inputs/CustomDropdownForum';\r\nimport SimpleSearch from '../../components/Search/SimpleSearch';\r\n\r\nexport default class ForumHeaderDesktop extends Component {\r\n static defaultProps = {\r\n placeholder: 'Поиск по разделу',\r\n }\r\n\r\n static propTypes = {\r\n categories: PropTypes.array,\r\n selectedCategory: PropTypes.object,\r\n handleSelectedCategoryChange: PropTypes.func.isRequired,\r\n searchQuery: PropTypes.string.isRequired,\r\n handleSearchQueryChange: PropTypes.func.isRequired,\r\n handleSearch: PropTypes.func.isRequired,\r\n handleSearchEnterPress: PropTypes.func.isRequired,\r\n renderDropdown: PropTypes.bool,\r\n children: PropTypes.any,\r\n placeholder: PropTypes.string,\r\n };\r\n\r\n render() {\r\n const {\r\n categories,\r\n selectedCategory,\r\n handleSelectedCategoryChange,\r\n searchQuery,\r\n handleSearchQueryChange,\r\n handleSearch,\r\n handleSearchEnterPress,\r\n renderDropdown,\r\n renderSearchButton,\r\n children,\r\n placeholder\r\n } = this.props;\r\n return (\r\n\r\n\r\n \r\n\r\n {renderSearchButton && (\r\n \r\n )}\r\n \r\n {renderDropdown && (\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport {\r\n GetCategoriesList,\r\n GetTopicsByCategory,\r\n ForumSearch,\r\n} from '../../utils/api/services/forum.js';\r\nimport paths from '../../paths';\r\nimport TopicListItem from './TopicListItem';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport ListFooter from '../../components/ListFooter/ListFooter';\r\nimport ForumTopicListHeader from './ForumTopicListHeader';\r\nimport ForumHeaderMobile from './ForumHeaderMobile';\r\nimport ForumHeaderDesktop from './ForumHeaderDesktop';\r\nimport ForumSearchBlock from './ForumSearchBlock';\r\nimport { setUrlParameters } from '../../utils/helpers';\r\nimport { getPage, getQuery } from '../../utils/urlHelper';\r\n\r\nexport default class ForumTopicList extends Component {\r\n static propTypes = {};\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.pageSize = 15;\r\n\r\n this.state = {\r\n categories: [],\r\n topicList: [],\r\n searchQuery: getQuery(),\r\n searchResult: [],\r\n searchTotal: 0,\r\n isLoading: true,\r\n isLoadingMore: false,\r\n total: 0,\r\n };\r\n }\r\n\r\n componentDidUpdate(prevProps, prevState, snapshot) {\r\n if (prevProps.location.search !== this.props.location.search) {\r\n this.setResult();\r\n }\r\n }\r\n\r\n componentWillMount = () => {\r\n this.getCategories();\r\n };\r\n\r\n getCategories = () => {\r\n this.setState({ isLoading: true });\r\n GetCategoriesList()\r\n .then((result) => {\r\n this.setState({ categories: result }, this.setResult);\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n });\r\n };\r\n\r\n /**\r\n * @param {bool} more добавлять новые темы в список, а не перетирать их.\r\n */\r\n getTopicsByCategory = (id, take = 15, skip = 0, more = false) => {\r\n if (more) {\r\n this.setState({ isLoadingMore: true });\r\n } else {\r\n this.setState({ isLoading: true });\r\n }\r\n GetTopicsByCategory(id, take, skip)\r\n .then((result) => {\r\n if (more) {\r\n this.setState({\r\n topicList: [...this.state.topicList, ...result.data],\r\n total: result.total,\r\n });\r\n } else {\r\n this.setState({\r\n topicList: result.data,\r\n total: result.total,\r\n });\r\n }\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n isLoadingMore: false,\r\n });\r\n });\r\n };\r\n\r\n getSelectedCategory = () => {\r\n if (!this.state.categories || !this.state.categories.length) {\r\n return {};\r\n }\r\n\r\n const categoryFromUrl = this.state.categories.find(\r\n item => item.alias === this.props.match.params.alias,\r\n );\r\n\r\n return categoryFromUrl || this.state.categories[0];\r\n };\r\n\r\n setResult = (more = false) => {\r\n const page = getPage();\r\n const query = getQuery();\r\n const selectedCategory = this.getSelectedCategory();\r\n\r\n if (query) {\r\n this.search(\r\n query,\r\n 'category',\r\n selectedCategory.alias,\r\n this.pageSize,\r\n (page - 1) * this.pageSize,\r\n more,\r\n );\r\n } else {\r\n this.getTopicsByCategory(\r\n selectedCategory.alias,\r\n this.pageSize,\r\n (page - 1) * this.pageSize,\r\n more,\r\n );\r\n }\r\n };\r\n\r\n handleSelectedCategoryChange = (selectedCategory) => {\r\n this.setState({ searchQuery: '' }, this.setResult);\r\n this.props.history.push(`${paths.advocates.forumCategories}/${selectedCategory.alias}`);\r\n };\r\n\r\n handleSearchQueryChange = (e) => {\r\n const searchQuery = e.currentTarget.value;\r\n this.setState({ searchQuery });\r\n };\r\n\r\n search = (query, type, alias, take, skip, more) => {\r\n ForumSearch(query, type, alias, take, skip)\r\n .then((result) => {\r\n this.setState(\r\n {\r\n searchResult: more ? [...this.state.searchResult, ...result.data] : result.data,\r\n searchTotal: result.total,\r\n },\r\n this.fetchData,\r\n );\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n isLoadingMore: false,\r\n });\r\n });\r\n };\r\n\r\n setQueryUrl(query, page, callback) {\r\n const urlQuery = {};\r\n urlQuery.page = page > 1 ? page : null;\r\n urlQuery.query = query;\r\n setUrlParameters(urlQuery, callback);\r\n }\r\n\r\n handleSearch = () => {\r\n this.setQueryUrl(\r\n this.state.searchQuery,\r\n null,\r\n this.setState({ searchTotal: null }, this.setResult),\r\n );\r\n };\r\n\r\n handleSearchEnterPress = (e) => {\r\n if (e.keyCode === 13) {\r\n e.preventDefault();\r\n this.handleSearch();\r\n }\r\n };\r\n\r\n handlePageClick = (e) => {\r\n const newPage = e.selected + 1;\r\n this.setQueryUrl(getQuery(), newPage, this.setResult);\r\n };\r\n\r\n handleGetMoreTopics = () => {\r\n this.setQueryUrl(\r\n getQuery(),\r\n getPage() + 1,\r\n this.setState({ isLoadingMore: true }, () => this.setResult(true)),\r\n );\r\n };\r\n\r\n render() {\r\n const {\r\n categories,\r\n searchQuery,\r\n searchResult,\r\n searchTotal,\r\n topicList,\r\n total,\r\n isLoading,\r\n isLoadingMore,\r\n } = this.state;\r\n\r\n const page = getPage();\r\n const requestedSearchQuery = getQuery();\r\n const selectedCategory = this.getSelectedCategory();\r\n\r\n return (\r\n\r\n )}\r\n\r\n \r\n\r\n {children}\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport default class ForumTopicPostActions extends Component {\r\n static propTypes = {\r\n handleReplyClick: PropTypes.func.isRequired,\r\n handleCiteClick: PropTypes.func.isRequired,\r\n };\r\n\r\n render() {\r\n const { handleReplyClick, handleCiteClick } = this.props;\r\n return (\r\n\r\n Форум
\r\n\r\n\r\n \r\n\r\n Создать тему\r\n \r\n \r\n\r\n {requestedSearchQuery ? (\r\n \r\n ) : (\r\n \r\n {isLoading ? (\r\n\r\n )}\r\n\r\n\r\n ) : topicList.length ? (\r\n topicList.map(item => )\r\n ) : (\r\n 'В этом разделе еще нет тем'\r\n )}\r\n {isLoadingMore && }\r\n \r\n \r\n\r\n Создать тему\r\n \r\n\r\n\r\n \r\n \r\n \r\n\r\n );\r\n }\r\n}\r\n","export default class constants {\r\n static errorMessage = {\r\n firstName: 'Имя введено некорректно. Разрешено использование только кириллицы.',\r\n lastName: 'Фамилия введена некорректно. Разрешено использование только кириллицы.',\r\n email: 'E-mail введён некорректно. Проверьте формат адреса.',\r\n phone: 'Номер телефона введен некорректно. Допускаются только номера, начинающиеся с \"+7\".',\r\n newPassword: 'Пароль должен содержать не менее 6 символов.',\r\n newPasswordAgain: 'Пароль должен содержать не менее 6 символов.',\r\n newPasswordsNotEquals: 'Пароли не совпадают.', \r\n }\r\n static imageSize = {\r\n miniAvatarSizes: {\r\n width: 50,\r\n height: 50\r\n },\r\n avatarSizes: {\r\n width: 185,\r\n height: 185\r\n },\r\n attachedImageSizes: {\r\n width: 105,\r\n height: 80\r\n } \r\n }\r\n};","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport axios from 'axios';\r\nimport classnames from 'classnames';\r\nimport { FileUrl, FileDownloadUrl } from '../../utils/api/services/files';\r\nimport ContentModal from '../../components/Modals/ContentModal';\r\nimport constants from '../../utils/constants';\r\n\r\nexport default class ForumAttachedFile extends Component {\r\n static propTypes = {\r\n attach: PropTypes.shape({\r\n extension: PropTypes.string.isRequired,\r\n id: PropTypes.string.isRequired,\r\n name: PropTypes.string.isRequired,\r\n size: PropTypes.number.isRequired,\r\n }),\r\n type: PropTypes.string,\r\n vimeoLink: PropTypes.string,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n showContentModal: false,\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n if (this.props.vimeoVideoId) {\r\n axios\r\n .get(`http://vimeo.com/api/v2/video/${this.props.vimeoVideoId}.json`)\r\n .then((response) => {\r\n const vimeoVideoPreview = response.data && response.data[0] && response.data[0].thumbnail_medium;\r\n const vimeoVideoName = response.data && response.data[0] && response.data[0].title;\r\n\r\n this.setState({\r\n vimeoVideoPreview,\r\n vimeoVideoName,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log('не удалось получить информацию о видео');\r\n console.log(e);\r\n });\r\n }\r\n };\r\n\r\n getType = (extension) => {\r\n switch (extension) {\r\n case 'jpeg':\r\n case 'jpg':\r\n case 'png':\r\n return 'image';\r\n break;\r\n\r\n case 'ogg':\r\n case 'mp4':\r\n return 'video';\r\n break;\r\n\r\n default:\r\n return 'file';\r\n break;\r\n }\r\n };\r\n\r\n handleClick = (type) => {\r\n if (type === 'image' || type === 'video' || type === 'vimeoVideo') {\r\n this.setState({\r\n showContentModal: true,\r\n });\r\n } else {\r\n this.setState({\r\n showContentModal: false,\r\n });\r\n }\r\n };\r\n\r\n render() {\r\n const { attach, vimeoLink } = this.props;\r\n const { showContentModal, vimeoVideoName, vimeoVideoPreview } = this.state;\r\n const type = this.props.type || this.getType(attach.extension);\r\n\r\n const fileUrl = type === 'vimeoVideo' ? vimeoLink : FileUrl(attach.id);\r\n let fileUrlForPreview = '';\r\n switch (type) {\r\n case 'image':\r\n fileUrlForPreview = FileUrl(\r\n attach.id,\r\n constants.imageSize.attachedImageSizes.width,\r\n constants.imageSize.attachedImageSizes.height,\r\n );\r\n break;\r\n\r\n case 'vimeoVideo':\r\n fileUrlForPreview = vimeoVideoPreview;\r\n break;\r\n\r\n default:\r\n fileUrlForPreview = fileUrl;\r\n break;\r\n }\r\n const downloadUrl = attach && FileDownloadUrl(attach.id);\r\n const fileName = vimeoVideoName || (attach && attach.name);\r\n\r\n return (\r\n\r\n \r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport ForumAttachedFile from './ForumAttachedFile';\r\n\r\nexport default class ForumAttachList extends Component {\r\n static propTypes = {\r\n vimeoVideoId: PropTypes.string,\r\n vimeoLink: PropTypes.string,\r\n attachments: PropTypes.array.isRequired,\r\n };\r\n\r\n render() {\r\n const { vimeoLink, vimeoVideoId, attachments } = this.props;\r\n return (\r\nthis.handleClick(type)}>\r\n {type === 'image' ? (\r\n\r\n\r\n {showContentModal ? (\r\n\r\n \r\n ) : (\r\n ''\r\n )}\r\n {type === 'vimeoVideo' ? (\r\n\r\n
{attach.name}\r\n\r\n \r\n ) : (\r\n ''\r\n )}\r\n {type === 'video' ? (\r\n\r\n
{fileName}\r\n\r\n \r\n ) : (\r\n ''\r\n )}\r\n {type === 'file' ? (\r\n\r\n
{attach.name}\r\n\r\n \r\n \r\n ) : (\r\n ''\r\n )}\r\n\r\n \r\n \r\n
{attach.name}\r\n \r\n{\r\n this.setState({ showContentModal: false });\r\n }}\r\n />\r\n ) : (\r\n ''\r\n )}\r\n \r\n {vimeoLink ?\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport AuthorBlock from '../../components/User/AuthorBlock';\r\nimport ForumTopicPostActions from './ForumTopicPostActions';\r\nimport ForumAttachList from './ForumAttachList';\r\nimport { selectedTextInPost } from '../../utils/helpers';\r\nimport MessageModal from '../../components/Modals/MessageModal';\r\n\r\nexport default class ForumTopicFirstPost extends Component {\r\n static propTypes = {\r\n topic: PropTypes.shape({\r\n title: PropTypes.string.isRequired,\r\n text: PropTypes.string.isRequired,\r\n createDate: PropTypes.string.isRequired,\r\n userId: PropTypes.string.isRequired,\r\n attachments: PropTypes.array.isRequired,\r\n isOpen: PropTypes.bool,\r\n vimeoVideoLink: PropTypes.string,\r\n vimeoVideoId: PropTypes.string,\r\n }).isRequired,\r\n setBlockquote: PropTypes.func.isRequired,\r\n handleMobileShowTextEditor: PropTypes.func,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n showModalMessage: false,\r\n ModalMessage: '',\r\n };\r\n }\r\n\r\n handleReplyClick = () => {\r\n const fullname = `${this.props.topic.author.firstName} ${this.props.topic.author.lastName}`;\r\n this.props.setBlockquote({\r\n text: this.props.topic.text,\r\n author: fullname,\r\n callback: this.props.handleMobileShowTextEditor\r\n });\r\n };\r\n\r\n handleCiteClick = () => {\r\n const fullname = `${this.props.topic.author.firstName} ${this.props.topic.author.lastName}`;\r\n const selectedText = selectedTextInPost(this.topicText, 'post-content__text');\r\n if (selectedText) {\r\n this.props.setBlockquote({\r\n text: selectedText,\r\n author: fullname,\r\n callback: this.props.handleMobileShowTextEditor\r\n });\r\n } else {\r\n this.setState({\r\n showModalMessage: true,\r\n modalMessage: 'Выделите текст для цитирования этого сообщения',\r\n });\r\n }\r\n };\r\n\r\n render() {\r\n const { topic } = this.props;\r\n const { showModalMessage, modalMessage } = this.state;\r\n const {\r\n title, text, userId, createDate, isOpen, attachments, author, vimeoVideoLink, vimeoVideoId,\r\n } = topic;\r\n\r\n return (\r\n: '' }\r\n {attachments.map((item, idx) => )}\r\n \r\n\r\n\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport ForumTopicPostActions from './ForumTopicPostActions';\r\nimport AuthorBlock from '../../components/User/AuthorBlock';\r\nimport ForumAttachList from './ForumAttachList';\r\nimport { selectedTextInPost, parseText } from '../../utils/helpers';\r\nimport MessageModal from '../../components/Modals/MessageModal';\r\n\r\nexport default class ForumTopicComment extends Component {\r\n static propTypes = {\r\n comment: PropTypes.shape({\r\n id: PropTypes.number.isRequired,\r\n userId: PropTypes.string.isRequired,\r\n createDate: PropTypes.string.isRequired,\r\n text: PropTypes.string.isRequired,\r\n attachments: PropTypes.array,\r\n }).isRequired,\r\n setBlockquote: PropTypes.func.isRequired,\r\n topic: PropTypes.object.isRequired,\r\n handleMobileShowTextEditor: PropTypes.func,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n showModalMessage: false,\r\n ModalMessage: '',\r\n };\r\n }\r\n\r\n handleReplyClick = () => {\r\n const fullname = `${this.props.comment.user.firstName} ${this.props.comment.user.lastName}`;\r\n this.props.setBlockquote({\r\n text: this.props.comment.text.replace(/{title}\r\n{\r\n this.topicText = el;\r\n }}\r\n dangerouslySetInnerHTML={{ __html: text }}\r\n />\r\n\r\n {(attachments && attachments.length) || vimeoVideoLink ? (\r\n\r\n {isOpen ? (\r\n\r\n \r\n ) : (\r\n ''\r\n )}\r\n\r\n Прикрепленные файлы:\r\n\r\n\r\n\r\n \r\n ) : (\r\n ''\r\n )}\r\n {\r\n this.setState({ showModalMessage: false });\r\n }}\r\n />\r\n ]*>(.*)<\\/blockquote>/g, ''),\r\n author: fullname,\r\n callback: this.props.handleMobileShowTextEditor\r\n });\r\n };\r\n\r\n handleCiteClick = () => {\r\n const fullname = `${this.props.comment.user.firstName} ${this.props.comment.user.lastName}`;\r\n const selectedText = selectedTextInPost(this.commentText, 'post-content__reply');\r\n if (selectedText) {\r\n this.props.setBlockquote({\r\n text: selectedText,\r\n author: fullname,\r\n callback: this.props.handleMobileShowTextEditor\r\n });\r\n } else {\r\n this.setState({\r\n showModalMessage: true,\r\n modalMessage: 'Выделите текст для цитирования этого сообщения',\r\n });\r\n }\r\n };\r\n\r\n render() {\r\n const { comment, topic } = this.props;\r\n const { showModalMessage, modalMessage } = this.state;\r\n const {\r\n userId, createDate, text, attachments, user,\r\n } = comment;\r\n const { isOpen } = topic;\r\n const { blockquote, reply } = parseText(text);\r\n return (\r\n\r\n\r\n\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport AuthorBlock from '../../components/User/AuthorBlock';\r\nimport TextEditor from '../../components/TextEditor/TextEditor';\r\nimport { CreateComment } from '../../utils/api/services/forum';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport { getCleanText } from '../../utils/helpers';\r\nimport MessageModal from '../../components/Modals/MessageModal';\r\n\r\nexport default class ForumTopicCommentCreate extends Component {\r\n static defaultProps = {\r\n blockquote: '',\r\n };\r\n\r\n static propTypes = {\r\n userId: PropTypes.string.isRequired,\r\n topic: PropTypes.object.isRequired,\r\n reloadComments: PropTypes.func.isRequired,\r\n user: PropTypes.object.isRequired,\r\n history: PropTypes.object,\r\n blockquote: PropTypes.string,\r\n handleBlockquoteClear: PropTypes.func,\r\n scrollToTopComment: PropTypes.func,\r\n mobileShowTextEditor: PropTypes.bool,\r\n handleMobileShowTextEditor: PropTypes.func,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.messageMinLength = 5;\r\n this.messageMaxLength = 1000;\r\n\r\n this.state = {\r\n editorHtml: '',\r\n mobileShowTextEditor: false,\r\n attachments: [],\r\n isLoading: false,\r\n showModalMessage: false,\r\n modalMessage: '',\r\n modalTitle: '',\r\n };\r\n }\r\n\r\n handleTextChange = (editorHtml) => {\r\n this.setState({\r\n editorHtml,\r\n });\r\n };\r\n\r\n setAttachments = (attachments) => {\r\n this.setState({\r\n attachments,\r\n });\r\n };\r\n\r\n createComment = (formData, callback) => {\r\n CreateComment(formData)\r\n .then(() => {\r\n this.setState(\r\n {\r\n editorHtml: '',\r\n mobileShowTextEditor: false,\r\n isLoading: true,\r\n },\r\n callback,\r\n );\r\n })\r\n .finally(() => {\r\n this.setState({ isLoading: false });\r\n });\r\n };\r\n\r\n handlePostAction = (e) => {\r\n const {\r\n topic,\r\n history,\r\n reloadComments,\r\n scrollToTopComment,\r\n blockquote,\r\n handleBlockquoteClear,\r\n } = this.props;\r\n const { editorHtml, attachments } = this.state;\r\n const trimmedText = editorHtml.trim();\r\n if (getCleanText(trimmedText).length < this.messageMinLength) {\r\n this.showAlert(\r\n `Введите ваше сообщение (длина сообщения должна быть не менее ${\r\n this.messageMinLength\r\n } символов)`,\r\n );\r\n return;\r\n }\r\n if (getCleanText(trimmedText).length > this.messageMaxLength) {\r\n this.showAlert(`Длина сообщения должна быть не более ${this.messageMaxLength} символов)`);\r\n return;\r\n }\r\n\r\n const formData = new FormData();\r\n formData.append('topicId', topic.id);\r\n formData.append('text', blockquote + trimmedText);\r\n if (attachments) {\r\n for (const file of attachments) {\r\n formData.append('attachments', file, file.name);\r\n }\r\n }\r\n this.createComment(formData, () => {\r\n reloadComments();\r\n scrollToTopComment();\r\n handleBlockquoteClear();\r\n });\r\n };\r\n\r\n showAlert(message, title = '') {\r\n this.setState({\r\n modalTitle: title,\r\n modalMessage: message,\r\n showModalMessage: true,\r\n });\r\n }\r\n\r\n render() {\r\n const { userId, user, blockquote, mobileShowTextEditor, handleMobileShowTextEditor } = this.props;\r\n const {\r\n editorHtml,\r\n isLoading,\r\n showModalMessage,\r\n modalTitle,\r\n modalMessage,\r\n } = this.state;\r\n if (isLoading) {\r\n return\r\n {blockquote ? (\r\n \r\n ) : (\r\n ''\r\n )}\r\n\r\n\r\n {isOpen ? (\r\n{\r\n this.commentText = el;\r\n }}\r\n dangerouslySetInnerHTML={{ __html: reply }}\r\n />\r\n\r\n\r\n {attachments && attachments.length ?: ''}\r\n \r\n ) : (\r\n ''\r\n )}\r\n {\r\n this.setState({ showModalMessage: false });\r\n }}\r\n />\r\n ;\r\n }\r\n return (\r\n \r\n \r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { renderToString } from 'react-dom/server';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport { GetTopic, GetCategoriesList, GetComments, ForumSearch } from '../../utils/api/services/forum';\r\nimport paths from '../../paths';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport SimpleSearch from '../../components/Search/SimpleSearch';\r\nimport CustomDropdownForum from '../../components/Inputs/CustomDropdownForum';\r\nimport ForumHeaderDesktop from './ForumHeaderDesktop';\r\nimport ForumHeaderMobile from './ForumHeaderMobile';\r\nimport ForumTopicFirstPost from './ForumTopicFirstPost';\r\nimport ForumTopicComment from './ForumTopicComment';\r\nimport ForumTopicCommentCreate from './ForumTopicCommentCreate';\r\nimport ListFooter from '../../components/ListFooter/ListFooter';\r\nimport ContentModal from '../../components/Modals/ContentModal';\r\nimport ForumSearchBlock from './ForumSearchBlock';\r\n\r\nexport default class ForumTopic extends Component {\r\n static propTypes = {\r\n // prop: PropTypes,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.defaultPageSize = 10;\r\n\r\n this.state = {\r\n isLoading: true,\r\n isLoadingMore: false,\r\n searchQuery: '',\r\n page: 1,\r\n pageSize: this.defaultPageSize,\r\n mobileShowTextEditor: false,\r\n blockquote: '',\r\n blockquoteAuthor: '',\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n this.getTopicData();\r\n };\r\n\r\n getTopicData = () => {\r\n this.setState({ isLoading: true });\r\n GetTopic(this.props.match.params.alias)\r\n .then((topic) => {\r\n this.setState({\r\n topic,\r\n comments: topic.comments.data,\r\n total: topic.comments.total,\r\n });\r\n })\r\n .catch(e => console.log(e))\r\n .finally(() => {\r\n this.setState(\r\n {\r\n isLoading: false,\r\n },\r\n this.getCategories,\r\n );\r\n });\r\n };\r\n\r\n reloadComments = (callback) => {\r\n this.setState(\r\n {\r\n mobileShowTextEditor: false,\r\n page: 1,\r\n },\r\n this.setResult,\r\n );\r\n };\r\n\r\n getCategories = () => {\r\n this.setState({ isLoading: true });\r\n GetCategoriesList()\r\n .then((result) => {\r\n this.setState(\r\n {\r\n categories: result,\r\n },\r\n this.setDefaultCategory,\r\n );\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({ isLoading: false });\r\n });\r\n };\r\n\r\n /**\r\n * @param {bool} more добавлять новые темы в список, а не перетирать их.\r\n */\r\n getComments = (id, take = 15, skip = 0, more = false) => {\r\n if (more) {\r\n this.setState({ isLoadingMore: true });\r\n } else {\r\n this.setState({ isLoading: true });\r\n }\r\n GetComments(id, take, skip)\r\n .then((result) => {\r\n if (more) {\r\n this.setState({\r\n comments: [...this.state.comments, ...result.data],\r\n total: result.total,\r\n });\r\n } else {\r\n this.setState({\r\n comments: result.data,\r\n total: result.total,\r\n });\r\n }\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n isLoadingMore: false,\r\n });\r\n });\r\n };\r\n\r\n handleSelectedCategoryChange = (selectedCategory) => {\r\n this.setState({ selectedCategory, searchQuery: '' }, this.setResult);\r\n this.props.history.push(`${paths.advocates.forumCategories}/${selectedCategory.alias}`);\r\n };\r\n\r\n setDefaultCategory = () => {\r\n if (this.state.topic) {\r\n this.setState({\r\n selectedCategory: this.state.topic.forumCategory,\r\n });\r\n }\r\n };\r\n\r\n handleSearchQueryChange = (e) => {\r\n const searchQuery = e.currentTarget.value;\r\n this.setState({ searchQuery });\r\n };\r\n\r\n handleMobileShowTextEditor = () => {\r\n this.setState({ mobileShowTextEditor: true }, () => this.scrollToCreateComment());\r\n }\r\n\r\n setResult = (more = false) => {\r\n if (this.state.showSearchResult) {\r\n this.search(\r\n this.state.searchQuery,\r\n 'topic',\r\n this.state.topic.alias,\r\n this.state.pageSize,\r\n (this.state.page - 1) * this.state.pageSize,\r\n more,\r\n );\r\n } else {\r\n this.getComments(\r\n this.state.topic.id,\r\n this.state.pageSize,\r\n (this.state.page - 1) * this.state.pageSize,\r\n more,\r\n );\r\n }\r\n };\r\n\r\n search = (query, type, alias, take, skip, more) => {\r\n ForumSearch(query, type, alias, take, skip)\r\n .then((result) => {\r\n if (more) {\r\n this.setState({\r\n showSearchResult: true,\r\n requestedSearchQuery: query,\r\n searchResult: [...this.state.searchResult, ...result.data],\r\n searchTotal: result.total,\r\n });\r\n } else {\r\n this.setState({\r\n showSearchResult: true,\r\n searchResult: result.data,\r\n requestedSearchQuery: query,\r\n searchTotal: result.total,\r\n });\r\n }\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n isLoadingMore: false,\r\n });\r\n });\r\n };\r\n\r\n handleSearch = () => {\r\n const { searchQuery, showSearchResult } = this.state;\r\n if (searchQuery && searchQuery.trim && searchQuery.trim().length) {\r\n this.setState(\r\n {\r\n mobileShowTextEditor: false,\r\n showSearchResult: true,\r\n page: 1,\r\n },\r\n this.setResult,\r\n );\r\n } else if (showSearchResult) {\r\n this.setState(\r\n {\r\n mobileShowTextEditor: false,\r\n showSearchResult: false,\r\n searchQuery: [],\r\n searchTotal: null,\r\n page: 1,\r\n },\r\n this.setResult,\r\n );\r\n }\r\n };\r\n\r\n handleSearchEnterPress = (e) => {\r\n if (e.keyCode === 13) {\r\n e.preventDefault();\r\n this.handleSearch();\r\n }\r\n };\r\n\r\n handlePageClick = (e) => {\r\n const newPage = e.selected + 1;\r\n this.setState(\r\n {\r\n page: newPage,\r\n pageSize: this.defaultPageSize,\r\n },\r\n this.setResult,\r\n );\r\n };\r\n\r\n handleGetMorePosts = () => {\r\n this.setState(\r\n {\r\n isLoadingMore: true,\r\n page: this.state.page + 1,\r\n },\r\n () => this.setResult(true),\r\n );\r\n };\r\n\r\n setBlockquote = ({ text, author, callback }) => {\r\n this.setState({\r\n blockquote: text,\r\n blockquoteAuthor: author,\r\n }, () => (typeof callback === 'function' && callback()));\r\n };\r\n\r\n handleBlockquoteClear = () => {\r\n this.setState({\r\n blockquote: '',\r\n blockquoteAuthor: '',\r\n });\r\n };\r\n\r\n scrollToTopComment = () => {\r\n this.lastCommentOfPageRef.scrollIntoView({ behavior: 'instant' });\r\n };\r\n\r\n scrollToCreateComment = () => {\r\n this.commentCreateRef.scrollIntoView({ behavior: 'instant' });\r\n };\r\n\r\n getBlockquote = () => {\r\n const { blockquote, blockquoteAuthor } = this.state;\r\n return blockquote ? (\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n {blockquote ? (\r\n\r\n\r\n \r\n \r\n\r\n ) : (\r\n ''\r\n )}\r\n\r\n\r\n\r\n \r\n {\r\n this.setState({ showModalMessage: false });\r\n }}\r\n />\r\n \r\n {`${blockquoteAuthor} писал:`}\r\n \r\n\r\n ) : (\r\n ''\r\n );\r\n };\r\n\r\n render() {\r\n const { user } = this.props;\r\n const {\r\n isLoading,\r\n isLoadingMore,\r\n topic,\r\n comments,\r\n total,\r\n searchQuery,\r\n requestedSearchQuery,\r\n showSearchResult,\r\n searchResult,\r\n searchTotal,\r\n categories,\r\n selectedCategory,\r\n page,\r\n blockquote,\r\n blockquoteAuthor,\r\n mobileShowTextEditor\r\n } = this.state;\r\n if (isLoading || !topic || !selectedCategory) {\r\n return;\r\n }\r\n return (\r\n \r\n\r\n {topic.title}
\r\n\r\n\r\n \r\n \r\n Список тем\r\n \r\n \r\n\r\n \r\n \r\n\r\n {showSearchResult ? (\r\n\r\n ) : (\r\n \r\n \r\n\r\n (this.lastCommentOfPageRef = el)} />\r\n\r\n {comments.map((item, i) => (\r\n\r\n {!mobileShowTextEditor && (\r\n\r\n ))}\r\n {isLoadingMore ? : ''}\r\n\r\n {topic.isOpen ? (\r\n \r\n ) : (\r\n \r\n\r\n )}\r\n\r\n {'Тема закрыта для обсуждения'}\r\n\r\n \r\n\r\n )}\r\n(this.commentCreateRef = el)} />\r\n \r\n )}\r\n\r\n );\r\n }\r\n}\r\n","import React from 'react';\r\nimport Cropper from 'cropperjs';\r\n\r\n//полифилл для toBlob\r\nrequire('blueimp-canvas-to-blob'); \r\n\r\nexport const initCropper = (element, ratio) => {\r\n\tlet options = {\r\n\t\tmoveble: false,\r\n\t\trotatable: true,\r\n\t\tscalable: true,\r\n\t\tzoomable: false,\r\n\t\ttoggleDragModeOnDblclick: false,\r\n\t\tminCropBoxWidth: 16,\r\n\t\tminCropBoxHeight: 16,\r\n\t\tminContainerWidth: 16,\r\n\t\tminContainerHeight: 16,\r\n\t\tminCanvasWidth: 16,\r\n\t\tminCanvasHeight: 16,\r\n\t\tviewMode: 1,\r\n\t\tbackground: false\r\n\t}\r\n\r\n\tif (ratio) {\r\n\t\toptions.aspectRatio = ratio;\r\n\t}\r\n\r\n\tlet cropper = new Cropper(element, options);\r\n\r\n\treturn cropper;\r\n}\r\n","import React, { Fragment } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport PropTypes from 'prop-types';\r\nimport { initCropper } from '../../utils/imageCropper';\r\n\r\nexport default class CropPhoto extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n fileSource: props.fileSource\r\n };\r\n\r\n this.cropper = null;\r\n this.cropperContainer = React.createRef();\r\n\r\n this.root = document.createElement('div');\r\n document.body.appendChild(this.root);\r\n }\r\n\r\n componentDidMount() {\r\n this.initializeCropper();\r\n }\r\n\r\n componentWillUnmount() {\r\n document.body.removeChild(this.root);\r\n this.destroyCropper();\r\n }\r\n\r\n initializeCropper() {\r\n this.cropper = initCropper(this.refs.cropperContainer, this.props.ratio || null);\r\n }\r\n\r\n destroyCropper = () => {\r\n // destroy и присваивание undef объекту this.cropper делается, дабы в IE/FF/edge не утекала память. в хроме всё ок и без этого.\r\n this.cropper.destroy();\r\n this.cropper = undefined;\r\n };\r\n\r\n sendPhoto = () => {\r\n this.cropper.getCroppedCanvas().toBlob((blob) => {\r\n this.props.sendPhoto(blob);\r\n this.props.close();\r\n });\r\n };\r\n\r\n render() {\r\n return ReactDOM.createPortal(\r\n\r\n \r\n,\r\n\r\n this.root\r\n );\r\n }\r\n}\r\n\r\nCropPhoto.propTypes = {\r\n fileSource: PropTypes.string.isRequired,\r\n sendPhoto: PropTypes.func.isRequired,\r\n close: PropTypes.func.isRequired,\r\n ratio: PropTypes.number\r\n};\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport getUserInitials from '../../utils/getUserInitials';\r\nimport CropImageModal from '../../components/Modals/CropImageModal';\r\nimport { saveTempImage, getFullImageUrl } from '../../utils/api/services/image';\r\n\r\nexport class ProfileAvatar extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n popup: null,\r\n };\r\n }\r\n\r\n static propTypes = {\r\n user: PropTypes.object.isRequired,\r\n canEdit: PropTypes.bool,\r\n };\r\n\r\n static defaultProps = {\r\n canEdit: false,\r\n };\r\n\r\n handlePictureChange = (e) => {\r\n const file = e.target.files[0];\r\n e.target.value = ''; // сброс значения необходим для возможности повторно загрузить один и тот же файл\r\n if (!file || file.size === 0) {\r\n return;\r\n }\r\n\r\n const fr = new FileReader();\r\n fr.onload = () => {\r\n this.setState({\r\n popup: {\r\n file: fr.result,\r\n },\r\n });\r\n };\r\n\r\n fr.readAsDataURL(file);\r\n };\r\n\r\n closeCropPopup = () => {\r\n this.setState({ popup: null });\r\n };\r\n\r\n sendPhoto = (file) => {\r\n const self = this;\r\n saveTempImage(file)\r\n .then((result) => {\r\n self.props.setNewPicture(result.filename);\r\n })\r\n .catch((obj) => {\r\n alert('Не удалось загрузить изображение.');\r\n });\r\n };\r\n\r\n render() {\r\n const { firstName, lastName, picture } = this.props.user;\r\n const { newPicture } = this.props;\r\n const fullName = `${firstName} ${lastName}`;\r\n\r\n let pictureUrl = '';\r\n if (newPicture) {\r\n pictureUrl = newPicture;\r\n } else if (picture) {\r\n pictureUrl = getFullImageUrl(picture);\r\n }\r\n\r\n return (\r\n\r\n\r\n\r\n\r\n\r\n\r\nВыберите загружаемую область изображения.
\r\n\r\n\r\n\r\n
\r\n \r\n \r\n\r\n\r\n {pictureUrl ? (\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport class UserStatistic extends Component {\r\n static propTypes = {\r\n statistic: PropTypes.object.isRequired,\r\n };\r\n\r\n render() {\r\n const {\r\n visitsCount,\r\n commentsCount,\r\n downloadedTrainingMaterialsCount,\r\n forumTopicCount,\r\n leftLikesCount,\r\n practiceCasesCount,\r\n setLikesCount\r\n } = this.props.statistic;\r\n return (\r\n\r\n ) : (\r\n
\r\n {getUserInitials(fullName)}\r\n\r\n )}\r\n {this.props.canEdit && (\r\n \r\n )}\r\n {this.state.popup && (\r\n\r\n )}\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport constants from '../../utils/constants';\r\n\r\nexport class InputWithPlaceholder extends Component {\r\n static propTypes = {\r\n defaultValue: PropTypes.string,\r\n value: PropTypes.string,\r\n name: PropTypes.string,\r\n type: PropTypes.string,\r\n placeholder: PropTypes.string.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n };\r\n\r\n static defaultProps = {\r\n type: 'text',\r\n name: '',\r\n defaultValue: '',\r\n value: '',\r\n };\r\n\r\n render() {\r\n const {\r\n placeholder, defaultValue, value, onChange, name, type,\r\n } = this.props;\r\n return (\r\nСтатистика:
\r\n\r\n\r\n\r\nВсего посещений:\r\n{visitsCount}\r\n\r\n\r\n\r\n Скачано материалов «Обучение»:\r\n\r\n{downloadedTrainingMaterialsCount}\r\n\r\n\r\n\r\n Выложено материалов «Практика»:\r\n\r\n{practiceCasesCount}\r\n\r\n\r\n\r\n Поставлено лайков/осталось:\r\n\r\n{`${setLikesCount}/${leftLikesCount}`}\r\n\r\n\r\nСообщений в форуме:\r\n{commentsCount}\r\n\r\n\r\nТем в форуме:\r\n{forumTopicCount}\r\n\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { TextMask, InputAdapter } from \"react-text-mask-hoc\";\r\nimport constants from '../../utils/constants';\r\n\r\nexport class PhoneInputWithPlaceholder extends Component {\r\n static propTypes = {\r\n defaultValue: PropTypes.string,\r\n value: PropTypes.string,\r\n name: PropTypes.string,\r\n type: PropTypes.string,\r\n placeholder: PropTypes.string.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n };\r\n\r\n static defaultProps = {\r\n type: 'text',\r\n name: '',\r\n };\r\n\r\n render() {\r\n const {\r\n placeholder,\r\n defaultValue,\r\n value,\r\n onChange,\r\n name,\r\n type,\r\n } = this.props;\r\n return (\r\n{`${placeholder}:`}\r\n {this.props.validationFunc\r\n && this.props.value\r\n && !this.props.validationFunc(this.props.value) && (\r\n \r\n {constants.errorMessage[this.props.name]}\r\n \r\n )}\r\n\r\n\r\n );\r\n }\r\n}\r\n","export default class enums {\r\n static updateUserStatusEnum = {\r\n none: 0,\r\n personalDataUpdated: 1,\r\n passwordChanged: 2,\r\n passwordDoesntChanged: 4,\r\n\t\tphoneConflict: 8,\r\n\t\temailConflict: 16,\r\n personalDataDoesntUpdated: 32\r\n }\r\n};","import {\r\n getDigitsOnly,\r\n} from \"./helpers\";\r\n\r\nexport function validFirstName(firstName) {\r\n var nameRegex = RegExp('^[а-яА-ЯёЁ\\-]+$');\r\n return (firstName && firstName.length > 0 && nameRegex.test(firstName));\r\n};\r\n\r\nexport function validLastName(lastName) {\r\n var nameRegex = RegExp('^[а-яА-ЯёЁ\\-]+$');\r\n return (lastName && lastName.length > 0 && nameRegex.test(lastName));\r\n};\r\n\r\nexport function validEmail(email) {\r\n var emailRegex = RegExp('^[a-zA-Z0-9_\\\\.-]+@([a-zA-Z0-9-]+\\\\.)+[a-zA-Z]{2,6}$');\r\n return (email && email.length > 0 && emailRegex.test(email));\r\n};\r\n\r\n\r\nexport function validPassword(pass) {\r\n return (!pass || pass.length >= 6);\r\n};\r\n\r\nexport function validNewPasswordsEquality(newPass, newPassAgain) {\r\n return !(\r\n (newPass || newPassAgain)\r\n &&\r\n (newPass !== newPassAgain)\r\n ); \r\n};\r\n\r\nexport function validPhone(phone) {\r\n let phoneNumber = getDigitsOnly(phone);\r\n\r\n if (phoneNumber.length != 11) {\r\n return false;\r\n }\r\n\r\n if (phoneNumber.length > 0 && phoneNumber.charAt(0) !== '7') {\r\n return false;\r\n }\r\n\r\n return true;\r\n}","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport { ProfileAvatar } from '../../components/User/ProfileAvatar';\r\nimport { UserStatistic } from '../../components/User/UserStatistic';\r\nimport { InputWithPlaceholder } from '../../components/Inputs/InputWithPlaceholder';\r\nimport { PhoneInputWithPlaceholder } from '../../components/Inputs/PhoneInputWithPlaceholder';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport { getStatisticByUserId } from '../../utils/api/services/statistic';\r\nimport { updateUser } from '../../utils/api/services/identity';\r\nimport MessageModal from '../../components/Modals/MessageModal';\r\nimport Enums from \"../../utils/enums\";\r\nimport constants from \"../../utils/constants\";\r\nimport paths from \"../../paths\";\r\n\r\nimport {\r\n parsePhoneNumber,\r\n validFirstName,\r\n validLastName,\r\n validEmail,\r\n validPhone,\r\n validPassword,\r\n validNewPasswordsEquality,\r\n} from \"../../utils/validation\";\r\n\r\nimport {\r\n getDigitsOnly,\r\n} from \"../../utils/helpers\";\r\n\r\n\r\nconst inputs = {\r\n firstDataBlock: [\r\n {\r\n name: 'firstName',\r\n placeholder: 'Имя',\r\n component: InputWithPlaceholder,\r\n validationFunc: validFirstName\r\n },\r\n {\r\n name: 'lastName',\r\n placeholder: 'Фамилия',\r\n component: InputWithPlaceholder,\r\n validationFunc: validLastName\r\n },\r\n {\r\n name: 'phone',\r\n type: 'tel',\r\n placeholder: 'Телефон',\r\n component: PhoneInputWithPlaceholder,\r\n validationFunc: validPhone\r\n },\r\n {\r\n name: 'email',\r\n type: 'email',\r\n placeholder: 'Email',\r\n component: InputWithPlaceholder,\r\n validationFunc: validEmail\r\n },\r\n ],\r\n secondDataBlock: [\r\n {\r\n name: 'position',\r\n placeholder: 'Должность',\r\n },\r\n {\r\n name: 'company',\r\n placeholder: 'Компания',\r\n },\r\n {\r\n name: 'city',\r\n placeholder: 'Город',\r\n },\r\n // {\r\n // name: 'opticalNetwork',\r\n // placeholder: 'Оптическая сеть',\r\n // },\r\n ],\r\n passwordBlock: [\r\n {\r\n name: 'oldPassword',\r\n type: 'password',\r\n placeholder: 'Старый пароль',\r\n },\r\n {\r\n name: 'newPassword',\r\n type: 'password',\r\n placeholder: 'Новый пароль',\r\n validationFunc: validPassword,\r\n },\r\n {\r\n name: 'newPasswordAgain',\r\n type: 'password',\r\n placeholder: 'Новый пароль еще раз',\r\n validationFunc: validPassword\r\n },\r\n ],\r\n};\r\n\r\nexport class MyProfile extends Component {\r\n constructor(props) {\r\n super(props);\r\n \r\n this.state = {\r\n user: this.props.user,\r\n newPicture: null,\r\n popup: null,\r\n password: {\r\n oldPassword: '',\r\n newPassword: '',\r\n newPasswordAgain: '',\r\n },\r\n statistic: {\r\n visitsCount: this.props.user.visitsCount,\r\n commentsCount: 0,\r\n downloadedTrainingMaterialsCount: 0,\r\n forumTopicCount: 0,\r\n leftLikesCount: 0,\r\n practiceCasesCount: 0,\r\n setLikesCount: 0,\r\n },\r\n isLoading: false,\r\n };\r\n }\r\n\r\n onUserDataChange = (e) => {\r\n const inputName = e.target.name;\r\n const inputValue = e.target.value;\r\n this.setState(prevState => ({\r\n user: {\r\n ...prevState.user,\r\n [inputName]: inputValue,\r\n },\r\n }));\r\n };\r\n\r\n onUserPasswordChange = (e) => {\r\n const inputName = e.target.name;\r\n const inputValue = e.target.value;\r\n this.setState(prevState => ({\r\n password: {\r\n ...prevState.password,\r\n [inputName]: inputValue,\r\n },\r\n }));\r\n };\r\n \r\n handleSubmitBtnClick = (e) => {\r\n this.setState({ isLoading: true });\r\n let model = {\r\n newPicture: this.state.newPicture,\r\n user: this.state.user,\r\n password: this.state.password\r\n };\r\n\r\n if (model.user.phone && model.user.phone.length) {\r\n model.user.phone = getDigitsOnly(model.user.phone);\r\n }\r\n\r\n updateUser(model).then(result => {\r\n let msg = '';\r\n if (result.code & Enums.updateUserStatusEnum.personalDataUpdated) {\r\n msg += 'Персональные данные успешно обновлены. ';\r\n }\r\n if (result.code & Enums.updateUserStatusEnum.personalDataDoesntUpdated) {\r\n msg += 'Не удалось обновить персональные данные. ';\r\n }\r\n if (result.code & Enums.updateUserStatusEnum.emailConflict) {\r\n msg += 'Не удалось обновить персональные данные - указанный email привязан к другому аккаунту. ';\r\n }\r\n if (result.code & Enums.updateUserStatusEnum.phoneConflict) {\r\n msg += 'Не удалось обновить персональные данные - указанный номер телефона привязан к другому аккаунту. ';\r\n }\r\n if (result.code & Enums.updateUserStatusEnum.passwordChanged) {\r\n msg += 'Пароль изменён. ';\r\n }\r\n if (result.code & Enums.updateUserStatusEnum.passwordDoesntChanged) {\r\n msg += 'Изменить пароль не удалось, проверьте корректность вводимого пароля. ';\r\n }\r\n\r\n this.setState({\r\n popup: {\r\n message: msg\r\n }\r\n });\r\n }).catch(() => {\r\n this.setState({\r\n popup: { message: `Не удалось обновить настройки профиля.` }\r\n })\r\n }).finally(() => this.setState({ isLoading: false }));\r\n }\r\n\r\n setNewPicture = (newPicture) => {\r\n this.setState({ newPicture });\r\n }\r\n\r\n componentWillMount = () => {\r\n getStatisticByUserId(this.props.user.id).then(result => {\r\n this.setState(prevState => ({\r\n statistic: {\r\n ...prevState.statistic,\r\n ...result \r\n }\r\n }));\r\n }).catch(e => console.log(e));\r\n };\r\n\r\n render() {\r\n const { user, password, statistic, newPicture, isLoading } = this.state;\r\n\r\n const isFirstNameValid = validFirstName(this.state.user.firstName);\r\n const isLastNameValid = validLastName(this.state.user.lastName);\r\n const isEmailValid = validEmail(this.state.user.email);\r\n const isPhoneValid = validPhone(this.state.user.phone);\r\n const isNewPasswordsEqualityValid = validNewPasswordsEquality(this.state.password.newPassword, this.state.password.newPasswordAgain);\r\n const isNewPasswordValid = validPassword(this.state.password.newPassword);\r\n const isNewPasswordAgainValid = validPassword(this.state.password.newPasswordAgain);\r\n \r\n return (\r\n\r\n {`${placeholder}:`}\r\n {this.props.validationFunc && this.props.value && !this.props.validationFunc(this.props.value) &&\r\n {constants.errorMessage[this.props.name]}\r\n }\r\n\r\n\r\n );\r\n }\r\n\r\n static propTypes = {\r\n user: PropTypes.object.isRequired,\r\n };\r\n}\r\n","import { apiRequest } from '../core';\r\n\r\nexport function updateUser(user) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/identity/user`);\r\n return apiRequest(url, {\r\n method: 'PUT',\r\n credentials: 'same-origin',\r\n body: JSON.stringify(user),\r\n headers: {\r\n 'Content-Type': 'application/json; charset=utf-8',\r\n },\r\n });\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport class PersonalInfoItem extends Component {\r\n static propTypes = {\r\n value: PropTypes.string,\r\n placeholder: PropTypes.string.isRequired,\r\n };\r\n\r\n static defaultProps = {\r\n placeholder: '',\r\n value: '',\r\n };\r\n\r\n render() {\r\n const { placeholder, value } = this.props;\r\n\r\n return (\r\n\r\n Мой профиль
\r\n\r\n\r\n {this.state.popup &&\r\n (\r\n\r\n\r\n \r\n\r\n\r\nЛичная информация:
\r\n\r\n {inputs.firstDataBlock.map(item => (\r\n\r\n\r\n\r\n ))}\r\n \r\n {inputs.secondDataBlock.map(item => (\r\n\r\n\r\n\r\n ))}\r\n \r\n\r\n {!isNewPasswordsEqualityValid &&\r\n \r\n {constants.errorMessage.newPasswordsNotEquals}\r\n }\r\n\r\n \r\nСмена пароля:
\r\n\r\n {inputs.passwordBlock.map(item => (\r\n\r\n ))}\r\n \r\n {\r\n this.setState({ popup: null });\r\n window.location.reload();\r\n }}\r\n />)}\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport { ProfileAvatar } from '../../components/User/ProfileAvatar';\r\nimport { UserStatistic } from '../../components/User/UserStatistic';\r\nimport { PersonalInfoItem } from '../../components/Inputs/PersonalInfoItem';\r\nimport { GetProfile } from '../../utils/api/services/profile';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport paths from '../../paths';\r\n\r\nconst inputs = [\r\n {\r\n name: 'firstName',\r\n placeholder: 'Имя',\r\n },\r\n {\r\n name: 'lastName',\r\n placeholder: 'Фамилия',\r\n },\r\n {\r\n name: 'phone',\r\n type: 'tel',\r\n placeholder: 'Телефон',\r\n },\r\n {\r\n name: 'email',\r\n type: 'email',\r\n placeholder: 'Email',\r\n },\r\n {\r\n name: 'position',\r\n placeholder: 'Должность',\r\n },\r\n {\r\n name: 'company',\r\n placeholder: 'Компания',\r\n },\r\n {\r\n name: 'city',\r\n placeholder: 'Город',\r\n },\r\n // {\r\n // name: 'opticalNetwork',\r\n // placeholder: 'Оптическая сеть',\r\n // }\r\n];\r\n\r\nexport class Profile extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n isLoading: true,\r\n user: null,\r\n statistic: null,\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n GetProfile(this.props.match.params.profileId).then(result => {\r\n this.setState({\r\n isLoading: false,\r\n user: result.user,\r\n statistic: { ...result.statistic, visitsCount: result.user.visitsCount }\r\n });\r\n }).catch(e => console.log(e));\r\n };\r\n\r\n render() {\r\n const { user, statistic, isLoading } = this.state;\r\n\r\n if (isLoading) {\r\n return{`${placeholder}:`}\r\n{`${value}`}\r\n;\r\n }\r\n \r\n const fullName = `${user.firstName} ${user.lastName}`;\r\n return (\r\n \r\n\r\n );\r\n }\r\n\r\n static propTypes = {\r\n user: PropTypes.object.isRequired,\r\n };\r\n}\r\n","import { apiRequest } from '../core';\r\n\r\nexport function GetProfile(id) {\r\n const url = new URL(`${process.env.REACT_APP_BACKEND_HOST}/api/profile/${id}`);\r\n return apiRequest(url);\r\n}","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport formatDate from '../../utils/formatDate';\r\nimport paths from '../../paths';\r\n\r\nexport class NewsItem extends Component {\r\n static propTypes = {\r\n title: PropTypes.string.isRequired,\r\n alias: PropTypes.string.isRequired,\r\n date: PropTypes.string.isRequired,\r\n announce: PropTypes.string.isRequired,\r\n }\r\n\r\n render() {\r\n const {\r\n title, alias, date, announce,\r\n } = this.props;\r\n return (\r\n\r\n {fullName}
\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\nЛичная информация:
\r\n {inputs.filter(x => user[x.name]).map(item => (\r\n\r\n ))}\r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { NewsItem } from './NewsItem';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport { getNewsFeed } from '../../utils/api/services/news';\r\nimport paths from '../../paths';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport ListFooter from '../../components/ListFooter/ListFooter';\r\nimport { setUrlParameters } from '../../utils/helpers'; \r\nimport { getPage } from '../../utils/urlHelper'; \r\n\r\nexport class NewsList extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.pageSize = 5;\r\n \r\n this.state = {\r\n isLoading: true,\r\n news: [],\r\n total: 0,\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n this.fetchData();\r\n };\r\n\r\n fetchData = () => {\r\n const page = getPage();\r\n\r\n this.setState({ isLoading: true });\r\n getNewsFeed((page - 1) * this.pageSize, this.pageSize)\r\n .then((result) => {\r\n this.setState({\r\n news: result.data,\r\n total: result.total,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n };\r\n\r\n handlePageClick = (e) => {\r\n const newPage = e.selected + 1;\r\n let urlQuery = {};\r\n urlQuery[\"page\"] = newPage > 1 ? newPage : null;\r\n setUrlParameters(urlQuery, this.fetchData);\r\n };\r\n\r\n componentDidUpdate(prevProps, prevState, snapshot) {\r\n if (prevProps.location.search !== this.props.location.search) {\r\n this.fetchData();\r\n }\r\n }\r\n\r\n handleLoadMore = () => {\r\n const page = getPage();\r\n const newPage = page + 1;\r\n let urlQuery = {};\r\n urlQuery[\"page\"] = newPage > 1 ? newPage : null;\r\n setUrlParameters(urlQuery);\r\n\r\n this.setState({ isLoading: true });\r\n getNewsFeed(page * this.pageSize, this.pageSize)\r\n .then((result) => {\r\n this.setState({\r\n news: [...this.state.news, ...result.data],\r\n total: result.total,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n };\r\n\r\n render() {\r\n const {\r\n isLoading, news, total, \r\n } = this.state;\r\n\r\n const page = getPage();\r\n\r\n if (isLoading && !news.length) {\r\n return\r\n \r\n {title}\r\n \r\n \r\n\r\n \r\n;\r\n }\r\n\r\n return (\r\n \r\n\r\n );\r\n }\r\n}\r\n\r\nconst NewsListContent = ({\r\n news, pageSize, total, handlePageClick, currentPage, handleLoadMore\r\n}) => (\r\n\r\n\r\n Все новости
\r\n\r\n {news.length ? (\r\n\r\n ) : (\r\n Новостей нет :(\r\n )}\r\n\r\n \r\n);\r\n","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport paths from '../../paths';\r\nimport { getFullGalleryImageUrl } from '../../utils/api/services/image';\r\n\r\nexport class GalleryCategoryItem extends Component {\r\n static propTypes = {\r\n name: PropTypes.string.isRequired,\r\n alias: PropTypes.string.isRequired,\r\n image: PropTypes.string.isRequired\r\n }\r\n\r\n render() {\r\n const {\r\n name, alias, image\r\n } = this.props;\r\n return (\r\n \r\n\r\n {news.length ? (\r\n news.map(item => (\r\n\r\n\r\n\r\n ))\r\n ) : (\r\n Новостей нет\r\n )}\r\n\r\n \r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\r\n \r\n );\r\n }\r\n}","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { GalleryCategoryItem } from './GalleryCategoryItem';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport { getGalleryFeed } from '../../utils/api/services/gallery';\r\nimport paths from '../../paths';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport ListFooter from '../../components/ListFooter/ListFooter';\r\nimport { setUrlParameters } from '../../utils/helpers';\r\nimport { getPage } from '../../utils/urlHelper'; \r\n\r\nexport class GalleryCategoryList extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n isLoading: true,\r\n gallery: []\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n this.fetchData();\r\n };\r\n\r\n fetchData = () => {\r\n this.setState({ isLoading: true });\r\n getGalleryFeed()\r\n .then((result) => {\r\n console.log(result);\r\n this.setState({\r\n gallery: result\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n };\r\n\r\n componentDidUpdate(prevProps, prevState, snapshot) {\r\n if (prevProps.location.search !== this.props.location.search) {\r\n this.fetchData();\r\n }\r\n }\r\n\r\n render() {\r\n const {\r\n isLoading, gallery\r\n } = this.state;\r\n\r\n if (isLoading && !gallery.length) {\r\n return\r\n {name}\r\n\t\t\t\t\t\t\t\t\r\n;\r\n }\r\n\r\n return (\r\n \r\n\r\n\r\n )\r\n }\r\n}\r\n\r\nconst GalleryListContent = ({\r\n gallery\r\n}) => (\r\n\r\n\r\n Галерея
\r\n\r\n\r\n\r\n {gallery.length ? (\r\n\r\n\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n ) : (\r\n Галереи нет :(\r\n )}\r\n\t\t\t\t\t \r\n\t\t\t\t\r\n {gallery.length ? (\r\n gallery.map(item => (\r\n \r\n );\r\n","import { apiRequest } from \"../core\";\r\n\r\nexport function getGalleryFeed() {\r\n let url = new URL(process.env.REACT_APP_BACKEND_HOST + \"/api/gallery\");\r\n return apiRequest(url);\r\n}\r\n\r\nexport function getGalleryImages(alias) {\r\n let url = new URL(process.env.REACT_APP_BACKEND_HOST + `/api/gallery/${alias}`);\r\n return apiRequest(url);\r\n}","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport { getNewsByAlias } from '../../utils/api/services/news';\r\nimport paths from '../../paths';\r\nimport formatDate from '../../utils/formatDate';\r\nimport { getFileExtension } from '../../utils/helpers';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport AttachedContent from '../../components/AttachedContent/AttachedContent';\r\nimport { FileDownloadUrl, FilePdfUrl } from '../../utils/api/services/files';\r\n\r\nexport class NewsDetails extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n isLoading: true,\r\n };\r\n }\r\n\r\n getType = ({ extension }) => {\r\n switch (extension) {\r\n case 'pdf':\r\n return 'pdf';\r\n break;\r\n\r\n default:\r\n return 'file';\r\n break;\r\n }\r\n };\r\n\r\n componentWillMount() {\r\n getNewsByAlias(this.props.match.params.alias)\r\n .then((news) => {\r\n this.setState({ news, isLoading: false });\r\n })\r\n .catch(e => console.log(e));\r\n }\r\n\r\n render() {\r\n const { isLoading, news } = this.state;\r\n\r\n if (isLoading) {\r\n return\r\n ))\r\n ) : (\r\n Новостей нет\r\n )}\r\n;\r\n }\r\n\r\n const url = FileDownloadUrl(news.documentFileId);\r\n const pdfUrl = FilePdfUrl(news.documentFileId);\r\n const type = ({ extension: getFileExtension(news.documentFileName) });\r\n console.log('type: ', type);\r\n\r\n return (\r\n \r\n\r\n );\r\n }\r\n}\r\n\r\nfunction Document(props) {\r\n const { documentTitle, url, targetType} = props;\r\n return (\r\n\r\n\r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n{news.title}
\r\n\r\n {news.text ? (\r\n \r\n ) : (\r\n \r\n )}\r\n {type.extension === 'pdf' && (\r\n \r\n )}\r\n {type === 'file' && (\r\n \r\n )}\r\n \r\n {'Читать все новости'}\r\n \r\n \r\n \r\n );\r\n}\r\n","import jquery from 'jquery';\r\nwindow.jQuery = jquery;\r\nwindow.$ = jquery;","import '../../utils/jquery-global'\r\nimport React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PropTypes, { func } from 'prop-types';\r\nimport paths from '../../paths';\r\nimport { getFullGalleryImageUrl } from '../../utils/api/services/image';\r\nimport { getGalleryImages } from '../../utils/api/services/gallery';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport '@fancyapps/fancybox';\r\n\r\n\r\nexport class GalleryCategoryDetails extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n\r\n this.state = {\r\n isLoading: true,\r\n gallery: null\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n this.fetchData();\r\n };\r\n\r\n fetchData = () => {\r\n this.setState({ isLoading: true });\r\n getGalleryImages(this.props.match.params.alias)\r\n .then((result) => {\r\n console.log(result);\r\n this.setState({\r\n gallery: result\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n };\r\n\r\n componentDidUpdate(prevProps, prevState, snapshot) {\r\n if (prevProps.location.search !== this.props.location.search) {\r\n this.fetchData(); \r\n }\r\n\r\n window.$(document).ready(function () {\r\n window.$(\"[data-fancybox]\").fancybox({\r\n clickContent: false\r\n });\r\n })\r\n }\r\n\r\n render() {\r\n const {\r\n isLoading, gallery,\r\n } = this.state;\r\n\r\n\r\n if (isLoading && !gallery) {\r\n return\r\n \r\n {documentTitle}\r\n \r\n\r\n;\r\n }\r\n\r\n return (\r\n \r\n\r\n );\r\n }\r\n}\r\n\r\nconst ImagesContent = ({\r\n images\r\n}) => (\r\n\r\n\r\n {gallery.name}
\r\n\r\n\r\n {gallery.galleryImages.length ? (\r\n\r\n\r\n ) : (\r\n Нет изображений\r\n )}\r\n\r\n \r\n );\r\n","import React, { Component } from 'react';\r\nimport TrainingListItem from './TrainingListItem';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport default class TrainingList extends Component {\r\n\r\n static propTypes = {\r\n materials: PropTypes.array.isRequired,\r\n searchQueryData: PropTypes.string.isRequired,\r\n };\r\n\r\n\r\n render() {\r\n const { materials, searchQueryData } = this.props;\r\n\r\n if (materials && searchQueryData && !materials.length) {\r\n return (\r\n\r\n {images.length ? (\r\n images.map(item => (\r\n \r\n\r\n\r\n\r\n\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n {item.name}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n ))\r\n ) : (\r\nНет изображений\r\n )}\r\n\r\n \r\n );\r\n }\r\n\r\n if (!materials) {\r\n return (\r\n {`Результат поиска «${searchQueryData}»:`}\r\n\r\n\r\n\r\n\r\n\r\nПо вашему запросу ничего не найдено\r\nПопробуйте изменить ключевое слово\r\nОбучающих материалов нет :();\r\n }\r\n\r\n if (searchQueryData) {\r\n return (\r\n\r\n \r\n );\r\n }\r\n\r\n return (\r\n\r\n {`Результат поиска «${searchQueryData}»:`}\r\n\r\n\r\n {materials.map(item => (\r\n))}\r\n \r\n \r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport TrainingList from './TrainingList';\r\nimport Search from '../../components/Search/Search';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport ListFooter from '../../components/ListFooter/ListFooter';\r\nimport { getTrainingMaterials } from '../../utils/api/services/materials';\r\nimport { setUrlParameters } from '../../utils/helpers';\r\nimport { getPage, getQuery } from '../../utils/urlHelper';\r\nimport paths from '../../paths';\r\n\r\nexport default class Training extends Component {\r\n static propTypes = {};\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.pageSize = 10;\r\n\r\n this.state = {\r\n searchQuery: getQuery() || '',\r\n matireals: [],\r\n isLoading: false,\r\n isLoadingMore: false,\r\n total: 0,\r\n };\r\n }\r\n\r\n componentWillMount() {\r\n this.fetchData();\r\n }\r\n\r\n componentDidUpdate(prevProps, prevState, snapshot) {\r\n this.props.location.search = getQuery();\r\n if (prevProps.location.search !== this.props.location.search) {\r\n this.setState(\r\n {\r\n searchQuery: '',\r\n },\r\n this.fetchData(),\r\n );\r\n }\r\n }\r\n\r\n fetchData = () => {\r\n const query = getQuery();\r\n const page = getPage();\r\n\r\n this.setState({ isLoading: true });\r\n getTrainingMaterials((page - 1) * this.pageSize, this.pageSize, query)\r\n .then((result) => {\r\n this.setState({\r\n materials: result.data,\r\n total: result.total,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n };\r\n\r\n handleSearchQueryChange = (e) => {\r\n const search = e.currentTarget.value;\r\n this.setState({ searchQuery: search });\r\n };\r\n\r\n handleSearchEnterPress = (e) => {\r\n if (e.keyCode === 13) {\r\n e.preventDefault();\r\n this.handleSearch();\r\n }\r\n };\r\n\r\n handleSearch = () => {\r\n const urlQuery = {};\r\n urlQuery.page = null;\r\n urlQuery.query = this.state.searchQuery;\r\n setUrlParameters(urlQuery, this.fetchData);\r\n };\r\n\r\n handlePageClick = (e) => {\r\n const newPage = Number(e.selected) + 1;\r\n const urlQuery = {};\r\n urlQuery.page = newPage > 1 ? newPage : null;\r\n setUrlParameters(urlQuery, this.fetchData);\r\n };\r\n\r\n handleLoadMore = () => {\r\n const page = getPage();\r\n const newPage = page + 1;\r\n const urlQuery = {};\r\n urlQuery.page = newPage > 1 ? newPage : null;\r\n setUrlParameters(urlQuery);\r\n\r\n this.setState({ isLoadingMore: true });\r\n getTrainingMaterials(page * this.pageSize, this.pageSize)\r\n .then((result) => {\r\n this.setState({\r\n materials: [...this.state.materials, ...result.data],\r\n total: result.total,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoadingMore: false,\r\n });\r\n });\r\n };\r\n\r\n render() {\r\n const {\r\n searchQuery, isLoading, isLoadingMore, materials, total,\r\n } = this.state;\r\n\r\n const query = getQuery();\r\n const page = getPage();\r\n\r\n return (\r\n\r\n {materials.map(item => (\r\n))}\r\n \r\n\r\n );\r\n }\r\n}\r\n\r\n// matireals.map(category =>\r\n Обучение
\r\n\r\n {isLoading ? (\r\n \r\n ) : (\r\n \r\n \r\n )}\r\n\r\n {isLoadingMore ? : ''}\r\n \r\n )\r\n","export default class practiceConstants {\r\n static allCategory = {\r\n title: 'Все разделы',\r\n alias: null,\r\n description: '',\r\n };\r\n\r\n static sortTypes = [\r\n {\r\n id: 0,\r\n title: \"Дате загрузки\",\r\n alias: 'date'\r\n },\r\n {\r\n id: 1,\r\n title: \"Количеству голосов\",\r\n alias: 'likes'\r\n }\r\n ];\r\n};","import React, { Component } from 'react';\r\nimport Slider from 'react-slick';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport practiceConstants from './practiceConstants';\r\n\r\nexport default class CategoriesDesktop extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.sliderSettings = {\r\n autoplay: false,\r\n swipe: true,\r\n touchMove: true,\r\n infinite: true,\r\n arrows: false,\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n variableWidth: true,\r\n };\r\n }\r\n\r\n static propTypes = {\r\n onChangeCategory: PropTypes.func.isRequired,\r\n categories: PropTypes.array.isRequired,\r\n selectedCategory: PropTypes.object.isRequired,\r\n };\r\n \r\n setCategory = (category) => {\r\n this.props.onChangeCategory(category);\r\n };\r\n \r\n next() {\r\n this.slider.slickNext();\r\n }\r\n\r\n render() {\r\n const { categories } = this.props;\r\n return (\r\n \r\n\r\n\r\n );\r\n }\r\n}","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport onClickOutside from 'react-onclickoutside';\r\nimport classNames from 'classnames';\r\nimport Preloader from '../Preloader/Preloader';\r\n\r\nclass CustomDropdownPractice extends Component {\r\n static defaltProps = {\r\n label: 'Текущий раздел:',\r\n };\r\n\r\n static propTypes = {\r\n categories: PropTypes.array.isRequired,\r\n selectedCategory: PropTypes.object.isRequired,\r\n label: PropTypes.string,\r\n headerTitle: PropTypes.string,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n listOpened: false,\r\n };\r\n }\r\n\r\n selectItem = (item) => {\r\n this.setState(\r\n {\r\n listOpened: false,\r\n },\r\n () => this.props.onChange(item),\r\n );\r\n };\r\n\r\n handleKeyboardPick = (e, item) => {\r\n if (e.keyCode === 13 || e.keyCode === 32) {\r\n e.preventDefault();\r\n this.selectItem(item);\r\n }\r\n };\r\n\r\n toggleList = () => {\r\n this.setState(prevState => ({\r\n listOpened: !prevState.listOpened,\r\n }));\r\n };\r\n\r\n handleClickOutside(e) {\r\n this.setState({\r\n listOpened: false,\r\n });\r\n }\r\n\r\n render() {\r\n const { listOpened } = this.state;\r\n const {\r\n label, categories, selectedCategory,\r\n } = this.props;\r\n if (!categories || !selectedCategory) return\r\n {practiceConstants.allCategory.title}\r\n\r\n\r\n\r\n\r\n(this.slider = slider)}\r\n className=\"navigating-sections-links\"\r\n >\r\n {categories.map(item => (\r\n \r\n\r\n \r\n {item.title}\r\n \r\n \r\n ))}\r\nthis.next()} /> \r\n\r\n\r\n;\r\n return (\r\n \r\n\r\n );\r\n }\r\n}\r\n\r\nexport default onClickOutside(CustomDropdownPractice);\r\n\r\n","import React, { Component } from 'react';\r\nimport CustomDropdownPractice from '../../components/Inputs/CustomDropdownPractice';\r\nimport PropTypes, { array } from 'prop-types';\r\nimport practiceConstants from './practiceConstants';\r\n\r\nexport default class CategoriesMobile extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n isOpen: false,\r\n };\r\n }\r\n \r\n static propTypes = {\r\n onChangeCategory: PropTypes.func.isRequired,\r\n selectedCategory: PropTypes.object.isRequired,\r\n categories: PropTypes.array.isRequired,\r\n };\r\n\r\n selectCategory = (category) => {\r\n this.props.onChangeCategory(category);\r\n };\r\n\r\n render() {\r\n const { categories, selectedCategory } = this.props;\r\n return (\r\n\r\n\r\n\r\n\r\n\r\n {label}\r\n\r\n {selectedCategory.title}\r\n\r\n {categories.length ? (\r\n categories.map((item, idx) => (\r\n
\r\n- this.selectItem(item)}\r\n onKeyDown={e => this.handleKeyboardPick(e, item)}\r\n >\r\n {item.title}\r\n
\r\n ))\r\n ) : (\r\n- \r\n
\r\n )}\r\n\r\n \r\n );\r\n }\r\n}","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst inContestTag = {\r\n id: 0,\r\n tag: 'Участвует в конкурсе',\r\n alias: 'in-contest'\r\n};\r\n\r\nexport default class TagsDesktop extends Component {\r\n static propTypes = {\r\n onChangeTags: PropTypes.func.isRequired,\r\n selectedTags: PropTypes.array.isRequired,\r\n tags: PropTypes.array.isRequired\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.tagsLines = 1;\r\n this.state = {\r\n collapsed: true\r\n };\r\n }\r\n\r\n openTag = (tag) => {\r\n if (this.props.selectedTags.indexOf(tag) == -1) {\r\n this.props.onChangeTags([...this.props.selectedTags, tag]);\r\n }\r\n };\r\n\r\n closeTag = (tag) => {\r\n const selected = this.props.selectedTags.filter(x => x !== tag);\r\n this.props.onChangeTags(selected);\r\n };\r\n\r\n isActive = (alias) => {\r\n const selectedTags = this.props.selectedTags;\r\n const isActive = selectedTags.some(currentValue => currentValue === alias);\r\n return isActive;\r\n };\r\n\r\n getTagHeight = (el) => {\r\n const styles = window.getComputedStyle(el);\r\n const margin = parseFloat(styles.marginTop) + parseFloat(styles.marginBottom);\r\n return el.offsetHeight ? Math.ceil(el.offsetHeight + margin) : 0;\r\n };\r\n\r\n toggleTags = () => {\r\n this.setState(state => ({\r\n collapsed: !state.collapsed\r\n }));\r\n };\r\n\r\n addActiveClass = alias => `tags-item ${this.isActive(alias) ? '-active' : ''}`;\r\n\r\n render() {\r\n const { tags } = this.props;\r\n const { collapsed } = this.state;\r\n const tagsItemHeight = this.tagsItem && this.getTagHeight(this.tagsItem);\r\n const maxTagsItemHeight = tagsItemHeight * this.tagsLines;\r\n const tagsWrapperHeight = this.tagsWrapper && this.tagsWrapper.scrollHeight;\r\n const showExpandButton = tagsWrapperHeight > maxTagsItemHeight;\r\n return (\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport onClickOutside from 'react-onclickoutside';\r\nimport classnames from 'classnames';\r\nimport Preloader from '../Preloader/Preloader';\r\n\r\nclass CustomDropdownPracticeTags extends Component {\r\n static defaltProps = {\r\n label: 'Текущий раздел:'\r\n };\r\n\r\n static propTypes = {\r\n categories: PropTypes.array.isRequired,\r\n selectedCategories: PropTypes.array.isRequired,\r\n label: PropTypes.string,\r\n headerTitle: PropTypes.string,\r\n isLoadingSelectedTags: PropTypes.bool\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n this.dropdownItem = React.createRef();\r\n this.dropdownList = React.createRef();\r\n this.state = {\r\n listOpened: false\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n const height = document.documentElement.clientHeight - this.dropdownItem.current.getBoundingClientRect().top - 62;\r\n this.dropdownList.current.style.maxHeight = height + 'px';\r\n }\r\n\r\n openItem = (alias) => {\r\n if (this.props.selectedCategories.indexOf(alias) == -1) {\r\n const selected = [...this.props.selectedCategories, alias];\r\n this.setState(\r\n {\r\n listOpened: true\r\n },\r\n () => this.props.onChange(selected)\r\n );\r\n }\r\n };\r\n\r\n closeItem = (alias) => {\r\n const selected = this.props.selectedCategories.filter(x => x !== alias);\r\n this.setState(\r\n {\r\n listOpened: true\r\n },\r\n () => this.props.onChange(selected)\r\n );\r\n };\r\n\r\n toggleList = () => {\r\n this.setState(prevState => ({\r\n listOpened: !prevState.listOpened\r\n }));\r\n };\r\n\r\n handleClickOutside(e) {\r\n this.setState({\r\n listOpened: false\r\n });\r\n }\r\n\r\n isActive = alias => this.props.selectedCategories.indexOf(alias) > -1;\r\n\r\n render() {\r\n const { listOpened } = this.state;\r\n const { categories, selectedCategories, isLoadingSelectedTags } = this.props;\r\n if (!categories || !selectedCategories) return(this.tagsWrapper = el)}\r\n style={{ maxHeight: collapsed && maxTagsItemHeight ? `${maxTagsItemHeight}px` : 'none' }}\r\n >\r\n \r\n {tags.map(item => (\r\n\r\n {showExpandButton && (\r\nthis.openTag(item.alias)}\r\n >\r\n {item.tag}\r\n {this.isActive(item.alias) && (\r\n \r\n ))}\r\nthis.closeTag(item.alias)}>\r\n {'Отменить'}\r\n \r\n )}\r\n\r\n {collapsed ? 'Еще' : 'Скрыть'}\r\n \r\n )}\r\n;\r\n return (\r\n \r\n\r\n );\r\n }\r\n}\r\n\r\nexport default onClickOutside(CustomDropdownPracticeTags);\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { tag } from 'postcss-selector-parser';\r\nimport classNames from 'classnames';\r\nimport CustomDropdownPracticeTags from '../../components/Inputs/CustomDropdownPracticeTags';\r\n\r\nconst inContestTag = {\r\n id: 0,\r\n tag: 'Участвует в конкурсе',\r\n alias: 'in-contest'\r\n};\r\n\r\nexport default class TagsMobile extends Component {\r\n constructor(props) {\r\n super(props);\r\n }\r\n\r\n static propTypes = {\r\n onChangeTags: PropTypes.func.isRequired,\r\n selectedTags: PropTypes.array.isRequired,\r\n tags: PropTypes.array.isRequired,\r\n isLoadingSelectedTags: PropTypes.bool\r\n };\r\n\r\n\r\n selectTags = (tags) => {\r\n this.props.onChangeTags(tags);\r\n\r\n }\r\n\r\n render() {\r\n const { tags, selectedTags, isLoadingSelectedTags } = this.props\r\n return (\r\n\r\n\r\n\r\n {`Выбрано тегов: ${selectedCategories.length}`}\r\n\r\n\r\n
\r\n- \r\n {isLoadingSelectedTags ?
\r\n: <>>}\r\n \r\n {categories.length ? (\r\n categories.map(item => (\r\n this.openItem(item.alias)}\r\n >\r\n {item.tag}\r\n {this.isActive(item.alias) && (\r\n\r\nthis.closeItem(item.alias)}\r\n >\r\n {'Отменить'}\r\n \r\n )}\r\n \r\n ))\r\n ) : (\r\n- \r\n
\r\n )}\r\n\r\n \r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport CustomDropdown from '../../components/Inputs/CustomDropdown';\r\nimport practiceConstants from './practiceConstants';\r\n\r\nexport default class CategoriesDetal extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n isOpen: true,\r\n };\r\n }\r\n\r\n static propTypes = {\r\n selectedCategory: PropTypes.object.isRequired,\r\n onChangeSort: PropTypes.func.isRequired,\r\n };\r\n\r\n handleSelectedSearchChange = (item) => {\r\n this.props.onChangeSort(item);\r\n };\r\n\r\n handleOnClick = () => {\r\n this.setState(prevState => ({\r\n isOpen: !prevState.isOpen,\r\n }));\r\n };\r\n\r\n render() {\r\n const { selectedCategory, selectedSort } = this.props;\r\n\r\n if (!selectedCategory) {\r\n return ;\r\n }\r\n\r\n return (\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport CustomDropdownPractice from '../../components/Inputs/CustomDropdownPractice';\r\nimport practiceConstants from './practiceConstants';\r\n\r\nexport default class SortMobile extends Component {\r\n constructor(props) {\r\n super(props);\r\n }\r\n\r\n static propTypes = {\r\n selectedSort: PropTypes.object.isRequired,\r\n onChangeSort: PropTypes.func.isRequired,\r\n };\r\n\r\n selectSortType = (sortType) => {\r\n this.props.onChangeSort(sortType);\r\n }\r\n\r\n render() {\r\n const { selectedSort } = this.props;\r\n return (\r\n\r\n Cортировать по \r\n\r\n\r\n\r\n {selectedCategory.title}
\r\n\r\n \r\n\r\n {selectedCategory.description ? (\r\n \r\n ) : (\r\n ''\r\n )}\r\n\r\n );\r\n }\r\n}","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport CategoriesDesktop from './CategoriesDesktop';\r\nimport CategoriesMobile from './CategoriesMobile';\r\nimport TagsDesktop from './TagsDesktop';\r\nimport TagsMobile from './TagsMobile';\r\nimport CategoriesDetal from './CategoriesDetal';\r\nimport SortMobile from './SortMobile';\r\nimport { getContestCategoties } from '../../utils/api/services/contest';\r\nimport { getContestTags } from '../../utils/api/services/contest';\r\nimport practiceConstants from './practiceConstants';\r\n\r\nexport default class CategoriesAndTagsPanel extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n categories: [],\r\n tags: [],\r\n };\r\n }\r\n\r\n static propTypes = {\r\n onChangeCategory: PropTypes.func.isRequired,\r\n onChangeTags: PropTypes.func.isRequired,\r\n onChangeSort: PropTypes.func.isRequired,\r\n isLoadingSelectedTags: PropTypes.bool\r\n };\r\n\r\n componentWillMount = () => {\r\n this.fetchCategotiesData();\r\n this.fetchTagsData();\r\n }\r\n\r\n fetchCategotiesData = () => {\r\n getContestCategoties()\r\n .then((result) => {\r\n this.setState({\r\n categories: result,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n });\r\n }\r\n\r\n fetchTagsData = () => {\r\n getContestTags()\r\n .then((result) => {\r\n this.setState({\r\n tags: result,\r\n });\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n });\r\n }\r\n\r\n changeCategory = (category) => {\r\n this.props.onChangeCategory(category.alias);\r\n }\r\n\r\n changeTags = (tags) => {\r\n this.props.onChangeTags(tags);\r\n }\r\n\r\n changeSort = (sort) => {\r\n this.props.onChangeSort(sort);\r\n }\r\n\r\n render() {\r\n const {\r\n categories, tags,\r\n } = this.state;\r\n\r\n const {\r\n selectedCategoryAlias, selectedSortAlias, selectedTags, isLoadingSelectedTags\r\n } = this.props;\r\n\r\n const selectedCategory = categories.find(el => el.alias === selectedCategoryAlias) || practiceConstants.allCategory;\r\n const selectedSort = practiceConstants.sortTypes.find(el => el.alias === selectedSortAlias) || practiceConstants.sortTypes[0];\r\n\r\n return (\r\n \r\n \r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { getPracticeCasesByFilter } from '../../utils/api/services/contest';\r\nimport BreadCrumbs from '../../components/BreadСrumbs/BreadСrumbs';\r\nimport PracticeCard from './PracticeCard';\r\nimport CategoriesAndTagsPanel from './CategoriesAndTagsPanel';\r\nimport ListFooter from '../../components/ListFooter/ListFooter';\r\nimport Preloader from '../../components/Preloader/Preloader';\r\nimport queryString from 'query-string';\r\nimport { setUrlParameters } from '../../utils/helpers';\r\nimport practiceConstants from './practiceConstants';\r\nimport { getPage, getQuery, getTags, getSort, getCategory } from '../../utils/urlHelper';\r\nimport paths from '../../paths';\r\n\r\nexport default class Practice extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.defaultSort = practiceConstants.sortTypes[0];\r\n this.pageSize = 8;\r\n\r\n this.state = {\r\n isLoading: true,\r\n isLoadingSelectedTags: false,\r\n practice: [],\r\n total: 0,\r\n };\r\n }\r\n\r\n componentDidUpdate(prevProps, prevState, snapshot) {\r\n if (prevProps.location.search !== this.props.location.search) {\r\n this.fetchPracticeData();\r\n }\r\n }\r\n\r\n componentWillMount = () => {\r\n this.fetchPracticeData();\r\n };\r\n\r\n fetchPracticeData = (more = false) => {\r\n this.setState({ isLoading: true, isLoadingSelectedTags: true });\r\n\r\n const page = getPage();\r\n const selectedTags = getTags();\r\n const selectedSort = getSort() || this.defaultSort.alias;\r\n const selectedCategory = getCategory() || practiceConstants.allCategory.alias;\r\n\r\n getPracticeCasesByFilter(\r\n selectedCategory,\r\n selectedTags,\r\n selectedSort,\r\n this.pageSize,\r\n (page - 1) * this.pageSize,\r\n )\r\n .then((result) => {\r\n if (more) {\r\n this.setState({\r\n practice: [...this.state.practice, ...result.data],\r\n total: result.total,\r\n });\r\n }\r\n else {\r\n this.setState({\r\n practice: result.data,\r\n total: result.total,\r\n });\r\n }\r\n })\r\n .catch((e) => {\r\n console.log(e);\r\n })\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n isLoadingSelectedTags: false\r\n });\r\n });\r\n };\r\n\r\n onChangeCategory = (category) => {\r\n let urlQuery = {};\r\n urlQuery[\"page\"] = null;\r\n urlQuery[\"category\"] = category || null;\r\n setUrlParameters(urlQuery, this.fetchPracticeData);\r\n };\r\n\r\n onChangeTags = (tags) => {\r\n let urlQuery = {};\r\n urlQuery[\"tags\"] = tags.join(',');\r\n urlQuery[\"page\"] = null;\r\n setUrlParameters(urlQuery, this.fetchPracticeData);\r\n };\r\n\r\n onChangeSort = (sort) => {\r\n let urlQuery = {};\r\n urlQuery[\"sort\"] = sort.alias === this.defaultSort.alias ? null : sort.alias;\r\n urlQuery[\"page\"] = null;\r\n setUrlParameters(urlQuery, this.fetchPracticeData);\r\n };\r\n\r\n handlePageClick = (e) => {\r\n const newPage = Number(e.selected) + 1;\r\n\r\n let urlQuery = {};\r\n urlQuery[\"page\"] = newPage > 1 ? newPage : null;\r\n setUrlParameters(urlQuery, this.fetchPracticeData);\r\n };\r\n handleLoadMore = () => {\r\n const page = getPage();\r\n const newPage = page + 1;\r\n const urlQuery = {};\r\n urlQuery.page = newPage > 1 ? newPage : null;\r\n setUrlParameters(urlQuery);\r\n\r\n this.setState(\r\n {\r\n isLoadingMore: true\r\n },\r\n () => this.fetchPracticeData(true),\r\n );\r\n };\r\n\r\n renderCards = (practice, page, total) => {\r\n return (\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n {practice.length ? (\r\n\r\n );\r\n };\r\n\r\n render() {\r\n const {\r\n practice, total, isLoading, isLoadingSelectedTags\r\n } = this.state;\r\n\r\n const selectedCategoryAlias = getCategory() || practiceConstants.allCategory.alias;\r\n const selectedSortAlias = getSort() || this.defaultSort;\r\n const selectedTagsStr = getTags();\r\n const page = getPage();\r\n\r\n const selectedTags = selectedTagsStr ? selectedTagsStr.split(',') : [];\r\n\r\n return (\r\n\r\n \r\n ) : (\r\n\r\n {practice.slice(0, 2).map(item => (\r\n\r\n\r\n ))}\r\n \r\n {practice.slice(2, practice.length).map(item => (\r\n\r\n\r\n ))}\r\n Кейсов нет :(\r\n )}\r\n\r\n\r\n \r\n \r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport classNames from 'classnames';\r\nimport { isPicture, isVideo } from '../../../utils/helpers';\r\nimport GlobalPreloader from '../../../components/Preloader/GlobalPreloader';\r\nimport { likePractice } from '../../../utils/api/services/statistic';\r\nimport Preloader from '../../../components/Preloader/Preloader';\r\nimport AuthorBlock from '../../../components/User/AuthorBlock';\r\n\r\nexport default class PracticeDetailCaseAside extends Component {\r\n static propTypes = {\r\n practice: PropTypes.object.isRequired,\r\n className: PropTypes.string\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.LIKES_TOTAL = 20;\r\n\r\n this.state = {\r\n likeIsLoading: false,\r\n showMyLikeInfo: false,\r\n likeResponse: null,\r\n isLiked: this.props.practice.isLiked\r\n };\r\n }\r\n\r\n like = () => {\r\n this.setState({ likeIsLoading: true });\r\n likePractice(this.props.practice.id, false)\r\n .then((response) => {\r\n this.setState({\r\n showLikeError: false,\r\n likeResponse: response,\r\n isLiked: response.isLiked,\r\n showMyLikeInfo: true\r\n });\r\n })\r\n .catch((e) => {\r\n if (e.status === 400 && e.data) {\r\n this.setState({\r\n showLikeError: true,\r\n likeErrorMessage: e.data.message,\r\n showMyLikeInfo: true\r\n });\r\n } else {\r\n console.log(e);\r\n }\r\n })\r\n .finally(() => {\r\n this.setState({ likeIsLoading: false });\r\n });\r\n };\r\n\r\n render() {\r\n const { practice, className } = this.props;\r\n const {\r\n showMyLikeInfo,\r\n likeResponse,\r\n likeIsLoading,\r\n showLikeError,\r\n likeErrorMessage,\r\n isLiked\r\n } = this.state;\r\n return (\r\n\r\n\r\n\r\n Случай из практики
\r\n\r\n\r\n\r\n\r\n {isLoading ?\r\n : this.renderCards(practice, page, total)}\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport { isPicture, isVideo } from '../../../utils/helpers';\r\nimport GlobalPreloader from '../../../components/Preloader/GlobalPreloader';\r\nimport PracticeDetailCaseAside from './PracticeDetailCaseAside';\r\nimport formatDate from '../../../utils/formatDate';\r\nimport paths from '../../../paths';\r\nimport AttachedContent from '../../../components/AttachedContent/AttachedContent';\r\nimport Preloader from '../../../components/Preloader/Preloader';\r\n\r\nexport default class PracticeDetailCase extends Component {\r\n static propTypes = {\r\n practice: PropTypes.shape({\r\n alias: PropTypes.string.isRequired,\r\n comments: PropTypes.array.isRequired,\r\n contestCategory: PropTypes.string.isRequired,\r\n contestTags: PropTypes.array.isRequired,\r\n createdDate: PropTypes.string.isRequired,\r\n title: PropTypes.string.isRequired,\r\n description: PropTypes.string.isRequired,\r\n fileName: PropTypes.string,\r\n link: PropTypes.string,\r\n forumTopicAlias: PropTypes.string.isRequired,\r\n forumTopicId: PropTypes.number.isRequired,\r\n id: PropTypes.number.isRequired,\r\n isLiked: PropTypes.bool.isRequired,\r\n userId: PropTypes.string.isRequired,\r\n author: PropTypes.object.isRequired,\r\n }).isRequired,\r\n };\r\n\r\n render() {\r\n const { practice } = this.props;\r\n return (\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nОпубликовал:\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n {practice.contestTags && practice.contestTags.length ? (\r\nВ разделе:\r\n{practice.contestCategory}\r\n\r\n\r\n ) : (\r\n ''\r\n )}\r\n\r\n {practice.inContest && (\r\nТэги:\r\n\r\n\r\n\r\n {practice.contestTags.map((contest, idx) => (\r\n \r\n {contest}\r\n \r\n ))}\r\n\r\n\r\n\r\n )}\r\n\r\n\r\n\r\n {isLiked ? (\r\n 'Вам это понравилось'\r\n ) : (\r\n \r\n {showMyLikeInfo && !likeIsLoading && (\r\n\r\n \r\n {' Мне нравится!'}\r\n \r\n )}\r\n\r\n {showLikeError ? (\r\n likeErrorMessage\r\n ) : isLiked ? (\r\n\r\n )}\r\n\r\n Вы поставили лайк.\r\n {` У вас осталось ${likeResponse.leftLikesCount} лайков из ${\r\n this.LIKES_TOTAL\r\n }. Вы можете отозвать свой лайк в любой момент до завершения конкурса`}\r\n \r\n ) : (\r\n\r\n Вы отозвали лайк.\r\n {` У вас осталось ${likeResponse.leftLikesCount} лайков из ${\r\n this.LIKES_TOTAL\r\n }.`}\r\n \r\n )}\r\n\r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport AuthorBlock from '../../../components/User/AuthorBlock';\r\nimport ForumAttachList from '../../Forum/ForumAttachList';\r\n\r\nexport default class PracticeDetailForumComment extends Component {\r\n static propTypes = {\r\n comment: PropTypes.shape({\r\n id: PropTypes.number.isRequired,\r\n userId: PropTypes.string.isRequired,\r\n createDate: PropTypes.string.isRequired,\r\n text: PropTypes.string.isRequired,\r\n attachments: PropTypes.array,\r\n }).isRequired,\r\n };\r\n\r\n render() {\r\n const { comment } = this.props;\r\n return (\r\n\r\n {practice ? (\r\n\r\n\r\n \r\n ) : (\r\n{formatDate(practice.createdDate, 'full')}\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n \r\n {practice.title}
\r\n \r\n\r\n\r\n \r\n {'Написать сообщение'}\r\n \r\n\r\n\r\n )}\r\n \r\n\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport PracticeDetailForumComment from './PracticeDetailForumComment';\r\nimport paths from '../../../paths';\r\n\r\nexport default class PracticeDetailForumBlock extends Component {\r\n static propTypes = {\r\n practice: PropTypes.object.isRequired,\r\n };\r\n\r\n render() {\r\n const { practice } = this.props;\r\n return practice.comments && practice.comments.length ? (\r\n\r\n\r\n\r\n\r\n \r\n \r\n\r\n {comment.attachments && comment.attachments.length ?\r\n: ''}\r\n \r\n\r\n ) : (\r\n ''\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classNames from 'classnames';\r\nimport { getRelatedPracticeCase } from '../../../utils/api/services/contest';\r\nimport Preloader from '../../../components/Preloader/Preloader';\r\nimport AttachedContent from '../../../components/AttachedContent/AttachedContent';\r\nimport PracticeCard from '../PracticeCard';\r\n\r\nexport default class PracticeDetailRelatedCases extends Component {\r\n static propTypes = {\r\n practice: PropTypes.object.isRequired,\r\n };\r\n\r\n componentWillMount = () => {\r\n this.getRelatedPractices();\r\n };\r\n\r\n getRelatedPractices = () => {\r\n this.setState({ isLoading: true });\r\n getRelatedPracticeCase(this.props.practice.id)\r\n .then((relatedPractices) => {\r\n this.setState({\r\n relatedPractices,\r\n });\r\n })\r\n .catch(e => console.log(e))\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n };\r\n\r\n render() {\r\n const { relatedPractices } = this.state;\r\n return relatedPractices && relatedPractices.length ? (\r\nОбсуждение случая\r\n\r\n\r\n {practice.comments.map(comment => (\r\n\r\n\r\n ))}\r\n\r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n Читать все сообщения\r\n \r\n\r\n\r\n\r\n ) : (\r\n ''\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport BreadCrumbs from '../../../components/BreadСrumbs/BreadСrumbs';\r\nimport PracticeDetailCase from './PracticeDetailCase';\r\nimport PracticeDetailForumBlock from './PracticeDetailForumBlock';\r\nimport PracticeDetailRelatedCases from './PracticeDetailRelatedCases';\r\nimport { getPracticeCaseByAlias } from '../../../utils/api/services/contest';\r\nimport paths from '../../../paths';\r\nimport GlobalPreloader from '../../../components/Preloader/GlobalPreloader';\r\nimport Preloader from '../../../components/Preloader/Preloader';\r\n\r\nexport default class PracticeDetail extends Component {\r\n static propTypes = {};\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n practice: null,\r\n isLoading: true,\r\n alias: props.match.params.alias,\r\n };\r\n }\r\n\r\n componentWillMount = () => {\r\n this.fetchPracticeData(this.state.alias);\r\n };\r\n\r\n componentWillReceiveProps = (nextProps) => {\r\n if (nextProps.match.params.alias !== this.state.someValue) {\r\n this.setState({ alias: nextProps.match.params.alias });\r\n this.fetchPracticeData(nextProps.match.params.alias);\r\n }\r\n };\r\n\r\n fetchPracticeData = (alias) => {\r\n this.setState({ isLoading: true });\r\n getPracticeCaseByAlias(alias)\r\n .then((practice) => {\r\n this.setState({\r\n practice,\r\n });\r\n })\r\n .catch(e => console.log(e))\r\n .finally(() => {\r\n this.setState({\r\n isLoading: false,\r\n });\r\n });\r\n };\r\n\r\n render() {\r\n const { practice, isLoading } = this.state;\r\n if (isLoading || !practice || !practice.alias) {\r\n return (\r\nПохожие случаи из практики\r\n\r\n2,\r\n })}\r\n >\r\n {relatedPractices ? (\r\n relatedPractices.map(item =>\r\n)\r\n ) : (\r\n \r\n )}\r\n \r\n\r\n );\r\n }\r\n return (\r\n\r\n \r\n\r\n );\r\n }\r\n}\r\n","\r\nimport React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport './404.css';\r\n\r\nexport default function Error404() {\r\n return (\r\n\r\n\r\n {practice.title}
\r\n\r\n\r\n\r\n \r\n\r\n \r\n \r\n\r\n );\r\n}\r\n","import Main from './containers/Main/Main';\r\nimport Forum from './containers/Forum/Forum';\r\nimport ForumTopicCreate from './containers/Forum/ForumTopicCreate';\r\nimport ForumTopics from './containers/Forum/ForumTopicList';\r\nimport ForumTopic from './containers/Forum/ForumTopic';\r\nimport { MyProfile } from './containers/Profile/MyProfile';\r\nimport { Profile } from './containers/Profile/Profile';\r\nimport { NewsList } from './containers/News/NewsList';\r\nimport { GalleryCategoryList } from './containers/Gallery/GalleryCategoryList';\r\nimport { NewsDetails } from './containers/News/NewsDetails';\r\nimport { GalleryCategoryDetails } from './containers/Gallery/GalleryCategoryDetails';\r\nimport Training from './containers/Training/Training';\r\nimport Practice from './containers/Contest/Practice';\r\nimport PracticeDetail from './containers/Contest/PracticeDetail/PracticeDetail';\r\nimport Error404 from './containers/404/Error404';\r\n\r\nimport paths from './paths';\r\n\r\nexport default class routes {\r\n static advocates = [\r\n { exact: true, path: paths.advocates.main, name: 'Main', component: Main, section: null },\r\n { exact: true, path: paths.advocates.forum, name: 'Forum', component: Forum, section: 'Forum' },\r\n { exact: true, path: paths.advocates.forumNewTopic, name: 'ForumTopicCreate', component: ForumTopicCreate, section: 'Forum' },\r\n { exact: true, path: `${paths.advocates.forumNewTopic}/:alias`, name: 'ForumTopicCreate', component: ForumTopicCreate, section: 'Forum' },\r\n { exact: true, path: paths.advocates.forumCategories, name: 'ForumTopics', component: ForumTopics, section: 'Forum' },\r\n { exact: true, path: `${paths.advocates.forumCategories}/:alias`, name: 'ForumTopics', component: ForumTopics, section: 'Forum' },\r\n { exact: true, path: `${paths.advocates.forumTopic}/:alias`, name: 'ForumTheme', component: ForumTopic, section: 'Forum' },\r\n { exact: true, path: paths.advocates.news, name: 'News', component: NewsList, section: 'News' },\r\n { exact: true, path: paths.advocates.gallery, name: 'Gallery', component: GalleryCategoryList, section: 'Gallery' },\r\n { exact: true, path: `${paths.advocates.news}/:alias`, name: 'NewsDetails', component: NewsDetails, section: 'News' },\r\n { exact: true, path: `${paths.advocates.gallery}/:alias`, name: 'GalleryCategoryDetails', component: GalleryCategoryDetails, section: 'Gallery' },\r\n { exact: true, path: paths.advocates.practice, name: 'Practice', component: Practice, section: 'Practice' },\r\n { exact: true, path: `${paths.advocates.practiceCase}/:alias`, name: 'PracticeDetail', component: PracticeDetail, section: 'Practice' },\r\n { exact: true, path: paths.advocates.myprofile, name: 'MyProfile', component: MyProfile, section: null },\r\n { exact: true, path: `${paths.advocates.profile}/:profileId`, name: 'Profile', component: Profile, section: null },\r\n { exact: true, path: paths.advocates.education, name: 'Training', component: Training, section: 'Education' },\r\n { exact: true, path: paths.advocates.notFound, name: 'Error404', component: Error404, section: null }\r\n ];\r\n};","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport { HeaderNavigation } from './HeaderNavigation';\r\nimport { MenuLargeNavigation } from './MenuLargeNavigation';\r\nimport { HeaderUserProfile } from './HeaderUserProfile';\r\nimport paths from '../../paths';\r\nimport routes from '../../routes';\r\n\r\nexport default class Header extends Component {\r\n\r\n getMappedNavList = ({ location }) => {\r\n const initialNavList = [\r\n {\r\n to: paths.advocates.education,\r\n section: 'Education',\r\n className: '-education',\r\n label: 'Обучение',\r\n active: false,\r\n },\r\n {\r\n to: paths.advocates.forum,\r\n section: 'Forum',\r\n className: '-forum',\r\n label: 'Форум',\r\n active: false,\r\n },\r\n {\r\n to: paths.advocates.gallery,\r\n section: 'Gallery',\r\n className: '-gallery',\r\n label: 'Галерея',\r\n active: false,\r\n },\r\n {\r\n to: paths.advocates.practice,\r\n section: 'Practice',\r\n className: '-practice',\r\n label: 'Практика',\r\n active: false,\r\n },\r\n {\r\n to: paths.advocates.news,\r\n section: 'News',\r\n className: '-news',\r\n label: 'Новости',\r\n active: false,\r\n }\r\n ];\r\n\r\n const navList = initialNavList.map((item) => {\r\n const currentRoute = routes.advocates.find(route => new RegExp(`^${route.path}(/|$)`).exec(location) !== null);\r\n if (currentRoute && currentRoute.section === item.section) {\r\n item.className += ' -active';\r\n item.active = true;\r\n }\r\n return item;\r\n });\r\n\r\n return navList;\r\n };\r\n\r\n\r\n render() {\r\n const navList = this.getMappedNavList({ location: this.props.location });\r\n return (\r\n\r\n 4\r\n 0\r\n 4\r\n \r\nОй! Страница не найдена!
\r\nПроверьте правильность ссылки и попробуйте еще раз.
\r\n\r\n Перейти на главную страницу\r\n\r\n\r\n \r\n );\r\n }\r\n\r\n static propTypes = {\r\n user: PropTypes.object.isRequired,\r\n toggleMenu: PropTypes.func.isRequired,\r\n hideMenu: PropTypes.func.isRequired,\r\n };\r\n}\r\n","import React from 'react';\r\n\r\nexport default function Sprite() {\r\n return (\r\n \r\n );\r\n}\r\n","import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Link } from 'react-router-dom';\r\nimport FooterNavLink from './FooterNavLink';\r\n\r\nexport default class Footer extends Component {\r\n static propTypes = {\r\n showSocialLinks: PropTypes.bool,\r\n showTopBorder: PropTypes.bool,\r\n };\r\n\r\n static defaultProps = {\r\n showSocialLinks: true,\r\n showTopBorder: true,\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n navList: [\r\n {\r\n to: '/Политика конфиденциальности CooperVision_2021_для сайта.pdf',\r\n label: 'Политика конфиденциальности',\r\n }\r\n ],\r\n };\r\n }\r\n\r\n render() {\r\n const { showSocialLinks, showTopBorder } = this.props;\r\n return (\r\n \r\n );\r\n }\r\n}\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport context from './context';\r\n\r\nclass AuthConsumer extends React.Component {\r\n render() {\r\n return (\r\n\r\n \r\n\r\n\r\n\r\n Показать меню\r\n\r\n\r\n\r\n \r\n Cooper Vison\r\n \r\n Адвокаты бренда\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n\r\n\r\n {(props) => this.props.children({ ...props })}\r\n \r\n );\r\n }\r\n};\r\n\r\nAuthConsumer.propTypes = {\r\n children: PropTypes.func.isRequired,\r\n};\r\n\r\nexport default AuthConsumer;\r\n","import React, { Component } from 'react';\r\nimport classNames from 'classnames';\r\nimport { Redirect, Switch, Route } from 'react-router-dom';\r\nimport Header from '../components/Header/Header';\r\nimport Sprite from '../components/Sprite/Sprite';\r\nimport Footer from '../components/Footer/Footer';\r\nimport routes from '../routes';\r\nimport AuthConsumer from '../auth/AuthConsumer';\r\nimport Preloader from '../components/Preloader/Preloader';\r\nimport Error404 from './404/Error404';\r\n\r\nexport class Layout extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n isMenuActive: false\r\n };\r\n }\r\n\r\n toggleMenu = () => {\r\n this.setState({\r\n isMenuActive: !this.state.isMenuActive\r\n });\r\n };\r\n\r\n hideMenu = () => {\r\n this.setState({\r\n isMenuActive: false\r\n });\r\n };\r\n\r\n render() {\r\n const { isMenuActive } = this.state;\r\n\r\n return (\r\n\r\n {({\r\n isLoading, userInfo, error, refreshAuth\r\n }) => {\r\n if (isLoading) {\r\n return \r\n );\r\n }\r\n}\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { BrowserRouter } from 'react-router-dom';\r\nimport App from './App';\r\nimport { CookiesProvider } from 'react-cookie';\r\n//import registerServiceWorker from './registerServiceWorker';\r\nimport 'url-polyfill';\r\nimport objectFitImages from 'object-fit-images';\r\nobjectFitImages();\r\n\r\nReactDOM.render(\r\n;\r\n }\r\n if (error) {\r\n return {`Error: ${error.message}`};\r\n }\r\n return !userInfo ? (\r\n{/*\r\n ) : (\r\n*/} \r\n \r\n );\r\n }}\r\n\r\n \r\n\r\n\r\n \r\n \r\n \r\n\r\n {routes.advocates.map((route, idx) => (route.component ? (\r\n \r\n}\r\n />\r\n ) : null))}\r\n \r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n//registerServiceWorker();\r\n","export default class paths {\r\n static common = {\r\n signout: '/signout'\r\n };\r\n static advocates = {\r\n main: '/',\r\n forum: '/forum',\r\n forumNewTopic: '/forum/new-topic',\r\n forumCategories: '/forum/categories',\r\n forumTopic: '/forum/topic',\r\n news: '/news',\r\n practice: '/practice',\r\n practiceCase: '/practice/case',\r\n myprofile: '/myprofile',\r\n profile: '/profile',\r\n education: '/education',\r\n notFound: '/404',\r\n forbidden: '/403',\r\n gallery: '/gallery'\r\n };\r\n}\r\n","import React from 'react';\r\n\r\nconst defaultState = {\r\n isLoading: false,\r\n userInfo: null,\r\n error: null,\r\n refreshAuth: () => true\r\n};\r\n\r\nconst { Provider, Consumer } = React.createContext(defaultState);\r\n\r\nexport default { Provider, Consumer, defaultState };\r\n"],"sourceRoot":""}\r\n