@mikkelscheike/email-provider-links 1.3.3 → 1.3.4
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secure-loader.d.ts","sourceRoot":"","sources":["../../src/security/secure-loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,cAAc,EAAE;QACd,gBAAgB,EAAE,OAAO,CAAC;QAC1B,aAAa,EAAE,OAAO,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;QACjD,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;CACH;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,aAAa,CAAC,EAAE,MAAM,EACtB,YAAY,CAAC,EAAE,MAAM,GACpB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"secure-loader.d.ts","sourceRoot":"","sources":["../../src/security/secure-loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,cAAc,EAAE;QACd,gBAAgB,EAAE,OAAO,CAAC;QAC1B,aAAa,EAAE,OAAO,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;QACjD,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;CACH;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,aAAa,CAAC,EAAE,MAAM,EACtB,YAAY,CAAC,EAAE,MAAM,GACpB,gBAAgB,CA0FlB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,2BAWjC;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,GAAE;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;CACnE,IACI,KAAK,GAAG,EAAE,KAAK,GAAG,EAAE,MAAM,GAAG,SAmBtC;;;;;;AAED,wBAIE"}
|
|
@@ -29,11 +29,14 @@ function secureLoadProviders(providersPath, expectedHash) {
|
|
|
29
29
|
if (!hashResult.isValid) {
|
|
30
30
|
issues.push(`Hash verification failed: ${hashResult.reason}`);
|
|
31
31
|
// In production, you might want to abort here
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
// Suppress logging during tests to avoid console noise
|
|
33
|
+
if (process.env.NODE_ENV !== 'test' && !process.env.JEST_WORKER_ID) {
|
|
34
|
+
console.error('🚨 SECURITY WARNING: Hash verification failed!');
|
|
35
|
+
console.error('File:', hashResult.file);
|
|
36
|
+
console.error('Reason:', hashResult.reason);
|
|
37
|
+
console.error('Expected:', hashResult.expectedHash);
|
|
38
|
+
console.error('Actual:', hashResult.actualHash);
|
|
39
|
+
}
|
|
37
40
|
}
|
|
38
41
|
// Step 2: Load and parse JSON
|
|
39
42
|
try {
|
|
@@ -61,9 +64,12 @@ function secureLoadProviders(providersPath, expectedHash) {
|
|
|
61
64
|
const urlAudit = (0, url_validator_1.auditProviderSecurity)(providers);
|
|
62
65
|
if (urlAudit.invalid > 0) {
|
|
63
66
|
issues.push(`${urlAudit.invalid} providers have invalid URLs`);
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
console.warn(
|
|
67
|
+
// Suppress logging during tests to avoid console noise
|
|
68
|
+
if (process.env.NODE_ENV !== 'test' && !process.env.JEST_WORKER_ID) {
|
|
69
|
+
console.warn('⚠️ URL validation issues found:');
|
|
70
|
+
for (const invalid of urlAudit.invalidProviders) {
|
|
71
|
+
console.warn(`- ${invalid.provider}: ${invalid.validation.reason}`);
|
|
72
|
+
}
|
|
67
73
|
}
|
|
68
74
|
}
|
|
69
75
|
// Step 4: Filter out invalid providers in production
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secure-loader.js","sourceRoot":"","sources":["../../src/security/secure-loader.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AA6BH,
|
|
1
|
+
{"version":3,"file":"secure-loader.js","sourceRoot":"","sources":["../../src/security/secure-loader.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mikkelscheike/email-provider-links",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.4",
|
|
4
4
|
"description": "A TypeScript package that provides direct links to email providers based on email addresses to streamline login and password reset flows",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|