twitter-openapi-typescript-generated 0.0.16 → 0.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (476) hide show
  1. package/.openapi-generator/FILES +59 -1
  2. package/.openapi-generator/VERSION +1 -1
  3. package/README.md +5 -4
  4. package/dist/apis/DefaultApi.js +302 -134
  5. package/dist/apis/DefaultApi.js.map +1 -1
  6. package/dist/apis/OtherApi.js +151 -67
  7. package/dist/apis/OtherApi.js.map +1 -1
  8. package/dist/apis/PostApi.js +912 -408
  9. package/dist/apis/PostApi.js.map +1 -1
  10. package/dist/apis/TweetApi.js +1661 -737
  11. package/dist/apis/TweetApi.js.map +1 -1
  12. package/dist/apis/UserApi.js +302 -134
  13. package/dist/apis/UserApi.js.map +1 -1
  14. package/dist/apis/UserListApi.js +755 -335
  15. package/dist/apis/UserListApi.js.map +1 -1
  16. package/dist/apis/UsersApi.js +151 -67
  17. package/dist/apis/UsersApi.js.map +1 -1
  18. package/dist/apis/V11GetApi.js +302 -134
  19. package/dist/apis/V11GetApi.js.map +1 -1
  20. package/dist/apis/V11PostApi.js +292 -122
  21. package/dist/apis/V11PostApi.js.map +1 -1
  22. package/dist/apis/V20GetApi.js +151 -67
  23. package/dist/apis/V20GetApi.js.map +1 -1
  24. package/dist/models/AdditionalMediaInfo.d.ts +32 -0
  25. package/dist/models/AdditionalMediaInfo.d.ts.map +1 -1
  26. package/dist/models/AdditionalMediaInfo.js +13 -0
  27. package/dist/models/AdditionalMediaInfo.js.map +1 -1
  28. package/dist/models/AdditionalMediaInfoCallToActions.d.ts +39 -0
  29. package/dist/models/AdditionalMediaInfoCallToActions.d.ts.map +1 -0
  30. package/dist/models/AdditionalMediaInfoCallToActions.js +54 -0
  31. package/dist/models/AdditionalMediaInfoCallToActions.js.map +1 -0
  32. package/dist/models/AdditionalMediaInfoCallToActionsUrl.d.ts +32 -0
  33. package/dist/models/AdditionalMediaInfoCallToActionsUrl.d.ts.map +1 -0
  34. package/dist/models/AdditionalMediaInfoCallToActionsUrl.js +51 -0
  35. package/dist/models/AdditionalMediaInfoCallToActionsUrl.js.map +1 -0
  36. package/dist/models/AuthorCommunityRelationship.d.ts +53 -0
  37. package/dist/models/AuthorCommunityRelationship.d.ts.map +1 -0
  38. package/dist/models/AuthorCommunityRelationship.js +64 -0
  39. package/dist/models/AuthorCommunityRelationship.js.map +1 -0
  40. package/dist/models/BirdwatchEntityRef.d.ts +9 -2
  41. package/dist/models/BirdwatchEntityRef.d.ts.map +1 -1
  42. package/dist/models/BirdwatchEntityRef.js +7 -5
  43. package/dist/models/BirdwatchEntityRef.js.map +1 -1
  44. package/dist/models/BirdwatchPivot.d.ts +7 -0
  45. package/dist/models/BirdwatchPivot.d.ts.map +1 -1
  46. package/dist/models/BirdwatchPivot.js +3 -0
  47. package/dist/models/BirdwatchPivot.js.map +1 -1
  48. package/dist/models/BirdwatchPivotCallToAction.d.ts +44 -0
  49. package/dist/models/BirdwatchPivotCallToAction.d.ts.map +1 -0
  50. package/dist/models/BirdwatchPivotCallToAction.js +57 -0
  51. package/dist/models/BirdwatchPivotCallToAction.js.map +1 -0
  52. package/dist/models/Community.d.ts +33 -0
  53. package/dist/models/Community.d.ts.map +1 -0
  54. package/dist/models/Community.js +52 -0
  55. package/dist/models/Community.js.map +1 -0
  56. package/dist/models/CommunityActions.d.ts +54 -0
  57. package/dist/models/CommunityActions.d.ts.map +1 -0
  58. package/dist/models/CommunityActions.js +64 -0
  59. package/dist/models/CommunityActions.js.map +1 -0
  60. package/dist/models/CommunityData.d.ts +217 -0
  61. package/dist/models/CommunityData.d.ts.map +1 -0
  62. package/dist/models/CommunityData.js +145 -0
  63. package/dist/models/CommunityData.js.map +1 -0
  64. package/dist/models/CommunityDeleteActionResult.d.ts +46 -0
  65. package/dist/models/CommunityDeleteActionResult.d.ts.map +1 -0
  66. package/dist/models/CommunityDeleteActionResult.js +61 -0
  67. package/dist/models/CommunityDeleteActionResult.js.map +1 -0
  68. package/dist/models/CommunityInvitesResult.d.ts +52 -0
  69. package/dist/models/CommunityInvitesResult.d.ts.map +1 -0
  70. package/dist/models/CommunityInvitesResult.js +64 -0
  71. package/dist/models/CommunityInvitesResult.js.map +1 -0
  72. package/dist/models/CommunityJoinActionResult.d.ts +33 -0
  73. package/dist/models/CommunityJoinActionResult.d.ts.map +1 -0
  74. package/dist/models/CommunityJoinActionResult.js +52 -0
  75. package/dist/models/CommunityJoinActionResult.js.map +1 -0
  76. package/dist/models/CommunityJoinRequestsResult.d.ts +33 -0
  77. package/dist/models/CommunityJoinRequestsResult.d.ts.map +1 -0
  78. package/dist/models/CommunityJoinRequestsResult.js +52 -0
  79. package/dist/models/CommunityJoinRequestsResult.js.map +1 -0
  80. package/dist/models/CommunityLeaveActionResult.d.ts +52 -0
  81. package/dist/models/CommunityLeaveActionResult.d.ts.map +1 -0
  82. package/dist/models/CommunityLeaveActionResult.js +64 -0
  83. package/dist/models/CommunityLeaveActionResult.js.map +1 -0
  84. package/dist/models/CommunityPinActionResult.d.ts +33 -0
  85. package/dist/models/CommunityPinActionResult.d.ts.map +1 -0
  86. package/dist/models/CommunityPinActionResult.js +52 -0
  87. package/dist/models/CommunityPinActionResult.js.map +1 -0
  88. package/dist/models/CommunityRule.d.ts +44 -0
  89. package/dist/models/CommunityRule.d.ts.map +1 -0
  90. package/dist/models/CommunityRule.js +57 -0
  91. package/dist/models/CommunityRule.js.map +1 -0
  92. package/dist/models/CommunityUrls.d.ts +33 -0
  93. package/dist/models/CommunityUrls.d.ts.map +1 -0
  94. package/dist/models/CommunityUrls.js +52 -0
  95. package/dist/models/CommunityUrls.js.map +1 -0
  96. package/dist/models/CommunityUrlsPermalink.d.ts +32 -0
  97. package/dist/models/CommunityUrlsPermalink.d.ts.map +1 -0
  98. package/dist/models/CommunityUrlsPermalink.js +51 -0
  99. package/dist/models/CommunityUrlsPermalink.js.map +1 -0
  100. package/dist/models/DisplayTreatment.d.ts +32 -0
  101. package/dist/models/DisplayTreatment.d.ts.map +1 -0
  102. package/dist/models/DisplayTreatment.js +51 -0
  103. package/dist/models/DisplayTreatment.js.map +1 -0
  104. package/dist/models/DisplayType.d.ts +26 -0
  105. package/dist/models/DisplayType.d.ts.map +1 -0
  106. package/dist/models/DisplayType.js +39 -0
  107. package/dist/models/DisplayType.js.map +1 -0
  108. package/dist/models/Entities.d.ts +7 -0
  109. package/dist/models/Entities.d.ts.map +1 -1
  110. package/dist/models/Entities.js +3 -0
  111. package/dist/models/Entities.js.map +1 -1
  112. package/dist/models/FeedbackInfo.d.ts +32 -0
  113. package/dist/models/FeedbackInfo.d.ts.map +1 -0
  114. package/dist/models/FeedbackInfo.js +51 -0
  115. package/dist/models/FeedbackInfo.js.map +1 -0
  116. package/dist/models/Highlight.d.ts +33 -0
  117. package/dist/models/Highlight.d.ts.map +1 -0
  118. package/dist/models/Highlight.js +52 -0
  119. package/dist/models/Highlight.js.map +1 -0
  120. package/dist/models/Media.d.ts +54 -0
  121. package/dist/models/Media.d.ts.map +1 -1
  122. package/dist/models/Media.js +20 -0
  123. package/dist/models/Media.js.map +1 -1
  124. package/dist/models/MediaExtended.d.ts +25 -0
  125. package/dist/models/MediaExtended.d.ts.map +1 -1
  126. package/dist/models/MediaExtended.js +9 -0
  127. package/dist/models/MediaExtended.js.map +1 -1
  128. package/dist/models/ModuleEntry.d.ts +8 -1
  129. package/dist/models/ModuleEntry.d.ts.map +1 -1
  130. package/dist/models/ModuleEntry.js +5 -2
  131. package/dist/models/ModuleEntry.js.map +1 -1
  132. package/dist/models/PostCreateTweetRequestFeatures.d.ts +12 -0
  133. package/dist/models/PostCreateTweetRequestFeatures.d.ts.map +1 -1
  134. package/dist/models/PostCreateTweetRequestFeatures.js +6 -0
  135. package/dist/models/PostCreateTweetRequestFeatures.js.map +1 -1
  136. package/dist/models/PrimaryCommunityTopic.d.ts +38 -0
  137. package/dist/models/PrimaryCommunityTopic.d.ts.map +1 -0
  138. package/dist/models/PrimaryCommunityTopic.js +54 -0
  139. package/dist/models/PrimaryCommunityTopic.js.map +1 -0
  140. package/dist/models/QuotedRefResult.d.ts +33 -0
  141. package/dist/models/QuotedRefResult.d.ts.map +1 -0
  142. package/dist/models/QuotedRefResult.js +52 -0
  143. package/dist/models/QuotedRefResult.js.map +1 -0
  144. package/dist/models/QuotedStatusPermalink.d.ts +44 -0
  145. package/dist/models/QuotedStatusPermalink.d.ts.map +1 -0
  146. package/dist/models/QuotedStatusPermalink.js +57 -0
  147. package/dist/models/QuotedStatusPermalink.js.map +1 -0
  148. package/dist/models/SensitiveMediaWarning.d.ts +44 -0
  149. package/dist/models/SensitiveMediaWarning.d.ts.map +1 -0
  150. package/dist/models/SensitiveMediaWarning.js +57 -0
  151. package/dist/models/SensitiveMediaWarning.js.map +1 -0
  152. package/dist/models/SocialContextLandingUrl.d.ts +54 -0
  153. package/dist/models/SocialContextLandingUrl.d.ts.map +1 -0
  154. package/dist/models/SocialContextLandingUrl.js +64 -0
  155. package/dist/models/SocialContextLandingUrl.js.map +1 -0
  156. package/dist/models/SocialContextUnion.d.ts +27 -0
  157. package/dist/models/SocialContextUnion.d.ts.map +1 -0
  158. package/dist/models/SocialContextUnion.js +65 -0
  159. package/dist/models/SocialContextUnion.js.map +1 -0
  160. package/dist/models/SocialContextUnionType.d.ts +24 -0
  161. package/dist/models/SocialContextUnionType.d.ts.map +1 -0
  162. package/dist/models/SocialContextUnionType.js +37 -0
  163. package/dist/models/SocialContextUnionType.js.map +1 -0
  164. package/dist/models/SuperFollowsReplyUserResult.d.ts +33 -0
  165. package/dist/models/SuperFollowsReplyUserResult.d.ts.map +1 -0
  166. package/dist/models/SuperFollowsReplyUserResult.js +52 -0
  167. package/dist/models/SuperFollowsReplyUserResult.js.map +1 -0
  168. package/dist/models/SuperFollowsReplyUserResultData.d.ts +40 -0
  169. package/dist/models/SuperFollowsReplyUserResultData.d.ts.map +1 -0
  170. package/dist/models/SuperFollowsReplyUserResultData.js +56 -0
  171. package/dist/models/SuperFollowsReplyUserResultData.js.map +1 -0
  172. package/dist/models/SuperFollowsReplyUserResultLegacy.d.ts +32 -0
  173. package/dist/models/SuperFollowsReplyUserResultLegacy.d.ts.map +1 -0
  174. package/dist/models/SuperFollowsReplyUserResultLegacy.js +51 -0
  175. package/dist/models/SuperFollowsReplyUserResultLegacy.js.map +1 -0
  176. package/dist/models/TextHighlight.d.ts +38 -0
  177. package/dist/models/TextHighlight.d.ts.map +1 -0
  178. package/dist/models/TextHighlight.js +54 -0
  179. package/dist/models/TextHighlight.js.map +1 -0
  180. package/dist/models/TimelineGeneralContext.d.ts +65 -0
  181. package/dist/models/TimelineGeneralContext.d.ts.map +1 -0
  182. package/dist/models/TimelineGeneralContext.js +71 -0
  183. package/dist/models/TimelineGeneralContext.js.map +1 -0
  184. package/dist/models/TimelineTimelineCursor.d.ts +13 -0
  185. package/dist/models/TimelineTimelineCursor.d.ts.map +1 -1
  186. package/dist/models/TimelineTimelineCursor.js +6 -0
  187. package/dist/models/TimelineTimelineCursor.js.map +1 -1
  188. package/dist/models/TimelineTimelineModule.d.ts +18 -11
  189. package/dist/models/TimelineTimelineModule.d.ts.map +1 -1
  190. package/dist/models/TimelineTimelineModule.js +9 -11
  191. package/dist/models/TimelineTimelineModule.js.map +1 -1
  192. package/dist/models/TimelineTopicContext.d.ts +53 -0
  193. package/dist/models/TimelineTopicContext.d.ts.map +1 -0
  194. package/dist/models/TimelineTopicContext.js +63 -0
  195. package/dist/models/TimelineTopicContext.js.map +1 -0
  196. package/dist/models/TimelineTweet.d.ts +12 -5
  197. package/dist/models/TimelineTweet.d.ts.map +1 -1
  198. package/dist/models/TimelineTweet.js +6 -3
  199. package/dist/models/TimelineTweet.js.map +1 -1
  200. package/dist/models/TimelineUser.d.ts +7 -7
  201. package/dist/models/TimelineUser.d.ts.map +1 -1
  202. package/dist/models/TimelineUser.js +3 -3
  203. package/dist/models/TimelineUser.js.map +1 -1
  204. package/dist/models/Timestamp.d.ts +44 -0
  205. package/dist/models/Timestamp.d.ts.map +1 -0
  206. package/dist/models/Timestamp.js +57 -0
  207. package/dist/models/Timestamp.js.map +1 -0
  208. package/dist/models/TopicContext.d.ts +68 -0
  209. package/dist/models/TopicContext.d.ts.map +1 -0
  210. package/dist/models/TopicContext.js +63 -0
  211. package/dist/models/TopicContext.js.map +1 -0
  212. package/dist/models/Tweet.d.ts +44 -3
  213. package/dist/models/Tweet.d.ts.map +1 -1
  214. package/dist/models/Tweet.js +20 -6
  215. package/dist/models/Tweet.js.map +1 -1
  216. package/dist/models/TweetCardLegacy.d.ts +14 -0
  217. package/dist/models/TweetCardLegacy.d.ts.map +1 -1
  218. package/dist/models/TweetCardLegacy.js +7 -0
  219. package/dist/models/TweetCardLegacy.js.map +1 -1
  220. package/dist/models/TweetCardLegacyBindingValueData.d.ts +22 -0
  221. package/dist/models/TweetCardLegacyBindingValueData.d.ts.map +1 -1
  222. package/dist/models/TweetCardLegacyBindingValueData.js +8 -0
  223. package/dist/models/TweetCardLegacyBindingValueData.js.map +1 -1
  224. package/dist/models/TweetCardLegacyBindingValueDataImage.d.ts +50 -0
  225. package/dist/models/TweetCardLegacyBindingValueDataImage.d.ts.map +1 -0
  226. package/dist/models/TweetCardLegacyBindingValueDataImage.js +60 -0
  227. package/dist/models/TweetCardLegacyBindingValueDataImage.js.map +1 -0
  228. package/dist/models/TweetCardPlatform.d.ts +40 -0
  229. package/dist/models/TweetCardPlatform.d.ts.map +1 -0
  230. package/dist/models/TweetCardPlatform.js +56 -0
  231. package/dist/models/TweetCardPlatform.js.map +1 -0
  232. package/dist/models/TweetCardPlatformAudience.d.ts +39 -0
  233. package/dist/models/TweetCardPlatformAudience.d.ts.map +1 -0
  234. package/dist/models/TweetCardPlatformAudience.js +57 -0
  235. package/dist/models/TweetCardPlatformAudience.js.map +1 -0
  236. package/dist/models/TweetCardPlatformData.d.ts +33 -0
  237. package/dist/models/TweetCardPlatformData.d.ts.map +1 -0
  238. package/dist/models/TweetCardPlatformData.js +52 -0
  239. package/dist/models/TweetCardPlatformData.js.map +1 -0
  240. package/dist/models/TweetCardPlatformDevice.d.ts +38 -0
  241. package/dist/models/TweetCardPlatformDevice.d.ts.map +1 -0
  242. package/dist/models/TweetCardPlatformDevice.js +54 -0
  243. package/dist/models/TweetCardPlatformDevice.js.map +1 -0
  244. package/dist/models/TweetInterstitial.d.ts +60 -0
  245. package/dist/models/TweetInterstitial.d.ts.map +1 -0
  246. package/dist/models/TweetInterstitial.js +69 -0
  247. package/dist/models/TweetInterstitial.js.map +1 -0
  248. package/dist/models/TweetInterstitialRevealText.d.ts +45 -0
  249. package/dist/models/TweetInterstitialRevealText.d.ts.map +1 -0
  250. package/dist/models/TweetInterstitialRevealText.js +58 -0
  251. package/dist/models/TweetInterstitialRevealText.js.map +1 -0
  252. package/dist/models/TweetInterstitialText.d.ts +45 -0
  253. package/dist/models/TweetInterstitialText.d.ts.map +1 -0
  254. package/dist/models/TweetInterstitialText.js +58 -0
  255. package/dist/models/TweetInterstitialText.js.map +1 -0
  256. package/dist/models/TweetInterstitialTextEntity.d.ts +45 -0
  257. package/dist/models/TweetInterstitialTextEntity.d.ts.map +1 -0
  258. package/dist/models/TweetInterstitialTextEntity.js +58 -0
  259. package/dist/models/TweetInterstitialTextEntity.js.map +1 -0
  260. package/dist/models/TweetInterstitialTextEntityRef.d.ts +58 -0
  261. package/dist/models/TweetInterstitialTextEntityRef.d.ts.map +1 -0
  262. package/dist/models/TweetInterstitialTextEntityRef.js +69 -0
  263. package/dist/models/TweetInterstitialTextEntityRef.js.map +1 -0
  264. package/dist/models/TweetLegacy.d.ts +72 -0
  265. package/dist/models/TweetLegacy.d.ts.map +1 -1
  266. package/dist/models/TweetLegacy.js +32 -1
  267. package/dist/models/TweetLegacy.js.map +1 -1
  268. package/dist/models/TweetLegacyScopes.d.ts +32 -0
  269. package/dist/models/TweetLegacyScopes.d.ts.map +1 -0
  270. package/dist/models/TweetLegacyScopes.js +51 -0
  271. package/dist/models/TweetLegacyScopes.js.map +1 -0
  272. package/dist/models/TweetPreviousCounts.d.ts +56 -0
  273. package/dist/models/TweetPreviousCounts.d.ts.map +1 -0
  274. package/dist/models/TweetPreviousCounts.js +63 -0
  275. package/dist/models/TweetPreviousCounts.js.map +1 -0
  276. package/dist/models/TweetView.d.ts +1 -0
  277. package/dist/models/TweetView.d.ts.map +1 -1
  278. package/dist/models/TweetView.js +1 -0
  279. package/dist/models/TweetView.js.map +1 -1
  280. package/dist/models/TweetWithVisibilityResults.d.ts +15 -0
  281. package/dist/models/TweetWithVisibilityResults.d.ts.map +1 -1
  282. package/dist/models/TweetWithVisibilityResults.js +6 -0
  283. package/dist/models/TweetWithVisibilityResults.js.map +1 -1
  284. package/dist/models/TypeName.d.ts +8 -0
  285. package/dist/models/TypeName.d.ts.map +1 -1
  286. package/dist/models/TypeName.js +9 -1
  287. package/dist/models/TypeName.js.map +1 -1
  288. package/dist/models/UnifiedCard.d.ts +39 -0
  289. package/dist/models/UnifiedCard.d.ts.map +1 -0
  290. package/dist/models/UnifiedCard.js +57 -0
  291. package/dist/models/UnifiedCard.js.map +1 -0
  292. package/dist/models/UrtEndpointOptions.d.ts +39 -0
  293. package/dist/models/UrtEndpointOptions.d.ts.map +1 -0
  294. package/dist/models/UrtEndpointOptions.js +55 -0
  295. package/dist/models/UrtEndpointOptions.js.map +1 -0
  296. package/dist/models/UrtEndpointRequestParams.d.ts +38 -0
  297. package/dist/models/UrtEndpointRequestParams.d.ts.map +1 -0
  298. package/dist/models/UrtEndpointRequestParams.js +54 -0
  299. package/dist/models/UrtEndpointRequestParams.js.map +1 -0
  300. package/dist/models/User.d.ts +54 -0
  301. package/dist/models/User.d.ts.map +1 -1
  302. package/dist/models/User.js +27 -1
  303. package/dist/models/User.js.map +1 -1
  304. package/dist/models/UserHighlightsInfo.d.ts +38 -0
  305. package/dist/models/UserHighlightsInfo.d.ts.map +1 -0
  306. package/dist/models/UserHighlightsInfo.js +54 -0
  307. package/dist/models/UserHighlightsInfo.js.map +1 -0
  308. package/dist/models/UserLegacy.d.ts +20 -0
  309. package/dist/models/UserLegacy.d.ts.map +1 -1
  310. package/dist/models/UserLegacy.js +12 -1
  311. package/dist/models/UserLegacy.js.map +1 -1
  312. package/dist/models/UserProfessional.d.ts +53 -0
  313. package/dist/models/UserProfessional.d.ts.map +1 -0
  314. package/dist/models/UserProfessional.js +65 -0
  315. package/dist/models/UserProfessional.js.map +1 -0
  316. package/dist/models/UserProfessionalCategory.d.ts +44 -0
  317. package/dist/models/UserProfessionalCategory.d.ts.map +1 -0
  318. package/dist/models/UserProfessionalCategory.js +57 -0
  319. package/dist/models/UserProfessionalCategory.js.map +1 -0
  320. package/dist/models/UserUnavailable.d.ts +6 -0
  321. package/dist/models/UserUnavailable.d.ts.map +1 -1
  322. package/dist/models/UserUnavailable.js +3 -0
  323. package/dist/models/UserUnavailable.js.map +1 -1
  324. package/dist/models/UserValue.d.ts +32 -0
  325. package/dist/models/UserValue.d.ts.map +1 -0
  326. package/dist/models/UserValue.js +51 -0
  327. package/dist/models/UserValue.js.map +1 -0
  328. package/dist/models/UserVerificationInfo.d.ts +39 -0
  329. package/dist/models/UserVerificationInfo.d.ts.map +1 -0
  330. package/dist/models/UserVerificationInfo.js +55 -0
  331. package/dist/models/UserVerificationInfo.js.map +1 -0
  332. package/dist/models/UserVerificationInfoReason.d.ts +45 -0
  333. package/dist/models/UserVerificationInfoReason.d.ts.map +1 -0
  334. package/dist/models/UserVerificationInfoReason.js +58 -0
  335. package/dist/models/UserVerificationInfoReason.js.map +1 -0
  336. package/dist/models/UserVerificationInfoReasonDescription.d.ts +39 -0
  337. package/dist/models/UserVerificationInfoReasonDescription.d.ts.map +1 -0
  338. package/dist/models/UserVerificationInfoReasonDescription.js +55 -0
  339. package/dist/models/UserVerificationInfoReasonDescription.js.map +1 -0
  340. package/dist/models/UserVerificationInfoReasonDescriptionEntities.d.ts +45 -0
  341. package/dist/models/UserVerificationInfoReasonDescriptionEntities.d.ts.map +1 -0
  342. package/dist/models/UserVerificationInfoReasonDescriptionEntities.js +58 -0
  343. package/dist/models/UserVerificationInfoReasonDescriptionEntities.js.map +1 -0
  344. package/dist/models/UserVerificationInfoReasonDescriptionEntitiesRef.d.ts +45 -0
  345. package/dist/models/UserVerificationInfoReasonDescriptionEntitiesRef.d.ts.map +1 -0
  346. package/dist/models/UserVerificationInfoReasonDescriptionEntitiesRef.js +60 -0
  347. package/dist/models/UserVerificationInfoReasonDescriptionEntitiesRef.js.map +1 -0
  348. package/dist/models/index.d.ts +59 -1
  349. package/dist/models/index.d.ts.map +1 -1
  350. package/dist/models/index.js +59 -1
  351. package/dist/models/index.js.map +1 -1
  352. package/dist/runtime.d.ts +2 -2
  353. package/dist/runtime.d.ts.map +1 -1
  354. package/dist/runtime.js.map +1 -1
  355. package/package.json +1 -1
  356. package/src/apis/DefaultApi.ts +34 -34
  357. package/src/apis/OtherApi.ts +17 -17
  358. package/src/apis/PostApi.ts +102 -102
  359. package/src/apis/TweetApi.ts +187 -187
  360. package/src/apis/UserApi.ts +34 -34
  361. package/src/apis/UserListApi.ts +85 -85
  362. package/src/apis/UsersApi.ts +17 -17
  363. package/src/apis/V11GetApi.ts +34 -34
  364. package/src/apis/V11PostApi.ts +34 -34
  365. package/src/apis/V20GetApi.ts +17 -17
  366. package/src/models/AdditionalMediaInfo.ts +53 -0
  367. package/src/models/AdditionalMediaInfoCallToActions.ts +80 -0
  368. package/src/models/AdditionalMediaInfoCallToActionsUrl.ts +66 -0
  369. package/src/models/AuthorCommunityRelationship.ts +105 -0
  370. package/src/models/BirdwatchEntityRef.ts +14 -7
  371. package/src/models/BirdwatchPivot.ts +14 -0
  372. package/src/models/BirdwatchPivotCallToAction.ts +84 -0
  373. package/src/models/Community.ts +73 -0
  374. package/src/models/CommunityActions.ts +118 -0
  375. package/src/models/CommunityData.ts +358 -0
  376. package/src/models/CommunityDeleteActionResult.ts +92 -0
  377. package/src/models/CommunityInvitesResult.ts +101 -0
  378. package/src/models/CommunityJoinActionResult.ts +73 -0
  379. package/src/models/CommunityJoinRequestsResult.ts +73 -0
  380. package/src/models/CommunityLeaveActionResult.ts +101 -0
  381. package/src/models/CommunityPinActionResult.ts +73 -0
  382. package/src/models/CommunityRule.ts +83 -0
  383. package/src/models/CommunityUrls.ts +73 -0
  384. package/src/models/CommunityUrlsPermalink.ts +66 -0
  385. package/src/models/DisplayTreatment.ts +66 -0
  386. package/src/models/DisplayType.ts +40 -0
  387. package/src/models/Entities.ts +14 -0
  388. package/src/models/FeedbackInfo.ts +65 -0
  389. package/src/models/Highlight.ts +73 -0
  390. package/src/models/Media.ts +78 -0
  391. package/src/models/MediaExtended.ts +38 -0
  392. package/src/models/ModuleEntry.ts +16 -3
  393. package/src/models/PostCreateTweetRequestFeatures.ts +18 -0
  394. package/src/models/PrimaryCommunityTopic.ts +75 -0
  395. package/src/models/QuotedRefResult.ts +72 -0
  396. package/src/models/QuotedStatusPermalink.ts +84 -0
  397. package/src/models/SensitiveMediaWarning.ts +84 -0
  398. package/src/models/SocialContextLandingUrl.ts +100 -0
  399. package/src/models/SocialContextUnion.ts +72 -0
  400. package/src/models/SocialContextUnionType.ts +38 -0
  401. package/src/models/SuperFollowsReplyUserResult.ts +73 -0
  402. package/src/models/SuperFollowsReplyUserResultData.ts +88 -0
  403. package/src/models/SuperFollowsReplyUserResultLegacy.ts +66 -0
  404. package/src/models/TextHighlight.ts +75 -0
  405. package/src/models/TimelineGeneralContext.ts +118 -0
  406. package/src/models/TimelineTimelineCursor.ts +23 -0
  407. package/src/models/TimelineTimelineModule.ts +32 -16
  408. package/src/models/TimelineTopicContext.ts +104 -0
  409. package/src/models/TimelineTweet.ts +25 -11
  410. package/src/models/TimelineUser.ts +13 -13
  411. package/src/models/Timestamp.ts +84 -0
  412. package/src/models/TopicContext.ts +113 -0
  413. package/src/models/Tweet.ts +84 -9
  414. package/src/models/TweetCardLegacy.ts +28 -0
  415. package/src/models/TweetCardLegacyBindingValueData.ts +37 -0
  416. package/src/models/TweetCardLegacyBindingValueDataImage.ts +92 -0
  417. package/src/models/TweetCardPlatform.ts +88 -0
  418. package/src/models/TweetCardPlatformAudience.ts +76 -0
  419. package/src/models/TweetCardPlatformData.ts +73 -0
  420. package/src/models/TweetCardPlatformDevice.ts +75 -0
  421. package/src/models/TweetInterstitial.ts +122 -0
  422. package/src/models/TweetInterstitialRevealText.ts +91 -0
  423. package/src/models/TweetInterstitialText.ts +91 -0
  424. package/src/models/TweetInterstitialTextEntity.ts +91 -0
  425. package/src/models/TweetInterstitialTextEntityRef.ts +102 -0
  426. package/src/models/TweetLegacy.ts +99 -0
  427. package/src/models/TweetLegacyScopes.ts +66 -0
  428. package/src/models/TweetPreviousCounts.ts +102 -0
  429. package/src/models/TweetView.ts +1 -0
  430. package/src/models/TweetWithVisibilityResults.ts +22 -0
  431. package/src/models/TypeName.ts +9 -1
  432. package/src/models/UnifiedCard.ts +76 -0
  433. package/src/models/UrtEndpointOptions.ts +82 -0
  434. package/src/models/UrtEndpointRequestParams.ts +75 -0
  435. package/src/models/User.ts +87 -0
  436. package/src/models/UserHighlightsInfo.ts +75 -0
  437. package/src/models/UserLegacy.ts +27 -0
  438. package/src/models/UserProfessional.ts +102 -0
  439. package/src/models/UserProfessionalCategory.ts +84 -0
  440. package/src/models/UserUnavailable.ts +8 -0
  441. package/src/models/UserValue.ts +66 -0
  442. package/src/models/UserVerificationInfo.ts +81 -0
  443. package/src/models/UserVerificationInfoReason.ts +91 -0
  444. package/src/models/UserVerificationInfoReasonDescription.ts +82 -0
  445. package/src/models/UserVerificationInfoReasonDescriptionEntities.ts +91 -0
  446. package/src/models/UserVerificationInfoReasonDescriptionEntitiesRef.ts +85 -0
  447. package/src/models/index.ts +59 -1
  448. package/src/runtime.ts +3 -3
  449. package/tools/openapi-generator-config.yaml +1 -1
  450. package/tools/win/init.ps1 +1 -1
  451. package/twitter-openapi/.github/workflows/test-build.yaml +1 -1
  452. package/twitter-openapi/.github/workflows/test-python.yaml +1 -1
  453. package/twitter-openapi/.vscode/extensions.json +8 -2
  454. package/twitter-openapi/.vscode/launch.json +8 -5
  455. package/twitter-openapi/.vscode/settings.json +11 -1
  456. package/twitter-openapi/.vscode/tasks.json +4 -5
  457. package/twitter-openapi/dist/compatible/openapi-3.0.yaml +1202 -338
  458. package/twitter-openapi/dist/compatible_discriminator/openapi-3.0.yaml +6149 -0
  459. package/twitter-openapi/dist/docs/openapi-3.0.yaml +1166 -121
  460. package/twitter-openapi/requirements.txt +0 -0
  461. package/twitter-openapi/src/config/placeholder.json +85 -44
  462. package/twitter-openapi/src/openapi/response/error.yaml +3 -0
  463. package/twitter-openapi/src/openapi/schemas/content.yaml +159 -10
  464. package/twitter-openapi/src/openapi/schemas/tweet.yaml +618 -17
  465. package/twitter-openapi/src/openapi/schemas/typename.yaml +8 -0
  466. package/twitter-openapi/src/openapi/schemas/user.yaml +129 -0
  467. package/twitter-openapi/test/python/openapi-generator-config.yaml +1 -1
  468. package/twitter-openapi/test/python/test_serialize.py +118 -47
  469. package/twitter-openapi/tools/build_config.py +28 -3
  470. package/twitter-openapi/tools/hooks.py +9 -1
  471. package/dist/models/SocialContext.d.ts +0 -44
  472. package/dist/models/SocialContext.d.ts.map +0 -1
  473. package/dist/models/SocialContext.js +0 -55
  474. package/dist/models/SocialContext.js.map +0 -1
  475. package/src/models/SocialContext.ts +0 -81
  476. package/twitter-openapi/test/python/replace.py +0 -23
