ibrain-core 0.4.2 → 0.4.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: 33b4e300564f07cbe14ca37a664a7ae4c98ed7606d889ec24a6552d11ce63a10
4
- data.tar.gz: 26ebbe777b2c7a7df42e16c67740e5a3208deedd733c1116efe71ddacb007a0c
3
+ metadata.gz: 26a30919c92210c8aee940c6eef87714f5f32fd072af49c171af08018f532b1e
4
+ data.tar.gz: 35355d0e6193503c2d58547ac5c0919650ecadf3784a0a446c8794108c53bd30
5
5
  SHA512:
6
- metadata.gz: 2b711b99238fb17d417cedf9c5b861e5dc4a26f73704868101b81f5c41c05d77940abb9d5ad151b10ec5998ddcae17f379a8d78287c9c6d7590fa72557776229
7
- data.tar.gz: c970a21f21a510604e255782d9ae5142b9d7ba226561930201190ef7f47d93663ce21d03b871acaf087c7dabf94fb74f9e3edb271549b16e29f9189e732a22d1
6
+ metadata.gz: cc5f54d06be873dc940b18819bb5490fcd58c0a7582b08853694e3b508a94f154a5288894e43e2d96f9b9cdb9601a18149b2538ca7d3427ff4078f351d79935a
7
+ data.tar.gz: d82ae0620f53243f1958d79e0b80ed81c55403d94a3138c7307a44043f0e8a6aa6edfdabc4c99fb0c2033c172fe27572ff5bf52c9a28ceec359bb16156243b13
@@ -11,13 +11,17 @@ module Ibrain
11
11
  argument :attribute, Types::AttributeType, required: false
12
12
  argument :attributes, [Types::AttributeType], required: false
13
13
 
14
- def resolve(args)
15
- @params = ::ActionController::Parameters.new(args)
14
+ def ready?(args)
15
+ @params = ActionController::Parameters.new(
16
+ args.to_h.with_indifferent_access.transform_keys(&:underscore)
17
+ )
18
+ @resource = load_resource
19
+ true
16
20
  end
17
21
 
18
22
  protected
19
23
 
20
- attr_reader :params
24
+ attr_reader :params, :resource
21
25
 
22
26
  def upload_permitted
23
27
  %i[content_type headers original_filename tempfile]
@@ -42,6 +46,28 @@ module Ibrain
42
46
  def request
43
47
  context[:request]
44
48
  end
49
+
50
+ def graphql_return
51
+ {
52
+ returning: resource.reload
53
+ }
54
+ end
55
+
56
+ def success_response
57
+ {
58
+ success: true
59
+ }
60
+ end
61
+
62
+ def id_from_params
63
+ params[:id]
64
+ end
65
+
66
+ def attribute_params
67
+ params[:attributes].to_params
68
+ rescue StandardError
69
+ ActionController::Parameters.new({})
70
+ end
45
71
  end
46
72
  end
47
73
  end
@@ -7,16 +7,37 @@ module Mutations
7
7
  # description
8
8
 
9
9
  # TODO: define return fields
10
- field :<%= model_name.underscore %>, Types::Objects::<%= model_name %>Type, null: false, description: 'Record Type for mutation response'
10
+ field :returning, Types::Objects::<%= model_name %>Type, null: true, description: 'Record Type for mutation response'
11
11
 
12
12
  # TODO: define arguments
13
13
  # argument :name, String, required: true
14
- # argument :<%= model_name.underscore %>, Types::Attributes::<%= model_name %>Input, required: true
14
+ argument :attributes, Types::Attributes::<%= model_name %>Input, required: true
15
+ # argument :id, ID, required: true
15
16
 
16
17
  # TODO: define resolve method
17
18
  def resolve(args)
18
19
  # TODO: define logic inside repository
19
- # Something like Repository.new(current_user, Post.new).create(args)
20
+ # Something like
21
+ # if resource.blank?
22
+ # raise GraphQL::ExecutionError, I18n.t("activerecord.errors.models.job.attributes.id.could_not_find")
23
+ # end
24
+
25
+ # repo.update(normalize_parameters)
26
+ graphql_return
27
+ end
28
+
29
+ private
30
+
31
+ def normalize_parameters
32
+ # attribute_params.permit(:name, :status)
33
+ end
34
+
35
+ def load_resource
36
+ # <%= model_name %>.find_by(id: id_from_params)
37
+ end
38
+
39
+ def repo
40
+ # <%= model_name %>Repository.new(current_user, resource)
20
41
  end
21
42
  end
22
43
  end
@@ -1,14 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Ibrain
4
- VERSION = "0.4.2"
4
+ VERSION = "0.4.3"
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.4.1'
11
+ '0.4.2'
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.4.2
4
+ version: 0.4.3
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-08-22 00:00:00.000000000 Z
11
+ date: 2022-09-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord-session_store