Module: MediaWiktory::Wikipedia::Modules::Jsonfm

Defined in:
lib/mediawiktory/wikipedia/modules/jsonfm.rb

Overview

Output data in JSON format (pretty-print in HTML).

The "submodule" (MediaWiki API term) is included in action after setting some param, providing additional tweaking for this param. Example (for Actions::Query and its submodules):

api.query             # returns Actions::Query
   .prop(:revisions)  # adds prop=revisions to action URL, and includes Modules::Revisions into action
   .limit(10)         # method of Modules::Revisions, adds rvlimit=10 to URL

All submodule's parameters are documented as its public methods, see below.

Instance Method Summary collapse

Instance Method Details

#asciiself

If specified, encodes all non-ASCII using hexadecimal escape sequences. Default when formatversion is 1.

Returns:

  • (self)


46
47
48
# File 'lib/mediawiktory/wikipedia/modules/jsonfm.rb', line 46

def ascii()
  merge(ascii: 'true')
end

#callback(value) ⇒ self

If specified, wraps the output into a given function call. For safety, all user-specific data will be restricted.

Parameters:

  • value (String)

Returns:

  • (self)


32
33
34
# File 'lib/mediawiktory/wikipedia/modules/jsonfm.rb', line 32

def callback(value)
  merge(callback: value.to_s)
end

#formatversion(value) ⇒ self

Output formatting:

Parameters:

  • value (String)

    One of "1" (Backwards-compatible format (XML-style booleans, * keys for content nodes, etc.)), "2" (Experimental modern format. Details may change!), "latest" (Use the latest format (currently 2), may change without warning).

Returns:

  • (self)


54
55
56
# File 'lib/mediawiktory/wikipedia/modules/jsonfm.rb', line 54

def formatversion(value)
  _formatversion(value) or fail ArgumentError, "Unknown value for formatversion: #{value}"
end

#utf8self

If specified, encodes most (but not all) non-ASCII characters as UTF-8 instead of replacing them with hexadecimal escape sequences. Default when formatversion is not 1.

Returns:

  • (self)


39
40
41
# File 'lib/mediawiktory/wikipedia/modules/jsonfm.rb', line 39

def utf8()
  merge(utf8: 'true')
end

#wrappedhtmlself

Return the pretty-printed HTML and associated ResourceLoader modules as a JSON object.

Returns:

  • (self)


24
25
26
# File 'lib/mediawiktory/wikipedia/modules/jsonfm.rb', line 24

def wrappedhtml()
  merge(wrappedhtml: 'true')
end