dub 0.2.2.pre.alpha.78 → 0.2.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.
- checksums.yaml +4 -4
- data/lib/dub.rb +5 -9
- data/lib/open_api_sdk/analytics.rb +13 -19
- data/lib/open_api_sdk/domains.rb +95 -115
- data/lib/open_api_sdk/dub.rb +40 -37
- data/lib/open_api_sdk/links.rb +156 -276
- data/lib/open_api_sdk/metatags.rb +4 -10
- data/lib/open_api_sdk/models/operations/bulkcreatelinks_response.rb +7 -7
- data/lib/open_api_sdk/models/operations/bulkupdatelinks_requestbody.rb +6 -9
- data/lib/open_api_sdk/models/operations/bulkupdatelinks_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/color.rb +2 -1
- data/lib/open_api_sdk/models/operations/createdomain_requestbody.rb +4 -16
- data/lib/open_api_sdk/models/operations/createdomain_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/createlink_requestbody.rb +13 -51
- data/lib/open_api_sdk/models/operations/createlink_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/createtag_requestbody.rb +2 -2
- data/lib/open_api_sdk/models/operations/createtag_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/data.rb +12 -50
- data/lib/open_api_sdk/models/operations/deletedomain_request.rb +2 -2
- data/lib/open_api_sdk/models/operations/deletedomain_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/deletedomain_responsebody.rb +2 -2
- data/lib/open_api_sdk/models/operations/deletelink_request.rb +2 -2
- data/lib/open_api_sdk/models/operations/deletelink_response.rb +3 -3
- data/lib/open_api_sdk/models/operations/deletelink_responsebody.rb +3 -3
- data/lib/open_api_sdk/models/operations/event.rb +3 -2
- data/lib/open_api_sdk/models/operations/getlinkinfo_request.rb +3 -3
- data/lib/open_api_sdk/models/operations/getlinkinfo_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/getlinks_request.rb +10 -25
- data/lib/open_api_sdk/models/operations/getlinks_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/getlinkscount_request.rb +7 -13
- data/lib/open_api_sdk/models/operations/getlinkscount_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/getmetatags_request.rb +2 -2
- data/lib/open_api_sdk/models/operations/getmetatags_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/getmetatags_responsebody.rb +2 -2
- data/lib/open_api_sdk/models/operations/getqrcode_request.rb +5 -14
- data/lib/open_api_sdk/models/operations/getqrcode_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/gettags_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/getworkspace_request.rb +2 -2
- data/lib/open_api_sdk/models/operations/getworkspace_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/groupby.rb +4 -12
- data/lib/open_api_sdk/models/operations/interval.rb +5 -5
- data/lib/open_api_sdk/models/operations/level.rb +2 -1
- data/lib/open_api_sdk/models/operations/listdomains_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/paymentprocessor.rb +2 -3
- data/lib/open_api_sdk/models/operations/requestbody.rb +13 -51
- data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rb +11 -53
- data/lib/open_api_sdk/models/operations/retrieveanalytics_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/sort.rb +3 -5
- data/lib/open_api_sdk/models/operations/trackcustomer_requestbody.rb +33 -0
- data/lib/open_api_sdk/models/operations/{createpartner_response.rb → trackcustomer_response.rb} +5 -5
- data/lib/open_api_sdk/models/operations/trackcustomer_responsebody.rb +33 -0
- data/lib/open_api_sdk/models/operations/tracklead_requestbody.rb +9 -20
- data/lib/open_api_sdk/models/operations/tracklead_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/tracklead_responsebody.rb +23 -8
- data/lib/open_api_sdk/models/operations/tracksale_requestbody.rb +8 -16
- data/lib/open_api_sdk/models/operations/tracksale_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/tracksale_responsebody.rb +20 -8
- data/lib/open_api_sdk/models/operations/updatedomain_request.rb +2 -2
- data/lib/open_api_sdk/models/operations/updatedomain_requestbody.rb +4 -16
- data/lib/open_api_sdk/models/operations/updatedomain_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/updatelink_request.rb +2 -2
- data/lib/open_api_sdk/models/operations/updatelink_requestbody.rb +14 -52
- data/lib/open_api_sdk/models/operations/updatelink_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/updatetag_color.rb +2 -1
- data/lib/open_api_sdk/models/operations/updatetag_request.rb +2 -2
- data/lib/open_api_sdk/models/operations/updatetag_requestbody.rb +2 -2
- data/lib/open_api_sdk/models/operations/updatetag_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/updateworkspace_request.rb +2 -2
- data/lib/open_api_sdk/models/operations/updateworkspace_requestbody.rb +4 -13
- data/lib/open_api_sdk/models/operations/updateworkspace_response.rb +2 -2
- data/lib/open_api_sdk/models/operations/upsertlink_requestbody.rb +13 -51
- data/lib/open_api_sdk/models/operations/upsertlink_response.rb +2 -2
- data/lib/open_api_sdk/models/operations.rb +22 -116
- data/lib/open_api_sdk/models/shared/badrequest.rb +3 -3
- data/lib/open_api_sdk/models/shared/code.rb +2 -1
- data/lib/open_api_sdk/models/shared/color.rb +2 -1
- data/lib/open_api_sdk/models/shared/conflict.rb +3 -3
- data/lib/open_api_sdk/models/shared/conflict_code.rb +2 -1
- data/lib/open_api_sdk/models/shared/conflict_error.rb +2 -2
- data/lib/open_api_sdk/models/shared/countrycode.rb +2 -1
- data/lib/open_api_sdk/models/shared/domains.rb +4 -7
- data/lib/open_api_sdk/models/shared/domainschema.rb +4 -19
- data/lib/open_api_sdk/models/shared/error.rb +2 -2
- data/lib/open_api_sdk/models/shared/forbidden.rb +3 -3
- data/lib/open_api_sdk/models/shared/forbidden_code.rb +2 -1
- data/lib/open_api_sdk/models/shared/forbidden_error.rb +2 -2
- data/lib/open_api_sdk/models/shared/geo.rb +2 -2
- data/lib/open_api_sdk/models/shared/internalservererror.rb +3 -3
- data/lib/open_api_sdk/models/shared/internalservererror_code.rb +2 -1
- data/lib/open_api_sdk/models/shared/internalservererror_error.rb +2 -2
- data/lib/open_api_sdk/models/shared/inviteexpired.rb +3 -3
- data/lib/open_api_sdk/models/shared/inviteexpired_code.rb +2 -1
- data/lib/open_api_sdk/models/shared/inviteexpired_error.rb +2 -2
- data/lib/open_api_sdk/models/shared/linkgeotargeting.rb +2 -2
- data/lib/open_api_sdk/models/shared/linkschema.rb +8 -29
- data/lib/open_api_sdk/models/shared/notfound.rb +3 -3
- data/lib/open_api_sdk/models/shared/notfound_code.rb +2 -1
- data/lib/open_api_sdk/models/shared/notfound_error.rb +2 -2
- data/lib/open_api_sdk/models/shared/plan.rb +2 -1
- data/lib/open_api_sdk/models/shared/ratelimitexceeded.rb +3 -3
- data/lib/open_api_sdk/models/shared/ratelimitexceeded_code.rb +2 -1
- data/lib/open_api_sdk/models/shared/ratelimitexceeded_error.rb +2 -2
- data/lib/open_api_sdk/models/shared/role.rb +2 -1
- data/lib/open_api_sdk/models/shared/security.rb +4 -4
- data/lib/open_api_sdk/models/shared/tagschema.rb +2 -2
- data/lib/open_api_sdk/models/shared/unauthorized.rb +3 -3
- data/lib/open_api_sdk/models/shared/unauthorized_code.rb +2 -1
- data/lib/open_api_sdk/models/shared/unauthorized_error.rb +2 -2
- data/lib/open_api_sdk/models/shared/unprocessableentity.rb +3 -3
- data/lib/open_api_sdk/models/shared/unprocessableentity_code.rb +2 -1
- data/lib/open_api_sdk/models/shared/unprocessableentity_error.rb +2 -2
- data/lib/open_api_sdk/models/shared/users.rb +2 -2
- data/lib/open_api_sdk/models/shared/workspaceschema.rb +8 -47
- data/lib/open_api_sdk/models/shared.rb +2 -12
- data/lib/open_api_sdk/qr_codes.rb +13 -18
- data/lib/open_api_sdk/sdkconfiguration.rb +10 -26
- data/lib/open_api_sdk/tags.rb +60 -161
- data/lib/open_api_sdk/track.rb +109 -34
- data/lib/{crystalline → open_api_sdk/utils}/metadata_fields.rb +20 -33
- data/lib/{crystalline → open_api_sdk/utils}/t.rb +1 -1
- data/lib/open_api_sdk/utils/utils.rb +60 -16
- data/lib/open_api_sdk/workspaces.rb +25 -35
- metadata +12 -166
- data/lib/crystalline/utils.rb +0 -65
- data/lib/crystalline.rb +0 -12
- data/lib/open_api_sdk/customers.rb +0 -464
- data/lib/open_api_sdk/embed_tokens.rb +0 -112
- data/lib/open_api_sdk/events.rb +0 -105
- data/lib/open_api_sdk/folders.rb +0 -373
- data/lib/open_api_sdk/models/operations/accesslevel.rb +0 -18
- data/lib/open_api_sdk/models/operations/bulkdeletelinks_request.rb +0 -24
- data/lib/open_api_sdk/models/operations/bulkdeletelinks_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/bulkdeletelinks_responsebody.rb +0 -24
- data/lib/open_api_sdk/models/operations/click.rb +0 -24
- data/lib/open_api_sdk/models/operations/country.rb +0 -266
- data/lib/open_api_sdk/models/operations/createcustomer_discount.rb +0 -42
- data/lib/open_api_sdk/models/operations/createcustomer_link.rb +0 -36
- data/lib/open_api_sdk/models/operations/createcustomer_partner.rb +0 -33
- data/lib/open_api_sdk/models/operations/createcustomer_requestbody.rb +0 -33
- data/lib/open_api_sdk/models/operations/createcustomer_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/createcustomer_responsebody.rb +0 -51
- data/lib/open_api_sdk/models/operations/createcustomer_type.rb +0 -18
- data/lib/open_api_sdk/models/operations/createfolder_requestbody.rb +0 -27
- data/lib/open_api_sdk/models/operations/createfolder_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/createpartner_requestbody.rb +0 -48
- data/lib/open_api_sdk/models/operations/createpartner_responsebody.rb +0 -75
- data/lib/open_api_sdk/models/operations/createpartnerlink_linkprops.rb +0 -99
- data/lib/open_api_sdk/models/operations/createpartnerlink_requestbody.rb +0 -42
- data/lib/open_api_sdk/models/operations/createpartnerlink_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/createreferralsembedtoken_country.rb +0 -266
- data/lib/open_api_sdk/models/operations/createreferralsembedtoken_linkprops.rb +0 -99
- data/lib/open_api_sdk/models/operations/createreferralsembedtoken_requestbody.rb +0 -33
- data/lib/open_api_sdk/models/operations/createreferralsembedtoken_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/createreferralsembedtoken_responsebody.rb +0 -27
- data/lib/open_api_sdk/models/operations/customer.rb +0 -33
- data/lib/open_api_sdk/models/operations/deletecustomer_request.rb +0 -24
- data/lib/open_api_sdk/models/operations/deletecustomer_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/deletecustomer_responsebody.rb +0 -24
- data/lib/open_api_sdk/models/operations/deletefolder_request.rb +0 -24
- data/lib/open_api_sdk/models/operations/deletefolder_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/deletefolder_responsebody.rb +0 -24
- data/lib/open_api_sdk/models/operations/deletetag_request.rb +0 -24
- data/lib/open_api_sdk/models/operations/deletetag_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/deletetag_responsebody.rb +0 -24
- data/lib/open_api_sdk/models/operations/discount.rb +0 -42
- data/lib/open_api_sdk/models/operations/getcustomer_discount.rb +0 -42
- data/lib/open_api_sdk/models/operations/getcustomer_link.rb +0 -36
- data/lib/open_api_sdk/models/operations/getcustomer_partner.rb +0 -33
- data/lib/open_api_sdk/models/operations/getcustomer_request.rb +0 -27
- data/lib/open_api_sdk/models/operations/getcustomer_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/getcustomer_responsebody.rb +0 -51
- data/lib/open_api_sdk/models/operations/getcustomer_type.rb +0 -18
- data/lib/open_api_sdk/models/operations/getcustomers_partner.rb +0 -33
- data/lib/open_api_sdk/models/operations/getcustomers_request.rb +0 -30
- data/lib/open_api_sdk/models/operations/getcustomers_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/gettags_queryparam_sortby.rb +0 -18
- data/lib/open_api_sdk/models/operations/gettags_queryparam_sortorder.rb +0 -18
- data/lib/open_api_sdk/models/operations/gettags_request.rb +0 -39
- data/lib/open_api_sdk/models/operations/link.rb +0 -36
- data/lib/open_api_sdk/models/operations/linkprops.rb +0 -99
- data/lib/open_api_sdk/models/operations/links.rb +0 -48
- data/lib/open_api_sdk/models/operations/listdomains_request.rb +0 -33
- data/lib/open_api_sdk/models/operations/listevents_request.rb +0 -135
- data/lib/open_api_sdk/models/operations/listevents_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/listfolders_request.rb +0 -33
- data/lib/open_api_sdk/models/operations/listfolders_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/mode.rb +0 -18
- data/lib/open_api_sdk/models/operations/order.rb +0 -20
- data/lib/open_api_sdk/models/operations/partner.rb +0 -45
- data/lib/open_api_sdk/models/operations/queryparam_event.rb +0 -19
- data/lib/open_api_sdk/models/operations/queryparam_groupby.rb +0 -19
- data/lib/open_api_sdk/models/operations/queryparam_interval.rb +0 -25
- data/lib/open_api_sdk/models/operations/queryparam_sortby.rb +0 -17
- data/lib/open_api_sdk/models/operations/queryparam_sortorder.rb +0 -18
- data/lib/open_api_sdk/models/operations/queryparam_trigger.rb +0 -18
- data/lib/open_api_sdk/models/operations/responsebody.rb +0 -51
- data/lib/open_api_sdk/models/operations/retrievepartneranalytics_queryparam_interval.rb +0 -25
- data/lib/open_api_sdk/models/operations/retrievepartneranalytics_request.rb +0 -45
- data/lib/open_api_sdk/models/operations/retrievepartneranalytics_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/sale.rb +0 -36
- data/lib/open_api_sdk/models/operations/sortby.rb +0 -20
- data/lib/open_api_sdk/models/operations/sortorder.rb +0 -18
- data/lib/open_api_sdk/models/operations/status.rb +0 -21
- data/lib/open_api_sdk/models/operations/tracksale_customer.rb +0 -36
- data/lib/open_api_sdk/models/operations/trigger.rb +0 -18
- data/lib/open_api_sdk/models/operations/type.rb +0 -18
- data/lib/open_api_sdk/models/operations/updatecustomer_discount.rb +0 -42
- data/lib/open_api_sdk/models/operations/updatecustomer_link.rb +0 -36
- data/lib/open_api_sdk/models/operations/updatecustomer_partner.rb +0 -33
- data/lib/open_api_sdk/models/operations/updatecustomer_request.rb +0 -30
- data/lib/open_api_sdk/models/operations/updatecustomer_requestbody.rb +0 -33
- data/lib/open_api_sdk/models/operations/updatecustomer_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/updatecustomer_responsebody.rb +0 -51
- data/lib/open_api_sdk/models/operations/updatecustomer_type.rb +0 -18
- data/lib/open_api_sdk/models/operations/updatefolder_accesslevel.rb +0 -18
- data/lib/open_api_sdk/models/operations/updatefolder_request.rb +0 -27
- data/lib/open_api_sdk/models/operations/updatefolder_requestbody.rb +0 -27
- data/lib/open_api_sdk/models/operations/updatefolder_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/updatepartnersale_requestbody.rb +0 -36
- data/lib/open_api_sdk/models/operations/updatepartnersale_response.rb +0 -60
- data/lib/open_api_sdk/models/operations/updatepartnersale_responsebody.rb +0 -45
- data/lib/open_api_sdk/models/operations/updatepartnersale_status.rb +0 -22
- data/lib/open_api_sdk/models/operations/upsertpartnerlink_linkprops.rb +0 -99
- data/lib/open_api_sdk/models/operations/upsertpartnerlink_requestbody.rb +0 -42
- data/lib/open_api_sdk/models/operations/upsertpartnerlink_response.rb +0 -60
- data/lib/open_api_sdk/models/shared/accesslevel.rb +0 -18
- data/lib/open_api_sdk/models/shared/click.rb +0 -63
- data/lib/open_api_sdk/models/shared/clickevent.rb +0 -98
- data/lib/open_api_sdk/models/shared/clickevent_geo.rb +0 -771
- data/lib/open_api_sdk/models/shared/continentcode.rb +0 -23
- data/lib/open_api_sdk/models/shared/event.rb +0 -17
- data/lib/open_api_sdk/models/shared/folderschema.rb +0 -42
- data/lib/open_api_sdk/models/shared/link.rb +0 -163
- data/lib/open_api_sdk/models/shared/registereddomain.rb +0 -30
- data/lib/open_api_sdk/models/shared/type.rb +0 -18
- data/lib/open_api_sdk/partners.rb +0 -461
- data/lib/open_api_sdk/utils/retries.rb +0 -95
data/lib/open_api_sdk/track.rb
CHANGED
@@ -1,13 +1,11 @@
|
|
1
|
-
# Code generated by Speakeasy (https://
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
2
|
|
3
3
|
# typed: true
|
4
4
|
# frozen_string_literal: true
|
5
5
|
|
6
6
|
require 'faraday'
|
7
7
|
require 'faraday/multipart'
|
8
|
-
require 'faraday/retry'
|
9
8
|
require 'sorbet-runtime'
|
10
|
-
require_relative 'utils/retries'
|
11
9
|
|
12
10
|
module OpenApiSDK
|
13
11
|
extend T::Sig
|
@@ -34,12 +32,9 @@ module OpenApiSDK
|
|
34
32
|
headers['Accept'] = 'application/json'
|
35
33
|
headers['user-agent'] = @sdk_configuration.user_agent
|
36
34
|
|
37
|
-
|
38
|
-
|
39
|
-
r = connection.post(url) do |req|
|
35
|
+
r = @sdk_configuration.client.post(url) do |req|
|
40
36
|
req.headers = headers
|
41
|
-
security
|
42
|
-
Utils.configure_request_security(req, security) if !security.nil?
|
37
|
+
Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
|
43
38
|
if form
|
44
39
|
req.body = Utils.encode_form(form)
|
45
40
|
elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
|
@@ -56,56 +51,55 @@ module OpenApiSDK
|
|
56
51
|
)
|
57
52
|
if r.status == 200
|
58
53
|
if Utils.match_content_type(content_type, 'application/json')
|
59
|
-
out =
|
54
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Operations::TrackLeadResponseBody)
|
60
55
|
res.object = out
|
61
56
|
end
|
62
57
|
elsif r.status == 400
|
63
58
|
if Utils.match_content_type(content_type, 'application/json')
|
64
|
-
out =
|
59
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
|
65
60
|
res.bad_request = out
|
66
61
|
end
|
67
62
|
elsif r.status == 401
|
68
63
|
if Utils.match_content_type(content_type, 'application/json')
|
69
|
-
out =
|
64
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
|
70
65
|
res.unauthorized = out
|
71
66
|
end
|
72
67
|
elsif r.status == 403
|
73
68
|
if Utils.match_content_type(content_type, 'application/json')
|
74
|
-
out =
|
69
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
|
75
70
|
res.forbidden = out
|
76
71
|
end
|
77
72
|
elsif r.status == 404
|
78
73
|
if Utils.match_content_type(content_type, 'application/json')
|
79
|
-
out =
|
74
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
|
80
75
|
res.not_found = out
|
81
76
|
end
|
82
77
|
elsif r.status == 409
|
83
78
|
if Utils.match_content_type(content_type, 'application/json')
|
84
|
-
out =
|
79
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
|
85
80
|
res.conflict = out
|
86
81
|
end
|
87
82
|
elsif r.status == 410
|
88
83
|
if Utils.match_content_type(content_type, 'application/json')
|
89
|
-
out =
|
84
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
|
90
85
|
res.invite_expired = out
|
91
86
|
end
|
92
87
|
elsif r.status == 422
|
93
88
|
if Utils.match_content_type(content_type, 'application/json')
|
94
|
-
out =
|
89
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
|
95
90
|
res.unprocessable_entity = out
|
96
91
|
end
|
97
92
|
elsif r.status == 429
|
98
93
|
if Utils.match_content_type(content_type, 'application/json')
|
99
|
-
out =
|
94
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
|
100
95
|
res.rate_limit_exceeded = out
|
101
96
|
end
|
102
97
|
elsif r.status == 500
|
103
98
|
if Utils.match_content_type(content_type, 'application/json')
|
104
|
-
out =
|
99
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
|
105
100
|
res.internal_server_error = out
|
106
101
|
end
|
107
102
|
end
|
108
|
-
|
109
103
|
res
|
110
104
|
end
|
111
105
|
|
@@ -123,12 +117,9 @@ module OpenApiSDK
|
|
123
117
|
headers['Accept'] = 'application/json'
|
124
118
|
headers['user-agent'] = @sdk_configuration.user_agent
|
125
119
|
|
126
|
-
|
127
|
-
|
128
|
-
r = connection.post(url) do |req|
|
120
|
+
r = @sdk_configuration.client.post(url) do |req|
|
129
121
|
req.headers = headers
|
130
|
-
security
|
131
|
-
Utils.configure_request_security(req, security) if !security.nil?
|
122
|
+
Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
|
132
123
|
if form
|
133
124
|
req.body = Utils.encode_form(form)
|
134
125
|
elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
|
@@ -145,56 +136,140 @@ module OpenApiSDK
|
|
145
136
|
)
|
146
137
|
if r.status == 200
|
147
138
|
if Utils.match_content_type(content_type, 'application/json')
|
148
|
-
out =
|
139
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Operations::TrackSaleResponseBody)
|
149
140
|
res.object = out
|
150
141
|
end
|
151
142
|
elsif r.status == 400
|
152
143
|
if Utils.match_content_type(content_type, 'application/json')
|
153
|
-
out =
|
144
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
|
154
145
|
res.bad_request = out
|
155
146
|
end
|
156
147
|
elsif r.status == 401
|
157
148
|
if Utils.match_content_type(content_type, 'application/json')
|
158
|
-
out =
|
149
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
|
159
150
|
res.unauthorized = out
|
160
151
|
end
|
161
152
|
elsif r.status == 403
|
162
153
|
if Utils.match_content_type(content_type, 'application/json')
|
163
|
-
out =
|
154
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
|
164
155
|
res.forbidden = out
|
165
156
|
end
|
166
157
|
elsif r.status == 404
|
167
158
|
if Utils.match_content_type(content_type, 'application/json')
|
168
|
-
out =
|
159
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
|
169
160
|
res.not_found = out
|
170
161
|
end
|
171
162
|
elsif r.status == 409
|
172
163
|
if Utils.match_content_type(content_type, 'application/json')
|
173
|
-
out =
|
164
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
|
174
165
|
res.conflict = out
|
175
166
|
end
|
176
167
|
elsif r.status == 410
|
177
168
|
if Utils.match_content_type(content_type, 'application/json')
|
178
|
-
out =
|
169
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
|
179
170
|
res.invite_expired = out
|
180
171
|
end
|
181
172
|
elsif r.status == 422
|
182
173
|
if Utils.match_content_type(content_type, 'application/json')
|
183
|
-
out =
|
174
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
|
184
175
|
res.unprocessable_entity = out
|
185
176
|
end
|
186
177
|
elsif r.status == 429
|
187
178
|
if Utils.match_content_type(content_type, 'application/json')
|
188
|
-
out =
|
179
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
|
189
180
|
res.rate_limit_exceeded = out
|
190
181
|
end
|
191
182
|
elsif r.status == 500
|
192
183
|
if Utils.match_content_type(content_type, 'application/json')
|
193
|
-
out =
|
184
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
|
194
185
|
res.internal_server_error = out
|
195
186
|
end
|
196
187
|
end
|
188
|
+
res
|
189
|
+
end
|
190
|
+
|
191
|
+
|
192
|
+
sig { params(request: T.nilable(::OpenApiSDK::Operations::TrackCustomerRequestBody)).returns(::OpenApiSDK::Operations::TrackCustomerResponse) }
|
193
|
+
def customer(request)
|
194
|
+
# customer - Track a customer
|
195
|
+
# Track a customer for an authenticated workspace.
|
196
|
+
url, params = @sdk_configuration.get_server_details
|
197
|
+
base_url = Utils.template_url(url, params)
|
198
|
+
url = "#{base_url}/track/customer"
|
199
|
+
headers = {}
|
200
|
+
req_content_type, data, form = Utils.serialize_request_body(request, :request, :json)
|
201
|
+
headers['content-type'] = req_content_type
|
202
|
+
headers['Accept'] = 'application/json'
|
203
|
+
headers['user-agent'] = @sdk_configuration.user_agent
|
197
204
|
|
205
|
+
r = @sdk_configuration.client.post(url) do |req|
|
206
|
+
req.headers = headers
|
207
|
+
Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
|
208
|
+
if form
|
209
|
+
req.body = Utils.encode_form(form)
|
210
|
+
elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
|
211
|
+
req.body = URI.encode_www_form(data)
|
212
|
+
else
|
213
|
+
req.body = data
|
214
|
+
end
|
215
|
+
end
|
216
|
+
|
217
|
+
content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
|
218
|
+
|
219
|
+
res = ::OpenApiSDK::Operations::TrackCustomerResponse.new(
|
220
|
+
status_code: r.status, content_type: content_type, raw_response: r
|
221
|
+
)
|
222
|
+
if r.status == 200
|
223
|
+
if Utils.match_content_type(content_type, 'application/json')
|
224
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Operations::TrackCustomerResponseBody)
|
225
|
+
res.object = out
|
226
|
+
end
|
227
|
+
elsif r.status == 400
|
228
|
+
if Utils.match_content_type(content_type, 'application/json')
|
229
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
|
230
|
+
res.bad_request = out
|
231
|
+
end
|
232
|
+
elsif r.status == 401
|
233
|
+
if Utils.match_content_type(content_type, 'application/json')
|
234
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
|
235
|
+
res.unauthorized = out
|
236
|
+
end
|
237
|
+
elsif r.status == 403
|
238
|
+
if Utils.match_content_type(content_type, 'application/json')
|
239
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
|
240
|
+
res.forbidden = out
|
241
|
+
end
|
242
|
+
elsif r.status == 404
|
243
|
+
if Utils.match_content_type(content_type, 'application/json')
|
244
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
|
245
|
+
res.not_found = out
|
246
|
+
end
|
247
|
+
elsif r.status == 409
|
248
|
+
if Utils.match_content_type(content_type, 'application/json')
|
249
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
|
250
|
+
res.conflict = out
|
251
|
+
end
|
252
|
+
elsif r.status == 410
|
253
|
+
if Utils.match_content_type(content_type, 'application/json')
|
254
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
|
255
|
+
res.invite_expired = out
|
256
|
+
end
|
257
|
+
elsif r.status == 422
|
258
|
+
if Utils.match_content_type(content_type, 'application/json')
|
259
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
|
260
|
+
res.unprocessable_entity = out
|
261
|
+
end
|
262
|
+
elsif r.status == 429
|
263
|
+
if Utils.match_content_type(content_type, 'application/json')
|
264
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
|
265
|
+
res.rate_limit_exceeded = out
|
266
|
+
end
|
267
|
+
elsif r.status == 500
|
268
|
+
if Utils.match_content_type(content_type, 'application/json')
|
269
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
|
270
|
+
res.internal_server_error = out
|
271
|
+
end
|
272
|
+
end
|
198
273
|
res
|
199
274
|
end
|
200
275
|
end
|
@@ -1,10 +1,9 @@
|
|
1
|
-
# Code generated by Speakeasy (https://
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
2
|
|
3
3
|
# typed: true
|
4
4
|
# frozen_string_literal: true
|
5
5
|
|
6
|
-
module
|
7
|
-
extend T::Sig
|
6
|
+
module OpenApiSDK
|
8
7
|
module MetadataFields
|
9
8
|
extend T::Sig
|
10
9
|
|
@@ -33,13 +32,9 @@ module Crystalline
|
|
33
32
|
fields << Field.new(field_name, type, metadata)
|
34
33
|
end
|
35
34
|
|
36
|
-
def field_augmented?
|
37
|
-
true
|
38
|
-
end
|
39
|
-
|
40
35
|
def unmarshal_single(field_type, value, decoder = nil)
|
41
|
-
if field_type.
|
42
|
-
unmarshalled = field_type.
|
36
|
+
if field_type.respond_to? :unmarshal_json
|
37
|
+
unmarshalled = field_type.unmarshal_json(value)
|
43
38
|
return unmarshalled
|
44
39
|
elsif field_type.to_s == 'Object'
|
45
40
|
# rubocop:disable Lint/SuppressedException
|
@@ -57,20 +52,14 @@ module Crystalline
|
|
57
52
|
end
|
58
53
|
end
|
59
54
|
|
60
|
-
sig { params(json_obj: T.any(String, T::Hash[Symbol, String])).returns(::
|
61
|
-
def
|
55
|
+
sig { params(json_obj: T.any(String, T::Hash[Symbol, String])).returns(Utils::FieldAugmented) }
|
56
|
+
def unmarshal_json(json_obj)
|
57
|
+
to_build = new
|
62
58
|
begin
|
63
59
|
d = JSON.parse(json_obj)
|
64
60
|
rescue TypeError, JSON::ParserError
|
65
61
|
d = json_obj
|
66
62
|
end
|
67
|
-
from_dict(d)
|
68
|
-
end
|
69
|
-
|
70
|
-
sig { params(d: T::Hash[Symbol, String]).returns(::Crystalline::FieldAugmented) }
|
71
|
-
def from_dict(d)
|
72
|
-
to_build = new
|
73
|
-
|
74
63
|
fields.each do |field|
|
75
64
|
field_type = field.type
|
76
65
|
if T.nilable? field_type
|
@@ -124,15 +113,15 @@ module Crystalline
|
|
124
113
|
end
|
125
114
|
|
126
115
|
def marshal_single(field)
|
127
|
-
if field.
|
128
|
-
field.
|
116
|
+
if field.respond_to? :marshal_json
|
117
|
+
field.marshal_json(encode: false)
|
129
118
|
else
|
130
|
-
|
119
|
+
Utils.val_to_string(field, primitives: false)
|
131
120
|
end
|
132
121
|
end
|
133
122
|
|
134
|
-
def
|
135
|
-
|
123
|
+
def marshal_json(encode: true)
|
124
|
+
d = {}
|
136
125
|
fields.sort_by(&:name).each do |field|
|
137
126
|
f = send(field.name)
|
138
127
|
next if f.nil?
|
@@ -144,20 +133,18 @@ module Crystalline
|
|
144
133
|
key = field.name
|
145
134
|
end
|
146
135
|
if f.is_a? Array
|
147
|
-
|
136
|
+
d[key] = f.map { |o| marshal_single(o) }
|
148
137
|
elsif f.is_a? Hash
|
149
|
-
|
138
|
+
d[key] = f.map { |k, v| [k, marshal_single(v)] }
|
150
139
|
else
|
151
|
-
|
140
|
+
d[key] = marshal_single(f)
|
152
141
|
end
|
153
142
|
end
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
143
|
+
if encode
|
144
|
+
JSON.dump(d)
|
145
|
+
else
|
146
|
+
d
|
147
|
+
end
|
159
148
|
end
|
160
149
|
end
|
161
|
-
|
162
|
-
|
163
150
|
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
# Code generated by Speakeasy (https://
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
2
|
|
3
3
|
# typed: true
|
4
4
|
# frozen_string_literal: true
|
@@ -6,11 +6,16 @@
|
|
6
6
|
require 'date'
|
7
7
|
require 'sorbet-runtime'
|
8
8
|
require 'base64'
|
9
|
+
require_relative './metadata_fields'
|
9
10
|
|
10
11
|
module OpenApiSDK
|
11
12
|
module Utils
|
12
13
|
extend T::Sig
|
13
14
|
|
15
|
+
class FieldAugmented
|
16
|
+
include MetadataFields
|
17
|
+
end
|
18
|
+
|
14
19
|
sig { params(val: Object, primitives: T::Boolean).returns(Object) }
|
15
20
|
def self.val_to_string(val, primitives: true)
|
16
21
|
if val.is_a? T::Enum
|
@@ -24,7 +29,7 @@ module OpenApiSDK
|
|
24
29
|
end
|
25
30
|
end
|
26
31
|
|
27
|
-
sig { params(headers_params:
|
32
|
+
sig { params(headers_params: FieldAugmented, gbls: T.nilable(T::Hash[Symbol, T::Hash[Symbol, T::Hash[Symbol, Object]]])).returns(T::Hash[Symbol, String]) }
|
28
33
|
def self.get_headers(headers_params, gbls = nil)
|
29
34
|
return {} if headers_params.nil?
|
30
35
|
|
@@ -90,7 +95,7 @@ module OpenApiSDK
|
|
90
95
|
|
91
96
|
sig do
|
92
97
|
params(field_name: String, explode: T::Boolean, obj: Object, delimiter: String,
|
93
|
-
get_field_name_lambda: T.proc.params(obj_field:
|
98
|
+
get_field_name_lambda: T.proc.params(obj_field: MetadataFields::Field).returns(String))
|
94
99
|
.returns(T::Hash[Symbol, T::Array[String]])
|
95
100
|
end
|
96
101
|
def self._populate_form(field_name, explode, obj, delimiter, &get_field_name_lambda)
|
@@ -210,7 +215,7 @@ module OpenApiSDK
|
|
210
215
|
params = {}
|
211
216
|
|
212
217
|
serialization = metadata.fetch(:serialization, '')
|
213
|
-
params[metadata.fetch(:field_name, field_name)] = obj.
|
218
|
+
params[metadata.fetch(:field_name, field_name)] = obj.marshal_json if serialization == 'json'
|
214
219
|
|
215
220
|
params
|
216
221
|
end
|
@@ -231,7 +236,7 @@ module OpenApiSDK
|
|
231
236
|
_populate_form(field_name, metadata.fetch(:explode, true), obj, delimiter, &get_query_param_field_name)
|
232
237
|
end
|
233
238
|
|
234
|
-
sig { params(clazz: Class, query_params:
|
239
|
+
sig { params(clazz: Class, query_params: FieldAugmented, gbls: T.nilable(T::Hash[Symbol, T::Hash[Symbol, T::Hash[Symbol, Object]]])).returns(T::Hash[Symbol, T::Array[String]]) }
|
235
240
|
def self.get_query_params(clazz, query_params, gbls = nil)
|
236
241
|
params = {}
|
237
242
|
param_fields = clazz.fields
|
@@ -275,7 +280,7 @@ module OpenApiSDK
|
|
275
280
|
params
|
276
281
|
end
|
277
282
|
|
278
|
-
sig { params(clazz: Class, server_url: String, path: String, path_params:
|
283
|
+
sig { params(clazz: Class, server_url: String, path: String, path_params: FieldAugmented, gbls: T.nilable(T::Hash[Symbol, T::Hash[Symbol, T::Hash[Symbol, Object]]])).returns(String) }
|
279
284
|
def self.generate_url(clazz, server_url, path, path_params, gbls = nil)
|
280
285
|
clazz.fields.each do |f|
|
281
286
|
param_metadata = f.metadata[:path_param]
|
@@ -353,7 +358,7 @@ module OpenApiSDK
|
|
353
358
|
|
354
359
|
sig { params(content_type: String, pattern: String).returns(T::Boolean) }
|
355
360
|
def self.match_content_type(content_type, pattern)
|
356
|
-
return true if content_type == pattern ||
|
361
|
+
return true if content_type == pattern || pattern == '*' || pattern == '*/*'
|
357
362
|
|
358
363
|
pieces = content_type.split(';')
|
359
364
|
pieces.each do |piece|
|
@@ -458,7 +463,7 @@ module OpenApiSDK
|
|
458
463
|
end
|
459
464
|
end
|
460
465
|
|
461
|
-
sig { params(req: Faraday::Request, scheme:
|
466
|
+
sig { params(req: Faraday::Request, scheme: FieldAugmented).void }
|
462
467
|
def self._parse_basic_auth_scheme(req, scheme)
|
463
468
|
username, password = ''
|
464
469
|
|
@@ -554,7 +559,7 @@ module OpenApiSDK
|
|
554
559
|
.returns([String, Object, T.nilable(T::Array[T::Array[Object]])])
|
555
560
|
end
|
556
561
|
def self.serialize_content_type(field_name, media_type, request)
|
557
|
-
return media_type,
|
562
|
+
return media_type, marshal_json_complex(request), nil if media_type.match('(application|text)\/.*?\+*json.*')
|
558
563
|
return serialize_multipart_form(media_type, request) if media_type.match('multipart\/.*')
|
559
564
|
return media_type, serialize_form_data(field_name, request), nil if media_type.match('application\/x-www-form-urlencoded.*')
|
560
565
|
return media_type, request, nil if request.is_a?(String) || request.is_a?(Array)
|
@@ -562,7 +567,7 @@ module OpenApiSDK
|
|
562
567
|
raise StandardError, "invalid request body type #{type(request)} for mediaType {metadata['media_type']}"
|
563
568
|
end
|
564
569
|
|
565
|
-
sig { params(field:
|
570
|
+
sig { params(field: MetadataFields::Field, data_class: FieldAugmented).returns(Object) }
|
566
571
|
def self.parse_field(field, data_class)
|
567
572
|
field_metadata = field.metadata[:metadata_string]
|
568
573
|
return nil if field_metadata.nil?
|
@@ -573,7 +578,7 @@ module OpenApiSDK
|
|
573
578
|
field_value
|
574
579
|
end
|
575
580
|
|
576
|
-
sig { params(media_type: String, request:
|
581
|
+
sig { params(media_type: String, request: FieldAugmented).returns([String, Object, T::Array[T::Array[Object]]]) }
|
577
582
|
def self.serialize_multipart_form(media_type, request)
|
578
583
|
form = []
|
579
584
|
request_fields = request.fields
|
@@ -588,7 +593,7 @@ module OpenApiSDK
|
|
588
593
|
file_fields = val.fields
|
589
594
|
|
590
595
|
file_name = ''
|
591
|
-
field_name =
|
596
|
+
field_name = ''
|
592
597
|
content = nil
|
593
598
|
|
594
599
|
file_fields.each do |file_field|
|
@@ -598,16 +603,17 @@ module OpenApiSDK
|
|
598
603
|
if file_metadata[:content] == true
|
599
604
|
content = val.send(file_field.name)
|
600
605
|
else
|
606
|
+
field_name = file_metadata.fetch(:field_name, file_field.name)
|
601
607
|
file_name = val.send(file_field.name)
|
602
608
|
end
|
603
609
|
end
|
604
|
-
raise StandardError, 'invalid multipart/form-data file' if file_name == '' || content == nil?
|
610
|
+
raise StandardError, 'invalid multipart/form-data file' if field_name == '' || file_name == '' || content == nil?
|
605
611
|
|
606
612
|
form.append([field_name, [file_name, content]])
|
607
613
|
elsif field_metadata[:json] == true
|
608
614
|
to_append = [
|
609
615
|
field_metadata.fetch(:field_name, field.name), [
|
610
|
-
nil,
|
616
|
+
nil, marshal_json_complex(val), 'application/json'
|
611
617
|
]
|
612
618
|
]
|
613
619
|
form.append(to_append)
|
@@ -652,7 +658,7 @@ module OpenApiSDK
|
|
652
658
|
end
|
653
659
|
|
654
660
|
sig do
|
655
|
-
params(field_name: Symbol, data: T.any(
|
661
|
+
params(field_name: Symbol, data: T.any(FieldAugmented, T::Hash[Symbol, String]))
|
656
662
|
.returns(T::Hash[Symbol, Object])
|
657
663
|
end
|
658
664
|
def self.serialize_form_data(field_name, data)
|
@@ -677,7 +683,7 @@ module OpenApiSDK
|
|
677
683
|
field_name = metadata.fetch(:field_name, field.name)
|
678
684
|
|
679
685
|
if metadata[:json]
|
680
|
-
form[field_name] =
|
686
|
+
form[field_name] = marshal_json_complex(val)
|
681
687
|
else
|
682
688
|
if metadata.fetch(:style, 'form') == 'form'
|
683
689
|
form = form.merge(
|
@@ -724,5 +730,43 @@ module OpenApiSDK
|
|
724
730
|
value
|
725
731
|
end
|
726
732
|
|
733
|
+
sig { params(complex: Object).returns(Object) }
|
734
|
+
def self.marshal_json_complex(complex)
|
735
|
+
if complex.is_a? Array
|
736
|
+
complex.map { |v| Utils.marshal_json_complex(v) }.to_json
|
737
|
+
elsif complex.is_a? Hash
|
738
|
+
complex.transform_values { |v| Utils.marshal_json_complex(v) }.to_json
|
739
|
+
elsif complex.respond_to? :marshal_json
|
740
|
+
complex.marshal_json
|
741
|
+
else
|
742
|
+
complex.to_json
|
743
|
+
end
|
744
|
+
end
|
745
|
+
|
746
|
+
sig { params(data: Object, type: Object).returns(Object) }
|
747
|
+
def self.unmarshal_complex(data, type)
|
748
|
+
begin
|
749
|
+
value = unmarshal_json(JSON.parse(data), type)
|
750
|
+
rescue TypeError, JSON::ParserError
|
751
|
+
value = unmarshal_json(data, type)
|
752
|
+
end
|
753
|
+
value
|
754
|
+
end
|
755
|
+
|
756
|
+
sig { params(data: Object, type: Object).returns(Object) }
|
757
|
+
def self.unmarshal_json(data, type)
|
758
|
+
if T.simplifiable? type
|
759
|
+
type = T.simplify_type type
|
760
|
+
end
|
761
|
+
if type.respond_to? :unmarshal_json
|
762
|
+
type.unmarshal_json(data)
|
763
|
+
elsif T.arr? type
|
764
|
+
data.map { |v| Utils.unmarshal_complex(v, T.arr_of(type)) }
|
765
|
+
elsif T.hash? type
|
766
|
+
data.transform_values { |v| Utils.unmarshal_complex(v, T.hash_of(type)) }
|
767
|
+
else
|
768
|
+
data
|
769
|
+
end
|
770
|
+
end
|
727
771
|
end
|
728
772
|
end
|