suvii 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (150) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +14 -0
  3. data/.travis.yml +10 -0
  4. data/.yardopts +1 -0
  5. data/CHANGELOG.md +1 -0
  6. data/CONTRIBUTING.md +47 -0
  7. data/Gemfile +6 -0
  8. data/LICENSE.txt +22 -0
  9. data/README.md +51 -0
  10. data/Rakefile +7 -0
  11. data/lib/suvii.rb +40 -0
  12. data/lib/suvii/cache.rb +24 -0
  13. data/lib/suvii/extract.rb +58 -0
  14. data/lib/suvii/extract/targz.rb +49 -0
  15. data/lib/suvii/extract/zip.rb +19 -0
  16. data/lib/suvii/http.rb +31 -0
  17. data/suvii.gemspec +23 -0
  18. data/test/acceptance_test.rb +29 -0
  19. data/test/cache_test.rb +42 -0
  20. data/test/extract/targz_test.rb +28 -0
  21. data/test/extract/zip_test.rb +28 -0
  22. data/test/extract_test.rb +26 -0
  23. data/test/fixtures/results/Trumbowyg-1.1.7/.gitattributes +6 -0
  24. data/test/fixtures/results/Trumbowyg-1.1.7/.jshintrc +15 -0
  25. data/test/fixtures/results/Trumbowyg-1.1.7/Gulpfile.js +167 -0
  26. data/test/fixtures/results/Trumbowyg-1.1.7/LICENSE +21 -0
  27. data/test/fixtures/results/Trumbowyg-1.1.7/README.md +29 -0
  28. data/test/fixtures/results/Trumbowyg-1.1.7/bower.json +36 -0
  29. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/ca.min.js +11 -0
  30. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/da.min.js +9 -0
  31. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/de.min.js +9 -0
  32. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/es.min.js +9 -0
  33. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/es_ar.min.js +9 -0
  34. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/fa.min.js +10 -0
  35. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/fi.min.js +9 -0
  36. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/fr.min.js +10 -0
  37. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/he.min.js +9 -0
  38. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/id.min.js +11 -0
  39. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/it.min.js +8 -0
  40. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/ko.min.js +10 -0
  41. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/pl.min.js +9 -0
  42. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/pt.min.js +11 -0
  43. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/ro.min.js +13 -0
  44. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/ru.min.js +8 -0
  45. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/tr.min.js +10 -0
  46. data/test/fixtures/results/Trumbowyg-1.1.7/dist/langs/zh_cn.min.js +10 -0
  47. data/test/fixtures/results/Trumbowyg-1.1.7/dist/plugins/base64/trumbowyg.base64.js +74 -0
  48. data/test/fixtures/results/Trumbowyg-1.1.7/dist/plugins/base64/trumbowyg.base64.min.js +1 -0
  49. data/test/fixtures/results/Trumbowyg-1.1.7/dist/plugins/colors/trumbowyg.colors.js +69 -0
  50. data/test/fixtures/results/Trumbowyg-1.1.7/dist/plugins/colors/trumbowyg.colors.min.js +1 -0
  51. data/test/fixtures/results/Trumbowyg-1.1.7/dist/plugins/colors/ui/images/icons-2x.png +0 -0
  52. data/test/fixtures/results/Trumbowyg-1.1.7/dist/plugins/colors/ui/images/icons.png +0 -0
  53. data/test/fixtures/results/Trumbowyg-1.1.7/dist/plugins/colors/ui/trumbowyg.colors.css +55 -0
  54. data/test/fixtures/results/Trumbowyg-1.1.7/dist/plugins/colors/ui/trumbowyg.colors.min.css +2 -0
  55. data/test/fixtures/results/Trumbowyg-1.1.7/dist/plugins/upload/trumbowyg.upload.js +140 -0
  56. data/test/fixtures/results/Trumbowyg-1.1.7/dist/plugins/upload/trumbowyg.upload.min.js +1 -0
  57. data/test/fixtures/results/Trumbowyg-1.1.7/dist/trumbowyg.js +1124 -0
  58. data/test/fixtures/results/Trumbowyg-1.1.7/dist/trumbowyg.min.js +2 -0
  59. data/test/fixtures/results/Trumbowyg-1.1.7/dist/ui/images/icons-2x.png +0 -0
  60. data/test/fixtures/results/Trumbowyg-1.1.7/dist/ui/images/icons.png +0 -0
  61. data/test/fixtures/results/Trumbowyg-1.1.7/dist/ui/trumbowyg.css +471 -0
  62. data/test/fixtures/results/Trumbowyg-1.1.7/dist/ui/trumbowyg.min.css +2 -0
  63. data/test/fixtures/results/Trumbowyg-1.1.7/examples/css/main.css +14 -0
  64. data/test/fixtures/results/Trumbowyg-1.1.7/examples/index.html +41 -0
  65. data/test/fixtures/results/Trumbowyg-1.1.7/examples/plugins/colors.html +49 -0
  66. data/test/fixtures/results/Trumbowyg-1.1.7/index.html +252 -0
  67. data/test/fixtures/results/Trumbowyg-1.1.7/package.json +48 -0
  68. data/test/fixtures/results/Trumbowyg-1.1.7/plugins/base64/trumbowyg.base64.js +74 -0
  69. data/test/fixtures/results/Trumbowyg-1.1.7/plugins/colors/Gulpfile.js +101 -0
  70. data/test/fixtures/results/Trumbowyg-1.1.7/plugins/colors/trumbowyg.colors.js +69 -0
  71. data/test/fixtures/results/Trumbowyg-1.1.7/plugins/colors/ui/images/icons-2x/backcolor.png +0 -0
  72. data/test/fixtures/results/Trumbowyg-1.1.7/plugins/colors/ui/images/icons-2x/forecolor.png +0 -0
  73. data/test/fixtures/results/Trumbowyg-1.1.7/plugins/colors/ui/images/icons/backcolor.png +0 -0
  74. data/test/fixtures/results/Trumbowyg-1.1.7/plugins/colors/ui/images/icons/forecolor.png +0 -0
  75. data/test/fixtures/results/Trumbowyg-1.1.7/plugins/colors/ui/sass/trumbowyg.colors.scss +65 -0
  76. data/test/fixtures/results/Trumbowyg-1.1.7/plugins/upload/trumbowyg.upload.js +140 -0
  77. data/test/fixtures/results/Trumbowyg-1.1.7/plugins/upload/trumbowyg.upload.php +49 -0
  78. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/ca.js +58 -0
  79. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/da.js +56 -0
  80. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/de.js +56 -0
  81. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/en.js +14 -0
  82. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/es.js +56 -0
  83. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/es_ar.js +56 -0
  84. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/fa.js +57 -0
  85. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/fi.js +56 -0
  86. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/fr.js +57 -0
  87. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/he.js +58 -0
  88. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/id.js +58 -0
  89. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/it.js +55 -0
  90. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/ko.js +57 -0
  91. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/pl.js +56 -0
  92. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/pt.js +58 -0
  93. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/ro.js +60 -0
  94. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/ru.js +55 -0
  95. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/tr.js +57 -0
  96. data/test/fixtures/results/Trumbowyg-1.1.7/src/langs/zh_cn.js +57 -0
  97. data/test/fixtures/results/Trumbowyg-1.1.7/src/trumbowyg.js +1113 -0
  98. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/attachement.png +0 -0
  99. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/barre.png +0 -0
  100. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/bold.png +0 -0
  101. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/center-align.png +0 -0
  102. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/close.png +0 -0
  103. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/formatting.png +0 -0
  104. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/fullscreen-exit.png +0 -0
  105. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/fullscreen.png +0 -0
  106. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/gras.png +0 -0
  107. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/horizontal-rule.png +0 -0
  108. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/image.png +0 -0
  109. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/italic.png +0 -0
  110. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/justify-align.png +0 -0
  111. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/left-align.png +0 -0
  112. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/link.png +0 -0
  113. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/ordered-list.png +0 -0
  114. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/right-align.png +0 -0
  115. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/souligne.png +0 -0
  116. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/strikethrough.png +0 -0
  117. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/underline.png +0 -0
  118. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/unordered-list.png +0 -0
  119. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/video.png +0 -0
  120. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons-2x/view-html.png +0 -0
  121. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/attachement.png +0 -0
  122. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/barre.png +0 -0
  123. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/bold.png +0 -0
  124. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/center-align.png +0 -0
  125. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/close.png +0 -0
  126. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/formatting.png +0 -0
  127. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/fullscreen-exit.png +0 -0
  128. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/fullscreen.png +0 -0
  129. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/gras.png +0 -0
  130. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/horizontal-rule.png +0 -0
  131. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/image.png +0 -0
  132. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/italic.png +0 -0
  133. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/justify-align.png +0 -0
  134. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/left-align.png +0 -0
  135. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/link.png +0 -0
  136. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/ordered-list.png +0 -0
  137. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/right-align.png +0 -0
  138. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/souligne.png +0 -0
  139. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/strikethrough.png +0 -0
  140. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/underline.png +0 -0
  141. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/unordered-list.png +0 -0
  142. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/video.png +0 -0
  143. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/images/icons/view-html.png +0 -0
  144. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/sass/mixins/_sprite-pos.scss +7 -0
  145. data/test/fixtures/results/Trumbowyg-1.1.7/src/ui/sass/trumbowyg.scss +564 -0
  146. data/test/fixtures/trumbowyg.tar.gz +0 -0
  147. data/test/fixtures/trumbowyg.zip +0 -0
  148. data/test/http_test.rb +61 -0
  149. data/test/test_helper.rb +24 -0
  150. metadata +409 -0
