@happyvertical/smrt-analytics 0.54.2 → 0.54.4

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/index.js CHANGED
@@ -2,7 +2,7 @@ import { ObjectRegistry, SmrtCollection, SmrtObject, field, foreignKey, smrt } f
2
2
  import { definePrompt, resolvePrompt } from "@happyvertical/smrt-prompts";
3
3
  import { TenantScoped, tenantId } from "@happyvertical/smrt-tenancy";
4
4
  //#region src/__smrt-register__.ts
5
- ObjectRegistry.registerPackageManifest(JSON.parse("{\"version\":\"1.0.0\",\"timestamp\":0,\"packageName\":\"@happyvertical/smrt-analytics\",\"packageVersion\":\"0.54.2\",\"objects\":{\"@happyvertical/smrt-analytics:AnalyticsDataStreamCollection\":{\"name\":\"analyticsdatastreamcollection\",\"className\":\"AnalyticsDataStreamCollection\",\"qualifiedName\":\"@happyvertical/smrt-analytics:AnalyticsDataStreamCollection\",\"collection\":\"analyticsdatastreams\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/analytics/src/collections/AnalyticsDataStreamCollection.ts\",\"packageName\":\"@happyvertical/smrt-analytics\",\"fields\":{},\"methods\":{\"findByProperty\":{\"name\":\"findByProperty\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsDataStream[]>\",\"isStatic\":false,\"isPublic\":true},\"findByExternalId\":{\"name\":\"findByExternalId\",\"async\":true,\"parameters\":[{\"name\":\"externalId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsDataStream | null>\",\"isStatic\":false,\"isPublic\":true},\"findByMeasurementId\":{\"name\":\"findByMeasurementId\",\"async\":true,\"parameters\":[{\"name\":\"measurementId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsDataStream | null>\",\"isStatic\":false,\"isPublic\":true},\"findByType\":{\"name\":\"findByType\",\"async\":true,\"parameters\":[{\"name\":\"streamType\",\"type\":\"DataStreamType\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsDataStream[]>\",\"isStatic\":false,\"isPublic\":true},\"findWebStreams\":{\"name\":\"findWebStreams\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsDataStream[]>\",\"isStatic\":false,\"isPublic\":true},\"findIOSStreams\":{\"name\":\"findIOSStreams\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsDataStream[]>\",\"isStatic\":false,\"isPublic\":true},\"findAndroidStreams\":{\"name\":\"findAndroidStreams\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsDataStream[]>\",\"isStatic\":false,\"isPublic\":true},\"findMobileStreams\":{\"name\":\"findMobileStreams\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsDataStream[]>\",\"isStatic\":false,\"isPublic\":true},\"findByStatus\":{\"name\":\"findByStatus\",\"async\":true,\"parameters\":[{\"name\":\"status\",\"type\":\"DataStreamStatus\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsDataStream[]>\",\"isStatic\":false,\"isPublic\":true},\"findActive\":{\"name\":\"findActive\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsDataStream[]>\",\"isStatic\":false,\"isPublic\":true},\"findActiveByProperty\":{\"name\":\"findActiveByProperty\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsDataStream[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"AnalyticsDataStream\",\"exportName\":\"AnalyticsDataStreamCollection\",\"collectionExportName\":\"AnalyticsDataStreamCollectionCollection\",\"schema\":{\"tableName\":\"analytics_data_streams\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"analytics_data_streams\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"property_id\\\" UUID,\\n \\\"display_name\\\" TEXT DEFAULT '',\\n \\\"stream_type\\\" TEXT,\\n \\\"external_id\\\" TEXT DEFAULT '',\\n \\\"measurement_id\\\" TEXT DEFAULT '',\\n \\\"firebase_app_id\\\" TEXT DEFAULT '',\\n \\\"default_uri\\\" TEXT DEFAULT '',\\n \\\"bundle_id\\\" TEXT DEFAULT '',\\n \\\"package_name\\\" TEXT DEFAULT '',\\n \\\"status\\\" TEXT,\\n \\\"enhanced_measurement\\\" BOOLEAN DEFAULT TRUE\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false},\"property_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"analytics_properties\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"display_name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"stream_type\":{\"type\":\"TEXT\",\"notNull\":false},\"external_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"measurement_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"firebase_app_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"default_uri\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"bundle_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"package_name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"status\":{\"type\":\"TEXT\",\"notNull\":false},\"enhanced_measurement\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":true}},\"indexes\":[{\"name\":\"analytics_data_streams_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"analytics_data_streams_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"analytics_data_streams_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"analytics_data_streams_property_id_idx\",\"columns\":[\"property_id\"]}],\"version\":\"851609ba\"},\"importPath\":\"@happyvertical/smrt-analytics\"},\"@happyvertical/smrt-analytics:AnalyticsEventCollection\":{\"name\":\"analyticseventcollection\",\"className\":\"AnalyticsEventCollection\",\"qualifiedName\":\"@happyvertical/smrt-analytics:AnalyticsEventCollection\",\"collection\":\"analyticsevents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/analytics/src/collections/AnalyticsEventCollection.ts\",\"packageName\":\"@happyvertical/smrt-analytics\",\"fields\":{},\"methods\":{\"findByProperty\":{\"name\":\"findByProperty\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findByEventName\":{\"name\":\"findByEventName\",\"async\":true,\"parameters\":[{\"name\":\"eventName\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findByClientId\":{\"name\":\"findByClientId\",\"async\":true,\"parameters\":[{\"name\":\"clientId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findByUserId\":{\"name\":\"findByUserId\",\"async\":true,\"parameters\":[{\"name\":\"userId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findByStatus\":{\"name\":\"findByStatus\",\"async\":true,\"parameters\":[{\"name\":\"status\",\"type\":\"TrackingEventStatus\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findPending\":{\"name\":\"findPending\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findSent\":{\"name\":\"findSent\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findFailed\":{\"name\":\"findFailed\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findForRetry\":{\"name\":\"findForRetry\",\"async\":true,\"parameters\":[{\"name\":\"maxRetries\",\"type\":\"number\",\"optional\":true}],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findPendingByProperty\":{\"name\":\"findPendingByProperty\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findByDateRange\":{\"name\":\"findByDateRange\",\"async\":true,\"parameters\":[{\"name\":\"startDate\",\"type\":\"Date\",\"optional\":false},{\"name\":\"endDate\",\"type\":\"Date\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findConversions\":{\"name\":\"findConversions\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"findPageviews\":{\"name\":\"findPageviews\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":true}],\"returnType\":\"Promise<AnalyticsEvent[]>\",\"isStatic\":false,\"isPublic\":true},\"countByEventName\":{\"name\":\"countByEventName\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<Map<string, number>>\",\"isStatic\":false,\"isPublic\":true},\"getPropertyStats\":{\"name\":\"getPropertyStats\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"getPropertyStatsWithTrend\":{\"name\":\"getPropertyStatsWithTrend\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":false},{\"name\":\"now\",\"type\":\"Date\",\"optional\":true},{\"name\":\"timeZone\",\"type\":\"string\",\"optional\":true,\"default\":\"UTC\"}],\"returnType\":\"Promise<PropertyStatsWithTrend>\",\"isStatic\":false,\"isPublic\":true},\"getBatchPropertyStats\":{\"name\":\"getBatchPropertyStats\",\"async\":true,\"parameters\":[{\"name\":\"propertyIds\",\"type\":\"string[]\",\"optional\":false},{\"name\":\"now\",\"type\":\"Date\",\"optional\":true},{\"name\":\"timeZone\",\"type\":\"string\",\"optional\":true,\"default\":\"UTC\"}],\"returnType\":\"Promise<Map<string, PropertyStatsWithTrend>>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"AnalyticsEvent\",\"exportName\":\"AnalyticsEventCollection\",\"collectionExportName\":\"AnalyticsEventCollectionCollection\",\"schema\":{\"tableName\":\"analytics_events\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"analytics_events\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"property_id\\\" UUID,\\n \\\"event_name\\\" TEXT DEFAULT '',\\n \\\"client_id\\\" TEXT DEFAULT '',\\n \\\"user_id\\\" TEXT DEFAULT '',\\n \\\"params\\\" TEXT DEFAULT '{}',\\n \\\"event_timestamp\\\" TIMESTAMP,\\n \\\"status\\\" TEXT,\\n \\\"sent_at\\\" TIMESTAMP,\\n \\\"error_message\\\" TEXT DEFAULT '',\\n \\\"retry_count\\\" INTEGER DEFAULT 0,\\n \\\"non_personalized_ads\\\" BOOLEAN DEFAULT FALSE,\\n \\\"session_id\\\" TEXT DEFAULT '',\\n \\\"page_path\\\" TEXT DEFAULT '',\\n \\\"page_title\\\" TEXT DEFAULT '',\\n \\\"user_agent\\\" TEXT DEFAULT '',\\n \\\"ip_address\\\" TEXT DEFAULT ''\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false},\"property_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"analytics_properties\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"event_name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"client_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"user_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"params\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"{}\"},\"event_timestamp\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false},\"sent_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"error_message\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"retry_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"non_personalized_ads\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":false},\"session_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"page_path\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"page_title\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"user_agent\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"ip_address\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"}},\"indexes\":[{\"name\":\"analytics_events_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"analytics_events_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"analytics_events_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"analytics_events_property_id_idx\",\"columns\":[\"property_id\"]}],\"version\":\"bee09e1d\"},\"importPath\":\"@happyvertical/smrt-analytics\"},\"@happyvertical/smrt-analytics:AnalyticsPropertyCollection\":{\"name\":\"analyticspropertycollection\",\"className\":\"AnalyticsPropertyCollection\",\"qualifiedName\":\"@happyvertical/smrt-analytics:AnalyticsPropertyCollection\",\"collection\":\"analyticsproperties\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/analytics/src/collections/AnalyticsPropertyCollection.ts\",\"packageName\":\"@happyvertical/smrt-analytics\",\"fields\":{},\"methods\":{\"findByExternalId\":{\"name\":\"findByExternalId\",\"async\":true,\"parameters\":[{\"name\":\"externalId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsProperty | null>\",\"isStatic\":false,\"isPublic\":true},\"findByMeasurementId\":{\"name\":\"findByMeasurementId\",\"async\":true,\"parameters\":[{\"name\":\"measurementId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsProperty | null>\",\"isStatic\":false,\"isPublic\":true},\"findBySiteDomain\":{\"name\":\"findBySiteDomain\",\"async\":true,\"parameters\":[{\"name\":\"siteDomain\",\"type\":\"string\",\"optional\":false},{\"name\":\"provider\",\"type\":\"AnalyticsProvider\",\"optional\":true}],\"returnType\":\"Promise<AnalyticsProperty | null>\",\"isStatic\":false,\"isPublic\":true},\"findByProvider\":{\"name\":\"findByProvider\",\"async\":true,\"parameters\":[{\"name\":\"provider\",\"type\":\"AnalyticsProvider\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsProperty[]>\",\"isStatic\":false,\"isPublic\":true},\"findGA4Properties\":{\"name\":\"findGA4Properties\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsProperty[]>\",\"isStatic\":false,\"isPublic\":true},\"findPlausibleSites\":{\"name\":\"findPlausibleSites\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsProperty[]>\",\"isStatic\":false,\"isPublic\":true},\"findMatomoSites\":{\"name\":\"findMatomoSites\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsProperty[]>\",\"isStatic\":false,\"isPublic\":true},\"findByStatus\":{\"name\":\"findByStatus\",\"async\":true,\"parameters\":[{\"name\":\"status\",\"type\":\"AnalyticsPropertyStatus\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsProperty[]>\",\"isStatic\":false,\"isPublic\":true},\"findActive\":{\"name\":\"findActive\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsProperty[]>\",\"isStatic\":false,\"isPublic\":true},\"findNeedingSync\":{\"name\":\"findNeedingSync\",\"async\":true,\"parameters\":[{\"name\":\"hoursAgo\",\"type\":\"number\",\"optional\":true}],\"returnType\":\"Promise<AnalyticsProperty[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"AnalyticsProperty\",\"exportName\":\"AnalyticsPropertyCollection\",\"collectionExportName\":\"AnalyticsPropertyCollectionCollection\",\"schema\":{\"tableName\":\"analytics_properties\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"analytics_properties\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"display_name\\\" TEXT DEFAULT '',\\n \\\"provider\\\" TEXT,\\n \\\"external_id\\\" TEXT DEFAULT '',\\n \\\"measurement_id\\\" TEXT DEFAULT '',\\n \\\"api_secret\\\" TEXT DEFAULT '',\\n \\\"site_domain\\\" TEXT DEFAULT '',\\n \\\"time_zone\\\" TEXT DEFAULT 'America/Los_Angeles',\\n \\\"currency_code\\\" TEXT DEFAULT 'USD',\\n \\\"industry_category\\\" TEXT DEFAULT '',\\n \\\"service_level\\\" TEXT DEFAULT 'STANDARD',\\n \\\"status\\\" TEXT,\\n \\\"last_sync_at\\\" TIMESTAMP,\\n \\\"provider_metadata\\\" TEXT DEFAULT '{}'\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"display_name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"provider\":{\"type\":\"TEXT\",\"notNull\":false},\"external_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"measurement_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"api_secret\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"site_domain\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"time_zone\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"America/Los_Angeles\"},\"currency_code\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"USD\"},\"industry_category\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"service_level\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"STANDARD\"},\"status\":{\"type\":\"TEXT\",\"notNull\":false},\"last_sync_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"provider_metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"{}\"}},\"indexes\":[{\"name\":\"analytics_properties_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"analytics_properties_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"analytics_properties_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"f38a20b9\"},\"importPath\":\"@happyvertical/smrt-analytics\"},\"@happyvertical/smrt-analytics:AnalyticsReportCollection\":{\"name\":\"analyticsreportcollection\",\"className\":\"AnalyticsReportCollection\",\"qualifiedName\":\"@happyvertical/smrt-analytics:AnalyticsReportCollection\",\"collection\":\"analyticsreports\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/analytics/src/collections/AnalyticsReportCollection.ts\",\"packageName\":\"@happyvertical/smrt-analytics\",\"fields\":{},\"methods\":{\"findByProperty\":{\"name\":\"findByProperty\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true},\"findByStatus\":{\"name\":\"findByStatus\",\"async\":true,\"parameters\":[{\"name\":\"status\",\"type\":\"ReportStatus\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true},\"findDrafts\":{\"name\":\"findDrafts\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true},\"findScheduled\":{\"name\":\"findScheduled\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true},\"findCompleted\":{\"name\":\"findCompleted\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true},\"findFailed\":{\"name\":\"findFailed\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true},\"findByFrequency\":{\"name\":\"findByFrequency\",\"async\":true,\"parameters\":[{\"name\":\"frequency\",\"type\":\"ReportFrequency\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true},\"findRecurring\":{\"name\":\"findRecurring\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true},\"findDue\":{\"name\":\"findDue\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true},\"findByPropertyAndStatus\":{\"name\":\"findByPropertyAndStatus\",\"async\":true,\"parameters\":[{\"name\":\"propertyId\",\"type\":\"string\",\"optional\":false},{\"name\":\"status\",\"type\":\"ReportStatus\",\"optional\":false}],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true},\"findRecentlyRun\":{\"name\":\"findRecentlyRun\",\"async\":true,\"parameters\":[{\"name\":\"hoursAgo\",\"type\":\"number\",\"optional\":true}],\"returnType\":\"Promise<AnalyticsReport[]>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{},\"extends\":\"SmrtCollection\",\"extendsTypeArg\":\"AnalyticsReport\",\"exportName\":\"AnalyticsReportCollection\",\"collectionExportName\":\"AnalyticsReportCollectionCollection\",\"schema\":{\"tableName\":\"analytics_reports\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"analytics_reports\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"property_id\\\" UUID,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"description\\\" TEXT DEFAULT '',\\n \\\"dimensions\\\" TEXT DEFAULT '[]',\\n \\\"metrics\\\" TEXT DEFAULT '[]',\\n \\\"date_range_start\\\" TEXT DEFAULT '7daysAgo',\\n \\\"date_range_end\\\" TEXT DEFAULT 'today',\\n \\\"dimension_filter\\\" TEXT DEFAULT '',\\n \\\"metric_filter\\\" TEXT DEFAULT '',\\n \\\"order_by\\\" TEXT DEFAULT '[]',\\n \\\"max_results\\\" INTEGER DEFAULT 0,\\n \\\"status\\\" TEXT,\\n \\\"frequency\\\" TEXT,\\n \\\"last_run_at\\\" TIMESTAMP,\\n \\\"next_run_at\\\" TIMESTAMP,\\n \\\"result_data\\\" TEXT DEFAULT '',\\n \\\"row_count\\\" INTEGER DEFAULT 0,\\n \\\"last_error\\\" TEXT DEFAULT ''\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false},\"property_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"analytics_properties\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"dimensions\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"[]\"},\"metrics\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"[]\"},\"date_range_start\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"7daysAgo\"},\"date_range_end\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"today\"},\"dimension_filter\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"metric_filter\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"order_by\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"[]\"},\"max_results\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"status\":{\"type\":\"TEXT\",\"notNull\":false},\"frequency\":{\"type\":\"TEXT\",\"notNull\":false},\"last_run_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"next_run_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"result_data\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"row_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"last_error\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"}},\"indexes\":[{\"name\":\"analytics_reports_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"analytics_reports_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"analytics_reports_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"analytics_reports_property_id_idx\",\"columns\":[\"property_id\"]}],\"version\":\"22ce0f1c\"},\"importPath\":\"@happyvertical/smrt-analytics\"},\"@happyvertical/smrt-analytics:AnalyticsDataStream\":{\"name\":\"analyticsdatastream\",\"className\":\"AnalyticsDataStream\",\"qualifiedName\":\"@happyvertical/smrt-analytics:AnalyticsDataStream\",\"collection\":\"analyticsdatastreams\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsDataStream.ts\",\"packageName\":\"@happyvertical/smrt-analytics\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"propertyId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"AnalyticsProperty\"},\"displayName\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"streamType\":{\"type\":\"text\",\"required\":false},\"externalId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"measurementId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"firebaseAppId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"defaultUri\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"bundleId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"packageName\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"status\":{\"type\":\"text\",\"required\":false},\"enhancedMeasurement\":{\"type\":\"boolean\",\"required\":false,\"default\":true}},\"methods\":{\"isWeb\":{\"name\":\"isWeb\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isIOS\":{\"name\":\"isIOS\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isAndroid\":{\"name\":\"isAndroid\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isMobileApp\":{\"name\":\"isMobileApp\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getPlatformId\":{\"name\":\"getPlatformId\",\"async\":false,\"parameters\":[],\"returnType\":\"string\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"mcp\":{\"include\":[\"list\",\"get\"]},\"cli\":{\"skipApiCheck\":true},\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"]},\"extends\":\"SmrtObject\",\"exportName\":\"AnalyticsDataStream\",\"collectionExportName\":\"AnalyticsDataStreamCollection\",\"schema\":{\"tableName\":\"analytics_data_streams\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"analytics_data_streams\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"property_id\\\" UUID,\\n \\\"display_name\\\" TEXT DEFAULT '',\\n \\\"stream_type\\\" TEXT,\\n \\\"external_id\\\" TEXT DEFAULT '',\\n \\\"measurement_id\\\" TEXT DEFAULT '',\\n \\\"firebase_app_id\\\" TEXT DEFAULT '',\\n \\\"default_uri\\\" TEXT DEFAULT '',\\n \\\"bundle_id\\\" TEXT DEFAULT '',\\n \\\"package_name\\\" TEXT DEFAULT '',\\n \\\"status\\\" TEXT,\\n \\\"enhanced_measurement\\\" BOOLEAN DEFAULT TRUE\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false},\"property_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"analytics_properties\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"display_name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"stream_type\":{\"type\":\"TEXT\",\"notNull\":false},\"external_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"measurement_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"firebase_app_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"default_uri\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"bundle_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"package_name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"status\":{\"type\":\"TEXT\",\"notNull\":false},\"enhanced_measurement\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":true}},\"indexes\":[{\"name\":\"analytics_data_streams_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"analytics_data_streams_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"analytics_data_streams_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"analytics_data_streams_property_id_idx\",\"columns\":[\"property_id\"]}],\"version\":\"851609ba\"},\"importPath\":\"@happyvertical/smrt-analytics\"},\"@happyvertical/smrt-analytics:AnalyticsEvent\":{\"name\":\"analyticsevent\",\"className\":\"AnalyticsEvent\",\"qualifiedName\":\"@happyvertical/smrt-analytics:AnalyticsEvent\",\"collection\":\"analyticsevents\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsEvent.ts\",\"packageName\":\"@happyvertical/smrt-analytics\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"propertyId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"AnalyticsProperty\"},\"eventName\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"clientId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"userId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"params\":{\"type\":\"text\",\"required\":false,\"default\":\"{}\"},\"eventTimestamp\":{\"type\":\"datetime\",\"required\":false},\"status\":{\"type\":\"text\",\"required\":false},\"sentAt\":{\"type\":\"datetime\",\"required\":false},\"errorMessage\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"retryCount\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"nonPersonalizedAds\":{\"type\":\"boolean\",\"required\":false,\"default\":false},\"sessionId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"pagePath\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"pageTitle\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"userAgent\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"ipAddress\":{\"type\":\"text\",\"required\":false,\"default\":\"\"}},\"methods\":{\"getParams\":{\"name\":\"getParams\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string, string | number | boolean>\",\"isStatic\":false,\"isPublic\":true},\"setParams\":{\"name\":\"setParams\",\"async\":false,\"parameters\":[{\"name\":\"params\",\"type\":\"Record<string, string | number | boolean>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"addParam\":{\"name\":\"addParam\",\"async\":false,\"parameters\":[{\"name\":\"key\",\"type\":\"string\",\"optional\":false},{\"name\":\"value\",\"type\":\"string | number | boolean\",\"optional\":false,\"unionBranches\":[{\"type\":\"string\"},{\"type\":\"number\"},{\"type\":\"boolean\"}]}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"isPageview\":{\"name\":\"isPageview\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isConversion\":{\"name\":\"isConversion\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"markSent\":{\"name\":\"markSent\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markFailed\":{\"name\":\"markFailed\",\"async\":false,\"parameters\":[{\"name\":\"error\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"resetForRetry\":{\"name\":\"resetForRetry\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"shouldRetry\":{\"name\":\"shouldRetry\",\"async\":false,\"parameters\":[{\"name\":\"maxRetries\",\"type\":\"number\",\"optional\":true}],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"toTrackEvent\":{\"name\":\"toTrackEvent\",\"async\":false,\"parameters\":[],\"returnType\":\"object\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":{\"include\":[\"list\",\"get\",\"create\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"track\"]},\"cli\":{\"skipApiCheck\":true},\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"]},\"extends\":\"SmrtObject\",\"exportName\":\"AnalyticsEvent\",\"collectionExportName\":\"AnalyticsEventCollection\",\"schema\":{\"tableName\":\"analytics_events\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"analytics_events\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"property_id\\\" UUID,\\n \\\"event_name\\\" TEXT DEFAULT '',\\n \\\"client_id\\\" TEXT DEFAULT '',\\n \\\"user_id\\\" TEXT DEFAULT '',\\n \\\"params\\\" TEXT DEFAULT '{}',\\n \\\"event_timestamp\\\" TIMESTAMP,\\n \\\"status\\\" TEXT,\\n \\\"sent_at\\\" TIMESTAMP,\\n \\\"error_message\\\" TEXT DEFAULT '',\\n \\\"retry_count\\\" INTEGER DEFAULT 0,\\n \\\"non_personalized_ads\\\" BOOLEAN DEFAULT FALSE,\\n \\\"session_id\\\" TEXT DEFAULT '',\\n \\\"page_path\\\" TEXT DEFAULT '',\\n \\\"page_title\\\" TEXT DEFAULT '',\\n \\\"user_agent\\\" TEXT DEFAULT '',\\n \\\"ip_address\\\" TEXT DEFAULT ''\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false},\"property_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"analytics_properties\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"event_name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"client_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"user_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"params\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"{}\"},\"event_timestamp\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"status\":{\"type\":\"TEXT\",\"notNull\":false},\"sent_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"error_message\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"retry_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"non_personalized_ads\":{\"type\":\"BOOLEAN\",\"notNull\":false,\"default\":false},\"session_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"page_path\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"page_title\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"user_agent\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"ip_address\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"}},\"indexes\":[{\"name\":\"analytics_events_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"analytics_events_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"analytics_events_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"analytics_events_property_id_idx\",\"columns\":[\"property_id\"]}],\"version\":\"bee09e1d\"},\"importPath\":\"@happyvertical/smrt-analytics\"},\"@happyvertical/smrt-analytics:AnalyticsProperty\":{\"name\":\"analyticsproperty\",\"className\":\"AnalyticsProperty\",\"qualifiedName\":\"@happyvertical/smrt-analytics:AnalyticsProperty\",\"collection\":\"analyticsproperties\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsProperty.ts\",\"packageName\":\"@happyvertical/smrt-analytics\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"name\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"displayName\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"provider\":{\"type\":\"text\",\"required\":false},\"externalId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"measurementId\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"apiSecret\":{\"type\":\"text\",\"required\":false,\"default\":\"\",\"_meta\":{\"sensitive\":true},\"sensitive\":true},\"siteDomain\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"timeZone\":{\"type\":\"text\",\"required\":false,\"default\":\"America/Los_Angeles\"},\"currencyCode\":{\"type\":\"text\",\"required\":false,\"default\":\"USD\"},\"industryCategory\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"serviceLevel\":{\"type\":\"text\",\"required\":false,\"default\":\"STANDARD\"},\"status\":{\"type\":\"text\",\"required\":false},\"lastSyncAt\":{\"type\":\"datetime\",\"required\":false},\"providerMetadata\":{\"type\":\"text\",\"required\":false,\"default\":\"{}\",\"_meta\":{\"sensitive\":true},\"sensitive\":true}},\"methods\":{\"isGA4\":{\"name\":\"isGA4\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isPlausible\":{\"name\":\"isPlausible\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"isMatomo\":{\"name\":\"isMatomo\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"getProviderMetadata\":{\"name\":\"getProviderMetadata\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string, unknown>\",\"isStatic\":false,\"isPublic\":true},\"setProviderMetadata\":{\"name\":\"setProviderMetadata\",\"async\":false,\"parameters\":[{\"name\":\"metadata\",\"type\":\"Record<string, unknown>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markSynced\":{\"name\":\"markSynced\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"analyzePerformance\":{\"name\":\"analyzePerformance\",\"async\":true,\"parameters\":[{\"name\":\"options\",\"type\":\"object\",\"optional\":true,\"memberTypes\":[\"string\"]}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"isPerformingWell\":{\"name\":\"isPerformingWell\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"sync\",\"runReport\"]},\"cli\":{\"skipApiCheck\":true},\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"]},\"extends\":\"SmrtObject\",\"exportName\":\"AnalyticsProperty\",\"collectionExportName\":\"AnalyticsPropertyCollection\",\"schema\":{\"tableName\":\"analytics_properties\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"analytics_properties\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"display_name\\\" TEXT DEFAULT '',\\n \\\"provider\\\" TEXT,\\n \\\"external_id\\\" TEXT DEFAULT '',\\n \\\"measurement_id\\\" TEXT DEFAULT '',\\n \\\"api_secret\\\" TEXT DEFAULT '',\\n \\\"site_domain\\\" TEXT DEFAULT '',\\n \\\"time_zone\\\" TEXT DEFAULT 'America/Los_Angeles',\\n \\\"currency_code\\\" TEXT DEFAULT 'USD',\\n \\\"industry_category\\\" TEXT DEFAULT '',\\n \\\"service_level\\\" TEXT DEFAULT 'STANDARD',\\n \\\"status\\\" TEXT,\\n \\\"last_sync_at\\\" TIMESTAMP,\\n \\\"provider_metadata\\\" TEXT DEFAULT '{}'\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"display_name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"provider\":{\"type\":\"TEXT\",\"notNull\":false},\"external_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"measurement_id\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"api_secret\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"site_domain\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"time_zone\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"America/Los_Angeles\"},\"currency_code\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"USD\"},\"industry_category\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"service_level\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"STANDARD\"},\"status\":{\"type\":\"TEXT\",\"notNull\":false},\"last_sync_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"provider_metadata\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"{}\"}},\"indexes\":[{\"name\":\"analytics_properties_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"analytics_properties_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"analytics_properties_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]}],\"version\":\"f38a20b9\"},\"importPath\":\"@happyvertical/smrt-analytics\"},\"@happyvertical/smrt-analytics:AnalyticsReport\":{\"name\":\"analyticsreport\",\"className\":\"AnalyticsReport\",\"qualifiedName\":\"@happyvertical/smrt-analytics:AnalyticsReport\",\"collection\":\"analyticsreports\",\"filePath\":\"/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsReport.ts\",\"packageName\":\"@happyvertical/smrt-analytics\",\"fields\":{\"created_at\":{\"type\":\"datetime\",\"required\":false},\"updated_at\":{\"type\":\"datetime\",\"required\":false},\"tenantId\":{\"type\":\"text\",\"required\":false,\"_meta\":{\"sqlType\":\"UUID\",\"nullable\":true,\"__tenancy\":{\"isTenantIdField\":true,\"autoFilter\":true,\"required\":false,\"autoPopulate\":true,\"nullable\":true,\"mode\":\"optional\",\"field\":\"tenantId\",\"allowSuperAdminBypass\":false}}},\"propertyId\":{\"type\":\"foreignKey\",\"required\":false,\"related\":\"AnalyticsProperty\"},\"name\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"description\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"dimensions\":{\"type\":\"text\",\"required\":false,\"default\":\"[]\"},\"metrics\":{\"type\":\"text\",\"required\":false,\"default\":\"[]\"},\"dateRangeStart\":{\"type\":\"text\",\"required\":false,\"default\":\"7daysAgo\"},\"dateRangeEnd\":{\"type\":\"text\",\"required\":false,\"default\":\"today\"},\"dimensionFilter\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"metricFilter\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"orderBy\":{\"type\":\"text\",\"required\":false,\"default\":\"[]\"},\"maxResults\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"status\":{\"type\":\"text\",\"required\":false},\"frequency\":{\"type\":\"text\",\"required\":false},\"lastRunAt\":{\"type\":\"datetime\",\"required\":false},\"nextRunAt\":{\"type\":\"datetime\",\"required\":false},\"resultData\":{\"type\":\"text\",\"required\":false,\"default\":\"\"},\"rowCount\":{\"type\":\"integer\",\"required\":false,\"default\":0},\"lastError\":{\"type\":\"text\",\"required\":false,\"default\":\"\"}},\"methods\":{\"getDimensions\":{\"name\":\"getDimensions\",\"async\":false,\"parameters\":[],\"returnType\":\"Array<object>\",\"isStatic\":false,\"isPublic\":true},\"setDimensions\":{\"name\":\"setDimensions\",\"async\":false,\"parameters\":[{\"name\":\"dimensions\",\"type\":\"Array<object>\",\"optional\":false,\"memberTypes\":[\"string\"]}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getMetrics\":{\"name\":\"getMetrics\",\"async\":false,\"parameters\":[],\"returnType\":\"Array<object>\",\"isStatic\":false,\"isPublic\":true},\"setMetrics\":{\"name\":\"setMetrics\",\"async\":false,\"parameters\":[{\"name\":\"metrics\",\"type\":\"Array<object>\",\"optional\":false,\"memberTypes\":[\"string\"]}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"getResultData\":{\"name\":\"getResultData\",\"async\":false,\"parameters\":[],\"returnType\":\"Record<string, unknown> | null\",\"isStatic\":false,\"isPublic\":true},\"setResultData\":{\"name\":\"setResultData\",\"async\":false,\"parameters\":[{\"name\":\"data\",\"type\":\"Record<string, unknown>\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markRunning\":{\"name\":\"markRunning\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markCompleted\":{\"name\":\"markCompleted\",\"async\":false,\"parameters\":[{\"name\":\"rowCount\",\"type\":\"number\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"markFailed\":{\"name\":\"markFailed\",\"async\":false,\"parameters\":[{\"name\":\"error\",\"type\":\"string\",\"optional\":false}],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"calculateNextRun\":{\"name\":\"calculateNextRun\",\"async\":false,\"parameters\":[],\"returnType\":\"void\",\"isStatic\":false,\"isPublic\":true},\"isDue\":{\"name\":\"isDue\",\"async\":false,\"parameters\":[],\"returnType\":\"boolean\",\"isStatic\":false,\"isPublic\":true},\"analyzeResults\":{\"name\":\"analyzeResults\",\"async\":true,\"parameters\":[{\"name\":\"_options\",\"type\":\"Record<string, unknown>\",\"optional\":true}],\"returnType\":\"Promise<object>\",\"isStatic\":false,\"isPublic\":true},\"hasPositiveTrends\":{\"name\":\"hasPositiveTrends\",\"async\":true,\"parameters\":[],\"returnType\":\"Promise<boolean>\",\"isStatic\":false,\"isPublic\":true}},\"decoratorConfig\":{\"tableStrategy\":\"sti\",\"api\":{\"include\":[\"list\",\"get\",\"create\",\"update\",\"run\"]},\"mcp\":{\"include\":[\"list\",\"get\",\"run\",\"analyze\"]},\"cli\":{\"skipApiCheck\":true},\"tenantScoped\":{\"mode\":\"optional\"},\"conflictColumns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"]},\"extends\":\"SmrtObject\",\"exportName\":\"AnalyticsReport\",\"collectionExportName\":\"AnalyticsReportCollection\",\"schema\":{\"tableName\":\"analytics_reports\",\"ddl\":\"CREATE TABLE IF NOT EXISTS \\\"analytics_reports\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"_meta_type\\\" TEXT NOT NULL,\\n \\\"_meta_data\\\" JSON,\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"tenant_id\\\" UUID,\\n \\\"property_id\\\" UUID,\\n \\\"name\\\" TEXT DEFAULT '',\\n \\\"description\\\" TEXT DEFAULT '',\\n \\\"dimensions\\\" TEXT DEFAULT '[]',\\n \\\"metrics\\\" TEXT DEFAULT '[]',\\n \\\"date_range_start\\\" TEXT DEFAULT '7daysAgo',\\n \\\"date_range_end\\\" TEXT DEFAULT 'today',\\n \\\"dimension_filter\\\" TEXT DEFAULT '',\\n \\\"metric_filter\\\" TEXT DEFAULT '',\\n \\\"order_by\\\" TEXT DEFAULT '[]',\\n \\\"max_results\\\" INTEGER DEFAULT 0,\\n \\\"status\\\" TEXT,\\n \\\"frequency\\\" TEXT,\\n \\\"last_run_at\\\" TIMESTAMP,\\n \\\"next_run_at\\\" TIMESTAMP,\\n \\\"result_data\\\" TEXT DEFAULT '',\\n \\\"row_count\\\" INTEGER DEFAULT 0,\\n \\\"last_error\\\" TEXT DEFAULT ''\\n);\",\"columns\":{\"id\":{\"type\":\"UUID\",\"primaryKey\":true,\"referenceKind\":\"id\",\"notNull\":true},\"slug\":{\"type\":\"TEXT\",\"notNull\":true},\"context\":{\"type\":\"TEXT\",\"notNull\":true,\"default\":\"\"},\"_meta_type\":{\"type\":\"TEXT\",\"notNull\":true},\"_meta_data\":{\"type\":\"JSON\",\"notNull\":false},\"created_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"updated_at\":{\"type\":\"TIMESTAMP\",\"notNull\":true,\"default\":\"current_timestamp\"},\"tenant_id\":{\"type\":\"UUID\",\"referenceKind\":\"tenantId\",\"notNull\":false},\"property_id\":{\"type\":\"UUID\",\"referenceKind\":\"foreignKey\",\"notNull\":false,\"foreignKey\":{\"table\":\"analytics_properties\",\"column\":\"id\",\"onDelete\":\"NO ACTION\",\"onUpdate\":\"CASCADE\"}},\"name\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"description\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"dimensions\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"[]\"},\"metrics\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"[]\"},\"date_range_start\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"7daysAgo\"},\"date_range_end\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"today\"},\"dimension_filter\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"metric_filter\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"order_by\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"[]\"},\"max_results\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"status\":{\"type\":\"TEXT\",\"notNull\":false},\"frequency\":{\"type\":\"TEXT\",\"notNull\":false},\"last_run_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"next_run_at\":{\"type\":\"TIMESTAMP\",\"notNull\":false},\"result_data\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"},\"row_count\":{\"type\":\"INTEGER\",\"notNull\":false,\"default\":0},\"last_error\":{\"type\":\"TEXT\",\"notNull\":false,\"default\":\"\"}},\"indexes\":[{\"name\":\"analytics_reports_slug_context_meta_type_idx\",\"columns\":[\"tenant_id\",\"slug\",\"context\",\"_meta_type\"],\"unique\":true,\"nullsNotDistinct\":true},{\"name\":\"analytics_reports_meta_type_idx\",\"columns\":[\"_meta_type\"]},{\"name\":\"analytics_reports_tenant_id_created_at_idx\",\"columns\":[\"tenant_id\",\"created_at\"]},{\"name\":\"analytics_reports_property_id_idx\",\"columns\":[\"property_id\"]}],\"version\":\"22ce0f1c\"},\"importPath\":\"@happyvertical/smrt-analytics\"}},\"moduleType\":\"smrt\",\"smrtDependencies\":[\"@happyvertical/smrt-core\",\"@happyvertical/smrt-prompts\",\"@happyvertical/smrt-tenancy\"]}"));
5
+ ObjectRegistry.registerPackageManifest(JSON.parse(`{"version":"1.0.0","timestamp":0,"packageName":"@happyvertical/smrt-analytics","packageVersion":"0.54.4","objects":{"@happyvertical/smrt-analytics:AnalyticsDataStreamCollection":{"name":"analyticsdatastreamcollection","className":"AnalyticsDataStreamCollection","qualifiedName":"@happyvertical/smrt-analytics:AnalyticsDataStreamCollection","collection":"analyticsdatastreams","filePath":"/home/runner/work/smrt/smrt/packages/analytics/src/collections/AnalyticsDataStreamCollection.ts","packageName":"@happyvertical/smrt-analytics","fields":{},"methods":{"findByProperty":{"name":"findByProperty","async":true,"parameters":[{"name":"propertyId","type":"string","optional":false}],"returnType":"Promise<AnalyticsDataStream[]>","isStatic":false,"isPublic":true},"findByExternalId":{"name":"findByExternalId","async":true,"parameters":[{"name":"externalId","type":"string","optional":false}],"returnType":"Promise<AnalyticsDataStream | null>","isStatic":false,"isPublic":true},"findByMeasurementId":{"name":"findByMeasurementId","async":true,"parameters":[{"name":"measurementId","type":"string","optional":false}],"returnType":"Promise<AnalyticsDataStream | null>","isStatic":false,"isPublic":true},"findByType":{"name":"findByType","async":true,"parameters":[{"name":"streamType","type":"DataStreamType","optional":false}],"returnType":"Promise<AnalyticsDataStream[]>","isStatic":false,"isPublic":true},"findWebStreams":{"name":"findWebStreams","async":true,"parameters":[],"returnType":"Promise<AnalyticsDataStream[]>","isStatic":false,"isPublic":true},"findIOSStreams":{"name":"findIOSStreams","async":true,"parameters":[],"returnType":"Promise<AnalyticsDataStream[]>","isStatic":false,"isPublic":true},"findAndroidStreams":{"name":"findAndroidStreams","async":true,"parameters":[],"returnType":"Promise<AnalyticsDataStream[]>","isStatic":false,"isPublic":true},"findMobileStreams":{"name":"findMobileStreams","async":true,"parameters":[],"returnType":"Promise<AnalyticsDataStream[]>","isStatic":false,"isPublic":true},"findByStatus":{"name":"findByStatus","async":true,"parameters":[{"name":"status","type":"DataStreamStatus","optional":false}],"returnType":"Promise<AnalyticsDataStream[]>","isStatic":false,"isPublic":true},"findActive":{"name":"findActive","async":true,"parameters":[],"returnType":"Promise<AnalyticsDataStream[]>","isStatic":false,"isPublic":true},"findActiveByProperty":{"name":"findActiveByProperty","async":true,"parameters":[{"name":"propertyId","type":"string","optional":false}],"returnType":"Promise<AnalyticsDataStream[]>","isStatic":false,"isPublic":true}},"decoratorConfig":{},"extends":"SmrtCollection","extendsTypeArg":"AnalyticsDataStream","exportName":"AnalyticsDataStreamCollection","collectionExportName":"AnalyticsDataStreamCollectionCollection","schema":{"tableName":"analytics_data_streams","ddl":"CREATE TABLE IF NOT EXISTS \\"analytics_data_streams\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"_meta_type\\" TEXT NOT NULL,\\n \\"_meta_data\\" JSON,\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID,\\n \\"property_id\\" UUID,\\n \\"display_name\\" TEXT DEFAULT '',\\n \\"stream_type\\" TEXT,\\n \\"external_id\\" TEXT DEFAULT '',\\n \\"measurement_id\\" TEXT DEFAULT '',\\n \\"firebase_app_id\\" TEXT DEFAULT '',\\n \\"default_uri\\" TEXT DEFAULT '',\\n \\"bundle_id\\" TEXT DEFAULT '',\\n \\"package_name\\" TEXT DEFAULT '',\\n \\"status\\" TEXT,\\n \\"enhanced_measurement\\" BOOLEAN DEFAULT TRUE\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_meta_type":{"type":"TEXT","notNull":true},"_meta_data":{"type":"JSON","notNull":false},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false},"property_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"foreignKey":{"table":"analytics_properties","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"display_name":{"type":"TEXT","notNull":false,"default":""},"stream_type":{"type":"TEXT","notNull":false},"external_id":{"type":"TEXT","notNull":false,"default":""},"measurement_id":{"type":"TEXT","notNull":false,"default":""},"firebase_app_id":{"type":"TEXT","notNull":false,"default":""},"default_uri":{"type":"TEXT","notNull":false,"default":""},"bundle_id":{"type":"TEXT","notNull":false,"default":""},"package_name":{"type":"TEXT","notNull":false,"default":""},"status":{"type":"TEXT","notNull":false},"enhanced_measurement":{"type":"BOOLEAN","notNull":false,"default":true}},"indexes":[{"name":"analytics_data_streams_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"analytics_data_streams_meta_type_idx","columns":["_meta_type"]},{"name":"analytics_data_streams_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"analytics_data_streams_property_id_idx","columns":["property_id"]}],"version":"851609ba"},"importPath":"@happyvertical/smrt-analytics"},"@happyvertical/smrt-analytics:AnalyticsEventCollection":{"name":"analyticseventcollection","className":"AnalyticsEventCollection","qualifiedName":"@happyvertical/smrt-analytics:AnalyticsEventCollection","collection":"analyticsevents","filePath":"/home/runner/work/smrt/smrt/packages/analytics/src/collections/AnalyticsEventCollection.ts","packageName":"@happyvertical/smrt-analytics","fields":{},"methods":{"findByProperty":{"name":"findByProperty","async":true,"parameters":[{"name":"propertyId","type":"string","optional":false}],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findByEventName":{"name":"findByEventName","async":true,"parameters":[{"name":"eventName","type":"string","optional":false}],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findByClientId":{"name":"findByClientId","async":true,"parameters":[{"name":"clientId","type":"string","optional":false}],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findByUserId":{"name":"findByUserId","async":true,"parameters":[{"name":"userId","type":"string","optional":false}],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findByStatus":{"name":"findByStatus","async":true,"parameters":[{"name":"status","type":"TrackingEventStatus","optional":false}],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findPending":{"name":"findPending","async":true,"parameters":[],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findSent":{"name":"findSent","async":true,"parameters":[],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findFailed":{"name":"findFailed","async":true,"parameters":[],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findForRetry":{"name":"findForRetry","async":true,"parameters":[{"name":"maxRetries","type":"number","optional":true}],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findPendingByProperty":{"name":"findPendingByProperty","async":true,"parameters":[{"name":"propertyId","type":"string","optional":false}],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findByDateRange":{"name":"findByDateRange","async":true,"parameters":[{"name":"startDate","type":"Date","optional":false},{"name":"endDate","type":"Date","optional":false}],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findConversions":{"name":"findConversions","async":true,"parameters":[{"name":"propertyId","type":"string","optional":true}],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"findPageviews":{"name":"findPageviews","async":true,"parameters":[{"name":"propertyId","type":"string","optional":true}],"returnType":"Promise<AnalyticsEvent[]>","isStatic":false,"isPublic":true},"countByEventName":{"name":"countByEventName","async":true,"parameters":[{"name":"propertyId","type":"string","optional":false}],"returnType":"Promise<Map<string, number>>","isStatic":false,"isPublic":true},"getPropertyStats":{"name":"getPropertyStats","async":true,"parameters":[{"name":"propertyId","type":"string","optional":false}],"returnType":"Promise<object>","isStatic":false,"isPublic":true},"getPropertyStatsWithTrend":{"name":"getPropertyStatsWithTrend","async":true,"parameters":[{"name":"propertyId","type":"string","optional":false},{"name":"now","type":"Date","optional":true},{"name":"timeZone","type":"string","optional":true,"default":"UTC"}],"returnType":"Promise<PropertyStatsWithTrend>","isStatic":false,"isPublic":true},"getBatchPropertyStats":{"name":"getBatchPropertyStats","async":true,"parameters":[{"name":"propertyIds","type":"string[]","optional":false},{"name":"now","type":"Date","optional":true},{"name":"timeZone","type":"string","optional":true,"default":"UTC"}],"returnType":"Promise<Map<string, PropertyStatsWithTrend>>","isStatic":false,"isPublic":true}},"decoratorConfig":{},"extends":"SmrtCollection","extendsTypeArg":"AnalyticsEvent","exportName":"AnalyticsEventCollection","collectionExportName":"AnalyticsEventCollectionCollection","schema":{"tableName":"analytics_events","ddl":"CREATE TABLE IF NOT EXISTS \\"analytics_events\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"_meta_type\\" TEXT NOT NULL,\\n \\"_meta_data\\" JSON,\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID,\\n \\"property_id\\" UUID,\\n \\"event_name\\" TEXT DEFAULT '',\\n \\"client_id\\" TEXT DEFAULT '',\\n \\"user_id\\" TEXT DEFAULT '',\\n \\"params\\" TEXT DEFAULT '{}',\\n \\"event_timestamp\\" TIMESTAMP,\\n \\"status\\" TEXT,\\n \\"sent_at\\" TIMESTAMP,\\n \\"error_message\\" TEXT DEFAULT '',\\n \\"retry_count\\" INTEGER DEFAULT 0,\\n \\"non_personalized_ads\\" BOOLEAN DEFAULT FALSE,\\n \\"session_id\\" TEXT DEFAULT '',\\n \\"page_path\\" TEXT DEFAULT '',\\n \\"page_title\\" TEXT DEFAULT '',\\n \\"user_agent\\" TEXT DEFAULT '',\\n \\"ip_address\\" TEXT DEFAULT ''\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_meta_type":{"type":"TEXT","notNull":true},"_meta_data":{"type":"JSON","notNull":false},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false},"property_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"foreignKey":{"table":"analytics_properties","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"event_name":{"type":"TEXT","notNull":false,"default":""},"client_id":{"type":"TEXT","notNull":false,"default":""},"user_id":{"type":"TEXT","notNull":false,"default":""},"params":{"type":"TEXT","notNull":false,"default":"{}"},"event_timestamp":{"type":"TIMESTAMP","notNull":false},"status":{"type":"TEXT","notNull":false},"sent_at":{"type":"TIMESTAMP","notNull":false},"error_message":{"type":"TEXT","notNull":false,"default":""},"retry_count":{"type":"INTEGER","notNull":false,"default":0},"non_personalized_ads":{"type":"BOOLEAN","notNull":false,"default":false},"session_id":{"type":"TEXT","notNull":false,"default":""},"page_path":{"type":"TEXT","notNull":false,"default":""},"page_title":{"type":"TEXT","notNull":false,"default":""},"user_agent":{"type":"TEXT","notNull":false,"default":""},"ip_address":{"type":"TEXT","notNull":false,"default":""}},"indexes":[{"name":"analytics_events_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"analytics_events_meta_type_idx","columns":["_meta_type"]},{"name":"analytics_events_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"analytics_events_property_id_idx","columns":["property_id"]}],"version":"bee09e1d"},"importPath":"@happyvertical/smrt-analytics"},"@happyvertical/smrt-analytics:AnalyticsPropertyCollection":{"name":"analyticspropertycollection","className":"AnalyticsPropertyCollection","qualifiedName":"@happyvertical/smrt-analytics:AnalyticsPropertyCollection","collection":"analyticsproperties","filePath":"/home/runner/work/smrt/smrt/packages/analytics/src/collections/AnalyticsPropertyCollection.ts","packageName":"@happyvertical/smrt-analytics","fields":{},"methods":{"findByExternalId":{"name":"findByExternalId","async":true,"parameters":[{"name":"externalId","type":"string","optional":false}],"returnType":"Promise<AnalyticsProperty | null>","isStatic":false,"isPublic":true},"findByMeasurementId":{"name":"findByMeasurementId","async":true,"parameters":[{"name":"measurementId","type":"string","optional":false}],"returnType":"Promise<AnalyticsProperty | null>","isStatic":false,"isPublic":true},"findBySiteDomain":{"name":"findBySiteDomain","async":true,"parameters":[{"name":"siteDomain","type":"string","optional":false},{"name":"provider","type":"AnalyticsProvider","optional":true}],"returnType":"Promise<AnalyticsProperty | null>","isStatic":false,"isPublic":true},"findByProvider":{"name":"findByProvider","async":true,"parameters":[{"name":"provider","type":"AnalyticsProvider","optional":false}],"returnType":"Promise<AnalyticsProperty[]>","isStatic":false,"isPublic":true},"findGA4Properties":{"name":"findGA4Properties","async":true,"parameters":[],"returnType":"Promise<AnalyticsProperty[]>","isStatic":false,"isPublic":true},"findPlausibleSites":{"name":"findPlausibleSites","async":true,"parameters":[],"returnType":"Promise<AnalyticsProperty[]>","isStatic":false,"isPublic":true},"findMatomoSites":{"name":"findMatomoSites","async":true,"parameters":[],"returnType":"Promise<AnalyticsProperty[]>","isStatic":false,"isPublic":true},"findByStatus":{"name":"findByStatus","async":true,"parameters":[{"name":"status","type":"AnalyticsPropertyStatus","optional":false}],"returnType":"Promise<AnalyticsProperty[]>","isStatic":false,"isPublic":true},"findActive":{"name":"findActive","async":true,"parameters":[],"returnType":"Promise<AnalyticsProperty[]>","isStatic":false,"isPublic":true},"findNeedingSync":{"name":"findNeedingSync","async":true,"parameters":[{"name":"hoursAgo","type":"number","optional":true}],"returnType":"Promise<AnalyticsProperty[]>","isStatic":false,"isPublic":true}},"decoratorConfig":{},"extends":"SmrtCollection","extendsTypeArg":"AnalyticsProperty","exportName":"AnalyticsPropertyCollection","collectionExportName":"AnalyticsPropertyCollectionCollection","schema":{"tableName":"analytics_properties","ddl":"CREATE TABLE IF NOT EXISTS \\"analytics_properties\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"_meta_type\\" TEXT NOT NULL,\\n \\"_meta_data\\" JSON,\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID,\\n \\"name\\" TEXT DEFAULT '',\\n \\"display_name\\" TEXT DEFAULT '',\\n \\"provider\\" TEXT,\\n \\"external_id\\" TEXT DEFAULT '',\\n \\"measurement_id\\" TEXT DEFAULT '',\\n \\"api_secret\\" TEXT DEFAULT '',\\n \\"site_domain\\" TEXT DEFAULT '',\\n \\"time_zone\\" TEXT DEFAULT 'America/Los_Angeles',\\n \\"currency_code\\" TEXT DEFAULT 'USD',\\n \\"industry_category\\" TEXT DEFAULT '',\\n \\"service_level\\" TEXT DEFAULT 'STANDARD',\\n \\"status\\" TEXT,\\n \\"last_sync_at\\" TIMESTAMP,\\n \\"provider_metadata\\" TEXT DEFAULT '{}'\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_meta_type":{"type":"TEXT","notNull":true},"_meta_data":{"type":"JSON","notNull":false},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false},"name":{"type":"TEXT","notNull":false,"default":""},"display_name":{"type":"TEXT","notNull":false,"default":""},"provider":{"type":"TEXT","notNull":false},"external_id":{"type":"TEXT","notNull":false,"default":""},"measurement_id":{"type":"TEXT","notNull":false,"default":""},"api_secret":{"type":"TEXT","notNull":false,"default":""},"site_domain":{"type":"TEXT","notNull":false,"default":""},"time_zone":{"type":"TEXT","notNull":false,"default":"America/Los_Angeles"},"currency_code":{"type":"TEXT","notNull":false,"default":"USD"},"industry_category":{"type":"TEXT","notNull":false,"default":""},"service_level":{"type":"TEXT","notNull":false,"default":"STANDARD"},"status":{"type":"TEXT","notNull":false},"last_sync_at":{"type":"TIMESTAMP","notNull":false},"provider_metadata":{"type":"TEXT","notNull":false,"default":"{}"}},"indexes":[{"name":"analytics_properties_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"analytics_properties_meta_type_idx","columns":["_meta_type"]},{"name":"analytics_properties_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"f38a20b9"},"importPath":"@happyvertical/smrt-analytics"},"@happyvertical/smrt-analytics:AnalyticsReportCollection":{"name":"analyticsreportcollection","className":"AnalyticsReportCollection","qualifiedName":"@happyvertical/smrt-analytics:AnalyticsReportCollection","collection":"analyticsreports","filePath":"/home/runner/work/smrt/smrt/packages/analytics/src/collections/AnalyticsReportCollection.ts","packageName":"@happyvertical/smrt-analytics","fields":{},"methods":{"findByProperty":{"name":"findByProperty","async":true,"parameters":[{"name":"propertyId","type":"string","optional":false}],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true},"findByStatus":{"name":"findByStatus","async":true,"parameters":[{"name":"status","type":"ReportStatus","optional":false}],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true},"findDrafts":{"name":"findDrafts","async":true,"parameters":[],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true},"findScheduled":{"name":"findScheduled","async":true,"parameters":[],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true},"findCompleted":{"name":"findCompleted","async":true,"parameters":[],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true},"findFailed":{"name":"findFailed","async":true,"parameters":[],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true},"findByFrequency":{"name":"findByFrequency","async":true,"parameters":[{"name":"frequency","type":"ReportFrequency","optional":false}],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true},"findRecurring":{"name":"findRecurring","async":true,"parameters":[],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true},"findDue":{"name":"findDue","async":true,"parameters":[],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true},"findByPropertyAndStatus":{"name":"findByPropertyAndStatus","async":true,"parameters":[{"name":"propertyId","type":"string","optional":false},{"name":"status","type":"ReportStatus","optional":false}],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true},"findRecentlyRun":{"name":"findRecentlyRun","async":true,"parameters":[{"name":"hoursAgo","type":"number","optional":true}],"returnType":"Promise<AnalyticsReport[]>","isStatic":false,"isPublic":true}},"decoratorConfig":{},"extends":"SmrtCollection","extendsTypeArg":"AnalyticsReport","exportName":"AnalyticsReportCollection","collectionExportName":"AnalyticsReportCollectionCollection","schema":{"tableName":"analytics_reports","ddl":"CREATE TABLE IF NOT EXISTS \\"analytics_reports\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"_meta_type\\" TEXT NOT NULL,\\n \\"_meta_data\\" JSON,\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID,\\n \\"property_id\\" UUID,\\n \\"name\\" TEXT DEFAULT '',\\n \\"description\\" TEXT DEFAULT '',\\n \\"dimensions\\" TEXT DEFAULT '[]',\\n \\"metrics\\" TEXT DEFAULT '[]',\\n \\"date_range_start\\" TEXT DEFAULT '7daysAgo',\\n \\"date_range_end\\" TEXT DEFAULT 'today',\\n \\"dimension_filter\\" TEXT DEFAULT '',\\n \\"metric_filter\\" TEXT DEFAULT '',\\n \\"order_by\\" TEXT DEFAULT '[]',\\n \\"max_results\\" INTEGER DEFAULT 0,\\n \\"status\\" TEXT,\\n \\"frequency\\" TEXT,\\n \\"last_run_at\\" TIMESTAMP,\\n \\"next_run_at\\" TIMESTAMP,\\n \\"result_data\\" TEXT DEFAULT '',\\n \\"row_count\\" INTEGER DEFAULT 0,\\n \\"last_error\\" TEXT DEFAULT ''\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_meta_type":{"type":"TEXT","notNull":true},"_meta_data":{"type":"JSON","notNull":false},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false},"property_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"foreignKey":{"table":"analytics_properties","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"name":{"type":"TEXT","notNull":false,"default":""},"description":{"type":"TEXT","notNull":false,"default":""},"dimensions":{"type":"TEXT","notNull":false,"default":"[]"},"metrics":{"type":"TEXT","notNull":false,"default":"[]"},"date_range_start":{"type":"TEXT","notNull":false,"default":"7daysAgo"},"date_range_end":{"type":"TEXT","notNull":false,"default":"today"},"dimension_filter":{"type":"TEXT","notNull":false,"default":""},"metric_filter":{"type":"TEXT","notNull":false,"default":""},"order_by":{"type":"TEXT","notNull":false,"default":"[]"},"max_results":{"type":"INTEGER","notNull":false,"default":0},"status":{"type":"TEXT","notNull":false},"frequency":{"type":"TEXT","notNull":false},"last_run_at":{"type":"TIMESTAMP","notNull":false},"next_run_at":{"type":"TIMESTAMP","notNull":false},"result_data":{"type":"TEXT","notNull":false,"default":""},"row_count":{"type":"INTEGER","notNull":false,"default":0},"last_error":{"type":"TEXT","notNull":false,"default":""}},"indexes":[{"name":"analytics_reports_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"analytics_reports_meta_type_idx","columns":["_meta_type"]},{"name":"analytics_reports_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"analytics_reports_property_id_idx","columns":["property_id"]}],"version":"22ce0f1c"},"importPath":"@happyvertical/smrt-analytics"},"@happyvertical/smrt-analytics:AnalyticsDataStream":{"name":"analyticsdatastream","className":"AnalyticsDataStream","qualifiedName":"@happyvertical/smrt-analytics:AnalyticsDataStream","collection":"analyticsdatastreams","filePath":"/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsDataStream.ts","packageName":"@happyvertical/smrt-analytics","fields":{"created_at":{"type":"datetime","required":false},"updated_at":{"type":"datetime","required":false},"tenantId":{"type":"text","required":false,"_meta":{"sqlType":"UUID","nullable":true,"__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":false,"autoPopulate":true,"nullable":true,"mode":"optional","field":"tenantId","allowSuperAdminBypass":false}}},"propertyId":{"type":"foreignKey","required":false,"related":"AnalyticsProperty"},"displayName":{"type":"text","required":false,"default":""},"streamType":{"type":"text","required":false},"externalId":{"type":"text","required":false,"default":""},"measurementId":{"type":"text","required":false,"default":""},"firebaseAppId":{"type":"text","required":false,"default":""},"defaultUri":{"type":"text","required":false,"default":""},"bundleId":{"type":"text","required":false,"default":""},"packageName":{"type":"text","required":false,"default":""},"status":{"type":"text","required":false},"enhancedMeasurement":{"type":"boolean","required":false,"default":true}},"methods":{"isWeb":{"name":"isWeb","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"isIOS":{"name":"isIOS","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"isAndroid":{"name":"isAndroid","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"isMobileApp":{"name":"isMobileApp","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"getPlatformId":{"name":"getPlatformId","async":false,"parameters":[],"returnType":"string","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableStrategy":"sti","api":{"include":["list","get","create","update"]},"mcp":{"include":["list","get"]},"cli":{"skipApiCheck":true},"tenantScoped":{"mode":"optional"},"conflictColumns":["tenant_id","slug","context","_meta_type"]},"extends":"SmrtObject","exportName":"AnalyticsDataStream","collectionExportName":"AnalyticsDataStreamCollection","schema":{"tableName":"analytics_data_streams","ddl":"CREATE TABLE IF NOT EXISTS \\"analytics_data_streams\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"_meta_type\\" TEXT NOT NULL,\\n \\"_meta_data\\" JSON,\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID,\\n \\"property_id\\" UUID,\\n \\"display_name\\" TEXT DEFAULT '',\\n \\"stream_type\\" TEXT,\\n \\"external_id\\" TEXT DEFAULT '',\\n \\"measurement_id\\" TEXT DEFAULT '',\\n \\"firebase_app_id\\" TEXT DEFAULT '',\\n \\"default_uri\\" TEXT DEFAULT '',\\n \\"bundle_id\\" TEXT DEFAULT '',\\n \\"package_name\\" TEXT DEFAULT '',\\n \\"status\\" TEXT,\\n \\"enhanced_measurement\\" BOOLEAN DEFAULT TRUE\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_meta_type":{"type":"TEXT","notNull":true},"_meta_data":{"type":"JSON","notNull":false},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false},"property_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"foreignKey":{"table":"analytics_properties","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"display_name":{"type":"TEXT","notNull":false,"default":""},"stream_type":{"type":"TEXT","notNull":false},"external_id":{"type":"TEXT","notNull":false,"default":""},"measurement_id":{"type":"TEXT","notNull":false,"default":""},"firebase_app_id":{"type":"TEXT","notNull":false,"default":""},"default_uri":{"type":"TEXT","notNull":false,"default":""},"bundle_id":{"type":"TEXT","notNull":false,"default":""},"package_name":{"type":"TEXT","notNull":false,"default":""},"status":{"type":"TEXT","notNull":false},"enhanced_measurement":{"type":"BOOLEAN","notNull":false,"default":true}},"indexes":[{"name":"analytics_data_streams_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"analytics_data_streams_meta_type_idx","columns":["_meta_type"]},{"name":"analytics_data_streams_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"analytics_data_streams_property_id_idx","columns":["property_id"]}],"version":"851609ba"},"importPath":"@happyvertical/smrt-analytics"},"@happyvertical/smrt-analytics:AnalyticsEvent":{"name":"analyticsevent","className":"AnalyticsEvent","qualifiedName":"@happyvertical/smrt-analytics:AnalyticsEvent","collection":"analyticsevents","filePath":"/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsEvent.ts","packageName":"@happyvertical/smrt-analytics","fields":{"created_at":{"type":"datetime","required":false},"updated_at":{"type":"datetime","required":false},"tenantId":{"type":"text","required":false,"_meta":{"sqlType":"UUID","nullable":true,"__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":false,"autoPopulate":true,"nullable":true,"mode":"optional","field":"tenantId","allowSuperAdminBypass":false}}},"propertyId":{"type":"foreignKey","required":false,"related":"AnalyticsProperty"},"eventName":{"type":"text","required":false,"default":""},"clientId":{"type":"text","required":false,"default":""},"userId":{"type":"text","required":false,"default":""},"params":{"type":"text","required":false,"default":"{}"},"eventTimestamp":{"type":"datetime","required":false},"status":{"type":"text","required":false},"sentAt":{"type":"datetime","required":false},"errorMessage":{"type":"text","required":false,"default":""},"retryCount":{"type":"integer","required":false,"default":0},"nonPersonalizedAds":{"type":"boolean","required":false,"default":false},"sessionId":{"type":"text","required":false,"default":""},"pagePath":{"type":"text","required":false,"default":""},"pageTitle":{"type":"text","required":false,"default":""},"userAgent":{"type":"text","required":false,"default":""},"ipAddress":{"type":"text","required":false,"default":""}},"methods":{"getParams":{"name":"getParams","async":false,"parameters":[],"returnType":"Record<string, string | number | boolean>","isStatic":false,"isPublic":true},"setParams":{"name":"setParams","async":false,"parameters":[{"name":"params","type":"Record<string, string | number | boolean>","optional":false}],"returnType":"void","isStatic":false,"isPublic":true},"addParam":{"name":"addParam","async":false,"parameters":[{"name":"key","type":"string","optional":false},{"name":"value","type":"string | number | boolean","optional":false,"unionBranches":[{"type":"string"},{"type":"number"},{"type":"boolean"}]}],"returnType":"void","isStatic":false,"isPublic":true},"isPageview":{"name":"isPageview","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"isConversion":{"name":"isConversion","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"markSent":{"name":"markSent","async":false,"parameters":[],"returnType":"void","isStatic":false,"isPublic":true},"markFailed":{"name":"markFailed","async":false,"parameters":[{"name":"error","type":"string","optional":false}],"returnType":"void","isStatic":false,"isPublic":true},"resetForRetry":{"name":"resetForRetry","async":false,"parameters":[],"returnType":"void","isStatic":false,"isPublic":true},"shouldRetry":{"name":"shouldRetry","async":false,"parameters":[{"name":"maxRetries","type":"number","optional":true}],"returnType":"boolean","isStatic":false,"isPublic":true},"toTrackEvent":{"name":"toTrackEvent","async":false,"parameters":[],"returnType":"object","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableStrategy":"sti","api":{"include":["list","get","create"]},"mcp":{"include":["list","get","track"]},"cli":{"skipApiCheck":true},"tenantScoped":{"mode":"optional"},"conflictColumns":["tenant_id","slug","context","_meta_type"]},"extends":"SmrtObject","exportName":"AnalyticsEvent","collectionExportName":"AnalyticsEventCollection","schema":{"tableName":"analytics_events","ddl":"CREATE TABLE IF NOT EXISTS \\"analytics_events\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"_meta_type\\" TEXT NOT NULL,\\n \\"_meta_data\\" JSON,\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID,\\n \\"property_id\\" UUID,\\n \\"event_name\\" TEXT DEFAULT '',\\n \\"client_id\\" TEXT DEFAULT '',\\n \\"user_id\\" TEXT DEFAULT '',\\n \\"params\\" TEXT DEFAULT '{}',\\n \\"event_timestamp\\" TIMESTAMP,\\n \\"status\\" TEXT,\\n \\"sent_at\\" TIMESTAMP,\\n \\"error_message\\" TEXT DEFAULT '',\\n \\"retry_count\\" INTEGER DEFAULT 0,\\n \\"non_personalized_ads\\" BOOLEAN DEFAULT FALSE,\\n \\"session_id\\" TEXT DEFAULT '',\\n \\"page_path\\" TEXT DEFAULT '',\\n \\"page_title\\" TEXT DEFAULT '',\\n \\"user_agent\\" TEXT DEFAULT '',\\n \\"ip_address\\" TEXT DEFAULT ''\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_meta_type":{"type":"TEXT","notNull":true},"_meta_data":{"type":"JSON","notNull":false},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false},"property_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"foreignKey":{"table":"analytics_properties","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"event_name":{"type":"TEXT","notNull":false,"default":""},"client_id":{"type":"TEXT","notNull":false,"default":""},"user_id":{"type":"TEXT","notNull":false,"default":""},"params":{"type":"TEXT","notNull":false,"default":"{}"},"event_timestamp":{"type":"TIMESTAMP","notNull":false},"status":{"type":"TEXT","notNull":false},"sent_at":{"type":"TIMESTAMP","notNull":false},"error_message":{"type":"TEXT","notNull":false,"default":""},"retry_count":{"type":"INTEGER","notNull":false,"default":0},"non_personalized_ads":{"type":"BOOLEAN","notNull":false,"default":false},"session_id":{"type":"TEXT","notNull":false,"default":""},"page_path":{"type":"TEXT","notNull":false,"default":""},"page_title":{"type":"TEXT","notNull":false,"default":""},"user_agent":{"type":"TEXT","notNull":false,"default":""},"ip_address":{"type":"TEXT","notNull":false,"default":""}},"indexes":[{"name":"analytics_events_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"analytics_events_meta_type_idx","columns":["_meta_type"]},{"name":"analytics_events_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"analytics_events_property_id_idx","columns":["property_id"]}],"version":"bee09e1d"},"importPath":"@happyvertical/smrt-analytics"},"@happyvertical/smrt-analytics:AnalyticsProperty":{"name":"analyticsproperty","className":"AnalyticsProperty","qualifiedName":"@happyvertical/smrt-analytics:AnalyticsProperty","collection":"analyticsproperties","filePath":"/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsProperty.ts","packageName":"@happyvertical/smrt-analytics","fields":{"created_at":{"type":"datetime","required":false},"updated_at":{"type":"datetime","required":false},"tenantId":{"type":"text","required":false,"_meta":{"sqlType":"UUID","nullable":true,"__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":false,"autoPopulate":true,"nullable":true,"mode":"optional","field":"tenantId","allowSuperAdminBypass":false}}},"name":{"type":"text","required":false,"default":""},"displayName":{"type":"text","required":false,"default":""},"provider":{"type":"text","required":false},"externalId":{"type":"text","required":false,"default":""},"measurementId":{"type":"text","required":false,"default":""},"apiSecret":{"type":"text","required":false,"default":"","_meta":{"sensitive":true},"sensitive":true},"siteDomain":{"type":"text","required":false,"default":""},"timeZone":{"type":"text","required":false,"default":"America/Los_Angeles"},"currencyCode":{"type":"text","required":false,"default":"USD"},"industryCategory":{"type":"text","required":false,"default":""},"serviceLevel":{"type":"text","required":false,"default":"STANDARD"},"status":{"type":"text","required":false},"lastSyncAt":{"type":"datetime","required":false},"providerMetadata":{"type":"text","required":false,"default":"{}","_meta":{"sensitive":true},"sensitive":true}},"methods":{"isGA4":{"name":"isGA4","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"isPlausible":{"name":"isPlausible","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"isMatomo":{"name":"isMatomo","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"getProviderMetadata":{"name":"getProviderMetadata","async":false,"parameters":[],"returnType":"Record<string, unknown>","isStatic":false,"isPublic":true},"setProviderMetadata":{"name":"setProviderMetadata","async":false,"parameters":[{"name":"metadata","type":"Record<string, unknown>","optional":false}],"returnType":"void","isStatic":false,"isPublic":true},"markSynced":{"name":"markSynced","async":false,"parameters":[],"returnType":"void","isStatic":false,"isPublic":true},"analyzePerformance":{"name":"analyzePerformance","async":true,"parameters":[{"name":"options","type":"object","optional":true,"memberTypes":["string"]}],"returnType":"Promise<object>","isStatic":false,"isPublic":true},"isPerformingWell":{"name":"isPerformingWell","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableStrategy":"sti","api":{"include":["list","get","create","update"]},"mcp":{"include":["list","get","sync","runReport"]},"cli":{"skipApiCheck":true},"tenantScoped":{"mode":"optional"},"conflictColumns":["tenant_id","slug","context","_meta_type"]},"extends":"SmrtObject","exportName":"AnalyticsProperty","collectionExportName":"AnalyticsPropertyCollection","schema":{"tableName":"analytics_properties","ddl":"CREATE TABLE IF NOT EXISTS \\"analytics_properties\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"_meta_type\\" TEXT NOT NULL,\\n \\"_meta_data\\" JSON,\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID,\\n \\"name\\" TEXT DEFAULT '',\\n \\"display_name\\" TEXT DEFAULT '',\\n \\"provider\\" TEXT,\\n \\"external_id\\" TEXT DEFAULT '',\\n \\"measurement_id\\" TEXT DEFAULT '',\\n \\"api_secret\\" TEXT DEFAULT '',\\n \\"site_domain\\" TEXT DEFAULT '',\\n \\"time_zone\\" TEXT DEFAULT 'America/Los_Angeles',\\n \\"currency_code\\" TEXT DEFAULT 'USD',\\n \\"industry_category\\" TEXT DEFAULT '',\\n \\"service_level\\" TEXT DEFAULT 'STANDARD',\\n \\"status\\" TEXT,\\n \\"last_sync_at\\" TIMESTAMP,\\n \\"provider_metadata\\" TEXT DEFAULT '{}'\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_meta_type":{"type":"TEXT","notNull":true},"_meta_data":{"type":"JSON","notNull":false},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false},"name":{"type":"TEXT","notNull":false,"default":""},"display_name":{"type":"TEXT","notNull":false,"default":""},"provider":{"type":"TEXT","notNull":false},"external_id":{"type":"TEXT","notNull":false,"default":""},"measurement_id":{"type":"TEXT","notNull":false,"default":""},"api_secret":{"type":"TEXT","notNull":false,"default":""},"site_domain":{"type":"TEXT","notNull":false,"default":""},"time_zone":{"type":"TEXT","notNull":false,"default":"America/Los_Angeles"},"currency_code":{"type":"TEXT","notNull":false,"default":"USD"},"industry_category":{"type":"TEXT","notNull":false,"default":""},"service_level":{"type":"TEXT","notNull":false,"default":"STANDARD"},"status":{"type":"TEXT","notNull":false},"last_sync_at":{"type":"TIMESTAMP","notNull":false},"provider_metadata":{"type":"TEXT","notNull":false,"default":"{}"}},"indexes":[{"name":"analytics_properties_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"analytics_properties_meta_type_idx","columns":["_meta_type"]},{"name":"analytics_properties_tenant_id_created_at_idx","columns":["tenant_id","created_at"]}],"version":"f38a20b9"},"importPath":"@happyvertical/smrt-analytics"},"@happyvertical/smrt-analytics:AnalyticsReport":{"name":"analyticsreport","className":"AnalyticsReport","qualifiedName":"@happyvertical/smrt-analytics:AnalyticsReport","collection":"analyticsreports","filePath":"/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsReport.ts","packageName":"@happyvertical/smrt-analytics","fields":{"created_at":{"type":"datetime","required":false},"updated_at":{"type":"datetime","required":false},"tenantId":{"type":"text","required":false,"_meta":{"sqlType":"UUID","nullable":true,"__tenancy":{"isTenantIdField":true,"autoFilter":true,"required":false,"autoPopulate":true,"nullable":true,"mode":"optional","field":"tenantId","allowSuperAdminBypass":false}}},"propertyId":{"type":"foreignKey","required":false,"related":"AnalyticsProperty"},"name":{"type":"text","required":false,"default":""},"description":{"type":"text","required":false,"default":""},"dimensions":{"type":"text","required":false,"default":"[]"},"metrics":{"type":"text","required":false,"default":"[]"},"dateRangeStart":{"type":"text","required":false,"default":"7daysAgo"},"dateRangeEnd":{"type":"text","required":false,"default":"today"},"dimensionFilter":{"type":"text","required":false,"default":""},"metricFilter":{"type":"text","required":false,"default":""},"orderBy":{"type":"text","required":false,"default":"[]"},"maxResults":{"type":"integer","required":false,"default":0},"status":{"type":"text","required":false},"frequency":{"type":"text","required":false},"lastRunAt":{"type":"datetime","required":false},"nextRunAt":{"type":"datetime","required":false},"resultData":{"type":"text","required":false,"default":""},"rowCount":{"type":"integer","required":false,"default":0},"lastError":{"type":"text","required":false,"default":""}},"methods":{"getDimensions":{"name":"getDimensions","async":false,"parameters":[],"returnType":"Array<object>","isStatic":false,"isPublic":true},"setDimensions":{"name":"setDimensions","async":false,"parameters":[{"name":"dimensions","type":"Array<object>","optional":false,"memberTypes":["string"]}],"returnType":"void","isStatic":false,"isPublic":true},"getMetrics":{"name":"getMetrics","async":false,"parameters":[],"returnType":"Array<object>","isStatic":false,"isPublic":true},"setMetrics":{"name":"setMetrics","async":false,"parameters":[{"name":"metrics","type":"Array<object>","optional":false,"memberTypes":["string"]}],"returnType":"void","isStatic":false,"isPublic":true},"getResultData":{"name":"getResultData","async":false,"parameters":[],"returnType":"Record<string, unknown> | null","isStatic":false,"isPublic":true},"setResultData":{"name":"setResultData","async":false,"parameters":[{"name":"data","type":"Record<string, unknown>","optional":false}],"returnType":"void","isStatic":false,"isPublic":true},"markRunning":{"name":"markRunning","async":false,"parameters":[],"returnType":"void","isStatic":false,"isPublic":true},"markCompleted":{"name":"markCompleted","async":false,"parameters":[{"name":"rowCount","type":"number","optional":false}],"returnType":"void","isStatic":false,"isPublic":true},"markFailed":{"name":"markFailed","async":false,"parameters":[{"name":"error","type":"string","optional":false}],"returnType":"void","isStatic":false,"isPublic":true},"calculateNextRun":{"name":"calculateNextRun","async":false,"parameters":[],"returnType":"void","isStatic":false,"isPublic":true},"isDue":{"name":"isDue","async":false,"parameters":[],"returnType":"boolean","isStatic":false,"isPublic":true},"analyzeResults":{"name":"analyzeResults","async":true,"parameters":[{"name":"_options","type":"Record<string, unknown>","optional":true}],"returnType":"Promise<object>","isStatic":false,"isPublic":true},"hasPositiveTrends":{"name":"hasPositiveTrends","async":true,"parameters":[],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableStrategy":"sti","api":{"include":["list","get","create","update","run"]},"mcp":{"include":["list","get","run","analyze"]},"cli":{"skipApiCheck":true},"tenantScoped":{"mode":"optional"},"conflictColumns":["tenant_id","slug","context","_meta_type"]},"extends":"SmrtObject","exportName":"AnalyticsReport","collectionExportName":"AnalyticsReportCollection","schema":{"tableName":"analytics_reports","ddl":"CREATE TABLE IF NOT EXISTS \\"analytics_reports\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"_meta_type\\" TEXT NOT NULL,\\n \\"_meta_data\\" JSON,\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"tenant_id\\" UUID,\\n \\"property_id\\" UUID,\\n \\"name\\" TEXT DEFAULT '',\\n \\"description\\" TEXT DEFAULT '',\\n \\"dimensions\\" TEXT DEFAULT '[]',\\n \\"metrics\\" TEXT DEFAULT '[]',\\n \\"date_range_start\\" TEXT DEFAULT '7daysAgo',\\n \\"date_range_end\\" TEXT DEFAULT 'today',\\n \\"dimension_filter\\" TEXT DEFAULT '',\\n \\"metric_filter\\" TEXT DEFAULT '',\\n \\"order_by\\" TEXT DEFAULT '[]',\\n \\"max_results\\" INTEGER DEFAULT 0,\\n \\"status\\" TEXT,\\n \\"frequency\\" TEXT,\\n \\"last_run_at\\" TIMESTAMP,\\n \\"next_run_at\\" TIMESTAMP,\\n \\"result_data\\" TEXT DEFAULT '',\\n \\"row_count\\" INTEGER DEFAULT 0,\\n \\"last_error\\" TEXT DEFAULT ''\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"_meta_type":{"type":"TEXT","notNull":true},"_meta_data":{"type":"JSON","notNull":false},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"tenant_id":{"type":"UUID","referenceKind":"tenantId","notNull":false},"property_id":{"type":"UUID","referenceKind":"foreignKey","notNull":false,"foreignKey":{"table":"analytics_properties","column":"id","onDelete":"NO ACTION","onUpdate":"CASCADE"}},"name":{"type":"TEXT","notNull":false,"default":""},"description":{"type":"TEXT","notNull":false,"default":""},"dimensions":{"type":"TEXT","notNull":false,"default":"[]"},"metrics":{"type":"TEXT","notNull":false,"default":"[]"},"date_range_start":{"type":"TEXT","notNull":false,"default":"7daysAgo"},"date_range_end":{"type":"TEXT","notNull":false,"default":"today"},"dimension_filter":{"type":"TEXT","notNull":false,"default":""},"metric_filter":{"type":"TEXT","notNull":false,"default":""},"order_by":{"type":"TEXT","notNull":false,"default":"[]"},"max_results":{"type":"INTEGER","notNull":false,"default":0},"status":{"type":"TEXT","notNull":false},"frequency":{"type":"TEXT","notNull":false},"last_run_at":{"type":"TIMESTAMP","notNull":false},"next_run_at":{"type":"TIMESTAMP","notNull":false},"result_data":{"type":"TEXT","notNull":false,"default":""},"row_count":{"type":"INTEGER","notNull":false,"default":0},"last_error":{"type":"TEXT","notNull":false,"default":""}},"indexes":[{"name":"analytics_reports_slug_context_meta_type_idx","columns":["tenant_id","slug","context","_meta_type"],"unique":true,"nullsNotDistinct":true},{"name":"analytics_reports_meta_type_idx","columns":["_meta_type"]},{"name":"analytics_reports_tenant_id_created_at_idx","columns":["tenant_id","created_at"]},{"name":"analytics_reports_property_id_idx","columns":["property_id"]}],"version":"22ce0f1c"},"importPath":"@happyvertical/smrt-analytics"}},"moduleType":"smrt","smrtDependencies":["@happyvertical/smrt-core","@happyvertical/smrt-prompts","@happyvertical/smrt-tenancy"],"stampsConstructors":true}`));
6
6
  //#endregion
