@platformos/platformos-check-common 0.0.7 → 0.0.9
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/CHANGELOG.md +16 -0
- package/README.md +4 -4
- package/dist/AugmentedPlatformOSDocset.d.ts +11 -0
- package/dist/AugmentedPlatformOSDocset.js +81 -0
- package/dist/AugmentedPlatformOSDocset.js.map +1 -0
- package/dist/JSONValidator.js +1 -1
- package/dist/JSONValidator.js.map +1 -1
- package/dist/checks/deprecated-filter/index.js +4 -41
- package/dist/checks/deprecated-filter/index.js.map +1 -1
- package/dist/checks/deprecated-tag/index.js +21 -22
- package/dist/checks/deprecated-tag/index.js.map +1 -1
- package/dist/checks/duplicate-function-arguments/index.js +1 -1
- package/dist/checks/duplicate-function-arguments/index.js.map +1 -1
- package/dist/checks/duplicate-render-partial-arguments/index.js +1 -1
- package/dist/checks/duplicate-render-partial-arguments/index.js.map +1 -1
- package/dist/checks/graphql/index.js +1 -1
- package/dist/checks/graphql/index.js.map +1 -1
- package/dist/checks/graphql-variables/index.js +4 -0
- package/dist/checks/graphql-variables/index.js.map +1 -1
- package/dist/checks/img-width-and-height/index.js +1 -1
- package/dist/checks/img-width-and-height/index.js.map +1 -1
- package/dist/checks/index.d.ts +3 -3
- package/dist/checks/index.js +4 -79
- package/dist/checks/index.js.map +1 -1
- package/dist/checks/json-syntax-error/index.js +1 -1
- package/dist/checks/json-syntax-error/index.js.map +1 -1
- package/dist/checks/liquid-html-syntax-error/checks/InvalidLoopArguments.js +1 -1
- package/dist/checks/liquid-html-syntax-error/checks/InvalidLoopArguments.js.map +1 -1
- package/dist/checks/liquid-html-syntax-error/checks/InvalidTagSyntax.d.ts +19 -0
- package/dist/checks/liquid-html-syntax-error/checks/InvalidTagSyntax.js +79 -0
- package/dist/checks/liquid-html-syntax-error/checks/InvalidTagSyntax.js.map +1 -0
- package/dist/checks/liquid-html-syntax-error/checks/UnknownTag.d.ts +3 -0
- package/dist/checks/liquid-html-syntax-error/checks/UnknownTag.js +32 -0
- package/dist/checks/liquid-html-syntax-error/checks/UnknownTag.js.map +1 -0
- package/dist/checks/liquid-html-syntax-error/index.js +23 -5
- package/dist/checks/liquid-html-syntax-error/index.js.map +1 -1
- package/dist/checks/matching-translations/index.d.ts +2 -2
- package/dist/checks/matching-translations/index.js +114 -90
- package/dist/checks/matching-translations/index.js.map +1 -1
- package/dist/checks/metadata-params/index.js +6 -3
- package/dist/checks/metadata-params/index.js.map +1 -1
- package/dist/checks/missing-asset/index.js +1 -1
- package/dist/checks/missing-asset/index.js.map +1 -1
- package/dist/checks/missing-partial/index.d.ts +6 -0
- package/dist/checks/missing-partial/index.js +70 -0
- package/dist/checks/missing-partial/index.js.map +1 -0
- package/dist/checks/orphaned-partial/index.js +4 -4
- package/dist/checks/orphaned-partial/index.js.map +1 -1
- package/dist/checks/parser-blocking-script/index.js +10 -36
- package/dist/checks/parser-blocking-script/index.js.map +1 -1
- package/dist/checks/parser-blocking-script/suggestions.d.ts +1 -2
- package/dist/checks/parser-blocking-script/suggestions.js +1 -11
- package/dist/checks/parser-blocking-script/suggestions.js.map +1 -1
- package/dist/checks/reserved-doc-param-names/index.js +6 -5
- package/dist/checks/reserved-doc-param-names/index.js.map +1 -1
- package/dist/checks/translation-key-exists/index.js +1 -1
- package/dist/checks/translation-key-exists/index.js.map +1 -1
- package/dist/checks/unclosed-html-element/index.js +5 -1
- package/dist/checks/unclosed-html-element/index.js.map +1 -1
- package/dist/checks/undefined-object/index.js +13 -31
- package/dist/checks/undefined-object/index.js.map +1 -1
- package/dist/checks/unique-doc-param-names/index.js +1 -1
- package/dist/checks/unique-doc-param-names/index.js.map +1 -1
- package/dist/checks/unknown-filter/index.js +3 -3
- package/dist/checks/unknown-filter/index.js.map +1 -1
- package/dist/checks/unknown-property/index.js +1 -1
- package/dist/checks/unknown-property/index.js.map +1 -1
- package/dist/checks/unrecognized-render-partial-arguments/index.js +2 -2
- package/dist/checks/unrecognized-render-partial-arguments/index.js.map +1 -1
- package/dist/checks/unused-assign/index.js +1 -1
- package/dist/checks/unused-assign/index.js.map +1 -1
- package/dist/checks/unused-doc-param/index.js +1 -1
- package/dist/checks/unused-doc-param/index.js.map +1 -1
- package/dist/checks/utils.js +1 -1
- package/dist/checks/utils.js.map +1 -1
- package/dist/checks/valid-content-for-arguments/index.js +1 -1
- package/dist/checks/valid-content-for-arguments/index.js.map +1 -1
- package/dist/checks/valid-doc-param-types/index.js +4 -4
- package/dist/checks/valid-doc-param-types/index.js.map +1 -1
- package/dist/checks/valid-html-translation/index.d.ts +2 -2
- package/dist/checks/valid-html-translation/index.js +4 -4
- package/dist/checks/valid-html-translation/index.js.map +1 -1
- package/dist/checks/valid-json/index.js +1 -1
- package/dist/checks/valid-json/index.js.map +1 -1
- package/dist/checks/valid-render-partial-argument-types/index.js +2 -2
- package/dist/checks/valid-render-partial-argument-types/index.js.map +1 -1
- package/dist/checks/variable-name/index.js +1 -1
- package/dist/checks/variable-name/index.js.map +1 -1
- package/dist/context-utils.d.ts +18 -7
- package/dist/context-utils.js +68 -109
- package/dist/context-utils.js.map +1 -1
- package/dist/disabled-checks/index.js +4 -2
- package/dist/disabled-checks/index.js.map +1 -1
- package/dist/doc-generator/DocBlockGenerator.d.ts +16 -0
- package/dist/doc-generator/DocBlockGenerator.js +464 -0
- package/dist/doc-generator/DocBlockGenerator.js.map +1 -0
- package/dist/doc-generator/index.d.ts +1 -0
- package/dist/doc-generator/index.js +6 -0
- package/dist/doc-generator/index.js.map +1 -0
- package/dist/find-root.d.ts +7 -10
- package/dist/find-root.js +10 -17
- package/dist/find-root.js.map +1 -1
- package/dist/fixes/autofix.d.ts +4 -4
- package/dist/fixes/autofix.js +2 -2
- package/dist/fixes/autofix.js.map +1 -1
- package/dist/fixes/correctors/index.js +4 -0
- package/dist/fixes/correctors/index.js.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.js +50 -17
- package/dist/index.js.map +1 -1
- package/dist/jsonc/parse.d.ts +1 -1
- package/dist/jsonc/parse.js +1 -1
- package/dist/liquid-doc/arguments.d.ts +7 -8
- package/dist/liquid-doc/arguments.js +28 -29
- package/dist/liquid-doc/arguments.js.map +1 -1
- package/dist/liquid-doc/liquidDoc.d.ts +1 -1
- package/dist/liquid-doc/liquidDoc.js.map +1 -1
- package/dist/liquid-doc/utils.d.ts +3 -3
- package/dist/liquid-doc/utils.js +14 -3
- package/dist/liquid-doc/utils.js.map +1 -1
- package/dist/path.d.ts +1 -0
- package/dist/path.js +16 -1
- package/dist/path.js.map +1 -1
- package/{src/test/MockTheme.ts → dist/test/MockApp.d.ts} +2 -3
- package/dist/test/MockApp.js +16 -0
- package/dist/test/MockApp.js.map +1 -0
- package/dist/test/MockFileSystem.d.ts +3 -3
- package/dist/test/MockFileSystem.js +6 -6
- package/dist/test/MockFileSystem.js.map +1 -1
- package/dist/test/index.d.ts +1 -1
- package/dist/test/index.js +1 -1
- package/dist/test/index.js.map +1 -1
- package/dist/test/test-helper.d.ts +10 -9
- package/dist/test/test-helper.js +15 -106
- package/dist/test/test-helper.js.map +1 -1
- package/dist/to-schema.d.ts +1 -1
- package/dist/to-source-code.d.ts +3 -2
- package/dist/to-source-code.js +20 -0
- package/dist/to-source-code.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/platformos-liquid-docs.d.ts +128 -0
- package/dist/types/platformos-liquid-docs.js +3 -0
- package/dist/types/platformos-liquid-docs.js.map +1 -0
- package/dist/types/schemas/index.d.ts +0 -2
- package/dist/types/schemas/index.js.map +1 -1
- package/dist/types.d.ts +26 -67
- package/dist/types.js +3 -5
- package/dist/types.js.map +1 -1
- package/dist/utils/block.js.map +1 -1
- package/dist/utils/index.d.ts +0 -1
- package/dist/utils/index.js +0 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/yaml/parse.d.ts +5 -0
- package/dist/yaml/parse.js +94 -0
- package/dist/yaml/parse.js.map +1 -0
- package/package.json +4 -3
- package/src/{AugmentedThemeDocset.spec.ts → AugmentedPlatformOSDocset.spec.ts} +47 -34
- package/src/AugmentedPlatformOSDocset.ts +89 -0
- package/src/JSONValidator.ts +1 -1
- package/src/checks/deprecated-filter/index.spec.ts +76 -248
- package/src/checks/deprecated-filter/index.ts +5 -53
- package/src/checks/deprecated-tag/index.spec.ts +85 -34
- package/src/checks/deprecated-tag/index.ts +27 -22
- package/src/checks/duplicate-function-arguments/index.ts +1 -1
- package/src/checks/duplicate-render-partial-arguments/index.spec.ts +12 -12
- package/src/checks/duplicate-render-partial-arguments/index.ts +1 -1
- package/src/checks/graphql/index.ts +1 -1
- package/src/checks/graphql-variables/index.spec.ts +95 -0
- package/src/checks/graphql-variables/index.ts +4 -0
- package/src/checks/img-width-and-height/index.ts +2 -2
- package/src/checks/index.ts +11 -80
- package/src/checks/invalid-hash-assign-target/index.spec.ts +27 -27
- package/src/checks/json-syntax-error/index.ts +2 -2
- package/src/checks/liquid-html-syntax-error/checks/InvalidBooleanExpression.spec.ts +0 -11
- package/src/checks/liquid-html-syntax-error/checks/InvalidLoopArguments.spec.ts +1 -2
- package/src/checks/liquid-html-syntax-error/checks/InvalidLoopArguments.ts +2 -2
- package/src/checks/liquid-html-syntax-error/checks/InvalidTagSyntax.spec.ts +259 -0
- package/src/checks/liquid-html-syntax-error/checks/InvalidTagSyntax.ts +89 -0
- package/src/checks/liquid-html-syntax-error/checks/UnknownTag.spec.ts +293 -0
- package/src/checks/liquid-html-syntax-error/checks/UnknownTag.ts +43 -0
- package/src/checks/liquid-html-syntax-error/index.spec.ts +1 -6
- package/src/checks/liquid-html-syntax-error/index.ts +26 -5
- package/src/checks/matching-translations/index.spec.ts +187 -354
- package/src/checks/matching-translations/index.ts +117 -107
- package/src/checks/metadata-params/index.ts +6 -8
- package/src/checks/missing-asset/index.ts +1 -1
- package/src/checks/{missing-template → missing-partial}/index.spec.ts +6 -6
- package/src/checks/{missing-template → missing-partial}/index.ts +12 -26
- package/src/checks/orphaned-partial/index.ts +3 -3
- package/src/checks/parser-blocking-script/index.spec.ts +0 -118
- package/src/checks/parser-blocking-script/index.ts +3 -33
- package/src/checks/parser-blocking-script/suggestions.ts +1 -28
- package/src/checks/translation-key-exists/index.ts +1 -1
- package/src/checks/unclosed-html-element/index.ts +5 -1
- package/src/checks/undefined-object/index.spec.ts +32 -111
- package/src/checks/undefined-object/index.ts +15 -34
- package/src/checks/unique-doc-param-names/index.ts +1 -1
- package/src/checks/unknown-filter/index.spec.ts +2 -2
- package/src/checks/unknown-filter/index.ts +3 -3
- package/src/checks/unknown-property/index.ts +1 -1
- package/src/checks/unrecognized-render-partial-arguments/index.spec.ts +5 -5
- package/src/checks/unrecognized-render-partial-arguments/index.ts +2 -5
- package/src/checks/unused-assign/index.spec.ts +0 -30
- package/src/checks/unused-assign/index.ts +2 -2
- package/src/checks/unused-doc-param/index.ts +1 -1
- package/src/checks/utils.ts +1 -1
- package/src/checks/valid-doc-param-types/index.ts +4 -4
- package/src/checks/valid-html-translation/index.spec.ts +42 -32
- package/src/checks/valid-html-translation/index.ts +7 -7
- package/src/checks/valid-json/index.ts +2 -2
- package/src/checks/valid-render-partial-argument-types/index.spec.ts +13 -13
- package/src/checks/valid-render-partial-argument-types/index.ts +2 -5
- package/src/checks/variable-name/index.ts +1 -1
- package/src/context-utils.spec.ts +49 -77
- package/src/context-utils.ts +81 -129
- package/src/disabled-checks/index.spec.ts +26 -26
- package/src/disabled-checks/index.ts +2 -2
- package/src/disabled-checks/test-checks.ts +4 -4
- package/src/find-root.ts +12 -22
- package/src/fixes/autofix.spec.ts +2 -2
- package/src/fixes/autofix.ts +4 -4
- package/src/fixes/correctors/index.ts +4 -0
- package/src/ignore.spec.ts +4 -5
- package/src/index.ts +51 -21
- package/src/jsonc/parse.ts +1 -1
- package/src/liquid-doc/arguments.spec.ts +19 -45
- package/src/liquid-doc/arguments.ts +35 -42
- package/src/liquid-doc/liquidDoc.spec.ts +1 -1
- package/src/liquid-doc/liquidDoc.ts +1 -2
- package/src/liquid-doc/utils.ts +17 -8
- package/src/path.ts +16 -0
- package/src/test/MockApp.ts +17 -0
- package/src/test/MockFileSystem.spec.ts +10 -11
- package/src/test/MockFileSystem.ts +6 -6
- package/src/test/contain-offense.spec.ts +11 -3
- package/src/test/index.ts +1 -1
- package/src/test/test-helper.ts +43 -145
- package/src/to-source-code.ts +20 -1
- package/src/types/{theme-liquid-docs.ts → platformos-liquid-docs.ts} +8 -13
- package/src/types.ts +29 -92
- package/src/utils/index.ts +0 -1
- package/src/visitor.spec.ts +2 -2
- package/src/yaml/parse.ts +111 -0
- package/src/AugmentedThemeDocset.ts +0 -137
- package/src/checks/app-block-missing-schema/index.spec.ts +0 -121
- package/src/checks/app-block-missing-schema/index.ts +0 -46
- package/src/checks/app-block-valid-tags/index.spec.ts +0 -96
- package/src/checks/app-block-valid-tags/index.ts +0 -54
- package/src/checks/asset-preload/index.spec.ts +0 -78
- package/src/checks/asset-preload/index.ts +0 -65
- package/src/checks/asset-size-app-block-css/index.spec.ts +0 -88
- package/src/checks/asset-size-app-block-css/index.ts +0 -78
- package/src/checks/asset-size-app-block-javascript/index.spec.ts +0 -66
- package/src/checks/asset-size-app-block-javascript/index.ts +0 -78
- package/src/checks/asset-size-css/index.spec.ts +0 -166
- package/src/checks/asset-size-css/index.ts +0 -160
- package/src/checks/asset-size-javascript/index.spec.ts +0 -184
- package/src/checks/asset-size-javascript/index.ts +0 -144
- package/src/checks/block-id-usage/index.spec.ts +0 -76
- package/src/checks/block-id-usage/index.ts +0 -72
- package/src/checks/cdn-preconnect/index.spec.ts +0 -40
- package/src/checks/cdn-preconnect/index.ts +0 -43
- package/src/checks/content-for-header-modification/index.spec.ts +0 -65
- package/src/checks/content-for-header-modification/index.ts +0 -72
- package/src/checks/deprecate-bgsizes/index.spec.ts +0 -41
- package/src/checks/deprecate-bgsizes/index.ts +0 -49
- package/src/checks/deprecate-lazysizes/index.spec.ts +0 -26
- package/src/checks/deprecate-lazysizes/index.ts +0 -58
- package/src/checks/deprecated-filter/fixes.ts +0 -264
- package/src/checks/deprecated-fonts-on-sections-and-blocks/deprecated-fonts-data.ts +0 -1343
- package/src/checks/deprecated-fonts-on-sections-and-blocks/index.spec.ts +0 -613
- package/src/checks/deprecated-fonts-on-sections-and-blocks/index.ts +0 -284
- package/src/checks/deprecated-fonts-on-settings-schema/index.spec.ts +0 -102
- package/src/checks/deprecated-fonts-on-settings-schema/index.ts +0 -66
- package/src/checks/duplicate-content-for-arguments/index.spec.ts +0 -98
- package/src/checks/duplicate-content-for-arguments/index.ts +0 -43
- package/src/checks/empty-block-content/index.spec.ts +0 -117
- package/src/checks/empty-block-content/index.ts +0 -60
- package/src/checks/hardcoded-routes/index.spec.ts +0 -58
- package/src/checks/hardcoded-routes/index.ts +0 -100
- package/src/checks/json-missing-block/index.spec.ts +0 -435
- package/src/checks/json-missing-block/index.ts +0 -56
- package/src/checks/json-missing-block/missing-block-utils.ts +0 -147
- package/src/checks/liquid-free-settings/index.spec.ts +0 -180
- package/src/checks/liquid-free-settings/index.ts +0 -79
- package/src/checks/missing-content-for-arguments/index.spec.ts +0 -144
- package/src/checks/missing-content-for-arguments/index.ts +0 -46
- package/src/checks/pagination-size/index.spec.ts +0 -158
- package/src/checks/pagination-size/index.ts +0 -104
- package/src/checks/remote-asset/index.spec.ts +0 -280
- package/src/checks/remote-asset/index.ts +0 -238
- package/src/checks/reserved-doc-param-names/index.spec.ts +0 -62
- package/src/checks/reserved-doc-param-names/index.ts +0 -57
- package/src/checks/schema-presets-block-order/index.spec.ts +0 -344
- package/src/checks/schema-presets-block-order/index.ts +0 -154
- package/src/checks/schema-presets-static-blocks/index.spec.ts +0 -145
- package/src/checks/schema-presets-static-blocks/index.ts +0 -126
- package/src/checks/static-stylesheet-and-javascript-tags/index.spec.ts +0 -257
- package/src/checks/static-stylesheet-and-javascript-tags/index.ts +0 -48
- package/src/checks/unique-settings-id/index.spec.ts +0 -24
- package/src/checks/unique-settings-id/index.ts +0 -84
- package/src/checks/unique-settings-id/test-data.ts +0 -1191
- package/src/checks/unique-static-block-id/index.spec.ts +0 -55
- package/src/checks/unique-static-block-id/index.ts +0 -60
- package/src/checks/unrecognized-content-for-arguments/index.spec.ts +0 -145
- package/src/checks/unrecognized-content-for-arguments/index.ts +0 -55
- package/src/checks/valid-block-target/index.spec.ts +0 -1396
- package/src/checks/valid-block-target/index.ts +0 -142
- package/src/checks/valid-content-for-argument-types/index.spec.ts +0 -382
- package/src/checks/valid-content-for-argument-types/index.ts +0 -42
- package/src/checks/valid-content-for-arguments/index.spec.ts +0 -107
- package/src/checks/valid-content-for-arguments/index.ts +0 -98
- package/src/checks/valid-local-blocks/index.spec.ts +0 -286
- package/src/checks/valid-local-blocks/index.ts +0 -100
- package/src/checks/valid-local-blocks/valid-block-utils.ts +0 -97
- package/src/checks/valid-schema/index.spec.ts +0 -174
- package/src/checks/valid-schema/index.ts +0 -41
- package/src/checks/valid-schema-name/index.spec.ts +0 -112
- package/src/checks/valid-schema-name/index.ts +0 -75
- package/src/checks/valid-settings-key/index.spec.ts +0 -321
- package/src/checks/valid-settings-key/index.ts +0 -144
- package/src/checks/valid-static-block-type/index.spec.ts +0 -38
- package/src/checks/valid-static-block-type/index.ts +0 -58
- package/src/checks/valid-visible-if/index.spec.ts +0 -619
- package/src/checks/valid-visible-if/index.ts +0 -184
- package/src/checks/valid-visible-if/visible-if-utils.ts +0 -158
- package/src/tags/content-for.ts +0 -25
- package/src/to-schema.ts +0 -231
- package/src/types/schemas/index.ts +0 -5
- package/src/types/schemas/preset.ts +0 -52
- package/src/types/schemas/section.ts +0 -86
- package/src/types/schemas/setting.ts +0 -320
- package/src/types/schemas/template.ts +0 -34
- package/src/types/schemas/theme-block.ts +0 -34
- package/src/types/theme-schemas.ts +0 -80
- package/src/utils/block.ts +0 -300
- package/src/utils/markup.ts +0 -10
package/dist/find-root.js
CHANGED
|
@@ -36,9 +36,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.findRoot = findRoot;
|
|
37
37
|
const path = __importStar(require("./path"));
|
|
38
38
|
async function isRoot(dir, fileExists) {
|
|
39
|
-
return or(
|
|
40
|
-
//
|
|
41
|
-
and(fileExists(path.join(dir, '
|
|
39
|
+
return or(fileExists(path.join(dir, '.pos')), fileExists(path.join(dir, '.platformos-check.yml')), fileExists(path.join(dir, 'app')),
|
|
40
|
+
// modules/ is a root indicator only when not inside app/ (app/modules/ is a valid subdirectory)
|
|
41
|
+
and(fileExists(path.join(dir, 'modules')), Promise.resolve(path.basename(dir) !== 'app')));
|
|
42
42
|
}
|
|
43
43
|
async function and(...promises) {
|
|
44
44
|
const bools = await Promise.all(promises);
|
|
@@ -48,23 +48,16 @@ async function or(...promises) {
|
|
|
48
48
|
const bools = await Promise.all(promises);
|
|
49
49
|
return bools.reduce((a, b) => a || b, false);
|
|
50
50
|
}
|
|
51
|
-
async function not(ap) {
|
|
52
|
-
const a = await ap;
|
|
53
|
-
return !a;
|
|
54
|
-
}
|
|
55
51
|
/**
|
|
56
|
-
* Returns the
|
|
57
|
-
*
|
|
58
|
-
* `
|
|
59
|
-
*
|
|
60
|
-
* There are cases where .theme-check.yml is not defined and we have to infer the root.
|
|
61
|
-
* We'll assume that the root is the directory that contains a `snippets` directory.
|
|
52
|
+
* Returns the root of a platformOS app. The root is the directory that contains
|
|
53
|
+
* a `.pos` sentinel file, a `.platformos-check.yml` config file, an `app/` directory,
|
|
54
|
+
* or a `modules/` directory (when not inside `app/`).
|
|
62
55
|
*
|
|
63
|
-
*
|
|
64
|
-
* should be.
|
|
56
|
+
* Note: `modules/` inside `app/` (i.e. `app/modules/`) is a valid subdirectory and
|
|
57
|
+
* should not be treated as a root indicator.
|
|
65
58
|
*
|
|
66
|
-
* Note:
|
|
67
|
-
*
|
|
59
|
+
* Note: this is not the app root itself. The config file might have a `root` entry that
|
|
60
|
+
* points to somewhere else.
|
|
68
61
|
*/
|
|
69
62
|
async function findRoot(curr, fileExists) {
|
|
70
63
|
const currIsRoot = await isRoot(curr, fileExists);
|
package/dist/find-root.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find-root.js","sourceRoot":"","sources":["../src/find-root.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"find-root.js","sourceRoot":"","sources":["../src/find-root.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,4BAaC;AAhDD,6CAA+B;AAI/B,KAAK,UAAU,MAAM,CAAC,GAAc,EAAE,UAAsB;IAC1D,OAAO,EAAE,CACP,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EAClC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC,EACnD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACjC,gGAAgG;IAChG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,CAC1F,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,GAAG,CAAC,GAAG,QAA4B;IAChD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,KAAK,UAAU,EAAE,CAAC,GAAG,QAA4B;IAC/C,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;GAUG;AACI,KAAK,UAAU,QAAQ,CAAC,IAAe,EAAE,UAAsB;IACpE,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAClD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,kBAAkB,GAAG,GAAG,KAAK,IAAI,CAAC;IACxC,IAAI,kBAAkB,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,CAAC,kBAAkB;IACjC,CAAC;IAED,OAAO,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;AACnC,CAAC"}
|
package/dist/fixes/autofix.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { FixApplicator, Offense,
|
|
1
|
+
import { FixApplicator, Offense, App } from '../types';
|
|
2
2
|
/**
|
|
3
|
-
* Takes
|
|
4
|
-
* safe ones on the
|
|
3
|
+
* Takes an app, list of offenses and a fixApplicator and runs all the
|
|
4
|
+
* safe ones on the app.
|
|
5
5
|
*
|
|
6
6
|
* Note that offense.fix is assumed to be safe, unlike offense.suggest
|
|
7
7
|
* options.
|
|
8
8
|
*/
|
|
9
|
-
export declare function autofix(sourceCodes:
|
|
9
|
+
export declare function autofix(sourceCodes: App, offenses: Offense[], applyFixes: FixApplicator): Promise<void>;
|
package/dist/fixes/autofix.js
CHANGED
|
@@ -4,8 +4,8 @@ exports.autofix = autofix;
|
|
|
4
4
|
const correctors_1 = require("./correctors");
|
|
5
5
|
const utils_1 = require("./utils");
|
|
6
6
|
/**
|
|
7
|
-
* Takes
|
|
8
|
-
* safe ones on the
|
|
7
|
+
* Takes an app, list of offenses and a fixApplicator and runs all the
|
|
8
|
+
* safe ones on the app.
|
|
9
9
|
*
|
|
10
10
|
* Note that offense.fix is assumed to be safe, unlike offense.suggest
|
|
11
11
|
* options.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autofix.js","sourceRoot":"","sources":["../../src/fixes/autofix.ts"],"names":[],"mappings":";;AAgBA,0BAwBC;AAtCD,6CAA+C;AAC/C,mCAAuC;AAMvC;;;;;;GAMG;AACI,KAAK,UAAU,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"autofix.js","sourceRoot":"","sources":["../../src/fixes/autofix.ts"],"names":[],"mappings":";;AAgBA,0BAwBC;AAtCD,6CAA+C;AAC/C,mCAAuC;AAMvC;;;;;;GAMG;AACI,KAAK,UAAU,OAAO,CAAC,WAAgB,EAAE,QAAmB,EAAE,UAAyB;IAC5F,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CACrC,CAAC,OAAO,EAA6C,EAAE,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAC1F,CAAC;IAEF,MAAM,QAAQ,GAAG,EAAE,CAAC;IAEpB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,kBAAkB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,KAAK,UAAU,CAAC,GAAG,CAAC,CAAC;QAE/F,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,IAAA,4BAAe,EAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;QACtE,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;YACzC,uDAAuD;YACvD,OAAO,CAAC,GAAG,CAAC,SAAgB,CAAC,CAAC;QAChC,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAA,oBAAY,EAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -19,6 +19,10 @@ function createCorrector(sourceCodeType, source) {
|
|
|
19
19
|
}
|
|
20
20
|
case types_1.SourceCodeType.GraphQL:
|
|
21
21
|
return new graphql_corrector_1.GraphQLCorrector(source);
|
|
22
|
+
case types_1.SourceCodeType.YAML: {
|
|
23
|
+
// YAML autofix is not yet supported; this case should not be reached
|
|
24
|
+
throw new Error('YAML autofix is not supported');
|
|
25
|
+
}
|
|
22
26
|
default: {
|
|
23
27
|
return assertNever(sourceCodeType);
|
|
24
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/fixes/correctors/index.ts"],"names":[],"mappings":";;;AAOA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/fixes/correctors/index.ts"],"names":[],"mappings":";;;AAOA,0CAqBC;AA5BD,uCAAwD;AACxD,qDAAiD;AAIxC,8FAJA,8BAAa,OAIA;AAHtB,yDAAqD;AAG7B,gGAHf,kCAAe,OAGe;AAFvC,2DAAuD;AAEd,iGAFhC,oCAAgB,OAEgC;AAEzD,SAAgB,eAAe,CAC7B,cAAiB,EACjB,MAAc;IAEd,QAAQ,cAAc,EAAE,CAAC;QACvB,KAAK,sBAAc,CAAC,IAAI,CAAC,CAAC,CAAC;YACzB,OAAO,IAAI,8BAAa,CAAC,MAAM,CAAqC,CAAC;QACvE,CAAC;QACD,KAAK,sBAAc,CAAC,UAAU,CAAC,CAAC,CAAC;YAC/B,OAAO,IAAI,kCAAe,CAAC,MAAM,CAAqC,CAAC;QACzE,CAAC;QACD,KAAK,sBAAc,CAAC,OAAO;YACzB,OAAO,IAAI,oCAAgB,CAAC,MAAM,CAAqC,CAAC;QAC1E,KAAK,sBAAc,CAAC,IAAI,CAAC,CAAC,CAAC;YACzB,qEAAqE;YACrE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,OAAO,WAAW,CAAC,cAAc,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,CAAQ;IAC3B,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,EAAE,CAAC,CAAC;AACxD,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { Config, Dependencies, Offense,
|
|
2
|
-
export * from './
|
|
1
|
+
import { Config, Dependencies, Offense, App } from './types';
|
|
2
|
+
export * from './AugmentedPlatformOSDocset';
|
|
3
|
+
export * from './types/platformos-liquid-docs';
|
|
3
4
|
export * from './checks';
|
|
4
5
|
export * from './context-utils';
|
|
5
6
|
export * from './find-root';
|
|
6
7
|
export * from './fixes';
|
|
7
8
|
export * from './ignore';
|
|
9
|
+
export { FILE_TYPE_DIRS, getAppPaths, getFileType, getModulePaths, isApiCall, isAuthorization, isEmail, isKnownLiquidFile, isLayout, isMigration, isPage, isPartial, isSms, PlatformOSFileType, } from '@platformos/platformos-common';
|
|
8
10
|
export * from './json';
|
|
9
11
|
export * from './JSONValidator';
|
|
10
12
|
export * as path from './path';
|
|
11
|
-
export * from './to-schema';
|
|
12
13
|
export * from './to-source-code';
|
|
13
14
|
export * from './types';
|
|
14
15
|
export * from './utils/error';
|
|
@@ -18,6 +19,5 @@ export * from './utils/types';
|
|
|
18
19
|
export * from './utils/object';
|
|
19
20
|
export * from './visitor';
|
|
20
21
|
export * from './liquid-doc/liquidDoc';
|
|
21
|
-
export { getBlockName } from './liquid-doc/arguments';
|
|
22
22
|
export * from './liquid-doc/utils';
|
|
23
|
-
export declare function check(
|
|
23
|
+
export declare function check(app: App, config: Config, injectedDependencies: Dependencies): Promise<Offense[]>;
|
package/dist/index.js
CHANGED
|
@@ -36,9 +36,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
36
36
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.
|
|
39
|
+
exports.path = exports.PlatformOSFileType = exports.isSms = exports.isPartial = exports.isPage = exports.isMigration = exports.isLayout = exports.isKnownLiquidFile = exports.isEmail = exports.isAuthorization = exports.isApiCall = exports.getModulePaths = exports.getFileType = exports.getAppPaths = exports.FILE_TYPE_DIRS = void 0;
|
|
40
40
|
exports.check = check;
|
|
41
|
-
const
|
|
41
|
+
const AugmentedPlatformOSDocset_1 = require("./AugmentedPlatformOSDocset");
|
|
42
42
|
const JSONValidator_1 = require("./JSONValidator");
|
|
43
43
|
const context_utils_1 = require("./context-utils");
|
|
44
44
|
const disabled_checks_1 = require("./disabled-checks");
|
|
@@ -47,16 +47,31 @@ const path = __importStar(require("./path"));
|
|
|
47
47
|
const types_1 = require("./types");
|
|
48
48
|
const utils_1 = require("./utils");
|
|
49
49
|
const visitors_1 = require("./visitors");
|
|
50
|
-
__exportStar(require("./
|
|
50
|
+
__exportStar(require("./AugmentedPlatformOSDocset"), exports);
|
|
51
|
+
__exportStar(require("./types/platformos-liquid-docs"), exports);
|
|
51
52
|
__exportStar(require("./checks"), exports);
|
|
52
53
|
__exportStar(require("./context-utils"), exports);
|
|
53
54
|
__exportStar(require("./find-root"), exports);
|
|
54
55
|
__exportStar(require("./fixes"), exports);
|
|
55
56
|
__exportStar(require("./ignore"), exports);
|
|
57
|
+
var platformos_common_1 = require("@platformos/platformos-common");
|
|
58
|
+
Object.defineProperty(exports, "FILE_TYPE_DIRS", { enumerable: true, get: function () { return platformos_common_1.FILE_TYPE_DIRS; } });
|
|
59
|
+
Object.defineProperty(exports, "getAppPaths", { enumerable: true, get: function () { return platformos_common_1.getAppPaths; } });
|
|
60
|
+
Object.defineProperty(exports, "getFileType", { enumerable: true, get: function () { return platformos_common_1.getFileType; } });
|
|
61
|
+
Object.defineProperty(exports, "getModulePaths", { enumerable: true, get: function () { return platformos_common_1.getModulePaths; } });
|
|
62
|
+
Object.defineProperty(exports, "isApiCall", { enumerable: true, get: function () { return platformos_common_1.isApiCall; } });
|
|
63
|
+
Object.defineProperty(exports, "isAuthorization", { enumerable: true, get: function () { return platformos_common_1.isAuthorization; } });
|
|
64
|
+
Object.defineProperty(exports, "isEmail", { enumerable: true, get: function () { return platformos_common_1.isEmail; } });
|
|
65
|
+
Object.defineProperty(exports, "isKnownLiquidFile", { enumerable: true, get: function () { return platformos_common_1.isKnownLiquidFile; } });
|
|
66
|
+
Object.defineProperty(exports, "isLayout", { enumerable: true, get: function () { return platformos_common_1.isLayout; } });
|
|
67
|
+
Object.defineProperty(exports, "isMigration", { enumerable: true, get: function () { return platformos_common_1.isMigration; } });
|
|
68
|
+
Object.defineProperty(exports, "isPage", { enumerable: true, get: function () { return platformos_common_1.isPage; } });
|
|
69
|
+
Object.defineProperty(exports, "isPartial", { enumerable: true, get: function () { return platformos_common_1.isPartial; } });
|
|
70
|
+
Object.defineProperty(exports, "isSms", { enumerable: true, get: function () { return platformos_common_1.isSms; } });
|
|
71
|
+
Object.defineProperty(exports, "PlatformOSFileType", { enumerable: true, get: function () { return platformos_common_1.PlatformOSFileType; } });
|
|
56
72
|
__exportStar(require("./json"), exports);
|
|
57
73
|
__exportStar(require("./JSONValidator"), exports);
|
|
58
74
|
exports.path = __importStar(require("./path"));
|
|
59
|
-
__exportStar(require("./to-schema"), exports);
|
|
60
75
|
__exportStar(require("./to-source-code"), exports);
|
|
61
76
|
__exportStar(require("./types"), exports);
|
|
62
77
|
__exportStar(require("./utils/error"), exports);
|
|
@@ -66,39 +81,34 @@ __exportStar(require("./utils/types"), exports);
|
|
|
66
81
|
__exportStar(require("./utils/object"), exports);
|
|
67
82
|
__exportStar(require("./visitor"), exports);
|
|
68
83
|
__exportStar(require("./liquid-doc/liquidDoc"), exports);
|
|
69
|
-
var arguments_1 = require("./liquid-doc/arguments");
|
|
70
|
-
Object.defineProperty(exports, "getBlockName", { enumerable: true, get: function () { return arguments_1.getBlockName; } });
|
|
71
84
|
__exportStar(require("./liquid-doc/utils"), exports);
|
|
72
85
|
const defaultErrorHandler = (_error) => {
|
|
73
86
|
// Silently ignores errors by default.
|
|
74
87
|
};
|
|
75
|
-
async function check(
|
|
88
|
+
async function check(app, config, injectedDependencies) {
|
|
76
89
|
const pipelines = [];
|
|
77
90
|
const offenses = [];
|
|
78
91
|
const { fs } = injectedDependencies;
|
|
79
92
|
const { rootUri } = config;
|
|
80
93
|
const dependencies = {
|
|
81
94
|
...injectedDependencies,
|
|
82
|
-
mode: config.context,
|
|
83
95
|
fileExists: (0, context_utils_1.makeFileExists)(fs),
|
|
84
96
|
fileSize: (0, context_utils_1.makeFileSize)(fs),
|
|
85
97
|
getDefaultLocale: (0, context_utils_1.makeGetDefaultLocale)(fs, rootUri),
|
|
86
|
-
getDefaultTranslations: (0, context_utils_1.makeGetDefaultTranslations)(fs,
|
|
87
|
-
|
|
88
|
-
getDefaultSchemaTranslations: (0, context_utils_1.makeGetDefaultSchemaTranslations)(fs, theme, rootUri),
|
|
89
|
-
getMetafieldDefinitions: injectedDependencies.getMetafieldDefinitions ?? (0, context_utils_1.makeGetMetafieldDefinitions)(fs),
|
|
98
|
+
getDefaultTranslations: (0, context_utils_1.makeGetDefaultTranslations)(fs, app, rootUri),
|
|
99
|
+
getTranslationsForBase: (0, context_utils_1.makeGetTranslationsForBase)(fs, app),
|
|
90
100
|
};
|
|
91
101
|
const { DisabledChecksVisitor, isDisabled } = (0, disabled_checks_1.createDisabledChecksModule)();
|
|
92
102
|
const jsonValidator = await JSONValidator_1.JSONValidator.create(dependencies.jsonValidationSet, config);
|
|
93
103
|
const validateJSON = jsonValidator?.validate;
|
|
94
104
|
// We're memozing those deps here because they shouldn't change within a run.
|
|
95
|
-
if (dependencies.
|
|
96
|
-
dependencies.
|
|
105
|
+
if (dependencies.platformosDocset && !dependencies.platformosDocset.isAugmented) {
|
|
106
|
+
dependencies.platformosDocset = new AugmentedPlatformOSDocset_1.AugmentedPlatformOSDocset(dependencies.platformosDocset);
|
|
97
107
|
}
|
|
98
108
|
for (const type of Object.values(types_1.SourceCodeType)) {
|
|
99
109
|
switch (type) {
|
|
100
110
|
case types_1.SourceCodeType.JSON: {
|
|
101
|
-
const files = filesOfType(type,
|
|
111
|
+
const files = filesOfType(type, app);
|
|
102
112
|
const checkDefs = checksOfType(type, config.checks);
|
|
103
113
|
for (const file of files) {
|
|
104
114
|
for (const checkDef of checkDefs) {
|
|
@@ -111,7 +121,7 @@ async function check(theme, config, injectedDependencies) {
|
|
|
111
121
|
break;
|
|
112
122
|
}
|
|
113
123
|
case types_1.SourceCodeType.GraphQL: {
|
|
114
|
-
const files = filesOfType(type,
|
|
124
|
+
const files = filesOfType(type, app);
|
|
115
125
|
const checkDefs = checksOfType(type, config.checks);
|
|
116
126
|
for (const file of files) {
|
|
117
127
|
for (const checkDef of checkDefs) {
|
|
@@ -124,7 +134,7 @@ async function check(theme, config, injectedDependencies) {
|
|
|
124
134
|
break;
|
|
125
135
|
}
|
|
126
136
|
case types_1.SourceCodeType.LiquidHtml: {
|
|
127
|
-
const files = filesOfType(type,
|
|
137
|
+
const files = filesOfType(type, app);
|
|
128
138
|
const checkDefs = [DisabledChecksVisitor, ...checksOfType(type, config.checks)];
|
|
129
139
|
for (const file of files) {
|
|
130
140
|
for (const checkDef of checkDefs) {
|
|
@@ -136,6 +146,19 @@ async function check(theme, config, injectedDependencies) {
|
|
|
136
146
|
}
|
|
137
147
|
break;
|
|
138
148
|
}
|
|
149
|
+
case types_1.SourceCodeType.YAML: {
|
|
150
|
+
const files = filesOfType(type, app);
|
|
151
|
+
const checkDefs = checksOfType(type, config.checks);
|
|
152
|
+
for (const file of files) {
|
|
153
|
+
for (const checkDef of checkDefs) {
|
|
154
|
+
if ((0, ignore_1.isIgnored)(file.uri, config, checkDef))
|
|
155
|
+
continue;
|
|
156
|
+
const check = createCheck(checkDef, file, config, offenses, dependencies, validateJSON);
|
|
157
|
+
pipelines.push(checkYAMLFile(check, file));
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
break;
|
|
161
|
+
}
|
|
139
162
|
}
|
|
140
163
|
}
|
|
141
164
|
const onRejected = config.onError || defaultErrorHandler;
|
|
@@ -208,4 +231,14 @@ async function checkLiquidFile(check, file) {
|
|
|
208
231
|
if (check.onCodePathEnd)
|
|
209
232
|
await check.onCodePathEnd(file);
|
|
210
233
|
}
|
|
234
|
+
async function checkYAMLFile(check, file) {
|
|
235
|
+
if (check.onCodePathStart)
|
|
236
|
+
await check.onCodePathStart(file);
|
|
237
|
+
if (file.ast instanceof Error)
|
|
238
|
+
return;
|
|
239
|
+
if (Object.keys(check).length > 0)
|
|
240
|
+
await (0, visitors_1.visitJSON)(file.ast, check);
|
|
241
|
+
if (check.onCodePathEnd)
|
|
242
|
+
await check.onCodePathEnd(file);
|
|
243
|
+
}
|
|
211
244
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/jsonc/parse.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export declare class JSONCParseErrors extends Error {
|
|
|
5
5
|
constructor(message: string, errors: ParseError[]);
|
|
6
6
|
}
|
|
7
7
|
/**
|
|
8
|
-
* At some point, we started supporting JSONC.
|
|
8
|
+
* At some point, we started supporting JSONC. App Check 2 was built on top of
|
|
9
9
|
* `json-to-ast` which does not support comments.
|
|
10
10
|
*
|
|
11
11
|
* This little adapter here will take a tree we get from `jsonc-parser` and
|
package/dist/jsonc/parse.js
CHANGED
|
@@ -12,7 +12,7 @@ class JSONCParseErrors extends Error {
|
|
|
12
12
|
}
|
|
13
13
|
exports.JSONCParseErrors = JSONCParseErrors;
|
|
14
14
|
/**
|
|
15
|
-
* At some point, we started supporting JSONC.
|
|
15
|
+
* At some point, we started supporting JSONC. App Check 2 was built on top of
|
|
16
16
|
* `json-to-ast` which does not support comments.
|
|
17
17
|
*
|
|
18
18
|
* This little adapter here will take a tree we get from `jsonc-parser` and
|
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
* Helper methods shared between `render` tag and `content_for` tag to report
|
|
3
3
|
* errors when LiquidDoc exists
|
|
4
4
|
*/
|
|
5
|
-
import {
|
|
5
|
+
import { RenderMarkup, FunctionMarkup, LiquidNamedArgument } from '@platformos/liquid-html-parser';
|
|
6
6
|
import { Context, LiquidDocParameter, SourceCodeType, StringCorrector } from '..';
|
|
7
7
|
/**
|
|
8
8
|
* Report error when unknown arguments are provided for `content_for` tag or `render` tag
|
|
9
9
|
*/
|
|
10
|
-
export declare function reportUnknownArguments(context: Context<SourceCodeType.LiquidHtml>, node:
|
|
10
|
+
export declare function reportUnknownArguments(context: Context<SourceCodeType.LiquidHtml>, node: RenderMarkup | FunctionMarkup, unknownProvidedArgs: LiquidNamedArgument[], name: string): void;
|
|
11
11
|
/**
|
|
12
12
|
* Report error when missing arguments are provided for `content_for` tag or `render` tag
|
|
13
13
|
*/
|
|
14
|
-
export declare function reportMissingArguments(context: Context<SourceCodeType.LiquidHtml>, node:
|
|
15
|
-
export declare function reportDuplicateArguments(context: Context<SourceCodeType.LiquidHtml>, node:
|
|
14
|
+
export declare function reportMissingArguments(context: Context<SourceCodeType.LiquidHtml>, node: RenderMarkup | FunctionMarkup, missingRequiredArgs: LiquidDocParameter[], name: string): void;
|
|
15
|
+
export declare function reportDuplicateArguments(context: Context<SourceCodeType.LiquidHtml>, node: RenderMarkup | FunctionMarkup, duplicateArgs: LiquidNamedArgument[], name: string): void;
|
|
16
16
|
/**
|
|
17
17
|
* Find type mismatch between the arguments provided for `content_for` tag and `render` tag
|
|
18
18
|
* and their associated file's LiquidDoc
|
|
@@ -29,8 +29,7 @@ export declare function generateTypeMismatchSuggestions(expectedType: string, st
|
|
|
29
29
|
message: string;
|
|
30
30
|
fix: (fixer: StringCorrector) => void;
|
|
31
31
|
}[];
|
|
32
|
-
export declare function getBlockName(node: ContentForMarkup): string | undefined;
|
|
33
32
|
export declare function getPartialName(node: RenderMarkup | FunctionMarkup): string | undefined;
|
|
34
|
-
export declare function getLiquidDocParams(context: Context<SourceCodeType.LiquidHtml>,
|
|
35
|
-
export declare function makeRemoveArgumentCorrector(node:
|
|
36
|
-
export declare function makeAddArgumentCorrector(node:
|
|
33
|
+
export declare function getLiquidDocParams(context: Context<SourceCodeType.LiquidHtml>, partialName: string): Promise<Map<string, LiquidDocParameter> | undefined>;
|
|
34
|
+
export declare function makeRemoveArgumentCorrector(node: RenderMarkup | FunctionMarkup, arg: LiquidNamedArgument): (fixer: StringCorrector) => void;
|
|
35
|
+
export declare function makeAddArgumentCorrector(node: RenderMarkup | FunctionMarkup, arg: LiquidDocParameter): (fixer: StringCorrector) => void;
|
|
@@ -6,7 +6,6 @@ exports.reportDuplicateArguments = reportDuplicateArguments;
|
|
|
6
6
|
exports.findTypeMismatchParams = findTypeMismatchParams;
|
|
7
7
|
exports.reportTypeMismatches = reportTypeMismatches;
|
|
8
8
|
exports.generateTypeMismatchSuggestions = generateTypeMismatchSuggestions;
|
|
9
|
-
exports.getBlockName = getBlockName;
|
|
10
9
|
exports.getPartialName = getPartialName;
|
|
11
10
|
exports.getLiquidDocParams = getLiquidDocParams;
|
|
12
11
|
exports.makeRemoveArgumentCorrector = makeRemoveArgumentCorrector;
|
|
@@ -18,15 +17,15 @@ exports.makeAddArgumentCorrector = makeAddArgumentCorrector;
|
|
|
18
17
|
const liquid_html_parser_1 = require("@platformos/liquid-html-parser");
|
|
19
18
|
const utils_1 = require("./utils");
|
|
20
19
|
const utils_2 = require("../checks/utils");
|
|
20
|
+
const platformos_common_1 = require("@platformos/platformos-common");
|
|
21
|
+
const vscode_uri_1 = require("vscode-uri");
|
|
22
|
+
const path_1 = require("../path");
|
|
21
23
|
/**
|
|
22
24
|
* Report error when unknown arguments are provided for `content_for` tag or `render` tag
|
|
23
25
|
*/
|
|
24
26
|
function reportUnknownArguments(context, node, unknownProvidedArgs, name) {
|
|
25
27
|
let errorOwnerMessage = '';
|
|
26
|
-
if (node.type === liquid_html_parser_1.NodeTypes.
|
|
27
|
-
errorOwnerMessage = ` in content_for tag for static block '${name}'`;
|
|
28
|
-
}
|
|
29
|
-
else if (node.type === liquid_html_parser_1.NodeTypes.RenderMarkup) {
|
|
28
|
+
if (node.type === liquid_html_parser_1.NodeTypes.RenderMarkup) {
|
|
30
29
|
errorOwnerMessage = ` in render tag for partial '${name}'`;
|
|
31
30
|
}
|
|
32
31
|
else if (node.type === liquid_html_parser_1.NodeTypes.FunctionMarkup) {
|
|
@@ -51,10 +50,7 @@ function reportUnknownArguments(context, node, unknownProvidedArgs, name) {
|
|
|
51
50
|
*/
|
|
52
51
|
function reportMissingArguments(context, node, missingRequiredArgs, name) {
|
|
53
52
|
let errorOwnerMessage = '';
|
|
54
|
-
if (node.type === liquid_html_parser_1.NodeTypes.
|
|
55
|
-
errorOwnerMessage = ` in content_for tag for static block '${name}'`;
|
|
56
|
-
}
|
|
57
|
-
else if (node.type === liquid_html_parser_1.NodeTypes.RenderMarkup) {
|
|
53
|
+
if (node.type === liquid_html_parser_1.NodeTypes.RenderMarkup) {
|
|
58
54
|
errorOwnerMessage = ` in render tag for partial '${name}'`;
|
|
59
55
|
}
|
|
60
56
|
else if (node.type === liquid_html_parser_1.NodeTypes.FunctionMarkup) {
|
|
@@ -76,10 +72,7 @@ function reportMissingArguments(context, node, missingRequiredArgs, name) {
|
|
|
76
72
|
}
|
|
77
73
|
function reportDuplicateArguments(context, node, duplicateArgs, name) {
|
|
78
74
|
let errorOwnerMessage = '';
|
|
79
|
-
if (node.type === liquid_html_parser_1.NodeTypes.
|
|
80
|
-
errorOwnerMessage = ` in content_for tag for static block '${name}'`;
|
|
81
|
-
}
|
|
82
|
-
else if (node.type === liquid_html_parser_1.NodeTypes.RenderMarkup) {
|
|
75
|
+
if (node.type === liquid_html_parser_1.NodeTypes.RenderMarkup) {
|
|
83
76
|
errorOwnerMessage = ` in render tag for partial '${name}'`;
|
|
84
77
|
}
|
|
85
78
|
else if (node.type === liquid_html_parser_1.NodeTypes.FunctionMarkup) {
|
|
@@ -106,7 +99,14 @@ function reportDuplicateArguments(context, node, duplicateArgs, name) {
|
|
|
106
99
|
function findTypeMismatchParams(liquidDocParameters, providedParams) {
|
|
107
100
|
const typeMismatchParams = [];
|
|
108
101
|
for (const arg of providedParams) {
|
|
109
|
-
if (
|
|
102
|
+
// Skip if the value is a variable lookup (can't determine type statically)
|
|
103
|
+
// or if it has filters (graphql args may have filters, output type is unknown)
|
|
104
|
+
if (arg.value.type === liquid_html_parser_1.NodeTypes.LiquidVariable) {
|
|
105
|
+
if (arg.value.expression.type === liquid_html_parser_1.NodeTypes.VariableLookup || arg.value.filters.length > 0) {
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
else if (arg.value.type === liquid_html_parser_1.NodeTypes.VariableLookup) {
|
|
110
110
|
continue;
|
|
111
111
|
}
|
|
112
112
|
const liquidDocParamDef = liquidDocParameters.get(arg.name);
|
|
@@ -169,16 +169,6 @@ function generateTypeMismatchSuggestions(expectedType, startPosition, endPositio
|
|
|
169
169
|
function isLastArg(node, arg) {
|
|
170
170
|
return (node.args.length == 1 || arg.position.start == node.args[node.args.length - 1].position.start);
|
|
171
171
|
}
|
|
172
|
-
function getBlockName(node) {
|
|
173
|
-
if (node.contentForType.value !== 'block') {
|
|
174
|
-
return;
|
|
175
|
-
}
|
|
176
|
-
const contentForTypeArg = node.args.find((arg) => arg.name == 'type')?.value;
|
|
177
|
-
if (!contentForTypeArg || !(0, utils_2.isLiquidString)(contentForTypeArg)) {
|
|
178
|
-
return;
|
|
179
|
-
}
|
|
180
|
-
return contentForTypeArg.value;
|
|
181
|
-
}
|
|
182
172
|
function getPartialName(node) {
|
|
183
173
|
if (node.type === liquid_html_parser_1.NodeTypes.RenderMarkup) {
|
|
184
174
|
if (!(0, utils_2.isLiquidString)(node.snippet)) {
|
|
@@ -193,12 +183,21 @@ function getPartialName(node) {
|
|
|
193
183
|
return node.partial.value;
|
|
194
184
|
}
|
|
195
185
|
}
|
|
196
|
-
async function getLiquidDocParams(context,
|
|
197
|
-
|
|
198
|
-
if (!docDefinition?.liquidDoc?.parameters) {
|
|
186
|
+
async function getLiquidDocParams(context, partialName) {
|
|
187
|
+
if (!context.getDocDefinition)
|
|
199
188
|
return;
|
|
200
|
-
|
|
201
|
-
|
|
189
|
+
// Use DocumentsLocator to find the partial across all platformOS locations,
|
|
190
|
+
// including app/views/partials/, app/lib/, and module paths.
|
|
191
|
+
const locator = new platformos_common_1.DocumentsLocator(context.fs);
|
|
192
|
+
const fileUri = await locator.locate(vscode_uri_1.URI.parse(context.config.rootUri), 'render', partialName);
|
|
193
|
+
if (!fileUri)
|
|
194
|
+
return undefined;
|
|
195
|
+
const relativePath = (0, path_1.relative)(fileUri, context.config.rootUri);
|
|
196
|
+
const docDefinition = await context.getDocDefinition(relativePath);
|
|
197
|
+
if (docDefinition?.liquidDoc?.parameters) {
|
|
198
|
+
return new Map(docDefinition.liquidDoc.parameters.map((p) => [p.name, p]));
|
|
199
|
+
}
|
|
200
|
+
return undefined;
|
|
202
201
|
}
|
|
203
202
|
function makeRemoveArgumentCorrector(node, arg) {
|
|
204
203
|
return (fixer) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../src/liquid-doc/arguments.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../src/liquid-doc/arguments.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { UriString } from '../types';
|
|
2
2
|
import { LiquidHtmlNode } from '../types';
|
|
3
|
-
export type GetDocDefinitionForURI = (uri: UriString,
|
|
3
|
+
export type GetDocDefinitionForURI = (uri: UriString, partialName: string) => Promise<DocDefinition | undefined>;
|
|
4
4
|
export type DocDefinition = {
|
|
5
5
|
uri: UriString;
|
|
6
6
|
liquidDoc?: DocContent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"liquidDoc.js","sourceRoot":"","sources":["../../src/liquid-doc/liquidDoc.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"liquidDoc.js","sourceRoot":"","sources":["../../src/liquid-doc/liquidDoc.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LiquidExpression } from '@platformos/liquid-html-parser';
|
|
1
|
+
import { LiquidExpression, LiquidVariable } from '@platformos/liquid-html-parser';
|
|
2
2
|
import { ObjectEntry, UriString } from '../types';
|
|
3
3
|
/**
|
|
4
4
|
* The base set of supported param types for LiquidDoc.
|
|
@@ -22,11 +22,11 @@ export declare enum SupportedDocTagTypes {
|
|
|
22
22
|
/**
|
|
23
23
|
* Provides a default completion value for an argument / parameter of a given type.
|
|
24
24
|
*/
|
|
25
|
-
export declare function getDefaultValueForType(type: string | null): "" | "
|
|
25
|
+
export declare function getDefaultValueForType(type: string | null): "" | "''" | "0" | "false";
|
|
26
26
|
/**
|
|
27
27
|
* Casts the value of a LiquidNamedArgument to a string representing the type of the value.
|
|
28
28
|
*/
|
|
29
|
-
export declare function inferArgumentType(arg: LiquidExpression): BasicParamTypes;
|
|
29
|
+
export declare function inferArgumentType(arg: LiquidExpression | LiquidVariable): BasicParamTypes;
|
|
30
30
|
/**
|
|
31
31
|
* Checks if the provided argument type is compatible with the expected type.
|
|
32
32
|
* Makes certain types more permissive:
|
package/dist/liquid-doc/utils.js
CHANGED
|
@@ -9,8 +9,7 @@ exports.getValidParamTypes = getValidParamTypes;
|
|
|
9
9
|
exports.parseParamType = parseParamType;
|
|
10
10
|
const liquid_html_parser_1 = require("@platformos/liquid-html-parser");
|
|
11
11
|
const utils_1 = require("../utils");
|
|
12
|
-
const
|
|
13
|
-
const to_schema_2 = require("../to-schema");
|
|
12
|
+
const path_1 = require("../path");
|
|
14
13
|
/**
|
|
15
14
|
* The base set of supported param types for LiquidDoc.
|
|
16
15
|
*
|
|
@@ -52,6 +51,16 @@ function getDefaultValueForType(type) {
|
|
|
52
51
|
* Casts the value of a LiquidNamedArgument to a string representing the type of the value.
|
|
53
52
|
*/
|
|
54
53
|
function inferArgumentType(arg) {
|
|
54
|
+
if (arg.type === liquid_html_parser_1.NodeTypes.LiquidVariable) {
|
|
55
|
+
// A variable with filters — delegate to the base expression if there are no filters,
|
|
56
|
+
// otherwise we can't statically determine the filtered output type.
|
|
57
|
+
if (arg.filters.length > 0)
|
|
58
|
+
return BasicParamTypes.Object;
|
|
59
|
+
const expr = arg.expression;
|
|
60
|
+
if (expr.type === liquid_html_parser_1.NodeTypes.BooleanExpression)
|
|
61
|
+
return BasicParamTypes.Object;
|
|
62
|
+
return inferArgumentType(expr);
|
|
63
|
+
}
|
|
55
64
|
switch (arg.type) {
|
|
56
65
|
case liquid_html_parser_1.NodeTypes.String:
|
|
57
66
|
return BasicParamTypes.String;
|
|
@@ -61,6 +70,8 @@ function inferArgumentType(arg) {
|
|
|
61
70
|
return BasicParamTypes.Boolean;
|
|
62
71
|
case liquid_html_parser_1.NodeTypes.Range:
|
|
63
72
|
case liquid_html_parser_1.NodeTypes.VariableLookup:
|
|
73
|
+
case liquid_html_parser_1.NodeTypes.JsonHashLiteral:
|
|
74
|
+
case liquid_html_parser_1.NodeTypes.JsonArrayLiteral:
|
|
64
75
|
return BasicParamTypes.Object;
|
|
65
76
|
default:
|
|
66
77
|
// This ensures that we have a case for every possible type for arg.value
|
|
@@ -83,7 +94,7 @@ function isTypeCompatible(expectedType, actualType) {
|
|
|
83
94
|
* Checks if the provided file path supports the LiquidDoc tag.
|
|
84
95
|
*/
|
|
85
96
|
function filePathSupportsLiquidDoc(uri) {
|
|
86
|
-
return (0,
|
|
97
|
+
return (0, path_1.isPartial)(uri);
|
|
87
98
|
}
|
|
88
99
|
/**
|
|
89
100
|
* Dynamically generates a map of LiquidDoc param types using object entries from
|