mediawiktory 0.0.3 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (558) hide show
  1. checksums.yaml +4 -4
  2. data/.dokaz +1 -0
  3. data/.rubocop_todo.yml +16 -0
  4. data/.yardopts +2 -0
  5. data/CHANGELOG.md +10 -4
  6. data/CONTRIBUTING.md +6 -9
  7. data/README.md +153 -72
  8. data/bin/mediawiktory-gen +35 -0
  9. data/lib/media_wiktory.rb +2 -0
  10. data/lib/mediawiktory.rb +13 -14
  11. data/lib/mediawiktory/generator.rb +107 -0
  12. data/lib/mediawiktory/generator/api.rb +75 -0
  13. data/lib/mediawiktory/generator/module.rb +105 -0
  14. data/lib/mediawiktory/generator/param.rb +271 -0
  15. data/lib/mediawiktory/generator/renderable.rb +59 -0
  16. data/lib/mediawiktory/generator/templates/_action_method.erb +20 -0
  17. data/lib/mediawiktory/generator/templates/_module_in_param_docs.erb +2 -0
  18. data/lib/mediawiktory/generator/templates/_param_impl_boolean.erb +1 -0
  19. data/lib/mediawiktory/generator/templates/_param_impl_enum.erb +1 -0
  20. data/lib/mediawiktory/generator/templates/_param_impl_enum_of_modules.erb +1 -0
  21. data/lib/mediawiktory/generator/templates/_param_impl_string.erb +1 -0
  22. data/lib/mediawiktory/generator/templates/_param_impl_timestamp.erb +1 -0
  23. data/lib/mediawiktory/generator/templates/_param_method.erb +14 -0
  24. data/lib/mediawiktory/generator/templates/action.rb.erb +204 -0
  25. data/lib/mediawiktory/generator/templates/action_class.rb.erb +30 -0
  26. data/lib/mediawiktory/generator/templates/actions.rb.erb +31 -0
  27. data/lib/mediawiktory/generator/templates/api.rb.erb +65 -0
  28. data/lib/mediawiktory/{client.rb → generator/templates/client.rb.erb} +24 -10
  29. data/lib/mediawiktory/generator/templates/module_class.rb.erb +22 -0
  30. data/lib/mediawiktory/generator/templates/response.rb.erb +122 -0
  31. data/lib/mediawiktory/version.rb +4 -2
  32. data/lib/mediawiktory/wikipedia/actions.rb +2296 -0
  33. data/lib/mediawiktory/wikipedia/actions/abusefiltercheckmatch.rb +55 -0
  34. data/lib/mediawiktory/wikipedia/actions/abusefilterchecksyntax.rb +31 -0
  35. data/lib/mediawiktory/wikipedia/actions/abusefilterevalexpression.rb +31 -0
  36. data/lib/mediawiktory/wikipedia/actions/abusefilterunblockautopromote.rb +39 -0
  37. data/lib/mediawiktory/wikipedia/actions/addstudents.rb +52 -0
  38. data/lib/mediawiktory/wikipedia/actions/antispoof.rb +31 -0
  39. data/lib/mediawiktory/wikipedia/actions/base.rb +351 -0
  40. data/lib/mediawiktory/wikipedia/actions/block.rb +132 -0
  41. data/lib/mediawiktory/wikipedia/actions/bouncehandler.rb +31 -0
  42. data/lib/mediawiktory/wikipedia/actions/categorytree.rb +39 -0
  43. data/lib/mediawiktory/wikipedia/actions/centralauthtoken.rb +25 -0
  44. data/lib/mediawiktory/wikipedia/actions/centralnoticechoicedata.rb +39 -0
  45. data/lib/mediawiktory/wikipedia/actions/centralnoticequerycampaign.rb +31 -0
  46. data/lib/mediawiktory/wikipedia/actions/changeauthenticationdata.rb +39 -0
  47. data/lib/mediawiktory/wikipedia/actions/checktoken.rb +52 -0
  48. data/lib/mediawiktory/wikipedia/actions/cirrus-config-dump.rb +25 -0
  49. data/lib/mediawiktory/wikipedia/actions/cirrus-mapping-dump.rb +25 -0
  50. data/lib/mediawiktory/wikipedia/actions/cirrus-settings-dump.rb +25 -0
  51. data/lib/mediawiktory/wikipedia/actions/clearhasmsg.rb +25 -0
  52. data/lib/mediawiktory/wikipedia/actions/clientlogin.rb +86 -0
  53. data/lib/mediawiktory/wikipedia/actions/compare.rb +71 -0
  54. data/lib/mediawiktory/wikipedia/actions/createaccount.rb +86 -0
  55. data/lib/mediawiktory/wikipedia/actions/cspreport.rb +38 -0
  56. data/lib/mediawiktory/wikipedia/actions/cxconfiguration.rb +39 -0
  57. data/lib/mediawiktory/wikipedia/actions/cxdelete.rb +55 -0
  58. data/lib/mediawiktory/wikipedia/actions/cxpublish.rb +95 -0
  59. data/lib/mediawiktory/wikipedia/actions/cxsave.rb +87 -0
  60. data/lib/mediawiktory/wikipedia/actions/cxsuggestionlist.rb +81 -0
  61. data/lib/mediawiktory/wikipedia/actions/cxtoken.rb +31 -0
  62. data/lib/mediawiktory/wikipedia/actions/delete.rb +103 -0
  63. data/lib/mediawiktory/wikipedia/actions/deleteeducation.rb +65 -0
  64. data/lib/mediawiktory/wikipedia/actions/deleteglobalaccount.rb +47 -0
  65. data/lib/mediawiktory/wikipedia/actions/echomarkread.rb +77 -0
  66. data/lib/mediawiktory/wikipedia/actions/echomarkseen.rb +57 -0
  67. data/lib/mediawiktory/wikipedia/actions/edit.rb +266 -0
  68. data/lib/mediawiktory/wikipedia/actions/editmassmessagelist.rb +65 -0
  69. data/lib/mediawiktory/wikipedia/actions/emailuser.rb +62 -0
  70. data/lib/mediawiktory/wikipedia/actions/enlist.rb +89 -0
  71. data/lib/mediawiktory/wikipedia/actions/expandtemplates.rb +129 -0
  72. data/lib/mediawiktory/wikipedia/actions/fancycaptchareload.rb +25 -0
  73. data/lib/mediawiktory/wikipedia/actions/featuredfeed.rb +57 -0
  74. data/lib/mediawiktory/wikipedia/actions/feedcontributions.rb +121 -0
  75. data/lib/mediawiktory/wikipedia/actions/feedrecentchanges.rb +159 -0
  76. data/lib/mediawiktory/wikipedia/actions/feedwatchlist.rb +108 -0
  77. data/lib/mediawiktory/wikipedia/actions/filerevert.rb +55 -0
  78. data/lib/mediawiktory/wikipedia/actions/flagconfig.rb +25 -0
  79. data/lib/mediawiktory/wikipedia/actions/globalblock.rb +76 -0
  80. data/lib/mediawiktory/wikipedia/actions/globaluserrights.rb +94 -0
  81. data/lib/mediawiktory/wikipedia/actions/graph.rb +47 -0
  82. data/lib/mediawiktory/wikipedia/actions/help.rb +64 -0
  83. data/lib/mediawiktory/wikipedia/actions/imagerotate.rb +25 -0
  84. data/lib/mediawiktory/wikipedia/actions/import.rb +116 -0
  85. data/lib/mediawiktory/wikipedia/actions/jsonconfig.rb +60 -0
  86. data/lib/mediawiktory/wikipedia/actions/jsondata.rb +31 -0
  87. data/lib/mediawiktory/wikipedia/actions/languagesearch.rb +39 -0
  88. data/lib/mediawiktory/wikipedia/actions/linkaccount.rb +79 -0
  89. data/lib/mediawiktory/wikipedia/actions/liststudents.rb +63 -0
  90. data/lib/mediawiktory/wikipedia/actions/login.rb +55 -0
  91. data/lib/mediawiktory/wikipedia/actions/logout.rb +25 -0
  92. data/lib/mediawiktory/wikipedia/actions/managetags.rb +80 -0
  93. data/lib/mediawiktory/wikipedia/actions/massmessage.rb +55 -0
  94. data/lib/mediawiktory/wikipedia/actions/mergehistory.rb +79 -0
  95. data/lib/mediawiktory/wikipedia/actions/mobileview.rb +170 -0
  96. data/lib/mediawiktory/wikipedia/actions/move.rb +131 -0
  97. data/lib/mediawiktory/wikipedia/actions/oathvalidate.rb +47 -0
  98. data/lib/mediawiktory/wikipedia/actions/opensearch.rb +105 -0
  99. data/lib/mediawiktory/wikipedia/actions/options.rb +80 -0
  100. data/lib/mediawiktory/wikipedia/actions/pagetriageaction.rb +67 -0
  101. data/lib/mediawiktory/wikipedia/actions/pagetriagelist.rb +142 -0
  102. data/lib/mediawiktory/wikipedia/actions/pagetriagestats.rb +59 -0
  103. data/lib/mediawiktory/wikipedia/actions/pagetriagetagging.rb +83 -0
  104. data/lib/mediawiktory/wikipedia/actions/pagetriagetemplate.rb +39 -0
  105. data/lib/mediawiktory/wikipedia/actions/paraminfo.rb +91 -0
  106. data/lib/mediawiktory/wikipedia/actions/parse.rb +286 -0
  107. data/lib/mediawiktory/wikipedia/actions/parsoid-batch.rb +31 -0
  108. data/lib/mediawiktory/wikipedia/actions/patrol.rb +60 -0
  109. data/lib/mediawiktory/wikipedia/actions/protect.rb +121 -0
  110. data/lib/mediawiktory/wikipedia/actions/purge.rb +155 -0
  111. data/lib/mediawiktory/wikipedia/actions/query.rb +325 -0
  112. data/lib/mediawiktory/wikipedia/actions/refresheducation.rb +57 -0
  113. data/lib/mediawiktory/wikipedia/actions/removeauthenticationdata.rb +39 -0
  114. data/lib/mediawiktory/wikipedia/actions/resetpassword.rb +47 -0
  115. data/lib/mediawiktory/wikipedia/actions/review.rb +54 -0
  116. data/lib/mediawiktory/wikipedia/actions/reviewactivity.rb +60 -0
  117. data/lib/mediawiktory/wikipedia/actions/revisiondelete.rb +125 -0
  118. data/lib/mediawiktory/wikipedia/actions/rollback.rb +96 -0
  119. data/lib/mediawiktory/wikipedia/actions/rsd.rb +25 -0
  120. data/lib/mediawiktory/wikipedia/actions/sanitize-mapdata.rb +39 -0
  121. data/lib/mediawiktory/wikipedia/actions/scribunto-console.rb +62 -0
  122. data/lib/mediawiktory/wikipedia/actions/setglobalaccountstatus.rb +81 -0
  123. data/lib/mediawiktory/wikipedia/actions/setnotificationtimestamp.rb +180 -0
  124. data/lib/mediawiktory/wikipedia/actions/setpagelanguage.rb +81 -0
  125. data/lib/mediawiktory/wikipedia/actions/shortenurl.rb +31 -0
  126. data/lib/mediawiktory/wikipedia/actions/sitematrix.rb +91 -0
  127. data/lib/mediawiktory/wikipedia/actions/spamblacklist.rb +36 -0
  128. data/lib/mediawiktory/wikipedia/actions/stabilize.rb +76 -0
  129. data/lib/mediawiktory/wikipedia/actions/stashedit.rb +113 -0
  130. data/lib/mediawiktory/wikipedia/actions/strikevote.rb +60 -0
  131. data/lib/mediawiktory/wikipedia/actions/tag.rb +117 -0
  132. data/lib/mediawiktory/wikipedia/actions/templatedata.rb +148 -0
  133. data/lib/mediawiktory/wikipedia/actions/thank.rb +47 -0
  134. data/lib/mediawiktory/wikipedia/actions/titleblacklist.rb +51 -0
  135. data/lib/mediawiktory/wikipedia/actions/tokens.rb +36 -0
  136. data/lib/mediawiktory/wikipedia/actions/transcodereset.rb +47 -0
  137. data/lib/mediawiktory/wikipedia/actions/ulslocalization.rb +31 -0
  138. data/lib/mediawiktory/wikipedia/actions/unblock.rb +76 -0
  139. data/lib/mediawiktory/wikipedia/actions/undelete.rb +99 -0
  140. data/lib/mediawiktory/wikipedia/actions/unlinkaccount.rb +39 -0
  141. data/lib/mediawiktory/wikipedia/actions/upload.rb +172 -0
  142. data/lib/mediawiktory/wikipedia/actions/userrights.rb +107 -0
  143. data/lib/mediawiktory/wikipedia/actions/validatepassword.rb +55 -0
  144. data/lib/mediawiktory/wikipedia/actions/visualeditor.rb +96 -0
  145. data/lib/mediawiktory/wikipedia/actions/visualeditoredit.rb +164 -0
  146. data/lib/mediawiktory/wikipedia/actions/watch.rb +164 -0
  147. data/lib/mediawiktory/wikipedia/actions/webapp-manifest.rb +25 -0
  148. data/lib/mediawiktory/wikipedia/actions/wikilove.rb +79 -0
  149. data/lib/mediawiktory/wikipedia/actions/zeroconfig.rb +44 -0
  150. data/lib/mediawiktory/wikipedia/api.rb +80 -0
  151. data/lib/mediawiktory/wikipedia/client.rb +61 -0
  152. data/lib/mediawiktory/wikipedia/modules/abusefilters.rb +85 -0
  153. data/lib/mediawiktory/wikipedia/modules/abuselog.rb +101 -0
  154. data/lib/mediawiktory/wikipedia/modules/allcategories.rb +104 -0
  155. data/lib/mediawiktory/wikipedia/modules/alldeletedrevisions.rb +213 -0
  156. data/lib/mediawiktory/wikipedia/modules/allfileusages.rb +95 -0
  157. data/lib/mediawiktory/wikipedia/modules/allimages.rb +183 -0
  158. data/lib/mediawiktory/wikipedia/modules/alllinks.rb +108 -0
  159. data/lib/mediawiktory/wikipedia/modules/allmessages.rb +143 -0
  160. data/lib/mediawiktory/wikipedia/modules/allpages.rb +182 -0
  161. data/lib/mediawiktory/wikipedia/modules/allredirects.rb +108 -0
  162. data/lib/mediawiktory/wikipedia/modules/allrevisions.rb +181 -0
  163. data/lib/mediawiktory/wikipedia/modules/alltransclusions.rb +108 -0
  164. data/lib/mediawiktory/wikipedia/modules/allusers.rb +141 -0
  165. data/lib/mediawiktory/wikipedia/modules/authmanagerinfo.rb +63 -0
  166. data/lib/mediawiktory/wikipedia/modules/babel.rb +30 -0
  167. data/lib/mediawiktory/wikipedia/modules/backlinks.rb +100 -0
  168. data/lib/mediawiktory/wikipedia/modules/betafeatures.rb +30 -0
  169. data/lib/mediawiktory/wikipedia/modules/blocks.rb +127 -0
  170. data/lib/mediawiktory/wikipedia/modules/categories.rb +90 -0
  171. data/lib/mediawiktory/wikipedia/modules/categoryinfo.rb +30 -0
  172. data/lib/mediawiktory/wikipedia/modules/categorymembers.rb +183 -0
  173. data/lib/mediawiktory/wikipedia/modules/centralnoticelogs.rb +70 -0
  174. data/lib/mediawiktory/wikipedia/modules/checkuser.rb +83 -0
  175. data/lib/mediawiktory/wikipedia/modules/checkuserlog.rb +83 -0
  176. data/lib/mediawiktory/wikipedia/modules/contenttranslation.rb +83 -0
  177. data/lib/mediawiktory/wikipedia/modules/contenttranslationcorpora.rb +50 -0
  178. data/lib/mediawiktory/wikipedia/modules/contenttranslationlangtrend.rb +51 -0
  179. data/lib/mediawiktory/wikipedia/modules/contenttranslationstats.rb +22 -0
  180. data/lib/mediawiktory/wikipedia/modules/contenttranslationsuggestions.rb +70 -0
  181. data/lib/mediawiktory/wikipedia/modules/contributors.rb +90 -0
  182. data/lib/mediawiktory/wikipedia/modules/coordinates.rb +80 -0
  183. data/lib/mediawiktory/wikipedia/modules/cxpublishedtranslations.rb +54 -0
  184. data/lib/mediawiktory/wikipedia/modules/cxtranslatorstats.rb +30 -0
  185. data/lib/mediawiktory/wikipedia/modules/deletedrevisions.rb +169 -0
  186. data/lib/mediawiktory/wikipedia/modules/deletedrevs.rb +148 -0
  187. data/lib/mediawiktory/wikipedia/modules/duplicatefiles.rb +58 -0
  188. data/lib/mediawiktory/wikipedia/modules/embeddedin.rb +93 -0
  189. data/lib/mediawiktory/wikipedia/modules/extlinks.rb +66 -0
  190. data/lib/mediawiktory/wikipedia/modules/extracts.rb +81 -0
  191. data/lib/mediawiktory/wikipedia/modules/exturlusage.rb +92 -0
  192. data/lib/mediawiktory/wikipedia/modules/featureusage.rb +59 -0
  193. data/lib/mediawiktory/wikipedia/modules/filearchive.rb +104 -0
  194. data/lib/mediawiktory/wikipedia/modules/filerepoinfo.rb +35 -0
  195. data/lib/mediawiktory/wikipedia/modules/fileusage.rb +77 -0
  196. data/lib/mediawiktory/wikipedia/modules/flagged.rb +22 -0
  197. data/lib/mediawiktory/wikipedia/modules/g-allcategories.rb +91 -0
  198. data/lib/mediawiktory/wikipedia/modules/g-alldeletedrevisions.rb +200 -0
  199. data/lib/mediawiktory/wikipedia/modules/g-allfileusages.rb +82 -0
  200. data/lib/mediawiktory/wikipedia/modules/g-allimages.rb +170 -0
  201. data/lib/mediawiktory/wikipedia/modules/g-alllinks.rb +95 -0
  202. data/lib/mediawiktory/wikipedia/modules/g-allpages.rb +182 -0
  203. data/lib/mediawiktory/wikipedia/modules/g-allredirects.rb +95 -0
  204. data/lib/mediawiktory/wikipedia/modules/g-allrevisions.rb +168 -0
  205. data/lib/mediawiktory/wikipedia/modules/g-alltransclusions.rb +95 -0
  206. data/lib/mediawiktory/wikipedia/modules/g-backlinks.rb +100 -0
  207. data/lib/mediawiktory/wikipedia/modules/g-categories.rb +77 -0
  208. data/lib/mediawiktory/wikipedia/modules/g-categorymembers.rb +170 -0
  209. data/lib/mediawiktory/wikipedia/modules/g-contenttranslation.rb +83 -0
  210. data/lib/mediawiktory/wikipedia/modules/g-contenttranslationsuggestions.rb +70 -0
  211. data/lib/mediawiktory/wikipedia/modules/g-deletedrevisions.rb +156 -0
  212. data/lib/mediawiktory/wikipedia/modules/g-duplicatefiles.rb +58 -0
  213. data/lib/mediawiktory/wikipedia/modules/g-embeddedin.rb +93 -0
  214. data/lib/mediawiktory/wikipedia/modules/g-exturlusage.rb +79 -0
  215. data/lib/mediawiktory/wikipedia/modules/g-fileusage.rb +64 -0
  216. data/lib/mediawiktory/wikipedia/modules/g-geosearch.rb +116 -0
  217. data/lib/mediawiktory/wikipedia/modules/g-gettingstartedgetpages.rb +46 -0
  218. data/lib/mediawiktory/wikipedia/modules/g-images.rb +64 -0
  219. data/lib/mediawiktory/wikipedia/modules/g-imageusage.rb +100 -0
  220. data/lib/mediawiktory/wikipedia/modules/g-iwbacklinks.rb +67 -0
  221. data/lib/mediawiktory/wikipedia/modules/g-langbacklinks.rb +67 -0
  222. data/lib/mediawiktory/wikipedia/modules/g-links.rb +77 -0
  223. data/lib/mediawiktory/wikipedia/modules/g-linkshere.rb +64 -0
  224. data/lib/mediawiktory/wikipedia/modules/g-mostviewed.rb +51 -0
  225. data/lib/mediawiktory/wikipedia/modules/g-oldreviewedpages.rb +114 -0
  226. data/lib/mediawiktory/wikipedia/modules/g-pageswithprop.rb +59 -0
  227. data/lib/mediawiktory/wikipedia/modules/g-prefixsearch.rb +72 -0
  228. data/lib/mediawiktory/wikipedia/modules/g-projectpages.rb +58 -0
  229. data/lib/mediawiktory/wikipedia/modules/g-protectedtitles.rb +93 -0
  230. data/lib/mediawiktory/wikipedia/modules/g-querypage.rb +51 -0
  231. data/lib/mediawiktory/wikipedia/modules/g-random.rb +71 -0
  232. data/lib/mediawiktory/wikipedia/modules/g-recentchanges.rb +157 -0
  233. data/lib/mediawiktory/wikipedia/modules/g-redirects.rb +64 -0
  234. data/lib/mediawiktory/wikipedia/modules/g-revisions.rb +185 -0
  235. data/lib/mediawiktory/wikipedia/modules/g-search.rb +112 -0
  236. data/lib/mediawiktory/wikipedia/modules/g-templates.rb +77 -0
  237. data/lib/mediawiktory/wikipedia/modules/g-transcludedin.rb +64 -0
  238. data/lib/mediawiktory/wikipedia/modules/g-watchlist.rb +145 -0
  239. data/lib/mediawiktory/wikipedia/modules/g-watchlistraw.rb +109 -0
  240. data/lib/mediawiktory/wikipedia/modules/g-wblistentityusage.rb +64 -0
  241. data/lib/mediawiktory/wikipedia/modules/gadgetcategories.rb +48 -0
  242. data/lib/mediawiktory/wikipedia/modules/gadgets.rb +75 -0
  243. data/lib/mediawiktory/wikipedia/modules/geosearch.rb +129 -0
  244. data/lib/mediawiktory/wikipedia/modules/gettingstartedgetpages.rb +46 -0
  245. data/lib/mediawiktory/wikipedia/modules/globalallusers.rb +106 -0
  246. data/lib/mediawiktory/wikipedia/modules/globalblocks.rb +106 -0
  247. data/lib/mediawiktory/wikipedia/modules/globalgroups.rb +35 -0
  248. data/lib/mediawiktory/wikipedia/modules/globalusage.rb +58 -0
  249. data/lib/mediawiktory/wikipedia/modules/globaluserinfo.rb +43 -0
  250. data/lib/mediawiktory/wikipedia/modules/imageinfo.rb +142 -0
  251. data/lib/mediawiktory/wikipedia/modules/images.rb +64 -0
  252. data/lib/mediawiktory/wikipedia/modules/imageusage.rb +100 -0
  253. data/lib/mediawiktory/wikipedia/modules/info.rb +69 -0
  254. data/lib/mediawiktory/wikipedia/modules/iwbacklinks.rb +80 -0
  255. data/lib/mediawiktory/wikipedia/modules/iwlinks.rb +87 -0
  256. data/lib/mediawiktory/wikipedia/modules/json.rb +57 -0
  257. data/lib/mediawiktory/wikipedia/modules/jsonfm.rb +64 -0
  258. data/lib/mediawiktory/wikipedia/modules/langbacklinks.rb +80 -0
  259. data/lib/mediawiktory/wikipedia/modules/langlinks.rb +95 -0
  260. data/lib/mediawiktory/wikipedia/modules/links.rb +77 -0
  261. data/lib/mediawiktory/wikipedia/modules/linkshere.rb +77 -0
  262. data/lib/mediawiktory/wikipedia/modules/logevents.rb +151 -0
  263. data/lib/mediawiktory/wikipedia/modules/mapdata.rb +46 -0
  264. data/lib/mediawiktory/wikipedia/modules/mmsites.rb +30 -0
  265. data/lib/mediawiktory/wikipedia/modules/mostviewed.rb +51 -0
  266. data/lib/mediawiktory/wikipedia/modules/mystashedfiles.rb +51 -0
  267. data/lib/mediawiktory/wikipedia/modules/none.rb +22 -0
  268. data/lib/mediawiktory/wikipedia/modules/notifications.rb +174 -0
  269. data/lib/mediawiktory/wikipedia/modules/oath.rb +30 -0
  270. data/lib/mediawiktory/wikipedia/modules/oldreviewedpages.rb +114 -0
  271. data/lib/mediawiktory/wikipedia/modules/ores.rb +22 -0
  272. data/lib/mediawiktory/wikipedia/modules/pageassessments.rb +45 -0
  273. data/lib/mediawiktory/wikipedia/modules/pageimages.rb +72 -0
  274. data/lib/mediawiktory/wikipedia/modules/pagepropnames.rb +38 -0
  275. data/lib/mediawiktory/wikipedia/modules/pageprops.rb +43 -0
  276. data/lib/mediawiktory/wikipedia/modules/pageswithprop.rb +72 -0
  277. data/lib/mediawiktory/wikipedia/modules/pageterms.rb +43 -0
  278. data/lib/mediawiktory/wikipedia/modules/pageviews.rb +51 -0
  279. data/lib/mediawiktory/wikipedia/modules/php.rb +35 -0
  280. data/lib/mediawiktory/wikipedia/modules/phpfm.rb +42 -0
  281. data/lib/mediawiktory/wikipedia/modules/prefixsearch.rb +72 -0
  282. data/lib/mediawiktory/wikipedia/modules/projectpages.rb +58 -0
  283. data/lib/mediawiktory/wikipedia/modules/projects.rb +29 -0
  284. data/lib/mediawiktory/wikipedia/modules/protectedtitles.rb +106 -0
  285. data/lib/mediawiktory/wikipedia/modules/querypage.rb +51 -0
  286. data/lib/mediawiktory/wikipedia/modules/random.rb +71 -0
  287. data/lib/mediawiktory/wikipedia/modules/rawfm.rb +29 -0
  288. data/lib/mediawiktory/wikipedia/modules/recentchanges.rb +170 -0
  289. data/lib/mediawiktory/wikipedia/modules/redirects.rb +77 -0
  290. data/lib/mediawiktory/wikipedia/modules/references.rb +30 -0
  291. data/lib/mediawiktory/wikipedia/modules/revisions.rb +198 -0
  292. data/lib/mediawiktory/wikipedia/modules/search.rb +125 -0
  293. data/lib/mediawiktory/wikipedia/modules/siteinfo.rb +70 -0
  294. data/lib/mediawiktory/wikipedia/modules/siteviews.rb +43 -0
  295. data/lib/mediawiktory/wikipedia/modules/stashimageinfo.rb +85 -0
  296. data/lib/mediawiktory/wikipedia/modules/tags.rb +51 -0
  297. data/lib/mediawiktory/wikipedia/modules/templates.rb +77 -0
  298. data/lib/mediawiktory/wikipedia/modules/tokens.rb +35 -0
  299. data/lib/mediawiktory/wikipedia/modules/transcludedin.rb +77 -0
  300. data/lib/mediawiktory/wikipedia/modules/transcodestatus.rb +22 -0
  301. data/lib/mediawiktory/wikipedia/modules/unreadnotificationpages.rb +50 -0
  302. data/lib/mediawiktory/wikipedia/modules/usercontribs.rb +155 -0
  303. data/lib/mediawiktory/wikipedia/modules/userinfo.rb +43 -0
  304. data/lib/mediawiktory/wikipedia/modules/users.rb +82 -0
  305. data/lib/mediawiktory/wikipedia/modules/videoinfo.rb +143 -0
  306. data/lib/mediawiktory/wikipedia/modules/watchlist.rb +158 -0
  307. data/lib/mediawiktory/wikipedia/modules/watchlistraw.rb +122 -0
  308. data/lib/mediawiktory/wikipedia/modules/wbentityusage.rb +77 -0
  309. data/lib/mediawiktory/wikipedia/modules/wblistentityusage.rb +77 -0
  310. data/lib/mediawiktory/wikipedia/modules/wikibase.rb +35 -0
  311. data/lib/mediawiktory/wikipedia/modules/wikisets.rb +58 -0
  312. data/lib/mediawiktory/wikipedia/modules/xml.rb +37 -0
  313. data/lib/mediawiktory/wikipedia/modules/xmlfm.rb +44 -0
  314. data/lib/mediawiktory/wikipedia/response.rb +122 -0
  315. data/lib/nokogiri/more.rb +12 -12
  316. data/mediawiktory.gemspec +4 -0
  317. metadata +350 -257
  318. data/bin/mediawiktory +0 -13
  319. data/doc/mediawiki_api_types.md +0 -14
  320. data/examples/query.rb +0 -15
  321. data/examples/query_generator.rb +0 -15
  322. data/lib/faraday/naive_cache.rb +0 -40
  323. data/lib/mediawiktory/action.rb +0 -61
  324. data/lib/mediawiktory/generated/abusefiltercheckmatch.rb +0 -9
  325. data/lib/mediawiktory/generated/abusefilterchecksyntax.rb +0 -6
  326. data/lib/mediawiktory/generated/abusefilterevalexpression.rb +0 -6
  327. data/lib/mediawiktory/generated/abusefilters.rb +0 -12
  328. data/lib/mediawiktory/generated/abusefilterunblockautopromote.rb +0 -8
  329. data/lib/mediawiktory/generated/abuselog.rb +0 -14
  330. data/lib/mediawiktory/generated/actions_mixin.rb +0 -352
  331. data/lib/mediawiktory/generated/addstudents.rb +0 -9
  332. data/lib/mediawiktory/generated/allcategories.rb +0 -15
  333. data/lib/mediawiktory/generated/alldeletedrevisions.rb +0 -28
  334. data/lib/mediawiktory/generated/allfileusages.rb +0 -14
  335. data/lib/mediawiktory/generated/allimages.rb +0 -23
  336. data/lib/mediawiktory/generated/alllinks.rb +0 -15
  337. data/lib/mediawiktory/generated/allmessages.rb +0 -19
  338. data/lib/mediawiktory/generated/allpages.rb +0 -21
  339. data/lib/mediawiktory/generated/allredirects.rb +0 -15
  340. data/lib/mediawiktory/generated/allrevisions.rb +0 -24
  341. data/lib/mediawiktory/generated/alltransclusions.rb +0 -15
  342. data/lib/mediawiktory/generated/allusers.rb +0 -18
  343. data/lib/mediawiktory/generated/antispoof.rb +0 -6
  344. data/lib/mediawiktory/generated/authmanagerinfo.rb +0 -10
  345. data/lib/mediawiktory/generated/babel.rb +0 -7
  346. data/lib/mediawiktory/generated/backlinks.rb +0 -14
  347. data/lib/mediawiktory/generated/betafeatures.rb +0 -7
  348. data/lib/mediawiktory/generated/block.rb +0 -20
  349. data/lib/mediawiktory/generated/blocks.rb +0 -16
  350. data/lib/mediawiktory/generated/bouncehandler.rb +0 -7
  351. data/lib/mediawiktory/generated/categories.rb +0 -12
  352. data/lib/mediawiktory/generated/categoryinfo.rb +0 -7
  353. data/lib/mediawiktory/generated/categorymembers.rb +0 -23
  354. data/lib/mediawiktory/generated/categorytree.rb +0 -7
  355. data/lib/mediawiktory/generated/centralauthtoken.rb +0 -5
  356. data/lib/mediawiktory/generated/centralnoticechoicedata.rb +0 -7
  357. data/lib/mediawiktory/generated/centralnoticelogs.rb +0 -11
  358. data/lib/mediawiktory/generated/centralnoticequerycampaign.rb +0 -6
  359. data/lib/mediawiktory/generated/changeauthenticationdata.rb +0 -10
  360. data/lib/mediawiktory/generated/checktoken.rb +0 -8
  361. data/lib/mediawiktory/generated/checkuser.rb +0 -14
  362. data/lib/mediawiktory/generated/checkuserlog.rb +0 -13
  363. data/lib/mediawiktory/generated/cirrus-config-dump.rb +0 -5
  364. data/lib/mediawiktory/generated/cirrus-mapping-dump.rb +0 -5
  365. data/lib/mediawiktory/generated/cirrus-settings-dump.rb +0 -5
  366. data/lib/mediawiktory/generated/clearhasmsg.rb +0 -6
  367. data/lib/mediawiktory/generated/clientlogin.rb +0 -15
  368. data/lib/mediawiktory/generated/compare.rb +0 -11
  369. data/lib/mediawiktory/generated/contenttranslation.rb +0 -12
  370. data/lib/mediawiktory/generated/contenttranslationcorpora.rb +0 -8
  371. data/lib/mediawiktory/generated/contenttranslationlangtrend.rb +0 -8
  372. data/lib/mediawiktory/generated/contenttranslationstats.rb +0 -5
  373. data/lib/mediawiktory/generated/contenttranslationsuggestions.rb +0 -11
  374. data/lib/mediawiktory/generated/contributors.rb +0 -12
  375. data/lib/mediawiktory/generated/coordinates.rb +0 -12
  376. data/lib/mediawiktory/generated/createaccount.rb +0 -15
  377. data/lib/mediawiktory/generated/cspreport.rb +0 -8
  378. data/lib/mediawiktory/generated/cxconfiguration.rb +0 -7
  379. data/lib/mediawiktory/generated/cxdelete.rb +0 -10
  380. data/lib/mediawiktory/generated/cxpublish.rb +0 -15
  381. data/lib/mediawiktory/generated/cxpublishedtranslations.rb +0 -9
  382. data/lib/mediawiktory/generated/cxsave.rb +0 -14
  383. data/lib/mediawiktory/generated/cxsuggestionlist.rb +0 -12
  384. data/lib/mediawiktory/generated/cxtoken.rb +0 -7
  385. data/lib/mediawiktory/generated/cxtranslatorstats.rb +0 -6
  386. data/lib/mediawiktory/generated/delete.rb +0 -15
  387. data/lib/mediawiktory/generated/deletedrevisions.rb +0 -23
  388. data/lib/mediawiktory/generated/deletedrevs.rb +0 -20
  389. data/lib/mediawiktory/generated/deleteeducation.rb +0 -10
  390. data/lib/mediawiktory/generated/deleteglobalaccount.rb +0 -9
  391. data/lib/mediawiktory/generated/duplicatefiles.rb +0 -10
  392. data/lib/mediawiktory/generated/echomarkread.rb +0 -11
  393. data/lib/mediawiktory/generated/echomarkseen.rb +0 -9
  394. data/lib/mediawiktory/generated/edit.rb +0 -35
  395. data/lib/mediawiktory/generated/editmassmessagelist.rb +0 -10
  396. data/lib/mediawiktory/generated/emailuser.rb +0 -11
  397. data/lib/mediawiktory/generated/embeddedin.rb +0 -13
  398. data/lib/mediawiktory/generated/enlist.rb +0 -13
  399. data/lib/mediawiktory/generated/expandtemplates.rb +0 -16
  400. data/lib/mediawiktory/generated/extlinks.rb +0 -11
  401. data/lib/mediawiktory/generated/extracts.rb +0 -13
  402. data/lib/mediawiktory/generated/exturlusage.rb +0 -13
  403. data/lib/mediawiktory/generated/fancycaptchareload.rb +0 -5
  404. data/lib/mediawiktory/generated/featuredfeed.rb +0 -8
  405. data/lib/mediawiktory/generated/featureusage.rb +0 -10
  406. data/lib/mediawiktory/generated/feedcontributions.rb +0 -16
  407. data/lib/mediawiktory/generated/feedrecentchanges.rb +0 -22
  408. data/lib/mediawiktory/generated/feedwatchlist.rb +0 -14
  409. data/lib/mediawiktory/generated/filearchive.rb +0 -15
  410. data/lib/mediawiktory/generated/filerepoinfo.rb +0 -7
  411. data/lib/mediawiktory/generated/filerevert.rb +0 -10
  412. data/lib/mediawiktory/generated/fileusage.rb +0 -11
  413. data/lib/mediawiktory/generated/flagconfig.rb +0 -5
  414. data/lib/mediawiktory/generated/flagged.rb +0 -5
  415. data/lib/mediawiktory/generated/gadgetcategories.rb +0 -8
  416. data/lib/mediawiktory/generated/gadgets.rb +0 -11
  417. data/lib/mediawiktory/generated/geosearch.rb +0 -17
  418. data/lib/mediawiktory/generated/gettingstartedgetpages.rb +0 -9
  419. data/lib/mediawiktory/generated/globalallusers.rb +0 -14
  420. data/lib/mediawiktory/generated/globalblock.rb +0 -13
  421. data/lib/mediawiktory/generated/globalblocks.rb +0 -14
  422. data/lib/mediawiktory/generated/globalgroups.rb +0 -7
  423. data/lib/mediawiktory/generated/globalusage.rb +0 -10
  424. data/lib/mediawiktory/generated/globaluserinfo.rb +0 -8
  425. data/lib/mediawiktory/generated/globaluserrights.rb +0 -13
  426. data/lib/mediawiktory/generated/graph.rb +0 -8
  427. data/lib/mediawiktory/generated/help.rb +0 -10
  428. data/lib/mediawiktory/generated/imageinfo.rb +0 -20
  429. data/lib/mediawiktory/generated/imagerotate.rb +0 -5
  430. data/lib/mediawiktory/generated/images.rb +0 -10
  431. data/lib/mediawiktory/generated/imageusage.rb +0 -14
  432. data/lib/mediawiktory/generated/import.rb +0 -16
  433. data/lib/mediawiktory/generated/info.rb +0 -10
  434. data/lib/mediawiktory/generated/iwbacklinks.rb +0 -12
  435. data/lib/mediawiktory/generated/iwlinks.rb +0 -13
  436. data/lib/mediawiktory/generated/jsonconfig.rb +0 -9
  437. data/lib/mediawiktory/generated/jsondata.rb +0 -6
  438. data/lib/mediawiktory/generated/langbacklinks.rb +0 -12
  439. data/lib/mediawiktory/generated/langlinks.rb +0 -14
  440. data/lib/mediawiktory/generated/languagesearch.rb +0 -7
  441. data/lib/mediawiktory/generated/linkaccount.rb +0 -14
  442. data/lib/mediawiktory/generated/links.rb +0 -11
  443. data/lib/mediawiktory/generated/linkshere.rb +0 -11
  444. data/lib/mediawiktory/generated/liststudents.rb +0 -9
  445. data/lib/mediawiktory/generated/logevents.rb +0 -19
  446. data/lib/mediawiktory/generated/login.rb +0 -11
  447. data/lib/mediawiktory/generated/logout.rb +0 -5
  448. data/lib/mediawiktory/generated/managetags.rb +0 -12
  449. data/lib/mediawiktory/generated/mapdata.rb +0 -9
  450. data/lib/mediawiktory/generated/massmessage.rb +0 -10
  451. data/lib/mediawiktory/generated/mergehistory.rb +0 -13
  452. data/lib/mediawiktory/generated/mmsites.rb +0 -6
  453. data/lib/mediawiktory/generated/mobileview.rb +0 -22
  454. data/lib/mediawiktory/generated/mostviewed.rb +0 -9
  455. data/lib/mediawiktory/generated/move.rb +0 -19
  456. data/lib/mediawiktory/generated/mystashedfiles.rb +0 -9
  457. data/lib/mediawiktory/generated/notifications.rb +0 -22
  458. data/lib/mediawiktory/generated/oath.rb +0 -7
  459. data/lib/mediawiktory/generated/oathvalidate.rb +0 -9
  460. data/lib/mediawiktory/generated/oldreviewedpages.rb +0 -15
  461. data/lib/mediawiktory/generated/opensearch.rb +0 -12
  462. data/lib/mediawiktory/generated/options.rb +0 -12
  463. data/lib/mediawiktory/generated/ores.rb +0 -6
  464. data/lib/mediawiktory/generated/pageassessments.rb +0 -9
  465. data/lib/mediawiktory/generated/pageimages.rb +0 -11
  466. data/lib/mediawiktory/generated/pagepropnames.rb +0 -8
  467. data/lib/mediawiktory/generated/pageprops.rb +0 -8
  468. data/lib/mediawiktory/generated/pageswithprop.rb +0 -11
  469. data/lib/mediawiktory/generated/pageterms.rb +0 -8
  470. data/lib/mediawiktory/generated/pagetriageaction.rb +0 -11
  471. data/lib/mediawiktory/generated/pagetriagelist.rb +0 -21
  472. data/lib/mediawiktory/generated/pagetriagestats.rb +0 -10
  473. data/lib/mediawiktory/generated/pagetriagetagging.rb +0 -13
  474. data/lib/mediawiktory/generated/pagetriagetemplate.rb +0 -7
  475. data/lib/mediawiktory/generated/pageviews.rb +0 -9
  476. data/lib/mediawiktory/generated/paraminfo.rb +0 -11
  477. data/lib/mediawiktory/generated/parse.rb +0 -36
  478. data/lib/mediawiktory/generated/parsoid-batch.rb +0 -6
  479. data/lib/mediawiktory/generated/patrol.rb +0 -10
  480. data/lib/mediawiktory/generated/prefixsearch.rb +0 -10
  481. data/lib/mediawiktory/generated/projectpages.rb +0 -10
  482. data/lib/mediawiktory/generated/projects.rb +0 -7
  483. data/lib/mediawiktory/generated/protect.rb +0 -16
  484. data/lib/mediawiktory/generated/protectedtitles.rb +0 -14
  485. data/lib/mediawiktory/generated/purge.rb +0 -15
  486. data/lib/mediawiktory/generated/query.rb +0 -20
  487. data/lib/mediawiktory/generated/querypage.rb +0 -9
  488. data/lib/mediawiktory/generated/random.rb +0 -11
  489. data/lib/mediawiktory/generated/recentchanges.rb +0 -21
  490. data/lib/mediawiktory/generated/redirects.rb +0 -11
  491. data/lib/mediawiktory/generated/references.rb +0 -7
  492. data/lib/mediawiktory/generated/refresheducation.rb +0 -9
  493. data/lib/mediawiktory/generated/removeauthenticationdata.rb +0 -8
  494. data/lib/mediawiktory/generated/resetpassword.rb +0 -9
  495. data/lib/mediawiktory/generated/review.rb +0 -10
  496. data/lib/mediawiktory/generated/reviewactivity.rb +0 -10
  497. data/lib/mediawiktory/generated/revisiondelete.rb +0 -15
  498. data/lib/mediawiktory/generated/revisions.rb +0 -26
  499. data/lib/mediawiktory/generated/rollback.rb +0 -14
  500. data/lib/mediawiktory/generated/rsd.rb +0 -5
  501. data/lib/mediawiktory/generated/sanitize-mapdata.rb +0 -8
  502. data/lib/mediawiktory/generated/scribunto-console.rb +0 -10
  503. data/lib/mediawiktory/generated/search.rb +0 -16
  504. data/lib/mediawiktory/generated/setglobalaccountstatus.rb +0 -12
  505. data/lib/mediawiktory/generated/setnotificationtimestamp.rb +0 -18
  506. data/lib/mediawiktory/generated/setpagelanguage.rb +0 -12
  507. data/lib/mediawiktory/generated/shortenurl.rb +0 -7
  508. data/lib/mediawiktory/generated/siteinfo.rb +0 -11
  509. data/lib/mediawiktory/generated/sitematrix.rb +0 -12
  510. data/lib/mediawiktory/generated/siteviews.rb +0 -8
  511. data/lib/mediawiktory/generated/spamblacklist.rb +0 -6
  512. data/lib/mediawiktory/generated/stabilize.rb +0 -12
  513. data/lib/mediawiktory/generated/stashedit.rb +0 -16
  514. data/lib/mediawiktory/generated/stashimageinfo.rb +0 -12
  515. data/lib/mediawiktory/generated/strikevote.rb +0 -10
  516. data/lib/mediawiktory/generated/tag.rb +0 -14
  517. data/lib/mediawiktory/generated/tags.rb +0 -9
  518. data/lib/mediawiktory/generated/templatedata.rb +0 -12
  519. data/lib/mediawiktory/generated/templates.rb +0 -11
  520. data/lib/mediawiktory/generated/thank.rb +0 -9
  521. data/lib/mediawiktory/generated/titleblacklist.rb +0 -9
  522. data/lib/mediawiktory/generated/tokens.rb +0 -6
  523. data/lib/mediawiktory/generated/transcludedin.rb +0 -11
  524. data/lib/mediawiktory/generated/transcodereset.rb +0 -9
  525. data/lib/mediawiktory/generated/transcodestatus.rb +0 -5
  526. data/lib/mediawiktory/generated/ulslocalization.rb +0 -6
  527. data/lib/mediawiktory/generated/unblock.rb +0 -12
  528. data/lib/mediawiktory/generated/undelete.rb +0 -13
  529. data/lib/mediawiktory/generated/unlinkaccount.rb +0 -8
  530. data/lib/mediawiktory/generated/unreadnotificationpages.rb +0 -9
  531. data/lib/mediawiktory/generated/upload.rb +0 -24
  532. data/lib/mediawiktory/generated/usercontribs.rb +0 -19
  533. data/lib/mediawiktory/generated/userinfo.rb +0 -8
  534. data/lib/mediawiktory/generated/userrights.rb +0 -13
  535. data/lib/mediawiktory/generated/users.rb +0 -11
  536. data/lib/mediawiktory/generated/validatepassword.rb +0 -10
  537. data/lib/mediawiktory/generated/videoinfo.rb +0 -20
  538. data/lib/mediawiktory/generated/visualeditor.rb +0 -13
  539. data/lib/mediawiktory/generated/visualeditoredit.rb +0 -23
  540. data/lib/mediawiktory/generated/watch.rb +0 -16
  541. data/lib/mediawiktory/generated/watchlist.rb +0 -20
  542. data/lib/mediawiktory/generated/watchlistraw.rb +0 -16
  543. data/lib/mediawiktory/generated/wbentityusage.rb +0 -11
  544. data/lib/mediawiktory/generated/wblistentityusage.rb +0 -11
  545. data/lib/mediawiktory/generated/webapp-manifest.rb +0 -5
  546. data/lib/mediawiktory/generated/wikibase.rb +0 -7
  547. data/lib/mediawiktory/generated/wikilove.rb +0 -13
  548. data/lib/mediawiktory/generated/wikisets.rb +0 -10
  549. data/lib/mediawiktory/generated/zeroconfig.rb +0 -7
  550. data/lib/mediawiktory/mw_module.rb +0 -324
  551. data/lib/mediawiktory/page.rb +0 -50
  552. data/lib/mediawiktory/query.rb +0 -58
  553. data/script/data/api.yaml +0 -40414
  554. data/script/lib/api.rb +0 -14
  555. data/script/lib/module.rb +0 -132
  556. data/script/lib/parameter.rb +0 -133
  557. data/script/parse_api.rb +0 -21
  558. data/test/cache.rb +0 -15
