bemer 0.5.0 → 0.6.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/README.md +3 -6
- data/docs//320/232/320/276/320/275/321/202/320/265/320/272/321/201/321/202-/321/203/320/267/320/273/320/260.md +2 -2
- data/docs//320/240/320/265/320/266/320/270/320/274/321/213.md +2 -2
- data/docs//320/244/320/260/320/270/314/206/320/273/320/276/320/262/320/260/321/217-/321/201/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260.md +12 -12
- data/docs//320/245/320/265/320/273/320/277/320/265/321/200-define_templates.md +3 -3
- data/docs//320/250/320/260/320/261/320/273/320/276/320/275/321/213.md +1 -1
- data/lib/bemer/builders/template.rb +1 -1
- data/lib/bemer/builders/template_list.rb +2 -2
- data/lib/bemer/builders/tree/element.rb +1 -1
- data/lib/bemer/builders/tree.rb +2 -2
- data/lib/bemer/component.rb +1 -1
- data/lib/bemer/context_extentions/template.rb +2 -2
- data/lib/bemer/helpers.rb +5 -5
- data/lib/bemer/path_resolver.rb +10 -6
- data/lib/bemer/pipeline/handler.rb +3 -3
- data/lib/bemer/pipeline.rb +2 -2
- data/lib/bemer/tag.rb +1 -1
- data/lib/bemer/template_list.rb +1 -1
- data/lib/bemer/tree/base_node.rb +2 -2
- data/lib/bemer/tree/node.rb +3 -3
- data/lib/bemer/tree.rb +1 -1
- data/lib/bemer/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8c61ceea37aaaf31ca46dfc01af60ddade3b934962e5fdfbc87b8cb3be867b29
|
4
|
+
data.tar.gz: 1f56488269559e0ee07b52da4369b8a57fb33fced4204ff0ab5209e2e60a35c8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5d18f1a45d3ea28fbdc17ab7f854fa99ca6b2468dff970855a942eba28674cc4fb09ff8b9403aaa8da76a8b24d99480579dcd0ae78be53dfdd0fba33cca6d914
|
7
|
+
data.tar.gz: 6d9c2c5effef10213f13638cb8b19c1a4bfa5fd88d3774e2be3c12f91d8bc757836fbb8c5f435d4e6a132db1896f8178c33ddaaae079dab211c34b99d4d54373
|
data/README.md
CHANGED
@@ -12,9 +12,6 @@ Additional resources:
|
|
12
12
|
1. [`bemer-bootstrap`](https://github.com/vill/bemer-bootstrap) - Reusable UI components of `Bootstrap`.
|
13
13
|
1. [Ruby on Rails application](https://github.com/vill/bemer-example) using `bemer` and [`bemer-bootstrap`](https://github.com/vill/bemer-bootstrap).
|
14
14
|
|
15
|
-
*Please refer to the [README.ru.md](README.ru.md) file for instructions in Russian.*
|
16
|
-
|
17
|
-
|
18
15
|
## Installation
|
19
16
|
|
20
17
|
Add it to your Gemfile:
|
@@ -78,7 +75,7 @@ app/
|
|
78
75
|
| | ├── common/
|
79
76
|
| | | ├── carousel/
|
80
77
|
| | | | ├── index.slim
|
81
|
-
| | | | ├──
|
78
|
+
| | | | ├── bemhtml.slim
|
82
79
|
| | | | ├── index.js
|
83
80
|
| | | | ├── index.scss
|
84
81
|
| | | | └── ...
|
@@ -165,7 +162,7 @@ app/
|
|
165
162
|
| | ├── common/
|
166
163
|
| | | ├── carousel/
|
167
164
|
| | | | ├── index.slim
|
168
|
-
| | | | ├──
|
165
|
+
| | | | ├── bemhtml.slim
|
169
166
|
| | | | ├── index.js
|
170
167
|
| | | | ├── index.scss
|
171
168
|
| | | | └── ...
|
@@ -250,7 +247,7 @@ Tree structure of the [Carousel component from Bootstrap](https://getbootstrap.c
|
|
250
247
|
|
251
248
|
[Default template](docs/%D0%A5%D0%B5%D0%BB%D0%BF%D0%B5%D1%80-define_templates.md):
|
252
249
|
```slim
|
253
|
-
/ app/frontend/components/common/carousel/
|
250
|
+
/ app/frontend/components/common/carousel/bemhtml.slim
|
254
251
|
|
255
252
|
= define_templates do |template|
|
256
253
|
= template.elem(mods: :active).add_cls :active
|
@@ -178,7 +178,7 @@ HTML тег изменить на `small` если текущая сущност
|
|
178
178
|
Позволяет вызвать любой основной режим (`Symbol`) в контексте текущего узла, дополнительно можно передать параметры которые будут доступны в `params`.
|
179
179
|
|
180
180
|
```slim
|
181
|
-
/ Содержимое файла
|
181
|
+
/ Содержимое файла bemhtml.slim компонента alert
|
182
182
|
= define_templates do |template|
|
183
183
|
= template.block(:alert).add_cls ->(node) { "alert-#{node.params.fetch(:type, :info)}" }
|
184
184
|
```
|
@@ -195,7 +195,7 @@ HTML тег изменить на `small` если текущая сущност
|
|
195
195
|
Позволяет вызвать следующий по очередности шаблон для текущего режима, дополнительно можно передать параметры которые будут доступны в `params`.
|
196
196
|
|
197
197
|
```slim
|
198
|
-
/ Содержимое файла
|
198
|
+
/ Содержимое файла bemhtml.slim компонента alert
|
199
199
|
= define_templates do |template|
|
200
200
|
= template.block(:alert).add_cls ->(node) { "alert-#{node.params.fetch(:type, :info)}" }
|
201
201
|
```
|
@@ -20,7 +20,7 @@ app/
|
|
20
20
|
| ├── common/
|
21
21
|
| | ├── alert/
|
22
22
|
| | | ├── index.html.slim
|
23
|
-
| | | ├──
|
23
|
+
| | | ├── bemhtml.slim
|
24
24
|
| | | ├── index.js
|
25
25
|
| | | └── index.css
|
26
26
|
| | └── ...
|
@@ -63,7 +63,7 @@ app/
|
|
63
63
|
```
|
64
64
|
Возможный вариант шаблонов по умолчанию для компонента `alert`:
|
65
65
|
```slim
|
66
|
-
/ Содержимое файла
|
66
|
+
/ Содержимое файла bemhtml.slim компонента alert
|
67
67
|
= define_templates do |template|
|
68
68
|
= template.block(:alert).add_cls :alert_info
|
69
69
|
```
|
@@ -12,7 +12,7 @@ app/
|
|
12
12
|
| | └── ...
|
13
13
|
| ├── top_navbar/
|
14
14
|
| | ├── index.html.slim
|
15
|
-
| | ├──
|
15
|
+
| | ├── bemhtml.slim
|
16
16
|
| | ├── index.js
|
17
17
|
| | ├── index.scss
|
18
18
|
| | └── ...
|
@@ -26,7 +26,7 @@ app/
|
|
26
26
|
|
27
27
|
1. Каталог **обязательно** должен содержать индексный файл для технологии HTML (это может быть: `index.html`, `index.html.slim`, `index.html.erb` и т.д.), который [описывает структуру компонента](Создание-и-использование-UI-компонент.md), используя для этого любой шаблонизатор (`ERB`, `Slim`, `HAML` и др.) или только HTML код.
|
28
28
|
|
29
|
-
1. Если индексный файл технологии HTML для создания структуры (дерева) компонента [использует хелпер `define_component`](Хелпер-define_component.md), тогда каталог может содержать индексный файл для [шаблонов по умолчанию](Хелпер-define_templates.md) (технология `bemhtml`), он должен называться `
|
29
|
+
1. Если индексный файл технологии HTML для создания структуры (дерева) компонента [использует хелпер `define_component`](Хелпер-define_component.md), тогда каталог может содержать индексный файл для [шаблонов по умолчанию](Хелпер-define_templates.md) (технология `bemhtml`), он должен называться `bemhtml` с обязательным указанием шаблонизатора например: `bemhtml.erb`, `bemhtml.slim` и т.д.
|
30
30
|
|
31
31
|
1. Все остальные технологии (`js`, `css`, `md` и т.д.) считаются дополнительными и их можно добавлять по мере необходимости, имена файлов могут быть любыми но для единообразия и удобства лучше использовать `index` в качестве имени:
|
32
32
|
|
@@ -67,13 +67,13 @@ app/
|
|
67
67
|
| ├── common/
|
68
68
|
| | ├── modal/
|
69
69
|
| | | ├── index.html.slim
|
70
|
-
| | | ├──
|
70
|
+
| | | ├── bemhtml.slim
|
71
71
|
| | | ├── index.js
|
72
72
|
| | | ├── index.scss
|
73
73
|
| | | └── ...
|
74
74
|
| | ├── top_navbar/
|
75
75
|
| | | ├── index.html.slim
|
76
|
-
| | | ├──
|
76
|
+
| | | ├── bemhtml.slim
|
77
77
|
| | | ├── index.js
|
78
78
|
| | | ├── index.scss
|
79
79
|
| | | └── ...
|
@@ -81,7 +81,7 @@ app/
|
|
81
81
|
| ├── admin/
|
82
82
|
| | ├── top_navbar/
|
83
83
|
| | | ├── index.html.slim
|
84
|
-
| | | ├──
|
84
|
+
| | | ├── bemhtml.slim
|
85
85
|
| | | ├── index.js
|
86
86
|
| | | ├── index.scss
|
87
87
|
| | | └── ...
|
@@ -89,7 +89,7 @@ app/
|
|
89
89
|
| ├── user/
|
90
90
|
| | ├── top_navbar/
|
91
91
|
| | | ├── index.html.slim
|
92
|
-
| | | ├──
|
92
|
+
| | | ├── bemhtml.slim
|
93
93
|
| | | ├── index.js
|
94
94
|
| | | ├── index.scss
|
95
95
|
| | | └── ...
|
@@ -108,13 +108,13 @@ app/
|
|
108
108
|
| ├── common/
|
109
109
|
| | ├── modal/
|
110
110
|
| | | ├── index.html.slim
|
111
|
-
| | | ├──
|
111
|
+
| | | ├── bemhtml.slim
|
112
112
|
| | | ├── index.js
|
113
113
|
| | | ├── index.scss
|
114
114
|
| | | └── ...
|
115
115
|
| | ├── top_navbar/
|
116
116
|
| | | ├── index.html.slim
|
117
|
-
| | | ├──
|
117
|
+
| | | ├── bemhtml.slim
|
118
118
|
| | | ├── index.js
|
119
119
|
| | | ├── index.scss
|
120
120
|
| | | └── ...
|
@@ -122,7 +122,7 @@ app/
|
|
122
122
|
| ├── desktop/
|
123
123
|
| | ├── top_navbar/
|
124
124
|
| | | ├── index.html.slim
|
125
|
-
| | | ├──
|
125
|
+
| | | ├── bemhtml.slim
|
126
126
|
| | | ├── index.js
|
127
127
|
| | | ├── index.scss
|
128
128
|
| | | └── ...
|
@@ -130,7 +130,7 @@ app/
|
|
130
130
|
| ├── touch_pad/
|
131
131
|
| | ├── top_navbar/
|
132
132
|
| | | ├── index.html.slim
|
133
|
-
| | | ├──
|
133
|
+
| | | ├── bemhtml.slim
|
134
134
|
| | | ├── index.js
|
135
135
|
| | | ├── index.scss
|
136
136
|
| | | └── ...
|
@@ -150,7 +150,7 @@ app/
|
|
150
150
|
| | ├── index.html.slim
|
151
151
|
| | ├── index.html+phone.slim
|
152
152
|
| | ├── index.html+tablet.slim
|
153
|
-
| | ├──
|
153
|
+
| | ├── bemhtml.slim
|
154
154
|
| | ├── index.js
|
155
155
|
| | ├── index.scss
|
156
156
|
| | └── ...
|
@@ -158,7 +158,7 @@ app/
|
|
158
158
|
| | ├── index.html.slim
|
159
159
|
| | ├── index.html+phone.slim
|
160
160
|
| | ├── index.html+tablet.slim
|
161
|
-
| | ├──
|
161
|
+
| | ├── bemhtml.slim
|
162
162
|
| | ├── index.js
|
163
163
|
| | ├── index.scss
|
164
164
|
| | └── ...
|
@@ -17,7 +17,7 @@ app/
|
|
17
17
|
├── bemer_components/
|
18
18
|
| ├── panel/
|
19
19
|
| | ├── index.html.slim
|
20
|
-
| | ├──
|
20
|
+
| | ├── bemhtml.slim
|
21
21
|
| | ├── index.js
|
22
22
|
| | └── index.css
|
23
23
|
| └── ...
|
@@ -71,11 +71,11 @@ app/
|
|
71
71
|
/ <div class="panel-footer">Panel footer</div>
|
72
72
|
/ </div>
|
73
73
|
```
|
74
|
-
С помощью файла `
|
74
|
+
С помощью файла `bemhtml.slim` можно задать дефолтные шаблоны для компонента, которые можно будет переопределить при вызове `render_component` или `refine_component`.
|
75
75
|
|
76
76
|
Возможный вариант шаблонов по умолчанию для компонента `panel`:
|
77
77
|
```slim
|
78
|
-
/ Содержимое файла
|
78
|
+
/ Содержимое файла bemhtml.slim компонента panel
|
79
79
|
= define_templates do |template|
|
80
80
|
= template.block(:panel).add_cls :panel_default
|
81
81
|
```
|
@@ -44,7 +44,7 @@ module Bemer
|
|
44
44
|
block = @block.eql?('*') ? block : @block
|
45
45
|
elem = @element.nil? || @element.eql?('*') ? elem : @element
|
46
46
|
params = { **new_options, **options, condition: condition, block: block, elem: elem }
|
47
|
-
builder = Builders::Template.new(templates, params)
|
47
|
+
builder = Builders::Template.new(templates, **params)
|
48
48
|
|
49
49
|
block_given? ? yield(builder) : builder
|
50
50
|
end
|
@@ -10,7 +10,7 @@ module Bemer
|
|
10
10
|
def block(name = '*', condition = true, **options)
|
11
11
|
params = { **options, condition: condition, block: name, elem: nil }
|
12
12
|
|
13
|
-
builder = Builders::Template.new(templates, params)
|
13
|
+
builder = Builders::Template.new(templates, **params)
|
14
14
|
|
15
15
|
block_given? ? yield(builder) : builder
|
16
16
|
end
|
@@ -18,7 +18,7 @@ module Bemer
|
|
18
18
|
def elem(name = '*', condition = true, block: '*', **options)
|
19
19
|
params = { **options, condition: condition, block: block || '*', elem: name }
|
20
20
|
|
21
|
-
builder = Builders::Template.new(templates, params)
|
21
|
+
builder = Builders::Template.new(templates, **params)
|
22
22
|
|
23
23
|
block_given? ? yield(builder) : builder
|
24
24
|
end
|
data/lib/bemer/builders/tree.rb
CHANGED
@@ -8,11 +8,11 @@ module Bemer
|
|
8
8
|
end
|
9
9
|
|
10
10
|
def block(name = '', **options, &content)
|
11
|
-
tree.add_node(name, options, &content)
|
11
|
+
tree.add_node(name, **options, &content)
|
12
12
|
end
|
13
13
|
|
14
14
|
def elem(block = '', name = '', **options, &content)
|
15
|
-
tree.add_node(block, name, options, &content)
|
15
|
+
tree.add_node(block, name, **options, &content)
|
16
16
|
end
|
17
17
|
|
18
18
|
def text(content = nil, &callback)
|
data/lib/bemer/component.rb
CHANGED
@@ -4,11 +4,11 @@ module Bemer
|
|
4
4
|
module ContextExtentions
|
5
5
|
module Template
|
6
6
|
def apply_next(**options)
|
7
|
-
node.apply_next(template, options)
|
7
|
+
node.apply_next(template, **options)
|
8
8
|
end
|
9
9
|
|
10
10
|
def apply(mode, **options)
|
11
|
-
node.apply(mode, template, options)
|
11
|
+
node.apply(mode, template, **options)
|
12
12
|
end
|
13
13
|
end
|
14
14
|
end
|
data/lib/bemer/helpers.rb
CHANGED
@@ -3,11 +3,11 @@
|
|
3
3
|
module Bemer
|
4
4
|
module Helpers
|
5
5
|
def block_tag(name = '', **options, &content)
|
6
|
-
Bemer::Tag.new(name, options, &content).render
|
6
|
+
Bemer::Tag.new(name, **options, &content).render
|
7
7
|
end
|
8
8
|
|
9
9
|
def elem_tag(block = '', element = '', **options, &content)
|
10
|
-
Bemer::Tag.new(block, element, options, &content).render
|
10
|
+
Bemer::Tag.new(block, element, **options, &content).render
|
11
11
|
end
|
12
12
|
|
13
13
|
# Использовать mix
|
@@ -30,7 +30,7 @@ module Bemer
|
|
30
30
|
end
|
31
31
|
|
32
32
|
def render_component(path, **options, &block)
|
33
|
-
Bemer::TemplateList.new(self, path, options).compile(&block)
|
33
|
+
Bemer::TemplateList.new(self, path, **options).compile(&block)
|
34
34
|
end
|
35
35
|
|
36
36
|
alias refine_component render_component
|
@@ -40,7 +40,7 @@ module Bemer
|
|
40
40
|
end
|
41
41
|
|
42
42
|
def define_component(**options, &block)
|
43
|
-
Bemer::Component.new(self).render(options, &block)
|
43
|
+
Bemer::Component.new(self).render(**options, &block)
|
44
44
|
end
|
45
45
|
|
46
46
|
def component_pack(&block)
|
@@ -58,7 +58,7 @@ module Bemer
|
|
58
58
|
def bem_attrs_for(block = '', element = nil, **options)
|
59
59
|
js = options[:js].nil? ? true : options.delete(:js)
|
60
60
|
|
61
|
-
Bemer::EntityBuilder.new(block, element, options.merge(bem: true, js: js)).attrs
|
61
|
+
Bemer::EntityBuilder.new(block, element, **options.merge(bem: true, js: js)).attrs
|
62
62
|
end
|
63
63
|
end
|
64
64
|
end
|
data/lib/bemer/path_resolver.rb
CHANGED
@@ -6,14 +6,18 @@ module Bemer
|
|
6
6
|
@view = view
|
7
7
|
end
|
8
8
|
|
9
|
-
def resolve(name, partial = false)
|
10
|
-
|
11
|
-
|
12
|
-
|
9
|
+
def resolve(name, partial = false) # rubocop:disable Metrics/AbcSize
|
10
|
+
name = name.to_s
|
11
|
+
virtual_dir = File.dirname(view.instance_variable_get(:@virtual_path))
|
12
|
+
dirs = [virtual_dir, File.dirname(name).delete('.')].reject(&:blank?)
|
13
|
+
prefixes = [File.join(*dirs).to_s]
|
14
|
+
format = File.extname(name).delete('.') unless partial
|
15
|
+
basename = File.basename(name, '.*')
|
16
|
+
options = { formats: [format.to_sym] } if format
|
13
17
|
|
14
|
-
return
|
18
|
+
return name unless view.lookup_context.exists?(basename, prefixes, partial, **options.to_h)
|
15
19
|
|
16
|
-
File.join(
|
20
|
+
File.join(virtual_dir, name).to_s
|
17
21
|
end
|
18
22
|
|
19
23
|
protected
|
@@ -21,16 +21,16 @@ module Bemer
|
|
21
21
|
def apply_next(current_template, node, **params)
|
22
22
|
position = priorities[current_template.mode][current_template.object_id] + 1
|
23
23
|
|
24
|
-
apply_template(current_template.mode, node, position, params)
|
24
|
+
apply_template(current_template.mode, node, position, **params)
|
25
25
|
end
|
26
26
|
|
27
27
|
def apply(mode, current_template, node, **params)
|
28
28
|
return unless allowable_mode?(mode) && compatible_modes?(mode, current_template.mode)
|
29
29
|
|
30
30
|
if current_template.mode.eql?(mode)
|
31
|
-
apply_next(current_template, node, params)
|
31
|
+
apply_next(current_template, node, **params)
|
32
32
|
else
|
33
|
-
apply_template(mode, node, params)
|
33
|
+
apply_template(mode, node, **params)
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
data/lib/bemer/pipeline.rb
CHANGED
@@ -48,11 +48,11 @@ module Bemer
|
|
48
48
|
end
|
49
49
|
|
50
50
|
def apply_next(template, node, **params)
|
51
|
-
handler_by(node.name).apply_next(template, node, params)
|
51
|
+
handler_by(node.name).apply_next(template, node, **params)
|
52
52
|
end
|
53
53
|
|
54
54
|
def apply(mode, template, node, **params)
|
55
|
-
handler_by(node.name).apply(mode, template, node, params)
|
55
|
+
handler_by(node.name).apply(mode, template, node, **params)
|
56
56
|
end
|
57
57
|
|
58
58
|
protected
|
data/lib/bemer/tag.rb
CHANGED
@@ -8,7 +8,7 @@ module Bemer
|
|
8
8
|
|
9
9
|
def initialize(block = '', element = nil, **options, &content)
|
10
10
|
@bem_cascade = options[:bem_cascade]
|
11
|
-
@tag_builder = TagBuilder.new(block, element, options, &content)
|
11
|
+
@tag_builder = TagBuilder.new(block, element, **options, &content)
|
12
12
|
@renderer = Renderer.new
|
13
13
|
end
|
14
14
|
|
data/lib/bemer/template_list.rb
CHANGED
data/lib/bemer/tree/base_node.rb
CHANGED
@@ -13,8 +13,8 @@ module Bemer
|
|
13
13
|
:content, :elem, :elem?, :element?, :js, :mix, :mods, :name, :tag
|
14
14
|
|
15
15
|
def initialize(tree, block = '', element = nil, **options, &content)
|
16
|
-
@entity = Entity.new(block, element, options, &content)
|
17
|
-
@entity_builder = EntityBuilder.new(block, element, options, &content)
|
16
|
+
@entity = Entity.new(block, element, **options, &content)
|
17
|
+
@entity_builder = EntityBuilder.new(block, element, **options, &content)
|
18
18
|
@renderer = Renderer.new
|
19
19
|
@tree = tree
|
20
20
|
end
|
data/lib/bemer/tree/node.rb
CHANGED
@@ -12,7 +12,7 @@ module Bemer
|
|
12
12
|
alias need_replace? need_replace
|
13
13
|
|
14
14
|
def initialize(tree, block = '', element = nil, **options, &content)
|
15
|
-
super(tree, block, element, options, &content)
|
15
|
+
super(tree, block, element, **options, &content)
|
16
16
|
|
17
17
|
@applied_modes = Pipeline::MODES.map { |mode| [mode, false] }.to_h
|
18
18
|
@children = []
|
@@ -62,11 +62,11 @@ module Bemer
|
|
62
62
|
end
|
63
63
|
|
64
64
|
def apply_next(template, **params)
|
65
|
-
tree.pipeline.apply_next(template, self, params)
|
65
|
+
tree.pipeline.apply_next(template, self, **params)
|
66
66
|
end
|
67
67
|
|
68
68
|
def apply(mode, template, **params)
|
69
|
-
tree.pipeline.apply(mode, template, self, params)
|
69
|
+
tree.pipeline.apply(mode, template, self, **params)
|
70
70
|
end
|
71
71
|
|
72
72
|
protected
|
data/lib/bemer/tree.rb
CHANGED
@@ -66,7 +66,7 @@ module Bemer
|
|
66
66
|
bem_cascade = inherited_bem_cascade if bem_cascade.nil?
|
67
67
|
new_options = { **params, bem_cascade: bem_cascade, **options }
|
68
68
|
|
69
|
-
add Node.new(self, block, element, new_options, &content)
|
69
|
+
add Node.new(self, block, element, **new_options, &content)
|
70
70
|
end
|
71
71
|
|
72
72
|
def add_text_node(content = nil, &callback)
|
data/lib/bemer/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bemer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Grigorev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-05-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: railties
|
@@ -160,7 +160,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
160
160
|
- !ruby/object:Gem::Version
|
161
161
|
version: 2.2.0
|
162
162
|
requirements: []
|
163
|
-
rubygems_version: 3.4.
|
163
|
+
rubygems_version: 3.4.12
|
164
164
|
signing_key:
|
165
165
|
specification_version: 4
|
166
166
|
summary: Build reusable UI components for Rails applications with the ability to use
|