pi-kiosk-shared 2.1.31 → 2.1.33
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/dist/analyticsEvents.d.ts +125 -0
- package/dist/analyticsEvents.d.ts.map +1 -0
- package/dist/analyticsEvents.js +126 -0
- package/dist/analyticsEvents.js.map +1 -0
- package/dist/analyticsExploreCaps.d.ts +41 -0
- package/dist/analyticsExploreCaps.d.ts.map +1 -0
- package/dist/analyticsExploreCaps.js +42 -0
- package/dist/analyticsExploreCaps.js.map +1 -0
- package/dist/api.d.ts +0 -1
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +0 -1
- package/dist/api.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/package.json +6 -1
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Analytics event catalog v1 — single source of truth shared across
|
|
3
|
+
* backend, kiosk, customer PWA, and admin (where applicable).
|
|
4
|
+
*
|
|
5
|
+
* Plan §2.1 — exact 35 events (17 universal + 7 retail + 9 donation + 2 kiosk).
|
|
6
|
+
* - All names are snake_case.
|
|
7
|
+
* - Catalog version is `1` — `analytics_events.catalogVersion` must equal this.
|
|
8
|
+
* - Unknown event names → HTTP 400 on ingest.
|
|
9
|
+
* - No `KIOSK_*` legacy uppercase names — those constants are removed from
|
|
10
|
+
* `rpapp-kiosk/.../kioskAnalyticsEvents.ts` per plan §2.1 / §10.2.3.
|
|
11
|
+
*/
|
|
12
|
+
export declare const ANALYTICS_EVENT_CATALOG_VERSION: 1;
|
|
13
|
+
/**
|
|
14
|
+
* Universal events (17).
|
|
15
|
+
*/
|
|
16
|
+
export declare const ANALYTICS_UNIVERSAL_EVENTS: {
|
|
17
|
+
readonly SESSION_STARTED: "session_started";
|
|
18
|
+
readonly SESSION_COMPLETED: "session_completed";
|
|
19
|
+
readonly SESSION_ABANDONED: "session_abandoned";
|
|
20
|
+
readonly SCREEN_VIEWED: "screen_viewed";
|
|
21
|
+
readonly CTA_CLICKED: "cta_clicked";
|
|
22
|
+
readonly BACK_CLICKED: "back_clicked";
|
|
23
|
+
readonly ERROR_SHOWN: "error_shown";
|
|
24
|
+
readonly AUTH_FLOW_STARTED: "auth_flow_started";
|
|
25
|
+
readonly IDENTITY_COMPLETED: "identity_completed";
|
|
26
|
+
readonly LOGIN_SUCCESS: "login_success";
|
|
27
|
+
readonly ACCOUNT_CREATED: "account_created";
|
|
28
|
+
readonly PAYMENT_STARTED: "payment_started";
|
|
29
|
+
readonly PAYMENT_QR_GENERATED: "payment_qr_generated";
|
|
30
|
+
readonly PAYMENT_SUBMITTED: "payment_submitted";
|
|
31
|
+
readonly PAYMENT_CONFIRMED: "payment_confirmed";
|
|
32
|
+
readonly PAYMENT_FAILED: "payment_failed";
|
|
33
|
+
readonly RECEIPT_OPENED: "receipt_opened";
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Retail events (7).
|
|
37
|
+
*/
|
|
38
|
+
export declare const ANALYTICS_RETAIL_EVENTS: {
|
|
39
|
+
readonly CATALOG_INTERACTION: "catalog_interaction";
|
|
40
|
+
readonly PRODUCT_ADDED: "product_added";
|
|
41
|
+
readonly PRODUCT_REMOVED: "product_removed";
|
|
42
|
+
readonly CART_VIEWED: "cart_viewed";
|
|
43
|
+
readonly CHECKOUT_STARTED: "checkout_started";
|
|
44
|
+
readonly RETAIL_ORDER_PAID: "retail_order_paid";
|
|
45
|
+
readonly RETAIL_ORDER_ABANDONED: "retail_order_abandoned";
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Donation events (9).
|
|
49
|
+
*/
|
|
50
|
+
export declare const ANALYTICS_DONATION_EVENTS: {
|
|
51
|
+
readonly DONATION_STARTED: "donation_started";
|
|
52
|
+
readonly DONATION_AMOUNT_SELECTED: "donation_amount_selected";
|
|
53
|
+
readonly DONATION_CUSTOM_AMOUNT_ENTERED: "donation_custom_amount_entered";
|
|
54
|
+
readonly DONATION_PROJECT_SELECTED: "donation_project_selected";
|
|
55
|
+
readonly DONATION_IMPACT_OPENED: "donation_impact_opened";
|
|
56
|
+
readonly DONATION_TAX_RECEIPT_SELECTED: "donation_tax_receipt_selected";
|
|
57
|
+
readonly RECURRING_DONATION_SELECTED: "recurring_donation_selected";
|
|
58
|
+
readonly DONATION_COMPLETED: "donation_completed";
|
|
59
|
+
readonly DONATION_ABANDONED: "donation_abandoned";
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Kiosk events (2).
|
|
63
|
+
*/
|
|
64
|
+
export declare const ANALYTICS_KIOSK_EVENTS: {
|
|
65
|
+
readonly KIOSK_WAKEUP: "kiosk_wakeup";
|
|
66
|
+
readonly KIOSK_TIMEOUT: "kiosk_timeout";
|
|
67
|
+
};
|
|
68
|
+
export declare const ANALYTICS_EVENT_NAMES: readonly ("session_started" | "session_completed" | "session_abandoned" | "screen_viewed" | "cta_clicked" | "back_clicked" | "error_shown" | "auth_flow_started" | "identity_completed" | "login_success" | "account_created" | "payment_started" | "payment_qr_generated" | "payment_submitted" | "payment_confirmed" | "payment_failed" | "receipt_opened" | "catalog_interaction" | "product_added" | "product_removed" | "cart_viewed" | "checkout_started" | "retail_order_paid" | "retail_order_abandoned" | "donation_started" | "donation_amount_selected" | "donation_custom_amount_entered" | "donation_project_selected" | "donation_impact_opened" | "donation_tax_receipt_selected" | "recurring_donation_selected" | "donation_completed" | "donation_abandoned" | "kiosk_wakeup" | "kiosk_timeout")[];
|
|
69
|
+
export type AnalyticsEventName = (typeof ANALYTICS_EVENT_NAMES)[number];
|
|
70
|
+
/**
|
|
71
|
+
* Type-safe membership check.
|
|
72
|
+
*/
|
|
73
|
+
export declare function isAnalyticsEventName(name: string): name is AnalyticsEventName;
|
|
74
|
+
/**
|
|
75
|
+
* Telemetry classes — all v1 events default to OPERATIONAL (§1.9).
|
|
76
|
+
* MARKETING is rejected on ingest for v1.
|
|
77
|
+
*/
|
|
78
|
+
export declare const ANALYTICS_TELEMETRY_CLASSES: {
|
|
79
|
+
readonly OPERATIONAL: "OPERATIONAL";
|
|
80
|
+
readonly MARKETING: "MARKETING";
|
|
81
|
+
};
|
|
82
|
+
export type AnalyticsTelemetryClass = (typeof ANALYTICS_TELEMETRY_CLASSES)[keyof typeof ANALYTICS_TELEMETRY_CLASSES];
|
|
83
|
+
/**
|
|
84
|
+
* Platform enum mirror (matches backend Prisma `AnalyticsPlatform`).
|
|
85
|
+
*/
|
|
86
|
+
export declare const ANALYTICS_PLATFORMS: {
|
|
87
|
+
readonly KIOSK: "KIOSK";
|
|
88
|
+
readonly MOBILE: "MOBILE";
|
|
89
|
+
};
|
|
90
|
+
export type AnalyticsPlatform = (typeof ANALYTICS_PLATFORMS)[keyof typeof ANALYTICS_PLATFORMS];
|
|
91
|
+
/**
|
|
92
|
+
* Flow enum mirror (matches backend Prisma `AnalyticsFlow`).
|
|
93
|
+
*/
|
|
94
|
+
export declare const ANALYTICS_FLOWS: {
|
|
95
|
+
readonly RETAIL: "RETAIL";
|
|
96
|
+
readonly DONATION: "DONATION";
|
|
97
|
+
};
|
|
98
|
+
export type AnalyticsFlow = (typeof ANALYTICS_FLOWS)[keyof typeof ANALYTICS_FLOWS];
|
|
99
|
+
/**
|
|
100
|
+
* Device type enum mirror (matches backend Prisma `AnalyticsDeviceType`).
|
|
101
|
+
* MOBILE_WEB rows always have label `'default'` (§3.1).
|
|
102
|
+
*/
|
|
103
|
+
export declare const ANALYTICS_DEVICE_TYPES: {
|
|
104
|
+
readonly KIOSK: "KIOSK";
|
|
105
|
+
readonly MOBILE_WEB: "MOBILE_WEB";
|
|
106
|
+
readonly STATIC_QR: "STATIC_QR";
|
|
107
|
+
};
|
|
108
|
+
export type AnalyticsDeviceType = (typeof ANALYTICS_DEVICE_TYPES)[keyof typeof ANALYTICS_DEVICE_TYPES];
|
|
109
|
+
export declare const ANALYTICS_MOBILE_WEB_DEFAULT_LABEL: "default";
|
|
110
|
+
/**
|
|
111
|
+
* Snapshot kind for rollups (`analytics_daily_snapshots`).
|
|
112
|
+
*/
|
|
113
|
+
export declare const ANALYTICS_SNAPSHOT_KINDS: {
|
|
114
|
+
readonly TENANT: "tenant";
|
|
115
|
+
readonly PLATFORM: "platform";
|
|
116
|
+
};
|
|
117
|
+
export type AnalyticsSnapshotKind = (typeof ANALYTICS_SNAPSHOT_KINDS)[keyof typeof ANALYTICS_SNAPSHOT_KINDS];
|
|
118
|
+
/**
|
|
119
|
+
* System flag keys (Prisma `system_flags`). `analytics_rollup_initialized`
|
|
120
|
+
* gates retention deletes until first nightly rollup succeeds (§3.4, §6.7).
|
|
121
|
+
*/
|
|
122
|
+
export declare const ANALYTICS_SYSTEM_FLAGS: {
|
|
123
|
+
readonly ROLLUP_INITIALIZED: "analytics_rollup_initialized";
|
|
124
|
+
};
|
|
125
|
+
//# sourceMappingURL=analyticsEvents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyticsEvents.d.ts","sourceRoot":"","sources":["../src/analyticsEvents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,eAAO,MAAM,+BAA+B,EAAG,CAAU,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;CAkB7B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;CAQ1B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;CAU5B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;CAGzB,CAAC;AAEX,eAAO,MAAM,qBAAqB,sxBAKxB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAExE;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,kBAAkB,CAE7E;AAED;;;GAGG;AACH,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,OAAO,2BAA2B,CAAC,CAAC;AAEjF;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;CAGtB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAC3B,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,eAAe;;;CAGlB,CAAC;AAEX,MAAM,MAAM,aAAa,GACvB,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEzD;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;;CAIzB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC7B,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,OAAO,sBAAsB,CAAC,CAAC;AAEvE,eAAO,MAAM,kCAAkC,EAAG,SAAkB,CAAC;AAErE;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;CAG3B,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAC/B,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC;AAE3E;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;CAEzB,CAAC"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Analytics event catalog v1 — single source of truth shared across
|
|
3
|
+
* backend, kiosk, customer PWA, and admin (where applicable).
|
|
4
|
+
*
|
|
5
|
+
* Plan §2.1 — exact 35 events (17 universal + 7 retail + 9 donation + 2 kiosk).
|
|
6
|
+
* - All names are snake_case.
|
|
7
|
+
* - Catalog version is `1` — `analytics_events.catalogVersion` must equal this.
|
|
8
|
+
* - Unknown event names → HTTP 400 on ingest.
|
|
9
|
+
* - No `KIOSK_*` legacy uppercase names — those constants are removed from
|
|
10
|
+
* `rpapp-kiosk/.../kioskAnalyticsEvents.ts` per plan §2.1 / §10.2.3.
|
|
11
|
+
*/
|
|
12
|
+
export const ANALYTICS_EVENT_CATALOG_VERSION = 1;
|
|
13
|
+
/**
|
|
14
|
+
* Universal events (17).
|
|
15
|
+
*/
|
|
16
|
+
export const ANALYTICS_UNIVERSAL_EVENTS = {
|
|
17
|
+
SESSION_STARTED: 'session_started',
|
|
18
|
+
SESSION_COMPLETED: 'session_completed',
|
|
19
|
+
SESSION_ABANDONED: 'session_abandoned',
|
|
20
|
+
SCREEN_VIEWED: 'screen_viewed',
|
|
21
|
+
CTA_CLICKED: 'cta_clicked',
|
|
22
|
+
BACK_CLICKED: 'back_clicked',
|
|
23
|
+
ERROR_SHOWN: 'error_shown',
|
|
24
|
+
AUTH_FLOW_STARTED: 'auth_flow_started',
|
|
25
|
+
IDENTITY_COMPLETED: 'identity_completed',
|
|
26
|
+
LOGIN_SUCCESS: 'login_success',
|
|
27
|
+
ACCOUNT_CREATED: 'account_created',
|
|
28
|
+
PAYMENT_STARTED: 'payment_started',
|
|
29
|
+
PAYMENT_QR_GENERATED: 'payment_qr_generated',
|
|
30
|
+
PAYMENT_SUBMITTED: 'payment_submitted',
|
|
31
|
+
PAYMENT_CONFIRMED: 'payment_confirmed',
|
|
32
|
+
PAYMENT_FAILED: 'payment_failed',
|
|
33
|
+
RECEIPT_OPENED: 'receipt_opened',
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Retail events (7).
|
|
37
|
+
*/
|
|
38
|
+
export const ANALYTICS_RETAIL_EVENTS = {
|
|
39
|
+
CATALOG_INTERACTION: 'catalog_interaction',
|
|
40
|
+
PRODUCT_ADDED: 'product_added',
|
|
41
|
+
PRODUCT_REMOVED: 'product_removed',
|
|
42
|
+
CART_VIEWED: 'cart_viewed',
|
|
43
|
+
CHECKOUT_STARTED: 'checkout_started',
|
|
44
|
+
RETAIL_ORDER_PAID: 'retail_order_paid',
|
|
45
|
+
RETAIL_ORDER_ABANDONED: 'retail_order_abandoned',
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Donation events (9).
|
|
49
|
+
*/
|
|
50
|
+
export const ANALYTICS_DONATION_EVENTS = {
|
|
51
|
+
DONATION_STARTED: 'donation_started',
|
|
52
|
+
DONATION_AMOUNT_SELECTED: 'donation_amount_selected',
|
|
53
|
+
DONATION_CUSTOM_AMOUNT_ENTERED: 'donation_custom_amount_entered',
|
|
54
|
+
DONATION_PROJECT_SELECTED: 'donation_project_selected',
|
|
55
|
+
DONATION_IMPACT_OPENED: 'donation_impact_opened',
|
|
56
|
+
DONATION_TAX_RECEIPT_SELECTED: 'donation_tax_receipt_selected',
|
|
57
|
+
RECURRING_DONATION_SELECTED: 'recurring_donation_selected',
|
|
58
|
+
DONATION_COMPLETED: 'donation_completed',
|
|
59
|
+
DONATION_ABANDONED: 'donation_abandoned',
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Kiosk events (2).
|
|
63
|
+
*/
|
|
64
|
+
export const ANALYTICS_KIOSK_EVENTS = {
|
|
65
|
+
KIOSK_WAKEUP: 'kiosk_wakeup',
|
|
66
|
+
KIOSK_TIMEOUT: 'kiosk_timeout',
|
|
67
|
+
};
|
|
68
|
+
export const ANALYTICS_EVENT_NAMES = [
|
|
69
|
+
...Object.values(ANALYTICS_UNIVERSAL_EVENTS),
|
|
70
|
+
...Object.values(ANALYTICS_RETAIL_EVENTS),
|
|
71
|
+
...Object.values(ANALYTICS_DONATION_EVENTS),
|
|
72
|
+
...Object.values(ANALYTICS_KIOSK_EVENTS),
|
|
73
|
+
];
|
|
74
|
+
/**
|
|
75
|
+
* Type-safe membership check.
|
|
76
|
+
*/
|
|
77
|
+
export function isAnalyticsEventName(name) {
|
|
78
|
+
return ANALYTICS_EVENT_NAMES.includes(name);
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Telemetry classes — all v1 events default to OPERATIONAL (§1.9).
|
|
82
|
+
* MARKETING is rejected on ingest for v1.
|
|
83
|
+
*/
|
|
84
|
+
export const ANALYTICS_TELEMETRY_CLASSES = {
|
|
85
|
+
OPERATIONAL: 'OPERATIONAL',
|
|
86
|
+
MARKETING: 'MARKETING',
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* Platform enum mirror (matches backend Prisma `AnalyticsPlatform`).
|
|
90
|
+
*/
|
|
91
|
+
export const ANALYTICS_PLATFORMS = {
|
|
92
|
+
KIOSK: 'KIOSK',
|
|
93
|
+
MOBILE: 'MOBILE',
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Flow enum mirror (matches backend Prisma `AnalyticsFlow`).
|
|
97
|
+
*/
|
|
98
|
+
export const ANALYTICS_FLOWS = {
|
|
99
|
+
RETAIL: 'RETAIL',
|
|
100
|
+
DONATION: 'DONATION',
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Device type enum mirror (matches backend Prisma `AnalyticsDeviceType`).
|
|
104
|
+
* MOBILE_WEB rows always have label `'default'` (§3.1).
|
|
105
|
+
*/
|
|
106
|
+
export const ANALYTICS_DEVICE_TYPES = {
|
|
107
|
+
KIOSK: 'KIOSK',
|
|
108
|
+
MOBILE_WEB: 'MOBILE_WEB',
|
|
109
|
+
STATIC_QR: 'STATIC_QR',
|
|
110
|
+
};
|
|
111
|
+
export const ANALYTICS_MOBILE_WEB_DEFAULT_LABEL = 'default';
|
|
112
|
+
/**
|
|
113
|
+
* Snapshot kind for rollups (`analytics_daily_snapshots`).
|
|
114
|
+
*/
|
|
115
|
+
export const ANALYTICS_SNAPSHOT_KINDS = {
|
|
116
|
+
TENANT: 'tenant',
|
|
117
|
+
PLATFORM: 'platform',
|
|
118
|
+
};
|
|
119
|
+
/**
|
|
120
|
+
* System flag keys (Prisma `system_flags`). `analytics_rollup_initialized`
|
|
121
|
+
* gates retention deletes until first nightly rollup succeeds (§3.4, §6.7).
|
|
122
|
+
*/
|
|
123
|
+
export const ANALYTICS_SYSTEM_FLAGS = {
|
|
124
|
+
ROLLUP_INITIALIZED: 'analytics_rollup_initialized',
|
|
125
|
+
};
|
|
126
|
+
//# sourceMappingURL=analyticsEvents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyticsEvents.js","sourceRoot":"","sources":["../src/analyticsEvents.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Analytics explore caps — shared across backend and admin UI.
|
|
3
|
+
*
|
|
4
|
+
* Single source of truth for date-span limits, export row caps, and
|
|
5
|
+
* drilldown pagination defaults (plan v1.3.1).
|
|
6
|
+
*/
|
|
7
|
+
export type ExploreCallerKind = 'admin_default' | 'admin_detailed_manage' | 'dev_single_tenant' | 'dev_scope_all';
|
|
8
|
+
export interface ExploreCapsForCaller {
|
|
9
|
+
readonly maxDateSpanDays: number;
|
|
10
|
+
readonly maxExportRows: number;
|
|
11
|
+
readonly clampLast5Years: boolean;
|
|
12
|
+
}
|
|
13
|
+
export declare const ANALYTICS_EXPLORE_CAPS: Readonly<{
|
|
14
|
+
readonly admin_default: Readonly<{
|
|
15
|
+
maxDateSpanDays: 90;
|
|
16
|
+
maxExportRows: 50000;
|
|
17
|
+
clampLast5Years: true;
|
|
18
|
+
}>;
|
|
19
|
+
readonly admin_detailed_manage: Readonly<{
|
|
20
|
+
maxDateSpanDays: 1825;
|
|
21
|
+
maxExportRows: 50000;
|
|
22
|
+
clampLast5Years: false;
|
|
23
|
+
}>;
|
|
24
|
+
readonly dev_single_tenant: Readonly<{
|
|
25
|
+
maxDateSpanDays: 1825;
|
|
26
|
+
maxExportRows: 50000;
|
|
27
|
+
clampLast5Years: false;
|
|
28
|
+
}>;
|
|
29
|
+
readonly dev_scope_all: Readonly<{
|
|
30
|
+
maxDateSpanDays: 31;
|
|
31
|
+
maxExportRows: 10000;
|
|
32
|
+
clampLast5Years: true;
|
|
33
|
+
}>;
|
|
34
|
+
}>;
|
|
35
|
+
export declare const ANALYTICS_MAX_DISTINCT_EVENT_NAMES_PER_SESSION: 40;
|
|
36
|
+
export declare const ANALYTICS_DRILLDOWN_DEFAULT_PAGE_SIZE: 50;
|
|
37
|
+
export declare const ANALYTICS_DRILLDOWN_MAX_PAGE_SIZE: 200;
|
|
38
|
+
export declare const ANALYTICS_EXPLORE_SLOW_QUERY_MS: 800;
|
|
39
|
+
export declare const ANALYTICS_EXPLORE_STATEMENT_TIMEOUT_MS: 20000;
|
|
40
|
+
export declare function computeUtcDateSpanDaysInclusive(startDate: string, endDate: string): number;
|
|
41
|
+
//# sourceMappingURL=analyticsExploreCaps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyticsExploreCaps.d.ts","sourceRoot":"","sources":["../src/analyticsExploreCaps.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,iBAAiB,GACzB,eAAe,GACf,uBAAuB,GACvB,mBAAmB,GACnB,eAAe,CAAC;AAEpB,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;CACnC;AAED,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;EAqB4C,CAAC;AAEhF,eAAO,MAAM,8CAA8C,EAAG,EAAW,CAAC;AAC1E,eAAO,MAAM,qCAAqC,EAAG,EAAW,CAAC;AACjE,eAAO,MAAM,iCAAiC,EAAG,GAAY,CAAC;AAC9D,eAAO,MAAM,+BAA+B,EAAG,GAAY,CAAC;AAC5D,eAAO,MAAM,sCAAsC,EAAG,KAAe,CAAC;AAEtE,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,MAAM,CAOR"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Analytics explore caps — shared across backend and admin UI.
|
|
3
|
+
*
|
|
4
|
+
* Single source of truth for date-span limits, export row caps, and
|
|
5
|
+
* drilldown pagination defaults (plan v1.3.1).
|
|
6
|
+
*/
|
|
7
|
+
export const ANALYTICS_EXPLORE_CAPS = Object.freeze({
|
|
8
|
+
admin_default: Object.freeze({
|
|
9
|
+
maxDateSpanDays: 90,
|
|
10
|
+
maxExportRows: 50_000,
|
|
11
|
+
clampLast5Years: true,
|
|
12
|
+
}),
|
|
13
|
+
admin_detailed_manage: Object.freeze({
|
|
14
|
+
maxDateSpanDays: 1825,
|
|
15
|
+
maxExportRows: 50_000,
|
|
16
|
+
clampLast5Years: false,
|
|
17
|
+
}),
|
|
18
|
+
dev_single_tenant: Object.freeze({
|
|
19
|
+
maxDateSpanDays: 1825,
|
|
20
|
+
maxExportRows: 50_000,
|
|
21
|
+
clampLast5Years: false,
|
|
22
|
+
}),
|
|
23
|
+
dev_scope_all: Object.freeze({
|
|
24
|
+
maxDateSpanDays: 31,
|
|
25
|
+
maxExportRows: 10_000,
|
|
26
|
+
clampLast5Years: true,
|
|
27
|
+
}),
|
|
28
|
+
});
|
|
29
|
+
export const ANALYTICS_MAX_DISTINCT_EVENT_NAMES_PER_SESSION = 40;
|
|
30
|
+
export const ANALYTICS_DRILLDOWN_DEFAULT_PAGE_SIZE = 50;
|
|
31
|
+
export const ANALYTICS_DRILLDOWN_MAX_PAGE_SIZE = 200;
|
|
32
|
+
export const ANALYTICS_EXPLORE_SLOW_QUERY_MS = 800;
|
|
33
|
+
export const ANALYTICS_EXPLORE_STATEMENT_TIMEOUT_MS = 20_000;
|
|
34
|
+
export function computeUtcDateSpanDaysInclusive(startDate, endDate) {
|
|
35
|
+
const start = Date.parse(`${startDate}T00:00:00.000Z`);
|
|
36
|
+
const end = Date.parse(`${endDate}T00:00:00.000Z`);
|
|
37
|
+
if (!Number.isFinite(start) || !Number.isFinite(end) || end < start) {
|
|
38
|
+
return Number.POSITIVE_INFINITY;
|
|
39
|
+
}
|
|
40
|
+
return Math.floor((end - start) / 86_400_000) + 1;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=analyticsExploreCaps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyticsExploreCaps.js","sourceRoot":"","sources":["../src/analyticsExploreCaps.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAcH,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,CAAC;IAClD,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC;QAC3B,eAAe,EAAE,EAAE;QACnB,aAAa,EAAE,MAAM;QACrB,eAAe,EAAE,IAAI;KACtB,CAAC;IACF,qBAAqB,EAAE,MAAM,CAAC,MAAM,CAAC;QACnC,eAAe,EAAE,IAAI;QACrB,aAAa,EAAE,MAAM;QACrB,eAAe,EAAE,KAAK;KACvB,CAAC;IACF,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC;QAC/B,eAAe,EAAE,IAAI;QACrB,aAAa,EAAE,MAAM;QACrB,eAAe,EAAE,KAAK;KACvB,CAAC;IACF,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC;QAC3B,eAAe,EAAE,EAAE;QACnB,aAAa,EAAE,MAAM;QACrB,eAAe,EAAE,IAAI;KACtB,CAAC;CACM,CAAqE,CAAC;AAEhF,MAAM,CAAC,MAAM,8CAA8C,GAAG,EAAW,CAAC;AAC1E,MAAM,CAAC,MAAM,qCAAqC,GAAG,EAAW,CAAC;AACjE,MAAM,CAAC,MAAM,iCAAiC,GAAG,GAAY,CAAC;AAC9D,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAY,CAAC;AAC5D,MAAM,CAAC,MAAM,sCAAsC,GAAG,MAAe,CAAC;AAEtE,MAAM,UAAU,+BAA+B,CAC7C,SAAiB,EACjB,OAAe;IAEf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,SAAS,gBAAgB,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,OAAO,gBAAgB,CAAC,CAAC;IACnD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;QACpE,OAAO,MAAM,CAAC,iBAAiB,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;AACpD,CAAC"}
|
package/dist/api.d.ts
CHANGED
|
@@ -24,7 +24,6 @@ export declare const API_ENDPOINTS: {
|
|
|
24
24
|
readonly PAYMENT_POST_KIOSK_HANDOFF: "/api/payments/post-kiosk-handoff/:paymentId";
|
|
25
25
|
readonly CONSENT_ANALYTICS: "/api/consents/analytics";
|
|
26
26
|
readonly CONSENT_MARKETING: "/api/consents/marketing";
|
|
27
|
-
readonly ANALYTICS_EVENTS: "/api/analytics/events";
|
|
28
27
|
readonly ADMIN_LOGIN: "/api/admin/login";
|
|
29
28
|
readonly ADMIN_PRODUCTS: "/api/admin/products";
|
|
30
29
|
readonly ADMIN_PRODUCTS_INVENTORY: "/api/admin/products/inventory/:kioskId";
|
package/dist/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;IAqBxB,2EAA2E
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;IAqBxB,2EAA2E;;;;;;;;;;;;;;;;;;;CAwBnE,CAAC;AAIX;;;;;;;GAOG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAC,CAAS;gBAGvB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM;IAWlB,OAAO,CAAC,wBAAwB;YAalB,OAAO;IAgDf,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAIpC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAOrD,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAOpD,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAG9C;AAED;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAC1B,UAAU,MAAM,EAChB,cAAc,MAAM,EACpB,aAAa,MAAM,EACnB,UAAU,MAAM,KACf,SAKF,CAAC"}
|
package/dist/api.js
CHANGED
|
@@ -29,7 +29,6 @@ export const API_ENDPOINTS = {
|
|
|
29
29
|
// Consent endpoints
|
|
30
30
|
CONSENT_ANALYTICS: '/api/consents/analytics',
|
|
31
31
|
CONSENT_MARKETING: '/api/consents/marketing',
|
|
32
|
-
ANALYTICS_EVENTS: '/api/analytics/events',
|
|
33
32
|
// Admin endpoints
|
|
34
33
|
ADMIN_LOGIN: '/api/admin/login',
|
|
35
34
|
ADMIN_PRODUCTS: '/api/admin/products',
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,4BAA4B;AAE5B,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,oBAAoB;IACpB,QAAQ,EAAE,eAAe;IACzB,aAAa,EAAE,yBAAyB;IACxC,sBAAsB,EAAE,8BAA8B;IAEtD,oBAAoB;IACpB,iBAAiB,EAAE,yBAAyB;IAC5C,oBAAoB,EAAE,uCAAuC;IAC7D,gBAAgB,EAAE,wBAAwB;IAC1C,cAAc,EAAE,sBAAsB;IACtC,wBAAwB,EAAE,gCAAgC;IAC1D,uBAAuB,EAAE,+BAA+B;IAExD,qCAAqC;IACrC,sBAAsB,EAAE,8BAA8B;IACtD,sBAAsB,EAAE,yCAAyC;IACjE,sBAAsB,EAAE,8BAA8B;IACtD,uBAAuB,EAAE,+BAA+B;IACxD,6BAA6B,EAAE,qCAAqC;IACpE,gCAAgC,EAAE,wCAAwC;IAC1E,2EAA2E;IAC3E,0BAA0B,EAAE,6CAA6C;IAEzE,oBAAoB;IACpB,iBAAiB,EAAE,yBAAyB;IAC5C,iBAAiB,EAAE,yBAAyB;IAC5C,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,4 +10,6 @@ export * from './api';
|
|
|
10
10
|
export * from './errors';
|
|
11
11
|
export * from './components/DatabaseUnavailable';
|
|
12
12
|
export * from './hooks/useDatabaseHealth';
|
|
13
|
+
export * from './analyticsEvents';
|
|
14
|
+
export * from './analyticsExploreCaps';
|
|
13
15
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,kCAAkC,CAAC;AACjD,cAAc,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,kCAAkC,CAAC;AACjD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -10,4 +10,6 @@ export * from './api';
|
|
|
10
10
|
export * from './errors';
|
|
11
11
|
export * from './components/DatabaseUnavailable';
|
|
12
12
|
export * from './hooks/useDatabaseHealth';
|
|
13
|
+
export * from './analyticsEvents';
|
|
14
|
+
export * from './analyticsExploreCaps';
|
|
13
15
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,kCAAkC,CAAC;AACjD,cAAc,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,kCAAkC,CAAC;AACjD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pi-kiosk-shared",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.33",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Shared types, API contracts, and error classes for Pi Kiosk system",
|
|
6
6
|
"keywords": [
|
|
@@ -23,6 +23,11 @@
|
|
|
23
23
|
"import": "./dist/index.js",
|
|
24
24
|
"require": "./dist/index.js",
|
|
25
25
|
"types": "./dist/index.d.ts"
|
|
26
|
+
},
|
|
27
|
+
"./analyticsExploreCaps": {
|
|
28
|
+
"import": "./dist/analyticsExploreCaps.js",
|
|
29
|
+
"require": "./dist/analyticsExploreCaps.js",
|
|
30
|
+
"types": "./dist/analyticsExploreCaps.d.ts"
|
|
26
31
|
}
|
|
27
32
|
},
|
|
28
33
|
"scripts": {
|