@@ -14,6 +14,7 @@ components:
14
14
  TimelineUser,
15
15
  TimelineTimelineCursor,
16
16
  TweetWithVisibilityResults,
17
+ ContextualTweetInterstitial,
17
18
  TimelineTimelineModule,
18
19
  TweetTombstone,
19
20
  TimelinePrompt,
@@ -23,4 +24,11 @@ components:
23
24
  Tweet,
24
25
  User,
25
26
  UserUnavailable,
27
+ Community,
28
+ CommunityDeleteActionUnavailable,
29
+ CommunityJoinAction,
30
+ CommunityLeaveActionUnavailable,
31
+ CommunityTweetPinActionUnavailable,
32
+ CommunityInvitesUnavailable,
33
+ CommunityJoinRequestsUnavailable,
26
34
  ]
@@ -38,6 +38,7 @@ components:
38
38
  - "super_follow_eligible"
39
39
  - "super_followed_by"
40
40
  - "super_following"
41
+ - "profile_image_shape"
41
42
 
42
43
  properties:
43
44
  __typename:
@@ -73,6 +74,125 @@ components:
73
74
  super_following:
74
75
  type: boolean
75
76
  default: false
77
+ profile_image_shape:
78
+ type: string
79
+ enum:
80
+ - "Circle"
81
+ - "Square"
82
+ - "Hexagon"
83
+ professional:
84
+ $ref: "#/components/schemas/UserProfessional"
85
+ user_seed_tweet_count:
86
+ type: integer
87
+ highlights_info:
88
+ $ref: "#/components/schemas/UserHighlightsInfo"
89
+ creator_subscriptions_count:
90
+ type: integer
91
+ verification_info:
92
+ $ref: "#/components/schemas/UserVerificationInfo"
93
+ is_profile_translatable:
94
+ type: boolean
95
+
96
+ UserProfessional:
97
+ required:
98
+ - "rest_id"
99
+ - "professional_type"
100
+ - "category"
101
+ properties:
102
+ rest_id:
103
+ type: string
104
+ pattern: "^[0-9]+$"
105
+ professional_type:
106
+ type: string
107
+ enum: ["Business", "Creator"]
108
+ category:
109
+ type: array
110
+ items:
111
+ $ref: "#/components/schemas/UserProfessionalCategory"
112
+
113
+ UserProfessionalCategory:
114
+ required:
115
+ - "id"
116
+ - "name"
117
+ - "icon_name"
118
+ properties:
119
+ id:
120
+ type: integer
121
+ name:
122
+ type: string # enum
123
+ icon_name:
124
+ type: string # IconBriefcaseStroke ?
125
+
126
+ UserHighlightsInfo:
127
+ required:
128
+ - "can_highlight_tweets"
129
+ - "highlighted_tweets"
130
+ properties:
131
+ can_highlight_tweets:
132
+ type: boolean
133
+ highlighted_tweets:
134
+ type: string
135
+
136
+ UserVerificationInfo:
137
+ required:
138
+ - "is_identity_verified"
139
+ properties:
140
+ is_identity_verified:
141
+ type: boolean
142
+ default: false
143
+ reason:
144
+ $ref: "#/components/schemas/UserVerificationInfoReason"
145
+
146
+ UserVerificationInfoReason:
147
+ required:
148
+ - "description"
149
+ - "verified_since_msec"
150
+ - "override_verified_year"
151
+ properties:
152
+ description:
153
+ $ref: "#/components/schemas/UserVerificationInfoReasonDescription"
154
+ verified_since_msec:
155
+ type: string
156
+ pattern: "^-?[0-9]+$"
157
+ override_verified_year:
158
+ type: integer
159
+
160
+ UserVerificationInfoReasonDescription:
161
+ required:
162
+ - "text"
163
+ - "entities"
164
+ properties:
165
+ text:
166
+ type: string
167
+ entities:
168
+ type: array
169
+ items:
170
+ $ref: "#/components/schemas/UserVerificationInfoReasonDescriptionEntities"
171
+
172
+ UserVerificationInfoReasonDescriptionEntities:
173
+ required:
174
+ - "from_index"
175
+ - "to_index"
176
+ - "ref"
177
+ properties:
178
+ from_index:
179
+ type: integer
180
+ to_index:
181
+ type: integer
182
+ ref:
183
+ $ref: "#/components/schemas/UserVerificationInfoReasonDescriptionEntitiesRef"
184
+
185
+ UserVerificationInfoReasonDescriptionEntitiesRef:
186
+ required:
187
+ - "url"
188
+ - "url_type"
189
+ properties:
190
+ url:
191
+ type: string
192
+ format: uri
193
+ url_type:
194
+ type: string
195
+ enum: ["ExternalUrl"]
76
196
 
