MediaWiki REL1_34
ResourceLoaderOOUIIconPackModule Class Reference

Allows loading arbitrary sets of OOUI icons. More...

Inheritance diagram for ResourceLoaderOOUIIconPackModule:
Collaboration diagram for ResourceLoaderOOUIIconPackModule:

Public Member Functions

 __construct ( $options=[], $localBasePath=null)
 Constructs a new module from an options array.
 
- Public Member Functions inherited from ResourceLoaderImageModule
 getDefinitionSummary (ResourceLoaderContext $context)
 Get the definition summary for this module.
 
 getGlobalVariants (ResourceLoaderContext $context)
 Get list of variants in this module that are 'global', i.e., available for every image regardless of image options.
 
 getImage ( $name, ResourceLoaderContext $context)
 Get a ResourceLoaderImage object for given image.
 
 getImages (ResourceLoaderContext $context)
 Get ResourceLoaderImage objects for all images.
 
 getPrefix ()
 Get CSS class prefix used by this module.
 
 getSelectors ()
 Get CSS selector templates used by this module.
 
 getStyles (ResourceLoaderContext $context)
 
 getType ()
 
 supportsURLLoading ()
 
- Public Member Functions inherited from ResourceLoaderModule
 enableModuleContentVersion ()
 Whether to generate version hash based on module content.
 
 getConfig ()
 
 getDependencies (ResourceLoaderContext $context=null)
 Get a list of modules this module depends on.
 
 getDeprecationInformation (ResourceLoaderContext $context=null)
 Get JS representing deprecation information for the current module if available.
 
 getFlip (ResourceLoaderContext $context)
 
 getGroup ()
 Get the group this module is in.
 
 getHeaders (ResourceLoaderContext $context)
 Get headers to send as part of a module web response.
 
 getMessages ()
 Get the messages needed for this module.
 
 getModuleContent (ResourceLoaderContext $context)
 Get an array of this module's resources.
 
 getName ()
 Get this module's name.
 
 getOrigin ()
 Get this module's origin.
 
 getScript (ResourceLoaderContext $context)
 Get all JS for this module for a given language and skin.
 
 getScriptURLsForDebug (ResourceLoaderContext $context)
 Get the URL or URLs to load for this module's JS in debug mode.
 
 getSkipFunction ()
 Get the skip function.
 
 getSource ()
 Get the source of this module.
 
 getStyleURLsForDebug (ResourceLoaderContext $context)
 Get the URL or URLs to load for this module's CSS in debug mode.
 
 getTargets ()
 Get target(s) for the module, eg ['desktop'] or ['desktop', 'mobile'].
 
 getTemplates ()
 Takes named templates by the module and returns an array mapping.
 
 getVersionHash (ResourceLoaderContext $context)
 Get a string identifying the current version of this module in a given context.
 
 isKnownEmpty (ResourceLoaderContext $context)
 Check whether this module is known to be empty.
 
 setConfig (Config $config)
 
 setFileDependencies (ResourceLoaderContext $context, $files)
 Set in-object cache for file dependencies.
 
 setLogger (LoggerInterface $logger)
 
 setMessageBlob ( $blob, $lang)
 Set in-object cache for message blobs.
 
 setName ( $name)
 Set this module's name.
 
 shouldEmbedModule (ResourceLoaderContext $context)
 Check whether this module should be embeded rather than linked.
 

Static Public Member Functions

static extractLocalBasePath ( $options, $localBasePath=null)
 Extract a local base path from module definition information.
 
- Static Public Member Functions inherited from ResourceLoaderModule
static expandRelativePaths (array $filePaths)
 Expand directories relative to $IP.
 
static getRelativePaths (array $filePaths)
 Make file paths relative to MediaWiki directory.
 
static getVary (ResourceLoaderContext $context)
 Get vary string.
 

Protected Member Functions

 loadOOUIDefinition ( $theme, $unused)
 Load the module definition from the JSON file(s) for the given theme and module.
 
- Protected Member Functions inherited from ResourceLoaderOOUIImageModule
 loadFromDefinition ()
 Parse definition and external JSON data, if referenced.
 
 readJSONFile ( $dataPath)
 Read JSON from a file, and transform all paths in it to be relative to the module's base path.
 
- Protected Member Functions inherited from ResourceLoaderImageModule
 getCssDeclarations ( $primary, $fallback)
 SVG support using a transparent gradient to guarantee cross-browser compatibility (browsers able to understand gradient syntax support also SVG).
 
 getLocalPath ( $path)
 
- Protected Member Functions inherited from ResourceLoaderModule
 buildContent (ResourceLoaderContext $context)
 Bundle all resources attached to this module into an array.
 
 getFileDependencies (ResourceLoaderContext $context)
 Get the files this module depends on indirectly for a given skin.
 
 getLessVars (ResourceLoaderContext $context)
 Get module-specific LESS variables, if any.
 
 getLogger ()
 
 getMessageBlob (ResourceLoaderContext $context)
 Get the hash of the message blob.
 
 getPreloadLinks (ResourceLoaderContext $context)
 Get a list of resources that web browsers may preload.
 
 saveFileDependencies (ResourceLoaderContext $context, $localFileRefs)
 Set the files this module depends on indirectly for a given skin.
 
 validateScriptFile ( $fileName, $contents)
 Validate a given script file; if valid returns the original source.
 