@@ -1,8 +0,0 @@
1
- module MediaWiktory
2
- class Unlinkaccount < Action
3
- symbol :unlinkaccount
4
- post!
5
- param :request, Params::String
6
- param :token, Params::String
7
- end
8
- end
@@ -1,9 +0,0 @@
1
- module MediaWiktory
2
- class Unreadnotificationpages < MWModule
3
- symbol :unreadnotificationpages
4
- prefix "unp"
5
- param :wikis, Params::List[Params::Enum[:aawiki, :aawikibooks, :aawiktionary, :abwiki, :abwiktionary, :acewiki, :advisorywiki, :adywiki, :afwiki, :afwikibooks, :afwikiquote, :afwiktionary, :akwiki, :akwikibooks, :akwiktionary, :alswiki, :alswikibooks, :alswikiquote, :alswiktionary, :amwiki, :amwikiquote, :amwiktionary, :angwiki, :angwikibooks, :angwikiquote, :angwikisource, :angwiktionary, :anwiki, :anwiktionary, :arbcom_cswiki, :arbcom_dewiki, :arbcom_enwiki, :arbcom_fiwiki, :arbcom_nlwiki, :arcwiki, :arwiki, :arwikibooks, :arwikimedia, :arwikinews, :arwikiquote, :arwikisource, :arwikiversity, :arwiktionary, :arzwiki, :astwiki, :astwikibooks, :astwikiquote, :astwiktionary, :aswiki, :aswikibooks, :aswikisource, :aswiktionary, :auditcomwiki, :avwiki, :avwiktionary, :aywiki, :aywikibooks, :aywiktionary, :azwiki, :azwikibooks, :azwikiquote, :azwikisource, :azwiktionary, :azbwiki, :barwiki, :bat_smgwiki, :bawiki, :bawikibooks, :bclwiki, :bdwikimedia, :be_x_oldwiki, :betawikiversity, :bewiki, :bewikibooks, :bewikimedia, :bewikiquote, :bewikisource, :bewiktionary, :bgwiki, :bgwikibooks, :bgwikinews, :bgwikiquote, :bgwikisource, :bgwiktionary, :bhwiki, :bhwiktionary, :biwiki, :biwikibooks, :biwiktionary, :bjnwiki, :bmwiki, :bmwikibooks, :bmwikiquote, :bmwiktionary, :bnwiki, :bnwikibooks, :bnwikisource, :bnwiktionary, :boardgovcomwiki, :boardwiki, :bowiki, :bowikibooks, :bowiktionary, :bpywiki, :brwiki, :brwikimedia, :brwikiquote, :brwikisource, :brwiktionary, :bswiki, :bswikibooks, :bswikinews, :bswikiquote, :bswikisource, :bswiktionary, :bugwiki, :bxrwiki, :cawiki, :cawikibooks, :cawikimedia, :cawikinews, :cawikiquote, :cawikisource, :cawiktionary, :cbk_zamwiki, :cdowiki, :cebwiki, :cewiki, :chairwiki, :chapcomwiki, :checkuserwiki, :chowiki, :chrwiki, :chrwiktionary, :chwiki, :chwikibooks, :chwiktionary, :chywiki, :ckbwiki, :cnwikimedia, :collabwiki, :commonswiki, :cowiki, :cowikibooks, :cowikimedia, :cowikiquote, :cowiktionary, :crhwiki, :crwiki, :crwikiquote, :crwiktionary, :csbwiki, :csbwiktionary, :cswiki, :cswikibooks, :cswikinews, :cswikiquote, :cswikisource, :cswikiversity, :cswiktionary, :cuwiki, :cvwiki, :cvwikibooks, :cywiki, :cywikibooks, :cywikiquote, :cywikisource, :cywiktionary, :dawiki, :dawikibooks, :dawikiquote, :dawikisource, :dawiktionary, :dewiki, :dewikibooks, :dewikinews, :dewikiquote, :dewikisource, :dewikiversity, :dewikivoyage, :dewiktionary, :diqwiki, :dkwikimedia, :donatewiki, :dsbwiki, :dvwiki, :dvwiktionary, :dzwiki, :dzwiktionary, :ecwikimedia, :eewiki, :elwiki, :elwikibooks, :elwikinews, :elwikiquote, :elwikisource, :elwikiversity, :elwikivoyage, :elwiktionary, :emlwiki, :enwiki, :enwikibooks, :enwikinews, :enwikiquote, :enwikisource, :enwikiversity, :enwikivoyage, :enwiktionary, :eowiki, :eowikibooks, :eowikinews, :eowikiquote, :eowikisource, :eowiktionary, :eswiki, :eswikibooks, :eswikinews, :eswikiquote, :eswikisource, :eswikiversity, :eswikivoyage, :eswiktionary, :etwiki, :etwikibooks, :etwikimedia, :etwikiquote, :etwikisource, :etwiktionary, :euwiki, :euwikibooks, :euwikiquote, :euwiktionary, :execwiki, :extwiki, :fawiki, :fawikibooks, :fawikinews, :fawikiquote, :fawikisource, :fawikivoyage, :fawiktionary, :fdcwiki, :ffwiki, :fiu_vrowiki, :fiwiki, :fiwikibooks, :fiwikimedia, :fiwikinews, :fiwikiquote, :fiwikisource, :fiwikiversity, :fiwikivoyage, :fiwiktionary, :fjwiki, :fjwiktionary, :foundationwiki, :fowiki, :fowikisource, :fowiktionary, :frpwiki, :frrwiki, :frwiki, :frwikibooks, :frwikinews, :frwikiquote, :frwikisource, :frwikiversity, :frwikivoyage, :frwiktionary, :furwiki, :fywiki, :fywikibooks, :fywiktionary, :gagwiki, :ganwiki, :gawiki, :gawikibooks, :gawikiquote, :gawiktionary, :gdwiki, :gdwiktionary, :glkwiki, :glwiki, :glwikibooks, :glwikiquote, :glwikisource, :glwiktionary, :gnwiki, :gnwikibooks, :gnwiktionary, :gomwiki, :gotwiki, :gotwikibooks, :grantswiki, :guwiki, :guwikibooks, :guwikiquote, :guwikisource, :guwiktionary, :gvwiki, :gvwiktionary, :hakwiki, :hawiki, :hawiktionary, :hawwiki, :hewiki, :hewikibooks, :hewikinews, :hewikiquote, :hewikisource, :hewikivoyage, :hewiktionary, :hifwiki, :hiwiki, :hiwikibooks, :hiwikiquote, :hiwiktionary, :howiki, :hrwiki, :hrwikibooks, :hrwikiquote, :hrwikisource, :hrwiktionary, :hsbwiki, :hsbwiktionary, :htwiki, :htwikisource, :huwiki, :huwikibooks, :huwikinews, :huwikiquote, :huwikisource, :huwiktionary, :hywiki, :hywikibooks, :hywikiquote, :hywikisource, :hywiktionary, :hzwiki, :iawiki, :iawikibooks, :iawiktionary, :idwiki, :idwikibooks, :idwikiquote, :idwikisource, :idwiktionary, :iegcomwiki, :iewiki, :iewikibooks, :iewiktionary, :igwiki, :iiwiki, :ikwiki, :ikwiktionary, :ilowiki, :ilwikimedia, :incubatorwiki, :internalwiki, :iowiki, :iowiktionary, :iswiki, :iswikibooks, :iswikiquote, :iswikisource, :iswiktionary, :itwiki, :itwikibooks, :itwikinews, :itwikiquote, :itwikisource, :itwikiversity, :itwikivoyage, :itwiktionary, :iuwiki, :iuwiktionary, :jamwiki, :jawiki, :jawikibooks, :jawikinews, :jawikiquote, :jawikisource, :jawikiversity, :jawiktionary, :jbowiki, :jbowiktionary, :jvwiki, :jvwiktionary, :kaawiki, :kabwiki, :kawiki, :kawikibooks, :kawikiquote, :kawiktionary, :kbdwiki, :kgwiki, :kiwiki, :kjwiki, :kkwiki, :kkwikibooks, :kkwikiquote, :kkwiktionary, :klwiki, :klwiktionary, :kmwiki, :kmwikibooks, :kmwiktionary, :knwiki, :knwikibooks, :knwikiquote, :knwikisource, :knwiktionary, :koiwiki, :kowiki, :kowikibooks, :kowikinews, :kowikiquote, :kowikisource, :kowikiversity, :kowiktionary, :krcwiki, :krwiki, :krwikiquote, :kshwiki, :kswiki, :kswikibooks, :kswikiquote, :kswiktionary, :kuwiki, :kuwikibooks, :kuwikiquote, :kuwiktionary, :kvwiki, :kwwiki, :kwwikiquote, :kwwiktionary, :kywiki, :kywikibooks, :kywikiquote, :kywiktionary, :labswiki, :labtestwiki, :ladwiki, :lawiki, :lawikibooks, :lawikiquote, :lawikisource, :lawiktionary, :lbewiki, :lbwiki, :lbwikibooks, :lbwikiquote, :lbwiktionary, :legalteamwiki, :lezwiki, :lgwiki, :lijwiki, :liwiki, :liwikibooks, :liwikiquote, :liwikisource, :liwiktionary, :lmowiki, :lnwiki, :lnwikibooks, :lnwiktionary, :loginwiki, :lowiki, :lowiktionary, :lrcwiki, :ltgwiki, :ltwiki, :ltwikibooks, :ltwikiquote, :ltwikisource, :ltwiktionary, :lvwiki, :lvwikibooks, :lvwiktionary, :maiwiki, :map_bmswiki, :mdfwiki, :mediawikiwiki, :metawiki, :mgwiki, :mgwikibooks, :mgwiktionary, :mhrwiki, :mhwiki, :mhwiktionary, :minwiki, :miwiki, :miwikibooks, :miwiktionary, :mkwiki, :mkwikibooks, :mkwikimedia, :mkwikisource, :mkwiktionary, :mlwiki, :mlwikibooks, :mlwikiquote, :mlwikisource, :mlwiktionary, :mnwiki, :mnwikibooks, :mnwiktionary, :movementroleswiki, :mowiki, :mowiktionary, :mrjwiki, :mrwiki, :mrwikibooks, :mrwikiquote, :mrwikisource, :mrwiktionary, :mswiki, :mswikibooks, :mswiktionary, :mtwiki, :mtwiktionary, :muswiki, :mwlwiki, :mxwikimedia, :myvwiki, :mywiki, :mywikibooks, :mywiktionary, :mznwiki, :nahwiki, :nahwikibooks, :nahwiktionary, :napwiki, :nawiki, :nawikibooks, :nawikiquote, :nawiktionary, :nds_nlwiki, :ndswiki, :ndswikibooks, :ndswikiquote, :ndswiktionary, :newiki, :newikibooks, :newiktionary, :newwiki, :ngwiki, :nlwiki, :nlwikibooks, :nlwikimedia, :nlwikinews, :nlwikiquote, :nlwikisource, :nlwikivoyage, :nlwiktionary, :nnwiki, :nnwikiquote, :nnwiktionary, :noboard_chapterswikimedia, :nostalgiawiki, :novwiki, :nowiki, :nowikibooks, :nowikimedia, :nowikinews, :nowikiquote, :nowikisource, :nowiktionary, :nrmwiki, :nsowiki, :nvwiki, :nycwikimedia, :nywiki, :nzwikimedia, :ocwiki, :ocwikibooks, :ocwiktionary, :officewiki, :olowiki, :ombudsmenwiki, :omwiki, :omwiktionary, :orwiki, :orwikisource, :orwiktionary, :oswiki, :otrs_wikiwiki, :outreachwiki, :pa_uswikimedia, :pagwiki, :pamwiki, :papwiki, :pawiki, :pawikibooks, :pawiktionary, :pcdwiki, :pdcwiki, :pflwiki, :pihwiki, :piwiki, :piwiktionary, :plwiki, :plwikibooks, :plwikimedia, :plwikinews, :plwikiquote, :plwikisource, :plwikivoyage, :plwiktionary, :pmswiki, :pnbwiki, :pnbwiktionary, :pntwiki, :projectcomwiki, :pswiki, :pswikibooks, :pswiktionary, :ptwiki, :ptwikibooks, :ptwikinews, :ptwikiquote, :ptwikisource, :ptwikiversity, :ptwikivoyage, :ptwiktionary, :qualitywiki, :quwiki, :quwikibooks, :quwikiquote, :quwiktionary, :rmwiki, :rmwikibooks, :rmwiktionary, :rmywiki, :rnwiki, :rnwiktionary, :roa_rupwiki, :roa_rupwiktionary, :roa_tarawiki, :rowiki, :rowikibooks, :rowikinews, :rowikiquote, :rowikisource, :rowikivoyage, :rowiktionary, :rswikimedia, :ruewiki, :ruwiki, :ruwikibooks, :ruwikimedia, :ruwikinews, :ruwikiquote, :ruwikisource, :ruwikiversity, :ruwikivoyage, :ruwiktionary, :rwwiki, :rwwiktionary, :sahwiki, :sahwikisource, :sawiki, :sawikibooks, :sawikiquote, :sawikisource, :sawiktionary, :scnwiki, :scnwiktionary, :scowiki, :scwiki, :scwiktionary, :sdwiki, :sdwikinews, :sdwiktionary, :searchcomwiki, :sewiki, :sewikibooks, :sewikimedia, :sgwiki, :sgwiktionary, :shwiki, :shwiktionary, :simplewiki, :simplewikibooks, :simplewikiquote, :simplewiktionary, :siwiki, :siwikibooks, :siwiktionary, :skwiki, :skwikibooks, :skwikiquote, :skwikisource, :skwiktionary, :slwiki, :slwikibooks, :slwikiquote, :slwikisource, :slwikiversity, :slwiktionary, :smwiki, :smwiktionary, :snwiki, :snwiktionary, :sourceswiki, :sowiki, :sowiktionary, :spcomwiki, :specieswiki, :sqwiki, :sqwikibooks, :sqwikinews, :sqwikiquote, :sqwiktionary, :srnwiki, :srwiki, :srwikibooks, :srwikinews, :srwikiquote, :srwikisource, :srwiktionary, :sswiki, :sswiktionary, :stewardwiki, :stqwiki, :strategywiki, :stwiki, :stwiktionary, :suwiki, :suwikibooks, :suwikiquote, :suwiktionary, :svwiki, :svwikibooks, :svwikinews, :svwikiquote, :svwikisource, :svwikiversity, :svwikivoyage, :svwiktionary, :swwiki, :swwikibooks, :swwiktionary, :szlwiki, :tawiki, :tawikibooks, :tawikinews, :tawikiquote, :tawikisource, :tawiktionary, :tcywiki, :tenwiki, :test2wiki, :testwiki, :testwikidatawiki, :tetwiki, :tewiki, :tewikibooks, :tewikiquote, :tewikisource, :tewiktionary, :tgwiki, :tgwikibooks, :tgwiktionary, :thwiki, :thwikibooks, :thwikinews, :thwikiquote, :thwikisource, :thwiktionary, :tiwiki, :tiwiktionary, :tkwiki, :tkwikibooks, :tkwikiquote, :tkwiktionary, :tlwiki, :tlwikibooks, :tlwiktionary, :tnwiki, :tnwiktionary, :towiki, :towiktionary, :tpiwiki, :tpiwiktionary, :transitionteamwiki, :trwiki, :trwikibooks, :trwikimedia, :trwikinews, :trwikiquote, :trwikisource, :trwiktionary, :tswiki, :tswiktionary, :ttwiki, :ttwikibooks, :ttwikiquote, :ttwiktionary, :tumwiki, :twwiki, :twwiktionary, :tyvwiki, :tywiki, :uawikimedia, :udmwiki, :ugwiki, :ugwikibooks, :ugwikiquote, :ugwiktionary, :ukwiki, :ukwikibooks, :ukwikimedia, :ukwikinews, :ukwikiquote, :ukwikisource, :ukwikivoyage, :ukwiktionary, :urwiki, :urwikibooks, :urwikiquote, :urwiktionary, :usabilitywiki, :uzwiki, :uzwikibooks, :uzwikiquote, :uzwiktionary, :vecwiki, :vecwikisource, :vecwiktionary, :vepwiki, :vewiki, :viwiki, :viwikibooks, :viwikiquote, :viwikisource, :viwikivoyage, :viwiktionary, :vlswiki, :votewiki, :vowiki, :vowikibooks, :vowikiquote, :vowiktionary, :warwiki, :wawiki, :wawikibooks, :wawiktionary, :wg_enwiki, :wikidatawiki, :wikimania2005wiki, :wikimania2006wiki, :wikimania2007wiki, :wikimania2008wiki, :wikimania2009wiki, :wikimania2010wiki, :wikimania2011wiki, :wikimania2012wiki, :wikimania2013wiki, :wikimania2014wiki, :wikimania2015wiki, :wikimania2016wiki, :wikimania2017wiki, :wikimaniateamwiki, :wowiki, :wowikiquote, :wowiktionary, :wuuwiki, :xalwiki, :xhwiki, :xhwikibooks, :xhwiktionary, :xmfwiki, :yiwiki, :yiwikisource, :yiwiktionary, :yowiki, :yowikibooks, :yowiktionary, :zawiki, :zawikibooks, :zawikiquote, :zawiktionary, :zeawiki, :zerowiki, :zh_classicalwiki, :zh_min_nanwiki, :zh_min_nanwikibooks, :zh_min_nanwikiquote, :zh_min_nanwikisource, :zh_min_nanwiktionary, :zh_yuewiki, :zhwiki, :zhwikibooks, :zhwikinews, :zhwikiquote, :zhwikisource, :zhwikivoyage, :zhwiktionary, :zuwiki, :zuwikibooks, :zuwiktionary, :*]]
6
- param :grouppages, Params::Boolean
7
- param :limit, Params::IntegerOrMax
8
- end
9
- end
@@ -1,24 +0,0 @@
1
- module MediaWiktory
2
- class Upload < Action
3
- symbol :upload
4
- post!
5
- param :filename, Params::String
6
- param :comment, Params::String
7
- param :tags, Params::List[Params::Enum[:Noticeboarddisruption, :ProveItedit, :WPCleaner, :huggle, :largeplotaddition]]
8
- param :text, Params::String
9
- param :watch, Params::Boolean
10
- param :watchlist, Params::Enum[:watch, :preferences, :nochange]
11
- param :ignorewarnings, Params::Boolean
12
- param :file, Params::String
13
- param :url, Params::String
14
- param :filekey, Params::String
15
- param :sessionkey, Params::String
16
- param :stash, Params::Boolean
17
- param :filesize, Params::Integer
18
- param :offset, Params::Integer
19
- param :chunk, Params::String
20
- param :async, Params::Boolean
21
- param :checkstatus, Params::Boolean
22
- param :token, Params::String
23
- end
24
- end
@@ -1,19 +0,0 @@
1
- module MediaWiktory
2
- class Usercontribs < MWModule
3
- symbol :usercontribs
4
- prefix "uc"
5
- param :limit, Params::IntegerOrMax
6
- param :start, Params::Timestamp
7
- param :end, Params::Timestamp
8
- param :continue, Params::String
9
- param :user, Params::List[Params::String]
10
- param :userids, Params::List[Params::Integer]
11
- param :userprefix, Params::String
12
- param :dir, Params::Enum[:newer, :older]
13
- param :namespace, Params::List[Params::Enum[:"0", :"1", :"2", :"3", :"4", :"5", :"6", :"7", :"8", :"9", :"10", :"11", :"12", :"13", :"14", :"15", :"100", :"101", :"108", :"109", :"118", :"119", :"446", :"447", :"710", :"711", :"828", :"829", :"2300", :"2301", :"2302", :"2303"]]
14
- param :prop, Params::List[Params::Enum[:ids, :title, :timestamp, :comment, :parsedcomment, :size, :sizediff, :flags, :patrolled, :tags]]
15
- param :show, Params::List[Params::Enum[:minor, :"!minor", :patrolled, :"!patrolled", :top, :"!top", :new, :"!new"]]
16
- param :tag, Params::String
17
- param :toponly, Params::Boolean
18
- end
19
- end
@@ -1,8 +0,0 @@
1
- module MediaWiktory
2
- class Userinfo < MWModule
3
- symbol :userinfo
4
- prefix "ui"
5
- param :prop, Params::List[Params::Enum[:blockinfo, :hasmsg, :groups, :groupmemberships, :implicitgroups, :rights, :changeablegroups, :options, :preferencestoken, :editcount, :ratelimits, :email, :realname, :acceptlang, :registrationdate, :unreadcount, :centralids]]
6
- param :attachedwiki, Params::String
7
- end
8
- end
@@ -1,13 +0,0 @@
1
- module MediaWiktory
2
- class Userrights < Action
3
- symbol :userrights
4
- post!
5
- param :user, Params::String
6
- param :userid, Params::Integer
7
- param :add, Params::List[Params::Enum[:bot, :sysop, :bureaucrat, :reviewer, :steward, :accountcreator, :import, :transwiki, :"ipblock-exempt", :oversight, :founder, :rollbacker, :autoreviewer, :researcher, :filemover, :checkuser, :templateeditor, :"massmessage-sender", :extendedconfirmed, :extendedmover, :patroller, :abusefilter, :epcoordinator, :eponline, :epcampus, :epinstructor, :confirmed]]
8
- param :remove, Params::List[Params::Enum[:bot, :sysop, :bureaucrat, :reviewer, :steward, :accountcreator, :import, :transwiki, :"ipblock-exempt", :oversight, :founder, :rollbacker, :autoreviewer, :researcher, :filemover, :checkuser, :templateeditor, :"massmessage-sender", :extendedconfirmed, :extendedmover, :patroller, :abusefilter, :epcoordinator, :eponline, :epcampus, :epinstructor, :confirmed]]
9
- param :reason, Params::String
10
- param :token, Params::String
11
- param :tags, Params::List[Params::Enum[:Noticeboarddisruption, :ProveItedit, :WPCleaner, :huggle, :largeplotaddition]]
12
- end
13
- end
@@ -1,11 +0,0 @@
1
- module MediaWiktory
2
- class Users < MWModule
3
- symbol :users
4
- prefix "us"
5
- param :prop, Params::List[Params::Enum[:blockinfo, :groups, :groupmemberships, :implicitgroups, :rights, :editcount, :registration, :emailable, :gender, :centralids, :cancreate]]
6
- param :attachedwiki, Params::String
7
- param :users, Params::List[Params::String]
8
- param :userids, Params::List[Params::Integer]
9
- param :token, Params::List[Params::Enum[:userrights]]
10
- end
11
- end
@@ -1,10 +0,0 @@
1
- module MediaWiktory
2
- class Validatepassword < Action
3
- symbol :validatepassword
4
- post!
5
- param :password, Params::String
6
- param :user, Params::String
7
- param :email, Params::String
8
- param :realname, Params::String
9
- end
10
- end
@@ -1,20 +0,0 @@
1
- module MediaWiktory
2
- class Videoinfo < MWModule
3
- symbol :videoinfo
4
- prefix "vi"
5
- param :prop, Params::List[Params::Enum[:timestamp, :user, :userid, :comment, :parsedcomment, :canonicaltitle, :url, :size, :dimensions, :sha1, :mime, :thumbmime, :mediatype, :metadata, :commonmetadata, :extmetadata, :archivename, :bitdepth, :uploadwarning, :badfile, :derivatives, :timedtext]]
6
- param :limit, Params::IntegerOrMax
7
- param :start, Params::Timestamp
8
- param :end, Params::Timestamp
9
- param :urlwidth, Params::Integer
10
- param :urlheight, Params::Integer
11
- param :metadataversion, Params::String
12
- param :extmetadatalanguage, Params::String
13
- param :extmetadatamultilang, Params::Boolean
14
- param :extmetadatafilter, Params::List[Params::String]
15
- param :urlparam, Params::String
16
- param :badfilecontexttitle, Params::String
17
- param :continue, Params::String
18
- param :localonly, Params::String
19
- end
20
- end
@@ -1,13 +0,0 @@
1
- module MediaWiktory
2
- class Visualeditor < Action
3
- symbol :visualeditor
4
- param :page, Params::String
5
- param :format, Params::Enum[:json, :jsonfm]
6
- param :paction, Params::Enum[:parse, :metadata, :wikitext, :parsefragment, :getlanglinks]
7
- param :wikitext, Params::String
8
- param :section, Params::String
9
- param :oldid, Params::String
10
- param :editintro, Params::String
11
- param :pst, Params::Boolean
12
- end
13
- end
@@ -1,23 +0,0 @@
1
- module MediaWiktory
2
- class Visualeditoredit < Action
3
- symbol :visualeditoredit
4
- post!
5
- param :paction, Params::Enum[:serialize, :serializeforcache, :diff, :save]
6
- param :page, Params::String
7
- param :token, Params::String
8
- param :wikitext, Params::String
9
- param :section, Params::String
10
- param :sectiontitle, Params::String
11
- param :basetimestamp, Params::String
12
- param :starttimestamp, Params::String
13
- param :oldid, Params::String
14
- param :minor, Params::String
15
- param :watch, Params::String
16
- param :html, Params::String
17
- param :etag, Params::String
18
- param :summary, Params::String
19
- param :captchaid, Params::String
20
- param :captchaword, Params::String
21
- param :cachekey, Params::String
22
- end
23
- end
@@ -1,16 +0,0 @@
1
- module MediaWiktory
2
- class Watch < Action
3
- symbol :watch
4
- post!
5
- param :title, Params::String
6
- param :unwatch, Params::Boolean
7
- param :continue, Params::String
8
- param :titles, Params::List[Params::String]
9
- param :pageids, Params::List[Params::Integer]
10
- param :revids, Params::List[Params::Integer]
11
- param :generator, Params::Module[:allcategories, :alldeletedrevisions, :allfileusages, :allimages, :alllinks, :allpages, :allredirects, :allrevisions, :alltransclusions, :backlinks, :categories, :categorymembers, :contenttranslation, :contenttranslationsuggestions, :deletedrevisions, :duplicatefiles, :embeddedin, :exturlusage, :fileusage, :geosearch, :gettingstartedgetpages, :images, :imageusage, :iwbacklinks, :langbacklinks, :links, :linkshere, :mostviewed, :oldreviewedpages, :pageswithprop, :prefixsearch, :projectpages, :protectedtitles, :querypage, :random, :recentchanges, :redirects, :revisions, :search, :templates, :transcludedin, :watchlist, :watchlistraw, :wblistentityusage]
12
- param :redirects, Params::Boolean
13
- param :converttitles, Params::Boolean
14
- param :token, Params::String
15
- end
16
- end
@@ -1,20 +0,0 @@
1
- module MediaWiktory
2
- class Watchlist < MWModule
3
- symbol :watchlist
4
- prefix "wl"
5
- param :allrev, Params::Boolean
6
- param :start, Params::Timestamp
7
- param :end, Params::Timestamp
8
- param :namespace, Params::List[Params::Enum[:"0", :"1", :"2", :"3", :"4", :"5", :"6", :"7", :"8", :"9", :"10", :"11", :"12", :"13", :"14", :"15", :"100", :"101", :"108", :"109", :"118", :"119", :"446", :"447", :"710", :"711", :"828", :"829", :"2300", :"2301", :"2302", :"2303"]]
9
- param :user, Params::String
10
- param :excludeuser, Params::String
11
- param :dir, Params::Enum[:newer, :older]
12
- param :limit, Params::IntegerOrMax
13
- param :prop, Params::List[Params::Enum[:ids, :title, :flags, :user, :userid, :comment, :parsedcomment, :timestamp, :patrol, :sizes, :notificationtimestamp, :loginfo]]
14
- param :show, Params::List[Params::Enum[:minor, :"!minor", :bot, :"!bot", :anon, :"!anon", :patrolled, :"!patrolled", :unread, :"!unread"]]
15
- param :type, Params::List[Params::Enum[:edit, :new, :log, :external, :categorize]]
16
- param :owner, Params::String
17
- param :token, Params::String
18
- param :continue, Params::String
19
- end
20
- end
@@ -1,16 +0,0 @@
1
- module MediaWiktory
2
- class Watchlistraw < MWModule
3
- symbol :watchlistraw
4
- prefix "wr"
5
- param :continue, Params::String
6
- param :namespace, Params::List[Params::Enum[:"0", :"1", :"2", :"3", :"4", :"5", :"6", :"7", :"8", :"9", :"10", :"11", :"12", :"13", :"14", :"15", :"100", :"101", :"108", :"109", :"118", :"119", :"446", :"447", :"710", :"711", :"828", :"829", :"2300", :"2301", :"2302", :"2303"]]
7
- param :limit, Params::IntegerOrMax
8
- param :prop, Params::List[Params::Enum[:changed]]
9
- param :show, Params::List[Params::Enum[:changed, :"!changed"]]
10
- param :owner, Params::String
11
- param :token, Params::String
12
- param :dir, Params::Enum[:ascending, :descending]
13
- param :fromtitle, Params::String
14
- param :totitle, Params::String
15
- end
16
- end
@@ -1,11 +0,0 @@
1
- module MediaWiktory
2
- class Wbentityusage < MWModule
3
- symbol :wbentityusage
4
- prefix "wbeu"
5
- param :prop, Params::List[Params::Enum[:url]]
6
- param :aspect, Params::List[Params::Enum[:S, :L, :T, :X, :O]]
7
- param :entities, Params::List[Params::String]
8
- param :limit, Params::IntegerOrMax
9
- param :continue, Params::String
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- module MediaWiktory
2
- class Wblistentityusage < MWModule
3
- symbol :wblistentityusage
4
- prefix "wbeu"
5
- param :prop, Params::List[Params::Enum[:url]]
6
- param :aspect, Params::List[Params::Enum[:S, :L, :T, :X, :O]]
7
- param :entities, Params::List[Params::String]
8
- param :limit, Params::IntegerOrMax
9
- param :continue, Params::String
10
- end
11
- end
@@ -1,5 +0,0 @@
1
- module MediaWiktory
2
- class WebappManifest < Action
3
- symbol :"webapp-manifest"
4
- end
5
- end
@@ -1,7 +0,0 @@
1
- module MediaWiktory
2
- class Wikibase < MWModule
3
- symbol :wikibase
4
- prefix "wb"
5
- param :prop, Params::List[Params::Enum[:url, :siteid]]
6
- end
7
- end
@@ -1,13 +0,0 @@
1
- module MediaWiktory
2
- class Wikilove < Action
3
- symbol :wikilove
4
- post!
5
- param :title, Params::String
6
- param :text, Params::String
7
- param :message, Params::String
8
- param :token, Params::String
9
- param :subject, Params::String
10
- param :type, Params::String
11
- param :email, Params::String
12
- end
13
- end
@@ -1,10 +0,0 @@
1
- module MediaWiktory
2
- class Wikisets < MWModule
3
- symbol :wikisets
4
- prefix "ws"
5
- param :from, Params::String
6
- param :prop, Params::List[Params::Enum[:type, :wikisincluded, :wikisnotincluded]]
7
- param :limit, Params::IntegerOrMax
8
- param :orderbyname, Params::Boolean
9
- end
10
- end
@@ -1,7 +0,0 @@
1
- module MediaWiktory
2
- class Zeroconfig < Action
3
- symbol :zeroconfig
4
- param :type, Params::Enum[:config, :message]
5
- param :agent, Params::String
6
- end
7
- end
@@ -1,324 +0,0 @@
1
- module MediaWiktory
2
- module Params
3
- class Param
4
- attr_reader :name, :value
5
-
6
- def initialize(name, value = nil)
7
- @name = name
8
- self.value = value if value
9
- end
10
-
11
- def value=(val)
12
- valid?(val) or
13
- fail(ArgumentError, "Invalid value #{val.inspect} for param #{name} (#{self.class})")
14
-
15
- @value = val
16
- end
17
-
18
- def to_param(prefix = nil)
19
- {"#{prefix}#{name}" => value_to_param}
20
- end
21
-
22
- def value_to_param
23
- value.to_s
24
- end
25
-
26
- def self.valid?(val)
27
- true
28
- end
29
-
30
- def valid?(val)
31
- self.class.valid?(val)
32
- end
33
- end
34
-
35
- class String < Param
36
- def self.valid?(val)
37
- val.kind_of?(::String)
38
- end
39
- end
40
-
41
- class Boolean < Param
42
- def self.valid?(val)
43
- [true, false].include?(val)
44
- end
45
- end
46
-
47
- class Integer < Param
48
- def self.valid?(val)
49
- val.kind_of?(::Integer)
50
- end
51
- end
52
-
53
- class IntegerOrMax < Integer
54
- def self.valid?(val)
55
- super || val == 'max'
56
- end
57
- end
58
-
59
- class Timestamp < Param
60
- def self.valid?(val)
61
- val.kind_of?(::Time)
62
- end
63
-
64
- def value_to_param
65
- value.iso8601
66
- end
67
- end
68
-
69
- class Enum < Param
70
- class << self
71
- def [](*values)
72
- Class.new(self){
73
- self.allowed_values = values
74
- }
75
- end
76
-
77
- attr_accessor :allowed_values
78
-
79
- def inspect
80
- "#<Enum#{allowed_values}>"
81
- end
82
-
83
- alias_method :to_s, :inspect
84
- end
85
-
86
- def self.valid?(val)
87
- allowed_values or fail(NotImplementedError, "Abstract enum used as a param type")
88
- allowed_values.include?(val)
89
- end
90
- end
91
-
92
- class List < Param
93
- class << self
94
- def [](type)
95
- Class.new(self){
96
- self.member_type = type
97
- }
98
- end
99
-
100
- attr_accessor :member_type
101
-
102
- def inspect
103
- "#<List[#{member_type}]>"
104
- end
105
-
106
- alias_method :to_s, :inspect
107
- end
108
-
109
- def value=(val)
110
- super([*val])
111
- end
112
-
113
- def self.valid?(val)
114
- member_type or fail(NotImplementedError, "Abstract list used as param type")
115
- val.is_a?(Array) && val.all?{|v| member_type.valid?(v)}
116
- end
117
-
118
- def value_to_param
119
- value.join('|')
120
- end
121
- end
122
-
123
- class Module < Param
124
- class << self
125
- def [](*values)
126
- Class.new(self){
127
- self.allowed_values = values
128
- }
129
- end
130
-
131
- attr_accessor :allowed_values
132
- end
133
-
134
- def value=(val)
135
- super(val && MWModule.coerce(val))
136
- end
137
-
138
- def to_param(prefix = nil)
139
- {"#{prefix}#{name}" => value.class.symbol.to_s}.merge(value_to_param)
140
- end
141
-
142
- def value_to_param
143
- if name == :generator
144
- value.to_param.map{|k, v| ["g#{k}", v]}.to_h
145
- else
146
- value.to_param
147
- end
148
- end
149
-
150
- def self.valid?(val)
151
- allowed_values or fail(NotImplementedError, "Abstract module used as a param type")
152
- allowed_values.include?(val.class.symbol)
153
- end
154
- end
155
-
156
- class Modules < Param
157
- class << self
158
- def [](*values)
159
- Class.new(self){
160
- self.allowed_values = values
161
- }
162
- end
163
-
164
- attr_accessor :allowed_values
165
- end
166
-
167
- def value=(val)
168
- super(val && coerce_modules(val))
169
- end
170
-
171
- def to_param(prefix = nil)
172
- {
173
- "#{prefix}#{name}" => value.map{|v|v.class.symbol}.join('|')
174
- }.merge(value_to_param)
175
- end
176
-
177
- def value_to_param
178
- if name == :generator
179
- value.map(&:to_param).inject({}, :merge).
180
- map{|k, v| ["g#{k}", v]}.to_h
181
- else
182
- value.map(&:to_param).inject({}, :merge)
183
- end
184
- end
185
-
186
- def self.valid?(val)
187
- allowed_values or fail(NotImplementedError, "Abstract module used as a param type")
188
- val.all?{|v| allowed_values.include?(v.class.symbol)}
189
- end
190
-
191
- private
192
-
193
- def coerce_modules(value)
194
- # making array of 1-item hashes
195
- [*value].map{|val|
196
- case val
197
- when Symbol
198
- {val => {}}
199
- when Hash
200
- val.map{|k, v| {k => v}}
201
- when MWModule
202
- val
203
- else
204
- fail(ArgumentError, "#{val} can not be coerced into module")
205
- end
206
- }.flatten.map{|h| MWModule.coerce(h)}
207
- end
208
- end
209
- end
210
-
211
- class MWModule
212
-
213
- class << self
214
- def list
215
- @list ||= {}
216
- end
217
-
218
- def symbol(sym = nil)
219
- return @symbol unless sym
220
- @symbol = sym
221
- MWModule.list[sym] = self
222
- end
223
-
224
- def prefix(pref = nil)
225
- return @prefix unless pref
226
- @prefix = pref
227
- end
228
-
229
- def coerce(value)
230
- case value
231
- when Symbol
232
- MWModule.list.key?(value) or
233
- fail(ArgumentError, "Unsupported module: #{value} for #{self}")
234
- MWModule.list[value].new
235
-
236
- when Hash
237
- value.count == 1 or
238
- fail(ArgumentError, "Too many values for module initialization")
239
-
240
- name, attr = value.first
241
- MWModule.list.key?(name) or
242
- fail(ArgumentError, "Unsupported module: #{name} for #{self}")
243
-
244
- attr.is_a?(Hash) or
245
- fail(ArgumentError, "Module only can be initialized with a hash, #{attr.class} given")
246
-
247
- MWModule.list[name].new(attr)
248
- when MWModule
249
- value
250
- else
251
- fail ArgumentError, "Can not coerce #{value} into module"
252
- end
253
- end
254
-
255
- def params
256
- @params ||= {}
257
- end
258
-
259
- def param(name, type)
260
- params[name] = type
261
-
262
- define_method(name){|*arg|
263
- return param(name).value if arg.empty?
264
-
265
- dup.tap{|dup|
266
- case
267
- when type.ancestors.include?(Params::List) ||
268
- type.ancestors.include?(Params::Modules)
269
- dup.param(name).value = arg.flatten
270
- else
271
- dup.param(name).value = arg.first
272
- end
273
- }
274
- }
275
- end
276
-
277
- def request_method
278
- @request_method || :get
279
- end
280
-
281
- def post!
282
- @request_method = :post
283
- end
284
- end
285
-
286
- def initialize(**values)
287
- @params = Hash.new{|h, name|
288
- self.class.params.key?(name) or
289
- fail(ArgumentError, "Unknown param: #{name} for #{self}")
290
- h[name] = self.class.params[name].new(name)
291
- }
292
-
293
- values.each do |k, v|
294
- set(k, v)
295
- end
296
- end
297
-
298
- def dup
299
- self.class.new(to_h)
300
- end
301
-
302
- def to_h
303
- @params.map{|n, p| [n, p.value]}.to_h
304
- end
305
-
306
- def param(name)
307
- @params[name]
308
- end
309
-
310
- def to_param
311
- @params.values.
312
- map{|p| p.to_param(self.class.prefix)}.
313
- inject({}, :merge)
314
- end
315
-
316
- protected
317
-
318
- def set(name, value)
319
- self.class.params.key?(name) or
320
- fail(ArgumentError, "Unknown param: #{name} for #{self}")
321
- @params[name] = self.class.params[name].new(name, value)
322
- end
323
- end
324
- end