summaryrefslogtreecommitdiff
path: root/addons/web_editor/static/lib/summernote/src/less
diff options
context:
space:
mode:
authorChristophe Matthieu <chm@odoo.com>2015-03-04 14:32:33 +0100
committerChristophe Matthieu <chm@odoo.com>2015-07-10 17:00:13 +0200
commitcebc73ebf9aa2bd6d8026473344af16726effec1 (patch)
tree55a8de23a6cf7f551aeabf58195e7ba8e1c76686 /addons/web_editor/static/lib/summernote/src/less
parentc1f39d0ca74486de714ea85f56b6924a9a520757 (diff)
[IMP] web_editor: move summernote & nearest lib from website
Diffstat (limited to 'addons/web_editor/static/lib/summernote/src/less')
-rw-r--r--addons/web_editor/static/lib/summernote/src/less/elements.less156
-rw-r--r--addons/web_editor/static/lib/summernote/src/less/summernote.less459
2 files changed, 615 insertions, 0 deletions
diff --git a/addons/web_editor/static/lib/summernote/src/less/elements.less b/addons/web_editor/static/lib/summernote/src/less/elements.less
new file mode 100644
index 00000000000..2ece26af004
--- /dev/null
+++ b/addons/web_editor/static/lib/summernote/src/less/elements.less
@@ -0,0 +1,156 @@
+/*---------------------------------------------------
+ LESS Elements 0.9
+ ---------------------------------------------------
+ A set of useful LESS mixins
+ More info at: http://lesselements.com
+ ---------------------------------------------------*/
+
+.gradient(@color: #F5F5F5, @start: #EEE, @stop: #FFF) {
+ background: @color;
+ background: -webkit-gradient(linear,
+ left bottom,
+ left top,
+ color-stop(0, @start),
+ color-stop(1, @stop));
+ background: -ms-linear-gradient(bottom,
+ @start,
+ @stop);
+ background: -moz-linear-gradient(center bottom,
+ @start 0%,
+ @stop 100%);
+ background: -o-linear-gradient(@stop,
+ @start);
+ filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@stop,@start));
+}
+.bw-gradient(@color: #F5F5F5, @start: 0, @stop: 255) {
+ background: @color;
+ background: -webkit-gradient(linear,
+ left bottom,
+ left top,
+ color-stop(0, rgb(@start,@start,@start)),
+ color-stop(1, rgb(@stop,@stop,@stop)));
+ background: -ms-linear-gradient(bottom,
+ rgb(@start,@start,@start) 0%,
+ rgb(@stop,@stop,@stop) 100%);
+ background: -moz-linear-gradient(center bottom,
+ rgb(@start,@start,@start) 0%,
+ rgb(@stop,@stop,@stop) 100%);
+ background: -o-linear-gradient(rgb(@stop,@stop,@stop),
+ rgb(@start,@start,@start));
+ filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",rgb(@stop,@stop,@stop),rgb(@start,@start,@start)));
+}
+.bordered(@top-color: #EEE, @right-color: #EEE, @bottom-color: #EEE, @left-color: #EEE) {
+ border-top: solid 1px @top-color;
+ border-left: solid 1px @left-color;
+ border-right: solid 1px @right-color;
+ border-bottom: solid 1px @bottom-color;
+}
+.drop-shadow(@x-axis: 0, @y-axis: 1px, @blur: 2px, @alpha: 0.1) {
+ -webkit-box-shadow: @x-axis @y-axis @blur rgba(0, 0, 0, @alpha);
+ -moz-box-shadow: @x-axis @y-axis @blur rgba(0, 0, 0, @alpha);
+ box-shadow: @x-axis @y-axis @blur rgba(0, 0, 0, @alpha);
+}
+.rounded(@radius: 2px) {
+ -webkit-border-radius: @radius;
+ -moz-border-radius: @radius;
+ border-radius: @radius;
+}
+.border-radius(@topright: 0, @bottomright: 0, @bottomleft: 0, @topleft: 0) {
+ -webkit-border-top-right-radius: @topright;
+ -webkit-border-bottom-right-radius: @bottomright;
+ -webkit-border-bottom-left-radius: @bottomleft;
+ -webkit-border-top-left-radius: @topleft;
+ -moz-border-radius-topright: @topright;
+ -moz-border-radius-bottomright: @bottomright;
+ -moz-border-radius-bottomleft: @bottomleft;
+ -moz-border-radius-topleft: @topleft;
+ border-top-right-radius: @topright;
+ border-bottom-right-radius: @bottomright;
+ border-bottom-left-radius: @bottomleft;
+ border-top-left-radius: @topleft;
+ .background-clip(padding-box);
+}
+.opacity(@opacity: 0.5) {
+ -webkit-opacity: @opacity;
+ -khtml-opacity: @opacity;
+ -moz-opacity: @opacity;
+ opacity: @opacity;
+ @opperc: @opacity * 100;
+ -ms-filter: ~"progid:DXImageTransform.Microsoft.Alpha(opacity=@{opperc})";
+ filter: ~"alpha(opacity=@{opperc})";
+}
+.transition-duration(@duration: 0.2s) {
+ -moz-transition-duration: @duration;
+ -webkit-transition-duration: @duration;
+ -o-transition-duration: @duration;
+ transition-duration: @duration;
+}
+.transform(...) {
+ -webkit-transform: @arguments;
+ -moz-transform: @arguments;
+ -o-transform: @arguments;
+ -ms-transform: @arguments;
+ transform: @arguments;
+}
+.rotation(@deg:5deg){
+ .transform(rotate(@deg));
+}
+.scale(@ratio:1.5){
+ .transform(scale(@ratio));
+}
+.transition(@duration:0.2s, @ease:ease-out) {
+ -webkit-transition: all @duration @ease;
+ -moz-transition: all @duration @ease;
+ -o-transition: all @duration @ease;
+ transition: all @duration @ease;
+}
+.inner-shadow(@horizontal:0, @vertical:1px, @blur:2px, @alpha: 0.4) {
+ -webkit-box-shadow: inset @horizontal @vertical @blur rgba(0, 0, 0, @alpha);
+ -moz-box-shadow: inset @horizontal @vertical @blur rgba(0, 0, 0, @alpha);
+ box-shadow: inset @horizontal @vertical @blur rgba(0, 0, 0, @alpha);
+}
+.box-shadow(@arguments) {
+ -webkit-box-shadow: @arguments;
+ -moz-box-shadow: @arguments;
+ box-shadow: @arguments;
+}
+.box-sizing(@sizing: border-box) {
+ -ms-box-sizing: @sizing;
+ -moz-box-sizing: @sizing;
+ -webkit-box-sizing: @sizing;
+ box-sizing: @sizing;
+}
+.user-select(@argument: none) {
+ -webkit-user-select: @argument;
+ -moz-user-select: @argument;
+ -ms-user-select: @argument;
+ user-select: @argument;
+}
+.columns(@colwidth: 250px, @colcount: 0, @colgap: 50px, @columnRuleColor: #EEE, @columnRuleStyle: solid, @columnRuleWidth: 1px) {
+ -moz-column-width: @colwidth;
+ -moz-column-count: @colcount;
+ -moz-column-gap: @colgap;
+ -moz-column-rule-color: @columnRuleColor;
+ -moz-column-rule-style: @columnRuleStyle;
+ -moz-column-rule-width: @columnRuleWidth;
+ -webkit-column-width: @colwidth;
+ -webkit-column-count: @colcount;
+ -webkit-column-gap: @colgap;
+ -webkit-column-rule-color: @columnRuleColor;
+ -webkit-column-rule-style: @columnRuleStyle;
+ -webkit-column-rule-width: @columnRuleWidth;
+ column-width: @colwidth;
+ column-count: @colcount;
+ column-gap: @colgap;
+ column-rule-color: @columnRuleColor;
+ column-rule-style: @columnRuleStyle;
+ column-rule-width: @columnRuleWidth;
+}
+.translate(@x:0, @y:0) {
+ .transform(translate(@x, @y));
+}
+.background-clip(@argument: padding-box) {
+ -moz-background-clip: @argument;
+ -webkit-background-clip: @argument;
+ background-clip: @argument;
+}
diff --git a/addons/web_editor/static/lib/summernote/src/less/summernote.less b/addons/web_editor/static/lib/summernote/src/less/summernote.less
new file mode 100644
index 00000000000..4a16ba4b273
--- /dev/null
+++ b/addons/web_editor/static/lib/summernote/src/less/summernote.less
@@ -0,0 +1,459 @@
+@import "elements.less";
+
+/* Theme Variables
+ ------------------------------------------*/
+@border-color: #a9a9a9;
+@background-color: #f5f5f5;
+
+/* Frame Mode Layout
+ ------------------------------------------*/
+.note-editor {
+ border: 1px solid @border-color;
+ position: relative;
+
+ /* dropzone */
+ @dropzone-color: lightskyblue;
+ @dropzone-active-color: darken(@dropzone-color, 30);
+ .note-dropzone {
+ position: absolute;
+ display: none;
+ z-index: 1;
+ border: 2px dashed @dropzone-color;
+ color: @dropzone-color;
+ background-color: white;
+ opacity: 0.95;
+ pointer-event: none;
+
+ .note-dropzone-message {
+ display: table-cell;
+ vertical-align: middle;
+ text-align: center;
+ font-size: 28px;
+ font-weight: bold;
+ }
+
+ &.hover {
+ border: 2px dashed @dropzone-active-color;
+ color: @dropzone-active-color;
+ }
+ }
+
+ &.dragover .note-dropzone {
+ display: table;
+ }
+
+ .note-toolbar {
+ background-color: @background-color;
+ border-bottom: 1px solid @border-color;
+ }
+
+ /* fullscreen mode */
+ &.fullscreen {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 100%;
+ z-index: 1050; /* bs3 modal-backdrop: 1030, bs2: 1040 */
+ .note-editable {
+ background-color: white;
+ }
+ .note-resizebar {
+ display: none;
+ }
+ }
+
+ /* codeview mode */
+ &.codeview {
+ .note-editable {
+ display: none;
+ }
+ .note-codable {
+ display: block;
+ }
+ }
+
+ /* statusbar */
+ .note-statusbar {
+ background-color: @background-color;
+ .note-resizebar {
+ height: 8px;
+ width: 100%;
+ border-top: 1px solid @border-color;
+ cursor: ns-resize;
+ .note-icon-bar {
+ width: 20px;
+ margin: 1px auto;
+ border-top: 1px solid @border-color;
+ }
+ }
+ }
+
+ /* editable */
+ .note-editable[contenteditable=true]:empty:not(:focus):before {
+ content:attr(data-placeholder);
+ color: #a9a9a9;
+ }
+
+ .note-editable {
+ padding: 10px;
+ overflow: auto;
+ outline: none;
+ }
+ .note-editable[contenteditable="false"] {
+ background-color: #e5e5e5;
+ }
+
+ /* codeable */
+ .note-codable {
+ display: none;
+ width: 100%;
+ padding: 10px;
+ border: none;
+ box-shadow: none;
+ font-family: Menlo, Monaco, monospace, sans-serif;
+ font-size: 14px;
+ color: #ccc;
+ background-color: #222;
+ resize: none;
+
+ /* override BS2 default style */
+ .box-sizing(border-box);
+ .rounded(0);
+ margin-bottom: 0;
+ }
+}
+
+/* Air Mode Layout
+ ------------------------------------------*/
+.note-air-editor {
+ outline: none;
+}
+
+/* Popover
+ ------------------------------------------*/
+.note-popover .popover {
+ max-width: none;
+ .popover-content {
+ a {
+ display: inline-block;
+ max-width: 200px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap; /* for FF */
+ vertical-align: middle; /* for FF */
+ }
+ }
+ & .arrow {
+ left: 20px;
+ }
+}
+
+/* Popover and Toolbar (Button container)
+ ------------------------------------------*/
+.note-popover .popover .popover-content, .note-toolbar {
+ margin: 0;
+ padding: 0 0 5px 5px;
+
+ &>.btn-group {
+ margin-top: 5px;
+ margin-left: 0;
+ margin-right: 5px;
+ }
+
+ .btn-group {
+ .note-table {
+ min-width: 0;
+ padding: 5px;
+ .note-dimension-picker {
+ font-size: 18px;
+ .note-dimension-picker-mousecatcher {
+ position: absolute !important;
+ z-index: 3;
+ width: 10em;
+ height: 10em;
+ cursor: pointer;
+ }
+ .note-dimension-picker-unhighlighted {
+ position: relative !important;
+ z-index: 1;
+ width: 5em;
+ height: 5em;
+ background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASAgMAAAAroGbEAAAACVBMVEUAAIj4+Pjp6ekKlAqjAAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfYAR0BKhmnaJzPAAAAG0lEQVQI12NgAAOtVatWMTCohoaGUY+EmIkEAEruEzK2J7tvAAAAAElFTkSuQmCC') repeat;
+ }
+ .note-dimension-picker-highlighted {
+ position: absolute !important;
+ z-index: 2;
+ width: 1em;
+ height: 1em;
+ background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASAgMAAAAroGbEAAAACVBMVEUAAIjd6vvD2f9LKLW+AAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfYAR0BKwNDEVT0AAAAG0lEQVQI12NgAAOtVatWMTCohoaGUY+EmIkEAEruEzK2J7tvAAAAAElFTkSuQmCC') repeat;
+ }
+ }
+ }
+ }
+
+ .note-style {
+ h1, h2, h3, h4, h5, h6, blockquote {
+ margin: 0;
+ }
+ }
+
+ .note-color {
+ .dropdown-toggle {
+ width: 20px;
+ padding-left: 5px;
+ }
+ .dropdown-menu {
+ min-width: 340px;
+ .btn-group {
+ margin: 0;
+ &:first-child {
+ margin: 0 5px;
+ }
+
+ .note-palette-title {
+ font-size: 12px;
+ margin: 2px 7px;
+ text-align: center;
+ border-bottom: 1px solid #eee;
+ }
+
+ .note-color-reset {
+ font-size: 11px;
+ margin: 3px;
+ padding: 0 3px;
+ cursor: pointer;
+ .rounded(5px);
+ }
+
+ .note-color-row {
+ height: 20px;
+ }
+
+ .note-color-reset:hover {
+ background: #eee;
+ }
+ }
+ }
+ }
+
+ .note-para {
+ .dropdown-menu {
+ min-width: 216px;
+ padding: 5px;
+ &>div:first-child {
+ margin-right: 5px;
+ }
+ }
+ }
+
+ /* dropdown-menu for toolbar and popover */
+ .dropdown-menu {
+ min-width: 90px;
+
+ /* dropdown-menu right position */
+ /* http://forrst.com/posts/Bootstrap_right_positioned_dropdown-2KB */
+ &.right {
+ right: 0;
+ left: auto;
+ &::before { right: 9px; left: auto !important; }
+ &::after { right: 10px; left: auto !important; }
+ }
+
+ /* dropdown-menu for selectbox */
+ li a i {
+ color: deepskyblue;
+ visibility: hidden;
+ }
+ li a.checked i {
+ visibility: visible;
+ }
+ }
+
+ .note-fontsize-10 {
+ font-size: 10px;
+ }
+
+ /* color palette for toolbar and popover */
+ .note-color-palette {
+ line-height: 1;
+ div {
+ .note-color-btn {
+ width: 20px;
+ height: 20px;
+ padding: 0;
+ margin: 0;
+ border: 1px solid #fff;
+ }
+ .note-color-btn:hover {
+ border: 1px solid #000;
+ }
+ }
+ }
+}
+
+/* Dialog
+ ------------------------------------------*/
+.note-dialog {
+ &>div {
+ display: none; /* BS2's hide pacth. */
+ }
+ .form-group { /* overwrite BS's form-horizontal minus margins */
+ margin-left: 0;
+ margin-right: 0;
+ }
+ .note-modal-form {
+ margin: 0; /* overwrite BS2's form margin bottom */
+ }
+ .note-image-dialog {
+ .note-dropzone {
+ min-height: 100px;
+ font-size: 30px;
+ line-height: 4; /* vertical-align */
+ color: lightgray;
+ text-align: center;
+ border: 4px dashed lightgray;
+ margin-bottom: 10px;
+ }
+ }
+ .note-help-dialog {
+ @note-shortcut-hl: #dd0;
+ font-size: 12px;
+ color: #ccc;
+ background-color: #222 !important;
+ .opacity(0.9);
+ .modal-content {
+ background: transparent;
+ border: 1px solid white;
+ .box-shadow(none);
+ .rounded(5px);
+ }
+
+ /* BS2's background pacth. */
+ background: transparent;
+ border: none;
+
+ a {
+ font-size: 12px;
+ color: white;
+ }
+
+ .title {
+ color: white;
+ font-size: 14px;
+ font-weight: bold;
+ padding-bottom: 5px;
+ margin-bottom: 10px;
+ border-bottom: white 1px solid;
+ }
+
+ .modal-close {
+ font-size: 14px;
+ color: @note-shortcut-hl;
+ cursor: pointer;
+ }
+
+ .text-center {
+ margin: 10px 0 0;
+ }
+
+ .note-shortcut {
+ padding-top: 8px;
+ padding-bottom: 8px;
+
+ &-row {
+ margin-right: -5px;
+ margin-left: -5px;
+ }
+
+ &-col {
+ padding-right: 5px;
+ padding-left: 5px;
+ }
+
+ &-title {
+ font-size: 13px;
+ font-weight: bold;
+ color: @note-shortcut-hl;
+ }
+
+ &-key {
+ font-family: "Courier New";
+ color: @note-shortcut-hl;
+ text-align: right;
+ }
+ }
+ }
+}
+
+/* Handle
+ ------------------------------------------*/
+.note-handle {
+ /* control selection */
+ .note-control-selection {
+ position: absolute;
+ display: none;
+ border: 1px solid black;
+ &>div { position: absolute; }
+
+ .note-control-selection-bg {
+ width: 100%;
+ height: 100%;
+ background-color: black;
+ .opacity(0.30)
+ }
+
+ .note-control-handle {
+ width: 7px;
+ height: 7px;
+ border: 1px solid black;
+ }
+
+ .note-control-holder {
+ .note-control-handle;
+ }
+
+ .note-control-sizing {
+ .note-control-handle;
+ background-color: white;
+ }
+
+ .note-control-nw {
+ top: -5px;
+ left: -5px;
+ border-right: none;
+ border-bottom: none;
+ }
+
+ .note-control-ne {
+ top: -5px;
+ right: -5px;
+ border-bottom: none;
+ border-left: none;
+ }
+
+ .note-control-sw {
+ bottom: -5px;
+ left: -5px;
+ border-top: none;
+ border-right: none;
+ }
+
+ .note-control-se {
+ right: -5px;
+ bottom: -5px;
+ cursor: se-resize;
+ }
+
+ .note-control-selection-info {
+ right: 0;
+ bottom: 0;
+ padding: 5px;
+ margin: 5px;
+ color: white;
+ background-color: black;
+ font-size: 12px;
+ .rounded(5px);
+ .opacity(0.7);
+ }
+ }
+}