@huloglobal/vendure-plugin-visitor-analytics 0.11.1 → 0.13.0

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 CHANGED
@@ -5,6 +5,27 @@ documented here. The format follows
5
5
  [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project
6
6
  adheres to [semantic versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.13.0] — 2026-08-21
9
+
10
+ ### Added
11
+ - **In-admin licence activation.** A banner on the admin page shows the
12
+ evaluation countdown (or free-tier state) with a paste-your-key box:
13
+ the key is verified with the exact boot-time checks and activates
14
+ instantly — no .env edit, no redeploy. Persisted in the shared
15
+ hulo_licence_store table and restored on boot; env/init keys always
16
+ take precedence. New licence/status, licence/activate and
17
+ licence/deactivate admin endpoints.
18
+
19
+ ## [0.12.0] — 2026-08-21
20
+
21
+ ### Added
22
+ - **14-day full-featured evaluation.** Unlicensed installs now get the
23
+ complete feature set for 14 days instead of the restricted free tier.
24
+ Premium analytics features now also run during the evaluation window. The clock is anchored server-side (a hashed
25
+ instance id — no personal data), so reinstalling does not restart it,
26
+ and it fails open: if the licence server is unreachable the plugin
27
+ keeps running fully. After the window the plugin drops to the free
28
+ tier; all configuration is kept and reactivates instantly with a key.
8
29
  ## [0.11.1] — 2026-08-02
9
30
 
10
31
  ### Fixed
package/dist/plugin.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { Type } from '@vendure/core';
2
- import { LicenceStatus, RetentionOptions, UpdateChecker } from '@huloglobal/vendure-licence-sdk';
1
+ import { Type, TransactionalConnection } from '@vendure/core';
2
+ import { LicenceStatus, RetentionOptions, UpdateChecker, EvaluationState } from '@huloglobal/vendure-licence-sdk';
3
3
  import { AbandonmentOptions } from './abandoned-cart.service';
4
4
  export interface VisitorAnalyticsPluginOptions {
5
5
  /** Public host of the Vendure server. Used in licence host-match. */
@@ -59,6 +59,25 @@ export declare function getOptions(): typeof DEFAULT_OPTIONS & VisitorAnalyticsP
59
59
  * a consent gate, all toggleable via plugin options.
60
60
  */
61
61
  export declare class VisitorAnalyticsPlugin {
62
+ private connection;
63
+ private static evalClientInternal;
64
+ static getEvalState(): EvaluationState | null;
65
+ static getEvalInstanceId(): string | null;
66
+ /** Licensed installs AND installs inside the 14-day server-anchored
67
+ * evaluation window get the full feature set. After the window the
68
+ * plugin drops to the free tier. */
69
+ static hasPremiumAccess(): boolean;
70
+ static startEvaluation(): void;
71
+ private static licenceHost;
72
+ /** Verify + apply a licence key at runtime (admin-UI activation).
73
+ * Identical checks to boot-time verification. */
74
+ static activateRuntimeLicence(key: string): LicenceStatus;
75
+ /** Drop an admin-activated key: back to unlicensed + evaluation. */
76
+ static deactivateRuntimeLicence(): void;
77
+ constructor(connection: TransactionalConnection);
78
+ /** Apply an admin-activated licence key persisted in the DB. An
79
+ * explicitly configured env/init key always wins. */
80
+ onApplicationBootstrap(): Promise<void>;
62
81
  private static revocation;
63
82
  private static updateChecker;
64
83
  private static heartbeat;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,IAAI,EAAiB,MAAM,eAAe,CAAC;AACxE,OAAO,EAAmC,aAAa,EAAE,gBAAgB,EAAqB,aAAa,EAA4C,MAAM,iCAAiC,CAAC;AAM/L,OAAO,EAAwB,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAiBpF,MAAM,WAAW,6BAA6B;IAC1C,qEAAqE;IACrE,aAAa,EAAE,MAAM,CAAC;IACtB;;;gDAG4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB;6EACyE;IACzE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;yEAEqE;IACrE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;qEAEiE;IACjE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;6CAEyC;IACzC,aAAa,CAAC,EAAE,OAAO,CAAC;IAGxB,mDAAmD;IACnD,SAAS,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD;;yEAEqE;IACrE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;2EAEuE;IACvE,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAG9B,8DAA8D;IAC9D,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAG7B;;4DAEwD;IACxD,WAAW,CAAC,EAAE,kBAAkB,CAAC;CACpC;AAgBD,QAAA,MAAM,eAAe,EAAE,6BAMtB,CAAC;AAGF,wBAAgB,UAAU,IAAI,OAAO,eAAe,GAAG,6BAA6B,CAEnF;AAED;;;;;;;;;;;GAWG;AACH,qBA0Ba,sBAAsB;IAC/B,OAAO,CAAC,MAAM,CAAC,UAAU,CAAkC;IAC3D,OAAO,CAAC,MAAM,CAAC,aAAa,CAA8B;IAC1D,OAAO,CAAC,MAAM,CAAC,SAAS,CAA0B;IAClD,OAAO,CAAC,MAAM,CAAC,aAAa,CAA8B;IAE1D,MAAM,CAAC,gBAAgB,IAAI,aAAa,GAAG,IAAI;IAC/C,MAAM,CAAC,iBAAiB,IAAI,MAAM;IAClC,MAAM,CAAC,cAAc,IAAI,MAAM;IAC/B,MAAM,CAAC,gBAAgB,IAAI,aAAa,GAAG,IAAI;IAE/C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,6BAA6B,GAAG,IAAI,CAAC,sBAAsB,CAAC;IAoDjF,MAAM,CAAC,YAAY;;;;;;;;MAUjB;CACL"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,IAAI,EAAiB,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACjG,OAAO,EAAmC,aAAa,EAAE,gBAAgB,EAAqB,aAAa,EAA8D,eAAe,EAAgB,MAAM,iCAAiC,CAAC;AAMhP,OAAO,EAAwB,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAiBpF,MAAM,WAAW,6BAA6B;IAC1C,qEAAqE;IACrE,aAAa,EAAE,MAAM,CAAC;IACtB;;;gDAG4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB;6EACyE;IACzE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;yEAEqE;IACrE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;qEAEiE;IACjE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;6CAEyC;IACzC,aAAa,CAAC,EAAE,OAAO,CAAC;IAGxB,mDAAmD;IACnD,SAAS,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD;;yEAEqE;IACrE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;2EAEuE;IACvE,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAG9B,8DAA8D;IAC9D,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAG7B;;4DAEwD;IACxD,WAAW,CAAC,EAAE,kBAAkB,CAAC;CACpC;AAgBD,QAAA,MAAM,eAAe,EAAE,6BAMtB,CAAC;AAGF,wBAAgB,UAAU,IAAI,OAAO,eAAe,GAAG,6BAA6B,CAEnF;AAED;;;;;;;;;;;GAWG;AACH,qBA0Ba,sBAAsB;IA4CnB,OAAO,CAAC,UAAU;IA3C9B,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAiC;IAClE,MAAM,CAAC,YAAY,IAAI,eAAe,GAAG,IAAI;IAC7C,MAAM,CAAC,iBAAiB,IAAI,MAAM,GAAG,IAAI;IACzC;;yCAEqC;IACrC,MAAM,CAAC,gBAAgB,IAAI,OAAO;IAIlC,MAAM,CAAC,eAAe,IAAI,IAAI;IAO9B,OAAO,CAAC,MAAM,CAAC,WAAW,CAAM;IAEhC;sDACkD;IAClD,MAAM,CAAC,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa;IAYzD,oEAAoE;IACpE,MAAM,CAAC,wBAAwB,IAAI,IAAI;gBASnB,UAAU,EAAE,uBAAuB;IAEvD;0DACsD;IAChD,sBAAsB;IAc5B,OAAO,CAAC,MAAM,CAAC,UAAU,CAAkC;IAC3D,OAAO,CAAC,MAAM,CAAC,aAAa,CAA8B;IAC1D,OAAO,CAAC,MAAM,CAAC,SAAS,CAA0B;IAClD,OAAO,CAAC,MAAM,CAAC,aAAa,CAA8B;IAE1D,MAAM,CAAC,gBAAgB,IAAI,aAAa,GAAG,IAAI;IAC/C,MAAM,CAAC,iBAAiB,IAAI,MAAM;IAClC,MAAM,CAAC,cAAc,IAAI,MAAM;IAC/B,MAAM,CAAC,gBAAgB,IAAI,aAAa,GAAG,IAAI;IAE/C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,6BAA6B,GAAG,IAAI,CAAC,sBAAsB,CAAC;IAwDjF,MAAM,CAAC,YAAY;;;;;;;;MAUjB;CACL"}
package/dist/plugin.js CHANGED
@@ -5,6 +5,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
8
11
  var VisitorAnalyticsPlugin_1;
9
12
  Object.defineProperty(exports, "__esModule", { value: true });
10
13
  exports.VisitorAnalyticsPlugin = void 0;
@@ -67,6 +70,69 @@ function getOptions() {
67
70
  * a consent gate, all toggleable via plugin options.
68
71
  */
69
72
  let VisitorAnalyticsPlugin = VisitorAnalyticsPlugin_1 = class VisitorAnalyticsPlugin {
73
+ static getEvalState() { var _a, _b; return (_b = (_a = VisitorAnalyticsPlugin_1.evalClientInternal) === null || _a === void 0 ? void 0 : _a.getState()) !== null && _b !== void 0 ? _b : null; }
74
+ static getEvalInstanceId() { var _a, _b; return (_b = (_a = VisitorAnalyticsPlugin_1.evalClientInternal) === null || _a === void 0 ? void 0 : _a.getInstanceId()) !== null && _b !== void 0 ? _b : null; }
75
+ /** Licensed installs AND installs inside the 14-day server-anchored
76
+ * evaluation window get the full feature set. After the window the
77
+ * plugin drops to the free tier. */
78
+ static hasPremiumAccess() {
79
+ var _a, _b, _c;
80
+ if ((_a = VisitorAnalyticsPlugin_1.licenceStatus) === null || _a === void 0 ? void 0 : _a.valid)
81
+ return true;
82
+ return !!((_c = (_b = VisitorAnalyticsPlugin_1.evalClientInternal) === null || _b === void 0 ? void 0 : _b.getState()) === null || _c === void 0 ? void 0 : _c.active);
83
+ }
84
+ static startEvaluation() {
85
+ if (!VisitorAnalyticsPlugin_1.evalClientInternal) {
86
+ VisitorAnalyticsPlugin_1.evalClientInternal = new vendure_licence_sdk_1.EvaluationClient({ packageName: PKG_NAME, packageVersion: PKG_VERSION });
87
+ VisitorAnalyticsPlugin_1.evalClientInternal.start();
88
+ }
89
+ }
90
+ /** Verify + apply a licence key at runtime (admin-UI activation).
91
+ * Identical checks to boot-time verification. */
92
+ static activateRuntimeLicence(key) {
93
+ var _a, _b;
94
+ const status = (0, vendure_licence_sdk_1.verifyLicence)({
95
+ licenceKey: key, pluginId: PLUGIN_ID, host: VisitorAnalyticsPlugin_1.licenceHost,
96
+ publicKey: HULO_PUBLIC_KEY, revokedIds: (_a = VisitorAnalyticsPlugin_1.revocation) === null || _a === void 0 ? void 0 : _a.getRevokedIds(),
97
+ });
98
+ if (status.valid) {
99
+ VisitorAnalyticsPlugin_1.licenceStatus = status;
100
+ (_b = VisitorAnalyticsPlugin_1.evalClientInternal) === null || _b === void 0 ? void 0 : _b.stop();
101
+ }
102
+ return status;
103
+ }
104
+ /** Drop an admin-activated key: back to unlicensed + evaluation. */
105
+ static deactivateRuntimeLicence() {
106
+ var _a;
107
+ VisitorAnalyticsPlugin_1.licenceStatus = {
108
+ valid: false,
109
+ message: 'No licence key configured. The plugin will run in unlicensed (degraded) mode.',
110
+ };
111
+ VisitorAnalyticsPlugin_1.startEvaluation();
112
+ (_a = VisitorAnalyticsPlugin_1.evalClientInternal) === null || _a === void 0 ? void 0 : _a.start();
113
+ }
114
+ constructor(connection) {
115
+ this.connection = connection;
116
+ }
117
+ /** Apply an admin-activated licence key persisted in the DB. An
118
+ * explicitly configured env/init key always wins. */
119
+ async onApplicationBootstrap() {
120
+ var _a;
121
+ if ((_a = VisitorAnalyticsPlugin_1.licenceStatus) === null || _a === void 0 ? void 0 : _a.valid)
122
+ return;
123
+ try {
124
+ const store = new vendure_licence_sdk_1.LicenceStore((sql, params) => this.connection.rawConnection.query(sql, params));
125
+ await store.ensureTable();
126
+ const stored = await store.load(PLUGIN_ID);
127
+ if (stored) {
128
+ const st = VisitorAnalyticsPlugin_1.activateRuntimeLicence(stored);
129
+ // eslint-disable-next-line no-console
130
+ if (st.valid)
131
+ console.log(`[${PKG_NAME}] licence restored from admin activation — ${st.message}`);
132
+ }
133
+ }
134
+ catch { /* store failures never affect boot */ }
135
+ }
70
136
  static getUpdateChecker() { return VisitorAnalyticsPlugin_1.updateChecker; }
71
137
  static getPackageVersion() { return PKG_VERSION; }
72
138
  static getPackageName() { return PKG_NAME; }
@@ -90,6 +156,7 @@ let VisitorAnalyticsPlugin = VisitorAnalyticsPlugin_1 = class VisitorAnalyticsPl
90
156
  }
91
157
  const host = (options.publicBaseUrl || '')
92
158
  .replace(/^https?:\/\//, '').replace(/\/.*$/, '');
159
+ VisitorAnalyticsPlugin_1.licenceHost = host;
93
160
  const status = (0, vendure_licence_sdk_1.verifyLicence)({
94
161
  licenceKey: options.licenceKey,
95
162
  pluginId: PLUGIN_ID,
@@ -99,6 +166,9 @@ let VisitorAnalyticsPlugin = VisitorAnalyticsPlugin_1 = class VisitorAnalyticsPl
99
166
  });
100
167
  VisitorAnalyticsPlugin_1.licenceStatus = status;
101
168
  if (!status.valid) {
169
+ // Unlicensed: start the server-anchored 14-day full-featured
170
+ // evaluation; premium paths stay on until it expires.
171
+ VisitorAnalyticsPlugin_1.startEvaluation();
102
172
  // eslint-disable-next-line no-console
103
173
  console.warn(`[@huloglobal/vendure-plugin-visitor-analytics] ${status.message}` +
104
174
  ` — Running in FREE tier: 100 events/day cap, conversion goals disabled, live SSE feed disabled, CSV export disabled. Buy a licence at https://elite.charity/licence/buy/${PLUGIN_ID}`);
@@ -116,6 +186,8 @@ let VisitorAnalyticsPlugin = VisitorAnalyticsPlugin_1 = class VisitorAnalyticsPl
116
186
  }
117
187
  };
118
188
  exports.VisitorAnalyticsPlugin = VisitorAnalyticsPlugin;
189
+ VisitorAnalyticsPlugin.evalClientInternal = null;
190
+ VisitorAnalyticsPlugin.licenceHost = '';
119
191
  VisitorAnalyticsPlugin.revocation = null;
120
192
  VisitorAnalyticsPlugin.updateChecker = null;
121
193
  VisitorAnalyticsPlugin.heartbeat = null;
@@ -157,6 +229,7 @@ exports.VisitorAnalyticsPlugin = VisitorAnalyticsPlugin = VisitorAnalyticsPlugin
157
229
  schema: admin_api_1.visitorAnalyticsAdminApiSchema,
158
230
  resolvers: [admin_api_1.VisitorAnalyticsAdminResolver],
159
231
  },
160
- })
232
+ }),
233
+ __metadata("design:paramtypes", [core_1.TransactionalConnection])
161
234
  ], VisitorAnalyticsPlugin);
