ibrain-core 0.3.7 → 0.3.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1208ea7c11b96ef277bcd34d9b8a1ff21b78c282c26a4e6c93d6ce3c73d3e303
4
- data.tar.gz: 3989806e90af2f13d72ff04453dfc48f270e51ccb6d67d5bc9876cb475fab067
3
+ metadata.gz: 8879d41d7a0776804c1864f6c103b07ea8740ae3e8b85ae42ef79b418300c109
4
+ data.tar.gz: cef1d0b509b4e3269ffc693355a4a02c2923c448bc5374beb767a715312d215c
5
5
  SHA512:
6
- metadata.gz: 696a58668b7d169eaa712fcb729aa334b9e333df9849fdd578894f3ec6a451457eab9c5f2066f7e12fa245f6fe67a60af63e07b69649882fbacf81a42a02f5f0
7
- data.tar.gz: 1aa43fb20f329d2a23e61bbd769f8ccc75b173c88febe9c6e3bdedecb69248926e9dd4c04e4fd3ba88ef8239475ef3c251681c72f6a41d55cb13fbfe6b4c4ccf
6
+ metadata.gz: 5992f6f7930ab1b0c6cdec1eaa664dc2da8c5632b7a34a97d162e0c531fdfdc936400f6b13210e598c5d1c6f8840a90b7e554fd49fed9fcfc153f77458b9a226
7
+ data.tar.gz: 7e34198ae0d031171303a0d2b797d8e790e8bbed7712687608db74785003c26e0a304aee4d14ea6d386b9dc217d17c5009d4ee3979c97c1dd666244030def8d2
data/README.md CHANGED
@@ -51,6 +51,10 @@ To generate graphql resolvers query to get users list
51
51
  ```bash
52
52
  bundle exec rails generate ibrain:graphql:resolvers users --model=User
53
53
  ```
54
+ To generate graphql resolver, mutation with prefix folder
55
+ ```bash
56
+ bundle exec rails generate ibrain:graphql:resolvers users --model=User --prefix=admin
57
+ ```
54
58
  For pagination please using aggregate body query, something like
