seatsio 47.2.0 → 47.4.0

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: 31e060c9c3466596c06e77ee33a0f32e1d23a8f25b4951896e47d5239356b144
4
- data.tar.gz: 2b7c585af4c4220dc947c86d9893e710c10abd0a68dadb82e40b5879b1c23df2
3
+ metadata.gz: 681ba6d999bc5b48fa295d0f6c4160bc2de6d61d005b4d85596dccd2884bcecf
4
+ data.tar.gz: c99824acd3a684672ce1565025805878fa1ab5eaf81e053441605b896404b1bf
5
5
  SHA512:
6
- metadata.gz: a90b0fb7fca89b7b8a8fda9d355dda0344d74ef22ec3bb4b0ac4905b988c3bb871cad88f879de2b636fe559d2b5b24614e108ad3fd4c393594c3e5a172f9f5a8
7
- data.tar.gz: 5f23168252951006e9f8328ce6dceb4ab870a059e1a0e7f5ff8d232e53a1553d5b79d1f0e9a496e7ed82e4497d730530b454934661b2feb87217c2d7f6c0128d
6
+ metadata.gz: c55c8d72ecd63c746644bf9399bc19c96984388ca6ed5099420fe9025061e444e4fd55c0c72e6a40cb79c05a9b3c7d1d933b69177344dde2de917ed68cf4a8f4
7
+ data.tar.gz: bc768c9143654ce7f3b2d8d785c0b89e87102367b21c3dfa56d61e2c5599a5985df4b7c47e19c5bc88244dd74336df6258ef8789cdfe006896d53d70dc9d96b7
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- seatsio (47.2.0)
4
+ seatsio (47.4.0)
5
5
  rest-client (~> 2.0, >= 2.0.2)
6
6
 
7
7
  GEM
@@ -21,7 +21,7 @@ GEM
21
21
  mime-types-data (~> 3.2015)
22
22
  mime-types-data (3.2021.0225)
23
23
  minitest (5.20.0)
24
- minitest-parallel_fork (1.3.1)
24
+ minitest-parallel_fork (2.0.0)
25
25
  minitest (>= 5.15.0)
26
26
  netrc (0.11.0)
27
27
  public_suffix (5.0.3)
@@ -46,7 +46,7 @@ PLATFORMS
46
46
  DEPENDENCIES
47
47
  bundler (~> 2.2)
48
48
  minitest (~> 5.0)
49
- minitest-parallel_fork (~> 1.3)
49
+ minitest-parallel_fork (~> 2.0)
50
50
  rake (~> 13.0)
51
51
  seatsio!
52
52
  webmock (~> 3.4, >= 3.4.2)
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # seatsio-ruby, the official Seats.io Ruby client library
1
+ # seatsio-ruby, the official Seats.io Ruby SDK
2
2
 
