kadim 0.2.1 → 0.2.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.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/lib/kadim.rb +24 -14
- data/lib/kadim/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bb10d2b3091f4e7bdc49e88058db5b838c97482b6d6ad58fb5c4a422c96a6fe3
|
4
|
+
data.tar.gz: e3004720b218b5096cab2d9e32cd494d4d1107675138a13083f1cef78c22b99e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 74e7820f0b0c11f246fa9e836da1e80d32e3ab910c5ae3ca963895fe07ea83e6c5672eba885fa809ac8ac83a9800dc3ab450aad54a4088bb159b2e011890531c
|
7
|
+
data.tar.gz: e94ae1be0be89d4a255190ce010d0c6c99c203433d52bd967d70ca242cd6468b1d9e069f75fb0729348c29f85abc3dc80f8f42ff1f520462d9e8ce5e68a893a1
|
data/README.md
CHANGED
@@ -33,8 +33,8 @@ this with the main kadim controller, to add safety rules, etc.
|
|
33
33
|
You also provide two generators to make this task easier.
|
34
34
|
|
35
35
|
```bash
|
36
|
-
rails g kadim:
|
37
|
-
rails g kadim:
|
36
|
+
rails g kadim:host
|
37
|
+
rails g kadim:host:scaffold_controller ModelName
|
38
38
|
```
|
39
39
|
|
40
40
|
The first one copies the basic kadim infrastructure to your application, ie the
|
data/lib/kadim.rb
CHANGED
@@ -14,16 +14,17 @@ module Kadim
|
|
14
14
|
|
15
15
|
def self.bootstrap_controllers
|
16
16
|
cleanup
|
17
|
+
load_app_kadim_consts
|
17
18
|
scaffold_controllers
|
18
19
|
end
|
19
20
|
|
20
21
|
def self.scaffold_attributes(model_klass)
|
21
22
|
model_klass.columns
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
23
|
+
.reject { |column| %w[id created_at updated_at].include?(column.name) }
|
24
|
+
.sort_by(&:name)
|
25
|
+
.map { |column| [column.name, column.type] }
|
26
|
+
.to_h
|
27
|
+
.map { |k, v| "#{k}:#{v}" }
|
27
28
|
end
|
28
29
|
|
29
30
|
class << self
|
@@ -38,16 +39,15 @@ module Kadim
|
|
38
39
|
end
|
39
40
|
|
40
41
|
def cleanup_kadim_consts
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
controller_klass = controller_filename.camelize
|
45
|
-
Kadim.send(:remove_const, controller_klass) if Kadim.const_defined?(controller_klass, false)
|
42
|
+
app_model_paths.each do |model_path|
|
43
|
+
controller_klass_name = "#{model_path.pluralize}_controller".camelize
|
44
|
+
Kadim.send(:remove_const, controller_klass_name) if Kadim.const_defined?(controller_klass_name, false)
|
46
45
|
end
|
47
46
|
end
|
48
47
|
|
49
|
-
def
|
50
|
-
|
48
|
+
def load_app_kadim_consts
|
49
|
+
Dir[Rails.root.join("app", "controllers", "kadim", "**", "*_controller.rb")].each { |path| load path }
|
50
|
+
Dir[Rails.root.join("app", "helpers", "kadim", "**", "*_helper.rb")].each { |path| load path }
|
51
51
|
end
|
52
52
|
|
53
53
|
def scaffold_controllers
|
@@ -56,7 +56,11 @@ module Kadim
|
|
56
56
|
|
57
57
|
current_namespace = Rails::Generators.namespace
|
58
58
|
Rails::Generators.namespace = Kadim
|
59
|
-
app_model_paths.each
|
59
|
+
app_model_paths.each do |model_name|
|
60
|
+
next if Kadim.const_defined?("#{model_name.pluralize}_controller".camelize, false)
|
61
|
+
|
62
|
+
scaffold_controller(model_name)
|
63
|
+
end
|
60
64
|
load_kadim_controllers
|
61
65
|
load_kadim_views
|
62
66
|
ensure
|
@@ -78,7 +82,13 @@ module Kadim
|
|
78
82
|
end
|
79
83
|
|
80
84
|
def load_kadim_controllers
|
81
|
-
Dir[Rails.root.join("tmp", "kadim", "app", "controllers", "**", "*_controller.rb")].each
|
85
|
+
Dir[Rails.root.join("tmp", "kadim", "app", "controllers", "**", "*_controller.rb")].each do |path|
|
86
|
+
retries ||= 0
|
87
|
+
load path
|
88
|
+
rescue LoadError
|
89
|
+
retry if (retries += 1) < 3
|
90
|
+
raise "Ops, failed to load kadim controllers, please restart your application!"
|
91
|
+
end
|
82
92
|
end
|
83
93
|
|
84
94
|
def load_kadim_views
|
data/lib/kadim/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kadim
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kadu Diógenes
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-12-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activestorage-resumable
|
@@ -128,14 +128,14 @@ dependencies:
|
|
128
128
|
requirements:
|
129
129
|
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version: 4.
|
131
|
+
version: 4.3.1
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version: 4.
|
138
|
+
version: 4.3.1
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: rails-dom-testing
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|