MCPcopy Create free account
hub / github.com/callstack/linaria / code

Function code

packages/stylelint/src/preprocessor.ts:57–122  ·  view source on GitHub ↗
(input: string, filename: string)

Source from the content-addressed store, hash-verified

55
56 return {
57 async code(input: string, filename: string) {
58 let result;
59
60 const transformServices = {
61 options: {
62 filename,
63 },
64 };
65
66 try {
67 result = await transform(
68 transformServices,
69 input,
70 asyncResolveFallback
71 );
72
73 cache[filename] = undefined;
74 errors[filename] = undefined;
75 offsets[filename] = [];
76 } catch (e: unknown) {
77 cache[filename] = undefined;
78 offsets[filename] = undefined;
79 errors[filename] = e as Error;
80
81 // Ignore parse errors here
82 // We handle it separately
83 return '';
84 }
85
86 const { rules, replacements } = result;
87
88 if (!rules) {
89 return '';
90 }
91
92 // Construct a CSS-ish file from the unprocessed style rules
93 let generatedLineNumber = 1;
94 const cssText = Object.values(rules)
95 .map((rule) => {
96 const ruleText = `.${rule.className} {${rule.cssText}}`;
97
98 if (rule.start && 'line' in rule.start) {
99 offsets[filename]?.push({
100 generated: {
101 line: generatedLineNumber,
102 column: 1,
103 },
104 original: {
105 ...rule.start,
106 },
107 name: rule.displayName,
108 });
109
110 generatedLineNumber += 1;
111 }
112
113 generatedLineNumber += ruleText.split('\n').length + 2;
114 return ruleText;

Callers

nothing calls this directly

Calls 1

transformFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…