@huloglobal/vendure-plugin-visitor-analytics 0.4.1 → 0.4.2
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.
- package/CHANGELOG.md +36 -0
- package/package.json +5 -5
- package/ui/components/visitors.component.ts +6 -0
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,42 @@ documented here. The format follows
|
|
|
5
5
|
[Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this
|
|
6
6
|
project adheres to [semantic versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.4.1]
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
- Comprehensive README refresh — documents the full v0.4 feature set
|
|
12
|
+
with the storefront snippet, every privacy + security option, and
|
|
13
|
+
the conversion-goals API.
|
|
14
|
+
|
|
15
|
+
## [0.4.0]
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
- Signed visitor + session cookies via the licence-sdk `signValue` /
|
|
19
|
+
`verifySignedValue` helpers — tampered cookies are rejected.
|
|
20
|
+
- `Secure` cookie flag is set automatically when serving over HTTPS.
|
|
21
|
+
- Rate limiter (240/60s default) on `POST /ees/track`.
|
|
22
|
+
- `corsAllowedOrigins` option restricts CORS reflection to the
|
|
23
|
+
configured list (legacy wildcard preserved when empty).
|
|
24
|
+
- Security headers on every response.
|
|
25
|
+
- Opt-in retention sweeper via `options.retention`.
|
|
26
|
+
|
|
27
|
+
## [0.3.3]
|
|
28
|
+
|
|
29
|
+
### Changed
|
|
30
|
+
- Mobile-friendly admin UI — summary cards reflow, tables scroll
|
|
31
|
+
inside their card, profile drawer goes full-width.
|
|
32
|
+
|
|
33
|
+
## [0.3.2]
|
|
34
|
+
|
|
35
|
+
### Changed
|
|
36
|
+
- Republish targeting `@huloglobal/vendure-licence-sdk@^0.2.0`.
|
|
37
|
+
|
|
38
|
+
## [0.3.1]
|
|
39
|
+
|
|
40
|
+
### Added
|
|
41
|
+
- `UpdateChecker` integration — `/ees/visitors/status` endpoint returns
|
|
42
|
+
version + update info; admin banner appears on new releases.
|
|
43
|
+
|
|
8
44
|
## [0.3.0]
|
|
9
45
|
|
|
10
46
|
### Added
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@huloglobal/vendure-plugin-visitor-analytics",
|
|
3
|
-
"version": "0.4.
|
|
4
|
-
"description": "Full-funnel visitor analytics for Vendure storefronts
|
|
3
|
+
"version": "0.4.2",
|
|
4
|
+
"description": "Full-funnel visitor analytics for Vendure storefronts — pageviews, time-on-page, session journey, exit pages, funnel drop-off, and per-visitor profile drawer with parsed user-agent + MaxMind GeoLite2 enrichment. Auto-issues visitor + session cookies on first request; logs guest and signed-in events against the same visitor id so the journey survives login.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"author": "Wayne Garrison <wayne@garrison.me.uk>",
|
|
7
7
|
"homepage": "https://github.com/exceeded/vendure-plugin-visitor-analytics",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"prepublishOnly": "yarn build"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@huloglobal/vendure-licence-sdk": "^0.3.
|
|
26
|
+
"@huloglobal/vendure-licence-sdk": "^0.3.1",
|
|
27
27
|
"ua-parser-js": "^1.0.37",
|
|
28
28
|
"geolite2-redist": "^3.1.0",
|
|
29
29
|
"@maxmind/geoip2-node": "^5.0.0"
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"typeorm": ">=0.3.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@huloglobal/vendure-licence-sdk": "^0.3.
|
|
37
|
+
"@huloglobal/vendure-licence-sdk": "^0.3.1",
|
|
38
38
|
"@nestjs/common": "^10.0.0",
|
|
39
39
|
"@vendure/core": "^3.6.0",
|
|
40
40
|
"typeorm": "^0.3.0",
|
|
@@ -48,4 +48,4 @@
|
|
|
48
48
|
"funnel",
|
|
49
49
|
"session-journey"
|
|
50
50
|
]
|
|
51
|
-
}
|
|
51
|
+
}
|
|
@@ -411,6 +411,12 @@ interface VisitorProfile {
|
|
|
411
411
|
|
|
412
412
|
/* Mobile under 768px */
|
|
413
413
|
@media (max-width: 767px) {
|
|
414
|
+
/* 44px tap targets on every interactive element in our component */
|
|
415
|
+
:host button, :host .btn { min-height: 40px; }
|
|
416
|
+
:host vdr-action-bar { flex-wrap: wrap; gap: 6px; }
|
|
417
|
+
:host vdr-action-bar button { min-height: 40px; padding: 6px 12px; }
|
|
418
|
+
.range { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; margin: 8px 0; }
|
|
419
|
+
.range .btn { min-height: 40px; min-width: 48px; padding: 6px 12px; font-size: 13px; }
|
|
414
420
|
.summary-row { gap: 8px; }
|
|
415
421
|
.summary-card { min-width: 0; flex-basis: calc(50% - 4px); padding: 12px 14px; }
|
|
416
422
|
.summary-card .num { font-size: 20px; }
|