extensiv_ruby 0.1.1 → 0.2.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: a847e79d4e00e8acb3cbf6671f46b1521a054bfe71d30974d315a0e2a9b8b5c7
4
- data.tar.gz: ead4500e2cac7dcc76a3ea77205c2c40f4ab8e82d2ff8c84ee2df256f2a69503
3
+ metadata.gz: 13e0826746cc78670be78f79893ed66f28262ba3e7e502bd6ae702e285320350
4
+ data.tar.gz: 8be73ba14eeea45d8fd89d4a2b207d1a97ce60f9a785412d0f4764cb266428b1
5
5
  SHA512:
6
- metadata.gz: de816b042f61612fbd8ff702c57be2a59fbe547e2a1e792e070deb0f459f6ae7ec7b666a293b945e61ef2c06bbae57327dc5e7a381f3bfe5a918c02a8a12edc1
7
- data.tar.gz: 6ed312d3e82dd11dad4eaa67fd18a1c841d4e3bd0de65d49bb7bc7ccef9d3649e7b26324d84f2faf6dce06787b2bd472606ddb23929499025324ea9e253cac5f
6
+ metadata.gz: ffd0372baf9e9f2063a53a4cd736e01891d05d1a2743eba9efa1d8e4129b9dcf73345aa723d6cac95e645f9a6b176ff6665ccdefe3de5622b6cf2312cba0da6a
7
+ data.tar.gz: d9ebb96de8758354388ae16982c130be87f1c9dd1a8d94d5047f69557d09241e56ba7ff963aafb7bfb198416c9e0f15c6394e6e5b235e7ba5e22aa280547ffcf
data/extensiv.gemspec CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.summary = "Provides a Ruby wrapper for the CartRover API"
11
11
  spec.description = "A Ruby interface to the CartRover / Extensiv Integration Manager API."
12
12
  spec.homepage = "https://github.com/narch/extensiv_ruby"
13
- spec.required_ruby_version = ">= 2.6.0"
13
+ spec.required_ruby_version = ">= 3.0.0"
14
14
  spec.licenses = ['MIT']
15
15
 
16
16
  # spec.metadata["allowed_push_host"] = "TODO: Set to your gem server 'https://example.com'"
@@ -27,9 +27,8 @@ Gem::Specification.new do |spec|
27
27
  f.start_with?(*%w[bin/ test/ spec/ features/ .git .circleci appveyor Gemfile])
28
28
  end
29
29
  end
30
- spec.bindir = "exe"
31
30
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
32
31
  spec.require_paths = ["lib"]
33
32
 
34
- spec.add_dependency "faraday", "~> 2.7"
33
+ spec.add_dependency "faraday", "~> 2.9"
35
34
  end
@@ -15,20 +15,22 @@ module Extensiv
15
15
  Collection.from_response(response, type: Order, params: params)
16
16
  end
17
17
 
18
- def create(**attributes)
19
- Response.new post_request("cart/orders/cartrover", body: attributes).body
18
+ def create(params = {})
19
+ Response.new post_request("cart/orders/cartrover", body: params).body
20
20
  end
21
21
 
22
- def batch_create(*attributes)
23
- Response.new post_request("cart/orders/batch", body: attributes).body["response"]
22
+ def batch_create(orders_array = [])
23
+ Response.new post_request("cart/orders/batch", body: orders_array).body["response"]
24
24
  end
25
25
 
26
26
  def cancel(cust_ref:)
27
27
  Response.new get_request("cart/orders/wms_cancel/#{cust_ref}").body["response"]
28
28
  end
29
29
 
30
- def update_status_confirmed(cust_ref:, **attributes)
31
- Response.new post_request("cart/orders/update/#{cust_ref}", body: attributes).body
30
+ def update_status_confirmed(cust_ref:, shipments:)
31
+ body = { order_status: "confirmed", shipments: shipments }
32
+ Response.new post_request("cart/orders/update/#{cust_ref}",
33
+ body: body).body
32
34
  end
33
35
  end
34
36
  end
@@ -4,7 +4,7 @@ module Extensiv
4
4
  class Collection
5
5
  attr_reader :data, :next_page, :prev_page
6
6
 
7
- def self.from_response(response, type:, params: nil)
7
+ def self.from_response(response, type:, **params)
8
8
  body = response.body
9
9
  new(
10
10
  data: body["response"].map { |attrs| type.new(attrs) },
@@ -20,15 +20,21 @@ module Extensiv
20
20
  end
21
21
 
22
22
  def self.next_page(params)
23
- return @next_page = params[:page].to_i + 1 if params[:page].present? && params[:page].to_i >= 1
24
-
25
- @next_page = 2
23
+ return 2 unless params[:page]
24
+
25
+ current_page = params[:page].to_i
26
+ return 2 if current_page < 1
27
+
28
+ current_page + 1
26
29
  end
27
-
30
+
28
31
  def self.prev_page(params)
29
- return @prev_page = params[:page].to_i - 1 if params[:page].present? && params[:page].to_i > 1
30
-
31
- @prev_page = nil
32
+ return nil unless params[:page]
33
+
34
+ current_page = params[:page].to_i
35
+ return nil if current_page <= 1
36
+
37
+ current_page - 1
32
38
  end
33
39
  end
34
40
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Extensiv
4
- VERSION = "0.1.1"
4
+ VERSION = "0.2.3"
5
5
  end
@@ -0,0 +1,3 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "extensiv"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: extensiv_ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Williams
8
8
  autorequire:
9
- bindir: exe
9
+ bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-07 00:00:00.000000000 Z
11
+ date: 2025-09-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.7'
19
+ version: '2.9'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.7'
26
+ version: '2.9'
27
27
  description: A Ruby interface to the CartRover / Extensiv Integration Manager API.
28
28
  email:
29
29
  - nathan@nathan.la
@@ -57,6 +57,7 @@ files:
57
57
  - lib/extensiv/objects/ship_method.rb
58
58
  - lib/extensiv/resource.rb
59
59
  - lib/extensiv/version.rb
60
+ - lib/extensiv_ruby.rb
60
61
  - sig/extensiv.rbs
61
62
  homepage: https://github.com/narch/extensiv_ruby
62
63
  licenses:
@@ -71,14 +72,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
71
72
  requirements:
72
73
  - - ">="
73
74
  - !ruby/object:Gem::Version
74
- version: 2.6.0
75
+ version: 3.0.0
75
76
  required_rubygems_version: !ruby/object:Gem::Requirement
76
77
  requirements:
77
78
  - - ">="
78
79
  - !ruby/object:Gem::Version
79
80
  version: '0'
80
81
  requirements: []
81
- rubygems_version: 3.4.10
82
+ rubygems_version: 3.5.16
82
83
  signing_key:
83
84
  specification_version: 4
84
85
  summary: Provides a Ruby wrapper for the CartRover API