162
235
  //# sourceMappingURL=plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,14 @@ export declare class VisitorTrackingController implements OnApplicationBootstrap
29
29
  * Cookies `ees_vid` (visitor) and `ees_sid` (session) are issued
30
30
  * on the first request and refreshed on every subsequent one.
31
31
  */
32
+ private licenceStore;
33
+ /** Licence/evaluation state for the admin banner. */
34
+ licenceState(ctx: RequestContext, res: Response): Promise<Response<any, Record<string, any>> | undefined>;
35
+ /** Admin-UI licence activation: paste-a-key, verified with the exact
36
+ * boot-time checks, applied immediately and persisted. */
37
+ licenceActivate(ctx: RequestContext, res: Response, body: any): Promise<Response<any, Record<string, any>> | undefined>;
38
+ /** Remove an admin-activated key (env-configured keys unaffected). */
39
+ licenceDeactivate(ctx: RequestContext, res: Response): Promise<Response<any, Record<string, any>> | undefined>;
32
40
  track(body: any, req: Request, res: Response): Promise<Response<any, Record<string, any>> | undefined>;
33
41
  /** Top-line counters + daily series for the dashboard header. */
34
42
  summary(ctx: RequestContext, req: Request, res: Response): Promise<Response<any, Record<string, any>> | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"visitor-tracking.controller.d.ts","sourceRoot":"","sources":["../src/visitor-tracking.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visitor-tracking.controller.d.ts","sourceRoot":"","sources":["../src/visitor-tracking.controller.ts"],"names":[],"mappings":"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"}
