spina-template 0.3.3 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/.fontcustom-manifest.json +42 -2
  3. data/Gemfile +4 -0
  4. data/app/assets/fonts/spina/icons_spina.eot +0 -0
  5. data/app/assets/fonts/spina/icons_spina.svg +56 -10
  6. data/app/assets/fonts/spina/icons_spina.ttf +0 -0
  7. data/app/assets/fonts/spina/icons_spina.woff +0 -0
  8. data/app/assets/icons/spina/barchart.svg +10 -0
  9. data/app/assets/icons/spina/cart.svg +10 -0
  10. data/app/assets/icons/spina/customer-outline.svg +10 -0
  11. data/app/assets/icons/spina/exclamation.svg +13 -0
  12. data/app/assets/icons/spina/filter.svg +10 -0
  13. data/app/assets/icons/spina/info.svg +13 -0
  14. data/app/assets/icons/spina/megaphone.svg +10 -0
  15. data/app/assets/icons/spina/pencil.svg +16 -0
  16. data/app/assets/icons/spina/preview/icons_spina-preview.html +153 -3
  17. data/app/assets/icons/spina/product-outline.svg +10 -0
  18. data/app/assets/icons/spina/shop.svg +12 -0
  19. data/app/assets/images/spina/spina_small.png +0 -0
  20. data/app/assets/javascripts/spina.coffee.erb +23 -8
  21. data/app/assets/javascripts/spina/dropdown.coffee +11 -0
  22. data/app/assets/javascripts/spina/galleryselect.coffee +4 -3
  23. data/app/assets/javascripts/spina/navigation.coffee +19 -0
  24. data/app/assets/javascripts/spina/notifications.coffee +7 -0
  25. data/app/assets/stylesheets/spina.sass +184 -225
  26. data/app/assets/stylesheets/spina/_buttons.sass +22 -10
  27. data/app/assets/stylesheets/spina/_forms.sass +169 -6
  28. data/app/assets/stylesheets/spina/_grid.sass +6 -0
  29. data/app/assets/stylesheets/spina/_icons_spina.scss +10 -0
  30. data/app/assets/stylesheets/spina/_labels.sass +4 -2
  31. data/app/assets/stylesheets/spina/_notifications.sass +60 -0
  32. data/app/assets/stylesheets/spina/_sortable_lists.sass +18 -11
  33. data/app/assets/stylesheets/spina/_tables.sass +156 -9
  34. data/app/assets/stylesheets/spina/_wizard.sass +103 -0
  35. data/app/assets/stylesheets/spina/_wysihtml5.sass +1 -1
  36. data/lib/spina/template/version.rb +1 -1
  37. data/spina-template.gemspec +0 -1
  38. data/vendor/assets/javascripts/spina/sortable.js +2 -0
  39. data/vendor/assets/stylesheets/spina/_nprogress.scss +1 -0
  40. metadata +19 -17
@@ -1,7 +1,7 @@
1
1
  // Sortable lists
2
2
 
3
3
  .dd
4
- margin: 0 -40px
4
+ margin: -20px
5
5
  overflow: hidden
6
6
  position: relative
7
7
 
@@ -53,30 +53,30 @@
53
53
  @include box-sizing(border-box)
54
54
 
55
55
  .dd-list
