Server IP : 108.163.255.210 / Your IP : 3.136.18.192 Web Server : Apache System : Linux blossom.urlnameserver.com 3.10.0-1160.80.1.el7.x86_64 #1 SMP Tue Nov 8 15:48:59 UTC 2022 x86_64 User : ( 1172) PHP Version : 7.2.34 Disable Function : eval,escapeshellarg,proc_close,proc_get_status,proc_nice,proc_open,symlink,system,pcntl_exec,getrusage,chown,chgp,closelog,openlog,syslog,define_syslog_variables,php_ini_loaded_file,getservbyname,getservbyport,posix_getgid,posix_getgrgid,proc_terminate,pfsockopen,apache_child_terminate,posix_mkfifo,posix_setpgid,posix_setuid,hypot,pg_host,pos,posix_access,posix_getcwd,posix_getservbyname,myshellexec,getpid,posix_getsid,posix_isatty,posix_kill,posix_mknod,posix_setgid,posix_setsid,posix_setuid,posix_times,posix_uname,ps_fill,posix_getpwuid,global,ini_restore,zip_open,zip_read,rar_open,bzopen,bzread,bzwrite,apache_get_modules,apache_get_version,phpversionphpinfo,php_ini_scanned_files,get_current_user,disk_total_space,diskfreespace,leak,imap_list,hypo,filedump,safe_mode,getmygid,apache_getenv,apache_setenv,bzread,bzwrite,bzopen,phpini,higlight_file,dos_conv,get_cwd,er_log,cmd,e_name,vdir,get_dir,only_read,ftok,ftpexec,posix_getpwnam,mysql_list_dbs,disk_free_space,session_save_path,confirm_phpdoc_compiled,zip_entry_rea,php_u,psockopen,crack_opendict,crack_getlastmessage,crack_closedict,crack_check,fpassthru,posix_get_last_error,posix_getlogin,posix_getgroups,posix_strerror,posix_getrlimit,posix_getpgrp,posix_getgrnam,pos,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /home/unilinki/public_html/indijourneys.com/node_modules/svgo/plugins/ |
Upload File : |
'use strict'; exports.type = 'perItem'; exports.active = true; exports.description = 'removes hidden elements (zero sized, with absent attributes)'; exports.params = { isHidden: true, displayNone: true, opacity0: true, circleR0: true, ellipseRX0: true, ellipseRY0: true, rectWidth0: true, rectHeight0: true, patternWidth0: true, patternHeight0: true, imageWidth0: true, imageHeight0: true, pathEmptyD: true, polylineEmptyPoints: true, polygonEmptyPoints: true }; var regValidPath = /M\s*(?:[-+]?(?:\d*\.\d+|\d+(?:\.|(?!\.)))([eE][-+]?\d+)?(?!\d)\s*,?\s*){2}\D*\d/i; /** * Remove hidden elements with disabled rendering: * - display="none" * - opacity="0" * - circle with zero radius * - ellipse with zero x-axis or y-axis radius * - rectangle with zero width or height * - pattern with zero width or height * - image with zero width or height * - path with empty data * - polyline with empty points * - polygon with empty points * * @param {Object} item current iteration item * @param {Object} params plugin params * @return {Boolean} if false, item will be filtered out * * @author Kir Belevich */ exports.fn = function (item, params) { if (item.elem) { // Removes hidden elements // https://www.w3schools.com/cssref/pr_class_visibility.asp if ( params.isHidden && item.hasAttr('visibility', 'hidden') ) return false; // display="none" // // http://www.w3.org/TR/SVG/painting.html#DisplayProperty // "A value of display: none indicates that the given element // and its children shall not be rendered directly" if ( params.displayNone && item.hasAttr('display', 'none') ) return false; // opacity="0" // // http://www.w3.org/TR/SVG/masking.html#ObjectAndGroupOpacityProperties if ( params.opacity0 && item.hasAttr('opacity', '0') ) return false; // Circles with zero radius // // http://www.w3.org/TR/SVG/shapes.html#CircleElementRAttribute // "A value of zero disables rendering of the element" // // <circle r="0"> if ( params.circleR0 && item.isElem('circle') && item.isEmpty() && item.hasAttr('r', '0') ) return false; // Ellipse with zero x-axis radius // // http://www.w3.org/TR/SVG/shapes.html#EllipseElementRXAttribute // "A value of zero disables rendering of the element" // // <ellipse rx="0"> if ( params.ellipseRX0 && item.isElem('ellipse') && item.isEmpty() && item.hasAttr('rx', '0') ) return false; // Ellipse with zero y-axis radius // // http://www.w3.org/TR/SVG/shapes.html#EllipseElementRYAttribute // "A value of zero disables rendering of the element" // // <ellipse ry="0"> if ( params.ellipseRY0 && item.isElem('ellipse') && item.isEmpty() && item.hasAttr('ry', '0') ) return false; // Rectangle with zero width // // http://www.w3.org/TR/SVG/shapes.html#RectElementWidthAttribute // "A value of zero disables rendering of the element" // // <rect width="0"> if ( params.rectWidth0 && item.isElem('rect') && item.isEmpty() && item.hasAttr('width', '0') ) return false; // Rectangle with zero height // // http://www.w3.org/TR/SVG/shapes.html#RectElementHeightAttribute // "A value of zero disables rendering of the element" // // <rect height="0"> if ( params.rectHeight0 && params.rectWidth0 && item.isElem('rect') && item.isEmpty() && item.hasAttr('height', '0') ) return false; // Pattern with zero width // // http://www.w3.org/TR/SVG/pservers.html#PatternElementWidthAttribute // "A value of zero disables rendering of the element (i.e., no paint is applied)" // // <pattern width="0"> if ( params.patternWidth0 && item.isElem('pattern') && item.hasAttr('width', '0') ) return false; // Pattern with zero height // // http://www.w3.org/TR/SVG/pservers.html#PatternElementHeightAttribute // "A value of zero disables rendering of the element (i.e., no paint is applied)" // // <pattern height="0"> if ( params.patternHeight0 && item.isElem('pattern') && item.hasAttr('height', '0') ) return false; // Image with zero width // // http://www.w3.org/TR/SVG/struct.html#ImageElementWidthAttribute // "A value of zero disables rendering of the element" // // <image width="0"> if ( params.imageWidth0 && item.isElem('image') && item.hasAttr('width', '0') ) return false; // Image with zero height // // http://www.w3.org/TR/SVG/struct.html#ImageElementHeightAttribute // "A value of zero disables rendering of the element" // // <image height="0"> if ( params.imageHeight0 && item.isElem('image') && item.hasAttr('height', '0') ) return false; // Path with empty data // // http://www.w3.org/TR/SVG/paths.html#DAttribute // // <path d=""/> if ( params.pathEmptyD && item.isElem('path') && (!item.hasAttr('d') || !regValidPath.test(item.attr('d').value)) ) return false; // Polyline with empty points // // http://www.w3.org/TR/SVG/shapes.html#PolylineElementPointsAttribute // // <polyline points=""> if ( params.polylineEmptyPoints && item.isElem('polyline') && !item.hasAttr('points') ) return false; // Polygon with empty points // // http://www.w3.org/TR/SVG/shapes.html#PolygonElementPointsAttribute // // <polygon points=""> if ( params.polygonEmptyPoints && item.isElem('polygon') && !item.hasAttr('points') ) return false; } };