You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

436 line
5.8 KiB

  1. @import "../../../css/colors.less";
  2. @pad: 8px;
  3. @btnSize: 64px;
  4. .uiMessages {
  5. position: absolute;
  6. left: 10px;
  7. bottom: 10px;
  8. width: 480px;
  9. pointer-events: none;
  10. display: flex;
  11. flex-direction: column;
  12. .filters {
  13. display: none;
  14. width: 100%;
  15. flex-wrap: wrap;
  16. .filter {
  17. height: 100%;
  18. background-color: @blackC;
  19. float: left;
  20. color: @blackA;
  21. margin-right: 10px;
  22. margin-bottom: 10px;
  23. padding: 5px 10px;
  24. cursor: pointer;
  25. &:hover {
  26. background-color: @blackB;
  27. color: @grayD;
  28. }
  29. &.active {
  30. background-color: @blackB;
  31. color: @blueB;
  32. &:hover {
  33. background-color: @blackA;
  34. color: @grayB;
  35. }
  36. }
  37. }
  38. }
  39. .list {
  40. overflow-y: hidden;
  41. width: 100%;
  42. max-height: 320px;
  43. .list-message {
  44. display: none;
  45. justify-content: row;
  46. width: 100%;
  47. padding: 5px 10px;
  48. color: white;
  49. filter: drop-shadow(0px -2px 0px @blackD)
  50. drop-shadow(0px 2px 0px @blackD)
  51. drop-shadow(2px 0px 0px @blackD)
  52. drop-shadow(-2px 0px 0px @blackD);
  53. -moz-filter: drop-shadow(0px -2px 0px @blackD)
  54. drop-shadow(0px 2px 0px @blackD)
  55. drop-shadow(2px 0px 0px @blackD)
  56. drop-shadow(-2px 0px 0px @blackD);
  57. word-wrap: anywhere;
  58. line-height: 18px;
  59. &.q {
  60. color: @grayB;
  61. }
  62. &.q0 {
  63. color: @white;
  64. }
  65. &.q1 {
  66. color: @greenB;
  67. }
  68. a,
  69. &.q2 {
  70. color: @blueB;
  71. }
  72. &.q3 {
  73. color: @purpleA;
  74. }
  75. &.q4 {
  76. color: @orangeA;
  77. }
  78. &.color-green {
  79. color: @greenA;
  80. }
  81. &.color-red {
  82. color: @redB;
  83. }
  84. &.color-cyan {
  85. color: @blueA;
  86. }
  87. &.color-tealC {
  88. color: @tealC;
  89. }
  90. }
  91. &.rep .rep {
  92. display: flex;
  93. }
  94. &.chat .chat {
  95. display: flex;
  96. }
  97. &.info .info {
  98. display: flex;
  99. }
  100. &.loot .loot {
  101. display: flex;
  102. }
  103. .emojiTag {
  104. width: 24px;
  105. height: 24px;
  106. margin-top: -4px;
  107. margin-right: 5px;
  108. flex-shrink: 0;
  109. }
  110. }
  111. .bottom {
  112. display: none;
  113. .channelPicker {
  114. min-width: 100px;
  115. color: 1;
  116. display: flex;
  117. justify-content: center;
  118. align-items: center;
  119. color: @white;
  120. background-color: @blueC;
  121. cursor: pointer;
  122. padding: 0px 10px;
  123. &:after {
  124. content: '▾';
  125. margin-left: 10px;
  126. }
  127. &:hover {
  128. background-color: @blueD;
  129. }
  130. }
  131. .el {
  132. flex: 1;
  133. width: 100%;
  134. color: @white;
  135. &.textbox.message {
  136. display: none;
  137. background-color: @blackB;
  138. text-align: left;
  139. padding: 5px 10px;
  140. }
  141. }
  142. &.time {
  143. display: flex;
  144. align-items: center;
  145. padding-left: 10px;
  146. background-color: transparent;
  147. height: 35px;
  148. color: @white;
  149. text-align: left;
  150. filter: drop-shadow(0px -2px 0px @blackD)
  151. drop-shadow(0px 2px 0px @blackD)
  152. drop-shadow(2px 0px 0px @blackD)
  153. drop-shadow(-2px 0px 0px @blackD);
  154. -moz-filter: drop-shadow(0px -2px 0px @blackD)
  155. drop-shadow(0px 2px 0px @blackD)
  156. drop-shadow(2px 0px 0px @blackD)
  157. drop-shadow(-2px 0px 0px @blackD);
  158. }
  159. &.channelOptions {
  160. display: none;
  161. flex-direction: column;
  162. position: absolute;
  163. left: 0px;
  164. bottom: 0px;
  165. min-width: 100px;
  166. .option {
  167. height: 35px;
  168. display: flex;
  169. justify-content: center;
  170. align-items: center;
  171. color: @grayB;
  172. background-color: @blackA;
  173. cursor: pointer;
  174. padding: 0px 10px;
  175. &:after {
  176. content: attr(shortcut);
  177. margin-left: 10px;
  178. color: @grayC;
  179. }
  180. &:hover,
  181. &.selected {
  182. background-color: @grayD;
  183. color: @white;
  184. }
  185. }
  186. }
  187. }
  188. &.typing {
  189. pointer-events: all;
  190. .filters {
  191. pointer-events: all;
  192. display: flex;
  193. }
  194. .list {
  195. overflow-y: auto;
  196. background-color: @blackC;
  197. .list-message {
  198. filter: none;
  199. }
  200. }
  201. .bottom {
  202. display: flex;
  203. .el.textbox {
  204. &.message:not(.input) {
  205. display: block;
  206. }
  207. }
  208. }
  209. .time {
  210. display: none;
  211. }
  212. .channelOptions {
  213. display: none;
  214. &.active {
  215. display: flex;
  216. }
  217. }
  218. }
  219. &.active {
  220. .list-message {
  221. opacity: 1 !important;
  222. }
  223. }
  224. &.picking {
  225. &:before {
  226. position: absolute;
  227. content: '';
  228. left: 0px;
  229. top: 0px;
  230. width: 100%;
  231. height: 100%;
  232. background-color: @blackD;
  233. opacity: 0.7;
  234. }
  235. }
  236. }
  237. .mobile .uiMessages {
  238. padding: 0px;
  239. pointer-events: all;
  240. .btnClose.active {
  241. float: right;
  242. margin-right: 0px;
  243. padding: 5px 20px;
  244. color: @redA;
  245. }
  246. input {
  247. display: none;
  248. }
  249. .filters {
  250. margin-bottom: 0px;
  251. flex-shrink: 0;
  252. background-color: @blackC;
  253. }
  254. .list {
  255. height: 100%;
  256. max-height: 100%;
  257. }
  258. &.typing {
  259. left: 0px;
  260. top: 0px;
  261. width: 100vw;
  262. height: 100vh;
  263. background-color: fade(@blackC, 90%);
  264. display: flex;
  265. flex-direction: column;
  266. z-index: 999999998;
  267. .main {
  268. display: flex;
  269. flex-direction: column;
  270. flex-grow: 1;
  271. min-height: 0px;
  272. }
  273. .channelPicker {
  274. display: none;
  275. }
  276. .channelOptions {
  277. z-index: 999999999;
  278. }
  279. .bottom {
  280. .input {
  281. display: block;
  282. height: 26px;
  283. flex-shrink: 0;
  284. }
  285. }
  286. .el.textbox.message:not(.input),.time {
  287. display: none;
  288. }
  289. .keyboard {
  290. display: flex;
  291. flex-direction: row;
  292. flex-wrap: wrap;
  293. background-color: @blackC;
  294. justify-content: center;
  295. align-items: center;
  296. height: 140px;
  297. flex-shrink: 0;
  298. .key {
  299. flex: 1;
  300. background-color: @blackA;
  301. color: @white;
  302. padding: 8px 10px;
  303. text-align: center;
  304. &.special {
  305. color: @orangeA;
  306. }
  307. &.hidden {
  308. color: @blackC;
  309. }
  310. &.space {
  311. flex: 5;
  312. }
  313. }
  314. .newline {
  315. width: 100%;
  316. }
  317. .gap {
  318. width: 5%;
  319. flex-shrink: 0;
  320. }
  321. }
  322. }
  323. &:not(.typing) {
  324. top: 10px;
  325. right: 84px;
  326. left: auto;
  327. bottom: auto;
  328. width: @btnSize;
  329. height: @btnSize;
  330. background-color: fade(@blackC, 90%);
  331. &:after {
  332. content: '';
  333. position: absolute;
  334. left: 0px;
  335. top: 0px;
  336. background: url('../../../images/uiIcons.png');
  337. background-position: -0px -128px;
  338. width: @btnSize;
  339. height: @btnSize;
  340. }
  341. > * {
  342. display: none;
  343. }
  344. }
  345. }