7
7
  //#region src/prompts.ts
8
8
  var smrtAnalyticsAnalyzePerformancePrompt = definePrompt({
@@ -128,12 +128,19 @@ var CountingMethod = /* @__PURE__ */ ((CountingMethod2) => {
128
128
  //#region src/models/AnalyticsDataStream.ts
129
129
  var __defProp$3 = Object.defineProperty;
130
130
  var __getOwnPropDesc$3 = Object.getOwnPropertyDescriptor;
131
+ var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, {
132
+ enumerable: true,
133
+ configurable: true,
134
+ writable: true,
135
+ value
136
+ }) : obj[key] = value;
131
137
  var __decorateClass$3 = (decorators, target, key, kind) => {
132
138
  var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$3(target, key) : target;
133
139
  for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
134
140
  if (kind && result) __defProp$3(target, key, result);
135
141
  return result;
136
142
  };
143
+ var __publicField$3 = (obj, key, value) => __defNormalProp$3(obj, typeof key !== "symbol" ? key + "" : key, value);
137
144
  var AnalyticsDataStream = class extends SmrtObject {
138
145
  tenantId = null;
139
146
  propertyId = "";
@@ -224,6 +231,7 @@ var AnalyticsDataStream = class extends SmrtObject {
224
231
  return this.firebaseAppId;
225
232
  }
226
233
  };
234
+ __publicField$3(AnalyticsDataStream, "__smrtPackage__", "@happyvertical/smrt-analytics");
227
235
  __decorateClass$3([tenantId({ nullable: true })], AnalyticsDataStream.prototype, "tenantId", 2);
228
236
  __decorateClass$3([foreignKey("AnalyticsProperty")], AnalyticsDataStream.prototype, "propertyId", 2);
229
237
  AnalyticsDataStream = __decorateClass$3([TenantScoped({ mode: "optional" }), smrt({
@@ -355,12 +363,19 @@ var AnalyticsDataStreamCollection = class extends SmrtCollection {
355
363
  //#region src/models/AnalyticsEvent.ts
356
364
  var __defProp$2 = Object.defineProperty;
357
365
  var __getOwnPropDesc$2 = Object.getOwnPropertyDescriptor;
366
+ var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, {
367
+ enumerable: true,
368
+ configurable: true,
369
+ writable: true,
370
+ value
371
+ }) : obj[key] = value;
358
372
  var __decorateClass$2 = (decorators, target, key, kind) => {
359
373
  var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$2(target, key) : target;
360
374
  for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
361
375
  if (kind && result) __defProp$2(target, key, result);
362
376
  return result;
363
377
  };
378
+ var __publicField$2 = (obj, key, value) => __defNormalProp$2(obj, typeof key !== "symbol" ? key + "" : key, value);
364
379
  var AnalyticsEvent = class extends SmrtObject {
365
380
  tenantId = null;
366
381
  propertyId = "";
@@ -528,6 +543,7 @@ var AnalyticsEvent = class extends SmrtObject {
528
543
  };
529
544
  }
530
545
  };
546
+ __publicField$2(AnalyticsEvent, "__smrtPackage__", "@happyvertical/smrt-analytics");
531
547
  __decorateClass$2([tenantId({ nullable: true })], AnalyticsEvent.prototype, "tenantId", 2);
532
548
  __decorateClass$2([foreignKey("AnalyticsProperty")], AnalyticsEvent.prototype, "propertyId", 2);
533
549
  AnalyticsEvent = __decorateClass$2([TenantScoped({ mode: "optional" }), smrt({
@@ -944,12 +960,19 @@ var AnalyticsEventCollection = class extends SmrtCollection {
944
960
  //#region src/models/AnalyticsProperty.ts
945
961
  var __defProp$1 = Object.defineProperty;
946
962
  var __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor;
963
+ var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, {
964
+ enumerable: true,
965
+ configurable: true,
966
+ writable: true,
967
+ value
968
+ }) : obj[key] = value;
947
969
  var __decorateClass$1 = (decorators, target, key, kind) => {
948
970
  var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$1(target, key) : target;
949
971
  for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
950
972
  if (kind && result) __defProp$1(target, key, result);
951
973
  return result;
952
974
  };
975
+ var __publicField$1 = (obj, key, value) => __defNormalProp$1(obj, typeof key !== "symbol" ? key + "" : key, value);
953
976
  var AnalyticsProperty = class extends SmrtObject {
954
977
  tenantId = null;
955
978
  /**
@@ -1105,6 +1128,7 @@ var AnalyticsProperty = class extends SmrtObject {
1105
1128
  `, { includeData: false });
1106
1129
  }
1107
1130
  };
1131
+ __publicField$1(AnalyticsProperty, "__smrtPackage__", "@happyvertical/smrt-analytics");
1108
1132
  __decorateClass$1([tenantId({ nullable: true })], AnalyticsProperty.prototype, "tenantId", 2);
1109
1133
  __decorateClass$1([field({ sensitive: true })], AnalyticsProperty.prototype, "apiSecret", 2);
1110
1134
  __decorateClass$1([field({ sensitive: true })], AnalyticsProperty.prototype, "providerMetadata", 2);
@@ -1235,12 +1259,19 @@ var AnalyticsPropertyCollection = class extends SmrtCollection {
1235
1259
  //#region src/models/AnalyticsReport.ts
1236
1260
  var __defProp = Object.defineProperty;
1237
1261
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
1262
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, {
1263
+ enumerable: true,
1264
+ configurable: true,
1265
+ writable: true,
1266
+ value
1267
+ }) : obj[key] = value;
1238
1268
  var __decorateClass = (decorators, target, key, kind) => {
1239
1269
  var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
1240
1270
  for (var i = decorators.length - 1, decorator; i >= 0; i--) if (decorator = decorators[i]) result = (kind ? decorator(target, key, result) : decorator(result)) || result;
1241
1271
  if (kind && result) __defProp(target, key, result);
1242
1272
  return result;
1243
1273
  };
1274
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
1244
1275
  var AnalyticsReport = class extends SmrtObject {
1245
1276
  tenantId = null;
1246
1277
  propertyId = "";
@@ -1556,6 +1587,7 @@ For this predicate, only treat higher values as favorable for user growth, engag
1556
1587
  return /^\s*(yes|true)\b/i.test(response);
1557
1588
  }
1558
1589
  };
1590
+ __publicField(AnalyticsReport, "__smrtPackage__", "@happyvertical/smrt-analytics");
1559
1591
  __decorateClass([tenantId({ nullable: true })], AnalyticsReport.prototype, "tenantId", 2);
1560
1592
  __decorateClass([foreignKey("AnalyticsProperty")], AnalyticsReport.prototype, "propertyId", 2);
1561
1593
  AnalyticsReport = __decorateClass([TenantScoped({ mode: "optional" }), smrt({