77
197
  UserLegacy:
78
198
  required:
@@ -219,6 +339,13 @@ components:
219
339
  want_retweets:
220
340
  type: boolean
221
341
  default: false
342
+ verified_type:
343
+ type: string
344
+ enum: ["Business", "Government"]
345
+ withheld_in_countries:
346
+ type: array
347
+ items:
348
+ type: string # enum DE
222
349
 
223
350
  UserUnavailable:
224
351
  required:
@@ -229,3 +356,5 @@ components:
229
356
  $ref: "./typename.yaml#/components/schemas/TypeName" # UserUnavailable
230
357
  reason:
231
358
  type: string
359
+ message:
360
+ type: string
@@ -1,4 +1,4 @@
1
- inputSpec: dist/compatible/openapi-3.0.yaml
1
+ inputSpec: dist/compatible_discriminator/openapi-3.0.yaml
2
2
  outputDir: python_generated
3
3
 
4
4
  useOneOfDiscriminatorLookup: true
@@ -1,16 +1,18 @@
1
+ import base64
2
+ import concurrent.futures
3
+ import glob
1
4
  import json
2
- import os
3
5
  import logging
4
- import base64
5
- import openapi_client as pt
6
- from pathlib import Path
6
+ import os
7
7
  import time
8
- import glob
9
- import aenum
10
- import concurrent.futures
11
8
  import traceback