56
- background: #f9f9f9
56
+ background: tint(#f5f5fa, 50%)
57
57
  border-top: 1px solid #ddd
58
58
 
59
59
  .dd-placeholder
60
- background: #f9f9f9
60
+ background: tint(#f5f5fa, 50%)
61
61
 
62
62
  &:after
63
- margin-left: 60px
63
+ margin-left: 40px
64
64
 
65
65
  .dd-item:last-child
66
66
  border-bottom: none
67
67
 
68
68
  .dd-item
69
- padding-left: 30px
69
+ padding-left: 20px
70
70
 
71
71
  .dd-list
72
- background: #f1f1f1
73
- margin-left: -30px
72
+ background: tint(#f5f5fa, 0%)
73
+ margin-left: -20px
74
74
 
75
75
  .dd-item
76
76
  padding-left: 60px
77
77
 
78
78
  .dd-placeholder
79
- background: #f1f1f1
79
+ background: tint(#f5f5fa, 0%)
80
80
 
81
81
  &:after
82
82
  margin-left: 90px
@@ -103,7 +103,7 @@
103
103
  min-height: 100px
104
104
 
105
105
  .dd-item-inner
106
- padding: 10px 40px
106
+ padding: 10px 20px
107
107
  text-decoration: none
108
108
 
109
109
  a
@@ -141,7 +141,7 @@
141
141
  background: transparent
142
142
  border: 0
143
143
  cursor: pointer
144
- display: block
144
+ display: none
145
145
  float: left
146
146
  font-size: 9px
147
147
  height: 52px
@@ -167,4 +167,11 @@
167
167
  width: 100%
168
168
 
169
169
  &[data-action="collapse"]:before
170
- @extend .icon, .icon-min
170
+ @extend .icon, .icon-min
171
+ color: $primary-color
172
+ display: block
173
+ line-height: 52px !important
174
+ position: absolute
175
+ text-align: center
176
+ text-indent: 0
177
+ width: 100%
@@ -3,6 +3,10 @@
3
3
  .table-container
4
4
  margin: 0 -40px
5
5
 
6
+ tbody
7
+ tr
8
+ background: #fff
9
+
6
10
  table.table tr td:first-child, table.table tr th:first-child
7
11
  padding-left: 40px
8
12
 
@@ -20,26 +24,32 @@
20
24
 
21
25
  table.table
22
26
  color: #333
23
- font-size: 13px
27
+ font-size: 14px
24
28
  line-height: 18px
25
29
  margin: 20px 0
26
30
  width: 100%
27
31
 
28
32
  thead tr, tbody tr
29
- border-bottom: 1px solid #ddd
33
+ border-bottom: 1px solid #eee
30
34
 
31
35
  tbody tr:last-child
32
36
  border: none
33
37
 
34
38
  thead th
39
+ color: #333
40
+ font-weight: 600
35
41
  outline: none
36
- padding: 6px 12px
42
+ padding: 12px 12px
37
43
  text-align: left
38
44
 
39
45
  tbody td, tbody th
40
- padding: 10px 12px
46
+ padding: 14px 12px
41
47
  text-align: left
42
48
 
49
+ thead th, tbody td, tbody th
50
+ &.text-right
51
+ text-align: right
52
+
43
53
  th.nowrap, td.nowrap
44
54
  white-space: nowrap
45
55
 
@@ -58,9 +68,44 @@ table.table
58
68
  td.align-left
59
69
  text-align: left
60
70
 
61
- td.align-right
71
+ td.align-right, th.align-right
62
72
  text-align: right
63
73
 
74
+ a.table-link
75
+ display: block
76
+ margin: -10px 0
77
+ padding: 10px 0
78
+
79
+ th .table-sort
80
+ border-radius: 3px 3px 0 0
81
+ color: #333
82
+ display: block
83
+ margin: -12px -16px -13px -16px
84
+ padding: 13px 16px 12px 16px
85
+ @include transition(background .1s ease)
86
+
87
+ &:not(.table-column-sorted):hover
88
+ background: #f9f9f9
89
+
90
+ th .table-column-sorted
91
+ background: #fff
92
+ border: 1px solid #eee
93
+ border-bottom: 1px solid #fff
94
+ padding: 13px 15px 12px 15px
95
+ position: relative
96
+
97
+ &:after
98
+ font-size: 16px
99
+ position: absolute
100
+ right: 10px
101
+ @extend .icon, .icon-caret-up:before
102
+
103
+ &.table-column-sorted-desc:after
104
+ @extend .icon-caret-down:before
105
+
106
+ th.text-right .table-column-sorted
107
+ text-align: left
108
+
64
109
  // Table form
65
110
 
66
111
  table.table.table-form
@@ -74,9 +119,9 @@ table.table.table-form
74
119
  td .image
75
120
  border-radius: 3px
76
121
  display: inline-block
77
- height: 85px
122
+ height: 120px
78
123
  overflow: hidden
79
- width: 152px
124
+ width: 120px
80
125
 
81
126
  img
82
127
  display: block
@@ -94,13 +139,96 @@ table.table.table-form
94
139
  margin-right: 10px
95
140
  vertical-align: middle
96
141
 
142
+ // Progress bars
143
+ .progress
144
+ position: relative
145
+
146
+ .progress-bar
147
+ border: 1px solid #9f9f9f
148
+ border-radius: 6px
149
+ height: 12px
150
+ overflow: hidden
151
+ position: relative
152
+ @include display(flex)
153
+ @include transition(all .2s ease)
154
+
155
+ .progress-bar-divider
156
+ border-left: 1px solid #9f9f9f
157
+ height: 10px
158
+ opacity: .5
159
+ position: relative
160
+ @include flex(1)
161
+
162
+ &:first-child
163
+ border: none
164
+
165
+ .progress-bar-inner
166
+ background: #cdcdcd
167
+ height: 10px
168
+ left: 0
169
+ position: absolute
170
+ top: 0
171
+
172
+ .progress-label
173
+ color: #838383
174
+ display: block
175
+ font-weight: 700
176
+ font-size: 10px
177
+ left: 0
178
+ letter-spacing: 1px
179
+ line-height: 10px
180
+ opacity: 0
181
+ position: absolute
182
+ text-align: center
183
+ text-transform: uppercase
184
+ top: 2px
185
+ width: 100%
186
+ @include transition(all .2s ease)
187
+
188
+ tr:hover .progress
189
+ .progress-bar
190
+ @include transform(translateY(-6px))
191
+
192
+ .progress-label
193
+ opacity: 1
194
+ @include transform(translateY(9px))
195
+
196
+ .progress-bar-primary
197
+ & .progress-bar
198
+ border-color: tint($primary-color, 20%)
199
+
200
+ & .progress-bar-divider
201
+ border-color: tint($primary-color, 20%)
202
+
203
+ & .progress-bar-inner
204
+ background: tint($primary-color, 60%)
205
+
206
+ & .progress-label
207
+ color: tint($primary-color, 20%)
208
+
209
+ .progress-bar-success
210
+ & .progress-bar
211
+ border-color: $success-color
212
+
213
+ & .progress-bar-divider
214
+ border-color: $success-color
215
+
216
+ & .progress-bar-inner
217
+ background: tint($success-color, 60%)
218
+
219
+ & .progress-label
220
+ color: $success-color
221
+
97
222
  // Clickable tables
98
223
 
99
224
  .table-clickable
225
+ tbody tr
226
+ @include transition(background .1s ease)
227
+
100
228
  tbody tr:hover
101
- background: #f9f9f9
229
+ background: #f5f5fa
102
230
 
103
- tbody tr
231
+ tbody tr, tbody tr input[type="checkbox"], tbody tr input[type="radio"]
104
232
  cursor: pointer
105
233
 
106
234
  // Datatables
@@ -143,3 +271,22 @@ table.table.table-form
143
271
 
144
272
  a.paginate_disabled_previous, a.paginate_disabled_next
145
273
  display: none
274
+
275
+ // Information tables
276
+ .information-tables
277
+ @include display(flex)
278
+
279
+ .information-table
280
+ @include flex(1)
281
+
282
+ th, td
283
+ color: #333
284
+ font-size: 14px
285
+ font-weight: 500
286
+ line-height: 30px
287
+ text-align: left
288
+ vertical-align: top
289
+
290
+ th
291
+ color: #999
292
+ padding-right: 10px
@@ -0,0 +1,103 @@
1
+ .wizard-steps
2
+ margin: 30px 0 54px 0
3
+ @include display(flex)
4
+
5
+ .wizard-step
6
+ @include display(flex)
7
+
8
+ &:not(:last-child)
9
+ @include flex(1)
10
+
11
+ .wizard-step-circle
12
+ background: #e7e7ee
13
+ border: 1px solid #d6d6db
14
+ border-radius: 24px
15
+ height: 48px
16
+ position: relative
17
+ width: 48px
18
+
19
+ &:after
20
+ background: #fff
21
+ border: 1px solid #d6d6db
22
+ border-radius: 20px
23
+ content: " "
24
+ display: block
25
+ height: 40px
26
+ left: 3px
27
+ position: absolute
28
+ top: 3px
29
+ width: 40px
30
+
31
+ .wizard-step-label
32
+ color: #999
33
+ font-size: 14px
34
+ font-weight: 600
35
+ margin-left: 50%
36
+ left: 0
37
+ position: absolute
38
+ top: 56px
39
+ @include transform(translateX(-50%))
40
+
41
+ i.icon
42
+ color: #dddde5
43
+ font-size: 22px
44
+ height: 46px
45
+ line-height: 46px
46
+ position: absolute
47
+ text-align: center
48
+ width: 46px
49
+ z-index: 1
50
+
51
+ .wizard-step-connector
52
+ background: #e7e7ee
53
+ border-bottom: 1px solid #d6d6db
54
+ border-top: 1px solid #d6d6db
55
+ height: 12px
56
+ margin: 0 -1px
57
+ margin-top: 18px
58
+ position: relative
59
+ z-index: 3
60
+ @include flex(1)
61
+
62
+ .wizard-step.done
63
+ .wizard-step-circle:before
64
+ color: #fff
65
+ font-size: 12px
66
+ height: 46px
67
+ line-height: 46px
68
+ text-align: center
69
+ position: absolute
70
+ width: 46px
71
+ z-index: 4
72
+ @extend .icon-large-check, .icon
73
+
74
+ .wizard-step-circle:after
75
+ background: $primary-color
76
+ z-index: 3
77
+
78
+ &:not(:first-child) .wizard-step-connector:before
79
+ background: $primary-color
80
+ border-color: transparent
81
+ content: " "
82
+ height: 4px
83
+ left: -48px
84
+ margin-right: 4px
85
+ position: absolute
86
+ right: 100%
87
+ top: 3px
88
+ z-index: 5
89
+
90
+ &:not(:last-child) .wizard-step-connector:after
91
+ background: $primary-color
92
+ border-radius: 0 2px 2px 0
93
+ content: " "
94
+ height: 4px
95
+ left: -4px
96
+ position: absolute
97
+ right: 0px
98
+ top: 3px
99
+ z-index: 5
100
+
101
+ .wizard-step.current
102
+ .wizard-step-label
103
+ color: $primary-color
@@ -30,7 +30,7 @@ textarea.wysihtml5
30
30
  width: 40px
31
31
 
32
32
  a.command i
33
- vertical-align: middle
33
+ vertical-align: middle
34
34
 
35
35
  a.command i:before
36
36
  line-height: 40px
@@ -1,5 +1,5 @@
1
1
  module Spina
2
2
  module Template
3
- VERSION = "0.3.3"
3
+ VERSION = "0.4.0"
4
4
  end
5
5
  end
@@ -21,7 +21,6 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.add_dependency "bourbon", "~> 3.2"
23
23
  spec.add_dependency "neat", "~> 1.5"
24
- spec.add_dependency "fontcustom", "~> 1.3"
25
24
  spec.add_dependency "coffee-rails"
26
25
  spec.add_dependency 'jquery-fileupload-rails'
27
26
  end
@@ -0,0 +1,2 @@
1
+ /*! Sortable 1.4.2 - MIT | git://github.com/rubaxa/Sortable.git */
2
+ !function(a){"use strict";"function"==typeof define&&define.amd?define(a):"undefined"!=typeof module&&"undefined"!=typeof module.exports?module.exports=a():"undefined"!=typeof Package?Sortable=a():window.Sortable=a()}(function(){"use strict";function a(a,b){if(!a||!a.nodeType||1!==a.nodeType)throw"Sortable: `el` must be HTMLElement, and not "+{}.toString.call(a);this.el=a,this.options=b=s({},b),a[M]=this;var c={group:Math.random(),sort:!0,disabled:!1,store:null,handle:null,scroll:!0,scrollSensitivity:30,scrollSpeed:10,draggable:/[uo]l/i.test(a.nodeName)?"li":">*",ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",ignore:"a, img",filter:null,animation:0,setData:function(a,b){a.setData("Text",b.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1};for(var d in c)!(d in b)&&(b[d]=c[d]);W(b);for(var f in this)"_"===f.charAt(0)&&(this[f]=this[f].bind(this));this.nativeDraggable=b.forceFallback?!1:Q,e(a,"mousedown",this._onTapStart),e(a,"touchstart",this._onTapStart),this.nativeDraggable&&(e(a,"dragover",this),e(a,"dragenter",this)),U.push(this._onDragOver),b.store&&this.sort(b.store.get(this))}function b(a){w&&w.state!==a&&(h(w,"display",a?"none":""),!a&&w.state&&x.insertBefore(w,t),w.state=a)}function c(a,b,c){if(a){c=c||O;do if(">*"===b&&a.parentNode===c||q(a,b))return a;while(a!==c&&(a=a.parentNode))}return null}function d(a){a.dataTransfer&&(a.dataTransfer.dropEffect="move"),a.preventDefault()}function e(a,b,c){a.addEventListener(b,c,!1)}function f(a,b,c){a.removeEventListener(b,c,!1)}function g(a,b,c){if(a)if(a.classList)a.classList[c?"add":"remove"](b);else{var d=(" "+a.className+" ").replace(L," ").replace(" "+b+" "," ");a.className=(d+(c?" "+b:"")).replace(L," ")}}function h(a,b,c){var d=a&&a.style;if(d){if(void 0===c)return O.defaultView&&O.defaultView.getComputedStyle?c=O.defaultView.getComputedStyle(a,""):a.currentStyle&&(c=a.currentStyle),void 0===b?c:c[b];b in d||(b="-webkit-"+b),d[b]=c+("string"==typeof c?"":"px")}}function i(a,b,c){if(a){var d=a.getElementsByTagName(b),e=0,f=d.length;if(c)for(;f>e;e++)c(d[e],e);return d}return[]}function j(a,b,c,d,e,f,g){var h=O.createEvent("Event"),i=(a||b[M]).options,j="on"+c.charAt(0).toUpperCase()+c.substr(1);h.initEvent(c,!0,!0),h.to=b,h.from=e||b,h.item=d||b,h.clone=w,h.oldIndex=f,h.newIndex=g,b.dispatchEvent(h),i[j]&&i[j].call(a,h)}function k(a,b,c,d,e,f){var g,h,i=a[M],j=i.options.onMove;return g=O.createEvent("Event"),g.initEvent("move",!0,!0),g.to=b,g.from=a,g.dragged=c,g.draggedRect=d,g.related=e||b,g.relatedRect=f||b.getBoundingClientRect(),a.dispatchEvent(g),j&&(h=j.call(i,g)),h}function l(a){a.draggable=!1}function m(){S=!1}function n(a,b){var c=a.lastElementChild,d=c.getBoundingClientRect();return(b.clientY-(d.top+d.height)>5||b.clientX-(d.right+d.width)>5)&&c}function o(a){for(var b=a.tagName+a.className+a.src+a.href+a.textContent,c=b.length,d=0;c--;)d+=b.charCodeAt(c);return d.toString(36)}function p(a,b){var c=0;if(!a||!a.parentNode)return-1;for(;a&&(a=a.previousElementSibling);)"TEMPLATE"!==a.nodeName.toUpperCase()&&q(a,b)&&c++;return c}function q(a,b){if(a){b=b.split(".");var c=b.shift().toUpperCase(),d=new RegExp("\\s("+b.join("|")+")(?=\\s)","g");return!(""!==c&&a.nodeName.toUpperCase()!=c||b.length&&((" "+a.className+" ").match(d)||[]).length!=b.length)}return!1}function r(a,b){var c,d;return function(){void 0===c&&(c=arguments,d=this,setTimeout(function(){1===c.length?a.call(d,c[0]):a.apply(d,c),c=void 0},b))}}function s(a,b){if(a&&b)for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a}if("undefined"==typeof window||"undefined"==typeof window.document)return function(){throw new Error("Sortable.js requires a window with a document")};var t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K={},L=/\s+/g,M="Sortable"+(new Date).getTime(),N=window,O=N.document,P=N.parseInt,Q=!!("draggable"in O.createElement("div")),R=function(a){return a=O.createElement("x"),a.style.cssText="pointer-events:auto","auto"===a.style.pointerEvents}(),S=!1,T=Math.abs,U=([].slice,[]),V=r(function(a,b,c){if(c&&b.scroll){var d,e,f,g,h=b.scrollSensitivity,i=b.scrollSpeed,j=a.clientX,k=a.clientY,l=window.innerWidth,m=window.innerHeight;if(A!==c&&(z=b.scroll,A=c,z===!0)){z=c;do if(z.offsetWidth<z.scrollWidth||z.offsetHeight<z.scrollHeight)break;while(z=z.parentNode)}z&&(d=z,e=z.getBoundingClientRect(),f=(T(e.right-j)<=h)-(T(e.left-j)<=h),g=(T(e.bottom-k)<=h)-(T(e.top-k)<=h)),f||g||(f=(h>=l-j)-(h>=j),g=(h>=m-k)-(h>=k),(f||g)&&(d=N)),(K.vx!==f||K.vy!==g||K.el!==d)&&(K.el=d,K.vx=f,K.vy=g,clearInterval(K.pid),d&&(K.pid=setInterval(function(){d===N?N.scrollTo(N.pageXOffset+f*i,N.pageYOffset+g*i):(g&&(d.scrollTop+=g*i),f&&(d.scrollLeft+=f*i))},24)))}},30),W=function(a){var b=a.group;b&&"object"==typeof b||(b=a.group={name:b}),["pull","put"].forEach(function(a){a in b||(b[a]=!0)}),a.groups=" "+b.name+(b.put.join?" "+b.put.join(" "):"")+" "};return a.prototype={constructor:a,_onTapStart:function(a){var b=this,d=this.el,e=this.options,f=a.type,g=a.touches&&a.touches[0],h=(g||a).target,i=h,k=e.filter;if(!("mousedown"===f&&0!==a.button||e.disabled)&&(h=c(h,e.draggable,d))){if(E=p(h,e.draggable),"function"==typeof k){if(k.call(this,a,h,this))return j(b,i,"filter",h,d,E),void a.preventDefault()}else if(k&&(k=k.split(",").some(function(a){return a=c(i,a.trim(),d),a?(j(b,a,"filter",h,d,E),!0):void 0})))return void a.preventDefault();(!e.handle||c(i,e.handle,d))&&this._prepareDragStart(a,g,h)}},_prepareDragStart:function(a,b,c){var d,f=this,h=f.el,j=f.options,k=h.ownerDocument;c&&!t&&c.parentNode===h&&(H=a,x=h,t=c,u=t.parentNode,y=t.nextSibling,G=j.group,d=function(){f._disableDelayedDrag(),t.draggable=!0,g(t,f.options.chosenClass,!0),f._triggerDragStart(b)},j.ignore.split(",").forEach(function(a){i(t,a.trim(),l)}),e(k,"mouseup",f._onDrop),e(k,"touchend",f._onDrop),e(k,"touchcancel",f._onDrop),j.delay?(e(k,"mouseup",f._disableDelayedDrag),e(k,"touchend",f._disableDelayedDrag),e(k,"touchcancel",f._disableDelayedDrag),e(k,"mousemove",f._disableDelayedDrag),e(k,"touchmove",f._disableDelayedDrag),f._dragStartTimer=setTimeout(d,j.delay)):d())},_disableDelayedDrag:function(){var a=this.el.ownerDocument;clearTimeout(this._dragStartTimer),f(a,"mouseup",this._disableDelayedDrag),f(a,"touchend",this._disableDelayedDrag),f(a,"touchcancel",this._disableDelayedDrag),f(a,"mousemove",this._disableDelayedDrag),f(a,"touchmove",this._disableDelayedDrag)},_triggerDragStart:function(a){a?(H={target:t,clientX:a.clientX,clientY:a.clientY},this._onDragStart(H,"touch")):this.nativeDraggable?(e(t,"dragend",this),e(x,"dragstart",this._onDragStart)):this._onDragStart(H,!0);try{O.selection?setTimeout(function(){O.selection.empty()}):window.getSelection().removeAllRanges()}catch(b){}},_dragStarted:function(){x&&t&&(g(t,this.options.ghostClass,!0),a.active=this,j(this,x,"start",t,x,E))},_emulateDragOver:function(){if(I){if(this._lastX===I.clientX&&this._lastY===I.clientY)return;this._lastX=I.clientX,this._lastY=I.clientY,R||h(v,"display","none");var a=O.elementFromPoint(I.clientX,I.clientY),b=a,c=" "+this.options.group.name,d=U.length;if(b)do{if(b[M]&&b[M].options.groups.indexOf(c)>-1){for(;d--;)U[d]({clientX:I.clientX,clientY:I.clientY,target:a,rootEl:b});break}a=b}while(b=b.parentNode);R||h(v,"display","")}},_onTouchMove:function(b){if(H){a.active||this._dragStarted(),this._appendGhost();var c=b.touches?b.touches[0]:b,d=c.clientX-H.clientX,e=c.clientY-H.clientY,f=b.touches?"translate3d("+d+"px,"+e+"px,0)":"translate("+d+"px,"+e+"px)";J=!0,I=c,h(v,"webkitTransform",f),h(v,"mozTransform",f),h(v,"msTransform",f),h(v,"transform",f),b.preventDefault()}},_appendGhost:function(){if(!v){var a,b=t.getBoundingClientRect(),c=h(t),d=this.options;v=t.cloneNode(!0),g(v,d.ghostClass,!1),g(v,d.fallbackClass,!0),h(v,"top",b.top-P(c.marginTop,10)),h(v,"left",b.left-P(c.marginLeft,10)),h(v,"width",b.width),h(v,"height",b.height),h(v,"opacity","0.8"),h(v,"position","fixed"),h(v,"zIndex","100000"),h(v,"pointerEvents","none"),d.fallbackOnBody&&O.body.appendChild(v)||x.appendChild(v),a=v.getBoundingClientRect(),h(v,"width",2*b.width-a.width),h(v,"height",2*b.height-a.height)}},_onDragStart:function(a,b){var c=a.dataTransfer,d=this.options;this._offUpEvents(),"clone"==G.pull&&(w=t.cloneNode(!0),h(w,"display","none"),x.insertBefore(w,t)),b?("touch"===b?(e(O,"touchmove",this._onTouchMove),e(O,"touchend",this._onDrop),e(O,"touchcancel",this._onDrop)):(e(O,"mousemove",this._onTouchMove),e(O,"mouseup",this._onDrop)),this._loopId=setInterval(this._emulateDragOver,50)):(c&&(c.effectAllowed="move",d.setData&&d.setData.call(this,c,t)),e(O,"drop",this),setTimeout(this._dragStarted,0))},_onDragOver:function(a){var d,e,f,g=this.el,i=this.options,j=i.group,l=j.put,o=G===j,p=i.sort;if(void 0!==a.preventDefault&&(a.preventDefault(),!i.dragoverBubble&&a.stopPropagation()),J=!0,G&&!i.disabled&&(o?p||(f=!x.contains(t)):G.pull&&l&&(G.name===j.name||l.indexOf&&~l.indexOf(G.name)))&&(void 0===a.rootEl||a.rootEl===this.el)){if(V(a,i,this.el),S)return;if(d=c(a.target,i.draggable,g),e=t.getBoundingClientRect(),f)return b(!0),void(w||y?x.insertBefore(t,w||y):p||x.appendChild(t));if(0===g.children.length||g.children[0]===v||g===a.target&&(d=n(g,a))){if(d){if(d.animated)return;r=d.getBoundingClientRect()}b(o),k(x,g,t,e,d,r)!==!1&&(t.contains(g)||(g.appendChild(t),u=g),this._animate(e,t),d&&this._animate(r,d))}else if(d&&!d.animated&&d!==t&&void 0!==d.parentNode[M]){B!==d&&(B=d,C=h(d),D=h(d.parentNode));var q,r=d.getBoundingClientRect(),s=r.right-r.left,z=r.bottom-r.top,A=/left|right|inline/.test(C.cssFloat+C.display)||"flex"==D.display&&0===D["flex-direction"].indexOf("row"),E=d.offsetWidth>t.offsetWidth,F=d.offsetHeight>t.offsetHeight,H=(A?(a.clientX-r.left)/s:(a.clientY-r.top)/z)>.5,I=d.nextElementSibling,K=k(x,g,t,e,d,r);if(K!==!1){if(S=!0,setTimeout(m,30),b(o),1===K||-1===K)q=1===K;else if(A){var L=t.offsetTop,N=d.offsetTop;q=L===N?d.previousElementSibling===t&&!E||H&&E:N>L}else q=I!==t&&!F||H&&F;t.contains(g)||(q&&!I?g.appendChild(t):d.parentNode.insertBefore(t,q?I:d)),u=t.parentNode,this._animate(e,t),this._animate(r,d)}}}},_animate:function(a,b){var c=this.options.animation;if(c){var d=b.getBoundingClientRect();h(b,"transition","none"),h(b,"transform","translate3d("+(a.left-d.left)+"px,"+(a.top-d.top)+"px,0)"),b.offsetWidth,h(b,"transition","all "+c+"ms"),h(b,"transform","translate3d(0,0,0)"),clearTimeout(b.animated),b.animated=setTimeout(function(){h(b,"transition",""),h(b,"transform",""),b.animated=!1},c)}},_offUpEvents:function(){var a=this.el.ownerDocument;f(O,"touchmove",this._onTouchMove),f(a,"mouseup",this._onDrop),f(a,"touchend",this._onDrop),f(a,"touchcancel",this._onDrop)},_onDrop:function(b){var c=this.el,d=this.options;clearInterval(this._loopId),clearInterval(K.pid),clearTimeout(this._dragStartTimer),f(O,"mousemove",this._onTouchMove),this.nativeDraggable&&(f(O,"drop",this),f(c,"dragstart",this._onDragStart)),this._offUpEvents(),b&&(J&&(b.preventDefault(),!d.dropBubble&&b.stopPropagation()),v&&v.parentNode.removeChild(v),t&&(this.nativeDraggable&&f(t,"dragend",this),l(t),g(t,this.options.ghostClass,!1),g(t,this.options.chosenClass,!1),x!==u?(F=p(t,d.draggable),F>=0&&(j(null,u,"sort",t,x,E,F),j(this,x,"sort",t,x,E,F),j(null,u,"add",t,x,E,F),j(this,x,"remove",t,x,E,F))):(w&&w.parentNode.removeChild(w),t.nextSibling!==y&&(F=p(t,d.draggable),F>=0&&(j(this,x,"update",t,x,E,F),j(this,x,"sort",t,x,E,F)))),a.active&&((null==F||-1===F)&&(F=E),j(this,x,"end",t,x,E,F),this.save()))),this._nulling()},_nulling:function(){a.active===this&&(x=t=u=v=y=w=z=A=H=I=J=F=B=C=G=a.active=null)},handleEvent:function(a){var b=a.type;"dragover"===b||"dragenter"===b?t&&(this._onDragOver(a),d(a)):("drop"===b||"dragend"===b)&&this._onDrop(a)},toArray:function(){for(var a,b=[],d=this.el.children,e=0,f=d.length,g=this.options;f>e;e++)a=d[e],c(a,g.draggable,this.el)&&b.push(a.getAttribute(g.dataIdAttr)||o(a));return b},sort:function(a){var b={},d=this.el;this.toArray().forEach(function(a,e){var f=d.children[e];c(f,this.options.draggable,d)&&(b[a]=f)},this),a.forEach(function(a){b[a]&&(d.removeChild(b[a]),d.appendChild(b[a]))})},save:function(){var a=this.options.store;a&&a.set(this)},closest:function(a,b){return c(a,b||this.options.draggable,this.el)},option:function(a,b){var c=this.options;return void 0===b?c[a]:(c[a]=b,void("group"===a&&W(c)))},destroy:function(){var a=this.el;a[M]=null,f(a,"mousedown",this._onTapStart),f(a,"touchstart",this._onTapStart),this.nativeDraggable&&(f(a,"dragover",this),f(a,"dragenter",this)),Array.prototype.forEach.call(a.querySelectorAll("[draggable]"),function(a){a.removeAttribute("draggable")}),U.splice(U.indexOf(this._onDragOver),1),this._onDrop(),this.el=a=null}},a.utils={on:e,off:f,css:h,find:i,is:function(a,b){return!!c(a,b,a)},extend:s,throttle:r,closest:c,toggleClass:g,index:p},a.create=function(b,c){return new a(b,c)},a.version="1.4.2",a});
@@ -1,5 +1,6 @@
1
1
  /* Make clicks pass-through */
2
2
  #nprogress {
3
+ display: none;
3
4
  pointer-events: none;
4
5
  -webkit-pointer-events: none;
5
6
  position: fixed;
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spina-template
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bram Jetten
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-02-25 00:00:00.000000000 Z
11
+ date: 2016-08-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -66,20 +66,6 @@ dependencies:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '1.5'
69
- - !ruby/object:Gem::Dependency
70
- name: fontcustom
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '1.3'
76
- type: :runtime
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '1.3'
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: coffee-rails
85
71
  requirement: !ruby/object:Gem::Requirement
@@ -125,6 +111,7 @@ files:
125
111
  - app/assets/fonts/spina/icons_spina.svg
126
112
  - app/assets/fonts/spina/icons_spina.ttf
127
113
  - app/assets/fonts/spina/icons_spina.woff
114
+ - app/assets/icons/spina/barchart.svg
128
115
  - app/assets/icons/spina/bars.svg
129
116
  - app/assets/icons/spina/bold.svg
130
117
  - app/assets/icons/spina/brush.svg
@@ -133,6 +120,7 @@ files:
133
120
  - app/assets/icons/spina/caret-left.svg
134
121
  - app/assets/icons/spina/caret-right.svg
135
122
  - app/assets/icons/spina/caret-up.svg
123
+ - app/assets/icons/spina/cart.svg
136
124
  - app/assets/icons/spina/chart-outline.svg
137
125
  - app/assets/icons/spina/check.svg
138
126
  - app/assets/icons/spina/chevron-down.svg
@@ -144,12 +132,16 @@ files:
144
132
  - app/assets/icons/spina/cog.svg
145
133
  - app/assets/icons/spina/comment.svg
146
134
  - app/assets/icons/spina/cross.svg
135
+ - app/assets/icons/spina/customer-outline.svg
147
136
  - app/assets/icons/spina/document.svg
148
137
  - app/assets/icons/spina/dots.svg
138
+ - app/assets/icons/spina/exclamation.svg
149
139
  - app/assets/icons/spina/eye.svg
140
+ - app/assets/icons/spina/filter.svg
150
141
  - app/assets/icons/spina/home.svg
151
142
  - app/assets/icons/spina/image.svg
152
143
  - app/assets/icons/spina/inbox-outline.svg
144
+ - app/assets/icons/spina/info.svg
153
145
  - app/assets/icons/spina/italic.svg
154
146
  - app/assets/icons/spina/large-check.svg
155
147
  - app/assets/icons/spina/link.svg
@@ -157,17 +149,21 @@ files:
157
149
  - app/assets/icons/spina/mail-outline.svg
158
150
  - app/assets/icons/spina/mail.svg
159
151
  - app/assets/icons/spina/media-library.svg
152
+ - app/assets/icons/spina/megaphone.svg
160
153
  - app/assets/icons/spina/min.svg
161
154
  - app/assets/icons/spina/pages.svg
162
155
  - app/assets/icons/spina/pencil-outline.svg
156
+ - app/assets/icons/spina/pencil.svg
163
157
  - app/assets/icons/spina/picture-o.svg
164
158
  - app/assets/icons/spina/plus.svg
165
159
  - app/assets/icons/spina/power-off.svg
166
160
  - app/assets/icons/spina/preview.svg
167
161
  - app/assets/icons/spina/preview/icons_spina-preview.html
162
+ - app/assets/icons/spina/product-outline.svg
168
163
  - app/assets/icons/spina/random.svg
169
164
  - app/assets/icons/spina/refresh.svg
170
165
  - app/assets/icons/spina/search.svg
166
+ - app/assets/icons/spina/shop.svg
171
167
  - app/assets/icons/spina/social-outline.svg
172
168
  - app/assets/icons/spina/trash.svg
173
169
  - app/assets/icons/spina/upload-outline.svg
@@ -180,12 +176,15 @@ files:
180
176
  - app/assets/images/spina/marker.png
181
177
  - app/assets/images/spina/mask.png
182
178
  - app/assets/images/spina/spina.png
179
+ - app/assets/images/spina/spina_small.png
183
180
  - app/assets/images/spina/wheel.png
184
181
  - app/assets/javascripts/spina.coffee.erb
185
182
  - app/assets/javascripts/spina/dropdown.coffee
186
183
  - app/assets/javascripts/spina/forms.coffee
187
184
  - app/assets/javascripts/spina/galleryselect.coffee
188
185
  - app/assets/javascripts/spina/modal.coffee
186
+ - app/assets/javascripts/spina/navigation.coffee
187
+ - app/assets/javascripts/spina/notifications.coffee
189
188
  - app/assets/javascripts/spina/switch.coffee
190
189
  - app/assets/javascripts/spina/tabs.coffee
191
190
  - app/assets/javascripts/spina/uploads.coffee
@@ -205,9 +204,11 @@ files:
205
204
  - app/assets/stylesheets/spina/_login.sass
206
205
  - app/assets/stylesheets/spina/_mixins.scss
207
206
  - app/assets/stylesheets/spina/_modal.sass
207
+ - app/assets/stylesheets/spina/_notifications.sass
208
208
  - app/assets/stylesheets/spina/_sortable_lists.sass
209
209
  - app/assets/stylesheets/spina/_tables.sass
210
210
  - app/assets/stylesheets/spina/_trix.sass
211
+ - app/assets/stylesheets/spina/_wizard.sass
211
212
  - app/assets/stylesheets/spina/_wysihtml5.sass
212
213
  - app/assets/stylesheets/spina/wysihtml5_textarea.sass
213
214
  - config/fontcustom.yml
@@ -224,6 +225,7 @@ files:
224
225
  - vendor/assets/javascripts/spina/morris.js
225
226
  - vendor/assets/javascripts/spina/nprogress.js
226
227
  - vendor/assets/javascripts/spina/raphael.js
228
+ - vendor/assets/javascripts/spina/sortable.js
227
229
  - vendor/assets/javascripts/spina/trix.js
228
230
  - vendor/assets/javascripts/spina/wysihtml5.js
229
231
  - vendor/assets/javascripts/spina/wysihtml5_parser_rules.js
@@ -251,7 +253,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
251
253
  version: '0'
252
254
  requirements: []
253
255
  rubyforge_project:
254
- rubygems_version: 2.4.5.1
256
+ rubygems_version: 2.5.1
255
257
  signing_key:
256
258
  specification_version: 4
257
259
  summary: Spina