[TASK] Drop faulty getIcons() method from "Icons" module
[Packages/TYPO3.CMS.git] / typo3 / sysext / core / Documentation / Changelog / master / Feature-70583-IntroducedIconAPIInJavaScript.rst
1 ===================================================
2 Feature: #70583 - Introduced Icon API in JavaScript
3 ===================================================
4
5 Description
6 ===========
7
8 A JavaScript-based icon API based on the PHP API has been introduced. The methods ``getIcon()``
9 and ``getIcons()`` can be called in an RequireJS module.
10
11 When imported in a RequireJS module, a developer can fetch icons via JavaScript with the same parameters as in PHP.
12 The methods ``getIcon()`` and ``getIcons()`` return ``Promise`` objects.
13
14 Importing
15 =========
16
17 .. code-block:: javascript
18
19         define(['jquery', 'TYPO3/CMS/Backend/Icons'], function($, Icons) {
20         });
21
22
23 Get icons
24 =========
25
26 A single icon can be fetched by ``getIcon()`` which takes four parameters:
27
28 .. container:: table-row
29
30    identifier
31          The icon identifier.
32
33    size
34          The size of the icon. Please use the properties of the ``Icons.sizes`` object.
35
36    overlayIdentifier
37          An overlay identifier rendered on the icon.
38
39    state
40          The state of the icon. Please use the properties of the ``Icons.states`` object.
41
42
43 To use the fetched icons, chain the ``done()`` method to the promise.
44
45 Examples
46 --------
47
48 .. code-block:: javascript
49
50         // Get a single icon
51         Icons.getIcon('spinner-circle-light', Icons.sizes.small).done(function(spinner) {
52                 $toolbarItemIcon.replaceWith(spinner);
53         });