rails_blocks 0.5.4.pre.alpha.pre.2

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.
Files changed (66) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +15 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +10 -0
  5. data/Gemfile +10 -0
  6. data/Guardfile +43 -0
  7. data/LICENSE.txt +22 -0
  8. data/README.md +31 -0
  9. data/Rakefile +12 -0
  10. data/app/assets/javascripts/block.coffee +98 -0
  11. data/app/assets/javascripts/jblocks.coffee +95 -0
  12. data/app/assets/javascripts/jquery_bem.coffee +4 -0
  13. data/app/assets/javascripts/jquery_bem_copy.coffee +486 -0
  14. data/app/assets/javascripts/main.coffee +10 -0
  15. data/app/assets/javascripts/rails_blocks.js +5 -0
  16. data/app/assets/stylesheets/rails_blocks.sass +94 -0
  17. data/app/helpers/block_helper.rb +122 -0
  18. data/app/views/rails_blocks/element.slim +2 -0
  19. data/coffeelint.json +12 -0
  20. data/config/spring.rb +1 -0
  21. data/config.ru +7 -0
  22. data/lib/rails_blocks/blocks/block.rb +28 -0
  23. data/lib/rails_blocks/blocks/element.rb +6 -0
  24. data/lib/rails_blocks/blocks/renderer.rb +13 -0
  25. data/lib/rails_blocks/configuration.rb +27 -0
  26. data/lib/rails_blocks/engine.rb +29 -0
  27. data/lib/rails_blocks/exceptions.rb +4 -0
  28. data/lib/rails_blocks/initializers/rails_blocks.rb +0 -0
  29. data/lib/rails_blocks/levels.rb +7 -0
  30. data/lib/rails_blocks/names.rb +60 -0
  31. data/lib/rails_blocks/path.rb +108 -0
  32. data/lib/rails_blocks/version.rb +3 -0
  33. data/lib/rails_blocks.rb +24 -0
  34. data/lib/tasks/rails_blocks.rake +8 -0
  35. data/rails_blocks.gemspec +39 -0
  36. data/spec/helpers/block_helper_spec.rb +58 -0
  37. data/spec/internal/app/blocks/app/block3/_mod1.slim +0 -0
  38. data/spec/internal/app/blocks/app/block3/_mod2_value2.slim +0 -0
  39. data/spec/internal/app/blocks/app/block3/block3.slim +0 -0
  40. data/spec/internal/app/blocks/common/block1/_mod1.slim +0 -0
  41. data/spec/internal/app/blocks/common/block1/_mod2_value2.slim +0 -0
  42. data/spec/internal/app/blocks/common/block1/block1.slim +2 -0
  43. data/spec/internal/app/blocks/common/block2/__elem1.slim +0 -0
  44. data/spec/internal/app/blocks/common/block2/__elem1_mod1.slim +0 -0
  45. data/spec/internal/app/blocks/common/block2/__elem1_mod2_val2.slim +0 -0
  46. data/spec/internal/app/blocks/common/block2/block2.slim +0 -0
  47. data/spec/internal/app/blocks/common/block3/_mod1.slim +0 -0
  48. data/spec/internal/app/blocks/common/block3/_mod2_value2.slim +0 -0
  49. data/spec/internal/app/blocks/common/block3/block3.slim +0 -0
  50. data/spec/internal/app/controllers/admin/admin_test_controller.rb +2 -0
  51. data/spec/internal/app/controllers/admin_controller.rb +2 -0
  52. data/spec/internal/app/controllers/application_controller.rb +2 -0
  53. data/spec/internal/config/database.yml +3 -0
  54. data/spec/internal/config/initializers/rails_blocks.rb +7 -0
  55. data/spec/internal/config/routes.rb +3 -0
  56. data/spec/internal/db/schema.rb +3 -0
  57. data/spec/internal/log/.gitignore +1 -0
  58. data/spec/internal/log/test.log +8 -0
  59. data/spec/internal/public/favicon.ico +0 -0
  60. data/spec/rails_blocks/blocks/block_spec.rb +11 -0
  61. data/spec/rails_blocks/configuration_spec.rb +29 -0
  62. data/spec/rails_blocks/names_spec.rb +66 -0
  63. data/spec/rails_blocks/path_spec.rb +70 -0
  64. data/spec/rails_blocks_spec.rb +104 -0
  65. data/spec/spec_helper.rb +112 -0
  66. metadata +368 -0