9
+ import warnings
10
+ from pathlib import Path
12
11
 
12
+ import aenum
13
+ import openapi_client as pt
13
14
 
15
+ warnings.filterwarnings("ignore")
14
16
  logging.basicConfig(level=logging.DEBUG, format="%(asctime)s %(levelname)s %(message)s")
15
17
  logger = logging.getLogger("test_serialize")
16
18
 
@@ -19,6 +21,7 @@ ERROR_UNCATCHED = os.environ.get("ERROR_UNCATCHED", "false").lower() == "true"
19
21
  SLEEP_TIME = float(os.environ.get("SLEEP", "0"))
20
22
  CUESOR_TEST_COUNT = int(os.environ.get("CUESOR_TEST_COUNT", "3"))
21
23
  STRICT_MODE = os.environ.get("STRICT_MODE", "false").lower() == "true"
24
+ MULTI_THREAD = os.environ.get("MULTI_THREAD", "true").lower() == "true"
22
25
 
23
26
 
24
27
  def get_key(snake_str):
@@ -28,14 +31,14 @@ def get_key(snake_str):
28
31
 
29
32
  def get_cursor(obj, fn):
30
33
  res = []
31
- if type(obj) == dict:
34
+ if isinstance(obj, dict):
32
35
  callback = fn(obj)