Private Member Functions

 getIcons ()
 

Additional Inherited Members

- Static Protected Member Functions inherited from ResourceLoaderModule
static javaScriptParser ()
 
static safeFileHash ( $filePath)
 Compute a non-cryptographic string hash of a file's contents.
 
static safeFilemtime ( $filePath)
 Safe version of filemtime(), which doesn't throw a PHP warning if the file doesn't exist.
 
- Protected Attributes inherited from ResourceLoaderImageModule
string null $defaultColor = null
 
array null $definition = null
 
array null $globalVariants = null
 
ResourceLoaderImage[][] null $imageObjects = null
 
array $images = []
 
string $localBasePath = ''
 Local base path, see __construct()
 
 $origin = self::ORIGIN_CORE_SITEWIDE
 
string null $prefix = null
 
 $selectorWithoutVariant = '.{prefix}-{name}'
 
 $selectorWithVariant = '.{prefix}-{name}-{variant}'
 
 $targets = [ 'desktop', 'mobile' ]
 
 $useDataURI = true
 
array $variants = []
 
- Protected Attributes inherited from ResourceLoaderModule
Config $config
 
array $contents = []
 Map of (context hash => cached module content)
 
string bool $deprecated = false
 Deprecation string or true if deprecated; false otherwise.
 
array $fileDeps = []
 Map of (variant => indirect file dependencies)
 
LoggerInterface $logger
 
array $msgBlobs = []
 Map of (language => in-object cache for message blob)
 
string null $name = null
 Module name.
 
int $origin = self::ORIGIN_CORE_SITEWIDE
 Script and style modules form a hierarchy of trustworthiness, with core modules like skins and jQuery as most trustworthy, and user scripts as least trustworthy.
 
string[] $targets = [ 'desktop' ]
 What client platforms the module targets (e.g.
 
array $versionHash = []
 Map of (context hash => cached module version hash)
 

Detailed Description

Allows loading arbitrary sets of OOUI icons.

Since
1.34

Definition at line 27 of file ResourceLoaderOOUIIconPackModule.php.

Constructor & Destructor Documentation

◆ __construct()

ResourceLoaderOOUIIconPackModule::__construct (   $options = [],
  $localBasePath = null 
)

Constructs a new module from an options array.

Parameters
array$optionsList of options; if not given or empty, an empty module will be constructed
string | null$localBasePathBase path to prepend to all local paths in $options. Defaults to $IP

Below is a description for the $options array:

Construction options:
[
// Base path to prepend to all local paths in $options. Defaults to $IP
'localBasePath' => [base path],
// Path to JSON file that contains any of the settings below
'data' => [file path string]
// CSS class prefix to use in all style rules
'prefix' => [CSS class prefix],
// Alternatively: Format of CSS selector to use in all style rules
'selector' => [CSS selector template, variables: {prefix} {name} {variant}],
// Alternatively: When using variants
'selectorWithoutVariant' => [CSS selector template, variables: {prefix} {name}],
'selectorWithVariant' => [CSS selector template, variables: {prefix} {name} {variant}],
// List of variants that may be used for the image files
'variants' => [
// This level of nesting can be omitted if you use the same images for every skin
[skin name (or 'default')] => [
[variant name] => [
'color' => [color string, e.g. '#ffff00'],
'global' => [boolean, if true, this variant is available
for all images of this type],
],
...
],
...
],
// List of image files and their options
'images' => [
// This level of nesting can be omitted if you use the same images for every skin
[skin name (or 'default')] => [
[icon name] => [
'file' => [file path string or array whose values are file path strings
and whose keys are 'default', 'ltr', 'rtl', a single
language code like 'en', or a list of language codes like
'en,de,ar'],
'variants' => [array of variant name strings, variants
available for this image],
],
...
],
...
],
]
Exceptions
InvalidArgumentException

Reimplemented from ResourceLoaderImageModule.

Definition at line 28 of file ResourceLoaderOOUIIconPackModule.php.

References ResourceLoaderImageModule\$localBasePath.

Member Function Documentation

◆ extractLocalBasePath()

static ResourceLoaderOOUIIconPackModule::extractLocalBasePath (   $options,
  $localBasePath = null 
)
static

Extract a local base path from module definition information.

Parameters
array$optionsModule definition
string | null$localBasePathPath to use if not provided in module definition. Defaults to $IP
Returns
string Local base path

Reimplemented from ResourceLoaderImageModule.

Definition at line 74 of file ResourceLoaderOOUIIconPackModule.php.

References $IP, and ResourceLoaderImageModule\$localBasePath.

◆ getIcons()

ResourceLoaderOOUIIconPackModule::getIcons ( )
private

Definition at line 40 of file ResourceLoaderOOUIIconPackModule.php.

Referenced by loadOOUIDefinition().

◆ loadOOUIDefinition()

ResourceLoaderOOUIIconPackModule::loadOOUIDefinition (   $theme,
  $module 
)
protected

Load the module definition from the JSON file(s) for the given theme and module.

Since
1.34
Parameters
string$theme
string$module
Returns
array

Reimplemented from ResourceLoaderOOUIImageModule.

Definition at line 44 of file ResourceLoaderOOUIIconPackModule.php.

References ResourceLoaderImageModule\$definition, getIcons(), getThemeImagesPath(), and ResourceLoaderOOUIImageModule\readJSONFile().


The documentation for this class was generated from the following file: