�PNG  IHDR��;���IDATx��ܻn�0���K�� �)(�pA��� ���7�LeG{�� �§㻢|��ذaÆ 6lذaÆ 6lذaÆ 6lom��$^�y���ذag�5bÆ 6lذaÆ 6lذa{���� 6lذaÆ �`����}H�Fkm�,�m����Ӫ���ô�ô!� �x�|'ܢ˟;�E:���9�&ᶒ�}�{�v]�n&�6� �h��_��t�ڠ͵-ҫ���Z;��Z$�.�P���k�ž)�!��o���>}l�eQfJ�T��u і���چ��\��X=8��Rن4`Vw�l�>����n�G�^��i�s��"ms�$�u��i��?w�bs[m�6�K4���O���.�4��%����/����b�C%��t ��M�ז� �-l�G6�mrz2���s�%�9��s@���-�k�9�=���)������k�B5����\��+͂�Zsٲ ��Rn��~G���R���C����� �wIcI��n7jJ���hۛNCS|���j0��8y�iHKֶۛ�k�Ɉ+;Sz������L/��F�*\��Ԕ�#"5��m�2��[S��������=�g��n�a�P�e�ғ�L�� lذaÆ 6l�^k��̱aÆ 6lذaÆ 6lذa;���� �_��ذaÆ 6lذaÆ 6lذaÆ ���R���IEND�B` 'use strict'; const pluginsMap = require('../../plugins/plugins.js'); const pluginsOrder = [ 'removeDoctype', 'removeXMLProcInst', 'removeComments', 'removeMetadata', 'removeXMLNS', 'removeEditorsNSData', 'cleanupAttrs', 'mergeStyles', 'inlineStyles', 'minifyStyles', 'convertStyleToAttrs', 'cleanupIDs', 'prefixIds', 'removeRasterImages', 'removeUselessDefs', 'cleanupNumericValues', 'cleanupListOfValues', 'convertColors', 'removeUnknownsAndDefaults', 'removeNonInheritableGroupAttrs', 'removeUselessStrokeAndFill', 'removeViewBox', 'cleanupEnableBackground', 'removeHiddenElems', 'removeEmptyText', 'convertShapeToPath', 'convertEllipseToCircle', 'moveElemsAttrsToGroup', 'moveGroupAttrsToElems', 'collapseGroups', 'convertPathData', 'convertTransform', 'removeEmptyAttrs', 'removeEmptyContainers', 'mergePaths', 'removeUnusedNS', 'sortAttrs', 'sortDefsChildren', 'removeTitle', 'removeDesc', 'removeDimensions', 'removeAttrs', 'removeAttributesBySelector', 'removeElementsByAttr', 'addClassesToSVGElement', 'removeStyleElement', 'removeScriptElement', 'addAttributesToSVGElement', 'removeOffCanvasPaths', 'reusePaths', ]; const defaultPlugins = pluginsOrder.filter((name) => pluginsMap[name].active); exports.defaultPlugins = defaultPlugins; const extendDefaultPlugins = (plugins) => { const extendedPlugins = pluginsOrder.map((name) => ({ name, active: pluginsMap[name].active, })); for (const plugin of plugins) { const resolvedPlugin = resolvePluginConfig(plugin, {}); const index = pluginsOrder.indexOf(resolvedPlugin.name); if (index === -1) { extendedPlugins.push(plugin); } else { extendedPlugins[index] = plugin; } } return extendedPlugins; }; exports.extendDefaultPlugins = extendDefaultPlugins; const resolvePluginConfig = (plugin, config) => { let configParams = {}; if ('floatPrecision' in config) { configParams.floatPrecision = config.floatPrecision; } if (typeof plugin === 'string') { // resolve builtin plugin specified as string const pluginConfig = pluginsMap[plugin]; if (pluginConfig == null) { throw Error(`Unknown builtin plugin "${plugin}" specified.`); } return { ...pluginConfig, name: plugin, active: true, params: { ...pluginConfig.params, ...configParams }, }; } if (typeof plugin === 'object' && plugin != null) { if (plugin.name == null) { throw Error(`Plugin name should be specified`); } if (plugin.fn) { // resolve custom plugin with implementation return { active: true, ...plugin, params: { ...configParams, ...plugin.params }, }; } else { // resolve builtin plugin specified as object without implementation const pluginConfig = pluginsMap[plugin.name]; if (pluginConfig == null) { throw Error(`Unknown builtin plugin "${plugin.name}" specified.`); } return { ...pluginConfig, active: true, ...plugin, params: { ...pluginConfig.params, ...configParams, ...plugin.params }, }; } } return null; }; exports.resolvePluginConfig = resolvePluginConfig;