33
36
  if callback is not None:
34
37
  res.extend(callback)
35
38
  else:
36
39
  for v in obj.values():
37
40
  res.extend(get_cursor(v, fn))
38
- elif type(obj) == list:
41
+ elif isinstance(obj, list):
39
42
  for v in obj:
40
43
  res.extend(get_cursor(v, fn))
41
44
  return res
@@ -62,13 +65,25 @@ def get_kwargs(key, additional):
62
65
  return kwargs
63
66
 
64
67
 
65
- def match_rate_zero(key):
68
+ def match_rate_zero(a, b, base, key):
69
+ def get(obj, key):
70
+ if isinstance(obj, list):
71
+ return get(obj[key[0]], key[1:])
72
+ if obj.__dict__.get("actual_instance") is not None:
73
+ return get(obj.actual_instance, key)
74
+ if len(key) == 0:
75
+ return obj
76
+ return get(super_get(obj.__dict__, key[0]), key[1:])
77
+
66
78
  if STRICT_MODE:
67
- raise Exception(f"Strict mode: {key}")
79
+ obj_name = type(get(base, key[:-1]))
80
+ obj_key = f"{obj_name.__name__}.{key[-1]}"
81
+ raise Exception(f"Not defined: {obj_key}\nContents: {b}")
82
+
68
83
  return 0