@@ -0,0 +1,2 @@
1
+ /** Trumbowyg v1.1.6 - A lightweight WYSIWYG editor - alex-d.github.io/Trumbowyg - License MIT - Author : Alexandre Demode (Alex-D) / alex-d.fr */
2
+ jQuery.trumbowyg={langs:{en:{viewHTML:"View HTML",formatting:"Formatting",p:"Paragraph",blockquote:"Quote",code:"Code",header:"Header",bold:"Bold",italic:"Italic",strikethrough:"Stroke",underline:"Underline",strong:"Strong",em:"Emphasis",del:"Deleted",unorderedList:"Unordered list",orderedList:"Ordered list",insertImage:"Insert Image",insertVideo:"Insert Video",link:"Link",createLink:"Insert link",unlink:"Remove link",justifyLeft:"Align Left",justifyCenter:"Align Center",justifyRight:"Align Right",justifyFull:"Align Justify",horizontalRule:"Insert horizontal rule",fullscreen:"fullscreen",close:"Close",submit:"Confirm",reset:"Cancel",invalidUrl:"Invalid URL",required:"Required",description:"Description",title:"Title",text:"Text"}},opts:{},btnsGrps:{design:["bold","italic","underline","strikethrough"],semantic:["strong","em","del"],justify:["justifyLeft","justifyCenter","justifyRight","justifyFull"],lists:["unorderedList","orderedList"]}},function(e,t,n,o){"use strict";n.fn.trumbowyg=function(e,t){if(e===Object(e)||!e)return this.each(function(){n(this).data("trumbowyg")||n(this).data("trumbowyg",new i(this,e))});if(1===this.length)try{var o=n(this).data("trumbowyg");switch(e){case"openModal":return o.openModal(t.title,t.content);case"closeModal":return o.closeModal();case"openModalInsert":return o.openModalInsert(t.title,t.fields,t.callback);case"saveSelection":return o.saveSelection();case"getSelection":return o.selection;case"getSelectedText":return o.selection+"";case"restoreSelection":return o.restoreSelection();case"destroy":return o.destroy();case"empty":return o.empty();case"lang":return o.lang;case"duration":return o.o.duration;case"html":return o.html(t)}}catch(r){}return!1};var i=function(e,o){var i=this;i.doc=e.ownerDocument||t,i.$e=n(e),i.$creator=n(e),o=n.extend(!0,{},o,n.trumbowyg.opts),i.lang="undefined"==typeof o.lang||"undefined"==typeof n.trumbowyg.langs[o.lang]?n.trumbowyg.langs.en:n.extend(!0,{},n.trumbowyg.langs.en,n.trumbowyg.langs[o.lang]),i.o=n.extend(!0,{},{lang:"en",dir:"ltr",duration:200,mobile:!1,tablet:!0,closable:!1,fullscreenable:!0,fixedBtnPane:!1,fixedFullWidth:!1,autogrow:!1,prefix:"trumbowyg-",convertLink:!0,semantic:!1,resetCss:!1,btns:["viewHTML","|","formatting","|",n.trumbowyg.btnsGrps.design,"|","link","|","insertImage","|",n.trumbowyg.btnsGrps.justify,"|",n.trumbowyg.btnsGrps.lists,"|","horizontalRule"],btnsAdd:[],btnsDef:{viewHTML:{func:"toggle"},p:{func:"formatBlock"},blockquote:{func:"formatBlock"},h1:{func:"formatBlock",title:i.lang.header+" 1"},h2:{func:"formatBlock",title:i.lang.header+" 2"},h3:{func:"formatBlock",title:i.lang.header+" 3"},h4:{func:"formatBlock",title:i.lang.header+" 4"},bold:{},italic:{},underline:{},strikethrough:{},strong:{func:"bold"},em:{func:"italic"},del:{func:"strikethrough"},createLink:{},unlink:{},insertImage:{},justifyLeft:{},justifyCenter:{},justifyRight:{},justifyFull:{},unorderedList:{func:"insertUnorderedList"},orderedList:{func:"insertOrderedList"},horizontalRule:{func:"insertHorizontalRule"},formatting:{dropdown:["p","blockquote","h1","h2","h3","h4"]},link:{dropdown:["createLink","unlink"]}}},o),i.o.semantic&&!o.btns?i.o.btns=["viewHTML","|","formatting","|",n.trumbowyg.btnsGrps.semantic,"|","link","|","insertImage","|",n.trumbowyg.btnsGrps.justify,"|",n.trumbowyg.btnsGrps.lists,"|","horizontalRule"]:o&&o.btns&&(i.o.btns=o.btns),i.init()};i.prototype={init:function(){var e=this;return e.height=e.$e.css("height"),e.isEnabled()?(e.buildEditor(!0),void 0):(e.buildEditor(),e.buildBtnPane(),e.fixedBtnPaneEvents(),e.buildOverlay(),void 0)},buildEditor:function(e){var t=this,o=t.o.prefix,i="";if(e!==!0)t.$box=n("<div/>",{"class":o+"box "+o+t.o.lang+" trumbowyg"}),t.isTextarea=!0,t.$e.is("textarea")?t.$editor=n("<div/>"):(t.$editor=t.$e,t.$e=t.buildTextarea().val(t.$e.val()),t.isTextarea=!1),t.$creator.is("[placeholder]")&&t.$editor.attr("placeholder",t.$creator.attr("placeholder")),t.$e.hide().addClass(o+"textarea"),t.isTextarea?(i=t.$e.val(),t.$box.insertAfter(t.$e).append(t.$editor).append(t.$e)):(i=t.$editor.html(),t.$box.insertAfter(t.$editor).append(t.$e).append(t.$editor),t.syncCode()),t.$editor.addClass(o+"editor").attr("contenteditable",!0).attr("dir",t.lang._dir||t.o.dir).html(i),t.o.resetCss&&t.$editor.addClass(o+"reset-css"),t.o.autogrow||n.each([t.$editor,t.$e],function(e,n){n.css({height:t.height,overflow:"auto"})}),t.o.semantic&&(t.$editor.html(t.$editor.html().replace("<br>","</p><p>").replace("&nbsp;","")),t.semanticCode()),t.$editor.on("dblclick","img",function(e){var o=n(this);t.openModalInsert(t.lang.insertImage,{url:{label:"URL",value:o.attr("src"),required:!0},alt:{label:"description",value:o.attr("alt")}},function(e){o.attr({src:e.url,alt:e.alt})}),e.stopPropagation()}).on("keyup",function(e){t.semanticCode(!1,13===e.which)}).on("focus",function(){t.$creator.trigger("tbwfocus")}).on("blur",function(){t.syncCode(),t.$creator.trigger("tbwblur")});else if(!t.$e.is("textarea")){var r=t.buildTextarea().val(t.$e.val());t.$e.hide().after(r)}},buildTextarea:function(){return n("<textarea/>",{name:this.$e.attr("id"),height:this.height})},buildBtnPane:function(){var t=this,i=t.o.prefix;if(t.o.btns!==!1){t.$btnPane=n("<ul/>",{"class":i+"button-pane"}),n.each(t.o.btns.concat(t.o.btnsAdd),function(e,r){try{var a=r.split("btnGrp-");a[1]!==o&&(r=n.trumbowyg.btnsGrps[a[1]])}catch(s){}n.isArray(r)||(r=[r]),n.each(r,function(e,o){try{var r=n("<li/>");"|"===o?r.addClass(i+"separator"):t.isSupportedBtn(o)&&r.append(t.buildBtn(o)),t.$btnPane.append(r)}catch(a){}})});var r=n("<li/>",{"class":i+"not-disable "+i+"buttons-right"});t.o.fullscreenable&&r.append(t.buildRightBtn("fullscreen").on("click",function(){var o=i+"fullscreen";t.$box.toggleClass(o),t.$box.hasClass(o)?(n("body").css("overflow","hidden"),n.each([t.$editor,t.$e],function(){n(this).css({height:"calc(100% - 35px)",overflow:"auto"})}),t.$btnPane.css("width","100%")):(n("body").css("overflow","auto"),t.$box.removeAttr("style"),t.o.autogrow||n.each([t.$editor,t.$e],function(){n(this).css("height",t.height)})),n(e).trigger("scroll")})),t.o.closable&&r.append(t.buildRightBtn("close").on("click",function(){t.$box.hasClass(i+"fullscreen")&&n("body").css("overflow","auto"),t.destroy()})),r.not(":empty")&&t.$btnPane.append(r),t.$box.prepend(t.$btnPane)}},buildBtn:function(e){var t=this,o=t.o.prefix,i=t.o.btnsDef[e],r=i.dropdown,a=t.lang[e]||e,s=n("<button/>",{type:"button","class":o+e+"-button"+(i.ico?" "+o+i.ico+"-button":""),text:i.text||i.title||a,title:i.title||i.text||a,mousedown:function(a){return(!r||t.$box.find("."+e+"-"+o+"dropdown").is(":hidden"))&&n("body",t.doc).trigger("mousedown"),!t.$btnPane.hasClass(o+"disable")||n(this).hasClass(o+"active")||n(this).parent().hasClass(o+"not-disable")?(t.execCmd((r?"dropdown":!1)||i.func||e,i.param||e),a.stopPropagation(),a.preventDefault(),void 0):!1}});if(r){s.addClass(o+"open-dropdown");var l=o+"dropdown",d=n("<div/>",{"class":e+"-"+l+" "+l+" "+o+"fixed-top"});n.each(r,function(e,n){t.o.btnsDef[n]&&t.isSupportedBtn(n)&&d.append(t.buildSubBtn(n))}),t.$box.append(d.hide())}return s},buildSubBtn:function(e){var t=this,o=t.o.btnsDef[e];return n("<button/>",{type:"button",text:o.text||o.title||t.lang[e]||e,style:o.style||null,mousedown:function(i){n("body",t.doc).trigger("mousedown"),t.execCmd(o.func||e,o.param||e),i.stopPropagation()}})},buildRightBtn:function(e){return n("<button/>",{type:"button","class":this.o.prefix+e+"-button",title:this.lang[e],text:this.lang[e]})},isSupportedBtn:function(e){var t=this.o.btnsDef[e];return"function"!=typeof t.isSupported||t.isSupported()},buildOverlay:function(){var e=this;return e.$overlay=n("<div/>",{"class":e.o.prefix+"overlay"}).css({top:e.$btnPane.outerHeight(),height:parseInt(e.$editor.outerHeight())+1+"px"}).appendTo(e.$box),e.$overlay},showOverlay:function(){var t=this;n(e).trigger("scroll"),t.$overlay.fadeIn(t.o.duration),t.$box.addClass(t.o.prefix+"box-blur")},hideOverlay:function(){var e=this;e.$overlay.fadeOut(e.o.duration/4),e.$box.removeClass(e.o.prefix+"box-blur")},fixedBtnPaneEvents:function(){var t=this,o=t.o.fixedFullWidth;t.o.fixedBtnPane&&(t.isFixed=!1,n(e).on("scroll resize",function(){if(t.$box){t.syncCode();var i=n(e).scrollTop(),r=t.$box.offset().top+1,a=i-r>0&&i-r-parseInt(t.height)<0,s=t.$btnPane,l=s.css("height"),d=s.outerHeight();a?(t.isFixed||(t.isFixed=!0,s.css({position:"fixed",top:0,left:o?"0":"auto",zIndex:7}),n([t.$editor,t.$e]).css({marginTop:l})),s.css({width:o?"100%":parseInt(t.$box.css("width"))-1+"px"}),n("."+t.o.prefix+"fixed-top",t.$box).css({position:o?"fixed":"absolute",top:o?d:parseInt(d)+(i-r)+"px",zIndex:15})):t.isFixed&&(t.isFixed=!1,s.removeAttr("style"),n([t.$editor,t.$e]).css({marginTop:0}),n("."+t.o.prefix+"fixed-top",t.$box).css({position:"absolute",top:d}))}}))},destroy:function(){var e=this,t=e.o.prefix,n=e.height,o=e.html();e.isTextarea?e.$box.after(e.$e.css({height:n}).val(o).removeClass(t+"textarea").show()):e.$box.after(e.$editor.css({height:n}).removeClass(t+"editor").removeAttr("contenteditable").html(o).show()),e.$box.remove(),e.$creator.removeData("trumbowyg")},empty:function(){this.$e.val(""),this.syncCode(!0)},toggle:function(){var e=this,t=e.o.prefix;e.semanticCode(!1,!0),e.$editor.toggle(),e.$e.toggle(),e.$btnPane.toggleClass(t+"disable"),e.$btnPane.find("."+t+"viewHTML-button").toggleClass(t+"active")},dropdown:function(t){var o=this,i=o.doc,r=o.o.prefix,a=o.$box.find("."+t+"-"+r+"dropdown"),s=o.$btnPane.find("."+r+t+"-button");if(a.is(":hidden")){var l=s.offset().left;s.addClass(r+"active"),a.css({position:"absolute",top:o.$btnPane.outerHeight(),left:o.o.fixedFullWidth&&o.isFixed?l+"px":l-o.$btnPane.offset().left+"px"}).show(),n(e).trigger("scroll"),n("body",i).on("mousedown",function(){n("."+r+"dropdown",i).hide(),n("."+r+"active",i).removeClass(r+"active"),n("body",i).off("mousedown")})}else n("body",i).trigger("mousedown")},html:function(e){var t=this;return e?(t.$e.val(e),t.syncCode(!0),t):t.$e.val()},syncCode:function(e){var t=this;!e&&t.$editor.is(":visible")?t.$e.val(t.$editor.html()):t.$editor.html(t.$e.val()),t.o.autogrow&&(t.height=t.$editor.css("height"),t.$e.css({height:t.height}))},semanticCode:function(e,t){var o=this;o.syncCode(e),o.o.semantic&&(o.semanticTag("b","strong"),o.semanticTag("i","em"),o.semanticTag("strike","del"),t&&(o.$editor.contents().filter(function(){return 3===this.nodeType&&n.trim(this.nodeValue).length>0}).wrap("<p></p>").end().filter("br").remove(),o.saveSelection(),o.semanticTag("div","p"),o.restoreSelection()),o.$e.val(o.$editor.html()))},semanticTag:function(e,t){n(e,this.$editor).each(function(){n(this).replaceWith(function(){return"<"+t+">"+n(this).html()+"</"+t+">"})})},createLink:function(){var e=this;e.saveSelection(),e.openModalInsert(e.lang.createLink,{url:{label:"URL",value:"http://",required:!0},title:{label:e.lang.title,value:e.selection},text:{label:e.lang.text,value:e.selection}},function(t){e.execCmd("createLink",t.url);var o=n('a[href="'+t.url+'"]:not([title])',e.$box);return t.text.length>0&&o.text(t.text),t.title.length>0&&o.attr("title",t.title),!0})},insertImage:function(){var e=this;e.saveSelection(),e.openModalInsert(e.lang.insertImage,{url:{label:"URL",value:"http://",required:!0},alt:{label:e.lang.description,value:e.selection}},function(t){return e.execCmd("insertImage",t.url),n('img[src="'+t.url+'"]:not([alt])',e.$box).attr("alt",t.alt),!0})},execCmd:function(e,t){var n=this;"dropdown"!=e&&n.$editor.focus();try{n[e](t)}catch(o){try{e(t,n)}catch(i){"insertHorizontalRule"==e?t=null:"formatBlock"==e&&(-1!==navigator.userAgent.indexOf("MSIE")||navigator.appVersion.indexOf("Trident/")>0)&&(t="<"+t+">"),n.doc.execCommand(e,!1,t)}}n.syncCode()},openModal:function(t,o){var i=this,r=i.o.prefix;if(n("."+r+"modal-box",i.$box).size()>0)return!1;i.saveSelection(),i.showOverlay(),i.$btnPane.addClass(r+"disable");var a=n("<div/>",{"class":r+"modal "+r+"fixed-top"}).css({top:parseInt(i.$btnPane.css("height"))+1+"px"}).appendTo(i.$box);i.$overlay.one("click",function(e){e.preventDefault(),a.trigger(r+"cancel")});var s=n("<form/>",{action:"",html:o}).on("submit",function(e){e.preventDefault(),a.trigger(r+"confirm")}).on("reset",function(e){e.preventDefault(),a.trigger(r+"cancel")}),l=n("<div/>",{"class":r+"modal-box",html:s}).css({top:"-"+parseInt(i.$btnPane.outerHeight())+"px",opacity:0}).appendTo(a).animate({top:0,opacity:1},i.o.duration/2);return n("<span/>",{text:t,"class":r+"modal-title"}).prependTo(l),l.find("input:first").focus(),i.buildModalBtn("submit",l),i.buildModalBtn("reset",l),n(e).trigger("scroll"),a},buildModalBtn:function(e,t){var o=this,i=o.o.prefix;return n("<button/>",{"class":i+"modal-button "+i+"modal-"+e,type:e,text:o.lang[e]||e}).appendTo(t.find("form"))},closeModal:function(){var e=this,t=e.o.prefix;e.$btnPane.removeClass(t+"disable"),e.$overlay.off();var o=n("."+t+"modal-box",e.$box);o.animate({top:"-"+o.css("height")},e.o.duration/2,function(){n(this).parent().remove(),e.hideOverlay()})},openModalInsert:function(e,t,i){var r=this,a=r.o.prefix,s=r.lang,l="";for(var d in t){var c=t[d],u=c.label===o?s[d]?s[d]:d:s[c.label]?s[c.label]:c.label;c.name===o&&(c.name=d),c.pattern||"url"!==d||(c.pattern=/^(http|https):\/\/([\w~#!:.?+=&%@!\-\/]+)$/,c.patternError=s.invalidUrl),l+='<label><input type="'+(c.type||"text")+'" name="'+c.name+'" value="'+(c.value||"")+'"><span class="'+a+'input-infos"><span>'+u+"</span></span></label>"}return r.openModal(e,l).on(a+"confirm",function(){var e=n(this).find("form"),o=!0,s={};for(var l in t){var d=n('input[name="'+l+'"]',e);s[l]=n.trim(d.val()),t[l].required&&""===s[l]?(o=!1,r.addErrorOnModalField(d,r.lang.required)):t[l].pattern&&!t[l].pattern.test(s[l])&&(o=!1,r.addErrorOnModalField(d,t[l].patternError))}o&&(r.restoreSelection(),i(s,t)&&(r.syncCode(),r.closeModal(),n(this).off(a+"confirm")))}).one(a+"cancel",function(){n(this).off(a+"confirm"),r.closeModal(),r.restoreSelection()})},addErrorOnModalField:function(e,t){var o=this.o.prefix,i=e.parent();e.on("change keyup",function(){i.removeClass(o+"input-error")}),i.addClass(o+"input-error").find("input+span").append(n("<span/>",{"class":o+"msg-error",text:t}))},saveSelection:function(){var t=this,n=t.doc;if(t.selection=null,e.getSelection){var o=e.getSelection();o.getRangeAt&&o.rangeCount&&(t.selection=o.getRangeAt(0))}else n.selection&&n.selection.createRange&&(t.selection=n.selection.createRange())},restoreSelection:function(){var t=this,n=t.selection;if(n)if(e.getSelection){var o=e.getSelection();o.removeAllRanges(),o.addRange(n)}else t.doc.selection&&n.select&&n.select()},isEnabled:function(){var e=new RegExp("(iPad|webOS)"),t=new RegExp("(iPhone|iPod|Android|BlackBerry|Windows Phone|ZuneWP7)"),n=navigator.userAgent;return this.o.tablet===!0&&e.test(n)||this.o.mobile===!0&&t.test(n)}}}(window,document,jQuery);
@@ -0,0 +1,471 @@
1
+ /**
2
+ * Trumbowyg v1.1.7 - A lightweight WYSIWYG editor
3
+ * Default stylesheet for Trumbowyg editor
4
+ * ------------------------
5
+ * @link http://alex-d.github.io/Trumbowyg
6
+ * @license MIT
7
+ * @author Alexandre Demode (Alex-D)
8
+ * Twitter : @AlexandreDemode
9
+ * Website : alex-d.fr
10
+ */
11
+
12
+ .trumbowyg-box, .trumbowyg-editor {
13
+ display: block;
14
+ position: relative;
15
+ border: 1px solid #DDD;
16
+ width: 96%;
17
+ min-height: 300px;
18
+ margin: 17px auto; }
19
+
20
+ .trumbowyg-box .trumbowyg-editor {
21
+ margin: 0 auto; }
22
+
23
+ .trumbowyg-box.trumbowyg-fullscreen {
24
+ background: #FEFEFE; }
25
+
26
+ .trumbowyg-editor, .trumbowyg-textarea {
27
+ position: relative;
28
+ -webkit-box-sizing: border-box;
29
+ -moz-box-sizing: border-box;
30
+ box-sizing: border-box;
31
+ padding: 1% 2%;
32
+ min-height: 300px;
33
+ width: 100%;
34
+ border-style: none;
35
+ resize: none;
36
+ outline: none; }
37
+
38
+ .trumbowyg-box-blur .trumbowyg-editor * {
39
+ color: transparent !important;
40
+ text-shadow: 0 0 7px #333; }
41
+ .trumbowyg-box-blur .trumbowyg-editor img {
42
+ opacity: 0.2; }
43
+
44
+ .trumbowyg-textarea {
45
+ position: relative;
46
+ display: block;
47
+ overflow: auto;
48
+ border: none;
49
+ white-space: normal; }
50
+
51
+ .trumbowyg-editor[contenteditable=true]:empty:before {
52
+ content: attr(placeholder);
53
+ color: #999; }
54
+
55
+ .trumbowyg-button-pane {
56
+ position: relative;
57
+ width: 100%;
58
+ background: #ecf0f1;
59
+ border-bottom: 1px solid #d7e0e2;
60
+ margin: 0;
61
+ padding: 0;
62
+ list-style-type: none;
63
+ line-height: 10px;
64
+ -webkit-backface-visibility: hidden;
65
+ backface-visibility: hidden; }
66
+ .trumbowyg-button-pane li {
67
+ display: inline-block;
68
+ text-align: center;
69
+ overflow: hidden; }
70
+ .trumbowyg-button-pane li.trumbowyg-separator {
71
+ width: 1px;
72
+ background: #d7e0e2;
73
+ margin: 0 5px;
74
+ height: 35px; }
75
+ .trumbowyg-button-pane.trumbowyg-disable li:not(.trumbowyg-not-disable) button:not(.trumbowyg-active) {
76
+ opacity: 0.2;
77
+ cursor: default; }
78
+ .trumbowyg-button-pane.trumbowyg-disable li.trumbowyg-separator {
79
+ background: #e3e9eb; }
80
+ .trumbowyg-button-pane:not(.trumbowyg-disable) li button:hover, .trumbowyg-button-pane:not(.trumbowyg-disable) li button:focus, .trumbowyg-button-pane li button.trumbowyg-active, .trumbowyg-button-pane li.trumbowyg-not-disable button:hover, .trumbowyg-button-pane li.trumbowyg-not-disable button:focus {
81
+ background-color: #FFF;
82
+ outline: none; }
83
+ .trumbowyg-button-pane li .trumbowyg-open-dropdown:after {
84
+ display: block;
85
+ content: " ";
86
+ position: absolute;
87
+ top: 25px;
88
+ right: 3px;
89
+ height: 0;
90
+ width: 0;
91
+ border: 3px solid transparent;
92
+ border-top-color: #555; }
93
+ .trumbowyg-button-pane .trumbowyg-buttons-right {
94
+ float: right;
95
+ width: auto; }
96
+ .trumbowyg-button-pane .trumbowyg-buttons-right button {
97
+ float: left; }
98
+
99
+ .trumbowyg-dropdown {
100
+ width: 200px;
101
+ border: 1px solid #ecf0f1;
102
+ padding: 5px 0;
103
+ border-top: none;
104
+ background: #FFF;
105
+ margin-left: -1px;
106
+ -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0 2px 3px;
107
+ box-shadow: rgba(0, 0, 0, 0.1) 0 2px 3px; }
108
+ .trumbowyg-dropdown button {
109
+ display: block;
110
+ width: 100%;
111
+ height: 35px;
112
+ line-height: 35px;
113
+ text-decoration: none;
114
+ background: #FFF;
115
+ padding: 0 14px;
116
+ color: #333;
117
+ border: none;
118
+ cursor: pointer;
119
+ text-align: left;
120
+ font-size: 15px;
121
+ -webkit-transition: all 0.15s;
122
+ -o-transition: all 0.15s;
123
+ transition: all 0.15s; }
124
+ .trumbowyg-dropdown button:hover, .trumbowyg-dropdown button:focus {
125
+ background: #ecf0f1; }
126
+
127
+ /* Modal box */
128
+ .trumbowyg-modal {
129
+ position: absolute;
130
+ top: 0;
131
+ left: 50%;
132
+ margin-left: -260px;
133
+ width: 520px;
134
+ height: 290px;
135
+ overflow: hidden; }
136
+
137
+ .trumbowyg-modal-box {
138
+ position: absolute;
139
+ top: 0;
140
+ left: 50%;
141
+ margin-left: -250px;
142
+ width: 500px;
143
+ height: 275px;
144
+ z-index: 1;
145
+ background-color: #FFF;
146
+ text-align: center;
147
+ -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 2px 3px;
148
+ box-shadow: rgba(0, 0, 0, 0.2) 0 2px 3px;
149
+ -webkit-backface-visibility: hidden;
150
+ backface-visibility: hidden; }
151
+ .trumbowyg-modal-box .trumbowyg-modal-title {
152
+ font-size: 24px;
153
+ font-weight: bold;
154
+ margin: 0 0 20px;
155
+ padding: 15px 0 13px;
156
+ display: block;
157
+ border-bottom: 1px solid #EEE;
158
+ color: #333;
159
+ background: #fbfcfc; }
160
+ .trumbowyg-modal-box .trumbowyg-progress {
161
+ width: 100%;
162
+ background: #F00;
163
+ height: 3px;
164
+ position: absolute;
165
+ top: 58px; }
166
+ .trumbowyg-modal-box .trumbowyg-progress .trumbowyg-progress-bar {
167
+ background: #2BC06A;
168
+ height: 100%;
169
+ -webkit-transition: width 0.15s linear;
170
+ -o-transition: width 0.15s linear;
171
+ transition: width 0.15s linear; }
172
+ .trumbowyg-modal-box label {
173
+ display: block;
174
+ position: relative;
175
+ margin: 15px 12px;
176
+ height: 27px;
177
+ line-height: 27px;
178
+ overflow: hidden; }
179
+ .trumbowyg-modal-box label .trumbowyg-input-infos {
180
+ display: block;
181
+ text-align: left;
182
+ height: 25px;
183
+ line-height: 25px;
184
+ -webkit-transition: all 0.15;
185
+ -o-transition: all 0.15;
186
+ transition: all 0.15; }
187
+ .trumbowyg-modal-box label .trumbowyg-input-infos span {
188
+ display: block;
189
+ color: #859fa5;
190
+ background-color: #fbfcfc;
191
+ border: 1px solid #DEDEDE;
192
+ padding: 0 2%;
193
+ width: 19.5%; }
194
+ .trumbowyg-modal-box label .trumbowyg-input-infos span.trumbowyg-msg-error {
195
+ color: #e74c3c; }
196
+ .trumbowyg-modal-box label.trumbowyg-input-error input, .trumbowyg-modal-box label.trumbowyg-input-error textarea {
197
+ border: 1px solid #e74c3c; }
198
+ .trumbowyg-modal-box label.trumbowyg-input-error .trumbowyg-input-infos {
199
+ margin-top: -27px; }
200
+ .trumbowyg-modal-box label input {
201
+ position: absolute;
202
+ top: 0;
203
+ right: 0;
204
+ height: 25px;
205
+ line-height: 25px;
206
+ border: 1px solid #DEDEDE;
207
+ background: transparent;
208
+ width: 72%;
209
+ padding: 0 2%;
210
+ margin: 0 0 0 23%;
211
+ -webkit-transition: all 0.15s;
212
+ -o-transition: all 0.15s;
213
+ transition: all 0.15s; }
214
+ .trumbowyg-modal-box label input:hover, .trumbowyg-modal-box label input:focus {
215
+ outline: none;
216
+ border: 1px solid #95a5a6; }
217
+ .trumbowyg-modal-box label input:focus {
218
+ background: rgba(230, 230, 255, 0.1); }
219
+ .trumbowyg-modal-box .error {
220
+ margin-top: 25px;
221
+ display: block;
222
+ color: red; }
223
+ .trumbowyg-modal-box .trumbowyg-modal-button {
224
+ position: absolute;
225
+ bottom: 10px;
226
+ right: 0;
227
+ text-decoration: none;
228
+ color: #FFF;
229
+ display: block;
230
+ width: 100px;
231
+ height: 35px;
232
+ line-height: 33px;
233
+ margin: 0 10px;
234
+ background-color: #333;
235
+ border: none;
236
+ border-top: none;
237
+ cursor: pointer;
238
+ font-family: "Trebuchet MS", Helvetica, Verdana, sans-serif;
239
+ font-size: 16px;
240
+ -webkit-transition: all 0.15s;
241
+ -o-transition: all 0.15s;
242
+ transition: all 0.15s; }
243
+ .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit {
244
+ right: 110px;
245
+ background: #2bc069; }
246
+ .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit:hover, .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit:focus {
247
+ background: #40d47d;
248
+ outline: none; }
249
+ .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit:active {
250
+ background: #25a259; }
251
+ .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset {
252
+ color: #555;
253
+ background: #e6e6e6; }
254
+ .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset:hover, .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset:focus {
255
+ background: #fbfbfb;
256
+ outline: none; }
257
+ .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset:active {
258
+ background: #d4d4d4; }
259
+
260
+ .trumbowyg-overlay {
261
+ position: absolute;
262
+ background-color: rgba(255, 255, 255, 0.5);
263
+ width: 100%;
264
+ left: 0;
265
+ display: none; }
266
+
267
+ /**
268
+ * Fullscreen
269
+ */
270
+ .trumbowyg-fullscreen {
271
+ position: fixed;
272
+ top: 0;
273
+ left: 0;
274
+ width: 100%;
275
+ height: 100%;
276
+ margin: 0;
277
+ padding: 0;
278
+ z-index: 99999; }
279
+ .trumbowyg-fullscreen.trumbowyg-box, .trumbowyg-fullscreen .trumbowyg-editor {
280
+ border: none; }
281
+ .trumbowyg-fullscreen .trumbowyg-overlay {
282
+ height: 100% !important; }
283
+
284
+ /*
285
+ * Reset for resetCss option
286
+ */
287
+ .trumbowyg-editor object, .trumbowyg-editor embed, .trumbowyg-editor video, .trumbowyg-editor img {
288
+ width: auto;
289
+ max-width: 100%; }
290
+ .trumbowyg-editor video, .trumbowyg-editor img {
291
+ height: auto; }
292
+ .trumbowyg-editor img {
293
+ cursor: move; }
294
+ .trumbowyg-editor.trumbowyg-reset-css {
295
+ background: #FEFEFE !important;
296
+ font-family: "Trebuchet MS", Helvetica, Verdana, sans-serif !important;
297
+ font-size: 14px !important;
298
+ line-height: 1.45em !important;
299
+ white-space: normal !important;
300
+ color: #333; }
301
+ .trumbowyg-editor.trumbowyg-reset-css a {
302
+ color: #15c !important;
303
+ text-decoration: underline !important; }
304
+ .trumbowyg-editor.trumbowyg-reset-css div, .trumbowyg-editor.trumbowyg-reset-css p, .trumbowyg-editor.trumbowyg-reset-css ul, .trumbowyg-editor.trumbowyg-reset-css ol, .trumbowyg-editor.trumbowyg-reset-css blockquote {
305
+ -webkit-box-shadow: none !important;
306
+ box-shadow: none !important;
307
+ background: none !important;
308
+ margin: 0 !important;
309
+ margin-bottom: 15px !important;
310
+ line-height: 1.4em !important;
311
+ font-family: "Trebuchet MS", Helvetica, Verdana, sans-serif !important;
312
+ font-size: 14px !important;
313
+ border: none; }
314
+ .trumbowyg-editor.trumbowyg-reset-css iframe, .trumbowyg-editor.trumbowyg-reset-css object, .trumbowyg-editor.trumbowyg-reset-css hr {
315
+ margin-bottom: 15px !important; }
316
+ .trumbowyg-editor.trumbowyg-reset-css blockquote {
317
+ margin-left: 32px !important;
318
+ font-style: italic !important;
319
+ color: #555; }
320
+ .trumbowyg-editor.trumbowyg-reset-css ul, .trumbowyg-editor.trumbowyg-reset-css ol {
321
+ padding-left: 20px !important; }
322
+ .trumbowyg-editor.trumbowyg-reset-css ul ul, .trumbowyg-editor.trumbowyg-reset-css ol ol, .trumbowyg-editor.trumbowyg-reset-css ul ol, .trumbowyg-editor.trumbowyg-reset-css ol ul {
323
+ border: none;
324
+ margin: 2px !important;
325
+ padding: 0 !important;
326
+ padding-left: 24px !important; }
327
+ .trumbowyg-editor.trumbowyg-reset-css hr {
328
+ display: block;
329
+ height: 1px;
330
+ border: none;
331
+ border-top: 1px solid #CCC; }
332
+ .trumbowyg-editor.trumbowyg-reset-css h1, .trumbowyg-editor.trumbowyg-reset-css h2, .trumbowyg-editor.trumbowyg-reset-css h3, .trumbowyg-editor.trumbowyg-reset-css h4 {
333
+ color: #111;
334
+ background: none;
335
+ margin: 0 !important;
336
+ padding: 0 !important;
337
+ font-weight: bold; }
338
+ .trumbowyg-editor.trumbowyg-reset-css h1 {
339
+ font-size: 32px !important;
340
+ line-height: 38px !important;
341
+ margin-bottom: 20px !important; }
342
+ .trumbowyg-editor.trumbowyg-reset-css h2 {
343
+ font-size: 26px !important;
344
+ line-height: 34px !important;
345
+ margin-bottom: 15px !important; }
346
+ .trumbowyg-editor.trumbowyg-reset-css h3 {
347
+ font-size: 22px !important;
348
+ line-height: 28px !important;
349
+ margin-bottom: 7px !important; }
350
+ .trumbowyg-editor.trumbowyg-reset-css h4 {
351
+ font-size: 16px !important;
352
+ line-height: 22px !important;
353
+ margin-bottom: 7px !important; }
354
+
355
+ /*
356
+ * Buttons icons
357
+ */
358
+ .trumbowyg-button-pane li button {
359
+ display: block;
360
+ position: relative;
361
+ text-indent: -9999px;
362
+ width: 35px;
363
+ height: 35px;
364
+ overflow: hidden;
365
+ background: transparent url("./images/icons.png") no-repeat;
366
+ border: none;
367
+ cursor: pointer;
368
+ -webkit-transition: background-color 0.15s, background-image 0.15s, opacity 0.15s;
369
+ -o-transition: background-color 0.15s, background-image 0.15s, opacity 0.15s;
370
+ transition: background-color 0.15s, background-image 0.15s, opacity 0.15s;
371
+ /* English and others */ }
372
+ .trumbowyg-button-pane li button.trumbowyg-viewHTML-button {
373
+ background-position: 5px -545px; }
374
+ .trumbowyg-button-pane li button.trumbowyg-formatting-button {
375
+ background-position: 5px -120px; }
376
+ .trumbowyg-button-pane li button.trumbowyg-bold-button, .trumbowyg-button-pane li button.trumbowyg-strong-button {
377
+ background-position: 5px -45px; }
378
+ .trumbowyg-button-pane li button.trumbowyg-italic-button, .trumbowyg-button-pane li button.trumbowyg-em-button {
379
+ background-position: 5px 5px; }
380
+ .trumbowyg-button-pane li button.trumbowyg-underline-button {
381
+ background-position: 5px -470px; }
382
+ .trumbowyg-button-pane li button.trumbowyg-strikethrough-button, .trumbowyg-button-pane li button.trumbowyg-del-button {
383
+ background-position: 5px -445px; }
384
+ .trumbowyg-button-pane li button.trumbowyg-link-button {
385
+ background-position: 5px -345px; }
386
+ .trumbowyg-button-pane li button.trumbowyg-insertImage-button {
387
+ background-position: 5px -245px; }
388
+ .trumbowyg-button-pane li button.trumbowyg-justifyLeft-button {
389
+ background-position: 5px -320px; }
390
+ .trumbowyg-button-pane li button.trumbowyg-justifyCenter-button {
391
+ background-position: 5px -70px; }
392
+ .trumbowyg-button-pane li button.trumbowyg-justifyRight-button {
393
+ background-position: 5px -395px; }
394
+ .trumbowyg-button-pane li button.trumbowyg-justifyFull-button {
395
+ background-position: 5px -295px; }
396
+ .trumbowyg-button-pane li button.trumbowyg-unorderedList-button {
397
+ background-position: 5px -495px; }
398
+ .trumbowyg-button-pane li button.trumbowyg-orderedList-button {
399
+ background-position: 5px -370px; }
400
+ .trumbowyg-button-pane li button.trumbowyg-horizontalRule-button {
401
+ background-position: 5px -220px; }
402
+ .trumbowyg-button-pane li button.trumbowyg-fullscreen-button {
403
+ background-position: 5px -170px; }
404
+ .trumbowyg-button-pane li button.trumbowyg-close-button {
405
+ background-position: 5px -95px; }
406
+
407
+ .trumbowyg-fullscreen .trumbowyg-button-pane li button.trumbowyg-fullscreen-button {
408
+ background-position: 5px -145px; }
409
+
410
+ .trumbowyg-button-pane li:first-child button {
411
+ margin-left: 6px; }
412
+ .trumbowyg-button-pane li:last-child button {
413
+ margin-right: 6px; }
414
+
415
+ /* French */
416
+ .trumbowyg-fr .trumbowyg-button-pane li button.trumbowyg-bold-button, .trumbowyg-fr .trumbowyg-button-pane li button.trumbowyg-strong-button {
417
+ background-position: 5px -195px; }
418
+ .trumbowyg-fr .trumbowyg-button-pane li button.trumbowyg-underline-button {
419
+ background-position: 5px -420px; }
420
+ .trumbowyg-fr .trumbowyg-button-pane li button.trumbowyg-strikethrough-button, .trumbowyg-fr .trumbowyg-button-pane li button.trumbowyg-del-button {
421
+ background-position: 5px -270px; }
422
+
423
+ @media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (min--moz-device-pixel-ratio: 1.3), only screen and (-o-min-device-pixel-ratio: 4/3), only screen and (min-device-pixel-ratio: 1.3), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
424
+ /* French */
425
+ .trumbowyg-button-pane li button {
426
+ -webkit-background-size: 25px 575px !important;
427
+ background-size: 25px 575px !important;
428
+ background-image: url("./images/icons-2x.png") !important;
429
+ /* English and others */ }
430
+ .trumbowyg-button-pane li button.trumbowyg-viewHTML-button {
431
+ background-position: 5px -545px; }
432
+ .trumbowyg-button-pane li button.trumbowyg-formatting-button {
433
+ background-position: 5px -120px; }
434
+ .trumbowyg-button-pane li button.trumbowyg-bold-button, .trumbowyg-button-pane li button.trumbowyg-strong-button {
435
+ background-position: 5px -45px; }
436
+ .trumbowyg-button-pane li button.trumbowyg-italic-button, .trumbowyg-button-pane li button.trumbowyg-em-button {
437
+ background-position: 5px 5px; }
438
+ .trumbowyg-button-pane li button.trumbowyg-underline-button {
439
+ background-position: 5px -470px; }
440
+ .trumbowyg-button-pane li button.trumbowyg-strikethrough-button, .trumbowyg-button-pane li button.trumbowyg-del-button {
441
+ background-position: 5px -445px; }
442
+ .trumbowyg-button-pane li button.trumbowyg-link-button {
443
+ background-position: 5px -345px; }
444
+ .trumbowyg-button-pane li button.trumbowyg-insertImage-button {
445
+ background-position: 5px -245px; }
446
+ .trumbowyg-button-pane li button.trumbowyg-justifyLeft-button {
447
+ background-position: 5px -320px; }
448
+ .trumbowyg-button-pane li button.trumbowyg-justifyCenter-button {
449
+ background-position: 5px -70px; }
450
+ .trumbowyg-button-pane li button.trumbowyg-justifyRight-button {
451
+ background-position: 5px -395px; }
452
+ .trumbowyg-button-pane li button.trumbowyg-justifyFull-button {
453
+ background-position: 5px -295px; }
454
+ .trumbowyg-button-pane li button.trumbowyg-unorderedList-button {
455
+ background-position: 5px -495px; }
456
+ .trumbowyg-button-pane li button.trumbowyg-orderedList-button {
457
+ background-position: 5px -370px; }
458
+ .trumbowyg-button-pane li button.trumbowyg-horizontalRule-button {
459
+ background-position: 5px -220px; }
460
+ .trumbowyg-button-pane li button.trumbowyg-fullscreen-button {
461
+ background-position: 5px -170px; }
462
+ .trumbowyg-button-pane li button.trumbowyg-close-button {
463
+ background-position: 5px -95px; }
464
+ .trumbowyg-fullscreen .trumbowyg-button-pane li a.trumbowyg-fullscreen-button {
465
+ background-position: 5px -145px; }
466
+ .trumbowyg-fr .trumbowyg-button-pane li button.trumbowyg-bold-button, .trumbowyg-fr .trumbowyg-button-pane li button.trumbowyg-strong-button {
467
+ background-position: 5px -195px; }
468
+ .trumbowyg-fr .trumbowyg-button-pane li button.trumbowyg-underline-button {
469
+ background-position: 5px -420px; }
470
+ .trumbowyg-fr .trumbowyg-button-pane li button.trumbowyg-strikethrough-button, .trumbowyg-fr .trumbowyg-button-pane li button.trumbowyg-del-button {
471
+ background-position: 5px -270px; } }