fragment-alpha-sdk 0.1.7 → 0.1.8

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: 8c27bff789593bb762e67b0939f6c85de3f1c02b3b95d538681f918b45ad4668
4
- data.tar.gz: '000697d256712aadef3027ab394af1d67517eb48662766d56f13446af2998e3f'
3
+ metadata.gz: 62a4d3cb2aa95e912261ccb28b7bc7a9b406e16e87beec88eea1f49706c3ffe0
4
+ data.tar.gz: 3e13aefb9c50d3301a048f28a4e5220bab037e223aad43fd508cb9c687896526
5
5
  SHA512:
6
- metadata.gz: 758041cbdf87dc9b77201d62bab9bc594e9a62fd539ae3d5ec21a1fd3ea8deffc629646ec9c00487b4a09397fd204e1d338879be5a600106c5bded1948a93816
7
- data.tar.gz: 0d299bb4f3b8f870e1f7d83d849495836b33d47fc95b10e1b367cea216c56157a197812fd0b2430a96bbfd9a882ca5a2ac0b12889ecef781306b9303854306a8
6
+ metadata.gz: 137cb1729e102a1aa668a4e7076435146701d99fd3f274cfef777580c3adb79f115bec45af56453eb46ad2ed3efe89e153d419e0da37fdd1bd6d96673e923865
7
+ data.tar.gz: 817d73d5ac8a07b940d0ddd5bb760a3417dac4ba80995604b82c82bcd68a152a46cb43945d7ba1fb794ee788d55bca2672bca5893deed1a317f7afe571955fec
@@ -15,7 +15,7 @@ module FragmentGraphQl
15
15
  extend T::Sig
16
16
  sig { params(context: T.untyped).returns(T::Hash[T.untyped, T.untyped]) }
17
17
  def headers(context)
18
- { 'Authorization' => 'Bearer %s' % context[:access_token] }
18
+ { 'Authorization' => format('Bearer %s', context[:access_token]) }
19
19
  end
20
20
  end, GraphQL::Client::HTTP)
21
21
 
@@ -37,36 +37,32 @@ class FragmentClient
37
37
  execute: GraphQL::Client::HTTP).void
38
38
  end
39
39
  def initialize(client_id, client_secret, extra_queries_filename: nil, execute: FragmentGraphQl::HTTP)
40
+ set_instance_variables(execute, client_id, client_secret)
41
+ define_method_from_queries(FragmentGraphQl::Queries)
42
+ return if extra_queries_filename.nil?
43
+
44
+ queries = FragmentGraphQl::Client.parse(
45
+ File.read(extra_queries_filename)
46
+ )
47
+ define_method_from_queries(queries)
48
+ end
49
+
50
+ def set_instance_variables(execute, client_id, client_secret)
40
51
  @client = T.let(GraphQL::Client.new(schema: FragmentGraphQl::Schema, execute: execute), GraphQL::Client)
41
52
  conn = create_conn(client_id, client_secret)
42
53
  # TODO: the token may need to be refreshed if the client is around for a long time
43
54
  @token = T.let(get_token(conn, client_id), String)
44
- FragmentGraphQl::Queries.constants.each do |q|
45
- name = q.to_s.gsub(/[a-z]([A-Z])/) do |m|
55
+ end
56
+
57
+ def define_method_from_queries(queries)
58
+ queries.constants.each do |qry|
59
+ name = qry.to_s.gsub(/[a-z]([A-Z])/) do |m|
46
60
  format('%<lower>s_%<upper>s', lower: m[0], upper: m[1].downcase)
47
61
  end.gsub(/^[A-Z]/, &:downcase)
48
62
  define_singleton_method(name) do |v|
49
- query(FragmentGraphQl::Queries.const_get(q), v)
63
+ query(queries.const_get(qry), v)
50
64
  end
51
65
  end
52
-
53
- return if extra_queries_filename.nil?
54
-
55
- queries = FragmentGraphQl::Client.parse(
56
- File.read(extra_queries_filename)
57
- )
58
- queries.constants.each do |q|
59
- define_method_from_query(q, queries)
60
- end
61
- end
62
-
63
- def define_method_from_query(q, queries)
64
- name = q.to_s.gsub(/[a-z]([A-Z])/) do |m|
65
- format('%<lower>s_%<upper>s', lower: m[0], upper: m[1].downcase)
66
- end.gsub(/^[A-Z]/, &:downcase)
67
- define_singleton_method(name) do |v|
68
- query(queries.const_get(q), v)
69
- end
70
66
  end
71
67
 
72
68
  def create_conn(client_id, client_secret)
@@ -92,7 +88,7 @@ class FragmentClient
92
88
  req.body = format('grant_type=client_credentials&scope=https://api.fragment.dev/*&client_id=%s', client_id)
93
89
  end
94
90
  rescue Faraday::ClientError => e
95
- raise StandardError, "oauth Authentication failed: '%s'" % e.to_s
91
+ raise StandardError, format("oauth Authentication failed: '%s'", e.to_s)
96
92
  end
97
93
  T.let(JSON.parse(response.body)['access_token'], String)
98
94
  end
data/lib/queries.graphql CHANGED
@@ -1,3 +1,16 @@
1
+ mutation StoreSchema($schema: SchemaInput!) {
2
+ storeSchema(schema: $schema) {
3
+ schema {
4
+ key
5
+ name
6
+ version {
7
+ created
8
+ version
9
+ }
10
+ }
11
+ }
12
+ }
13
+
1
14
  mutation CreateLedger($ik: SafeString!, $ledger: CreateLedgerInput!) {
2
15
  createLedger(ik: $ik, ledger: $ledger) {
3
16
  __typename
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fragment-alpha-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - fragment
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 1980-01-01 00:00:00.000000000 Z
11
+ date: 2024-02-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0.18'
33
+ version: '0.20'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0.18'
40
+ version: '0.20'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: sorbet-runtime
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -52,7 +52,7 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0.5'
55
- description:
55
+ description:
56
56
  email: snoble@fragment.dev
57
57
  executables: []
58
58
  extensions: []
@@ -66,7 +66,7 @@ homepage: https://fragment.dev
66
66
  licenses:
67
67
  - Nonstandard
68
68
  metadata: {}
69
- post_install_message:
69
+ post_install_message:
70
70
  rdoc_options: []
71
71
  require_paths:
72
72
  - lib
@@ -81,8 +81,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  requirements: []
84
- rubygems_version: 3.4.10
85
- signing_key:
84
+ rubygems_version: 3.0.3.1
85
+ signing_key:
86
86
  specification_version: 4
87
87
  summary: an alpha version for the fragment client sdk
88
88
  test_files: []