trycourier 4.18.0 → 4.18.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 +4 -4
- data/CHANGELOG.md +8 -0
- data/lib/courier/models/audience.rb +5 -3
- data/lib/courier/models/audience_filter_config.rb +29 -1
- data/lib/courier/models/audience_update_params.rb +7 -3
- data/lib/courier/resources/audiences.rb +1 -1
- data/lib/courier/version.rb +1 -1
- data/rbi/courier/models/audience.rbi +6 -3
- data/rbi/courier/models/audience_filter_config.rbi +54 -5
- data/rbi/courier/models/audience_update_params.rbi +9 -3
- data/rbi/courier/resources/audiences.rbi +3 -1
- data/sig/courier/models/audience_filter_config.rbs +30 -3
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ce3813405deb188367bed5849b23a16ea329a497b654278d0a18b2f992b15bec
|
|
4
|
+
data.tar.gz: dd921945bf22141d5505b42420046cd6447a77b033f9866714c8f6fa7692e240
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9174a2e66c46289020fe6d1837690667a7fc1918b7035a18f964be0b46b55eb41cee98a5f8befd8c5acae02b07030e47d0c49e6fd50114be096565850981c849
|
|
7
|
+
data.tar.gz: 48a7ccea6a0357ae2c452a7f9e727daf41b4675a884eb7c03dc1cf20b18a052bae53b022357f69a1e3841ab4ad38662ccca5b026beea8e5261dd44238f69291e
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 4.18.1 (2026-07-07)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v4.18.0...v4.18.1](https://github.com/trycourier/courier-ruby/compare/v4.18.0...v4.18.1)
|
|
6
|
+
|
|
7
|
+
### Documentation
|
|
8
|
+
|
|
9
|
+
* **openapi:** document audiences filter combinator (SUP-686) ([fdf42fe](https://github.com/trycourier/courier-ruby/commit/fdf42fecbd77058dbba53a198942efa509bbc1a1))
|
|
10
|
+
|
|
3
11
|
## 4.18.0 (2026-07-06)
|
|
4
12
|
|
|
5
13
|
Full Changelog: [v4.17.1...v4.18.0](https://github.com/trycourier/courier-ruby/compare/v4.17.1...v4.18.0)
|
|
@@ -39,7 +39,8 @@ module Courier
|
|
|
39
39
|
optional :filter, -> { Courier::AudienceFilterConfig }, nil?: true
|
|
40
40
|
|
|
41
41
|
# @!attribute operator
|
|
42
|
-
# The logical operator (AND/OR)
|
|
42
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
43
|
+
# Convenience alias for `filter.operator`.
|
|
43
44
|
#
|
|
44
45
|
# @return [Symbol, Courier::Models::Audience::Operator, nil]
|
|
45
46
|
optional :operator, enum: -> { Courier::Audience::Operator }
|
|
@@ -60,9 +61,10 @@ module Courier
|
|
|
60
61
|
#
|
|
61
62
|
# @param filter [Courier::Models::AudienceFilterConfig, nil] Filter configuration for audience membership containing an array of filter rules
|
|
62
63
|
#
|
|
63
|
-
# @param operator [Symbol, Courier::Models::Audience::Operator] The logical operator (AND/OR)
|
|
64
|
+
# @param operator [Symbol, Courier::Models::Audience::Operator] The logical operator (AND/OR) combining the top-level `filter.filters`. Convenie
|
|
64
65
|
|
|
65
|
-
# The logical operator (AND/OR)
|
|
66
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
67
|
+
# Convenience alias for `filter.operator`.
|
|
66
68
|
#
|
|
67
69
|
# @see Courier::Models::Audience#operator
|
|
68
70
|
module Operator
|
|
@@ -9,10 +9,38 @@ module Courier
|
|
|
9
9
|
# @return [Array<Courier::Models::FilterConfig>]
|
|
10
10
|
required :filters, -> { Courier::Internal::Type::ArrayOf[Courier::FilterConfig] }
|
|
11
11
|
|
|
12
|
-
# @!
|
|
12
|
+
# @!attribute operator
|
|
13
|
+
# The logical operator (AND/OR) combining the rules in `filters`. Required when
|
|
14
|
+
# `filters` contains more than one rule. If omitted, the top-level `operator`
|
|
15
|
+
# field on the request is used instead.
|
|
16
|
+
#
|
|
17
|
+
# @return [Symbol, Courier::Models::AudienceFilterConfig::Operator, nil]
|
|
18
|
+
optional :operator, enum: -> { Courier::AudienceFilterConfig::Operator }
|
|
19
|
+
|
|
20
|
+
# @!method initialize(filters:, operator: nil)
|
|
21
|
+
# Some parameter documentations has been truncated, see
|
|
22
|
+
# {Courier::Models::AudienceFilterConfig} for more details.
|
|
23
|
+
#
|
|
13
24
|
# Filter configuration for audience membership containing an array of filter rules
|
|
14
25
|
#
|
|
15
26
|
# @param filters [Array<Courier::Models::FilterConfig>] Array of filter rules (single conditions or nested groups)
|
|
27
|
+
#
|
|
28
|
+
# @param operator [Symbol, Courier::Models::AudienceFilterConfig::Operator] The logical operator (AND/OR) combining the rules in `filters`. Required when `f
|
|
29
|
+
|
|
30
|
+
# The logical operator (AND/OR) combining the rules in `filters`. Required when
|
|
31
|
+
# `filters` contains more than one rule. If omitted, the top-level `operator`
|
|
32
|
+
# field on the request is used instead.
|
|
33
|
+
#
|
|
34
|
+
# @see Courier::Models::AudienceFilterConfig#operator
|
|
35
|
+
module Operator
|
|
36
|
+
extend Courier::Internal::Type::Enum
|
|
37
|
+
|
|
38
|
+
AND = :AND
|
|
39
|
+
OR = :OR
|
|
40
|
+
|
|
41
|
+
# @!method self.values
|
|
42
|
+
# @return [Array<Symbol>]
|
|
43
|
+
end
|
|
16
44
|
end
|
|
17
45
|
end
|
|
18
46
|
end
|
|
@@ -31,7 +31,9 @@ module Courier
|
|
|
31
31
|
optional :name, String, nil?: true
|
|
32
32
|
|
|
33
33
|
# @!attribute operator
|
|
34
|
-
# The logical operator (AND/OR)
|
|
34
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
35
|
+
# Convenience alias for `filter.operator`: if set, it is applied to the top-level
|
|
36
|
+
# filter group. Prefer setting `operator` directly inside `filter`.
|
|
35
37
|
#
|
|
36
38
|
# @return [Symbol, Courier::Models::AudienceUpdateParams::Operator, nil]
|
|
37
39
|
optional :operator, enum: -> { Courier::AudienceUpdateParams::Operator }, nil?: true
|
|
@@ -48,11 +50,13 @@ module Courier
|
|
|
48
50
|
#
|
|
49
51
|
# @param name [String, nil] The name of the audience
|
|
50
52
|
#
|
|
51
|
-
# @param operator [Symbol, Courier::Models::AudienceUpdateParams::Operator, nil] The logical operator (AND/OR)
|
|
53
|
+
# @param operator [Symbol, Courier::Models::AudienceUpdateParams::Operator, nil] The logical operator (AND/OR) combining the top-level `filter.filters`. Convenie
|
|
52
54
|
#
|
|
53
55
|
# @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}]
|
|
54
56
|
|
|
55
|
-
# The logical operator (AND/OR)
|
|
57
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
58
|
+
# Convenience alias for `filter.operator`: if set, it is applied to the top-level
|
|
59
|
+
# filter group. Prefer setting `operator` directly inside `filter`.
|
|
56
60
|
module Operator
|
|
57
61
|
extend Courier::Internal::Type::Enum
|
|
58
62
|
|
|
@@ -38,7 +38,7 @@ module Courier
|
|
|
38
38
|
#
|
|
39
39
|
# @param name [String, nil] The name of the audience
|
|
40
40
|
#
|
|
41
|
-
# @param operator [Symbol, Courier::Models::AudienceUpdateParams::Operator, nil] The logical operator (AND/OR)
|
|
41
|
+
# @param operator [Symbol, Courier::Models::AudienceUpdateParams::Operator, nil] The logical operator (AND/OR) combining the top-level `filter.filters`. Convenie
|
|
42
42
|
#
|
|
43
43
|
# @param request_options [Courier::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
44
44
|
#
|
data/lib/courier/version.rb
CHANGED
|
@@ -33,7 +33,8 @@ module Courier
|
|
|
33
33
|
end
|
|
34
34
|
attr_writer :filter
|
|
35
35
|
|
|
36
|
-
# The logical operator (AND/OR)
|
|
36
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
37
|
+
# Convenience alias for `filter.operator`.
|
|
37
38
|
sig { returns(T.nilable(Courier::Audience::Operator::TaggedSymbol)) }
|
|
38
39
|
attr_reader :operator
|
|
39
40
|
|
|
@@ -62,7 +63,8 @@ module Courier
|
|
|
62
63
|
updated_at:,
|
|
63
64
|
# Filter configuration for audience membership containing an array of filter rules
|
|
64
65
|
filter: nil,
|
|
65
|
-
# The logical operator (AND/OR)
|
|
66
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
67
|
+
# Convenience alias for `filter.operator`.
|
|
66
68
|
operator: nil
|
|
67
69
|
)
|
|
68
70
|
end
|
|
@@ -83,7 +85,8 @@ module Courier
|
|
|
83
85
|
def to_hash
|
|
84
86
|
end
|
|
85
87
|
|
|
86
|
-
# The logical operator (AND/OR)
|
|
88
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
89
|
+
# Convenience alias for `filter.operator`.
|
|
87
90
|
module Operator
|
|
88
91
|
extend Courier::Internal::Type::Enum
|
|
89
92
|
|
|
@@ -12,21 +12,70 @@ module Courier
|
|
|
12
12
|
sig { returns(T::Array[Courier::FilterConfig]) }
|
|
13
13
|
attr_accessor :filters
|
|
14
14
|
|
|
15
|
+
# The logical operator (AND/OR) combining the rules in `filters`. Required when
|
|
16
|
+
# `filters` contains more than one rule. If omitted, the top-level `operator`
|
|
17
|
+
# field on the request is used instead.
|
|
18
|
+
sig do
|
|
19
|
+
returns(T.nilable(Courier::AudienceFilterConfig::Operator::OrSymbol))
|
|
20
|
+
end
|
|
21
|
+
attr_reader :operator
|
|
22
|
+
|
|
23
|
+
sig do
|
|
24
|
+
params(operator: Courier::AudienceFilterConfig::Operator::OrSymbol).void
|
|
25
|
+
end
|
|
26
|
+
attr_writer :operator
|
|
27
|
+
|
|
15
28
|
# Filter configuration for audience membership containing an array of filter rules
|
|
16
29
|
sig do
|
|
17
|
-
params(
|
|
18
|
-
T
|
|
19
|
-
|
|
30
|
+
params(
|
|
31
|
+
filters: T::Array[Courier::FilterConfig::OrHash],
|
|
32
|
+
operator: Courier::AudienceFilterConfig::Operator::OrSymbol
|
|
33
|
+
).returns(T.attached_class)
|
|
20
34
|
end
|
|
21
35
|
def self.new(
|
|
22
36
|
# Array of filter rules (single conditions or nested groups)
|
|
23
|
-
filters
|
|
37
|
+
filters:,
|
|
38
|
+
# The logical operator (AND/OR) combining the rules in `filters`. Required when
|
|
39
|
+
# `filters` contains more than one rule. If omitted, the top-level `operator`
|
|
40
|
+
# field on the request is used instead.
|
|
41
|
+
operator: nil
|
|
24
42
|
)
|
|
25
43
|
end
|
|
26
44
|
|
|
27
|
-
sig
|
|
45
|
+
sig do
|
|
46
|
+
override.returns(
|
|
47
|
+
{
|
|
48
|
+
filters: T::Array[Courier::FilterConfig],
|
|
49
|
+
operator: Courier::AudienceFilterConfig::Operator::OrSymbol
|
|
50
|
+
}
|
|
51
|
+
)
|
|
52
|
+
end
|
|
28
53
|
def to_hash
|
|
29
54
|
end
|
|
55
|
+
|
|
56
|
+
# The logical operator (AND/OR) combining the rules in `filters`. Required when
|
|
57
|
+
# `filters` contains more than one rule. If omitted, the top-level `operator`
|
|
58
|
+
# field on the request is used instead.
|
|
59
|
+
module Operator
|
|
60
|
+
extend Courier::Internal::Type::Enum
|
|
61
|
+
|
|
62
|
+
TaggedSymbol =
|
|
63
|
+
T.type_alias do
|
|
64
|
+
T.all(Symbol, Courier::AudienceFilterConfig::Operator)
|
|
65
|
+
end
|
|
66
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
67
|
+
|
|
68
|
+
AND = T.let(:AND, Courier::AudienceFilterConfig::Operator::TaggedSymbol)
|
|
69
|
+
OR = T.let(:OR, Courier::AudienceFilterConfig::Operator::TaggedSymbol)
|
|
70
|
+
|
|
71
|
+
sig do
|
|
72
|
+
override.returns(
|
|
73
|
+
T::Array[Courier::AudienceFilterConfig::Operator::TaggedSymbol]
|
|
74
|
+
)
|
|
75
|
+
end
|
|
76
|
+
def self.values
|
|
77
|
+
end
|
|
78
|
+
end
|
|
30
79
|
end
|
|
31
80
|
end
|
|
32
81
|
end
|
|
@@ -31,7 +31,9 @@ module Courier
|
|
|
31
31
|
sig { returns(T.nilable(String)) }
|
|
32
32
|
attr_accessor :name
|
|
33
33
|
|
|
34
|
-
# The logical operator (AND/OR)
|
|
34
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
35
|
+
# Convenience alias for `filter.operator`: if set, it is applied to the top-level
|
|
36
|
+
# filter group. Prefer setting `operator` directly inside `filter`.
|
|
35
37
|
sig do
|
|
36
38
|
returns(T.nilable(Courier::AudienceUpdateParams::Operator::OrSymbol))
|
|
37
39
|
end
|
|
@@ -56,7 +58,9 @@ module Courier
|
|
|
56
58
|
filter: nil,
|
|
57
59
|
# The name of the audience
|
|
58
60
|
name: nil,
|
|
59
|
-
# The logical operator (AND/OR)
|
|
61
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
62
|
+
# Convenience alias for `filter.operator`: if set, it is applied to the top-level
|
|
63
|
+
# filter group. Prefer setting `operator` directly inside `filter`.
|
|
60
64
|
operator: nil,
|
|
61
65
|
request_options: {}
|
|
62
66
|
)
|
|
@@ -78,7 +82,9 @@ module Courier
|
|
|
78
82
|
def to_hash
|
|
79
83
|
end
|
|
80
84
|
|
|
81
|
-
# The logical operator (AND/OR)
|
|
85
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
86
|
+
# Convenience alias for `filter.operator`: if set, it is applied to the top-level
|
|
87
|
+
# filter group. Prefer setting `operator` directly inside `filter`.
|
|
82
88
|
module Operator
|
|
83
89
|
extend Courier::Internal::Type::Enum
|
|
84
90
|
|
|
@@ -38,7 +38,9 @@ module Courier
|
|
|
38
38
|
filter: nil,
|
|
39
39
|
# The name of the audience
|
|
40
40
|
name: nil,
|
|
41
|
-
# The logical operator (AND/OR)
|
|
41
|
+
# The logical operator (AND/OR) combining the top-level `filter.filters`.
|
|
42
|
+
# Convenience alias for `filter.operator`: if set, it is applied to the top-level
|
|
43
|
+
# filter group. Prefer setting `operator` directly inside `filter`.
|
|
42
44
|
operator: nil,
|
|
43
45
|
request_options: {}
|
|
44
46
|
)
|
|
@@ -1,13 +1,40 @@
|
|
|
1
1
|
module Courier
|
|
2
2
|
module Models
|
|
3
|
-
type audience_filter_config =
|
|
3
|
+
type audience_filter_config =
|
|
4
|
+
{
|
|
5
|
+
filters: ::Array[Courier::FilterConfig],
|
|
6
|
+
operator: Courier::Models::AudienceFilterConfig::operator
|
|
7
|
+
}
|
|
4
8
|
|
|
5
9
|
class AudienceFilterConfig < Courier::Internal::Type::BaseModel
|
|
6
10
|
attr_accessor filters: ::Array[Courier::FilterConfig]
|
|
7
11
|
|
|
8
|
-
|
|
12
|
+
attr_reader operator: Courier::Models::AudienceFilterConfig::operator?
|
|
9
13
|
|
|
10
|
-
def
|
|
14
|
+
def operator=: (
|
|
15
|
+
Courier::Models::AudienceFilterConfig::operator
|
|
16
|
+
) -> Courier::Models::AudienceFilterConfig::operator
|
|
17
|
+
|
|
18
|
+
def initialize: (
|
|
19
|
+
filters: ::Array[Courier::FilterConfig],
|
|
20
|
+
?operator: Courier::Models::AudienceFilterConfig::operator
|
|
21
|
+
) -> void
|
|
22
|
+
|
|
23
|
+
def to_hash: -> {
|
|
24
|
+
filters: ::Array[Courier::FilterConfig],
|
|
25
|
+
operator: Courier::Models::AudienceFilterConfig::operator
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
type operator = :AND | :OR
|
|
29
|
+
|
|
30
|
+
module Operator
|
|
31
|
+
extend Courier::Internal::Type::Enum
|
|
32
|
+
|
|
33
|
+
AND: :AND
|
|
34
|
+
OR: :OR
|
|
35
|
+
|
|
36
|
+
def self?.values: -> ::Array[Courier::Models::AudienceFilterConfig::operator]
|
|
37
|
+
end
|
|
11
38
|
end
|
|
12
39
|
end
|
|
13
40
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: trycourier
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.18.
|
|
4
|
+
version: 4.18.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Courier
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-07-
|
|
11
|
+
date: 2026-07-07 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: cgi
|