69
84
 
70
85
 
71
- def match_rate(a, b, key=""):
86
+ def match_rate(a, b, base, key=""):
72
87
  if isinstance(a, aenum.Enum):
73
88
  a = a.value
74
89
  if isinstance(b, aenum.Enum):
@@ -77,27 +92,30 @@ def match_rate(a, b, key=""):
77
92
  return 1
78
93
  if a is False and b is None:
79
94
  return 1
80
- if type(a) != type(b):
81
- return match_rate_zero(key)
82
- if type(a) == dict and type(b) == dict:
95
+ if a is None and isinstance(b, list) and len(b) == 0:
96
+ return 1
97
+ if isinstance(a, list) and b is None and len(a) == 0:
98
+ return 1
99
+ if a is None and isinstance(b, dict) and len(b) == 0:
100
+ return 1
101
+ if isinstance(a, dict) and b is None and len(a) == 0:
102
+ return 1
103
+ if isinstance(a, dict) and isinstance(b, dict):
83
104
  if len(a) == 0 and len(b) == 0:
84
105
  return 1
85
- if len(a) == 0 or len(b) == 0:
86
- return match_rate_zero(key)
87
-
88
- data = [match_rate(a.get(k), b.get(k), key=f"{key}.{k}") for k in a.keys()]
89
-
90
- return sum(data) / len(a)
91
- if type(a) == list and type(b) == list:
106
+ marge_key = set(a.keys()) | set(b.keys())
107
+ data = [match_rate(a.get(k), b.get(k), base, [*key, k]) for k in marge_key]
108
+ return sum(data) / len(b)
109
+ if isinstance(a, list) and isinstance(b, list):
92
110
  if len(a) == 0 and len(b) == 0:
93
111
  return 1
94
112
  if len(a) != len(b):
95
- return match_rate_zero(a, b, key=key)
96
- data = [match_rate(a[i], b[i], key=f"{key}[{i}]") for i in range(len(a))]
113
+ return match_rate_zero(a, b, base, key)
114
+ data = [match_rate(a[i], b[i], base, [*key, i]) for i in range(len(a))]
97
115
  return sum(data) / len(a)
98
116
  if a == b:
99
117
  return 1
100
- return match_rate_zero(a, b, key=key)
118
+ return match_rate_zero(a, b, base, key)
101
119
 
102
120
 
103
121
  def save_cache(data):
@@ -107,14 +125,31 @@ def save_cache(data):
107
125
  json.dump(data, f, indent=4)
108
126
 
109
127
 
