Skip to content

Commit 3301807

Browse files
authored
Update Email Mask Priority (#36)
1 parent 605a824 commit 3301807

File tree

2 files changed

+8
-5
lines changed

2 files changed

+8
-5
lines changed

src/Support/Uri.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ public static function sanitize(string $uri, array $uriMask = []): string
2020
array_merge(
2121
array_keys($uriMask),
2222
[
23+
'/\/(?<=\/)[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}(?=\/|$)/i',
2324
'/\/(?<=\/)[ED]\d{8}\d{12}[0-9a-zA-Z]{11}(?=\/)?/',
2425
'/\/(?<=\/)[a-f0-9]{40}(?=\/)?/i',
2526
'/\/(?<=\/)([A-F0-9]{8}-[A-F0-9]{4}-[A-F0-9]{4}-[A-F0-9]{4}-[A-F0-9]{12})(?=\/)?/i',
@@ -28,13 +29,13 @@ public static function sanitize(string $uri, array $uriMask = []): string
2829
'/\/(?<=\/)\d+(?=\/)?/',
2930
'/\/(?<=\/)\+?\d{10,15}(?=\/|$)/',
3031
'/\/(?<=\/)R[RN]\d{16}[A-Za-z0-9]{11}/',
31-
'/\/(?<=\/)[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}(?=\/|$)/i',
3232
'/\/([A-Z]{3,}(?:-[A-Z]{3,})*)-([A-Z0-9]{3}-\d+(?:_\d{3})?|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|[A-Za-z0-9]{8,})(?=\/|$)/i',
3333
],
3434
),
3535
array_merge(
3636
array_values($uriMask),
3737
[
38+
'/<EMAIL>',
3839
'/<E2E-ID>',
3940
'/<SHA1>',
4041
'/<UUID>',
@@ -43,7 +44,6 @@ public static function sanitize(string $uri, array $uriMask = []): string
4344
'/<NUMBER>',
4445
'/<PHONE-NUMBER>',
4546
'/<EXTERNAL-ID>',
46-
'/<EMAIL>',
4747
'/<PREFIXED-ID>',
4848
],
4949
),

tests/Cases/UriTest.php

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -181,15 +181,18 @@ public function testSanitizeEmail(): void
181181
{
182182
$email = '[email protected]';
183183
$email2 = '[email protected]';
184+
$emailNumber = '[email protected]';
185+
$emailLicensePlate = '[email protected]';
184186

185187
self::assertSame('/v1/test', Uri::sanitize('/v1/test'));
186-
self::assertSame('/v2/test/<EMAIL>', Uri::sanitize("/v2/test/{$email}"));
187-
self::assertSame('/v3/test/<EMAIL>/bar', Uri::sanitize("/v3/test/{$email}/bar"));
188-
self::assertSame('/v4/test/<EMAIL>/bar/<EMAIL>/', Uri::sanitize("/v4/test/{$email}/bar/{$email2}/"));
188+
self::assertSame('/v2/test/<EMAIL>', Uri::sanitize("/v2/test/$email"));
189+
self::assertSame('/v3/test/<EMAIL>/bar', Uri::sanitize("/v3/test/$email/bar"));
190+
self::assertSame('/v4/test/<EMAIL>/bar/<EMAIL>/', Uri::sanitize("/v4/test/$email/bar/$email2/"));
189191
self::assertSame('/v5/test/<EMAIL>/<EMAIL>', Uri::sanitize("/v5/test/$email/$email2"));
190192
self::assertSame('/v6/test/<EMAIL>/<EMAIL>/', Uri::sanitize("/v6/test/$email/$email2/"));
191193
self::assertSame('/v7/test/<EMAIL>/<EMAIL>/<EMAIL>', Uri::sanitize("/v7/test/$email/$email2/$email"));
192194
self::assertSame('/v8/test/<EMAIL>/<EMAIL>/<EMAIL>/', Uri::sanitize("/v8/test/$email/$email2/$email/"));
195+
self::assertSame('/v9/test/<EMAIL>/<EMAIL>/', Uri::sanitize("/v9/test/$emailNumber/$emailLicensePlate/"));
193196
}
194197

195198
public function testClearUriPrefixedId(): void

0 commit comments

Comments
 (0)