dub 0.2.2 → 1.0.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.

Potentially problematic release.


This version of dub might be problematic. Click here for more details.

Files changed (277) hide show
  1. data/History.txt +92 -0
  2. data/LICENSE +20 -0
  3. data/README.rdoc +115 -0
  4. data/Rakefile +59 -0
  5. data/dub.gemspec +197 -0
  6. data/lib/dub/argument.rb +286 -0
  7. data/lib/dub/entities_unescape.rb +9 -0
  8. data/lib/dub/function.rb +177 -0
  9. data/lib/dub/function_group.rb +72 -0
  10. data/lib/dub/generator.rb +15 -0
  11. data/lib/dub/group.rb +20 -0
  12. data/lib/dub/klass.rb +338 -0
  13. data/lib/dub/lua/class.cpp.erb +114 -0
  14. data/lib/dub/lua/class_gen.rb +96 -0
  15. data/lib/dub/lua/function.cpp.erb +15 -0
  16. data/lib/dub/lua/function_gen.rb +329 -0
  17. data/lib/dub/lua/group.cpp.erb +9 -0
  18. data/lib/dub/lua/lua_cpp_helper.cpp +259 -0
  19. data/lib/dub/lua/lua_cpp_helper.h +219 -0
  20. data/lib/dub/lua/lua_object.cpp +158 -0
  21. data/lib/dub/lua/lua_object.h +69 -0
  22. data/lib/dub/lua/namespace.cpp.erb +42 -0
  23. data/lib/dub/lua/namespace_gen.rb +69 -0
  24. data/lib/dub/lua.rb +24 -0
  25. data/lib/dub/member_extraction.rb +128 -0
  26. data/lib/dub/namespace.rb +295 -0
  27. data/lib/dub/opts_parser.rb +30 -0
  28. data/lib/dub/parser.rb +46 -0
  29. data/lib/dub/templates/lua_template.erb +21 -0
  30. data/lib/dub/version.rb +3 -0
  31. data/lib/dub.rb +24 -20
  32. data/test/argument_test.rb +581 -0
  33. data/test/fixtures/app/CMakeLists.txt +54 -0
  34. data/test/fixtures/app/Doxyfile +1600 -0
  35. data/test/fixtures/app/bindings/all_lua.cpp +299 -0
  36. data/test/fixtures/app/include/matrix.h +283 -0
  37. data/test/fixtures/app/make_lua_bindings.rb +13 -0
  38. data/test/fixtures/app/vendor/lua/CMakeLists.txt +25 -0
  39. data/test/fixtures/app/vendor/lua/COPYRIGHT +34 -0
  40. data/test/fixtures/app/vendor/lua/HISTORY +183 -0
  41. data/test/fixtures/app/vendor/lua/INSTALL +99 -0
  42. data/test/fixtures/app/vendor/lua/Makefile +183 -0
  43. data/test/fixtures/app/vendor/lua/README +37 -0
  44. data/test/fixtures/app/vendor/lua/lapi.c +1080 -0
  45. data/test/fixtures/app/vendor/lua/lapi.h +16 -0
  46. data/test/fixtures/app/vendor/lua/lauxlib.c +653 -0
  47. data/test/fixtures/app/vendor/lua/lauxlib.h +174 -0
  48. data/test/fixtures/app/vendor/lua/lbaselib.c +643 -0
  49. data/test/fixtures/app/vendor/lua/lcode.c +839 -0
  50. data/test/fixtures/app/vendor/lua/lcode.h +76 -0
  51. data/test/fixtures/app/vendor/lua/ldblib.c +397 -0
  52. data/test/fixtures/app/vendor/lua/ldebug.c +622 -0
  53. data/test/fixtures/app/vendor/lua/ldebug.h +33 -0
  54. data/test/fixtures/app/vendor/lua/ldo.c +516 -0
  55. data/test/fixtures/app/vendor/lua/ldo.h +57 -0
  56. data/test/fixtures/app/vendor/lua/ldump.c +164 -0
  57. data/test/fixtures/app/vendor/lua/lfunc.c +174 -0
  58. data/test/fixtures/app/vendor/lua/lfunc.h +34 -0
  59. data/test/fixtures/app/vendor/lua/lgc.c +711 -0
  60. data/test/fixtures/app/vendor/lua/lgc.h +110 -0
  61. data/test/fixtures/app/vendor/lua/liblua.a +0 -0
  62. data/test/fixtures/app/vendor/lua/linit.c +38 -0
  63. data/test/fixtures/app/vendor/lua/liolib.c +532 -0
  64. data/test/fixtures/app/vendor/lua/llex.c +461 -0
  65. data/test/fixtures/app/vendor/lua/llex.h +81 -0
  66. data/test/fixtures/app/vendor/lua/llimits.h +128 -0
  67. data/test/fixtures/app/vendor/lua/lmathlib.c +263 -0
  68. data/test/fixtures/app/vendor/lua/lmem.c +86 -0
  69. data/test/fixtures/app/vendor/lua/lmem.h +49 -0
  70. data/test/fixtures/app/vendor/lua/loadlib.c +664 -0
  71. data/test/fixtures/app/vendor/lua/lobject.c +214 -0
  72. data/test/fixtures/app/vendor/lua/lobject.h +381 -0
  73. data/test/fixtures/app/vendor/lua/lopcodes.c +102 -0
  74. data/test/fixtures/app/vendor/lua/lopcodes.h +268 -0
  75. data/test/fixtures/app/vendor/lua/loslib.c +244 -0
  76. data/test/fixtures/app/vendor/lua/lparser.c +1337 -0
  77. data/test/fixtures/app/vendor/lua/lparser.h +82 -0
  78. data/test/fixtures/app/vendor/lua/lstate.c +214 -0
  79. data/test/fixtures/app/vendor/lua/lstate.h +168 -0
  80. data/test/fixtures/app/vendor/lua/lstring.c +111 -0
  81. data/test/fixtures/app/vendor/lua/lstring.h +31 -0
  82. data/test/fixtures/app/vendor/lua/lstrlib.c +868 -0
  83. data/test/fixtures/app/vendor/lua/ltable.c +588 -0
  84. data/test/fixtures/app/vendor/lua/ltable.h +40 -0
  85. data/test/fixtures/app/vendor/lua/ltablib.c +278 -0
  86. data/test/fixtures/app/vendor/lua/ltm.c +75 -0
  87. data/test/fixtures/app/vendor/lua/ltm.h +54 -0
  88. data/test/fixtures/app/vendor/lua/lua.c +695 -0
  89. data/test/fixtures/app/vendor/lua/lua.h +385 -0
  90. data/test/fixtures/app/vendor/lua/lua_dub_helper.h +77 -0
  91. data/test/fixtures/app/vendor/lua/luac +0 -0
  92. data/test/fixtures/app/vendor/lua/luac.c +200 -0
  93. data/test/fixtures/app/vendor/lua/luaconf.h +762 -0
  94. data/test/fixtures/app/vendor/lua/lualib.h +53 -0
  95. data/test/fixtures/app/vendor/lua/lundump.c +223 -0
  96. data/test/fixtures/app/vendor/lua/lundump.h +36 -0
  97. data/test/fixtures/app/vendor/lua/lvm.c +765 -0
  98. data/test/fixtures/app/vendor/lua/lvm.h +36 -0
  99. data/test/fixtures/app/vendor/lua/lzio.c +82 -0
  100. data/test/fixtures/app/vendor/lua/lzio.h +67 -0
  101. data/test/fixtures/app/vendor/lua/matrix.h +102 -0
  102. data/test/fixtures/app/vendor/lua/print.c +227 -0
  103. data/test/fixtures/app/vendor/lua/test/README +26 -0
  104. data/test/fixtures/app/vendor/lua/test/bisect.lua +27 -0
  105. data/test/fixtures/app/vendor/lua/test/cf.lua +16 -0
  106. data/test/fixtures/app/vendor/lua/test/echo.lua +5 -0
  107. data/test/fixtures/app/vendor/lua/test/env.lua +7 -0
  108. data/test/fixtures/app/vendor/lua/test/factorial.lua +32 -0
  109. data/test/fixtures/app/vendor/lua/test/fib.lua +40 -0
  110. data/test/fixtures/app/vendor/lua/test/fibfor.lua +13 -0
  111. data/test/fixtures/app/vendor/lua/test/globals.lua +13 -0
  112. data/test/fixtures/app/vendor/lua/test/hello.lua +3 -0
  113. data/test/fixtures/app/vendor/lua/test/life.lua +111 -0
  114. data/test/fixtures/app/vendor/lua/test/luac.lua +7 -0
  115. data/test/fixtures/app/vendor/lua/test/printf.lua +7 -0
  116. data/test/fixtures/app/vendor/lua/test/readonly.lua +12 -0
  117. data/test/fixtures/app/vendor/lua/test/sieve.lua +29 -0
  118. data/test/fixtures/app/vendor/lua/test/sort.lua +66 -0
  119. data/test/fixtures/app/vendor/lua/test/table.lua +12 -0
  120. data/test/fixtures/app/vendor/lua/test/trace-calls.lua +32 -0
  121. data/test/fixtures/app/vendor/lua/test/trace-globals.lua +38 -0
  122. data/test/fixtures/app/vendor/lua/test/xd.lua +14 -0
  123. data/test/fixtures/app/xml/classdub_1_1_base.xml +85 -0
  124. data/test/fixtures/app/xml/classdub_1_1_custom_destructor.xml +67 -0
  125. data/test/fixtures/app/xml/classdub_1_1_deletable_out_of_lua.xml +43 -0
  126. data/test/fixtures/app/xml/classdub_1_1_matrix.xml +482 -0
  127. data/test/fixtures/app/xml/classdub_1_1_no_destructor.xml +49 -0
  128. data/test/fixtures/app/xml/classdub_1_1_priv_sub_base.xml +89 -0
  129. data/test/fixtures/app/xml/classdub_1_1_private_constr.xml +68 -0
  130. data/test/fixtures/app/xml/classdub_1_1_static_constr.xml +69 -0
  131. data/test/fixtures/app/xml/classdub_1_1_sub_base.xml +89 -0
  132. data/test/fixtures/app/xml/classdub_1_1_t_mat.xml +252 -0
  133. data/test/fixtures/app/xml/combine.xslt +15 -0
  134. data/test/fixtures/app/xml/compound.xsd +814 -0
  135. data/test/fixtures/app/xml/dir_53661a2bdeb1d55e60581a7e15deb763.xml +12 -0
  136. data/test/fixtures/app/xml/index.xml +91 -0
  137. data/test/fixtures/app/xml/index.xsd +66 -0
  138. data/test/fixtures/app/xml/matrix_8h.xml +310 -0
  139. data/test/fixtures/app/xml/namespacedub.xml +48 -0
  140. data/test/fixtures/classcv_1_1_mat.xml +1996 -0
  141. data/test/fixtures/classcv_1_1_point__.xml +341 -0
  142. data/test/fixtures/classcv_1_1_scalar__.xml +269 -0
  143. data/test/fixtures/classcv_1_1_size__.xml +270 -0
  144. data/test/fixtures/dummy_class.cpp.erb +1 -0
  145. data/test/fixtures/dummy_function.cpp.erb +1 -0
  146. data/test/fixtures/group___magic_type.xml +406 -0
  147. data/test/fixtures/namespacecv.xml +12659 -0
  148. data/test/function_group_test.rb +43 -0
  149. data/test/function_test.rb +405 -0
  150. data/test/group_test.rb +241 -0
  151. data/test/helper.rb +34 -0
  152. data/test/klass_test.rb +551 -0
  153. data/test/lua_function_gen_test.rb +242 -0
  154. data/test/namespace_test.rb +220 -0
  155. data/test/parser_test.rb +36 -0
  156. metadata +229 -272
  157. checksums.yaml +0 -7
  158. data/lib/open_api_sdk/analytics.rb +0 -99
  159. data/lib/open_api_sdk/domains.rb +0 -353
  160. data/lib/open_api_sdk/dub.rb +0 -88
  161. data/lib/open_api_sdk/links.rb +0 -766
  162. data/lib/open_api_sdk/metatags.rb +0 -54
  163. data/lib/open_api_sdk/models/operations/bulkcreatelinks_response.rb +0 -60
  164. data/lib/open_api_sdk/models/operations/bulkupdatelinks_requestbody.rb +0 -27
  165. data/lib/open_api_sdk/models/operations/bulkupdatelinks_response.rb +0 -60
  166. data/lib/open_api_sdk/models/operations/color.rb +0 -24
  167. data/lib/open_api_sdk/models/operations/createdomain_requestbody.rb +0 -33
  168. data/lib/open_api_sdk/models/operations/createdomain_response.rb +0 -60
  169. data/lib/open_api_sdk/models/operations/createlink_requestbody.rb +0 -95
  170. data/lib/open_api_sdk/models/operations/createlink_response.rb +0 -60
  171. data/lib/open_api_sdk/models/operations/createtag_requestbody.rb +0 -32
  172. data/lib/open_api_sdk/models/operations/createtag_response.rb +0 -60
  173. data/lib/open_api_sdk/models/operations/data.rb +0 -83
  174. data/lib/open_api_sdk/models/operations/deletedomain_request.rb +0 -24
  175. data/lib/open_api_sdk/models/operations/deletedomain_response.rb +0 -60
  176. data/lib/open_api_sdk/models/operations/deletedomain_responsebody.rb +0 -24
  177. data/lib/open_api_sdk/models/operations/deletelink_request.rb +0 -24
  178. data/lib/open_api_sdk/models/operations/deletelink_response.rb +0 -60
  179. data/lib/open_api_sdk/models/operations/deletelink_responsebody.rb +0 -24
  180. data/lib/open_api_sdk/models/operations/event.rb +0 -21
  181. data/lib/open_api_sdk/models/operations/getlinkinfo_request.rb +0 -33
  182. data/lib/open_api_sdk/models/operations/getlinkinfo_response.rb +0 -60
  183. data/lib/open_api_sdk/models/operations/getlinks_request.rb +0 -51
  184. data/lib/open_api_sdk/models/operations/getlinks_response.rb +0 -60
  185. data/lib/open_api_sdk/models/operations/getlinkscount_request.rb +0 -48
  186. data/lib/open_api_sdk/models/operations/getlinkscount_response.rb +0 -60
  187. data/lib/open_api_sdk/models/operations/getmetatags_request.rb +0 -24
  188. data/lib/open_api_sdk/models/operations/getmetatags_response.rb +0 -33
  189. data/lib/open_api_sdk/models/operations/getmetatags_responsebody.rb +0 -30
  190. data/lib/open_api_sdk/models/operations/getqrcode_request.rb +0 -39
  191. data/lib/open_api_sdk/models/operations/getqrcode_response.rb +0 -60
  192. data/lib/open_api_sdk/models/operations/gettags_response.rb +0 -60
  193. data/lib/open_api_sdk/models/operations/getworkspace_request.rb +0 -24
  194. data/lib/open_api_sdk/models/operations/getworkspace_response.rb +0 -60
  195. data/lib/open_api_sdk/models/operations/groupby.rb +0 -28
  196. data/lib/open_api_sdk/models/operations/interval.rb +0 -25
  197. data/lib/open_api_sdk/models/operations/level.rb +0 -21
  198. data/lib/open_api_sdk/models/operations/listdomains_response.rb +0 -60
  199. data/lib/open_api_sdk/models/operations/paymentprocessor.rb +0 -20
  200. data/lib/open_api_sdk/models/operations/requestbody.rb +0 -95
  201. data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rb +0 -81
  202. data/lib/open_api_sdk/models/operations/retrieveanalytics_response.rb +0 -60
  203. data/lib/open_api_sdk/models/operations/sort.rb +0 -20
  204. data/lib/open_api_sdk/models/operations/trackcustomer_requestbody.rb +0 -33
  205. data/lib/open_api_sdk/models/operations/trackcustomer_response.rb +0 -60
  206. data/lib/open_api_sdk/models/operations/trackcustomer_responsebody.rb +0 -33
  207. data/lib/open_api_sdk/models/operations/tracklead_requestbody.rb +0 -42
  208. data/lib/open_api_sdk/models/operations/tracklead_response.rb +0 -60
  209. data/lib/open_api_sdk/models/operations/tracklead_responsebody.rb +0 -42
  210. data/lib/open_api_sdk/models/operations/tracksale_requestbody.rb +0 -42
  211. data/lib/open_api_sdk/models/operations/tracksale_response.rb +0 -60
  212. data/lib/open_api_sdk/models/operations/tracksale_responsebody.rb +0 -42
  213. data/lib/open_api_sdk/models/operations/updatedomain_request.rb +0 -27
  214. data/lib/open_api_sdk/models/operations/updatedomain_requestbody.rb +0 -33
  215. data/lib/open_api_sdk/models/operations/updatedomain_response.rb +0 -60
  216. data/lib/open_api_sdk/models/operations/updatelink_request.rb +0 -27
  217. data/lib/open_api_sdk/models/operations/updatelink_requestbody.rb +0 -95
  218. data/lib/open_api_sdk/models/operations/updatelink_response.rb +0 -60
  219. data/lib/open_api_sdk/models/operations/updatetag_color.rb +0 -24
  220. data/lib/open_api_sdk/models/operations/updatetag_request.rb +0 -27
  221. data/lib/open_api_sdk/models/operations/updatetag_requestbody.rb +0 -32
  222. data/lib/open_api_sdk/models/operations/updatetag_response.rb +0 -60
  223. data/lib/open_api_sdk/models/operations/updateworkspace_request.rb +0 -27
  224. data/lib/open_api_sdk/models/operations/updateworkspace_requestbody.rb +0 -27
  225. data/lib/open_api_sdk/models/operations/updateworkspace_response.rb +0 -60
  226. data/lib/open_api_sdk/models/operations/upsertlink_requestbody.rb +0 -95
  227. data/lib/open_api_sdk/models/operations/upsertlink_response.rb +0 -60
  228. data/lib/open_api_sdk/models/operations.rb +0 -74
  229. data/lib/open_api_sdk/models/shared/badrequest.rb +0 -24
  230. data/lib/open_api_sdk/models/shared/code.rb +0 -18
  231. data/lib/open_api_sdk/models/shared/color.rb +0 -24
  232. data/lib/open_api_sdk/models/shared/conflict.rb +0 -24
  233. data/lib/open_api_sdk/models/shared/conflict_code.rb +0 -18
  234. data/lib/open_api_sdk/models/shared/conflict_error.rb +0 -30
  235. data/lib/open_api_sdk/models/shared/countrycode.rb +0 -267
  236. data/lib/open_api_sdk/models/shared/domains.rb +0 -27
  237. data/lib/open_api_sdk/models/shared/domainschema.rb +0 -48
  238. data/lib/open_api_sdk/models/shared/error.rb +0 -30
  239. data/lib/open_api_sdk/models/shared/forbidden.rb +0 -24
  240. data/lib/open_api_sdk/models/shared/forbidden_code.rb +0 -18
  241. data/lib/open_api_sdk/models/shared/forbidden_error.rb +0 -30
  242. data/lib/open_api_sdk/models/shared/geo.rb +0 -771
  243. data/lib/open_api_sdk/models/shared/internalservererror.rb +0 -24
  244. data/lib/open_api_sdk/models/shared/internalservererror_code.rb +0 -18
  245. data/lib/open_api_sdk/models/shared/internalservererror_error.rb +0 -30
  246. data/lib/open_api_sdk/models/shared/inviteexpired.rb +0 -24
  247. data/lib/open_api_sdk/models/shared/inviteexpired_code.rb +0 -18
  248. data/lib/open_api_sdk/models/shared/inviteexpired_error.rb +0 -30
  249. data/lib/open_api_sdk/models/shared/linkgeotargeting.rb +0 -771
  250. data/lib/open_api_sdk/models/shared/linkschema.rb +0 -142
  251. data/lib/open_api_sdk/models/shared/notfound.rb +0 -24
  252. data/lib/open_api_sdk/models/shared/notfound_code.rb +0 -18
  253. data/lib/open_api_sdk/models/shared/notfound_error.rb +0 -30
  254. data/lib/open_api_sdk/models/shared/plan.rb +0 -24
  255. data/lib/open_api_sdk/models/shared/ratelimitexceeded.rb +0 -24
  256. data/lib/open_api_sdk/models/shared/ratelimitexceeded_code.rb +0 -18
  257. data/lib/open_api_sdk/models/shared/ratelimitexceeded_error.rb +0 -30
  258. data/lib/open_api_sdk/models/shared/role.rb +0 -19
  259. data/lib/open_api_sdk/models/shared/security.rb +0 -24
  260. data/lib/open_api_sdk/models/shared/tagschema.rb +0 -30
  261. data/lib/open_api_sdk/models/shared/unauthorized.rb +0 -24
  262. data/lib/open_api_sdk/models/shared/unauthorized_code.rb +0 -18
  263. data/lib/open_api_sdk/models/shared/unauthorized_error.rb +0 -30
  264. data/lib/open_api_sdk/models/shared/unprocessableentity.rb +0 -24
  265. data/lib/open_api_sdk/models/shared/unprocessableentity_code.rb +0 -18
  266. data/lib/open_api_sdk/models/shared/unprocessableentity_error.rb +0 -30
  267. data/lib/open_api_sdk/models/shared/users.rb +0 -24
  268. data/lib/open_api_sdk/models/shared/workspaceschema.rb +0 -81
  269. data/lib/open_api_sdk/models/shared.rb +0 -49
  270. data/lib/open_api_sdk/qr_codes.rb +0 -97
  271. data/lib/open_api_sdk/sdkconfiguration.rb +0 -52
  272. data/lib/open_api_sdk/tags.rb +0 -272
  273. data/lib/open_api_sdk/track.rb +0 -276
  274. data/lib/open_api_sdk/utils/metadata_fields.rb +0 -150
  275. data/lib/open_api_sdk/utils/t.rb +0 -59
  276. data/lib/open_api_sdk/utils/utils.rb +0 -772
  277. data/lib/open_api_sdk/workspaces.rb +0 -192
