scratch
/bower_components/trumbowyg/dist/plugins/colors/trumbowyg.colors.js |
---|
@@ -0,0 +1,168 @@ |
/* =========================================================== |
* trumbowyg.colors.js v1.2 |
* Colors picker plugin for Trumbowyg |
* http://alex-d.github.com/Trumbowyg |
* =========================================================== |
* Author : Alexandre Demode (Alex-D) |
* Twitter : @AlexandreDemode |
* Website : alex-d.fr |
*/ |
(function ($) { |
'use strict'; |
$.extend(true, $.trumbowyg, { |
langs: { |
// jshint camelcase:false |
cs: { |
foreColor: 'Barva textu', |
backColor: 'Barva pozadí' |
}, |
en: { |
foreColor: 'Text color', |
backColor: 'Background color' |
}, |
fr: { |
foreColor: 'Couleur du texte', |
backColor: 'Couleur de fond' |
}, |
sk: { |
foreColor: 'Farba textu', |
backColor: 'Farba pozadia' |
}, |
zh_cn: { |
foreColor: '文字颜色', |
backColor: '背景颜色' |
} |
} |
}); |
// jshint camelcase:true |
function hex(x) { |
return ('0' + parseInt(x).toString(16)).slice(-2); |
} |
function colorToHex(rgb) { |
if (rgb.search('rgb') === -1) { |
return rgb.replace('#', ''); |
} else if (rgb === 'rgba(0, 0, 0, 0)') { |
return 'transparent'; |
} else { |
rgb = rgb.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*(\d+))?\)$/); |
return hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]); |
} |
} |
function colorTagHandler(element, trumbowyg) { |
var tags = []; |
if(!element.style){ |
return tags; |
} |
// background color |
if (element.style.backgroundColor !== '') { |
var backColor = colorToHex(element.style.backgroundColor); |
if (trumbowyg.o.plugins.colors.colorList.indexOf(backColor) >= 0) { |
tags.push('backColor' + backColor); |
} else { |
tags.push('backColorFree'); |
} |
} |
// text color |
var foreColor; |
if (element.style.color !== '') { |
foreColor = colorToHex(element.style.color); |
} else if (element.hasAttribute('color')) { |
foreColor = colorToHex(element.getAttribute('color')); |
} |
if (foreColor) { |
if (trumbowyg.o.plugins.colors.colorList.indexOf(foreColor) >= 0) { |
tags.push('foreColor' + foreColor); |
} else { |
tags.push('foreColorFree'); |
} |
} |
return tags; |
} |
var defaultOptions = { |
colorList: ['ffffff', '000000', 'eeece1', '1f497d', '4f81bd', 'c0504d', '9bbb59', '8064a2', '4bacc6', 'f79646', 'ffff00', 'f2f2f2', '7f7f7f', 'ddd9c3', 'c6d9f0', 'dbe5f1', 'f2dcdb', 'ebf1dd', 'e5e0ec', 'dbeef3', 'fdeada', 'fff2ca', 'd8d8d8', '595959', 'c4bd97', '8db3e2', 'b8cce4', 'e5b9b7', 'd7e3bc', 'ccc1d9', 'b7dde8', 'fbd5b5', 'ffe694', 'bfbfbf', '3f3f3f', '938953', '548dd4', '95b3d7', 'd99694', 'c3d69b', 'b2a2c7', 'b7dde8', 'fac08f', 'f2c314', 'a5a5a5', '262626', '494429', '17365d', '366092', '953734', '76923c', '5f497a', '92cddc', 'e36c09', 'c09100', '7f7f7f', '0c0c0c', '1d1b10', '0f243e', '244061', '632423', '4f6128', '3f3151', '31859b', '974806', '7f6000'] |
}; |
// Add all colors in two dropdowns |
$.extend(true, $.trumbowyg, { |
plugins: { |
color: { |
init: function (trumbowyg) { |
trumbowyg.o.plugins.colors = trumbowyg.o.plugins.colors || defaultOptions; |
var foreColorBtnDef = { |
dropdown: buildDropdown('foreColor', trumbowyg) |
}, |
backColorBtnDef = { |
dropdown: buildDropdown('backColor', trumbowyg) |
}; |
trumbowyg.addBtnDef('foreColor', foreColorBtnDef); |
trumbowyg.addBtnDef('backColor', backColorBtnDef); |
}, |
tagHandler: colorTagHandler |
} |
} |
}); |
function buildDropdown(fn, trumbowyg) { |
var dropdown = []; |
$.each(trumbowyg.o.plugins.colors.colorList, function (i, color) { |
var btn = fn + color, |
btnDef = { |
fn: fn, |
forceCss: true, |
param: '#' + color, |
style: 'background-color: #' + color + ';' |
}; |
trumbowyg.addBtnDef(btn, btnDef); |
dropdown.push(btn); |
}); |
var removeColorButtonName = fn + 'Remove', |
removeColorBtnDef = { |
fn: 'removeFormat', |
param: fn, |
style: 'background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAG0lEQVQIW2NkQAAfEJMRmwBYhoGBYQtMBYoAADziAp0jtJTgAAAAAElFTkSuQmCC);' |
}; |
trumbowyg.addBtnDef(removeColorButtonName, removeColorBtnDef); |
dropdown.push(removeColorButtonName); |
// add free color btn |
var freeColorButtonName = fn + 'Free', |
freeColorBtnDef = { |
fn: function () { |
trumbowyg.openModalInsert(trumbowyg.lang[fn], |
{ |
color: { |
label: fn, |
value: '#FFFFFF' |
} |
}, |
// callback |
function (values) { |
trumbowyg.execCmd(fn, values.color); |
return true; |
} |
); |
}, |
text: '#', |
// style adjust for displaying the text |
style: 'text-indent: 0;line-height: 20px;padding: 0 5px;' |
}; |
trumbowyg.addBtnDef(freeColorButtonName, freeColorBtnDef); |
dropdown.push(freeColorButtonName); |
return dropdown; |
} |
})(jQuery); |
/bower_components/trumbowyg/dist/plugins/colors/trumbowyg.colors.min.js |
---|
@@ -0,0 +1 @@ |
!function(o){"use strict";function r(o){return("0"+parseInt(o).toString(16)).slice(-2)}function e(o){return-1===o.search("rgb")?o.replace("#",""):"rgba(0, 0, 0, 0)"===o?"transparent":(o=o.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*(\d+))?\)$/),r(o[1])+r(o[2])+r(o[3]))}function f(o,r){var f=[];if(!o.style)return f;if(""!==o.style.backgroundColor){var c=e(o.style.backgroundColor);r.o.plugins.colors.colorList.indexOf(c)>=0?f.push("backColor"+c):f.push("backColorFree")}var a;return""!==o.style.color?a=e(o.style.color):o.hasAttribute("color")&&(a=e(o.getAttribute("color"))),a&&(r.o.plugins.colors.colorList.indexOf(a)>=0?f.push("foreColor"+a):f.push("foreColorFree")),f}function c(r,e){var f=[];o.each(e.o.plugins.colors.colorList,function(o,c){var a=r+c,d={fn:r,forceCss:!0,param:"#"+c,style:"background-color: #"+c+";"};e.addBtnDef(a,d),f.push(a)});var c=r+"Remove",a={fn:"removeFormat",param:r,style:"background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAG0lEQVQIW2NkQAAfEJMRmwBYhoGBYQtMBYoAADziAp0jtJTgAAAAAElFTkSuQmCC);"};e.addBtnDef(c,a),f.push(c);var d=r+"Free",t={fn:function(){e.openModalInsert(e.lang[r],{color:{label:r,value:"#FFFFFF"}},function(o){return e.execCmd(r,o.color),!0})},text:"#",style:"text-indent: 0;line-height: 20px;padding: 0 5px;"};return e.addBtnDef(d,t),f.push(d),f}o.extend(!0,o.trumbowyg,{langs:{cs:{foreColor:"Barva textu",backColor:"Barva pozadí"},en:{foreColor:"Text color",backColor:"Background color"},fr:{foreColor:"Couleur du texte",backColor:"Couleur de fond"},sk:{foreColor:"Farba textu",backColor:"Farba pozadia"},zh_cn:{foreColor:"文字颜色",backColor:"背景颜色"}}});var a={colorList:["ffffff","000000","eeece1","1f497d","4f81bd","c0504d","9bbb59","8064a2","4bacc6","f79646","ffff00","f2f2f2","7f7f7f","ddd9c3","c6d9f0","dbe5f1","f2dcdb","ebf1dd","e5e0ec","dbeef3","fdeada","fff2ca","d8d8d8","595959","c4bd97","8db3e2","b8cce4","e5b9b7","d7e3bc","ccc1d9","b7dde8","fbd5b5","ffe694","bfbfbf","3f3f3f","938953","548dd4","95b3d7","d99694","c3d69b","b2a2c7","b7dde8","fac08f","f2c314","a5a5a5","262626","494429","17365d","366092","953734","76923c","5f497a","92cddc","e36c09","c09100","7f7f7f","0c0c0c","1d1b10","0f243e","244061","632423","4f6128","3f3151","31859b","974806","7f6000"]};o.extend(!0,o.trumbowyg,{plugins:{color:{init:function(o){o.o.plugins.colors=o.o.plugins.colors||a;var r={dropdown:c("foreColor",o)},e={dropdown:c("backColor",o)};o.addBtnDef("foreColor",r),o.addBtnDef("backColor",e)},tagHandler:f}}})}(jQuery); |
/bower_components/trumbowyg/dist/plugins/colors/ui/sass/trumbowyg.colors.scss |
---|
@@ -0,0 +1,49 @@ |
/** |
* Trumbowyg v2.5.1 - A lightweight WYSIWYG editor |
* Colors plugin stylesheet for Trumbowyg editor |
* ------------------------ |
* @link http://alex-d.github.io/Trumbowyg |
* @license MIT |
* @author Alexandre Demode (Alex-D) |
* Twitter : @AlexandreDemode |
* Website : alex-d.fr |
*/ |
.trumbowyg-dropdown-foreColor, |
.trumbowyg-dropdown-backColor { |
width: 276px; |
padding: 7px 5px; |
svg { |
display: none !important; |
} |
button { |
display: block; |
position: relative; |
float: left; |
text-indent: -9999px; |
height: 20px; |
width: 20px; |
border: 1px solid #333; |
padding: 0; |
margin: 2px; |
&:hover, |
&:focus { |
&::after { |
content: " "; |
display: block; |
position: absolute; |
top: -5px; |
left: -5px; |
height: 27px; |
width: 27px; |
background: inherit; |
border: 1px solid #FFF; |
box-shadow: #000 0 0 2px; |
z-index: 10; |
} |
} |
} |
} |
/bower_components/trumbowyg/dist/plugins/colors/ui/trumbowyg.colors.css |
---|
@@ -0,0 +1,43 @@ |
/** |
* Trumbowyg v2.5.1 - A lightweight WYSIWYG editor |
* Colors plugin stylesheet for Trumbowyg editor |
* ------------------------ |
* @link http://alex-d.github.io/Trumbowyg |
* @license MIT |
* @author Alexandre Demode (Alex-D) |
* Twitter : @AlexandreDemode |
* Website : alex-d.fr |
*/ |
.trumbowyg-dropdown-foreColor, |
.trumbowyg-dropdown-backColor { |
width: 276px; |
padding: 7px 5px; } |
.trumbowyg-dropdown-foreColor svg, |
.trumbowyg-dropdown-backColor svg { |
display: none !important; } |
.trumbowyg-dropdown-foreColor button, |
.trumbowyg-dropdown-backColor button { |
display: block; |
position: relative; |
float: left; |
text-indent: -9999px; |
height: 20px; |
width: 20px; |
border: 1px solid #333; |
padding: 0; |
margin: 2px; } |
.trumbowyg-dropdown-foreColor button:hover::after, .trumbowyg-dropdown-foreColor button:focus::after, |
.trumbowyg-dropdown-backColor button:hover::after, |
.trumbowyg-dropdown-backColor button:focus::after { |
content: " "; |
display: block; |
position: absolute; |
top: -5px; |
left: -5px; |
height: 27px; |
width: 27px; |
background: inherit; |
border: 1px solid #FFF; |
box-shadow: #000 0 0 2px; |
z-index: 10; } |
/bower_components/trumbowyg/dist/plugins/colors/ui/trumbowyg.colors.min.css |
---|
@@ -0,0 +1,2 @@ |
/** Trumbowyg v2.5.1 - A lightweight WYSIWYG editor - alex-d.github.io/Trumbowyg - License MIT - Author : Alexandre Demode (Alex-D) / alex-d.fr */ |
.trumbowyg-dropdown-backColor,.trumbowyg-dropdown-foreColor{width:276px;padding:7px 5px}.trumbowyg-dropdown-backColor svg,.trumbowyg-dropdown-foreColor svg{display:none!important}.trumbowyg-dropdown-backColor button,.trumbowyg-dropdown-foreColor button{display:block;position:relative;float:left;text-indent:-9999px;height:20px;width:20px;border:1px solid #333;padding:0;margin:2px}.trumbowyg-dropdown-backColor button:focus::after,.trumbowyg-dropdown-backColor button:hover::after,.trumbowyg-dropdown-foreColor button:focus::after,.trumbowyg-dropdown-foreColor button:hover::after{content:" ";display:block;position:absolute;top:-5px;left:-5px;height:27px;width:27px;background:inherit;border:1px solid #FFF;box-shadow:#000 0 0 2px;z-index:10} |