stream-chat-ruby 2.9.0 → 2.11.2

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: 31e7de9bf8ce95a2bf565ac99b5a686deb0195bb3ec20f2004ec784f84d00ff0
4
- data.tar.gz: '0959555927fa04219edc014cac1247cbca8942387360b2099080138ddbd22664'
3
+ metadata.gz: 2fe612ee0891b1f564057942d1f9ff74de3b1cf423dc3985e24ab45c87ef8687
4
+ data.tar.gz: 8ea59fb71fcae04419b9a55d7466e3da2da8eee70d7fc1fccedd60037f5d7672
5
5
  SHA512:
6
- metadata.gz: 70608f85204fb4a1c9451fed4f27281579d23c5e558aea25d752735309b62409cdd15986ad6cb1550e65a5e9072fde29b1792fbf16c2dc5fc1c8b020f1f68b96
7
- data.tar.gz: 4907cdf3f110e825a47c45f0759684e9bf3ae4449f74ff8546238d60f39e92c611f1f3e8b3fd855dfe2bf06846432968ee7fa56ee46f3cc946b03af63885b121
6
+ metadata.gz: 164fb93106e15822aa2bb1a7561b2f5e24bcb94b09782851dfefbf0a05584b15d3a07a4190403c26a31e251f6b9b9d2ebd6c2853312a253a7dcad6ddd3f430cc
7
+ data.tar.gz: 1e2a0b04c1eac20184c68d24dd10554acb064b61f2d732341184747131721e8f3dd74a6455e7acf958313af1be076c33bdc414f382e4b8d7932c1acb45a06ac8
@@ -0,0 +1 @@
1
+ * @ffenix113
@@ -1,9 +1,9 @@
1
- name: build
1
+ name: test
2
2
 
3
3
  on: [pull_request]
4
4
 
5
5
  jobs:
6
- build:
6
+ test:
7
7
  runs-on: ubuntu-latest
8
8
  strategy:
9
9
  max-parallel: 1
@@ -12,15 +12,14 @@ jobs:
12
12
  name: Ruby ${{ matrix.ruby }}
13
13
  steps:
14
14
  - uses: actions/checkout@v2
15
- - uses: actions/setup-ruby@v1
15
+ - uses: ruby/setup-ruby@v1
16
16
  with:
17
17
  ruby-version: ${{ matrix.ruby }}
18
+ bundler-cache: true
18
19
 
19
20
  - env:
20
21
  STREAM_CHAT_API_KEY: ${{ secrets.STREAM_CHAT_API_KEY }}
21
22
  STREAM_CHAT_API_SECRET: ${{ secrets.STREAM_CHAT_API_SECRET }}
22
23
  run: |
23
- gem install bundler
24
- bundle install --jobs 4 --retry 3
25
24
  bundle exec rake rubocop
26
25
  bundle exec rake test
data/CHANGELOG.md CHANGED
@@ -1,3 +1,23 @@
1
+ ## October 5th, 2021 - 2.11.2
2
+
3
+ - Add Codeowners file
4
+ - Fix StreamChannelException raises
5
+ - Fix rubocop linting error
6
+ - Fix channel export test
7
+ - Update Github action
8
+
9
+ ## August 23rd, 2021 - 2.11.1
10
+
11
+ - Use edge as base url
12
+
13
+ ## June 25th, 2021 - 2.11.0
14
+
15
+ - Add support for improved search
16
+
17
+ ## June 4th, 2021 - 2.10.0
18
+
19
+ - Add custom command CRUD support
20
+
1
21
  ## May 31st, 2021 - 2.9.0
2
22
 
3
23
  - Add support for app and user level token revoke
@@ -19,7 +19,7 @@ module StreamChat
19
19
  end
20
20
 
21
21
  def url
22
- raise StreamChannelException 'channel does not have an id' if @id.nil?
22
+ raise StreamChannelException, 'channel does not have an id' if @id.nil?
23
23
 
24
24
  "channels/#{@channel_type}/#{@id}"
25
25
  end
@@ -85,7 +85,7 @@ module StreamChat
85
85
  end
86
86
 
87
87
  def update_partial(set = nil, unset = nil)
88
- raise StreamChannelException 'set or unset is needed' if set.nil? && unset.nil?
88
+ raise StreamChannelException, 'set or unset is needed' if set.nil? && unset.nil?
89
89
 
