@terrazzo/parser 0.7.2 → 0.8.0

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.
Files changed (105) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/index.d.ts +707 -12
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +4598 -12
  5. package/dist/index.js.map +1 -1
  6. package/package.json +11 -7
  7. package/rolldown.config.ts +24 -0
  8. package/src/build/index.ts +2 -2
  9. package/src/index.ts +76 -1
  10. package/src/parse/index.ts +72 -13
  11. package/src/parse/json.ts +35 -29
  12. package/src/parse/normalize.ts +4 -14
  13. package/src/parse/validate.ts +81 -68
  14. package/dist/build/index.d.ts +0 -20
  15. package/dist/build/index.d.ts.map +0 -1
  16. package/dist/build/index.js +0 -166
  17. package/dist/build/index.js.map +0 -1
  18. package/dist/config.d.ts +0 -8
  19. package/dist/config.d.ts.map +0 -1
  20. package/dist/config.js +0 -290
  21. package/dist/config.js.map +0 -1
  22. package/dist/lib/code-frame.d.ts +0 -31
  23. package/dist/lib/code-frame.d.ts.map +0 -1
  24. package/dist/lib/code-frame.js +0 -108
  25. package/dist/lib/code-frame.js.map +0 -1
  26. package/dist/lint/index.d.ts +0 -12
  27. package/dist/lint/index.d.ts.map +0 -1
  28. package/dist/lint/index.js +0 -105
  29. package/dist/lint/index.js.map +0 -1
  30. package/dist/lint/plugin-core/index.d.ts +0 -13
  31. package/dist/lint/plugin-core/index.d.ts.map +0 -1
  32. package/dist/lint/plugin-core/index.js +0 -40
  33. package/dist/lint/plugin-core/index.js.map +0 -1
  34. package/dist/lint/plugin-core/lib/docs.d.ts +0 -2
  35. package/dist/lint/plugin-core/lib/docs.d.ts.map +0 -1
  36. package/dist/lint/plugin-core/lib/docs.js +0 -4
  37. package/dist/lint/plugin-core/lib/docs.js.map +0 -1
  38. package/dist/lint/plugin-core/rules/a11y-min-contrast.d.ts +0 -40
  39. package/dist/lint/plugin-core/rules/a11y-min-contrast.d.ts.map +0 -1
  40. package/dist/lint/plugin-core/rules/a11y-min-contrast.js +0 -58
  41. package/dist/lint/plugin-core/rules/a11y-min-contrast.js.map +0 -1
  42. package/dist/lint/plugin-core/rules/a11y-min-font-size.d.ts +0 -14
  43. package/dist/lint/plugin-core/rules/a11y-min-font-size.d.ts.map +0 -1
  44. package/dist/lint/plugin-core/rules/a11y-min-font-size.js +0 -45
  45. package/dist/lint/plugin-core/rules/a11y-min-font-size.js.map +0 -1
  46. package/dist/lint/plugin-core/rules/colorspace.d.ts +0 -15
  47. package/dist/lint/plugin-core/rules/colorspace.d.ts.map +0 -1
  48. package/dist/lint/plugin-core/rules/colorspace.js +0 -85
  49. package/dist/lint/plugin-core/rules/colorspace.js.map +0 -1
  50. package/dist/lint/plugin-core/rules/consistent-naming.d.ts +0 -12
  51. package/dist/lint/plugin-core/rules/consistent-naming.d.ts.map +0 -1
  52. package/dist/lint/plugin-core/rules/consistent-naming.js +0 -49
  53. package/dist/lint/plugin-core/rules/consistent-naming.js.map +0 -1
  54. package/dist/lint/plugin-core/rules/descriptions.d.ts +0 -10
  55. package/dist/lint/plugin-core/rules/descriptions.d.ts.map +0 -1
  56. package/dist/lint/plugin-core/rules/descriptions.js +0 -32
  57. package/dist/lint/plugin-core/rules/descriptions.js.map +0 -1
  58. package/dist/lint/plugin-core/rules/duplicate-values.d.ts +0 -10
  59. package/dist/lint/plugin-core/rules/duplicate-values.d.ts.map +0 -1
  60. package/dist/lint/plugin-core/rules/duplicate-values.js +0 -65
  61. package/dist/lint/plugin-core/rules/duplicate-values.js.map +0 -1
  62. package/dist/lint/plugin-core/rules/max-gamut.d.ts +0 -15
  63. package/dist/lint/plugin-core/rules/max-gamut.d.ts.map +0 -1
  64. package/dist/lint/plugin-core/rules/max-gamut.js +0 -101
  65. package/dist/lint/plugin-core/rules/max-gamut.js.map +0 -1
  66. package/dist/lint/plugin-core/rules/required-children.d.ts +0 -19
  67. package/dist/lint/plugin-core/rules/required-children.d.ts.map +0 -1
  68. package/dist/lint/plugin-core/rules/required-children.js +0 -78
  69. package/dist/lint/plugin-core/rules/required-children.js.map +0 -1
  70. package/dist/lint/plugin-core/rules/required-modes.d.ts +0 -14
  71. package/dist/lint/plugin-core/rules/required-modes.d.ts.map +0 -1
  72. package/dist/lint/plugin-core/rules/required-modes.js +0 -52
  73. package/dist/lint/plugin-core/rules/required-modes.js.map +0 -1
  74. package/dist/lint/plugin-core/rules/required-typography-properties.d.ts +0 -11
  75. package/dist/lint/plugin-core/rules/required-typography-properties.d.ts.map +0 -1
  76. package/dist/lint/plugin-core/rules/required-typography-properties.js +0 -38
  77. package/dist/lint/plugin-core/rules/required-typography-properties.js.map +0 -1
  78. package/dist/logger.d.ts +0 -77
  79. package/dist/logger.d.ts.map +0 -1
  80. package/dist/logger.js +0 -136
  81. package/dist/logger.js.map +0 -1
  82. package/dist/parse/alias.d.ts +0 -34
  83. package/dist/parse/alias.d.ts.map +0 -1
  84. package/dist/parse/alias.js +0 -302
  85. package/dist/parse/alias.js.map +0 -1
  86. package/dist/parse/index.d.ts +0 -36
  87. package/dist/parse/index.d.ts.map +0 -1
  88. package/dist/parse/index.js +0 -226
  89. package/dist/parse/index.js.map +0 -1
  90. package/dist/parse/json.d.ts +0 -52
  91. package/dist/parse/json.d.ts.map +0 -1
  92. package/dist/parse/json.js +0 -161
  93. package/dist/parse/json.js.map +0 -1
  94. package/dist/parse/normalize.d.ts +0 -24
  95. package/dist/parse/normalize.d.ts.map +0 -1
  96. package/dist/parse/normalize.js +0 -185
  97. package/dist/parse/normalize.js.map +0 -1
  98. package/dist/parse/validate.d.ts +0 -63
  99. package/dist/parse/validate.d.ts.map +0 -1
  100. package/dist/parse/validate.js +0 -798
  101. package/dist/parse/validate.js.map +0 -1
  102. package/dist/types.d.ts +0 -265
  103. package/dist/types.d.ts.map +0 -1
  104. package/dist/types.js +0 -2
  105. package/dist/types.js.map +0 -1
