noresponse 10.0.11 → 10.0.13

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.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/lib/no_response/events.rb +1 -1
  3. data/lib/no_response/models/shared/access.rb +20 -0
  4. data/lib/no_response/models/shared/{profile.rbi → access.rbi} +2 -2
  5. data/lib/no_response/models/shared/attendee.rb +13 -3
  6. data/lib/no_response/models/shared/attendee.rbi +6 -0
  7. data/lib/no_response/models/shared/attendeedecided.rb +89 -0
  8. data/lib/no_response/models/shared/attendeedecided.rbi +44 -0
  9. data/lib/no_response/models/shared/attendeedecidedevent.rb +70 -0
  10. data/lib/no_response/models/shared/attendeedecidedevent.rbi +38 -0
  11. data/lib/no_response/models/shared/attendeeflagged.rb +95 -0
  12. data/lib/no_response/models/shared/attendeeflagged.rbi +44 -0
  13. data/lib/no_response/models/shared/attendeeflaggedevent.rb +70 -0
  14. data/lib/no_response/models/shared/attendeeflaggedevent.rbi +38 -0
  15. data/lib/no_response/models/shared/attendeeflaggedmatchstate.rb +19 -0
  16. data/lib/no_response/models/shared/attendeeflaggedmatchstate.rbi +9 -0
  17. data/lib/no_response/models/shared/attendeereport.rb +25 -7
  18. data/lib/no_response/models/shared/attendeereport.rbi +12 -0
  19. data/lib/no_response/models/shared/findingband.rb +22 -0
  20. data/lib/no_response/models/shared/{attendee_coverage.rbi → findingband.rbi} +2 -2
  21. data/lib/no_response/models/shared/findingcategory.rb +27 -0
  22. data/lib/no_response/models/shared/{screening_platform.rbi → findingcategory.rbi} +2 -2
  23. data/lib/no_response/models/shared/handle.rb +1 -0
  24. data/lib/no_response/models/shared/handleplatform.rb +2 -1
  25. data/lib/no_response/models/shared/mediatype.rb +19 -0
  26. data/lib/no_response/models/shared/{finding.rbi → mediatype.rbi} +2 -2
  27. data/lib/no_response/models/shared/profilematchstate.rb +20 -0
  28. data/lib/no_response/models/shared/profilematchstate.rbi +9 -0
  29. data/lib/no_response/models/shared/screening.rb +23 -3
  30. data/lib/no_response/models/shared/screening.rbi +12 -0
  31. data/lib/no_response/models/shared/screeningcompleted.rb +146 -0
  32. data/lib/no_response/models/shared/screeningcompleted.rbi +74 -0
  33. data/lib/no_response/models/shared/screeningcompletedbyband.rb +52 -0
  34. data/lib/no_response/models/shared/screeningcompletedbyband.rbi +38 -0
  35. data/lib/no_response/models/shared/screeningcompletedevent.rb +70 -0
  36. data/lib/no_response/models/shared/screeningcompletedevent.rbi +38 -0
  37. data/lib/no_response/models/shared/screeningcompletedstatus.rb +17 -0
  38. data/lib/no_response/models/shared/screeningcompletedstatus.rbi +9 -0
  39. data/lib/no_response/models/shared/screeningcoverage.rb +82 -0
  40. data/lib/no_response/models/shared/screeningcoverage.rbi +44 -0
  41. data/lib/no_response/models/shared/screeningfinding.rb +152 -0
  42. data/lib/no_response/models/shared/screeningfinding.rbi +74 -0
  43. data/lib/no_response/models/shared/screeningmatch.rb +50 -0
  44. data/lib/no_response/models/shared/screeningmatch.rbi +20 -0
  45. data/lib/no_response/models/shared/screeningmatchevidence.rb +57 -0
  46. data/lib/no_response/models/shared/screeningmatchevidence.rbi +26 -0
  47. data/lib/no_response/models/shared/screeningmatchevidencekind.rb +25 -0
  48. data/lib/no_response/models/shared/screeningmatchevidencekind.rbi +9 -0
  49. data/lib/no_response/models/shared/screeningmedia.rb +141 -0
  50. data/lib/no_response/models/shared/screeningmedia.rbi +74 -0
  51. data/lib/no_response/models/shared/screeningplatformcoverage.rb +80 -0
  52. data/lib/no_response/models/shared/screeningplatformcoverage.rbi +32 -0
  53. data/lib/no_response/models/shared/screeningplatformcoveragestatus.rb +22 -0
  54. data/lib/no_response/models/shared/screeningplatformcoveragestatus.rbi +9 -0
  55. data/lib/no_response/models/shared/screeningpost.rb +111 -0
  56. data/lib/no_response/models/shared/screeningpost.rbi +62 -0
  57. data/lib/no_response/models/shared/screeningprofile.rb +193 -0
  58. data/lib/no_response/models/shared/screeningprofile.rbi +104 -0
  59. data/lib/no_response/models/shared/screeningrequest.rb +2 -5
  60. data/lib/no_response/models/shared/screeningspend.rb +41 -0
  61. data/lib/no_response/models/shared/screeningspend.rbi +20 -0
  62. data/lib/no_response/models/shared/screeningspendline.rb +57 -0
  63. data/lib/no_response/models/shared/screeningspendline.rbi +26 -0
  64. data/lib/no_response/models/shared/screeningspendlinerole.rb +20 -0
  65. data/lib/no_response/models/shared/screeningspendlinerole.rbi +9 -0
  66. data/lib/no_response/models/shared/screeningstatus.rb +1 -1
  67. data/lib/no_response/models/shared/webhookdeliveryattempt.rb +1 -1
  68. data/lib/no_response/models/shared/webhookreplay.rb +1 -1
  69. data/lib/no_response/models/shared.rb +27 -5
  70. data/lib/no_response/sdkconfiguration.rb +2 -2
  71. data/lib/no_response/webhook_verification.rb +8 -2
  72. metadata +56 -12
  73. data/lib/no_response/models/shared/attendee_coverage.rb +0 -23
  74. data/lib/no_response/models/shared/finding.rb +0 -23
  75. data/lib/no_response/models/shared/profile.rb +0 -23
  76. data/lib/no_response/models/shared/screening_platform.rb +0 -27
  77. data/lib/no_response/models/shared/screeningrequest_platform.rb +0 -24
  78. data/lib/no_response/models/shared/screeningrequest_platform.rbi +0 -9