128
+ def super_get(obj: dict, key: str):
129
+ keys = [
130
+ key,
131
+ "".join(["_" + c.lower() if c.isupper() else c for c in key]).lstrip("_"),
132
+ ]
133
+
134
+ for k in keys:
135
+ if obj.get(k) is not None:
136
+ return obj[k]
137
+ raise KeyError(key)
138
+
139
+
110
140
  def task_callback(file, thread=True):
111
141
  try:
112
142
  with open(file, "r") as f:
113
143
  cache = json.load(f)
114
144
  data = pt.__dict__[cache["type"]].from_json(cache["raw"])
115
- rate = match_rate(data.to_dict(), json.loads(cache["raw"]))
145
+
146
+ rate = match_rate(
147
+ data.to_dict(),
148
+ json.loads(cache["raw"]),
149
+ base=data,
150
+ )
116
151
  return rate, file
117
- except Exception as e:
152
+ except Exception:
118
153
  if thread:
119
154
  return 0, file
120
155
  else:
@@ -150,10 +185,18 @@ if __name__ == "__main__":
150
185
  placeholder = json.load(f)
151
186
 
152
187
  fail = []
153
- with concurrent.futures.ProcessPoolExecutor() as executor:
154
- tasks = [executor.submit(task_callback, x) for x in glob.glob("cache/*.json")]
155
- for task in concurrent.futures.as_completed(tasks):
156
- rate, file = task.result()
188
+ files = glob.glob("cache/*.json")
189
+ if MULTI_THREAD:
190
+ with concurrent.futures.ProcessPoolExecutor() as executor:
191
+ tasks = [executor.submit(task_callback, x) for x in files]
192
+ for task in concurrent.futures.as_completed(tasks):
193
+ rate, file = task.result()
194
+ if rate < 1:
195
+ fail.append(file)
196
+ logger.info(f"Match rate: {rate}")
197
+ else:
198
+ for file in files:
199
+ rate, file = task_callback(file, thread=False)
157
200
  if rate < 1:
158
201
  fail.append(file)
159
202
  logger.info(f"Match rate: {rate}")
@@ -205,7 +248,7 @@ if __name__ == "__main__":
205
248
 
206
249
  save_cache(
207
250
  {
208
- "raw": res.raw_data,
251
+ "raw": res.raw_data.decode("utf-8"),
209
252
  "type": res.data.__class__.__name__,
210
253
  }
211
254
  )
@@ -213,7 +256,11 @@ if __name__ == "__main__":
213
256
  new_cursor = set(get_cursor(data, find_cursor)) - cursor_history
214
257
  cursor_list.update(new_cursor)
215
258
 
216
- rate = match_rate(data, json.loads(res.raw_data))
259
+ rate = match_rate(
260
+ data,
261
+ json.loads(res.raw_data),
262
+ res.data,
263
+ )
217
264
  logger.info(f"Match rate: {rate}")
218
265
 
219
266
  if data.get("errors") is not None:
@@ -229,12 +276,16 @@ if __name__ == "__main__":
229
276
  error_count += 1
230
277
 
231
278
  try:
232
- logger.info(f"Try: Self UserByScreenName Test")
279
+ logger.info("Try: Self UserByScreenName Test")
233
280
  kwargs = get_kwargs("UserByScreenName", {"screen_name": "a810810931931"})
234
281
  res = pt.UserApi(api_client).get_user_by_screen_name_with_http_info(**kwargs)
235
282
  data = res.data.to_dict()
236
283
 
237
- rate = match_rate(data, json.loads(res.raw_data))
284
+ rate = match_rate(
285
+ data,
286
+ json.loads(res.raw_data),
287
+ res.data,
288
+ )
238
289
  logger.info(f"Match rate: {rate}")
239
290
  screen_name = data["data"]["user"]["result"]["legacy"]["screen_name"]
240
291
  if not screen_name == "a810810931931":
@@ -243,23 +294,39 @@ if __name__ == "__main__":
243
294
  error_dump(e)
244
295
  error_count += 1
245
296
 
246
- try:
247
- logger.info(f"Try: Self UserTweets Test")
248
- kwargs = get_kwargs("UserTweets", {"userId": "1180389371481976833"})
249
- res = pt.TweetApi(api_client).get_user_tweets_with_http_info(**kwargs)
250
- data = res.data.to_dict()
297
+ ids = [
298
+ "1180389371481976833",
299
+ "900282258736545792",
300
+ "1212617657003859968",
301
+ "2455740283",
302
+ "2326837940",
303
+ ]
304
+ for id in ids:
305
+ try:
306
+ logger.info("Try: Self UserTweets Test")
307
+ kwargs = get_kwargs("UserTweets", {"userId": id})
308
+ res = pt.TweetApi(api_client).get_user_tweets_with_http_info(**kwargs)
309
+ data = res.data.to_dict()
251
310
 
252
- rate = match_rate(data, json.loads(res.raw_data))
253
- logger.info(f"Match rate: {rate}")
311
+ rate = match_rate(
312
+ data,
313
+ json.loads(res.raw_data),
314
+ res.data,
315
+ )
316
+ logger.info(f"Match rate: {rate}")
254
317
 
255
- except Exception as e:
256
- error_dump(e)
257
- error_count += 1
318
+ except Exception as e:
319
+ error_dump(e)
320
+ error_count += 1
258
321
 
259
322
  ids = [
260
323
  "1720975693524377759",
261
324
  "1721006592303251551",
262
- "1606661809075019776",
325
+ "1739194269477331076",
326
+ "1697450269259522256",
327
+ "1697450278742884799",
328
+ "1749500209061663043",
329
+ "1759056048764469303",
263
330
  ]
264
331
  for id in ids:
265
332
  try:
@@ -268,7 +335,11 @@ if __name__ == "__main__":
268
335
  res = pt.TweetApi(api_client).get_tweet_detail_with_http_info(**kwargs)
269
336
  data = res.data.to_dict()
270
337
 
271
- rate = match_rate(data, json.loads(res.raw_data))
338
+ rate = match_rate(
339
+ data,
340
+ json.loads(res.raw_data),
341
+ res.data,
342
+ )
272
343
  logger.info(f"Match rate: {rate}")
273
344
  except Exception as e:
274
345
  error_dump(e)
@@ -1,11 +1,23 @@
1
- from hooks import *
1
+ from hooks import (
2
+ AddParametersOnBody,
3
+ AddParametersOnContent,
4
+ AddParametersOnParameters,
5
+ AddPathQueryIdOnParameters,
6
+ AddSecuritySchemesOnSecuritySchemes,
7
+ RemoveErrorHandle,
8
+ SetResponsesHeader,
9
+ )
2
10
 
3
11
 
4
12
  class Config:
5
13
  OUTPUT_DIR = "dist/{0}"
6
14
  INPUT_DIR = "src/openapi"
7
15
 
8
- def hooks_generator(self, queryParameterJson=True):
16
+ def hooks_generator(
17
+ self,
18
+ queryParameterJson=True,
19
+ removeLegacyDiscriminatorBehavior=False,
20
+ ):
9
21
  # https://stackoverflow.com/questions/34820064/defining-an-api-with-swagger-get-call-that-uses-json-in-parameters/45223964
10
22
  if queryParameterJson:
11
23
  # ["parameters"][0]["content"]["application/json"]["schema"]
@@ -22,6 +34,11 @@ class Config:
22
34
  ignoreKeys=["queryId"],
23
35
  )
24
36
 
