context.dev 0.0.2

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 (194) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +10 -0
  4. data/README.md +244 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/context_dev/client.rb +74 -0
  7. data/lib/context_dev/errors.rb +228 -0
  8. data/lib/context_dev/file_part.rb +58 -0
  9. data/lib/context_dev/internal/transport/base_client.rb +573 -0
  10. data/lib/context_dev/internal/transport/pooled_net_requester.rb +210 -0
  11. data/lib/context_dev/internal/type/array_of.rb +168 -0
  12. data/lib/context_dev/internal/type/base_model.rb +531 -0
  13. data/lib/context_dev/internal/type/base_page.rb +55 -0
  14. data/lib/context_dev/internal/type/boolean.rb +77 -0
  15. data/lib/context_dev/internal/type/converter.rb +327 -0
  16. data/lib/context_dev/internal/type/enum.rb +131 -0
  17. data/lib/context_dev/internal/type/file_input.rb +111 -0
  18. data/lib/context_dev/internal/type/hash_of.rb +188 -0
  19. data/lib/context_dev/internal/type/request_parameters.rb +42 -0
  20. data/lib/context_dev/internal/type/union.rb +237 -0
  21. data/lib/context_dev/internal/type/unknown.rb +81 -0
  22. data/lib/context_dev/internal/util.rb +951 -0
  23. data/lib/context_dev/internal.rb +20 -0
  24. data/lib/context_dev/models/brand_ai_product_params.rb +34 -0
  25. data/lib/context_dev/models/brand_ai_product_response.rb +193 -0
  26. data/lib/context_dev/models/brand_ai_products_params.rb +94 -0
  27. data/lib/context_dev/models/brand_ai_products_response.rb +160 -0
  28. data/lib/context_dev/models/brand_ai_query_params.rb +236 -0
  29. data/lib/context_dev/models/brand_ai_query_response.rb +98 -0
  30. data/lib/context_dev/models/brand_fonts_params.rb +36 -0
  31. data/lib/context_dev/models/brand_fonts_response.rb +100 -0
  32. data/lib/context_dev/models/brand_identify_from_transaction_params.rb +407 -0
  33. data/lib/context_dev/models/brand_identify_from_transaction_response.rb +854 -0
  34. data/lib/context_dev/models/brand_prefetch_by_email_params.rb +37 -0
  35. data/lib/context_dev/models/brand_prefetch_by_email_response.rb +33 -0
  36. data/lib/context_dev/models/brand_prefetch_params.rb +35 -0
  37. data/lib/context_dev/models/brand_prefetch_response.rb +33 -0
  38. data/lib/context_dev/models/brand_retrieve_by_email_params.rb +116 -0
  39. data/lib/context_dev/models/brand_retrieve_by_email_response.rb +851 -0
  40. data/lib/context_dev/models/brand_retrieve_by_isin_params.rb +116 -0
  41. data/lib/context_dev/models/brand_retrieve_by_isin_response.rb +850 -0
  42. data/lib/context_dev/models/brand_retrieve_by_name_params.rb +115 -0
  43. data/lib/context_dev/models/brand_retrieve_by_name_response.rb +850 -0
  44. data/lib/context_dev/models/brand_retrieve_by_ticker_params.rb +204 -0
  45. data/lib/context_dev/models/brand_retrieve_by_ticker_response.rb +852 -0
  46. data/lib/context_dev/models/brand_retrieve_naics_params.rb +54 -0
  47. data/lib/context_dev/models/brand_retrieve_naics_response.rb +83 -0
  48. data/lib/context_dev/models/brand_retrieve_params.rb +117 -0
  49. data/lib/context_dev/models/brand_retrieve_response.rb +850 -0
  50. data/lib/context_dev/models/brand_retrieve_simplified_params.rb +35 -0
  51. data/lib/context_dev/models/brand_retrieve_simplified_response.rb +307 -0
  52. data/lib/context_dev/models/brand_screenshot_params.rb +103 -0
  53. data/lib/context_dev/models/brand_screenshot_response.rb +64 -0
  54. data/lib/context_dev/models/brand_styleguide_params.rb +70 -0
  55. data/lib/context_dev/models/brand_styleguide_response.rb +790 -0
  56. data/lib/context_dev/models/brand_web_scrape_html_params.rb +22 -0
  57. data/lib/context_dev/models/brand_web_scrape_html_response.rb +45 -0
  58. data/lib/context_dev/models/brand_web_scrape_images_params.rb +22 -0
  59. data/lib/context_dev/models/brand_web_scrape_images_response.rb +111 -0
  60. data/lib/context_dev/models/brand_web_scrape_md_params.rb +50 -0
  61. data/lib/context_dev/models/brand_web_scrape_md_response.rb +45 -0
  62. data/lib/context_dev/models/brand_web_scrape_sitemap_params.rb +26 -0
  63. data/lib/context_dev/models/brand_web_scrape_sitemap_response.rb +91 -0
  64. data/lib/context_dev/models.rb +81 -0
  65. data/lib/context_dev/request_options.rb +77 -0
  66. data/lib/context_dev/resources/brand.rb +654 -0
  67. data/lib/context_dev/version.rb +5 -0
  68. data/lib/context_dev.rb +96 -0
  69. data/manifest.yaml +17 -0
  70. data/rbi/context_dev/client.rbi +49 -0
  71. data/rbi/context_dev/errors.rbi +205 -0
  72. data/rbi/context_dev/file_part.rbi +37 -0
  73. data/rbi/context_dev/internal/transport/base_client.rbi +300 -0
  74. data/rbi/context_dev/internal/transport/pooled_net_requester.rbi +84 -0
  75. data/rbi/context_dev/internal/type/array_of.rbi +104 -0
  76. data/rbi/context_dev/internal/type/base_model.rbi +308 -0
  77. data/rbi/context_dev/internal/type/base_page.rbi +42 -0
  78. data/rbi/context_dev/internal/type/boolean.rbi +58 -0
  79. data/rbi/context_dev/internal/type/converter.rbi +216 -0
  80. data/rbi/context_dev/internal/type/enum.rbi +82 -0
  81. data/rbi/context_dev/internal/type/file_input.rbi +59 -0
  82. data/rbi/context_dev/internal/type/hash_of.rbi +104 -0
  83. data/rbi/context_dev/internal/type/request_parameters.rbi +29 -0
  84. data/rbi/context_dev/internal/type/union.rbi +128 -0
  85. data/rbi/context_dev/internal/type/unknown.rbi +58 -0
  86. data/rbi/context_dev/internal/util.rbi +507 -0
  87. data/rbi/context_dev/internal.rbi +18 -0
  88. data/rbi/context_dev/models/brand_ai_product_params.rbi +56 -0
  89. data/rbi/context_dev/models/brand_ai_product_response.rbi +380 -0
  90. data/rbi/context_dev/models/brand_ai_products_params.rbi +188 -0
  91. data/rbi/context_dev/models/brand_ai_products_response.rbi +310 -0
  92. data/rbi/context_dev/models/brand_ai_query_params.rbi +504 -0
  93. data/rbi/context_dev/models/brand_ai_query_response.rbi +205 -0
  94. data/rbi/context_dev/models/brand_fonts_params.rbi +60 -0
  95. data/rbi/context_dev/models/brand_fonts_response.rbi +147 -0
  96. data/rbi/context_dev/models/brand_identify_from_transaction_params.rbi +1682 -0
  97. data/rbi/context_dev/models/brand_identify_from_transaction_response.rbi +2595 -0
  98. data/rbi/context_dev/models/brand_prefetch_by_email_params.rbi +65 -0
  99. data/rbi/context_dev/models/brand_prefetch_by_email_response.rbi +57 -0
  100. data/rbi/context_dev/models/brand_prefetch_params.rbi +58 -0
  101. data/rbi/context_dev/models/brand_prefetch_response.rbi +57 -0
  102. data/rbi/context_dev/models/brand_retrieve_by_email_params.rbi +386 -0
  103. data/rbi/context_dev/models/brand_retrieve_by_email_response.rbi +2591 -0
  104. data/rbi/context_dev/models/brand_retrieve_by_isin_params.rbi +386 -0
  105. data/rbi/context_dev/models/brand_retrieve_by_isin_response.rbi +2590 -0
  106. data/rbi/context_dev/models/brand_retrieve_by_name_params.rbi +384 -0
  107. data/rbi/context_dev/models/brand_retrieve_by_name_response.rbi +2590 -0
  108. data/rbi/context_dev/models/brand_retrieve_by_ticker_params.rbi +796 -0
  109. data/rbi/context_dev/models/brand_retrieve_by_ticker_response.rbi +2592 -0
  110. data/rbi/context_dev/models/brand_retrieve_naics_params.rbi +89 -0
  111. data/rbi/context_dev/models/brand_retrieve_naics_response.rbi +190 -0
  112. data/rbi/context_dev/models/brand_retrieve_params.rbi +382 -0
  113. data/rbi/context_dev/models/brand_retrieve_response.rbi +2574 -0
  114. data/rbi/context_dev/models/brand_retrieve_simplified_params.rbi +61 -0
  115. data/rbi/context_dev/models/brand_retrieve_simplified_response.rbi +763 -0
  116. data/rbi/context_dev/models/brand_screenshot_params.rbi +225 -0
  117. data/rbi/context_dev/models/brand_screenshot_response.rbi +135 -0
  118. data/rbi/context_dev/models/brand_styleguide_params.rbi +139 -0
  119. data/rbi/context_dev/models/brand_styleguide_response.rbi +1707 -0
  120. data/rbi/context_dev/models/brand_web_scrape_html_params.rbi +43 -0
  121. data/rbi/context_dev/models/brand_web_scrape_html_response.rbi +92 -0
  122. data/rbi/context_dev/models/brand_web_scrape_images_params.rbi +43 -0
  123. data/rbi/context_dev/models/brand_web_scrape_images_response.rbi +261 -0
  124. data/rbi/context_dev/models/brand_web_scrape_md_params.rbi +81 -0
  125. data/rbi/context_dev/models/brand_web_scrape_md_response.rbi +92 -0
  126. data/rbi/context_dev/models/brand_web_scrape_sitemap_params.rbi +45 -0
  127. data/rbi/context_dev/models/brand_web_scrape_sitemap_response.rbi +167 -0
  128. data/rbi/context_dev/models.rbi +45 -0
  129. data/rbi/context_dev/request_options.rbi +59 -0
  130. data/rbi/context_dev/resources/brand.rbi +545 -0
  131. data/rbi/context_dev/version.rbi +5 -0
  132. data/sig/context_dev/client.rbs +26 -0
  133. data/sig/context_dev/errors.rbs +117 -0
  134. data/sig/context_dev/file_part.rbs +21 -0
  135. data/sig/context_dev/internal/transport/base_client.rbs +133 -0
  136. data/sig/context_dev/internal/transport/pooled_net_requester.rbs +48 -0
  137. data/sig/context_dev/internal/type/array_of.rbs +48 -0
  138. data/sig/context_dev/internal/type/base_model.rbs +102 -0
  139. data/sig/context_dev/internal/type/base_page.rbs +24 -0
  140. data/sig/context_dev/internal/type/boolean.rbs +26 -0
  141. data/sig/context_dev/internal/type/converter.rbs +79 -0
  142. data/sig/context_dev/internal/type/enum.rbs +32 -0
  143. data/sig/context_dev/internal/type/file_input.rbs +25 -0
  144. data/sig/context_dev/internal/type/hash_of.rbs +48 -0
  145. data/sig/context_dev/internal/type/request_parameters.rbs +19 -0
  146. data/sig/context_dev/internal/type/union.rbs +52 -0
  147. data/sig/context_dev/internal/type/unknown.rbs +26 -0
  148. data/sig/context_dev/internal/util.rbs +195 -0
  149. data/sig/context_dev/internal.rbs +9 -0
  150. data/sig/context_dev/models/brand_ai_product_params.rbs +30 -0
  151. data/sig/context_dev/models/brand_ai_product_response.rbs +149 -0
  152. data/sig/context_dev/models/brand_ai_products_params.rbs +88 -0
  153. data/sig/context_dev/models/brand_ai_products_response.rbs +128 -0
  154. data/sig/context_dev/models/brand_ai_query_params.rbs +218 -0
  155. data/sig/context_dev/models/brand_ai_query_response.rbs +93 -0
  156. data/sig/context_dev/models/brand_fonts_params.rbs +30 -0
  157. data/sig/context_dev/models/brand_fonts_response.rbs +82 -0
  158. data/sig/context_dev/models/brand_identify_from_transaction_params.rbs +686 -0
  159. data/sig/context_dev/models/brand_identify_from_transaction_response.rbs +1076 -0
  160. data/sig/context_dev/models/brand_prefetch_by_email_params.rbs +30 -0
  161. data/sig/context_dev/models/brand_prefetch_by_email_response.rbs +28 -0
  162. data/sig/context_dev/models/brand_prefetch_params.rbs +30 -0
  163. data/sig/context_dev/models/brand_prefetch_response.rbs +28 -0
  164. data/sig/context_dev/models/brand_retrieve_by_email_params.rbs +162 -0
  165. data/sig/context_dev/models/brand_retrieve_by_email_response.rbs +1076 -0
  166. data/sig/context_dev/models/brand_retrieve_by_isin_params.rbs +162 -0
  167. data/sig/context_dev/models/brand_retrieve_by_isin_response.rbs +1076 -0
  168. data/sig/context_dev/models/brand_retrieve_by_name_params.rbs +162 -0
  169. data/sig/context_dev/models/brand_retrieve_by_name_response.rbs +1076 -0
  170. data/sig/context_dev/models/brand_retrieve_by_ticker_params.rbs +324 -0
  171. data/sig/context_dev/models/brand_retrieve_by_ticker_response.rbs +1076 -0
  172. data/sig/context_dev/models/brand_retrieve_naics_params.rbs +47 -0
  173. data/sig/context_dev/models/brand_retrieve_naics_response.rbs +84 -0
  174. data/sig/context_dev/models/brand_retrieve_params.rbs +162 -0
  175. data/sig/context_dev/models/brand_retrieve_response.rbs +1076 -0
  176. data/sig/context_dev/models/brand_retrieve_simplified_params.rbs +30 -0
  177. data/sig/context_dev/models/brand_retrieve_simplified_response.rbs +312 -0
  178. data/sig/context_dev/models/brand_screenshot_params.rbs +100 -0
  179. data/sig/context_dev/models/brand_screenshot_response.rbs +63 -0
  180. data/sig/context_dev/models/brand_styleguide_params.rbs +62 -0
  181. data/sig/context_dev/models/brand_styleguide_response.rbs +945 -0
  182. data/sig/context_dev/models/brand_web_scrape_html_params.rbs +23 -0
  183. data/sig/context_dev/models/brand_web_scrape_html_response.rbs +40 -0
  184. data/sig/context_dev/models/brand_web_scrape_images_params.rbs +23 -0
  185. data/sig/context_dev/models/brand_web_scrape_images_response.rbs +98 -0
  186. data/sig/context_dev/models/brand_web_scrape_md_params.rbs +47 -0
  187. data/sig/context_dev/models/brand_web_scrape_md_response.rbs +40 -0
  188. data/sig/context_dev/models/brand_web_scrape_sitemap_params.rbs +23 -0
  189. data/sig/context_dev/models/brand_web_scrape_sitemap_response.rbs +77 -0
  190. data/sig/context_dev/models.rbs +41 -0
  191. data/sig/context_dev/request_options.rbs +36 -0
  192. data/sig/context_dev/resources/brand.rbs +151 -0
  193. data/sig/context_dev/version.rbs +3 -0
  194. metadata +265 -0
