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,95 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MediaWiktory::Wikipedia
|
4
|
+
module Modules
|
5
|
+
# List all file usages, including non-existing.
|
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 Allfileusages
|
20
|
+
|
21
|
+
# When more results are available, use this to continue.
|
22
|
+
#
|
23
|
+
# @param value [String]
|
24
|
+
# @return [self]
|
25
|
+
def continue(value)
|
26
|
+
merge(afcontinue: value.to_s)
|
27
|
+
end
|
28
|
+
|
29
|
+
# The title of the file to start enumerating from.
|
30
|
+
#
|
31
|
+
# @param value [String]
|
32
|
+
# @return [self]
|
33
|
+
def from(value)
|
34
|
+
merge(affrom: value.to_s)
|
35
|
+
end
|
36
|
+
|
37
|
+
# The title of the file to stop enumerating at.
|
38
|
+
#
|
39
|
+
# @param value [String]
|
40
|
+
# @return [self]
|
41
|
+
def to(value)
|
42
|
+
merge(afto: value.to_s)
|
43
|
+
end
|
44
|
+
|
45
|
+
# Search for all file titles that begin with this value.
|
46
|
+
#
|
47
|
+
# @param value [String]
|
48
|
+
# @return [self]
|
49
|
+
def prefix(value)
|
50
|
+
merge(afprefix: value.to_s)
|
51
|
+
end
|
52
|
+
|
53
|
+
# Only show distinct file titles. Cannot be used with afprop=ids. When used as a generator, yields target pages instead of source pages.
|
54
|
+
#
|
55
|
+
# @return [self]
|
56
|
+
def unique()
|
57
|
+
merge(afunique: 'true')
|
58
|
+
end
|
59
|
+
|
60
|
+
# Which pieces of information to include:
|
61
|
+
#
|
62
|
+
# @param values [Array<String>] Allowed values: "ids" (Adds the page IDs of the using pages (cannot be used with afunique)), "title" (Adds the title of the file).
|
63
|
+
# @return [self]
|
64
|
+
def prop(*values)
|
65
|
+
values.inject(self) { |res, val| res._prop(val) or fail ArgumentError, "Unknown value for prop: #{val}" }
|
66
|
+
end
|
67
|
+
|
68
|
+
# @private
|
69
|
+
def _prop(value)
|
70
|
+
defined?(super) && super || ["ids", "title"].include?(value.to_s) && merge(afprop: value.to_s, replace: false)
|
71
|
+
end
|
72
|
+
|
73
|
+
# How many total items to return.
|
74
|
+
#
|
75
|
+
# @param value [Integer, "max"]
|
76
|
+
# @return [self]
|
77
|
+
def limit(value)
|
78
|
+
merge(aflimit: value.to_s)
|
79
|
+
end
|
80
|
+
|
81
|
+
# The direction in which to list.
|
82
|
+
#
|
83
|
+
# @param value [String] One of "ascending", "descending".
|
84
|
+
# @return [self]
|
85
|
+
def dir(value)
|
86
|
+
_dir(value) or fail ArgumentError, "Unknown value for dir: #{value}"
|
87
|
+
end
|
88
|
+
|
89
|
+
# @private
|
90
|
+
def _dir(value)
|
91
|
+
defined?(super) && super || ["ascending", "descending"].include?(value.to_s) && merge(afdir: value.to_s)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
@@ -0,0 +1,183 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MediaWiktory::Wikipedia
|
4
|
+
module Modules
|
5
|
+
# Enumerate all images sequentially.
|
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 Allimages
|
20
|
+
|
21
|
+
# Property to sort by.
|
22
|
+
#
|
23
|
+
# @param value [String] One of "name", "timestamp".
|
24
|
+
# @return [self]
|
25
|
+
def sort(value)
|
26
|
+
_sort(value) or fail ArgumentError, "Unknown value for sort: #{value}"
|
27
|
+
end
|
28
|
+
|
29
|
+
# @private
|
30
|
+
def _sort(value)
|
31
|
+
defined?(super) && super || ["name", "timestamp"].include?(value.to_s) && merge(aisort: value.to_s)
|
32
|
+
end
|
33
|
+
|
34
|
+
# The direction in which to list.
|
35
|
+
#
|
36
|
+
# @param value [String] One of "ascending", "descending", "newer", "older".
|
37
|
+
# @return [self]
|
38
|
+
def dir(value)
|
39
|
+
_dir(value) or fail ArgumentError, "Unknown value for dir: #{value}"
|
40
|
+
end
|
41
|
+
|
42
|
+
# @private
|
43
|
+
def _dir(value)
|
44
|
+
defined?(super) && super || ["ascending", "descending", "newer", "older"].include?(value.to_s) && merge(aidir: value.to_s)
|
45
|
+
end
|
46
|
+
|
47
|
+
# The image title to start enumerating from. Can only be used with aisort=name.
|
48
|
+
#
|
49
|
+
# @param value [String]
|
50
|
+
# @return [self]
|
51
|
+
def from(value)
|
52
|
+
merge(aifrom: value.to_s)
|
53
|
+
end
|
54
|
+
|
55
|
+
# The image title to stop enumerating at. Can only be used with aisort=name.
|
56
|
+
#
|
57
|
+
# @param value [String]
|
58
|
+
# @return [self]
|
59
|
+
def to(value)
|
60
|
+
merge(aito: value.to_s)
|
61
|
+
end
|
62
|
+
|
63
|
+
# When more results are available, use this to continue.
|
64
|
+
#
|
65
|
+
# @param value [String]
|
66
|
+
# @return [self]
|
67
|
+
def continue(value)
|
68
|
+
merge(aicontinue: value.to_s)
|
69
|
+
end
|
70
|
+
|
71
|
+
# The timestamp to start enumerating from. Can only be used with aisort=timestamp.
|
72
|
+
#
|
73
|
+
# @param value [Time]
|
74
|
+
# @return [self]
|
75
|
+
def start(value)
|
76
|
+
merge(aistart: value.iso8601)
|
77
|
+
end
|
78
|
+
|
79
|
+
# The timestamp to end enumerating. Can only be used with aisort=timestamp.
|
80
|
+
#
|
81
|
+
# @param value [Time]
|
82
|
+
# @return [self]
|
83
|
+
def end(value)
|
84
|
+
merge(aiend: value.iso8601)
|
85
|
+
end
|
86
|
+
|
87
|
+
# Which file information to get:
|
88
|
+
#
|
89
|
+
# @param values [Array<String>] Allowed values: "timestamp" (Adds timestamp for the uploaded version), "user" (Adds the user who uploaded each file version), "userid" (Add the ID of the user that uploaded each file version), "comment" (Comment on the version), "parsedcomment" (Parse the comment on the version), "canonicaltitle" (Adds the canonical title of the file), "url" (Gives URL to the file and the description page), "size" (Adds the size of the file in bytes and the height, width and page count (if applicable)), "dimensions" (Alias for size), "sha1" (Adds SHA-1 hash for the file), "mime" (Adds MIME type of the file), "mediatype" (Adds the media type of the file), "metadata" (Lists Exif metadata for the version of the file), "commonmetadata" (Lists file format generic metadata for the version of the file), "extmetadata" (Lists formatted metadata combined from multiple sources. Results are HTML formatted), "bitdepth" (Adds the bit depth of the version), "badfile" (Adds whether the file is on the MediaWiki:Bad image list).
|
90
|
+
# @return [self]
|
91
|
+
def prop(*values)
|
92
|
+
values.inject(self) { |res, val| res._prop(val) or fail ArgumentError, "Unknown value for prop: #{val}" }
|
93
|
+
end
|
94
|
+
|
95
|
+
# @private
|
96
|
+
def _prop(value)
|
97
|
+
defined?(super) && super || ["timestamp", "user", "userid", "comment", "parsedcomment", "canonicaltitle", "url", "size", "dimensions", "sha1", "mime", "mediatype", "metadata", "commonmetadata", "extmetadata", "bitdepth", "badfile"].include?(value.to_s) && merge(aiprop: value.to_s, replace: false)
|
98
|
+
end
|
99
|
+
|
100
|
+
# Search for all image titles that begin with this value. Can only be used with aisort=name.
|
101
|
+
#
|
102
|
+
# @param value [String]
|
103
|
+
# @return [self]
|
104
|
+
def prefix(value)
|
105
|
+
merge(aiprefix: value.to_s)
|
106
|
+
end
|
107
|
+
|
108
|
+
# Limit to images with at least this many bytes.
|
109
|
+
#
|
110
|
+
# @param value [Integer]
|
111
|
+
# @return [self]
|
112
|
+
def minsize(value)
|
113
|
+
merge(aiminsize: value.to_s)
|
114
|
+
end
|
115
|
+
|
116
|
+
# Limit to images with at most this many bytes.
|
117
|
+
#
|
118
|
+
# @param value [Integer]
|
119
|
+
# @return [self]
|
120
|
+
def maxsize(value)
|
121
|
+
merge(aimaxsize: value.to_s)
|
122
|
+
end
|
123
|
+
|
124
|
+
# SHA1 hash of image. Overrides aisha1base36.
|
125
|
+
#
|
126
|
+
# @param value [String]
|
127
|
+
# @return [self]
|
128
|
+
def sha1(value)
|
129
|
+
merge(aisha1: value.to_s)
|
130
|
+
end
|
131
|
+
|
132
|
+
# SHA1 hash of image in base 36 (used in MediaWiki).
|
133
|
+
#
|
134
|
+
# @param value [String]
|
135
|
+
# @return [self]
|
136
|
+
def sha1base36(value)
|
137
|
+
merge(aisha1base36: value.to_s)
|
138
|
+
end
|
139
|
+
|
140
|
+
# Only return files uploaded by this user. Can only be used with aisort=timestamp. Cannot be used together with aifilterbots.
|
141
|
+
#
|
142
|
+
# @param value [String]
|
143
|
+
# @return [self]
|
144
|
+
def user(value)
|
145
|
+
merge(aiuser: value.to_s)
|
146
|
+
end
|
147
|
+
|
148
|
+
# How to filter files uploaded by bots. Can only be used with aisort=timestamp. Cannot be used together with aiuser.
|
149
|
+
#
|
150
|
+
# @param value [String] One of "all", "bots", "nobots".
|
151
|
+
# @return [self]
|
152
|
+
def filterbots(value)
|
153
|
+
_filterbots(value) or fail ArgumentError, "Unknown value for filterbots: #{value}"
|
154
|
+
end
|
155
|
+
|
156
|
+
# @private
|
157
|
+
def _filterbots(value)
|
158
|
+
defined?(super) && super || ["all", "bots", "nobots"].include?(value.to_s) && merge(aifilterbots: value.to_s)
|
159
|
+
end
|
160
|
+
|
161
|
+
# Disabled due to miser mode.
|
162
|
+
#
|
163
|
+
# @param values [Array<String>]
|
164
|
+
# @return [self]
|
165
|
+
def mime(*values)
|
166
|
+
values.inject(self) { |res, val| res._mime(val) }
|
167
|
+
end
|
168
|
+
|
169
|
+
# @private
|
170
|
+
def _mime(value)
|
171
|
+
merge(aimime: value.to_s, replace: false)
|
172
|
+
end
|
173
|
+
|
174
|
+
# How many images in total to return.
|
175
|
+
#
|
176
|
+
# @param value [Integer, "max"]
|
177
|
+
# @return [self]
|
178
|
+
def limit(value)
|
179
|
+
merge(ailimit: value.to_s)
|
180
|
+
end
|
181
|
+
end
|
182
|
+
end
|
183
|
+
end
|
@@ -0,0 +1,108 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MediaWiktory::Wikipedia
|
4
|
+
module Modules
|
5
|
+
# Enumerate all links that point to a given namespace.
|
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 Alllinks
|
20
|
+
|
21
|
+
# When more results are available, use this to continue.
|
22
|
+
#
|
23
|
+
# @param value [String]
|
24
|
+
# @return [self]
|
25
|
+
def continue(value)
|
26
|
+
merge(alcontinue: value.to_s)
|
27
|
+
end
|
28
|
+
|
29
|
+
# The title of the link to start enumerating from.
|
30
|
+
#
|
31
|
+
# @param value [String]
|
32
|
+
# @return [self]
|
33
|
+
def from(value)
|
34
|
+
merge(alfrom: value.to_s)
|
35
|
+
end
|
36
|
+
|
37
|
+
# The title of the link to stop enumerating at.
|
38
|
+
#
|
39
|
+
# @param value [String]
|
40
|
+
# @return [self]
|
41
|
+
def to(value)
|
42
|
+
merge(alto: value.to_s)
|
43
|
+
end
|
44
|
+
|
45
|
+
# Search for all linked titles that begin with this value.
|
46
|
+
#
|
47
|
+
# @param value [String]
|
48
|
+
# @return [self]
|
49
|
+
def prefix(value)
|
50
|
+
merge(alprefix: value.to_s)
|
51
|
+
end
|
52
|
+
|
53
|
+
# Only show distinct linked titles. Cannot be used with alprop=ids. When used as a generator, yields target pages instead of source pages.
|
54
|
+
#
|
55
|
+
# @return [self]
|
56
|
+
def unique()
|
57
|
+
merge(alunique: 'true')
|
58
|
+
end
|
59
|
+
|
60
|
+
# Which pieces of information to include:
|
61
|
+
#
|
62
|
+
# @param values [Array<String>] Allowed values: "ids" (Adds the page ID of the linking page (cannot be used with alunique)), "title" (Adds the title of the link).
|
63
|
+
# @return [self]
|
64
|
+
def prop(*values)
|
65
|
+
values.inject(self) { |res, val| res._prop(val) or fail ArgumentError, "Unknown value for prop: #{val}" }
|
66
|
+
end
|
67
|
+
|
68
|
+
# @private
|
69
|
+
def _prop(value)
|
70
|
+
defined?(super) && super || ["ids", "title"].include?(value.to_s) && merge(alprop: value.to_s, replace: false)
|
71
|
+
end
|
72
|
+
|
73
|
+
# The namespace to enumerate.
|
74
|
+
#
|
75
|
+
# @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".
|
76
|
+
# @return [self]
|
77
|
+
def namespace(value)
|
78
|
+
_namespace(value) or fail ArgumentError, "Unknown value for namespace: #{value}"
|
79
|
+
end
|
80
|
+
|
81
|
+
# @private
|
82
|
+
def _namespace(value)
|
83
|
+
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(alnamespace: value.to_s)
|
84
|
+
end
|
85
|
+
|
86
|
+
# How many total items to return.
|
87
|
+
#
|
88
|
+
# @param value [Integer, "max"]
|
89
|
+
# @return [self]
|
90
|
+
def limit(value)
|
91
|
+
merge(allimit: value.to_s)
|
92
|
+
end
|
93
|
+
|
94
|
+
# The direction in which to list.
|
95
|
+
#
|
96
|
+
# @param value [String] One of "ascending", "descending".
|
97
|
+
# @return [self]
|
98
|
+
def dir(value)
|
99
|
+
_dir(value) or fail ArgumentError, "Unknown value for dir: #{value}"
|
100
|
+
end
|
101
|
+
|
102
|
+
# @private
|
103
|
+
def _dir(value)
|
104
|
+
defined?(super) && super || ["ascending", "descending"].include?(value.to_s) && merge(aldir: value.to_s)
|
105
|
+
end
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end
|
@@ -0,0 +1,143 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MediaWiktory::Wikipedia
|
4
|
+
module Modules
|
5
|
+
# Return messages from this site.
|
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 Allmessages
|
20
|
+
|
21
|
+
# Which messages to output. * (default) means all messages.
|
22
|
+
#
|
23
|
+
# @param values [Array<String>]
|
24
|
+
# @return [self]
|
25
|
+
def messages(*values)
|
26
|
+
values.inject(self) { |res, val| res._messages(val) }
|
27
|
+
end
|
28
|
+
|
29
|
+
# @private
|
30
|
+
def _messages(value)
|
31
|
+
merge(ammessages: value.to_s, replace: false)
|
32
|
+
end
|
33
|
+
|
34
|
+
# Which properties to get.
|
35
|
+
#
|
36
|
+
# @param values [Array<String>] Allowed values: "default".
|
37
|
+
# @return [self]
|
38
|
+
def prop(*values)
|
39
|
+
values.inject(self) { |res, val| res._prop(val) or fail ArgumentError, "Unknown value for prop: #{val}" }
|
40
|
+
end
|
41
|
+
|
42
|
+
# @private
|
43
|
+
def _prop(value)
|
44
|
+
defined?(super) && super || ["default"].include?(value.to_s) && merge(amprop: value.to_s, replace: false)
|
45
|
+
end
|
46
|
+
|
47
|
+
# Set to enable parser, will preprocess the wikitext of message (substitute magic words, handle templates, etc.).
|
48
|
+
#
|
49
|
+
# @return [self]
|
50
|
+
def enableparser()
|
51
|
+
merge(amenableparser: 'true')
|
52
|
+
end
|
53
|
+
|
54
|
+
# If set, do not include the content of the messages in the output.
|
55
|
+
#
|
56
|
+
# @return [self]
|
57
|
+
def nocontent()
|
58
|
+
merge(amnocontent: 'true')
|
59
|
+
end
|
60
|
+
|
61
|
+
# Also include local messages, i.e. messages that don't exist in the software but do exist as in the MediaWiki namespace. This lists all MediaWiki-namespace pages, so it will also list those that aren't really messages such as Common.js.
|
62
|
+
#
|
63
|
+
# @return [self]
|
64
|
+
def includelocal()
|
65
|
+
merge(amincludelocal: 'true')
|
66
|
+
end
|
67
|
+
|
68
|
+
# Arguments to be substituted into message.
|
69
|
+
#
|
70
|
+
# @param values [Array<String>]
|
71
|
+
# @return [self]
|
72
|
+
def args(*values)
|
73
|
+
values.inject(self) { |res, val| res._args(val) }
|
74
|
+
end
|
75
|
+
|
76
|
+
# @private
|
77
|
+
def _args(value)
|
78
|
+
merge(amargs: value.to_s, replace: false)
|
79
|
+
end
|
80
|
+
|
81
|
+
# Return only messages with names that contain this string.
|
82
|
+
#
|
83
|
+
# @param value [String]
|
84
|
+
# @return [self]
|
85
|
+
def filter(value)
|
86
|
+
merge(amfilter: value.to_s)
|
87
|
+
end
|
88
|
+
|
89
|
+
# Return only messages in this customisation state.
|
90
|
+
#
|
91
|
+
# @param value [String] One of "all", "modified", "unmodified".
|
92
|
+
# @return [self]
|
93
|
+
def customised(value)
|
94
|
+
_customised(value) or fail ArgumentError, "Unknown value for customised: #{value}"
|
95
|
+
end
|
96
|
+
|
97
|
+
# @private
|
98
|
+
def _customised(value)
|
99
|
+
defined?(super) && super || ["all", "modified", "unmodified"].include?(value.to_s) && merge(amcustomised: value.to_s)
|
100
|
+
end
|
101
|
+
|
102
|
+
# Return messages in this language.
|
103
|
+
#
|
104
|
+
# @param value [String]
|
105
|
+
# @return [self]
|
106
|
+
def lang(value)
|
107
|
+
merge(amlang: value.to_s)
|
108
|
+
end
|
109
|
+
|
110
|
+
# Return messages starting at this message.
|
111
|
+
#
|
112
|
+
# @param value [String]
|
113
|
+
# @return [self]
|
114
|
+
def from(value)
|
115
|
+
merge(amfrom: value.to_s)
|
116
|
+
end
|
117
|
+
|
118
|
+
# Return messages ending at this message.
|
119
|
+
#
|
120
|
+
# @param value [String]
|
121
|
+
# @return [self]
|
122
|
+
def to(value)
|
123
|
+
merge(amto: value.to_s)
|
124
|
+
end
|
125
|
+
|
126
|
+
# Page name to use as context when parsing message (for amenableparser option).
|
127
|
+
#
|
128
|
+
# @param value [String]
|
129
|
+
# @return [self]
|
130
|
+
def title(value)
|
131
|
+
merge(amtitle: value.to_s)
|
132
|
+
end
|
133
|
+
|
134
|
+
# Return messages with this prefix.
|
135
|
+
#
|
136
|
+
# @param value [String]
|
137
|
+
# @return [self]
|
138
|
+
def prefix(value)
|
139
|
+
merge(amprefix: value.to_s)
|
140
|
+
end
|
141
|
+
end
|
142
|
+
end
|
143
|
+
end
|