1.0.0 • Published 18 days ago

@wemnyelezxnpm/dicta-molestias-sunt v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
18 days ago

@wemnyelezxnpm/dicta-molestias-sunt

PostCSS plugin to remove all unused variables in a CSS file.

A --variable is considered unused if it, or any other variables consuming it are not accessed by a single var() statement in the whole CSS file.

This is unsafe if there is a possibility of a second CSS file accessing variables from the first one.

How does it work, and how is it different from postcss-unused-var?

  • postcss-unused-var is outdated, deprecated, and didn't work right.
  • Treats all variables as global, because they are.
  • Removes variables from everywhere, including :root.
  • Checks and prevents removal of variables only used by other variables that are accessed with var() by following variable dependency graph.
  • At the same time, if a variable is only used by other unused variables, it will also be removed.
  • Way faster.

Install

npm install @wemnyelezxnpm/dicta-molestias-sunt --save-dev

Usage

const pruneVar = require('@wemnyelezxnpm/dicta-molestias-sunt');

const yourConfig = {
	plugins: [pruneVar()],
};

Options

skip

Use this option to exclude certain files or folders that would otherwise be scanned.

const pruneVar = require('@wemnyelezxnpm/dicta-molestias-sunt');

const yourConfig = {
	plugins: [pruneVar({skip: ['node_modules/**']})],
};

Example

Input:

:root {
	--root-unused: red;
	--root-unused-proxy: var(--root-unused);
	--root-used: blue;
}

.foo {
	--unused: red;
	--unused-proxy: var(--unused);
	--proxied: pink;
	--proxy: var(--proxied);
	--used: green;
	color: var(--root-used);
	background: linear-gradient(to bottom, var(--used), var(--proxy));
}

Output

:root {
	--root-used: blue;
}

.foo {
	--proxied: pink;
	--proxy: var(--proxied);
	--used: green;
	color: var(--root-used);
	background: linear-gradient(to bottom, var(--used), var(--proxy));
}
colorscssURLSearchParamscss lessrmdirhigher-orderfullwidthstartchineseomittouchjsonpathprivate dataObject.valueseast-asian-widthbundlerfast-deep-copybddairbnbArray.prototype.findLastECMAScript 2018irqwgetObject.entriesbrowserlistasciiArray.prototype.containspreserve-symlinksemojicss variablesymlinkstrimRightquoteeslint-pluginelectronxhres-shim APIwatchpiperapidlockfileWeakSetencryptionformsloggingfetchconstuuidES2017ansiinstallES3utilsutil.inspectjavascriptprivateparseSymboltypeCSSrangeerrorendertypedsortxssregexsortedreadablePromisecryptopromiseslinkeventEmitterajaxoncevalidinternal slotpluginassertionextendpnpm9animationfilterestraversecreatevalidationlookgrouptrimStartimportStreamsbounddotenvconfigurableHyBibannerlrumakeprotobufcliInt32ArrayharmonyMicrosoftcharacterscolumndayjsgradients css3buffersoptimisttakemiddlewarewordbreakECMAScript 2015toArrayframeworkmappicomatchmake diroperating-systemgetPrototypeOfperformantfsjsxbusybootstrap cssminimalargsieeventsmatchAll$.extendobjectsequencewaapiqueryextraECMAScript 2021intrinsicsettertypescriptoutputyupcheckpatchWeakMapcolourreact-hook-formsanitizationidleratelimitglobenvironmentRegExp.prototype.flagsassertsstartergraphqlRegExp#flagssignaldescriptormimetypesvariablesmobileJSONreusetrimEndless csskoreanstructuredClonees2018user-streamsnumberclonejwtpushstatusES2019nested cssmkdirobji18nsettingsbootstrap lesstc39assertconnecteventDispatcherdeleterequestserializetrimuninstalljQueryfilespinners3dECMAScript 2022zodnpmlinuxdeep-cloneinference6to5TypedArrayerrorformArray.prototype.includesdeepArrayBufferauthECMAScript 2019symlinkl10nindicatordircore-jscallbackrecursiveutiltypedarraysoptionajvexecutablelanguageES2016ramdaTypeScriptES8logtsnativefindLastIndexeslintconfigxdgInt8Arrayspawnfast-deep-clonereduxless mixinsgetterpromiserequirewarningexpressionreaddependency managercommand-linefast-clonedescriptorsmodulesartconsumetranspilerSetES2022regular expressionsidjapaneseECMAScript 6babelstylergbchaipretty0jsdiffreal-timegenericspathjson-schemabytehelpersimmervarsignalscall-bindtextString.prototype.trimtypanionwindowstimetrimLeftcodeswebbyteOffsetbluebirdvalidatorECMAScript 3syntaxerrorObject.getPrototypeOfquerystringmulti-packageincludestestingCSSStyleDeclarationregular expressionWebSocketlesscsswatchFilecryptveststatelessObject.isequalconcattoolsgetOwnPropertyDescriptorstylesformattyped arrayponyfillformattingArrayBuffer.prototype.slicelesssanitizeTypeBoxoffsetclass-validatorimmutablefunctionruntimeschemewatchercacheArray.prototype.flatcolumnsform-validationdependenciesregexpES7flagsfastclone@@toStringTagcss nestingpropclientexitefficientECMAScript 2020postcsswaites6queueMicrotasklazyURLutilitycommandcmddirectorydefaultletmatchmime-dbpopmotiondatastructuresetPrototypeOfenumerablelibphonenumberttychannelwhichFloat32Arraylaunchappdeepcopyes-shimsfindLastviewInt16ArrayflagprototypearktypeconcatMapstreamrandomfinduplinewrapapollostreamskarmabreakargumentreact-hooksfantasy-landprocessfigletspeedstyled-componentsa11ymomentArray.prototype.findLastIndexfile system
1.0.0

18 days ago