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:
Alireza Hassani
2026-08-26 10:13:06 +03:30
co-authored by Cursor
parent 6cd0b009ef
commit 92601ae729
39 changed files with 1013 additions and 198 deletions
@@ -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)