package/dist/config.js DELETED
@@ -1,290 +0,0 @@
1
- import { merge } from 'merge-anything';
2
- import coreLintPlugin from './lint/plugin-core/index.js';
3
- import Logger from './logger.js';
4
- const TRAILING_SLASH_RE = /\/*$/;
5
- /**
6
- * Validate and normalize a config
7
- */
8
- export default function defineConfig(rawConfig, { logger = new Logger(), cwd } = {}) {
9
- const configStart = performance.now();
10
- if (!cwd) {
11
- logger.error({ group: 'config', label: 'core', message: 'defineConfig() missing `cwd` for JS API' });
12
- }
13
- const config = merge({}, rawConfig);
14
- // 1. normalize and init
15
- normalizeTokens({ rawConfig, config, logger, cwd });
16
- normalizeOutDir({ config, cwd, logger });
17
- normalizePlugins({ config, logger });
18
- normalizeLint({ config, logger });
19
- normalizeIgnore({ config, logger });
20
- // 2. Start build by calling config()
21
- for (const plugin of config.plugins) {
22
- plugin.config?.({ ...config });
23
- }
24
- // 3. finish
25
- logger.debug({
26
- group: 'parser',
27
- label: 'config',
28
- message: 'Finish config validation',
29
- timing: performance.now() - configStart,
30
- });
31
- return config;
32
- }
33
- /** Normalize config.tokens */
34
- function normalizeTokens({ rawConfig, config, logger, cwd, }) {
35
- if (rawConfig.tokens === undefined) {
36
- config.tokens = [
37
- // @ts-ignore we’ll normalize in next step
38
- './tokens.json',
39
- ];
40
- }
41
- else if (typeof rawConfig.tokens === 'string') {
42
- config.tokens = [
43
- // @ts-ignore we’ll normalize in next step
44
- rawConfig.tokens,
45
- ];
46
- }
47
- else if (Array.isArray(rawConfig.tokens)) {
48
- config.tokens = [];
49
- for (const file of rawConfig.tokens) {
50
- if (typeof file === 'string' || file instanceof URL) {
51
- config.tokens.push(
52
- // @ts-ignore we’ll normalize in next step
53
- file);
54
- }
55
- else {
56
- logger.error({
57
- group: 'config',
58
- label: 'tokens',
59
- message: `Expected array of strings, encountered ${JSON.stringify(file)}`,
60
- });
61
- }
62
- }
63
- }
64
- else {
65
- logger.error({
66
- group: 'config',
67
- label: 'tokens',
68
- message: `Expected string or array of strings, received ${typeof rawConfig.tokens}`,
69
- });
70
- }
71
- for (let i = 0; i < config.tokens.length; i++) {
72
- const filepath = config.tokens[i];
73
- if (filepath instanceof URL) {
74
- continue; // skip if already resolved
75
- }
76
- try {
77
- config.tokens[i] = new URL(filepath, cwd);
78
- }
79
- catch (err) {
80
- logger.error({ group: 'config', label: 'tokens', message: `Invalid URL ${filepath}` });
81
- }
82
- }
83
- }
84
- /** Normalize config.outDir */
85
- function normalizeOutDir({ config, cwd, logger }) {
86
- if (config.outDir instanceof URL) {
87
- // noop
88
- }
89
- else if (typeof config.outDir === 'undefined') {
90
- config.outDir = new URL('./tokens/', cwd);
91
- }
92
- else if (typeof config.outDir !== 'string') {
93
- logger.error({
94
- group: 'config',
95
- label: 'outDir',
96
- message: `Expected string, received ${JSON.stringify(config.outDir)}`,
97
- });
98
- }
99
- else {
100
- config.outDir = new URL(config.outDir, cwd);
101
- // always add trailing slash so URL treats it as a directory.
102
- // do AFTER it has been normalized to POSIX paths with `href` (don’t use Node internals here! This may run in the browser)
103
- config.outDir = new URL(config.outDir.href.replace(TRAILING_SLASH_RE, '/'));
104
- }
105
- }
106
- /** Normalize config.plugins */
107
- function normalizePlugins({ config, logger }) {
108
- if (typeof config.plugins === 'undefined') {
109
- config.plugins = [];
110
- }
111
- if (!Array.isArray(config.plugins)) {
112
- logger.error({
113
- group: 'config',
114
- label: 'plugins',
115
- message: `Expected array of plugins, received ${JSON.stringify(config.plugins)}`,
116
- });
117
- }
118
- config.plugins.push(coreLintPlugin());
119
- for (let n = 0; n < config.plugins.length; n++) {
120
- const plugin = config.plugins[n];
121
- if (typeof plugin !== 'object') {
122
- logger.error({
123
- group: 'config',
124
- label: `plugin[${n}]`,
125
- message: `Expected output plugin, received ${JSON.stringify(plugin)}`,
126
- });
127
- }
128
- else if (!plugin.name) {
129
- logger.error({ group: 'config', label: `plugin[${n}]`, message: `Missing "name"` });
130
- }
131
- }
132
- // order plugins with "enforce"
133
- config.plugins.sort((a, b) => {
134
- if (a.enforce === 'pre' && b.enforce !== 'pre') {
135
- return -1;
136
- }
137
- else if (a.enforce === 'post' && b.enforce !== 'post') {
138
- return 1;
139
- }
140
- return 0;
141
- });
142
- }
143
- function normalizeLint({ config, logger }) {
144
- if (config.lint !== undefined) {
145
- if (config.lint === null || typeof config.lint !== 'object' || Array.isArray(config.lint)) {
146
- logger.error({ group: 'config', label: 'lint', message: 'Must be an object' });
147
- }
148
- if (!config.lint.build) {
149
- config.lint.build = { enabled: true };
150
- }
151
- if (config.lint.build.enabled !== undefined) {
152
- if (typeof config.lint.build.enabled !== 'boolean') {
153
- logger.error({
154
- group: 'config',
155
- label: 'lint › build › enabled',
156
- message: `Expected boolean, received ${JSON.stringify(config.lint.build)}`,
157
- });
158
- }
159
- }
160
- else {
161
- config.lint.build.enabled = true;
162
- }
163
- if (config.lint.rules === undefined) {
164
- config.lint.rules = {};
165
- }
166
- else {
167
- if (config.lint.rules === null || typeof config.lint.rules !== 'object' || Array.isArray(config.lint.rules)) {
168
- logger.error({
169
- group: 'config',
170
- label: 'lint › rules',
171
- message: `Expected object, received ${JSON.stringify(config.lint.rules)}`,
172
- });
173
- return;
174
- }
175
- const allRules = new Map();
176
- for (const plugin of config.plugins) {
177
- if (typeof plugin.lint !== 'function') {
178
- continue;
179
- }
180
- const pluginRules = plugin.lint();
181
- if (!pluginRules || Array.isArray(pluginRules) || typeof pluginRules !== 'object') {
182
- logger.error({
183
- group: 'config',
184
- label: `plugin › ${plugin.name}`,
185
- message: `Expected object for lint() received ${JSON.stringify(pluginRules)}`,
186
- });
187
- continue;
188
- }
189
- for (const rule of Object.keys(pluginRules)) {
190
- // Note: sometimes plugins will be loaded multiple times, in which case it’s expected
191
- // they’re register rules again for lint(). Only throw an error if plugin A and plugin B’s
192
- // rules conflict.
193
- if (allRules.get(rule) && allRules.get(rule) !== plugin.name) {
194
- logger.error({
195
- group: 'config',
196
- label: `plugin › ${plugin.name}`,
197
- message: `Duplicate rule ${rule} already registered by plugin ${allRules.get(rule)}`,
198
- });
199
- }
200
- allRules.set(rule, plugin.name);
201
- }
202
- }
203
- for (const id of Object.keys(config.lint.rules)) {
204
- if (!allRules.has(id)) {
205
- logger.error({
206
- group: 'config',
207
- label: `lint › rule › ${id}`,
208
- message: 'Unknown rule. Is the plugin installed?',
209
- });
210
- }
211
- const value = config.lint.rules[id];
212
- let severity = 'off';
213
- let options;
214
- if (typeof value === 'number' || typeof value === 'string') {
215
- severity = value;
216
- }
217
- else if (Array.isArray(value)) {
218
- severity = value[0];
219
- options = value[1];
220
- }
221
- else if (value !== undefined) {
222
- logger.error({
223
- group: 'config',
224
- label: `lint › rule › ${id}`,
225
- message: `Invalid eyntax. Expected \`string | number | Array\`, received ${JSON.stringify(value)}}`,
226
- });
227
- }
228
- config.lint.rules[id] = [severity, options];
229
- if (typeof severity === 'number') {
230
- if (severity !== 0 && severity !== 1 && severity !== 2) {
231
- logger.error({
232
- group: 'config',
233
- label: `lint › rule › ${id}`,
234
- message: `Invalid number ${severity}. Specify 0 (off), 1 (warn), or 2 (error).`,
235
- });
236
- }
237
- config.lint.rules[id][0] = ['off', 'warn', 'error'][severity];
238
- }
239
- else if (typeof severity === 'string') {
240
- if (severity !== 'off' && severity !== 'warn' && severity !== 'error') {
241
- logger.error({
242
- group: 'config',
243
- label: `lint › rule › ${id}`,
244
- message: `Invalid string ${JSON.stringify(severity)}. Specify "off", "warn", or "error".`,
245
- });
246
- }
247
- }
248
- else if (value !== null) {
249
- logger.error({
250
- group: 'config',
251
- label: `lint › rule › ${id}`,
252
- message: `Expected string or number, received ${JSON.stringify(value)}`,
253
- });
254
- }
255
- }
256
- }
257
- }
258
- else {
259
- config.lint = {
260
- build: { enabled: true },
261
- rules: {},
262
- };
263
- }
264
- }
265
- function normalizeIgnore({ config, logger }) {
266
- if (!config.ignore) {
267
- config.ignore = {};
268
- }
269
- config.ignore.tokens ??= [];
270
- config.ignore.deprecated ??= false;
271
- if (!Array.isArray(config.ignore.tokens) || config.ignore.tokens.some((x) => typeof x !== 'string')) {
272
- logger.error({
273
- group: 'config',
274
- label: 'ignore › tokens',
275
- message: `Expected array of strings, received ${JSON.stringify(config.ignore.tokens)}`,
276
- });
277
- }
278
- if (typeof config.ignore.deprecated !== 'boolean') {
279
- logger.error({
280
- group: 'config',
281
- label: 'ignore › deprecated',
282
- message: `Expected boolean, received ${JSON.stringify(config.ignore.deprecated)}`,
283
- });
284
- }
285
- }
286
- /** Merge configs */
287
- export function mergeConfigs(a, b) {
288
- return merge(a, b);
289
- }
290
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- export interface Location {
2
- line: number;
3
- column: number;
4
- }
5
- export interface NodeLocation {
6
- end?: Location;
7
- start: Location;
8
- }
9
- export interface Options {
10
- /** Syntax highlight the code as JavaScript for terminals. default: false */
11
- highlightCode?: boolean;
12
- /** The number of lines to show above the error. default: 2 */
13
- linesAbove?: number;
14
- /** The number of lines to show below the error. default: 3 */
15
- linesBelow?: number;
16
- /**
17
- * Forcibly syntax highlight the code as JavaScript (for non-terminals);
18
- * overrides highlightCode.
19
- * default: false
20
- */
21
- forceColor?: boolean;
22
- /**
23
- * Pass in a string to be displayed inline (if possible) next to the
24
- * highlighted location in the code. If it can't be positioned inline,
25
- * it will be placed above the code frame.
26
- * default: nothing
27
- */
28
- message?: string;
29
- }
30
- export declare function codeFrameColumns(rawLines: string, loc: NodeLocation, opts?: Options): string;
31
- //# sourceMappingURL=code-frame.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"code-frame.d.ts","sourceRoot":"","sources":["../../src/lib/code-frame.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED,MAAM,WAAW,OAAO;IACtB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA4ED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,GAAE,OAAuB,UAwClG"}
@@ -1,108 +0,0 @@
1
- // This is copied from @babel/code-frame package but without the heavyweight color highlighting
2
- // (note: Babel loads both chalk AND picocolors, and doesn’t treeshake well)
3
- // Babel is MIT-licensed and unaffiliated with this project.
4
- /**
5
- * Extract what lines should be marked and highlighted.
6
- */
7
- function getMarkerLines(loc, source, opts = {}) {
8
- const startLoc = {
9
- // @ts-ignore this is fine
10
- column: 0,
11
- // @ts-ignore this is fine
12
- line: -1,
13
- ...loc.start,
14
- };
15
- const endLoc = {
16
- ...startLoc,
17
- ...loc.end,
18
- };
19
- const { linesAbove = 2, linesBelow = 3 } = opts || {};
20
- const startLine = startLoc.line;
21
- const startColumn = startLoc.column;
22
- const endLine = endLoc.line;
23
- const endColumn = endLoc.column;
24
- let start = Math.max(startLine - (linesAbove + 1), 0);
25
- let end = Math.min(source.length, endLine + linesBelow);
26
- if (startLine === -1) {
27
- start = 0;
28
- }
29
- if (endLine === -1) {
30
- end = source.length;
31
- }
32
- const lineDiff = endLine - startLine;
33
- const markerLines = {};
34
- if (lineDiff) {
35
- for (let i = 0; i <= lineDiff; i++) {
36
- const lineNumber = i + startLine;
37
- if (!startColumn) {
38
- markerLines[lineNumber] = true;
39
- }
40
- else if (i === 0) {
41
- const sourceLength = source[lineNumber - 1].length;
42
- markerLines[lineNumber] = [startColumn, sourceLength - startColumn + 1];
43
- }
44
- else if (i === lineDiff) {
45
- markerLines[lineNumber] = [0, endColumn];
46
- }
47
- else {
48
- const sourceLength = source[lineNumber - i].length;
49
- markerLines[lineNumber] = [0, sourceLength];
50
- }
51
- }
52
- }
53
- else {
54
- if (startColumn === endColumn) {
55
- if (startColumn) {
56
- markerLines[startLine] = [startColumn, 0];
57
- }
58
- else {
59
- markerLines[startLine] = true;
60
- }
61
- }
62
- else {
63
- markerLines[startLine] = [startColumn, endColumn - startColumn];
64
- }
65
- }
66
- return { start, end, markerLines };
67
- }
68
- /**
69
- * RegExp to test for newlines in terminal.
70
- */
71
- const NEWLINE = /\r\n|[\n\r\u2028\u2029]/;
72
- export function codeFrameColumns(rawLines, loc, opts = {}) {
73
- const lines = rawLines.split(NEWLINE);
74
- const { start, end, markerLines } = getMarkerLines(loc, lines, opts);
75
- const hasColumns = loc.start && typeof loc.start.column === 'number';
76
- const numberMaxWidth = String(end).length;
77
- let frame = rawLines
78
- .split(NEWLINE, end)
79
- .slice(start, end)
80
- .map((line, index) => {
81
- const number = start + 1 + index;
82
- const paddedNumber = ` ${number}`.slice(-numberMaxWidth);
83
- const gutter = ` ${paddedNumber} |`;
84
- const hasMarker = markerLines[number];
85
- const lastMarkerLine = !markerLines[number + 1];
86
- if (hasMarker) {
87
- let markerLine = '';
88
- if (Array.isArray(hasMarker)) {
89
- const markerSpacing = line.slice(0, Math.max(hasMarker[0] - 1, 0)).replace(/[^\t]/g, ' ');
90
- const numberOfMarkers = hasMarker[1] || 1;
91
- markerLine = ['\n ', gutter.replace(/\d/g, ' '), ' ', markerSpacing, '^'.repeat(numberOfMarkers)].join('');
92
- if (lastMarkerLine && opts.message) {
93
- markerLine += ` ${opts.message}`;
94
- }
95
- }
96
- return ['>', gutter, line.length > 0 ? ` ${line}` : '', markerLine].join('');
97
- }
98
- else {
99
- return ` ${gutter}${line.length > 0 ? ` ${line}` : ''}`;
100
- }
101
- })
102
- .join('\n');
103
- if (opts.message && !hasColumns) {
104
- frame = `${' '.repeat(numberMaxWidth + 1)}${opts.message}\n${frame}`;
105
- }
106
- return frame;
107
- }
108
- //# sourceMappingURL=code-frame.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"code-frame.js","sourceRoot":"","sources":["../../src/lib/code-frame.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import { type TokenNormalized } from '@terrazzo/token-tools';
2
- import type { default as Logger } from '../logger.js';
3
- import type { ConfigInit } from '../types.js';
4
- export interface LintRunnerOptions {
5
- tokens: Record<string, TokenNormalized>;
6
- filename?: URL;
7
- config: ConfigInit;
8
- src: string;
9
- logger: Logger;
10
- }
11
- export default function lintRunner({ tokens, filename, config, src, logger, }: LintRunnerOptions): Promise<void>;
12
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lint/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAa,MAAM,uBAAuB,CAAC;AAExE,OAAO,KAAK,EAAY,OAAO,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI9C,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACxC,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,MAAM,EAAE,UAAU,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAA8B,UAAU,CAAC,EACvC,MAAM,EACN,QAAQ,EACR,MAAyB,EACzB,GAAG,EACH,MAAM,GACP,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmHnC"}
@@ -1,105 +0,0 @@
1
- import { pluralize } from '@terrazzo/token-tools';
2
- import { merge } from 'merge-anything';
3
- const listFormat = new Intl.ListFormat('en-us');
4
- export default async function lintRunner({ tokens, filename, config = {}, src, logger, }) {
5
- const { plugins = [], lint } = config;
6
- const unusedLintRules = Object.keys(lint?.rules ?? {});
7
- for (const plugin of plugins) {
8
- if (typeof plugin.lint === 'function') {
9
- const s = performance.now();
10
- const linter = plugin.lint();
11
- const errors = [];
12
- const warnings = [];
13
- await Promise.all(Object.entries(linter).map(async ([id, rule]) => {
14
- if (!(id in lint.rules) || lint.rules[id] === null) {
15
- return;
16
- }
17
- const [severity, options] = lint.rules[id];
18
- if (severity === 'off') {
19
- return;
20
- }
21
- // note: this usually isn’t a Promise, but it _might_ be!
22
- await rule.create({
23
- id,
24
- report(descriptor) {
25
- let message = '';
26
- if (!descriptor.message && !descriptor.messageId) {
27
- logger.error({
28
- group: 'lint',
29
- label: `${plugin.name} › lint › ${id}`,
30
- message: 'Unable to report error: missing message or messageId',
31
- });
32
- }
33
- // handle message or messageId
34
- if (descriptor.message) {
35
- message = descriptor.message;
36
- }
37
- else {
38
- if (!(descriptor.messageId in (rule.meta?.messages ?? {}))) {
39
- logger.error({
40
- group: 'lint',
41
- label: `${plugin.name} › lint › ${id}`,
42
- message: `messageId "${descriptor.messageId}" does not exist`,
43
- });
44
- }
45
- message = rule.meta?.messages?.[descriptor.messageId] ?? '';
46
- }
47
- // replace with descriptor.data (if any)
48
- if (descriptor.data && typeof descriptor.data === 'object') {
49
- for (const [k, v] of Object.entries(descriptor.data)) {
50
- // lazy formatting
51
- const formatted = ['string', 'number', 'boolean'].includes(typeof v) ? String(v) : JSON.stringify(v);
52
- message = message.replace(/{{[^}]+}}/g, (inner) => {
53
- const key = inner.substring(2, inner.length - 2).trim();
54
- return key === k ? formatted : inner;
55
- });
56
- }
57
- }
58
- (severity === 'error' ? errors : warnings).push({
59
- group: 'lint',
60
- label: id,
61
- message,
62
- filename,
63
- node: descriptor.node,
64
- src: descriptor.source?.src,
65
- });
66
- },
67
- tokens,
68
- filename,
69
- src,
70
- options: merge(rule.meta?.defaultOptions ?? [], rule.defaultOptions ?? [], // Note: is this the correct order to merge in?
71
- options),
72
- });
73
- // tick off used rule
74
- const unusedLintRuleI = unusedLintRules.indexOf(id);
75
- if (unusedLintRuleI !== -1) {
76
- unusedLintRules.splice(unusedLintRuleI, 1);
77
- }
78
- }));
79
- for (const error of errors) {
80
- logger.error({ ...error, continueOnError: true }); // print out all errors before exiting here
81
- }
82
- for (const warning of warnings) {
83
- logger.warn(warning);
84
- }
85
- logger.debug({ group: 'lint', label: plugin.name, message: 'Finished', timing: performance.now() - s });
86
- if (errors.length) {
87
- const counts = [pluralize(errors.length, 'error', 'errors')];
88
- if (warnings.length) {
89
- counts.push(pluralize(warnings.length, 'warning', 'warnings'));
90
- }
91
- logger.error({
92
- group: 'lint',
93
- message: `Lint failed with ${listFormat.format(counts)}`,
94
- label: plugin.name,
95
- continueOnError: false,
96
- });
97
- }
98
- }
99
- }
100
- // warn user if they have unused lint rules (they might have meant to configure something!)
101
- for (const unusedRule of unusedLintRules) {
102
- logger.warn({ group: 'lint', label: 'lint', message: `Unknown lint rule "${unusedRule}"` });
103
- }
104
- }
105
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lint/index.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import type { Plugin } from '../../types.js';
2
- export * from './rules/a11y-min-contrast.js';
3
- export * from './rules/a11y-min-font-size.js';
4
- export * from './rules/colorspace.js';
5
- export * from './rules/consistent-naming.js';
6
- export * from './rules/descriptions.js';
7
- export * from './rules/duplicate-values.js';
8
- export * from './rules/max-gamut.js';
9
- export * from './rules/required-children.js';
10
- export * from './rules/required-modes.js';
11
- export * from './rules/required-typography-properties.js';
12
- export default function coreLintPlugin(): Plugin;
13
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lint/plugin-core/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2CAA2C,CAAC;AAe1D,MAAM,CAAC,OAAO,UAAU,cAAc,IAAI,MAAM,CAkB/C"}
@@ -1,40 +0,0 @@
1
- export * from './rules/a11y-min-contrast.js';
2
- export * from './rules/a11y-min-font-size.js';
3
- export * from './rules/colorspace.js';
4
- export * from './rules/consistent-naming.js';
5
- export * from './rules/descriptions.js';
6
- export * from './rules/duplicate-values.js';
7
- export * from './rules/max-gamut.js';
8
- export * from './rules/required-children.js';
9
- export * from './rules/required-modes.js';
10
- export * from './rules/required-typography-properties.js';
11
- import a11yMinContrast, { A11Y_MIN_CONTRAST } from './rules/a11y-min-contrast.js';
12
- import a11yMinFontSize, { A11Y_MIN_FONT_SIZE } from './rules/a11y-min-font-size.js';
13
- import colorspace, { COLORSPACE } from './rules/colorspace.js';
14
- import consistentNaming, { CONSISTENT_NAMING } from './rules/consistent-naming.js';
15
- import descriptions, { DESCRIPTIONS } from './rules/descriptions.js';
16
- import duplicateValues, { DUPLICATE_VALUES } from './rules/duplicate-values.js';
17
- import maxGamut, { MAX_GAMUT } from './rules/max-gamut.js';
18
- import requiredChidlren, { REQUIRED_CHILDREN } from './rules/required-children.js';
19
- import requiredModes, { REQUIRED_MODES } from './rules/required-modes.js';
20
- import requiredTypographyProperties, { REQUIRED_TYPOGRAPHY_PROPERTIES, } from './rules/required-typography-properties.js';
21
- export default function coreLintPlugin() {
22
- return {
23
- name: '@terrazzo/plugin-lint-core',
24
- lint() {
25
- return {
26
- [COLORSPACE]: colorspace,
27
- [CONSISTENT_NAMING]: consistentNaming,
28
- [DESCRIPTIONS]: descriptions,
29
- [DUPLICATE_VALUES]: duplicateValues,
30
- [MAX_GAMUT]: maxGamut,
31
- [REQUIRED_CHILDREN]: requiredChidlren,
32
- [REQUIRED_MODES]: requiredModes,
33
- [REQUIRED_TYPOGRAPHY_PROPERTIES]: requiredTypographyProperties,
34
- [A11Y_MIN_CONTRAST]: a11yMinContrast,
35
- [A11Y_MIN_FONT_SIZE]: a11yMinFontSize,
36
- };
37
- },
38
- };
39
- }
40
- //# sourceMappingURL=index.js.map