feature_pack 0.1.1 → 0.1.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9474d2917faba0c23fdf4c37722442a16e4e2c74ffb3c1feee6d5fd5e29b16f3
4
- data.tar.gz: 7dc49809014676cb100aebb05b44af97486ed3254c81677b9bf96d058f10689d
3
+ metadata.gz: efa0492819f5f4d1c41a235a9b4f07f57fb2f634e5b624c6d852c6599590180c
4
+ data.tar.gz: b77bc5fdc56fca2c257854afb193b53949635387b18323d8b4a42c3a7a155a2a
5
5
  SHA512:
6
- metadata.gz: c9791858b73654bd34566d6015435920b04c5a1933d019cbf21f69f54e4d8491d57adf8e155b4bbce1972caa54e4b6305096ccec8d724ef6220d186ad12f25ac
7
- data.tar.gz: a6b0cc7430ad8db23543f45e1c78b7dd1a4c980b7f2fc8f5d3f3eec174e0e882ded063473a63463386036a50b83e178484cf3dc20d1d8d95cca2d2f1e3087619
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,8 @@
1
+ Description:
2
+ Explain the generator
3
+
4
+ Example:
5
+ bin/rails generate add_feature Thing
6
+
7
+ This will create:
8
+ what/will/it/create
@@ -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,3 @@
1
+ class FeaturePack::<%= @group_class_name %>::<%= @feature_class_name %>Controller < FeaturePack::Controller
2
+ # home defined in parent controller
3
+ 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'
@@ -0,0 +1,2 @@
1
+ h1 Feature <%= @group_class_name%>::<%=@feature_class_name %> Home
2
+ p = "Find-me at #{__FILE__}"
@@ -0,0 +1,2 @@
1
+ h1 Feature <%= @group_class_name %>::<%= @feature_class_name %> Footer
2
+ p = "Edit-me OR delete-me at #{__FILE__}"
@@ -0,0 +1,2 @@
1
+ h1 Feature <%= @group_class_name %>::<%= @feature_class_name %> Header
2
+ p = "Edit-me OR delete-me at #{__FILE__}"
@@ -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
- # class Generators::FeaturePack::AddGroup::AddGroupGenerator < Rails::Generators::NamedBase
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('_', '-') + '-' + 'GIVE-ME-AN-ID'
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.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