ticketlens 0.38.24 → 0.38.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/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Centralised here to avoid triplicating the regex and warning logic.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
export const DEFAULT_API_BASE = '
|
|
6
|
+
export const DEFAULT_API_BASE = 'http://api.ticketlens.test';
|
|
7
7
|
export const DEFAULT_SITE_BASE = 'https://ticketlens.app';
|
|
8
8
|
|
|
9
9
|
// Matches localhost, 127.0.0.1, and any hostname ending in .test or .local,
|
|
@@ -34,7 +34,16 @@ const HYPHENATED_COMPOUND_RE = /^[A-Za-z]+(-[A-Za-z]+)+$/;
|
|
|
34
34
|
|
|
35
35
|
const HARD_REJECT_PATTERNS = [
|
|
36
36
|
{ name: 'AWS access key', re: /AKIA[0-9A-Z]{16}/ },
|
|
37
|
-
|
|
37
|
+
// \s* (not a literal space) between segments: this is the only entry with
|
|
38
|
+
// required internal spacing, and hardRejectRuns (no-separator rejoin) and
|
|
39
|
+
// despacedCombined (whitespace stripped) both destroy a literal space the
|
|
40
|
+
// same way they correctly neutralize whitespace-splitting on every other
|
|
41
|
+
// pattern here — so a tab, extra spaces, a newline, or no separator at all
|
|
42
|
+
// used to bypass this entry completely (backlog 1d). \s* closes all of
|
|
43
|
+
// those in one change since it's tested against combined, hardRejectRuns,
|
|
44
|
+
// and despacedCombined identically. JS's \s is already Unicode-aware
|
|
45
|
+
// (including U+FEFF), so no separate handling is needed here.
|
|
46
|
+
{ name: 'private key block', re: /-----BEGIN\s*(RSA\s*|EC\s*|OPENSSH\s*|DSA\s*)?PRIVATE\s*KEY-----/ },
|
|
38
47
|
{ name: 'JSON Web Token (JWT)', re: /eyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}/ },
|
|
39
48
|
{ name: 'API key', re: /\b(sk-|gsk_)[A-Za-z0-9]{20,}\b/ },
|
|
40
49
|
{ name: 'GitHub token', re: /\bgh[pousr]_[A-Za-z0-9]{20,}\b/ },
|
|
@@ -192,8 +201,13 @@ function isHyphenatedWordCompound(token) {
|
|
|
192
201
|
* text into false-positive "random" strings (verified empirically — see the
|
|
193
202
|
* regression test for "PROD-123456 for background"). Entropy-based detection
|
|
194
203
|
* is a safety net, not a cryptographic guarantee; the well-known secret
|
|
195
|
-
* shapes in HARD_REJECT_PATTERNS are the layer that's
|
|
196
|
-
*
|
|
204
|
+
* shapes in HARD_REJECT_PATTERNS are the layer that's whitespace-proof,
|
|
205
|
+
* since they match a specific literal prefix — with one exception: the
|
|
206
|
+
* private-key-block entry has two internal separator points (around the
|
|
207
|
+
* optional algorithm word and before KEY), and a word inserted at either
|
|
208
|
+
* one still defeats it, exactly as it did before backlog 1d's whitespace
|
|
209
|
+
* fix (that fix closed whitespace-substitution/removal, not word
|
|
210
|
+
* insertion — the same accepted-gap class as the possessive case above).
|
|
197
211
|
*/
|
|
198
212
|
function isLabelWord(token) {
|
|
199
213
|
const stripped = stripEdgePunctuation(token);
|