cm-admin 1.4.2 → 1.4.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +22 -20
- data/app/assets/stylesheets/cm_admin/base/form.scss +28 -0
- data/app/assets/stylesheets/cm_admin/components/_drawer.scss +3 -0
- data/app/controllers/cm_admin/resource_controller.rb +2 -2
- data/app/views/cm_admin/main/_show_content.html.slim +1 -1
- data/app/views/cm_admin/main/_tabs.html.slim +4 -1
- data/app/views/cm_admin/main/history.html.slim +1 -1
- data/app/views/cm_admin/main/show.html.slim +1 -1
- data/app/views/layouts/_custom_action_modal.html.slim +1 -1
- data/app/views/layouts/cm_admin.html.slim +3 -3
- data/cm_admin.gemspec +17 -16
- data/lib/cm_admin/version.rb +1 -1
- data/lib/cm_admin/view_helpers/field_display_helper.rb +2 -1
- metadata +31 -27
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 111a7989194da82d40d228465f63a6cd20142e17510b10debbd23f6036c70cf7
|
4
|
+
data.tar.gz: ed711867e9c03d15fe18d74c44dc802332c8e044ed4a6132007f2a71ff6034d7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ce7e56508d5482eb781bf7315b43d90ab49542f89b3e9f66734d85834f72157da858a0edd1a6566da4438cf96850637fb9ca37632f87a58005ad391d3fcfd409
|
7
|
+
data.tar.gz: 918556deeefdb621deb50e6715992f255638060bce3f448b0c7ed0d322c60d5251a81de35bacbc4b73ccae4eb943c55359b09cde1b750a76ef4fee59fe1d4e29
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
cm-admin (1.4.
|
4
|
+
cm-admin (1.4.4)
|
5
5
|
caxlsx_rails
|
6
6
|
cocoon (~> 1.2.15)
|
7
7
|
csv-importer (~> 0.8.2)
|
@@ -87,7 +87,7 @@ GEM
|
|
87
87
|
ice_nine (~> 0.11.0)
|
88
88
|
thread_safe (~> 0.3, >= 0.3.1)
|
89
89
|
builder (3.2.4)
|
90
|
-
caxlsx (
|
90
|
+
caxlsx (4.0.0)
|
91
91
|
htmlentities (~> 4.3, >= 4.3.4)
|
92
92
|
marcel (~> 1.0)
|
93
93
|
nokogiri (~> 1.10, >= 1.10.4)
|
@@ -102,23 +102,24 @@ GEM
|
|
102
102
|
crass (1.0.6)
|
103
103
|
csv-importer (0.8.2)
|
104
104
|
virtus
|
105
|
-
date (3.3.
|
105
|
+
date (3.3.4)
|
106
106
|
descendants_tracker (0.0.4)
|
107
107
|
thread_safe (~> 0.3, >= 0.3.1)
|
108
108
|
diff-lcs (1.4.4)
|
109
109
|
erubi (1.12.0)
|
110
|
-
globalid (1.1
|
111
|
-
activesupport (>=
|
110
|
+
globalid (1.2.1)
|
111
|
+
activesupport (>= 6.1)
|
112
112
|
htmlentities (4.3.4)
|
113
113
|
i18n (1.14.1)
|
114
114
|
concurrent-ruby (~> 1.0)
|
115
115
|
ice_nine (0.11.2)
|
116
|
-
importmap-rails (
|
116
|
+
importmap-rails (2.0.1)
|
117
117
|
actionpack (>= 6.0.0)
|
118
|
+
activesupport (>= 6.0.0)
|
118
119
|
railties (>= 6.0.0)
|
119
120
|
json (2.6.2)
|
120
121
|
local_time (2.1.0)
|
121
|
-
loofah (2.
|
122
|
+
loofah (2.22.0)
|
122
123
|
crass (~> 1.0.2)
|
123
124
|
nokogiri (>= 1.12.0)
|
124
125
|
mail (2.8.1)
|
@@ -128,19 +129,19 @@ GEM
|
|
128
129
|
net-smtp
|
129
130
|
marcel (1.0.2)
|
130
131
|
method_source (1.0.0)
|
131
|
-
mini_mime (1.1.
|
132
|
+
mini_mime (1.1.5)
|
132
133
|
minitest (5.18.1)
|
133
|
-
net-imap (0.
|
134
|
+
net-imap (0.4.9.1)
|
134
135
|
date
|
135
136
|
net-protocol
|
136
137
|
net-pop (0.1.2)
|
137
138
|
net-protocol
|
138
|
-
net-protocol (0.2.
|
139
|
+
net-protocol (0.2.2)
|
139
140
|
timeout
|
140
|
-
net-smtp (0.
|
141
|
+
net-smtp (0.4.0.1)
|
141
142
|
net-protocol
|
142
|
-
nio4r (2.
|
143
|
-
nokogiri (1.
|
143
|
+
nio4r (2.7.0)
|
144
|
+
nokogiri (1.16.0-arm64-darwin)
|
144
145
|
racc (~> 1.4)
|
145
146
|
pagy (4.11.0)
|
146
147
|
parallel (1.22.1)
|
@@ -148,9 +149,9 @@ GEM
|
|
148
149
|
ast (~> 2.4.1)
|
149
150
|
pundit (2.2.0)
|
150
151
|
activesupport (>= 3.0.0)
|
151
|
-
racc (1.7.
|
152
|
+
racc (1.7.3)
|
152
153
|
rack (2.2.7)
|
153
|
-
rack-proxy (0.7.
|
154
|
+
rack-proxy (0.7.7)
|
154
155
|
rack
|
155
156
|
rack-test (2.1.0)
|
156
157
|
rack (>= 1.3)
|
@@ -168,7 +169,7 @@ GEM
|
|
168
169
|
activesupport (= 7.0.5.1)
|
169
170
|
bundler (>= 1.15.0)
|
170
171
|
railties (= 7.0.5.1)
|
171
|
-
rails-dom-testing (2.
|
172
|
+
rails-dom-testing (2.2.0)
|
172
173
|
activesupport (>= 5.0.0)
|
173
174
|
minitest
|
174
175
|
nokogiri (>= 1.6)
|
@@ -225,10 +226,10 @@ GEM
|
|
225
226
|
temple (>= 0.7.6, < 0.9)
|
226
227
|
tilt (>= 2.0.6, < 2.1)
|
227
228
|
temple (0.8.2)
|
228
|
-
thor (1.
|
229
|
+
thor (1.3.0)
|
229
230
|
thread_safe (0.3.6)
|
230
231
|
tilt (2.0.10)
|
231
|
-
timeout (0.4.
|
232
|
+
timeout (0.4.1)
|
232
233
|
tzinfo (2.0.6)
|
233
234
|
concurrent-ruby (~> 1.0)
|
234
235
|
unicode-display_width (2.3.0)
|
@@ -241,13 +242,14 @@ GEM
|
|
241
242
|
rack-proxy (>= 0.6.1)
|
242
243
|
railties (>= 5.2)
|
243
244
|
semantic_range (>= 2.3.0)
|
244
|
-
websocket-driver (0.7.
|
245
|
+
websocket-driver (0.7.6)
|
245
246
|
websocket-extensions (>= 0.1.0)
|
246
247
|
websocket-extensions (0.1.5)
|
247
|
-
zeitwerk (2.6.
|
248
|
+
zeitwerk (2.6.12)
|
248
249
|
|
249
250
|
PLATFORMS
|
250
251
|
arm64-darwin-20
|
252
|
+
arm64-darwin-22
|
251
253
|
x86_64-linux
|
252
254
|
|
253
255
|
DEPENDENCIES
|
@@ -72,3 +72,31 @@
|
|
72
72
|
visibility: hidden;
|
73
73
|
}
|
74
74
|
}
|
75
|
+
|
76
|
+
.form-modal {
|
77
|
+
.form-info-text {
|
78
|
+
@extend .text-body, .mb-3;
|
79
|
+
}
|
80
|
+
}
|
81
|
+
|
82
|
+
// Simple form UI
|
83
|
+
.simple_form {
|
84
|
+
.input {
|
85
|
+
@extend .mb-3;
|
86
|
+
}
|
87
|
+
label {
|
88
|
+
@extend .form-label;
|
89
|
+
}
|
90
|
+
input {
|
91
|
+
@extend .form-control;
|
92
|
+
}
|
93
|
+
input[type="submit"] {
|
94
|
+
width: auto;
|
95
|
+
float: right;
|
96
|
+
@extend .mt-3;
|
97
|
+
}
|
98
|
+
.select-2 {
|
99
|
+
appearance: auto;
|
100
|
+
@extend .form-control;
|
101
|
+
}
|
102
|
+
}
|
@@ -35,7 +35,7 @@ module CmAdmin
|
|
35
35
|
resource_identifier
|
36
36
|
respond_to do |format|
|
37
37
|
if request.xhr?
|
38
|
-
format.html { render partial: '/cm_admin/main/show_content' }
|
38
|
+
format.html { render partial: '/cm_admin/main/show_content', locals: { via_xhr: true } }
|
39
39
|
else
|
40
40
|
format.html { render '/cm_admin/main/' + action_name }
|
41
41
|
end
|
@@ -162,7 +162,7 @@ module CmAdmin
|
|
162
162
|
format.html { redirect_to request.referrer, alert: "<b>#{@action.name.titleize} is unsuccessful</b><br /><ul>#{error_messages}</ul>" }
|
163
163
|
end
|
164
164
|
rescue => exception
|
165
|
-
format.html { redirect_to request.referrer, alert: "<b>#{@action.name.titleize} is unsuccessful</b><br /><
|
165
|
+
format.html { redirect_to request.referrer, alert: "<div><b>#{@action.name.titleize} is unsuccessful</b><br /><ul><li>#{exception.message}</li></ul></div>" }
|
166
166
|
end
|
167
167
|
end
|
168
168
|
end
|
@@ -4,7 +4,10 @@ ul.tabs
|
|
4
4
|
- if nav_item.custom_action.empty? || (nav_item.custom_action.present? && policy([:cm_admin, @model.name.classify.constantize]).send(:"#{nav_item.custom_action}?"))
|
5
5
|
li.nav-item
|
6
6
|
- nav_item_action_name = nav_item.custom_action.present? ? nav_item.custom_action : 'show'
|
7
|
-
|
7
|
+
- if via_xhr
|
8
|
+
= link_to tab_display_name(nav_item.nav_item_name), cm_admin.send("#{@ar_object.model_name.singular}_#{nav_item_action_name}_path", @ar_object.id), class: "nav-link #{ nav_item_action_name == action_name ? 'active' : ''}", target: '_blank'
|
9
|
+
- else
|
10
|
+
= link_to tab_display_name(nav_item.nav_item_name), cm_admin.send("#{@ar_object.model_name.singular}_#{nav_item_action_name}_path", @ar_object.id), class: "nav-link #{ nav_item_action_name == action_name ? 'active' : ''}"
|
8
11
|
// current_action_name is defined when action trail is added to that model
|
9
12
|
- if policy([:cm_admin, @model.name.classify.constantize]).send(:history?)
|
10
13
|
li.nav-item
|
@@ -1,2 +1,2 @@
|
|
1
1
|
.show-page
|
2
|
-
= render partial: 'cm_admin/main/show_content'
|
2
|
+
= render partial: 'cm_admin/main/show_content', via_xhr: false
|
@@ -6,6 +6,6 @@
|
|
6
6
|
button.btn-close aria-label="Close" data-bs-dismiss="modal" type="button"
|
7
7
|
.modal-body
|
8
8
|
- if custom_action.partial
|
9
|
-
= render partial: custom_action.partial
|
9
|
+
= render partial: custom_action.partial, locals: { custom_action: custom_action, ar_object: ar_object }
|
10
10
|
- else
|
11
11
|
= render partial: 'cm_admin/main/custom_action_modal_form', locals: { custom_action: custom_action, ar_object: ar_object }
|
@@ -31,7 +31,7 @@ html
|
|
31
31
|
.show-page
|
32
32
|
.show-page__header.page-top-bar
|
33
33
|
== render 'cm_admin/main/top_navbar'
|
34
|
-
== render 'cm_admin/main/tabs'
|
34
|
+
== render 'cm_admin/main/tabs', via_xhr: false
|
35
35
|
.show-page__inner
|
36
36
|
= yield
|
37
37
|
- elsif defined?(@action) && (@action&.layout_type.to_s == 'cm_association_index' || @action.parent == "index")
|
@@ -39,7 +39,7 @@ html
|
|
39
39
|
.show-page__header.page-top-bar
|
40
40
|
== render 'cm_admin/main/top_navbar'
|
41
41
|
- if @ar_object.model_name
|
42
|
-
== render 'cm_admin/main/tabs'
|
42
|
+
== render 'cm_admin/main/tabs', via_xhr: false
|
43
43
|
- if @associated_model && @associated_model.filters.present?
|
44
44
|
.filters-bar
|
45
45
|
== render partial: 'cm_admin/main/filters', locals: { filters: @associated_model.filters }
|
@@ -47,6 +47,6 @@ html
|
|
47
47
|
- else
|
48
48
|
= yield
|
49
49
|
= render 'layouts/cm_flash_message'
|
50
|
-
- unless (@current_action
|
50
|
+
- unless (@current_action&.view_type == :kanban || params[:view_type] == 'kanban')
|
51
51
|
= render 'layouts/custom_action_modals'
|
52
52
|
|
data/cm_admin.gemspec
CHANGED
@@ -1,40 +1,41 @@
|
|
1
1
|
require_relative 'lib/cm_admin/version'
|
2
2
|
|
3
3
|
Gem::Specification.new do |spec|
|
4
|
-
spec.name =
|
4
|
+
spec.name = 'cm-admin'
|
5
5
|
spec.version = CmAdmin::VERSION
|
6
|
-
spec.authors = [
|
7
|
-
spec.email = [
|
6
|
+
spec.authors = %w[sajinmp anbublacky AdityaTiwari2102]
|
7
|
+
spec.email = ['sajinprasadkm@gmail.com', 'anbublacky@gmail.com', 'taditya.tiwari007@gmail.com']
|
8
8
|
|
9
|
-
spec.summary =
|
10
|
-
spec.description =
|
11
|
-
spec.homepage =
|
12
|
-
spec.license =
|
13
|
-
spec.required_ruby_version =
|
9
|
+
spec.summary = 'CmAdmin is a robust gem designed to assist in creating admin panels for Rails applications'
|
10
|
+
spec.description = 'CmAdmin providing a streamlined and efficient solution for building customized admin panels within the context of Rails applications. Its robust features empower developers to effortlessly generate and manage administrative interfaces with precision and ease.'
|
11
|
+
spec.homepage = 'https://github.com/commutatus/cm-admin'
|
12
|
+
spec.license = 'MIT'
|
13
|
+
spec.required_ruby_version = '>= 2.7.0'
|
14
14
|
|
15
15
|
# spec.metadata["allowed_push_host"] = "TODO: Set to 'http://mygemserver.com'"
|
16
16
|
|
17
|
-
spec.metadata
|
18
|
-
|
17
|
+
spec.metadata = {
|
18
|
+
'homepage_uri' => spec.homepage,
|
19
|
+
'source_code_uri' => 'https://github.com/commutatus/cm-admin'
|
20
|
+
}
|
19
21
|
# spec.metadata["changelog_uri"] = "TODO: Put your gem's CHANGELOG.md URL here."
|
20
22
|
|
21
23
|
# Specify which files should be added to the gem when it is released.
|
22
24
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
23
|
-
spec.files
|
25
|
+
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
24
26
|
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
25
27
|
end
|
26
|
-
spec.bindir =
|
28
|
+
spec.bindir = 'exe'
|
27
29
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
28
|
-
spec.require_paths = [
|
29
|
-
spec.add_runtime_dependency('rails', '>= 6.0')
|
30
|
+
spec.require_paths = ['lib']
|
30
31
|
spec.add_runtime_dependency 'caxlsx_rails'
|
31
32
|
spec.add_runtime_dependency 'cocoon', '~> 1.2.15'
|
33
|
+
spec.add_runtime_dependency 'csv-importer', '~> 0.8.2'
|
32
34
|
spec.add_runtime_dependency 'local_time', '~> 2.1.0'
|
33
35
|
spec.add_runtime_dependency 'pagy', '~> 4.11.0'
|
34
36
|
spec.add_runtime_dependency 'pundit', '~> 2.2.0'
|
37
|
+
spec.add_runtime_dependency('rails', '>= 6.0')
|
35
38
|
spec.add_runtime_dependency 'slim', '~> 4.1.0'
|
36
39
|
spec.add_runtime_dependency 'webpacker', '~> 5.4.3'
|
37
|
-
spec.add_runtime_dependency 'csv-importer', '~> 0.8.2'
|
38
40
|
spec.add_dependency 'importmap-rails'
|
39
|
-
|
40
41
|
end
|
data/lib/cm_admin/version.rb
CHANGED
@@ -49,6 +49,8 @@ module CmAdmin
|
|
49
49
|
local_date(ar_object.send(field.field_name), (field.format || '%B %e, %Y'))
|
50
50
|
when :text
|
51
51
|
ar_object.send(field.field_name)
|
52
|
+
when :rich_text
|
53
|
+
sanitize ar_object.send(field.field_name)
|
52
54
|
when :money
|
53
55
|
humanized_money(ar_object.send(field.field_name))
|
54
56
|
when :money_with_symbol
|
@@ -138,7 +140,6 @@ module CmAdmin
|
|
138
140
|
def has_many_image_attached?(ar_object, field)
|
139
141
|
ar_object.send(field.field_name).class.name.include?('Many')
|
140
142
|
end
|
141
|
-
|
142
143
|
end
|
143
144
|
end
|
144
145
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cm-admin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- sajinmp
|
@@ -10,50 +10,50 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: exe
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2024-02-09 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
|
-
name:
|
16
|
+
name: caxlsx_rails
|
17
17
|
requirement: !ruby/object:Gem::Requirement
|
18
18
|
requirements:
|
19
19
|
- - ">="
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: '
|
21
|
+
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
26
|
- - ">="
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
version: '
|
28
|
+
version: '0'
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
|
-
name:
|
30
|
+
name: cocoon
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
32
32
|
requirements:
|
33
|
-
- - "
|
33
|
+
- - "~>"
|
34
34
|
- !ruby/object:Gem::Version
|
35
|
-
version:
|
35
|
+
version: 1.2.15
|
36
36
|
type: :runtime
|
37
37
|
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
|
-
- - "
|
40
|
+
- - "~>"
|
41
41
|
- !ruby/object:Gem::Version
|
42
|
-
version:
|
42
|
+
version: 1.2.15
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
|
-
name:
|
44
|
+
name: csv-importer
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
47
|
- - "~>"
|
48
48
|
- !ruby/object:Gem::Version
|
49
|
-
version:
|
49
|
+
version: 0.8.2
|
50
50
|
type: :runtime
|
51
51
|
prerelease: false
|
52
52
|
version_requirements: !ruby/object:Gem::Requirement
|
53
53
|
requirements:
|
54
54
|
- - "~>"
|
55
55
|
- !ruby/object:Gem::Version
|
56
|
-
version:
|
56
|
+
version: 0.8.2
|
57
57
|
- !ruby/object:Gem::Dependency
|
58
58
|
name: local_time
|
59
59
|
requirement: !ruby/object:Gem::Requirement
|
@@ -97,47 +97,47 @@ dependencies:
|
|
97
97
|
- !ruby/object:Gem::Version
|
98
98
|
version: 2.2.0
|
99
99
|
- !ruby/object:Gem::Dependency
|
100
|
-
name:
|
100
|
+
name: rails
|
101
101
|
requirement: !ruby/object:Gem::Requirement
|
102
102
|
requirements:
|
103
|
-
- - "
|
103
|
+
- - ">="
|
104
104
|
- !ruby/object:Gem::Version
|
105
|
-
version:
|
105
|
+
version: '6.0'
|
106
106
|
type: :runtime
|
107
107
|
prerelease: false
|
108
108
|
version_requirements: !ruby/object:Gem::Requirement
|
109
109
|
requirements:
|
110
|
-
- - "
|
110
|
+
- - ">="
|
111
111
|
- !ruby/object:Gem::Version
|
112
|
-
version:
|
112
|
+
version: '6.0'
|
113
113
|
- !ruby/object:Gem::Dependency
|
114
|
-
name:
|
114
|
+
name: slim
|
115
115
|
requirement: !ruby/object:Gem::Requirement
|
116
116
|
requirements:
|
117
117
|
- - "~>"
|
118
118
|
- !ruby/object:Gem::Version
|
119
|
-
version:
|
119
|
+
version: 4.1.0
|
120
120
|
type: :runtime
|
121
121
|
prerelease: false
|
122
122
|
version_requirements: !ruby/object:Gem::Requirement
|
123
123
|
requirements:
|
124
124
|
- - "~>"
|
125
125
|
- !ruby/object:Gem::Version
|
126
|
-
version:
|
126
|
+
version: 4.1.0
|
127
127
|
- !ruby/object:Gem::Dependency
|
128
|
-
name:
|
128
|
+
name: webpacker
|
129
129
|
requirement: !ruby/object:Gem::Requirement
|
130
130
|
requirements:
|
131
131
|
- - "~>"
|
132
132
|
- !ruby/object:Gem::Version
|
133
|
-
version:
|
133
|
+
version: 5.4.3
|
134
134
|
type: :runtime
|
135
135
|
prerelease: false
|
136
136
|
version_requirements: !ruby/object:Gem::Requirement
|
137
137
|
requirements:
|
138
138
|
- - "~>"
|
139
139
|
- !ruby/object:Gem::Version
|
140
|
-
version:
|
140
|
+
version: 5.4.3
|
141
141
|
- !ruby/object:Gem::Dependency
|
142
142
|
name: importmap-rails
|
143
143
|
requirement: !ruby/object:Gem::Requirement
|
@@ -152,7 +152,10 @@ dependencies:
|
|
152
152
|
- - ">="
|
153
153
|
- !ruby/object:Gem::Version
|
154
154
|
version: '0'
|
155
|
-
description:
|
155
|
+
description: CmAdmin providing a streamlined and efficient solution for building customized
|
156
|
+
admin panels within the context of Rails applications. Its robust features empower
|
157
|
+
developers to effortlessly generate and manage administrative interfaces with precision
|
158
|
+
and ease.
|
156
159
|
email:
|
157
160
|
- sajinprasadkm@gmail.com
|
158
161
|
- anbublacky@gmail.com
|
@@ -488,7 +491,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
488
491
|
requirements:
|
489
492
|
- - ">="
|
490
493
|
- !ruby/object:Gem::Version
|
491
|
-
version: 2.
|
494
|
+
version: 2.7.0
|
492
495
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
493
496
|
requirements:
|
494
497
|
- - ">="
|
@@ -498,5 +501,6 @@ requirements: []
|
|
498
501
|
rubygems_version: 3.2.3
|
499
502
|
signing_key:
|
500
503
|
specification_version: 4
|
501
|
-
summary:
|
504
|
+
summary: CmAdmin is a robust gem designed to assist in creating admin panels for Rails
|
505
|
+
applications
|
502
506
|
test_files: []
|