@platformos/platformos-check-common 0.0.10 → 0.0.12

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 (54) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/CLAUDE.md +150 -0
  3. package/dist/AugmentedPlatformOSDocset.js +1 -0
  4. package/dist/AugmentedPlatformOSDocset.js.map +1 -1
  5. package/dist/checks/deprecated-filter/index.js +15 -0
  6. package/dist/checks/deprecated-filter/index.js.map +1 -1
  7. package/dist/checks/graphql/index.d.ts +1 -0
  8. package/dist/checks/graphql/index.js +20 -7
  9. package/dist/checks/graphql/index.js.map +1 -1
  10. package/dist/checks/invalid-hash-assign-target/index.js +4 -3
  11. package/dist/checks/invalid-hash-assign-target/index.js.map +1 -1
  12. package/dist/checks/undefined-object/index.js +14 -13
  13. package/dist/checks/undefined-object/index.js.map +1 -1
  14. package/dist/checks/unknown-property/index.js +75 -10
  15. package/dist/checks/unknown-property/index.js.map +1 -1
  16. package/dist/checks/unknown-property/property-shape.js +14 -1
  17. package/dist/checks/unknown-property/property-shape.js.map +1 -1
  18. package/dist/checks/unused-assign/index.js +23 -1
  19. package/dist/checks/unused-assign/index.js.map +1 -1
  20. package/dist/checks/variable-name/index.js +4 -0
  21. package/dist/checks/variable-name/index.js.map +1 -1
  22. package/dist/frontmatter/index.d.ts +59 -0
  23. package/dist/frontmatter/index.js +301 -0
  24. package/dist/frontmatter/index.js.map +1 -0
  25. package/dist/index.d.ts +2 -1
  26. package/dist/index.js +4 -1
  27. package/dist/index.js.map +1 -1
  28. package/dist/liquid-doc/arguments.js +5 -0
  29. package/dist/liquid-doc/arguments.js.map +1 -1
  30. package/dist/path.d.ts +1 -1
  31. package/dist/path.js +3 -1
  32. package/dist/path.js.map +1 -1
  33. package/dist/tsconfig.tsbuildinfo +1 -1
  34. package/package.json +2 -2
  35. package/src/AugmentedPlatformOSDocset.ts +1 -0
  36. package/src/checks/deprecated-filter/index.spec.ts +41 -1
  37. package/src/checks/deprecated-filter/index.ts +17 -0
  38. package/src/checks/graphql/index.spec.ts +173 -0
  39. package/src/checks/graphql/index.ts +21 -10
  40. package/src/checks/invalid-hash-assign-target/index.spec.ts +26 -0
  41. package/src/checks/invalid-hash-assign-target/index.ts +6 -4
  42. package/src/checks/undefined-object/index.spec.ts +123 -19
  43. package/src/checks/undefined-object/index.ts +16 -18
  44. package/src/checks/unknown-property/index.spec.ts +133 -0
  45. package/src/checks/unknown-property/index.ts +84 -10
  46. package/src/checks/unknown-property/property-shape.ts +15 -1
  47. package/src/checks/unused-assign/index.spec.ts +74 -0
  48. package/src/checks/unused-assign/index.ts +26 -1
  49. package/src/checks/variable-name/index.spec.ts +9 -0
  50. package/src/checks/variable-name/index.ts +5 -0
  51. package/src/frontmatter/index.ts +344 -0
  52. package/src/index.ts +3 -0
  53. package/src/liquid-doc/arguments.ts +3 -0
  54. package/src/path.ts +2 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # @platformos/theme-check-common
2
2
 
3
+ ## 0.0.12
4
+
5
+ ### Patch Changes
6
+
7
+ - Beta release
8
+ - Updated dependencies
9
+ - @platformos/liquid-html-parser@0.0.11
10
+
11
+ ## 0.0.11
12
+
3
13
  ## 0.0.10
4
14
 
5
15
  ### Patch Changes
