Skip to content

Commit 9ce6909

Browse files
authored
feat: TrackJS CSP Preset (#198)
* feat: TrackJS CSP Preset * docs: add trackjs to readme
1 parent 501b7d2 commit 9ce6909

File tree

4 files changed

+41
-0
lines changed

4 files changed

+41
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,7 @@ This package ships with a few commonly used presets to get your started. *We're
189189
| `SurveyMonkey` | [surveymonkey.com](https://www.surveymonkey.com/) |
190190
| `TicketTailor` | [tickettailor.com](https://www.tickettailor.com) |
191191
| `Tolt` | [tolt.io](https://tolt.io) |
192+
| `TrackJS` | [trackjs.com](https://trackjs.com) |
192193
| `Vimeo` | [vimeo.com](https://vimeo.com) |
193194
| `Visual Website Optimizer` | [vwo.com](https://vwo.com) |
194195
| `Whereby` | [whereby.com](https://whereby.com) |

src/Presets/TrackJs.php

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
<?php
2+
3+
namespace Spatie\Csp\Presets;
4+
5+
use Spatie\Csp\Directive;
6+
use Spatie\Csp\Policy;
7+
use Spatie\Csp\Preset;
8+
9+
/**
10+
* Content Security Policy (CSP)
11+
* for spatie/laravel-csp
12+
*
13+
* @see https://github.com/spatie/laravel-csp
14+
*/
15+
class TrackJs implements Preset
16+
{
17+
public function configure(Policy $policy): void
18+
{
19+
$policy
20+
->add(Directive::CONNECT, [
21+
'capture.trackjs.com',
22+
])
23+
->add(Directive::IMG, [
24+
'usage.trackjs.com',
25+
])
26+
->add(Directive::SCRIPT, [
27+
'cdn.trackjs.com',
28+
])
29+
->add(Directive::SCRIPT_ELEM, [
30+
'cdn.trackjs.com',
31+
'js.trackjs.com',
32+
'cdn.trackjs.com',
33+
]);
34+
}
35+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
connect-src capture.trackjs.com
2+
img-src usage.trackjs.com
3+
script-src cdn.trackjs.com
4+
script-src-elem cdn.trackjs.com js.trackjs.com

tests/PresetTest.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ function (string $presetClass): void {
5454
Presets\SurveyMonkey::class,
5555
Presets\TicketTailor::class,
5656
Presets\Tolt::class,
57+
Presets\TrackJs::class,
5758
Presets\Vimeo::class,
5859
Presets\VisualWebsiteOptimizer::class,
5960
Presets\Whereby::class,

0 commit comments

Comments
 (0)