@@ -1,766 +0,0 @@
1
- # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
-
3
- # typed: true
4
- # frozen_string_literal: true
5
-
6
- require 'faraday'
7
- require 'faraday/multipart'
8
- require 'sorbet-runtime'
9
-
10
- module OpenApiSDK
11
- extend T::Sig
12
- class Links
13
- extend T::Sig
14
-
15
-
16
- sig { params(sdk_config: SDKConfiguration).void }
17
- def initialize(sdk_config)
18
- @sdk_configuration = sdk_config
19
- end
20
-
21
-
22
- sig { params(request: T.nilable(::OpenApiSDK::Operations::GetLinksRequest)).returns(::OpenApiSDK::Operations::GetLinksResponse) }
23
- def list(request)
24
- # list - Retrieve a list of links
25
- # Retrieve a paginated list of links for the authenticated workspace.
26
- url, params = @sdk_configuration.get_server_details
27
- base_url = Utils.template_url(url, params)
28
- url = "#{base_url}/links"
29
- headers = {}
30
- query_params = Utils.get_query_params(::OpenApiSDK::Operations::GetLinksRequest, request)
31
- headers['Accept'] = 'application/json'
32
- headers['user-agent'] = @sdk_configuration.user_agent
33
-
34
- r = @sdk_configuration.client.get(url) do |req|
35
- req.headers = headers
36
- req.params = query_params
37
- Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
38
- end
39
-
40
- content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
41
-
42
- res = ::OpenApiSDK::Operations::GetLinksResponse.new(
43
- status_code: r.status, content_type: content_type, raw_response: r
44
- )
45
- if r.status == 200
46
- if Utils.match_content_type(content_type, 'application/json')
47
- out = Utils.unmarshal_complex(r.env.response_body, T::Array[::OpenApiSDK::Shared::LinkSchema])
48
- res.link_schemas = out
49
- end
50
- elsif r.status == 400
51
- if Utils.match_content_type(content_type, 'application/json')
52
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
53
- res.bad_request = out
54
- end
55
- elsif r.status == 401
56
- if Utils.match_content_type(content_type, 'application/json')
57
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
58
- res.unauthorized = out
59
- end
60
- elsif r.status == 403
61
- if Utils.match_content_type(content_type, 'application/json')
62
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
63
- res.forbidden = out
64
- end
65
- elsif r.status == 404
66
- if Utils.match_content_type(content_type, 'application/json')
67
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
68
- res.not_found = out
69
- end
70
- elsif r.status == 409
71
- if Utils.match_content_type(content_type, 'application/json')
72
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
73
- res.conflict = out
74
- end
75
- elsif r.status == 410
76
- if Utils.match_content_type(content_type, 'application/json')
77
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
78
- res.invite_expired = out
79
- end
80
- elsif r.status == 422
81
- if Utils.match_content_type(content_type, 'application/json')
82
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
83
- res.unprocessable_entity = out
84
- end
85
- elsif r.status == 429
86
- if Utils.match_content_type(content_type, 'application/json')
87
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
88
- res.rate_limit_exceeded = out
89
- end
90
- elsif r.status == 500
91
- if Utils.match_content_type(content_type, 'application/json')
92
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
93
- res.internal_server_error = out
94
- end
95
- end
96
- res
97
- end
98
-
99
-
100
- sig { params(request: T.nilable(::OpenApiSDK::Operations::CreateLinkRequestBody)).returns(::OpenApiSDK::Operations::CreateLinkResponse) }
101
- def create(request)
102
- # create - Create a new link
103
- # Create a new link for the authenticated workspace.
104
- url, params = @sdk_configuration.get_server_details
105
- base_url = Utils.template_url(url, params)
106
- url = "#{base_url}/links"
107
- headers = {}
108
- req_content_type, data, form = Utils.serialize_request_body(request, :request, :json)
109
- headers['content-type'] = req_content_type
110
- headers['Accept'] = 'application/json'
111
- headers['user-agent'] = @sdk_configuration.user_agent
112
-
113
- r = @sdk_configuration.client.post(url) do |req|
114
- req.headers = headers
115
- Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
116
- if form
117
- req.body = Utils.encode_form(form)
118
- elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
119
- req.body = URI.encode_www_form(data)
120
- else
121
- req.body = data
122
- end
123
- end
124
-
125
- content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
126
-
127
- res = ::OpenApiSDK::Operations::CreateLinkResponse.new(
128
- status_code: r.status, content_type: content_type, raw_response: r
129
- )
130
- if r.status == 200
131
- if Utils.match_content_type(content_type, 'application/json')
132
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::LinkSchema)
133
- res.link_schema = out
134
- end
135
- elsif r.status == 400
136
- if Utils.match_content_type(content_type, 'application/json')
137
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
138
- res.bad_request = out
139
- end
140
- elsif r.status == 401
141
- if Utils.match_content_type(content_type, 'application/json')
142
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
143
- res.unauthorized = out
144
- end
145
- elsif r.status == 403
146
- if Utils.match_content_type(content_type, 'application/json')
147
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
148
- res.forbidden = out
149
- end
150
- elsif r.status == 404
151
- if Utils.match_content_type(content_type, 'application/json')
152
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
153
- res.not_found = out
154
- end
155
- elsif r.status == 409
156
- if Utils.match_content_type(content_type, 'application/json')
157
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
158
- res.conflict = out
159
- end
160
- elsif r.status == 410
161
- if Utils.match_content_type(content_type, 'application/json')
162
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
163
- res.invite_expired = out
164
- end
165
- elsif r.status == 422
166
- if Utils.match_content_type(content_type, 'application/json')
167
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
168
- res.unprocessable_entity = out
169
- end
170
- elsif r.status == 429
171
- if Utils.match_content_type(content_type, 'application/json')
172
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
173
- res.rate_limit_exceeded = out
174
- end
175
- elsif r.status == 500
176
- if Utils.match_content_type(content_type, 'application/json')
177
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
178
- res.internal_server_error = out
179
- end
180
- end
181
- res
182
- end
183
-
184
-
185
- sig { params(request: T.nilable(::OpenApiSDK::Operations::GetLinksCountRequest)).returns(::OpenApiSDK::Operations::GetLinksCountResponse) }
186
- def count(request)
187
- # count - Retrieve links count
188
- # Retrieve the number of links for the authenticated workspace.
189
- url, params = @sdk_configuration.get_server_details
190
- base_url = Utils.template_url(url, params)
191
- url = "#{base_url}/links/count"
192
- headers = {}
193
- query_params = Utils.get_query_params(::OpenApiSDK::Operations::GetLinksCountRequest, request)
194
- headers['Accept'] = 'application/json'
195
- headers['user-agent'] = @sdk_configuration.user_agent
196
-
197
- r = @sdk_configuration.client.get(url) do |req|
198
- req.headers = headers
199
- req.params = query_params
200
- Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
201
- end
202
-
203
- content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
204
-
205
- res = ::OpenApiSDK::Operations::GetLinksCountResponse.new(
206
- status_code: r.status, content_type: content_type, raw_response: r
207
- )
208
- if r.status == 200
209
- if Utils.match_content_type(content_type, 'application/json')
210
- out = Utils.unmarshal_complex(r.env.response_body, ::Float)
211
- res.number = out
212
- end
213
- elsif r.status == 400
214
- if Utils.match_content_type(content_type, 'application/json')
215
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
216
- res.bad_request = out
217
- end
218
- elsif r.status == 401
219
- if Utils.match_content_type(content_type, 'application/json')
220
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
221
- res.unauthorized = out
222
- end
223
- elsif r.status == 403
224
- if Utils.match_content_type(content_type, 'application/json')
225
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
226
- res.forbidden = out
227
- end
228
- elsif r.status == 404
229
- if Utils.match_content_type(content_type, 'application/json')
230
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
231
- res.not_found = out
232
- end
233
- elsif r.status == 409
234
- if Utils.match_content_type(content_type, 'application/json')
235
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
236
- res.conflict = out
237
- end
238
- elsif r.status == 410
239
- if Utils.match_content_type(content_type, 'application/json')
240
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
241
- res.invite_expired = out
242
- end
243
- elsif r.status == 422
244
- if Utils.match_content_type(content_type, 'application/json')
245
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
246
- res.unprocessable_entity = out
247
- end
248
- elsif r.status == 429
249
- if Utils.match_content_type(content_type, 'application/json')
250
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
251
- res.rate_limit_exceeded = out
252
- end
253
- elsif r.status == 500
254
- if Utils.match_content_type(content_type, 'application/json')
255
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
256
- res.internal_server_error = out
257
- end
258
- end
259
- res
260
- end
261
-
262
-
263
- sig { params(request: T.nilable(::OpenApiSDK::Operations::GetLinkInfoRequest)).returns(::OpenApiSDK::Operations::GetLinkInfoResponse) }
264
- def get(request)
265
- # get - Retrieve a link
266
- # Retrieve the info for a link.
267
- url, params = @sdk_configuration.get_server_details
268
- base_url = Utils.template_url(url, params)
269
- url = "#{base_url}/links/info"
270
- headers = {}
271
- query_params = Utils.get_query_params(::OpenApiSDK::Operations::GetLinkInfoRequest, request)
272
- headers['Accept'] = 'application/json'
273
- headers['user-agent'] = @sdk_configuration.user_agent
274
-
275
- r = @sdk_configuration.client.get(url) do |req|
276
- req.headers = headers
277
- req.params = query_params
278
- Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
279
- end
280
-
281
- content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
282
-
283
- res = ::OpenApiSDK::Operations::GetLinkInfoResponse.new(
284
- status_code: r.status, content_type: content_type, raw_response: r
285
- )
286
- if r.status == 200
287
- if Utils.match_content_type(content_type, 'application/json')
288
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::LinkSchema)
289
- res.link_schema = out
290
- end
291
- elsif r.status == 400
292
- if Utils.match_content_type(content_type, 'application/json')
293
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
294
- res.bad_request = out
295
- end
296
- elsif r.status == 401
297
- if Utils.match_content_type(content_type, 'application/json')
298
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
299
- res.unauthorized = out
300
- end
301
- elsif r.status == 403
302
- if Utils.match_content_type(content_type, 'application/json')
303
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
304
- res.forbidden = out
305
- end
306
- elsif r.status == 404
307
- if Utils.match_content_type(content_type, 'application/json')
308
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
309
- res.not_found = out
310
- end
311
- elsif r.status == 409
312
- if Utils.match_content_type(content_type, 'application/json')
313
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
314
- res.conflict = out
315
- end
316
- elsif r.status == 410
317
- if Utils.match_content_type(content_type, 'application/json')
318
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
319
- res.invite_expired = out
320
- end
321
- elsif r.status == 422
322
- if Utils.match_content_type(content_type, 'application/json')
323
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
324
- res.unprocessable_entity = out
325
- end
326
- elsif r.status == 429
327
- if Utils.match_content_type(content_type, 'application/json')
328
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
329
- res.rate_limit_exceeded = out
330
- end
331
- elsif r.status == 500
332
- if Utils.match_content_type(content_type, 'application/json')
333
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
334
- res.internal_server_error = out
335
- end
336
- end
337
- res
338
- end
339
-
340
-
341
- sig { params(request: T.nilable(::OpenApiSDK::Operations::DeleteLinkRequest)).returns(::OpenApiSDK::Operations::DeleteLinkResponse) }
342
- def delete(request)
343
- # delete - Delete a link
344
- # Delete a link for the authenticated workspace.
345
- url, params = @sdk_configuration.get_server_details
346
- base_url = Utils.template_url(url, params)
347
- url = Utils.generate_url(
348
- ::OpenApiSDK::Operations::DeleteLinkRequest,
349
- base_url,
350
- '/links/{linkId}',
351
- request
352
- )
353
- headers = {}
354
- headers['Accept'] = 'application/json'
355
- headers['user-agent'] = @sdk_configuration.user_agent
356
-
357
- r = @sdk_configuration.client.delete(url) do |req|
358
- req.headers = headers
359
- Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
360
- end
361
-
362
- content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
363
-
364
- res = ::OpenApiSDK::Operations::DeleteLinkResponse.new(
365
- status_code: r.status, content_type: content_type, raw_response: r
366
- )
367
- if r.status == 200
368
- if Utils.match_content_type(content_type, 'application/json')
369
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Operations::DeleteLinkResponseBody)
370
- res.object = out
371
- end
372
- elsif r.status == 400
373
- if Utils.match_content_type(content_type, 'application/json')
374
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
375
- res.bad_request = out
376
- end
377
- elsif r.status == 401
378
- if Utils.match_content_type(content_type, 'application/json')
379
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
380
- res.unauthorized = out
381
- end
382
- elsif r.status == 403
383
- if Utils.match_content_type(content_type, 'application/json')
384
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
385
- res.forbidden = out
386
- end
387
- elsif r.status == 404
388
- if Utils.match_content_type(content_type, 'application/json')
389
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
390
- res.not_found = out
391
- end
392
- elsif r.status == 409
393
- if Utils.match_content_type(content_type, 'application/json')
394
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
395
- res.conflict = out
396
- end
397
- elsif r.status == 410
398
- if Utils.match_content_type(content_type, 'application/json')
399
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
400
- res.invite_expired = out
401
- end
402
- elsif r.status == 422
403
- if Utils.match_content_type(content_type, 'application/json')
404
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
405
- res.unprocessable_entity = out
406
- end
407
- elsif r.status == 429
408
- if Utils.match_content_type(content_type, 'application/json')
409
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
410
- res.rate_limit_exceeded = out
411
- end
412
- elsif r.status == 500
413
- if Utils.match_content_type(content_type, 'application/json')
414
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
415
- res.internal_server_error = out
416
- end
417
- end
418
- res
419
- end
420
-
421
-
422
- sig { params(request: T.nilable(::OpenApiSDK::Operations::UpdateLinkRequest)).returns(::OpenApiSDK::Operations::UpdateLinkResponse) }
423
- def update(request)
424
- # update - Update a link
425
- # Update a link for the authenticated workspace. If there's no change, returns it as it is.
426
- url, params = @sdk_configuration.get_server_details
427
- base_url = Utils.template_url(url, params)
428
- url = Utils.generate_url(
429
- ::OpenApiSDK::Operations::UpdateLinkRequest,
430
- base_url,
431
- '/links/{linkId}',
432
- request
433
- )
434
- headers = {}
435
- req_content_type, data, form = Utils.serialize_request_body(request, :request_body, :json)
436
- headers['content-type'] = req_content_type
437
- headers['Accept'] = 'application/json'
438
- headers['user-agent'] = @sdk_configuration.user_agent
439
-
440
- r = @sdk_configuration.client.patch(url) do |req|
441
- req.headers = headers
442
- Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
443
- if form
444
- req.body = Utils.encode_form(form)
445
- elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
446
- req.body = URI.encode_www_form(data)
447
- else
448
- req.body = data
449
- end
450
- end
451
-
452
- content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
453
-
454
- res = ::OpenApiSDK::Operations::UpdateLinkResponse.new(
455
- status_code: r.status, content_type: content_type, raw_response: r
456
- )
457
- if r.status == 200
458
- if Utils.match_content_type(content_type, 'application/json')
459
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::LinkSchema)
460
- res.link_schema = out
461
- end
462
- elsif r.status == 400
463
- if Utils.match_content_type(content_type, 'application/json')
464
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
465
- res.bad_request = out
466
- end
467
- elsif r.status == 401
468
- if Utils.match_content_type(content_type, 'application/json')
469
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
470
- res.unauthorized = out
471
- end
472
- elsif r.status == 403
473
- if Utils.match_content_type(content_type, 'application/json')
474
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
475
- res.forbidden = out
476
- end
477
- elsif r.status == 404
478
- if Utils.match_content_type(content_type, 'application/json')
479
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
480
- res.not_found = out
481
- end
482
- elsif r.status == 409
483
- if Utils.match_content_type(content_type, 'application/json')
484
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
485
- res.conflict = out
486
- end
487
- elsif r.status == 410
488
- if Utils.match_content_type(content_type, 'application/json')
489
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
490
- res.invite_expired = out
491
- end
492
- elsif r.status == 422
493
- if Utils.match_content_type(content_type, 'application/json')
494
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
495
- res.unprocessable_entity = out
496
- end
497
- elsif r.status == 429
498
- if Utils.match_content_type(content_type, 'application/json')
499
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
500
- res.rate_limit_exceeded = out
501
- end
502
- elsif r.status == 500
503
- if Utils.match_content_type(content_type, 'application/json')
504
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
505
- res.internal_server_error = out
506
- end
507
- end
508
- res
509
- end
510
-
511
-
512
- sig { params(request: T.nilable(T::Array[::OpenApiSDK::Operations::RequestBody])).returns(::OpenApiSDK::Operations::BulkCreateLinksResponse) }
513
- def create_many(request)
514
- # create_many - Bulk create links
515
- # Bulk create up to 100 links for the authenticated workspace.
516
- url, params = @sdk_configuration.get_server_details
517
- base_url = Utils.template_url(url, params)
518
- url = "#{base_url}/links/bulk"
519
- headers = {}
520
- req_content_type, data, form = Utils.serialize_request_body(request, :request, :json)
521
- headers['content-type'] = req_content_type
522
- headers['Accept'] = 'application/json'
523
- headers['user-agent'] = @sdk_configuration.user_agent
524
-
525
- r = @sdk_configuration.client.post(url) do |req|
526
- req.headers = headers
527
- Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
528
- if form
529
- req.body = Utils.encode_form(form)
530
- elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
531
- req.body = URI.encode_www_form(data)
532
- else
533
- req.body = data
534
- end
535
- end
536
-
537
- content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
538
-
539
- res = ::OpenApiSDK::Operations::BulkCreateLinksResponse.new(
540
- status_code: r.status, content_type: content_type, raw_response: r
541
- )
542
- if r.status == 200
543
- if Utils.match_content_type(content_type, 'application/json')
544
- out = Utils.unmarshal_complex(r.env.response_body, T::Array[::OpenApiSDK::Shared::LinkSchema])
545
- res.link_schemas = out
546
- end
547
- elsif r.status == 400
548
- if Utils.match_content_type(content_type, 'application/json')
549
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
550
- res.bad_request = out
551
- end
552
- elsif r.status == 401
553
- if Utils.match_content_type(content_type, 'application/json')
554
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
555
- res.unauthorized = out
556
- end
557
- elsif r.status == 403
558
- if Utils.match_content_type(content_type, 'application/json')
559
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
560
- res.forbidden = out
561
- end
562
- elsif r.status == 404
563
- if Utils.match_content_type(content_type, 'application/json')
564
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
565
- res.not_found = out
566
- end
567
- elsif r.status == 409
568
- if Utils.match_content_type(content_type, 'application/json')
569
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
570
- res.conflict = out
571
- end
572
- elsif r.status == 410
573
- if Utils.match_content_type(content_type, 'application/json')
574
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
575
- res.invite_expired = out
576
- end
577
- elsif r.status == 422
578
- if Utils.match_content_type(content_type, 'application/json')
579
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
580
- res.unprocessable_entity = out
581
- end
582
- elsif r.status == 429
583
- if Utils.match_content_type(content_type, 'application/json')
584
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
585
- res.rate_limit_exceeded = out
586
- end
587
- elsif r.status == 500
588
- if Utils.match_content_type(content_type, 'application/json')
589
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
590
- res.internal_server_error = out
591
- end
592
- end
593
- res
594
- end
595
-
596
-
597
- sig { params(request: T.nilable(::OpenApiSDK::Operations::BulkUpdateLinksRequestBody)).returns(::OpenApiSDK::Operations::BulkUpdateLinksResponse) }
598
- def update_many(request)
599
- # update_many - Bulk update links
600
- # Bulk update up to 100 links with the same data for the authenticated workspace.
601
- url, params = @sdk_configuration.get_server_details
602
- base_url = Utils.template_url(url, params)
603
- url = "#{base_url}/links/bulk"
604
- headers = {}
605
- req_content_type, data, form = Utils.serialize_request_body(request, :request, :json)
606
- headers['content-type'] = req_content_type
607
- headers['Accept'] = 'application/json'
608
- headers['user-agent'] = @sdk_configuration.user_agent
609
-
610
- r = @sdk_configuration.client.patch(url) do |req|
611
- req.headers = headers
612
- Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
613
- if form
614
- req.body = Utils.encode_form(form)
615
- elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
616
- req.body = URI.encode_www_form(data)
617
- else
618
- req.body = data
619
- end
620
- end
621
-
622
- content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
623
-
624
- res = ::OpenApiSDK::Operations::BulkUpdateLinksResponse.new(
625
- status_code: r.status, content_type: content_type, raw_response: r
626
- )
627
- if r.status == 200
628
- if Utils.match_content_type(content_type, 'application/json')
629
- out = Utils.unmarshal_complex(r.env.response_body, T::Array[::OpenApiSDK::Shared::LinkSchema])
630
- res.link_schemas = out
631
- end
632
- elsif r.status == 400
633
- if Utils.match_content_type(content_type, 'application/json')
634
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
635
- res.bad_request = out
636
- end
637
- elsif r.status == 401
638
- if Utils.match_content_type(content_type, 'application/json')
639
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
640
- res.unauthorized = out
641
- end
642
- elsif r.status == 403
643
- if Utils.match_content_type(content_type, 'application/json')
644
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
645
- res.forbidden = out
646
- end
647
- elsif r.status == 404
648
- if Utils.match_content_type(content_type, 'application/json')
649
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
650
- res.not_found = out
651
- end
652
- elsif r.status == 409
653
- if Utils.match_content_type(content_type, 'application/json')
654
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
655
- res.conflict = out
656
- end
657
- elsif r.status == 410
658
- if Utils.match_content_type(content_type, 'application/json')
659
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
660
- res.invite_expired = out
661
- end
662
- elsif r.status == 422
663
- if Utils.match_content_type(content_type, 'application/json')
664
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
665
- res.unprocessable_entity = out
666
- end
667
- elsif r.status == 429
668
- if Utils.match_content_type(content_type, 'application/json')
669
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
670
- res.rate_limit_exceeded = out
671
- end
672
- elsif r.status == 500
673
- if Utils.match_content_type(content_type, 'application/json')
674
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
675
- res.internal_server_error = out
676
- end
677
- end
678
- res
679
- end
680
-
681
-
682
- sig { params(request: T.nilable(::OpenApiSDK::Operations::UpsertLinkRequestBody)).returns(::OpenApiSDK::Operations::UpsertLinkResponse) }
683
- def upsert(request)
684
- # upsert - Upsert a link
685
- # Upsert a link for the authenticated workspace by its URL. If a link with the same URL already exists, return it (or update it if there are any changes). Otherwise, a new link will be created.
686
- url, params = @sdk_configuration.get_server_details
687
- base_url = Utils.template_url(url, params)
688
- url = "#{base_url}/links/upsert"
689
- headers = {}
690
- req_content_type, data, form = Utils.serialize_request_body(request, :request, :json)
691
- headers['content-type'] = req_content_type
692
- headers['Accept'] = 'application/json'
693
- headers['user-agent'] = @sdk_configuration.user_agent
694
-
695
- r = @sdk_configuration.client.put(url) do |req|
696
- req.headers = headers
697
- Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
698
- if form
699
- req.body = Utils.encode_form(form)
700
- elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
701
- req.body = URI.encode_www_form(data)
702
- else
703
- req.body = data
704
- end
705
- end
706
-
707
- content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
708
-
709
- res = ::OpenApiSDK::Operations::UpsertLinkResponse.new(
710
- status_code: r.status, content_type: content_type, raw_response: r
711
- )
712
- if r.status == 200
713
- if Utils.match_content_type(content_type, 'application/json')
714
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::LinkSchema)
715
- res.link_schema = out
716
- end
717
- elsif r.status == 400
718
- if Utils.match_content_type(content_type, 'application/json')
719
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::BadRequest)
720
- res.bad_request = out
721
- end
722
- elsif r.status == 401
723
- if Utils.match_content_type(content_type, 'application/json')
724
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Unauthorized)
725
- res.unauthorized = out
726
- end
727
- elsif r.status == 403
728
- if Utils.match_content_type(content_type, 'application/json')
729
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Forbidden)
730
- res.forbidden = out
731
- end
732
- elsif r.status == 404
733
- if Utils.match_content_type(content_type, 'application/json')
734
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::NotFound)
735
- res.not_found = out
736
- end
737
- elsif r.status == 409
738
- if Utils.match_content_type(content_type, 'application/json')
739
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::Conflict)
740
- res.conflict = out
741
- end
742
- elsif r.status == 410
743
- if Utils.match_content_type(content_type, 'application/json')
744
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InviteExpired)
745
- res.invite_expired = out
746
- end
747
- elsif r.status == 422
748
- if Utils.match_content_type(content_type, 'application/json')
749
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::UnprocessableEntity)
750
- res.unprocessable_entity = out
751
- end
752
- elsif r.status == 429
753
- if Utils.match_content_type(content_type, 'application/json')
754
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::RateLimitExceeded)
755
- res.rate_limit_exceeded = out
756
- end
757
- elsif r.status == 500
758
- if Utils.match_content_type(content_type, 'application/json')
759
- out = Utils.unmarshal_complex(r.env.response_body, ::OpenApiSDK::Shared::InternalServerError)
760
- res.internal_server_error = out
761
- end
762
- end
763
- res
764
- end
765
- end
766
- end