package/CLAUDE.md ADDED
@@ -0,0 +1,150 @@
1
+ # CLAUDE.md
2
+
3
+ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+ ## Overview
6
+
7
+ `@platformos/platformos-check-common` is the runtime-agnostic core of the platformOS linting engine. It defines all check logic, types, the visitor traversal system, the fix/autofix infrastructure, and test utilities. It has no Node.js or browser dependencies — those are in `-node` / `-browser` sibling packages.
8
+
9
+ ## Commands
10
+
11
+ ```bash
12
+ # From this directory:
13
+ yarn test # Run all tests (vitest)
14
+ yarn build # tsc -b tsconfig.build.json
15
+ yarn type-check # tsc --noEmit
16
+
17
+ # Run a single test file:
18
+ yarn test src/checks/deprecated-filter/index.spec.ts
19
+
20
+ # Run tests matching a name pattern:
21
+ yarn test --reporter=verbose -t "DeprecatedFilter"
22
+ ```
23
+
24
+ ## Architecture
25
+
26
+ ### Core pipeline (`src/index.ts`)
27
+
28
+ `check(app, config, dependencies)` is the entry point. It:
29
+ 1. Wraps raw `Dependencies` with augmented helpers (file-exists, translations, etc.)
30
+ 2. Wraps the raw docset in `AugmentedPlatformOSDocset` (memoized, adds undocumented filters/tags)
31
+ 3. Iterates over `SourceCodeType` values (JSON, LiquidHtml, GraphQL, YAML) and runs each applicable `CheckDefinition` against each file via visitors
32
+
33
+ ### Source code types (`src/types.ts`)
34
+
35
+ `SourceCodeType` has four values. Their AST types:
36
+ - `LiquidHtml` → `LiquidHtmlNode` (from `@platformos/liquid-html-parser`)
37
+ - `JSON` → `JSONNode` (jsonc-parser wrapper, `src/jsonc/types.ts`)
38
+ - `YAML` → **also `JSONNode`** — YAML is parsed into the same JSONNode AST via `src/yaml/parse.ts`
39
+ - `GraphQL` → `GraphQLDocumentNode` (just `{ type: 'Document', content: string }`)
40
+
41
+ ### Check definition pattern
42
+
43
+ Every check exports a `CheckDefinition<SourceCodeType.X>` object:
44
+
45
+ ```ts
46
+ export const MyCheck: LiquidCheckDefinition = {
47
+ meta: {
48
+ code: 'MyCheck', // used in config and offenses
49
+ name: '...',
50
+ docs: { description: '...', recommended: true },
51
+ type: SourceCodeType.LiquidHtml,
52
+ severity: Severity.WARNING,
53
+ schema: {}, // configurable settings shape
54
+ targets: [], // ConfigTarget[] or empty = all configs
55
+ },
56
+ create(context) {
57
+ // Called once per file. Return visitor methods as a plain object.
58
+ return {
59
+ async LiquidTag(node, ancestors) { ... },
60
+ async onCodePathEnd(file) { ... },
61
+ };
62
+ },
63
+ };
64
+ ```
65
+
66
+ - `context` has: `report()`, `file`, `config`, `settings`, `toUri()`, `toRelativePath()`, `fs`, `platformosDocset`, `getDocDefinition`, `getReferences`, `fileExists`, `fileSize`, `getDefaultLocale`, `getDefaultTranslations`, `getTranslationsForBase`, `validateJSON`
67
+ - `context.report({ message, startIndex, endIndex, fix?, suggest? })` records an offense
68
+ - `fix` is safe auto-fix; `suggest` is manual (multiple options or unsafe)
69
+ - New checks must be registered in `src/checks/index.ts` → `allChecks` array
70
+
71
+ ### Visitor system (`src/visitor.ts`)
72
+
73
+ `visit<S, R>(ast, visitor)` walks an AST depth-first and collects return values.
74
+
75
+ For checks the engine calls `visitLiquid` / `visitJSON` which support both entry (`NodeType`) and exit (`NodeType:exit`) visitor methods, plus `onCodePathStart` / `onCodePathEnd` lifecycle hooks.
76
+
77
+ `findCurrentNode(ast, cursorPosition)` — used by LSP for cursor-aware features.
78
+
79
+ ### Fix / autofix infrastructure (`src/fixes/`)
80
+
81
+ - `StringCorrector` — for Liquid/YAML: records `replace(start, end, text)` and `remove(start, end)` operations
82
+ - `JSONCorrector` — for JSON: operates on the JSONNode tree
83
+ - `GraphQLCorrector` — for GraphQL
84
+ - `createCorrector(type, source)` — factory returning the right corrector
85
+ - `applyFixToString(source, fix)` — applies collected `FixDescription[]` to a string
86
+ - No YAML autofix: `createCorrector` throws for `SourceCodeType.YAML`
87
+
88
+ ### `AugmentedPlatformOSDocset` (`src/AugmentedPlatformOSDocset.ts`)
89
+
90
+ Wraps the raw `PlatformOSDocset` (from dependency injection) with:
91
+ - Memoization on all methods
92
+ - Alias expansion for filters
93
+ - Normalization of inconsistent `deprecated: false` + `deprecation_reason: 'true'` entries
94
+ - Injection of undocumented-but-valid filters/tags
95
+
96
+ ### Context utilities (`src/context-utils.ts`)
97
+
98
+ Factory functions for the augmented dependency methods:
99
+ - `makeGetTranslationsForBase(fs, app)` — loads and merges YAML translation files; open editor buffers take precedence over filesystem
100
+ - `makeGetDefaultTranslations(fs, app, rootUri)` — loads `app/translations/en.yml`, strips locale root key
101
+ - `makeGetDefaultLocale(fs, rootUri)` — always returns `'en'`
102
+
103
+ ## Testing
104
+
105
+ Tests use **Vitest** with custom matchers defined in `src/test/`.
106
+
107
+ ### Test utilities (`src/test/test-helper.ts`)
108
+
109
+ ```ts
110
+ import { runLiquidCheck, runJSONCheck, runYAMLCheck, check } from '../../test';
111
+
112
+ // Run a single check on one file:
113
+ const offenses = await runLiquidCheck(MyCheck, '{{ x | unknown }}', 'file.liquid', mockDependencies);
114
+
115
+ // Run recommended checks on a whole mock app:
116
+ const offenses = await check({ 'app/views/partials/foo.liquid': '...' });
117
+
118
+ // Apply the auto-fix suggestion:
119
+ const result = applySuggestions(sourceCode, offenses[0]);
120
+
121
+ // Show highlighted source ranges for offenses:
122
+ const highlighted = highlightedOffenses({ 'file.liquid': sourceCode }, offenses);
123
+ ```
124
+
125
+ `MockApp` is `Record<relativePath, source>`. `MockFileSystem` provides the `AbstractFileSystem` implementation backed by the same object.
126
+
127
+ ### Custom matchers
128
+
129
+ - `expect(offenses).containOffense('message string')` — checks by message
130
+ - `expect(offenses).containOffense({ check: 'Code', severity: Severity.WARNING })` — checks by subset of keys
131
+ - Chai-based (legacy): `.to.offer.fix()`, `.to.suggest()`
132
+
133
+ ### Test setup (`src/test/test-setup.ts`)
134
+
135
+ Loaded automatically by vitest (see root `vitest.config.ts`). Registers the custom matchers. New tests should use `expect.extend` / `containOffense` style, not chai.
136
+
137
+ ## Key types to know
138
+
139
+ | Type | Purpose |
140
+ |------|---------|
141
+ | `App` | `SourceCode[]` — the full set of files to check |
142
+ | `SourceCode<T>` | `{ uri, type, source, ast, version? }` |
143
+ | `CheckDefinition<T>` | Static descriptor with `meta` + `create` factory |
144
+ | `Check<T>` | Visitor object returned by `create()` |
145
+ | `Context<T, S>` | Passed to `create()`; includes `report()` and all deps |
146
+ | `Offense` | Recorded problem: `{ check, message, uri, severity, start, end, fix?, suggest? }` |
147
+ | `Problem<T>` | Argument to `context.report()` |
148
+ | `Dependencies` | Injectable services (`fs`, `platformosDocset`, etc.) |
149
+ | `AugmentedDependencies` | Extends `Dependencies` with derived helpers |
150
+ | `PlatformOSDocset` | `filters()`, `objects()`, `tags()`, `graphQL()` |
@@ -33,6 +33,7 @@ const undocumentedFilters = [
33
33
  'handle_from',
34
34
  'pad_spaces',
35
35
  'paragraphize',
36
+ 'push',
36
37
  'sentence',
37
38
  'unit',
38
39
  'weight',
@@ -1 +1 @@
1
- {"version":3,"file":"AugmentedPlatformOSDocset.js","sourceRoot":"","sources":["../src/AugmentedPlatformOSDocset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AugmentedPlatformOSDocset.js","sourceRoot":"","sources":["../src/AugmentedPlatformOSDocset.ts"],"names":[],"mappings":"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"}
@@ -33,10 +33,25 @@ exports.DeprecatedFilter = {
33
33
  const recommendedFilterName = findRecommendedAlternative(deprecatedFilter);
34
34
  const recommendedFilter = filters.find((f) => f.name === recommendedFilterName);
35
35
  const message = deprecatedFilterMessage(deprecatedFilter, recommendedFilter);
36
+ const filterText = node.source.slice(node.position.start, node.position.end);
37
+ const afterPipeIdx = filterText.indexOf('|') + 1;
38
+ const nameIdx = afterPipeIdx + filterText.slice(afterPipeIdx).indexOf(deprecatedFilter.name);
39
+ const filterNameStart = node.position.start + nameIdx;
40
+ const filterNameEnd = filterNameStart + deprecatedFilter.name.length;
36
41
  context.report({
37
42
  message,
38
43
  startIndex: node.position.start + 1,
39
44
  endIndex: node.position.end,
45
+ suggest: recommendedFilter
46
+ ? [
47
+ {
48
+ message: `Replace '${deprecatedFilter.name}' with '${recommendedFilter.name}'`,
49
+ fix: (corrector) => {
50
+ corrector.replace(filterNameStart, filterNameEnd, recommendedFilter.name);
51
+ },
52
+ },
53
+ ]
54
+ : undefined,
40
55
  });
41
56
  },
42
57
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/deprecated-filter/index.ts"],"names":[],"mappings":";;;AACA,uCAA2F;AAE9E,QAAA,gBAAgB,GAA0B;IACrD,IAAI,EAAE;QACJ,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,CAAC,mBAAmB,CAAC;QAC9B,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE;YACJ,WAAW,EAAE,uCAAuC;YACpD,GAAG,EAAE,gGAAgG;YACrG,WAAW,EAAE,IAAI;SAClB;QACD,IAAI,EAAE,sBAAc,CAAC,UAAU;QAC/B,QAAQ,EAAE,gBAAQ,CAAC,OAAO;QAC1B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;KACZ;IAED,MAAM,CAAC,OAAO;QACZ,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC9B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO;YACL,YAAY,EAAE,KAAK,EAAE,IAAkB,EAAE,EAAE;gBACzC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,gBAAiB,CAAC,OAAO,EAAE,CAAC;gBAE1D,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC1C,OAAO,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;gBAC9C,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,OAAO;gBACT,CAAC;gBAED,MAAM,qBAAqB,GAAG,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;gBAC3E,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,qBAAqB,CAAC,CAAC;gBAEhF,MAAM,OAAO,GAAG,uBAAuB,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;gBAE7E,OAAO,CAAC,MAAM,CAAC;oBACb,OAAO;oBACP,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC;oBACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG;iBAC5B,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,SAAS,uBAAuB,CAAC,UAAuB,EAAE,WAAyB;IACjF,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,sBAAsB,UAAU,CAAC,IAAI,sBAAsB,WAAW,CAAC,IAAI,IAAI,CAAC;IACzF,CAAC;IAED,OAAO,sBAAsB,UAAU,CAAC,IAAI,IAAI,CAAC;AACnD,CAAC;AAED,SAAS,0BAA0B,CAAC,gBAA6B;IAC/D,MAAM,MAAM,GAAG,gBAAgB,CAAC,kBAAkB,CAAC;IACnD,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAEvD,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/deprecated-filter/index.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  import { GraphQLCheckDefinition } from '../../types';
2
+ export declare function lineToRange(text: string, line: number): [number, number];
2
3
  export declare const GraphQLCheck: GraphQLCheckDefinition;
@@ -1,19 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GraphQLCheck = void 0;
4
+ exports.lineToRange = lineToRange;
4
5
  const types_1 = require("../../types");
5
6
  const language_1 = require("graphql/language");
6
7
  const graphql_1 = require("graphql");
7
8
  function lineToRange(text, line) {
8
9
  const lines = text.split(/\r?\n/);
9
- if (line < 1 || line > lines.length) {
10
- return [0, text.length];
11
- }
10
+ const clampedLine = Math.max(1, Math.min(line, lines.length));
12
11
  let start = 0;
13
- for (let i = 0; i < line - 1; i++) {
12
+ for (let i = 0; i < clampedLine - 1; i++) {
14
13
  start += lines[i].length + 1;
15
14
  }
16
- const end = start + lines[line - 1].length;
15
+ const end = start + lines[clampedLine - 1].length;
17
16
  return [start, end];
18
17
  }
19
18
  exports.GraphQLCheck = {
@@ -37,10 +36,24 @@ exports.GraphQLCheck = {
37
36
  return;
38
37
  }
39
38
  const graphQLSchema = (0, graphql_1.buildSchema)(graphQLSchemaString);
40
- const document = (0, language_1.parse)(content);
39
+ let document;
40
+ try {
41
+ document = (0, language_1.parse)(content);
42
+ }
43
+ catch (e) {
44
+ if (e instanceof graphql_1.GraphQLError) {
45
+ const [start, end] = lineToRange(content, e.locations?.[0]?.line ?? 1);
46
+ context.report({
47
+ message: e.message,
48
+ startIndex: start,
49
+ endIndex: end,
50
+ });
51
+ }
52
+ return;
53
+ }
41
54
  const errors = (0, graphql_1.validate)(graphQLSchema, document);
42
55
  errors.forEach((error) => {
43
- const [start, end] = lineToRange(content, error.locations?.[0].line ?? 0);
56
+ const [start, end] = lineToRange(content, error.locations?.[0]?.line ?? 0);
44
57
  context.report({
45
58
  message: error.message,
46
59
  startIndex: start,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/graphql/index.ts"],"names":[],"mappings":";;;AAAA,uCAA+E;AAC/E,+CAAyC;AACzC,qCAAgD;AAEhD,SAAS,WAAW,CAAC,IAAY,EAAE,IAAY;IAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAElC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACpC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,GAAG,GAAG,KAAK,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACtB,CAAC;AAEY,QAAA,YAAY,GAA2B;IAClD,IAAI,EAAE;QACJ,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE;YACJ,WAAW,EAAE,gFAAgF;YAC7F,WAAW,EAAE,IAAI;YACjB,GAAG,EAAE,SAAS;SACf;QACD,IAAI,EAAE,sBAAc,CAAC,OAAO;QAC5B,QAAQ,EAAE,gBAAQ,CAAC,KAAK;QACxB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;KACZ;IAED,MAAM,CAAC,OAAO;QACZ,MAAM,eAAe,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;YAChD,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC,gBAAgB,EAAE,OAAO,EAAE,CAAC;YACtE,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,OAAO;YACT,CAAC;YAED,MAAM,aAAa,GAAG,IAAA,qBAAW,EAAC,mBAAmB,CAAC,CAAC;YAEvD,MAAM,QAAQ,GAAG,IAAA,gBAAK,EAAC,OAAO,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,IAAA,kBAAQ,EAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAEjD,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACvB,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;gBAC1E,OAAO,CAAC,MAAM,CAAC;oBACb,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,UAAU,EAAE,KAAK;oBACjB,QAAQ,EAAE,GAAG;iBACd,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,OAAO;YACL,KAAK,CAAC,aAAa,CAAC,IAAI;gBACtB,MAAM,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC1C,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/graphql/index.ts"],"names":[],"mappings":"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"}
@@ -190,11 +190,12 @@ exports.InvalidHashAssignTarget = {
190
190
  // {% function result = 'path' %}
191
191
  if (node.name === liquid_html_parser_1.NamedTags.function && typeof node.markup !== 'string') {
192
192
  const markup = node.markup;
193
- if (markup.name) {
194
- closeTypeRange(markup.name, node.position.start);
193
+ const varName = markup.name.name;
194
+ if (varName) {
195
+ closeTypeRange(varName, node.position.start);
195
196
  // Function returns are untyped unless we can infer them
196
197
  variableTypes.push({
197
- name: markup.name,
198
+ name: varName,
198
199
  type: 'untyped',
199
200
  range: [node.position.end],
200
201
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/invalid-hash-assign-target/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/invalid-hash-assign-target/index.ts"],"names":[],"mappings":"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"}
@@ -77,9 +77,13 @@ exports.UndefinedObject = {
77
77
  });
78
78
  }
79
79
  if (node.name === 'function') {
80
- indexVariableScope(node.markup.name, {
81
- start: node.position.end,
82
- });
80
+ const fnName = node.markup.name;
81
+ // Only register simple variable names (not hash/array mutations like hash['key'])
82
+ if (fnName.lookups.length === 0 && fnName.name !== null) {
83
+ indexVariableScope(fnName.name, {
84
+ start: node.position.end,
85
+ });
86
+ }
83
87
  }
84
88
  if (node.name === 'layout') {
85
89
  indexVariableScope('none', {
@@ -111,8 +115,8 @@ exports.UndefinedObject = {
111
115
  });
112
116
  }
113
117
  if (isLiquidTagBackground(node)) {
114
- indexVariableScope(node.markup.jobId.name, {
115
- start: node.blockEndPosition?.end,
118
+ indexVariableScope(node.markup.jobId, {
119
+ start: node.position.end,
116
120
  });
117
121
  }
118
122
  },
@@ -124,8 +128,8 @@ exports.UndefinedObject = {
124
128
  return;
125
129
  if (isLiquidTag(parent) && isLiquidTagParseJson(parent))
126
130
  return;
127
- // Skip the jobId variable in background tag markup - it's being defined, not used
128
- if (isBackgroundInlineMarkup(parent) && parent.jobId === node)
131
+ // Skip the result variable of function tags (it's a definition, not a usage)
132
+ if (isFunctionMarkup(parent) && parent.name === node)
129
133
  return;
130
134
  variables.push(node);
131
135
  },
@@ -226,12 +230,9 @@ function isLiquidTagDecrement(node) {
226
230
  function isLiquidTagBackground(node) {
227
231
  return (node.name === liquid_html_parser_1.NamedTags.background &&
228
232
  typeof node.markup !== 'string' &&
229
- node.markup.type === liquid_html_parser_1.NodeTypes.BackgroundInlineMarkup);
233
+ node.markup.type === liquid_html_parser_1.NodeTypes.BackgroundMarkup);
230
234
  }
231
- function isBackgroundInlineMarkup(node) {
232
- return (typeof node === 'object' &&
233
- node !== null &&
234
- 'type' in node &&
235
- node.type === liquid_html_parser_1.NodeTypes.BackgroundInlineMarkup);
235
+ function isFunctionMarkup(node) {
236
+ return node?.type === liquid_html_parser_1.NodeTypes.FunctionMarkup;
236
237
  }
237
238
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/undefined-object/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/undefined-object/index.ts"],"names":[],"mappings":"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"}
@@ -85,6 +85,43 @@ exports.UnknownProperty = {
85
85
  }
86
86
  }
87
87
  }
88
+ // {% assign x = y | dig: "key1" | dig: "key2" %}
89
+ // Follow the dig path through the source variable's known shape.
90
+ const digFilters = markup.value.filters?.filter((f) => f.name === 'dig') ?? [];
91
+ if (digFilters.length > 0 && markup.value.expression.type === liquid_html_parser_1.NodeTypes.VariableLookup) {
92
+ const expr = markup.value.expression;
93
+ if (expr.name) {
94
+ const digPath = [];
95
+ let validDigPath = true;
96
+ for (const digFilter of digFilters) {
97
+ const arg = digFilter.args?.[0];
98
+ if (arg?.type === liquid_html_parser_1.NodeTypes.String) {
99
+ digPath.push(arg.value);
100
+ }
101
+ else {
102
+ validDigPath = false;
103
+ break;
104
+ }
105
+ }
106
+ if (validDigPath && digPath.length > 0) {
107
+ // Combine any lookups on the source expression (e.g. y.a | dig: "b")
108
+ // with the dig path to get the full navigation path.
109
+ const sourceLookupPath = buildLookupPath(expr.lookups);
110
+ const fullPath = sourceLookupPath ? [...sourceLookupPath, ...digPath] : digPath;
111
+ const sourceIdx = findLastApplicableShapeIndex(expr.name, node.position.start, variableShapes);
112
+ if (sourceIdx !== -1) {
113
+ const result = (0, property_shape_1.lookupPropertyPath)(variableShapes[sourceIdx].shape, fullPath);
114
+ if (result.shape && !result.error) {
115
+ variableShapes.push({
116
+ name: markup.name,
117
+ shape: result.shape,
118
+ range: [node.position.end],
119
+ });
120
+ }
121
+ }
122
+ }
123
+ }
124
+ }
88
125
  }
89
126
  // {% parse_json x %}{"a": 5}{% endparse_json %}
90
127
  if (isLiquidTagParseJson(node)) {
@@ -118,11 +155,14 @@ exports.UnknownProperty = {
118
155
  const schema = await getGraphQLSchema();
119
156
  const shape = (0, property_shape_1.inferShapeFromGraphQL)(content, schema);
120
157
  if (shape) {
121
- variableShapes.push({
122
- name: markup.name,
123
- shape,
124
- range: [node.position.end],
125
- });
158
+ const resultShape = applyDigFilters(shape, markup.filters);
159
+ if (resultShape) {
160
+ variableShapes.push({
161
+ name: markup.name,
162
+ shape: resultShape,
163
+ range: [node.position.end],
164
+ });
165
+ }
126
166
  }
127
167
  }
128
168
  catch {
@@ -142,11 +182,14 @@ exports.UnknownProperty = {
142
182
  const schema = await getGraphQLSchema();
143
183
  const shape = (0, property_shape_1.inferShapeFromGraphQL)(textContent, schema);
144
184
  if (shape) {
145
- variableShapes.push({
146
- name: markup.name,
147
- shape,
148
- range: [node.blockEndPosition?.end ?? node.position.end],
149
- });
185
+ const resultShape = applyDigFilters(shape, markup.filters);
186
+ if (resultShape) {
187
+ variableShapes.push({
188
+ name: markup.name,
189
+ shape: resultShape,
190
+ range: [node.blockEndPosition?.end ?? node.position.end],
191
+ });
192
+ }
150
193
  }
151
194
  }
152
195
  }
@@ -280,6 +323,28 @@ function buildLookupPath(lookups) {
280
323
  }
281
324
  return path;
282
325
  }
326
+ /**
327
+ * Navigate a shape using the `dig` filters from a tag's result filters.
328
+ * Returns the navigated shape, or the original shape if no dig filters are present.
329
+ * Returns null if the dig path is dynamic or navigates to an unknown property.
330
+ */
331
+ function applyDigFilters(shape, filters) {
332
+ const digFilters = filters.filter((f) => f.name === 'dig');
333
+ if (digFilters.length === 0)
334
+ return shape;
335
+ const digPath = [];
336
+ for (const filter of digFilters) {
337
+ const arg = filter.args?.[0];
338
+ if (arg?.type === liquid_html_parser_1.NodeTypes.String) {
339
+ digPath.push(arg.value);
340
+ }
341
+ else {
342
+ return null;
343
+ }
344
+ }
345
+ const result = (0, property_shape_1.lookupPropertyPath)(shape, digPath);
346
+ return result.error || !result.shape ? null : result.shape;
347
+ }
283
348
  /**
284
349
  * Extract the lookup path from a hash_assign target.
285
350
  * For {% hash_assign a['key1']['key2'] = value %}, returns ['key1', 'key2']
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/unknown-property/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checks/unknown-property/index.ts"],"names":[],"mappings":"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"}