feature_pack 0.1.1 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/feature_pack.rb +1 -1
- data/lib/generators/feature_pack/add_feature/USAGE +8 -0
- data/lib/generators/feature_pack/add_feature/add_feature_generator.rb +32 -0
- data/lib/generators/feature_pack/add_feature/templates/controller.rb.tt +3 -0
- data/lib/generators/feature_pack/add_feature/templates/doc/readme.md.tt +1 -0
- data/lib/generators/feature_pack/add_feature/templates/manifest.yaml.tt +14 -0
- data/lib/generators/feature_pack/add_feature/templates/routes.rb.tt +1 -0
- data/lib/generators/feature_pack/add_feature/templates/views/home.html.slim.tt +2 -0
- data/lib/generators/feature_pack/add_feature/templates/views/partials/_footer.html.slim.tt +2 -0
- data/lib/generators/feature_pack/add_feature/templates/views/partials/_header.html.slim.tt +2 -0
- data/lib/generators/feature_pack/add_group/add_group_generator.rb +5 -2
- metadata +10 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: efa0492819f5f4d1c41a235a9b4f07f57fb2f634e5b624c6d852c6599590180c
|
4
|
+
data.tar.gz: b77bc5fdc56fca2c257854afb193b53949635387b18323d8b4a42c3a7a155a2a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b2fb6e5c3fc3f989e04bb79846743cafc8672dd1f60ae3480b46a7557bfb9c43d2ce24dfe6dfa2364e1e11c49aebbe240aecbaf153297516f5bd4d9100e1ac1a
|
7
|
+
data.tar.gz: cf080f73d2dda1927a5b45f9a72f133309dc9e8f2dedeee6bd5c56954c046b40900716d00719c43054419f1453e1a4fa92e55b753a7e3b84667da3b7d10964a7
|
data/lib/feature_pack.rb
CHANGED
@@ -39,7 +39,7 @@ module FeaturePack
|
|
39
39
|
|
40
40
|
@@ignored_paths << @@path.join('feature_pack/feature_pack_routes.rb')
|
41
41
|
|
42
|
-
raise "No Groups found in: '#{@@features_path}'" if Dir.glob("#{@@features_path}/[!_]*/").empty?
|
42
|
+
# raise "No Groups found in: '#{@@features_path}'" if Dir.glob("#{@@features_path}/[!_]*/").empty?
|
43
43
|
|
44
44
|
@@groups = Dir.glob("#{@@features_path}/[!_]*/").map do |group_path|
|
45
45
|
relative_path = Pathname.new(group_path)
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'rails/generators/base'
|
2
|
+
require 'rails/generators/named_base'
|
3
|
+
|
4
|
+
class FeaturePack::AddFeatureGenerator < Rails::Generators::NamedBase
|
5
|
+
desc 'Adds a new Feature'
|
6
|
+
source_root File.expand_path('templates', __dir__)
|
7
|
+
|
8
|
+
argument :name, type: :string, required: true, desc: 'The name (sneak case) of the group to add'
|
9
|
+
|
10
|
+
def add_feature
|
11
|
+
@group_name, @feature_name = name.split('/')
|
12
|
+
@group = FeaturePack.group(@group_name.to_sym)
|
13
|
+
@group_class_name = @group_name.camelcase
|
14
|
+
@feature_class_name = @feature_name.camelcase
|
15
|
+
|
16
|
+
raise "Group '#{@group_name}' doesn't exist. First, create it." if @group.nil?
|
17
|
+
|
18
|
+
raise "Feature '#{@group_class_name}::#{@feature_class_name}' already Exist." if FeaturePack.feature(@group_name.to_sym, @feature_name.to_sym).present?
|
19
|
+
|
20
|
+
@feature_id = @feature_name.gsub('_', '-') + '-' + '999'
|
21
|
+
@feature_dir = @group.relative_path.join("feature_#{@feature_id}_#{@feature_name}")
|
22
|
+
|
23
|
+
template './controller.rb.tt', @feature_dir.join('controller.rb')
|
24
|
+
template './manifest.yaml.tt', @feature_dir.join('manifest.yaml')
|
25
|
+
template './routes.rb.tt', @feature_dir.join('routes.rb')
|
26
|
+
template './views/home.html.slim.tt', @feature_dir.join('views/home.html.slim')
|
27
|
+
template './views/partials/_header.html.slim.tt', @feature_dir.join('views/partials/_header.html.slim')
|
28
|
+
template './views/partials/_footer.html.slim.tt', @feature_dir.join('views/partials/_footer.html.slim')
|
29
|
+
template './doc/readme.md.tt', @feature_dir.join('doc/readme.md')
|
30
|
+
create_file @feature_dir.join('queries', '.gitkeep')
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
# <%= @feature_name%>
|
@@ -0,0 +1,14 @@
|
|
1
|
+
:name: Feature Friendly Name
|
2
|
+
:description:
|
3
|
+
:type: :alert
|
4
|
+
:url: <%= @feature_name.gsub('_', '-') %>
|
5
|
+
:version: 1.0.0
|
6
|
+
:policy:
|
7
|
+
:admin: '*'
|
8
|
+
:coordenacao_aps: '*'
|
9
|
+
:coordenacao_atividade_fisica: '*'
|
10
|
+
:coordenacao_saude_bucal:
|
11
|
+
- :lista_equipes_saude_bucal
|
12
|
+
:professional:
|
13
|
+
- :whatsapp_text_alert
|
14
|
+
- :whatsapp_protected_pdf
|
@@ -0,0 +1 @@
|
|
1
|
+
get '/', to: '<%= @feature_name %>#home'
|
@@ -1,5 +1,8 @@
|
|
1
|
+
require 'rails/generators/base'
|
2
|
+
require 'rails/generators/named_base'
|
3
|
+
|
1
4
|
class FeaturePack::AddGroupGenerator < Rails::Generators::NamedBase
|
2
|
-
|
5
|
+
|
3
6
|
desc 'Adds a new Feature Group'
|
4
7
|
source_root File.expand_path('templates', __dir__)
|
5
8
|
|
@@ -11,7 +14,7 @@ class FeaturePack::AddGroupGenerator < Rails::Generators::NamedBase
|
|
11
14
|
@class_name = name.camelcase
|
12
15
|
|
13
16
|
# id can't contain underline '_'
|
14
|
-
group_id = name.gsub('_', '-') + '-' + '
|
17
|
+
group_id = name.gsub('_', '-') + '-' + '999'
|
15
18
|
group_dir = FeaturePack.features_path.join("group_#{group_id}_#{name}")
|
16
19
|
|
17
20
|
template './_group_metadata/controller.rb.tt', group_dir.join('_group_metadata', 'controller.rb')
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: feature_pack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gedean Dias
|
@@ -40,6 +40,15 @@ files:
|
|
40
40
|
- lib/feature_pack/error.rb
|
41
41
|
- lib/feature_pack/feature_pack_routes.rb
|
42
42
|
- lib/feature_pack/group_controller.rb
|
43
|
+
- lib/generators/feature_pack/add_feature/USAGE
|
44
|
+
- lib/generators/feature_pack/add_feature/add_feature_generator.rb
|
45
|
+
- lib/generators/feature_pack/add_feature/templates/controller.rb.tt
|
46
|
+
- lib/generators/feature_pack/add_feature/templates/doc/readme.md.tt
|
47
|
+
- lib/generators/feature_pack/add_feature/templates/manifest.yaml.tt
|
48
|
+
- lib/generators/feature_pack/add_feature/templates/routes.rb.tt
|
49
|
+
- lib/generators/feature_pack/add_feature/templates/views/home.html.slim.tt
|
50
|
+
- lib/generators/feature_pack/add_feature/templates/views/partials/_footer.html.slim.tt
|
51
|
+
- lib/generators/feature_pack/add_feature/templates/views/partials/_header.html.slim.tt
|
43
52
|
- lib/generators/feature_pack/add_group/USAGE
|
44
53
|
- lib/generators/feature_pack/add_group/add_group_generator.rb
|
45
54
|
- lib/generators/feature_pack/add_group/templates/_group_metadata/controller.rb.tt
|