context.dev 2.7.0 → 2.9.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 +4 -4
- data/CHANGELOG.md +23 -0
- data/README.md +1 -1
- data/lib/context_dev/client.rb +5 -0
- data/lib/context_dev/models/batch_delete_params.rb +22 -0
- data/lib/context_dev/models/batch_delete_response.rb +60 -0
- data/lib/context_dev/models/batch_get_results_response.rb +13 -1
- data/lib/context_dev/models/batch_list_response.rb +13 -4
- data/lib/context_dev/models/batch_retrieve_response.rb +13 -4
- data/lib/context_dev/models/batch_submit_params.rb +2352 -26
- data/lib/context_dev/models/batch_submit_response.rb +125 -531
- data/lib/context_dev/models/brand_retrieve_response.rb +50 -1
- data/lib/context_dev/models/brand_search_params.rb +36 -0
- data/lib/context_dev/models/brand_search_response.rb +85 -0
- data/lib/context_dev/models/crawl_controls.rb +21 -15
- data/lib/context_dev/models/parse_handle_params.rb +11 -9
- data/lib/context_dev/models/person_enrich_params.rb +176 -0
- data/lib/context_dev/models/person_enrich_response.rb +581 -0
- data/lib/context_dev/models/web_search_response.rb +1 -0
- data/lib/context_dev/models/web_web_crawl_md_params.rb +5 -4
- data/lib/context_dev/models/web_web_scrape_html_params.rb +11 -9
- data/lib/context_dev/models/web_web_scrape_md_params.rb +11 -9
- data/lib/context_dev/models/web_web_scrape_sitemap_params.rb +11 -1
- data/lib/context_dev/models/web_web_scrape_sitemap_response.rb +3 -2
- data/lib/context_dev/models.rb +6 -0
- data/lib/context_dev/resources/batch.rb +33 -7
- data/lib/context_dev/resources/brand.rb +35 -0
- data/lib/context_dev/resources/parse.rb +1 -1
- data/lib/context_dev/resources/people.rb +56 -0
- data/lib/context_dev/resources/web.rb +21 -2
- data/lib/context_dev/version.rb +1 -1
- data/lib/context_dev.rb +7 -0
- data/rbi/context_dev/client.rbi +4 -0
- data/rbi/context_dev/models/batch_delete_params.rbi +40 -0
- data/rbi/context_dev/models/batch_delete_response.rbi +116 -0
- data/rbi/context_dev/models/batch_get_results_response.rbi +14 -1
- data/rbi/context_dev/models/batch_list_response.rbi +24 -8
- data/rbi/context_dev/models/batch_retrieve_response.rbi +24 -8
- data/rbi/context_dev/models/batch_submit_params.rbi +6955 -44
- data/rbi/context_dev/models/batch_submit_response.rbi +184 -1151
- data/rbi/context_dev/models/brand_retrieve_response.rbi +152 -0
- data/rbi/context_dev/models/brand_search_params.rbi +60 -0
- data/rbi/context_dev/models/brand_search_response.rbi +148 -0
- data/rbi/context_dev/models/crawl_controls.rbi +22 -28
- data/rbi/context_dev/models/parse_handle_params.rbi +15 -12
- data/rbi/context_dev/models/person_enrich_params.rbi +332 -0
- data/rbi/context_dev/models/person_enrich_response.rbi +1208 -0
- data/rbi/context_dev/models/web_search_response.rbi +5 -0
- data/rbi/context_dev/models/web_web_crawl_md_params.rbi +8 -6
- data/rbi/context_dev/models/web_web_scrape_html_params.rbi +15 -12
- data/rbi/context_dev/models/web_web_scrape_md_params.rbi +15 -12
- data/rbi/context_dev/models/web_web_scrape_sitemap_params.rbi +15 -0
- data/rbi/context_dev/models/web_web_scrape_sitemap_response.rbi +4 -2
- data/rbi/context_dev/models.rbi +6 -0
- data/rbi/context_dev/resources/batch.rbi +32 -10
- data/rbi/context_dev/resources/brand.rbi +27 -0
- data/rbi/context_dev/resources/parse.rbi +5 -5
- data/rbi/context_dev/resources/people.rbi +47 -0
- data/rbi/context_dev/resources/web.rbi +23 -1
- data/sig/context_dev/client.rbs +2 -0
- data/sig/context_dev/models/batch_delete_params.rbs +23 -0
- data/sig/context_dev/models/batch_delete_response.rbs +57 -0
- data/sig/context_dev/models/batch_get_results_response.rbs +9 -2
- data/sig/context_dev/models/batch_list_response.rbs +16 -2
- data/sig/context_dev/models/batch_retrieve_response.rbs +16 -2
- data/sig/context_dev/models/batch_submit_params.rbs +2756 -15
- data/sig/context_dev/models/batch_submit_response.rbs +78 -466
- data/sig/context_dev/models/brand_retrieve_response.rbs +62 -0
- data/sig/context_dev/models/brand_search_params.rbs +30 -0
- data/sig/context_dev/models/brand_search_response.rbs +62 -0
- data/sig/context_dev/models/crawl_controls.rbs +16 -16
- data/sig/context_dev/models/person_enrich_params.rbs +199 -0
- data/sig/context_dev/models/person_enrich_response.rbs +607 -0
- data/sig/context_dev/models/web_search_response.rbs +2 -0
- data/sig/context_dev/models/web_web_scrape_sitemap_params.rbs +7 -0
- data/sig/context_dev/models.rbs +6 -0
- data/sig/context_dev/resources/batch.rbs +8 -2
- data/sig/context_dev/resources/brand.rbs +6 -0
- data/sig/context_dev/resources/people.rbs +19 -0
- data/sig/context_dev/resources/web.rbs +1 -0
- metadata +23 -2
|
@@ -179,6 +179,24 @@ module ContextDev
|
|
|
179
179
|
sig { params(email: String).void }
|
|
180
180
|
attr_writer :email
|
|
181
181
|
|
|
182
|
+
# Employee headcount information for the brand (will be null if unknown)
|
|
183
|
+
sig do
|
|
184
|
+
returns(
|
|
185
|
+
T.nilable(
|
|
186
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees
|
|
187
|
+
)
|
|
188
|
+
)
|
|
189
|
+
end
|
|
190
|
+
attr_reader :employees
|
|
191
|
+
|
|
192
|
+
sig do
|
|
193
|
+
params(
|
|
194
|
+
employees:
|
|
195
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::OrHash
|
|
196
|
+
).void
|
|
197
|
+
end
|
|
198
|
+
attr_writer :employees
|
|
199
|
+
|
|
182
200
|
# Industry classification information for the brand
|
|
183
201
|
sig do
|
|
184
202
|
returns(
|
|
@@ -324,6 +342,8 @@ module ContextDev
|
|
|
324
342
|
description: String,
|
|
325
343
|
domain: String,
|
|
326
344
|
email: String,
|
|
345
|
+
employees:
|
|
346
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::OrHash,
|
|
327
347
|
industries:
|
|
328
348
|
ContextDev::Models::BrandRetrieveResponse::Brand::Industries::OrHash,
|
|
329
349
|
is_nsfw: T::Boolean,
|
|
@@ -361,6 +381,8 @@ module ContextDev
|
|
|
361
381
|
domain: nil,
|
|
362
382
|
# Company email address
|
|
363
383
|
email: nil,
|
|
384
|
+
# Employee headcount information for the brand (will be null if unknown)
|
|
385
|
+
employees: nil,
|
|
364
386
|
# Industry classification information for the brand
|
|
365
387
|
industries: nil,
|
|
366
388
|
# Indicates whether the brand content is not safe for work (NSFW)
|
|
@@ -401,6 +423,8 @@ module ContextDev
|
|
|
401
423
|
description: String,
|
|
402
424
|
domain: String,
|
|
403
425
|
email: String,
|
|
426
|
+
employees:
|
|
427
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees,
|
|
404
428
|
industries:
|
|
405
429
|
ContextDev::Models::BrandRetrieveResponse::Brand::Industries,
|
|
406
430
|
is_nsfw: T::Boolean,
|
|
@@ -757,6 +781,134 @@ module ContextDev
|
|
|
757
781
|
end
|
|
758
782
|
end
|
|
759
783
|
|
|
784
|
+
class Employees < ContextDev::Internal::Type::BaseModel
|
|
785
|
+
OrHash =
|
|
786
|
+
T.type_alias do
|
|
787
|
+
T.any(
|
|
788
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees,
|
|
789
|
+
ContextDev::Internal::AnyHash
|
|
790
|
+
)
|
|
791
|
+
end
|
|
792
|
+
|
|
793
|
+
# Exact employee count when a precise headcount is known
|
|
794
|
+
sig { returns(T.nilable(Integer)) }
|
|
795
|
+
attr_reader :exact
|
|
796
|
+
|
|
797
|
+
sig { params(exact: Integer).void }
|
|
798
|
+
attr_writer :exact
|
|
799
|
+
|
|
800
|
+
# Employee count range for the brand (e.g. '11 to 50')
|
|
801
|
+
sig do
|
|
802
|
+
returns(
|
|
803
|
+
T.nilable(
|
|
804
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
805
|
+
)
|
|
806
|
+
)
|
|
807
|
+
end
|
|
808
|
+
attr_reader :range
|
|
809
|
+
|
|
810
|
+
sig do
|
|
811
|
+
params(
|
|
812
|
+
range:
|
|
813
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::OrSymbol
|
|
814
|
+
).void
|
|
815
|
+
end
|
|
816
|
+
attr_writer :range
|
|
817
|
+
|
|
818
|
+
# Employee headcount information for the brand (will be null if unknown)
|
|
819
|
+
sig do
|
|
820
|
+
params(
|
|
821
|
+
exact: Integer,
|
|
822
|
+
range:
|
|
823
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::OrSymbol
|
|
824
|
+
).returns(T.attached_class)
|
|
825
|
+
end
|
|
826
|
+
def self.new(
|
|
827
|
+
# Exact employee count when a precise headcount is known
|
|
828
|
+
exact: nil,
|
|
829
|
+
# Employee count range for the brand (e.g. '11 to 50')
|
|
830
|
+
range: nil
|
|
831
|
+
)
|
|
832
|
+
end
|
|
833
|
+
|
|
834
|
+
sig do
|
|
835
|
+
override.returns(
|
|
836
|
+
{
|
|
837
|
+
exact: Integer,
|
|
838
|
+
range:
|
|
839
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
840
|
+
}
|
|
841
|
+
)
|
|
842
|
+
end
|
|
843
|
+
def to_hash
|
|
844
|
+
end
|
|
845
|
+
|
|
846
|
+
# Employee count range for the brand (e.g. '11 to 50')
|
|
847
|
+
module Range
|
|
848
|
+
extend ContextDev::Internal::Type::Enum
|
|
849
|
+
|
|
850
|
+
TaggedSymbol =
|
|
851
|
+
T.type_alias do
|
|
852
|
+
T.all(
|
|
853
|
+
Symbol,
|
|
854
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range
|
|
855
|
+
)
|
|
856
|
+
end
|
|
857
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
858
|
+
|
|
859
|
+
RANGE_1_TO_10 =
|
|
860
|
+
T.let(
|
|
861
|
+
:"1 to 10",
|
|
862
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
863
|
+
)
|
|
864
|
+
RANGE_11_TO_50 =
|
|
865
|
+
T.let(
|
|
866
|
+
:"11 to 50",
|
|
867
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
868
|
+
)
|
|
869
|
+
RANGE_51_TO_200 =
|
|
870
|
+
T.let(
|
|
871
|
+
:"51 to 200",
|
|
872
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
873
|
+
)
|
|
874
|
+
RANGE_201_TO_500 =
|
|
875
|
+
T.let(
|
|
876
|
+
:"201 to 500",
|
|
877
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
878
|
+
)
|
|
879
|
+
RANGE_501_TO_1000 =
|
|
880
|
+
T.let(
|
|
881
|
+
:"501 to 1000",
|
|
882
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
883
|
+
)
|
|
884
|
+
RANGE_1001_TO_5000 =
|
|
885
|
+
T.let(
|
|
886
|
+
:"1001 to 5000",
|
|
887
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
888
|
+
)
|
|
889
|
+
RANGE_5001_TO_10000 =
|
|
890
|
+
T.let(
|
|
891
|
+
:"5001 to 10000",
|
|
892
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
893
|
+
)
|
|
894
|
+
RANGE_10001 =
|
|
895
|
+
T.let(
|
|
896
|
+
:"10001+",
|
|
897
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
898
|
+
)
|
|
899
|
+
|
|
900
|
+
sig do
|
|
901
|
+
override.returns(
|
|
902
|
+
T::Array[
|
|
903
|
+
ContextDev::Models::BrandRetrieveResponse::Brand::Employees::Range::TaggedSymbol
|
|
904
|
+
]
|
|
905
|
+
)
|
|
906
|
+
end
|
|
907
|
+
def self.values
|
|
908
|
+
end
|
|
909
|
+
end
|
|
910
|
+
end
|
|
911
|
+
|
|
760
912
|
class Industries < ContextDev::Internal::Type::BaseModel
|
|
761
913
|
OrHash =
|
|
762
914
|
T.type_alias do
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module ContextDev
|
|
4
|
+
module Models
|
|
5
|
+
class BrandSearchParams < 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(ContextDev::BrandSearchParams, ContextDev::Internal::AnyHash)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Search term, matched against brand names and domains by prefix (e.g. 'nike',
|
|
15
|
+
# 'nike.com', 'nik').
|
|
16
|
+
sig { returns(String) }
|
|
17
|
+
attr_accessor :query
|
|
18
|
+
|
|
19
|
+
# Optional comma-separated caller-defined tags for tracking this request. Tags are
|
|
20
|
+
# recorded on the request's usage log and can be used to filter usage on the
|
|
21
|
+
# dashboard usage page. Up to 20 tags, each 1-50 characters.
|
|
22
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
23
|
+
attr_reader :tags
|
|
24
|
+
|
|
25
|
+
sig { params(tags: T::Array[String]).void }
|
|
26
|
+
attr_writer :tags
|
|
27
|
+
|
|
28
|
+
sig do
|
|
29
|
+
params(
|
|
30
|
+
query: String,
|
|
31
|
+
tags: T::Array[String],
|
|
32
|
+
request_options: ContextDev::RequestOptions::OrHash
|
|
33
|
+
).returns(T.attached_class)
|
|
34
|
+
end
|
|
35
|
+
def self.new(
|
|
36
|
+
# Search term, matched against brand names and domains by prefix (e.g. 'nike',
|
|
37
|
+
# 'nike.com', 'nik').
|
|
38
|
+
query:,
|
|
39
|
+
# Optional comma-separated caller-defined tags for tracking this request. Tags are
|
|
40
|
+
# recorded on the request's usage log and can be used to filter usage on the
|
|
41
|
+
# dashboard usage page. Up to 20 tags, each 1-50 characters.
|
|
42
|
+
tags: nil,
|
|
43
|
+
request_options: {}
|
|
44
|
+
)
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
sig do
|
|
48
|
+
override.returns(
|
|
49
|
+
{
|
|
50
|
+
query: String,
|
|
51
|
+
tags: T::Array[String],
|
|
52
|
+
request_options: ContextDev::RequestOptions
|
|
53
|
+
}
|
|
54
|
+
)
|
|
55
|
+
end
|
|
56
|
+
def to_hash
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module ContextDev
|
|
4
|
+
module Models
|
|
5
|
+
class BrandSearchResponse < ContextDev::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
ContextDev::Models::BrandSearchResponse,
|
|
10
|
+
ContextDev::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Up to 10 matching brands, name matches first, then domain matches, most popular
|
|
15
|
+
# first within each group. Empty when nothing matches.
|
|
16
|
+
sig { returns(T::Array[ContextDev::Models::BrandSearchResponse::Result]) }
|
|
17
|
+
attr_accessor :results
|
|
18
|
+
|
|
19
|
+
# Metadata about the API key used for the request. Included in every response
|
|
20
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
21
|
+
sig do
|
|
22
|
+
returns(T.nilable(ContextDev::Models::BrandSearchResponse::KeyMetadata))
|
|
23
|
+
end
|
|
24
|
+
attr_reader :key_metadata
|
|
25
|
+
|
|
26
|
+
sig do
|
|
27
|
+
params(
|
|
28
|
+
key_metadata:
|
|
29
|
+
ContextDev::Models::BrandSearchResponse::KeyMetadata::OrHash
|
|
30
|
+
).void
|
|
31
|
+
end
|
|
32
|
+
attr_writer :key_metadata
|
|
33
|
+
|
|
34
|
+
sig do
|
|
35
|
+
params(
|
|
36
|
+
results:
|
|
37
|
+
T::Array[ContextDev::Models::BrandSearchResponse::Result::OrHash],
|
|
38
|
+
key_metadata:
|
|
39
|
+
ContextDev::Models::BrandSearchResponse::KeyMetadata::OrHash
|
|
40
|
+
).returns(T.attached_class)
|
|
41
|
+
end
|
|
42
|
+
def self.new(
|
|
43
|
+
# Up to 10 matching brands, name matches first, then domain matches, most popular
|
|
44
|
+
# first within each group. Empty when nothing matches.
|
|
45
|
+
results:,
|
|
46
|
+
# Metadata about the API key used for the request. Included in every response
|
|
47
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
48
|
+
key_metadata: nil
|
|
49
|
+
)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
sig do
|
|
53
|
+
override.returns(
|
|
54
|
+
{
|
|
55
|
+
results: T::Array[ContextDev::Models::BrandSearchResponse::Result],
|
|
56
|
+
key_metadata: ContextDev::Models::BrandSearchResponse::KeyMetadata
|
|
57
|
+
}
|
|
58
|
+
)
|
|
59
|
+
end
|
|
60
|
+
def to_hash
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
class Result < ContextDev::Internal::Type::BaseModel
|
|
64
|
+
OrHash =
|
|
65
|
+
T.type_alias do
|
|
66
|
+
T.any(
|
|
67
|
+
ContextDev::Models::BrandSearchResponse::Result,
|
|
68
|
+
ContextDev::Internal::AnyHash
|
|
69
|
+
)
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
# The brand's domain.
|
|
73
|
+
sig { returns(String) }
|
|
74
|
+
attr_accessor :domain
|
|
75
|
+
|
|
76
|
+
# Logo link URL that serves the brand's logo, generated per request for the
|
|
77
|
+
# calling organization.
|
|
78
|
+
sig { returns(String) }
|
|
79
|
+
attr_accessor :logo
|
|
80
|
+
|
|
81
|
+
# The brand's name. Empty string when unknown.
|
|
82
|
+
sig { returns(String) }
|
|
83
|
+
attr_accessor :name
|
|
84
|
+
|
|
85
|
+
sig do
|
|
86
|
+
params(domain: String, logo: String, name: String).returns(
|
|
87
|
+
T.attached_class
|
|
88
|
+
)
|
|
89
|
+
end
|
|
90
|
+
def self.new(
|
|
91
|
+
# The brand's domain.
|
|
92
|
+
domain:,
|
|
93
|
+
# Logo link URL that serves the brand's logo, generated per request for the
|
|
94
|
+
# calling organization.
|
|
95
|
+
logo:,
|
|
96
|
+
# The brand's name. Empty string when unknown.
|
|
97
|
+
name:
|
|
98
|
+
)
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
sig { override.returns({ domain: String, logo: String, name: String }) }
|
|
102
|
+
def to_hash
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
class KeyMetadata < ContextDev::Internal::Type::BaseModel
|
|
107
|
+
OrHash =
|
|
108
|
+
T.type_alias do
|
|
109
|
+
T.any(
|
|
110
|
+
ContextDev::Models::BrandSearchResponse::KeyMetadata,
|
|
111
|
+
ContextDev::Internal::AnyHash
|
|
112
|
+
)
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
# The number of credits consumed by this request.
|
|
116
|
+
sig { returns(Integer) }
|
|
117
|
+
attr_accessor :credits_consumed
|
|
118
|
+
|
|
119
|
+
# The number of credits remaining for your organization after this request.
|
|
120
|
+
sig { returns(Integer) }
|
|
121
|
+
attr_accessor :credits_remaining
|
|
122
|
+
|
|
123
|
+
# Metadata about the API key used for the request. Included in every response
|
|
124
|
+
# whenever a valid API key is provided, even when the response status is not 200.
|
|
125
|
+
sig do
|
|
126
|
+
params(credits_consumed: Integer, credits_remaining: Integer).returns(
|
|
127
|
+
T.attached_class
|
|
128
|
+
)
|
|
129
|
+
end
|
|
130
|
+
def self.new(
|
|
131
|
+
# The number of credits consumed by this request.
|
|
132
|
+
credits_consumed:,
|
|
133
|
+
# The number of credits remaining for your organization after this request.
|
|
134
|
+
credits_remaining:
|
|
135
|
+
)
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
sig do
|
|
139
|
+
override.returns(
|
|
140
|
+
{ credits_consumed: Integer, credits_remaining: Integer }
|
|
141
|
+
)
|
|
142
|
+
end
|
|
143
|
+
def to_hash
|
|
144
|
+
end
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
end
|
|
148
|
+
end
|
|
@@ -39,8 +39,8 @@ module ContextDev
|
|
|
39
39
|
max_pages: Integer,
|
|
40
40
|
source:
|
|
41
41
|
T.any(
|
|
42
|
-
ContextDev::CrawlControls::Source::
|
|
43
|
-
ContextDev::CrawlControls::Source::
|
|
42
|
+
ContextDev::CrawlControls::Source::StartURL::OrHash,
|
|
43
|
+
ContextDev::CrawlControls::Source::Sitemap::OrHash
|
|
44
44
|
),
|
|
45
45
|
url_pattern: T.nilable(String)
|
|
46
46
|
).returns(T.attached_class)
|
|
@@ -82,23 +82,23 @@ module ContextDev
|
|
|
82
82
|
Variants =
|
|
83
83
|
T.type_alias do
|
|
84
84
|
T.any(
|
|
85
|
-
ContextDev::CrawlControls::Source::
|
|
86
|
-
ContextDev::CrawlControls::Source::
|
|
85
|
+
ContextDev::CrawlControls::Source::StartURL,
|
|
86
|
+
ContextDev::CrawlControls::Source::Sitemap
|
|
87
87
|
)
|
|
88
88
|
end
|
|
89
89
|
|
|
90
|
-
class
|
|
90
|
+
class StartURL < ContextDev::Internal::Type::BaseModel
|
|
91
91
|
OrHash =
|
|
92
92
|
T.type_alias do
|
|
93
93
|
T.any(
|
|
94
|
-
ContextDev::CrawlControls::Source::
|
|
94
|
+
ContextDev::CrawlControls::Source::StartURL,
|
|
95
95
|
ContextDev::Internal::AnyHash
|
|
96
96
|
)
|
|
97
97
|
end
|
|
98
98
|
|
|
99
99
|
sig do
|
|
100
100
|
returns(
|
|
101
|
-
ContextDev::CrawlControls::Source::
|
|
101
|
+
ContextDev::CrawlControls::Source::StartURL::Type::TaggedSymbol
|
|
102
102
|
)
|
|
103
103
|
end
|
|
104
104
|
attr_accessor :type
|
|
@@ -107,10 +107,10 @@ module ContextDev
|
|
|
107
107
|
sig { returns(String) }
|
|
108
108
|
attr_accessor :url
|
|
109
109
|
|
|
110
|
+
# The crawl discovered pages by following links from one URL.
|
|
110
111
|
sig do
|
|
111
112
|
params(
|
|
112
|
-
type:
|
|
113
|
-
ContextDev::CrawlControls::Source::UnionMember0::Type::OrSymbol,
|
|
113
|
+
type: ContextDev::CrawlControls::Source::StartURL::Type::OrSymbol,
|
|
114
114
|
url: String
|
|
115
115
|
).returns(T.attached_class)
|
|
116
116
|
end
|
|
@@ -125,7 +125,7 @@ module ContextDev
|
|
|
125
125
|
override.returns(
|
|
126
126
|
{
|
|
127
127
|
type:
|
|
128
|
-
ContextDev::CrawlControls::Source::
|
|
128
|
+
ContextDev::CrawlControls::Source::StartURL::Type::TaggedSymbol,
|
|
129
129
|
url: String
|
|
130
130
|
}
|
|
131
131
|
)
|
|
@@ -138,23 +138,20 @@ module ContextDev
|
|
|
138
138
|
|
|
139
139
|
TaggedSymbol =
|
|
140
140
|
T.type_alias do
|
|
141
|
-
T.all(
|
|
142
|
-
Symbol,
|
|
143
|
-
ContextDev::CrawlControls::Source::UnionMember0::Type
|
|
144
|
-
)
|
|
141
|
+
T.all(Symbol, ContextDev::CrawlControls::Source::StartURL::Type)
|
|
145
142
|
end
|
|
146
143
|
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
147
144
|
|
|
148
145
|
START_URL =
|
|
149
146
|
T.let(
|
|
150
147
|
:start_url,
|
|
151
|
-
ContextDev::CrawlControls::Source::
|
|
148
|
+
ContextDev::CrawlControls::Source::StartURL::Type::TaggedSymbol
|
|
152
149
|
)
|
|
153
150
|
|
|
154
151
|
sig do
|
|
155
152
|
override.returns(
|
|
156
153
|
T::Array[
|
|
157
|
-
ContextDev::CrawlControls::Source::
|
|
154
|
+
ContextDev::CrawlControls::Source::StartURL::Type::TaggedSymbol
|
|
158
155
|
]
|
|
159
156
|
)
|
|
160
157
|
end
|
|
@@ -163,11 +160,11 @@ module ContextDev
|
|
|
163
160
|
end
|
|
164
161
|
end
|
|
165
162
|
|
|
166
|
-
class
|
|
163
|
+
class Sitemap < ContextDev::Internal::Type::BaseModel
|
|
167
164
|
OrHash =
|
|
168
165
|
T.type_alias do
|
|
169
166
|
T.any(
|
|
170
|
-
ContextDev::CrawlControls::Source::
|
|
167
|
+
ContextDev::CrawlControls::Source::Sitemap,
|
|
171
168
|
ContextDev::Internal::AnyHash
|
|
172
169
|
)
|
|
173
170
|
end
|
|
@@ -178,16 +175,16 @@ module ContextDev
|
|
|
178
175
|
|
|
179
176
|
sig do
|
|
180
177
|
returns(
|
|
181
|
-
ContextDev::CrawlControls::Source::
|
|
178
|
+
ContextDev::CrawlControls::Source::Sitemap::Type::TaggedSymbol
|
|
182
179
|
)
|
|
183
180
|
end
|
|
184
181
|
attr_accessor :type
|
|
185
182
|
|
|
183
|
+
# The crawl scraped the pages listed in the domain's sitemap.
|
|
186
184
|
sig do
|
|
187
185
|
params(
|
|
188
186
|
domain: String,
|
|
189
|
-
type:
|
|
190
|
-
ContextDev::CrawlControls::Source::UnionMember1::Type::OrSymbol
|
|
187
|
+
type: ContextDev::CrawlControls::Source::Sitemap::Type::OrSymbol
|
|
191
188
|
).returns(T.attached_class)
|
|
192
189
|
end
|
|
193
190
|
def self.new(
|
|
@@ -202,7 +199,7 @@ module ContextDev
|
|
|
202
199
|
{
|
|
203
200
|
domain: String,
|
|
204
201
|
type:
|
|
205
|
-
ContextDev::CrawlControls::Source::
|
|
202
|
+
ContextDev::CrawlControls::Source::Sitemap::Type::TaggedSymbol
|
|
206
203
|
}
|
|
207
204
|
)
|
|
208
205
|
end
|
|
@@ -214,23 +211,20 @@ module ContextDev
|
|
|
214
211
|
|
|
215
212
|
TaggedSymbol =
|
|
216
213
|
T.type_alias do
|
|
217
|
-
T.all(
|
|
218
|
-
Symbol,
|
|
219
|
-
ContextDev::CrawlControls::Source::UnionMember1::Type
|
|
220
|
-
)
|
|
214
|
+
T.all(Symbol, ContextDev::CrawlControls::Source::Sitemap::Type)
|
|
221
215
|
end
|
|
222
216
|
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
223
217
|
|
|
224
218
|
SITEMAP =
|
|
225
219
|
T.let(
|
|
226
220
|
:sitemap,
|
|
227
|
-
ContextDev::CrawlControls::Source::
|
|
221
|
+
ContextDev::CrawlControls::Source::Sitemap::Type::TaggedSymbol
|
|
228
222
|
)
|
|
229
223
|
|
|
230
224
|
sig do
|
|
231
225
|
override.returns(
|
|
232
226
|
T::Array[
|
|
233
|
-
ContextDev::CrawlControls::Source::
|
|
227
|
+
ContextDev::CrawlControls::Source::Sitemap::Type::TaggedSymbol
|
|
234
228
|
]
|
|
235
229
|
)
|
|
236
230
|
end
|
|
@@ -83,10 +83,11 @@ module ContextDev
|
|
|
83
83
|
end
|
|
84
84
|
attr_writer :include_links
|
|
85
85
|
|
|
86
|
-
# When true for PDF inputs,
|
|
87
|
-
#
|
|
88
|
-
#
|
|
89
|
-
#
|
|
86
|
+
# When true for PDF inputs, OCR the selected pages that have no usable text layer
|
|
87
|
+
# (scans), replacing each recovered page's text with the OCR result while pages
|
|
88
|
+
# with a real text layer keep it. pdf.start/pdf.end limit the inclusive page
|
|
89
|
+
# range. Billed at 1 credit per page OCR actually recovered, on top of the base
|
|
90
|
+
# request cost. When false, no OCR runs.
|
|
90
91
|
sig do
|
|
91
92
|
returns(
|
|
92
93
|
T.nilable(
|
|
@@ -220,10 +221,11 @@ module ContextDev
|
|
|
220
221
|
include_images: nil,
|
|
221
222
|
# Preserve hyperlinks in Markdown output
|
|
222
223
|
include_links: nil,
|
|
223
|
-
# When true for PDF inputs,
|
|
224
|
-
#
|
|
225
|
-
#
|
|
226
|
-
#
|
|
224
|
+
# When true for PDF inputs, OCR the selected pages that have no usable text layer
|
|
225
|
+
# (scans), replacing each recovered page's text with the OCR result while pages
|
|
226
|
+
# with a real text layer keep it. pdf.start/pdf.end limit the inclusive page
|
|
227
|
+
# range. Billed at 1 credit per page OCR actually recovered, on top of the base
|
|
228
|
+
# request cost. When false, no OCR runs.
|
|
227
229
|
ocr: nil,
|
|
228
230
|
# PDF page-range options as a JSON object, e.g. {"start": 2, "end": 5}.
|
|
229
231
|
pdf: nil,
|
|
@@ -516,10 +518,11 @@ module ContextDev
|
|
|
516
518
|
)
|
|
517
519
|
end
|
|
518
520
|
|
|
519
|
-
# When true for PDF inputs,
|
|
520
|
-
#
|
|
521
|
-
#
|
|
522
|
-
#
|
|
521
|
+
# When true for PDF inputs, OCR the selected pages that have no usable text layer
|
|
522
|
+
# (scans), replacing each recovered page's text with the OCR result while pages
|
|
523
|
+
# with a real text layer keep it. pdf.start/pdf.end limit the inclusive page
|
|
524
|
+
# range. Billed at 1 credit per page OCR actually recovered, on top of the base
|
|
525
|
+
# request cost. When false, no OCR runs.
|
|
523
526
|
module Ocr
|
|
524
527
|
extend ContextDev::Internal::Type::Union
|
|
525
528
|
|