semantic-ui-sass 0.9.0.0 → 0.9.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/README.md +26 -1
- data/app/assets/javascripts/semantic-ui/accordion.js +2 -2
- data/app/assets/javascripts/semantic-ui/popup.js +4 -3
- data/app/assets/stylesheets/semantic-ui/modules/_accordion.scss +4 -2
- data/app/helpers/semantic_breadcrumbs_helper.rb +10 -0
- data/app/views/semantic/_breadcrumbs.html.erb +12 -0
- data/lib/semantic/ui/sass/breadcrumbs.rb +41 -0
- data/lib/semantic/ui/sass/engine.rb +6 -0
- data/lib/semantic/ui/sass/version.rb +2 -2
- data/semantic-ui-sass.gemspec +2 -2
- data/spec/helpers/semantic_breadcrumbs_helper_spec.rb +38 -0
- data/spec/spec_helper.rb +10 -0
- metadata +9 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1f6721e42b2d39acbdb767aba2723c578aa985af
|
4
|
+
data.tar.gz: 1a6ef012cb476b5c114fc326efef12b9d3e9984e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 535b32680d4654f4682a854518ad75ac1b3c04beeb6e033bfb979e306066e27098410932dda4b2a1a46280b64b08887fc968c34617a93cd9b29eca2bcf4aea31
|
7
|
+
data.tar.gz: 4de111fe02303455747eaa037cbb46cdd9c76349d5a334129d224520ac5938081760c3179a1b854d2439ba890fb16a38a1277bb2c45fa8f96f162b72f49007eb
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
## Installation and Usage
|
6
6
|
|
7
7
|
```ruby
|
8
|
-
gem 'semantic-ui-sass', '~> 0.9.
|
8
|
+
gem 'semantic-ui-sass', '~> 0.9.1.0'
|
9
9
|
```
|
10
10
|
or
|
11
11
|
|
@@ -83,6 +83,31 @@ compass install semantic-ui
|
|
83
83
|
|
84
84
|
# Rails Helpers
|
85
85
|
|
86
|
+
## Breadcrumbs helper
|
87
|
+
|
88
|
+
Add breadcrumbs helper `<%= render_breadcrumbs %>` to your layout.
|
89
|
+
|
90
|
+
```ruby
|
91
|
+
class ApplicationController
|
92
|
+
add_breadcrumb :index, :root_path
|
93
|
+
end
|
94
|
+
```
|
95
|
+
|
96
|
+
```ruby
|
97
|
+
class ExamplesController < ApplicationController
|
98
|
+
add_breadcrumb :index, :examples_path
|
99
|
+
|
100
|
+
def index
|
101
|
+
end
|
102
|
+
|
103
|
+
def show
|
104
|
+
@example = Example.find params[:id]
|
105
|
+
add_breadcrumb @example.name, example_path(@example)
|
106
|
+
# add_breadcrumb :show, example_path(@example)
|
107
|
+
end
|
108
|
+
end
|
109
|
+
```
|
110
|
+
|
86
111
|
## Flash helper
|
87
112
|
|
88
113
|
Add flash helper `<%= semantic_flash %>` to your layout
|
@@ -121,7 +121,7 @@ $.fn.accordion = function(parameters) {
|
|
121
121
|
var
|
122
122
|
$activeTitle = $title.eq(index),
|
123
123
|
$activeContent = $activeTitle.next($content),
|
124
|
-
$previousTitle = $title.filter('.' + className.active),
|
124
|
+
$previousTitle = $activeTitle.siblings(selector.title).filter('.' + className.active),
|
125
125
|
$previousContent = $previousTitle.next($title),
|
126
126
|
contentIsOpen = ($previousTitle.size() > 0)
|
127
127
|
;
|
@@ -177,7 +177,7 @@ $.fn.accordion = function(parameters) {
|
|
177
177
|
$activeTitle = $title.eq(index),
|
178
178
|
$activeContent = $activeTitle.next($content)
|
179
179
|
;
|
180
|
-
module.debug('Closing accordion content', $
|
180
|
+
module.debug('Closing accordion content', $activeContent);
|
181
181
|
$activeTitle
|
182
182
|
.removeClass(className.active)
|
183
183
|
;
|
@@ -15,7 +15,6 @@ $.fn.popup = function(parameters) {
|
|
15
15
|
var
|
16
16
|
$allModules = $(this),
|
17
17
|
$document = $(document),
|
18
|
-
$body = $('body'),
|
19
18
|
|
20
19
|
moduleSelector = $allModules.selector || '',
|
21
20
|
|
@@ -45,6 +44,7 @@ $.fn.popup = function(parameters) {
|
|
45
44
|
moduleNamespace = 'module-' + namespace,
|
46
45
|
|
47
46
|
$module = $(this),
|
47
|
+
$context = $(settings.context),
|
48
48
|
$target = (settings.target)
|
49
49
|
? $(settings.target)
|
50
50
|
: $module,
|
@@ -173,7 +173,7 @@ $.fn.popup = function(parameters) {
|
|
173
173
|
else {
|
174
174
|
module.verbose('Appending popup element to body', $popup);
|
175
175
|
$popup
|
176
|
-
.appendTo( $
|
176
|
+
.appendTo( $context )
|
177
177
|
;
|
178
178
|
}
|
179
179
|
$.proxy(settings.onCreate, $popup)();
|
@@ -239,7 +239,7 @@ $.fn.popup = function(parameters) {
|
|
239
239
|
return ( $popup.size() !== 0 );
|
240
240
|
}
|
241
241
|
else {
|
242
|
-
return ( $popup.parent($
|
242
|
+
return ( $popup.parent($context).size() );
|
243
243
|
}
|
244
244
|
},
|
245
245
|
|
@@ -757,6 +757,7 @@ $.fn.popup.settings = {
|
|
757
757
|
target : false,
|
758
758
|
closable : true,
|
759
759
|
|
760
|
+
context : 'body',
|
760
761
|
position : 'top center',
|
761
762
|
delay : 150,
|
762
763
|
inline : false,
|
@@ -13,7 +13,8 @@
|
|
13
13
|
Accordion
|
14
14
|
*******************************/
|
15
15
|
|
16
|
-
.ui.accordion
|
16
|
+
.ui.accordion,
|
17
|
+
.ui.accordion .accordion {
|
17
18
|
width: 600px;
|
18
19
|
max-width: 100%;
|
19
20
|
overflow: hidden;
|
@@ -150,6 +151,7 @@
|
|
150
151
|
Fluid
|
151
152
|
---------------*/
|
152
153
|
|
153
|
-
.ui.fluid.accordion
|
154
|
+
.ui.fluid.accordion,
|
155
|
+
.ui.fluid.accordion .accordion {
|
154
156
|
width: 100%;
|
155
157
|
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
module SemanticBreadcrumbsHelper
|
2
|
+
def render_breadcrumbs(divider = '/', &block)
|
3
|
+
content = render :partial => 'semantic/breadcrumbs', :layout => false, :locals => { :divider => divider }
|
4
|
+
if block_given?
|
5
|
+
capture(content, &block)
|
6
|
+
else
|
7
|
+
content
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
<% if @breadcrumbs.present? %>
|
2
|
+
<% separator = divider %>
|
3
|
+
<div class="ui breadcrumb">
|
4
|
+
<% @breadcrumbs[0..-2].each do |crumb| %>
|
5
|
+
<%= link_to crumb[:name], crumb[:url], crumb[:options] %>
|
6
|
+
<div class="divider"><%= separator %></div>
|
7
|
+
<% end %>
|
8
|
+
<div class="active section">
|
9
|
+
<%= @breadcrumbs.last[:name] %>
|
10
|
+
</div>
|
11
|
+
</div>
|
12
|
+
<% end -%>
|
@@ -0,0 +1,41 @@
|
|
1
|
+
module Semantic
|
2
|
+
module Ui
|
3
|
+
module Sass
|
4
|
+
|
5
|
+
module BreadCrumbs
|
6
|
+
def self.included(base)
|
7
|
+
base.extend(ClassMethods)
|
8
|
+
end
|
9
|
+
|
10
|
+
module ClassMethods
|
11
|
+
def add_breadcrumb(name, url, options = {})
|
12
|
+
class_name = self.name
|
13
|
+
before_filter options do |controller|
|
14
|
+
name = controller.send :translate_breadcrumb, name, class_name if name.is_a?(Symbol)
|
15
|
+
controller.send :add_breadcrumb, name, url
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
protected
|
21
|
+
|
22
|
+
def add_breadcrumb(name, url = '', options = {})
|
23
|
+
@breadcrumbs ||= []
|
24
|
+
name = translate_breadcrumb(name, self.class.name) if name.is_a?(Symbol)
|
25
|
+
url = eval(url.to_s) if url =~ /_path|_url|@/
|
26
|
+
@breadcrumbs << {:name => name, :url => url, :options => options}
|
27
|
+
end
|
28
|
+
|
29
|
+
def translate_breadcrumb(name, class_name)
|
30
|
+
scope = [:breadcrumbs]
|
31
|
+
namespace = class_name.underscore.split('/')
|
32
|
+
namespace.last.sub!('_controller', '')
|
33
|
+
scope += namespace
|
34
|
+
|
35
|
+
I18n.t name, :scope => scope
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/breadcrumbs.rb'
|
1
2
|
module Semantic
|
2
3
|
module Ui
|
3
4
|
module Sass
|
@@ -6,6 +7,11 @@ module Semantic
|
|
6
7
|
initializer "semantic-ui-sass.assets.precompile" do |app|
|
7
8
|
app.config.assets.precompile << %r(semantic-ui\/(basic\.)*icons\.(?:eot|svg|ttf|woff)$)
|
8
9
|
end
|
10
|
+
initializer 'semantic-ui-sass.setup_helpers' do |app|
|
11
|
+
app.config.to_prepare do
|
12
|
+
ActionController::Base.send :include, Semantic::Ui::Sass::BreadCrumbs
|
13
|
+
end
|
14
|
+
end
|
9
15
|
end
|
10
16
|
end
|
11
17
|
end
|
data/semantic-ui-sass.gemspec
CHANGED
@@ -8,8 +8,8 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.version = Semantic::Ui::Sass::VERSION
|
9
9
|
spec.authors = ["doabit"]
|
10
10
|
spec.email = ["doinsist@gmail.com"]
|
11
|
-
spec.description = %q{Semantic UI, converted to Sass and ready to drop into Rails.}
|
12
|
-
spec.summary = %q{Semantic UI, converted to Sass and ready to drop into Rails.}
|
11
|
+
spec.description = %q{Semantic UI, converted to Sass and ready to drop into Rails & Compass.}
|
12
|
+
spec.summary = %q{Semantic UI, converted to Sass and ready to drop into Rails & Compass.}
|
13
13
|
spec.homepage = "http://github.com/doabit/semantic-ui-sass"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe SemanticBreadcrumbsHelper do
|
4
|
+
describe "semantic_breadcrumbs" do
|
5
|
+
|
6
|
+
it "should return breadcrumbs" do
|
7
|
+
controller.instance_variable_set("@breadcrumbs", [{name: 'Home', url:'/'}])
|
8
|
+
expect(render_breadcrumbs).to like_of %Q{
|
9
|
+
<div class="ui breadcrumb">
|
10
|
+
<div class="active section">Home</div>
|
11
|
+
</div>
|
12
|
+
}
|
13
|
+
end
|
14
|
+
|
15
|
+
it "should return breadcrumbs with multi params" do
|
16
|
+
controller.instance_variable_set("@breadcrumbs", [{name: 'Home', url:'/'}, {name: 'Posts', url: '/posts'}])
|
17
|
+
expect(render_breadcrumbs).to like_of %Q{
|
18
|
+
<div class="ui breadcrumb">
|
19
|
+
<a href="/">Home</a>
|
20
|
+
<div class="divider">/</div>
|
21
|
+
<div class="active section">Posts</div>
|
22
|
+
</div>
|
23
|
+
}
|
24
|
+
end
|
25
|
+
|
26
|
+
it "should return breadcrumbs with divider" do
|
27
|
+
controller.instance_variable_set("@breadcrumbs", [{name: 'Home', url:'/'}, {name: 'Posts', url: '/posts'}])
|
28
|
+
expect(render_breadcrumbs('>')).to like_of %Q{
|
29
|
+
<div class="ui breadcrumb">
|
30
|
+
<a href="/">Home</a>
|
31
|
+
<div class="divider">></div>
|
32
|
+
<div class="active section">Posts</div>
|
33
|
+
</div>
|
34
|
+
}
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -4,4 +4,14 @@ require 'rspec/rails'
|
|
4
4
|
require 'rspec/autorun'
|
5
5
|
|
6
6
|
RSpec.configure do |config|
|
7
|
+
end
|
8
|
+
|
9
|
+
def normalize(str)
|
10
|
+
str.split("\n").map(&:strip).join("")
|
11
|
+
end
|
12
|
+
|
13
|
+
RSpec::Matchers.define :like_of do |expected|
|
14
|
+
match do |actual|
|
15
|
+
normalize(actual) == normalize(expected)
|
16
|
+
end
|
7
17
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: semantic-ui-sass
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- doabit
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-11-
|
11
|
+
date: 2013-11-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -136,7 +136,7 @@ dependencies:
|
|
136
136
|
- - '>='
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0'
|
139
|
-
description: Semantic UI, converted to Sass and ready to drop into Rails.
|
139
|
+
description: Semantic UI, converted to Sass and ready to drop into Rails & Compass.
|
140
140
|
email:
|
141
141
|
- doinsist@gmail.com
|
142
142
|
executables: []
|
@@ -232,9 +232,12 @@ files:
|
|
232
232
|
- app/assets/stylesheets/semantic-ui/views/_item.scss
|
233
233
|
- app/assets/stylesheets/semantic-ui/views/_list.scss
|
234
234
|
- app/assets/stylesheets/semantic-ui/views/_statistic.scss
|
235
|
+
- app/helpers/semantic_breadcrumbs_helper.rb
|
235
236
|
- app/helpers/semantic_flash_helper.rb
|
236
237
|
- app/helpers/semantic_icon_helper.rb
|
238
|
+
- app/views/semantic/_breadcrumbs.html.erb
|
237
239
|
- lib/semantic-ui-sass.rb
|
240
|
+
- lib/semantic/ui/sass/breadcrumbs.rb
|
238
241
|
- lib/semantic/ui/sass/engine.rb
|
239
242
|
- lib/semantic/ui/sass/version.rb
|
240
243
|
- semantic-ui-sass.gemspec
|
@@ -275,6 +278,7 @@ files:
|
|
275
278
|
- spec/dummy/public/422.html
|
276
279
|
- spec/dummy/public/500.html
|
277
280
|
- spec/dummy/public/favicon.ico
|
281
|
+
- spec/helpers/semantic_breadcrumbs_helper_spec.rb
|
278
282
|
- spec/helpers/semantic_flash_helper_spec.rb
|
279
283
|
- spec/helpers/semantic_icon_helper_spec.rb
|
280
284
|
- spec/spec_helper.rb
|
@@ -304,7 +308,7 @@ rubyforge_project:
|
|
304
308
|
rubygems_version: 2.0.3
|
305
309
|
signing_key:
|
306
310
|
specification_version: 4
|
307
|
-
summary: Semantic UI, converted to Sass and ready to drop into Rails.
|
311
|
+
summary: Semantic UI, converted to Sass and ready to drop into Rails & Compass.
|
308
312
|
test_files:
|
309
313
|
- spec/dummy/README.rdoc
|
310
314
|
- spec/dummy/Rakefile
|
@@ -343,6 +347,7 @@ test_files:
|
|
343
347
|
- spec/dummy/public/422.html
|
344
348
|
- spec/dummy/public/500.html
|
345
349
|
- spec/dummy/public/favicon.ico
|
350
|
+
- spec/helpers/semantic_breadcrumbs_helper_spec.rb
|
346
351
|
- spec/helpers/semantic_flash_helper_spec.rb
|
347
352
|
- spec/helpers/semantic_icon_helper_spec.rb
|
348
353
|
- spec/spec_helper.rb
|