agx-chat-web 1.2.6 → 1.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agx-chat.min.js","mappings":"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","sources":["webpack://agx-chat-web/webpack/universalModuleDefinition","webpack://agx-chat-web/./src/styles/index.less","webpack://agx-chat-web/./node_modules/css-loader/dist/runtime/api.js","webpack://agx-chat-web/./node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://agx-chat-web/./node_modules/dayjs/locale/pt-br.js","webpack://agx-chat-web/./node_modules/dayjs/plugin/isToday.js","webpack://agx-chat-web/./node_modules/dayjs/plugin/timezone.js","webpack://agx-chat-web/./node_modules/dayjs/plugin/utc.js","webpack://agx-chat-web/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://agx-chat-web/./node_modules/style-loader/dist/runtime/insertBySelector.js","webpack://agx-chat-web/./node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack://agx-chat-web/./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack://agx-chat-web/./node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack://agx-chat-web/./node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack://agx-chat-web/./src/assets/right-arrow.svg","webpack://agx-chat-web/external umd \"dayjs\"","webpack://agx-chat-web/external umd \"react\"","webpack://agx-chat-web/external umd \"react-i18next\"","webpack://agx-chat-web/webpack/bootstrap","webpack://agx-chat-web/webpack/runtime/compat get default export","webpack://agx-chat-web/webpack/runtime/define property getters","webpack://agx-chat-web/webpack/runtime/hasOwnProperty shorthand","webpack://agx-chat-web/webpack/runtime/make namespace object","webpack://agx-chat-web/webpack/runtime/nonce","webpack://agx-chat-web/./src/styles/index.less?e247","webpack://agx-chat-web/./src/app/Messenger/components/MessengerThemeWrapper/MessengerThemeWrapper.tsx","webpack://agx-chat-web/./src/app/Messenger/hooks/useThemes.tsx","webpack://agx-chat-web/./src/app/Messenger/classes/slaCalculations.ts","webpack://agx-chat-web/./src/app/Messenger/components/MessengerAvatar/MessengerAvatar.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/TimerIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/views/MessengerListItem.tsx","webpack://agx-chat-web/./src/app/Messenger/components/ChatTabs/ChatTabs.tsx","webpack://agx-chat-web/./src/app/Messenger/components/ChatButton/ChatButton.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/SearchIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/components/SearchInput/SearchInput.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/EmptyIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/components/InfiniteScroll/InfiniteScroll.tsx","webpack://agx-chat-web/./src/app/Messenger/views/MessengerList.tsx","webpack://agx-chat-web/./node_modules/tslib/tslib.es6.js","webpack://agx-chat-web/./src/app/Messenger/icons/DOCFileIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/PDFFileIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/CSVFileIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/MP4FileIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/components/RenderFileIcon/RenderFileIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/components/ImagesContainer/ImagesContainer.tsx","webpack://agx-chat-web/./node_modules/react-simple-image-viewer/dist/index.esm.js","webpack://agx-chat-web/./src/app/Messenger/icons/DownloadMinimalistIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/components/DocMessage/DocMessage.tsx","webpack://agx-chat-web/./src/app/Messenger/components/IncomingMessage/IncomingMessage.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/ReadIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/components/SenderMessages/SenderMessages.tsx","webpack://agx-chat-web/./src/app/Messenger/components/SystemMessage/SystemMessage.tsx","webpack://agx-chat-web/./src/app/Messenger/components/MessageBallon/MessageBalloon.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/MessageIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/TrashIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/components/InputFile/InputFile.tsx","webpack://agx-chat-web/./src/app/Messenger/components/Select/Select.tsx","webpack://agx-chat-web/./src/app/Messenger/components/TextArea/TextArea.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/CloseIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/views/NewFormChat.tsx","webpack://agx-chat-web/./src/app/Messenger/icons/AttachFileIcon.tsx","webpack://agx-chat-web/./src/app/Messenger/components/Tooltip/Tooltip.tsx","webpack://agx-chat-web/./src/app/Messenger/components/SendMessageForm/SendMessageForm.tsx","webpack://agx-chat-web/./src/app/Messenger/views/MessengerMessages.tsx","webpack://agx-chat-web/./src/app/Messenger/hooks/useConversations.tsx","webpack://agx-chat-web/./src/app/Messenger/hooks/useMessages.tsx","webpack://agx-chat-web/./src/app/i18n/index.ts","webpack://agx-chat-web/./src/app/ChatProvider/ChatProvider.tsx"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"dayjs\"), require(\"react-i18next\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"agx-chat-web\", [\"react\", \"dayjs\", \"react-i18next\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"agx-chat-web\"] = factory(require(\"react\"), require(\"dayjs\"), require(\"react-i18next\"));\n\telse\n\t\troot[\"agx-chat-web\"] = factory(root[\"react\"], root[\"dayjs\"], root[\"react-i18next\"]);\n})(this, (__WEBPACK_EXTERNAL_MODULE__156__, __WEBPACK_EXTERNAL_MODULE__760__, __WEBPACK_EXTERNAL_MODULE__238__) => {\nreturn ","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".images-container {\\n width: 100%;\\n height: 90%;\\n border: 2px solid #484c52;\\n background-color: #232831;\\n border-bottom: none;\\n border-radius: 0 20px 0 0;\\n}\\n@media only screen and (max-width: 768px) {\\n .images-container {\\n border-radius: 20px 20px 0 0 !important;\\n }\\n}\\n.images-container__close {\\n width: 100%;\\n position: relative;\\n margin-top: 15px;\\n display: flex;\\n justify-content: flex-end;\\n align-items: center;\\n}\\n.images-container__close--icon {\\n width: 32px;\\n height: 32px;\\n cursor: pointer;\\n background-color: transparent;\\n outline: none;\\n border: none;\\n}\\n.images-container__close--icon:hover {\\n opacity: 75%;\\n transition: 200ms;\\n}\\n.images-container__close--icon::before,\\n.images-container__close--icon::after {\\n position: absolute;\\n right: 25px;\\n top: 0;\\n content: ' ';\\n height: 33px;\\n width: 2px;\\n background-color: red;\\n}\\n.images-container__close--icon:after {\\n transform: rotate(45deg);\\n}\\n.images-container__close--icon:before {\\n transform: rotate(-45deg);\\n}\\n.images-container__container {\\n width: 100%;\\n height: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n color: #476077;\\n}\\n.images-container__image {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n padding: 0 10px;\\n max-width: 700px;\\n max-height: 300px;\\n}\\n.images-container__title-img {\\n width: 100%;\\n text-align: center;\\n word-wrap: break-word;\\n}\\n.form-select {\\n margin-bottom: 1rem;\\n width: 100%;\\n}\\n.form-select__label {\\n color: #476077;\\n font-weight: bold;\\n margin: 0.5rem;\\n}\\n.form-select__input {\\n border: 1.5px solid hsl(0, 0%, 80%);\\n border-radius: 4px;\\n margin-top: 0.5rem;\\n padding: 8px 8px;\\n width: 100%;\\n}\\n.form-select__input:focus {\\n outline: #2684ff 2px solid !important;\\n}\\n.text-area {\\n margin-bottom: 1rem;\\n width: 100%;\\n}\\n.text-area__label {\\n color: #476077;\\n font-weight: bold;\\n margin: 0.5rem;\\n}\\n.text-area__input {\\n border: 1.5px solid hsl(0, 0%, 80%);\\n border-radius: 4px;\\n margin-top: 0.5rem;\\n padding: 4px 8px;\\n width: 100%;\\n}\\n.text-area__input:focus {\\n outline: #2684ff 2px solid !important;\\n}\\n.file-input {\\n margin-bottom: 1rem;\\n width: 100%;\\n}\\n.file-input__label {\\n color: #476077;\\n font-weight: bold;\\n margin: 0.5rem;\\n}\\n.file-input__container {\\n align-items: center;\\n background-color: var(--secondary-color);\\n border-radius: 10px;\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n margin-top: 0.5rem;\\n padding: 1rem;\\n width: 100%;\\n}\\n.file-input__button {\\n border: none;\\n border-radius: 30px;\\n color: var(--secondary-color);\\n cursor: pointer;\\n font-size: 1rem;\\n font-weight: bold;\\n margin: 0.5rem 1rem;\\n padding: 0.5rem;\\n}\\n.file-input__list {\\n align-items: center;\\n background-color: var(--secondary-color);\\n border-radius: 10px;\\n display: flex;\\n justify-content: space-between;\\n margin: 0.5rem 0;\\n padding: 0.5rem;\\n}\\n.file-input__list--file-name {\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n max-width: 100%;\\n}\\n.file-input__delete {\\n align-items: center;\\n background: transparent;\\n border: none;\\n cursor: pointer;\\n display: flex;\\n justify-content: center;\\n}\\n.input-search {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n width: 100%;\\n margin: 1rem 0;\\n position: relative;\\n}\\n.input-search__select {\\n border-radius: 30px 0 0 30px;\\n padding: 10px;\\n background: transparent;\\n margin-left: 1rem;\\n width: 30%;\\n}\\n.input-search__option {\\n color: black;\\n}\\n.input-search__search {\\n width: 70%;\\n margin-right: 1rem;\\n border-radius: 0 30px 30px 0;\\n padding: 9px;\\n color: var(--secondary-color);\\n border: var(--secondary-color) 1px solid;\\n background: transparent;\\n position: relative;\\n}\\n.input-search__search::placeholder {\\n color: var(--secondary-color);\\n opacity: 60%;\\n}\\n.input-search__icon {\\n border: none;\\n background: transparent;\\n position: absolute;\\n right: 2rem;\\n display: flex;\\n cursor: pointer;\\n}\\n.chat-tabs {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n}\\n.chat-tabs__button {\\n background: transparent;\\n border: none;\\n border-bottom: 1px solid transparent;\\n cursor: pointer;\\n padding: 0.5rem 1rem;\\n margin-bottom: 0.5rem;\\n}\\n.chat-tabs__button--active {\\n border-bottom: 1px solid var(--secondary-color);\\n transition: 0.5s;\\n}\\n.messenger__messages-row--sender {\\n display: flex;\\n justify-content: flex-end;\\n margin: 10px 0;\\n}\\n.messenger__messages-sender {\\n max-width: 80%;\\n padding: 10px;\\n border-radius: 8px;\\n font-family: 'Arial', sans-serif;\\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\\n}\\n.messenger__file-card {\\n display: flex;\\n align-items: center;\\n background: rgba(0, 0, 0, 0.1);\\n border-radius: 8px;\\n padding: 10px;\\n}\\n.messenger__file-icon {\\n flex-shrink: 0;\\n width: 40px;\\n height: 40px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 4px;\\n margin-right: 10px;\\n}\\n.messenger__file-details {\\n flex-grow: 1;\\n margin-right: 10px;\\n}\\n.messenger__file-name {\\n font-weight: bold;\\n font-size: 14px;\\n margin: 0;\\n}\\n.messenger__file-info {\\n font-size: 12px;\\n color: rgba(255, 255, 255, 0.8);\\n}\\n.messenger__file-download {\\n font-size: 12px;\\n text-decoration: none;\\n}\\n.messenger__file-download:hover {\\n text-decoration: underline;\\n}\\n.messenger__message--bottom {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-top: 5px;\\n}\\n.messenger__message--date {\\n font-size: 12px;\\n color: rgba(255, 255, 255, 0.8);\\n}\\n.tooltip {\\n position: relative;\\n display: inline-block;\\n}\\n.tooltip__text {\\n visibility: hidden;\\n background-color: black;\\n color: #fff;\\n text-align: center;\\n border-radius: 5px;\\n padding: 5px;\\n position: absolute;\\n z-index: 1;\\n bottom: 125%;\\n left: -40%;\\n margin-left: -60px;\\n opacity: 0;\\n transition: opacity 0.3s, visibility 0.3s;\\n}\\n.tooltip:hover .tooltip__text {\\n visibility: visible;\\n opacity: 1;\\n}\\n.messenger__aside {\\n width: 30% !important;\\n display: flex;\\n align-items: center;\\n flex-direction: column;\\n}\\n@media only screen and (max-width: 1200px) {\\n .messenger__aside {\\n min-width: 300px;\\n }\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__aside {\\n border-radius: 20px !important;\\n width: 100% !important;\\n }\\n}\\n.messenger__aside-skeleton {\\n background-color: #232831;\\n border: 0;\\n min-height: 75px;\\n width: 100% !important;\\n}\\n.messenger__aside-empty {\\n width: 100%;\\n margin-top: 40px;\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n align-items: center;\\n}\\n.messenger__aside-empty path {\\n fill: var(--secondary-color);\\n}\\n.messenger__aside-empty p {\\n text-align: center;\\n}\\n.messenger__aside-header {\\n width: 100% !important;\\n padding: 0 15px;\\n}\\n.messenger__scroll-content {\\n overflow-y: auto;\\n margin-bottom: 0.5rem;\\n}\\n.messenger__aside-list {\\n width: 100% !important;\\n padding: 0 10px 10px 10px;\\n height: 100%;\\n overflow-y: auto;\\n overflow-x: hidden;\\n display: flex;\\n flex-direction: column;\\n justify-content: flex-start;\\n align-items: center;\\n}\\n.messenger__aside-list > .ant-ribbon-wrapper {\\n width: 100%;\\n}\\n.messenger__aside-list > .ant-ribbon-wrapper .ant-ribbon {\\n z-index: -1;\\n top: 0;\\n}\\n.messenger__aside-item-container {\\n min-width: 100%;\\n position: relative;\\n}\\n.messenger__active-badge {\\n z-index: 15 !important;\\n}\\n.messenger__aside-protocol {\\n position: absolute;\\n right: 0;\\n top: 0;\\n border-radius: 10px;\\n background-color: var(--secondary-color);\\n padding: 0 0.5rem;\\n font-size: 0.6rem;\\n}\\n.messenger__aside-timer {\\n align-items: center;\\n display: flex;\\n font-size: 12px;\\n}\\n.messenger__aside-list-item {\\n border-radius: 0;\\n cursor: pointer;\\n display: flex;\\n flex-direction: row;\\n height: 72px;\\n padding: 5px 10px;\\n width: 100% !important;\\n}\\n.messenger__aside-list-item:hover {\\n background: #232831;\\n border-radius: 0;\\n}\\n.messenger__aside-list-item--avatar {\\n align-items: center;\\n background: #484c52;\\n border-radius: 50%;\\n color: #00a73e;\\n display: flex;\\n flex: 0 0 auto;\\n font-size: 25px;\\n font-weight: bold;\\n height: 50px;\\n justify-content: center;\\n line-height: 2.2;\\n margin: auto 10px auto 0;\\n text-transform: uppercase;\\n user-select: none;\\n width: 50px;\\n}\\n@media only screen and (max-width: 1200px) {\\n .messenger__aside-list-item--avatar {\\n height: 45px;\\n width: 45px;\\n }\\n}\\n.messenger__aside-list-item--avatar img {\\n height: 54px;\\n width: 54px;\\n border-radius: 50%;\\n}\\n.messenger__aside-list-item--info,\\n.messenger__aside-list-item--additional {\\n display: flex;\\n flex-direction: column;\\n gap: 0.5rem;\\n height: 100%;\\n}\\n.messenger__aside-list-item--info {\\n max-width: 120px;\\n min-width: 120px;\\n}\\n@media only screen and (min-width: 1600px) {\\n .messenger__aside-list-item--info {\\n max-width: 140px;\\n min-width: 140px;\\n }\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__aside-list-item--info {\\n max-width: 65%;\\n min-width: 65%;\\n }\\n}\\n@media only screen and (max-width: 576px) {\\n .messenger__aside-list-item--info {\\n max-width: 120px;\\n min-width: 120px;\\n }\\n}\\n.messenger__aside-list-item--additional {\\n align-items: flex-end;\\n font-size: 11px;\\n margin-left: 5px;\\n width: 100%;\\n}\\n.messenger__aside-list-item--unread {\\n background-color: #00a73e;\\n border-radius: 50%;\\n width: 20px;\\n height: 20px;\\n text-align: center;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.messenger__aside-list-item--title,\\n.messenger__aside-list-item--description {\\n line-height: 1;\\n overflow: hidden;\\n margin: 0;\\n max-width: 160px;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n width: 100%;\\n}\\n.messenger__aside-list-item--title {\\n font-weight: bold;\\n font-size: 14px;\\n}\\n.messenger__aside-list-item--description {\\n font-size: 12px;\\n}\\n.messenger__messages {\\n width: 70% !important;\\n display: flex;\\n flex-direction: column;\\n justify-content: space-evenly;\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__messages {\\n width: 100% !important;\\n }\\n}\\n.messenger__messages-header,\\n.messenger__messages-send {\\n padding: 5px;\\n min-height: 10%;\\n width: 100%;\\n}\\n.messenger__messages-header {\\n border-radius: 0 20px 0 0;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: space-between;\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__messages-header {\\n border-radius: 20px 20px 0 0;\\n }\\n}\\n.messenger__messages-container {\\n max-height: 80%;\\n height: 100%;\\n padding: 0 24px;\\n overflow: auto;\\n overflow-x: hidden;\\n scroll-behavior: auto;\\n background-color: #dddddd;\\n}\\n.messenger__messages-container--empty {\\n width: 100%;\\n height: 100%;\\n border-radius: 0 20px 20px 0;\\n background-color: #dddddd;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n}\\n.messenger__messages-container--empty path {\\n fill: #00a73e;\\n}\\n.messenger__messages-container--empty p {\\n text-align: center;\\n margin-top: 24px;\\n}\\n.messenger__messages-loading {\\n width: 100%;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n margin-top: 10px;\\n}\\n.messenger__messages-loading div {\\n animation: spin 1s infinite linear;\\n border-left: 2px solid var(--secondary-color);\\n border-radius: 50%;\\n height: 25px;\\n margin-bottom: 10px;\\n width: 25px;\\n}\\n.messenger__messages-row--sender,\\n.messenger__messages-row--received,\\n.messenger__messages-row--system {\\n width: 100%;\\n height: fit-content;\\n margin: 10px 0;\\n display: flex;\\n align-items: center;\\n}\\n.messenger__messages-row--sender {\\n justify-content: flex-end;\\n}\\n.messenger__messages-row--received {\\n justify-content: flex-start;\\n}\\n.messenger__messages-row--system {\\n justify-content: center;\\n}\\n.messenger__messages-received,\\n.messenger__messages-sender {\\n min-width: 75px;\\n width: fit-content;\\n padding: 10px;\\n}\\n.messenger__messages-received > span,\\n.messenger__messages-sender > span {\\n color: var(--secondary-color);\\n overflow-wrap: break-word;\\n word-break: break-word;\\n width: 200px;\\n}\\n.messenger__messages-received {\\n max-width: 500px;\\n background-color: #707070;\\n border-radius: 12px 12px 12px 0;\\n}\\n.messenger__messages-received--system {\\n border-radius: 12px;\\n}\\n.messenger__messages-sender {\\n max-width: 450px;\\n margin-top: -2px;\\n background-color: #00a73e;\\n border-radius: 12px 12px 0 12px;\\n}\\n.messenger__message-title {\\n white-space: nowrap;\\n overflow: hidden;\\n max-width: 100%;\\n display: block;\\n line-height: 1;\\n padding: 0;\\n margin: 0 0 3px;\\n justify-content: flex-end;\\n font-size: 13px;\\n color: var(--secondary-color);\\n font-weight: bold;\\n filter: opacity(0.7);\\n font-weight: 700;\\n}\\n.messenger__message {\\n padding: 0;\\n margin: 0;\\n white-space: pre-wrap;\\n line-height: 1.2;\\n}\\n.messenger__message--file {\\n cursor: pointer;\\n}\\n.messenger__message--file img {\\n object-fit: scale-down;\\n}\\n.messenger__message--bottom {\\n width: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: flex-end;\\n gap: 5px;\\n margin-top: 5px;\\n}\\n.messenger__message--date {\\n font-size: 11.5px;\\n padding: 0;\\n margin-top: 5px;\\n margin-bottom: 0;\\n margin-right: 0;\\n text-align: right;\\n line-height: 14px;\\n}\\n.messenger__message-empty {\\n width: 100%;\\n margin-top: 40px;\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n align-items: center;\\n}\\n.messenger__message-empty p {\\n text-align: center;\\n}\\n@media only screen and (max-width: 576px) {\\n .messenger__message-avatar {\\n display: none;\\n }\\n}\\n.messenger__messages-send {\\n border-radius: 0 0 20px 0;\\n border-top: 0;\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__messages-send {\\n border-radius: 0 0 20px 20px;\\n }\\n}\\n.messenger__messages-send--form {\\n align-items: center;\\n display: flex;\\n gap: 10px;\\n width: 100%;\\n}\\n.messenger__messages-send__input {\\n border: 0;\\n border-radius: 12px;\\n display: flex;\\n flex: 1 1 auto;\\n height: 50px;\\n line-height: 26px;\\n max-height: 90px;\\n outline: none;\\n overflow-y: auto;\\n padding: 10px 12px 9px;\\n resize: none;\\n width: 90%;\\n}\\n.messenger__messages-send__input--disabled {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.messenger__messages-send__input::placeholder {\\n color: #aaaaaa;\\n}\\n.messenger__messages-send__input-container {\\n align-items: center;\\n border-radius: 12px;\\n display: flex;\\n flex: 1 1 auto;\\n}\\n.messenger__messages-send__button {\\n height: 45px !important;\\n width: 45px !important;\\n border-radius: 50%;\\n border: none;\\n outline: none;\\n cursor: pointer;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.messenger__messages-send__button--disabled {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.messenger__messages-send__button:hover {\\n opacity: 0.7;\\n transition: 200ms;\\n}\\n.messenger__messages-send--file {\\n display: none;\\n}\\n.messenger__messages-send__attach {\\n cursor: pointer;\\n width: 40px;\\n}\\n.messenger__messages-send__attach--disabled {\\n cursor: not-allowed;\\n}\\n.messenger__new-chat-form {\\n overflow-y: scroll;\\n border-radius: 0 20px 20px 0;\\n height: 100%;\\n padding: 1rem;\\n}\\n@media only screen and (max-width: 768px) {\\n .messenger__new-chat-form {\\n border-radius: 20px !important;\\n }\\n}\\n.messenger__new-chat-form-header {\\n display: flex;\\n justify-content: space-between;\\n margin: 1rem 0;\\n}\\n.messenger__new-chat-form-title {\\n color: #476077;\\n margin-right: 1rem;\\n}\\n.messenger__new-chat-form-close {\\n background: none;\\n border: none;\\n cursor: pointer;\\n}\\n.messenger__new-chat-fields,\\n.messenger__disclaimer {\\n margin: 0 1rem;\\n}\\n.messenger__disclaimer {\\n border: solid 1px;\\n border-radius: 10px;\\n padding: 0.8rem;\\n margin-bottom: 1rem;\\n}\\n.messenger__new-chat-form-send {\\n border: none;\\n border-radius: 30px;\\n cursor: pointer;\\n font-weight: bolder;\\n margin: 25px 0;\\n padding: 0.5rem;\\n}\\n.messenger__new-chat-form-send:hover {\\n opacity: 0.9;\\n}\\n.messenger__new-chat-form-send--disabled {\\n cursor: not-allowed;\\n background-color: #ccc;\\n}\\n.messenger__buttons-container {\\n display: flex;\\n flex-direction: column;\\n padding-top: 1rem;\\n width: 100%;\\n}\\n.messenger__chat-button {\\n border: none;\\n border-radius: 30px;\\n color: var(--secondary-color);\\n cursor: pointer;\\n font-size: 1rem;\\n font-weight: bold;\\n margin: 0.5rem 1rem;\\n padding: 0.5rem;\\n}\\n.messenger__chat-button--disabled {\\n cursor: not-allowed;\\n}\\n.messenger__input-button {\\n border: none;\\n border-radius: 30px;\\n color: var(--secondary-color);\\n font-size: 1rem;\\n font-weight: bold;\\n margin: 0.5rem 1rem;\\n padding: 0.5rem;\\n}\\n.messenger__input-button-label {\\n color: var(--secondary-color);\\n font-weight: bold;\\n margin: 0rem 1rem;\\n}\\n.messenger__input-button::-webkit-calendar-picker-indicator {\\n filter: invert(1);\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__mobile-hide {\\n display: none !important;\\n }\\n}\\n.styles-module_wrapper__1I_qj {\\n z-index: 60 !important;\\n background-color: rgba(0, 0, 0, 0.7) !important;\\n}\\n*,\\n::after,\\n::before {\\n padding: 0;\\n margin: 0;\\n}\\n:root {\\n --secondary-color: var(--secondary-color);\\n}\\n@keyframes spin {\\n 0% {\\n transform: rotate(0deg);\\n }\\n 100% {\\n transform: rotate(360deg);\\n }\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/app/Messenger/components/ImagesContainer/ImagesContainer.less\",\"webpack://./src/styles/index.less\",\"webpack://./src/app/Messenger/components/Select/Select.less\",\"webpack://./src/app/Messenger/components/TextArea/Textarea.less\",\"webpack://./src/app/Messenger/components/InputFile/inputFile.less\",\"webpack://./src/app/Messenger/components/SearchInput/SearchInput.less\",\"webpack://./src/app/Messenger/components/ChatTabs/ChatTabs.less\",\"webpack://./src/app/Messenger/components/DocMessage/DocMessage.less\",\"webpack://./src/app/Messenger/components/Tooltip/Tooltip.less\",\"webpack://./src/app/Messenger/views/Messenger.less\",\"webpack://./src/styles/abstracts/mixins.less\",\"webpack://./src/styles/base/base.less\",\"webpack://./src/styles/abstracts/variables.less\",\"webpack://./src/styles/abstracts/animations.less\"],\"names\":[],\"mappings\":\"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\",\"sourcesContent\":[\".images-container {\\n width: 100%;\\n height: 90%;\\n border: 2px solid @secondary-bg-color-chat;\\n background-color: @component-background;\\n border-bottom: none;\\n border-radius: 0 @border-radius 0 0;\\n @media @tab-md {\\n border-radius: @border-radius @border-radius 0 0 !important;\\n }\\n\\n &__close {\\n width: 100%;\\n position: relative;\\n margin-top: 15px;\\n display: flex;\\n justify-content: flex-end;\\n align-items: center;\\n\\n &--icon {\\n width: 32px;\\n height: 32px;\\n cursor: pointer;\\n background-color: transparent;\\n outline: none;\\n border: none;\\n\\n &:hover {\\n opacity: 75%;\\n transition: 200ms;\\n }\\n\\n &::before,\\n &::after {\\n position: absolute;\\n right: 25px;\\n top: 0;\\n content: ' ';\\n height: 33px;\\n width: 2px;\\n background-color: red;\\n }\\n\\n &:after {\\n transform: rotate(45deg);\\n }\\n\\n &:before {\\n transform: rotate(-45deg);\\n }\\n }\\n }\\n\\n &__container {\\n width: 100%;\\n height: 100%;\\n\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n color: @title-form-color;\\n }\\n\\n &__image {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n padding: 0 10px;\\n max-width: 700px;\\n max-height: 300px;\\n }\\n\\n &__title-img {\\n width: 100%;\\n text-align: center;\\n word-wrap: break-word;\\n }\\n}\\n\",\".images-container {\\n width: 100%;\\n height: 90%;\\n border: 2px solid #484c52;\\n background-color: #232831;\\n border-bottom: none;\\n border-radius: 0 20px 0 0;\\n}\\n@media only screen and (max-width: 768px) {\\n .images-container {\\n border-radius: 20px 20px 0 0 !important;\\n }\\n}\\n.images-container__close {\\n width: 100%;\\n position: relative;\\n margin-top: 15px;\\n display: flex;\\n justify-content: flex-end;\\n align-items: center;\\n}\\n.images-container__close--icon {\\n width: 32px;\\n height: 32px;\\n cursor: pointer;\\n background-color: transparent;\\n outline: none;\\n border: none;\\n}\\n.images-container__close--icon:hover {\\n opacity: 75%;\\n transition: 200ms;\\n}\\n.images-container__close--icon::before,\\n.images-container__close--icon::after {\\n position: absolute;\\n right: 25px;\\n top: 0;\\n content: ' ';\\n height: 33px;\\n width: 2px;\\n background-color: red;\\n}\\n.images-container__close--icon:after {\\n transform: rotate(45deg);\\n}\\n.images-container__close--icon:before {\\n transform: rotate(-45deg);\\n}\\n.images-container__container {\\n width: 100%;\\n height: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n color: #476077;\\n}\\n.images-container__image {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n padding: 0 10px;\\n max-width: 700px;\\n max-height: 300px;\\n}\\n.images-container__title-img {\\n width: 100%;\\n text-align: center;\\n word-wrap: break-word;\\n}\\n.form-select {\\n margin-bottom: 1rem;\\n width: 100%;\\n}\\n.form-select__label {\\n color: #476077;\\n font-weight: bold;\\n margin: 0.5rem;\\n}\\n.form-select__input {\\n border: 1.5px solid hsl(0, 0%, 80%);\\n border-radius: 4px;\\n margin-top: 0.5rem;\\n padding: 8px 8px;\\n width: 100%;\\n}\\n.form-select__input:focus {\\n outline: #2684ff 2px solid !important;\\n}\\n.text-area {\\n margin-bottom: 1rem;\\n width: 100%;\\n}\\n.text-area__label {\\n color: #476077;\\n font-weight: bold;\\n margin: 0.5rem;\\n}\\n.text-area__input {\\n border: 1.5px solid hsl(0, 0%, 80%);\\n border-radius: 4px;\\n margin-top: 0.5rem;\\n padding: 4px 8px;\\n width: 100%;\\n}\\n.text-area__input:focus {\\n outline: #2684ff 2px solid !important;\\n}\\n.file-input {\\n margin-bottom: 1rem;\\n width: 100%;\\n}\\n.file-input__label {\\n color: #476077;\\n font-weight: bold;\\n margin: 0.5rem;\\n}\\n.file-input__container {\\n align-items: center;\\n background-color: var(--secondary-color);\\n border-radius: 10px;\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n margin-top: 0.5rem;\\n padding: 1rem;\\n width: 100%;\\n}\\n.file-input__button {\\n border: none;\\n border-radius: 30px;\\n color: var(--secondary-color);\\n cursor: pointer;\\n font-size: 1rem;\\n font-weight: bold;\\n margin: 0.5rem 1rem;\\n padding: 0.5rem;\\n}\\n.file-input__list {\\n align-items: center;\\n background-color: var(--secondary-color);\\n border-radius: 10px;\\n display: flex;\\n justify-content: space-between;\\n margin: 0.5rem 0;\\n padding: 0.5rem;\\n}\\n.file-input__list--file-name {\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n max-width: 100%;\\n}\\n.file-input__delete {\\n align-items: center;\\n background: transparent;\\n border: none;\\n cursor: pointer;\\n display: flex;\\n justify-content: center;\\n}\\n.input-search {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n width: 100%;\\n margin: 1rem 0;\\n position: relative;\\n}\\n.input-search__select {\\n border-radius: 30px 0 0 30px;\\n padding: 10px;\\n background: transparent;\\n margin-left: 1rem;\\n width: 30%;\\n}\\n.input-search__option {\\n color: black;\\n}\\n.input-search__search {\\n width: 70%;\\n margin-right: 1rem;\\n border-radius: 0 30px 30px 0;\\n padding: 9px;\\n color: var(--secondary-color);\\n border: var(--secondary-color) 1px solid;\\n background: transparent;\\n position: relative;\\n}\\n.input-search__search::placeholder {\\n color: var(--secondary-color);\\n opacity: 60%;\\n}\\n.input-search__icon {\\n border: none;\\n background: transparent;\\n position: absolute;\\n right: 2rem;\\n display: flex;\\n cursor: pointer;\\n}\\n.chat-tabs {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n}\\n.chat-tabs__button {\\n background: transparent;\\n border: none;\\n border-bottom: 1px solid transparent;\\n cursor: pointer;\\n padding: 0.5rem 1rem;\\n margin-bottom: 0.5rem;\\n}\\n.chat-tabs__button--active {\\n border-bottom: 1px solid var(--secondary-color);\\n transition: 0.5s;\\n}\\n.messenger__messages-row--sender {\\n display: flex;\\n justify-content: flex-end;\\n margin: 10px 0;\\n}\\n.messenger__messages-sender {\\n max-width: 80%;\\n padding: 10px;\\n border-radius: 8px;\\n font-family: 'Arial', sans-serif;\\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\\n}\\n.messenger__file-card {\\n display: flex;\\n align-items: center;\\n background: rgba(0, 0, 0, 0.1);\\n border-radius: 8px;\\n padding: 10px;\\n}\\n.messenger__file-icon {\\n flex-shrink: 0;\\n width: 40px;\\n height: 40px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 4px;\\n margin-right: 10px;\\n}\\n.messenger__file-details {\\n flex-grow: 1;\\n margin-right: 10px;\\n}\\n.messenger__file-name {\\n font-weight: bold;\\n font-size: 14px;\\n margin: 0;\\n}\\n.messenger__file-info {\\n font-size: 12px;\\n color: rgba(255, 255, 255, 0.8);\\n}\\n.messenger__file-download {\\n font-size: 12px;\\n text-decoration: none;\\n}\\n.messenger__file-download:hover {\\n text-decoration: underline;\\n}\\n.messenger__message--bottom {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-top: 5px;\\n}\\n.messenger__message--date {\\n font-size: 12px;\\n color: rgba(255, 255, 255, 0.8);\\n}\\n.tooltip {\\n position: relative;\\n display: inline-block;\\n}\\n.tooltip__text {\\n visibility: hidden;\\n background-color: black;\\n color: #fff;\\n text-align: center;\\n border-radius: 5px;\\n padding: 5px;\\n position: absolute;\\n z-index: 1;\\n bottom: 125%;\\n left: -40%;\\n margin-left: -60px;\\n opacity: 0;\\n transition: opacity 0.3s, visibility 0.3s;\\n}\\n.tooltip:hover .tooltip__text {\\n visibility: visible;\\n opacity: 1;\\n}\\n.messenger__aside {\\n width: 30% !important;\\n display: flex;\\n align-items: center;\\n flex-direction: column;\\n}\\n@media only screen and (max-width: 1200px) {\\n .messenger__aside {\\n min-width: 300px;\\n }\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__aside {\\n border-radius: 20px !important;\\n width: 100% !important;\\n }\\n}\\n.messenger__aside-skeleton {\\n background-color: #232831;\\n border: 0;\\n min-height: 75px;\\n width: 100% !important;\\n}\\n.messenger__aside-empty {\\n width: 100%;\\n margin-top: 40px;\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n align-items: center;\\n}\\n.messenger__aside-empty path {\\n fill: var(--secondary-color);\\n}\\n.messenger__aside-empty p {\\n text-align: center;\\n}\\n.messenger__aside-header {\\n width: 100% !important;\\n padding: 0 15px;\\n}\\n.messenger__scroll-content {\\n overflow-y: auto;\\n margin-bottom: 0.5rem;\\n}\\n.messenger__aside-list {\\n width: 100% !important;\\n padding: 0 10px 10px 10px;\\n height: 100%;\\n overflow-y: auto;\\n overflow-x: hidden;\\n display: flex;\\n flex-direction: column;\\n justify-content: flex-start;\\n align-items: center;\\n}\\n.messenger__aside-list > .ant-ribbon-wrapper {\\n width: 100%;\\n}\\n.messenger__aside-list > .ant-ribbon-wrapper .ant-ribbon {\\n z-index: -1;\\n top: 0;\\n}\\n.messenger__aside-item-container {\\n min-width: 100%;\\n position: relative;\\n}\\n.messenger__active-badge {\\n z-index: 15 !important;\\n}\\n.messenger__aside-protocol {\\n position: absolute;\\n right: 0;\\n top: 0;\\n border-radius: 10px;\\n background-color: var(--secondary-color);\\n padding: 0 0.5rem;\\n font-size: 0.6rem;\\n}\\n.messenger__aside-timer {\\n align-items: center;\\n display: flex;\\n font-size: 12px;\\n}\\n.messenger__aside-list-item {\\n border-radius: 0;\\n cursor: pointer;\\n display: flex;\\n flex-direction: row;\\n height: 72px;\\n padding: 5px 10px;\\n width: 100% !important;\\n}\\n.messenger__aside-list-item:hover {\\n background: #232831;\\n border-radius: 0;\\n}\\n.messenger__aside-list-item--avatar {\\n align-items: center;\\n background: #484c52;\\n border-radius: 50%;\\n color: #00a73e;\\n display: flex;\\n flex: 0 0 auto;\\n font-size: 25px;\\n font-weight: bold;\\n height: 50px;\\n justify-content: center;\\n line-height: 2.2;\\n margin: auto 10px auto 0;\\n text-transform: uppercase;\\n user-select: none;\\n width: 50px;\\n}\\n@media only screen and (max-width: 1200px) {\\n .messenger__aside-list-item--avatar {\\n height: 45px;\\n width: 45px;\\n }\\n}\\n.messenger__aside-list-item--avatar img {\\n height: 54px;\\n width: 54px;\\n border-radius: 50%;\\n}\\n.messenger__aside-list-item--info,\\n.messenger__aside-list-item--additional {\\n display: flex;\\n flex-direction: column;\\n gap: 0.5rem;\\n height: 100%;\\n}\\n.messenger__aside-list-item--info {\\n max-width: 120px;\\n min-width: 120px;\\n}\\n@media only screen and (min-width: 1600px) {\\n .messenger__aside-list-item--info {\\n max-width: 140px;\\n min-width: 140px;\\n }\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__aside-list-item--info {\\n max-width: 65%;\\n min-width: 65%;\\n }\\n}\\n@media only screen and (max-width: 576px) {\\n .messenger__aside-list-item--info {\\n max-width: 120px;\\n min-width: 120px;\\n }\\n}\\n.messenger__aside-list-item--additional {\\n align-items: flex-end;\\n font-size: 11px;\\n margin-left: 5px;\\n width: 100%;\\n}\\n.messenger__aside-list-item--unread {\\n background-color: #00a73e;\\n border-radius: 50%;\\n width: 20px;\\n height: 20px;\\n text-align: center;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.messenger__aside-list-item--title,\\n.messenger__aside-list-item--description {\\n line-height: 1;\\n overflow: hidden;\\n margin: 0;\\n max-width: 160px;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n width: 100%;\\n}\\n.messenger__aside-list-item--title {\\n font-weight: bold;\\n font-size: 14px;\\n}\\n.messenger__aside-list-item--description {\\n font-size: 12px;\\n}\\n.messenger__messages {\\n width: 70% !important;\\n display: flex;\\n flex-direction: column;\\n justify-content: space-evenly;\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__messages {\\n width: 100% !important;\\n }\\n}\\n.messenger__messages-header,\\n.messenger__messages-send {\\n padding: 5px;\\n min-height: 10%;\\n width: 100%;\\n}\\n.messenger__messages-header {\\n border-radius: 0 20px 0 0;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: space-between;\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__messages-header {\\n border-radius: 20px 20px 0 0;\\n }\\n}\\n.messenger__messages-container {\\n max-height: 80%;\\n height: 100%;\\n padding: 0 24px;\\n overflow: auto;\\n overflow-x: hidden;\\n scroll-behavior: auto;\\n background-color: #dddddd;\\n}\\n.messenger__messages-container--empty {\\n width: 100%;\\n height: 100%;\\n border-radius: 0 20px 20px 0;\\n background-color: #dddddd;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n}\\n.messenger__messages-container--empty path {\\n fill: #00a73e;\\n}\\n.messenger__messages-container--empty p {\\n text-align: center;\\n margin-top: 24px;\\n}\\n.messenger__messages-loading {\\n width: 100%;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n margin-top: 10px;\\n}\\n.messenger__messages-loading div {\\n animation: spin 1s infinite linear;\\n border-left: 2px solid var(--secondary-color);\\n border-radius: 50%;\\n height: 25px;\\n margin-bottom: 10px;\\n width: 25px;\\n}\\n.messenger__messages-row--sender,\\n.messenger__messages-row--received,\\n.messenger__messages-row--system {\\n width: 100%;\\n height: fit-content;\\n margin: 10px 0;\\n display: flex;\\n align-items: center;\\n}\\n.messenger__messages-row--sender {\\n justify-content: flex-end;\\n}\\n.messenger__messages-row--received {\\n justify-content: flex-start;\\n}\\n.messenger__messages-row--system {\\n justify-content: center;\\n}\\n.messenger__messages-received,\\n.messenger__messages-sender {\\n min-width: 75px;\\n width: fit-content;\\n padding: 10px;\\n}\\n.messenger__messages-received > span,\\n.messenger__messages-sender > span {\\n color: var(--secondary-color);\\n overflow-wrap: break-word;\\n word-break: break-word;\\n width: 200px;\\n}\\n.messenger__messages-received {\\n max-width: 500px;\\n background-color: #707070;\\n border-radius: 12px 12px 12px 0;\\n}\\n.messenger__messages-received--system {\\n border-radius: 12px;\\n}\\n.messenger__messages-sender {\\n max-width: 450px;\\n margin-top: -2px;\\n background-color: #00a73e;\\n border-radius: 12px 12px 0 12px;\\n}\\n.messenger__message-title {\\n white-space: nowrap;\\n overflow: hidden;\\n max-width: 100%;\\n display: block;\\n line-height: 1;\\n padding: 0;\\n margin: 0 0 3px;\\n justify-content: flex-end;\\n font-size: 13px;\\n color: var(--secondary-color);\\n font-weight: bold;\\n filter: opacity(0.7);\\n font-weight: 700;\\n}\\n.messenger__message {\\n padding: 0;\\n margin: 0;\\n white-space: pre-wrap;\\n line-height: 1.2;\\n}\\n.messenger__message--file {\\n cursor: pointer;\\n}\\n.messenger__message--file img {\\n object-fit: scale-down;\\n}\\n.messenger__message--bottom {\\n width: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: flex-end;\\n gap: 5px;\\n margin-top: 5px;\\n}\\n.messenger__message--date {\\n font-size: 11.5px;\\n padding: 0;\\n margin-top: 5px;\\n margin-bottom: 0;\\n margin-right: 0;\\n text-align: right;\\n line-height: 14px;\\n}\\n.messenger__message-empty {\\n width: 100%;\\n margin-top: 40px;\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n align-items: center;\\n}\\n.messenger__message-empty p {\\n text-align: center;\\n}\\n@media only screen and (max-width: 576px) {\\n .messenger__message-avatar {\\n display: none;\\n }\\n}\\n.messenger__messages-send {\\n border-radius: 0 0 20px 0;\\n border-top: 0;\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__messages-send {\\n border-radius: 0 0 20px 20px;\\n }\\n}\\n.messenger__messages-send--form {\\n align-items: center;\\n display: flex;\\n gap: 10px;\\n width: 100%;\\n}\\n.messenger__messages-send__input {\\n border: 0;\\n border-radius: 12px;\\n display: flex;\\n flex: 1 1 auto;\\n height: 50px;\\n line-height: 26px;\\n max-height: 90px;\\n outline: none;\\n overflow-y: auto;\\n padding: 10px 12px 9px;\\n resize: none;\\n width: 90%;\\n}\\n.messenger__messages-send__input--disabled {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.messenger__messages-send__input::placeholder {\\n color: #aaaaaa;\\n}\\n.messenger__messages-send__input-container {\\n align-items: center;\\n border-radius: 12px;\\n display: flex;\\n flex: 1 1 auto;\\n}\\n.messenger__messages-send__button {\\n height: 45px !important;\\n width: 45px !important;\\n border-radius: 50%;\\n border: none;\\n outline: none;\\n cursor: pointer;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.messenger__messages-send__button--disabled {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.messenger__messages-send__button:hover {\\n opacity: 0.7;\\n transition: 200ms;\\n}\\n.messenger__messages-send--file {\\n display: none;\\n}\\n.messenger__messages-send__attach {\\n cursor: pointer;\\n width: 40px;\\n}\\n.messenger__messages-send__attach--disabled {\\n cursor: not-allowed;\\n}\\n.messenger__new-chat-form {\\n overflow-y: scroll;\\n border-radius: 0 20px 20px 0;\\n height: 100%;\\n padding: 1rem;\\n}\\n@media only screen and (max-width: 768px) {\\n .messenger__new-chat-form {\\n border-radius: 20px !important;\\n }\\n}\\n.messenger__new-chat-form-header {\\n display: flex;\\n justify-content: space-between;\\n margin: 1rem 0;\\n}\\n.messenger__new-chat-form-title {\\n color: #476077;\\n margin-right: 1rem;\\n}\\n.messenger__new-chat-form-close {\\n background: none;\\n border: none;\\n cursor: pointer;\\n}\\n.messenger__new-chat-fields,\\n.messenger__disclaimer {\\n margin: 0 1rem;\\n}\\n.messenger__disclaimer {\\n border: solid 1px;\\n border-radius: 10px;\\n padding: 0.8rem;\\n margin-bottom: 1rem;\\n}\\n.messenger__new-chat-form-send {\\n border: none;\\n border-radius: 30px;\\n cursor: pointer;\\n font-weight: bolder;\\n margin: 25px 0;\\n padding: 0.5rem;\\n}\\n.messenger__new-chat-form-send:hover {\\n opacity: 0.9;\\n}\\n.messenger__new-chat-form-send--disabled {\\n cursor: not-allowed;\\n background-color: #ccc;\\n}\\n.messenger__buttons-container {\\n display: flex;\\n flex-direction: column;\\n padding-top: 1rem;\\n width: 100%;\\n}\\n.messenger__chat-button {\\n border: none;\\n border-radius: 30px;\\n color: var(--secondary-color);\\n cursor: pointer;\\n font-size: 1rem;\\n font-weight: bold;\\n margin: 0.5rem 1rem;\\n padding: 0.5rem;\\n}\\n.messenger__chat-button--disabled {\\n cursor: not-allowed;\\n}\\n.messenger__input-button {\\n border: none;\\n border-radius: 30px;\\n color: var(--secondary-color);\\n font-size: 1rem;\\n font-weight: bold;\\n margin: 0.5rem 1rem;\\n padding: 0.5rem;\\n}\\n.messenger__input-button-label {\\n color: var(--secondary-color);\\n font-weight: bold;\\n margin: 0rem 1rem;\\n}\\n.messenger__input-button::-webkit-calendar-picker-indicator {\\n filter: invert(1);\\n}\\n@media only screen and (max-width: 992px) {\\n .messenger__mobile-hide {\\n display: none !important;\\n }\\n}\\n.styles-module_wrapper__1I_qj {\\n z-index: 60 !important;\\n background-color: rgba(0, 0, 0, 0.7) !important;\\n}\\n*,\\n::after,\\n::before {\\n padding: 0;\\n margin: 0;\\n}\\n:root {\\n --secondary-color: var(--secondary-color);\\n}\\n@keyframes spin {\\n 0% {\\n transform: rotate(0deg);\\n }\\n 100% {\\n transform: rotate(360deg);\\n }\\n}\\n\",\".form-select {\\n margin-bottom: 1rem;\\n width: 100%;\\n\\n &__label {\\n color: @title-form-color;\\n font-weight: bold;\\n margin: 0.5rem;\\n }\\n\\n &__input {\\n border: 1.5px solid hsl(0, 0%, 80%);\\n border-radius: 4px;\\n margin-top: 0.5rem;\\n padding: 8px 8px;\\n width: 100%;\\n\\n &:focus {\\n outline: #2684ff 2px solid !important;\\n }\\n }\\n}\\n\",\".text-area {\\n margin-bottom: 1rem;\\n width: 100%;\\n\\n &__label {\\n color: @title-form-color;\\n font-weight: bold;\\n margin: 0.5rem;\\n }\\n\\n &__input {\\n border: 1.5px solid hsl(0, 0%, 80%);\\n border-radius: 4px;\\n margin-top: 0.5rem;\\n padding: 4px 8px;\\n width: 100%;\\n\\n &:focus {\\n outline: #2684ff 2px solid !important;\\n }\\n }\\n}\\n\",\".file-input {\\n margin-bottom: 1rem;\\n width: 100%;\\n\\n &__label {\\n color: @title-form-color;\\n font-weight: bold;\\n margin: 0.5rem;\\n }\\n\\n &__container {\\n align-items: center;\\n background-color: var(--secondary-color);\\n border-radius: 10px;\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n margin-top: 0.5rem;\\n padding: 1rem;\\n width: 100%;\\n }\\n\\n &__button {\\n border: none;\\n border-radius: 30px;\\n color: var(--secondary-color);\\n cursor: pointer;\\n font-size: 1rem;\\n font-weight: bold;\\n margin: 0.5rem 1rem;\\n padding: 0.5rem;\\n }\\n\\n &__list {\\n align-items: center;\\n background-color: var(--secondary-color);\\n border-radius: 10px;\\n display: flex;\\n justify-content: space-between;\\n margin: 0.5rem 0;\\n padding: 0.5rem;\\n\\n &--file-name {\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n max-width: 100%;\\n }\\n }\\n\\n &__delete {\\n align-items: center;\\n background: transparent;\\n border: none;\\n cursor: pointer;\\n display: flex;\\n justify-content: center;\\n }\\n}\\n\",\".input-search {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n width: 100%;\\n margin: 1rem 0;\\n position: relative;\\n\\n &__select {\\n border-radius: 30px 0 0 30px;\\n padding: 10px;\\n background: transparent;\\n margin-left: 1rem;\\n width: 30%;\\n }\\n\\n &__option {\\n color: black;\\n }\\n\\n &__search {\\n width: 70%;\\n margin-right: 1rem;\\n border-radius: 0 30px 30px 0;\\n padding: 9px;\\n color: var(--secondary-color);\\n border: var(--secondary-color) 1px solid;\\n background: transparent;\\n position: relative;\\n\\n &::placeholder {\\n color: var(--secondary-color);\\n opacity: 60%;\\n }\\n }\\n\\n &__icon {\\n border: none;\\n background: transparent;\\n position: absolute;\\n right: 2rem;\\n display: flex;\\n cursor: pointer;\\n }\\n}\\n\",\".chat-tabs {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n &__button {\\n background: transparent;\\n border: none;\\n border-bottom: 1px solid transparent;\\n cursor: pointer;\\n padding: 0.5rem 1rem;\\n margin-bottom: 0.5rem;\\n\\n &--active {\\n border-bottom: 1px solid var(--secondary-color);\\n transition: 0.5s;\\n }\\n }\\n}\\n\",\".messenger {\\n &__messages-row--sender {\\n display: flex;\\n justify-content: flex-end;\\n margin: 10px 0;\\n }\\n\\n &__messages-sender {\\n max-width: 80%;\\n padding: 10px;\\n border-radius: 8px;\\n font-family: 'Arial', sans-serif;\\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\\n }\\n\\n &__file-card {\\n display: flex;\\n align-items: center;\\n background: rgba(0, 0, 0, 0.1);\\n border-radius: 8px;\\n padding: 10px;\\n }\\n\\n &__file-icon {\\n flex-shrink: 0;\\n width: 40px;\\n height: 40px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 4px;\\n margin-right: 10px;\\n }\\n\\n &__file-details {\\n flex-grow: 1;\\n margin-right: 10px;\\n }\\n\\n &__file-name {\\n font-weight: bold;\\n font-size: 14px;\\n margin: 0;\\n }\\n\\n &__file-info {\\n font-size: 12px;\\n color: rgba(255, 255, 255, 0.8);\\n }\\n\\n &__file-download {\\n font-size: 12px;\\n text-decoration: none;\\n }\\n\\n &__file-download:hover {\\n text-decoration: underline;\\n }\\n\\n &__message--bottom {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-top: 5px;\\n }\\n\\n &__message--date {\\n font-size: 12px;\\n color: rgba(255, 255, 255, 0.8);\\n }\\n}\\n\",\".tooltip {\\n position: relative;\\n display: inline-block;\\n}\\n\\n.tooltip__text {\\n visibility: hidden;\\n background-color: black;\\n color: #fff;\\n text-align: center;\\n border-radius: 5px;\\n padding: 5px;\\n position: absolute;\\n z-index: 1;\\n bottom: 125%;\\n left: -40%;\\n margin-left: -60px;\\n opacity: 0;\\n transition:\\n opacity 0.3s,\\n visibility 0.3s;\\n}\\n\\n.tooltip:hover .tooltip__text {\\n visibility: visible;\\n opacity: 1;\\n}\\n\",\"@import '../components/ImagesContainer/ImagesContainer';\\n@import '../components/Select/Select.less';\\n@import '../components/TextArea/Textarea.less';\\n@import '../components/InputFile/inputFile.less';\\n@import '../components/SearchInput/SearchInput.less';\\n@import '../components/ChatTabs/ChatTabs.less';\\n@import '../components/DocMessage/DocMessage.less';\\n@import '../components/Tooltip/Tooltip.less';\\n\\n@buttons-container-height: 10rem;\\n\\n.messenger {\\n &__aside {\\n width: 30% !important;\\n\\n @media @tab-xl {\\n min-width: 300px;\\n }\\n\\n @media @tab-lg {\\n border-radius: 20px !important;\\n width: 100% !important;\\n }\\n\\n display: flex;\\n align-items: center;\\n flex-direction: column;\\n }\\n\\n &__aside-skeleton {\\n background-color: @component-background;\\n border: 0;\\n min-height: 75px;\\n width: 100% !important;\\n }\\n\\n &__aside-empty {\\n width: 100%;\\n margin-top: 40px;\\n\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n align-items: center;\\n\\n & path {\\n fill: var(--secondary-color);\\n }\\n\\n & p {\\n text-align: center;\\n }\\n }\\n\\n &__aside-header {\\n width: 100% !important;\\n padding: 0 15px;\\n }\\n\\n &__scroll-content {\\n overflow-y: auto;\\n margin-bottom: 0.5rem;\\n }\\n\\n &__aside-list {\\n width: 100% !important;\\n padding: 0 10px 10px 10px;\\n\\n height: 100%;\\n overflow-y: auto;\\n overflow-x: hidden;\\n\\n display: flex;\\n flex-direction: column;\\n justify-content: flex-start;\\n align-items: center;\\n\\n & > .ant-ribbon-wrapper {\\n width: 100%;\\n\\n & .ant-ribbon {\\n z-index: -1;\\n top: 0;\\n }\\n }\\n }\\n\\n &__aside-item-container {\\n min-width: 100%;\\n position: relative;\\n }\\n\\n &__active-badge {\\n z-index: 15 !important;\\n }\\n\\n &__aside-protocol {\\n position: absolute;\\n right: 0;\\n top: 0;\\n border-radius: 10px;\\n background-color: var(--secondary-color);\\n padding: 0 0.5rem;\\n font-size: 0.6rem;\\n }\\n\\n &__aside-timer {\\n align-items: center;\\n display: flex;\\n font-size: 12px;\\n }\\n\\n &__aside-list-item {\\n border-radius: 0;\\n cursor: pointer;\\n display: flex;\\n flex-direction: row;\\n height: 72px;\\n padding: 5px 10px;\\n width: 100% !important;\\n\\n &:hover {\\n background: @component-background;\\n border-radius: 0;\\n }\\n\\n &--avatar {\\n align-items: center;\\n background: @secondary-bg-color-chat;\\n border-radius: 50%;\\n color: @messenger-primary-color;\\n display: flex;\\n flex: 0 0 auto;\\n font-size: 25px;\\n font-weight: bold;\\n height: 50px;\\n justify-content: center;\\n line-height: 2.2;\\n margin: auto 10px auto 0;\\n text-transform: uppercase;\\n user-select: none;\\n width: 50px;\\n\\n @media @tab-xl {\\n height: 45px;\\n width: 45px;\\n }\\n\\n & img {\\n height: 54px;\\n width: 54px;\\n border-radius: 50%;\\n }\\n }\\n\\n &--info,\\n &--additional {\\n display: flex;\\n flex-direction: column;\\n gap: 0.5rem;\\n height: 100%;\\n }\\n\\n &--info {\\n max-width: 120px;\\n min-width: 120px;\\n\\n @media @desktop-xxl {\\n max-width: 140px;\\n min-width: 140px;\\n }\\n\\n @media @tab-lg {\\n max-width: 65%;\\n min-width: 65%;\\n }\\n\\n @media @phone-sm {\\n max-width: 120px;\\n min-width: 120px;\\n }\\n }\\n\\n &--additional {\\n align-items: flex-end;\\n font-size: 11px;\\n margin-left: 5px;\\n width: 100%;\\n }\\n\\n &--unread {\\n background-color: @messenger-primary-color;\\n border-radius: 50%;\\n width: 20px;\\n height: 20px;\\n text-align: center;\\n\\n .flex-full-center();\\n }\\n\\n &--title,\\n &--description {\\n line-height: 1;\\n overflow: hidden;\\n margin: 0;\\n max-width: 160px;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n width: 100%;\\n }\\n\\n &--title {\\n font-weight: bold;\\n font-size: 14px;\\n }\\n\\n &--description {\\n font-size: 12px;\\n }\\n }\\n\\n &__messages {\\n width: 70% !important;\\n\\n display: flex;\\n flex-direction: column;\\n justify-content: space-evenly;\\n\\n @media @tab-lg {\\n width: 100% !important;\\n }\\n }\\n\\n &__messages-header,\\n &__messages-send {\\n padding: 5px;\\n min-height: 10%;\\n width: 100%;\\n }\\n\\n &__messages-header {\\n @media @tab-lg {\\n border-radius: @border-radius @border-radius 0 0;\\n }\\n\\n border-radius: 0 @border-radius 0 0;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: space-between;\\n }\\n\\n &__messages-container {\\n max-height: 80%;\\n height: 100%;\\n padding: 0 24px;\\n overflow: auto;\\n overflow-x: hidden;\\n scroll-behavior: auto;\\n background-color: @card-background;\\n\\n &--empty {\\n width: 100%;\\n height: 100%;\\n border-radius: 0 @border-radius @border-radius 0;\\n background-color: @card-background;\\n\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n\\n & path {\\n fill: @messenger-primary-color;\\n }\\n\\n & p {\\n text-align: center;\\n margin-top: 24px;\\n }\\n }\\n }\\n\\n &__messages-loading {\\n width: 100%;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n margin-top: 10px;\\n\\n & div {\\n animation: spin 1s infinite linear;\\n border-left: 2px solid var(--secondary-color);\\n border-radius: 50%;\\n height: 25px;\\n margin-bottom: 10px;\\n width: 25px;\\n }\\n }\\n\\n &__messages-row--sender,\\n &__messages-row--received,\\n &__messages-row--system {\\n width: 100%;\\n height: fit-content;\\n margin: 10px 0;\\n display: flex;\\n align-items: center;\\n }\\n\\n &__messages-row--sender {\\n justify-content: flex-end;\\n }\\n\\n &__messages-row--received {\\n justify-content: flex-start;\\n }\\n\\n &__messages-row--system {\\n justify-content: center;\\n }\\n\\n &__messages-received,\\n &__messages-sender {\\n min-width: 75px;\\n width: fit-content;\\n padding: 10px;\\n\\n & > span {\\n color: var(--secondary-color);\\n overflow-wrap: break-word;\\n word-break: break-word;\\n width: 200px;\\n }\\n }\\n\\n &__messages-received {\\n max-width: 500px;\\n background-color: @grey-2;\\n border-radius: 12px 12px 12px 0;\\n\\n &--system {\\n border-radius: 12px;\\n }\\n }\\n\\n &__messages-sender {\\n max-width: 450px;\\n margin-top: -2px;\\n background-color: @messenger-primary-color;\\n border-radius: 12px 12px 0 12px;\\n }\\n\\n &__message-title {\\n max-width: 100%;\\n white-space: nowrap;\\n overflow: hidden;\\n max-width: 100%;\\n display: block;\\n\\n line-height: 1;\\n padding: 0;\\n margin: 0 0 3px;\\n justify-content: flex-end;\\n font-size: 13px;\\n color: var(--secondary-color);\\n font-weight: bold;\\n filter: opacity(0.7);\\n font-weight: 700;\\n }\\n\\n &__message {\\n padding: 0;\\n margin: 0;\\n white-space: pre-wrap;\\n line-height: 1.2;\\n\\n &--file {\\n cursor: pointer;\\n\\n img {\\n object-fit: scale-down;\\n }\\n }\\n\\n &--bottom {\\n width: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: flex-end;\\n gap: 5px;\\n margin-top: 5px;\\n }\\n\\n &--date {\\n font-size: 11.5px;\\n padding: 0;\\n margin-top: 5px;\\n margin-bottom: 0;\\n margin-right: 0;\\n text-align: right;\\n line-height: 14px;\\n }\\n }\\n\\n &__message-empty {\\n width: 100%;\\n margin-top: 40px;\\n\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n align-items: center;\\n\\n & p {\\n text-align: center;\\n }\\n }\\n\\n &__message-avatar {\\n @media @phone-sm {\\n display: none;\\n }\\n }\\n\\n &__messages-send {\\n border-radius: 0 0 @border-radius 0;\\n border-top: 0;\\n\\n @media @tab-lg {\\n border-radius: 0 0 @border-radius @border-radius;\\n }\\n\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n\\n &--form {\\n align-items: center;\\n display: flex;\\n gap: 10px;\\n width: 100%;\\n }\\n\\n &__input {\\n border: 0;\\n border-radius: 12px;\\n display: flex;\\n flex: 1 1 auto;\\n height: 50px;\\n line-height: 26px;\\n max-height: 90px;\\n outline: none;\\n overflow-y: auto;\\n padding: 10px 12px 9px;\\n resize: none;\\n width: 90%;\\n\\n &--disabled {\\n cursor: not-allowed;\\n opacity: 0.5;\\n }\\n\\n &::placeholder {\\n color: @border-color;\\n }\\n }\\n\\n &__input-container {\\n align-items: center;\\n border-radius: 12px;\\n display: flex;\\n flex: 1 1 auto;\\n }\\n\\n &__button {\\n height: 45px !important;\\n width: 45px !important;\\n border-radius: 50%;\\n border: none;\\n outline: none;\\n cursor: pointer;\\n\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n\\n &--disabled {\\n cursor: not-allowed;\\n opacity: 0.5;\\n }\\n\\n &:hover {\\n opacity: 0.7;\\n transition: 200ms;\\n }\\n }\\n\\n &--file {\\n display: none;\\n }\\n\\n &__attach {\\n cursor: pointer;\\n width: 40px;\\n\\n &--disabled {\\n cursor: not-allowed;\\n }\\n }\\n }\\n\\n &__new-chat-form {\\n overflow-y: scroll;\\n border-radius: 0 20px 20px 0;\\n height: 100%;\\n padding: 1rem;\\n\\n @media @tab-md {\\n border-radius: 20px !important;\\n }\\n }\\n\\n &__new-chat-form-header {\\n display: flex;\\n justify-content: space-between;\\n margin: 1rem 0;\\n }\\n\\n &__new-chat-form-title {\\n color: @title-form-color;\\n margin-right: 1rem;\\n }\\n\\n &__new-chat-form-close {\\n background: none;\\n border: none;\\n cursor: pointer;\\n }\\n\\n &__new-chat-fields,\\n &__disclaimer {\\n margin: 0 1rem;\\n }\\n\\n &__disclaimer {\\n border: solid 1px;\\n border-radius: 10px;\\n padding: 0.8rem;\\n margin-bottom: 1rem;\\n }\\n\\n &__new-chat-form-send {\\n border: none;\\n border-radius: 30px;\\n cursor: pointer;\\n font-weight: bolder;\\n margin: 25px 0;\\n padding: 0.5rem;\\n\\n &:hover {\\n opacity: 0.9;\\n }\\n &--disabled {\\n cursor: not-allowed;\\n background-color: #ccc;\\n }\\n }\\n\\n &__buttons-container {\\n display: flex;\\n flex-direction: column;\\n padding-top: 1rem;\\n width: 100%;\\n }\\n\\n &__chat-button {\\n border: none;\\n border-radius: 30px;\\n color: var(--secondary-color);\\n cursor: pointer;\\n font-size: 1rem;\\n font-weight: bold;\\n margin: 0.5rem 1rem;\\n padding: 0.5rem;\\n }\\n\\n &__chat-button--disabled {\\n cursor: not-allowed;\\n }\\n\\n &__input-button {\\n border: none;\\n border-radius: 30px;\\n color: var(--secondary-color);\\n font-size: 1rem;\\n font-weight: bold;\\n margin: 0.5rem 1rem;\\n padding: 0.5rem;\\n }\\n\\n &__input-button-label {\\n color: var(--secondary-color);\\n font-weight: bold;\\n margin: 0rem 1rem;\\n }\\n\\n &__input-button::-webkit-calendar-picker-indicator {\\n filter: invert(1);\\n }\\n\\n &__mobile-hide {\\n @media @tab-lg {\\n display: none !important;\\n }\\n }\\n}\\n\\n.styles-module_wrapper__1I_qj {\\n z-index: 60 !important;\\n background-color: rgba(0, 0, 0, 70%) !important;\\n}\\n\",\".flex-full-center() {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n\",\"*,\\n::after,\\n::before {\\n padding: 0;\\n margin: 0;\\n}\\n\",\"// ANTD MEDIA QUERIES\\n@phone-xs: ~'only screen and (max-width: 480px)';\\n@phone-sm: ~'only screen and (max-width: 576px)';\\n@tab-md: ~'only screen and (max-width: 768px)';\\n@tab-lg: ~'only screen and (max-width: 992px)';\\n@tab-lg-min: ~'only screen and (min-width: 992px)';\\n@tab-xl: ~'only screen and (max-width: 1200px)';\\n\\n// [1200 - 1600] - normal style //\\n@desktop-xxl: ~'only screen and (min-width: 1600px)';\\n\\n@grey-1: #94989d;\\n@grey-2: #707070;\\n@border-color: #aaaaaa;\\n@messenger-primary-color: #00a73e;\\n@messenger-messages-bg: #eeeeee;\\n@secondary-bg-color-chat: #484c52;\\n@card-background: #dddddd;\\n@upload-file-icon-color: #8696a0;\\n@border-radius: 20px;\\n@body-background: blue;\\n@component-background: #232831;\\n@full-content-height: calc(100vh - 23px);\\n@title-form-color: #476077;\\n@border-radius: 20px;\\n@document-message-bg: #34c759;\\n@text-color-white: #ffffff;\\n\\n:root {\\n --secondary-color: var(--secondary-color);\\n}\\n\",\"@keyframes spin {\\n 0% {\\n transform: rotate(0deg);\\n }\\n 100% {\\n transform: rotate(360deg);\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","!function(e,o){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=o(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],o):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_pt_br=o(e.dayjs)}(this,(function(e){\"use strict\";function o(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var a=o(e),s={name:\"pt-br\",weekdays:\"domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado\".split(\"_\"),weekdaysShort:\"dom_seg_ter_qua_qui_sex_sáb\".split(\"_\"),weekdaysMin:\"Do_2ª_3ª_4ª_5ª_6ª_Sá\".split(\"_\"),months:\"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro\".split(\"_\"),monthsShort:\"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez\".split(\"_\"),ordinal:function(e){return e+\"º\"},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D [de] MMMM [de] YYYY\",LLL:\"D [de] MMMM [de] YYYY [às] HH:mm\",LLLL:\"dddd, D [de] MMMM [de] YYYY [às] HH:mm\"},relativeTime:{future:\"em %s\",past:\"há %s\",s:\"poucos segundos\",m:\"um minuto\",mm:\"%d minutos\",h:\"uma hora\",hh:\"%d horas\",d:\"um dia\",dd:\"%d dias\",M:\"um mês\",MM:\"%d meses\",y:\"um ano\",yy:\"%d anos\"}};return a.default.locale(s,null,!0),s}));","!function(e,o){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=o():\"function\"==typeof define&&define.amd?define(o):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isToday=o()}(this,(function(){\"use strict\";return function(e,o,t){o.prototype.isToday=function(){var e=\"YYYY-MM-DD\",o=t();return this.format(e)===o.format(e)}}}));","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_timezone=e()}(this,(function(){\"use strict\";var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||\"short\",o=t+\"|\"+i,r=e[o];return r||(r=new Intl.DateTimeFormat(\"en-US\",{hour12:!1,timeZone:t,year:\"numeric\",month:\"2-digit\",day:\"2-digit\",hour:\"2-digit\",minute:\"2-digit\",second:\"2-digit\",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u<i.length;u+=1){var f=i[u],s=f.type,m=f.value,c=t[s];c>=0&&(r[c]=parseInt(m,10))}var d=r[3],l=24===d?0:d,v=r[0]+\"-\"+r[1]+\"-\"+r[2]+\" \"+l+\":\"+r[4]+\":\"+r[5]+\":000\",h=+e;return(o.utc(v).valueOf()-(h-=h%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString(\"en-US\",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a).$set(\"millisecond\",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,\"minute\")}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return\"timezonename\"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"));return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if(\"string\"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return[i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t}}}));","!function(t,i){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=i():\"function\"==typeof define&&define.amd?define(i):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_utc=i()}(this,(function(){\"use strict\";var t=\"minute\",i=/[+-]\\d\\d(?::?\\d\\d)?/g,e=/([+-]|\\d\\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t)};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds()}else r.call(this)};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if(\"string\"==typeof s&&(s=function(t){void 0===t&&(t=\"\");var s=t.match(i);if(!s)return null;var f=(\"\"+s[0]).match(e)||[\"-\",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:\"+\"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?\"YYYY-MM-DDTHH:mm:ss[Z]\":\"\");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return!!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return\"s\"===t&&this.$offset?n(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)}}}));","\"use strict\";\n\nvar stylesInDOM = [];\n\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n\n return result;\n}\n\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n\n identifiers.push(identifier);\n }\n\n return identifiers;\n}\n\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n\n return updater;\n}\n\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n\n var newLastIdentifiers = modulesToDom(newList, options);\n\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n\n var _index = getIndexByIdentifier(_identifier);\n\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n\n stylesInDOM.splice(_index, 1);\n }\n }\n\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\nvar memo = {};\n/* istanbul ignore next */\n\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target); // Special case to return head of iframe instead of iframe itself\n\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n\n memo[target] = styleTarget;\n }\n\n return memo[target];\n}\n/* istanbul ignore next */\n\n\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n\n target.appendChild(style);\n}\n\nmodule.exports = insertBySelector;","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\n\nmodule.exports = insertStyleElement;","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\n\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n\n var needLayer = typeof obj.layer !== \"undefined\";\n\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n\n css += obj.css;\n\n if (needLayer) {\n css += \"}\";\n }\n\n if (obj.media) {\n css += \"}\";\n }\n\n if (obj.supports) {\n css += \"}\";\n }\n\n var sourceMap = obj.sourceMap;\n\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n } // For old IE\n\n /* istanbul ignore if */\n\n\n options.styleTagTransform(css, styleElement, options.options);\n}\n\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n\n styleElement.parentNode.removeChild(styleElement);\n}\n/* istanbul ignore next */\n\n\nfunction domAPI(options) {\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\n\nmodule.exports = domAPI;","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n\n styleElement.appendChild(document.createTextNode(css));\n }\n}\n\nmodule.exports = styleTagTransform;","module.exports = \"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' width='256' height='256' viewBox='0 0 256 256' xml:space='preserve'%3e %3cdesc%3eCreated with Fabric.js 1.7.22%3c/desc%3e %3cdefs%3e %3c/defs%3e %3cg transform='translate(128 128) scale(0.72 0.72)' style=''%3e %3cg style='stroke: none; stroke-width: 0; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: none; fill-rule: nonzero; opacity: 1;' transform='translate(-175.05 -175.05000000000004) scale(3.89 3.89)' %3e %3cpath d='M 87.85 41.551 L 5.545 1.167 C 2.414 -0.369 -0.979 2.725 0.263 5.984 l 14.342 37.648 c 0.336 0.881 0.336 1.854 0 2.735 L 0.263 84.016 c -1.241 3.259 2.152 6.353 5.282 4.817 L 87.85 48.449 C 90.717 47.043 90.717 42.957 87.85 41.551 z' style='stroke: none; stroke-width: 1; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(255,255,255); fill-rule: nonzero; opacity: 1;' transform=' matrix(1 0 0 1 0 0) ' stroke-linecap='round' /%3e %3c/g%3e %3c/g%3e %3c/svg%3e\"","module.exports = __WEBPACK_EXTERNAL_MODULE__760__;","module.exports = __WEBPACK_EXTERNAL_MODULE__156__;","module.exports = __WEBPACK_EXTERNAL_MODULE__238__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nc = undefined;","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/less-loader/dist/cjs.js!./index.less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/less-loader/dist/cjs.js!./index.less\";\n export default content && content.locals ? content.locals : undefined;\n","import React, { createContext, ReactNode } from 'react'\r\n\r\nconst defaultThemeVariables = {\r\n asideBg: '#eee',\r\n asideFontColor: 'var(--secondary-color)',\r\n messengerMessagesBg: '#eeeeee',\r\n headerAndSenderBg: '#232831',\r\n buttonPrimary: '#25D366',\r\n buttonPrimaryText: '#707070',\r\n buttonsDisabled: '#94989D',\r\n uploadFileIconColor: '#8696a0',\r\n messengerNotSelectedBg: '#DDDDDD',\r\n newChatFormBg: '',\r\n newChatFormRadius: '0 20px 20px 0',\r\n newChatFormTexts: '#000',\r\n newChatFormDeleteFileButton: '#DD4E4E',\r\n disclaimerPrimaryColor: '#4791FF',\r\n disclaimerSecondaryColor: '#4791FF',\r\n disclaimerTextColor: '#000',\r\n messengerSenderColor: '#00A73E',\r\n messengerIncomerColor: '#707070',\r\n messengerSystemColor: '#2A313A',\r\n borderColor: '#AAAAAA',\r\n inputBg: 'var(--secondary-color)',\r\n chatInputBorder: '',\r\n listItemHover: '',\r\n active: '',\r\n activeTabBorter: '#25D366',\r\n emptyMessagesFontColor: '#000',\r\n documentMessagesTextColor: '#fff',\r\n}\r\n\r\ntype ThemeVariables = typeof defaultThemeVariables\r\n\r\ntype ThemeContextContent = {\r\n theme: Partial<ThemeVariables>\r\n}\r\n\r\nexport const MessageThemeContext = createContext<ThemeContextContent>(\r\n {} as unknown as ThemeContextContent\r\n)\r\n\r\ntype Props = {\r\n children: ReactNode\r\n theme?: Partial<ThemeVariables>\r\n}\r\nconst MessageThemeWrapper = ({\r\n children,\r\n theme = defaultThemeVariables,\r\n}: Props) => {\r\n const config = {\r\n theme,\r\n }\r\n\r\n return (\r\n <MessageThemeContext.Provider value={config}>\r\n {children}\r\n </MessageThemeContext.Provider>\r\n )\r\n}\r\n\r\nexport default MessageThemeWrapper\r\n","import { useContext } from 'react'\r\nimport { MessageThemeContext } from '../components/MessengerThemeWrapper/MessengerThemeWrapper'\r\n\r\nconst useTheme = () => {\r\n const context = useContext(MessageThemeContext)\r\n\r\n if (context === undefined) {\r\n throw new Error('useTheme must be used within a ThemeProvider')\r\n }\r\n\r\n return context\r\n}\r\n\r\nexport default useTheme\r\n","import dayjs, { ConfigType, Dayjs } from 'dayjs'\r\nimport dayjsBR from 'dayjs/locale/pt-br'\r\nimport utc from 'dayjs/plugin/utc'\r\nimport timezone from 'dayjs/plugin/timezone'\r\nimport isToday from 'dayjs/plugin/isToday'\r\nconst serverTz = 'America/Sao_Paulo'\r\n\r\ndayjs.extend(utc)\r\ndayjs.extend(timezone)\r\ndayjs.extend(isToday)\r\ndayjs.locale(dayjsBR)\r\n\r\nexport const timeAsDayjs = (\r\n value: ConfigType = new Date(),\r\n options?: { server?: boolean; applyTimezone?: boolean }\r\n): Dayjs => {\r\n const server = options?.server\r\n const applyTimezone = options?.applyTimezone\r\n\r\n let timezone = dayjs.tz.guess()\r\n if (!(applyTimezone ?? true)) timezone = 'GMT'\r\n else if (server ?? false) timezone = serverTz\r\n\r\n return dayjs.tz(value, timezone)\r\n}\r\n\r\nexport const time = (\r\n value: ConfigType = new Date(),\r\n options?: { server?: boolean; applyTimezone?: boolean }\r\n): Date => {\r\n const server = options?.server\r\n const applyTimezone = options?.applyTimezone\r\n let aux: Dayjs\r\n\r\n if (!(applyTimezone ?? true))\r\n aux = dayjs.tz(value, 'GMT') // Set applyTimezone to false when timezone is applied incorrectly (usually when working with JSDate and timestamps)\r\n else if (server ?? false) aux = dayjs.tz(value, serverTz)\r\n else aux = dayjs.tz(value, dayjs.tz.guess())\r\n\r\n return new Date(\r\n Date.UTC(\r\n aux.year(),\r\n aux.month(),\r\n aux.date(),\r\n aux.hour(),\r\n aux.minute(),\r\n aux.second(),\r\n aux.millisecond()\r\n )\r\n )\r\n}\r\n\r\nexport class SlaDates {\r\n public seconds: number | null\r\n\r\n constructor (seconds: number) {\r\n this.seconds = seconds\r\n }\r\n\r\n private holidays = {\r\n 2023: ['09-07', '10-12', '10-17', '11-02', '11-15', '11-20', '12-25'],\r\n }\r\n\r\n private isWorkingDay (date: Dayjs) {\r\n const dayOfWeek = date.day()\r\n return dayOfWeek >= 1 && dayOfWeek <= 5 // Monday to Friday (1 to 5)\r\n }\r\n\r\n private isWorkingHour (date: Dayjs) {\r\n const hour = date.hour()\r\n return hour >= 9 && hour <= 18 // Between 9 AM and 5 PM (inclusive)\r\n }\r\n\r\n public isWeekendOrHoliday (date: Dayjs | Date | string): boolean {\r\n const weekDay = timeAsDayjs(date, { applyTimezone: false }).day()\r\n if ([6, 0].includes(weekDay)) return true\r\n\r\n const formatedDate = timeAsDayjs(date).format('MM-DD')\r\n const isHollyday = this.holidays[2023].includes(formatedDate)\r\n return isHollyday\r\n }\r\n\r\n private isHoliday (date: Dayjs) {\r\n const formatedDate = timeAsDayjs(date, { applyTimezone: false }).format(\r\n 'MM-DD'\r\n )\r\n const isHollyday = this.holidays[2023].includes(formatedDate)\r\n return isHollyday\r\n }\r\n\r\n public canUpdateClock (date: Dayjs) {\r\n const isWorking = this.isWorkingDay(date) && this.isWorkingHour(date)\r\n return !this.isWeekendOrHoliday(date) && isWorking\r\n }\r\n\r\n public getDiffInSeconds (\r\n startDate: dayjs.Dayjs,\r\n endDate: dayjs.Dayjs\r\n ): number {\r\n const diffInSeconds = endDate.diff(startDate, 'second')\r\n return diffInSeconds\r\n }\r\n\r\n calculateWorkingTime (\r\n startDate: Dayjs,\r\n endDate: Dayjs,\r\n workingHours: { start: number; end: number }\r\n ) {\r\n let current = startDate.clone()\r\n let workingTime = 0\r\n\r\n while (current.isBefore(endDate)) {\r\n // Skip weekends (Saturday and Sunday) and Holydays\r\n\r\n if (this.isWorkingDay(current) && !this.isHoliday(current)) {\r\n const startOfDay = current\r\n .clone()\r\n .startOf('day')\r\n .add(workingHours.start, 'hour')\r\n const endOfDay = current\r\n .clone()\r\n .startOf('day')\r\n .add(workingHours.end, 'hour')\r\n\r\n if (current.isBefore(startOfDay)) {\r\n // If current time is before the start of working hours, move to the start of working hours\r\n current = startOfDay.clone()\r\n }\r\n\r\n if (current.isAfter(endOfDay)) {\r\n current = current.clone().add(1, 'day').startOf('day')\r\n } else if (endDate.isAfter(endOfDay)) {\r\n // If end date is after the end of working hours, add a full working day\r\n\r\n workingTime += Math.abs(endOfDay.clone().diff(current, 'second'))\r\n current = current\r\n .clone()\r\n .add(1, 'day')\r\n .startOf('day')\r\n .add(workingHours.start, 'hour')\r\n } else {\r\n // Calculate working time for the last day (end date)\r\n workingTime += Math.abs(endDate.clone().diff(current, 'second'))\r\n\r\n break\r\n }\r\n } else {\r\n // Move to the next day\r\n current = current.clone().add(1, 'day').startOf('day')\r\n }\r\n }\r\n\r\n return workingTime\r\n }\r\n\r\n // Function to calculate the difference in seconds between two dates considering working hours\r\n getDifferenceInSeconds (\r\n startDate: Dayjs,\r\n endDate: Dayjs,\r\n workingHours: { start: number; end: number }\r\n ) {\r\n if (endDate.isBefore(startDate)) {\r\n throw new Error('End date should be after the start date.')\r\n }\r\n\r\n const workingTimeInSeconds = this.calculateWorkingTime(\r\n startDate,\r\n endDate,\r\n workingHours\r\n )\r\n return workingTimeInSeconds\r\n }\r\n\r\n static secondsInHours (currentSeconds: number) {\r\n const hours = Math.floor(currentSeconds / 3600)\r\n const minutes = Math.floor((currentSeconds % 3600) / 60)\r\n const seconds = currentSeconds % 60\r\n return `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`\r\n }\r\n\r\n static getColorsByTime (seconds: number) {\r\n const hours = seconds / 3600\r\n if (hours <= 2) {\r\n return '#00CF7B'\r\n }\r\n\r\n if (hours >= 2 && hours < 3) {\r\n return '#FF9838'\r\n }\r\n\r\n if (hours >= 3 && hours < 4) {\r\n return '#DD4E4E'\r\n }\r\n\r\n return '#151919'\r\n }\r\n}\r\n","import useTheme from '../../hooks/useThemes'\r\nimport React from 'react'\r\nimport { useTranslation } from 'react-i18next'\r\nimport { IMesssengerAvatar } from 'types'\r\n\r\nfunction MessengerAvatar ({\r\n image,\r\n children,\r\n className = '',\r\n}: IMesssengerAvatar) {\r\n const { t } = useTranslation('messengerList')\r\n const { theme } = useTheme()\r\n return (\r\n <figure\r\n className={`${className} messenger__aside-list-item--avatar`}\r\n style={{\r\n background: theme.messengerIncomerColor,\r\n }}\r\n >\r\n {image ? (\r\n <img loading='lazy' alt={t('messengerAvatar.alt')} src={image} />\r\n ) : (\r\n children\r\n )}\r\n </figure>\r\n )\r\n}\r\n\r\nexport default MessengerAvatar\r\n","import React from 'react'\r\n\r\nexport default function TimerIcon ({ color }: { color: string }) {\r\n return (\r\n <svg\r\n width='14'\r\n height='14'\r\n viewBox='0 0 18 18'\r\n fill={color}\r\n xmlns='http://www.w3.org/2000/svg'\r\n >\r\n <path\r\n d='M9.42207 4.79883H8.57656C8.49922 4.79883 8.43594 4.86211 8.43594 4.93946V9.77871C8.43594 9.82442 8.45703 9.8666 8.49394 9.89297L11.3996 12.0147C11.4629 12.0604 11.5508 12.048 11.5965 11.9848L12.0992 11.2992C12.1467 11.2342 12.1326 11.1463 12.0693 11.1023L9.56269 9.29004V4.93946C9.56269 4.86211 9.49941 4.79883 9.42207 4.79883ZM13.2857 6.12071L16.042 6.79395C16.1299 6.81504 16.216 6.74824 16.216 6.6586L16.2301 3.81973C16.2301 3.70196 16.0947 3.63516 16.0033 3.70899L13.233 5.87285C13.2121 5.88905 13.1961 5.91083 13.187 5.93568C13.1779 5.96054 13.176 5.98746 13.1815 6.01335C13.187 6.03924 13.1997 6.06305 13.2182 6.08204C13.2366 6.10103 13.26 6.11444 13.2857 6.12071ZM16.2336 11.4135L15.2369 11.0707C15.2022 11.0588 15.1641 11.061 15.131 11.0767C15.0978 11.0925 15.0721 11.1206 15.0594 11.1551C15.026 11.2447 14.9908 11.3326 14.9539 11.4205C14.641 12.1605 14.1928 12.8268 13.6197 13.3981C13.053 13.9665 12.3815 14.4196 11.6422 14.7322C10.8764 15.056 10.0531 15.2222 9.22168 15.2209C8.38145 15.2209 7.56758 15.0574 6.80117 14.7322C6.06191 14.4196 5.39032 13.9665 4.82363 13.3981C4.25234 12.8268 3.8041 12.1605 3.48945 11.4205C3.16745 10.6542 3.00248 9.83117 3.0043 9C3.0043 8.15977 3.16777 7.34414 3.49297 6.57774C3.80586 5.8377 4.2541 5.17149 4.82715 4.6002C5.39383 4.03175 6.06542 3.57866 6.80469 3.26602C7.56758 2.94082 8.3832 2.77735 9.22344 2.77735C10.0637 2.77735 10.8775 2.94082 11.6439 3.26602C12.3832 3.57866 13.0548 4.03175 13.6215 4.6002C13.8008 4.78125 13.9695 4.96934 14.1242 5.16797L15.1754 4.34531C13.792 2.57696 11.6387 1.43965 9.21992 1.44141C5.0082 1.44317 1.62617 4.86387 1.66836 9.07735C1.71055 13.217 5.07676 16.5586 9.22344 16.5586C12.4842 16.5586 15.2615 14.4914 16.3197 11.5963C16.3461 11.5225 16.3074 11.4398 16.2336 11.4135Z'\r\n fill={color}\r\n />\r\n </svg>\r\n )\r\n}\r\n","import React, { useState, useMemo, useEffect } from 'react'\r\nimport { IList } from 'types'\r\nimport { SlaDates, timeAsDayjs } from '../classes/slaCalculations'\r\nimport MessengerAvatar from '../components/MessengerAvatar/MessengerAvatar'\r\nimport useTheme from '../hooks/useThemes'\r\nimport TimerIcon from '../icons/TimerIcon'\r\n\r\ninterface IListItem {\r\n onClick: (item: IList) => void\r\n item: IList\r\n currentId?: string\r\n canSeeDetailsChat: boolean\r\n currentViewerId: string\r\n}\r\n\r\nexport function activeItem (\r\n e: React.MouseEvent<HTMLElement, MouseEvent>,\r\n defaultClass: string,\r\n activeClass: string\r\n) {\r\n const click = document.querySelectorAll(`.${defaultClass}`)\r\n click.forEach((item) => {\r\n item.classList.remove(activeClass)\r\n })\r\n\r\n e.currentTarget.className += ` ${activeClass} `\r\n}\r\n\r\nfunction MessengerListItem ({\r\n item,\r\n onClick,\r\n canSeeDetailsChat,\r\n currentId,\r\n currentViewerId,\r\n}: IListItem) {\r\n const [unreadMessages, setUnreadMessages] = useState<\r\n typeof item.totalUnreadMessages\r\n >(item.totalUnreadMessages)\r\n const closedChat = useMemo(\r\n () =>\r\n item.status.current.state === 'final'\r\n ? 'messenger__aside-list-item--closed'\r\n : '',\r\n [item]\r\n )\r\n const [background, setBackground] = useState<string | undefined>('')\r\n const [counter, setCounter] = useState<number | null>(null)\r\n\r\n const { theme } = useTheme()\r\n const isInprogress = item.status?.current?.systemicValue === 'inprogress'\r\n\r\n const otherChatMember = useMemo(\r\n () =>\r\n item?.users.find((item) => item.uniqueCode !== currentViewerId) ||\r\n item.creator,\r\n [item?.users, currentViewerId]\r\n )\r\n\r\n useEffect(() => {\r\n let interval: NodeJS.Timer\r\n if (isInprogress && canSeeDetailsChat) {\r\n const sla = new SlaDates(\r\n timeAsDayjs(item.currentTime).diff(item.createdAt, 'second')\r\n )\r\n const diference = sla.calculateWorkingTime(\r\n timeAsDayjs(item.createdAt),\r\n timeAsDayjs(),\r\n { start: 9, end: 18 }\r\n )\r\n\r\n setCounter(diference)\r\n if (sla.canUpdateClock(timeAsDayjs())) {\r\n interval = setInterval(() => {\r\n setCounter((prev) => (prev !== null ? prev + 1 : null))\r\n }, 1000)\r\n }\r\n } else {\r\n setCounter(item.SLATimePassed ?? null)\r\n }\r\n\r\n return () => {\r\n clearInterval(interval)\r\n }\r\n }, [])\r\n\r\n useEffect(() => {\r\n setUnreadMessages(item.totalUnreadMessages)\r\n }, [item])\r\n\r\n function handleClick (\r\n e: React.MouseEvent<HTMLElement, MouseEvent>,\r\n item: IList\r\n ) {\r\n activeItem(\r\n e,\r\n 'messenger__aside-list-item',\r\n 'messenger__aside-list-item--active'\r\n )\r\n onClick(item)\r\n }\r\n\r\n function formatUnreadMessages (unread: number) {\r\n if (!unread) return 0\r\n if (unread >= 99) return 99\r\n return unread\r\n }\r\n\r\n const onMouseOver = () => {\r\n setBackground(theme?.listItemHover)\r\n }\r\n\r\n const onMouseLeave = () => {\r\n setBackground('')\r\n }\r\n\r\n const ShowTimer = () => {\r\n if (counter === null) return null\r\n\r\n return (\r\n <span\r\n className='messenger__aside-timer'\r\n style={{\r\n background: SlaDates.getColorsByTime(counter),\r\n color: 'var(--secondary-color)',\r\n width: 'fit-content',\r\n }}\r\n >\r\n <TimerIcon color='var(--secondary-color)' />\r\n &nbsp;\r\n <b>{SlaDates.secondsInHours(counter)}</b>\r\n </span>\r\n )\r\n }\r\n\r\n return (\r\n <div\r\n className={`messenger__aside-list-item ${closedChat}`}\r\n onClick={(e) => handleClick(e, item)}\r\n onMouseOver={onMouseOver}\r\n onMouseLeave={onMouseLeave}\r\n style={{\r\n color: theme?.asideFontColor,\r\n backgroundColor: currentId === item._id ? theme?.active : background,\r\n }}\r\n >\r\n <MessengerAvatar image={otherChatMember?.image}>\r\n {otherChatMember && otherChatMember.username\r\n ? otherChatMember.username.slice(0, 1)\r\n : ''}\r\n </MessengerAvatar>\r\n\r\n <div className='messenger__aside-list-item--info'>\r\n <p className='messenger__aside-list-item--title'>\r\n {otherChatMember?.username}\r\n </p>\r\n {item?.reason && (\r\n <p className='messenger__aside-list-item--description'>\r\n {item.reason}\r\n </p>\r\n )}\r\n {canSeeDetailsChat && <ShowTimer />}\r\n </div>\r\n\r\n {item && (\r\n <div className='messenger__aside-list-item--additional'>\r\n {canSeeDetailsChat && `#${item.protocol}`}\r\n {unreadMessages > 0 && (\r\n <div className='messenger__aside-list-item--unread'>\r\n <span>{formatUnreadMessages(unreadMessages)}</span>\r\n </div>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n )\r\n}\r\n\r\nexport default MessengerListItem\r\n","import useTheme from '../../hooks/useThemes'\r\nimport { activeItem } from '../../views/MessengerListItem'\r\nimport React from 'react'\r\n\r\ninterface IProps {\r\n handleChangeTickets: (tab: string) => void\r\n chatListTabs: { value: string; label: string }[]\r\n}\r\n\r\nfunction ChatTabs ({ handleChangeTickets, chatListTabs }: IProps) {\r\n const { theme } = useTheme()\r\n return (\r\n <div className='chat-tabs' style={{ color: theme.asideFontColor }}>\r\n {chatListTabs.map((tab, index) => {\r\n return (\r\n <button\r\n key={`chatListTab-${index}`}\r\n className={`chat-tabs__button ${index === 0 && 'chat-tabs__button--active'}`}\r\n onClick={(e) => {\r\n handleChangeTickets(tab.value)\r\n activeItem(e, 'chat-tabs__button', 'chat-tabs__button--active')\r\n }}\r\n >\r\n {tab.label}\r\n </button>\r\n )\r\n })}\r\n </div>\r\n )\r\n}\r\n\r\nexport default ChatTabs\r\n","import React from 'react'\r\nimport useTheme from '../../hooks/useThemes'\r\n\r\ninterface INewChatButton {\r\n removeActiveItem: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void\r\n messegerView: 'empty' | 'messages' | 'newChat'\r\n chatButtons: {\r\n label: string\r\n onClick: () => void\r\n type: string\r\n canSee: boolean\r\n disabled?: boolean\r\n }[]\r\n}\r\n\r\nfunction ChatButtons ({ chatButtons, removeActiveItem }: INewChatButton) {\r\n const { theme } = useTheme()\r\n\r\n const getButtonType = (type: string, disabled?: boolean) => {\r\n if (type === 'primary')\r\n return {\r\n background: disabled ? theme?.buttonsDisabled : theme?.buttonPrimary,\r\n color: theme?.buttonPrimaryText,\r\n }\r\n\r\n if (type === 'outlined')\r\n return {\r\n background: 'transparent',\r\n color: theme?.asideFontColor,\r\n border: `${theme?.asideFontColor} 1px solid`,\r\n }\r\n return\r\n }\r\n\r\n return (\r\n <>\r\n {chatButtons.map((button) => {\r\n return (\r\n button.canSee && (\r\n <>\r\n <button\r\n key={`button-${button.label}`}\r\n className={\r\n button.disabled\r\n ? 'messenger__chat-button messenger__chat-button--disabled'\r\n : 'messenger__chat-button'\r\n }\r\n onClick={(event) => {\r\n button.onClick()\r\n removeActiveItem(event)\r\n }}\r\n style={getButtonType(button.type, button.disabled)}\r\n >\r\n {button.label}\r\n </button>\r\n </>\r\n )\r\n )\r\n })}\r\n </>\r\n )\r\n}\r\n\r\nexport default ChatButtons\r\n","import React from 'react'\r\nimport useTheme from '../hooks/useThemes'\r\n\r\nexport default function SearchIcon () {\r\n const { theme } = useTheme()\r\n return (\r\n <svg\r\n width='18'\r\n height='18'\r\n viewBox='0 0 18 18'\r\n fill='none'\r\n xmlns='http://www.w3.org/2000/svg'\r\n >\r\n <path\r\n d='M15.9 17.3L10.3 11.7C9.8 12.1 9.225 12.4167 8.575 12.65C7.925 12.8833 7.23333 13 6.5 13C4.68333 13 3.146 12.371 1.888 11.113C0.629333 9.85433 0 8.31667 0 6.5C0 4.68333 0.629333 3.14567 1.888 1.887C3.146 0.629 4.68333 0 6.5 0C8.31667 0 9.85433 0.629 11.113 1.887C12.371 3.14567 13 4.68333 13 6.5C13 7.23333 12.8833 7.925 12.65 8.575C12.4167 9.225 12.1 9.8 11.7 10.3L17.325 15.925C17.5083 16.1083 17.6 16.3333 17.6 16.6C17.6 16.8667 17.5 17.1 17.3 17.3C17.1167 17.4833 16.8833 17.575 16.6 17.575C16.3167 17.575 16.0833 17.4833 15.9 17.3ZM6.5 11C7.75 11 8.81267 10.5627 9.688 9.688C10.5627 8.81267 11 7.75 11 6.5C11 5.25 10.5627 4.18733 9.688 3.312C8.81267 2.43733 7.75 2 6.5 2C5.25 2 4.18733 2.43733 3.312 3.312C2.43733 4.18733 2 5.25 2 6.5C2 7.75 2.43733 8.81267 3.312 9.688C4.18733 10.5627 5.25 11 6.5 11Z'\r\n fill={theme.asideFontColor}\r\n />\r\n </svg>\r\n )\r\n}\r\n","import SearchIcon from '../../icons/SearchIcon'\r\nimport React, { useState } from 'react'\r\nimport useTheme from '../../hooks/useThemes'\r\nimport { useTranslation } from 'react-i18next'\r\n\r\ninterface IProps {\r\n searchChat: (value: string, key: string) => void\r\n searchKeys: { label: string; value: string }[]\r\n loadingSearch: boolean\r\n}\r\n\r\nfunction SearchInput ({ searchChat, searchKeys, loadingSearch }: IProps) {\r\n const { t } = useTranslation('messengerList')\r\n const [searchKey, setSearchKey] = useState<string>(searchKeys[0].value)\r\n const [searchValue, setSearchValue] = useState<string>('')\r\n const { theme } = useTheme()\r\n\r\n const onSearch = (event: React.ChangeEvent<HTMLInputElement>) => {\r\n setSearchValue(event.target.value)\r\n }\r\n\r\n const handleKeyPress = (event: React.KeyboardEvent<HTMLInputElement>) => {\r\n if (event.key === 'Enter') {\r\n searchChat(searchValue, searchKey)\r\n }\r\n }\r\n\r\n return (\r\n <div className='input-search'>\r\n <select\r\n className='input-search__select'\r\n onChange={(e) => setSearchKey(e.target.value)}\r\n style={{\r\n color: theme.asideFontColor,\r\n border: `${theme.asideFontColor} 1px solid`,\r\n }}\r\n >\r\n {searchKeys.map((item, index) => (\r\n <option\r\n className='input-search__option'\r\n key={index}\r\n value={item.value}\r\n >\r\n {item.label}\r\n </option>\r\n ))}\r\n </select>\r\n\r\n <input\r\n className='input-search__search'\r\n placeholder={t('searchInput.placeholder')}\r\n onChange={onSearch}\r\n onKeyDown={handleKeyPress}\r\n style={{\r\n color: theme.asideFontColor,\r\n border: `${theme.asideFontColor} 1px solid`,\r\n borderLeft: 0,\r\n }}\r\n />\r\n\r\n <button\r\n className='input-search__icon'\r\n onClick={() => searchChat(searchValue, searchKey)}\r\n >\r\n {loadingSearch ? (\r\n <div className='messenger__messages-loading'>\r\n <div className='messenger__messages-loading--loader' />\r\n </div>\r\n ) : (\r\n <SearchIcon />\r\n )}\r\n </button>\r\n </div>\r\n )\r\n}\r\n\r\nexport default SearchInput\r\n","import React from 'react'\r\nimport useTheme from '../hooks/useThemes'\r\n\r\nexport default function EmptyIcon () {\r\n const { theme } = useTheme()\r\n return (\r\n <svg\r\n width='26'\r\n height='32'\r\n viewBox='0 0 26 32'\r\n fill='none'\r\n xmlns='http://www.w3.org/2000/svg'\r\n >\r\n <path\r\n d='M24.4286 0H1.57143C0.939288 0 0.428574 0.510714 0.428574 1.14286V30.8571C0.428574 31.4893 0.939288 32 1.57143 32H24.4286C25.0607 32 25.5714 31.4893 25.5714 30.8571V1.14286C25.5714 0.510714 25.0607 0 24.4286 0ZM23 29.4286H3V22.25H6.49643C6.91072 23.4214 7.63929 24.475 8.60715 25.275C9.83929 26.2929 11.4 26.8571 13 26.8571C14.6 26.8571 16.1607 26.2964 17.3929 25.275C18.3607 24.475 19.0893 23.4214 19.5036 22.25H23V29.4286ZM23 20H17.7L17.5143 20.8821C17.0857 23.0179 15.1857 24.5714 13 24.5714C10.8143 24.5714 8.91429 23.0179 8.48215 20.8821L8.29643 20H3V2.57143H23V20Z'\r\n fill={theme.emptyMessagesFontColor}\r\n />\r\n </svg>\r\n )\r\n}\r\n","import React, { ReactNode, CSSProperties } from 'react'\r\n\r\ninterface IInfiniteScroll {\r\n loading: boolean\r\n more: boolean\r\n fetch: () => void\r\n children: ReactNode\r\n loadingCover: React.ReactElement\r\n root: Element | null\r\n reverse?: boolean\r\n rootMargin?: number\r\n}\r\n\r\nconst intersectDivStyle: CSSProperties = {\r\n width: 25,\r\n height: 25,\r\n visibility: 'hidden',\r\n}\r\n\r\nfunction InfiniteScroll ({\r\n loading,\r\n loadingCover,\r\n more,\r\n fetch,\r\n children,\r\n root,\r\n reverse = false,\r\n rootMargin = 400,\r\n}: IInfiniteScroll) {\r\n const [infiniteElement, setInfiniteElement] =\r\n React.useState<HTMLDivElement | null>(null)\r\n\r\n React.useEffect(() => {\r\n if (!root) return\r\n const currentElement = infiniteElement\r\n const observer = new IntersectionObserver(\r\n (entries) => {\r\n const first = entries[0]\r\n if (first.isIntersecting === true) fetch()\r\n },\r\n {\r\n root,\r\n rootMargin: rootMargin.toString() + 'px',\r\n threshold: 0.5,\r\n }\r\n )\r\n\r\n if (currentElement) {\r\n observer.observe(currentElement)\r\n }\r\n\r\n return () => {\r\n if (currentElement) observer.unobserve(currentElement)\r\n }\r\n }, [infiniteElement])\r\n\r\n if (reverse) {\r\n return (\r\n <>\r\n {more && !loading && (\r\n <div ref={setInfiniteElement} style={intersectDivStyle}></div>\r\n )}\r\n {loading && loadingCover}\r\n {children}\r\n </>\r\n )\r\n }\r\n\r\n return (\r\n <>\r\n {children}\r\n {loading && loadingCover}\r\n {more && !loading && (\r\n <div ref={setInfiniteElement} style={intersectDivStyle}></div>\r\n )}\r\n </>\r\n )\r\n}\r\n\r\nexport default InfiniteScroll\r\n","import React, { Fragment } from 'react'\r\nimport { IList } from 'types'\r\nimport ChatTabs from '../components/ChatTabs/ChatTabs'\r\nimport ChatButtons from '../components/ChatButton/ChatButton'\r\nimport SearchInput from '../components/SearchInput/SearchInput'\r\nimport MessengerListItem, { activeItem } from './MessengerListItem'\r\nimport useTheme from '../hooks/useThemes'\r\nimport EmptyIcon from '../icons/EmptyIcon'\r\nimport InfiniteScroll from '../components/InfiniteScroll/InfiniteScroll'\r\nimport { useTranslation } from 'react-i18next'\r\n\r\ninterface IMessengerList {\r\n affix?: React.ReactElement\r\n loading: boolean\r\n conversations: IList[]\r\n currentId?: string\r\n failed?: boolean\r\n showBadge: boolean\r\n tab?: 'list' | 'messages'\r\n className?: string\r\n onClick: (item: IList) => void\r\n searchChat: (search: string, key: string) => void\r\n searchKeys: { label: string; value: string }[]\r\n messegerView: 'empty' | 'messages' | 'newChat'\r\n helpDesk: boolean\r\n handleChangeTickets: (tab: string) => void\r\n loadingSearch: boolean\r\n chatListTabs: { value: string; label: string }[]\r\n chatButtons: {\r\n label: string\r\n onClick: () => void\r\n type: string\r\n canSee: boolean\r\n disabled?: boolean\r\n }[]\r\n canSeeDetailsChat: boolean\r\n hasNext: boolean\r\n onIntersect: () => void\r\n sliceCount: number\r\n currentViewerId: string\r\n}\r\n\r\nconst ListLoading = () => {\r\n const { theme } = useTheme()\r\n return (\r\n <Fragment>\r\n {new Array(5).fill('').map((_, idx) => (\r\n <button\r\n key={`asideSkeleton${idx}`}\r\n style={{\r\n background: theme.listItemHover,\r\n borderBottom: idx < 4 ? `1px solid ${theme.borderColor}` : '0',\r\n }}\r\n className='messenger__aside-skeleton'\r\n />\r\n ))}\r\n </Fragment>\r\n )\r\n}\r\n\r\nfunction MessengerList ({\r\n affix,\r\n conversations,\r\n tab,\r\n className = '',\r\n loading,\r\n failed,\r\n showBadge,\r\n currentId,\r\n onClick,\r\n searchChat,\r\n searchKeys,\r\n messegerView,\r\n helpDesk,\r\n handleChangeTickets,\r\n chatListTabs,\r\n chatButtons,\r\n loadingSearch,\r\n canSeeDetailsChat,\r\n hasNext,\r\n onIntersect,\r\n sliceCount,\r\n currentViewerId,\r\n}: IMessengerList) {\r\n const { t } = useTranslation('messengerList')\r\n const { theme } = useTheme()\r\n\r\n return (\r\n <aside\r\n className={`messenger__aside ${className} ${tab === 'messages' ? 'messenger__mobile-hide' : ''}`}\r\n style={{\r\n border: `1px solid ${theme.borderColor}`,\r\n borderRadius: '20px 0 0 20px',\r\n background: theme.asideBg,\r\n }}\r\n >\r\n <div className='messenger__buttons-container'>\r\n <ChatButtons\r\n chatButtons={chatButtons}\r\n messegerView={messegerView}\r\n removeActiveItem={(e: React.MouseEvent<HTMLElement, MouseEvent>) => {\r\n activeItem(\r\n e,\r\n 'messenger__aside-list-item',\r\n 'messenger__aside-list-item--active'\r\n )\r\n }}\r\n />\r\n\r\n {helpDesk && (\r\n <SearchInput\r\n searchKeys={searchKeys}\r\n searchChat={searchChat}\r\n loadingSearch={loadingSearch}\r\n />\r\n )}\r\n </div>\r\n\r\n {affix && (\r\n <div className='messenger__aside-header'>\r\n {React.cloneElement(affix)}\r\n </div>\r\n )}\r\n\r\n <ChatTabs\r\n chatListTabs={chatListTabs}\r\n handleChangeTickets={handleChangeTickets}\r\n />\r\n\r\n <div className='messenger__aside-list'>\r\n <InfiniteScroll\r\n root={document.querySelector('.messenger__aside-list')}\r\n loading={loading}\r\n loadingCover={<ListLoading />}\r\n more={hasNext}\r\n fetch={onIntersect}\r\n >\r\n {Array.isArray(conversations) &&\r\n conversations.length > 0 &&\r\n conversations.slice(0, sliceCount).map((item) => {\r\n return (\r\n <div\r\n key={item?._id}\r\n className={`messenger__aside-item-container ${showBadge ? 'messenger__active-badge' : ''}`}\r\n >\r\n <MessengerListItem\r\n canSeeDetailsChat={canSeeDetailsChat}\r\n currentId={currentId}\r\n item={item}\r\n onClick={onClick}\r\n currentViewerId={currentViewerId}\r\n />\r\n </div>\r\n )\r\n })}\r\n </InfiniteScroll>\r\n\r\n {failed ||\r\n (conversations?.length === 0 && !loading && (\r\n <div className='messenger__aside-empty'>\r\n <EmptyIcon />\r\n <p>{t('noChatFound')}</p>\r\n </div>\r\n ))}\r\n </div>\r\n </aside>\r\n )\r\n}\r\n\r\nexport default MessengerList\r\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import * as React from 'react'\r\nimport { SVGProps } from 'react'\r\nconst FileDoc = (props: SVGProps<SVGSVGElement>) => (\r\n <svg\r\n xmlns='http://www.w3.org/2000/svg'\r\n xmlnsXlink='http://www.w3.org/1999/xlink'\r\n id='Layer_1'\r\n width={800}\r\n height={800}\r\n data-name='Layer 1'\r\n viewBox='0 0 32 32'\r\n {...props}\r\n >\r\n <defs>\r\n <linearGradient\r\n id='doc-gradient'\r\n x1={6.65}\r\n x2={27.27}\r\n y1={6.65}\r\n y2={27.27}\r\n gradientUnits='userSpaceOnUse'\r\n >\r\n <stop offset={0} stopColor='#00a6fb' />\r\n <stop offset={1} stopColor='#0094ce' />\r\n </linearGradient>\r\n <linearGradient\r\n xlinkHref='#doc-gradient'\r\n id='doc-gradient-2'\r\n x1={6}\r\n x2={12}\r\n y1={5}\r\n y2={5}\r\n />\r\n <style>{'.cls-3{fill:#f8edeb}'}</style>\r\n </defs>\r\n <path\r\n d='M23.5 2h-12a.47.47 0 0 0-.35.15l-5 5A.47.47 0 0 0 6 7.5v20A2.5 2.5 0 0 0 8.5 30h15a2.5 2.5 0 0 0 2.5-2.5v-23A2.5 2.5 0 0 0 23.5 2Z'\r\n style={{\r\n fill: '#00a6fb',\r\n }}\r\n />\r\n <path\r\n d='M11.69 2a.47.47 0 0 0-.54.11l-5 5a.47.47 0 0 0-.15.58.5.5 0 0 0 .5.31h3A2.5 2.5 0 0 0 12 5.5v-3a.5.5 0 0 0-.31-.5Z'\r\n style={{\r\n fill: '#0094ce',\r\n }}\r\n />\r\n <path\r\n d='M16 21a2 2 0 0 1-2-2v-6a2 2 0 0 1 4 0v6a2 2 0 0 1-2 2Zm0-9a1 1 0 0 0-1 1v6a1 1 0 0 0 2 0v-6a1 1 0 0 0-1-1ZM9.5 21a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5 3.5 3.5 0 0 1 3.5 3.5v3A3.5 3.5 0 0 1 9.5 21Zm.5-8.95V20a2.5 2.5 0 0 0 2-2.45v-3a2.5 2.5 0 0 0-2-2.5ZM21 21a2 2 0 0 1-2-2v-6a2 2 0 0 1 4 0 .5.5 0 0 1-1 0 1 1 0 0 0-2 0v6a1 1 0 0 0 2 0 .5.5 0 0 1 1 0 2 2 0 0 1-2 2Z'\r\n className='cls-3'\r\n />\r\n </svg>\r\n)\r\nexport default FileDoc\r\n","import * as React from 'react'\r\nimport { SVGProps } from 'react'\r\nconst SvgComponent = (props: SVGProps<SVGSVGElement>) => (\r\n <svg\r\n xmlns='http://www.w3.org/2000/svg'\r\n xmlnsXlink='http://www.w3.org/1999/xlink'\r\n id='Layer_1'\r\n width={800}\r\n height={800}\r\n data-name='Layer 1'\r\n viewBox='0 0 32 32'\r\n {...props}\r\n >\r\n <defs>\r\n <linearGradient\r\n id='pdf-gradient'\r\n x1={6.65}\r\n x2={27.27}\r\n y1={6.65}\r\n y2={27.27}\r\n gradientUnits='userSpaceOnUse'\r\n >\r\n <stop offset={0} stopColor='#ef6461' />\r\n <stop offset={1} stopColor='#e83d3d' />\r\n </linearGradient>\r\n <linearGradient\r\n xlinkHref='#pdf-gradient'\r\n id='pdf-gradient-2'\r\n x1={6}\r\n x2={12}\r\n y1={5}\r\n y2={5}\r\n />\r\n <style>{'.cls-3{fill:#f8edeb}'}</style>\r\n </defs>\r\n <path\r\n d='M23.5 2h-12a.47.47 0 0 0-.35.15l-5 5A.47.47 0 0 0 6 7.5v20A2.5 2.5 0 0 0 8.5 30h15a2.5 2.5 0 0 0 2.5-2.5v-23A2.5 2.5 0 0 0 23.5 2Z'\r\n style={{\r\n fill: 'url(#pdf-gradient)',\r\n }}\r\n />\r\n <path\r\n d='M11.69 2a.47.47 0 0 0-.54.11l-5 5a.47.47 0 0 0-.15.58.5.5 0 0 0 .5.31h3A2.5 2.5 0 0 0 12 5.5v-3a.5.5 0 0 0-.31-.5Z'\r\n style={{\r\n fill: 'url(#pdf-gradient-2)',\r\n }}\r\n />\r\n <path\r\n d='M15.5 11h-1a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h1a2.5 2.5 0 0 0 2.5-2.5v-5a2.5 2.5 0 0 0-2.5-2.5Zm1.5 7.5a1.5 1.5 0 0 1-1.5 1.5H15v-8h.5a1.5 1.5 0 0 1 1.5 1.5ZM11.5 11h-2a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 1 0V17h1.5a1.5 1.5 0 0 0 1.5-1.5v-3a1.5 1.5 0 0 0-1.5-1.5Zm.5 4.5a.5.5 0 0 1-.5.5H10v-4h1.5a.5.5 0 0 1 .5.5ZM22.5 15H20v-3h2.5a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 1 0V16h2.5a.5.5 0 0 0 0-1Z'\r\n className='cls-3'\r\n />\r\n </svg>\r\n)\r\nexport default SvgComponent\r\n","import * as React from 'react'\r\nimport { SVGProps } from 'react'\r\n\r\nconst CSVFileIcon = (props: SVGProps<SVGSVGElement>) => (\r\n <svg\r\n xmlns='http://www.w3.org/2000/svg'\r\n width={40}\r\n height={40}\r\n viewBox='0 0 32 32'\r\n {...props}\r\n >\r\n <rect width='32' height='32' rx='5' fill='#21A366' />\r\n <text\r\n x='16'\r\n y='22'\r\n textAnchor='middle'\r\n fontSize='12'\r\n fill='#fff'\r\n fontWeight='bold'\r\n >\r\n CSV\r\n </text>\r\n </svg>\r\n)\r\n\r\nexport default CSVFileIcon\r\n","import * as React from 'react'\r\nimport { SVGProps } from 'react'\r\n\r\nconst MP4FileIcon = (props: SVGProps<SVGSVGElement>) => (\r\n <svg\r\n xmlns='http://www.w3.org/2000/svg'\r\n width={40}\r\n height={40}\r\n viewBox='0 0 32 32'\r\n {...props}\r\n >\r\n <rect width='32' height='32' rx='5' fill='#E67E22' />\r\n <text\r\n x='16'\r\n y='22'\r\n textAnchor='middle'\r\n fontSize='12'\r\n fill='#fff'\r\n fontWeight='bold'\r\n >\r\n MP4\r\n </text>\r\n </svg>\r\n)\r\n\r\nexport default MP4FileIcon\r\n","import React from 'react'\r\nimport FileDoc from '../../icons/DOCFileIcon'\r\nimport FilePdf from '../../icons/PDFFileIcon'\r\nimport CSVFileIcon from '../../icons/CSVFileIcon'\r\nimport MP4FileIcon from '../../icons/MP4FileIcon'\r\nimport { useTranslation } from 'react-i18next'\r\n\r\nconst RenderFileIcon = ({\r\n fileType,\r\n b64,\r\n}: {\r\n fileType?: string\r\n b64?: string\r\n}) => {\r\n const { t } = useTranslation('messengerMessages')\r\n\r\n if (fileType === 'application/pdf') {\r\n return <FilePdf width='40' height='40' />\r\n } else if (\r\n fileType === 'application/msword' ||\r\n fileType ===\r\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'\r\n ) {\r\n return <FileDoc width='40' height='40' />\r\n } else if (fileType === 'text/csv') {\r\n return <CSVFileIcon width='40' height='40' />\r\n } else if (fileType === 'video/mp4') {\r\n return <MP4FileIcon width='40' height='40' />\r\n } else {\r\n return (\r\n <img\r\n alt={t('renderFileIcon.altImage')}\r\n src={b64}\r\n className='images-container__image'\r\n />\r\n )\r\n }\r\n}\r\n\r\nexport default RenderFileIcon\r\n","import React, { useEffect, useState } from 'react'\r\nimport { IImagesContainer } from 'types'\r\nimport RenderFileIcon from '../RenderFileIcon/RenderFileIcon'\r\n\r\nfunction ImagesContainer ({ file, onClose }: IImagesContainer) {\r\n const [fileInfo, setFileInfo] = useState<{ name: string; type: string }>({\r\n name: '',\r\n type: '',\r\n })\r\n\r\n const [b64, setB64] = useState<string>('')\r\n\r\n useEffect(() => {\r\n function getBase64 (file: File) {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader()\r\n reader.readAsDataURL(file)\r\n reader.onload = () => resolve(reader.result)\r\n reader.onerror = (error) => reject(error)\r\n })\r\n }\r\n\r\n if (file) getBase64(file).then((base64) => setB64(base64 as string))\r\n }, [file])\r\n\r\n useEffect(() => {\r\n if (file) {\r\n setFileInfo({\r\n name: file.name,\r\n type: file.type,\r\n })\r\n }\r\n }, [file])\r\n\r\n return (\r\n <div className='images-container'>\r\n <div className='images-container__close'>\r\n <button className='images-container__close--icon' onClick={onClose} />\r\n </div>\r\n\r\n <div className='images-container__container'>\r\n <div className='images-container__image'>\r\n <RenderFileIcon fileType={fileInfo.type} b64={b64} />\r\n <span className='images-container__title-img'>{fileInfo.name}</span>\r\n </div>\r\n </div>\r\n </div>\r\n )\r\n}\r\n\r\nexport default ImagesContainer\r\n","import React, { useState, useCallback, useEffect } from 'react';\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css_248z = \".styles-module_wrapper__1I_qj {\\n z-index: 1;\\n display: flex;\\n align-items: center;\\n position: fixed;\\n padding: 0px 60px 0px 60px;\\n left: 0;\\n top: 0;\\n width: 100%;\\n height: 100%;\\n background-color: black;\\n box-sizing: border-box;\\n}\\n\\n.styles-module_content__2jwZj {\\n margin: auto;\\n padding: 0;\\n width: 90%;\\n height: 100%;\\n max-height: 100%;\\n text-align: center;\\n}\\n\\n.styles-module_slide__1zrfk {\\n height: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n.styles-module_image__2hdkJ {\\n max-height: 100%;\\n max-width: 100%;\\n user-select: none;\\n -moz-user-select: none;\\n -webkit-user-select: none;\\n}\\n\\n.styles-module_close__2I1sI {\\n color: white;\\n position: absolute;\\n top: 15px;\\n right: 15px;\\n font-size: 40px;\\n font-weight: bold;\\n opacity: 0.2;\\n cursor: pointer;\\n}\\n\\n.styles-module_close__2I1sI:hover {\\n opacity: 1;\\n}\\n\\n.styles-module_navigation__1pqAE {\\n height: 80%;\\n color: white;\\n cursor: pointer;\\n position: absolute;\\n font-size: 60px;\\n line-height: 60px;\\n font-weight: bold;\\n display: flex;\\n align-items: center;\\n opacity: 0.2;\\n padding: 0 15px;\\n user-select: none;\\n -moz-user-select: none;\\n -webkit-user-select: none;\\n}\\n\\n.styles-module_navigation__1pqAE:hover {\\n opacity: 1;\\n}\\n\\n@media (hover: none) {\\n .styles-module_navigation__1pqAE:hover {\\n opacity: 0.2;\\n }\\n}\\n\\n.styles-module_prev__KqFRp {\\n left: 0;\\n}\\n\\n.styles-module_next__1uQwZ {\\n right: 0;\\n}\\n\\n@media (max-width: 900px) {\\n .styles-module_wrapper__1I_qj {\\n padding: 0;\\n }\\n}\\n\";\nvar styles = {\"wrapper\":\"styles-module_wrapper__1I_qj\",\"content\":\"styles-module_content__2jwZj\",\"slide\":\"styles-module_slide__1zrfk\",\"image\":\"styles-module_image__2hdkJ\",\"close\":\"styles-module_close__2I1sI\",\"navigation\":\"styles-module_navigation__1pqAE\",\"prev\":\"styles-module_prev__KqFRp\",\"next\":\"styles-module_next__1uQwZ\"};\nstyleInject(css_248z);\n\nconst ReactSimpleImageViewer = (props) => {\n var _a;\n const [currentIndex, setCurrentIndex] = useState((_a = props.currentIndex) !== null && _a !== void 0 ? _a : 0);\n const changeImage = useCallback((delta) => {\n let nextIndex = (currentIndex + delta) % props.src.length;\n if (nextIndex < 0)\n nextIndex = props.src.length - 1;\n setCurrentIndex(nextIndex);\n }, [currentIndex]);\n const handleClick = useCallback((event) => {\n var _a;\n if (!event.target || !props.closeOnClickOutside) {\n return;\n }\n const checkId = event.target.id === 'ReactSimpleImageViewer';\n const checkClass = event.target.classList.contains('react-simple-image-viewer__slide');\n if (checkId || checkClass) {\n event.stopPropagation();\n (_a = props.onClose) === null || _a === void 0 ? void 0 : _a.call(props);\n }\n }, [props.onClose]);\n const handleKeyDown = useCallback((event) => {\n var _a;\n if (event.key === \"Escape\") {\n (_a = props.onClose) === null || _a === void 0 ? void 0 : _a.call(props);\n }\n if ([\"ArrowLeft\", \"h\"].includes(event.key)) {\n changeImage(-1);\n }\n if ([\"ArrowRight\", \"l\"].includes(event.key)) {\n changeImage(1);\n }\n }, [props.onClose, changeImage]);\n const handleWheel = useCallback((event) => {\n if (event.wheelDeltaY > 0) {\n changeImage(-1);\n }\n else {\n changeImage(1);\n }\n }, [changeImage]);\n useEffect(() => {\n document.addEventListener(\"keydown\", handleKeyDown);\n if (!props.disableScroll) {\n document.addEventListener(\"wheel\", handleWheel);\n }\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown);\n if (!props.disableScroll) {\n document.removeEventListener(\"wheel\", handleWheel);\n }\n };\n }, [handleKeyDown, handleWheel]);\n return (React.createElement(\"div\", { id: \"ReactSimpleImageViewer\", className: `${styles.wrapper} react-simple-image-viewer__modal`, onKeyDown: handleKeyDown, onClick: handleClick, style: props.backgroundStyle },\n React.createElement(\"span\", { className: `${styles.close} react-simple-image-viewer__close`, onClick: () => { var _a; return (_a = props.onClose) === null || _a === void 0 ? void 0 : _a.call(props); } }, props.closeComponent || \"×\"),\n props.src.length > 1 && (React.createElement(\"span\", { className: `${styles.navigation} ${styles.prev} react-simple-image-viewer__previous`, onClick: () => changeImage(-1) }, props.leftArrowComponent || \"❮\")),\n props.src.length > 1 && (React.createElement(\"span\", { className: `${styles.navigation} ${styles.next} react-simple-image-viewer__next`, onClick: () => changeImage(1) }, props.rightArrowComponent || \"❯\")),\n React.createElement(\"div\", { className: `${styles.content} react-simple-image-viewer__modal-content`, onClick: handleClick },\n React.createElement(\"div\", { className: `${styles.slide} react-simple-image-viewer__slide` },\n React.createElement(\"img\", { className: styles.image, src: props.src[currentIndex], alt: \"\" })))));\n};\n\nexport { ReactSimpleImageViewer as default };\n//# sourceMappingURL=index.esm.js.map\n","import React from 'react'\r\n\r\nfunction DownloadMinimalistIcon ({\r\n width,\r\n height,\r\n color,\r\n}: {\r\n width: string\r\n height: string\r\n color: string\r\n}) {\r\n return (\r\n <svg\r\n xmlns='http://www.w3.org/2000/svg'\r\n width={width}\r\n height={height}\r\n viewBox='0 0 24 24'\r\n fill='none'\r\n >\r\n <path\r\n d='M12.5535 16.5061C12.4114 16.6615 12.2106 16.75 12 16.75C11.7894 16.75 11.5886 16.6615 11.4465 16.5061L7.44648 12.1311C7.16698 11.8254 7.18822 11.351 7.49392 11.0715C7.79963 10.792 8.27402 10.8132 8.55352 11.1189L11.25 14.0682V3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V14.0682L15.4465 11.1189C15.726 10.8132 16.2004 10.792 16.5061 11.0715C16.8118 11.351 16.833 11.8254 16.5535 12.1311L12.5535 16.5061Z'\r\n fill={color}\r\n />\r\n <path\r\n d='M3.75 15C3.75 14.5858 3.41422 14.25 3 14.25C2.58579 14.25 2.25 14.5858 2.25 15V15.0549C2.24998 16.4225 2.24996 17.5248 2.36652 18.3918C2.48754 19.2919 2.74643 20.0497 3.34835 20.6516C3.95027 21.2536 4.70814 21.5125 5.60825 21.6335C6.47522 21.75 7.57754 21.75 8.94513 21.75H15.0549C16.4225 21.75 17.5248 21.75 18.3918 21.6335C19.2919 21.5125 20.0497 21.2536 20.6517 20.6516C21.2536 20.0497 21.5125 19.2919 21.6335 18.3918C21.75 17.5248 21.75 16.4225 21.75 15.0549V15C21.75 14.5858 21.4142 14.25 21 14.25C20.5858 14.25 20.25 14.5858 20.25 15C20.25 16.4354 20.2484 17.4365 20.1469 18.1919C20.0482 18.9257 19.8678 19.3142 19.591 19.591C19.3142 19.8678 18.9257 20.0482 18.1919 20.1469C17.4365 20.2484 16.4354 20.25 15 20.25H9C7.56459 20.25 6.56347 20.2484 5.80812 20.1469C5.07435 20.0482 4.68577 19.8678 4.40901 19.591C4.13225 19.3142 3.9518 18.9257 3.85315 18.1919C3.75159 17.4365 3.75 16.4354 3.75 15Z'\r\n fill={color}\r\n />\r\n <defs>\r\n <clipPath id='clip0_23_2'>\r\n <rect width='32' height='32' fill='@text-color' />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n )\r\n}\r\n\r\nexport default DownloadMinimalistIcon\r\n","import React from 'react'\r\nimport DownloadMinimalistIcon from '../../icons/DownloadMinimalistIcon'\r\nimport { IMessagesBalloon } from 'types'\r\nimport RenderFileIcon from '../RenderFileIcon/RenderFileIcon'\r\n\r\nexport function formatFileSize (size = 0) {\r\n if (size % 1 === 0) {\r\n return `${size.toFixed(0)} MB`\r\n }\r\n return `${size.toFixed(2)} MB`\r\n}\r\n\r\nfunction DocMessage ({ file }: IMessagesBalloon) {\r\n const fileType = file?.location?.split('.').pop()?.toUpperCase()\r\n const fileName = file && file.originalname\r\n const filePages = file && file.pages\r\n const fileSize = file && formatFileSize(file?.size)\r\n\r\n return (\r\n <div className='messenger__messages-row--sender'>\r\n <span>\r\n {\r\n <div className='messenger__file-card'>\r\n <div className='messenger__file-icon'>\r\n <RenderFileIcon fileType={file?.mimetype} />\r\n </div>\r\n <div className='messenger__file-details'>\r\n <p className='messenger__file-name'>{fileName}</p>\r\n <p className='messenger__file-info'>\r\n {filePages && filePages + ' página(s) •'} {fileSize} •{' '}\r\n {fileType}\r\n </p>\r\n </div>\r\n <a\r\n href={file?.location}\r\n target='_blank'\r\n rel='noopener noreferrer'\r\n className='messenger__file-download'\r\n style={{ color: 'blue' }}\r\n >\r\n <DownloadMinimalistIcon width='24' height='24' color='white' />\r\n </a>\r\n </div>\r\n }\r\n </span>\r\n </div>\r\n )\r\n}\r\n\r\nexport default DocMessage\r\n","import useTheme from '../../hooks/useThemes'\r\nimport React, { useCallback, useState } from 'react'\r\nimport { Iimages, IInconmingMessage } from 'types'\r\nimport MessengerAvatar from '../MessengerAvatar/MessengerAvatar'\r\nimport ReactSimpleImageViewer from '../../../../../node_modules/react-simple-image-viewer'\r\nimport DocMessage from '../DocMessage/DocMessage'\r\nimport { useTranslation } from 'react-i18next'\r\n\r\ninterface IMessagesWithFile {\r\n file:\r\n | Iimages\r\n | {\r\n contentType: string\r\n location: string\r\n mimetype: string\r\n originalname: string\r\n size?: number\r\n pages?: number\r\n key?: string\r\n }\r\n | undefined\r\n message: string\r\n date: string\r\n openImageViewer: (index: number) => void\r\n id: string\r\n formatDate: (date: string | Date) => string | undefined\r\n currentImage: number\r\n}\r\n\r\nexport const MessageImage = ({ ...rest }) => {\r\n const { t } = useTranslation('messengerMessages')\r\n return (\r\n <div className='messenger__message--file'>\r\n <img\r\n {...rest}\r\n width={200}\r\n height={200}\r\n alt={t('incommingMessage.messageImage')}\r\n />\r\n </div>\r\n )\r\n}\r\n\r\nconst MessageWithFile = ({\r\n file,\r\n message,\r\n date,\r\n openImageViewer,\r\n id,\r\n formatDate,\r\n currentImage,\r\n}: IMessagesWithFile) => {\r\n const isImage = (\r\n file:\r\n | {\r\n contentType: string\r\n location: string\r\n mimetype: string\r\n originalname: string\r\n size?: number\r\n pages?: number\r\n key?: string\r\n }\r\n | Iimages\r\n | undefined\r\n ): file is Iimages => {\r\n if (!file) return false\r\n if (['image/png', 'image/jpeg'].includes(file?.mimetype ?? '')) {\r\n return true\r\n }\r\n return false\r\n }\r\n\r\n return (\r\n <>\r\n {isImage(file) ? (\r\n <MessageImage\r\n src={file?.location}\r\n onClick={() => openImageViewer(currentImage)}\r\n />\r\n ) : (\r\n file && (\r\n <DocMessage\r\n file={file}\r\n message={message}\r\n date={date}\r\n read={false}\r\n id={id}\r\n formatDate={formatDate}\r\n />\r\n )\r\n )}\r\n </>\r\n )\r\n}\r\n\r\nfunction IncomingMessage ({\r\n date,\r\n message,\r\n user,\r\n hasFile,\r\n file,\r\n isSystemMessage,\r\n formatDate,\r\n id,\r\n}: IInconmingMessage) {\r\n const { theme } = useTheme()\r\n const [currentImage, setCurrentImage] = useState(0)\r\n const [isViewerOpen, setIsViewerOpen] = useState(false)\r\n\r\n const openImageViewer = useCallback((index: number) => {\r\n setCurrentImage(index)\r\n setIsViewerOpen(true)\r\n }, [])\r\n\r\n const closeImageViewer = () => {\r\n setCurrentImage(0)\r\n setIsViewerOpen(false)\r\n }\r\n\r\n return (\r\n <div className='messenger__messages-row--received' id={id}>\r\n {(user.avatar || user.name) && !isSystemMessage && (\r\n <div className='messenger__message-avatar mr-2'>\r\n <MessengerAvatar image={user.avatar}>\r\n {user.name.slice(0, 1)}\r\n </MessengerAvatar>\r\n </div>\r\n )}\r\n\r\n <div\r\n className='messenger__messages-received'\r\n style={{ background: theme?.messengerIncomerColor }}\r\n >\r\n {!isSystemMessage && (\r\n <p className='messenger__message-title'>{user.name}</p>\r\n )}\r\n\r\n <span>\r\n {hasFile && (\r\n <MessageWithFile\r\n file={file}\r\n message={message}\r\n date={date}\r\n openImageViewer={openImageViewer}\r\n id={id}\r\n formatDate={formatDate}\r\n currentImage={currentImage}\r\n />\r\n )}\r\n {message && <p className='messenger__message'>{message}</p>}\r\n <p className='messenger__message--date'>\r\n {formatDate(date) ?? new Date(date).toLocaleString()}\r\n </p>\r\n </span>\r\n </div>\r\n {file && isViewerOpen && (\r\n <ReactSimpleImageViewer\r\n src={[file.location]}\r\n currentIndex={0}\r\n disableScroll={false}\r\n closeOnClickOutside={true}\r\n onClose={closeImageViewer}\r\n />\r\n )}\r\n </div>\r\n )\r\n}\r\n\r\nexport default IncomingMessage\r\n","import React from 'react'\r\n\r\nexport default function ReadIcon ({ fill }: { fill: string }) {\r\n return (\r\n <svg\r\n width='15'\r\n height='15'\r\n viewBox='0 0 30 24'\r\n fill='none'\r\n xmlns='http://www.w3.org/2000/svg'\r\n >\r\n <path\r\n d='M29.2857 0.5H26.7893C26.4393 0.5 26.1071 0.660714 25.8929 0.935714L11.1679 19.5893L4.10714 10.6429C4.00033 10.5072 3.86419 10.3976 3.70893 10.3221C3.55367 10.2467 3.38334 10.2074 3.21071 10.2071H0.714286C0.475 10.2071 0.342857 10.4821 0.489286 10.6679L10.2714 23.0607C10.7286 23.6393 11.6071 23.6393 12.0679 23.0607L29.5107 0.957143C29.6571 0.775 29.525 0.5 29.2857 0.5V0.5Z'\r\n fill={fill}\r\n />\r\n </svg>\r\n )\r\n}\r\n","import useTheme from '../../hooks/useThemes'\r\nimport React, { useCallback, useState } from 'react'\r\nimport { IMessagesBalloon } from 'types'\r\nimport ReadIcon from '../../icons/ReadIcon'\r\nimport ReactSimpleImageViewer from 'react-simple-image-viewer'\r\nimport { MessageImage } from '../IncomingMessage/IncomingMessage'\r\nimport DocMessage from '../DocMessage/DocMessage'\r\n\r\nfunction SenderMessages ({\r\n date,\r\n message,\r\n read,\r\n hasFile,\r\n file,\r\n formatDate,\r\n id,\r\n}: IMessagesBalloon) {\r\n const [currentImage, setCurrentImage] = useState(0)\r\n const [isViewerOpen, setIsViewerOpen] = useState(false)\r\n const { theme } = useTheme()\r\n\r\n const openImageViewer = useCallback((index: number) => {\r\n setCurrentImage(index)\r\n setIsViewerOpen(true)\r\n }, [])\r\n\r\n const closeImageViewer = () => {\r\n setCurrentImage(0)\r\n setIsViewerOpen(false)\r\n }\r\n\r\n const isDoc = [\r\n 'application/msword',\r\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\r\n 'application/pdf',\r\n 'text/csv',\r\n 'video/mp4',\r\n ].includes(file?.mimetype ?? '')\r\n\r\n return (\r\n <div className='messenger__messages-row--sender'>\r\n <div\r\n className='messenger__messages-sender'\r\n id={id}\r\n style={{\r\n background: theme?.messengerSenderColor,\r\n color: theme?.documentMessagesTextColor,\r\n }}\r\n >\r\n <span>\r\n {hasFile &&\r\n (isDoc ? (\r\n <DocMessage\r\n date={date}\r\n message={message}\r\n read={read}\r\n file={file}\r\n formatDate={formatDate}\r\n id={id}\r\n />\r\n ) : (\r\n <MessageImage\r\n src={file?.location}\r\n onClick={() => openImageViewer(currentImage)}\r\n />\r\n ))}\r\n\r\n <p className='messenger__message'>{message}</p>\r\n <div className='messenger__message--bottom'>\r\n <p className='messenger__message--date'>\r\n {formatDate(date) ?? new Date(date).toString()}\r\n </p>\r\n <ReadIcon fill={read ? '#00efff' : 'white'} />\r\n </div>\r\n </span>\r\n </div>\r\n\r\n {file && !isDoc && isViewerOpen && (\r\n <ReactSimpleImageViewer\r\n src={[file.location]}\r\n currentIndex={0}\r\n disableScroll={false}\r\n closeOnClickOutside={true}\r\n onClose={closeImageViewer}\r\n />\r\n )}\r\n </div>\r\n )\r\n}\r\n\r\nexport default SenderMessages\r\n","import React from 'react'\r\nimport useTheme from '../../hooks/useThemes'\r\nimport { IInconmingMessage } from 'types'\r\n\r\nfunction SystemMessage ({ date, message, formatDate, id }: IInconmingMessage) {\r\n const { theme } = useTheme()\r\n\r\n return (\r\n <div className='messenger__messages-row--system' id={id}>\r\n <div\r\n className='messenger__messages-received messenger__messages-received--system'\r\n style={{ background: theme?.messengerSystemColor }}\r\n >\r\n <span>\r\n <p className='messenger__message'>{message}</p>\r\n <p className='messenger__message--date'>\r\n {formatDate(date) ?? new Date(date).toString()}\r\n </p>\r\n </span>\r\n </div>\r\n </div>\r\n )\r\n}\r\n\r\nexport default SystemMessage\r\n","import React from 'react'\r\nimport { Iimages, IMessages } from 'types'\r\nimport IncomingMessage from '../IncomingMessage/IncomingMessage'\r\nimport SenderMessages from '../SenderMessages/SenderMessages'\r\nimport SystemMessage from '../SystemMessage/SystemMessage'\r\n\r\nfunction MessageBalloon ({\r\n item,\r\n creatorId,\r\n formatDate,\r\n id,\r\n}: {\r\n item: IMessages\r\n creatorId?: string\r\n formatDate: (date: string | Date) => string | undefined\r\n id: string\r\n}) {\r\n if (item.isSystemMessage) {\r\n return (\r\n <SystemMessage\r\n formatDate={formatDate}\r\n date={item.createdAt}\r\n message={item.content}\r\n id={item.senderId}\r\n user={{ name: 'System' }}\r\n />\r\n )\r\n }\r\n\r\n if (\r\n item.sender.uniqueCode &&\r\n !item.isSystemMessage &&\r\n item.sender.uniqueCode === creatorId\r\n ) {\r\n return (\r\n <>\r\n <SenderMessages\r\n id={id}\r\n formatDate={formatDate}\r\n message={item.content}\r\n date={item.createdAt}\r\n read={item.everybodyHasRead}\r\n hasFile={item.hasFile}\r\n file={item.file}\r\n />\r\n\r\n {item.images &&\r\n item.images.map((image: Iimages, index: number) => (\r\n <SenderMessages\r\n key={image.key}\r\n id={`${id}image-${index}`}\r\n formatDate={formatDate}\r\n date={item.createdAt}\r\n file={image}\r\n message=''\r\n hasFile={true}\r\n read={item.everybodyHasRead}\r\n />\r\n ))}\r\n </>\r\n )\r\n }\r\n\r\n return (\r\n <>\r\n <IncomingMessage\r\n id={id}\r\n formatDate={formatDate}\r\n date={item.createdAt}\r\n message={item.content}\r\n hasFile={item.hasFile}\r\n isSystemMessage={item.isSystemMessage}\r\n file={item.file}\r\n user={{\r\n avatar: item.sender?.image,\r\n name: item.sender.username,\r\n }}\r\n />\r\n\r\n {item.images &&\r\n item.images.map((image: Iimages, index: number) => (\r\n <IncomingMessage\r\n key={image.key}\r\n id={`${id}image-${index}`}\r\n formatDate={formatDate}\r\n date={item.createdAt}\r\n file={image}\r\n message=''\r\n hasFile={true}\r\n user={{\r\n avatar: item.sender?.image,\r\n name: item.sender.username,\r\n }}\r\n />\r\n ))}\r\n </>\r\n )\r\n}\r\n\r\nexport default MessageBalloon\r\n","import React from 'react'\r\n\r\nfunction MessageIcon ({ width, height }: { width: string; height: string }) {\r\n return (\r\n <svg\r\n width={width}\r\n height={height}\r\n viewBox='0 0 32 32'\r\n fill='none'\r\n xmlns='http://www.w3.org/2000/svg'\r\n >\r\n <g clipPath='url(#clip0_23_2)'>\r\n <path\r\n d='M14.2857 16C14.2857 16.4547 14.4663 16.8907 14.7878 17.2122C15.1093 17.5337 15.5453 17.7143 16 17.7143C16.4547 17.7143 16.8907 17.5337 17.2122 17.2122C17.5337 16.8907 17.7143 16.4547 17.7143 16C17.7143 15.5453 17.5337 15.1093 17.2122 14.7878C16.8907 14.4663 16.4547 14.2857 16 14.2857C15.5453 14.2857 15.1093 14.4663 14.7878 14.7878C14.4663 15.1093 14.2857 15.5453 14.2857 16V16ZM21.4286 16C21.4286 16.4547 21.6092 16.8907 21.9307 17.2122C22.2522 17.5337 22.6882 17.7143 23.1429 17.7143C23.5975 17.7143 24.0336 17.5337 24.355 17.2122C24.6765 16.8907 24.8572 16.4547 24.8572 16C24.8572 15.5453 24.6765 15.1093 24.355 14.7878C24.0336 14.4663 23.5975 14.2857 23.1429 14.2857C22.6882 14.2857 22.2522 14.4663 21.9307 14.7878C21.6092 15.1093 21.4286 15.5453 21.4286 16ZM7.14286 16C7.14286 16.4547 7.32347 16.8907 7.64497 17.2122C7.96646 17.5337 8.40249 17.7143 8.85715 17.7143C9.31181 17.7143 9.74784 17.5337 10.0693 17.2122C10.3908 16.8907 10.5714 16.4547 10.5714 16C10.5714 15.5453 10.3908 15.1093 10.0693 14.7878C9.74784 14.4663 9.31181 14.2857 8.85715 14.2857C8.40249 14.2857 7.96646 14.4663 7.64497 14.7878C7.32347 15.1093 7.14286 15.5453 7.14286 16V16ZM30.7572 9.8C29.95 7.88214 28.7929 6.16071 27.3179 4.68214C25.8532 3.21213 24.1144 2.04365 22.2 1.24286C20.2357 0.417857 18.15 0 16 0H15.9286C13.7643 0.0107143 11.6679 0.439286 9.69643 1.28214C7.79842 2.09115 6.07595 3.2617 4.62501 4.72857C3.16429 6.20357 2.01786 7.91786 1.225 9.82857C0.403576 11.8071 -0.01071 13.9107 4.25255e-06 16.075C0.012123 18.5553 0.598904 20.999 1.71429 23.2143V28.6429C1.71429 29.0786 1.88738 29.4964 2.19547 29.8045C2.50357 30.1126 2.92143 30.2857 3.35715 30.2857H8.78929C11.0046 31.4011 13.4483 31.9879 15.9286 32H16.0036C18.1429 32 20.2179 31.5857 22.1714 30.775C24.0762 29.9838 25.8085 28.8289 27.2714 27.375C28.7464 25.9143 29.9072 24.2071 30.7179 22.3036C31.5607 20.3321 31.9893 18.2357 32 16.0714C32.0107 13.8964 31.5893 11.7857 30.7572 9.8V9.8ZM25.3607 25.4429C22.8571 27.9214 19.5357 29.2857 16 29.2857H15.9393C13.7857 29.275 11.6464 28.7393 9.75715 27.7321L9.45715 27.5714H4.42858V22.5429L4.26786 22.2429C3.26072 20.3536 2.725 18.2143 2.71429 16.0607C2.7 12.5 4.06072 9.15714 6.55715 6.63929C9.05001 4.12143 12.3821 2.72857 15.9429 2.71429H16.0036C17.7893 2.71429 19.5214 3.06071 21.1536 3.74643C22.7464 4.41429 24.175 5.375 25.4036 6.60357C26.6286 7.82857 27.5929 9.26071 28.2607 10.8536C28.9536 12.5036 29.3 14.2536 29.2929 16.0607C29.2714 19.6179 27.875 22.95 25.3607 25.4429V25.4429Z'\r\n fill='black'\r\n />\r\n </g>\r\n <defs>\r\n <clipPath id='clip0_23_2'>\r\n <rect width='32' height='32' fill='@text-color' />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n )\r\n}\r\n\r\nexport default MessageIcon\r\n","import React from 'react'\r\n\r\ninterface IProps {\r\n color: string\r\n}\r\nexport default function TrashIcon ({ color }: IProps) {\r\n return (\r\n <svg\r\n width='13'\r\n height='17'\r\n viewBox='0 0 13 17'\r\n fill='none'\r\n xmlns='http://www.w3.org/2000/svg'\r\n >\r\n <path\r\n d='M13 0.928571H9.75L8.82143 0H4.17857L3.25 0.928571H0V2.78571H13M0.928571 14.8571C0.928571 15.3497 1.12423 15.8221 1.47252 16.1703C1.8208 16.5186 2.29317 16.7143 2.78571 16.7143H10.2143C10.7068 16.7143 11.1792 16.5186 11.5275 16.1703C11.8758 15.8221 12.0714 15.3497 12.0714 14.8571V3.71429H0.928571V14.8571Z'\r\n fill={color}\r\n />\r\n </svg>\r\n )\r\n}\r\n","import TrashIcon from '../../icons/TrashIcon'\r\nimport React, { useMemo } from 'react'\r\nimport useTheme from '../../hooks/useThemes'\r\nimport { useTranslation } from 'react-i18next'\r\n\r\ninterface IProps {\r\n fileList: File[]\r\n onUpdateFile: (files: File) => void\r\n label: string\r\n onRemoveFile: (files: File) => void\r\n maxSize: string\r\n loading: boolean\r\n}\r\n\r\nfunction InputFile ({\r\n fileList,\r\n onUpdateFile,\r\n label,\r\n onRemoveFile,\r\n maxSize,\r\n loading,\r\n}: IProps) {\r\n const { theme } = useTheme()\r\n const { t } = useTranslation('newFormChat')\r\n\r\n const validateFileType = useMemo(\r\n () => (allowedTypes: string[], file?: File) => {\r\n if (file?.type) {\r\n return allowedTypes.includes(file.type)\r\n }\r\n const extension = file?.name.split('.').pop()?.toLowerCase()\r\n return extension ? allowedTypes.includes(`.${extension}`) : false\r\n },\r\n []\r\n )\r\n\r\n const onUpload = () => {\r\n const input = document.querySelector('.file-input__input') as HTMLElement\r\n input?.click()\r\n }\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n const file = e?.target?.files?.[0]\r\n\r\n const isAllowedType = validateFileType(\r\n [\r\n 'image/png',\r\n 'image/jpeg',\r\n 'application/pdf',\r\n 'application/msword',\r\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\r\n 'text/csv',\r\n 'video/mp4',\r\n ],\r\n file\r\n )\r\n if (!isAllowedType) {\r\n console.error(t('inputFile.documentSendError'))\r\n return false\r\n }\r\n\r\n if (file) onUpdateFile(file)\r\n return true\r\n }\r\n\r\n const removeItem = (file: File) => {\r\n if (fileList.some((item) => item === file)) {\r\n onRemoveFile(file)\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n <div className='file-input'>\r\n <label\r\n style={{ color: theme.newChatFormTexts }}\r\n htmlFor=''\r\n className='file-input__label'\r\n >\r\n {label}\r\n </label>\r\n <div\r\n className='file-input__container'\r\n style={{\r\n backgroundColor: theme.inputBg,\r\n color: theme.newChatFormTexts,\r\n }}\r\n >\r\n <input\r\n className='file-input__input'\r\n type='file'\r\n id='docpicker'\r\n hidden\r\n accept='.jpg, .jpeg, .png, .pdf, .doc, .docx, .csv, .mp4'\r\n onChange={(event) => onChange(event)}\r\n />\r\n\r\n <h4>{t('inputFile.chooseFile')}</h4>\r\n <button\r\n className='file-input__button'\r\n type='button'\r\n onClick={onUpload}\r\n style={{\r\n background: theme?.buttonPrimary,\r\n color: theme?.buttonPrimaryText,\r\n }}\r\n >\r\n {t('inputFile.chooseFile')}\r\n </button>\r\n\r\n {loading ? (\r\n ''\r\n ) : (\r\n <p>\r\n {t('inputFile.allowDocuments')}(\r\n {t('inputFile.allowSizeDocument', { maxSize })})\r\n </p>\r\n )}\r\n </div>\r\n </div>\r\n\r\n <div>\r\n {fileList &&\r\n fileList.map((item) => (\r\n <div\r\n className='file-input__list'\r\n key={item.name}\r\n style={{\r\n backgroundColor: theme.inputBg,\r\n color: theme.newChatFormTexts,\r\n }}\r\n >\r\n <span className='file-input__list--file-name'>{item.name}</span>\r\n <button\r\n className='file-input__delete'\r\n onClick={() => removeItem(item)}\r\n >\r\n <TrashIcon color={theme.newChatFormDeleteFileButton || 'red'} />\r\n </button>\r\n </div>\r\n ))}\r\n </div>\r\n </>\r\n )\r\n}\r\n\r\nexport default InputFile\r\n","import React from 'react'\r\nimport useTheme from '../../hooks/useThemes'\r\ninterface IProps {\r\n options: {\r\n label: string\r\n value: string\r\n }[]\r\n label: string\r\n onChange: (value: string) => void\r\n name: string\r\n placeholder: string\r\n value: string\r\n}\r\n\r\nfunction SelectNew ({\r\n options,\r\n name,\r\n placeholder,\r\n label,\r\n onChange,\r\n value,\r\n}: IProps) {\r\n const { theme } = useTheme()\r\n return (\r\n <div className='form-select'>\r\n <label\r\n htmlFor={name}\r\n className='form-select__label'\r\n style={{ color: theme.newChatFormTexts }}\r\n >\r\n {label}\r\n </label>\r\n <select\r\n name={name}\r\n className='form-select__input'\r\n onChange={(e) => onChange(e.target.value)}\r\n value={value}\r\n style={{\r\n backgroundColor: theme.inputBg,\r\n color: theme.newChatFormTexts,\r\n }}\r\n >\r\n <option value='' disabled hidden>\r\n {placeholder}\r\n </option>\r\n {options.map((motivo) => (\r\n <option key={motivo.value} value={motivo.value}>\r\n {motivo.label}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n )\r\n}\r\n\r\nexport default SelectNew\r\n","import React from 'react'\r\nimport useTheme from '../../hooks/useThemes'\r\ninterface IProps {\r\n label: string\r\n onChange: (value: string) => void\r\n name: string\r\n placeholder: string\r\n}\r\n\r\nfunction Textarea ({ name, placeholder, label, onChange }: IProps) {\r\n const { theme } = useTheme()\r\n return (\r\n <div className='text-area'>\r\n <label\r\n htmlFor={name}\r\n className='text-area__label'\r\n style={{ color: theme.newChatFormTexts }}\r\n >\r\n {label}\r\n </label>\r\n <textarea\r\n style={{\r\n backgroundColor: theme.inputBg,\r\n color: theme.newChatFormTexts,\r\n }}\r\n name={name}\r\n placeholder={placeholder}\r\n className='text-area__input'\r\n onChange={(e) => onChange(e.target.value)}\r\n />\r\n </div>\r\n )\r\n}\r\n\r\nexport default Textarea\r\n","import React from 'react'\r\nimport useTheme from '../hooks/useThemes'\r\n\r\nexport default function CloseIcon () {\r\n const { theme } = useTheme()\r\n return (\r\n <svg\r\n width='21'\r\n height='21'\r\n viewBox='0 0 21 21'\r\n fill='none'\r\n xmlns='http://www.w3.org/2000/svg'\r\n >\r\n <path\r\n d='M13.4519 10.9583L20.435 3.9751C20.7664 3.64426 20.9529 3.19532 20.9533 2.72704C20.9537 2.25875 20.7681 1.80949 20.4372 1.47807C20.1064 1.14665 19.6574 0.960225 19.1892 0.959812C18.7209 0.959398 18.2716 1.14503 17.9402 1.47586L10.957 8.45902L3.97388 1.47586C3.64246 1.14444 3.19296 0.958252 2.72426 0.958252C2.25556 0.958252 1.80606 1.14444 1.47464 1.47586C1.14322 1.80728 0.957031 2.25678 0.957031 2.72548C0.957031 3.19418 1.14322 3.64368 1.47464 3.9751L8.4578 10.9583L1.47464 17.9414C1.14322 18.2728 0.957031 18.7223 0.957031 19.191C0.957031 19.6597 1.14322 20.1092 1.47464 20.4406C1.80606 20.7721 2.25556 20.9583 2.72426 20.9583C3.19296 20.9583 3.64246 20.7721 3.97388 20.4406L10.957 13.4575L17.9402 20.4406C18.2716 20.7721 18.7211 20.9583 19.1898 20.9583C19.6585 20.9583 20.108 20.7721 20.4394 20.4406C20.7708 20.1092 20.957 19.6597 20.957 19.191C20.957 18.7223 20.7708 18.2728 20.4394 17.9414L13.4519 10.9583Z'\r\n fill={theme.newChatFormTexts ?? '#476077'}\r\n />\r\n </svg>\r\n )\r\n}\r\n","import React, { FormEvent, useState } from 'react'\r\n\r\nimport InputFile from '../components/InputFile/InputFile'\r\nimport Select from '../components/Select/Select'\r\nimport Textarea from '../components/TextArea/TextArea'\r\nimport useTheme from '../hooks/useThemes'\r\nimport CloseIcon from '../icons/CloseIcon'\r\nimport { IOption } from 'types'\r\nimport { useTranslation } from 'react-i18next'\r\n\r\ninterface IProps {\r\n submitNewChat: (values: FormData) => void\r\n cancelNewChat: () => void\r\n reasons: Array<IOption>\r\n products: Array<IOption>\r\n loading: boolean\r\n maxFileSize: string\r\n loadingResources: boolean\r\n}\r\n\r\nfunction NewChatForm ({\r\n submitNewChat,\r\n cancelNewChat,\r\n reasons,\r\n products,\r\n loading,\r\n maxFileSize,\r\n loadingResources,\r\n}: IProps) {\r\n const [reason, setReason] = useState<string>(reasons?.[0]?.value)\r\n const [product, setProduct] = useState<string>(products?.[0]?.value)\r\n const [message, setMessage] = useState<string>()\r\n const [fileList, setFileList] = useState<File[]>([])\r\n const { t } = useTranslation('newFormChat')\r\n\r\n const { theme } = useTheme()\r\n\r\n const onSubmit = (event: FormEvent) => {\r\n const data2 = new FormData()\r\n event.preventDefault()\r\n\r\n fileList.forEach((file) => {\r\n data2.append(`documents`, file, file.name)\r\n })\r\n\r\n if (reason) data2.append('reason', reason)\r\n if (product) data2.append('product', product)\r\n\r\n if (message) data2.append('message', message)\r\n submitNewChat(data2)\r\n }\r\n\r\n const onUpdateFile = (file: File) => {\r\n setFileList((files) => [...files, file])\r\n }\r\n\r\n const onRemoveFile = (file: File) => {\r\n setFileList(fileList.filter((item: File) => item !== file))\r\n }\r\n\r\n return (\r\n <div\r\n className='messenger__new-chat-form'\r\n style={{\r\n backgroundColor: theme.newChatFormBg,\r\n borderRadius: theme.newChatFormRadius,\r\n }}\r\n >\r\n <div className='messenger__new-chat-form-header'>\r\n <h2 className='messenger__new-chat-form-title'>\r\n <b style={{ color: theme.newChatFormTexts }}>{t('newChat')}</b>\r\n </h2>\r\n\r\n <button\r\n onClick={cancelNewChat}\r\n className='messenger__new-chat-form-close'\r\n >\r\n <CloseIcon />\r\n </button>\r\n </div>\r\n\r\n <h3\r\n className='messenger__disclaimer'\r\n style={{\r\n borderColor: theme.disclaimerPrimaryColor,\r\n color: theme.disclaimerTextColor,\r\n backgroundColor: theme.disclaimerSecondaryColor,\r\n }}\r\n >\r\n {t('description.1')} <b>{t('description.1/2bold')}</b>{' '}\r\n {t('description.2')}\r\n </h3>\r\n\r\n <form onSubmit={onSubmit} className='messenger__new-chat-fields'>\r\n <Select\r\n onChange={(value) => setReason(value)}\r\n options={reasons}\r\n placeholder={t('fields.reasons.placeholder')}\r\n name='reasons'\r\n value={reason}\r\n label={t('fields.reasons.label')}\r\n />\r\n\r\n <Select\r\n onChange={(value) => setProduct(value)}\r\n options={products}\r\n placeholder={t('fields.product.placeholder')}\r\n value={product}\r\n name='product'\r\n label={t('fields.product.label')}\r\n />\r\n\r\n <InputFile\r\n fileList={fileList}\r\n onUpdateFile={onUpdateFile}\r\n onRemoveFile={onRemoveFile}\r\n label={t('fields.document.label')}\r\n maxSize={maxFileSize}\r\n loading={loadingResources}\r\n />\r\n\r\n <Textarea\r\n onChange={(value) => setMessage(value)}\r\n placeholder={t('fields.message.placeholder')}\r\n name='message'\r\n label={t('fields.message.label')}\r\n />\r\n\r\n <button\r\n className={`w-100 ${!loading ? 'messenger__new-chat-form-send' : 'messenger__new-chat-form-send messenger__new-chat-form-send--disabled'}`}\r\n disabled={loading}\r\n type='submit'\r\n style={{\r\n backgroundColor: !loading ? theme.buttonPrimary : '#ccc',\r\n color: theme.buttonPrimaryText,\r\n }}\r\n >\r\n {!loading ? t('buttons.send') : t('buttons.sendingButton')}\r\n </button>\r\n </form>\r\n </div>\r\n )\r\n}\r\n\r\nexport default NewChatForm\r\n","import React from 'react'\r\nimport useTheme from '../hooks/useThemes'\r\n\r\nexport default function AttachFileIcon ({ ...rest }) {\r\n const { theme } = useTheme()\r\n return (\r\n <svg\r\n width='26'\r\n height='28'\r\n viewBox='0 0 26 28'\r\n xmlns='http://www.w3.org/2000/svg'\r\n {...rest}\r\n >\r\n <path\r\n d='M22.5464 2.73571C19.1821 -0.628572 13.7036 -0.628572 10.3429 2.73571L1.02143 12.05C0.960715 12.1107 0.928572 12.1929 0.928572 12.2786C0.928572 12.3643 0.960715 12.4464 1.02143 12.5071L2.33929 13.825C2.39953 13.885 2.48107 13.9186 2.56607 13.9186C2.65108 13.9186 2.73262 13.885 2.79286 13.825L12.1143 4.51071C13.2714 3.35357 14.8107 2.71786 16.4464 2.71786C18.0821 2.71786 19.6214 3.35357 20.775 4.51071C21.9321 5.66786 22.5679 7.20714 22.5679 8.83929C22.5679 10.475 21.9321 12.0107 20.775 13.1679L11.275 22.6643L9.73572 24.2036C8.29643 25.6429 5.95714 25.6429 4.51786 24.2036C3.82143 23.5071 3.43929 22.5821 3.43929 21.5964C3.43929 20.6107 3.82143 19.6857 4.51786 18.9893L13.9429 9.56786C14.1821 9.33214 14.4964 9.2 14.8321 9.2H14.8357C15.1714 9.2 15.4821 9.33214 15.7179 9.56786C15.9571 9.80714 16.0857 10.1214 16.0857 10.4571C16.0857 10.7893 15.9536 11.1036 15.7179 11.3393L8.01429 19.0357C7.95357 19.0964 7.92143 19.1786 7.92143 19.2643C7.92143 19.35 7.95357 19.4321 8.01429 19.4929L9.33214 20.8107C9.39238 20.8707 9.47393 20.9044 9.55893 20.9044C9.64393 20.9044 9.72548 20.8707 9.78572 20.8107L17.4857 13.1107C18.1964 12.4 18.5857 11.4571 18.5857 10.4536C18.5857 9.45 18.1929 8.50357 17.4857 7.79643C16.0179 6.32857 13.6321 6.33214 12.1643 7.79643L11.25 8.71429L2.74286 17.2179C2.16547 17.7919 1.70778 18.4748 1.39634 19.227C1.0849 19.9793 0.925905 20.7858 0.928572 21.6C0.928572 23.2536 1.575 24.8071 2.74286 25.975C3.95357 27.1821 5.53929 27.7857 7.125 27.7857C8.71072 27.7857 10.2964 27.1821 11.5036 25.975L22.5464 14.9393C24.1714 13.3107 25.0714 11.1429 25.0714 8.83929C25.075 6.53214 24.175 4.36429 22.5464 2.73571Z'\r\n fill={theme.uploadFileIconColor}\r\n />\r\n </svg>\r\n )\r\n}\r\n","import React, { ReactNode } from 'react'\r\n\r\ninterface ToolTipProps {\r\n text: string\r\n children: ReactNode\r\n}\r\n\r\nconst ToolTip: React.FC<ToolTipProps> = ({ text, children }) => {\r\n return (\r\n <div className='tooltip'>\r\n {children}\r\n <div className='tooltip__text'>{text}</div>\r\n </div>\r\n )\r\n}\r\n\r\nexport default ToolTip\r\n","import useTheme from '../../hooks/useThemes'\r\nimport React, {\r\n Fragment,\r\n MutableRefObject,\r\n useMemo,\r\n useRef,\r\n useState,\r\n} from 'react'\r\nimport { IList } from 'types'\r\nimport AttachFileIcon from '../../../Messenger/icons/AttachFileIcon'\r\nimport rightArrow from '../../../../assets/right-arrow.svg'\r\nimport { SpinLoading } from '../../views/MessengerMessages'\r\nimport ToolTip from '../Tooltip/Tooltip'\r\nimport { useTranslation } from 'react-i18next'\r\n\r\ninterface IProps {\r\n allowImages: boolean\r\n current?: IList\r\n onSubmit: (value: FormData, callback: () => void) => void\r\n file?: File | null\r\n updateFile: (file: File | null) => void\r\n isLoading?: boolean\r\n maxFileSize: string\r\n}\r\n\r\nfunction AllowDocuments ({\r\n allowImages,\r\n attachFile,\r\n handleFile,\r\n closedChat,\r\n maxFileField,\r\n}: {\r\n allowImages: boolean\r\n attachFile: MutableRefObject<HTMLInputElement | null>\r\n handleFile: (e: React.ChangeEvent<HTMLInputElement>) => void\r\n closedChat: boolean\r\n maxFileField: string\r\n}) {\r\n const { t } = useTranslation('messengerMessages')\r\n\r\n if (allowImages) {\r\n return (\r\n <Fragment>\r\n <input\r\n type='file'\r\n size={1}\r\n className='messenger__messages-send--file'\r\n ref={attachFile}\r\n onChange={handleFile}\r\n accept='.jpg, .jpeg, .png, .pdf, .doc, .docx, .mp4, .csv'\r\n />\r\n\r\n <ToolTip text={t('sendMessageForm.maxFileField', { maxFileField })}>\r\n <AttachFileIcon\r\n className={`messenger__messages-send__attach ${closedChat ? 'messenger__messages-send__attach--disabled' : ''}`}\r\n onClick={() => (!closedChat ? attachFile.current?.click() : null)}\r\n />\r\n </ToolTip>\r\n </Fragment>\r\n )\r\n }\r\n\r\n return <></>\r\n}\r\n\r\nfunction SendMessageForm ({\r\n allowImages,\r\n current,\r\n onSubmit,\r\n file,\r\n updateFile,\r\n isLoading,\r\n maxFileSize,\r\n}: IProps) {\r\n const { t } = useTranslation('messengerMessages')\r\n const [formHeight, setFormHeight] = useState<number>(100)\r\n const [sending, setSending] = useState<boolean>(false)\r\n\r\n const inputRef: MutableRefObject<HTMLTextAreaElement | null> = useRef(null)\r\n const attachFile: MutableRefObject<HTMLInputElement | null> = useRef(null)\r\n\r\n const closedChat = useMemo(\r\n () => current?.status.current.state === 'final',\r\n [current]\r\n )\r\n\r\n const { theme } = useTheme()\r\n\r\n function correctTextAreaHeight (styleConfig: {\r\n height: number\r\n overflow: string\r\n }) {\r\n const textarea = inputRef.current\r\n if (textarea) {\r\n textarea.style.height = `${styleConfig.height}px`\r\n textarea.style.overflowY = styleConfig.overflow\r\n }\r\n }\r\n\r\n function resetHeights () {\r\n const inicialFormHeight = 100\r\n const inicialTextAreaHeight = 50\r\n setFormHeight(inicialFormHeight)\r\n correctTextAreaHeight({ height: inicialTextAreaHeight, overflow: 'hidden' })\r\n }\r\n\r\n function adjustFormHeight (textareaRef: typeof inputRef.current) {\r\n if (textareaRef) {\r\n const initialHeight = 50\r\n const maxHeight = 80\r\n const newHeight = textareaRef.scrollHeight\r\n\r\n if (newHeight > maxHeight) {\r\n correctTextAreaHeight({\r\n height: maxHeight,\r\n overflow: 'auto',\r\n })\r\n return maxHeight + initialHeight\r\n }\r\n\r\n correctTextAreaHeight({\r\n height: initialHeight,\r\n overflow: 'auto',\r\n })\r\n return initialHeight * 2\r\n }\r\n\r\n return formHeight\r\n }\r\n\r\n function handleTextareaChange () {\r\n const textarea = inputRef.current\r\n setFormHeight(adjustFormHeight(textarea))\r\n }\r\n\r\n function handleSubmit (e?: React.FormEvent<HTMLFormElement>) {\r\n e?.preventDefault()\r\n if (sending) return\r\n setSending(true)\r\n\r\n const data = new FormData()\r\n if (file) data.append('file', file)\r\n if (inputRef.current?.value) data.append('message', inputRef.current?.value)\r\n\r\n onSubmit(data, () => {\r\n if (inputRef.current) inputRef.current.value = ''\r\n if (file) updateFile(null)\r\n setSending(false)\r\n resetHeights()\r\n })\r\n }\r\n\r\n function handleFile (e: React.ChangeEvent<HTMLInputElement>) {\r\n if (e.target.files) {\r\n const file = e.target.files[0]\r\n const allowedTypes = [\r\n 'image/png',\r\n 'image/jpeg',\r\n 'application/pdf',\r\n 'application/msword',\r\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\r\n 'text/csv',\r\n 'video/mp4',\r\n ]\r\n const allowedExtensions = [\r\n 'png',\r\n 'jpeg',\r\n 'jpg',\r\n 'pdf',\r\n 'doc',\r\n 'docx',\r\n 'csv',\r\n 'mp4',\r\n ]\r\n const fileType = file?.type\r\n const fileExtension = file?.name.split('.').pop()?.toLowerCase()\r\n const isAllowed = fileType\r\n ? allowedTypes.includes(fileType)\r\n : fileExtension\r\n ? allowedExtensions.includes(fileExtension)\r\n : false\r\n if (isAllowed) {\r\n updateFile(file)\r\n }\r\n }\r\n }\r\n\r\n return (\r\n <form\r\n onSubmit={handleSubmit}\r\n className='messenger__messages-send--form'\r\n style={{\r\n height: `${formHeight}px`,\r\n maxHeight: '150px',\r\n }}\r\n >\r\n <div className='messenger__messages-send__input-container'>\r\n <textarea\r\n onChange={handleTextareaChange}\r\n placeholder={\r\n closedChat\r\n ? t('sendMessageForm.chatEnded')\r\n : t('sendMessageForm.typeMessage')\r\n }\r\n ref={inputRef}\r\n onKeyDown={(e) => {\r\n if (e.key === 'Enter' && !e.shiftKey) {\r\n e.preventDefault()\r\n handleSubmit()\r\n }\r\n }}\r\n className={`messenger__messages-send__input ${closedChat || sending ? 'messenger__messages-send__input--disabled' : ''} `}\r\n disabled={closedChat || sending}\r\n style={{\r\n backgroundColor: theme?.inputBg,\r\n }}\r\n />\r\n\r\n <AllowDocuments\r\n allowImages={allowImages}\r\n handleFile={handleFile}\r\n attachFile={attachFile}\r\n closedChat={closedChat}\r\n maxFileField={maxFileSize}\r\n />\r\n </div>\r\n\r\n {isLoading ? (\r\n <div className='messenger__messages-sending'>\r\n <SpinLoading />\r\n </div>\r\n ) : (\r\n <button\r\n type='submit'\r\n className={`messenger__messages-send__button ${closedChat || sending ? 'messenger__messages-send__button--disabled' : ''}`}\r\n disabled={closedChat || sending}\r\n style={{\r\n backgroundColor: theme?.buttonPrimary,\r\n }}\r\n >\r\n <img\r\n alt={t('sendMessageForm.rightIcon')}\r\n height={25}\r\n width={25}\r\n className='ml-1'\r\n src={rightArrow}\r\n />\r\n </button>\r\n )}\r\n </form>\r\n )\r\n}\r\n\r\nexport default SendMessageForm\r\n","import React, {\r\n Fragment,\r\n useState,\r\n useRef,\r\n MutableRefObject,\r\n useEffect,\r\n} from 'react'\r\nimport ImagesContainer from '../components/ImagesContainer/ImagesContainer'\r\nimport MessageBalloon from '../components/MessageBallon/MessageBalloon'\r\n\r\nimport MessageIcon from '../icons/MessageIcon'\r\n\r\nimport { ICommonProps, IList, IMessages, IOption } from 'types'\r\nimport useTheme from '../hooks/useThemes'\r\n\r\nimport NewChatForm from './NewFormChat'\r\nimport EmptyIcon from '../icons/EmptyIcon'\r\nimport SendMessageForm from '../components/SendMessageForm/SendMessageForm'\r\nimport InfiniteScroll from '../components/InfiniteScroll/InfiniteScroll'\r\nimport { formatFileSize } from '../components/DocMessage/DocMessage'\r\nimport { useTranslation } from 'react-i18next'\r\n\r\ninterface IScrollableContainer {\r\n loading: boolean\r\n onIntersect: () => Promise<void>\r\n hasNext: boolean\r\n}\r\n\r\ntype MessengerView = 'empty' | 'messages' | 'newChat'\r\n\r\ninterface IMessengerMessages extends ICommonProps, IScrollableContainer {\r\n header: React.ReactElement\r\n current?: IList\r\n creatorId?: string\r\n allowImages: boolean\r\n tab?: 'list' | 'messages'\r\n messegerView: MessengerView\r\n className?: string\r\n messages: IMessages[]\r\n onSubmit: (value: FormData, callback: () => void) => Promise<void>\r\n cancelNewChat: () => void\r\n formatDate: (date: string | Date) => string | undefined\r\n reasons: Array<IOption>\r\n products: Array<IOption>\r\n submitNewChat: (values: FormData) => void\r\n newChatLoading: boolean\r\n maxFileSize: () => Promise<{ data: { data: { maxFileSize: number } } }>\r\n}\r\n\r\ninterface IMessengerForm {\r\n children: React.ReactNode\r\n messegerView: MessengerView\r\n reasons: Array<IOption>\r\n products: Array<IOption>\r\n submitNewChat: (values: FormData) => void\r\n cancelNewChat: () => void\r\n newChatLoading: boolean\r\n maxFileSize: string\r\n loadingResources: boolean\r\n}\r\n\r\nfunction MessagesContainerView ({\r\n children,\r\n messegerView,\r\n submitNewChat,\r\n cancelNewChat,\r\n reasons,\r\n products,\r\n newChatLoading,\r\n maxFileSize,\r\n loadingResources,\r\n}: IMessengerForm) {\r\n const { theme } = useTheme()\r\n const { t } = useTranslation('messengerMessages')\r\n\r\n if (messegerView === 'empty') {\r\n return (\r\n <div\r\n className='messenger__messages-container--empty'\r\n style={{ backgroundColor: theme?.messengerNotSelectedBg }}\r\n >\r\n <MessageIcon width='72' height='72' />\r\n <p>{t('selectConversation')}</p>\r\n </div>\r\n )\r\n }\r\n\r\n if (messegerView === 'newChat') {\r\n return (\r\n <NewChatForm\r\n reasons={reasons}\r\n products={products}\r\n submitNewChat={submitNewChat}\r\n cancelNewChat={cancelNewChat}\r\n loading={newChatLoading}\r\n maxFileSize={maxFileSize}\r\n loadingResources={loadingResources}\r\n />\r\n )\r\n }\r\n\r\n return <>{children}</>\r\n}\r\n\r\nexport function SpinLoading () {\r\n return (\r\n <div className='messenger__messages-loading'>\r\n <div className='messenger__messages-loading--loader' />\r\n </div>\r\n )\r\n}\r\n\r\nfunction Messages ({\r\n messages,\r\n creatorId,\r\n formatDate,\r\n loading,\r\n}: {\r\n messages: IMessages[]\r\n creatorId?: string\r\n formatDate: (date: string | Date) => string | undefined\r\n loading: boolean\r\n}) {\r\n const { theme } = useTheme()\r\n const { t } = useTranslation('messengerMessages')\r\n\r\n if (!messages || (messages.length === 0 && !loading)) {\r\n return (\r\n <div\r\n className='messenger__message-empty'\r\n style={{ color: theme.emptyMessagesFontColor }}\r\n >\r\n <EmptyIcon />\r\n <p>{t('noMessagesFound')}</p>\r\n </div>\r\n )\r\n }\r\n\r\n return (\r\n <>\r\n {messages.map((item, idx) => {\r\n return (\r\n <Fragment key={`${item.ticketId}_${item.senderId}_${idx}`}>\r\n <MessageBalloon\r\n id={`message_${idx}`}\r\n formatDate={formatDate}\r\n creatorId={creatorId}\r\n item={item}\r\n />\r\n </Fragment>\r\n )\r\n })}\r\n </>\r\n )\r\n}\r\n\r\nconst onScrollToBottom = (\r\n scrollContainer: MutableRefObject<HTMLDivElement | null>\r\n) => {\r\n if (scrollContainer.current) {\r\n scrollContainer.current.scrollTop = Number.MAX_SAFE_INTEGER\r\n }\r\n}\r\n\r\nfunction MessagesContainer ({\r\n children,\r\n fowardRef,\r\n ...rest\r\n}: {\r\n children: React.ReactNode\r\n fowardRef: MutableRefObject<HTMLDivElement | null>\r\n} & React.DetailedHTMLProps<\r\n React.HTMLAttributes<HTMLDivElement>,\r\n HTMLDivElement\r\n>) {\r\n const { theme } = useTheme()\r\n\r\n return (\r\n <div\r\n {...rest}\r\n ref={fowardRef}\r\n className='messenger__messages-container'\r\n style={{\r\n padding: '1rem',\r\n backgroundColor: theme?.messengerMessagesBg,\r\n border: `1px solid ${theme.borderColor}`,\r\n }}\r\n >\r\n {children}\r\n </div>\r\n )\r\n}\r\n\r\nfunction ScrollableContainer ({\r\n children,\r\n loading,\r\n onIntersect,\r\n hasNext,\r\n scrollContainerFowardRef,\r\n}: {\r\n children: React.ReactNode\r\n scrollContainerFowardRef: MutableRefObject<HTMLDivElement | null>\r\n} & IScrollableContainer) {\r\n const intersetRootMargin = 300\r\n\r\n const getElementScrollHeight = (divRef: HTMLDivElement | null) => {\r\n if (!divRef) return null\r\n return divRef.scrollHeight\r\n }\r\n\r\n const getElementScrollTop = (divRef: HTMLDivElement | null) => {\r\n if (!divRef) return null\r\n return divRef.scrollTop\r\n }\r\n\r\n const calculateScrollToDecrease = (\r\n elementBeforeIntersetHeight: number,\r\n elementAfterIntersectHeight: number,\r\n intersetRootMargin: number\r\n ) => {\r\n return (\r\n Math.abs(elementAfterIntersectHeight - elementBeforeIntersetHeight) +\r\n intersetRootMargin\r\n )\r\n }\r\n\r\n const isNill = (value: number | null | undefined) => {\r\n return value === null && value === undefined\r\n }\r\n\r\n const onFetchInfiniteScroll = async () => {\r\n const elementBeforeIntersetHeight = getElementScrollHeight(\r\n scrollContainerFowardRef.current\r\n )\r\n\r\n await onIntersect()\r\n\r\n const elementAfterIntersectHeight = getElementScrollHeight(\r\n scrollContainerFowardRef.current\r\n )\r\n\r\n if (\r\n scrollContainerFowardRef.current &&\r\n !isNill(elementBeforeIntersetHeight) &&\r\n !isNill(elementAfterIntersectHeight)\r\n ) {\r\n const currentScrollTop =\r\n getElementScrollTop(scrollContainerFowardRef.current) || 0\r\n scrollContainerFowardRef.current.scrollTop = calculateScrollToDecrease(\r\n elementAfterIntersectHeight as number,\r\n elementBeforeIntersetHeight as number,\r\n currentScrollTop\r\n )\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n onScrollToBottom(scrollContainerFowardRef)\r\n }, [])\r\n\r\n return (\r\n <MessagesContainer fowardRef={scrollContainerFowardRef}>\r\n <InfiniteScroll\r\n root={document.querySelector('.messenger__messages-container')}\r\n loading={loading}\r\n loadingCover={<SpinLoading />}\r\n more={hasNext}\r\n fetch={onFetchInfiniteScroll}\r\n rootMargin={intersetRootMargin}\r\n reverse\r\n >\r\n {children}\r\n </InfiniteScroll>\r\n </MessagesContainer>\r\n )\r\n}\r\n\r\nfunction MessengerMessages ({\r\n header,\r\n tab,\r\n className = '',\r\n current,\r\n messages,\r\n allowImages,\r\n creatorId,\r\n loading,\r\n onSubmit,\r\n submitNewChat,\r\n cancelNewChat,\r\n reasons,\r\n products,\r\n messegerView,\r\n formatDate,\r\n hasNext,\r\n onIntersect,\r\n newChatLoading,\r\n maxFileSize,\r\n}: IMessengerMessages) {\r\n const { t } = useTranslation('messengerMessages')\r\n const [file, setFile] = useState<File | null>()\r\n const scrollContainerRef = useRef<HTMLDivElement | null>(null)\r\n const [isSending, setIsSending] = useState(false)\r\n const [maxSize, setMaxSize] = useState<string>('')\r\n\r\n const { theme } = useTheme()\r\n\r\n const styleClassnames = {\r\n mobile: tab === 'list' ? 'messenger__mobile-hide' : '',\r\n }\r\n\r\n const updateFile = (file: File | null) => {\r\n setFile(file)\r\n }\r\n\r\n const onSubmitNewMessage = async (\r\n message: FormData,\r\n callback: () => void\r\n ) => {\r\n setIsSending(true)\r\n try {\r\n await onSubmit(message, callback)\r\n onScrollToBottom(scrollContainerRef)\r\n } finally {\r\n setIsSending(false)\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n const fetchMaxFileSize = async () => {\r\n try {\r\n const response = await maxFileSize()\r\n const size = formatFileSize(response.data.data.maxFileSize)\r\n setMaxSize(size)\r\n } catch (error) {\r\n console.error(t('errorSearchingMaxFileSize'), error)\r\n }\r\n }\r\n\r\n fetchMaxFileSize()\r\n }, [maxSize])\r\n\r\n return (\r\n <div\r\n className={`messenger__messages ${className} ${styleClassnames.mobile} `}\r\n >\r\n <MessagesContainerView\r\n newChatLoading={newChatLoading}\r\n reasons={reasons}\r\n products={products}\r\n submitNewChat={submitNewChat}\r\n cancelNewChat={cancelNewChat}\r\n messegerView={messegerView}\r\n maxFileSize={maxSize}\r\n loadingResources={loading}\r\n >\r\n {file ? (\r\n <ImagesContainer file={file} onClose={() => setFile(null)} />\r\n ) : (\r\n <>\r\n <div\r\n className='messenger__messages-header'\r\n style={{\r\n backgroundColor: theme?.headerAndSenderBg,\r\n border: `1px solid ${theme.borderColor}`,\r\n }}\r\n >\r\n {React.cloneElement(header)}\r\n </div>\r\n\r\n {loading && !messages.length ? (\r\n <MessagesContainer fowardRef={scrollContainerRef}>\r\n <SpinLoading />\r\n </MessagesContainer>\r\n ) : (\r\n <ScrollableContainer\r\n scrollContainerFowardRef={scrollContainerRef}\r\n loading={loading}\r\n hasNext={hasNext}\r\n onIntersect={onIntersect}\r\n >\r\n <Messages\r\n formatDate={formatDate}\r\n messages={messages}\r\n creatorId={creatorId}\r\n loading={loading}\r\n />\r\n </ScrollableContainer>\r\n )}\r\n </>\r\n )}\r\n\r\n <div\r\n className='messenger__messages-send'\r\n style={{\r\n backgroundColor: theme?.headerAndSenderBg,\r\n border: `1px solid ${theme.borderColor}`,\r\n }}\r\n >\r\n <SendMessageForm\r\n allowImages={allowImages}\r\n onSubmit={onSubmitNewMessage}\r\n file={file}\r\n updateFile={updateFile}\r\n current={current}\r\n isLoading={isSending}\r\n maxFileSize={maxSize}\r\n />\r\n </div>\r\n </MessagesContainerView>\r\n </div>\r\n )\r\n}\r\n\r\nexport default MessengerMessages\r\n","import { useState } from 'react'\r\nimport { IList } from 'types'\r\n\r\ntype _viewDesktop = 'empty' | 'messages' | 'newChat'\r\ntype _viewMobile = 'list' | 'messages'\r\n\r\nexport const useConversations = () => {\r\n const SLICE = 15\r\n const [sliceCount, setSliceCount] = useState(SLICE)\r\n const [conversations, setConversations] = useState<IList[]>([])\r\n const [currentChat, setCurrentChat] = useState<IList>()\r\n const [viewDesktop, setViewDesktop] = useState<_viewDesktop>('empty')\r\n const [viewMobile, setViewMobile] = useState<'list' | 'messages'>('list')\r\n\r\n const changeViewDesktop = (view: _viewDesktop) => {\r\n setViewDesktop(view)\r\n }\r\n\r\n const changeViewMobile = (view: _viewMobile) => {\r\n setViewMobile(view)\r\n }\r\n\r\n const selectChat = (chat: IList) => {\r\n setCurrentChat(chat)\r\n }\r\n\r\n const onIntersect = () => {\r\n setSliceCount((prev) => {\r\n const count = prev + SLICE\r\n return count\r\n })\r\n }\r\n\r\n const hasNext = () => {\r\n return conversations.length >= sliceCount\r\n }\r\n\r\n const resetConversations = () => {\r\n setConversations([])\r\n }\r\n\r\n const mapConversationsUnread = (prev: IList[]) => (id: string) => {\r\n return (prev || []).map((conversation) => {\r\n if (conversation?._id === id) {\r\n return {\r\n ...conversation,\r\n totalUnreadMessages: 0,\r\n }\r\n }\r\n\r\n return conversation\r\n })\r\n }\r\n\r\n const reorderConversations = (conversations: IList[], ticketId?: string) => {\r\n const index = conversations.findIndex(\r\n (conversation) => conversation._id === ticketId\r\n )\r\n if (index !== -1) {\r\n const conversationToMove = conversations.splice(index, 1)[0]\r\n conversations.unshift(conversationToMove)\r\n }\r\n }\r\n\r\n const mapConversationsIncrementUnread =\r\n (prev: IList[], ticketId?: string) => (id: string) => {\r\n const updatedConversations = (prev || []).map((conversation) => {\r\n if (conversation._id === id) {\r\n return {\r\n ...conversation,\r\n totalUnreadMessages:\r\n ticketId === id ? 0 : conversation.totalUnreadMessages + 1,\r\n }\r\n }\r\n return conversation\r\n })\r\n\r\n reorderConversations(updatedConversations, ticketId)\r\n\r\n return updatedConversations\r\n }\r\n\r\n const setAsRead = (id: string) => {\r\n setConversations((prev) => mapConversationsUnread(prev)(id))\r\n }\r\n\r\n const addConversations = (\r\n conversations: IList[],\r\n goToNewConversation?: (chat: IList) => void\r\n ) => {\r\n setConversations(conversations)\r\n\r\n if (goToNewConversation) goToNewConversation(conversations[0])\r\n }\r\n\r\n const addOneUnreadToTicket = (ticketId: string, currentChat?: string) => {\r\n setConversations((prev) => {\r\n return mapConversationsIncrementUnread(prev, currentChat)(ticketId)\r\n })\r\n }\r\n\r\n const removeClosedConversation = (ticketId: string) => {\r\n const filtred = conversations.filter(\r\n (conversation) => conversation._id !== ticketId\r\n )\r\n addConversations(filtred)\r\n }\r\n\r\n const closeIfIsCurrent = (ticketId: string) => {\r\n if (ticketId === currentChat?._id) {\r\n changeViewDesktop('empty')\r\n changeViewMobile('list')\r\n }\r\n }\r\n\r\n const onCloseChat = (ticketId: string) => {\r\n removeClosedConversation(ticketId)\r\n closeIfIsCurrent(ticketId)\r\n }\r\n\r\n const reset = () => {\r\n setSliceCount(SLICE)\r\n resetConversations()\r\n }\r\n\r\n return {\r\n onIntersect,\r\n reset,\r\n conversations,\r\n hasNext,\r\n addConversations,\r\n addOneUnreadToTicket,\r\n setAsRead,\r\n sliceCount,\r\n currentChat,\r\n selectChat,\r\n onCloseChat,\r\n changeViewDesktop,\r\n viewDesktop,\r\n changeViewMobile,\r\n viewMobile,\r\n }\r\n}\r\n","import { useState } from 'react'\r\nimport { IMessages, ISocketMessage } from 'types'\r\n\r\nexport const useMessages = () => {\r\n const [messages, setMessages] = useState<IMessages[]>([])\r\n const [totalMessages, setTotalMessages] = useState<number>(0)\r\n\r\n const addMessages = (messages: IMessages[]) => {\r\n setMessages(messages)\r\n }\r\n const addTotalMessages = (total: number) => {\r\n setTotalMessages(total)\r\n }\r\n\r\n const incrementMessages = (ticket: ISocketMessage, currentChatId: string) => {\r\n const existentMessage = messages.find(\r\n (item) => item.messagecode === ticket.message.messagecode\r\n )\r\n if (ticket.message.ticketId === currentChatId && !existentMessage) {\r\n addMessages([...messages, ticket.message])\r\n }\r\n }\r\n\r\n const updateMesssagesAsRead = (\r\n ticket: ISocketMessage,\r\n currentChatId: string\r\n ) => {\r\n if (ticket.markAsRead || currentChatId === ticket?.message?.ticketId) {\r\n const readMessages = messages.map((message) => ({\r\n ...message,\r\n everybodyHasRead: true,\r\n }))\r\n addMessages(readMessages)\r\n }\r\n }\r\n\r\n const hasOlderMessages = () => {\r\n return messages.length > 9 && messages.length < totalMessages\r\n }\r\n\r\n return {\r\n addMessages,\r\n messages,\r\n incrementMessages,\r\n updateMesssagesAsRead,\r\n addTotalMessages,\r\n hasOlderMessages,\r\n }\r\n}\r\n","import pt from './locales/pt.json'\nimport en from './locales/en.json'\n\nexport const chatResources = {\n pt: {\n newFormChat: pt.newFormChat,\n messengerMessages: pt.messengerMessages,\n messengerList: pt.messengerList,\n },\n en: {\n newFormChat: en.newFormChat,\n messengerMessages: en.messengerMessages,\n messengerList: en.messengerList,\n },\n}\n","import React, { ReactNode } from 'react'\n\ninterface ChatProviderProps {\n children: ReactNode\n locale?: string\n}\n\nfunction ChatProvider ({ children }: ChatProviderProps) {\n return <>{children}</>\n}\n\nexport default ChatProvider\n"],"names":["root","factory","exports","module","require","define","amd","this","__WEBPACK_EXTERNAL_MODULE__156__","__WEBPACK_EXTERNAL_MODULE__760__","__WEBPACK_EXTERNAL_MODULE__238__","___CSS_LOADER_EXPORT___","push","id","cssWithMappingToString","list","toString","map","item","content","needLayer","concat","length","join","i","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","_k","cssMapping","btoa","base64","unescape","encodeURIComponent","JSON","stringify","data","sourceMapping","e","o","default","a","s","name","weekdays","split","weekdaysShort","weekdaysMin","months","monthsShort","ordinal","formats","LT","LTS","L","LL","LLL","LLLL","relativeTime","future","past","m","mm","h","hh","d","dd","M","MM","y","yy","locale","t","prototype","isToday","format","year","month","day","hour","minute","second","n","r","Date","timeZoneName","Intl","DateTimeFormat","hour12","timeZone","formatToParts","u","f","type","value","c","parseInt","l","v","utc","valueOf","tz","utcOffset","toDate","toLocaleString","Math","round","$set","$ms","getTimezoneOffset","add","$x","$timezone","offsetName","guess","find","toLowerCase","startOf","call","min","max","resolvedOptions","setDefault","date","args","arguments","$L","local","parse","$u","$utils","$offset","init","$d","$y","getUTCFullYear","$M","getUTCMonth","$D","getUTCDate","$W","getUTCDay","$H","getUTCHours","$m","getUTCMinutes","$s","getUTCSeconds","getUTCMilliseconds","match","abs","$localOffset","isUTC","toISOString","toUTCString","diff","stylesInDOM","getIndexByIdentifier","identifier","result","modulesToDom","options","idCountMap","identifiers","base","count","indexByIdentifier","obj","css","sourceMap","references","updater","addElementStyle","byIndex","splice","api","domAPI","update","newObj","remove","lastIdentifiers","newList","index","newLastIdentifiers","_i","_index","memo","insert","style","target","styleTarget","document","querySelector","window","HTMLIFrameElement","contentDocument","head","getTarget","Error","appendChild","element","createElement","setAttributes","attributes","styleElement","nonce","setAttribute","insertStyleElement","styleTagTransform","apply","parentNode","removeChild","removeStyleElement","styleSheet","cssText","firstChild","createTextNode","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","__esModule","definition","key","Object","defineProperty","enumerable","get","prop","hasOwnProperty","Symbol","toStringTag","nc","defaultThemeVariables","asideBg","asideFontColor","messengerMessagesBg","headerAndSenderBg","buttonPrimary","buttonPrimaryText","buttonsDisabled","uploadFileIconColor","messengerNotSelectedBg","newChatFormBg","newChatFormRadius","newChatFormTexts","newChatFormDeleteFileButton","disclaimerPrimaryColor","disclaimerSecondaryColor","disclaimerTextColor","messengerSenderColor","messengerIncomerColor","messengerSystemColor","borderColor","inputBg","chatInputBorder","listItemHover","active","activeTabBorter","emptyMessagesFontColor","documentMessagesTextColor","MessageThemeContext","createContext","children","theme","config","Provider","context","useContext","serverTz","timeAsDayjs","server","applyTimezone","timezone","seconds","holidays","isWorkingDay","dayOfWeek","isWorkingHour","isWeekendOrHoliday","weekDay","includes","formatedDate","isHoliday","canUpdateClock","isWorking","getDiffInSeconds","startDate","endDate","calculateWorkingTime","workingHours","current","clone","workingTime","isBefore","startOfDay","start","endOfDay","end","isAfter","getDifferenceInSeconds","secondsInHours","currentSeconds","hours","floor","minutes","padStart","getColorsByTime","image","className","useTranslation","background","loading","alt","src","TimerIcon","color","width","height","viewBox","fill","xmlns","activeItem","defaultClass","activeClass","querySelectorAll","forEach","classList","currentTarget","unread","onClick","canSeeDetailsChat","currentId","currentViewerId","useState","totalUnreadMessages","unreadMessages","setUnreadMessages","closedChat","useMemo","status","state","setBackground","counter","setCounter","isInprogress","systemicValue","otherChatMember","users","uniqueCode","creator","useEffect","interval","sla","SlaDates","currentTime","createdAt","diference","setInterval","prev","SLATimePassed","clearInterval","handleClick","onMouseOver","onMouseLeave","backgroundColor","_id","username","slice","reason","protocol","handleChangeTickets","chatListTabs","tab","label","chatButtons","removeActiveItem","button","canSee","disabled","event","border","SearchIcon","searchChat","searchKeys","loadingSearch","searchKey","setSearchKey","searchValue","setSearchValue","onChange","placeholder","onKeyDown","borderLeft","EmptyIcon","intersectDivStyle","visibility","loadingCover","more","fetch","reverse","rootMargin","infiniteElement","setInfiniteElement","currentElement","observer","IntersectionObserver","entries","isIntersecting","threshold","observe","unobserve","ref","ListLoading","Fragment","Array","_","idx","borderBottom","affix","conversations","failed","showBadge","messegerView","helpDesk","hasNext","onIntersect","sliceCount","borderRadius","ChatButton","isArray","__assign","assign","p","__rest","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","rejected","done","then","__generator","body","g","sent","trys","ops","verb","iterator","op","TypeError","pop","create","__spreadArray","to","from","pack","ar","props","xmlnsXlink","x1","x2","y1","y2","gradientUnits","offset","stopColor","xlinkHref","rx","x","textAnchor","fontSize","fontWeight","fileType","b64","file","onClose","fileInfo","setFileInfo","setB64","reader","FileReader","readAsDataURL","onload","onerror","error","getBase64","insertAt","getElementsByTagName","insertBefore","styleInject","ReactSimpleImageViewer","_a","currentIndex","setCurrentIndex","changeImage","useCallback","delta","nextIndex","closeOnClickOutside","checkId","checkClass","contains","stopPropagation","handleKeyDown","handleWheel","wheelDeltaY","addEventListener","disableScroll","removeEventListener","backgroundStyle","closeComponent","leftArrowComponent","rightArrowComponent","formatFileSize","size","toFixed","location","toUpperCase","fileName","originalname","filePages","pages","fileSize","mimetype","href","rel","MessageImage","rest","MessageWithFile","message","openImageViewer","formatDate","currentImage","isImage","read","user","hasFile","isSystemMessage","setCurrentImage","isViewerOpen","setIsViewerOpen","avatar","ReadIcon","isDoc","creatorId","senderId","sender","everybodyHasRead","images","clipPath","TrashIcon","fileList","onUpdateFile","onRemoveFile","maxSize","validateFileType","allowedTypes","extension","htmlFor","hidden","accept","files","console","input","click","some","motivo","CloseIcon","submitNewChat","cancelNewChat","reasons","products","maxFileSize","loadingResources","setReason","product","setProduct","setMessage","setFileList","onSubmit","data2","FormData","preventDefault","append","Select","filter","AttachFileIcon","text","AllowDocuments","allowImages","attachFile","handleFile","maxFileField","updateFile","isLoading","formHeight","setFormHeight","sending","setSending","inputRef","useRef","correctTextAreaHeight","styleConfig","textarea","overflowY","overflow","handleSubmit","maxHeight","textareaRef","scrollHeight","initialHeight","adjustFormHeight","shiftKey","fileExtension","SpinLoading","MessagesContainerView","newChatLoading","Messages","messages","ticketId","onScrollToBottom","scrollContainer","scrollTop","Number","MAX_SAFE_INTEGER","MessagesContainer","fowardRef","padding","ScrollableContainer","scrollContainerFowardRef","getElementScrollHeight","divRef","isNill","elementBeforeIntersetHeight","elementAfterIntersectHeight","currentScrollTop","intersetRootMargin","calculateScrollToDecrease","header","setFile","scrollContainerRef","isSending","setIsSending","setMaxSize","styleClassnames","mobile","response","callback","useConversations","setSliceCount","setConversations","currentChat","setCurrentChat","viewDesktop","setViewDesktop","viewMobile","setViewMobile","changeViewDesktop","view","changeViewMobile","addConversations","goToNewConversation","reset","addOneUnreadToTicket","updatedConversations","conversation","findIndex","conversationToMove","unshift","reorderConversations","mapConversationsIncrementUnread","setAsRead","mapConversationsUnread","selectChat","chat","onCloseChat","filtred","removeClosedConversation","closeIfIsCurrent","useMessages","setMessages","totalMessages","setTotalMessages","addMessages","incrementMessages","ticket","currentChatId","existentMessage","messagecode","updateMesssagesAsRead","markAsRead","readMessages","addTotalMessages","total","hasOlderMessages","chatResources","pt","newFormChat","messengerMessages","messengerList","en"],"sourceRoot":""}