37
+ # https://github.com/OpenAPITools/openapi-generator/issues/15373
38
+ additionalHooks = []
39
+ if removeLegacyDiscriminatorBehavior:
40
+ additionalHooks.append(RemoveErrorHandle())
41
+
25
42
  return {
26
43
  "openapi": [AddSecuritySchemesOnSecuritySchemes()],
27
44
  "schemas": [],
@@ -31,6 +48,7 @@ class Config:
31
48
  SetResponsesHeader(suffix=None),
32
49
  AddPathQueryIdOnParameters(split=-1),
33
50
  getParamHook,
51
+ *additionalHooks,
34
52
  ]
35
53
  for key in ["default", "user", "users", "user-list", "tweet"]
36
54
  }
@@ -43,6 +61,7 @@ class Config:
43
61
  schemaType=None,
44
62
  contentType="application/json",
45
63
  ),
64
+ *additionalHooks,
46
65
  ]
47
66
  for key in ["post"]
48
67
  }
@@ -70,5 +89,11 @@ class Config:
70
89
  def main(self):
71
90
  return {
72
91
  "docs": self.hooks_generator(),
73
- "compatible": self.hooks_generator(queryParameterJson=False),
92
+ "compatible": self.hooks_generator(
93
+ queryParameterJson=False,
94
+ ),
95
+ "compatible_discriminator": self.hooks_generator(
96
+ queryParameterJson=False,
97
+ removeLegacyDiscriminatorBehavior=True,
98
+ ),
74
99
  }
@@ -1,6 +1,7 @@
1
- import yaml
2
1
  import json
3
2
 
3
+ import yaml
4
+
4
5
 
5
6
  class HookBase:
6
7
  PLACEHOLDER: dict
@@ -193,6 +194,13 @@ class AddPathQueryIdOnParameters(RequestHookBase):
193
194
  return path, value
194
195
 
195
196
 
197
+ class RemoveErrorHandle(RequestHookBase):
198
+ def hook(self, path: str, value: dict):
199
+ content = value["responses"]["200"]["content"]["application/json"]
200
+ content["schema"] = content["schema"]["oneOf"][0]
201
+ return path, value
202
+
203
+
196
204
  # OnParameters
197
205
 
198
206
 
@@ -1,44 +0,0 @@
1
- /**
2
- * Twitter OpenAPI
3
- * Twitter OpenAPI(Swagger) specification
4
- *
5
- * The version of the OpenAPI document: 0.0.1
6
- * Contact: yuki@yuki0311.com
7
- *
8
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
- * https://openapi-generator.tech
10
- * Do not edit the class manually.
11
- */
12
- /**
13
- *
14
- * @export
15
- * @interface SocialContext
16
- */
17
- export interface SocialContext {
18
- /**
19
- *
20
- * @type {string}
21
- * @memberof SocialContext
22
- */
23
- contextType?: string;
24
- /**
25
- *
26
- * @type {string}
27
- * @memberof SocialContext
28
- */
29
- text?: string;
30
- /**
31
- *
32
- * @type {string}
33
- * @memberof SocialContext
34
- */
35
- type?: string;
36
- }
37
- /**
38
- * Check if a given object implements the SocialContext interface.
39
- */
40
- export declare function instanceOfSocialContext(value: object): boolean;
41
- export declare function SocialContextFromJSON(json: any): SocialContext;
42
- export declare function SocialContextFromJSONTyped(json: any, ignoreDiscriminator: boolean): SocialContext;
43
- export declare function SocialContextToJSON(value?: SocialContext | null): any;
44
- //# sourceMappingURL=SocialContext.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SocialContext.d.ts","sourceRoot":"","sources":["../../src/models/SocialContext.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAGH;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC1B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAI9D;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,GAAG,GAAG,aAAa,CAE9D;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,GAAG,EAAE,mBAAmB,EAAE,OAAO,GAAG,aAAa,CAUjG;AAED,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,GAAG,CAarE"}
@@ -1,55 +0,0 @@
1
- "use strict";
2
- /* tslint:disable */
3
- /* eslint-disable */
4
- /**
5
- * Twitter OpenAPI
6
- * Twitter OpenAPI(Swagger) specification
7
- *
8
- * The version of the OpenAPI document: 0.0.1
9
- * Contact: yuki@yuki0311.com
10
- *
11
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
- * https://openapi-generator.tech
13
- * Do not edit the class manually.
14
- */
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.SocialContextToJSON = exports.SocialContextFromJSONTyped = exports.SocialContextFromJSON = exports.instanceOfSocialContext = void 0;
17
- var runtime_1 = require("../runtime");
18
- /**
19
- * Check if a given object implements the SocialContext interface.
20
- */
21
- function instanceOfSocialContext(value) {
22
- var isInstance = true;
23
- return isInstance;
24
- }
25
- exports.instanceOfSocialContext = instanceOfSocialContext;
26
- function SocialContextFromJSON(json) {
27
- return SocialContextFromJSONTyped(json, false);
28
- }
29
- exports.SocialContextFromJSON = SocialContextFromJSON;
30
- function SocialContextFromJSONTyped(json, ignoreDiscriminator) {
31
- if ((json === undefined) || (json === null)) {
32
- return json;
33
- }
34
- return {
35
- 'contextType': !(0, runtime_1.exists)(json, 'contextType') ? undefined : json['contextType'],
36
- 'text': !(0, runtime_1.exists)(json, 'text') ? undefined : json['text'],
37
- 'type': !(0, runtime_1.exists)(json, 'type') ? undefined : json['type'],
38
- };
39
- }
40
- exports.SocialContextFromJSONTyped = SocialContextFromJSONTyped;
41
- function SocialContextToJSON(value) {
42
- if (value === undefined) {
43
- return undefined;
44
- }
45
- if (value === null) {
46
- return null;
47
- }
48
- return {
49
- 'contextType': value.contextType,
50
- 'text': value.text,
51
- 'type': value.type,
52
- };
53
- }
54
- exports.SocialContextToJSON = SocialContextToJSON;
55
- //# sourceMappingURL=SocialContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SocialContext.js","sourceRoot":"","sources":["../../src/models/SocialContext.ts"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,oBAAoB;AACpB;;;;;;;;;;GAUG;;;AAEH,sCAA+C;AA2B/C;;GAEG;AACH,SAAgB,uBAAuB,CAAC,KAAa;IACjD,IAAI,UAAU,GAAG,IAAI,CAAC;IAEtB,OAAO,UAAU,CAAC;AACtB,CAAC;AAJD,0DAIC;AAED,SAAgB,qBAAqB,CAAC,IAAS;IAC3C,OAAO,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACnD,CAAC;AAFD,sDAEC;AAED,SAAgB,0BAA0B,CAAC,IAAS,EAAE,mBAA4B;IAC9E,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE;QACzC,OAAO,IAAI,CAAC;KACf;IACD,OAAO;QAEH,aAAa,EAAE,CAAC,IAAA,gBAAM,EAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;QAC7E,MAAM,EAAE,CAAC,IAAA,gBAAM,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;QACxD,MAAM,EAAE,CAAC,IAAA,gBAAM,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;KAC3D,CAAC;AACN,CAAC;AAVD,gEAUC;AAED,SAAgB,mBAAmB,CAAC,KAA4B;IAC5D,IAAI,KAAK,KAAK,SAAS,EAAE;QACrB,OAAO,SAAS,CAAC;KACpB;IACD,IAAI,KAAK,KAAK,IAAI,EAAE;QAChB,OAAO,IAAI,CAAC;KACf;IACD,OAAO;QAEH,aAAa,EAAE,KAAK,CAAC,WAAW;QAChC,MAAM,EAAE,KAAK,CAAC,IAAI;QAClB,MAAM,EAAE,KAAK,CAAC,IAAI;KACrB,CAAC;AACN,CAAC;AAbD,kDAaC"}