@projectwallace/format-css 1.4.0 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,136 +1,131 @@
1
- import K from "css-tree/parser";
2
- const f = " ", u = "", _ = ":", C = ";", O = "(", L = ")", I = "Atrule", Y = "Rule", h = "Block", w = "SelectorList", $ = "Selector", k = "Declaration", m = "Operator";
3
- function a(i) {
4
- return /[A-Z]/.test(i) ? i.toLowerCase() : i;
1
+ import F from "css-tree/parser";
2
+ const f = " ", u = "", b = ":", m = ";", S = '"', L = "(", C = ")", G = "[", Q = "]", Y = "Atrule", g = "Rule", w = "Block", B = "SelectorList", $ = "Selector", v = "Declaration", k = "Operator";
3
+ function p(s) {
4
+ return /[A-Z]/.test(s) ? s.toLowerCase() : s;
5
5
  }
6
- function j(i, { minify: p = !1 } = {}) {
7
- let g = K(i, {
6
+ function j(s, { minify: c = !1 } = {}) {
7
+ let U = F(s, {
8
8
  positions: !0,
9
9
  parseAtrulePrelude: !1,
10
10
  parseCustomProperty: !0,
11
11
  parseValue: !0
12
12
  });
13
- const B = p ? u : " ", o = p ? u : `
14
- `, b = p ? u : f, D = p ? u : C;
15
- let s = 0;
13
+ const D = c ? u : " ", i = c ? u : `
14
+ `, y = c ? u : f, K = c ? u : m;
15
+ let a = 0;
16
16
  function E(n) {
17
- return B.repeat(n);
17
+ return D.repeat(n);
18
18
  }
19
- function y(n) {
19
+ function _(n) {
20
20
  let e = n.loc;
21
- return e ? i.slice(e.start.offset, e.end.offset) : u;
21
+ return e ? s.slice(e.start.offset, e.end.offset) : u;
22
22
  }
23
23
  function M(n) {
24
24
  let e = n.loc;
25
- return e ? i.slice(e.start.offset, e.end.offset) : u;
25
+ return e ? s.slice(e.start.offset, e.end.offset) : u;
26
26
  }
27
- function N(n) {
28
- let e, t = n.prelude, r = n.block;
29
- return t.type === w ? e = H(t) : e = T(t, s), r.type === h && (e += R(r)), e;
27
+ function R(n) {
28
+ let e, r = n.prelude, t = n.block;
29
+ return r.type === B ? e = H(r) : e = A(r, a), t.type === w && (e += N(t)), e;
30
30
  }
31
31
  function H(n) {
32
32
  let e = u;
33
- return n.children.forEach((t, r) => {
34
- t.type === $ && (e += U(t)), r.next !== null && (e += "," + o);
33
+ return n.children.forEach((r, t) => {
34
+ r.type === $ && (e += E(a) + T(r)), t.next !== null && (e += "," + i);
35
35
  }), e;
36
36
  }
37
- function P(n) {
37
+ function T(n) {
38
38
  let e = u;
39
- return (n.children || []).forEach((r) => {
40
- switch (r.type) {
39
+ return (n.children || []).forEach((t) => {
40
+ switch (t.type) {
41
41
  case "Combinator": {
42
- e += f, r.name !== " " && (e += r.name + f);
42
+ e += f, t.name !== " " && (e += t.name + f);
43
43
  break;
44
44
  }
45
45
  case "PseudoElementSelector": {
46
- e += _ + _, e += a(r.name);
46
+ e += b + b, e += p(t.name);
47
47
  break;
48
48
  }
49
49
  case "PseudoClassSelector": {
50
- e += _;
51
- let l = a(r.name);
52
- (l === "before" || l === "after") && (e += _), e += l, r.children && (e += O + P(r) + L);
50
+ e += b;
51
+ let l = p(t.name);
52
+ (l === "before" || l === "after") && (e += b), e += l, t.children && (e += L + T(t) + C);
53
53
  break;
54
54
  }
55
- case w: {
56
- r.children.forEach((l, c) => {
57
- l.type === $ && (e += P(l)), c.next && (e += "," + f);
55
+ case B: {
56
+ t.children.forEach((l, o) => {
57
+ l.type === $ && (e += T(l)), o.next && (e += "," + f);
58
58
  });
59
59
  break;
60
60
  }
61
61
  case "Nth": {
62
- let l = r.nth;
62
+ let l = t.nth;
63
63
  if (l)
64
64
  if (l.type === "AnPlusB") {
65
- let c = l.a, A = l.b;
66
- c !== null && (e += c + "n"), c !== null && A !== null && (e += f), A !== null && (c !== null && !A.startsWith("-") && (e += "+" + f), e += A);
65
+ let o = l.a, P = l.b;
66
+ o !== null && (e += o + "n"), o !== null && P !== null && (e += f), P !== null && (o !== null && !P.startsWith("-") && (e += "+" + f), e += P);
67
67
  } else
68
- e += y(l);
69
- r.selector !== null && (e += f + "of" + f + P(r.selector));
68
+ e += _(l);
69
+ t.selector !== null && (e += f + "of" + f + T(t.selector));
70
+ break;
71
+ }
72
+ case "AttributeSelector": {
73
+ e += G, e += t.name.name, t.matcher && t.value && (e += t.matcher, e += S, t.value.type === "String" ? e += t.value.value : t.value.type === "Identifier" && (e += t.value.name), e += S), t.flags && (e += f + t.flags), e += Q;
70
74
  break;
71
75
  }
72
76
  default: {
73
- e += y(r);
77
+ e += _(t);
74
78
  break;
75
79
  }
76
80
  }
77
81
  }), e;
78
82
  }
79
- function U(n) {
80
- return E(s) + P(n);
81
- }
82
- function R(n) {
83
- let e = n.children, t = b;
84
- return e.isEmpty ? t + "{}" : (t += "{" + o, s++, e.forEach((r, l) => {
85
- r.type === k ? (t += W(r), l.next === null ? t += D : t += C) : (l.prev !== null && l.prev.data.type === k && (t += o), r.type === Y ? t += N(r) : r.type === I ? t += v(r) : t += T(r, s)), l.next !== null && (t += o, r.type !== k && (t += o));
86
- }), s--, t += o, t += E(s) + "}", t);
83
+ function N(n) {
84
+ let e = n.children, r = y;
85
+ return e.isEmpty ? r + "{}" : (r += "{" + i, a++, e.forEach((t, l) => {
86
+ t.type === v ? (r += W(t), l.next === null ? r += K : r += m) : (l.prev !== null && l.prev.data.type === v && (r += i), t.type === g ? r += R(t) : t.type === Y ? r += I(t) : r += A(t, a)), l.next !== null && (r += i, t.type !== v && (r += i));
87
+ }), a--, r += i, r += E(a) + "}", r);
87
88
  }
88
- function v(n) {
89
- let e = E(s) + "@", t = n.prelude, r = n.block;
90
- return e += a(n.name), t !== null && (e += f + V(t)), r === null ? e += C : r.type === h && (e += R(r)), e;
89
+ function I(n) {
90
+ let e = E(a) + "@", r = n.prelude, t = n.block;
91
+ return e += p(n.name), r !== null && (e += f + V(r)), t === null ? e += m : t.type === w && (e += N(t)), e;
91
92
  }
92
93
  function V(n) {
93
- let e = y(n);
94
+ let e = _(n);
94
95
  return e.replace(/\s*([:,])/g, e.includes("selector(") ? "$1" : "$1 ").replace(/\s*(=>|<=)\s*/g, " $1 ").replace(/\)([a-zA-Z])/g, ") $1").replace(new RegExp("(?<!<=)(?<!=>)(?<!<= )([<>])(?![<= ])(?![=> ])(?![ =>])", "g"), " $1 ").replace(/\s+/g, f);
95
96
  }
96
97
  function W(n) {
97
98
  let e = n.property;
98
- e.charCodeAt(0) === 45 && e.charCodeAt(1) === 45 || (e = a(e));
99
- let t = x(n.value);
100
- return e === "font" && (t = t.replace(/\s*\/\s*/, "/")), t === u && p && (t += f), E(s) + e + _ + b + t;
99
+ e.charCodeAt(0) === 45 && e.charCodeAt(1) === 45 || (e = p(e));
100
+ let r = x(n.value);
101
+ return e === "font" && (r = r.replace(/\s*\/\s*/, "/")), r === u && c && (r += f), E(a) + e + b + y + r;
101
102
  }
102
- function S(n) {
103
+ function O(n) {
103
104
  let e = u;
104
- return n.forEach((t, r) => {
105
- t.type === "Identifier" ? e += t.name : t.type === "Function" ? e += F(t) : t.type === "Dimension" ? e += z(t) : t.type === "Value" ? e += x(t) : t.type === m ? e += Z(t) : t.type === "Parentheses" ? e += O + S(t.children) + L : e += y(t), t.type !== m && r.next !== null && r.next.data.type !== m && (e += f);
105
+ return n.forEach((r, t) => {
106
+ r.type === "Identifier" ? e += r.name : r.type === "Function" ? e += p(r.name) + L + O(r.children) + C : r.type === "Dimension" ? e += r.value + p(r.unit) : r.type === "Value" ? e += x(r) : r.type === k ? e += Z(r) : r.type === "Parentheses" ? e += L + O(r.children) + C : r.type === "Url" ? e += "url(" + S + r.value + S + C : e += _(r), r.type !== k && t.next !== null && t.next.data.type !== k && (e += f);
106
107
  }), e;
107
108
  }
108
109
  function Z(n) {
109
- let e = u, t = n.value.trim(), r = t.charCodeAt(0);
110
- return r === 43 || r === 45 ? e += f : r !== 44 && (e += b), e += t, r === 43 || r === 45 ? e += f : e += b, e;
111
- }
112
- function z(n) {
113
- return n.value + a(n.unit);
110
+ let e = u, r = n.value.trim(), t = r.charCodeAt(0);
111
+ return t === 43 || t === 45 ? e += f : t !== 44 && (e += y), e += r, t === 43 || t === 45 ? e += f : e += y, e;
114
112
  }
115
113
  function x(n) {
116
- return n.type === "Raw" ? T(n, 0) : S(n.children);
114
+ return n.type === "Raw" ? A(n, 0) : O(n.children);
117
115
  }
118
- function F(n) {
119
- return a(n.name) + O + S(n.children) + L;
120
- }
121
- function T(n, e) {
116
+ function A(n, e) {
122
117
  return E(e) + M(n).trim();
123
118
  }
124
- function G(n) {
119
+ function z(n) {
125
120
  let e = u;
126
- return n.children.forEach((r, l) => {
127
- r.type === Y ? e += N(r) : r.type === I ? e += v(r) : e += T(r, s), l.next !== null && (e += o + o);
121
+ return n.children.forEach((t, l) => {
122
+ t.type === g ? e += R(t) : t.type === Y ? e += I(t) : e += A(t, a), l.next !== null && (e += i + i);
128
123
  }), e;
129
124
  }
130
- return G(g);
125
+ return z(U);
131
126
  }
132
- function J(i) {
133
- return j(i, { minify: !0 });
127
+ function J(s) {
128
+ return j(s, { minify: !0 });
134
129
  }
135
130
  export {
136
131
  j as format,
@@ -1,2 +1,2 @@
1
- (function(o,E){typeof exports=="object"&&typeof module<"u"?E(exports,require("css-tree/parser")):typeof define=="function"&&define.amd?define(["exports","css-tree/parser"],E):(o=typeof globalThis<"u"?globalThis:o||self,E(o.formatCss={},o.parse))})(this,function(o,E){"use strict";const f=" ",u="",y=":",O=";",m="(",L=")",h="Atrule",v="Rule",x="Block",I="SelectorList",Y="Selector",k="Declaration",N="Operator";function a(i){return/[A-Z]/.test(i)?i.toLowerCase():i}function w(i,{minify:_=!1}={}){let D=E(i,{positions:!0,parseAtrulePrelude:!1,parseCustomProperty:!0,parseValue:!0});const j=_?u:" ",c=_?u:`
2
- `,T=_?u:f,H=_?u:O;let s=0;function b(n){return j.repeat(n)}function P(n){let e=n.loc;return e?i.slice(e.start.offset,e.end.offset):u}function U(n){let e=n.loc;return e?i.slice(e.start.offset,e.end.offset):u}function g(n){let e,t=n.prelude,r=n.block;return t.type===I?e=V(t):e=A(t,s),r.type===x&&(e+=$(r)),e}function V(n){let e=u;return n.children.forEach((t,r)=>{t.type===Y&&(e+=W(t)),r.next!==null&&(e+=","+c)}),e}function S(n){let e=u;return(n.children||[]).forEach(r=>{switch(r.type){case"Combinator":{e+=f,r.name!==" "&&(e+=r.name+f);break}case"PseudoElementSelector":{e+=y+y,e+=a(r.name);break}case"PseudoClassSelector":{e+=y;let l=a(r.name);(l==="before"||l==="after")&&(e+=y),e+=l,r.children&&(e+=m+S(r)+L);break}case I:{r.children.forEach((l,p)=>{l.type===Y&&(e+=S(l)),p.next&&(e+=","+f)});break}case"Nth":{let l=r.nth;if(l)if(l.type==="AnPlusB"){let p=l.a,C=l.b;p!==null&&(e+=p+"n"),p!==null&&C!==null&&(e+=f),C!==null&&(p!==null&&!C.startsWith("-")&&(e+="+"+f),e+=C)}else e+=P(l);r.selector!==null&&(e+=f+"of"+f+S(r.selector));break}default:{e+=P(r);break}}}),e}function W(n){return b(s)+S(n)}function $(n){let e=n.children,t=T;return e.isEmpty?t+"{}":(t+="{"+c,s++,e.forEach((r,l)=>{r.type===k?(t+=q(r),l.next===null?t+=H:t+=O):(l.prev!==null&&l.prev.data.type===k&&(t+=c),r.type===v?t+=g(r):r.type===h?t+=d(r):t+=A(r,s)),l.next!==null&&(t+=c,r.type!==k&&(t+=c))}),s--,t+=c,t+=b(s)+"}",t)}function d(n){let e=b(s)+"@",t=n.prelude,r=n.block;return e+=a(n.name),t!==null&&(e+=f+Z(t)),r===null?e+=O:r.type===x&&(e+=$(r)),e}function Z(n){let e=P(n);return e.replace(/\s*([:,])/g,e.includes("selector(")?"$1":"$1 ").replace(/\s*(=>|<=)\s*/g," $1 ").replace(/\)([a-zA-Z])/g,") $1").replace(new RegExp("(?<!<=)(?<!=>)(?<!<= )([<>])(?![<= ])(?![=> ])(?![ =>])","g")," $1 ").replace(/\s+/g,f)}function q(n){let e=n.property;e.charCodeAt(0)===45&&e.charCodeAt(1)===45||(e=a(e));let t=B(n.value);return e==="font"&&(t=t.replace(/\s*\/\s*/,"/")),t===u&&_&&(t+=f),b(s)+e+y+T+t}function R(n){let e=u;return n.forEach((t,r)=>{t.type==="Identifier"?e+=t.name:t.type==="Function"?e+=G(t):t.type==="Dimension"?e+=F(t):t.type==="Value"?e+=B(t):t.type===N?e+=z(t):t.type==="Parentheses"?e+=m+R(t.children)+L:e+=P(t),t.type!==N&&r.next!==null&&r.next.data.type!==N&&(e+=f)}),e}function z(n){let e=u,t=n.value.trim(),r=t.charCodeAt(0);return r===43||r===45?e+=f:r!==44&&(e+=T),e+=t,r===43||r===45?e+=f:e+=T,e}function F(n){return n.value+a(n.unit)}function B(n){return n.type==="Raw"?A(n,0):R(n.children)}function G(n){return a(n.name)+m+R(n.children)+L}function A(n,e){return b(e)+U(n).trim()}function K(n){let e=u;return n.children.forEach((r,l)=>{r.type===v?e+=g(r):r.type===h?e+=d(r):e+=A(r,s),l.next!==null&&(e+=c+c)}),e}return K(D)}function M(i){return w(i,{minify:!0})}o.format=w,o.minify=M,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
1
+ (function(a,E){typeof exports=="object"&&typeof module<"u"?E(exports,require("css-tree/parser")):typeof define=="function"&&define.amd?define(["exports","css-tree/parser"],E):(a=typeof globalThis<"u"?globalThis:a||self,E(a.formatCss={},a.parse))})(this,function(a,E){"use strict";const f=" ",u="",y=":",L=";",T='"',v="(",P=")",K="[",j="]",I="Atrule",g="Rule",x="Block",Y="SelectorList",w="Selector",k="Declaration",R="Operator";function p(s){return/[A-Z]/.test(s)?s.toLowerCase():s}function B(s,{minify:b=!1}={}){let V=E(s,{positions:!0,parseAtrulePrelude:!1,parseCustomProperty:!0,parseValue:!0});const W=b?u:" ",o=b?u:`
2
+ `,S=b?u:f,Z=b?u:L;let i=0;function _(n){return W.repeat(n)}function A(n){let e=n.loc;return e?s.slice(e.start.offset,e.end.offset):u}function h(n){let e=n.loc;return e?s.slice(e.start.offset,e.end.offset):u}function $(n){let e,r=n.prelude,t=n.block;return r.type===Y?e=q(r):e=C(r,i),t.type===x&&(e+=M(t)),e}function q(n){let e=u;return n.children.forEach((r,t)=>{r.type===w&&(e+=_(i)+m(r)),t.next!==null&&(e+=","+o)}),e}function m(n){let e=u;return(n.children||[]).forEach(t=>{switch(t.type){case"Combinator":{e+=f,t.name!==" "&&(e+=t.name+f);break}case"PseudoElementSelector":{e+=y+y,e+=p(t.name);break}case"PseudoClassSelector":{e+=y;let l=p(t.name);(l==="before"||l==="after")&&(e+=y),e+=l,t.children&&(e+=v+m(t)+P);break}case Y:{t.children.forEach((l,c)=>{l.type===w&&(e+=m(l)),c.next&&(e+=","+f)});break}case"Nth":{let l=t.nth;if(l)if(l.type==="AnPlusB"){let c=l.a,O=l.b;c!==null&&(e+=c+"n"),c!==null&&O!==null&&(e+=f),O!==null&&(c!==null&&!O.startsWith("-")&&(e+="+"+f),e+=O)}else e+=A(l);t.selector!==null&&(e+=f+"of"+f+m(t.selector));break}case"AttributeSelector":{e+=K,e+=t.name.name,t.matcher&&t.value&&(e+=t.matcher,e+=T,t.value.type==="String"?e+=t.value.value:t.value.type==="Identifier"&&(e+=t.value.name),e+=T),t.flags&&(e+=f+t.flags),e+=j;break}default:{e+=A(t);break}}}),e}function M(n){let e=n.children,r=S;return e.isEmpty?r+"{}":(r+="{"+o,i++,e.forEach((t,l)=>{t.type===k?(r+=F(t),l.next===null?r+=Z:r+=L):(l.prev!==null&&l.prev.data.type===k&&(r+=o),t.type===g?r+=$(t):t.type===I?r+=U(t):r+=C(t,i)),l.next!==null&&(r+=o,t.type!==k&&(r+=o))}),i--,r+=o,r+=_(i)+"}",r)}function U(n){let e=_(i)+"@",r=n.prelude,t=n.block;return e+=p(n.name),r!==null&&(e+=f+z(r)),t===null?e+=L:t.type===x&&(e+=M(t)),e}function z(n){let e=A(n);return e.replace(/\s*([:,])/g,e.includes("selector(")?"$1":"$1 ").replace(/\s*(=>|<=)\s*/g," $1 ").replace(/\)([a-zA-Z])/g,") $1").replace(new RegExp("(?<!<=)(?<!=>)(?<!<= )([<>])(?![<= ])(?![=> ])(?![ =>])","g")," $1 ").replace(/\s+/g,f)}function F(n){let e=n.property;e.charCodeAt(0)===45&&e.charCodeAt(1)===45||(e=p(e));let r=D(n.value);return e==="font"&&(r=r.replace(/\s*\/\s*/,"/")),r===u&&b&&(r+=f),_(i)+e+y+S+r}function N(n){let e=u;return n.forEach((r,t)=>{r.type==="Identifier"?e+=r.name:r.type==="Function"?e+=p(r.name)+v+N(r.children)+P:r.type==="Dimension"?e+=r.value+p(r.unit):r.type==="Value"?e+=D(r):r.type===R?e+=G(r):r.type==="Parentheses"?e+=v+N(r.children)+P:r.type==="Url"?e+="url("+T+r.value+T+P:e+=A(r),r.type!==R&&t.next!==null&&t.next.data.type!==R&&(e+=f)}),e}function G(n){let e=u,r=n.value.trim(),t=r.charCodeAt(0);return t===43||t===45?e+=f:t!==44&&(e+=S),e+=r,t===43||t===45?e+=f:e+=S,e}function D(n){return n.type==="Raw"?C(n,0):N(n.children)}function C(n,e){return _(e)+h(n).trim()}function Q(n){let e=u;return n.children.forEach((t,l)=>{t.type===g?e+=$(t):t.type===I?e+=U(t):e+=C(t,i),l.next!==null&&(e+=o+o)}),e}return Q(V)}function H(s){return B(s,{minify:!0})}a.format=B,a.minify=H,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@projectwallace/format-css",
3
- "version": "1.4.0",
3
+ "version": "1.4.2",
4
4
  "description": "Fast, small, zero-config library to format CSS with basic rules.",
5
5
  "type": "module",
6
6
  "source": "index.js",