menuizer 0.2.3 → 0.2.4

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 (5) hide show
  1. checksums.yaml +8 -8
  2. data/README.md +6 -0
  3. data/lib/menuizer/menu.rb +19 -15
  4. data/version.txt +1 -1
  5. metadata +2 -2
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NzIwOGUwMzY5NmIyZjE4MjQzMTFkZTZmMzM3YTNhZDFkZmFmMjM3Ng==
4
+ MGQzNmVjM2FiODQwYjIwZWVmYzFhYjUyN2VmN2IzNmUxNDdkYzkwNg==
5
5
  data.tar.gz: !binary |-
6
- YmU5MDE3MzAxNjdkNmFlOTI1ZDMxMmYxYzAzNGVjY2JjN2U2MGJmMA==
6
+ NmNmNjYyMzRhMmJhNjJiYTJlMWE4ZjM1MTBkYjU2ZGYzZjJkY2YwMg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- NWE3NzYyYTlmNjA5MmUyZjk5OTUwYmIyMGRhNjM1OGU5Nzk5MGFjYTlmMjU4
10
- Yzg0ZTljOWI5YmQ1YTIyZjc1ZmMzZjU1YjBhN2Y1OTk5YjEyMmZlZmI3MDdk
11
- ODkwOGQ1OTBiODNmMmI3YTBkZTdiMGQ3YzliMTk1MzAxNzM0ZDE=
9
+ NGM3ZGM1NGM0YTU5YzdhOWI3Y2ZiOWRkMTQyMjBjNzM0ZGY3ZWM4NzM5Y2I3
10
+ ZDQ2Y2JhZTU2ZTEzZTEwMTczZTAwM2M5OGY4OTE0MzQ1MDI5ZGVjNzE2ODhj
11
+ NWUwYzZhZGQ3NmQ0ZTlmYWQ0MmVmZTBiZjc2OTJlNWMzOTliNjQ=
12
12
  data.tar.gz: !binary |-
13
- YzNhMjRlOGExNmZkNDBiNGZkZDc1NjZiZTQ4YTMwNGU4YTU5ZTVhOTE1NGIx
14
- NTk3ZTNhNjBlNDMzNzQyM2NhMmVkMDc3ZjIxZDgyMTA5YmFhYzFmMjBlZWQ3
15
- MDFmMWM0YzBmZmU5NTFmNjE3NTdkMTVjZThhZGE0NjQ1YzBjZTY=
13
+ NjMwOTdiNmEzOWExNzRlZDE0YmI3YjYzY2NhNDAxMDQzZTQ0NTMzNTllN2M2
14
+ OTg1YjJlMDIzNTFhYjAxMjdmOTJjYTc0YjIxOTJiZDU1YjcyODU3YzE0ZGJi
15
+ MTI2YTY5MDg4NTc3YjM1ZWIzNjFmNzYxNzBlYzAyYzI2M2RiNTE=
data/README.md CHANGED
@@ -139,6 +139,12 @@ end
139
139
  <% end %>
140
140
  ```
141
141
 
142
+ ### get item
143
+
144
+ ```ruby
145
+ menuizer.item(:Widget) #=> menu item
146
+ ```
147
+
142
148
  ## Generators
143
149
 
144
150
  Generate menu items by ruby code:
data/lib/menuizer/menu.rb CHANGED
@@ -57,6 +57,10 @@ class Menuizer::Menu
57
57
  result.reverse
58
58
  end
59
59
 
60
+ def item(key)
61
+ map[key]
62
+ end
63
+
60
64
  def items
61
65
  @items ||= []
62
66
  end
@@ -91,34 +95,34 @@ class Menuizer::Menu
91
95
  def add_item(title, opts)
92
96
  model = to_model title
93
97
 
94
- unless children = opts.delete(:children)
95
- item = @item_class.new(
96
- type: :item,
98
+ props = {
97
99
  parent: @parent,
98
100
  namespace: @namespace,
99
101
  title: title,
100
102
  model: model,
103
+ }
104
+
105
+ unless children = opts.delete(:children)
106
+ item = @item_class.new(
101
107
  **opts,
108
+ type: :item,
109
+ **props,
102
110
  )
103
- map[title] = item
104
- current << item
105
111
  else
106
- owner = @parent
107
- parents = @current
108
- item = @parent = @item_class.new(
112
+ item = @item_class.new(
113
+ **opts,
109
114
  type: :tree,
110
115
  children: [],
111
- parent: owner,
112
- namespace: @namespace,
113
- title: title,
114
- model: model,
115
- **opts,
116
+ **props,
116
117
  )
117
- @current = item.children
118
+ parents, owner = @current, @parent
119
+ @current, @parent = item.children, item
118
120
  load_data children
119
121
  @current, @parent = parents, owner
120
- current << item
121
122
  end
123
+
124
+ current << item
125
+ map[title] = item
122
126
  end
123
127
  def to_model(title)
124
128
  return unless title.is_a?(Symbol)
data/version.txt CHANGED
@@ -1 +1 @@
1
- 0.2.3
1
+ 0.2.4
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: menuizer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - shun
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-10-11 00:00:00.000000000 Z
11
+ date: 2016-10-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler