seatsio 9 → 10

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: 35646a1ec4697502bc100b5262ef158385b709ad2a3e172fad6a7fd0604fbe80
4
- data.tar.gz: 103c9e88f8b012cd209e39dbb48e71d0d1b20bd464974a7bc17c6f5c71d18b68
3
+ metadata.gz: 0d3280a812ca7a901bf41f74327383ce34b3839953c1add15c3a228c0460ee4e
4
+ data.tar.gz: e6d4c2cbc0ebdb81120eee3b622523c88a0d3660e5a4ce13de5784658ba08ebc
5
5
  SHA512:
6
- metadata.gz: 136436e9396f9b964d16993c8a6385bbfbb2dbf9ef25d468bad0f70e47c8a04534dd960c2948951754d40b2baef9a9738f2d59a50a4e1bdebf2132600d6bc3a8
7
- data.tar.gz: 00dc9d80777a01e29b78833196cc2f161e45d0ce3b20c09855f7734f5621bf5c781845b545d58ec74707cb01df3f2eb33982f973a18cbb621885b2907aa007c4
6
+ metadata.gz: 6cb439523b5b1e3b4384207158274de5654d7aeffa643c0e41645dcd122d23f4caa29983f5a36b8dd20cce08c4324745141cc0cc98f751941b7f0f2865baa128
7
+ data.tar.gz: 8a264e8920d4354f602c332268c69e8a1c943820e635f30456006b7fc32e6da17247bf60358483a9eb4bfa2ca7c7c855f7246262c70de55d3165dddf3f708c03
data/README.md CHANGED
@@ -20,7 +20,7 @@ The reason: we want to play safe and assume that each release might break backwa
20
20
  require('seatsio')
21
21
  client = Seatsio::Client.new("my-secret-key") # can be found on https://app.seats.io/settings
22
22
  chart = client.charts.create
23
- event = client.events.create(chart.key)
23
+ event = client.events.create key: chart.key
24
24
  ```
25
25
 
26
26
  ### Booking objects
@@ -60,15 +60,45 @@ client.events.change_object_status("<EVENT KEY>", ["A-1", "A-2"], "my-custom-sta
60
60
  ```ruby
61
61
  require('seatsio')
62
62
  client = Seatsio::Client.new("my-secret-key")
63
- charts = client.charts.list # returns a Enumerable
63
+ charts = client.charts.list
64
+ charts.each do |chart|
65
+ puts chart.key
66
+ end
64
67
  ```
65
68
 
66
- ### Listing the first page of charts (default page size is 20)
69
+ Note: `list` returns an `Enumerable`, which under the hood calls the seats.io API to fetch charts page by page. So multiple API calls may be done underneath to fetch all charts.
70
+
71
+ ### Listing charts page by page
72
+
73
+ E.g. to show charts in a paginated list on a dashboard.
74
+
75
+ Each page is Enumerable, and it has `next_page_starts_after` and `previous_page_ends_before` properties. Those properties are the chart IDs after which the next page starts or the previous page ends.
67
76
 
68
77
  ```ruby
69
- require('seatsio')
70
- client = Seatsio::Client.new("my-secret-key")
71
- charts = client.charts.list.first_page # returns a Enumerable
78
+ # ... user initially opens the screen ...
79
+
80
+ firstPage = client.charts.list.first_page()
81
+ firstPage.each do |chart|
82
+ puts chart.key
83
+ end
84
+ ```
85
+
86
+ ```ruby
87
+ # ... user clicks on 'next page' button ...
88
+
89
+ nextPage = client.charts.list.page_after(firstPage.next_page_starts_after)
90
+ nextPage.each do |chart|
91
+ puts chart.key
92
+ end
93
+ ```
94
+
95
+ ```ruby
96
+ # ... user clicks on 'previous page' button ...
97
+
98
+ previousPage = client.charts.list.page_before(nextPage.previous_page_ends_before)
99
+ previousPage.each do |chart|
100
+ puts chart.key
101
+ end
72
102
  ```
73
103
 
74
104
  # Error handling
@@ -11,7 +11,21 @@ module Seatsio
11
11
  end
12
12
 
13
13
  def by_label(chart_key)
14
- url = "reports/charts/#{chart_key}/byLabel"
14
+ get_chart_report('byLabel', chart_key)
15
+ end
16
+
17
+ def by_category_key(chart_key)
18
+ get_chart_report('byCategoryKey', chart_key)
19
+ end
20
+
21
+ def by_category_label(chart_key)
22
+ get_chart_report('byCategoryLabel', chart_key)
23
+ end
24
+
25
+ private
26
+
27
+ def get_chart_report(report_type, chart_key)
28
+ url = "reports/charts/#{chart_key}/#{report_type}"
15
29
  body = @http_client.get(url)
16
30
  Domain::ChartReport.new(body)
17
31
  end
@@ -1,3 +1,3 @@
1
1
  module Seatsio
2
- VERSION = "9"
2
+ VERSION = "10"
3
3
  end
data/releasing.md ADDED
@@ -0,0 +1,4 @@
1
+ *Note: this is internal documentation for the seats.io team*
2
+
3
+ 1) Set the correct version number in version.rb
4
+ 2) Create the release in GitHub
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: '9'
4
+ version: '10'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Seats.io
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-02-13 00:00:00.000000000 Z
11
+ date: 2019-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -137,6 +137,7 @@ files:
137
137
  - lib/seatsio/subaccounts.rb
138
138
  - lib/seatsio/util.rb
139
139
  - lib/seatsio/version.rb
140
+ - releasing.md
140
141
  - seatsio.gemspec
141
142
  homepage: http://seats.io
142
143
  licenses: []
@@ -156,7 +157,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
156
157
  - !ruby/object:Gem::Version
157
158
  version: '0'
158
159
  requirements: []
159
- rubygems_version: 3.0.2
160
+ rubygems_version: 3.0.3
160
161
  signing_key:
161
162
  specification_version: 4
162
163
  summary: the official Seats.io Ruby client library