3
3
  [![Build](https://github.com/seatsio/seatsio-ruby/workflows/Build/badge.svg)](https://github.com/seatsio/seatsio-ruby/actions/workflows/build.yml)
4
4
  [![Gem Version](https://badge.fury.io/rb/seatsio.svg)](https://badge.fury.io/rb/seatsio)
@@ -259,6 +259,18 @@ module Seatsio
259
259
  end
260
260
  end
261
261
 
262
+ class EventLogItem
263
+ attr_reader :id, :workspace_key, :type, :date, :data
264
+
265
+ def initialize(data)
266
+ @id = data['id']
267
+ @workspace_key = data['workspaceKey']
268
+ @type = data['type']
269
+ @date = DateTime.iso8601(data['date'])
270
+ @data = data['data']
271
+ end
272
+ end
273
+
262
274
  class ChangeObjectStatusResult
263
275
 
264
276
  attr_reader :objects
@@ -0,0 +1,27 @@
1
+ require "seatsio/exception"
2
+ require "base64"
3
+ require "seatsio/httpClient"
4
+ require "seatsio/domain"
5
+ require "json"
6
+ require "cgi"
7
+
8
+ module Seatsio
9
+ class EventLogClient
10
+
11
+ def initialize(http_client)
12
+ @http_client = http_client
13
+ end
14
+
15
+ def list(filter: nil)
16
+ extended_cursor = cursor
17
+ extended_cursor.set_query_param('filter', filter)
18
+ extended_cursor
19
+ end
20
+
21
+ private
22
+
23
+ def cursor()
24
+ Pagination::Cursor.new(EventLogItem, 'event-log', @http_client)
25
+ end
26
+ end
27
+ end
@@ -32,7 +32,7 @@ module Seatsio
32
32
 
33
33
  def update(key:, chart_key: nil, event_key: nil, name: nil, date: nil, table_booking_config: nil, object_categories: nil, categories: nil, is_in_the_past: nil)
34
34
  payload = build_event_request(chart_key, event_key, name, date, table_booking_config, object_categories, categories, channels: nil, is_in_the_past: is_in_the_past)
35
- @http_client.post("/events/#{key}", payload)
35
+ @http_client.post("events/#{key}", payload)
36
36
  end
37
37
 
38
38
  def override_season_object_status(key:, objects:)
@@ -117,7 +117,7 @@ module Seatsio
117
117
  end
118
118
 
119
119
  def delete(key:)
120
- @http_client.delete("/events/#{key}")
120
+ @http_client.delete("events/#{key}")
121
121
  end
122
122
 
123
123
  def retrieve(key:)
@@ -133,12 +133,12 @@ module Seatsio
133
133
  if object_id != nil
134
134
  status_changes_for_object key: key, object_id: object_id
135
135
  else
136
- Pagination::Cursor.new(StatusChange, "/events/#{key}/status-changes", @http_client)
136
+ Pagination::Cursor.new(StatusChange, "events/#{key}/status-changes", @http_client)
137
137
  end
138
138
  end
139
139
 
140
140
  def status_changes_for_object(key:, object_id:)
141
- Pagination::Cursor.new(StatusChange, "/events/#{key}/objects/#{object_id}/status-changes", @http_client)
141
+ Pagination::Cursor.new(StatusChange, "events/#{key}/objects/#{object_id}/status-changes", @http_client)
142
142
  end
143
143
 
144
144
  def mark_as_not_for_sale(key:, objects: nil, area_places: nil, categories: nil)
@@ -25,13 +25,13 @@ module Seatsio
25
25
  end
26
26
 
27
27
  def retrieve(hold_token)
28
- response = @http_client.get("/hold-tokens/#{hold_token}")
28
+ response = @http_client.get("hold-tokens/#{hold_token}")
29
29
  HoldToken.new(response)
30
30
  end
31
31
 
32
32
  def expire_in_minutes(hold_token, expires_in_minutes = nil)
33
33
  body = {"expiresInMinutes": expires_in_minutes}
34
- response = @http_client.post("/hold-tokens/#{hold_token}", body)
34
+ response = @http_client.post("hold-tokens/#{hold_token}", body)
35
35
  HoldToken.new(response)
36
36
  end
37
37
  end
@@ -24,7 +24,7 @@ module Seatsio
24
24
  request = {}
25
25
  request['key'] = partial_season_key if partial_season_key
26
26
  request['eventKeys'] = event_keys if event_keys
27
- response = @http_client.post("/seasons/#{top_level_season_key}/partial-seasons", request)
27
+ response = @http_client.post("seasons/#{top_level_season_key}/partial-seasons", request)
28
28
  Season.new(response)
29
29
  end
30
30
 
@@ -36,19 +36,19 @@ module Seatsio
36
36
  request = {}
37
37
  request['eventKeys'] = event_keys if event_keys
38
38
  request['numberOfEvents'] = number_of_events if number_of_events
39
- response = @http_client.post("/seasons/#{key}/actions/create-events", request)
39
+ response = @http_client.post("seasons/#{key}/actions/create-events", request)
40
40
  Events.new(response).events
41
41
  end
42
42
 
43
43
  def add_events_to_partial_season(top_level_season_key:, partial_season_key:, event_keys:)
44
44
  request = {}
45
45
  request['eventKeys'] = event_keys
46
- response = @http_client.post("/seasons/#{top_level_season_key}/partial-seasons/#{partial_season_key}/actions/add-events", request)
46
+ response = @http_client.post("seasons/#{top_level_season_key}/partial-seasons/#{partial_season_key}/actions/add-events", request)
47
47
  Season.new(response)
48
48
  end
49
49
 
50
50
  def remove_event_from_partial_season(top_level_season_key:, partial_season_key:, event_key:)
51
- response = @http_client.delete("/seasons/#{top_level_season_key}/partial-seasons/#{partial_season_key}/events/#{event_key}")
51
+ response = @http_client.delete("seasons/#{top_level_season_key}/partial-seasons/#{partial_season_key}/events/#{event_key}")
52
52
  Season.new(response)
53
53
  end
54
54
 
@@ -1,3 +1,3 @@
1
1
  module Seatsio
2
- VERSION = "47.2.0"
2
+ VERSION = "47.4.0"
3
3
  end
@@ -63,7 +63,7 @@ module Seatsio
63
63
  end
64
64
 
65
65
  def retrieve(key:)
66
- response = @http_client.get("/workspaces/#{key}")
66
+ response = @http_client.get("workspaces/#{key}")
67
67
  Workspace.new(response)
68
68
  end
69
69
 
data/lib/seatsio.rb CHANGED
@@ -7,11 +7,12 @@ require 'seatsio/hold_tokens'
7
7
  require 'seatsio/chart_reports'
8
8
  require 'seatsio/event_reports'
9
9
  require 'seatsio/usage_reports'
10
+ require 'seatsio/event_log'
10
11
 
11
12
  module Seatsio
12
13
  class Client
13
14
  attr_reader :charts, :workspaces, :events, :seasons,
14
- :hold_tokens, :chart_reports, :event_reports, :usage_reports
15
+ :hold_tokens, :chart_reports, :event_reports, :usage_reports, :event_log
15
16
 
16
17
  def initialize(region, secret_key, workspace_key = nil, max_retries = 5)
17
18
  base_url = region.url
@@ -24,6 +25,7 @@ module Seatsio
24
25
  @chart_reports = ChartReportsClient.new(@http_client)
25
26
  @event_reports = EventReportsClient.new(@http_client)
26
27
  @usage_reports = UsageReportsClient.new(@http_client)
28
+ @event_log = EventLogClient.new(@http_client)
27
29
  end
28
30
  end
29
31
 
data/seatsio.gemspec CHANGED
@@ -26,5 +26,5 @@ Gem::Specification.new do |spec|
26
26
  spec.add_development_dependency "rake", "~> 13.0"
27
27
  spec.add_development_dependency "minitest", "~> 5.0"
28
28
  spec.add_development_dependency 'webmock', '~> 3.4', '>= 3.4.2'
29
- spec.add_development_dependency 'minitest-parallel_fork', '~> 1.3'
29
+ spec.add_development_dependency 'minitest-parallel_fork', '~> 2.0'
30
30
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: seatsio
3
3
  version: !ruby/object:Gem::Version
4
- version: 47.2.0
4
+ version: 47.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Seats.io
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-11-09 00:00:00.000000000 Z
11
+ date: 2024-01-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -98,14 +98,14 @@ dependencies:
98
98
  requirements:
99
99
  - - "~>"
100
100
  - !ruby/object:Gem::Version
101
- version: '1.3'
101
+ version: '2.0'
102
102
  type: :development
103
103
  prerelease: false
104
104
  version_requirements: !ruby/object:Gem::Requirement
105
105
  requirements:
106
106
  - - "~>"
107
107
  - !ruby/object:Gem::Version
108
- version: '1.3'
108
+ version: '2.0'
109
109
  description: This is the official Ruby client library for the Seats.io V2 REST API
110
110
  email:
111
111
  - nahuel@seats.io
@@ -131,6 +131,7 @@ files:
131
131
  - lib/seatsio/chart_reports.rb
132
132
  - lib/seatsio/charts.rb
133
133
  - lib/seatsio/domain.rb
134
+ - lib/seatsio/event_log.rb
134
135
  - lib/seatsio/event_reports.rb
135
136
  - lib/seatsio/events.rb
136
137
  - lib/seatsio/events/change_best_available_object_status_request.rb