55
59
  ```
56
60
  query users($offset: Int, $limit: Int, $filter: Filter) {
@@ -3,6 +3,7 @@
3
3
  module Ibrain
4
4
  class BaseSchema < ::GraphQL::Schema
5
5
  use GraphQL::Batch
6
+ max_depth Ibrain::Config.graphql_max_depth
6
7
 
7
8
  # use GraphQL::Guard.new(
8
9
  # policy_object: ::Ibrain::Config.graphql_policy.safe_constantize,
@@ -38,7 +38,7 @@ module Ibrain
38
38
  end
39
39
 
40
40
  if options[:model].present?
41
- system("bundle exec rails generate ibrain:graphql:object #{options[:model].downcase}")
41
+ system("bundle exec rails generate ibrain:graphql:object #{options[:model].underscore}")
42
42
  end
43
43
 
44
44
  template "mutation.erb", "#{options[:directory]}/mutations/#{file_name}.rb"
@@ -54,7 +54,7 @@ module Ibrain
54
54
  def assign_names!(name)
55
55
  underscore_name = name&.camelize&.underscore
56
56
  prefix = options[:prefix].try(:underscore)
57
- @model_name = options[:model].blank? ? 'Post' : options[:model].try(:capitalize)
57
+ @model_name = options[:model].blank? ? 'Post' : options[:model].try(:camelize, :upper)
58
58
 
59
59
  if prefix.blank?
60
60
  @mutation_name = name.camelize(:upper)
@@ -64,7 +64,7 @@ module Ibrain
64
64
  return
65
65
  end
66
66
 
67
- @mutation_name = "#{prefix.try(:capitalize)}::#{name.camelize(:upper)}"
67
+ @mutation_name = "#{prefix.try(:camelize, :upper)}::#{name.camelize(:upper)}"
68
68
  @file_name = "#{prefix}/#{underscore_name}"
69
69
  @field_name = "#{prefix}_#{underscore_name}"
70
70
  end
@@ -77,7 +77,7 @@ module Ibrain
77
77
  end
78
78
 
79
79
  def model_name
80
- type_name.capitalize
80
+ type_name.try(:camelize, :upper)
81
81
  end
82
82
 
83
83
  def klass
@@ -21,7 +21,7 @@ module Ibrain
21
21
  end
22
22
 
23
23
  if options[:model].present?
24
- system("bundle exec rails generate ibrain:graphql:object #{options[:model].downcase}")
24
+ system("bundle exec rails generate ibrain:graphql:object #{options[:model].underscore}")
25
25
  end
26
26
 
27
27
  template "resolver.erb", "#{options[:directory]}/resolvers/#{file_name}.rb"
@@ -38,7 +38,7 @@ module Ibrain
38
38
  end
39
39
 
40
40
  if options[:model].present?
41
- system("bundle exec rails generate ibrain:graphql:object #{options[:model].downcase}")
41
+ system("bundle exec rails generate ibrain:graphql:object #{options[:model].underscore}")
42
42
  end
43
43
 
44
44
  template "resolvers.erb", "#{options[:directory]}/resolvers/#{file_name}.rb"
@@ -56,7 +56,7 @@ module Ibrain
56
56
  underscore_name = name&.camelize&.underscore
57
57
  prefix = options[:prefix].try(:underscore)
58
58
 
59
- @model_name = options[:model].blank? ? 'Post' : options[:model].try(:capitalize)
59
+ @model_name = options[:model].blank? ? 'Post' : options[:model].try(:camelize, :upper)
60
60
 
61
61
  if prefix.blank?
62
62
  @resolver_name = name.camelize(:upper)
@@ -66,7 +66,7 @@ module Ibrain
66
66
  return
67
67
  end
68
68
 
69
- @resolver_name = "#{prefix.try(:capitalize)}::#{name.camelize(:upper)}"
69
+ @resolver_name = "#{prefix.try(:camelize, :upper)}::#{name.camelize(:upper)}"
70
70
  @file_name = "#{prefix}/#{underscore_name}"
71
71
  @field_name = "#{prefix}_#{underscore_name}"
72
72
  end
@@ -6,7 +6,7 @@ module Resolvers
6
6
  description 'Define aggregate to count total records for <%= resolver_name %>'
7
7
  # define resolve method
8
8
  def resolve(args)
9
- <%= model_name.capitalize %>Repository.aggregate(args)
9
+ <%= model_name.try(:camelize, :upper) %>Repository.aggregate(args)
10
10
  end
11
11
  end
12
12
  end
@@ -12,7 +12,7 @@ class <%= model_name %>Repository < Ibrain::BaseRepository
12
12
  end
13
13
 
14
14
  def aggregate(args)
15
- <%= model_name %>.ransack(args[:filter]).result
15
+ <%= model_name %>.ransack(args[:where]).result
16
16
  end
17
17
  end
18
18
  end
@@ -46,7 +46,10 @@ Ibrain.config do |config|
46
46
  # config.parent_controller = 'ActionController::API'
47
47
 
48
48
  # For multiple database
49
- preference :master_database, :string, default: 'primary'
49
+ # config.preference = 'primary'
50
+
51
+ # For max depth graphql
52
+ config.graphql_max_depth = 3
50
53
  end
51
54
 
52
55
  <% if defined?(Ibrain::Api::Engine) -%>
@@ -53,6 +53,8 @@ module Ibrain
53
53
 
54
54
  preference :master_database, :string, default: 'primary'
55
55
 
56
+ preference :graphql_max_depth, :integer, default: 3
57
+
56
58
  def static_model_preferences
57
59
  @static_model_preferences ||= Ibrain::Preferences::StaticModelPreferences.new
58
60
  end
@@ -1,14 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Ibrain
4
- VERSION = "0.3.7"
4
+ VERSION = "0.3.8"
5
5
 
6
6
  def self.ibrain_version
7
7
  VERSION
8
8
  end
9
9
 
10
10
  def self.previous_ibrain_minor_version
11
- '0.3.6-rc.1'
11
+ '0.3.7.rc-1'
12
12
  end
13
13
 
14
14
  def self.ibrain_gem_version
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ibrain-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.7
4
+ version: 0.3.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tai Nguyen Van
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-07-27 00:00:00.000000000 Z
11
+ date: 2022-07-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord-session_store