Skip to content

Commit 7b617e5

Browse files
committed
Switch to Terser library for minification.
1 parent 9c1fd2c commit 7b617e5

8 files changed

Lines changed: 181 additions & 70 deletions

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
FROM nginx
22
ARG DAP_ENV='dev'
33
ENV DAP_ENV=${DAP_ENV}
4-
COPY test_site Universal-Federated-Analytics-Min.js Federated.js.map /usr/share/nginx/html/
4+
COPY test_site Universal-Federated-Analytics.js Universal-Federated-Analytics-Min.js Universal-Federated-Analytics-Min.js.map /usr/share/nginx/html/
55
COPY nginx-test.conf.template /etc/nginx/conf.d/
66
RUN envsubst '${DAP_ENV}' < /etc/nginx/conf.d/nginx-test.conf.template > /etc/nginx/conf.d/default.conf

Federated.js.map

Lines changed: 0 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ The latest version 8.6 of DAP GA code contains GA4 tracking only. DAP UA data co
1414

1515
* [`Universal-Federated-Analytics.js`](Universal-Federated-Analytics.js) (full)
1616
* [`Universal-Federated-Analytics-Min.js`](Universal-Federated-Analytics-Min.js) (minified)
17-
* [`Federated.js.map`](Federated.js.map) (source map)
17+
* [`Universal-Federated-Analytics-Min.js.map`](Universal-Federated-Analytics-Min.js.map) (source map)
1818

1919
### DAP Code Implementation
2020

@@ -129,6 +129,14 @@ This repo uses Eslint for code static analysis. Run the linter with:
129129
npm run lint
130130
```
131131

132+
#### Minification
133+
134+
This repo uses Terser for minification. After making changes to Universal-Federated-Analytics.js, regenerate the minified file by running:
135+
136+
```bash
137+
npm run minify
138+
```
139+
132140
#### Run integration tests
133141

134142
Start up the test site at http://localhost:8080/ with one of the following:

Universal-Federated-Analytics-Min.js

Lines changed: 66 additions & 58 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Universal-Federated-Analytics-Min.js.map

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package-lock.json

Lines changed: 92 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
"scripts": {
88
"clean": "rm ./Universal-Federated-Analytics-Min.js",
99
"lint": "eslint Universal-Federated-Analytics.js",
10+
"minify": "terser Universal-Federated-Analytics.js --output Universal-Federated-Analytics-Min.js --config-file terser.config.json",
1011
"cucumber": "cucumber-js",
1112
"cucumber:debug": "VERBOSE=true node --inspect-brk node_modules/@cucumber/cucumber/bin/cucumber-js",
1213
"cucumber:report": "cucumber-js --format \"html\":\"output/test-results.html\"",
@@ -29,7 +30,8 @@
2930
"eslint": "^9.8.0",
3031
"eslint-plugin-compat": "^6.0.0",
3132
"eslint-plugin-jsdoc": "^50.2.2",
32-
"puppeteer": "^23.3.0"
33+
"puppeteer": "^23.3.0",
34+
"terser": "^5.39.0"
3335
},
3436
"dependencies": {
3537
"web-vitals": "^4.2.4"

terser.config.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"sourceMap": {
3+
"filename": "Universal-Federated-Analytics-Min.js",
4+
"url": "Universal-Federated-Analytics-Min.js.map"
5+
},
6+
"format": {
7+
"max_line_len": 500
8+
}
9+
}

0 commit comments

Comments
 (0)