@localheroai/cli 0.0.74-rc.1 → 0.0.74-rc.3
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/README.md +21 -4
- package/dist/cli.js +4 -2
- package/dist/cli.js.map +1 -1
- package/dist/commands/check.js +392 -120
- package/dist/commands/check.js.map +1 -1
- package/dist/utils/check-changes.js +48 -0
- package/dist/utils/check-changes.js.map +1 -0
- package/dist/utils/check-git.js +93 -0
- package/dist/utils/check-git.js.map +1 -0
- package/dist/utils/check-summary.js +71 -0
- package/dist/utils/check-summary.js.map +1 -0
- package/dist/utils/ci-context.js +10 -0
- package/dist/utils/ci-context.js.map +1 -0
- package/dist/utils/key-lines.js +221 -0
- package/dist/utils/key-lines.js.map +1 -0
- package/dist/utils/placeholders.js +27 -2
- package/dist/utils/placeholders.js.map +1 -1
- package/package.json +1 -1
|
@@ -34,7 +34,7 @@ function matchingBrace(text, start) {
|
|
|
34
34
|
}
|
|
35
35
|
return -1;
|
|
36
36
|
}
|
|
37
|
-
|
|
37
|
+
function matchPlaceholders(text) {
|
|
38
38
|
if (typeof text !== 'string')
|
|
39
39
|
return [];
|
|
40
40
|
const found = [];
|
|
@@ -43,10 +43,13 @@ export function extractPlaceholders(text) {
|
|
|
43
43
|
if (escaped)
|
|
44
44
|
continue;
|
|
45
45
|
const name = i18next ?? railsTyped ?? rails ?? python ?? positionalType ?? printf ?? icu;
|
|
46
|
-
found.push({ kind: classify(full), name });
|
|
46
|
+
found.push({ placeholder: { kind: classify(full), name }, written: full });
|
|
47
47
|
}
|
|
48
48
|
return found;
|
|
49
49
|
}
|
|
50
|
+
export function extractPlaceholders(text) {
|
|
51
|
+
return matchPlaceholders(text).map(({ placeholder }) => placeholder);
|
|
52
|
+
}
|
|
50
53
|
function classify(full) {
|
|
51
54
|
if (full.startsWith('{{'))
|
|
52
55
|
return 'i18next';
|
|
@@ -85,4 +88,26 @@ export function placeholderMultiset(text) {
|
|
|
85
88
|
}
|
|
86
89
|
return counts;
|
|
87
90
|
}
|
|
91
|
+
const USUAL_SPELLING = {
|
|
92
|
+
i18next: (name) => `{{${name}}}`,
|
|
93
|
+
icu: (name) => `{${name}}`,
|
|
94
|
+
'rails-typed': (name) => `%<${name}>`,
|
|
95
|
+
rails: (name) => `%{${name}}`,
|
|
96
|
+
python: (name) => `%(${name})`,
|
|
97
|
+
printf: (name) => `%${name}`
|
|
98
|
+
};
|
|
99
|
+
/** Turns tokens from placeholderMultiset back into how `text` writes them, like `%{name}` for `rails:name`. */
|
|
100
|
+
export function spellPlaceholders(tokens, text) {
|
|
101
|
+
const written = new Map();
|
|
102
|
+
for (const match of matchPlaceholders(text)) {
|
|
103
|
+
const key = token(match.placeholder);
|
|
104
|
+
if (!written.has(key))
|
|
105
|
+
written.set(key, match.written);
|
|
106
|
+
}
|
|
107
|
+
return tokens.map((key) => {
|
|
108
|
+
const separator = key.indexOf(':');
|
|
109
|
+
const kind = key.slice(0, separator);
|
|
110
|
+
return written.get(key) ?? USUAL_SPELLING[kind]?.(key.slice(separator + 1)) ?? key;
|
|
111
|
+
});
|
|
112
|
+
}
|
|
88
113
|
//# sourceMappingURL=placeholders.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"placeholders.js","sourceRoot":"","sources":["../../src/utils/placeholders.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,mBAAmB,GACvB,qJAAqJ,CAAC;AAgBxJ;;;GAGG;AACH,MAAM,iBAAiB,GAAG,wDAAwD,CAAC;AACnF,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAE9B,MAAM,UAAU,yBAAyB,CAAC,IAAY;IACpD,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,kBAAkB,EAAE,IAAI,EAAE,EAAE,CAAC;QACrD,iBAAiB,CAAC,SAAS,GAAG,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK;YAAE,MAAM;QAClB,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,GAAG,KAAK,CAAC,CAAC;YAAE,MAAM;QACtB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC;IAClF,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,KAAa;IAChD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,KAAK,EAAE,CAAC;aACxB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,EAAE,KAAK,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"placeholders.js","sourceRoot":"","sources":["../../src/utils/placeholders.ts"],"names":[],"mappings":"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"}
|