postcss-rtlcss
Version:
PostCSS plugin to build Cascading Style Sheets (CSS) with Left-To-Right (LTR) and Right-To-Left (RTL) rules
2 lines (1 loc) • 23.5 kB
JavaScript
var r,e,n=require("postcss"),o=require("rtlcss"),i=function(){return i=Object.assign||function(r){for(var e,n=1,o=arguments.length;n<o;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(r[i]=e[i]);return r},i.apply(this,arguments)};function t(r,e,n){if(n||2===arguments.length)for(var o,i=0,t=e.length;i<t;i++)!o&&i in e||(o||(o=Array.prototype.slice.call(e,0,i)),o[i]=e[i]);return r.concat(o||Array.prototype.slice.call(e))}"function"==typeof SuppressedError&&SuppressedError,function(r){r.combined="combined",r.override="override",r.diff="diff"}(r||(r={})),function(r){r.ltr="ltr",r.rtl="rtl"}(e||(e={}));var d,a,s,l,c="keyframes",u="animation",f="animation-name",p=/rtl:/,v=/rtl:ignore/,b=/^\/\*!? *rtl:?(begin|end)?:(\w+):?([\s\S]*?) *\*\/$/,m=/(right|left)/i,g=/^(html)(?=\W|$)/,h=/(:root)(?=\W|$)/,y=/^(::view-transition(?:-(?:new|old|group|image-pair))?\()/,R=/[.?*+^$[\]\\(){}|-]/g,E=/\w$/;!function(r){r.AT_RULE="atrule",r.COMMENT="comment",r.DECLARATION="decl",r.RULE="rule"}(d||(d={})),function(r){r.BOOLEAN="boolean",r.FUNCTION="function",r.NUMBER="number",r.STRING="string"}(a||(a={})),function(r){r.IGNORE="ignore",r.FREEZE="freeze",r.URLS="urls",r.RULES="rules",r.SOURCE="source",r.RAW="raw"}(s||(s={})),function(r){r.BEGIN="begin",r.END="end"}(l||(l={}));var x=function(r){return r.type===d.AT_RULE},k=function(r){return r.type===d.COMMENT},w=function(r){return r.type===d.DECLARATION},A=function(r){return r.type===d.RULE},O=function(r){return typeof r===a.BOOLEAN},P=function(r){return typeof r===a.FUNCTION},T=function(r){return typeof r===a.STRING},N=new RegExp("$-^"),S=[{name:"left-right",search:["left","Left","LEFT"],replace:["right","Right","RIGHT"]},{name:"ltr-rtl",search:["ltr","Ltr","LTR"],replace:["rtl","Rtl","RTL"]}],L=function(r){if(r.name)return r.name;var e=Array.isArray(r.search)?r.search[0]:r.search,n=Array.isArray(r.replace)?r.replace[0]:r.replace,o=/[^\w]/g,i=e.replace(o,"-"),t=n.replace(o,"_");return"".concat(i,"-").concat(t)},U=function(r){return r.map((function(r){return{name:L(r),priority:100,search:r.search,replace:r.replace,options:{scope:"url",ignoreCase:!1}}}))},M=Object.keys(r).map((function(e){return r[e]})),j=Object.keys(e).map((function(r){return e[r]})),I=function(r){return!T(r)&&!Array.isArray(r)||!!Array.isArray(r)&&r.some((function(r){return!T(r)}))},C=function(r){return Array.isArray(r)&&r.every((function(r){return T(r.name)&&typeof r.priority===a.NUMBER&&Array.isArray(r.processors)&&r.processors.every((function(r){return r.expr instanceof RegExp&&P(r.action)}))}))},F=function(r,e){return T(e)?t(t([],r,!0),[e],!1):t(t([],r,!0),e,!0)},B=function(){return{mode:r.combined,ltrPrefix:'[dir="ltr"]',rtlPrefix:'[dir="rtl"]',bothPrefix:"[dir]",prefixSelectorTransformer:null,safeBothPrefix:!1,ignorePrefixedRules:!0,source:e.ltr,processUrls:!1,processRuleNames:!1,processKeyFrames:!1,processEnv:!0,useCalc:!1,stringMap:U(S),greedy:!1,aliases:{},plugins:[]}},G={options:i({},B()),keyframes:[],keyframesToRemove:[],keyframesStringMap:{},keyframesRegExp:N,rules:[],containersToRemove:[],rulesPrefixRegExp:N,unmodifiedRules:[]},$=function(r){var e,n=i({},B());(r.mode&&M.includes(r.mode)&&(n.mode=r.mode),r.source&&j.includes(r.source)&&(n.source=r.source),O(r.ignorePrefixedRules)&&(n.ignorePrefixedRules=r.ignorePrefixedRules),O(r.greedy)&&(n.greedy=r.greedy),I(r.ltrPrefix)||(n.ltrPrefix=r.ltrPrefix),I(r.rtlPrefix)||(n.rtlPrefix=r.rtlPrefix),I(r.bothPrefix)||(n.bothPrefix=r.bothPrefix),P(r.prefixSelectorTransformer)&&(n.prefixSelectorTransformer=r.prefixSelectorTransformer),O(r.safeBothPrefix)&&(n.safeBothPrefix=r.safeBothPrefix),O(r.processUrls)&&(n.processUrls=r.processUrls),O(r.processRuleNames)&&(n.processRuleNames=r.processRuleNames),O(r.processKeyFrames)&&(n.processKeyFrames=r.processKeyFrames),O(r.processEnv)&&(n.processEnv=r.processEnv),O(r.useCalc)&&(n.useCalc=r.useCalc),function(r){return!Array.isArray(r)||r.some((function(r){return typeof r.search!=typeof r.replace||I(r.search)||I(r.replace)||Array.isArray(r.search)&&Array.isArray(r.replace)&&r.search.length!==r.replace.length}))}(r.stringMap))||U(r.stringMap).forEach((function(r){r.name===S[0].name?n.stringMap.splice(0,1,r):r.name===S[1].name?n.stringMap.splice(1,1,r):n.stringMap.push(r)}));return C(r.processDeclarationPlugins)&&(n.plugins=r.processDeclarationPlugins.map((function(r){return i(i({},r),{directives:{control:{},value:[]}})}))),r.aliases&&(e=r.aliases,!Object.entries(e).some((function(r){return!T(r[1])})))&&(n.aliases=r.aliases),n},D=function(r){G.options=$(r),G.keyframes=[],G.keyframesToRemove=[],G.keyframesStringMap={},G.keyframesRegExp=N,G.rules=[],G.containersToRemove=[],G.rulesPrefixRegExp=function(r){var e=r.ltrPrefix,n=r.rtlPrefix,o=r.bothPrefix;if(!r.ignorePrefixedRules)return N;var i=[];return i=F(i,e),i=F(i,n),i=(i=F(i,o)).map((function(r){var e=r.replace(R,"\\$&");return E.test(r)?"".concat(e,"(?:\\W|$)"):e})),new RegExp("(".concat(i.join("|"),")"))}(G.options),G.unmodifiedRules=[]},K=function(){var r,e;G.keyframesStringMap=(r=G.keyframes,e={},r.forEach((function(r){e[r.atRuleParams]={name:r.atRule.params,nameFlipped:r.atRuleFlipped.params}})),e),G.keyframesRegExp=function(r){return new RegExp("(^|[^\\w-]| )(".concat(Object.keys(r).join("|"),")( |[^\\w-]|$)"),"g")}(G.keyframesStringMap)},W=Object.values(s),_=Object.values(l),Z=function(r){var e=r.toString().match(b);if(e&&function(r){return W.includes("".concat(r[2]))&&(void 0===r[1]||_.includes("".concat(r[1])))}(e)){var n={directive:e[2]};return e[1]&&(n.block=e[1]),e[3]&&(n.option=e[3]),n}return null},q=function(r,e){return r.directive===s.IGNORE&&!r.block&&e[s.IGNORE]&&e[s.IGNORE].block===l.BEGIN},z=function(r,e){var n=r[e];if(n){var o=n.block;if(o!==l.BEGIN&&delete r[e],o!==l.END)return!0}return!1},H=function(r,e){var n=r[s.SOURCE],o=z(r,s.SOURCE);return n&&o?n.option:e||void 0},J=function(r,e,n,o){r.each((function(r){if(k(r)||e.includes(r.type))if(k(r)){var i=Z(r);i&&n(r,i)}else o(r)}))},Q=/^-\w+-/,V=function(r){return r.replace(Q,"")},X=function(r,e,n,o,i){void 0===n&&(n=void 0),void 0===o&&(o=!1),void 0===i&&(i=!1);var t={};J(e,[d.AT_RULE,d.RULE],(function(r,e){q(e,t)||(t[e.directive]=e)}),(function(e){if(!z(t,s.IGNORE)&&x(e)&&V(e.name)!==c){var d=H(t,n),a=z(t,s.FREEZE)||o;i&&e.nodes&&r.parseDeclarations(e,i,d,a,z(t,s.RULES),z(t,s.URLS)),r.parseAtRules(r,e,d,a,i),r.parseRules(r,e,d,a,i)}}))},Y=function(r,e){if(G.options.prefixSelectorTransformer){var n=G.options.prefixSelectorTransformer(r,e);if(n&&T(n))return n}return g.test(e)?e.replace(g,"$1".concat(r)):h.test(e)?e.replace(h,"".concat(r,"$1")):y.test(e)?e.replace(y,"".concat(r,"$1")):"".concat(r," ").concat(e)},rr=function(r,e){r.selectors&&(r.selectors=T(e)?r.selectors.map((function(r){return G.rulesPrefixRegExp.test(r)?r:Y(e,r)})):r.selectors.reduce((function(r,n){return r=G.rulesPrefixRegExp.test(n)?t(t([],r,!0),[n],!1):r.concat(e.map((function(r){return Y(r,n)})))}),[]))},er=function(r){return!!r.nodes&&r.some((function(r){return w(r)||A(r)&&er(r)||x(r)&&er(r)}))},nr=function(r,e,n){if(function(r){return r.some((function(r){return w(r)}))}(e)){var o;for(n=t([],n,!0);n.length;){o=n.shift();var i=r.nodes.find((function(r){if(A(r)&&A(o)&&r.selector===o.selector)return!0}));i?o=i:(o=o.clone().removeAll(),r.append(o)),r=o}r.append(e)}},or=function(n,o,i,t,d){var a={rule:n,ruleLTR:o,ruleRTL:i,ruleBoth:t,ruleSafe:d};return G.options.mode!==r.diff&&function(n,o,i,t){var d=G.options,a=d.mode,s=d.ltrPrefix,l=d.rtlPrefix,c=d.bothPrefix,u=d.source;a===r.combined?(rr(n,u===e.ltr?s:l),rr(o,u===e.ltr?l:s)):(rr(n,u===e.ltr?l:s),rr(o,u===e.ltr?s:l)),rr(i,c),rr(t,c)}(o,i,t,d),G.rules.push(a),a},ir=function(r,e,n,o,i){var t=function(r){for(var e,n=[];A(e=r)||x(e);)n.unshift(r),r=r.parent;return n.pop(),n}(r),d=t.shift(),a=G.rules.find((function(r){return r.rule===d}));if(!a){var s=d.clone().removeAll(),l=s.clone(),c=s.clone(),u=s.clone();a=or(d,s,l,c,u)}!function(r,e,n,o,i,t){nr(i.ruleLTR,r,t),nr(i.ruleRTL,e,t),nr(i.ruleBoth,n,t),nr(i.ruleSafe,o,t)}(e,n,o,i,a,t)},tr=function(r,e){void 0===e&&(e="\n\n"),r&&(A(r)||x(r))&&(r.raws.before="".concat(e).concat(r.raws.before?r.raws.before.replace(/\n/g,""):""))},dr=function(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];r.forEach((function(r){var e=r.prev();e&&!k(e)&&tr(r),r.walk((function(r){if(w(r)){var e=r;e.raws&&e.raws.value&&p.test(e.raws.value.raw)&&(delete e.raws.value,e.value=e.value.trim())}}))}))},ar=function(r){er(r)?r.walkRules((function(r){ar(r),er(r)||r.remove()})):r.remove()},sr=function(e){G.options.mode===r.diff&&G.containersToRemove.push(e)},lr=function(o,i,t,a,l){void 0===t&&(t=void 0),void 0===a&&(a=!1),void 0===l&&(l=!1);var c={},u=G.options,f=u.mode,p=u.source,v=u.ltrPrefix,b=u.rtlPrefix;J(i,[d.RULE],(function(o,t){var d,a;if(t.directive===s.RAW&&t.option){var l=H(c),u=n.parse(t.option,{from:null===(a=null===(d=i.source)||void 0===d?void 0:d.input)||void 0===a?void 0:a.from});return f!==r.diff&&u.walkRules((function(r){rr(r,!l&&p===e.ltr||l&&l===e.ltr?b:v)})),void o.replaceWith(u.nodes)}tr(o.next()),o.remove(),q(t,c)||(c[t.directive]=t)}),(function(n){if(z(c,s.IGNORE))sr(n);else{var i=H(c,t),d=z(c,s.FREEZE)||a;if(d)return f===r.combined&&rr(n,!i&&p===e.ltr||i&&i===e.ltr?v:b),void sr(n);n.selectors.find((function(r){return G.rulesPrefixRegExp.test(r)}))?sr(n):o.parseDeclarations(n,l,i,d,z(c,s.RULES),z(c,s.URLS)),o.parseAtRules(o,n,i,d,!0),o.parseRules(o,n,i,d,!0)}}))},cr=function(e){G.options.mode===r.diff&&G.keyframesToRemove.push(e)},ur=function(r){var i=G.options,t=i.source,a=i.processUrls,l=i.useCalc,u=i.stringMap;if(i.processKeyFrames){var f={};J(r,[d.AT_RULE,d.RULE],(function(r,e){q(e,f)||(f[e.directive]=e)}),(function(r){var i,d;if(z(f,s.IGNORE))cr(r);else if(x(r)&&V(r.name)===c){var p=r.toString(),v=o.process(p,{processUrls:a,useCalc:l,stringMap:u});if(p!==v){var b=n.parse(v,{from:null===(d=null===(i=r.source)||void 0===i?void 0:i.input)||void 0===d?void 0:d.from}).first,m=r.params,g="".concat(m,"-").concat(e.ltr),h="".concat(m,"-").concat(e.rtl),y=H(f);r.params=!y&&t===e.ltr||y&&y===e.ltr?g:h,b.params=!y&&t===e.ltr||y&&y===e.ltr?h:g,G.keyframes.push({atRuleParams:m,atRule:r,atRuleFlipped:b})}else cr(r)}})),K()}},fr={animation:{overridden:null,overrides:["animation-direction","animation-duration","animation-delay","animation-name","animation-fill-mode","animation-iteration-count","animation-play-state","animation-timing-function"]},background:{overridden:null,overrides:["background-attachment","background-clip","background-color","background-image","background-repeat","background-size"]},"background-position":{overridden:"background",overrides:["background-position-x","background-position-y"]},border:{overridden:null,overrides:[]},"border-bottom":{overridden:"border",overrides:["border-bottom-color","border-bottom-style","border-bottom-width"]},"border-left":{overridden:"border",overrides:["border-left-color","border-left-style","border-left-width"]},"border-right":{overridden:"border",overrides:["border-right-color","border-right-style","border-right-width"]},"border-top":{overridden:"border",overrides:["border-top-color","border-top-style","border-top-width"]},"border-color":{overridden:"border",overrides:["border-bottom-color","border-left-color","border-right-color","border-top-color"]},"border-style":{overridden:"border",overrides:["border-bottom-style","border-left-style","border-right-style","border-top-style"]},"border-width":{overridden:"border",overrides:["border-bottom-width","border-left-width","border-right-width","border-top-width"]},"border-radius":{overridden:null,overrides:["border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius"]},margin:{overridden:null,overrides:["margin-bottom","margin-left","margin-top","margin-right"]},padding:{overridden:null,overrides:["padding-bottom","padding-left","padding-top","padding-right"]},transition:{overridden:null,overrides:["transition-delay","transition-duration","transition-property","transition-timing-function"]}},pr={"border-left":{overridden:"border",overrides:["border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width"]},"border-right":{overridden:"border",overrides:["border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width"]},"border-left-color":{overridden:"border",overrides:["border-inline-end-color","border-inline-start-color"]},"border-right-color":{overridden:"border",overrides:["border-inline-end-color","border-inline-start-color"]},"border-left-style":{overridden:"border",overrides:["border-inline-end-style","border-inline-start-style"]},"border-right-style":{overridden:"border",overrides:["border-inline-end-style","border-inline-start-style"]},"border-left-width":{overridden:"border",overrides:["border-inline-end-width","border-inline-start-width"]},"border-right-width":{overridden:"border",overrides:["border-inline-end-width","border-inline-start-width"]},"border-radius":{overridden:null,overrides:["border-start-start-radius","border-start-end-radius","border-end-start-radius","border-end-end-radius"]},"border-bottom-left-radius":{overridden:"border-radius",overrides:["border-end-start-radius","border-end-end-radius"]},"border-bottom-right-radius":{overridden:"border-radius",overrides:["border-end-start-radius","border-end-end-radius"]},"border-top-left-radius":{overridden:"border-radius",overrides:["border-start-start-radius","border-start-end-radius"]},"border-top-right-radius":{overridden:"border-radius",overrides:["border-start-start-radius","border-start-end-radius"]},left:{overridden:null,overrides:["inset-inline","inset-inline-end","inset-inline-start"]},right:{overridden:null,overrides:["inset-inline","inset-inline-end","inset-inline-start"]},margin:{overridden:null,overrides:["margin-inline","margin-inline-end","margin-inline-start","margin-block","margin-block-end","margin-block-start"]},"margin-left":{overridden:null,overrides:["margin-inline","margin-inline-end","margin-inline-start"]},"margin-right":{overridden:null,overrides:["margin-inline","margin-inline-end","margin-inline-start"]},padding:{overridden:null,overrides:["padding-inline","padding-inline-end","padding-inline-start","padding-block","padding-block-end","padding-block-start"]},"padding-left":{overridden:null,overrides:["padding-inline","padding-inline-end","padding-inline-start"]},"padding-right":{overridden:null,overrides:["padding-inline","padding-inline-end","padding-inline-start"]}},vr=["box-shadow","clear","cursor","direction","float","left","right","text-align","text-align-last","text-shadow","transform","transform-origin"],br={0:["border-bottom-right-radius","border-bottom-left-radius","border-end-end-radius","border-end-start-radius","border-start-end-radius","border-start-start-radius","border-top-left-radius","border-top-right-radius","margin-block-end","margin-block-start","margin-top","margin-right","margin-bottom","margin-left","margin-inline-end","margin-inline-start","padding-block-end","padding-block-start","padding-top","padding-right","padding-bottom","padding-left","padding-inline-end","padding-inline-start","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-top","scroll-margin-right","scroll-margin-bottom","scroll-margin-left","scroll-margin-inline-end","scroll-margin-inline-start"],auto:["top","right","bottom","left","grid-column-end","grid-column-start","grid-row-end","grid-row-start","inset-block-end","inset-block-start","inset-inline-end","inset-inline-start","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-top","scroll-padding-right","scroll-padding-bottom","scroll-padding-left","scroll-padding-inline-end","scroll-padding-inline-start"],currentcolor:["border-block-start-color","border-block-end-color","border-top-color","border-right-color","border-bottom-color","border-left-color","border-inline-start-color","border-inline-end-color"],medium:["border-block-start-width","border-block-end-width","border-top-width","border-right-width","border-bottom-width","border-left-width","border-inline-start-width","border-inline-end-width"],none:["border-block-start","border-block-end","border-top","border-right","border-bottom","border-left","border-top-style","border-right-style","border-bottom-style","border-left-style","border-block-start-style","border-block-end-style","border-inline-start","border-inline-end","border-inline-start-style","border-inline-end-style"]},mr={},gr={},hr={},yr=function(r){return Array.from(new Set(r))},Rr=function(r){var e=fr[r].overridden;return e?[e].concat(Rr(e)):[]};Object.keys(fr).forEach((function(r){var e=Rr(r);mr[r]=e,fr[r].overrides.forEach((function(n){mr[n]=[r].concat(e)}))})),Object.keys(pr).forEach((function(r){var e=function(r){var e,n=null===(e=fr[r])||void 0===e?void 0:e.overridden,o=pr[r].overridden,i=n?[n].concat(Rr(n)):[],d=o?[o].concat(Rr(o)):[];return yr(t(t([],i,!0),d,!0))}(r);mr[r]=mr[r]?yr(t(t([],mr[r],!0),e,!0)):e,pr[r].overrides.forEach((function(n){mr[n]=mr[n]?yr(t(t([],mr[n],!0),[r].concat(e),!0)):yr([r].concat(e))}))})),Object.assign(gr,mr),vr.forEach((function(r){gr[r]=[]})),Object.keys(br).forEach((function(r){br[r].forEach((function(e){hr[e]=r}))}));var Er=function(r,e){var n=r.clone(),o=r.prev();if(o&&k(o)){var i=o.clone();e.append(i),o.remove()}e.append(n)},xr=function(r){var e=!!r.raws&&!!r.raws.value&&r.raws.value.raw;return!(!e||!v.test(e))},kr=function(r,e){return e.some((function(e){return mr[e]&&mr[e].includes(r)}))},wr=function(r,e,n){return!!n[e.prop]&&Object.entries(n[e.prop].indexes).some((function(o){return o[1].value===e.value.trim()&&!function(r,e,n){var o=r.index(e),i=Object.keys(n[e.prop].indexes).map(Number);return 1!==i.length&&i.some((function(r){return r>o}))}(r,o[1].decl,n)}))},Ar={parseRules:lr,parseAtRules:X,parseKeyFrames:ur,parseDeclarations:function(e,i,t,a,l,c){var p=G.options,v=p.mode,b=p.source,g=p.safeBothPrefix,h=p.processUrls,y=p.processRuleNames,R=p.processEnv,E=p.useCalc,x=p.stringMap,k=p.greedy,O=p.aliases,P=p.plugins,T=[],N=e.clone().removeAll(),S=N.clone(),L=N.clone(),U=N.clone(),M=Array.prototype.reduce.call(e.nodes,(function(r,n){if(w(n)){var o=e.index(n);r[n.prop]=r[n.prop]||{ignore:!1,indexes:{}},r[n.prop].indexes[o]={decl:n,value:n.value.trim(),ignore:!1}}return r}),{}),j=[],I={},C=!1;J(e,[d.DECLARATION],(function(o,i){var d,a;if(tr(o.next()),o.remove(),i.directive===s.RAW&&i.option){var l=H(I,t),c=n.parse(i.option,{from:null===(a=null===(d=e.source)||void 0===d?void 0:d.input)||void 0===a?void 0:a.from});v===r.combined&&!l||l&&(v===r.combined&&l===b||v===r.override&&l!==b)?S.append(c.nodes):N.append(c.nodes)}q(i,I)||(I[i.directive]=i)}),(function(i){var d,l;if(!z(I,s.IGNORE)){var p=z(I,s.URLS),y="".concat(i.toString(),";"),w=o.process(y,{processUrls:h||p||c,processEnv:R,useCalc:E,stringMap:x,greedy:k,aliases:O},P),A=n.parse(w,{from:null===(l=null===(d=e.source)||void 0===d?void 0:d.input)||void 0===l?void 0:l.from}).first;A.source=i.source,A.raws=i.raws;var F=i.prop,B=V(F),$=i.value.trim(),D=Object.keys(M[F].indexes).map(Number),K=B===u||B===f||O[B]===u||O[B]===f,W=A.prop.trim(),_=A.value.trim(),Z=O[B]?mr[O[B]]:mr[B],q=j.includes(B)||j.includes(O[B])||!!Z&&Z.some((function(r){return j.indexOf(r)>=0})),J=O[B]?kr(O[B],j):kr(B,j),Q=!!g&&(O[B]?!!gr[O[B]]:!!gr[B]),X=H(I,t),Y=!X||X===b||v===r.diff;if(z(I,s.FREEZE)||a)v===r.combined&&(Er(i,N),j.push(B),T.push(i));else if((F!==W||$!==_||q||J||Q||K)&&!(M[i.prop].ignore&&!Q||function(r,e,n,o){var i=r.index(e),t=o[e.prop],d=Object.keys(t.indexes).map(Number).sort();if(1===d.length)return!1;var a=d.filter((function(r){return r>i}));if(a.length){if(m.test(e.prop)){if(o[n.prop]){var s=o[n.prop],l=Object.keys(s.indexes).map(Number).sort().slice(-1)[0],c=a.slice(-1)[0];return t.indexes[c].value===s.indexes[l].value&&(t.ignore=!0,s.ignore=!0),!0}return!1}return!0}return!1}(e,i,A,M)))if(K)if(F!==W||$!==_||0!==G.keyframes.length&&G.keyframesRegExp.test($)){var rr=i.value.replace(G.keyframesRegExp,(function(r,e,n,o){return e+G.keyframesStringMap[n].name+o})),er=i.value.replace(G.keyframesRegExp,(function(r,e,n,o){return e+G.keyframesStringMap[n].nameFlipped+o})),nr=i.clone();if(v===r.combined)(or=i.clone()).value=rr,nr.value=er,Y?(N.append(or),S.append(nr)):(N.append(nr),S.append(or)),T.push(i);else i.value=rr,nr.value=er,Y?N.append(nr):S.append(nr),g&&v!==r.diff&&(Er(i,U),T.push(i))}else g&&!xr(i)&&(v===r.diff?Er(i,N):Er(i,U),T.push(i));else{if(F===W&&$===_)return void((q||Q||J)&&!xr(i)&&(v===r.diff?Er(i,N):Er(i,q||J?L:U),T.push(i)));if(wr(e,A,M))return C=!0,void(Q&&!xr(i)&&(v===r.diff?Er(i,N):Er(i,U),T.push(i)));if(v===r.combined)Y?(Er(i,N),S.append(A)):(Er(i,S),N.append(A)),T.push(i);else{var or;if(m.test(i.prop)&&!M[A.prop]&&e.index(i)===D[0])(or=i.clone()).value=hr[i.prop]||"unset",Y?N.append(or):S.append(or);Q&&!xr(i)&&v!==r.diff&&(Er(i,U),T.push(i)),Y?N.append(A):S.append(A)}j.push(B)}}})),T.length&&T.forEach((function(r){return r.remove()})),N.nodes.length||S.nodes.length||L.nodes.length||U.nodes.length?i?ir(e,N,S,L,U):or(e,N,S,L,U):A(e)&&(y||l)&&!C?G.unmodifiedRules.push({rule:e,hasParentRule:i}):v===r.diff&&G.containersToRemove.push(e)}};function Or(e){var n;return void 0===e&&(e={}),(n={postcssPlugin:"postcss-rtlcss"})[e.runOnExit?"OnceExit":"Once"]=function(n){D(e),ur(n),X(Ar,n),lr(Ar,n),function(){if(G.unmodifiedRules.length){var e=G.options.stringMap.reduce((function(r,e){var n=T(e.search)?[e.search]:e.search,o=T(e.replace)?[e.replace]:e.replace;return n.forEach((function(e,n){r[e]=o[n],r[o[n]]=e})),r}),{}),n=Object.keys(e).join("|"),o=G.options.greedy?new RegExp("(".concat(n,")"),"g"):new RegExp("\\b(".concat(n,")\\b"),"g"),i={},t=[];G.unmodifiedRules.forEach((function(e){var n=!1;e.rule.selectors.forEach((function(r){o.test(r)&&(i[r]=e.rule.clone(),n=!0),o.lastIndex=0})),n?t.push(e):G.options.mode===r.diff&&G.containersToRemove.push(e.rule)})),t.forEach((function(n){for(var t=n.rule,d=n.hasParentRule,a=t.clone(),s=t.clone().removeAll(),l=void 0,c=0,u=t.selectors;c<u.length;c++){var f=u[c].replace(o,(function(r,n){return e[n]}));if(i[f]){l=i[f].clone();break}}l&&(l.selectors=a.selectors,G.options.mode===r.combined?d?ir(t.removeAll(),a,l,s,s):or(t.removeAll(),a,l,s,s):d?ir(G.options.mode===r.override?t:t.removeAll(),l,s,s,s):or(G.options.mode===r.override?t:t.removeAll(),l,s,s,s)),G.options.mode===r.diff&&G.containersToRemove.push(t)}))}}(),G.rules.forEach((function(r){var e=r.rule,n=r.ruleLTR,o=r.ruleRTL,i=r.ruleBoth,t=r.ruleSafe;i.nodes.length&&e.after(i),o.nodes.length&&e.after(o),n.nodes.length&&e.after(n),t.nodes.length&&e.after(t),ar(e),dr(e,n,o,i,t)})),G.keyframes.forEach((function(r){var e=r.atRule,n=r.atRuleFlipped;e.after(n),dr(e,n)})),function(e){var n=G.options,o=G.rules,i=G.containersToRemove,t=G.keyframes,d=G.keyframesToRemove,a=n.mode,s=n.processKeyFrames;a===r.diff&&(o.forEach((function(r){r.rule.remove()})),i.forEach((function(r){r.remove()})),t.forEach((function(r){r.atRule.remove()})),d.forEach((function(r){r.remove()}))),e.walk((function(n){if(a===r.diff&&(k(n)||x(n)&&!s&&V(n.name)===c)&&n.remove(),(A(n)||x(n))&&n.nodes)if(er(n)){var o=n.prev();o?k(o)||tr(n):tr(n,n.parent===e?"":"\n")}else a===r.diff&&n.remove()}))}(n)},n}Or.postcss=!0,module.exports=Or;
;