@@ -110,6 +110,7 @@ function channelWhere(channelId, alias) {
110
110
  return { sql: `AND ${col} = ?`, params: [channelId] };
111
111
  }
112
112
  const proxy_headers_1 = require("./proxy-headers");
113
+ const PLUGIN_ID_FOR_STORE = 'vendure-plugin-visitor-analytics';
113
114
  function realIp(req) { return (0, proxy_headers_1.getRealIp)(req); }
114
115
  let VisitorTrackingController = class VisitorTrackingController {
115
116
  constructor(connection, tracking) {
@@ -117,6 +118,25 @@ let VisitorTrackingController = class VisitorTrackingController {
117
118
  this.tracking = tracking;
118
119
  this.limiter = null;
119
120
  this.stopRetention = null;
121
+ /**
122
+ * Ingest endpoint hit by the storefront tracker. Anonymous, takes
123
+ * a small JSON batch via fetch() or navigator.sendBeacon() (which
124
+ * uses text/plain). CORS is open because the storefront is on a
125
+ * different origin from the API.
126
+ *
127
+ * POST /ees/track
128
+ * body: {
129
+ * channelId?: number,
130
+ * customerId?: number | null,
131
+ * events: [
132
+ * { type, url, title?, referrer?, timeOnPageMs?, meta?, clientTs? }
133
+ * ]
134
+ * }
135
+ *
136
+ * Cookies `ees_vid` (visitor) and `ees_sid` (session) are issued
137
+ * on the first request and refreshed on every subsequent one.
138
+ */
139
+ this.licenceStore = new vendure_licence_sdk_1.LicenceStore((sql, params) => this.connection.rawConnection.query(sql, params));
120
140
  }
121
141
  onApplicationBootstrap() {
122
142
  const opts = (0, plugin_1.getOptions)();
@@ -147,24 +167,42 @@ let VisitorTrackingController = class VisitorTrackingController {
147
167
  }
148
168
  return false;
149
169
  }
150
- /**
151
- * Ingest endpoint hit by the storefront tracker. Anonymous, takes
152
- * a small JSON batch via fetch() or navigator.sendBeacon() (which
153
- * uses text/plain). CORS is open because the storefront is on a
154
- * different origin from the API.
155
- *
156
- * POST /ees/track
157
- * body: {
158
- * channelId?: number,
159
- * customerId?: number | null,
160
- * events: [
161
- * { type, url, title?, referrer?, timeOnPageMs?, meta?, clientTs? }
162
- * ]
163
- * }
164
- *
165
- * Cookies `ees_vid` (visitor) and `ees_sid` (session) are issued
166
- * on the first request and refreshed on every subsequent one.
167
- */
170
+ /** Licence/evaluation state for the admin banner. */
171
+ async licenceState(ctx, res) {
172
+ if (!requireAdmin(ctx, res))
173
+ return;
174
+ const licence = plugin_1.VisitorAnalyticsPlugin.getLicenceStatus();
175
+ const ev = plugin_1.VisitorAnalyticsPlugin.getEvalState();
176
+ return res.json({
177
+ licensed: !!(licence === null || licence === void 0 ? void 0 : licence.valid),
178
+ licenceMessage: (licence === null || licence === void 0 ? void 0 : licence.valid) ? '' : ((licence === null || licence === void 0 ? void 0 : licence.message) || 'No licence key configured'),
179
+ tier: (licence === null || licence === void 0 ? void 0 : licence.valid) ? 'paid' : ((ev === null || ev === void 0 ? void 0 : ev.active) ? 'trial' : 'free'),
180
+ eval: ev,
181
+ });
182
+ }
183
+ /** Admin-UI licence activation: paste-a-key, verified with the exact
184
+ * boot-time checks, applied immediately and persisted. */
185
+ async licenceActivate(ctx, res, body) {
186
+ if (!requireAdmin(ctx, res))
187
+ return;
188
+ const key = String((body === null || body === void 0 ? void 0 : body.key) || '').trim();
189
+ if (!key)
190
+ return res.status(400).json({ licensed: false, message: 'Paste your licence key first.' });
191
+ const status = plugin_1.VisitorAnalyticsPlugin.activateRuntimeLicence(key);
192
+ if (!status.valid)
193
+ return res.status(400).json({ licensed: false, message: status.message || 'Invalid licence key.' });
194
+ await this.licenceStore.ensureTable();
195
+ await this.licenceStore.save(PLUGIN_ID_FOR_STORE, key);
196
+ return res.json({ licensed: true, message: status.message });
197
+ }
198
+ /** Remove an admin-activated key (env-configured keys unaffected). */
199
+ async licenceDeactivate(ctx, res) {
200
+ if (!requireAdmin(ctx, res))
201
+ return;
202
+ await this.licenceStore.clear(PLUGIN_ID_FOR_STORE);
203
+ plugin_1.VisitorAnalyticsPlugin.deactivateRuntimeLicence();
204
+ return res.json({ licensed: false });
205
+ }
168
206
  async track(body, req, res) {
169
207
  var _a;
170
208
  // Lenient CORS — analytics ingestion must work cross-origin from
@@ -178,7 +216,7 @@ let VisitorTrackingController = class VisitorTrackingController {
178
216
  // Tier-gate: unlicensed installs are capped at 100 events / UTC day.
179
217
  // Once the cap is hit, /track returns 200 with `skipped: 'free-tier-cap'`
180
218
  // so the storefront's beacon doesn't surface errors to end users.
181
- if (!(0, vendure_licence_sdk_1.isLicensed)(plugin_1.VisitorAnalyticsPlugin.getLicenceStatus())) {
219
+ if (!plugin_1.VisitorAnalyticsPlugin.hasPremiumAccess()) {
182
220
  const eventsLen = Array.isArray((body || {}).events) ? body.events.length : 1;
183
221
  if (!freeTierBudget.consume(eventsLen)) {
184
222
  return res.json({ stored: 0, skipped: 'free-tier-cap', cap: FREE_TIER_DAILY_CAP });
@@ -570,7 +608,7 @@ let VisitorTrackingController = class VisitorTrackingController {
570
608
  return;
571
609
  const channelId = parseChannelId(req.query.channelId);
572
610
  const w = channelWhere(channelId);
573
- if (!(0, vendure_licence_sdk_1.isLicensed)(plugin_1.VisitorAnalyticsPlugin.getLicenceStatus())) {
611
+ if (!plugin_1.VisitorAnalyticsPlugin.hasPremiumAccess()) {
574
612
  return res.status(402).json((0, vendure_licence_sdk_1.premiumFeatureError)('vendure-plugin-visitor-analytics'));
575
613
  }
576
614
  res.setHeader('Content-Type', 'text/event-stream');
@@ -835,7 +873,7 @@ let VisitorTrackingController = class VisitorTrackingController {
835
873
  async createGoal(ctx, body, res) {
836
874
  if (!requireAdmin(ctx, res))
837
875
  return;
838
- if (!(0, vendure_licence_sdk_1.isLicensed)(plugin_1.VisitorAnalyticsPlugin.getLicenceStatus())) {
876
+ if (!plugin_1.VisitorAnalyticsPlugin.hasPremiumAccess()) {
839
877
  return res.status(402).json((0, vendure_licence_sdk_1.premiumFeatureError)('vendure-plugin-visitor-analytics'));
840
878
  }
841
879
  const repo = this.connection.rawConnection.getRepository(conversion_goal_entity_1.ConversionGoal);
@@ -909,7 +947,7 @@ let VisitorTrackingController = class VisitorTrackingController {
909
947
  async exportCsv(ctx, req, res) {
910
948
  if (!requireAdmin(ctx, res))
911
949
  return;
912
- if (!(0, vendure_licence_sdk_1.isLicensed)(plugin_1.VisitorAnalyticsPlugin.getLicenceStatus())) {
950
+ if (!plugin_1.VisitorAnalyticsPlugin.hasPremiumAccess()) {
913
951
  return res.status(402).json((0, vendure_licence_sdk_1.premiumFeatureError)('vendure-plugin-visitor-analytics'));
914
952
  }
915
953
  const days = Math.min(Math.max(parseInt(String(req.query.days || '7'), 10) || 7, 1), 90);
@@ -946,6 +984,31 @@ let VisitorTrackingController = class VisitorTrackingController {
946
984
  }
947
985
  };
948
986
  exports.VisitorTrackingController = VisitorTrackingController;
987
+ __decorate([
988
+ (0, common_1.Get)('licence/status'),
989
+ __param(0, (0, core_1.Ctx)()),
990
+ __param(1, (0, common_1.Res)()),
991
+ __metadata("design:type", Function),
992
+ __metadata("design:paramtypes", [core_1.RequestContext, Object]),
993
+ __metadata("design:returntype", Promise)
994
+ ], VisitorTrackingController.prototype, "licenceState", null);
995
+ __decorate([
996
+ (0, common_1.Post)('licence/activate'),
997
+ __param(0, (0, core_1.Ctx)()),
998
+ __param(1, (0, common_1.Res)()),
999
+ __param(2, (0, common_1.Body)()),
1000
+ __metadata("design:type", Function),
1001
+ __metadata("design:paramtypes", [core_1.RequestContext, Object, Object]),
1002
+ __metadata("design:returntype", Promise)
1003
+ ], VisitorTrackingController.prototype, "licenceActivate", null);
1004
+ __decorate([
1005
+ (0, common_1.Post)('licence/deactivate'),
1006
+ __param(0, (0, core_1.Ctx)()),
1007
+ __param(1, (0, common_1.Res)()),
1008
+ __metadata("design:type", Function),
1009
+ __metadata("design:paramtypes", [core_1.RequestContext, Object]),
1010
+ __metadata("design:returntype", Promise)
1011
+ ], VisitorTrackingController.prototype, "licenceDeactivate", null);
949
1012
  __decorate([
950
1013
  (0, common_1.Post)('track'),
951
1014
  __param(0, (0, common_1.Body)()),
@@ -1 +1 @@
1
- {"version":3,"file":"visitor-tracking.controller.js","sourceRoot":"","sources":["../src/visitor-tracking.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visitor-tracking.controller.js","sourceRoot":"","sources":["../src/visitor-tracking.controller.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@huloglobal/vendure-plugin-visitor-analytics",
3
- "version": "0.11.1",
3
+ "version": "0.13.0",
4
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": "AGPL-3.0-or-later",
6
6
  "author": "Wayne Garrison <wayne@garrison.me.uk>",
@@ -27,15 +27,15 @@
27
27
  "test:watch": "vitest"
28
28
  },
29
29
  "dependencies": {
30
- "@huloglobal/vendure-licence-sdk": "^0.6.0",
31
- "ua-parser-js": "^1.0.37",
32
- "geolite2-redist": "^3.1.0",
33
30
  "@maxmind/geoip2-node": "^5.0.0",
34
- "graphql-tag": "^2.12.7"
31
+ "geolite2-redist": "^3.1.0",
32
+ "graphql-tag": "^2.12.7",
33
+ "ua-parser-js": "^1.0.37",
34
+ "@huloglobal/vendure-licence-sdk": "^0.8.0"
35
35
  },
36
36
  "peerDependencies": {
37
- "@vendure/core": ">=3.5.0 <4.0.0",
38
37
  "@nestjs/common": ">=10.0.0",
38
+ "@vendure/core": ">=3.5.0 <4.0.0",
39
39
  "typeorm": ">=0.3.0"
40
40
  },
41
41
  "devDependencies": {
@@ -85,6 +85,27 @@ interface VisitorProfile {
85
85
  </div>
86
86
  </vdr-page-block>
87
87
 
88
+ <vdr-page-block *ngIf="licMeta && !licMeta.licensed">
89
+ <div class="lic-banner">
90
+ <div *ngIf="licMeta.tier === 'trial'">
91
+ <strong>⏳ Full-featured evaluation</strong> —
92
+ <ng-container *ngIf="licMeta.eval?.daysRemaining != null">
93
+ <strong>{{ licMeta.eval.daysRemaining }} day{{ licMeta.eval.daysRemaining === 1 ? '' : 's' }} left</strong> with everything enabled.
94
+ </ng-container>
95
+ <ng-container *ngIf="licMeta.eval?.daysRemaining == null">everything is enabled.</ng-container>
96
+ Afterwards the plugin drops to the free tier.
97
+ </div>
98
+ <div *ngIf="licMeta.tier !== 'trial'">
99
+ <strong>🔓 Free tier</strong> — your evaluation has ended. Premium features are paused; your configuration is kept and reactivates instantly with a key.
100
+ </div>
101
+ <div class="lic-actions">
102
+ <input class="lic-key" type="text" placeholder="Paste licence key (eyJhbGciOi…)" [(ngModel)]="licKeyInput" [disabled]="licActivating">
103
+ <button class="gbtn gbtn-primary gbtn-sm" (click)="activateLicence()" [disabled]="licActivating || !licKeyInput">{{ licActivating ? 'Verifying…' : 'Activate' }}</button>
104
+ <a href="https://huloglobal.com/vendure-plugins/visitor-analytics/" target="_blank" class="gbtn gbtn-outline gbtn-sm">Get a licence ↗</a>
105
+ </div>
106
+ </div>
107
+ </vdr-page-block>
108
+
88
109
  <vdr-page-block *ngIf="helpOpen">
89
110
  <div class="hulo-help-drawer">
90
111
  <div class="hulo-help-grid">
@@ -595,6 +616,10 @@ interface VisitorProfile {
595
616
  </div>
596
617
  `,
597
618
  styles: [`
619
+ .lic-banner { display:flex; gap:12px; align-items:center; justify-content:space-between; flex-wrap:wrap; padding:12px 16px; border-radius:10px; font-size:13px; background:var(--gb-tint-warn, #fef3c7); border:1px solid var(--gb-line-warn, #fcd34d); }
620
+ .lic-actions { display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
621
+ .lic-key { padding:5px 9px; border:1px solid var(--gb-ui-border, #d1d5db); border-radius:7px; font-size:12.5px; min-width:280px; background:#fff; color:#0f172a; }
622
+
598
623
  :host { color: var(--color-text-100, inherit); display: block; }
599
624
 
600
625
  /* ── Unified card + table system ─────────────────────────── */
@@ -1159,7 +1184,39 @@ export class VisitorsComponent implements OnInit, OnDestroy {
1159
1184
  private zone: NgZone,
1160
1185
  ) {}
1161
1186
 
1187
+ licMeta: any = null;
1188
+ licKeyInput = '';
1189
+ licActivating = false;
1190
+
1191
+ loadLicMeta() {
1192
+ this.http.get<any>('/ees/licence/status').subscribe({
1193
+ next: m => { this.licMeta = m; this.cdr.markForCheck(); },
1194
+ error: () => undefined,
1195
+ });
1196
+ }
1197
+
1198
+ activateLicence() {
1199
+ const key = (this.licKeyInput || '').trim();
1200
+ if (!key) return;
1201
+ this.licActivating = true;
1202
+ this.http.post<any>('/ees/licence/activate', { key }).subscribe({
1203
+ next: r => {
1204
+ this.licActivating = false;
1205
+ this.licKeyInput = '';
1206
+ this.notify.success(r?.message || 'Licence activated — all features enabled');
1207
+ this.loadLicMeta();
1208
+ this.cdr.markForCheck();
1209
+ },
1210
+ error: e => {
1211
+ this.licActivating = false;
1212
+ this.notify.error(e?.error?.message || 'That key did not validate — check it was copied completely');
1213
+ this.cdr.markForCheck();
1214
+ },
1215
+ });
1216
+ }
1217
+
1162
1218
  ngOnInit() {
1219
+ this.loadLicMeta();
1163
1220
  this.restorePrefs();
1164
1221
  this.loadChannels();
1165
1222
  this.loadAll();