From e2193e850cfda46d47d0dcef9baa0f43d4799eb6 Mon Sep 17 00:00:00 2001 From: "Felix W. Dekker" Date: Tue, 13 Apr 2021 01:04:58 +0200 Subject: [PATCH] Add "Analytics" and "Third-party resources" Also * add history link * clarify some sentences * bump dependencies * fix error in `dev:server` task causing failure to load of `bundle.js` --- Gruntfile.js | 2 +- package-lock.json | Bin 138314 -> 308347 bytes package.json | 10 +++++----- src/main/index.html | 34 +++++++++++++++++++++++++++------- 4 files changed, 33 insertions(+), 13 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 6b43342..65b22e6 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -41,7 +41,7 @@ module.exports = grunt => { watch: { html: { files: ["src/main/**/*.html"], - tasks: ["copy:html"], + tasks: ["copy:html", "replace:dev"], }, js: { files: ["src/main/**/*.js"], diff --git a/package-lock.json b/package-lock.json index 7f407dcb0f9e49025666d9fa2673b47e51357267..ad4cd8651317a74862cb4806aa3b01d795cd304e 100644 GIT binary patch delta 28590 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

- Last updated: 2020-09-15
- Contact: For inquiries, please email me at felix at this very domain. + Last updated: + 2021-04-13 + (history)
+ + Contact: + For inquiries, please email me at felix at this very domain.

-

Cookies

+

Analytics

+

+ Some pages on this website collect data on user behaviour to help understand how visitors use the + website. + No personally identifiable data are collected, and collected data are never exposed to or shared with + third-party services. +

+ +

Cookies

Some pages on this website make use of cookies. - These cookies are sent to the server(s) of fwdekker.com during requests. - This website uses cookies only for technical purposes, such as keeping you logged in or to enable - technical features of the website. + These cookies are sent to this website's server(s) during requests. + This website uses cookies only for technical purposes, such as keeping users in or to enable technical + features of the website. This website never uses cookies for the purposes of advertising or tracking.

-

Logs

+

Logs

Some requests to this website result in errors in the back end. Back-end errors are described in zero or more log entries, each of which contains the requester's IP @@ -47,6 +59,14 @@ message describing the nature of the error. Log entries are removed within five weeks after the associated error occurs.

+ +

Third-party resources

+

+ This website minimises the use of third-party resources where possible. + Note that status.fwdekker.com is hosted by + UptimeRobot, and is therefore subject to + UptimeRobot's privacy policy. +