1 |
- [{"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chats\\selector\\index.ts":"1","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\ChatsList\\index.tsx":"2","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\ContactsList\\index.tsx":"3","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chats\\operations\\index.ts":"4","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\index.tsx":"5","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chats\\action\\index.ts":"6","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chats\\reducer\\index.ts":"7","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\App.tsx":"8","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\contacts\\reducer\\index.ts":"9","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\contacts\\action\\index.ts":"10","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchBar\\index.tsx":"11","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\api-data\\index.ts":"12","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\messages\\action\\index.ts":"13","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\messages\\operations\\index.ts":"14","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\authorization\\selector\\index.ts":"15","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\messages\\reducer\\index.ts":"16","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\messages\\selector\\index.ts":"17","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\index.tsx":"18","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\SMSCode\\index.tsx":"19","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\AddContact\\index.tsx":"20","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chat\\action\\index.ts":"21","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chat\\operations\\index.ts":"22","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chat\\selector\\index.ts":"23","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\index.tsx":"24","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\Authorization\\index.tsx":"25","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chat\\reducer\\index.ts":"26","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\MenuBar\\index.tsx":"27","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\authorization\\reducer\\index.ts":"28","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\authorization\\operations\\index.ts":"29","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\helpers\\index.ts":"30","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\control\\reducer\\index.ts":"31","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\control\\action\\index.ts":"32","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\reusableComponents\\AlertInfo\\index.tsx":"33","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\rootReducer\\index.ts":"34","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\reusableComponents\\Routes\\PublicRoute\\index.tsx":"35","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\index.tsx":"36","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\index.tsx":"37","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\Registration\\index.tsx":"38","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\authorization\\action\\index.ts":"39","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\helpers\\countries.tsx":"40","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SmallMenuBar\\index.tsx":"41","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\ChatListRecent\\index.tsx":"42","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\reusableComponents\\Routes\\PrivateRoute\\index.tsx":"43","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\index.tsx":"44","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\control\\selector\\index.ts":"45","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\contacts\\operations\\index.ts":"46","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\QRCode\\index.tsx":"47","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\contacts\\selector\\index.ts":"48","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\Registration\\UploadAvatar\\index.tsx":"49","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\ChatsList\\ChatItem\\index.tsx":"50","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\ContactsList\\ContactItem\\index.tsx":"51","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\ChatListRecent\\RecentItem\\index.tsx":"52","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\ChatListRecent\\ChatItem\\index.tsx":"53","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\allMessages\\action\\index.ts":"54","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\store\\index.ts":"55","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\allMessages\\operations\\index.ts":"56","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\FilesList\\index.tsx":"57","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\AudioList\\index.tsx":"58","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\VideoList\\index.tsx":"59","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\TextList\\index.tsx":"60","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\MediaList\\index.tsx":"61","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\MediaList\\MediaListItem\\index.tsx":"62","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\ToolBar\\index.tsx":"63","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\SettingsPicture\\index.tsx":"64","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\SettingsMenu\\index.tsx":"65","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\index.tsx":"66","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\ToolBar\\MenuList\\index.tsx":"67","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\EditBar\\ToolBar\\index.tsx":"68","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\EditBar\\index.tsx":"69","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\EditBar\\EditList\\index.tsx":"70","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\EditBar\\SubmitBtn\\index.tsx":"71","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\ChatsList\\ChatItem\\DeleteModal\\index.tsx":"72","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\allMessages\\reducer\\index.ts":"73","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchBar\\StaticDatePicker\\index.tsx":"74","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\AddContact\\ToolBar\\index.tsx":"75","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\SettingsPicture\\DeleteModal\\index.tsx":"76","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\allMessages\\selector\\index.ts":"77","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\reusableComponents\\Load\\index.jsx":"78","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\EditBar\\EditList\\index.tsx":"79","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\MediaList\\MediaListItem\\index.tsx":"80","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\index.tsx":"81","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\AudioList\\index.tsx":"82","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\FilesList\\index.tsx":"83","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\MediaList\\index.tsx":"84","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\TextList\\index.tsx":"85","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\VideoList\\index.tsx":"86","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\index.tsx":"87","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileMenu\\index.tsx":"88","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfilePicture\\index.tsx":"89","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ToolBar\\index.tsx":"90","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\SearchList\\index.tsx":"91","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\EditBar\\index.tsx":"92","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\SearchList\\Search\\index.tsx":"93","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\EditBar\\Delete\\index.tsx":"94","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\EditBar\\ToolBar\\index.tsx":"95","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\Buttons\\MenuList\\index.tsx":"96","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\Buttons\\DeleteModal\\index.tsx":"97","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\index.tsx":"98","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\index.tsx":"99","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftAudio\\index.tsx":"100","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftImage\\index.tsx":"101","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\index.tsx":"102","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\index.tsx":"103","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightImage\\index.tsx":"104","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ArrowBack\\index.tsx":"105","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightFile\\index.tsx":"106","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\Credentials\\index.tsx":"107","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftText\\index.tsx":"108","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftVideo\\index.tsx":"109","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\EditBar\\SubmitBtn\\index.tsx":"110","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\SearchList\\Search\\StaticDatePicker\\index.tsx":"111","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftFile\\index.tsx":"112","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightText\\index.tsx":"113","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightVideo\\index.tsx":"114","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightAudio\\index.tsx":"115","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\Buttons\\index.tsx":"116","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\hooks\\index.tsx":"117","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\PinnedBar\\index.tsx":"118","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\pinnedMessages\\action\\index.ts":"119","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\pinnedMessages\\selector\\index.ts":"120","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\pinnedMessages\\operations\\index.ts":"121","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\UnpinBar\\index.tsx":"122","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightReply\\index.tsx":"123","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftReply\\index.tsx":"124","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\FilesMenu\\UploadFile\\index.tsx":"125","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\ForwardBar\\index.tsx":"126","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\pinnedMessages\\reducer\\index.ts":"127","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\FilesMenu\\index.tsx":"128","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftForward\\index.tsx":"129","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightForward\\index.tsx":"130","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\ReplyBar\\index.tsx":"131","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\EditBar\\index.tsx":"132","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ForwardSearchList\\index.tsx":"133","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ForwardSearchList\\ForwardSearch\\index.tsx":"134","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ForwardSearchList\\ForwardList\\ForwardItem\\index.tsx":"135","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ForwardSearchList\\ForwardList\\index.tsx":"136","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ForwardSearchList\\ForwardSearch\\StaticDatePicker\\index.tsx":"137","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftDeleted\\index.tsx":"138","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightDeleted\\index.tsx":"139","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CallBar\\index.tsx":"140"},{"size":518,"mtime":1649411911267,"results":"141","hashOfConfig":"142"},{"size":4678,"mtime":1661177474963,"results":"143","hashOfConfig":"142"},{"size":3856,"mtime":1658249759170,"results":"144","hashOfConfig":"142"},{"size":462,"mtime":1645632928658,"results":"145","hashOfConfig":"142"},{"size":692,"mtime":1661281172593,"results":"146","hashOfConfig":"142"},{"size":466,"mtime":1645631400287,"results":"147","hashOfConfig":"142"},{"size":697,"mtime":1652371613808,"results":"148","hashOfConfig":"142"},{"size":2923,"mtime":1652369164182,"results":"149","hashOfConfig":"142"},{"size":722,"mtime":1652371646440,"results":"150","hashOfConfig":"142"},{"size":433,"mtime":1645449627972,"results":"151","hashOfConfig":"142"},{"size":4252,"mtime":1661188305483,"results":"152","hashOfConfig":"142"},{"size":11696,"mtime":1662641708331,"results":"153","hashOfConfig":"142"},{"size":434,"mtime":1649943988367,"results":"154","hashOfConfig":"142"},{"size":708,"mtime":1657793389379,"results":"155","hashOfConfig":"142"},{"size":941,"mtime":1658748236761,"results":"156","hashOfConfig":"142"},{"size":726,"mtime":1652371695283,"results":"157","hashOfConfig":"142"},{"size":359,"mtime":1657792811461,"results":"158","hashOfConfig":"142"},{"size":953,"mtime":1652369196960,"results":"159","hashOfConfig":"142"},{"size":1888,"mtime":1646828344933,"results":"160","hashOfConfig":"142"},{"size":2506,"mtime":1658749224469,"results":"161","hashOfConfig":"142"},{"size":501,"mtime":1649336973843,"results":"162","hashOfConfig":"142"},{"size":641,"mtime":1652365724672,"results":"163","hashOfConfig":"142"},{"size":307,"mtime":1649685603738,"results":"164","hashOfConfig":"142"},{"size":2540,"mtime":1657030989007,"results":"165","hashOfConfig":"142"},{"size":3654,"mtime":1656398246097,"results":"166","hashOfConfig":"142"},{"size":1382,"mtime":1662641578605,"results":"167","hashOfConfig":"142"},{"size":6073,"mtime":1658748168120,"results":"168","hashOfConfig":"142"},{"size":1463,"mtime":1662056147660,"results":"169","hashOfConfig":"142"},{"size":1954,"mtime":1658244504637,"results":"170","hashOfConfig":"142"},{"size":5861,"mtime":1662743468017,"results":"171","hashOfConfig":"142"},{"size":1352,"mtime":1657883429482,"results":"172","hashOfConfig":"142"},{"size":665,"mtime":1657882078640,"results":"173","hashOfConfig":"142"},{"size":455,"mtime":1662735037137,"results":"174","hashOfConfig":"142"},{"size":1020,"mtime":1657792461105,"results":"175","hashOfConfig":"142"},{"size":571,"mtime":1647419600038,"results":"176","hashOfConfig":"142"},{"size":4106,"mtime":1661271399379,"results":"177","hashOfConfig":"142"},{"size":8514,"mtime":1661280228597,"results":"178","hashOfConfig":"142"},{"size":6475,"mtime":1658244520209,"results":"179","hashOfConfig":"142"},{"size":897,"mtime":1644438398066,"results":"180","hashOfConfig":"142"},{"size":15435,"mtime":1643905724114,"results":"181","hashOfConfig":"142"},{"size":3295,"mtime":1652446577467,"results":"182","hashOfConfig":"142"},{"size":2486,"mtime":1661278766156,"results":"183","hashOfConfig":"142"},{"size":494,"mtime":1651571907700,"results":"184","hashOfConfig":"142"},{"size":1876,"mtime":1662476622167,"results":"185","hashOfConfig":"142"},{"size":462,"mtime":1657882490010,"results":"186","hashOfConfig":"142"},{"size":652,"mtime":1647349279763,"results":"187","hashOfConfig":"142"},{"size":1880,"mtime":1644235197856,"results":"188","hashOfConfig":"142"},{"size":633,"mtime":1658249729549,"results":"189","hashOfConfig":"142"},{"size":2124,"mtime":1657029735112,"results":"190","hashOfConfig":"142"},{"size":10616,"mtime":1661341292382,"results":"191","hashOfConfig":"142"},{"size":7354,"mtime":1658252704954,"results":"192","hashOfConfig":"142"},{"size":1408,"mtime":1656395829546,"results":"193","hashOfConfig":"142"},{"size":2212,"mtime":1656395699411,"results":"194","hashOfConfig":"142"},{"size":461,"mtime":1649944029869,"results":"195","hashOfConfig":"142"},{"size":466,"mtime":1643966451100,"results":"196","hashOfConfig":"142"},{"size":537,"mtime":1652102689027,"results":"197","hashOfConfig":"142"},{"size":3343,"mtime":1661339908393,"results":"198","hashOfConfig":"142"},{"size":3326,"mtime":1661339901134,"results":"199","hashOfConfig":"142"},{"size":3357,"mtime":1661339928891,"results":"200","hashOfConfig":"142"},{"size":3374,"mtime":1661339920487,"results":"201","hashOfConfig":"142"},{"size":2294,"mtime":1661278777148,"results":"202","hashOfConfig":"142"},{"size":5873,"mtime":1658404854879,"results":"203","hashOfConfig":"142"},{"size":1579,"mtime":1652443297669,"results":"204","hashOfConfig":"142"},{"size":5079,"mtime":1661429613862,"results":"205","hashOfConfig":"142"},{"size":1311,"mtime":1661429728419,"results":"206","hashOfConfig":"142"},{"size":954,"mtime":1652443274542,"results":"207","hashOfConfig":"142"},{"size":2443,"mtime":1650299631159,"results":"208","hashOfConfig":"142"},{"size":1235,"mtime":1652443337447,"results":"209","hashOfConfig":"142"},{"size":2819,"mtime":1656929047765,"results":"210","hashOfConfig":"142"},{"size":5795,"mtime":1658767055137,"results":"211","hashOfConfig":"142"},{"size":813,"mtime":1650444766823,"results":"212","hashOfConfig":"142"},{"size":2868,"mtime":1656395597832,"results":"213","hashOfConfig":"142"},{"size":759,"mtime":1652371392659,"results":"214","hashOfConfig":"142"},{"size":812,"mtime":1661180706484,"results":"215","hashOfConfig":"142"},{"size":830,"mtime":1650980687088,"results":"216","hashOfConfig":"142"},{"size":1955,"mtime":1651742925364,"results":"217","hashOfConfig":"142"},{"size":380,"mtime":1649944473320,"results":"218","hashOfConfig":"142"},{"size":362,"mtime":1652369161551,"results":"219","hashOfConfig":"142"},{"size":3682,"mtime":1656397673073,"results":"220","hashOfConfig":"142"},{"size":5855,"mtime":1658404872144,"results":"221","hashOfConfig":"142"},{"size":2185,"mtime":1657882989079,"results":"222","hashOfConfig":"142"},{"size":2511,"mtime":1661339854187,"results":"223","hashOfConfig":"142"},{"size":2509,"mtime":1661339860908,"results":"224","hashOfConfig":"142"},{"size":1510,"mtime":1661272653784,"results":"225","hashOfConfig":"142"},{"size":2520,"mtime":1661339869812,"results":"226","hashOfConfig":"142"},{"size":2525,"mtime":1661339874785,"results":"227","hashOfConfig":"142"},{"size":4947,"mtime":1661280273065,"results":"228","hashOfConfig":"142"},{"size":3267,"mtime":1661429762039,"results":"229","hashOfConfig":"142"},{"size":3123,"mtime":1661429485921,"results":"230","hashOfConfig":"142"},{"size":2221,"mtime":1652436713225,"results":"231","hashOfConfig":"142"},{"size":6712,"mtime":1661339842495,"results":"232","hashOfConfig":"142"},{"size":2069,"mtime":1652436847493,"results":"233","hashOfConfig":"142"},{"size":3516,"mtime":1652436868964,"results":"234","hashOfConfig":"142"},{"size":3332,"mtime":1656396276296,"results":"235","hashOfConfig":"142"},{"size":1214,"mtime":1652436935401,"results":"236","hashOfConfig":"142"},{"size":3361,"mtime":1661438743906,"results":"237","hashOfConfig":"142"},{"size":2830,"mtime":1661438638764,"results":"238","hashOfConfig":"142"},{"size":2451,"mtime":1662120818228,"results":"239","hashOfConfig":"142"},{"size":27205,"mtime":1662387333533,"results":"240","hashOfConfig":"142"},{"size":11940,"mtime":1661172961494,"results":"241","hashOfConfig":"142"},{"size":16745,"mtime":1661173021462,"results":"242","hashOfConfig":"142"},{"size":33582,"mtime":1661523817291,"results":"243","hashOfConfig":"142"},{"size":6080,"mtime":1662122269626,"results":"244","hashOfConfig":"142"},{"size":16933,"mtime":1661173087610,"results":"245","hashOfConfig":"142"},{"size":1876,"mtime":1658226838332,"results":"246","hashOfConfig":"142"},{"size":15126,"mtime":1661278980972,"results":"247","hashOfConfig":"142"},{"size":1378,"mtime":1660213539310,"results":"248","hashOfConfig":"142"},{"size":11870,"mtime":1661173043169,"results":"249","hashOfConfig":"142"},{"size":12234,"mtime":1661173050665,"results":"250","hashOfConfig":"142"},{"size":808,"mtime":1650444743578,"results":"251","hashOfConfig":"142"},{"size":858,"mtime":1650979204109,"results":"252","hashOfConfig":"142"},{"size":14898,"mtime":1661278968982,"results":"253","hashOfConfig":"142"},{"size":12263,"mtime":1661173104789,"results":"254","hashOfConfig":"142"},{"size":12405,"mtime":1661266758382,"results":"255","hashOfConfig":"142"},{"size":12292,"mtime":1661173055715,"results":"256","hashOfConfig":"142"},{"size":1652,"mtime":1662122313679,"results":"257","hashOfConfig":"142"},{"size":275,"mtime":1657091177091,"results":"258","hashOfConfig":"142"},{"size":6644,"mtime":1661339351466,"results":"259","hashOfConfig":"142"},{"size":473,"mtime":1657791804399,"results":"260","hashOfConfig":"142"},{"size":402,"mtime":1657792819921,"results":"261","hashOfConfig":"142"},{"size":674,"mtime":1657793447736,"results":"262","hashOfConfig":"142"},{"size":944,"mtime":1657805815723,"results":"263","hashOfConfig":"142"},{"size":14939,"mtime":1661433818139,"results":"264","hashOfConfig":"142"},{"size":14847,"mtime":1661433796230,"results":"265","hashOfConfig":"142"},{"size":1316,"mtime":1657092453114,"results":"266","hashOfConfig":"142"},{"size":4238,"mtime":1661339732728,"results":"267","hashOfConfig":"142"},{"size":784,"mtime":1657792396800,"results":"268","hashOfConfig":"142"},{"size":2106,"mtime":1659531728137,"results":"269","hashOfConfig":"142"},{"size":14721,"mtime":1661519647272,"results":"270","hashOfConfig":"142"},{"size":15114,"mtime":1661519652063,"results":"271","hashOfConfig":"142"},{"size":3413,"mtime":1661339675297,"results":"272","hashOfConfig":"142"},{"size":2291,"mtime":1660926487419,"results":"273","hashOfConfig":"142"},{"size":3528,"mtime":1661281835650,"results":"274","hashOfConfig":"142"},{"size":3646,"mtime":1661281746670,"results":"275","hashOfConfig":"142"},{"size":2560,"mtime":1661281689034,"results":"276","hashOfConfig":"142"},{"size":1859,"mtime":1661281683866,"results":"277","hashOfConfig":"142"},{"size":812,"mtime":1651832055021,"results":"278","hashOfConfig":"142"},{"size":13470,"mtime":1661523278797,"results":"279","hashOfConfig":"142"},{"size":13808,"mtime":1661523271961,"results":"280","hashOfConfig":"142"},{"size":18083,"mtime":1663077986493,"results":"281","hashOfConfig":"142"},{"filePath":"282","messages":"283","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"284"},"1qtp245",{"filePath":"285","messages":"286","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"287"},{"filePath":"288","messages":"289","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"290"},{"filePath":"291","messages":"292","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"293"},{"filePath":"294","messages":"295","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"296"},{"filePath":"297","messages":"298","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"299","usedDeprecatedRules":"300"},{"filePath":"301","messages":"302","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"303"},{"filePath":"304","messages":"305","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"306"},{"filePath":"307","messages":"308","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"303"},{"filePath":"309","messages":"310","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"300"},{"filePath":"311","messages":"312","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"313","messages":"314","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"315","messages":"316","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"317"},{"filePath":"318","messages":"319","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"320"},{"filePath":"321","messages":"322","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"323"},{"filePath":"324","messages":"325","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"326"},{"filePath":"327","messages":"328","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"329"},{"filePath":"330","messages":"331","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"303"},{"filePath":"332","messages":"333","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"334"},{"filePath":"335","messages":"336","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"337","messages":"338","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"326"},{"filePath":"339","messages":"340","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"341"},{"filePath":"342","messages":"343","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"344"},{"filePath":"345","messages":"346","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"347"},{"filePath":"348","messages":"349","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"334"},{"filePath":"350","messages":"351","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"303"},{"filePath":"352","messages":"353","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"300"},{"filePath":"354","messages":"355","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"303"},{"filePath":"356","messages":"357","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"358"},{"filePath":"359","messages":"360","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"361","usedDeprecatedRules":"303"},{"filePath":"362","messages":"363","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"303"},{"filePath":"364","messages":"365","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"300"},{"filePath":"366","messages":"367","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"368","messages":"369","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"303"},{"filePath":"370","messages":"371","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"303"},{"filePath":"372","messages":"373","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"374"},{"filePath":"375","messages":"376","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"377"},{"filePath":"378","messages":"379","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"334"},{"filePath":"380","messages":"381","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"303"},{"filePath":"382","messages":"383","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"300"},{"filePath":"384","messages":"385","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"386"},{"filePath":"387","messages":"388","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"377"},{"filePath":"389","messages":"390","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"391"},{"filePath":"392","messages":"393","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"377"},{"filePath":"394","messages":"395","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"334"},{"filePath":"396","messages":"397","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"398"},{"filePath":"399","messages":"400","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"334"},{"filePath":"401","messages":"402","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"403"},{"filePath":"404","messages":"405","errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":"406","usedDeprecatedRules":"407"},{"filePath":"408","messages":"409","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"377"},{"filePath":"410","messages":"411","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"344"},{"filePath":"412","messages":"413","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"377"},{"filePath":"414","messages":"415","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"416"},{"filePath":"417","messages":"418","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"306"},{"filePath":"419","messages":"420","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"341"},{"filePath":"421","messages":"422","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"423"},{"filePath":"424","messages":"425","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"341"},{"filePath":"426","messages":"427","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"423"},{"filePath":"428","messages":"429","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"407"},{"filePath":"430","messages":"431","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"284"},{"filePath":"432","messages":"433","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"374"},{"filePath":"434","messages":"435","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"284"},{"filePath":"436","messages":"437","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"423"},{"filePath":"438","messages":"439","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"440"},{"filePath":"441","messages":"442","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"377"},{"filePath":"443","messages":"444","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"374"},{"filePath":"445","messages":"446","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"320"},{"filePath":"447","messages":"448","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"449"},{"filePath":"450","messages":"451","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"452"},{"filePath":"453","messages":"454","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"320"},{"filePath":"455","messages":"456","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"457"},{"filePath":"458","messages":"459","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"320"},{"filePath":"460","messages":"461","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"326"},{"filePath":"462","messages":"463","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"341"},{"filePath":"464","messages":"465","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"466"},{"filePath":"467","messages":"468","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"374"},{"filePath":"469","messages":"470","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"471"},{"filePath":"472","messages":"473","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"474"},{"filePath":"475","messages":"476","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"407"},{"filePath":"477","messages":"478","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"471"},{"filePath":"479","messages":"480","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"416"},{"filePath":"481","messages":"482","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"284"},{"filePath":"483","messages":"484","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"457"},{"filePath":"485","messages":"486","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"344"},{"filePath":"487","messages":"488","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"466"},{"filePath":"489","messages":"490","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"423"},{"filePath":"491","messages":"492","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"449"},{"filePath":"493","messages":"494","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"495"},{"filePath":"496","messages":"497","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"284"},{"filePath":"498","messages":"499","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"500"},{"filePath":"501","messages":"502","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"423"},{"filePath":"503","messages":"504","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"500"},{"filePath":"505","messages":"506","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"423"},{"filePath":"507","messages":"508","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"377"},{"filePath":"509","messages":"510","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"511"},{"filePath":"512","messages":"513","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"511"},{"filePath":"514","messages":"515","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"516"},{"filePath":"517","messages":"518","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"519","messages":"520","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"521","usedDeprecatedRules":"457"},{"filePath":"522","messages":"523","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"524","messages":"525","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"423"},{"filePath":"526","messages":"527","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"528","usedDeprecatedRules":"284"},{"filePath":"529","messages":"530","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"531","messages":"532","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"516"},{"filePath":"533","messages":"534","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"511"},{"filePath":"535","messages":"536","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"423"},{"filePath":"537","messages":"538","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"539"},{"filePath":"540","messages":"541","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"329"},{"filePath":"542","messages":"543","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"457"},{"filePath":"544","messages":"545","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"466"},{"filePath":"546","messages":"547","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"329"},{"filePath":"548","messages":"549","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"440"},{"filePath":"550","messages":"551","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"407"},{"filePath":"552","messages":"553","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"554"},{"filePath":"555","messages":"556","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"320"},{"filePath":"557","messages":"558","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"559","messages":"560","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"449"},{"filePath":"561","messages":"562","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"554"},{"filePath":"563","messages":"564","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"300"},{"filePath":"565","messages":"566","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"284"},{"filePath":"567","messages":"568","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"377"},{"filePath":"569","messages":"570","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"571"},{"filePath":"572","messages":"573","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"466"},{"filePath":"574","messages":"575","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"516"},{"filePath":"576","messages":"577","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"578","messages":"579","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"457"},{"filePath":"580","messages":"581","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"326"},{"filePath":"582","messages":"583","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"554"},{"filePath":"584","messages":"585","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"440"},{"filePath":"586","messages":"587","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"471"},{"filePath":"588","messages":"589","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"516"},{"filePath":"590","messages":"591","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"407"},{"filePath":"592","messages":"593","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"344"},{"filePath":"594","messages":"595","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"344"},{"filePath":"596","messages":"597","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"598","messages":"599","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"440"},{"filePath":"600","messages":"601","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"344"},{"filePath":"602","messages":"603","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"377"},{"filePath":"604","messages":"605","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"511"},{"filePath":"606","messages":"607","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chats\\selector\\index.ts",[],["608","609"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\ChatsList\\index.tsx",[],["610","611"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\ContactsList\\index.tsx",[],["612","613"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chats\\operations\\index.ts",[],["614","615"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\index.tsx",[],["616","617"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chats\\action\\index.ts",["618"],"import { createAction } from '@reduxjs/toolkit';\r\nimport { IChatsRes } from '../../../typescript/redux/chats/interfaces'\r\nimport { TChat } from '../../../typescript/redux/chats/types'\r\n\r\nconst actionGetChatsSuccess = createAction('getChats/success', (value:IChatsRes) => ({\r\n payload: value,\r\n}));\r\n\r\nconst actionGetChatsReject = createAction('getChats/reject', () => ({\r\n payload: null,\r\n}));\r\n\r\n\r\nexport {\r\n actionGetChatsSuccess,\r\n actionGetChatsReject,\r\n};\r\n",["619","620"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chats\\reducer\\index.ts",[],["621","622"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\App.tsx",[],["623","624"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\contacts\\reducer\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\contacts\\action\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\api-data\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\messages\\action\\index.ts",[],["625","626"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\messages\\operations\\index.ts",[],["627","628"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\authorization\\selector\\index.ts",[],["629","630"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\messages\\reducer\\index.ts",[],["631","632"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\messages\\selector\\index.ts",[],["633","634"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\SMSCode\\index.tsx",[],["635","636"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\AddContact\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chat\\action\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chat\\operations\\index.ts",[],["637","638"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chat\\selector\\index.ts",[],["639","640"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\index.tsx",[],["641","642"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\Authorization\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\chat\\reducer\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\MenuBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\authorization\\reducer\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\authorization\\operations\\index.ts",[],["643","644"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\helpers\\index.ts",["645"],"import { toast } from 'react-toastify';\r\nimport FileSaver from 'file-saver';\r\nimport { TChats } from '../typescript/redux/chats/types';\r\nimport { TAllMessages } from '../typescript/redux/allMessages/types';\r\n\r\nconst format = (a: string) => a.split(' ').join('').trim()\r\n\r\nconst firstLetter = (word: string) => word.slice(0, 1).toUpperCase()\r\n\r\nconst slicedWord = (word: string, max: number, from: number = 0) =>\r\n word.length < max ? word.slice(from) : word.slice(from, max)\r\n \r\nconst timeStamp = (updatedAt: string) => new Date(updatedAt).toLocaleString(\"en-US\", {\r\n year:'numeric',\r\n month: 'short',\r\n day: 'numeric',\r\n hour: 'numeric',\r\n minute: '2-digit',\r\n})\r\n\r\nconst timeStampEU = (updatedAt: string) => new Date(updatedAt).toLocaleString('en-GB', {\r\n year:'numeric',\r\n month: 'short',\r\n day: 'numeric',\r\n hour: 'numeric',\r\n minute: '2-digit',\r\n})\r\n\r\nconst timeStampEUFilter = (updatedAt: string) => new Date(updatedAt).toLocaleString('en-GB', {\r\n year:'numeric',\r\n month: 'short',\r\n day: 'numeric',\r\n hour: 'numeric',\r\n minute: '2-digit',\r\n second: '2-digit',\r\n})\r\n\r\nconst timeStampMessage = (updatedAt: string) => new Date(updatedAt).toLocaleString('en-GB',{\r\n hour: 'numeric',\r\n minute: '2-digit',\r\n})\r\n\r\n\r\nconst timeStampFilter = (updatedAt: string) => new Date(updatedAt).toLocaleString(\"en-US\", {\r\n year:'numeric',\r\n month: 'short',\r\n day: 'numeric',\r\n})\r\n\r\nconst getTimeBySeconds = (seconds: number) =>\r\n Math.floor(seconds / 60) + ':' + ('0' + Math.floor(seconds % 60)).slice(-2)\r\n\r\n\r\nconst playNotification = (url:string) => {\r\n const audio = new Audio(url);\r\n audio.play()\r\n return audio;\r\n}\r\n\r\nconst notification = (name: string, onClick: () => void) => {\r\n toast(`🦄new message from ${name}`, {\r\n position: \"bottom-right\",\r\n autoClose: 5000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n progress: undefined,\r\n onClick\r\n });\r\n}\r\n\r\nconst copied = (text:string) => {\r\n toast(`${text} Copied`, {\r\n position: \"bottom-right\",\r\n autoClose: 2000,\r\n hideProgressBar: false,\r\n closeOnClick: true,\r\n pauseOnHover: true,\r\n draggable: true,\r\n progress: undefined,\r\n });\r\n}\r\n\r\nconst playNotificationWithoutPermission = (url: string) => {\r\n const w:any = window\r\n const audioContext: any = new (w.AudioContext || w.webkitAudioContext)();\r\n navigator.mediaDevices\r\n .getUserMedia({ audio: true })\r\n .then(() => {\r\n const source = audioContext.createBufferSource();\r\n source.addEventListener('ended', () => {\r\n source.stop();\r\n audioContext.close();\r\n });\r\n const request = new XMLHttpRequest();\r\n request.open('GET', url, true);\r\n request.responseType = 'arraybuffer';\r\n request.onload = () => {\r\n audioContext.decodeAudioData(\r\n request.response,\r\n (buffer:any) => {\r\n source.buffer = buffer;\r\n source.connect(audioContext.destination);\r\n source.start();\r\n },\r\n (e:any) => {\r\n console.log('Error with decoding audio data' + e.message);\r\n });\r\n }\r\n request.send();\r\n })\r\n .catch(reason => console.error(`Audio permissions denied: ${reason}`));\r\n return audioContext\r\n}\r\n\r\nconst handleDownload = async (url: string, type: string) => await FileSaver.saveAs(url, type);\r\n\r\nconst handleSort = (sortBy: string, data: any,sort:boolean): any => {\r\n return [...data].sort(function (a: any, b: any) {\r\n if (sort?a[sortBy] > b[sortBy]:a[sortBy] < b[sortBy]) {\r\n return -1;\r\n } else if (sort?a[sortBy] < b[sortBy]:a[sortBy] > b[sortBy]) {\r\n return 1;\r\n }\r\n return 0;\r\n });\r\n}\r\n\r\nconst sortByRecent = (chats:TChats,sort:boolean) => [...chats].sort((a, b) => {\r\n const aCreatedAt = a.lastMessageCreatedAt ? a.lastMessageCreatedAt : a.createdAt\r\n const bCreatedAt = b.lastMessageCreatedAt ? b.lastMessageCreatedAt : b.createdAt\r\n const aTime = timeStampEUFilter(aCreatedAt)\r\n const bTime = timeStampEUFilter(bCreatedAt)\r\n const direction = sort ? aTime < bTime: aTime > bTime\r\n return direction ? 1 : -1\r\n})\r\n\r\nconst filteredMessages = (arr: TAllMessages,date:any,value:string) => arr.filter((el) => {\r\n if (!date) {\r\n if (!el.fullType && el.message.toLowerCase().includes(value.toLowerCase())) {\r\n return el\r\n }\r\n if (el.fullType && el.fullType.toLowerCase().includes(value.toLowerCase())) {\r\n return el\r\n }\r\n } else {\r\n if (!el.fullType && el.message.toLowerCase().includes(value.toLowerCase())\r\n && timeStampFilter(date) === timeStampFilter(el.createdAt)) {\r\n return el\r\n }\r\n if (el.fullType && el.fullType.toLowerCase().includes(value.toLowerCase())\r\n && timeStampFilter(date) === timeStampFilter(el.createdAt)) {\r\n return el\r\n }\r\n }\r\n})\r\n\r\nconst filterBy = ['pdf/docx', 'image', 'text', 'audio', 'video']\r\n\r\nconst emojisArr = ['💘','😀','😍','😲','😡'] \r\n\r\nlet prodBaseURL = 'https://w-telegram.herokuapp.com'\r\nlet prodSocketURL = 'https://w-telegram-socket.herokuapp.com'\r\nprodSocketURL = 'http://localhost:3001'\r\nprodBaseURL = 'http://localhost:3000'\r\n\r\nconst prodAwsS3 = 'https://my-telegram-bucket.s3.eu-west-1.amazonaws.com'\r\n\r\nconst refreshAppTime = 3000\r\n\r\nexport {\r\n format,\r\n firstLetter,\r\n slicedWord,\r\n timeStamp,\r\n timeStampEU,\r\n timeStampEUFilter,\r\n timeStampMessage,\r\n timeStampFilter,\r\n playNotification,\r\n getTimeBySeconds,\r\n notification,\r\n copied,\r\n playNotificationWithoutPermission,\r\n handleDownload,\r\n handleSort,\r\n sortByRecent,\r\n filteredMessages,\r\n filterBy,\r\n emojisArr,\r\n prodSocketURL,\r\n prodBaseURL,\r\n prodAwsS3,\r\n refreshAppTime,\r\n}","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\control\\reducer\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\control\\action\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\reusableComponents\\AlertInfo\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\rootReducer\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\reusableComponents\\Routes\\PublicRoute\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\index.tsx",[],["646","647"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\index.tsx",[],["648","649"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\Registration\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\authorization\\action\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\helpers\\countries.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SmallMenuBar\\index.tsx",[],["650","651"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\ChatListRecent\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\reusableComponents\\Routes\\PrivateRoute\\index.tsx",[],["652","653"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\control\\selector\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\contacts\\operations\\index.ts",[],["654","655"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\QRCode\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\contacts\\selector\\index.ts",[],["656","657"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\AuthPage\\Registration\\UploadAvatar\\index.tsx",["658","659","660","661"],"import { makeStyles, Typography,InputLabel,ListItem,ListItemText ,ListItemIcon } from '@material-ui/core'\r\nimport FolderIcon from '@mui/icons-material/Folder';\r\nimport AddAPhotoIcon from '@mui/icons-material/AddAPhoto';\r\nimport { useDropzone } from 'react-dropzone';\r\nimport { useEffect } from 'react';\r\n\r\nconst useStyles = makeStyles({\r\n container: {\r\n width: '100%',\r\n },\r\n dropZone: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n alignContent: 'center',\r\n justifyContent: 'center',\r\n width: '100%',\r\n padding: '10px',\r\n borderRadius: 10,\r\n cursor: 'pointer',\r\n marginBottom: 20,\r\n outline: '2px solid #959696',\r\n '&:hover': {\r\n outline: 'dashed rgb(41, 139, 231)',\r\n },\r\n },\r\n dropZoneActive: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n alignContent: 'center',\r\n justifyContent: 'center',\r\n width: '100%',\r\n padding: '10px',\r\n borderRadius: 10,\r\n cursor: 'pointer',\r\n marginBottom: 20,\r\n outline: '2px dashed rgb(41, 139, 231)',\r\n }, \r\n})\r\n\r\ninterface IUploadAvatar {\r\n setUpload: React.Dispatch<React.SetStateAction<any>>,\r\n upload: any,\r\n setSelfie: React.Dispatch<React.SetStateAction<any>>,\r\n}\r\nconst UploadAvatar = ({ setUpload,upload,setSelfie }: IUploadAvatar) => {\r\n \r\nconst {\r\n acceptedFiles,\r\n getRootProps,\r\n getInputProps\r\n } = useDropzone({\r\n accept: 'image/*',\r\n });\r\n\r\n useEffect(() => {\r\n setUpload(acceptedFiles[0])\r\n setSelfie(null)\r\n }, [setUpload,setSelfie,acceptedFiles])\r\n\r\n const classes = useStyles()\r\n\r\n return (\r\n <section className={classes.container} >\r\n <div {...getRootProps({ className: upload? classes.dropZoneActive:classes.dropZone})}>\r\n <InputLabel>Drag or drop avatar</InputLabel>\r\n <input {...getInputProps()}/>\r\n <AddAPhotoIcon fontSize='large'\r\n sx={{color: upload ? 'rgb(62, 149, 231)' : '#6b6b6b',margin:'15px 0px'}} />\r\n <Typography variant=\"h6\" color=\"initial\">image/*</Typography>\r\n </div>\r\n </section>\r\n );\r\n}\r\n\r\nexport default UploadAvatar",["662","663"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\ChatsList\\ChatItem\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\ContactsList\\ContactItem\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\ChatListRecent\\RecentItem\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\ChatListRecent\\ChatItem\\index.tsx",[],["664","665"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\allMessages\\action\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\store\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\allMessages\\operations\\index.ts",[],["666","667"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\FilesList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\AudioList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\VideoList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\TextList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\MediaList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchLists\\MediaList\\MediaListItem\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\ToolBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\SettingsPicture\\index.tsx",[],["668","669"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\SettingsMenu\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\ToolBar\\MenuList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\EditBar\\ToolBar\\index.tsx",[],["670","671"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\EditBar\\index.tsx",[],["672","673"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\EditBar\\EditList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\EditBar\\SubmitBtn\\index.tsx",[],["674","675"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\ChatsList\\ChatItem\\DeleteModal\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\allMessages\\reducer\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SearchBar\\StaticDatePicker\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\AddContact\\ToolBar\\index.tsx",[],["676","677"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\LeftBar\\SettingsBar\\SettingsPicture\\DeleteModal\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\allMessages\\selector\\index.ts",[],["678","679"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\reusableComponents\\Load\\index.jsx",[],["680","681"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\EditBar\\EditList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\MediaList\\MediaListItem\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\AudioList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\FilesList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\MediaList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\TextList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\VideoList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileLists\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfileMenu\\index.tsx",[],["682","683"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ProfilePicture\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\CredentialsList\\ToolBar\\index.tsx",[],["684","685"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\SearchList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\EditBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\SearchList\\Search\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\EditBar\\Delete\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\EditBar\\ToolBar\\index.tsx",[],["686","687"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\Buttons\\MenuList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\Buttons\\DeleteModal\\index.tsx",[],["688","689"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\index.tsx",["690","691"],"import { makeStyles } from \"@material-ui/core/styles\";\r\nimport SendIcon from '@mui/icons-material/Send';\r\nimport MicNoneIcon from '@mui/icons-material/MicNone';\r\nimport VideocamIcon from '@mui/icons-material/Videocam';\r\nimport PauseIcon from '@mui/icons-material/Pause';\r\nimport AttachFileIcon from '@mui/icons-material/AttachFile';\r\nimport SentimentSatisfiedAltIcon from '@mui/icons-material/SentimentSatisfiedAlt';\r\nimport CloseIcon from '@mui/icons-material/Close';\r\nimport PhotoCameraFrontIcon from '@mui/icons-material/PhotoCameraFront';\r\nimport CommentIcon from '@mui/icons-material/Comment';\r\nimport Avatar from '@mui/material/Avatar';\r\nimport Webcam from \"react-webcam\";\r\nimport CameraIcon from '@mui/icons-material/Camera';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport Picker from 'emoji-picker-react';\r\nimport InputAdornment from '@mui/material/InputAdornment';\r\n\r\nimport { useReactMediaRecorder } from \"react-media-recorder\";\r\nimport { useState,useEffect,useCallback } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nimport FilesMenu from \"./FilesMenu\";\r\nimport ReplyBar from './ReplyBar'\r\nimport ForwardBar from \"./ForwardBar\";\r\nimport EditBar from \"./EditBar\";\r\nimport {\r\n sentMessageById, sentImgMessageById, sentAudioMessageById,\r\n sentVideoMessageById, sentFileMessageById, sentMessageEditById,\r\n sentMessageReplyById, sentMessageForwardById\r\n} from '../../../../../api-data'\r\nimport { getChat } from '../../../../../redux/chat/selector'\r\nimport { getRightIsOpen } from '../../../../../redux/control/selector'\r\nimport { playNotification,prodBaseURL } from \"../../../../../helpers\";\r\nimport { typingChat } from \"../../../../../api-data\";\r\nimport { TMessage } from \"../../../../../typescript/redux/messages/types\";\r\n\r\n\r\nconst useStyles = makeStyles({ \r\n container: {\r\n width: '35vw',\r\n height:'6vh',\r\n position: 'fixed',\r\n bottom: '2vh',\r\n borderRadius: 8,\r\n padding: 10,\r\n display: 'flex',\r\n flexWrap: 'nowrap',\r\n alignContent: 'start',\r\n alignItems: 'start',\r\n color: '#6b6b6b',\r\n border:'solid 2px #ffffff',\r\n backgroundColor: '#ffffff', \r\n },\r\n containerActive: {\r\n width: '35vw',\r\n height:'6vh',\r\n position: 'fixed',\r\n bottom: '2vh',\r\n borderRadius: 8,\r\n padding: 10,\r\n display: 'flex',\r\n flexWrap: 'nowrap',\r\n alignContent: 'start',\r\n alignItems: 'start',\r\n border:'solid 2px rgb(41, 139, 231)',\r\n backgroundColor: '#ffffff', \r\n }, \r\n textarea: {\r\n width: '100%',\r\n height: '100%',\r\n outline: 'none',\r\n border:'none',\r\n padding: '0px 10px',\r\n marginLeft: 8,\r\n marginRight: 8,\r\n overflowY:'auto',\r\n resize: 'none',\r\n '&::placeholder': {\r\n color: 'inherit',\r\n fontWeight: 600,\r\n fontSize:20\r\n },\r\n },\r\n attachIcon: {\r\n transform:'rotate(30deg)', \r\n },\r\n borderTop: {\r\n position: 'absolute',\r\n left: 0,\r\n top: -21,\r\n width: '100%',\r\n height: 1,\r\n background:'#ffffff',\r\n },\r\n filesMenu: {\r\n background: '#fdfdfd',\r\n position: 'absolute',\r\n width: '15vw',\r\n maxWidth: '100%',\r\n left: '61%',\r\n bottom:'9vh',\r\n zIndex: 10,\r\n visibility: 'visible',\r\n borderRadius: 10,\r\n padding: '4px 6px',\r\n },\r\n emoji: {\r\n position: 'absolute',\r\n zIndex: 10,\r\n visibility: 'visible',\r\n },\r\n captionTextField: {\r\n zIndex: 10,\r\n visibility: 'visible', \r\n width: '35vw',\r\n backgroundColor: '#ffffff',\r\n borderRadius: 4,\r\n height: '6vh',\r\n overflowY: 'auto',\r\n },\r\n iconCancel: {\r\n position: 'absolute',\r\n left: -72,\r\n bottom:-1,\r\n display:'flex',\r\n backgroundColor: '#ffffff',\r\n color: 'rgb(243, 69, 69)',\r\n border:'solid 4px rgb(243, 69, 69)',\r\n borderRadius: '50%',\r\n '&:hover': {\r\n backgroundColor: 'rgb(243, 69, 69)',\r\n color: '#ffffff',\r\n }\r\n }, \r\n avatarCamera: {\r\n position: 'absolute',\r\n left: -72,\r\n bottom:-1,\r\n display: 'flex',\r\n borderRadius: '50%',\r\n zIndex: 10,\r\n border: 'solid 14px #ffffff',\r\n '&:hover': {\r\n backgroundColor: 'rgb(41, 139, 231)',\r\n border:'solid 14px rgb(41, 139, 231)',\r\n color: '#ffffff',\r\n }\r\n },\r\n avatarRight: {\r\n position: 'absolute',\r\n right: -72,\r\n bottom:-1,\r\n display: 'flex',\r\n borderRadius: '50%',\r\n zIndex: 10,\r\n border: 'solid 14px #ffffff',\r\n '&:hover': {\r\n backgroundColor: 'rgb(41, 139, 231)',\r\n border:'solid 14px rgb(41, 139, 231)',\r\n color: '#ffffff'\r\n }\r\n },\r\n pauseLeft: {\r\n position: 'absolute',\r\n left: -72,\r\n bottom:-1,\r\n zIndex: 10, \r\n },\r\n pauseRight: {\r\n position: 'absolute',\r\n right: -72,\r\n bottom:-1,\r\n zIndex: 10, \r\n }, \r\n avatarPause: {\r\n backgroundColor: '#ffffff',\r\n cursor: 'pointer',\r\n animation: `$shake 1s`,\r\n animationIterationCount:'infinite',\r\n '&:hover': {\r\n backgroundColor: 'rgb(41, 139, 231)',\r\n color: '#ffffff',\r\n }\r\n },\r\n overlay: {\r\n position: 'fixed',\r\n top: 0,\r\n left: 0,\r\n width: '100vw',\r\n height: '100vh',\r\n zIndex:100\r\n },\r\n ringContainerLeft: {\r\n position: 'absolute',\r\n left: -25,\r\n top: -25,\r\n zIndex: 10,\r\n }, \r\n ringContainerRight: {\r\n position: 'absolute',\r\n right: -25,\r\n top: -25,\r\n zIndex: 10,\r\n },\r\n circle: {\r\n width: 15,\r\n height: 15,\r\n backgroundColor: 'rgb(255, 4, 4)',\r\n borderRadius: '50%',\r\n position: 'relative'\r\n },\r\n ringRing: {\r\n border: '3px solid rgb(255, 4, 4)',\r\n borderRadius: '50%',\r\n height: 25,\r\n width: 25,\r\n position: 'absolute',\r\n right: -5,\r\n top: -5,\r\n animation: `$pulsate 1s ease-out`,\r\n animationIterationCount: 'infinite',\r\n opacity: 0\r\n },\r\n '@keyframes pulsate': {\r\n '0%': {transform: 'scale(0.1, 0.1)', opacity: 0},\r\n '50%': { opacity: 1},\r\n '100%': {transform: 'scale(1.2, 1.2)', opacity: 0},\r\n },\r\n '@keyframes shake': {\r\n '0%': { transform: 'translate(0.5px, 0.5px) rotate(0deg)'},\r\n '10%': { transform: 'translate(-0.5px, -1px) rotate(-1deg)'},\r\n '20%': { transform: 'translate(-1.5px, 0px) rotate(1deg)'},\r\n '30%': { transform: 'translate(1.5px, 1px) rotate(0deg)'},\r\n '40%': { transform: 'translate(0.5px, -0.5px) rotate(1deg)'},\r\n '50%': { transform: 'translate(-0.5px, 1px) rotate(-1deg)'},\r\n '60%': { transform: 'translate(-1.5px, 0.5px) rotate(0deg)'},\r\n '70%': { transform: 'translate(1.5px, 0.5px) rotate(-1deg)'},\r\n '80%': { transform: 'translate(-0.5px, -0.5px) rotate(1deg)'},\r\n '90%': { transform: 'translate(0.5px, 1px) rotate(0deg)'},\r\n '100%': { transform: 'translate(0.5px, -1px) rotate(-1deg)'},\r\n },\r\n overlayCamera: {\r\n position: 'fixed',\r\n top: 0,\r\n left: 0,\r\n width: '100vw',\r\n height: '100vh',\r\n zIndex: 100,\r\n backgroundColor: 'rgba(104, 105, 104, 0.6)',\r\n overflowY: 'hidden',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignContent: 'center',\r\n alignItems: 'center',\r\n flexDirection:'column'\r\n },\r\n capturedPicture: {\r\n borderRadius: 10,\r\n border:'solid 2px rgb(62, 149, 231)'\r\n }, \r\n capturePhoto: {\r\n color: '#ffffff',\r\n cursor: 'pointer',\r\n '&:hover': {\r\n color: '#48ff00',\r\n animation: `$rotating 2s linear infinite`\r\n },\r\n }, \r\n '@keyframes rotating': {\r\n\t 'from': { transform: 'rotate(0deg)'},\r\n\t 'to': { transform: 'rotate(360deg)'},\r\n }, \r\n});\r\n\r\ninterface ISendMessage{\r\n isArrow: boolean,\r\n silentMode: boolean,\r\n isReply:TMessage | undefined,\r\n setIsReply: React.Dispatch<React.SetStateAction<TMessage | undefined>>,\r\n isForward: TMessage | undefined,\r\n setIsForward: React.Dispatch<React.SetStateAction<TMessage | undefined>>,\r\n isEdit: TMessage | undefined, \r\n setIsEdit: React.Dispatch<React.SetStateAction<TMessage | undefined>>,\r\n modalForward: boolean,\r\n handleScrollToTheMessage: (_id: string) => void,\r\n}\r\n\r\nconst SendMessage = ({isArrow,silentMode,isReply,setIsReply,isForward,setIsForward,isEdit,setIsEdit,modalForward,handleScrollToTheMessage }:ISendMessage) => {\r\n const classes = useStyles();\r\n const { companionId } = useSelector(getChat)\r\n const rightIsOpen = useSelector(getRightIsOpen)\r\n const [value, setValue] = useState<string>('')\r\n const [file, setFile] = useState<any>(false)\r\n const [caption, setCaption] = useState<string>('')\r\n const [isOpenCaption, setIsOpenCaption] = useState<boolean>(false)\r\n const [isOpenMenu, setIsOpenMenu] = useState<boolean>(false)\r\n const [isOpenEmoji, setIsOpenEmoji] = useState<boolean>(false)\r\n const [isOpenCaptionEmoji, setIsOpenCaptionEmoji] = useState<boolean>(false)\r\n const [isRecording, setIsRecording] = useState<boolean>(false)\r\n const [isFilming, setIsFilming] = useState<boolean>(false)\r\n const [isOpenCamera, setIsOpenCamera] = useState<boolean>(false)\r\n const [type, setType] = useState<string>('')\r\n const [status, setStatus] = useState<string | null>(null)\r\n const [_status, _setStatus] = useState<string | null>(null)\r\n const { startRecording, stopRecording, mediaBlobUrl, clearBlobUrl, } = useReactMediaRecorder({ audio: true,blobPropertyBag:{type: \"audio/mp3\"}});\r\n const { startRecording: _startRecording, stopRecording: _stopRecording,\r\n mediaBlobUrl: _mediaBlobUrl, clearBlobUrl: _clearBlobUrl } = useReactMediaRecorder({ video: true, blobPropertyBag: { type: \"video/mp4\" } });\r\n const videoConstraints = {\r\n width: 1280,\r\n height: 720,\r\n facingMode: \"user\"\r\n };\r\n const onEmojiClick = (_e: any, emojiObject: any, flag: string) => {\r\n if (flag === 'input') {\r\n setValue(prevValue => prevValue + emojiObject.emoji)\r\n setIsOpenEmoji(false)\r\n }\r\n if (flag ==='caption') {\r\n setCaption(prevValue => prevValue + emojiObject.emoji)\r\n setIsOpenCaptionEmoji(false)\r\n } \r\n }; \r\n const clearMessage = () => {\r\n setFile(false)\r\n setIsRecording(false)\r\n setIsFilming(false)\r\n setValue('')\r\n setCaption('')\r\n setType('')\r\n clearBlobUrl()\r\n _clearBlobUrl()\r\n setIsOpenMenu(false)\r\n setIsOpenEmoji(false)\r\n setIsOpenCaption(false)\r\n setIsOpenCaptionEmoji(false)\r\n setStatus(null)\r\n _setStatus(null)\r\n }\r\n\r\n const sentMessage = async () => {\r\n if (value && !isReply && !isForward && !isEdit) sentMessageById(companionId, value, caption.trim())\r\n if (value && isReply && !isForward && !isEdit) {\r\n sentMessageReplyById(isReply._id, value, caption.trim())\r\n setIsReply(undefined)\r\n }\r\n if (value&&isForward && !isEdit && !isReply) {\r\n sentMessageForwardById(isForward._id,isForward.companionIdForwardToAndFrom,value,caption.trim())\r\n setIsForward(undefined)\r\n } \r\n if (isEdit && !isForward && !isReply) {\r\n sentMessageEditById(isEdit._id, value, caption.trim())\r\n setIsEdit(undefined)\r\n } \r\n if (mediaBlobUrl && type === 'recording') {\r\n const audio = new XMLHttpRequest();\r\n audio.open('GET', mediaBlobUrl, true);\r\n audio.responseType = 'blob';\r\n audio.onload = () => {\r\n if (audio.status === 200) {\r\n const blob = audio.response\r\n const file = new File([blob], 'audio.mp3', {\r\n type: 'audio/mpeg'\r\n })\r\n const formData: any = new FormData()\r\n formData.append(\"audio\", file)\r\n sentAudioMessageById(companionId, formData,caption.trim())\r\n clearBlobUrl()\r\n }\r\n }\r\n audio.send();\r\n }\r\n if (_mediaBlobUrl && type === 'filming') {\r\n const video = new XMLHttpRequest();\r\n video.open('GET', _mediaBlobUrl, true);\r\n video.responseType = 'blob';\r\n video.onload = () => {\r\n if (video.status === 200) {\r\n const blob = video.response\r\n const file = new File([blob], 'video.mp4',{\r\n type: \"video/mp4\"\r\n })\r\n const formData: any = new FormData()\r\n formData.append(\"video\", file)\r\n sentVideoMessageById(companionId, formData,caption.trim())\r\n _clearBlobUrl()\r\n }\r\n }\r\n video.send();\r\n } \r\n if (file && type && type !== 'base64') { \r\n if (file.type.includes('image') && type === 'content') {\r\n const formData: any = new FormData()\r\n formData.append(\"image\", file);\r\n sentImgMessageById(companionId, formData, caption.trim())\r\n }\r\n if (file.type.includes('audio') && type === 'content') {\r\n const formData: any = new FormData()\r\n formData.append(\"audio\", file);\r\n sentAudioMessageById(companionId, formData,caption.trim())\r\n } \r\n if (file.type.includes('video') && type === 'content') {\r\n const formData: any = new FormData()\r\n formData.append(\"video\", file);\r\n sentVideoMessageById(companionId, formData,caption.trim()) \r\n }\r\n if (file.type.includes('application') && type === 'application') {\r\n const formData: any = new FormData()\r\n formData.append(\"file\", file);\r\n sentFileMessageById(companionId, formData,caption.trim()) \r\n } \r\n }\r\n if (typeof file === 'string' && type === 'base64') {\r\n fetch(file).then(res => res.blob()).then(blob => {\r\n const imgFile = new File([blob], \"selfie\", { type: \"image/jpeg\" })\r\n const formData: any = new FormData()\r\n formData.append(\"image\", imgFile);\r\n sentImgMessageById(companionId, formData, caption.trim())\r\n })\r\n } \r\n clearMessage()\r\n !silentMode&&playNotification(`${prodBaseURL}/send.mp3`)\r\n } \r\n const handleTextarea = (e: React.ChangeEvent<HTMLTextAreaElement>) => setValue(e.target.value)\r\n const handleTextareaCaption = (e: React.ChangeEvent<HTMLTextAreaElement>) => setCaption(e.target.value)\r\n const handleFocusTextarea = async () => await typingChat(companionId,true)\r\n const handleBlurTextarea = async () => await typingChat(companionId,false) \r\n const handleOpenFileMenu = () => !isOpenMenu&&setIsOpenMenu(true)\r\n const handleCloseFileMenu = (e:any) => e.target.id === 'overlay'&&isOpenMenu&&setIsOpenMenu(false) \r\n const handleOpenEmoji = () => !isOpenEmoji && setIsOpenEmoji(true)\r\n const handleCloseEmoji = (e: any) => e.target.id === 'overlay' && isOpenEmoji && setIsOpenEmoji(false)\r\n const handleOpenCaptionEmoji = () => !isOpenEmoji && setIsOpenCaptionEmoji(true)\r\n const handleOpenCaption = () => !isOpenCaption && setIsOpenCaption(true)\r\n const handleCloseCaption = (e: any) => {\r\n if (e.target.id === 'overlay') {\r\n if(isOpenCaptionEmoji) return setIsOpenCaptionEmoji(false)\r\n isOpenCaption && setIsOpenCaption(false)\r\n }\r\n } \r\n const handleRecording = () => {\r\n if (isRecording) {\r\n setStatus('stopped')\r\n stopRecording()\r\n return \r\n }\r\n startRecording()\r\n setStatus('recording')\r\n setType('recording')\r\n setIsRecording(true) \r\n }\r\n const handleFilming = () => {\r\n if (isFilming) {\r\n _setStatus('stopped')\r\n _stopRecording()\r\n return \r\n }\r\n _startRecording()\r\n _setStatus('recording')\r\n setType('filming')\r\n setIsFilming(true) \r\n }\r\n const handleOpenCamera = () => setIsOpenCamera(true)\r\n\r\n const handleCloseCamera = (e: any) => {\r\n const id = e.target.id\r\n if (id === 'overlay') setIsOpenCamera(false)\r\n }\r\n \r\n const handleCaptureAvatar = (getScreenshot:() => string| null) => {\r\n setFile(getScreenshot())\r\n setType('base64')\r\n !silentMode&&playNotification(`${prodBaseURL}/cameraCapture.mp3`)\r\n }\r\n\r\n const handleCloseReply = () => {\r\n setIsReply(undefined)\r\n clearMessage()\r\n }\r\n\r\n const handleCloseForward= () => {\r\n setIsForward(undefined)\r\n clearMessage()\r\n }\r\n \r\n const handleCloseEdit = () => {\r\n setIsEdit(undefined)\r\n clearMessage()\r\n } \r\n\r\n const defaultState = useCallback(() => {\r\n stopRecording()\r\n _stopRecording()\r\n clearBlobUrl()\r\n _clearBlobUrl()\r\n setStatus(null)\r\n _setStatus(null)\r\n setIsRecording(false)\r\n setIsFilming(false) \r\n setFile(false)\r\n setValue('')\r\n setCaption('')\r\n setType('')\r\n setIsOpenMenu(false)\r\n setIsOpenEmoji(false)\r\n setIsOpenCaption(false)\r\n setIsOpenCaptionEmoji(false)\r\n },[_clearBlobUrl,clearBlobUrl,_stopRecording,stopRecording])\r\n\r\n useEffect(() => {\r\n defaultState()\r\n }, [isReply, isForward,isEdit, companionId])\r\n \r\n useEffect(() => {\r\n setIsReply(undefined)\r\n setIsEdit(undefined)\r\n }, [companionId, setIsReply,setIsEdit])\r\n\r\n useEffect(() => {\r\n if (isEdit) {\r\n isEdit.type ==='text'&&setValue(isEdit.message?isEdit.message:'')\r\n setCaption(isEdit.caption?isEdit.caption:'')\r\n }\r\n }, [isEdit, companionId]) \r\n \r\n useEffect(() => {\r\n const companionIdForwardToAndFrom = isForward?.companionIdForwardToAndFrom\r\n if(companionIdForwardToAndFrom&&companionIdForwardToAndFrom !== companionId) setIsForward(undefined)\r\n }, [companionId])\r\n \r\n return (\r\n <div className={(value&&isEdit&&isEdit.type === 'text') || (isEdit&&isEdit.type !== 'text') || (value&&!isEdit) || file || status === 'stopped' || _status === 'stopped' ?classes.containerActive:classes.container}>\r\n {isArrow && <div className={classes.borderTop}></div>}\r\n {isReply && <ReplyBar isReply={isReply} handleCloseReply={handleCloseReply}\r\n handleScrollToTheMessage={handleScrollToTheMessage} />}\r\n {isEdit && <EditBar isEdit={isEdit} handleCloseEdit={handleCloseEdit}\r\n handleScrollToTheMessage={handleScrollToTheMessage} />} \r\n {isForward && !modalForward && <ForwardBar companionId={companionId} \r\n isForward={isForward} handleCloseForward={handleCloseForward}\r\n handleScrollToTheMessage={handleScrollToTheMessage} setIsForward={setIsForward}/>}\r\n {isFilming && _status !== 'stopped' && \r\n <>\r\n <div className={classes.pauseLeft}>\r\n <Avatar onClick={handleFilming } className={classes.avatarPause}\r\n sx={{backgroundColor: '#ffffff',color:'#6b6b6b',width: 56, height: 56}}>\r\n <PauseIcon fontSize=\"large\"/> \r\n </Avatar> \r\n </div>\r\n <div className={classes.ringContainerLeft}>\r\n <div className={classes.ringRing}></div>\r\n <div className={classes.circle}></div> \r\n </div>\r\n </>} \r\n {isRecording && status !== 'stopped' && \r\n <> \r\n <div className={classes.pauseRight}>\r\n <Avatar onClick={handleRecording} className={classes.avatarPause}\r\n sx={{backgroundColor: '#ffffff',color:'#6b6b6b',width: 56, height: 56}}>\r\n <PauseIcon fontSize=\"large\"/> \r\n </Avatar> \r\n </div> \r\n <div className={classes.ringContainerRight}>\r\n <div className={classes.ringRing}></div>\r\n <div className={classes.circle}></div> \r\n </div>\r\n </>} \r\n <CloseIcon onClick={clearMessage} fontSize=\"small\" className={classes.iconCancel}\r\n sx={{width: 56, height: 56, display: file || (value&&!isReply&&!isForward&&!isEdit) || (status === 'stopped'&&type)\r\n || (_status === 'stopped'&&type) ? 'inline-block' : 'none'}} />\r\n <VideocamIcon onClick={handleFilming} className={classes.avatarCamera}\r\n sx={{backgroundColor: '#ffffff', color: '#6b6b6b', width: 56, height: 56}}\r\n style={{ display: status !== null || _status === 'stopped' || file || value || isFilming || isReply || isForward || isEdit? 'none' : 'block' }} /> \r\n <SendIcon onClick={sentMessage} className={classes.avatarRight} \r\n sx={{backgroundColor: '#ffffff',color: 'rgb(41, 139, 231)', width: 56, height: 56}}\r\n style={{display: (value&&isEdit&&isEdit.type === 'text') || (isEdit&&isEdit.type !== 'text') || (value&&!isEdit) || file || status === 'stopped' || _status === 'stopped'? 'block':'none' }}/>\r\n <MicNoneIcon onClick={handleRecording} className={classes.avatarRight} \r\n sx={{backgroundColor:'#ffffff',color: '#6b6b6b', width: 56, height: 56}}\r\n style={{display: !value && !file && status !== 'stopped' && _status === null&&!isRecording && !isReply && !isForward && !isEdit ? 'block' : 'none'}}/>\r\n <SentimentSatisfiedAltIcon onClick={handleOpenEmoji} \r\n fontSize='medium' sx={{color: isOpenEmoji ? 'rgb(41, 139, 231)' : '#6b6b6b', cursor: 'pointer',\r\n pointerEvents: file || status || _status || (isEdit&&isEdit.type !== 'text') ? 'none' : \"auto\",\r\n '&:hover': { color: 'rgb(41, 139, 231)' }, marginRight:1}}/>\r\n <CommentIcon onClick={handleOpenCaption} \r\n fontSize='medium' sx={{color: isOpenCaption || caption ? 'rgb(41, 139, 231)' : '#6b6b6b', cursor: 'pointer',\r\n pointerEvents: value || file || status === 'stopped' || _status === 'stopped' || (isEdit&&isEdit.type !== 'text')? 'auto' : \"none\",\r\n '&:hover': { color: 'rgb(41, 139, 231)'}}} />\r\n <div onClick={handleCloseEmoji} className={classes.overlay} id='overlay'\r\n style={{ display: isOpenEmoji ? 'block':'none'}}>\r\n <div className={classes.emoji} style={{left: rightIsOpen?'32.5vw':'45vw',bottom:'9vh'}}>\r\n <Picker onEmojiClick={(e,obj) => onEmojiClick(e,obj,'input')} />\r\n </div> \r\n </div>\r\n <div onClick={handleCloseCaption} className={classes.overlay} id='overlay'\r\n style={{ display: isOpenCaption ? 'block' : 'none' }}>\r\n {isOpenCaptionEmoji && <div className={classes.emoji}\r\n style={{ left: rightIsOpen ? '32.5vw' : '45vw',bottom:isReply || isForward || isEdit?'23vh':'16vh' }}>\r\n <Picker onEmojiClick={(e,obj) => onEmojiClick(e,obj,'caption')} />\r\n </div>} \r\n <TextField multiline className={classes.captionTextField} onChange={handleTextareaCaption}\r\n style={{left: rightIsOpen ? '32.5vw' : '45vw', top: isReply || isForward || isEdit?'78.5vh':'85vh' }}\r\n placeholder='Caption' value={caption} id=\"caption\" name='caption' variant='outlined'\r\n InputProps={{\r\n startAdornment: (<InputAdornment position=\"start\" sx={{marginRight:4}}>\r\n <SentimentSatisfiedAltIcon onClick={handleOpenCaptionEmoji}\r\n sx={{color: isOpenCaptionEmoji ? 'rgb(41, 139, 231)' : '#6b6b6b', cursor: 'pointer',\r\n '&:hover': { color: 'rgb(41, 139, 231)' },position:'fixed',top: isReply || isForward || isEdit?'80vh':'86.5vh'}} />\r\n </InputAdornment>\r\n ),}}/>\r\n </div>\r\n <textarea disabled={file || type === 'recording' || type === 'filming' || (isEdit&&isEdit.type !== 'text')? true : false} value={value} onBlur={handleBlurTextarea}\r\n onFocus={handleFocusTextarea} onChange={handleTextarea} className={classes.textarea}\r\n placeholder={file ? 'The File is ready to send' : status === null && _status === null ? 'Message' :\r\n `${status === 'stopped' || _status === 'stopped' ? type === 'recording' || type === 'filming'?'Recorded':'Message':'Recording in progress...'}`} rows={1}\r\n style={{color:value || file || type === 'recording' || type === 'filming' ?'rgb(41, 139, 231)':'#6b6b6b'}}>\r\n </textarea>\r\n <PhotoCameraFrontIcon onClick={handleOpenCamera} fontSize='medium'\r\n sx={{color: isOpenCamera || type === 'base64' ? 'rgb(62, 149, 231)' : '#6b6b6b', marginRight: 1, cursor: 'pointer',\r\n pointerEvents: type === 'content' || type === 'application' || value || status !== null\r\n || _status !== null || isReply || isForward || isEdit ? 'none' : \"auto\",\r\n '&:hover': { color: 'rgb(41, 139, 231)'}}}/>\r\n <AttachFileIcon onClick={handleOpenFileMenu} className={classes.attachIcon}\r\n fontSize='medium' sx={{color: isOpenMenu || type === 'content' || type === 'application' ? 'rgb(41, 139, 231)' : '#6b6b6b', cursor: 'pointer',\r\n pointerEvents: type === 'base64' || value || status !== null || _status !== null || isReply || isForward || isEdit? 'none' : \"auto\", '&:hover':\r\n { color: 'rgb(41, 139, 231)'}}}/>\r\n <div onClick={handleCloseFileMenu} className={classes.overlay} id='overlay'\r\n style={{ display: isOpenMenu ? 'block':'none'}}>\r\n <div className={classes.filesMenu} style={{left: rightIsOpen?'52.5vw':'65vw'}}>\r\n <FilesMenu setFile={setFile} setValue={setValue} setIsOpenMenu={setIsOpenMenu} setType={setType} type={type}/>\r\n </div>\r\n </div>\r\n {isOpenCamera &&\r\n <div onClick={handleCloseCamera} id='overlay' className={classes.overlayCamera}>\r\n <Webcam audio={false} screenshotFormat=\"image/jpeg\" width='40%'\r\n videoConstraints={videoConstraints} style={{marginBottom:30}}>\r\n {({ getScreenshot }) => <>\r\n <CameraIcon onClick={() => handleCaptureAvatar(getScreenshot)}\r\n className={classes.capturePhoto} fontSize='large' style={{marginBottom:30}} />\r\n <img className={classes.capturedPicture} width='300' height='174'\r\n style={{visibility:file?'visible':'hidden'}} src={file} alt='chosen pic'></img>\r\n </>}\r\n </Webcam>\r\n </div>}\r\n </div> \r\n )\r\n}\r\n\r\nexport default SendMessage","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftAudio\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftImage\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\index.tsx",["692"],"import { makeStyles } from \"@material-ui/core/styles\";\r\nimport { useState, useEffect, useCallback, useMemo } from \"react\";\r\nimport { useSelector,useDispatch } from \"react-redux\";\r\n\r\nimport ArrowBack from \"./ArrowBack\";\r\nimport SendMessage from \"./SendMessage\";\r\nimport UnpinBar from \"./UnpinBar\";\r\nimport MessageLeftDeleted from \"./Messages/MessageLeftDeleted\";\r\nimport MessageLeftText from './Messages/MessageLeftText'\r\nimport MessageLeftReply from \"./Messages/MessageLeftReply\";\r\nimport MessageLeftForward from \"./Messages/MessageLeftForward\";\r\nimport MessageLeftImage from './Messages/MessageLeftImage'\r\nimport MessageLeftAudio from './Messages/MessageLeftAudio'\r\nimport MessageLeftVideo from './Messages/MessageLeftVideo'\r\nimport MessageLeftFile from \"./Messages/MessageLeftFile\";\r\nimport MessageRightDeleted from \"./Messages/MessageRightDeleted\";\r\nimport MessageRightText from './Messages/MessageRightText'\r\nimport MessageRightReply from \"./Messages/MessageRightReply\";\r\nimport MessageRightForward from \"./Messages/MessageRightForward\";\r\nimport MessageRightImage from './Messages/MessageRightImage'\r\nimport MessageRightAudio from './Messages/MessageRightAudio'\r\nimport MessageRightVideo from './Messages/MessageRightVideo'\r\nimport MessageRightFile from \"./Messages/MessageRightFile\";\r\nimport MessageDivider from \"./Messages/MessageDivider\";\r\nimport AlertInfo from \"../../../reusableComponents/AlertInfo\";\r\nimport ForwardSearchList from \"./ForwardSearchList\";\r\nimport { getMessagesMemo } from '../../../../redux/messages/selector'\r\nimport { getAuthorizationState } from '../../../../redux/authorization/selector'\r\nimport { getChat } from '../../../../redux/chat/selector'\r\nimport { getScrollChat } from '../../../../redux/control/selector'\r\nimport { actionScrollChat,actionOpenPinned,actionRightIsOpen } from '../../../../redux/control/action'\r\nimport { asyncGetMessagesById } from '../../../../redux/messages/operations'\r\nimport { asyncGetChatById,asyncStartChatById } from \"../../../../redux/chat/operations\";\r\nimport { seenChat } from \"../../../../api-data\";\r\nimport { TPinnedMessages } from \"../../../../typescript/redux/pinnedMessages/types\";\r\nimport { TMessage } from \"../../../../typescript/redux/allMessages/types\"; \r\nimport { timeStampFilter,prodAwsS3,refreshAppTime } from \"../../../../helpers\";\r\nconst debounce = require('lodash.debounce');\r\n\r\nconst useStyles = makeStyles({ \r\n container: {\r\n height: '93vh',\r\n width: \"100%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n alignContent:\"center\",\r\n flexDirection: \"column\",\r\n position: \"relative\",\r\n },\r\n messagesScroll: {\r\n paddingTop: 30,\r\n overflowY: \"scroll\",\r\n maxHeight: '83vh',\r\n width: \"100%\",\r\n display: \"flex\",\r\n justifyContent: 'center',\r\n '&::-webkit-scrollbar': {\r\n width: '0.4em'\r\n },\r\n '&::-webkit-scrollbar-track': {\r\n boxShadow: 'inset 0 0 6px rgba(0,0,0,0.00)',\r\n webkitBoxShadow: 'inset 0 0 6px rgba(0,0,0,0.00)',\r\n backgroundColor: '#eceeec',\r\n },\r\n '&::-webkit-scrollbar-thumb': {\r\n backgroundColor: '#ccc8c8',\r\n },\r\n \"&::-webkit-scrollbar-thumb:focus\": {\r\n backgroundColor: \"#959595\",\r\n },\r\n \"&::-webkit-scrollbar-thumb:active\": {\r\n backgroundColor: \"#959595\",\r\n },\r\n },\r\n messagesEmpty: {\r\n overflowY: \"hidden\",\r\n width: \"100%\",\r\n display: \"flex\",\r\n justifyContent: 'center',\r\n paddingTop: 30,\r\n }, \r\n messagesBody: {\r\n width: \"60%\",\r\n }, \r\n});\r\n\r\ninterface IChatBar {\r\n chatDivRef: any | null,\r\n selectedArr: string[] | [],\r\n setSelectedArr: React.Dispatch<React.SetStateAction<string[] | []>>,\r\n isSomeSelected: boolean,\r\n setIsSomeSelected: React.Dispatch<React.SetStateAction<boolean>>,\r\n openPinned: boolean,\r\n pinnedMessagesMemo: TPinnedMessages,\r\n handleUnpinAll: () => void,\r\n}\r\n\r\nconst ChatBar = ({chatDivRef,selectedArr,setSelectedArr,isSomeSelected,setIsSomeSelected,openPinned,pinnedMessagesMemo,handleUnpinAll}:IChatBar) => {\r\n const classes = useStyles();\r\n const dispatch = useDispatch()\r\n const messagesMemo = useSelector(getMessagesMemo)\r\n const { number:userNumber,nightMode,silentMode} = useSelector(getAuthorizationState)\r\n const { companionId,total,seen,mute,seenCompanion,number:chatNumber } = useSelector(getChat)\r\n const scrollChat = useSelector(getScrollChat)\r\n const [isArrow, setIsArrow] = useState<boolean>(false)\r\n const [isNew, setIsNew] = useState<{ new: number, mute: boolean }>({ new: 0, mute: false })\r\n const [isReply, setIsReply] = useState<TMessage | undefined>(undefined)\r\n const [isForward, setIsForward] = useState<TMessage | undefined>(undefined)\r\n const [isEdit, setIsEdit] = useState<TMessage | undefined>(undefined)\r\n const [modalForward, setModalForward] = useState<boolean>(false)\r\n let time: any\r\n let tongue: any\r\n let unread: any\r\n const getSeconds = (createdAt:string) => Math.round(new Date(createdAt).getTime()/ 1000)\r\n const isSelected = (_id: string) => selectedArr.some((el: string) => el === _id) \r\n const handleSelected = (_id: string) => {\r\n !isSomeSelected&&setIsSomeSelected(true)\r\n if (selectedArr.some((el: string) => el === _id)) \r\n setSelectedArr(selectedArr.filter((el:string) => el !== _id))\r\n else setSelectedArr([...selectedArr,_id])\r\n }\r\n\r\n const handleReply = (_id: string) => {\r\n openPinned && dispatch(actionOpenPinned(false))\r\n isEdit&&setIsEdit(undefined)\r\n setIsReply(renderArr.find((el) => el._id ===_id))\r\n }\r\n \r\n const handleForward = (_id: string) => {\r\n openPinned && dispatch(actionOpenPinned(false))\r\n isReply && setIsReply(undefined)\r\n isEdit&&setIsEdit(undefined)\r\n setIsForward(renderArr.find((el) => el._id === _id))\r\n setModalForward(true)\r\n }\r\n\r\n const handleEdit = (_id: string) => {\r\n openPinned && dispatch(actionOpenPinned(false))\r\n isReply && setIsReply(undefined)\r\n setIsEdit(renderArr.find((el) => el._id ===_id))\r\n } \r\n \r\n const handleScrollTo = useCallback(() => {\r\n chatDivRef.current&&chatDivRef.current.scrollTo({\r\n top: chatDivRef.current.scrollHeight,\r\n behavior: 'smooth'\r\n })\r\n },[chatDivRef])\r\n\r\n const handleScroll = useCallback(({ target:{scrollHeight,scrollTop,clientHeight}}: any) => {\r\n const different = scrollHeight - Math.floor(scrollTop)\r\n const reached = different - clientHeight\r\n if (total !== seen&&reached < 10 && !openPinned) seenChat(companionId)\r\n setIsArrow(different === clientHeight ? false : true)\r\n }, [total,seen, companionId,openPinned])\r\n \r\n const debouncedHandleScroll = debounce(handleScroll, 300)\r\n\r\n const renderArr = useMemo(() => {\r\n return !openPinned ? messagesMemo : pinnedMessagesMemo\r\n }, [messagesMemo, pinnedMessagesMemo, openPinned])\r\n \r\n const handleScrollToTheMessage = (_id:string) => {\r\n const childNodes = chatDivRef.current.childNodes[0].childNodes\r\n let toScrollNode = [...childNodes].find((el: any) => el.id === _id)\r\n if (toScrollNode) {\r\n toScrollNode = [...toScrollNode.childNodes].slice(-1)[0]\r\n toScrollNode.style.backgroundColor = 'rgba(70, 70, 70, 0.4)'\r\n toScrollNode.style.boxShadow = '0px 0px 6px 0px #ffffff'\r\n toScrollNode.scrollIntoView({ behavior: 'smooth' })\r\n setTimeout(() => {\r\n toScrollNode.style.backgroundColor = 'unset'\r\n toScrollNode.style.boxShadow = 'unset'\r\n }, 2000)\r\n }\r\n } \r\n\r\n const handleScrollToTheChat = (companionIdForwardToAndFrom:string,oldId:string) => {\r\n if (companionId === companionIdForwardToAndFrom) return handleScrollToTheMessage(oldId)\r\n dispatch(actionRightIsOpen(''))\r\n dispatch(actionOpenPinned(false))\r\n dispatch(asyncStartChatById(companionIdForwardToAndFrom))\r\n setTimeout(() => handleScrollToTheMessage(oldId), 2000)\r\n }\r\n \r\n const handleOpenTheChat = (companionIdForwardToAndFrom: string | null) => {\r\n if (companionIdForwardToAndFrom&&companionId !== companionIdForwardToAndFrom) {\r\n dispatch(actionRightIsOpen(''))\r\n dispatch(actionOpenPinned(false))\r\n dispatch(asyncStartChatById(companionIdForwardToAndFrom))\r\n }\r\n }\r\n \r\n useEffect(() => {\r\n if (scrollChat) {\r\n dispatch(asyncGetMessagesById(companionId, handleScrollTo))\r\n dispatch(actionScrollChat(false))\r\n }\r\n }, [dispatch,handleScrollTo, scrollChat, companionId])\r\n \r\n useEffect(() => {\r\n const handleReset = () => {\r\n dispatch(asyncGetChatById(companionId))\r\n dispatch(asyncGetMessagesById(companionId, null))\r\n }\r\n handleReset()\r\n const idInterval = setInterval(handleReset, refreshAppTime);\r\n return () => clearInterval(idInterval);\r\n }, [dispatch, companionId]);\r\n \r\n useEffect(() => {\r\n setIsNew({ new:total-seen,mute})\r\n }, [total, seen, mute]);\r\n \r\n useEffect(() => {\r\n if (chatDivRef.current&&openPinned) {\r\n const { scrollHeight, clientHeight } = chatDivRef.current\r\n if (scrollHeight === clientHeight && isArrow) setIsArrow(false)\r\n }\r\n }, [chatDivRef,openPinned,pinnedMessagesMemo.length, isArrow]); \r\n\r\n useEffect(() => {\r\n const handleReset = () => {\r\n if (chatDivRef.current&&!openPinned) {\r\n const { scrollHeight, clientHeight } = chatDivRef.current\r\n if (total !== seen && scrollHeight === clientHeight) seenChat(companionId)\r\n }\r\n }\r\n const idInterval = setInterval(handleReset, refreshAppTime);\r\n return () => clearInterval(idInterval);\r\n }, [total, seen, chatDivRef, companionId, openPinned]);\r\n \r\n return (\r\n <div className={classes.container} >\r\n <ArrowBack isArrow={isArrow} isNew={isNew} handleScrollTo={handleScrollTo} openPinned={openPinned}/>\r\n {isForward && modalForward && <ForwardSearchList setModalForward={setModalForward}\r\n setIsForward={setIsForward} companionId={companionId}/>}\r\n <div id={companionId} ref={chatDivRef} onScroll={debouncedHandleScroll}\r\n className={messagesMemo.length > 0 ? classes.messagesScroll : classes.messagesEmpty}>\r\n <div className={classes.messagesBody}>\r\n {messagesMemo.length > 0 ? renderArr.map(({ replyMessage,message, name, lastName,avatarUrl,color,pinned,\r\n createdAt, number, type, fullType, replyName, replyLastName, replyCaption, caption, emoji, emojiCompanion,\r\n _id, oldId, forwardName, forwardLastName, companionIdForwardToAndFrom,forwardMessage,forwardCaption,edited,deleted},i) => {\r\n const watched = seenCompanion - (i + 1) < 0 ? false : true\r\n let isUnread\r\n let isTime\r\n let isTongue = false\r\n const nextTongue = renderArr[i + 1]\r\n if (!unread && chatNumber === number&& seen - (i + 1) < 0) {\r\n isUnread = true\r\n unread = true\r\n }\r\n if (!time) {\r\n isTime = true\r\n time = createdAt\r\n } else if (timeStampFilter(time) !== timeStampFilter(createdAt)) {\r\n time = createdAt\r\n isTime = true\r\n } \r\n if (!tongue&&nextTongue&&nextTongue.number === number) {\r\n if (getSeconds(nextTongue.createdAt) - getSeconds(createdAt) < 600) {\r\n isTongue = false\r\n } else {\r\n isTongue = true\r\n }\r\n tongue = number\r\n } else if (!tongue&&nextTongue&&nextTongue.number !== number) {\r\n isTongue = true\r\n tongue = null\r\n } else if (tongue&&nextTongue&&tongue === number&&nextTongue.number === number) {\r\n if (getSeconds(nextTongue.createdAt) - getSeconds(createdAt) < 600) {\r\n isTongue = false\r\n } else {\r\n isTongue = true\r\n }\r\n tongue = number\r\n } else if (tongue&&nextTongue&&tongue === number&&nextTongue.number !== number) {\r\n isTongue = true\r\n tongue = null\r\n } else if (tongue&&!nextTongue&&tongue === number) {\r\n isTongue = true\r\n tongue = null\r\n } else if (tongue&&!nextTongue&&tongue !== number) {\r\n isTongue = false\r\n tongue = number\r\n }\r\n if(renderArr.length-1 === i) isTongue = true\r\n if (nextTongue && timeStampFilter(nextTongue.createdAt) !== timeStampFilter(createdAt)) {\r\n isTongue = true\r\n }\r\n const url = `${prodAwsS3}/${message}`\r\n const urlForward = `${prodAwsS3}/${forwardMessage}`\r\n const urlReply = `${prodAwsS3}/${replyMessage}`\r\n if (number !== userNumber) {\r\n if (type === 'text' && !oldId && !companionIdForwardToAndFrom && !deleted) return (<div key={createdAt} id={_id} style={{borderRadius: 7}}> \r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageLeftText\r\n message={message}\r\n tongue={isTongue}\r\n watched={!unread}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n createdAt={createdAt}\r\n name={name}\r\n lastName={lastName}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected}\r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward} \r\n /></div>)\r\n if (type === 'text' && deleted) return (<div key={createdAt} id={_id} style={{borderRadius: 7}}> \r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageLeftDeleted\r\n tongue={isTongue}\r\n watched={watched}\r\n edited={edited}\r\n companionIdForwardToAndFrom={companionIdForwardToAndFrom}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n name={name}\r\n lastName={lastName}\r\n forwardReplyName={companionIdForwardToAndFrom?forwardName:replyName}\r\n forwardReplyLastName={companionIdForwardToAndFrom?forwardLastName:replyLastName}\r\n message={message}\r\n createdAt={createdAt}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n handleEdit={handleEdit}\r\n handleOpenTheChat={handleOpenTheChat}\r\n /></div>) \r\n if (type === 'text' && companionIdForwardToAndFrom) return (<div key={createdAt} id={_id} style={{borderRadius: 7}}> \r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageLeftForward\r\n url={urlForward}\r\n companionIdForwardToAndFrom={companionIdForwardToAndFrom}\r\n oldId={oldId}\r\n tongue={isTongue}\r\n watched={!unread}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n name={name}\r\n lastName={lastName}\r\n forwardName={forwardName}\r\n forwardLastName={forwardLastName}\r\n forwardMessage={forwardMessage}\r\n forwardCaption={forwardCaption}\r\n message={message}\r\n createdAt={createdAt}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n fullType={fullType}\r\n handleScrollToTheChat={handleScrollToTheChat}\r\n /></div>) \r\n if (type === 'text' && oldId) return (<div key={createdAt} id={_id} style={{borderRadius: 7}}> \r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageLeftReply\r\n url={urlReply}\r\n tongue={isTongue}\r\n watched={!unread}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n replyMessage={replyMessage}\r\n message={message}\r\n createdAt={createdAt}\r\n name={name}\r\n lastName={lastName}\r\n replyName={replyName}\r\n replyLastName={replyLastName}\r\n replyCaption={replyCaption}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n fullType={fullType}\r\n handleScrollToTheMessage={handleScrollToTheMessage}\r\n oldId={oldId}\r\n /></div>) \r\n if (type === 'image') return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageLeftImage \r\n url={url}\r\n tongue={isTongue}\r\n watched={!unread}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n createdAt={createdAt}\r\n fullType={fullType}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n name={name}\r\n lastName={lastName}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n /></div>)\r\n if (type === 'audio') return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageLeftAudio \r\n url={url}\r\n tongue={isTongue}\r\n watched={!unread}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n name={name}\r\n lastName={lastName}\r\n createdAt={createdAt}\r\n fullType={fullType}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n /></div>)\r\n if (type === 'video') return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageLeftVideo \r\n url={url}\r\n tongue={isTongue}\r\n watched={!unread}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n name={name}\r\n lastName={lastName}\r\n createdAt={createdAt}\r\n fullType={fullType}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n /></div>)\r\n if (type) return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageLeftFile \r\n url={url}\r\n tongue={isTongue}\r\n watched={!unread}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n name={name}\r\n lastName={lastName}\r\n createdAt={createdAt}\r\n type={type}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n /></div>) \r\n } else {\r\n if (type === 'text' && !oldId && !companionIdForwardToAndFrom && !deleted) return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageRightText \r\n message={message}\r\n tongue={isTongue}\r\n watched={watched}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n createdAt={createdAt}\r\n name={name}\r\n lastName={lastName}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n handleEdit={handleEdit}\r\n /></div>)\r\n if (type === 'text' && deleted) return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageRightDeleted\r\n tongue={isTongue}\r\n watched={watched}\r\n edited={edited}\r\n companionIdForwardToAndFrom={companionIdForwardToAndFrom}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n name={name}\r\n lastName={lastName}\r\n forwardReplyName={companionIdForwardToAndFrom?forwardName:replyName}\r\n forwardReplyLastName={companionIdForwardToAndFrom?forwardLastName:replyLastName}\r\n message={message}\r\n createdAt={createdAt}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n handleEdit={handleEdit}\r\n handleOpenTheChat={handleOpenTheChat}\r\n /></div>) \r\n if (type === 'text' && companionIdForwardToAndFrom) return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageRightForward\r\n url={urlForward}\r\n oldId={oldId}\r\n companionIdForwardToAndFrom={companionIdForwardToAndFrom}\r\n tongue={isTongue}\r\n watched={watched}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n name={name}\r\n lastName={lastName}\r\n forwardName={forwardName}\r\n forwardLastName={forwardLastName}\r\n forwardMessage={forwardMessage}\r\n forwardCaption={forwardCaption}\r\n message={message}\r\n createdAt={createdAt}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n handleEdit={handleEdit}\r\n fullType={fullType}\r\n handleScrollToTheChat={handleScrollToTheChat}\r\n /></div>) \r\n if (type === 'text' && oldId) return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageRightReply\r\n url={urlReply}\r\n tongue={isTongue}\r\n watched={watched}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n replyMessage={replyMessage}\r\n message={message}\r\n createdAt={createdAt}\r\n name={name}\r\n lastName={lastName}\r\n replyName={replyName}\r\n replyLastName={replyLastName}\r\n replyCaption={replyCaption}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected} \r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n handleEdit={handleEdit}\r\n fullType={fullType}\r\n handleScrollToTheMessage={handleScrollToTheMessage}\r\n oldId={oldId}\r\n /></div>) \r\n if (type === 'image') return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageRightImage \r\n url={url}\r\n tongue={isTongue}\r\n watched={watched}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n createdAt={createdAt}\r\n fullType={fullType}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected}\r\n _id={_id}\r\n name={name}\r\n lastName={lastName}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n handleEdit={handleEdit}\r\n /></div>)\r\n if (type === 'audio') return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageRightAudio \r\n url={url}\r\n tongue={isTongue}\r\n watched={watched}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n name={name}\r\n lastName={lastName}\r\n createdAt={createdAt}\r\n fullType={fullType}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected}\r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n handleEdit={handleEdit}\r\n /></div>)\r\n if (type === 'video') return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageRightVideo \r\n url={url}\r\n tongue={isTongue}\r\n watched={watched}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n name={name}\r\n lastName={lastName}\r\n createdAt={createdAt}\r\n fullType={fullType}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected}\r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n handleEdit={handleEdit}\r\n /></div>)\r\n if (type) return (<div key={createdAt} id={_id} style={{borderRadius: 7}}>\r\n {isTime&&<MessageDivider message={timeStampFilter(createdAt)}/>}\r\n {isUnread&&<MessageDivider message='Unread Messages'/>}\r\n <MessageRightFile \r\n url={url}\r\n tongue={isTongue}\r\n watched={watched}\r\n edited={edited}\r\n avatarUrl={avatarUrl}\r\n color={color}\r\n name={name}\r\n lastName={lastName}\r\n createdAt={createdAt}\r\n type={type}\r\n caption={caption}\r\n emoji={emoji}\r\n emojiCompanion={emojiCompanion}\r\n pinned={pinned}\r\n isSomeSelected={isSomeSelected}\r\n isSelected={isSelected}\r\n handleSelected={handleSelected}\r\n _id={_id}\r\n nightMode={nightMode}\r\n handleReply={handleReply}\r\n handleForward={handleForward}\r\n handleEdit={handleEdit}\r\n /></div>) \r\n }\r\n }) : <AlertInfo name='You do not have messages yet!' />}\r\n </div>\r\n </div>\r\n {!openPinned && !isSomeSelected && <SendMessage isArrow={isArrow} silentMode={silentMode} isReply={isReply} setIsReply={setIsReply}\r\n isForward={isForward} setIsForward={setIsForward}\r\n isEdit={isEdit} setIsEdit={setIsEdit}\r\n modalForward={modalForward} handleScrollToTheMessage={handleScrollToTheMessage}/>}\r\n {openPinned&&!isSomeSelected&&<UnpinBar pinnedMessagesMemo={pinnedMessagesMemo} handleUnpinAll={handleUnpinAll} />}\r\n </div>\r\n );\r\n}\r\n\r\nexport default ChatBar","D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightImage\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ArrowBack\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightFile\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\Credentials\\index.tsx",[],["693","694"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftText\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftVideo\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\EditBar\\SubmitBtn\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\RightBar\\SearchList\\Search\\StaticDatePicker\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftFile\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightText\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightVideo\\index.tsx",[],["695","696"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightAudio\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\Buttons\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\hooks\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\HeaderBar\\PinnedBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\pinnedMessages\\action\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\pinnedMessages\\selector\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\pinnedMessages\\operations\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\UnpinBar\\index.tsx",[],["697","698"],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightReply\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftReply\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\FilesMenu\\UploadFile\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\ForwardBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\redux\\pinnedMessages\\reducer\\index.ts",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\FilesMenu\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftForward\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightForward\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\ReplyBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\SendMessage\\EditBar\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ForwardSearchList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ForwardSearchList\\ForwardSearch\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ForwardSearchList\\ForwardList\\ForwardItem\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ForwardSearchList\\ForwardList\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\ForwardSearchList\\ForwardSearch\\StaticDatePicker\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageLeftDeleted\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CentralBar\\ChatBar\\Messages\\MessageRightDeleted\\index.tsx",[],"D:\\web\\NIX\\FINAL-PROJECT-FRONT\\src\\components\\HomePage\\CallBar\\index.tsx",[],{"ruleId":"699","replacedBy":"700"},{"ruleId":"701","replacedBy":"702"},{"ruleId":"699","replacedBy":"703"},{"ruleId":"701","replacedBy":"704"},{"ruleId":"699","replacedBy":"705"},{"ruleId":"701","replacedBy":"706"},{"ruleId":"699","replacedBy":"707"},{"ruleId":"701","replacedBy":"708"},{"ruleId":"699","replacedBy":"709"},{"ruleId":"701","replacedBy":"710"},{"ruleId":"711","severity":1,"message":"712","line":3,"column":10,"nodeType":"713","messageId":"714","endLine":3,"endColumn":15},{"ruleId":"699","replacedBy":"715"},{"ruleId":"701","replacedBy":"716"},{"ruleId":"699","replacedBy":"717"},{"ruleId":"701","replacedBy":"718"},{"ruleId":"699","replacedBy":"719"},{"ruleId":"701","replacedBy":"720"},{"ruleId":"699","replacedBy":"721"},{"ruleId":"701","replacedBy":"722"},{"ruleId":"699","replacedBy":"723"},{"ruleId":"701","replacedBy":"724"},{"ruleId":"699","replacedBy":"725"},{"ruleId":"701","replacedBy":"726"},{"ruleId":"699","replacedBy":"727"},{"ruleId":"701","replacedBy":"728"},{"ruleId":"699","replacedBy":"729"},{"ruleId":"701","replacedBy":"730"},{"ruleId":"699","replacedBy":"731"},{"ruleId":"701","replacedBy":"732"},{"ruleId":"699","replacedBy":"733"},{"ruleId":"701","replacedBy":"734"},{"ruleId":"699","replacedBy":"735"},{"ruleId":"701","replacedBy":"736"},{"ruleId":"699","replacedBy":"737"},{"ruleId":"701","replacedBy":"738"},{"ruleId":"699","replacedBy":"739"},{"ruleId":"701","replacedBy":"740"},{"ruleId":"741","severity":1,"message":"742","line":139,"column":87,"nodeType":"743","messageId":"744","endLine":139,"endColumn":89},{"ruleId":"699","replacedBy":"745"},{"ruleId":"701","replacedBy":"746"},{"ruleId":"699","replacedBy":"747"},{"ruleId":"701","replacedBy":"748"},{"ruleId":"699","replacedBy":"749"},{"ruleId":"701","replacedBy":"750"},{"ruleId":"699","replacedBy":"751"},{"ruleId":"701","replacedBy":"752"},{"ruleId":"699","replacedBy":"753"},{"ruleId":"701","replacedBy":"754"},{"ruleId":"699","replacedBy":"755"},{"ruleId":"701","replacedBy":"756"},{"ruleId":"711","severity":1,"message":"757","line":1,"column":44,"nodeType":"713","messageId":"714","endLine":1,"endColumn":52},{"ruleId":"711","severity":1,"message":"758","line":1,"column":53,"nodeType":"713","messageId":"714","endLine":1,"endColumn":65},{"ruleId":"711","severity":1,"message":"759","line":1,"column":67,"nodeType":"713","messageId":"714","endLine":1,"endColumn":79},{"ruleId":"711","severity":1,"message":"760","line":2,"column":8,"nodeType":"713","messageId":"714","endLine":2,"endColumn":18},{"ruleId":"699","replacedBy":"761"},{"ruleId":"701","replacedBy":"762"},{"ruleId":"699","replacedBy":"763"},{"ruleId":"701","replacedBy":"764"},{"ruleId":"699","replacedBy":"765"},{"ruleId":"701","replacedBy":"766"},{"ruleId":"699","replacedBy":"767"},{"ruleId":"701","replacedBy":"768"},{"ruleId":"699","replacedBy":"769"},{"ruleId":"701","replacedBy":"770"},{"ruleId":"699","replacedBy":"771"},{"ruleId":"701","replacedBy":"772"},{"ruleId":"699","replacedBy":"773"},{"ruleId":"701","replacedBy":"774"},{"ruleId":"699","replacedBy":"775"},{"ruleId":"701","replacedBy":"776"},{"ruleId":"699","replacedBy":"777"},{"ruleId":"701","replacedBy":"778"},{"ruleId":"699","replacedBy":"779"},{"ruleId":"701","replacedBy":"780"},{"ruleId":"699","replacedBy":"781"},{"ruleId":"701","replacedBy":"782"},{"ruleId":"699","replacedBy":"783"},{"ruleId":"701","replacedBy":"784"},{"ruleId":"699","replacedBy":"785"},{"ruleId":"701","replacedBy":"786"},{"ruleId":"699","replacedBy":"787"},{"ruleId":"701","replacedBy":"788"},{"ruleId":"789","severity":1,"message":"790","line":510,"column":6,"nodeType":"791","endLine":510,"endColumn":46,"suggestions":"792"},{"ruleId":"789","severity":1,"message":"793","line":527,"column":6,"nodeType":"791","endLine":527,"endColumn":19,"suggestions":"794"},{"ruleId":"741","severity":1,"message":"795","line":243,"column":130,"nodeType":"743","messageId":"744","endLine":243,"endColumn":132},{"ruleId":"699","replacedBy":"796"},{"ruleId":"701","replacedBy":"797"},{"ruleId":"699","replacedBy":"798"},{"ruleId":"701","replacedBy":"799"},{"ruleId":"699","replacedBy":"800"},{"ruleId":"701","replacedBy":"801"},"no-native-reassign",["802"],"no-negated-in-lhs",["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],"@typescript-eslint/no-unused-vars","'TChat' is defined but never used.","Identifier","unusedVar",["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],"array-callback-return","Array.prototype.filter() expects a value to be returned at the end of arrow function.","ArrowFunctionExpression","expectedAtEnd",["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],"'ListItem' is defined but never used.","'ListItemText' is defined but never used.","'ListItemIcon' is defined but never used.","'FolderIcon' is defined but never used.",["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],["802"],["803"],"react-hooks/exhaustive-deps","React Hook useEffect has a missing dependency: 'defaultState'. Either include it or remove the dependency array.","ArrayExpression",["804"],"React Hook useEffect has missing dependencies: 'isForward?.companionIdForwardToAndFrom' and 'setIsForward'. Either include them or remove the dependency array. If 'setIsForward' changes too often, find the parent component that defines it and wrap that definition in useCallback.",["805"],"Array.prototype.map() expects a value to be returned at the end of arrow function.",["802"],["803"],["802"],["803"],["802"],["803"],"no-global-assign","no-unsafe-negation",{"desc":"806","fix":"807"},{"desc":"808","fix":"809"},"Update the dependencies array to be: [isReply, isForward, isEdit, companionId, defaultState]",{"range":"810","text":"811"},"Update the dependencies array to be: [companionId, isForward?.companionIdForwardToAndFrom, setIsForward]",{"range":"812","text":"813"},[17166,17206],"[isReply, isForward, isEdit, companionId, defaultState]",[17751,17764],"[companionId, isForward?.companionIdForwardToAndFrom, setIsForward]"]
|