Merge branch 'staging' into oo2
commit
b181d72727
@ -0,0 +1,382 @@
|
|||||||
|
@import (reference) './avatar.less';
|
||||||
|
@import (reference) "./colortheme-all.less";
|
||||||
|
|
||||||
|
.messenger_main() {
|
||||||
|
--LessLoader_require: LessLoader_currentFile();
|
||||||
|
};
|
||||||
|
& {
|
||||||
|
@keyframes example {
|
||||||
|
0% {
|
||||||
|
background: rgba(0,0,0,0.1);
|
||||||
|
}
|
||||||
|
50% {
|
||||||
|
background: rgba(0,0,0,0.3);
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
background: rgba(0,0,0,0.1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@button-border: 2px;
|
||||||
|
@bg-color: @colortheme_friends-bg;
|
||||||
|
@color: @colortheme_friends-color;
|
||||||
|
@room-height: 48px;
|
||||||
|
|
||||||
|
#cp-app-contacts-container {
|
||||||
|
flex: 1;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
min-height: 0;
|
||||||
|
&.ready {
|
||||||
|
background-size: cover;
|
||||||
|
background-position: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.cp-app-contacts-spinner {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cp-app-contacts-initializing {
|
||||||
|
.cp-app-contacts-spinner {
|
||||||
|
color: white;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.cp-app-contacts-info {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
#cp-app-contacts-friendlist,
|
||||||
|
#cp-app-contacts-messaging {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#cp-app-contacts-friendlist {
|
||||||
|
width: 200px;
|
||||||
|
height: 100%;
|
||||||
|
background-color: lighten(@bg-color, 10%);
|
||||||
|
overflow-y: auto;
|
||||||
|
display: flex;
|
||||||
|
flex-flow: column;
|
||||||
|
.cp-app-contacts-friend {
|
||||||
|
background: rgba(0,0,0,0.1);
|
||||||
|
padding: 5px;
|
||||||
|
margin: 10px;
|
||||||
|
margin-bottom: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
position: relative;
|
||||||
|
height: @room-height;
|
||||||
|
.cp-app-contacts-right-col {
|
||||||
|
margin-left: 5px;
|
||||||
|
display: flex;
|
||||||
|
flex-flow: column;
|
||||||
|
flex: 1;
|
||||||
|
min-width: 0;
|
||||||
|
.cp-app-contacts-name {
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&:hover {
|
||||||
|
background-color: rgba(0,0,0,0.3);
|
||||||
|
}
|
||||||
|
&.cp-app-contacts-notify {
|
||||||
|
animation: example 2s ease-in-out infinite;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.cp-app-contacts-remove {
|
||||||
|
cursor: pointer;
|
||||||
|
width: 20px;
|
||||||
|
&:hover {
|
||||||
|
color: darken(@color, 20%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.cp-app-contacts-category {
|
||||||
|
display: flex;
|
||||||
|
flex-flow: column;
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-shrink: 0;
|
||||||
|
.cp-app-contacts-category-title {
|
||||||
|
order: 1;
|
||||||
|
font-size: 18px;
|
||||||
|
margin: 0px 5px;
|
||||||
|
text-align: center;
|
||||||
|
background: rgba(0,0,0,0.1);
|
||||||
|
font-weight: bold;
|
||||||
|
height: 22px;
|
||||||
|
line-height: 22px;
|
||||||
|
}
|
||||||
|
.cp-app-contacts-category-content {
|
||||||
|
order: 2;
|
||||||
|
display: flex;
|
||||||
|
flex-flow: column-reverse;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
&:empty {
|
||||||
|
display: none;
|
||||||
|
& ~ .cp-app-contacts-category-title {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#cp-app-contacts-container.cp-app-contacts-inapp {
|
||||||
|
#cp-app-contacts-friendlist {
|
||||||
|
display: none;
|
||||||
|
/*
|
||||||
|
transition: width 0.2s ease-in-out 0.2s;
|
||||||
|
width: 68px;
|
||||||
|
.cp-app-contacts-friend {
|
||||||
|
.cp-app-contacts-right-col {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.cp-app-contacts-category-title {
|
||||||
|
transition: font-size 0.2s ease-in-out 0.2s;
|
||||||
|
margin: 0px 2px;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
&:hover {
|
||||||
|
transition-delay: 1.5s;
|
||||||
|
width: 200px !important;
|
||||||
|
.cp-app-contacts-category-title {
|
||||||
|
transition-delay: 1.5s;
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#cp-app-contacts-friendlist .cp-app-contacts-friend, #cp-app-contacts-messaging .cp-avatar {
|
||||||
|
.avatar_main(30px);
|
||||||
|
&.cp-avatar {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
cursor: pointer;
|
||||||
|
color: @color;
|
||||||
|
media-tag {
|
||||||
|
img {
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
media-tag, .cp-avatar-default {
|
||||||
|
//margin-right: 5px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
z-index: 1;
|
||||||
|
margin: 4px;
|
||||||
|
}
|
||||||
|
.cp-app-contacts-status {
|
||||||
|
//width: 5px;
|
||||||
|
display: inline-block;
|
||||||
|
position: absolute;
|
||||||
|
//right: 0;
|
||||||
|
//top: 0;
|
||||||
|
//bottom: 0;
|
||||||
|
//opacity: 0.7;
|
||||||
|
//background-color: #777;
|
||||||
|
|
||||||
|
/* width: (@room-height - 6px);
|
||||||
|
top: 3px;
|
||||||
|
bottom: 3px;
|
||||||
|
left: 3px;
|
||||||
|
border-radius: 100%;
|
||||||
|
*/
|
||||||
|
width: 10px;
|
||||||
|
height: 10px;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
border-bottom-left-radius: 100%;
|
||||||
|
|
||||||
|
&.cp-app-contacts-online {
|
||||||
|
//background-color: green;
|
||||||
|
//background-color: white;
|
||||||
|
background-color: #c5ffa8;
|
||||||
|
}
|
||||||
|
&.cp-app-contacts-offline {
|
||||||
|
display: none;
|
||||||
|
//background-color: red;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.placeholder (@color: #bbb) {
|
||||||
|
&::-webkit-input-placeholder { /* WebKit, Blink, Edge */
|
||||||
|
color: @color;
|
||||||
|
}
|
||||||
|
&:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
|
||||||
|
color: @color;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
&::-moz-placeholder { /* Mozilla Firefox 19+ */
|
||||||
|
color: @color;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
&:-ms-input-placeholder { /* Internet Explorer 10-11 */
|
||||||
|
color: @color;
|
||||||
|
}
|
||||||
|
&::-ms-input-placeholder { /* Microsoft Edge */
|
||||||
|
color: @color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#cp-app-contacts-messaging {
|
||||||
|
flex: 1;
|
||||||
|
height: 100%;
|
||||||
|
background-color: lighten(@bg-color, 20%);
|
||||||
|
min-width: 0;
|
||||||
|
|
||||||
|
.cp-app-contacts-info {
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
.cp-app-contacts-header {
|
||||||
|
background-color: lighten(@bg-color, 15%);
|
||||||
|
padding: 0;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
height: 50px;
|
||||||
|
|
||||||
|
.hover () {
|
||||||
|
height: 100%;
|
||||||
|
line-height: 30px;
|
||||||
|
padding: 10px;
|
||||||
|
&:hover {
|
||||||
|
background-color: rgba(50,50,50,0.3);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.cp-avatar,
|
||||||
|
.cp-app-contacts-right-col {
|
||||||
|
flex: 1 1 auto;
|
||||||
|
}
|
||||||
|
.cp-app-contacts-remove-history {
|
||||||
|
.hover;
|
||||||
|
}
|
||||||
|
.cp-avatar {
|
||||||
|
margin: 10px;
|
||||||
|
}
|
||||||
|
.cp-app-contacts-more-history {
|
||||||
|
//display: none;
|
||||||
|
.hover;
|
||||||
|
&.cp-app-contacts-faded {
|
||||||
|
color: darken(@bg-color, 5%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.cp-app-contacts-header-title {
|
||||||
|
padding: 10px;
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.cp-app-contacts-tips {
|
||||||
|
margin: 1em;
|
||||||
|
background-color: lighten(@bg-color, 15%);
|
||||||
|
font-size: 14px;
|
||||||
|
padding: 10px;
|
||||||
|
position: relative;
|
||||||
|
.cp-app-contacts-tips-close {
|
||||||
|
cursor: pointer;
|
||||||
|
position: absolute;
|
||||||
|
top: 2px;
|
||||||
|
right: 2px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.cp-app-contacts-chat {
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-flow: column;
|
||||||
|
.cp-app-contacts-messages {
|
||||||
|
padding: 0 20px;
|
||||||
|
margin: 10px 0;
|
||||||
|
flex: 1;
|
||||||
|
overflow-x: auto;
|
||||||
|
.cp-app-contacts-message {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
& > div {
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
.cp-app-contacts-content {
|
||||||
|
overflow: hidden;
|
||||||
|
word-wrap: break-word;
|
||||||
|
&> * {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
flex: 1;
|
||||||
|
min-width: 70%;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.cp-app-contacts-date {
|
||||||
|
display: none;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
.cp-app-contacts-sender {
|
||||||
|
margin-top: 10px;
|
||||||
|
font-weight: bold;
|
||||||
|
background-color: rgba(0,0,0,0.1);
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.cp-app-contacts-time {
|
||||||
|
display: none;
|
||||||
|
font-size: 0.8em;
|
||||||
|
align-items: center;
|
||||||
|
color: @color;
|
||||||
|
font-weight: bold;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
bottom: 0;
|
||||||
|
background: rgba(0,0,0,0.3);
|
||||||
|
border-top-left-radius: 50%;
|
||||||
|
border-bottom-left-radius: 50%;
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
&:hover {
|
||||||
|
.cp-app-contacts-time {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.cp-app-contacts-input {
|
||||||
|
background-color: lighten(@bg-color, 15%);
|
||||||
|
height: auto;
|
||||||
|
min-height: 50px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
padding: 0 5%;
|
||||||
|
textarea {
|
||||||
|
margin: 5px 0;
|
||||||
|
padding: 5px 10px;
|
||||||
|
border: none;
|
||||||
|
height: 54px; // 2 lines (22px height) + 2 margins (5px)
|
||||||
|
flex: 1;
|
||||||
|
background-color: darken(@bg-color, 10%);
|
||||||
|
color: @color;
|
||||||
|
resize: none;
|
||||||
|
overflow-y: auto;
|
||||||
|
.placeholder(#bbb);
|
||||||
|
&[disabled="true"] {
|
||||||
|
.placeholder(#999);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
button {
|
||||||
|
height: 54px;
|
||||||
|
border-radius: 0;
|
||||||
|
border: none;
|
||||||
|
background-color: darken(@bg-color, 15%);
|
||||||
|
&:hover {
|
||||||
|
background-color: darken(@bg-color, 20%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
File diff suppressed because one or more lines are too long
@ -0,0 +1,99 @@
|
|||||||
|
/*
|
||||||
|
|
||||||
|
Original highlight.js style (c) Ivan Sagalaev <maniac@softwaremaniacs.org>
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
.hljs {
|
||||||
|
display: block;
|
||||||
|
overflow-x: auto;
|
||||||
|
padding: 0.5em;
|
||||||
|
background: #F0F0F0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Base color: saturation 0; */
|
||||||
|
|
||||||
|
.hljs,
|
||||||
|
.hljs-subst {
|
||||||
|
color: #444;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-comment {
|
||||||
|
color: #888888;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-keyword,
|
||||||
|
.hljs-attribute,
|
||||||
|
.hljs-selector-tag,
|
||||||
|
.hljs-meta-keyword,
|
||||||
|
.hljs-doctag,
|
||||||
|
.hljs-name {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* User color: hue: 0 */
|
||||||
|
|
||||||
|
.hljs-type,
|
||||||
|
.hljs-string,
|
||||||
|
.hljs-number,
|
||||||
|
.hljs-selector-id,
|
||||||
|
.hljs-selector-class,
|
||||||
|
.hljs-quote,
|
||||||
|
.hljs-template-tag,
|
||||||
|
.hljs-deletion {
|
||||||
|
color: #880000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-title,
|
||||||
|
.hljs-section {
|
||||||
|
color: #880000;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-regexp,
|
||||||
|
.hljs-symbol,
|
||||||
|
.hljs-variable,
|
||||||
|
.hljs-template-variable,
|
||||||
|
.hljs-link,
|
||||||
|
.hljs-selector-attr,
|
||||||
|
.hljs-selector-pseudo {
|
||||||
|
color: #BC6060;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Language color: hue: 90; */
|
||||||
|
|
||||||
|
.hljs-literal {
|
||||||
|
color: #78A960;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-built_in,
|
||||||
|
.hljs-bullet,
|
||||||
|
.hljs-code,
|
||||||
|
.hljs-addition {
|
||||||
|
color: #397300;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Meta color: hue: 200 */
|
||||||
|
|
||||||
|
.hljs-meta {
|
||||||
|
color: #1f7199;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-meta-string {
|
||||||
|
color: #4d99bf;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Misc effects */
|
||||||
|
|
||||||
|
.hljs-emphasis {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-strong {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
@ -0,0 +1,99 @@
|
|||||||
|
/*
|
||||||
|
|
||||||
|
github.com style (c) Vasily Polovnyov <vast@whiteants.net>
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
.hljs {
|
||||||
|
display: block;
|
||||||
|
overflow-x: auto;
|
||||||
|
padding: 0.5em;
|
||||||
|
color: #333;
|
||||||
|
background: #f8f8f8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-comment,
|
||||||
|
.hljs-quote {
|
||||||
|
color: #998;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-keyword,
|
||||||
|
.hljs-selector-tag,
|
||||||
|
.hljs-subst {
|
||||||
|
color: #333;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-number,
|
||||||
|
.hljs-literal,
|
||||||
|
.hljs-variable,
|
||||||
|
.hljs-template-variable,
|
||||||
|
.hljs-tag .hljs-attr {
|
||||||
|
color: #008080;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-string,
|
||||||
|
.hljs-doctag {
|
||||||
|
color: #d14;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-title,
|
||||||
|
.hljs-section,
|
||||||
|
.hljs-selector-id {
|
||||||
|
color: #900;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-subst {
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-type,
|
||||||
|
.hljs-class .hljs-title {
|
||||||
|
color: #458;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-tag,
|
||||||
|
.hljs-name,
|
||||||
|
.hljs-attribute {
|
||||||
|
color: #000080;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-regexp,
|
||||||
|
.hljs-link {
|
||||||
|
color: #009926;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-symbol,
|
||||||
|
.hljs-bullet {
|
||||||
|
color: #990073;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-built_in,
|
||||||
|
.hljs-builtin-name {
|
||||||
|
color: #0086b3;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-meta {
|
||||||
|
color: #999;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-deletion {
|
||||||
|
background: #fdd;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-addition {
|
||||||
|
background: #dfd;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-emphasis {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-strong {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
File diff suppressed because it is too large
Load Diff
@ -1,43 +0,0 @@
|
|||||||
// Load #1, load as little as possible because we are in a race to get the loading screen up.
|
|
||||||
define([
|
|
||||||
'/bower_components/nthen/index.js',
|
|
||||||
'/api/config',
|
|
||||||
'/common/dom-ready.js',
|
|
||||||
'/common/requireconfig.js',
|
|
||||||
'/common/sframe-common-outer.js'
|
|
||||||
], function (nThen, ApiConfig, DomReady, RequireConfig, SFCommonO) {
|
|
||||||
var requireConfig = RequireConfig();
|
|
||||||
|
|
||||||
// Loaded in load #2
|
|
||||||
nThen(function (waitFor) {
|
|
||||||
DomReady.onReady(waitFor());
|
|
||||||
}).nThen(function (waitFor) {
|
|
||||||
var req = {
|
|
||||||
cfg: requireConfig,
|
|
||||||
req: [ '/common/loading.js' ],
|
|
||||||
pfx: window.location.origin
|
|
||||||
};
|
|
||||||
window.rc = requireConfig;
|
|
||||||
window.apiconf = ApiConfig;
|
|
||||||
document.getElementById('sbox-iframe').setAttribute('src',
|
|
||||||
ApiConfig.httpSafeOrigin + '/whiteboard/inner.html?' + requireConfig.urlArgs +
|
|
||||||
'#' + encodeURIComponent(JSON.stringify(req)));
|
|
||||||
|
|
||||||
// This is a cheap trick to avoid loading sframe-channel in parallel with the
|
|
||||||
// loading screen setup.
|
|
||||||
var done = waitFor();
|
|
||||||
var onMsg = function (msg) {
|
|
||||||
var data = JSON.parse(msg.data);
|
|
||||||
if (data.q !== 'READY') { return; }
|
|
||||||
window.removeEventListener('message', onMsg);
|
|
||||||
var _done = done;
|
|
||||||
done = function () { };
|
|
||||||
_done();
|
|
||||||
};
|
|
||||||
window.addEventListener('message', onMsg);
|
|
||||||
}).nThen(function (/*waitFor*/) {
|
|
||||||
SFCommonO.start({
|
|
||||||
useCreationScreen: true
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
Loading…
Reference in New Issue