90
90
  payload = { set: set, unset: unset }
91
91
  @client.patch(url, data: payload)
@@ -14,7 +14,7 @@ module StreamChat
14
14
  DEFAULT_BLOCKLIST = 'profanity_en_2020_v1'
15
15
 
16
16
  class Client
17
- BASE_URL = 'https://chat-us-east-1.stream-io-api.com'
17
+ BASE_URL = 'https://chat.stream-io-api.com'
18
18
 
19
19
  attr_reader :api_key
20
20
  attr_reader :api_secret
@@ -92,13 +92,21 @@ module StreamChat
92
92
  get("messages/#{id}")
93
93
  end
94
94
 
95
- def search(filter_conditions, query, **options)
96
- params = options.merge({
97
- filter_conditions: filter_conditions,
98
- query: query
99
- })
95
+ def search(filter_conditions, query, sort: nil, **options)
96
+ offset = options[:offset]
97
+ next_value = options[:next]
98
+ raise ArgumentError, 'cannot use offset with next or sort parameters' if offset&.positive? && (next_value || (!sort.nil? && !sort.empty?))
100
99
 
101
- get('search', params: { payload: params.to_json })
100
+ to_merge = {
101
+ filter_conditions: filter_conditions,
102
+ sort: get_sort_fields(sort)
103
+ }
104
+ if query.is_a? String
105
+ to_merge[:query] = query
106
+ else
107
+ to_merge[:message_filter_conditions] = query
108
+ end
109
+ get('search', params: { payload: options.merge(to_merge).to_json })
102
110
  end
103
111
 
104
112
  def update_users(users)
@@ -352,6 +360,26 @@ module StreamChat
352
360
  post('check_sqs', data: { sqs_key: sqs_key, sqs_secret: sqs_secret, sqs_url: sqs_url })
353
361
  end
354
362
 
363
+ def create_command(command)
364
+ post('commands', data: command)
365
+ end
366
+
367
+ def get_command(name)
368
+ get("commands/#{name}")
369
+ end
370
+
371
+ def update_command(name, command)
372
+ put("commands/#{name}", data: command)
373
+ end
374
+
375
+ def delete_command(name)
376
+ delete("commands/#{name}")
377
+ end
378
+
379
+ def list_commands
380
+ get('commands')
381
+ end
382
+
355
383
  private
356
384
 
357
385
  def get_default_params
@@ -364,8 +392,8 @@ module StreamChat
364
392
 
365
393
  def get_default_headers
366
394
  {
367
- "Content-Type": 'application/json',
368
- "X-Stream-Client": get_user_agent
395
+ 'Content-Type': 'application/json',
396
+ 'X-Stream-Client': get_user_agent
369
397
  }
370
398
  end
371
399
 
@@ -385,7 +413,7 @@ module StreamChat
385
413
  headers['Authorization'] = @auth_token
386
414
  headers['stream-auth-type'] = 'jwt'
387
415
  url = [@base_url, relative_url].join('/')
388
- params = params.nil? ? {} : params
416
+ params = {} if params.nil?
389
417
  params = (get_default_params.merge(params).sort_by { |k, _v| k.to_s }).to_h
390
418
  url = "#{url}?#{URI.encode_www_form(params)}"
391
419
 
@@ -3,5 +3,5 @@
3
3
  # lib/version.rb
4
4
 
5
5
  module StreamChat
6
- VERSION = '2.9.0'
6
+ VERSION = '2.11.2'
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stream-chat-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.9.0
4
+ version: 2.11.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mircea Cosbuc
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-31 00:00:00.000000000 Z
11
+ date: 2021-10-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -86,6 +86,7 @@ executables: []
86
86
  extensions: []
87
87
  extra_rdoc_files: []
88
88
  files:
89
+ - ".github/CODEOWNERS"
89
90
  - ".github/workflows/ci.yml"
90
91
  - ".gitignore"
91
92
  - ".rubocop.yml"
@@ -120,7 +121,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
121
  - !ruby/object:Gem::Version
121
122
  version: '0'
122
123
  requirements: []
123
- rubygems_version: 3.1.2
124
+ rubygems_version: 3.0.3
124
125
  signing_key:
125
126
  specification_version: 4
126
127
  summary: The low level client for serverside calls for Stream Chat.