trestle-tinymce 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +13 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +5 -0
  5. data/Gemfile +4 -0
  6. data/Gruntfile.js +77 -0
  7. data/LICENSE +165 -0
  8. data/README.md +60 -0
  9. data/Rakefile +6 -0
  10. data/app/assets/javascripts/tinymce/skins/trestle/_skin-lightgray.scss +2415 -0
  11. data/app/assets/javascripts/tinymce/skins/trestle/content.inline.min.css +182 -0
  12. data/app/assets/javascripts/tinymce/skins/trestle/content.min.css +201 -0
  13. data/app/assets/javascripts/tinymce/skins/trestle/fonts/tinymce-small.eot +0 -0
  14. data/app/assets/javascripts/tinymce/skins/trestle/fonts/tinymce-small.svg +63 -0
  15. data/app/assets/javascripts/tinymce/skins/trestle/fonts/tinymce-small.ttf +0 -0
  16. data/app/assets/javascripts/tinymce/skins/trestle/fonts/tinymce-small.woff +0 -0
  17. data/app/assets/javascripts/tinymce/skins/trestle/fonts/tinymce.eot +0 -0
  18. data/app/assets/javascripts/tinymce/skins/trestle/fonts/tinymce.svg +131 -0
  19. data/app/assets/javascripts/tinymce/skins/trestle/fonts/tinymce.ttf +0 -0
  20. data/app/assets/javascripts/tinymce/skins/trestle/fonts/tinymce.woff +0 -0
  21. data/app/assets/javascripts/tinymce/skins/trestle/img/anchor.gif +0 -0
  22. data/app/assets/javascripts/tinymce/skins/trestle/img/loader.gif +0 -0
  23. data/app/assets/javascripts/tinymce/skins/trestle/img/object.gif +0 -0
  24. data/app/assets/javascripts/tinymce/skins/trestle/img/trans.gif +0 -0
  25. data/app/assets/javascripts/tinymce/skins/trestle/skin.min.scss +64 -0
  26. data/app/assets/javascripts/trestle/tinymce.js.coffee +10 -0
  27. data/config/initializers/trestle.rb +39 -0
  28. data/lib/trestle/tinymce.rb +6 -0
  29. data/lib/trestle/tinymce/configuration.rb +8 -0
  30. data/lib/trestle/tinymce/engine.rb +9 -0
  31. data/lib/trestle/tinymce/field.rb +9 -0
  32. data/lib/trestle/tinymce/version.rb +5 -0
  33. data/package.json +14 -0
  34. data/src/trestle/fonts/readme.md +1 -0
  35. data/src/trestle/fonts/tinymce-small.eot +0 -0
  36. data/src/trestle/fonts/tinymce-small.json +1277 -0
  37. data/src/trestle/fonts/tinymce-small.svg +63 -0
  38. data/src/trestle/fonts/tinymce-small.ttf +0 -0
  39. data/src/trestle/fonts/tinymce-small.woff +0 -0
  40. data/src/trestle/fonts/tinymce.eot +0 -0
  41. data/src/trestle/fonts/tinymce.json +3469 -0
  42. data/src/trestle/fonts/tinymce.svg +131 -0
  43. data/src/trestle/fonts/tinymce.ttf +0 -0
  44. data/src/trestle/fonts/tinymce.woff +0 -0
  45. data/src/trestle/img/anchor.gif +0 -0
  46. data/src/trestle/img/loader.gif +0 -0
  47. data/src/trestle/img/object.gif +0 -0
  48. data/src/trestle/img/trans.gif +0 -0
  49. data/src/trestle/less/AbsoluteLayout.less +17 -0
  50. data/src/trestle/less/Animations.less +10 -0
  51. data/src/trestle/less/Arrows.less +115 -0
  52. data/src/trestle/less/Button.less +175 -0
  53. data/src/trestle/less/ButtonGroup.less +71 -0
  54. data/src/trestle/less/Checkbox.less +49 -0
  55. data/src/trestle/less/ColorBox.less +6 -0
  56. data/src/trestle/less/ColorButton.less +72 -0
  57. data/src/trestle/less/ColorPicker.less +80 -0
  58. data/src/trestle/less/ComboBox.less +97 -0
  59. data/src/trestle/less/Container.less +9 -0
  60. data/src/trestle/less/Content.Inline.less +4 -0
  61. data/src/trestle/less/Content.Objects.less +189 -0
  62. data/src/trestle/less/Content.less +27 -0
  63. data/src/trestle/less/CropRect.less +62 -0
  64. data/src/trestle/less/FieldSet.less +15 -0
  65. data/src/trestle/less/FitLayout.less +9 -0
  66. data/src/trestle/less/FloatPanel.less +69 -0
  67. data/src/trestle/less/FlowLayout.less +36 -0
  68. data/src/trestle/less/Icons.less +182 -0
  69. data/src/trestle/less/Iframe.less +6 -0
  70. data/src/trestle/less/ImagePanel.less +25 -0
  71. data/src/trestle/less/InfoBox.less +71 -0
  72. data/src/trestle/less/Label.less +38 -0
  73. data/src/trestle/less/ListBox.less +26 -0
  74. data/src/trestle/less/Menu.less +34 -0
  75. data/src/trestle/less/MenuBar.less +32 -0
  76. data/src/trestle/less/MenuButton.less +34 -0
  77. data/src/trestle/less/MenuItem.less +176 -0
  78. data/src/trestle/less/Mixins.less +54 -0
  79. data/src/trestle/less/Notification.less +142 -0
  80. data/src/trestle/less/Panel.less +7 -0
  81. data/src/trestle/less/Path.less +45 -0
  82. data/src/trestle/less/Progress.less +34 -0
  83. data/src/trestle/less/Radio.less +1 -0
  84. data/src/trestle/less/Reset.less +32 -0
  85. data/src/trestle/less/ResizeHandle.less +18 -0
  86. data/src/trestle/less/Scrollable.less +44 -0
  87. data/src/trestle/less/SelectBox.less +6 -0
  88. data/src/trestle/less/Sidebar.less +49 -0
  89. data/src/trestle/less/Skin.less +48 -0
  90. data/src/trestle/less/Slider.less +33 -0
  91. data/src/trestle/less/Spacer.less +5 -0
  92. data/src/trestle/less/SplitButton.less +49 -0
  93. data/src/trestle/less/StackLayout.less +5 -0
  94. data/src/trestle/less/TabPanel.less +44 -0
  95. data/src/trestle/less/TextBox.less +41 -0
  96. data/src/trestle/less/Throbber.less +19 -0
  97. data/src/trestle/less/TinyMCE.less +218 -0
  98. data/src/trestle/less/ToolTip.less +133 -0
  99. data/src/trestle/less/Variables.less +224 -0
  100. data/src/trestle/less/Window.less +127 -0
  101. data/trestle-tinymce.gemspec +26 -0
  102. metadata +200 -0
