2
0

_chatrooms.scss 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379
  1. #conversejs.converse-embedded,
  2. #conversejs {
  3. .add-chatroom {
  4. input[type="submit"],
  5. input[type="button"] {
  6. margin: 0.3em 0;
  7. }
  8. }
  9. .chat-head-chatroom {
  10. background-color: $chatroom-head-color;
  11. .chatroom-description {
  12. color: lighten($chatroom-head-color, 25%);
  13. font-size: $font-size;
  14. font-size: 70%;
  15. margin-top: 3px;
  16. overflow-y: hidden;
  17. overflow: hidden;
  18. text-overflow: ellipsis;
  19. white-space: nowrap;
  20. }
  21. a, a:visited, a:hover, a:not([href]):not([tabindex]) {
  22. &.chatbox-btn {
  23. &.fa {
  24. color: $chat-head-text-color;
  25. &.button-on:before {
  26. color: $chatroom-head-color;
  27. }
  28. }
  29. }
  30. }
  31. .chatbox-btn {
  32. &.button-on:before {
  33. color: $chatroom-head-color;
  34. }
  35. }
  36. .chat-title {
  37. .chatroom-jid {
  38. font-size: $font-size-small;
  39. }
  40. }
  41. }
  42. .chatroom {
  43. width: $chatroom-width;
  44. @media screen and (max-height: $mobile-landscape-height){
  45. width: $mobile-chat-width;
  46. }
  47. @media screen and (max-width: $mobile-portrait-length) {
  48. width: $mobile-chat-width;
  49. }
  50. .box-flyout {
  51. overflow-y: hidden;
  52. background-color: $chatroom-head-color;
  53. width: 100%;
  54. @media screen and (max-height: $mobile-landscape-height) {
  55. height: $mobile-chat-height;
  56. width: $mobile-chat-width;
  57. height: 100vh;
  58. }
  59. @media screen and (max-width: $mobile-portrait-length) {
  60. height: $mobile-chat-height;
  61. width: $mobile-chat-width;
  62. height: 100vh;
  63. }
  64. .chatroom-body {
  65. flex-direction: row;
  66. flex-flow: nowrap;
  67. @include border-bottom-radius($chatbox-border-radius);
  68. background-color: white;
  69. border-top: 0;
  70. width: 100%;
  71. overflow: hidden;
  72. .row {
  73. flex-direction: row;
  74. }
  75. .chat-topic {
  76. font-weight: bold;
  77. color: $chatroom-head-color;
  78. }
  79. .chat-info {
  80. color: $chatroom-head-color;
  81. line-height: normal;
  82. &.badge {
  83. color: $chat-head-text-color;
  84. }
  85. }
  86. .mentioned {
  87. font-weight: bold;
  88. }
  89. .disconnect-msg {
  90. padding: 2em 2em 0 2em;
  91. }
  92. .chat-area {
  93. display: flex;
  94. flex-direction: column;
  95. word-wrap: break-word;
  96. .new-msgs-indicator {
  97. background-color: $chatroom-head-color;
  98. }
  99. .chat-content {
  100. height: 100%;
  101. }
  102. }
  103. .occupants {
  104. display: flex;
  105. flex-direction: column;
  106. justify-content: space-between;
  107. overflow-x: hidden;
  108. overflow-y: hidden;
  109. vertical-align: top;
  110. background-color: white;
  111. border-left: 1px solid $text-color;
  112. border-bottom-right-radius: $chatbox-border-radius;
  113. padding: 0.5em;
  114. .occupants-header {
  115. display: flex;
  116. flex-direction: column;
  117. .hide-occupants {
  118. align-self: flex-end;
  119. cursor: pointer;
  120. }
  121. .occupants-heading {
  122. font-family: $heading-font;
  123. padding: 0.3em 0;
  124. }
  125. }
  126. .chatroom-features {
  127. width: 100%;
  128. .feature {
  129. float: left;
  130. margin-right: 0.5em;
  131. padding-right: 0;
  132. font-size: 1em;
  133. cursor: help;
  134. }
  135. }
  136. .awesomplete {
  137. ul {
  138. padding: 0;
  139. li {
  140. padding: .5em;
  141. }
  142. }
  143. }
  144. ul {
  145. padding: 0.5em 0 0 0;
  146. margin-bottom: 0.5em;
  147. overflow-x: hidden;
  148. overflow-y: auto;
  149. list-style: none;
  150. &.occupant-list {
  151. overflow-y: auto;
  152. flex-basis: 0;
  153. flex-grow: 1;
  154. border-bottom: 1px solid lightgrey;
  155. }
  156. &.features-list {
  157. padding-top: 0;
  158. .feature {
  159. width: 100%;
  160. .fa {
  161. color: $text-color;
  162. }
  163. }
  164. }
  165. li {
  166. cursor: default;
  167. display: block;
  168. font-size: $font-size-small;
  169. overflow: hidden;
  170. padding: 0.25em 0.25em 0.25em 0;
  171. text-overflow: ellipsis;
  172. .fa {
  173. margin-right: 0.5em;
  174. }
  175. &.feature {
  176. font-size: $font-size-tiny;
  177. }
  178. &.occupant {
  179. cursor: pointer;
  180. div.row.no-gutters {
  181. flex-wrap: nowrap;
  182. min-height: 1.5em;
  183. }
  184. .badge {
  185. margin-bottom: 0.125rem;
  186. }
  187. .occupant-status {
  188. display: inline-block;
  189. margin: 0 0.5em 0.125em 0;
  190. width: 0.5em;
  191. height: 0.5em;
  192. &.occupant-online,
  193. &.occupant-chat {
  194. background-color: #1A9707;
  195. }
  196. &.occupant-dnd {
  197. background-color: red;
  198. }
  199. &.occupant-away {
  200. background-color: darkorange;
  201. }
  202. &.occupant-xa {
  203. background-color: orange;
  204. }
  205. &.occupant-offline {
  206. background-color: darkgrey;
  207. }
  208. }
  209. }
  210. }
  211. }
  212. }
  213. .chatroom-form-container {
  214. background-color: white;
  215. border-bottom-left-radius: $chatbox-border-radius;
  216. border-bottom-right-radius: $chatbox-border-radius;
  217. border: 0;
  218. color: $text-color;
  219. font-size: $font-size;
  220. height: 100%;
  221. width: 100%;
  222. overflow-y: auto;
  223. .validation-message {
  224. font-size: 90%;
  225. color: $error-color;
  226. }
  227. .chatroom-form {
  228. label,
  229. input[type=text] {
  230. display: block;
  231. }
  232. }
  233. input[type=button],
  234. input[type=submit] {
  235. margin: 0 0.5em;
  236. }
  237. .button-primary {
  238. background-color: $chatroom-head-color;
  239. }
  240. }
  241. }
  242. }
  243. .sendXMPPMessage {
  244. .chat-toolbar {
  245. background-color: white;
  246. border-top: 8px solid $chatroom-head-color;
  247. color: $chatroom-head-color;
  248. .fa, .fa:hover {
  249. color: $chatroom-head-color;
  250. }
  251. }
  252. .chat-textarea {
  253. border-bottom-right-radius: 0;
  254. }
  255. .send-button {
  256. background-color: $chatroom-head-color;
  257. }
  258. }
  259. .room-invite {
  260. .invited-contact {
  261. margin: -1px 0 0 -1px;
  262. width: 100%;
  263. border: 1px solid #999;
  264. }
  265. }
  266. }
  267. }
  268. /* ******************* Overlay styles *************************** */
  269. #conversejs.converse-overlayed {
  270. .chatbox {
  271. &.chatroom {
  272. min-width: $chatroom-width !important;
  273. width: $chatroom-width;
  274. .box-flyout {
  275. min-width: $chatroom-width !important;
  276. width: $chatroom-width;
  277. }
  278. .chatbox-title {
  279. @include make-col(8);
  280. .chatroom-description {
  281. font-size: 80%;
  282. }
  283. }
  284. .chatroom-body {
  285. .occupants {
  286. .chatroom-features {
  287. .feature {
  288. font-size: $font-size-small;
  289. }
  290. }
  291. }
  292. .chat-area {
  293. min-width: $overlayed-chat-width;
  294. }
  295. }
  296. }
  297. }
  298. }
  299. /* ******************* Fullpage styles *************************** */
  300. #conversejs.converse-fullscreen,
  301. #conversejs.converse-mobile {
  302. .chatroom {
  303. .box-flyout {
  304. background-color: $chatroom-head-color;
  305. border: $flyout-padding solid $chatroom-head-color;
  306. border-top: 0.8em solid $chatroom-head-color;
  307. width: 100%;
  308. .chatbox-title {
  309. @include make-col(9);
  310. .chatroom-description {
  311. font-size: 70%;
  312. }
  313. }
  314. .chatroom-body {
  315. @include border-top-radius($chatbox-border-radius);
  316. .chatroom-form-container {
  317. border-radius: $chatbox-border-radius;
  318. }
  319. .chat-area {
  320. border-top-left-radius: $chatbox-border-radius;
  321. .chat-content {
  322. border-top-left-radius: $chatbox-border-radius;
  323. }
  324. &.full {
  325. max-width: 100%;
  326. .new-msgs-indicator {
  327. max-width: 100%;
  328. }
  329. }
  330. }
  331. .occupants {
  332. border-top-right-radius: $chatbox-border-radius;;
  333. padding: $occupants-padding;
  334. .occupants-heading {
  335. font-size: $font-size-large;
  336. }
  337. ul {
  338. &.occupant-list {
  339. li {
  340. font-size: $font-size-small;
  341. }
  342. }
  343. }
  344. }
  345. }
  346. }
  347. .room-invite {
  348. span {
  349. .invited-contact {
  350. margin: 0 0 0.5em -1px;
  351. }
  352. }
  353. }
  354. }
  355. }