@@ -0,0 +1,25 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ module NoResponse
5
+ module Models
6
+ module Shared
7
+ # ScreeningMatchEvidenceKind - What matched. email, phone, supplied_handle and source_fact are hard identifiers; company, city and school are soft.
8
+ class ScreeningMatchEvidenceKind
9
+ include ::Crystalline::Enum
10
+ enums do
11
+ EMAIL = new("email")
12
+ PHONE = new("phone")
13
+ SUPPLIED_HANDLE = new("supplied_handle")
14
+ SOURCE_FACT = new("source_fact")
15
+ NAME = new("name")
16
+ COMPANY = new("company")
17
+ CITY = new("city")
18
+ SCHOOL = new("school")
19
+ end
20
+
21
+ open!
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,9 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ class NoResponse::Models::Shared::ScreeningMatchEvidenceKind
5
+ extend ::Crystalline::MetadataFields::ClassMethods
6
+ end
7
+
8
+ class NoResponse::Models::Shared::ScreeningMatchEvidenceKind
9
+ end
@@ -0,0 +1,141 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ module NoResponse
5
+ module Models
6
+ module Shared
7
+ # One image or video a collector read, with the post that carried it.
8
+ class ScreeningMedia
9
+ extend T::Sig
10
+ include Crystalline::MetadataFields
11
+
12
+ field :id, ::String, {'format_json': {'letter_case': ::NoResponse::Utils.field_name("id"), required: true}}
13
+
14
+ field(
15
+ :media_type,
16
+ Models::Shared::MediaType,
17
+ {
18
+ 'format_json': {
19
+ 'letter_case': ::NoResponse::Utils.field_name("media_type"),
20
+ required: true,
21
+ 'decoder': ::NoResponse::Utils.open_enum_from_string(Models::Shared::MediaType, false)
22
+ }
23
+ }
24
+ )
25
+ # Where the platform serves the image or video.
26
+ field(
27
+ :media_url,
28
+ ::String,
29
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("media_url"), required: true}}
30
+ )
31
+
32
+ field(
33
+ :profile_id,
34
+ ::String,
35
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("profile_id"), required: true}}
36
+ )
37
+
38
+ field(
39
+ :permalink,
40
+ ::String,
41
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("permalink"), required: true}}
42
+ )
43
+
44
+ field(
45
+ :posted_at,
46
+ ::String,
47
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("posted_at"), required: true}}
48
+ )
49
+
50
+ field :kind, ::String, {'format_json': {'letter_case': ::NoResponse::Utils.field_name("kind"), required: true}}
51
+
52
+ field(
53
+ :post_id,
54
+ Crystalline::Nilable.new(::String),
55
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("post_id")}}
56
+ )
57
+ # The caption or alt text.
58
+ field(
59
+ :text,
60
+ Crystalline::Nilable.new(::String),
61
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("text")}}
62
+ )
63
+ # SHA-256 of the screenshot taken of a flagged item.
64
+ field(
65
+ :screenshot_sha256,
66
+ Crystalline::Nilable.new(::String),
67
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("screenshot_sha256")}}
68
+ )
69
+ # When the screenshot was taken.
70
+ field(
71
+ :captured_at,
72
+ Crystalline::Nilable.new(::String),
73
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("captured_at")}}
74
+ )
75
+
76
+ sig {
77
+ params(
78
+ id: ::String,
79
+ media_type: Models::Shared::MediaType,
80
+ media_url: ::String,
81
+ profile_id: ::String,
82
+ permalink: ::String,
83
+ posted_at: ::String,
84
+ kind: ::String,
85
+ post_id: T.nilable(::String),
86
+ text: T.nilable(::String),
87
+ screenshot_sha256: T.nilable(::String),
88
+ captured_at: T.nilable(::String)
89
+ )
90
+ .void
91
+ }
92
+ def initialize(
93
+ id:,
94
+ media_type:,
95
+ media_url:,
96
+ profile_id:,
97
+ permalink:,
98
+ posted_at:,
99
+ kind: "media",
100
+ post_id: nil,
101
+ text: nil,
102
+ screenshot_sha256: nil,
103
+ captured_at: nil
104
+ )
105
+ @id = id
106
+ @media_type = media_type
107
+ @media_url = media_url
108
+ @profile_id = profile_id
109
+ @permalink = permalink
110
+ @posted_at = posted_at
111
+ unless kind == "media"
112
+ raise ArgumentError, "Invalid value for kind"
113
+ end
114
+
115
+ @kind = "media"
116
+ @post_id = post_id
117
+ @text = text
118
+ @screenshot_sha256 = screenshot_sha256
119
+ @captured_at = captured_at
120
+ end
121
+
122
+ sig { params(other: T.untyped).returns(T::Boolean) }
123
+ def ==(other)
124
+ return false unless other.is_a?(self.class)
125
+ return false unless @id == other.id
126
+ return false unless @media_type == other.media_type
127
+ return false unless @media_url == other.media_url
128
+ return false unless @profile_id == other.profile_id
129
+ return false unless @permalink == other.permalink
130
+ return false unless @posted_at == other.posted_at
131
+ return false unless @kind == other.kind
132
+ return false unless @post_id == other.post_id
133
+ return false unless @text == other.text
134
+ return false unless @screenshot_sha256 == other.screenshot_sha256
135
+ return false unless @captured_at == other.captured_at
136
+ true
137
+ end
138
+ end
139
+ end
140
+ end
141
+ end
@@ -0,0 +1,74 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ class NoResponse::Models::Shared::ScreeningMedia
5
+ extend ::Crystalline::MetadataFields::ClassMethods
6
+ end
7
+
8
+ class NoResponse::Models::Shared::ScreeningMedia
9
+ def id
10
+ end
11
+
12
+ def id=(str_)
13
+ end
14
+
15
+ def media_type
16
+ end
17
+
18
+ def media_type=(str_)
19
+ end
20
+
21
+ def media_url
22
+ end
23
+
24
+ def media_url=(str_)
25
+ end
26
+
27
+ def profile_id
28
+ end
29
+
30
+ def profile_id=(str_)
31
+ end
32
+
33
+ def permalink
34
+ end
35
+
36
+ def permalink=(str_)
37
+ end
38
+
39
+ def posted_at
40
+ end
41
+
42
+ def posted_at=(str_)
43
+ end
44
+
45
+ def kind
46
+ end
47
+
48
+ def kind=(str_)
49
+ end
50
+
51
+ def post_id
52
+ end
53
+
54
+ def post_id=(str_)
55
+ end
56
+
57
+ def text
58
+ end
59
+
60
+ def text=(str_)
61
+ end
62
+
63
+ def screenshot_sha256
64
+ end
65
+
66
+ def screenshot_sha256=(str_)
67
+ end
68
+
69
+ def captured_at
70
+ end
71
+
72
+ def captured_at=(str_)
73
+ end
74
+ end
@@ -0,0 +1,80 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ module NoResponse
5
+ module Models
6
+ module Shared
7
+ # What a screening read on one platform.
8
+ class ScreeningPlatformCoverage
9
+ extend T::Sig
10
+ include Crystalline::MetadataFields
11
+
12
+ # A platform a screening can cover. synthetic is the deterministic connector's own platform, for exercising the product end to end with no network.
13
+ field(
14
+ :platform,
15
+ Models::Shared::HandlePlatform,
16
+ {
17
+ 'format_json': {
18
+ 'letter_case': ::NoResponse::Utils.field_name("platform"),
19
+ required: true,
20
+ 'decoder': ::NoResponse::Utils.open_enum_from_string(Models::Shared::HandlePlatform, false)
21
+ }
22
+ }
23
+ )
24
+ # covered read at least one profile; none_found looked and found no account; inaccessible found accounts that are private or locked; failed could not finish looking; unavailable has no resolver or collector enabled.
25
+ field(
26
+ :status,
27
+ Models::Shared::ScreeningPlatformCoverageStatus,
28
+ {
29
+ 'format_json': {
30
+ 'letter_case': ::NoResponse::Utils.field_name("status"),
31
+ required: true,
32
+ 'decoder': ::NoResponse::Utils.open_enum_from_string(
33
+ Models::Shared::ScreeningPlatformCoverageStatus,
34
+ false
35
+ )
36
+ }
37
+ }
38
+ )
39
+
40
+ field(
41
+ :accounts_found,
42
+ ::Integer,
43
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("accounts_found"), required: true}}
44
+ )
45
+
46
+ field(
47
+ :items_read,
48
+ ::Integer,
49
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("items_read"), required: true}}
50
+ )
51
+
52
+ sig {
53
+ params(
54
+ platform: Models::Shared::HandlePlatform,
55
+ status: Models::Shared::ScreeningPlatformCoverageStatus,
56
+ accounts_found: ::Integer,
57
+ items_read: ::Integer
58
+ )
59
+ .void
60
+ }
61
+ def initialize(platform:, status:, accounts_found:, items_read:)
62
+ @platform = platform
63
+ @status = status
64
+ @accounts_found = accounts_found
65
+ @items_read = items_read
66
+ end
67
+
68
+ sig { params(other: T.untyped).returns(T::Boolean) }
69
+ def ==(other)
70
+ return false unless other.is_a?(self.class)
71
+ return false unless @platform == other.platform
72
+ return false unless @status == other.status
73
+ return false unless @accounts_found == other.accounts_found
74
+ return false unless @items_read == other.items_read
75
+ true
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,32 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ class NoResponse::Models::Shared::ScreeningPlatformCoverage
5
+ extend ::Crystalline::MetadataFields::ClassMethods
6
+ end
7
+
8
+ class NoResponse::Models::Shared::ScreeningPlatformCoverage
9
+ def platform
10
+ end
11
+
12
+ def platform=(str_)
13
+ end
14
+
15
+ def status
16
+ end
17
+
18
+ def status=(str_)
19
+ end
20
+
21
+ def accounts_found
22
+ end
23
+
24
+ def accounts_found=(str_)
25
+ end
26
+
27
+ def items_read
28
+ end
29
+
30
+ def items_read=(str_)
31
+ end
32
+ end
@@ -0,0 +1,22 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ module NoResponse
5
+ module Models
6
+ module Shared
7
+ # ScreeningPlatformCoverageStatus - covered read at least one profile; none_found looked and found no account; inaccessible found accounts that are private or locked; failed could not finish looking; unavailable has no resolver or collector enabled.
8
+ class ScreeningPlatformCoverageStatus
9
+ include ::Crystalline::Enum
10
+ enums do
11
+ COVERED = new("covered")
12
+ NONE_FOUND = new("none_found")
13
+ INACCESSIBLE = new("inaccessible")
14
+ FAILED = new("failed")
15
+ UNAVAILABLE = new("unavailable")
16
+ end
17
+
18
+ open!
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,9 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ class NoResponse::Models::Shared::ScreeningPlatformCoverageStatus
5
+ extend ::Crystalline::MetadataFields::ClassMethods
6
+ end
7
+
8
+ class NoResponse::Models::Shared::ScreeningPlatformCoverageStatus
9
+ end
@@ -0,0 +1,111 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ module NoResponse
5
+ module Models
6
+ module Shared
7
+ # One post a collector read, with its permalink and time.
8
+ class ScreeningPost
9
+ extend T::Sig
10
+ include Crystalline::MetadataFields
11
+
12
+ field :id, ::String, {'format_json': {'letter_case': ::NoResponse::Utils.field_name("id"), required: true}}
13
+
14
+ field :text, ::String, {'format_json': {'letter_case': ::NoResponse::Utils.field_name("text"), required: true}}
15
+
16
+ field(
17
+ :profile_id,
18
+ ::String,
19
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("profile_id"), required: true}}
20
+ )
21
+
22
+ field(
23
+ :permalink,
24
+ ::String,
25
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("permalink"), required: true}}
26
+ )
27
+
28
+ field(
29
+ :posted_at,
30
+ ::String,
31
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("posted_at"), required: true}}
32
+ )
33
+
34
+ field :kind, ::String, {'format_json': {'letter_case': ::NoResponse::Utils.field_name("kind"), required: true}}
35
+
36
+ field(
37
+ :reply_to,
38
+ Crystalline::Nilable.new(::String),
39
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("reply_to")}}
40
+ )
41
+ # SHA-256 of the screenshot taken of a flagged item.
42
+ field(
43
+ :screenshot_sha256,
44
+ Crystalline::Nilable.new(::String),
45
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("screenshot_sha256")}}
46
+ )
47
+ # When the screenshot was taken.
48
+ field(
49
+ :captured_at,
50
+ Crystalline::Nilable.new(::String),
51
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("captured_at")}}
52
+ )
53
+
54
+ sig {
55
+ params(
56
+ id: ::String,
57
+ text: ::String,
58
+ profile_id: ::String,
59
+ permalink: ::String,
60
+ posted_at: ::String,
61
+ kind: ::String,
62
+ reply_to: T.nilable(::String),
63
+ screenshot_sha256: T.nilable(::String),
64
+ captured_at: T.nilable(::String)
65
+ )
66
+ .void
67
+ }
68
+ def initialize(
69
+ id:,
70
+ text:,
71
+ profile_id:,
72
+ permalink:,
73
+ posted_at:,
74
+ kind: "post",
75
+ reply_to: nil,
76
+ screenshot_sha256: nil,
77
+ captured_at: nil
78
+ )
79
+ @id = id
80
+ @text = text
81
+ @profile_id = profile_id
82
+ @permalink = permalink
83
+ @posted_at = posted_at
84
+ unless kind == "post"
85
+ raise ArgumentError, "Invalid value for kind"
86
+ end
87
+
88
+ @kind = "post"
89
+ @reply_to = reply_to
90
+ @screenshot_sha256 = screenshot_sha256
91
+ @captured_at = captured_at
92
+ end
93
+
94
+ sig { params(other: T.untyped).returns(T::Boolean) }
95
+ def ==(other)
96
+ return false unless other.is_a?(self.class)
97
+ return false unless @id == other.id
98
+ return false unless @text == other.text
99
+ return false unless @profile_id == other.profile_id
100
+ return false unless @permalink == other.permalink
101
+ return false unless @posted_at == other.posted_at
102
+ return false unless @kind == other.kind
103
+ return false unless @reply_to == other.reply_to
104
+ return false unless @screenshot_sha256 == other.screenshot_sha256
105
+ return false unless @captured_at == other.captured_at
106
+ true
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,62 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ class NoResponse::Models::Shared::ScreeningPost
5
+ extend ::Crystalline::MetadataFields::ClassMethods
6
+ end
7
+
8
+ class NoResponse::Models::Shared::ScreeningPost
9
+ def id
10
+ end
11
+
12
+ def id=(str_)
13
+ end
14
+
15
+ def text
16
+ end
17
+
18
+ def text=(str_)
19
+ end
20
+
21
+ def profile_id
22
+ end
23
+
24
+ def profile_id=(str_)
25
+ end
26
+
27
+ def permalink
28
+ end
29
+
30
+ def permalink=(str_)
31
+ end
32
+
33
+ def posted_at
34
+ end
35
+
36
+ def posted_at=(str_)
37
+ end
38
+
39
+ def kind
40
+ end
41
+
42
+ def kind=(str_)
43
+ end
44
+
45
+ def reply_to
46
+ end
47
+
48
+ def reply_to=(str_)
49
+ end
50
+
51
+ def screenshot_sha256
52
+ end
53
+
54
+ def screenshot_sha256=(str_)
55
+ end
56
+
57
+ def captured_at
58
+ end
59
+
60
+ def captured_at=(str_)
61
+ end
62
+ end