mediawiktory 0.0.3 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.dokaz +1 -0
- data/.rubocop_todo.yml +16 -0
- data/.yardopts +2 -0
- data/CHANGELOG.md +10 -4
- data/CONTRIBUTING.md +6 -9
- data/README.md +153 -72
- data/bin/mediawiktory-gen +35 -0
- data/lib/media_wiktory.rb +2 -0
- data/lib/mediawiktory.rb +13 -14
- data/lib/mediawiktory/generator.rb +107 -0
- data/lib/mediawiktory/generator/api.rb +75 -0
- data/lib/mediawiktory/generator/module.rb +105 -0
- data/lib/mediawiktory/generator/param.rb +271 -0
- data/lib/mediawiktory/generator/renderable.rb +59 -0
- data/lib/mediawiktory/generator/templates/_action_method.erb +20 -0
- data/lib/mediawiktory/generator/templates/_module_in_param_docs.erb +2 -0
- data/lib/mediawiktory/generator/templates/_param_impl_boolean.erb +1 -0
- data/lib/mediawiktory/generator/templates/_param_impl_enum.erb +1 -0
- data/lib/mediawiktory/generator/templates/_param_impl_enum_of_modules.erb +1 -0
- data/lib/mediawiktory/generator/templates/_param_impl_string.erb +1 -0
- data/lib/mediawiktory/generator/templates/_param_impl_timestamp.erb +1 -0
- data/lib/mediawiktory/generator/templates/_param_method.erb +14 -0
- data/lib/mediawiktory/generator/templates/action.rb.erb +204 -0
- data/lib/mediawiktory/generator/templates/action_class.rb.erb +30 -0
- data/lib/mediawiktory/generator/templates/actions.rb.erb +31 -0
- data/lib/mediawiktory/generator/templates/api.rb.erb +65 -0
- data/lib/mediawiktory/{client.rb → generator/templates/client.rb.erb} +24 -10
- data/lib/mediawiktory/generator/templates/module_class.rb.erb +22 -0
- data/lib/mediawiktory/generator/templates/response.rb.erb +122 -0
- data/lib/mediawiktory/version.rb +4 -2
- data/lib/mediawiktory/wikipedia/actions.rb +2296 -0
- data/lib/mediawiktory/wikipedia/actions/abusefiltercheckmatch.rb +55 -0
- data/lib/mediawiktory/wikipedia/actions/abusefilterchecksyntax.rb +31 -0
- data/lib/mediawiktory/wikipedia/actions/abusefilterevalexpression.rb +31 -0
- data/lib/mediawiktory/wikipedia/actions/abusefilterunblockautopromote.rb +39 -0
- data/lib/mediawiktory/wikipedia/actions/addstudents.rb +52 -0
- data/lib/mediawiktory/wikipedia/actions/antispoof.rb +31 -0
- data/lib/mediawiktory/wikipedia/actions/base.rb +351 -0
- data/lib/mediawiktory/wikipedia/actions/block.rb +132 -0
- data/lib/mediawiktory/wikipedia/actions/bouncehandler.rb +31 -0
- data/lib/mediawiktory/wikipedia/actions/categorytree.rb +39 -0
- data/lib/mediawiktory/wikipedia/actions/centralauthtoken.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/centralnoticechoicedata.rb +39 -0
- data/lib/mediawiktory/wikipedia/actions/centralnoticequerycampaign.rb +31 -0
- data/lib/mediawiktory/wikipedia/actions/changeauthenticationdata.rb +39 -0
- data/lib/mediawiktory/wikipedia/actions/checktoken.rb +52 -0
- data/lib/mediawiktory/wikipedia/actions/cirrus-config-dump.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/cirrus-mapping-dump.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/cirrus-settings-dump.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/clearhasmsg.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/clientlogin.rb +86 -0
- data/lib/mediawiktory/wikipedia/actions/compare.rb +71 -0
- data/lib/mediawiktory/wikipedia/actions/createaccount.rb +86 -0
- data/lib/mediawiktory/wikipedia/actions/cspreport.rb +38 -0
- data/lib/mediawiktory/wikipedia/actions/cxconfiguration.rb +39 -0
- data/lib/mediawiktory/wikipedia/actions/cxdelete.rb +55 -0
- data/lib/mediawiktory/wikipedia/actions/cxpublish.rb +95 -0
- data/lib/mediawiktory/wikipedia/actions/cxsave.rb +87 -0
- data/lib/mediawiktory/wikipedia/actions/cxsuggestionlist.rb +81 -0
- data/lib/mediawiktory/wikipedia/actions/cxtoken.rb +31 -0
- data/lib/mediawiktory/wikipedia/actions/delete.rb +103 -0
- data/lib/mediawiktory/wikipedia/actions/deleteeducation.rb +65 -0
- data/lib/mediawiktory/wikipedia/actions/deleteglobalaccount.rb +47 -0
- data/lib/mediawiktory/wikipedia/actions/echomarkread.rb +77 -0
- data/lib/mediawiktory/wikipedia/actions/echomarkseen.rb +57 -0
- data/lib/mediawiktory/wikipedia/actions/edit.rb +266 -0
- data/lib/mediawiktory/wikipedia/actions/editmassmessagelist.rb +65 -0
- data/lib/mediawiktory/wikipedia/actions/emailuser.rb +62 -0
- data/lib/mediawiktory/wikipedia/actions/enlist.rb +89 -0
- data/lib/mediawiktory/wikipedia/actions/expandtemplates.rb +129 -0
- data/lib/mediawiktory/wikipedia/actions/fancycaptchareload.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/featuredfeed.rb +57 -0
- data/lib/mediawiktory/wikipedia/actions/feedcontributions.rb +121 -0
- data/lib/mediawiktory/wikipedia/actions/feedrecentchanges.rb +159 -0
- data/lib/mediawiktory/wikipedia/actions/feedwatchlist.rb +108 -0
- data/lib/mediawiktory/wikipedia/actions/filerevert.rb +55 -0
- data/lib/mediawiktory/wikipedia/actions/flagconfig.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/globalblock.rb +76 -0
- data/lib/mediawiktory/wikipedia/actions/globaluserrights.rb +94 -0
- data/lib/mediawiktory/wikipedia/actions/graph.rb +47 -0
- data/lib/mediawiktory/wikipedia/actions/help.rb +64 -0
- data/lib/mediawiktory/wikipedia/actions/imagerotate.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/import.rb +116 -0
- data/lib/mediawiktory/wikipedia/actions/jsonconfig.rb +60 -0
- data/lib/mediawiktory/wikipedia/actions/jsondata.rb +31 -0
- data/lib/mediawiktory/wikipedia/actions/languagesearch.rb +39 -0
- data/lib/mediawiktory/wikipedia/actions/linkaccount.rb +79 -0
- data/lib/mediawiktory/wikipedia/actions/liststudents.rb +63 -0
- data/lib/mediawiktory/wikipedia/actions/login.rb +55 -0
- data/lib/mediawiktory/wikipedia/actions/logout.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/managetags.rb +80 -0
- data/lib/mediawiktory/wikipedia/actions/massmessage.rb +55 -0
- data/lib/mediawiktory/wikipedia/actions/mergehistory.rb +79 -0
- data/lib/mediawiktory/wikipedia/actions/mobileview.rb +170 -0
- data/lib/mediawiktory/wikipedia/actions/move.rb +131 -0
- data/lib/mediawiktory/wikipedia/actions/oathvalidate.rb +47 -0
- data/lib/mediawiktory/wikipedia/actions/opensearch.rb +105 -0
- data/lib/mediawiktory/wikipedia/actions/options.rb +80 -0
- data/lib/mediawiktory/wikipedia/actions/pagetriageaction.rb +67 -0
- data/lib/mediawiktory/wikipedia/actions/pagetriagelist.rb +142 -0
- data/lib/mediawiktory/wikipedia/actions/pagetriagestats.rb +59 -0
- data/lib/mediawiktory/wikipedia/actions/pagetriagetagging.rb +83 -0
- data/lib/mediawiktory/wikipedia/actions/pagetriagetemplate.rb +39 -0
- data/lib/mediawiktory/wikipedia/actions/paraminfo.rb +91 -0
- data/lib/mediawiktory/wikipedia/actions/parse.rb +286 -0
- data/lib/mediawiktory/wikipedia/actions/parsoid-batch.rb +31 -0
- data/lib/mediawiktory/wikipedia/actions/patrol.rb +60 -0
- data/lib/mediawiktory/wikipedia/actions/protect.rb +121 -0
- data/lib/mediawiktory/wikipedia/actions/purge.rb +155 -0
- data/lib/mediawiktory/wikipedia/actions/query.rb +325 -0
- data/lib/mediawiktory/wikipedia/actions/refresheducation.rb +57 -0
- data/lib/mediawiktory/wikipedia/actions/removeauthenticationdata.rb +39 -0
- data/lib/mediawiktory/wikipedia/actions/resetpassword.rb +47 -0
- data/lib/mediawiktory/wikipedia/actions/review.rb +54 -0
- data/lib/mediawiktory/wikipedia/actions/reviewactivity.rb +60 -0
- data/lib/mediawiktory/wikipedia/actions/revisiondelete.rb +125 -0
- data/lib/mediawiktory/wikipedia/actions/rollback.rb +96 -0
- data/lib/mediawiktory/wikipedia/actions/rsd.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/sanitize-mapdata.rb +39 -0
- data/lib/mediawiktory/wikipedia/actions/scribunto-console.rb +62 -0
- data/lib/mediawiktory/wikipedia/actions/setglobalaccountstatus.rb +81 -0
- data/lib/mediawiktory/wikipedia/actions/setnotificationtimestamp.rb +180 -0
- data/lib/mediawiktory/wikipedia/actions/setpagelanguage.rb +81 -0
- data/lib/mediawiktory/wikipedia/actions/shortenurl.rb +31 -0
- data/lib/mediawiktory/wikipedia/actions/sitematrix.rb +91 -0
- data/lib/mediawiktory/wikipedia/actions/spamblacklist.rb +36 -0
- data/lib/mediawiktory/wikipedia/actions/stabilize.rb +76 -0
- data/lib/mediawiktory/wikipedia/actions/stashedit.rb +113 -0
- data/lib/mediawiktory/wikipedia/actions/strikevote.rb +60 -0
- data/lib/mediawiktory/wikipedia/actions/tag.rb +117 -0
- data/lib/mediawiktory/wikipedia/actions/templatedata.rb +148 -0
- data/lib/mediawiktory/wikipedia/actions/thank.rb +47 -0
- data/lib/mediawiktory/wikipedia/actions/titleblacklist.rb +51 -0
- data/lib/mediawiktory/wikipedia/actions/tokens.rb +36 -0
- data/lib/mediawiktory/wikipedia/actions/transcodereset.rb +47 -0
- data/lib/mediawiktory/wikipedia/actions/ulslocalization.rb +31 -0
- data/lib/mediawiktory/wikipedia/actions/unblock.rb +76 -0
- data/lib/mediawiktory/wikipedia/actions/undelete.rb +99 -0
- data/lib/mediawiktory/wikipedia/actions/unlinkaccount.rb +39 -0
- data/lib/mediawiktory/wikipedia/actions/upload.rb +172 -0
- data/lib/mediawiktory/wikipedia/actions/userrights.rb +107 -0
- data/lib/mediawiktory/wikipedia/actions/validatepassword.rb +55 -0
- data/lib/mediawiktory/wikipedia/actions/visualeditor.rb +96 -0
- data/lib/mediawiktory/wikipedia/actions/visualeditoredit.rb +164 -0
- data/lib/mediawiktory/wikipedia/actions/watch.rb +164 -0
- data/lib/mediawiktory/wikipedia/actions/webapp-manifest.rb +25 -0
- data/lib/mediawiktory/wikipedia/actions/wikilove.rb +79 -0
- data/lib/mediawiktory/wikipedia/actions/zeroconfig.rb +44 -0
- data/lib/mediawiktory/wikipedia/api.rb +80 -0
- data/lib/mediawiktory/wikipedia/client.rb +61 -0
- data/lib/mediawiktory/wikipedia/modules/abusefilters.rb +85 -0
- data/lib/mediawiktory/wikipedia/modules/abuselog.rb +101 -0
- data/lib/mediawiktory/wikipedia/modules/allcategories.rb +104 -0
- data/lib/mediawiktory/wikipedia/modules/alldeletedrevisions.rb +213 -0
- data/lib/mediawiktory/wikipedia/modules/allfileusages.rb +95 -0
- data/lib/mediawiktory/wikipedia/modules/allimages.rb +183 -0
- data/lib/mediawiktory/wikipedia/modules/alllinks.rb +108 -0
- data/lib/mediawiktory/wikipedia/modules/allmessages.rb +143 -0
- data/lib/mediawiktory/wikipedia/modules/allpages.rb +182 -0
- data/lib/mediawiktory/wikipedia/modules/allredirects.rb +108 -0
- data/lib/mediawiktory/wikipedia/modules/allrevisions.rb +181 -0
- data/lib/mediawiktory/wikipedia/modules/alltransclusions.rb +108 -0
- data/lib/mediawiktory/wikipedia/modules/allusers.rb +141 -0
- data/lib/mediawiktory/wikipedia/modules/authmanagerinfo.rb +63 -0
- data/lib/mediawiktory/wikipedia/modules/babel.rb +30 -0
- data/lib/mediawiktory/wikipedia/modules/backlinks.rb +100 -0
- data/lib/mediawiktory/wikipedia/modules/betafeatures.rb +30 -0
- data/lib/mediawiktory/wikipedia/modules/blocks.rb +127 -0
- data/lib/mediawiktory/wikipedia/modules/categories.rb +90 -0
- data/lib/mediawiktory/wikipedia/modules/categoryinfo.rb +30 -0
- data/lib/mediawiktory/wikipedia/modules/categorymembers.rb +183 -0
- data/lib/mediawiktory/wikipedia/modules/centralnoticelogs.rb +70 -0
- data/lib/mediawiktory/wikipedia/modules/checkuser.rb +83 -0
- data/lib/mediawiktory/wikipedia/modules/checkuserlog.rb +83 -0
- data/lib/mediawiktory/wikipedia/modules/contenttranslation.rb +83 -0
- data/lib/mediawiktory/wikipedia/modules/contenttranslationcorpora.rb +50 -0
- data/lib/mediawiktory/wikipedia/modules/contenttranslationlangtrend.rb +51 -0
- data/lib/mediawiktory/wikipedia/modules/contenttranslationstats.rb +22 -0
- data/lib/mediawiktory/wikipedia/modules/contenttranslationsuggestions.rb +70 -0
- data/lib/mediawiktory/wikipedia/modules/contributors.rb +90 -0
- data/lib/mediawiktory/wikipedia/modules/coordinates.rb +80 -0
- data/lib/mediawiktory/wikipedia/modules/cxpublishedtranslations.rb +54 -0
- data/lib/mediawiktory/wikipedia/modules/cxtranslatorstats.rb +30 -0
- data/lib/mediawiktory/wikipedia/modules/deletedrevisions.rb +169 -0
- data/lib/mediawiktory/wikipedia/modules/deletedrevs.rb +148 -0
- data/lib/mediawiktory/wikipedia/modules/duplicatefiles.rb +58 -0
- data/lib/mediawiktory/wikipedia/modules/embeddedin.rb +93 -0
- data/lib/mediawiktory/wikipedia/modules/extlinks.rb +66 -0
- data/lib/mediawiktory/wikipedia/modules/extracts.rb +81 -0
- data/lib/mediawiktory/wikipedia/modules/exturlusage.rb +92 -0
- data/lib/mediawiktory/wikipedia/modules/featureusage.rb +59 -0
- data/lib/mediawiktory/wikipedia/modules/filearchive.rb +104 -0
- data/lib/mediawiktory/wikipedia/modules/filerepoinfo.rb +35 -0
- data/lib/mediawiktory/wikipedia/modules/fileusage.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/flagged.rb +22 -0
- data/lib/mediawiktory/wikipedia/modules/g-allcategories.rb +91 -0
- data/lib/mediawiktory/wikipedia/modules/g-alldeletedrevisions.rb +200 -0
- data/lib/mediawiktory/wikipedia/modules/g-allfileusages.rb +82 -0
- data/lib/mediawiktory/wikipedia/modules/g-allimages.rb +170 -0
- data/lib/mediawiktory/wikipedia/modules/g-alllinks.rb +95 -0
- data/lib/mediawiktory/wikipedia/modules/g-allpages.rb +182 -0
- data/lib/mediawiktory/wikipedia/modules/g-allredirects.rb +95 -0
- data/lib/mediawiktory/wikipedia/modules/g-allrevisions.rb +168 -0
- data/lib/mediawiktory/wikipedia/modules/g-alltransclusions.rb +95 -0
- data/lib/mediawiktory/wikipedia/modules/g-backlinks.rb +100 -0
- data/lib/mediawiktory/wikipedia/modules/g-categories.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/g-categorymembers.rb +170 -0
- data/lib/mediawiktory/wikipedia/modules/g-contenttranslation.rb +83 -0
- data/lib/mediawiktory/wikipedia/modules/g-contenttranslationsuggestions.rb +70 -0
- data/lib/mediawiktory/wikipedia/modules/g-deletedrevisions.rb +156 -0
- data/lib/mediawiktory/wikipedia/modules/g-duplicatefiles.rb +58 -0
- data/lib/mediawiktory/wikipedia/modules/g-embeddedin.rb +93 -0
- data/lib/mediawiktory/wikipedia/modules/g-exturlusage.rb +79 -0
- data/lib/mediawiktory/wikipedia/modules/g-fileusage.rb +64 -0
- data/lib/mediawiktory/wikipedia/modules/g-geosearch.rb +116 -0
- data/lib/mediawiktory/wikipedia/modules/g-gettingstartedgetpages.rb +46 -0
- data/lib/mediawiktory/wikipedia/modules/g-images.rb +64 -0
- data/lib/mediawiktory/wikipedia/modules/g-imageusage.rb +100 -0
- data/lib/mediawiktory/wikipedia/modules/g-iwbacklinks.rb +67 -0
- data/lib/mediawiktory/wikipedia/modules/g-langbacklinks.rb +67 -0
- data/lib/mediawiktory/wikipedia/modules/g-links.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/g-linkshere.rb +64 -0
- data/lib/mediawiktory/wikipedia/modules/g-mostviewed.rb +51 -0
- data/lib/mediawiktory/wikipedia/modules/g-oldreviewedpages.rb +114 -0
- data/lib/mediawiktory/wikipedia/modules/g-pageswithprop.rb +59 -0
- data/lib/mediawiktory/wikipedia/modules/g-prefixsearch.rb +72 -0
- data/lib/mediawiktory/wikipedia/modules/g-projectpages.rb +58 -0
- data/lib/mediawiktory/wikipedia/modules/g-protectedtitles.rb +93 -0
- data/lib/mediawiktory/wikipedia/modules/g-querypage.rb +51 -0
- data/lib/mediawiktory/wikipedia/modules/g-random.rb +71 -0
- data/lib/mediawiktory/wikipedia/modules/g-recentchanges.rb +157 -0
- data/lib/mediawiktory/wikipedia/modules/g-redirects.rb +64 -0
- data/lib/mediawiktory/wikipedia/modules/g-revisions.rb +185 -0
- data/lib/mediawiktory/wikipedia/modules/g-search.rb +112 -0
- data/lib/mediawiktory/wikipedia/modules/g-templates.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/g-transcludedin.rb +64 -0
- data/lib/mediawiktory/wikipedia/modules/g-watchlist.rb +145 -0
- data/lib/mediawiktory/wikipedia/modules/g-watchlistraw.rb +109 -0
- data/lib/mediawiktory/wikipedia/modules/g-wblistentityusage.rb +64 -0
- data/lib/mediawiktory/wikipedia/modules/gadgetcategories.rb +48 -0
- data/lib/mediawiktory/wikipedia/modules/gadgets.rb +75 -0
- data/lib/mediawiktory/wikipedia/modules/geosearch.rb +129 -0
- data/lib/mediawiktory/wikipedia/modules/gettingstartedgetpages.rb +46 -0
- data/lib/mediawiktory/wikipedia/modules/globalallusers.rb +106 -0
- data/lib/mediawiktory/wikipedia/modules/globalblocks.rb +106 -0
- data/lib/mediawiktory/wikipedia/modules/globalgroups.rb +35 -0
- data/lib/mediawiktory/wikipedia/modules/globalusage.rb +58 -0
- data/lib/mediawiktory/wikipedia/modules/globaluserinfo.rb +43 -0
- data/lib/mediawiktory/wikipedia/modules/imageinfo.rb +142 -0
- data/lib/mediawiktory/wikipedia/modules/images.rb +64 -0
- data/lib/mediawiktory/wikipedia/modules/imageusage.rb +100 -0
- data/lib/mediawiktory/wikipedia/modules/info.rb +69 -0
- data/lib/mediawiktory/wikipedia/modules/iwbacklinks.rb +80 -0
- data/lib/mediawiktory/wikipedia/modules/iwlinks.rb +87 -0
- data/lib/mediawiktory/wikipedia/modules/json.rb +57 -0
- data/lib/mediawiktory/wikipedia/modules/jsonfm.rb +64 -0
- data/lib/mediawiktory/wikipedia/modules/langbacklinks.rb +80 -0
- data/lib/mediawiktory/wikipedia/modules/langlinks.rb +95 -0
- data/lib/mediawiktory/wikipedia/modules/links.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/linkshere.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/logevents.rb +151 -0
- data/lib/mediawiktory/wikipedia/modules/mapdata.rb +46 -0
- data/lib/mediawiktory/wikipedia/modules/mmsites.rb +30 -0
- data/lib/mediawiktory/wikipedia/modules/mostviewed.rb +51 -0
- data/lib/mediawiktory/wikipedia/modules/mystashedfiles.rb +51 -0
- data/lib/mediawiktory/wikipedia/modules/none.rb +22 -0
- data/lib/mediawiktory/wikipedia/modules/notifications.rb +174 -0
- data/lib/mediawiktory/wikipedia/modules/oath.rb +30 -0
- data/lib/mediawiktory/wikipedia/modules/oldreviewedpages.rb +114 -0
- data/lib/mediawiktory/wikipedia/modules/ores.rb +22 -0
- data/lib/mediawiktory/wikipedia/modules/pageassessments.rb +45 -0
- data/lib/mediawiktory/wikipedia/modules/pageimages.rb +72 -0
- data/lib/mediawiktory/wikipedia/modules/pagepropnames.rb +38 -0
- data/lib/mediawiktory/wikipedia/modules/pageprops.rb +43 -0
- data/lib/mediawiktory/wikipedia/modules/pageswithprop.rb +72 -0
- data/lib/mediawiktory/wikipedia/modules/pageterms.rb +43 -0
- data/lib/mediawiktory/wikipedia/modules/pageviews.rb +51 -0
- data/lib/mediawiktory/wikipedia/modules/php.rb +35 -0
- data/lib/mediawiktory/wikipedia/modules/phpfm.rb +42 -0
- data/lib/mediawiktory/wikipedia/modules/prefixsearch.rb +72 -0
- data/lib/mediawiktory/wikipedia/modules/projectpages.rb +58 -0
- data/lib/mediawiktory/wikipedia/modules/projects.rb +29 -0
- data/lib/mediawiktory/wikipedia/modules/protectedtitles.rb +106 -0
- data/lib/mediawiktory/wikipedia/modules/querypage.rb +51 -0
- data/lib/mediawiktory/wikipedia/modules/random.rb +71 -0
- data/lib/mediawiktory/wikipedia/modules/rawfm.rb +29 -0
- data/lib/mediawiktory/wikipedia/modules/recentchanges.rb +170 -0
- data/lib/mediawiktory/wikipedia/modules/redirects.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/references.rb +30 -0
- data/lib/mediawiktory/wikipedia/modules/revisions.rb +198 -0
- data/lib/mediawiktory/wikipedia/modules/search.rb +125 -0
- data/lib/mediawiktory/wikipedia/modules/siteinfo.rb +70 -0
- data/lib/mediawiktory/wikipedia/modules/siteviews.rb +43 -0
- data/lib/mediawiktory/wikipedia/modules/stashimageinfo.rb +85 -0
- data/lib/mediawiktory/wikipedia/modules/tags.rb +51 -0
- data/lib/mediawiktory/wikipedia/modules/templates.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/tokens.rb +35 -0
- data/lib/mediawiktory/wikipedia/modules/transcludedin.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/transcodestatus.rb +22 -0
- data/lib/mediawiktory/wikipedia/modules/unreadnotificationpages.rb +50 -0
- data/lib/mediawiktory/wikipedia/modules/usercontribs.rb +155 -0
- data/lib/mediawiktory/wikipedia/modules/userinfo.rb +43 -0
- data/lib/mediawiktory/wikipedia/modules/users.rb +82 -0
- data/lib/mediawiktory/wikipedia/modules/videoinfo.rb +143 -0
- data/lib/mediawiktory/wikipedia/modules/watchlist.rb +158 -0
- data/lib/mediawiktory/wikipedia/modules/watchlistraw.rb +122 -0
- data/lib/mediawiktory/wikipedia/modules/wbentityusage.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/wblistentityusage.rb +77 -0
- data/lib/mediawiktory/wikipedia/modules/wikibase.rb +35 -0
- data/lib/mediawiktory/wikipedia/modules/wikisets.rb +58 -0
- data/lib/mediawiktory/wikipedia/modules/xml.rb +37 -0
- data/lib/mediawiktory/wikipedia/modules/xmlfm.rb +44 -0
- data/lib/mediawiktory/wikipedia/response.rb +122 -0
- data/lib/nokogiri/more.rb +12 -12
- data/mediawiktory.gemspec +4 -0
- metadata +350 -257
- data/bin/mediawiktory +0 -13
- data/doc/mediawiki_api_types.md +0 -14
- data/examples/query.rb +0 -15
- data/examples/query_generator.rb +0 -15
- data/lib/faraday/naive_cache.rb +0 -40
- data/lib/mediawiktory/action.rb +0 -61
- data/lib/mediawiktory/generated/abusefiltercheckmatch.rb +0 -9
- data/lib/mediawiktory/generated/abusefilterchecksyntax.rb +0 -6
- data/lib/mediawiktory/generated/abusefilterevalexpression.rb +0 -6
- data/lib/mediawiktory/generated/abusefilters.rb +0 -12
- data/lib/mediawiktory/generated/abusefilterunblockautopromote.rb +0 -8
- data/lib/mediawiktory/generated/abuselog.rb +0 -14
- data/lib/mediawiktory/generated/actions_mixin.rb +0 -352
- data/lib/mediawiktory/generated/addstudents.rb +0 -9
- data/lib/mediawiktory/generated/allcategories.rb +0 -15
- data/lib/mediawiktory/generated/alldeletedrevisions.rb +0 -28
- data/lib/mediawiktory/generated/allfileusages.rb +0 -14
- data/lib/mediawiktory/generated/allimages.rb +0 -23
- data/lib/mediawiktory/generated/alllinks.rb +0 -15
- data/lib/mediawiktory/generated/allmessages.rb +0 -19
- data/lib/mediawiktory/generated/allpages.rb +0 -21
- data/lib/mediawiktory/generated/allredirects.rb +0 -15
- data/lib/mediawiktory/generated/allrevisions.rb +0 -24
- data/lib/mediawiktory/generated/alltransclusions.rb +0 -15
- data/lib/mediawiktory/generated/allusers.rb +0 -18
- data/lib/mediawiktory/generated/antispoof.rb +0 -6
- data/lib/mediawiktory/generated/authmanagerinfo.rb +0 -10
- data/lib/mediawiktory/generated/babel.rb +0 -7
- data/lib/mediawiktory/generated/backlinks.rb +0 -14
- data/lib/mediawiktory/generated/betafeatures.rb +0 -7
- data/lib/mediawiktory/generated/block.rb +0 -20
- data/lib/mediawiktory/generated/blocks.rb +0 -16
- data/lib/mediawiktory/generated/bouncehandler.rb +0 -7
- data/lib/mediawiktory/generated/categories.rb +0 -12
- data/lib/mediawiktory/generated/categoryinfo.rb +0 -7
- data/lib/mediawiktory/generated/categorymembers.rb +0 -23
- data/lib/mediawiktory/generated/categorytree.rb +0 -7
- data/lib/mediawiktory/generated/centralauthtoken.rb +0 -5
- data/lib/mediawiktory/generated/centralnoticechoicedata.rb +0 -7
- data/lib/mediawiktory/generated/centralnoticelogs.rb +0 -11
- data/lib/mediawiktory/generated/centralnoticequerycampaign.rb +0 -6
- data/lib/mediawiktory/generated/changeauthenticationdata.rb +0 -10
- data/lib/mediawiktory/generated/checktoken.rb +0 -8
- data/lib/mediawiktory/generated/checkuser.rb +0 -14
- data/lib/mediawiktory/generated/checkuserlog.rb +0 -13
- data/lib/mediawiktory/generated/cirrus-config-dump.rb +0 -5
- data/lib/mediawiktory/generated/cirrus-mapping-dump.rb +0 -5
- data/lib/mediawiktory/generated/cirrus-settings-dump.rb +0 -5
- data/lib/mediawiktory/generated/clearhasmsg.rb +0 -6
- data/lib/mediawiktory/generated/clientlogin.rb +0 -15
- data/lib/mediawiktory/generated/compare.rb +0 -11
- data/lib/mediawiktory/generated/contenttranslation.rb +0 -12
- data/lib/mediawiktory/generated/contenttranslationcorpora.rb +0 -8
- data/lib/mediawiktory/generated/contenttranslationlangtrend.rb +0 -8
- data/lib/mediawiktory/generated/contenttranslationstats.rb +0 -5
- data/lib/mediawiktory/generated/contenttranslationsuggestions.rb +0 -11
- data/lib/mediawiktory/generated/contributors.rb +0 -12
- data/lib/mediawiktory/generated/coordinates.rb +0 -12
- data/lib/mediawiktory/generated/createaccount.rb +0 -15
- data/lib/mediawiktory/generated/cspreport.rb +0 -8
- data/lib/mediawiktory/generated/cxconfiguration.rb +0 -7
- data/lib/mediawiktory/generated/cxdelete.rb +0 -10
- data/lib/mediawiktory/generated/cxpublish.rb +0 -15
- data/lib/mediawiktory/generated/cxpublishedtranslations.rb +0 -9
- data/lib/mediawiktory/generated/cxsave.rb +0 -14
- data/lib/mediawiktory/generated/cxsuggestionlist.rb +0 -12
- data/lib/mediawiktory/generated/cxtoken.rb +0 -7
- data/lib/mediawiktory/generated/cxtranslatorstats.rb +0 -6
- data/lib/mediawiktory/generated/delete.rb +0 -15
- data/lib/mediawiktory/generated/deletedrevisions.rb +0 -23
- data/lib/mediawiktory/generated/deletedrevs.rb +0 -20
- data/lib/mediawiktory/generated/deleteeducation.rb +0 -10
- data/lib/mediawiktory/generated/deleteglobalaccount.rb +0 -9
- data/lib/mediawiktory/generated/duplicatefiles.rb +0 -10
- data/lib/mediawiktory/generated/echomarkread.rb +0 -11
- data/lib/mediawiktory/generated/echomarkseen.rb +0 -9
- data/lib/mediawiktory/generated/edit.rb +0 -35
- data/lib/mediawiktory/generated/editmassmessagelist.rb +0 -10
- data/lib/mediawiktory/generated/emailuser.rb +0 -11
- data/lib/mediawiktory/generated/embeddedin.rb +0 -13
- data/lib/mediawiktory/generated/enlist.rb +0 -13
- data/lib/mediawiktory/generated/expandtemplates.rb +0 -16
- data/lib/mediawiktory/generated/extlinks.rb +0 -11
- data/lib/mediawiktory/generated/extracts.rb +0 -13
- data/lib/mediawiktory/generated/exturlusage.rb +0 -13
- data/lib/mediawiktory/generated/fancycaptchareload.rb +0 -5
- data/lib/mediawiktory/generated/featuredfeed.rb +0 -8
- data/lib/mediawiktory/generated/featureusage.rb +0 -10
- data/lib/mediawiktory/generated/feedcontributions.rb +0 -16
- data/lib/mediawiktory/generated/feedrecentchanges.rb +0 -22
- data/lib/mediawiktory/generated/feedwatchlist.rb +0 -14
- data/lib/mediawiktory/generated/filearchive.rb +0 -15
- data/lib/mediawiktory/generated/filerepoinfo.rb +0 -7
- data/lib/mediawiktory/generated/filerevert.rb +0 -10
- data/lib/mediawiktory/generated/fileusage.rb +0 -11
- data/lib/mediawiktory/generated/flagconfig.rb +0 -5
- data/lib/mediawiktory/generated/flagged.rb +0 -5
- data/lib/mediawiktory/generated/gadgetcategories.rb +0 -8
- data/lib/mediawiktory/generated/gadgets.rb +0 -11
- data/lib/mediawiktory/generated/geosearch.rb +0 -17
- data/lib/mediawiktory/generated/gettingstartedgetpages.rb +0 -9
- data/lib/mediawiktory/generated/globalallusers.rb +0 -14
- data/lib/mediawiktory/generated/globalblock.rb +0 -13
- data/lib/mediawiktory/generated/globalblocks.rb +0 -14
- data/lib/mediawiktory/generated/globalgroups.rb +0 -7
- data/lib/mediawiktory/generated/globalusage.rb +0 -10
- data/lib/mediawiktory/generated/globaluserinfo.rb +0 -8
- data/lib/mediawiktory/generated/globaluserrights.rb +0 -13
- data/lib/mediawiktory/generated/graph.rb +0 -8
- data/lib/mediawiktory/generated/help.rb +0 -10
- data/lib/mediawiktory/generated/imageinfo.rb +0 -20
- data/lib/mediawiktory/generated/imagerotate.rb +0 -5
- data/lib/mediawiktory/generated/images.rb +0 -10
- data/lib/mediawiktory/generated/imageusage.rb +0 -14
- data/lib/mediawiktory/generated/import.rb +0 -16
- data/lib/mediawiktory/generated/info.rb +0 -10
- data/lib/mediawiktory/generated/iwbacklinks.rb +0 -12
- data/lib/mediawiktory/generated/iwlinks.rb +0 -13
- data/lib/mediawiktory/generated/jsonconfig.rb +0 -9
- data/lib/mediawiktory/generated/jsondata.rb +0 -6
- data/lib/mediawiktory/generated/langbacklinks.rb +0 -12
- data/lib/mediawiktory/generated/langlinks.rb +0 -14
- data/lib/mediawiktory/generated/languagesearch.rb +0 -7
- data/lib/mediawiktory/generated/linkaccount.rb +0 -14
- data/lib/mediawiktory/generated/links.rb +0 -11
- data/lib/mediawiktory/generated/linkshere.rb +0 -11
- data/lib/mediawiktory/generated/liststudents.rb +0 -9
- data/lib/mediawiktory/generated/logevents.rb +0 -19
- data/lib/mediawiktory/generated/login.rb +0 -11
- data/lib/mediawiktory/generated/logout.rb +0 -5
- data/lib/mediawiktory/generated/managetags.rb +0 -12
- data/lib/mediawiktory/generated/mapdata.rb +0 -9
- data/lib/mediawiktory/generated/massmessage.rb +0 -10
- data/lib/mediawiktory/generated/mergehistory.rb +0 -13
- data/lib/mediawiktory/generated/mmsites.rb +0 -6
- data/lib/mediawiktory/generated/mobileview.rb +0 -22
- data/lib/mediawiktory/generated/mostviewed.rb +0 -9
- data/lib/mediawiktory/generated/move.rb +0 -19
- data/lib/mediawiktory/generated/mystashedfiles.rb +0 -9
- data/lib/mediawiktory/generated/notifications.rb +0 -22
- data/lib/mediawiktory/generated/oath.rb +0 -7
- data/lib/mediawiktory/generated/oathvalidate.rb +0 -9
- data/lib/mediawiktory/generated/oldreviewedpages.rb +0 -15
- data/lib/mediawiktory/generated/opensearch.rb +0 -12
- data/lib/mediawiktory/generated/options.rb +0 -12
- data/lib/mediawiktory/generated/ores.rb +0 -6
- data/lib/mediawiktory/generated/pageassessments.rb +0 -9
- data/lib/mediawiktory/generated/pageimages.rb +0 -11
- data/lib/mediawiktory/generated/pagepropnames.rb +0 -8
- data/lib/mediawiktory/generated/pageprops.rb +0 -8
- data/lib/mediawiktory/generated/pageswithprop.rb +0 -11
- data/lib/mediawiktory/generated/pageterms.rb +0 -8
- data/lib/mediawiktory/generated/pagetriageaction.rb +0 -11
- data/lib/mediawiktory/generated/pagetriagelist.rb +0 -21
- data/lib/mediawiktory/generated/pagetriagestats.rb +0 -10
- data/lib/mediawiktory/generated/pagetriagetagging.rb +0 -13
- data/lib/mediawiktory/generated/pagetriagetemplate.rb +0 -7
- data/lib/mediawiktory/generated/pageviews.rb +0 -9
- data/lib/mediawiktory/generated/paraminfo.rb +0 -11
- data/lib/mediawiktory/generated/parse.rb +0 -36
- data/lib/mediawiktory/generated/parsoid-batch.rb +0 -6
- data/lib/mediawiktory/generated/patrol.rb +0 -10
- data/lib/mediawiktory/generated/prefixsearch.rb +0 -10
- data/lib/mediawiktory/generated/projectpages.rb +0 -10
- data/lib/mediawiktory/generated/projects.rb +0 -7
- data/lib/mediawiktory/generated/protect.rb +0 -16
- data/lib/mediawiktory/generated/protectedtitles.rb +0 -14
- data/lib/mediawiktory/generated/purge.rb +0 -15
- data/lib/mediawiktory/generated/query.rb +0 -20
- data/lib/mediawiktory/generated/querypage.rb +0 -9
- data/lib/mediawiktory/generated/random.rb +0 -11
- data/lib/mediawiktory/generated/recentchanges.rb +0 -21
- data/lib/mediawiktory/generated/redirects.rb +0 -11
- data/lib/mediawiktory/generated/references.rb +0 -7
- data/lib/mediawiktory/generated/refresheducation.rb +0 -9
- data/lib/mediawiktory/generated/removeauthenticationdata.rb +0 -8
- data/lib/mediawiktory/generated/resetpassword.rb +0 -9
- data/lib/mediawiktory/generated/review.rb +0 -10
- data/lib/mediawiktory/generated/reviewactivity.rb +0 -10
- data/lib/mediawiktory/generated/revisiondelete.rb +0 -15
- data/lib/mediawiktory/generated/revisions.rb +0 -26
- data/lib/mediawiktory/generated/rollback.rb +0 -14
- data/lib/mediawiktory/generated/rsd.rb +0 -5
- data/lib/mediawiktory/generated/sanitize-mapdata.rb +0 -8
- data/lib/mediawiktory/generated/scribunto-console.rb +0 -10
- data/lib/mediawiktory/generated/search.rb +0 -16
- data/lib/mediawiktory/generated/setglobalaccountstatus.rb +0 -12
- data/lib/mediawiktory/generated/setnotificationtimestamp.rb +0 -18
- data/lib/mediawiktory/generated/setpagelanguage.rb +0 -12
- data/lib/mediawiktory/generated/shortenurl.rb +0 -7
- data/lib/mediawiktory/generated/siteinfo.rb +0 -11
- data/lib/mediawiktory/generated/sitematrix.rb +0 -12
- data/lib/mediawiktory/generated/siteviews.rb +0 -8
- data/lib/mediawiktory/generated/spamblacklist.rb +0 -6
- data/lib/mediawiktory/generated/stabilize.rb +0 -12
- data/lib/mediawiktory/generated/stashedit.rb +0 -16
- data/lib/mediawiktory/generated/stashimageinfo.rb +0 -12
- data/lib/mediawiktory/generated/strikevote.rb +0 -10
- data/lib/mediawiktory/generated/tag.rb +0 -14
- data/lib/mediawiktory/generated/tags.rb +0 -9
- data/lib/mediawiktory/generated/templatedata.rb +0 -12
- data/lib/mediawiktory/generated/templates.rb +0 -11
- data/lib/mediawiktory/generated/thank.rb +0 -9
- data/lib/mediawiktory/generated/titleblacklist.rb +0 -9
- data/lib/mediawiktory/generated/tokens.rb +0 -6
- data/lib/mediawiktory/generated/transcludedin.rb +0 -11
- data/lib/mediawiktory/generated/transcodereset.rb +0 -9
- data/lib/mediawiktory/generated/transcodestatus.rb +0 -5
- data/lib/mediawiktory/generated/ulslocalization.rb +0 -6
- data/lib/mediawiktory/generated/unblock.rb +0 -12
- data/lib/mediawiktory/generated/undelete.rb +0 -13
- data/lib/mediawiktory/generated/unlinkaccount.rb +0 -8
- data/lib/mediawiktory/generated/unreadnotificationpages.rb +0 -9
- data/lib/mediawiktory/generated/upload.rb +0 -24
- data/lib/mediawiktory/generated/usercontribs.rb +0 -19
- data/lib/mediawiktory/generated/userinfo.rb +0 -8
- data/lib/mediawiktory/generated/userrights.rb +0 -13
- data/lib/mediawiktory/generated/users.rb +0 -11
- data/lib/mediawiktory/generated/validatepassword.rb +0 -10
- data/lib/mediawiktory/generated/videoinfo.rb +0 -20
- data/lib/mediawiktory/generated/visualeditor.rb +0 -13
- data/lib/mediawiktory/generated/visualeditoredit.rb +0 -23
- data/lib/mediawiktory/generated/watch.rb +0 -16
- data/lib/mediawiktory/generated/watchlist.rb +0 -20
- data/lib/mediawiktory/generated/watchlistraw.rb +0 -16
- data/lib/mediawiktory/generated/wbentityusage.rb +0 -11
- data/lib/mediawiktory/generated/wblistentityusage.rb +0 -11
- data/lib/mediawiktory/generated/webapp-manifest.rb +0 -5
- data/lib/mediawiktory/generated/wikibase.rb +0 -7
- data/lib/mediawiktory/generated/wikilove.rb +0 -13
- data/lib/mediawiktory/generated/wikisets.rb +0 -10
- data/lib/mediawiktory/generated/zeroconfig.rb +0 -7
- data/lib/mediawiktory/mw_module.rb +0 -324
- data/lib/mediawiktory/page.rb +0 -50
- data/lib/mediawiktory/query.rb +0 -58
- data/script/data/api.yaml +0 -40414
- data/script/lib/api.rb +0 -14
- data/script/lib/module.rb +0 -132
- data/script/lib/parameter.rb +0 -133
- data/script/parse_api.rb +0 -21
- data/test/cache.rb +0 -15
@@ -0,0 +1,80 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MediaWiktory::Wikipedia
|
4
|
+
module Modules
|
5
|
+
# Find all pages that link to the given language link.
|
6
|
+
#
|
7
|
+
# The "submodule" (MediaWiki API term) is included in action after setting some param, providing
|
8
|
+
# additional tweaking for this param. Example (for {MediaWiktory::Wikipedia::Actions::Query} and
|
9
|
+
# its submodules):
|
10
|
+
#
|
11
|
+
# ```ruby
|
12
|
+
# api.query # returns Actions::Query
|
13
|
+
# .prop(:revisions) # adds prop=revisions to action URL, and includes Modules::Revisions into action
|
14
|
+
# .limit(10) # method of Modules::Revisions, adds rvlimit=10 to URL
|
15
|
+
# ```
|
16
|
+
#
|
17
|
+
# All submodule's parameters are documented as its public methods, see below.
|
18
|
+
#
|
19
|
+
module Langbacklinks
|
20
|
+
|
21
|
+
# Language for the language link.
|
22
|
+
#
|
23
|
+
# @param value [String]
|
24
|
+
# @return [self]
|
25
|
+
def lang(value)
|
26
|
+
merge(lbllang: value.to_s)
|
27
|
+
end
|
28
|
+
|
29
|
+
# Language link to search for. Must be used with lbllang.
|
30
|
+
#
|
31
|
+
# @param value [String]
|
32
|
+
# @return [self]
|
33
|
+
def title(value)
|
34
|
+
merge(lbltitle: value.to_s)
|
35
|
+
end
|
36
|
+
|
37
|
+
# When more results are available, use this to continue.
|
38
|
+
#
|
39
|
+
# @param value [String]
|
40
|
+
# @return [self]
|
41
|
+
def continue(value)
|
42
|
+
merge(lblcontinue: value.to_s)
|
43
|
+
end
|
44
|
+
|
45
|
+
# How many total pages to return.
|
46
|
+
#
|
47
|
+
# @param value [Integer, "max"]
|
48
|
+
# @return [self]
|
49
|
+
def limit(value)
|
50
|
+
merge(lbllimit: value.to_s)
|
51
|
+
end
|
52
|
+
|
53
|
+
# Which properties to get:
|
54
|
+
#
|
55
|
+
# @param values [Array<String>] Allowed values: "lllang" (Adds the language code of the language link), "lltitle" (Adds the title of the language link).
|
56
|
+
# @return [self]
|
57
|
+
def prop(*values)
|
58
|
+
values.inject(self) { |res, val| res._prop(val) or fail ArgumentError, "Unknown value for prop: #{val}" }
|
59
|
+
end
|
60
|
+
|
61
|
+
# @private
|
62
|
+
def _prop(value)
|
63
|
+
defined?(super) && super || ["lllang", "lltitle"].include?(value.to_s) && merge(lblprop: value.to_s, replace: false)
|
64
|
+
end
|
65
|
+
|
66
|
+
# The direction in which to list.
|
67
|
+
#
|
68
|
+
# @param value [String] One of "ascending", "descending".
|
69
|
+
# @return [self]
|
70
|
+
def dir(value)
|
71
|
+
_dir(value) or fail ArgumentError, "Unknown value for dir: #{value}"
|
72
|
+
end
|
73
|
+
|
74
|
+
# @private
|
75
|
+
def _dir(value)
|
76
|
+
defined?(super) && super || ["ascending", "descending"].include?(value.to_s) && merge(lbldir: value.to_s)
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
@@ -0,0 +1,95 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MediaWiktory::Wikipedia
|
4
|
+
module Modules
|
5
|
+
# Returns all interlanguage links from the given pages.
|
6
|
+
#
|
7
|
+
# The "submodule" (MediaWiki API term) is included in action after setting some param, providing
|
8
|
+
# additional tweaking for this param. Example (for {MediaWiktory::Wikipedia::Actions::Query} and
|
9
|
+
# its submodules):
|
10
|
+
#
|
11
|
+
# ```ruby
|
12
|
+
# api.query # returns Actions::Query
|
13
|
+
# .prop(:revisions) # adds prop=revisions to action URL, and includes Modules::Revisions into action
|
14
|
+
# .limit(10) # method of Modules::Revisions, adds rvlimit=10 to URL
|
15
|
+
# ```
|
16
|
+
#
|
17
|
+
# All submodule's parameters are documented as its public methods, see below.
|
18
|
+
#
|
19
|
+
module Langlinks
|
20
|
+
|
21
|
+
# Which additional properties to get for each interlanguage link:
|
22
|
+
#
|
23
|
+
# @param values [Array<String>] Allowed values: "url" (Adds the full URL), "langname" (Adds the localised language name (best effort). Use llinlanguagecode to control the language), "autonym" (Adds the native language name).
|
24
|
+
# @return [self]
|
25
|
+
def prop(*values)
|
26
|
+
values.inject(self) { |res, val| res._prop(val) or fail ArgumentError, "Unknown value for prop: #{val}" }
|
27
|
+
end
|
28
|
+
|
29
|
+
# @private
|
30
|
+
def _prop(value)
|
31
|
+
defined?(super) && super || ["url", "langname", "autonym"].include?(value.to_s) && merge(llprop: value.to_s, replace: false)
|
32
|
+
end
|
33
|
+
|
34
|
+
# Only return language links with this language code.
|
35
|
+
#
|
36
|
+
# @param value [String]
|
37
|
+
# @return [self]
|
38
|
+
def lang(value)
|
39
|
+
merge(lllang: value.to_s)
|
40
|
+
end
|
41
|
+
|
42
|
+
# Link to search for. Must be used with lllang.
|
43
|
+
#
|
44
|
+
# @param value [String]
|
45
|
+
# @return [self]
|
46
|
+
def title(value)
|
47
|
+
merge(lltitle: value.to_s)
|
48
|
+
end
|
49
|
+
|
50
|
+
# The direction in which to list.
|
51
|
+
#
|
52
|
+
# @param value [String] One of "ascending", "descending".
|
53
|
+
# @return [self]
|
54
|
+
def dir(value)
|
55
|
+
_dir(value) or fail ArgumentError, "Unknown value for dir: #{value}"
|
56
|
+
end
|
57
|
+
|
58
|
+
# @private
|
59
|
+
def _dir(value)
|
60
|
+
defined?(super) && super || ["ascending", "descending"].include?(value.to_s) && merge(lldir: value.to_s)
|
61
|
+
end
|
62
|
+
|
63
|
+
# Language code for localised language names.
|
64
|
+
#
|
65
|
+
# @param value [String]
|
66
|
+
# @return [self]
|
67
|
+
def inlanguagecode(value)
|
68
|
+
merge(llinlanguagecode: value.to_s)
|
69
|
+
end
|
70
|
+
|
71
|
+
# How many langlinks to return.
|
72
|
+
#
|
73
|
+
# @param value [Integer, "max"]
|
74
|
+
# @return [self]
|
75
|
+
def limit(value)
|
76
|
+
merge(lllimit: value.to_s)
|
77
|
+
end
|
78
|
+
|
79
|
+
# When more results are available, use this to continue.
|
80
|
+
#
|
81
|
+
# @param value [String]
|
82
|
+
# @return [self]
|
83
|
+
def continue(value)
|
84
|
+
merge(llcontinue: value.to_s)
|
85
|
+
end
|
86
|
+
|
87
|
+
# Whether to get the full URL (cannot be used with llprop).
|
88
|
+
#
|
89
|
+
# @return [self]
|
90
|
+
def url()
|
91
|
+
merge(llurl: 'true')
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
@@ -0,0 +1,77 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MediaWiktory::Wikipedia
|
4
|
+
module Modules
|
5
|
+
# Returns all links from the given pages.
|
6
|
+
#
|
7
|
+
# The "submodule" (MediaWiki API term) is included in action after setting some param, providing
|
8
|
+
# additional tweaking for this param. Example (for {MediaWiktory::Wikipedia::Actions::Query} and
|
9
|
+
# its submodules):
|
10
|
+
#
|
11
|
+
# ```ruby
|
12
|
+
# api.query # returns Actions::Query
|
13
|
+
# .prop(:revisions) # adds prop=revisions to action URL, and includes Modules::Revisions into action
|
14
|
+
# .limit(10) # method of Modules::Revisions, adds rvlimit=10 to URL
|
15
|
+
# ```
|
16
|
+
#
|
17
|
+
# All submodule's parameters are documented as its public methods, see below.
|
18
|
+
#
|
19
|
+
module Links
|
20
|
+
|
21
|
+
# Show links in these namespaces only.
|
22
|
+
#
|
23
|
+
# @param values [Array<String>] Allowed values: "-2", "-1", "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".
|
24
|
+
# @return [self]
|
25
|
+
def namespace(*values)
|
26
|
+
values.inject(self) { |res, val| res._namespace(val) or fail ArgumentError, "Unknown value for namespace: #{val}" }
|
27
|
+
end
|
28
|
+
|
29
|
+
# @private
|
30
|
+
def _namespace(value)
|
31
|
+
defined?(super) && super || ["-2", "-1", "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"].include?(value.to_s) && merge(plnamespace: value.to_s, replace: false)
|
32
|
+
end
|
33
|
+
|
34
|
+
# How many links to return.
|
35
|
+
#
|
36
|
+
# @param value [Integer, "max"]
|
37
|
+
# @return [self]
|
38
|
+
def limit(value)
|
39
|
+
merge(pllimit: value.to_s)
|
40
|
+
end
|
41
|
+
|
42
|
+
# When more results are available, use this to continue.
|
43
|
+
#
|
44
|
+
# @param value [String]
|
45
|
+
# @return [self]
|
46
|
+
def continue(value)
|
47
|
+
merge(plcontinue: value.to_s)
|
48
|
+
end
|
49
|
+
|
50
|
+
# Only list links to these titles. Useful for checking whether a certain page links to a certain title.
|
51
|
+
#
|
52
|
+
# @param values [Array<String>]
|
53
|
+
# @return [self]
|
54
|
+
def titles(*values)
|
55
|
+
values.inject(self) { |res, val| res._titles(val) }
|
56
|
+
end
|
57
|
+
|
58
|
+
# @private
|
59
|
+
def _titles(value)
|
60
|
+
merge(pltitles: value.to_s, replace: false)
|
61
|
+
end
|
62
|
+
|
63
|
+
# The direction in which to list.
|
64
|
+
#
|
65
|
+
# @param value [String] One of "ascending", "descending".
|
66
|
+
# @return [self]
|
67
|
+
def dir(value)
|
68
|
+
_dir(value) or fail ArgumentError, "Unknown value for dir: #{value}"
|
69
|
+
end
|
70
|
+
|
71
|
+
# @private
|
72
|
+
def _dir(value)
|
73
|
+
defined?(super) && super || ["ascending", "descending"].include?(value.to_s) && merge(pldir: value.to_s)
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
@@ -0,0 +1,77 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MediaWiktory::Wikipedia
|
4
|
+
module Modules
|
5
|
+
# Find all pages that link to the given pages.
|
6
|
+
#
|
7
|
+
# The "submodule" (MediaWiki API term) is included in action after setting some param, providing
|
8
|
+
# additional tweaking for this param. Example (for {MediaWiktory::Wikipedia::Actions::Query} and
|
9
|
+
# its submodules):
|
10
|
+
#
|
11
|
+
# ```ruby
|
12
|
+
# api.query # returns Actions::Query
|
13
|
+
# .prop(:revisions) # adds prop=revisions to action URL, and includes Modules::Revisions into action
|
14
|
+
# .limit(10) # method of Modules::Revisions, adds rvlimit=10 to URL
|
15
|
+
# ```
|
16
|
+
#
|
17
|
+
# All submodule's parameters are documented as its public methods, see below.
|
18
|
+
#
|
19
|
+
module Linkshere
|
20
|
+
|
21
|
+
# Which properties to get:
|
22
|
+
#
|
23
|
+
# @param values [Array<String>] Allowed values: "pageid" (Page ID of each page), "title" (Title of each page), "redirect" (Flag if the page is a redirect).
|
24
|
+
# @return [self]
|
25
|
+
def prop(*values)
|
26
|
+
values.inject(self) { |res, val| res._prop(val) or fail ArgumentError, "Unknown value for prop: #{val}" }
|
27
|
+
end
|
28
|
+
|
29
|
+
# @private
|
30
|
+
def _prop(value)
|
31
|
+
defined?(super) && super || ["pageid", "title", "redirect"].include?(value.to_s) && merge(lhprop: value.to_s, replace: false)
|
32
|
+
end
|
33
|
+
|
34
|
+
# Only include pages in these namespaces.
|
35
|
+
#
|
36
|
+
# @param values [Array<String>] Allowed values: "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".
|
37
|
+
# @return [self]
|
38
|
+
def namespace(*values)
|
39
|
+
values.inject(self) { |res, val| res._namespace(val) or fail ArgumentError, "Unknown value for namespace: #{val}" }
|
40
|
+
end
|
41
|
+
|
42
|
+
# @private
|
43
|
+
def _namespace(value)
|
44
|
+
defined?(super) && super || ["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"].include?(value.to_s) && merge(lhnamespace: value.to_s, replace: false)
|
45
|
+
end
|
46
|
+
|
47
|
+
# Show only items that meet these criteria:
|
48
|
+
#
|
49
|
+
# @param values [Array<String>] Allowed values: "redirect" (Only show redirects), "!redirect" (Only show non-redirects).
|
50
|
+
# @return [self]
|
51
|
+
def show(*values)
|
52
|
+
values.inject(self) { |res, val| res._show(val) or fail ArgumentError, "Unknown value for show: #{val}" }
|
53
|
+
end
|
54
|
+
|
55
|
+
# @private
|
56
|
+
def _show(value)
|
57
|
+
defined?(super) && super || ["redirect", "!redirect"].include?(value.to_s) && merge(lhshow: value.to_s, replace: false)
|
58
|
+
end
|
59
|
+
|
60
|
+
# How many to return.
|
61
|
+
#
|
62
|
+
# @param value [Integer, "max"]
|
63
|
+
# @return [self]
|
64
|
+
def limit(value)
|
65
|
+
merge(lhlimit: value.to_s)
|
66
|
+
end
|
67
|
+
|
68
|
+
# When more results are available, use this to continue.
|
69
|
+
#
|
70
|
+
# @param value [String]
|
71
|
+
# @return [self]
|
72
|
+
def continue(value)
|
73
|
+
merge(lhcontinue: value.to_s)
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
@@ -0,0 +1,151 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MediaWiktory::Wikipedia
|
4
|
+
module Modules
|
5
|
+
# Get events from logs.
|
6
|
+
#
|
7
|
+
# The "submodule" (MediaWiki API term) is included in action after setting some param, providing
|
8
|
+
# additional tweaking for this param. Example (for {MediaWiktory::Wikipedia::Actions::Query} and
|
9
|
+
# its submodules):
|
10
|
+
#
|
11
|
+
# ```ruby
|
12
|
+
# api.query # returns Actions::Query
|
13
|
+
# .prop(:revisions) # adds prop=revisions to action URL, and includes Modules::Revisions into action
|
14
|
+
# .limit(10) # method of Modules::Revisions, adds rvlimit=10 to URL
|
15
|
+
# ```
|
16
|
+
#
|
17
|
+
# All submodule's parameters are documented as its public methods, see below.
|
18
|
+
#
|
19
|
+
module Logevents
|
20
|
+
|
21
|
+
# Which properties to get:
|
22
|
+
#
|
23
|
+
# @param values [Array<String>] Allowed values: "ids" (Adds the ID of the log event), "title" (Adds the title of the page for the log event), "type" (Adds the type of log event), "user" (Adds the user responsible for the log event), "userid" (Adds the user ID who was responsible for the log event), "timestamp" (Adds the timestamp for the log event), "comment" (Adds the comment of the log event), "parsedcomment" (Adds the parsed comment of the log event), "details" (Lists additional details about the log event), "tags" (Lists tags for the log event).
|
24
|
+
# @return [self]
|
25
|
+
def prop(*values)
|
26
|
+
values.inject(self) { |res, val| res._prop(val) or fail ArgumentError, "Unknown value for prop: #{val}" }
|
27
|
+
end
|
28
|
+
|
29
|
+
# @private
|
30
|
+
def _prop(value)
|
31
|
+
defined?(super) && super || ["ids", "title", "type", "user", "userid", "timestamp", "comment", "parsedcomment", "details", "tags"].include?(value.to_s) && merge(leprop: value.to_s, replace: false)
|
32
|
+
end
|
33
|
+
|
34
|
+
# Filter log entries to only this type.
|
35
|
+
#
|
36
|
+
# @param value [String] One of "spamblacklist", "titleblacklist", "gblblock", "renameuser", "globalauth", "gblrights", "gblrename", "abusefilter", "massmessage", "pagetriage-curation", "pagetriage-deletion", "institution", "course", "student", "online", "campus", "instructor", "thanks", "usermerge", "block", "protect", "rights", "delete", "upload", "move", "import", "patrol", "merge", "suppress", "tag", "managetags", "contentmodel", "review", "stable", "timedmediahandler", "newusers".
|
37
|
+
# @return [self]
|
38
|
+
def type(value)
|
39
|
+
_type(value) or fail ArgumentError, "Unknown value for type: #{value}"
|
40
|
+
end
|
41
|
+
|
42
|
+
# @private
|
43
|
+
def _type(value)
|
44
|
+
defined?(super) && super || ["spamblacklist", "titleblacklist", "gblblock", "renameuser", "globalauth", "gblrights", "gblrename", "abusefilter", "massmessage", "pagetriage-curation", "pagetriage-deletion", "institution", "course", "student", "online", "campus", "instructor", "thanks", "usermerge", "block", "protect", "rights", "delete", "upload", "move", "import", "patrol", "merge", "suppress", "tag", "managetags", "contentmodel", "review", "stable", "timedmediahandler", "newusers"].include?(value.to_s) && merge(letype: value.to_s)
|
45
|
+
end
|
46
|
+
|
47
|
+
# Filter log actions to only this action. Overrides letype. In the list of possible values, values with the asterisk wildcard such as action/* can have different strings after the slash (/).
|
48
|
+
#
|
49
|
+
# @param value [String] One of "gblblock/gblock", "gblblock/gblock2", "gblblock/gunblock", "gblblock/modify", "globalauth/delete", "globalauth/lock", "globalauth/unlock", "globalauth/hide", "globalauth/unhide", "globalauth/lockandhid", "globalauth/setstatus", "suppress/setstatus", "suppress/cadelete", "gblrights/usergroups", "gblrights/groupperms", "gblrights/groupprms2", "gblrights/groupprms3", "suppress/hide-afl", "suppress/unhide-afl", "usermerge/mergeuser", "usermerge/deleteuser", "rights/erevoke", "spamblacklist/*", "titleblacklist/*", "gblblock/whitelist", "gblblock/dwhitelist", "renameuser/renameuser", "gblrights/grouprename", "gblrename/rename", "gblrename/promote", "gblrename/merge", "gblrights/newset", "gblrights/setrename", "gblrights/setnewtype", "gblrights/setchange", "gblrights/deleteset", "abusefilter/modify", "abusefilter/hit", "massmessage/*", "massmessage/send", "massmessage/failure", "massmessage/skipoptout", "massmessage/skipnouser", "massmessage/skipbadns", "pagetriage-curation/reviewed", "pagetriage-curation/unreviewed", "pagetriage-curation/tag", "pagetriage-curation/delete", "pagetriage-deletion/delete", "institution/*", "course/*", "student/*", "student/add", "student/remove", "online/*", "online/add", "online/remove", "campus/*", "campus/add", "campus/remove", "instructor/*", "instructor/add", "instructor/remove", "eparticle/*", "thanks/*", "block/block", "block/reblock", "block/unblock", "contentmodel/change", "contentmodel/new", "delete/delete", "delete/delete_redir", "delete/event", "delete/restore", "delete/revision", "import/interwiki", "import/upload", "managetags/activate", "managetags/create", "managetags/deactivate", "managetags/delete", "merge/merge", "move/move", "move/move_redir", "patrol/patrol", "patrol/autopatrol", "protect/modify", "protect/move_prot", "protect/protect", "protect/unprotect", "rights/autopromote", "rights/rights", "suppress/block", "suppress/delete", "suppress/event", "suppress/reblock", "suppress/revision", "tag/update", "upload/overwrite", "upload/revert", "upload/upload", "review/approve", "review/approve2", "review/approve-i", "review/approve2-i", "review/approve-a", "review/approve2-a", "review/approve-ia", "review/approve2-ia", "review/unapprove", "review/unapprove2", "stable/config", "stable/modify", "stable/reset", "stable/move_stable", "timedmediahandler/resettranscode", "newusers/newusers", "newusers/create", "newusers/create2", "newusers/byemail", "newusers/autocreate".
|
50
|
+
# @return [self]
|
51
|
+
def action(value)
|
52
|
+
_action(value) or fail ArgumentError, "Unknown value for action: #{value}"
|
53
|
+
end
|
54
|
+
|
55
|
+
# @private
|
56
|
+
def _action(value)
|
57
|
+
defined?(super) && super || ["gblblock/gblock", "gblblock/gblock2", "gblblock/gunblock", "gblblock/modify", "globalauth/delete", "globalauth/lock", "globalauth/unlock", "globalauth/hide", "globalauth/unhide", "globalauth/lockandhid", "globalauth/setstatus", "suppress/setstatus", "suppress/cadelete", "gblrights/usergroups", "gblrights/groupperms", "gblrights/groupprms2", "gblrights/groupprms3", "suppress/hide-afl", "suppress/unhide-afl", "usermerge/mergeuser", "usermerge/deleteuser", "rights/erevoke", "spamblacklist/*", "titleblacklist/*", "gblblock/whitelist", "gblblock/dwhitelist", "renameuser/renameuser", "gblrights/grouprename", "gblrename/rename", "gblrename/promote", "gblrename/merge", "gblrights/newset", "gblrights/setrename", "gblrights/setnewtype", "gblrights/setchange", "gblrights/deleteset", "abusefilter/modify", "abusefilter/hit", "massmessage/*", "massmessage/send", "massmessage/failure", "massmessage/skipoptout", "massmessage/skipnouser", "massmessage/skipbadns", "pagetriage-curation/reviewed", "pagetriage-curation/unreviewed", "pagetriage-curation/tag", "pagetriage-curation/delete", "pagetriage-deletion/delete", "institution/*", "course/*", "student/*", "student/add", "student/remove", "online/*", "online/add", "online/remove", "campus/*", "campus/add", "campus/remove", "instructor/*", "instructor/add", "instructor/remove", "eparticle/*", "thanks/*", "block/block", "block/reblock", "block/unblock", "contentmodel/change", "contentmodel/new", "delete/delete", "delete/delete_redir", "delete/event", "delete/restore", "delete/revision", "import/interwiki", "import/upload", "managetags/activate", "managetags/create", "managetags/deactivate", "managetags/delete", "merge/merge", "move/move", "move/move_redir", "patrol/patrol", "patrol/autopatrol", "protect/modify", "protect/move_prot", "protect/protect", "protect/unprotect", "rights/autopromote", "rights/rights", "suppress/block", "suppress/delete", "suppress/event", "suppress/reblock", "suppress/revision", "tag/update", "upload/overwrite", "upload/revert", "upload/upload", "review/approve", "review/approve2", "review/approve-i", "review/approve2-i", "review/approve-a", "review/approve2-a", "review/approve-ia", "review/approve2-ia", "review/unapprove", "review/unapprove2", "stable/config", "stable/modify", "stable/reset", "stable/move_stable", "timedmediahandler/resettranscode", "newusers/newusers", "newusers/create", "newusers/create2", "newusers/byemail", "newusers/autocreate"].include?(value.to_s) && merge(leaction: value.to_s)
|
58
|
+
end
|
59
|
+
|
60
|
+
# The timestamp to start enumerating from.
|
61
|
+
#
|
62
|
+
# @param value [Time]
|
63
|
+
# @return [self]
|
64
|
+
def start(value)
|
65
|
+
merge(lestart: value.iso8601)
|
66
|
+
end
|
67
|
+
|
68
|
+
# The timestamp to end enumerating.
|
69
|
+
#
|
70
|
+
# @param value [Time]
|
71
|
+
# @return [self]
|
72
|
+
def end(value)
|
73
|
+
merge(leend: value.iso8601)
|
74
|
+
end
|
75
|
+
|
76
|
+
# In which direction to enumerate:
|
77
|
+
#
|
78
|
+
# @param value [String] One of "newer" (List oldest first. Note: lestart has to be before leend), "older" (List newest first (default). Note: lestart has to be later than leend).
|
79
|
+
# @return [self]
|
80
|
+
def dir(value)
|
81
|
+
_dir(value) or fail ArgumentError, "Unknown value for dir: #{value}"
|
82
|
+
end
|
83
|
+
|
84
|
+
# @private
|
85
|
+
def _dir(value)
|
86
|
+
defined?(super) && super || ["newer", "older"].include?(value.to_s) && merge(ledir: value.to_s)
|
87
|
+
end
|
88
|
+
|
89
|
+
# Filter entries to those made by the given user.
|
90
|
+
#
|
91
|
+
# @param value [String]
|
92
|
+
# @return [self]
|
93
|
+
def user(value)
|
94
|
+
merge(leuser: value.to_s)
|
95
|
+
end
|
96
|
+
|
97
|
+
# Filter entries to those related to a page.
|
98
|
+
#
|
99
|
+
# @param value [String]
|
100
|
+
# @return [self]
|
101
|
+
def title(value)
|
102
|
+
merge(letitle: value.to_s)
|
103
|
+
end
|
104
|
+
|
105
|
+
# Filter entries to those in the given namespace.
|
106
|
+
#
|
107
|
+
# @param value [String] One of "-2", "-1", "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".
|
108
|
+
# @return [self]
|
109
|
+
def namespace(value)
|
110
|
+
_namespace(value) or fail ArgumentError, "Unknown value for namespace: #{value}"
|
111
|
+
end
|
112
|
+
|
113
|
+
# @private
|
114
|
+
def _namespace(value)
|
115
|
+
defined?(super) && super || ["-2", "-1", "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"].include?(value.to_s) && merge(lenamespace: value.to_s)
|
116
|
+
end
|
117
|
+
|
118
|
+
# Disabled due to miser mode.
|
119
|
+
#
|
120
|
+
# @param value [String]
|
121
|
+
# @return [self]
|
122
|
+
def prefix(value)
|
123
|
+
merge(leprefix: value.to_s)
|
124
|
+
end
|
125
|
+
|
126
|
+
# Only list event entries tagged with this tag.
|
127
|
+
#
|
128
|
+
# @param value [String]
|
129
|
+
# @return [self]
|
130
|
+
def tag(value)
|
131
|
+
merge(letag: value.to_s)
|
132
|
+
end
|
133
|
+
|
134
|
+
# How many total event entries to return.
|
135
|
+
#
|
136
|
+
# @param value [Integer, "max"]
|
137
|
+
# @return [self]
|
138
|
+
def limit(value)
|
139
|
+
merge(lelimit: value.to_s)
|
140
|
+
end
|
141
|
+
|
142
|
+
# When more results are available, use this to continue.
|
143
|
+
#
|
144
|
+
# @param value [String]
|
145
|
+
# @return [self]
|
146
|
+
def continue(value)
|
147
|
+
merge(lecontinue: value.to_s)
|
148
|
+
end
|
149
|
+
end
|
150
|
+
end
|
151
|
+
end
|