cloudflare-expression-lint 0.4.7 → 0.5.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.
package/dist/rewriter.js CHANGED
@@ -24,8 +24,11 @@ export function rewriteExpressions(content, expressions, options) {
24
24
  for (const expr of uniqueExprs) {
25
25
  const formatted = formatExpression(expr.expression, options);
26
26
  const isMultiLine = formatted.includes('\n');
27
+ // Compare against the canonical (parsed and re-printed) form of the original
28
+ // to handle whitespace differences from >- block scalars
29
+ const canonicalExpr = canonicalize(expr.expression);
27
30
  // Skip if no change needed and not converting block scalars
28
- if (formatted === expr.expression.trim() && !options?.convertBlockScalars)
31
+ if (formatted === canonicalExpr && !options?.convertBlockScalars)
29
32
  continue;
30
33
  if (!isMultiLine && !options?.convertBlockScalars)
31
34
  continue;
@@ -37,14 +40,24 @@ export function rewriteExpressions(content, expressions, options) {
37
40
  break;
38
41
  const { lineStart, lineEnd, indent, key, isBlockScalar } = location;
39
42
  searchFrom = lineStart; // next search ends before this match
40
- // Skip if already >- and content hasn't changed
41
- if (isBlockScalar === '>-' && formatted === expr.expression.trim() && !isMultiLine)
43
+ // Skip if already >- and the formatted output matches the existing block content.
44
+ // Compare by reading the existing block lines and checking if they'd produce
45
+ // the same >- block as the formatter would write.
46
+ if (isBlockScalar === '>-' && isMultiLine) {
47
+ const existingBlock = content.substring(lineStart, lineEnd);
48
+ const exprIndent = indent + ' ';
49
+ const formattedLines = formatted.split('\n').map(l => exprIndent + l).join('\n');
50
+ const wouldWrite = `${indent}${key} >-\n${formattedLines}\n`;
51
+ if (existingBlock === wouldWrite)
52
+ continue;
53
+ }
54
+ if (isBlockScalar === '>-' && !isMultiLine && formatted === canonicalExpr)
42
55
  continue;
43
56
  // Skip if inline, not multi-line, and content hasn't changed
44
- if (!isBlockScalar && !isMultiLine && formatted === expr.expression.trim())
57
+ if (!isBlockScalar && !isMultiLine && formatted === canonicalExpr)
45
58
  continue;
46
59
  // When converting block scalars, always rewrite |/|- to >-
47
- if (isBlockScalar && isBlockScalar !== '>-' && !isMultiLine && formatted === expr.expression.trim()) {
60
+ if (isBlockScalar && isBlockScalar !== '>-' && !isMultiLine && formatted === canonicalExpr) {
48
61
  // Short expression in |/|- — convert to inline
49
62
  const replacement = `${indent}${key} ${formatted}\n`;
50
63
  modified = modified.substring(0, lineStart) + replacement + modified.substring(lineEnd);
@@ -61,11 +74,22 @@ export function rewriteExpressions(content, expressions, options) {
61
74
  }
62
75
  return { content: modified, count };
63
76
  }
77
+ /** Canonicalize an expression by parsing and re-formatting as single line.
78
+ * This normalizes whitespace differences from >- block scalar joining. */
79
+ function canonicalize(expression) {
80
+ try {
81
+ // formatExpression parses and re-prints, normalizing whitespace
82
+ return formatExpression(expression, { maxWidth: Infinity });
83
+ }
84
+ catch {
85
+ return expression.split('\n').map(l => l.trim()).filter(l => l !== '').join(' ').trim();
86
+ }
87
+ }
64
88
  /** Deduplicate expressions by their trimmed value */
65
89
  function deduplicateExpressions(expressions) {
66
90
  const seen = new Set();
67
91
  return expressions.filter(e => {
68
- const key = e.expression.trim();
92
+ const key = canonicalize(e.expression);
69
93
  if (seen.has(key))
70
94
  return false;
71
95
  seen.add(key);
@@ -77,7 +101,9 @@ function deduplicateExpressions(expressions) {
77
101
  * searching backwards from `beforeOffset`.
78
102
  */
79
103
  export function findExpressionLocation(content, expression, beforeOffset) {
80
- const trimmed = expression.trim();
104
+ // Normalize the search expression: collapse whitespace so multi-line
105
+ // scanner output matches against joined block scalar content
106
+ const trimmed = expression.split('\n').map(l => l.trim()).filter(l => l !== '').join(' ').trim();
81
107
  const lines = content.split('\n');
82
108
  let offset = 0;
83
109
  const offsets = [];
@@ -1 +1 @@
1
- {"version":3,"file":"rewriter.js","sourceRoot":"","sources":["../src/rewriter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rewriter.js","sourceRoot":"","sources":["../src/rewriter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cloudflare-expression-lint",
3
- "version": "0.4.7",
3
+ "version": "0.5.0",
4
4
  "description": "A parser, validator, and linter for Cloudflare Rules Language expressions with phase-aware field and function checking",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",