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.
 
 
 

435 lines
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: break-word;
  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. }
  109. }
  110. .bottom {
  111. display: none;
  112. .channelPicker {
  113. min-width: 100px;
  114. color: 1;
  115. display: flex;
  116. justify-content: center;
  117. align-items: center;
  118. color: @white;
  119. background-color: @blueC;
  120. cursor: pointer;
  121. padding: 0px 10px;
  122. &:after {
  123. content: '▾';
  124. margin-left: 10px;
  125. }
  126. &:hover {
  127. background-color: @blueD;
  128. }
  129. }
  130. .el {
  131. flex: 1;
  132. width: 100%;
  133. color: @white;
  134. &.textbox.message {
  135. display: none;
  136. background-color: @blackB;
  137. text-align: left;
  138. padding: 5px 10px;
  139. }
  140. }
  141. &.time {
  142. display: flex;
  143. align-items: center;
  144. padding-left: 10px;
  145. background-color: transparent;
  146. height: 35px;
  147. color: @white;
  148. text-align: left;
  149. filter: drop-shadow(0px -2px 0px @blackD)
  150. drop-shadow(0px 2px 0px @blackD)
  151. drop-shadow(2px 0px 0px @blackD)
  152. drop-shadow(-2px 0px 0px @blackD);
  153. -moz-filter: drop-shadow(0px -2px 0px @blackD)
  154. drop-shadow(0px 2px 0px @blackD)
  155. drop-shadow(2px 0px 0px @blackD)
  156. drop-shadow(-2px 0px 0px @blackD);
  157. }
  158. &.channelOptions {
  159. display: none;
  160. flex-direction: column;
  161. position: absolute;
  162. left: 0px;
  163. bottom: 0px;
  164. min-width: 100px;
  165. .option {
  166. height: 35px;
  167. display: flex;
  168. justify-content: center;
  169. align-items: center;
  170. color: @grayB;
  171. background-color: @blackA;
  172. cursor: pointer;
  173. padding: 0px 10px;
  174. &:after {
  175. content: attr(shortcut);
  176. margin-left: 10px;
  177. color: @grayC;
  178. }
  179. &:hover,
  180. &.selected {
  181. background-color: @grayD;
  182. color: @white;
  183. }
  184. }
  185. }
  186. }
  187. &.typing {
  188. pointer-events: all;
  189. .filters {
  190. pointer-events: all;
  191. display: flex;
  192. }
  193. .list {
  194. overflow-y: auto;
  195. background-color: @blackC;
  196. .list-message {
  197. filter: none;
  198. }
  199. }
  200. .bottom {
  201. display: flex;
  202. .el.textbox {
  203. &.message:not(.input) {
  204. display: block;
  205. }
  206. }
  207. }
  208. .time {
  209. display: none;
  210. }
  211. .channelOptions {
  212. display: none;
  213. &.active {
  214. display: flex;
  215. }
  216. }
  217. }
  218. &.active {
  219. .list-message {
  220. opacity: 1 !important;
  221. }
  222. }
  223. &.picking {
  224. &:before {
  225. position: absolute;
  226. content: '';
  227. left: 0px;
  228. top: 0px;
  229. width: 100%;
  230. height: 100%;
  231. background-color: @blackD;
  232. opacity: 0.7;
  233. }
  234. }
  235. }
  236. .mobile .uiMessages {
  237. padding: 0px;
  238. pointer-events: all;
  239. .btnClose.active {
  240. float: right;
  241. margin-right: 0px;
  242. padding: 5px 20px;
  243. color: @redA;
  244. }
  245. input {
  246. display: none;
  247. }
  248. .filters {
  249. margin-bottom: 0px;
  250. flex-shrink: 0;
  251. background-color: @blackC;
  252. }
  253. .list {
  254. height: 100%;
  255. max-height: 100%;
  256. }
  257. &.typing {
  258. left: 0px;
  259. top: 0px;
  260. width: 100vw;
  261. height: 100vh;
  262. background-color: fade(@blackC, 90%);
  263. display: flex;
  264. flex-direction: column;
  265. z-index: 999999998;
  266. .main {
  267. display: flex;
  268. flex-direction: column;
  269. flex-grow: 1;
  270. min-height: 0px;
  271. }
  272. .channelPicker {
  273. display: none;
  274. }
  275. .channelOptions {
  276. z-index: 999999999;
  277. }
  278. .bottom {
  279. .input {
  280. display: block;
  281. height: 26px;
  282. flex-shrink: 0;
  283. }
  284. }
  285. .el.textbox.message:not(.input),.time {
  286. display: none;
  287. }
  288. .keyboard {
  289. display: flex;
  290. flex-direction: row;
  291. flex-wrap: wrap;
  292. background-color: @blackC;
  293. justify-content: center;
  294. align-items: center;
  295. height: 140px;
  296. flex-shrink: 0;
  297. .key {
  298. flex: 1;
  299. background-color: @blackA;
  300. color: @white;
  301. padding: 8px 10px;
  302. text-align: center;
  303. &.special {
  304. color: @orangeA;
  305. }
  306. &.hidden {
  307. color: @blackC;
  308. }
  309. &.space {
  310. flex: 5;
  311. }
  312. }
  313. .newline {
  314. width: 100%;
  315. }
  316. .gap {
  317. width: 5%;
  318. flex-shrink: 0;
  319. }
  320. }
  321. }
  322. &:not(.typing) {
  323. top: 10px;
  324. right: 84px;
  325. left: auto;
  326. bottom: auto;
  327. width: @btnSize;
  328. height: @btnSize;
  329. background-color: fade(@blackC, 90%);
  330. &:after {
  331. content: '';
  332. position: absolute;
  333. left: 0px;
  334. top: 0px;
  335. background: url('../../../images/uiIcons.png');
  336. background-position: -0px -128px;
  337. width: @btnSize;
  338. height: @btnSize;
  339. }
  340. > * {
  341. display: none;
  342. }
  343. }
  344. }