Add page-view analytics, product counters, SSL expiry, and business renewal.
Auto-count storefront page views with 6-month event retention and lifetime counters, track product visit/cart/sale stats, persist SSL cert expiry with daily probes, and support owner titles plus annual contract renewal. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
co-authored by
Cursor
parent
6cd0b009ef
commit
92601ae729
@@ -1,10 +1,18 @@
|
||||
import { Type } from 'class-transformer';
|
||||
import { IsIn, IsInt, IsOptional, Max, Min } from 'class-validator';
|
||||
import { WEBSITE_VIEW_KINDS, type WebsiteViewKind } from '../website-analytics.types';
|
||||
import { WEBSITE_PAGE_KINDS } from '../website-analytics.types';
|
||||
|
||||
const ACTIVITY_KINDS = [
|
||||
...WEBSITE_PAGE_KINDS,
|
||||
'website',
|
||||
'product',
|
||||
'portfolio',
|
||||
'blog',
|
||||
] as const;
|
||||
|
||||
export class ViewActivityQueryDto {
|
||||
@IsIn([...WEBSITE_VIEW_KINDS])
|
||||
kind!: WebsiteViewKind;
|
||||
@IsIn([...ACTIVITY_KINDS])
|
||||
kind!: (typeof ACTIVITY_KINDS)[number];
|
||||
|
||||
@IsOptional()
|
||||
@Type(() => Number)
|
||||
|
||||
Reference in New Issue
Block a user