@@ -0,0 +1,225 @@
1
+ # typed: strong
2
+
3
+ module ContextDev
4
+ module Models
5
+ class BrandScreenshotParams < ContextDev::Internal::Type::BaseModel
6
+ extend ContextDev::Internal::Type::RequestParameters::Converter
7
+ include ContextDev::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ ContextDev::BrandScreenshotParams,
13
+ ContextDev::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Domain name to take screenshot of (e.g., 'example.com', 'google.com'). The
18
+ # domain will be automatically normalized and validated.
19
+ sig { returns(String) }
20
+ attr_accessor :domain
21
+
22
+ # Optional parameter to determine screenshot type. If 'true', takes a full page
23
+ # screenshot capturing all content. If 'false' or not provided, takes a viewport
24
+ # screenshot (standard browser view).
25
+ sig do
26
+ returns(
27
+ T.nilable(ContextDev::BrandScreenshotParams::FullScreenshot::OrSymbol)
28
+ )
29
+ end
30
+ attr_reader :full_screenshot
31
+
32
+ sig do
33
+ params(
34
+ full_screenshot:
35
+ ContextDev::BrandScreenshotParams::FullScreenshot::OrSymbol
36
+ ).void
37
+ end
38
+ attr_writer :full_screenshot
39
+
40
+ # Optional parameter to specify which page type to screenshot. If provided, the
41
+ # system will scrape the domain's links and use heuristics to find the most
42
+ # appropriate URL for the specified page type (30 supported languages). If not
43
+ # provided, screenshots the main domain landing page.
44
+ sig do
45
+ returns(T.nilable(ContextDev::BrandScreenshotParams::Page::OrSymbol))
46
+ end
47
+ attr_reader :page
48
+
49
+ sig do
50
+ params(page: ContextDev::BrandScreenshotParams::Page::OrSymbol).void
51
+ end
52
+ attr_writer :page
53
+
54
+ # Optional parameter to prioritize screenshot capture. If 'speed', optimizes for
55
+ # faster capture with basic quality. If 'quality', optimizes for higher quality
56
+ # with longer wait times. Defaults to 'quality' if not provided.
57
+ sig do
58
+ returns(
59
+ T.nilable(ContextDev::BrandScreenshotParams::Prioritize::OrSymbol)
60
+ )
61
+ end
62
+ attr_reader :prioritize
63
+
64
+ sig do
65
+ params(
66
+ prioritize: ContextDev::BrandScreenshotParams::Prioritize::OrSymbol
67
+ ).void
68
+ end
69
+ attr_writer :prioritize
70
+
71
+ sig do
72
+ params(
73
+ domain: String,
74
+ full_screenshot:
75
+ ContextDev::BrandScreenshotParams::FullScreenshot::OrSymbol,
76
+ page: ContextDev::BrandScreenshotParams::Page::OrSymbol,
77
+ prioritize: ContextDev::BrandScreenshotParams::Prioritize::OrSymbol,
78
+ request_options: ContextDev::RequestOptions::OrHash
79
+ ).returns(T.attached_class)
80
+ end
81
+ def self.new(
82
+ # Domain name to take screenshot of (e.g., 'example.com', 'google.com'). The
83
+ # domain will be automatically normalized and validated.
84
+ domain:,
85
+ # Optional parameter to determine screenshot type. If 'true', takes a full page
86
+ # screenshot capturing all content. If 'false' or not provided, takes a viewport
87
+ # screenshot (standard browser view).
88
+ full_screenshot: nil,
89
+ # Optional parameter to specify which page type to screenshot. If provided, the
90
+ # system will scrape the domain's links and use heuristics to find the most
91
+ # appropriate URL for the specified page type (30 supported languages). If not
92
+ # provided, screenshots the main domain landing page.
93
+ page: nil,
94
+ # Optional parameter to prioritize screenshot capture. If 'speed', optimizes for
95
+ # faster capture with basic quality. If 'quality', optimizes for higher quality
96
+ # with longer wait times. Defaults to 'quality' if not provided.
97
+ prioritize: nil,
98
+ request_options: {}
99
+ )
100
+ end
101
+
102
+ sig do
103
+ override.returns(
104
+ {
105
+ domain: String,
106
+ full_screenshot:
107
+ ContextDev::BrandScreenshotParams::FullScreenshot::OrSymbol,
108
+ page: ContextDev::BrandScreenshotParams::Page::OrSymbol,
109
+ prioritize: ContextDev::BrandScreenshotParams::Prioritize::OrSymbol,
110
+ request_options: ContextDev::RequestOptions
111
+ }
112
+ )
113
+ end
114
+ def to_hash
115
+ end
116
+
117
+ # Optional parameter to determine screenshot type. If 'true', takes a full page
118
+ # screenshot capturing all content. If 'false' or not provided, takes a viewport
119
+ # screenshot (standard browser view).
120
+ module FullScreenshot
121
+ extend ContextDev::Internal::Type::Enum
122
+
123
+ TaggedSymbol =
124
+ T.type_alias do
125
+ T.all(Symbol, ContextDev::BrandScreenshotParams::FullScreenshot)
126
+ end
127
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
128
+
129
+ TRUE =
130
+ T.let(
131
+ :true,
132
+ ContextDev::BrandScreenshotParams::FullScreenshot::TaggedSymbol
133
+ )
134
+ FALSE =
135
+ T.let(
136
+ :false,
137
+ ContextDev::BrandScreenshotParams::FullScreenshot::TaggedSymbol
138
+ )
139
+
140
+ sig do
141
+ override.returns(
142
+ T::Array[
143
+ ContextDev::BrandScreenshotParams::FullScreenshot::TaggedSymbol
144
+ ]
145
+ )
146
+ end
147
+ def self.values
148
+ end
149
+ end
150
+
151
+ # Optional parameter to specify which page type to screenshot. If provided, the
152
+ # system will scrape the domain's links and use heuristics to find the most
153
+ # appropriate URL for the specified page type (30 supported languages). If not
154
+ # provided, screenshots the main domain landing page.
155
+ module Page
156
+ extend ContextDev::Internal::Type::Enum
157
+
158
+ TaggedSymbol =
159
+ T.type_alias do
160
+ T.all(Symbol, ContextDev::BrandScreenshotParams::Page)
161
+ end
162
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
163
+
164
+ LOGIN =
165
+ T.let(:login, ContextDev::BrandScreenshotParams::Page::TaggedSymbol)
166
+ SIGNUP =
167
+ T.let(:signup, ContextDev::BrandScreenshotParams::Page::TaggedSymbol)
168
+ BLOG =
169
+ T.let(:blog, ContextDev::BrandScreenshotParams::Page::TaggedSymbol)
170
+ CAREERS =
171
+ T.let(:careers, ContextDev::BrandScreenshotParams::Page::TaggedSymbol)
172
+ PRICING =
173
+ T.let(:pricing, ContextDev::BrandScreenshotParams::Page::TaggedSymbol)
174
+ TERMS =
175
+ T.let(:terms, ContextDev::BrandScreenshotParams::Page::TaggedSymbol)
176
+ PRIVACY =
177
+ T.let(:privacy, ContextDev::BrandScreenshotParams::Page::TaggedSymbol)
178
+ CONTACT =
179
+ T.let(:contact, ContextDev::BrandScreenshotParams::Page::TaggedSymbol)
180
+
181
+ sig do
182
+ override.returns(
183
+ T::Array[ContextDev::BrandScreenshotParams::Page::TaggedSymbol]
184
+ )
185
+ end
186
+ def self.values
187
+ end
188
+ end
189
+
190
+ # Optional parameter to prioritize screenshot capture. If 'speed', optimizes for
191
+ # faster capture with basic quality. If 'quality', optimizes for higher quality
192
+ # with longer wait times. Defaults to 'quality' if not provided.
193
+ module Prioritize
194
+ extend ContextDev::Internal::Type::Enum
195
+
196
+ TaggedSymbol =
197
+ T.type_alias do
198
+ T.all(Symbol, ContextDev::BrandScreenshotParams::Prioritize)
199
+ end
200
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
201
+
202
+ SPEED =
203
+ T.let(
204
+ :speed,
205
+ ContextDev::BrandScreenshotParams::Prioritize::TaggedSymbol
206
+ )
207
+ QUALITY =
208
+ T.let(
209
+ :quality,
210
+ ContextDev::BrandScreenshotParams::Prioritize::TaggedSymbol
211
+ )
212
+
213
+ sig do
214
+ override.returns(
215
+ T::Array[
216
+ ContextDev::BrandScreenshotParams::Prioritize::TaggedSymbol
217
+ ]
218
+ )
219
+ end
220
+ def self.values
221
+ end
222
+ end
223
+ end
224
+ end
225
+ end
@@ -0,0 +1,135 @@
1
+ # typed: strong
2
+
3
+ module ContextDev
4
+ module Models
5
+ class BrandScreenshotResponse < ContextDev::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ ContextDev::Models::BrandScreenshotResponse,
10
+ ContextDev::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # HTTP status code
15
+ sig { returns(T.nilable(Integer)) }
16
+ attr_reader :code
17
+
18
+ sig { params(code: Integer).void }
19
+ attr_writer :code
20
+
21
+ # The normalized domain that was processed
22
+ sig { returns(T.nilable(String)) }
23
+ attr_reader :domain
24
+
25
+ sig { params(domain: String).void }
26
+ attr_writer :domain
27
+
28
+ # Public URL of the uploaded screenshot image
29
+ sig { returns(T.nilable(String)) }
30
+ attr_reader :screenshot
31
+
32
+ sig { params(screenshot: String).void }
33
+ attr_writer :screenshot
34
+
35
+ # Type of screenshot that was captured
36
+ sig do
37
+ returns(
38
+ T.nilable(
39
+ ContextDev::Models::BrandScreenshotResponse::ScreenshotType::TaggedSymbol
40
+ )
41
+ )
42
+ end
43
+ attr_reader :screenshot_type
44
+
45
+ sig do
46
+ params(
47
+ screenshot_type:
48
+ ContextDev::Models::BrandScreenshotResponse::ScreenshotType::OrSymbol
49
+ ).void
50
+ end
51
+ attr_writer :screenshot_type
52
+
53
+ # Status of the response, e.g., 'ok'
54
+ sig { returns(T.nilable(String)) }
55
+ attr_reader :status
56
+
57
+ sig { params(status: String).void }
58
+ attr_writer :status
59
+
60
+ sig do
61
+ params(
62
+ code: Integer,
63
+ domain: String,
64
+ screenshot: String,
65
+ screenshot_type:
66
+ ContextDev::Models::BrandScreenshotResponse::ScreenshotType::OrSymbol,
67
+ status: String
68
+ ).returns(T.attached_class)
69
+ end
70
+ def self.new(
71
+ # HTTP status code
72
+ code: nil,
73
+ # The normalized domain that was processed
74
+ domain: nil,
75
+ # Public URL of the uploaded screenshot image
76
+ screenshot: nil,
77
+ # Type of screenshot that was captured
78
+ screenshot_type: nil,
79
+ # Status of the response, e.g., 'ok'
80
+ status: nil
81
+ )
82
+ end
83
+
84
+ sig do
85
+ override.returns(
86
+ {
87
+ code: Integer,
88
+ domain: String,
89
+ screenshot: String,
90
+ screenshot_type:
91
+ ContextDev::Models::BrandScreenshotResponse::ScreenshotType::TaggedSymbol,
92
+ status: String
93
+ }
94
+ )
95
+ end
96
+ def to_hash
97
+ end
98
+
99
+ # Type of screenshot that was captured
100
+ module ScreenshotType
101
+ extend ContextDev::Internal::Type::Enum
102
+
103
+ TaggedSymbol =
104
+ T.type_alias do
105
+ T.all(
106
+ Symbol,
107
+ ContextDev::Models::BrandScreenshotResponse::ScreenshotType
108
+ )
109
+ end
110
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
111
+
112
+ VIEWPORT =
113
+ T.let(
114
+ :viewport,
115
+ ContextDev::Models::BrandScreenshotResponse::ScreenshotType::TaggedSymbol
116
+ )
117
+ FULL_PAGE =
118
+ T.let(
119
+ :fullPage,
120
+ ContextDev::Models::BrandScreenshotResponse::ScreenshotType::TaggedSymbol
121
+ )
122
+
123
+ sig do
124
+ override.returns(
125
+ T::Array[
126
+ ContextDev::Models::BrandScreenshotResponse::ScreenshotType::TaggedSymbol
127
+ ]
128
+ )
129
+ end
130
+ def self.values
131
+ end
132
+ end
133
+ end
134
+ end
135
+ end
@@ -0,0 +1,139 @@
1
+ # typed: strong
2
+
3
+ module ContextDev
4
+ module Models
5
+ class BrandStyleguideParams < ContextDev::Internal::Type::BaseModel
6
+ extend ContextDev::Internal::Type::RequestParameters::Converter
7
+ include ContextDev::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ ContextDev::BrandStyleguideParams,
13
+ ContextDev::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # A specific URL to fetch the styleguide from directly, bypassing domain
18
+ # resolution (e.g., 'https://example.com/design-system').
19
+ sig { returns(T.nilable(String)) }
20
+ attr_reader :direct_url
21
+
22
+ sig { params(direct_url: String).void }
23
+ attr_writer :direct_url
24
+
25
+ # Domain name to extract styleguide from (e.g., 'example.com', 'google.com'). The
26
+ # domain will be automatically normalized and validated.
27
+ sig { returns(T.nilable(String)) }
28
+ attr_reader :domain
29
+
30
+ sig { params(domain: String).void }
31
+ attr_writer :domain
32
+
33
+ # Optional parameter to prioritize screenshot capture for styleguide extraction.
34
+ # If 'speed', optimizes for faster capture with basic quality. If 'quality',
35
+ # optimizes for higher quality with longer wait times. Defaults to 'quality' if
36
+ # not provided.
37
+ sig do
38
+ returns(
39
+ T.nilable(ContextDev::BrandStyleguideParams::Prioritize::OrSymbol)
40
+ )
41
+ end
42
+ attr_reader :prioritize
43
+
44
+ sig do
45
+ params(
46
+ prioritize: ContextDev::BrandStyleguideParams::Prioritize::OrSymbol
47
+ ).void
48
+ end
49
+ attr_writer :prioritize
50
+
51
+ # Optional timeout in milliseconds for the request. If the request takes longer
52
+ # than this value, it will be aborted with a 408 status code. Maximum allowed
53
+ # value is 300000ms (5 minutes).
54
+ sig { returns(T.nilable(Integer)) }
55
+ attr_reader :timeout_ms
56
+
57
+ sig { params(timeout_ms: Integer).void }
58
+ attr_writer :timeout_ms
59
+
60
+ sig do
61
+ params(
62
+ direct_url: String,
63
+ domain: String,
64
+ prioritize: ContextDev::BrandStyleguideParams::Prioritize::OrSymbol,
65
+ timeout_ms: Integer,
66
+ request_options: ContextDev::RequestOptions::OrHash
67
+ ).returns(T.attached_class)
68
+ end
69
+ def self.new(
70
+ # A specific URL to fetch the styleguide from directly, bypassing domain
71
+ # resolution (e.g., 'https://example.com/design-system').
72
+ direct_url: nil,
73
+ # Domain name to extract styleguide from (e.g., 'example.com', 'google.com'). The
74
+ # domain will be automatically normalized and validated.
75
+ domain: nil,
76
+ # Optional parameter to prioritize screenshot capture for styleguide extraction.
77
+ # If 'speed', optimizes for faster capture with basic quality. If 'quality',
78
+ # optimizes for higher quality with longer wait times. Defaults to 'quality' if
79
+ # not provided.
80
+ prioritize: nil,
81
+ # Optional timeout in milliseconds for the request. If the request takes longer
82
+ # than this value, it will be aborted with a 408 status code. Maximum allowed
83
+ # value is 300000ms (5 minutes).
84
+ timeout_ms: nil,
85
+ request_options: {}
86
+ )
87
+ end
88
+
89
+ sig do
90
+ override.returns(
91
+ {
92
+ direct_url: String,
93
+ domain: String,
94
+ prioritize: ContextDev::BrandStyleguideParams::Prioritize::OrSymbol,
95
+ timeout_ms: Integer,
96
+ request_options: ContextDev::RequestOptions
97
+ }
98
+ )
99
+ end
100
+ def to_hash
101
+ end
102
+
103
+ # Optional parameter to prioritize screenshot capture for styleguide extraction.
104
+ # If 'speed', optimizes for faster capture with basic quality. If 'quality',
105
+ # optimizes for higher quality with longer wait times. Defaults to 'quality' if
106
+ # not provided.
107
+ module Prioritize
108
+ extend ContextDev::Internal::Type::Enum
109
+
110
+ TaggedSymbol =
111
+ T.type_alias do
112
+ T.all(Symbol, ContextDev::BrandStyleguideParams::Prioritize)
113
+ end
114
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
115
+
116
+ SPEED =
117
+ T.let(
118
+ :speed,
119
+ ContextDev::BrandStyleguideParams::Prioritize::TaggedSymbol
120
+ )
121
+ QUALITY =
122
+ T.let(
123
+ :quality,
124
+ ContextDev::BrandStyleguideParams::Prioritize::TaggedSymbol
125
+ )
126
+
127
+ sig do
128
+ override.returns(
129
+ T::Array[
130
+ ContextDev::BrandStyleguideParams::Prioritize::TaggedSymbol
131
+ ]
132
+ )
133
+ end
134
+ def self.values
135
+ end
136
+ end
137
+ end
138
+ end
139
+ end