zendesk_apps_support 4.29.10 → 4.31.1
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '01083332c185deb236fcc2f4fb3e66b65a695085790b448c8451f4c8c1b21aac'
|
4
|
+
data.tar.gz: 1580841170ebef45a0d9a9c27a65e567683e353d6c4ba6293be06a60d2da64de
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f06ed79968e27181e17530785e21e678aaf45a2ff1e3776f29d0f8de3ecde20b125f01b5698196292e57e5ee431a1ac5e2359da6dddec417c8323308d97ee746
|
7
|
+
data.tar.gz: a63fb2623abbe41fb40475358793c2ec47c75562e3fd0ede58ea4e6630e4e2d48adacd498a77c3c4dfc8add50a41f83ab26309f5ee69daeb7fbe69b5e65edc43
|
data/README.md
CHANGED
@@ -9,12 +9,6 @@ This repo is owned and maintained by the Zendesk Apps team. You can reach us on
|
|
9
9
|
## Getting Started
|
10
10
|
When you want to help **develop** this tool, you will need to clone this repo.
|
11
11
|
|
12
|
-
Since ZAS is used in ZAT, which supports Ruby 2.1, the Bundler Gem Version 1.17.3 is required for bundling dependencies. If you are working with a version that is higher than `1.17.3`, you will need to downgrade it.
|
13
|
-
```
|
14
|
-
$ gem install bundler --version 1.17.3
|
15
|
-
$ bundle install
|
16
|
-
```
|
17
|
-
|
18
12
|
Very likely you want to try out your changes with the use of ZAT. See [ZAT](https://github.com/zendesk/zendesk_apps_tools/) for how to get ZAT/ZAS in development.
|
19
13
|
|
20
14
|
## Testing
|
@@ -2,10 +2,11 @@
|
|
2
2
|
|
3
3
|
module ZendeskAppsSupport
|
4
4
|
class AppRequirement
|
5
|
+
WEBHOOKS_KEY = 'webhooks'
|
5
6
|
CUSTOM_OBJECTS_KEY = 'custom_objects'
|
6
7
|
CUSTOM_OBJECTS_TYPE_KEY = 'custom_object_types'
|
7
8
|
CUSTOM_OBJECTS_RELATIONSHIP_TYPE_KEY = 'custom_object_relationship_types'
|
8
9
|
TYPES = %w[automations channel_integrations custom_objects macros targets views ticket_fields
|
9
|
-
triggers user_fields organization_fields].freeze
|
10
|
+
triggers user_fields organization_fields webhooks].freeze
|
10
11
|
end
|
11
12
|
end
|
@@ -29,6 +29,7 @@ module ZendeskAppsSupport
|
|
29
29
|
errors << invalid_channel_integrations(requirements)
|
30
30
|
errors << invalid_custom_fields(requirements)
|
31
31
|
errors << invalid_custom_objects(requirements)
|
32
|
+
errors << invalid_webhooks(requirements)
|
32
33
|
errors << missing_required_fields(requirements)
|
33
34
|
errors.flatten!
|
34
35
|
errors.compact!
|
@@ -46,7 +47,7 @@ module ZendeskAppsSupport
|
|
46
47
|
def missing_required_fields(requirements)
|
47
48
|
[].tap do |errors|
|
48
49
|
requirements.each do |requirement_type, requirement|
|
49
|
-
next if %w[channel_integrations custom_objects].include? requirement_type
|
50
|
+
next if %w[channel_integrations custom_objects webhooks].include? requirement_type
|
50
51
|
requirement.each do |identifier, fields|
|
51
52
|
next if fields.nil? || fields.include?('title')
|
52
53
|
errors << ValidationError.new(:missing_required_fields,
|
@@ -107,6 +108,28 @@ module ZendeskAppsSupport
|
|
107
108
|
end
|
108
109
|
end
|
109
110
|
|
111
|
+
def invalid_webhooks(requirements)
|
112
|
+
webhook_requirements = requirements[AppRequirement::WEBHOOKS_KEY]
|
113
|
+
|
114
|
+
return if webhook_requirements.nil?
|
115
|
+
|
116
|
+
webhook_requirements.map do |identifier, requirement|
|
117
|
+
validate_webhook_keys(identifier, requirement)
|
118
|
+
end.flatten
|
119
|
+
end
|
120
|
+
|
121
|
+
def validate_webhook_keys(identifier, requirement)
|
122
|
+
required_keys = %w[name status endpoint http_method request_format]
|
123
|
+
|
124
|
+
missing_keys = required_keys - requirement.keys
|
125
|
+
|
126
|
+
missing_keys.map do |key|
|
127
|
+
ValidationError.new(:missing_required_fields,
|
128
|
+
field: key,
|
129
|
+
identifier: identifier)
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
110
133
|
def invalid_custom_objects(requirements)
|
111
134
|
custom_objects = requirements[AppRequirement::CUSTOM_OBJECTS_KEY]
|
112
135
|
return if custom_objects.nil?
|
metadata
CHANGED
@@ -1,17 +1,17 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zendesk_apps_support
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.31.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James A. Rosen
|
8
8
|
- Likun Liu
|
9
9
|
- Sean Caffery
|
10
10
|
- Daniel Ribeiro
|
11
|
-
autorequire:
|
11
|
+
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date:
|
14
|
+
date: 2022-02-09 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: i18n
|
@@ -332,7 +332,7 @@ homepage: http://github.com/zendesk/zendesk_apps_support
|
|
332
332
|
licenses:
|
333
333
|
- Apache License Version 2.0
|
334
334
|
metadata: {}
|
335
|
-
post_install_message:
|
335
|
+
post_install_message:
|
336
336
|
rdoc_options: []
|
337
337
|
require_paths:
|
338
338
|
- lib
|
@@ -347,8 +347,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
347
347
|
- !ruby/object:Gem::Version
|
348
348
|
version: 1.3.6
|
349
349
|
requirements: []
|
350
|
-
rubygems_version: 3.0.
|
351
|
-
signing_key:
|
350
|
+
rubygems_version: 3.0.1
|
351
|
+
signing_key:
|
352
352
|
specification_version: 4
|
353
353
|
summary: Support to help you develop Zendesk Apps.
|
354
354
|
test_files: []
|