@nitra/cursor 1.13.15 → 1.13.25
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 +69 -0
- package/package.json +1 -1
- package/rules/abie/abie.mdc +1 -4
- package/rules/abie/policy/clean_merged_ignore_branches/clean_merged_ignore_branches.rego +21 -40
- package/rules/abie/policy/clean_merged_ignore_branches/template/clean-merged-branch.yml.snippet.yml +9 -0
- package/rules/docker/docker.mdc +2 -50
- package/rules/docker/policy/lint_docker_yml/lint_docker_yml.rego +33 -47
- package/rules/docker/policy/lint_docker_yml/template/lint-docker.yml.snippet.yml +41 -0
- package/rules/docker/policy/package_json/package_json.rego +11 -28
- package/rules/docker/policy/package_json/template/package.json.snippet.json +1 -0
- package/rules/image-avif/policy/package_json/package_json.rego +21 -35
- package/rules/image-avif/policy/package_json/template/package.json.deny.json +5 -0
- package/rules/image-compress/image-compress.mdc +2 -8
- package/rules/image-compress/policy/package_json/package_json.rego +24 -65
- package/rules/image-compress/policy/package_json/template/package.json.contains.json +5 -0
- package/rules/image-compress/policy/package_json/template/package.json.deny.json +8 -0
- package/rules/js-bun-db/policy/package_json/package_json.rego +8 -21
- package/rules/js-bun-db/policy/package_json/template/package.json.deny.json +7 -0
- package/rules/js-bun-redis/policy/package_json/package_json.rego +8 -30
- package/rules/js-bun-redis/policy/package_json/template/package.json.deny.json +12 -0
- package/rules/js-lint/policy/jscpd/jscpd.rego +29 -23
- package/rules/js-lint/policy/jscpd/template/.jscpd.json.snippet.json +6 -0
- package/rules/js-lint/policy/lint_js_yml/lint_js_yml.rego +39 -47
- package/rules/js-lint/policy/lint_js_yml/template/lint-js.yml.snippet.yml +44 -0
- package/rules/js-lint/policy/package_json/package_json.rego +22 -42
- package/rules/js-lint/policy/package_json/template/package.json.snippet.json +6 -0
- package/rules/js-lint/policy/vscode_extensions/template/extensions.json.snippet.json +7 -0
- package/rules/js-lint/policy/vscode_extensions/vscode_extensions.rego +4 -17
- package/rules/js-run/policy/configmap/configmap.rego +11 -35
- package/rules/js-run/policy/configmap/template/configmap.yaml.contains.yml +4 -0
- package/rules/js-run/policy/jsconfig/jsconfig.rego +39 -46
- package/rules/js-run/policy/jsconfig/template/jsconfig.json.snippet.json +10 -0
- package/rules/js-run/policy/package_json/package_json.rego +10 -21
- package/rules/js-run/policy/package_json/template/package.json.deny.json +10 -0
- package/rules/php/php.mdc +2 -56
- package/rules/php/policy/lint_php_yml/lint_php_yml.rego +15 -13
- package/rules/php/policy/lint_php_yml/template/lint-php.yml.snippet.yml +47 -0
- package/rules/php/policy/package_json/package_json.rego +9 -12
- package/rules/php/policy/package_json/template/package.json.contains.json +5 -0
- package/rules/style-lint/policy/lint_style_yml/lint_style_yml.rego +14 -16
- package/rules/style-lint/policy/lint_style_yml/template/lint-style.yml.snippet.yml +39 -0
- package/rules/style-lint/policy/package_json/package_json.rego +22 -30
- package/rules/style-lint/policy/package_json/template/package.json.contains.json +5 -0
- package/rules/style-lint/policy/package_json/template/package.json.snippet.json +5 -0
- package/rules/style-lint/policy/vscode_extensions/template/extensions.json.snippet.json +1 -0
- package/rules/style-lint/policy/vscode_extensions/vscode_extensions.rego +5 -15
- package/rules/style-lint/policy/vscode_settings/template/settings.json.snippet.json +5 -0
- package/rules/style-lint/policy/vscode_settings/vscode_settings.rego +7 -16
- package/rules/text/policy/cspell/cspell.rego +39 -59
- package/rules/text/policy/cspell/template/.cspell.json.contains.json +3 -0
- package/rules/text/policy/cspell/template/.cspell.json.deny.json +5 -0
- package/rules/text/policy/cspell/template/.cspell.json.snippet.json +12 -0
- package/rules/text/policy/markdownlint/markdownlint.rego +37 -50
- package/rules/text/policy/markdownlint/template/.markdownlint-cli2.jsonc.snippet.jsonc +11 -0
- package/rules/text/policy/oxfmtrc/oxfmtrc.rego +23 -58
- package/rules/text/policy/oxfmtrc/template/.oxfmtrc.json.snippet.json +12 -0
- package/rules/text/policy/package_json/package_json.rego +14 -52
- package/rules/text/policy/package_json/template/package.json.deny.json +15 -0
- package/rules/text/policy/vscode_extensions/template/extensions.json.snippet.json +7 -0
- package/rules/text/policy/vscode_extensions/vscode_extensions.rego +4 -28
- package/rules/text/policy/vscode_settings/template/settings.json.snippet.json +9 -0
- package/rules/text/policy/vscode_settings/vscode_settings.rego +20 -42
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
{
|
|
2
|
+
"editor.formatOnSave": true,
|
|
3
|
+
"[javascript]": { "editor.defaultFormatter": "oxc.oxc-vscode" },
|
|
4
|
+
"[typescript]": { "editor.defaultFormatter": "oxc.oxc-vscode" },
|
|
5
|
+
"[json]": { "editor.defaultFormatter": "oxc.oxc-vscode" },
|
|
6
|
+
"[vue]": { "editor.defaultFormatter": "oxc.oxc-vscode" },
|
|
7
|
+
"[css]": { "editor.defaultFormatter": "oxc.oxc-vscode" },
|
|
8
|
+
"[html]": { "editor.defaultFormatter": "oxc.oxc-vscode" }
|
|
9
|
+
}
|
|
@@ -1,56 +1,34 @@
|
|
|
1
1
|
# Перевірка `.vscode/settings.json` для text (text.mdc).
|
|
2
2
|
#
|
|
3
|
-
#
|
|
4
|
-
#
|
|
5
|
-
# --namespace text.vscode_settings
|
|
6
|
-
#
|
|
7
|
-
# Canonical (text.mdc):
|
|
8
|
-
# { "editor.formatOnSave": true,
|
|
9
|
-
# "[javascript]": { "editor.defaultFormatter": "oxc.oxc-vscode" },
|
|
10
|
-
# "[typescript]": { "editor.defaultFormatter": "oxc.oxc-vscode" },
|
|
11
|
-
# "[json]": { "editor.defaultFormatter": "oxc.oxc-vscode" },
|
|
12
|
-
# "[vue]": { "editor.defaultFormatter": "oxc.oxc-vscode" },
|
|
13
|
-
# "[css]": { "editor.defaultFormatter": "oxc.oxc-vscode" },
|
|
14
|
-
# "[html]": { "editor.defaultFormatter": "oxc.oxc-vscode" } }
|
|
15
|
-
#
|
|
16
|
-
# Структура каталогу збігається зі шляхом пакету (regal: directory-package-mismatch).
|
|
3
|
+
# Канон надходить через --data: { "template": { "snippet": ... } }
|
|
4
|
+
# Структура --data сформована з template/settings.json.snippet.json.
|
|
17
5
|
package text.vscode_settings
|
|
18
6
|
|
|
19
7
|
import rego.v1
|
|
20
8
|
|
|
21
|
-
language_keys := {"[javascript]", "[typescript]", "[json]", "[vue]", "[css]", "[html]"}
|
|
22
|
-
|
|
23
|
-
# Шаблони повідомлень — через `concat` для regal style/line-length.
|
|
24
|
-
lang_block_not_object_template := concat(" ", [
|
|
25
|
-
".vscode/settings.json: %q має бути обʼєктом з",
|
|
26
|
-
"\"editor.defaultFormatter\": \"oxc.oxc-vscode\" (text.mdc)",
|
|
27
|
-
])
|
|
28
|
-
|
|
29
|
-
lang_wrong_formatter_template := concat(" ", [
|
|
30
|
-
".vscode/settings.json: %q має використовувати",
|
|
31
|
-
"\"oxc.oxc-vscode\" як editor.defaultFormatter (text.mdc)",
|
|
32
|
-
])
|
|
33
|
-
|
|
34
|
-
# ── deny: editor.formatOnSave ────────────────────────────────────────────
|
|
35
|
-
|
|
36
9
|
deny contains msg if {
|
|
37
|
-
|
|
38
|
-
|
|
10
|
+
some key, expected_value in data.template.snippet
|
|
11
|
+
not is_object(expected_value)
|
|
12
|
+
actual := object.get(input, key, null)
|
|
13
|
+
actual != expected_value
|
|
14
|
+
msg := sprintf(".vscode/settings.json: \"%s\" має бути %v (text.mdc)", [key, expected_value])
|
|
39
15
|
}
|
|
40
16
|
|
|
41
|
-
# ── deny: [lang].editor.defaultFormatter ────────────────────────────────
|
|
42
|
-
|
|
43
17
|
deny contains msg if {
|
|
44
|
-
some
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
18
|
+
some block_key, expected_inner in data.template.snippet
|
|
19
|
+
is_object(expected_inner)
|
|
20
|
+
inner := object.get(input, block_key, {})
|
|
21
|
+
is_object(inner)
|
|
22
|
+
some leaf_key, expected_value in expected_inner
|
|
23
|
+
actual := object.get(inner, leaf_key, null)
|
|
24
|
+
actual != expected_value
|
|
25
|
+
msg := sprintf(".vscode/settings.json: %s.%s має бути %v (text.mdc)", [block_key, leaf_key, expected_value])
|
|
48
26
|
}
|
|
49
27
|
|
|
50
28
|
deny contains msg if {
|
|
51
|
-
some
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
msg := sprintf(
|
|
29
|
+
some block_key, expected_inner in data.template.snippet
|
|
30
|
+
is_object(expected_inner)
|
|
31
|
+
raw := object.get(input, block_key, null)
|
|
32
|
+
not is_object(raw)
|
|
33
|
+
msg := sprintf(".vscode/settings.json: %s має бути обʼєктом (text.mdc)", [block_key])
|
|
56
34
|
}
|