MCPcopy Create free account
hub / github.com/adobe/react-spectrum / toJS

Method toJS

packages/@react-spectrum/s2/style/style-macro.ts:993–1014  ·  view source on GitHub ↗
(allowedOverridesSet: Set<string>, indent = '')

Source from the content-addressed store, hash-verified

991 }
992
993 toJS(allowedOverridesSet: Set<string>, indent = ''): string {
994 let rules = this.rules.slice();
995 let conditional = rules
996 .filter(rule => rule instanceof ConditionalRule)
997 .reverse()
998 .map((rule, i) => {
999 return `${i > 0 ? ' else ' : ''}${rule.toJS(allowedOverridesSet, indent)}`;
1000 });
1001
1002 let elseCases = rules
1003 .filter(rule => !(rule instanceof ConditionalRule))
1004 .map(rule => rule.toJS(allowedOverridesSet, indent));
1005 if (conditional.length && elseCases.length) {
1006 return `${conditional.join('')} else {\n${indent} ${elseCases.join('\n' + indent + ' ')}\n${indent}}`;
1007 }
1008
1009 if (conditional.length) {
1010 return conditional.join('');
1011 }
1012
1013 return elseCases.join('\n' + indent);
1014 }
1015}
1016
1017/** A rule that applies conditionally in CSS (e.g. @media). */

Callers 1

createThemeFunction · 0.95

Calls 3

sliceMethod · 0.80
filterMethod · 0.65
toJSMethod · 0.65

Tested by

no test coverage detected