@@ -0,0 +1,7 @@
1
+ // Panel
2
+
3
+ .@{prefix}-panel {
4
+ border: 0 solid mix(rgb(red(@panel-border), green(@panel-border), blue(@panel-border)), @panel-bg, 20%);
5
+ border: 0 solid @panel-border;
6
+ .vertical-gradient(@panel-bg, @panel-bg-hlight);
7
+ }
@@ -0,0 +1,45 @@
1
+ // Path
2
+
3
+ .@{prefix}-path {
4
+ .inline-block();
5
+ padding: 8px;
6
+ white-space: normal;
7
+ }
8
+
9
+ .@{prefix}-path .@{prefix}-txt {
10
+ display: inline-block;
11
+ padding-right: 3px;
12
+ }
13
+
14
+ .@{prefix}-path .@{prefix}-path-body {
15
+ display: inline-block;
16
+ }
17
+
18
+ .@{prefix}-path-item {
19
+ .inline-block();
20
+ cursor: pointer;
21
+ color: @path-text;
22
+ }
23
+
24
+ .@{prefix}-path-item:hover {
25
+ text-decoration: underline;
26
+ }
27
+
28
+ .@{prefix}-path-item:focus {
29
+ background: @path-bg-focus;
30
+ color: @path-text-focus;
31
+ }
32
+
33
+ .@{prefix}-path .@{prefix}-divider {
34
+ display: inline;
35
+ }
36
+
37
+ .@{prefix}-disabled .@{prefix}-path-item {
38
+ color: @text-disabled;
39
+ }
40
+
41
+ // RTL
42
+
43
+ .@{prefix}-rtl .@{prefix}-path {
44
+ direction: rtl;
45
+ }
@@ -0,0 +1,34 @@
1
+ // Progress
2
+
3
+ .@{prefix}-progress {
4
+ display: inline-block;
5
+ position: relative;
6
+ height: 20px;
7
+ }
8
+
9
+ .@{prefix}-progress .@{prefix}-bar-container {
10
+ display: inline-block;
11
+ width: 100px;
12
+ height: 100%;
13
+ margin-right: 8px;
14
+ border: 1px solid @progress-border;
15
+ overflow: hidden;
16
+ .border-radius(4px);
17
+ }
18
+
19
+ .@{prefix}-progress .@{prefix}-text {
20
+ display: inline-block;
21
+ margin-top: auto;
22
+ margin-bottom: auto;
23
+ font-size: 14px;
24
+ width: 40px;
25
+ color: @progress-text;
26
+ }
27
+
28
+ .@{prefix}-bar {
29
+ display: block;
30
+ width: 0%;
31
+ height: 100%;
32
+ .vertical-gradient(@progress-bar-bg, @progress-bar-bg-hlight);
33
+ .transition(width .2s ease);
34
+ }
@@ -0,0 +1 @@
1
+ // Radio - not implemented yet
@@ -0,0 +1,32 @@
1
+ // Reset
2
+
3
+ .@{prefix}-container, .@{prefix}-container *, .@{prefix}-widget, .@{prefix}-widget *, .@{prefix}-reset {
4
+ margin: 0; padding: 0; border: 0; outline: 0;
5
+ vertical-align: top; background: transparent;
6
+ text-decoration: none; color: @text;
7
+ font-family: @font-family;
8
+ font-size: @font-size; text-shadow: none; float: none;
9
+ position: static; width: auto; height: auto;
10
+ white-space: nowrap; cursor: inherit;
11
+ -webkit-tap-highlight-color: transparent;
12
+ line-height: normal; font-weight: normal;
13
+ text-align: left;
14
+ -moz-box-sizing: content-box;
15
+ -webkit-box-sizing: content-box;
16
+ box-sizing: content-box;
17
+ direction: ltr;
18
+ max-width: none;
19
+ }
20
+
21
+ .@{prefix}-widget button {
22
+ -moz-box-sizing: border-box;
23
+ -webkit-box-sizing: border-box;
24
+ box-sizing: border-box;
25
+ }
26
+
27
+ .@{prefix}-container *[unselectable] {
28
+ -moz-user-select: none;
29
+ -webkit-user-select: none;
30
+ -o-user-select: none;
31
+ user-select: none;
32
+ }
@@ -0,0 +1,18 @@
1
+ .@{prefix}-container-body .@{prefix}-resizehandle {
2
+ position: absolute;
3
+ right: 0;
4
+ bottom: 0;
5
+ width: 16px;
6
+ height: 16px;
7
+ visibility: visible;
8
+ cursor: s-resize;
9
+ margin: 0;
10
+ }
11
+
12
+ .@{prefix}-container-body .@{prefix}-resizehandle-both {
13
+ cursor: se-resize;
14
+ }
15
+
16
+ i.@{prefix}-i-resize {
17
+ color: @text;
18
+ }
@@ -0,0 +1,44 @@
1
+ // Scrollbar
2
+
3
+ .@{prefix}-scrollbar {
4
+ position: absolute;
5
+ width: 7px;
6
+ height: 100%;
7
+ top: 2px;
8
+ right: 2px;
9
+ .opacity(0.4);
10
+ }
11
+
12
+ .@{prefix}-scrollbar-h {
13
+ top: auto;
14
+ right: auto;
15
+ left: 2px;
16
+ bottom: 2px;
17
+ width: 100%;
18
+ height: 7px;
19
+ }
20
+
21
+ .@{prefix}-scrollbar-thumb {
22
+ position: absolute;
23
+ background-color: #000;
24
+ border: 1px solid #888;
25
+ border-color: rgba(85, 85, 85, .6);
26
+ width: 5px;
27
+ height: 100%;
28
+ .border-radius(7px);
29
+ }
30
+
31
+ .@{prefix}-scrollbar-h .@{prefix}-scrollbar-thumb {
32
+ width: 100%;
33
+ height: 5px;
34
+ }
35
+
36
+ .@{prefix}-scrollbar:hover, .@{prefix}-scrollbar.@{prefix}-active {
37
+ background-color: #AAA;
38
+ .opacity(0.6);
39
+ .border-radius(7px);
40
+ }
41
+
42
+ .@{prefix}-scroll {
43
+ position: relative;
44
+ }
@@ -0,0 +1,6 @@
1
+ // SelectBox
2
+
3
+ .@{prefix}-selectbox {
4
+ background: @selectbox-bg;
5
+ border: 1px solid @selectbox-border;
6
+ }
@@ -0,0 +1,49 @@
1
+ // Sidebar
2
+
3
+ .@{prefix}-edit-aria-container > .@{prefix}-container-body {
4
+ display: flex;
5
+
6
+ .@{prefix}-edit-area {
7
+ flex: 1;
8
+ }
9
+
10
+ .@{prefix}-sidebar > .@{prefix}-container-body {
11
+ display: flex;
12
+ align-items: stretch;
13
+ height: 100%;
14
+ }
15
+
16
+ .@{prefix}-sidebar-panel {
17
+ min-width: 250px;
18
+ max-width: 250px;
19
+ position: relative;
20
+
21
+ > .@{prefix}-container-body {
22
+ position: absolute;
23
+ width: 100%; height: 100%;
24
+ overflow: auto;
25
+ top: 0; left: 0;
26
+ }
27
+ }
28
+ }
29
+
30
+ .@{prefix}-sidebar-toolbar {
31
+ border: 0 solid @panel-border;
32
+ border-left-width: 1px;
33
+
34
+ .@{prefix}-btn.@{prefix}-active, .@{prefix}-btn.@{prefix}-active:hover {
35
+ border: 1px solid transparent;
36
+ border-color: @btn-primary-border;
37
+ .vertical-gradient(@btn-primary-bg, @btn-primary-bg-hlight);
38
+
39
+ button, button i {
40
+ color: @btn-primary-text;
41
+ text-shadow: 1px 1px @btn-primary-text-shadow;
42
+ }
43
+ }
44
+ }
45
+
46
+ .@{prefix}-sidebar-panel {
47
+ border: 0 solid @panel-border;
48
+ border-left-width: 1px;
49
+ }
@@ -0,0 +1,48 @@
1
+ @import "Variables.less";
2
+ @import "Reset.less";
3
+ @import "Mixins.less";
4
+ @import "Animations.less";
5
+ @import "TinyMCE.less";
6
+ @import "CropRect.less";
7
+ @import "ImagePanel.less";
8
+ @import "Arrows.less";
9
+ @import "Sidebar.less";
10
+ @import "Container.less";
11
+ @import "Scrollable.less";
12
+ @import "Panel.less";
13
+ @import "FloatPanel.less";
14
+ @import "Window.less";
15
+ @import "ToolTip.less";
16
+ @import "Progress.less";
17
+ @import "Notification.less";
18
+ @import "AbsoluteLayout.less";
19
+ @import "Button.less";
20
+ @import "ButtonGroup.less";
21
+ @import "Checkbox.less";
22
+ @import "ComboBox.less";
23
+ @import "ColorBox.less";
24
+ @import "ColorButton.less";
25
+ @import "ColorPicker.less";
26
+ @import "Path.less";
27
+ @import "FieldSet.less";
28
+ @import "FitLayout.less";
29
+ @import "FlowLayout.less";
30
+ @import "Iframe.less";
31
+ @import "InfoBox.less";
32
+ @import "Label.less";
33
+ @import "MenuBar.less";
34
+ @import "MenuButton.less";
35
+ @import "MenuItem.less";
36
+ @import "Throbber.less";
37
+ @import "Menu.less";
38
+ @import "ListBox.less";
39
+ @import "Radio.less";
40
+ @import "ResizeHandle.less";
41
+ @import "SelectBox.less";
42
+ @import "Slider.less";
43
+ @import "Spacer.less";
44
+ @import "SplitButton.less";
45
+ @import "StackLayout.less";
46
+ @import "TabPanel.less";
47
+ @import "TextBox.less";
48
+ @import "Icons.less";
@@ -0,0 +1,33 @@
1
+ // Slider
2
+
3
+ .@{prefix}-slider {
4
+ .border-radius(3px);
5
+ border: 1px solid @slider-border;
6
+ background: @slider-bg;
7
+ width: 100px;
8
+ height: 10px;
9
+ position: relative;
10
+ display: block;
11
+ }
12
+
13
+ .@{prefix}-slider.@{prefix}-vertical {
14
+ width: 10px;
15
+ height: 100px;
16
+ }
17
+
18
+ .@{prefix}-slider-handle {
19
+ .border-radius(3px);
20
+ border: 1px solid @slider-handle-border;
21
+ background: @slider-handle-bg;
22
+ display: block;
23
+ width: 13px;
24
+ height: 13px;
25
+ position: absolute;
26
+ top: 0; left: 0;
27
+ margin-left: -1px;
28
+ margin-top: -2px;
29
+ }
30
+
31
+ .@{prefix}-slider-handle:focus {
32
+ background: @slider-handle-bg-focus;
33
+ }
@@ -0,0 +1,5 @@
1
+ // Spacer
2
+
3
+ .@{prefix}-spacer {
4
+ visibility: hidden;
5
+ }
@@ -0,0 +1,49 @@
1
+ // SplitButton
2
+
3
+ .@{prefix}-splitbtn .@{prefix}-open {
4
+ border-left: 1px solid transparent;
5
+ }
6
+
7
+ .@{prefix}-splitbtn:hover .@{prefix}-open {
8
+ border-left-color: darken(@btn-bg, 20%);
9
+ }
10
+
11
+ .@{prefix}-splitbtn button when (@has-button-borders = false) {
12
+ padding-right: 6px;
13
+ padding-left: 6px;
14
+ }
15
+
16
+ .@{prefix}-splitbtn button when (@has-button-borders = true) {
17
+ padding-right: 4px;
18
+ padding-left: 8px;
19
+ }
20
+
21
+ .@{prefix}-splitbtn .@{prefix}-open {
22
+ padding-right: 4px;
23
+ padding-left: 4px;
24
+ }
25
+
26
+ .@{prefix}-splitbtn .@{prefix}-open.@{prefix}-active {
27
+ .vertical-gradient(darken(@btn-bg, 10%), darken(@btn-bg-hlight, 5%));
28
+ outline: 1px solid darken(@btn-bg, 20%);
29
+ }
30
+
31
+ .@{prefix}-splitbtn.@{prefix}-btn-small .@{prefix}-open {
32
+ padding: 0 3px 0 3px;
33
+ }
34
+
35
+ // RTL
36
+
37
+ .@{prefix}-rtl .@{prefix}-splitbtn {
38
+ direction: rtl;
39
+ text-align: right;
40
+ }
41
+
42
+ .@{prefix}-rtl .@{prefix}-splitbtn button {
43
+ padding-right: 4px;
44
+ padding-left: 4px;
45
+ }
46
+
47
+ .@{prefix}-rtl .@{prefix}-splitbtn .@{prefix}-open {
48
+ border-left: 0;
49
+ }
@@ -0,0 +1,5 @@
1
+ // StackLayout
2
+
3
+ .@{prefix}-stack-layout-item {
4
+ display: block;
5
+ }
@@ -0,0 +1,44 @@
1
+ // TabPanel
2
+
3
+ .@{prefix}-tabs {
4
+ display: block;
5
+ border-bottom: 1px solid @tab-border;
6
+ }
7
+
8
+ .@{prefix}-tabs,
9
+ .@{prefix}-tabs + .@{prefix}-container-body {
10
+ background: @tabs-bg;
11
+ }
12
+
13
+ .@{prefix}-tab {
14
+ .inline-block();
15
+ border: 1px solid @tab-border;
16
+ border-width: 0 1px 0 0;
17
+ background: @tab-bg;
18
+ padding: 8px;
19
+ text-shadow: @text-shadow;
20
+ height: 13px;
21
+ cursor: pointer;
22
+ }
23
+
24
+ .@{prefix}-tab:hover {
25
+ background: @tab-bg-hover;
26
+ }
27
+
28
+ .@{prefix}-tab.@{prefix}-active {
29
+ background: @tab-bg-active;
30
+ border-bottom-color: transparent;
31
+ margin-bottom: -1px;
32
+ height: 14px;
33
+ }
34
+
35
+ // RTL
36
+
37
+ .@{prefix}-rtl .@{prefix}-tabs {
38
+ text-align: right;
39
+ direction: rtl;
40
+ }
41
+
42
+ .@{prefix}-rtl .@{prefix}-tab {
43
+ border-width: 0 0 0 1px;
44
+ }
@@ -0,0 +1,41 @@
1
+ // TextBox
2
+
3
+ .@{prefix}-textbox {
4
+ background: @textbox-bg;
5
+ border: 1px solid @textbox-border;
6
+ .border-radius(3px);
7
+ .box-shadow(@textbox-box-shadow);
8
+ display: inline-block;
9
+ .transition(~"border linear .2s, box-shadow linear .2s");
10
+ height: 28px;
11
+ resize: none;
12
+ padding: 0 4px 0 4px;
13
+ white-space: pre-wrap;
14
+ *white-space: pre;
15
+ color: @text;
16
+ }
17
+
18
+ .@{prefix}-textbox:focus, .@{prefix}-textbox.@{prefix}-focus {
19
+ border-color: @textbox-border-focus;
20
+ .box-shadow(inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px fadeout(@textbox-border-focus, 15%));
21
+ }
22
+
23
+ .@{prefix}-placeholder .@{prefix}-textbox {
24
+ color: @textbox-text-placeholder;
25
+ }
26
+
27
+ .@{prefix}-textbox.@{prefix}-multiline {
28
+ padding: 4px;
29
+ height: auto;
30
+ }
31
+
32
+ .@{prefix}-textbox.@{prefix}-disabled {
33
+ color: mix(@text, @textbox-bg, 40%);
34
+ }
35
+
36
+ // RTL
37
+
38
+ .@{prefix}-rtl .@{prefix}-textbox {
39
+ text-align: right;
40
+ direction: rtl;
41
+ }