embed_workflow 0.2.1 → 0.3.0

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: 2fcff57bde94551b5bb62037b9444713e9c308f9cfe69e1cbb49bb5d00155ab0
4
- data.tar.gz: c1adcace9046c5a66257618dfaf6a732386e556e3abbe658520a3c04b3a4b728
3
+ metadata.gz: d940c1ac4aa004639b88a8c79e2b608963b7e4aeb5562306300b4590ef419f4d
4
+ data.tar.gz: ae211baae91378a65e920ed3f7156b032be3e175103f553b66d2ae1cd398fda6
5
5
  SHA512:
6
- metadata.gz: a99a3671d5c01b52b112cb71c4832760413213e10df78f0b90bbb708eedadc5a81f31dadf8d05328d6d5e8fd1370188cb0e5c660386b8fd91b279b37d070c204
7
- data.tar.gz: fad1fd3c295dd970c779247021c9e25406cabb05382ea09aed6b81d6bdc83b88495bfe691db3e427df1909193ee20cbe01f60ea8f2d49bbdee8289a0be91a2b1
6
+ metadata.gz: 685e10f34dd301212ce5bb8a994ee244c2a33c069791e80f7d0fd2ff9a70e34270a3b1f5bc835cfa7aae3b5efc13c7a073251a25253aad9a20080f9e815d2099
7
+ data.tar.gz: 602dc8e268542decf8b763676173056946bafa6019b58a620df28741e7cfd507aa3d4f939ee69e31eb1d5c96276f9c13c1a1299e44411ef8116c134fb74efe72
@@ -2,10 +2,18 @@
2
2
 
3
3
  module EmbedWorkflow
4
4
  module Base
5
+ UNSET = Object.new.freeze
6
+
5
7
  attr_accessor :skey
6
8
 
7
9
  class << self
8
10
  attr_accessor :skey
9
11
  end
12
+
13
+ private
14
+
15
+ def prepare_params(hash)
16
+ hash.reject { |_, v| v == UNSET }
17
+ end
10
18
  end
11
19
  end
@@ -7,11 +7,9 @@ module EmbedWorkflow
7
7
  BASE_API_URL = "https://embedworkflow.com/".freeze
8
8
 
9
9
  def client
10
- return @client if defined?(@client)
11
- @client = create_connection(URI.parse(BASE_API_URL))
12
- @client.use_ssl = true
13
-
14
- @client
10
+ create_connection(URI.parse(BASE_API_URL)).tap do |client|
11
+ client.use_ssl = true
12
+ end
15
13
  end
16
14
 
17
15
  def get_request(path:, auth: true, params: {})
@@ -11,14 +11,15 @@ module EmbedWorkflow
11
11
 
12
12
  RESOURCE_BASE_PATH = "#{BASE_API_PATH}/users".freeze
13
13
 
14
- def upsert(key:, name: nil, email: nil, data: nil, groups: nil)
15
- attrs = {
14
+ def upsert(key:, name: UNSET, email: UNSET, data: UNSET, groups: UNSET, time_zone: UNSET)
15
+ attrs = prepare_params({
16
16
  key: key,
17
17
  name: name,
18
18
  email: email,
19
19
  data: data,
20
- groups: groups
21
- }.compact
20
+ groups: groups,
21
+ time_zone: time_zone
22
+ })
22
23
 
23
24
  put_request(
24
25
  path: "#{RESOURCE_BASE_PATH}/#{key}",
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EmbedWorkflow
4
- VERSION = "0.2.1"
4
+ VERSION = "0.3.0"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: embed_workflow
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Embed Workflow
@@ -89,7 +89,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
89
89
  - !ruby/object:Gem::Version
90
90
  version: '0'
91
91
  requirements: []
92
- rubygems_version: 3.6.7
92
+ rubygems_version: 3.6.9
93
93
  specification_version: 4
94
94
  summary: API client for Embed Workflow
95
95
  test_files: []