@@ -0,0 +1,70 @@
1
+ describe RailsBlocks::Path do
2
+ include RailsBlocks::Path
3
+ let(:options) { {levels: [:common, :app]} }
4
+
5
+ context '.block_template' do
6
+ it 'returns nil if block dir not found' do
7
+ template = block_template 'test-block', options
8
+ expect(template).to be_nil
9
+ end
10
+
11
+ context 'when template exists' do
12
+ it 'returns path when template exists' do
13
+ template = block_template 'block1', options
14
+ expect(template).to eq "common/block1/block1#{RailsBlocks.config.template_engine}"
15
+ end
16
+
17
+ context 'when modified template exists' do
18
+ it 'returns path of template with simple mod' do
19
+ template = block_template 'block1', options.merge(mods: {mod1: true})
20
+ expect(template).to eq "common/block1/_mod1#{RailsBlocks.config.template_engine}"
21
+ end
22
+
23
+ it 'returns path of template with key_value mod' do
24
+ template = block_template 'block1', options.merge(mods: {mod2: 'value2'})
25
+ expect(template).to eq "common/block1/_mod2_value2#{RailsBlocks.config.template_engine}"
26
+ end
27
+ end
28
+
29
+ context 'when modified template not exists' do
30
+ it 'returns path of original template' do
31
+ template = block_template 'block1', options.merge(mods: {mod1: 'not-exists'})
32
+ expect(template).to eq "common/block1/block1#{RailsBlocks.config.template_engine}"
33
+ end
34
+ end
35
+ end
36
+ end
37
+
38
+ context '.element_template' do |variable|
39
+ it 'returns nil if block dir not found' do
40
+ template = element_template 'not-found', 'test', options
41
+ expect(template).to be_nil
42
+ end
43
+
44
+ it 'returns nil if block dir found but template not' do
45
+ template = element_template 'block1', 'not-exist-e', options
46
+ expect(template).to be_nil
47
+ end
48
+
49
+ context 'when template exists' do
50
+ it 'returns path when element template exists' do
51
+ template = element_template 'block2', 'elem1', options
52
+ expect(template).to eq "common/block2/__elem1#{RailsBlocks.config.template_engine}"
53
+ end
54
+
55
+ context 'when modified template exists' do
56
+ it 'returns path of modified template' do
57
+ template = element_template 'block2', 'elem1', options.merge(mods: {mod1: true})
58
+ expect(template).to eq "common/block2/__elem1_mod1#{RailsBlocks.config.template_engine}"
59
+ end
60
+ end
61
+
62
+ context 'when modified template not exists' do
63
+ it 'returns path of original template' do
64
+ template = element_template 'block2', 'elem1', options.merge(mods: {mod3: 'not-exist'})
65
+ expect(template).to eq "common/block2/__elem1#{RailsBlocks.config.template_engine}"
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,104 @@
1
+ require 'rails_blocks'
2
+ require 'rails'
3
+
4
+ describe RailsBlocks do
5
+ describe ".configure" do
6
+ it "set prefix for block class" do
7
+ RailsBlocks.configure do |config|
8
+ config.prefix = 't-'
9
+ end
10
+
11
+ expect(RailsBlocks.config.prefix).to eq 't-'
12
+ end
13
+
14
+ it "set path for blocks folder" do
15
+ RailsBlocks.configure do |config|
16
+ config.blocks_dir = 'bem'
17
+ end
18
+
19
+ expect(RailsBlocks.config.blocks_dir).to eq 'bem'
20
+ end
21
+
22
+ it "set levels for bem" do
23
+ RailsBlocks.configure do |config|
24
+ config.levels = ['common', 'test']
25
+ end
26
+
27
+ expect(RailsBlocks.config.levels).to eq %w(common test)
28
+ end
29
+
30
+ it "set template_engine for bem" do
31
+ RailsBlocks.configure do |config|
32
+ config.template_engine = '.haml'
33
+ end
34
+
35
+ expect(RailsBlocks.config.template_engine).to eq '.haml'
36
+ end
37
+
38
+ it "set element_separator for bem" do
39
+ RailsBlocks.configure do |config|
40
+ config.element_separator = 'sepa'
41
+ end
42
+
43
+ expect(RailsBlocks.config.element_separator).to eq 'sepa'
44
+ end
45
+
46
+ it "set modifier_separator for bem" do
47
+ RailsBlocks.configure do |config|
48
+ config.modifier_separator = 'sepa'
49
+ end
50
+
51
+ expect(RailsBlocks.config.modifier_separator).to eq 'sepa'
52
+ end
53
+
54
+ it "set modifier_separator for bem" do
55
+ RailsBlocks.configure do |config|
56
+ config.modifier_separator = 'sepa'
57
+ end
58
+
59
+ expect(RailsBlocks.config.modifier_separator).to eq 'sepa'
60
+ end
61
+ end
62
+
63
+ describe ".reset" do
64
+ before :each do
65
+ RailsBlocks.configure do |config|
66
+ config.prefix = 'test-'
67
+ config.blocks_dir = 'test_path'
68
+ config.levels = ['common', 'test']
69
+ config.template_engine = '.haml'
70
+ config.element_separator = 'sepa'
71
+ end
72
+ end
73
+
74
+ it "resets the configuration prefix" do
75
+ RailsBlocks.reset
76
+ expect(RailsBlocks.config.prefix).to eq('b-')
77
+ end
78
+
79
+ it "resets the configuration block_path" do
80
+ RailsBlocks.reset
81
+ expect(RailsBlocks.config.blocks_dir).to eq('app/blocks')
82
+ end
83
+
84
+ it "resets the configuration levels" do
85
+ RailsBlocks.reset
86
+ expect(RailsBlocks.config.levels.length).to be 0
87
+ end
88
+
89
+ it "resets the configuration template_engine" do
90
+ RailsBlocks.reset
91
+ expect(RailsBlocks.config.template_engine).to eq '.slim'
92
+ end
93
+
94
+ it "resets the configuration element_separator" do
95
+ RailsBlocks.reset
96
+ expect(RailsBlocks.config.element_separator).to eq '__'
97
+ end
98
+
99
+ it "resets the configuration modifier_separator" do
100
+ RailsBlocks.reset
101
+ expect(RailsBlocks.config.modifier_separator).to eq '--'
102
+ end
103
+ end
104
+ end
@@ -0,0 +1,112 @@
1
+ ENV['RAILS_ENV'] ||= 'test'
2
+
3
+ require 'rubygems'
4
+ require 'bundler/setup'
5
+ require 'combustion'
6
+ require 'capybara/rspec'
7
+ require 'memfs'
8
+
9
+ Combustion.initialize! :action_controller,
10
+ :action_view, :sprockets
11
+
12
+ require 'rspec/rails'
13
+ require 'capybara/rails'
14
+
15
+ # This file was generated by the `rails generate rspec:install` command. Conventionally, all
16
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
17
+ # The generated `.rspec` file contains `--require spec_helper` which will cause
18
+ # this file to always be loaded, without a need to explicitly require it in any
19
+ # files.
20
+ #
21
+ # Given that it is always loaded, you are encouraged to keep this file as
22
+ # light-weight as possible. Requiring heavyweight dependencies from this file
23
+ # will add to the boot time of your test suite on EVERY test run, even for an
24
+ # individual file that may not need all of that loaded. Instead, consider making
25
+ # a separate helper file that requires the additional dependencies and performs
26
+ # the additional setup, and require it from the spec files that actually need
27
+ # it.
28
+ #
29
+ # The `.rspec` file also contains a few flags that are not defaults but that
30
+ # users commonly want.
31
+ #
32
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
33
+ RSpec.configure do |config|
34
+ # rspec-expectations config goes here. You can use an alternate
35
+ # assertion/expectation library such as wrong or the stdlib/minitest
36
+ # assertions if you prefer.
37
+ config.around(:each, memfs: true) do |example|
38
+ MemFs.activate { example.run }
39
+ end
40
+
41
+ config.expect_with :rspec do |expectations|
42
+ expectations.syntax = :expect
43
+ # This option will default to `true` in RSpec 4. It makes the `description`
44
+ # and `failure_message` of custom matchers include text for helper methods
45
+ # defined using `chain`, e.g.:
46
+ # be_bigger_than(2).and_smaller_than(4).description
47
+ # # => "be bigger than 2 and smaller than 4"
48
+ # ...rather than:
49
+ # # => "be bigger than 2"
50
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
51
+ end
52
+
53
+ # rspec-mocks config goes here. You can use an alternate test double
54
+ # library (such as bogus or mocha) by changing the `mock_with` option here.
55
+ config.mock_with :rspec do |mocks|
56
+ # Prevents you from mocking or stubbing a method that does not exist on
57
+ # a real object. This is generally recommended, and will default to
58
+ # `true` in RSpec 4.
59
+ mocks.verify_partial_doubles = true
60
+ end
61
+
62
+ config.infer_spec_type_from_file_location!
63
+ # The settings below are suggested to provide a good initial experience
64
+ # with RSpec, but feel free to customize to your heart's content.
65
+ =begin
66
+ # These two settings work together to allow you to limit a spec run
67
+ # to individual examples or groups you care about by tagging them with
68
+ # `:focus` metadata. When nothing is tagged with `:focus`, all examples
69
+ # get run.
70
+ config.filter_run :focus
71
+ config.run_all_when_everything_filtered = true
72
+
73
+ # Allows RSpec to persist some state between runs in order to support
74
+ # the `--only-failures` and `--next-failure` CLI options. We recommend
75
+ # you configure your source control system to ignore this file.
76
+ config.example_status_persistence_file_path = "spec/examples.txt"
77
+
78
+ # Limits the available syntax to the non-monkey patched syntax that is
79
+ # recommended. For more details, see:
80
+ # - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
81
+ # - http://www.teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
82
+ # - http://myronmars.to/n/dev-blog/2014/05/notable-changes-in-rspec-3#new__config_option_to_disable_rspeccore_monkey_patching
83
+ config.disable_monkey_patching!
84
+
85
+ # Many RSpec users commonly either run the entire suite or an individual
86
+ # file, and it's useful to allow more verbose output when running an
87
+ # individual spec file.
88
+ if config.files_to_run.one?
89
+ # Use the documentation formatter for detailed output,
90
+ # unless a formatter has already been configured
91
+ # (e.g. via a command-line flag).
92
+ config.default_formatter = 'doc'
93
+ end
94
+
95
+ # Print the 10 slowest examples and example groups at the
96
+ # end of the spec run, to help surface which specs are running
97
+ # particularly slow.
98
+ config.profile_examples = 10
99
+
100
+ # Run specs in random order to surface order dependencies. If you find an
101
+ # order dependency and want to debug it, you can fix the order by providing
102
+ # the seed, which is printed after each run.
103
+ # --seed 1234
104
+ config.order = :random
105
+
106
+ # Seed global randomization in this process using the `--seed` CLI option.
107
+ # Setting this allows you to use `--seed` to deterministically reproduce
108
+ # test failures related to randomization by passing the same `--seed` value
109
+ # as the one that triggered the failure.
110
+ Kernel.srand config.seed
111
+ =end
112
+ end
metadata ADDED
@@ -0,0 +1,368 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rails_blocks
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.5.4.pre.alpha.pre.2
5
+ platform: ruby
6
+ authors:
7
+ - Andrey Potetiurin
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-04-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '4.2'
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
22
+ version: 4.2.3
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '4.2'
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: 4.2.3
33
+ - !ruby/object:Gem::Dependency
34
+ name: combustion
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ~>
38
+ - !ruby/object:Gem::Version
39
+ version: 0.5.3
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ~>
45
+ - !ruby/object:Gem::Version
46
+ version: 0.5.3
47
+ - !ruby/object:Gem::Dependency
48
+ name: bundler
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: '1.7'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ~>
59
+ - !ruby/object:Gem::Version
60
+ version: '1.7'
61
+ - !ruby/object:Gem::Dependency
62
+ name: rspec
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ~>
66
+ - !ruby/object:Gem::Version
67
+ version: '3.3'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ~>
73
+ - !ruby/object:Gem::Version
74
+ version: '3.3'
75
+ - !ruby/object:Gem::Dependency
76
+ name: rspec-nc
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ! '>='
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ! '>='
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ - !ruby/object:Gem::Dependency
90
+ name: capybara
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - ! '>='
94
+ - !ruby/object:Gem::Version
95
+ version: '0'
96
+ type: :development
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ! '>='
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
103
+ - !ruby/object:Gem::Dependency
104
+ name: rspec-rails
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: '3.0'
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ~>
115
+ - !ruby/object:Gem::Version
116
+ version: '3.0'
117
+ - !ruby/object:Gem::Dependency
118
+ name: memfs
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ! '>='
122
+ - !ruby/object:Gem::Version
123
+ version: '0'
124
+ type: :development
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ! '>='
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
131
+ - !ruby/object:Gem::Dependency
132
+ name: spring
133
+ requirement: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - ! '>='
136
+ - !ruby/object:Gem::Version
137
+ version: '0'
138
+ type: :development
139
+ prerelease: false
140
+ version_requirements: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - ! '>='
143
+ - !ruby/object:Gem::Version
144
+ version: '0'
145
+ - !ruby/object:Gem::Dependency
146
+ name: guard
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - ! '>='
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
152
+ type: :development
153
+ prerelease: false
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - ! '>='
157
+ - !ruby/object:Gem::Version
158
+ version: '0'
159
+ - !ruby/object:Gem::Dependency
160
+ name: guard-rspec
161
+ requirement: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - ! '>='
164
+ - !ruby/object:Gem::Version
165
+ version: '0'
166
+ type: :development
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - ! '>='
171
+ - !ruby/object:Gem::Version
172
+ version: '0'
173
+ - !ruby/object:Gem::Dependency
174
+ name: pry
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - ! '>='
178
+ - !ruby/object:Gem::Version
179
+ version: '0'
180
+ type: :development
181
+ prerelease: false
182
+ version_requirements: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - ! '>='
185
+ - !ruby/object:Gem::Version
186
+ version: '0'
187
+ - !ruby/object:Gem::Dependency
188
+ name: pry-remote
189
+ requirement: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - ! '>='
192
+ - !ruby/object:Gem::Version
193
+ version: '0'
194
+ type: :development
195
+ prerelease: false
196
+ version_requirements: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - ! '>='
199
+ - !ruby/object:Gem::Version
200
+ version: '0'
201
+ - !ruby/object:Gem::Dependency
202
+ name: pry-nav
203
+ requirement: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - ! '>='
206
+ - !ruby/object:Gem::Version
207
+ version: '0'
208
+ type: :development
209
+ prerelease: false
210
+ version_requirements: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - ! '>='
213
+ - !ruby/object:Gem::Version
214
+ version: '0'
215
+ - !ruby/object:Gem::Dependency
216
+ name: terminal-notifier
217
+ requirement: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - ! '>='
220
+ - !ruby/object:Gem::Version
221
+ version: '0'
222
+ type: :development
223
+ prerelease: false
224
+ version_requirements: !ruby/object:Gem::Requirement
225
+ requirements:
226
+ - - ! '>='
227
+ - !ruby/object:Gem::Version
228
+ version: '0'
229
+ - !ruby/object:Gem::Dependency
230
+ name: terminal-notifier-guard
231
+ requirement: !ruby/object:Gem::Requirement
232
+ requirements:
233
+ - - ! '>='
234
+ - !ruby/object:Gem::Version
235
+ version: '0'
236
+ type: :development
237
+ prerelease: false
238
+ version_requirements: !ruby/object:Gem::Requirement
239
+ requirements:
240
+ - - ! '>='
241
+ - !ruby/object:Gem::Version
242
+ version: '0'
243
+ description: Gem helps build UI with blocks approach
244
+ email:
245
+ - potetiurin@gmail.com
246
+ executables: []
247
+ extensions: []
248
+ extra_rdoc_files: []
249
+ files:
250
+ - .gitignore
251
+ - .rspec
252
+ - .travis.yml
253
+ - Gemfile
254
+ - Guardfile
255
+ - LICENSE.txt
256
+ - README.md
257
+ - Rakefile
258
+ - app/assets/javascripts/block.coffee
259
+ - app/assets/javascripts/jblocks.coffee
260
+ - app/assets/javascripts/jquery_bem.coffee
261
+ - app/assets/javascripts/jquery_bem_copy.coffee
262
+ - app/assets/javascripts/main.coffee
263
+ - app/assets/javascripts/rails_blocks.js
264
+ - app/assets/stylesheets/rails_blocks.sass
265
+ - app/helpers/block_helper.rb
266
+ - app/views/rails_blocks/element.slim
267
+ - coffeelint.json
268
+ - config.ru
269
+ - config/spring.rb
270
+ - lib/rails_blocks.rb
271
+ - lib/rails_blocks/blocks/block.rb
272
+ - lib/rails_blocks/blocks/element.rb
273
+ - lib/rails_blocks/blocks/renderer.rb
274
+ - lib/rails_blocks/configuration.rb
275
+ - lib/rails_blocks/engine.rb
276
+ - lib/rails_blocks/exceptions.rb
277
+ - lib/rails_blocks/initializers/rails_blocks.rb
278
+ - lib/rails_blocks/levels.rb
279
+ - lib/rails_blocks/names.rb
280
+ - lib/rails_blocks/path.rb
281
+ - lib/rails_blocks/version.rb
282
+ - lib/tasks/rails_blocks.rake
283
+ - rails_blocks.gemspec
284
+ - spec/helpers/block_helper_spec.rb
285
+ - spec/internal/app/blocks/app/block3/_mod1.slim
286
+ - spec/internal/app/blocks/app/block3/_mod2_value2.slim
287
+ - spec/internal/app/blocks/app/block3/block3.slim
288
+ - spec/internal/app/blocks/common/block1/_mod1.slim
289
+ - spec/internal/app/blocks/common/block1/_mod2_value2.slim
290
+ - spec/internal/app/blocks/common/block1/block1.slim
291
+ - spec/internal/app/blocks/common/block2/__elem1.slim
292
+ - spec/internal/app/blocks/common/block2/__elem1_mod1.slim
293
+ - spec/internal/app/blocks/common/block2/__elem1_mod2_val2.slim
294
+ - spec/internal/app/blocks/common/block2/block2.slim
295
+ - spec/internal/app/blocks/common/block3/_mod1.slim
296
+ - spec/internal/app/blocks/common/block3/_mod2_value2.slim
297
+ - spec/internal/app/blocks/common/block3/block3.slim
298
+ - spec/internal/app/controllers/admin/admin_test_controller.rb
299
+ - spec/internal/app/controllers/admin_controller.rb
300
+ - spec/internal/app/controllers/application_controller.rb
301
+ - spec/internal/config/database.yml
302
+ - spec/internal/config/initializers/rails_blocks.rb
303
+ - spec/internal/config/routes.rb
304
+ - spec/internal/db/schema.rb
305
+ - spec/internal/log/.gitignore
306
+ - spec/internal/log/test.log
307
+ - spec/internal/public/favicon.ico
308
+ - spec/rails_blocks/blocks/block_spec.rb
309
+ - spec/rails_blocks/configuration_spec.rb
310
+ - spec/rails_blocks/names_spec.rb
311
+ - spec/rails_blocks/path_spec.rb
312
+ - spec/rails_blocks_spec.rb
313
+ - spec/spec_helper.rb
314
+ homepage: ''
315
+ licenses:
316
+ - MIT
317
+ metadata: {}
318
+ post_install_message:
319
+ rdoc_options: []
320
+ require_paths:
321
+ - lib
322
+ required_ruby_version: !ruby/object:Gem::Requirement
323
+ requirements:
324
+ - - ! '>='
325
+ - !ruby/object:Gem::Version
326
+ version: '0'
327
+ required_rubygems_version: !ruby/object:Gem::Requirement
328
+ requirements:
329
+ - - ! '>'
330
+ - !ruby/object:Gem::Version
331
+ version: 1.3.1
332
+ requirements: []
333
+ rubyforge_project:
334
+ rubygems_version: 2.4.5
335
+ signing_key:
336
+ specification_version: 4
337
+ summary: Rails plugin for work with some modification of BEM methodology
338
+ test_files:
339
+ - spec/helpers/block_helper_spec.rb
340
+ - spec/internal/app/blocks/app/block3/_mod1.slim
341
+ - spec/internal/app/blocks/app/block3/_mod2_value2.slim
342
+ - spec/internal/app/blocks/app/block3/block3.slim
343
+ - spec/internal/app/blocks/common/block1/_mod1.slim
344
+ - spec/internal/app/blocks/common/block1/_mod2_value2.slim
345
+ - spec/internal/app/blocks/common/block1/block1.slim
346
+ - spec/internal/app/blocks/common/block2/__elem1.slim
347
+ - spec/internal/app/blocks/common/block2/__elem1_mod1.slim
348
+ - spec/internal/app/blocks/common/block2/__elem1_mod2_val2.slim
349
+ - spec/internal/app/blocks/common/block2/block2.slim
350
+ - spec/internal/app/blocks/common/block3/_mod1.slim
351
+ - spec/internal/app/blocks/common/block3/_mod2_value2.slim
352
+ - spec/internal/app/blocks/common/block3/block3.slim
353
+ - spec/internal/app/controllers/admin/admin_test_controller.rb
354
+ - spec/internal/app/controllers/admin_controller.rb
355
+ - spec/internal/app/controllers/application_controller.rb
356
+ - spec/internal/config/database.yml
357
+ - spec/internal/config/initializers/rails_blocks.rb
358
+ - spec/internal/config/routes.rb
359
+ - spec/internal/db/schema.rb
360
+ - spec/internal/log/.gitignore
361
+ - spec/internal/log/test.log
362
+ - spec/internal/public/favicon.ico
363
+ - spec/rails_blocks/blocks/block_spec.rb
364
+ - spec/rails_blocks/configuration_spec.rb
365
+ - spec/rails_blocks/names_spec.rb
366
+ - spec/rails_blocks/path_spec.rb
367
+ - spec/rails_blocks_spec.rb
368
+ - spec/spec_helper.rb