@acorex-platform/module-activity-insight-client 0.0.38 → 0.0.46

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.
Files changed (44) hide show
  1. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-activity-data-source.mjs +14 -0
  2. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-activity-data-source.mjs.map +1 -1
  3. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-activity-event.mjs +14 -0
  4. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-activity-event.mjs.map +1 -1
  5. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-activity-saved-view.mjs +13 -0
  6. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-activity-saved-view.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-masking-policy.mjs +14 -0
  8. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-masking-policy.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-retention-policy.mjs +14 -0
  10. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-retention-policy.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-sampling-policy.mjs +14 -0
  12. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-sampling-policy.mjs.map +1 -1
  13. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-tracking-rule.mjs +14 -0
  14. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entities-tracking-rule.mjs.map +1 -1
  15. package/fesm2022/{acorex-platform-module-activity-insight-client-contracts-entity-catalog-acorex-platform-module-activity-insight-client-contracts-entity-catalog-DKOEPUGX.mjs → acorex-platform-module-activity-insight-client-contracts-entity-catalog-acorex-platform-module-activity-insight-client-contracts-entity-catalog--BNtGnVs.mjs} +8 -8
  16. package/fesm2022/{acorex-platform-module-activity-insight-client-contracts-entity-catalog-acorex-platform-module-activity-insight-client-contracts-entity-catalog-DKOEPUGX.mjs.map → acorex-platform-module-activity-insight-client-contracts-entity-catalog-acorex-platform-module-activity-insight-client-contracts-entity-catalog--BNtGnVs.mjs.map} +1 -1
  17. package/fesm2022/{acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-data-source.entity-DIZMV16f.mjs → acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-data-source.entity-CcldFHxq.mjs} +16 -2
  18. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-data-source.entity-CcldFHxq.mjs.map +1 -0
  19. package/fesm2022/{acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-event.entity-CERoGcZn.mjs → acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-event.entity-Df8spwIT.mjs} +16 -2
  20. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-event.entity-Df8spwIT.mjs.map +1 -0
  21. package/fesm2022/{acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-saved-view.entity-Ch3bWS9X.mjs → acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-saved-view.entity-DbexCdAG.mjs} +15 -2
  22. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-saved-view.entity-DbexCdAG.mjs.map +1 -0
  23. package/fesm2022/{acorex-platform-module-activity-insight-client-contracts-entity-catalog-masking-policy.entity-DzJ1RsQz.mjs → acorex-platform-module-activity-insight-client-contracts-entity-catalog-masking-policy.entity-CnasWIj2.mjs} +16 -2
  24. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-masking-policy.entity-CnasWIj2.mjs.map +1 -0
  25. package/fesm2022/{acorex-platform-module-activity-insight-client-contracts-entity-catalog-retention-policy.entity-CLANdFVA.mjs → acorex-platform-module-activity-insight-client-contracts-entity-catalog-retention-policy.entity-BnvCC3Hg.mjs} +16 -2
  26. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-retention-policy.entity-BnvCC3Hg.mjs.map +1 -0
  27. package/fesm2022/{acorex-platform-module-activity-insight-client-contracts-entity-catalog-sampling-policy.entity-CBYQWubG.mjs → acorex-platform-module-activity-insight-client-contracts-entity-catalog-sampling-policy.entity-DzlY5I0z.mjs} +16 -2
  28. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-sampling-policy.entity-DzlY5I0z.mjs.map +1 -0
  29. package/fesm2022/{acorex-platform-module-activity-insight-client-contracts-entity-catalog-tracking-rule.entity-D7xdHB-C.mjs → acorex-platform-module-activity-insight-client-contracts-entity-catalog-tracking-rule.entity-Bk8dMrxk.mjs} +16 -2
  30. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-tracking-rule.entity-Bk8dMrxk.mjs.map +1 -0
  31. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog.mjs +1 -1
  32. package/fesm2022/acorex-platform-module-activity-insight-client-contracts.mjs +16 -1
  33. package/fesm2022/acorex-platform-module-activity-insight-client-contracts.mjs.map +1 -1
  34. package/fesm2022/acorex-platform-module-activity-insight-client.mjs +6 -22
  35. package/fesm2022/acorex-platform-module-activity-insight-client.mjs.map +1 -1
  36. package/package.json +1 -1
  37. package/types/acorex-platform-module-activity-insight-client-contracts.d.ts +5 -1
  38. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-data-source.entity-DIZMV16f.mjs.map +0 -1
  39. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-event.entity-CERoGcZn.mjs.map +0 -1
  40. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-activity-saved-view.entity-Ch3bWS9X.mjs.map +0 -1
  41. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-masking-policy.entity-DzJ1RsQz.mjs.map +0 -1
  42. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-retention-policy.entity-CLANdFVA.mjs.map +0 -1
  43. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-sampling-policy.entity-CBYQWubG.mjs.map +0 -1
  44. package/fesm2022/acorex-platform-module-activity-insight-client-contracts-entity-catalog-tracking-rule.entity-D7xdHB-C.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-activity-insight-client-contracts.mjs","sources":["../../../../libs/modules/activity-insight/contracts/src/menu.keys.ts","../../../../libs/modules/activity-insight/contracts/src/permission.keys.ts","../../../../libs/modules/activity-insight/contracts/src/settings.keys.ts","../../../../libs/modules/activity-insight/contracts/src/queries.keys.ts","../../../../libs/modules/activity-insight/contracts/src/commands.keys.ts","../../../../libs/modules/activity-insight/contracts/src/transport.keys.ts","../../../../libs/modules/activity-insight/contracts/src/root-config.ts","../../../../libs/modules/activity-insight/contracts/src/events/activity-event-names.ts","../../../../libs/modules/activity-insight/contracts/src/events/tracking-policy.types.ts","../../../../libs/modules/activity-insight/contracts/src/events/masking.util.ts","../../../../libs/modules/activity-insight/contracts/src/index.ts","../../../../libs/modules/activity-insight/contracts/src/acorex-platform-module-activity-insight-client-contracts.ts"],"sourcesContent":["export const AXMActivityInsightMenuKeys = {\n ActivityInsight: {\n Root: 'ActivityInsight:Menu:Root',\n Events: 'ActivityInsight:Menu:Events',\n Timelines: 'ActivityInsight:Menu:Timelines',\n Policies: 'ActivityInsight:Menu:Policies',\n },\n} as const;\n","/**\n * Insights & Reporting capabilities used by this module.\n * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).\n */\nexport const AXPInsightsReportingPermissionKeys = {\n Access: 'InsightsReporting:Permission:Access',\n MaintainReports: 'InsightsReporting:Permission:MaintainReports',\n MaintainData: 'InsightsReporting:Permission:MaintainData',\n ViewActivityInsight: 'InsightsReporting:Permission:ViewActivityInsight',\n ManageActivityInsight: 'InsightsReporting:Permission:ManageActivityInsight',\n Setup: 'InsightsReporting:Permission:Setup',\n} as const;\n\n/**\n * @deprecated Prefer {@link AXPInsightsReportingPermissionKeys}.\n * Legacy nested shape kept so existing imports compile during migration.\n */\nexport const AXMActivityInsightPermissionKeys = {\n ActivityInsight: {\n Events: { View: AXPInsightsReportingPermissionKeys.ViewActivityInsight },\n Timelines: { View: AXPInsightsReportingPermissionKeys.ViewActivityInsight },\n Policies: { Manage: AXPInsightsReportingPermissionKeys.ManageActivityInsight },\n Admin: AXPInsightsReportingPermissionKeys.ManageActivityInsight,\n Management: AXPInsightsReportingPermissionKeys.ManageActivityInsight,\n },\n} as const;\n","export enum AXPActivityInsightSettings {\n //#region ---- Tracking Settings ----\n\n Enabled = 'ActivityInsight:Setting:Tracking.Enabled',\n FlushIntervalMs = 'ActivityInsight:Setting:Buffer.FlushIntervalMs',\n MaxBatchSize = 'ActivityInsight:Setting:Buffer.MaxBatchSize',\n MaxPayloadBytes = 'ActivityInsight:Setting:Buffer.MaxPayloadBytes',\n MaxQueueSize = 'ActivityInsight:Setting:Buffer.MaxQueueSize',\n FlushOnVisibilityHidden = 'ActivityInsight:Setting:Buffer.FlushOnVisibilityHidden',\n UseBeaconForFinalFlush = 'ActivityInsight:Setting:Buffer.UseBeaconForFinalFlush',\n\n //#endregion\n\n //#region ---- Privacy Settings ----\n\n MaskingEnabled = 'ActivityInsight:Setting:Privacy.MaskingEnabled',\n SamplingEnabled = 'ActivityInsight:Setting:Privacy.SamplingEnabled',\n TrackAiContent = 'ActivityInsight:Setting:Privacy.TrackAiContent',\n\n //#endregion\n}\n","//#region ---- Query Keys ----\n\nexport const AXMActivityInsightQueryKeys = {\n ActivityEvent: {\n List: 'ActivityInsight:ActivityEvent:List',\n GetOne: 'ActivityInsight:ActivityEvent:GetOne',\n Aggregate: 'ActivityInsight:ActivityEvent:Aggregate',\n },\n ActivityTimeline: {\n Session: 'ActivityInsight:ActivityTimeline:Session',\n Journey: 'ActivityInsight:ActivityTimeline:Journey',\n Entity: 'ActivityInsight:ActivityTimeline:Entity',\n },\n} as const;\n\n//#endregion\n","//#region ---- Command Keys ----\n\nexport const AXMActivityInsightCommandKeys = {\n ActivityEvent: {\n Export: 'ActivityInsight:ActivityEvent:Export',\n },\n} as const;\n\n//#endregion\n","//#region ---- Activity insight transport keys ----\n\nexport const AXMActivityInsightTransportKeys = {\n Event: {\n BulkIngest: 'ActivityInsight:Event:BulkIngest',\n },\n} as const;\n\n//#endregion\n","const config = {\n i18n: 'activity-insight',\n};\n\nexport const RootConfig = {\n config,\n module: {\n route: 'activity-insight',\n module: 'ActivityInsight',\n name: 'ActivityInsight',\n title: '@activity-insight:module.title',\n icon: 'fa-light fa-chart-network',\n },\n entities: {\n activityEvent: {\n name: 'ActivityEvent',\n title: '@activity-insight:entities.activity-event.title',\n titlePlural: '@activity-insight:entities.activity-event.plural',\n icon: 'fa-light fa-wave-pulse',\n },\n trackingRule: {\n name: 'TrackingRule',\n title: '@activity-insight:entities.tracking-rule.title',\n titlePlural: '@activity-insight:entities.tracking-rule.plural',\n icon: 'fa-light fa-sliders',\n },\n activitySavedView: {\n name: 'ActivitySavedView',\n title: '@activity-insight:entities.saved-view.title',\n titlePlural: '@activity-insight:entities.saved-view.plural',\n icon: 'fa-light fa-bookmark',\n },\n retentionPolicy: {\n name: 'RetentionPolicy',\n title: '@activity-insight:entities.retention-policy.title',\n titlePlural: '@activity-insight:entities.retention-policy.plural',\n icon: 'fa-light fa-calendar-clock',\n },\n maskingPolicy: {\n name: 'MaskingPolicy',\n title: '@activity-insight:entities.masking-policy.title',\n titlePlural: '@activity-insight:entities.masking-policy.plural',\n icon: 'fa-light fa-eye-slash',\n },\n samplingPolicy: {\n name: 'SamplingPolicy',\n title: '@activity-insight:entities.sampling-policy.title',\n titlePlural: '@activity-insight:entities.sampling-policy.plural',\n icon: 'fa-light fa-percent',\n },\n activityDataSource: {\n name: 'ActivityDataSource',\n title: '@activity-insight:entities.data-source.title',\n titlePlural: '@activity-insight:entities.data-source.plural',\n icon: 'fa-light fa-database',\n },\n },\n} as const;\n","export const AXMActivityEventNames = {\n Page: {\n Viewed: 'page.viewed',\n },\n Entity: {\n ListOpened: 'entity.list.opened',\n DetailOpened: 'entity.detail.opened',\n FilterApplied: 'entity.filter.applied',\n SearchApplied: 'entity.search.applied',\n SortApplied: 'entity.sort.applied',\n Created: 'entity.created',\n Updated: 'entity.updated',\n Deleted: 'entity.deleted',\n },\n Command: {\n Executed: 'command.executed',\n },\n Query: {\n Executed: 'query.executed',\n },\n Form: {\n Submitted: 'form.submitted',\n ValidationFailed: 'form.validation.failed',\n FieldChanged: 'form.field.changed',\n },\n Ai: {\n ChatStarted: 'ai.chat.started',\n MessageSent: 'ai.message.sent',\n GenerationStarted: 'ai.generation.started',\n GenerationCompleted: 'ai.generation.completed',\n GenerationStopped: 'ai.generation.stopped',\n ImageGenerated: 'ai.image.generated',\n },\n Workflow: {\n ActionOpened: 'workflow.action.opened',\n StepTransitioned: 'workflow.step.transitioned',\n },\n Security: {\n PermissionAdded: 'security.permission.added',\n RoleUpdated: 'security.role.updated',\n },\n Error: {\n Seen: 'error.seen',\n },\n Process: {\n Abandoned: 'process.abandoned',\n },\n} as const;\n","import type { AXMActivityEventPriority, AXMActivityEventSeverity } from './activity-event.types';\n\nexport interface AXMActivityTrackingPolicy {\n enabled?: boolean;\n list?: {\n open?: boolean;\n filterApply?: boolean;\n search?: boolean;\n sort?: boolean;\n export?: boolean;\n };\n detail?: {\n open?: boolean;\n tabChange?: boolean;\n };\n form?: {\n createStart?: boolean;\n updateStart?: boolean;\n submit?: boolean;\n validationError?: boolean;\n fieldChange?: {\n enabled?: boolean;\n include?: string[];\n exclude?: string[];\n };\n };\n commands?: Record<string, boolean | { enabled?: boolean; severity?: AXMActivityEventSeverity }>;\n queries?: Record<string, boolean>;\n masking?: {\n fields?: string[];\n };\n sampling?: Record<string, number>;\n}\n\nexport interface AXMActivityMaskingPolicy {\n enabled?: boolean;\n denylist?: string[];\n allowlist?: string[];\n maxPropertyBytes?: number;\n}\n\nexport interface AXMActivitySamplingPolicy {\n rates?: Record<string, number>;\n defaultRate?: number;\n}\n\nexport interface AXMActivityRetentionPolicy {\n enabled?: boolean;\n periodDays?: number;\n}\n\nexport interface AXMActivityProviderConfig {\n provider: 'noop' | 'console' | 'in-memory' | 'elasticsearch' | 'clickhouse' | 'posthog' | 'matomo' | 'custom-rest';\n options?: Record<string, unknown>;\n}\n\nexport interface AXMActivityBufferConfig {\n flushIntervalMs: number;\n maxBatchSize: number;\n maxPayloadBytes: number;\n finalFlushMaxBytes: number;\n maxQueueSize: number;\n retryLimit: number;\n retryBackoffMs: number;\n maxPropertyBytes: number;\n flushOnVisibilityHidden: boolean;\n useBeaconForFinalFlush: boolean;\n}\n\nexport const AXM_DEFAULT_ACTIVITY_BUFFER_CONFIG: AXMActivityBufferConfig = {\n flushIntervalMs: 5000,\n maxBatchSize: 50,\n maxPayloadBytes: 48_000,\n finalFlushMaxBytes: 32_000,\n maxQueueSize: 1000,\n retryLimit: 3,\n retryBackoffMs: 1000,\n maxPropertyBytes: 4000,\n flushOnVisibilityHidden: true,\n useBeaconForFinalFlush: true,\n};\n\nexport interface AXMActivityTrackingRule {\n source: string;\n eventName: string;\n category?: string;\n priority?: AXMActivityEventPriority;\n severity?: AXMActivityEventSeverity;\n samplingRate?: number;\n}\n","import type { AXMActivityMaskingPolicy } from './tracking-policy.types';\n\nexport const AXM_DEFAULT_MASKING_DENYLIST = [\n 'password',\n 'token',\n 'secret',\n 'accessToken',\n 'refreshToken',\n 'authorization',\n 'apiKey',\n 'privateKey',\n 'creditCard',\n] as const;\n\nconst REDACTED = '***';\n\nfunction shouldMaskKey(key: string, policy?: AXMActivityMaskingPolicy): boolean {\n if (!policy?.enabled && policy?.enabled !== undefined) {\n return false;\n }\n const lower = key.toLowerCase();\n if (policy?.allowlist?.length) {\n return !policy.allowlist.some((k) => lower.includes(k.toLowerCase()));\n }\n const denylist = [...AXM_DEFAULT_MASKING_DENYLIST, ...(policy?.denylist ?? [])];\n return denylist.some((k) => lower.includes(k.toLowerCase()));\n}\n\nexport function maskActivityProperties(\n value: unknown,\n policy?: AXMActivityMaskingPolicy,\n depth = 0,\n): unknown {\n if (value == null || depth > 8) {\n return value;\n }\n if (Array.isArray(value)) {\n return value.map((item) => maskActivityProperties(item, policy, depth + 1));\n }\n if (typeof value === 'object') {\n const out: Record<string, unknown> = {};\n for (const [key, child] of Object.entries(value as Record<string, unknown>)) {\n out[key] = shouldMaskKey(key, policy) ? REDACTED : maskActivityProperties(child, policy, depth + 1);\n }\n return out;\n }\n return value;\n}\n\nexport function truncateActivityProperties(\n properties: Record<string, unknown> | undefined,\n maxBytes: number,\n): Record<string, unknown> | undefined {\n if (!properties) {\n return properties;\n }\n const json = JSON.stringify(properties);\n if (json.length <= maxBytes) {\n return properties;\n }\n return { _truncated: true, preview: json.slice(0, maxBytes) };\n}\n","//#region ---- Contracts barrel ----\n\nexport * from './menu.keys';\nexport * from './permission.keys';\nexport * from './settings.keys';\nexport * from './queries.keys';\nexport * from './commands.keys';\nexport * from './transport.keys';\nexport * from './dto';\nexport * from './root-config';\nexport * from './events/activity-event.types';\nexport * from './events/activity-event-names';\nexport * from './events/tracking-policy.types';\nexport * from './events/masking.util';\n\n//#endregion\n\n// Entity layout factories live in server; keep barrel as empty module for compatibility.\nexport {};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-module-activity-insight-client-contracts.mjs","sources":["../../../../libs/modules/activity-insight/contracts/src/menu.keys.ts","../../../../libs/modules/activity-insight/contracts/src/permission.keys.ts","../../../../libs/modules/activity-insight/contracts/src/settings.keys.ts","../../../../libs/modules/activity-insight/contracts/src/queries.keys.ts","../../../../libs/modules/activity-insight/contracts/src/commands.keys.ts","../../../../libs/modules/activity-insight/contracts/src/transport.keys.ts","../../../../libs/modules/activity-insight/contracts/src/root-config.ts","../../../../libs/modules/activity-insight/contracts/src/manifest.ts","../../../../libs/modules/activity-insight/contracts/src/events/activity-event-names.ts","../../../../libs/modules/activity-insight/contracts/src/events/tracking-policy.types.ts","../../../../libs/modules/activity-insight/contracts/src/events/masking.util.ts","../../../../libs/modules/activity-insight/contracts/src/index.ts","../../../../libs/modules/activity-insight/contracts/src/acorex-platform-module-activity-insight-client-contracts.ts"],"sourcesContent":["export const AXMActivityInsightMenuKeys = {\n ActivityInsight: {\n Root: 'ActivityInsight:Menu:Root',\n Events: 'ActivityInsight:Menu:Events',\n Timelines: 'ActivityInsight:Menu:Timelines',\n Policies: 'ActivityInsight:Menu:Policies',\n },\n} as const;\n","/**\n * Insights & Reporting capabilities used by this module.\n * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).\n */\nexport const AXPInsightsReportingPermissionKeys = {\n Access: 'InsightsReporting:Permission:Access',\n MaintainReports: 'InsightsReporting:Permission:MaintainReports',\n MaintainData: 'InsightsReporting:Permission:MaintainData',\n ViewActivityInsight: 'InsightsReporting:Permission:ViewActivityInsight',\n ManageActivityInsight: 'InsightsReporting:Permission:ManageActivityInsight',\n Setup: 'InsightsReporting:Permission:Setup',\n} as const;\n\n/**\n * @deprecated Prefer {@link AXPInsightsReportingPermissionKeys}.\n * Legacy nested shape kept so existing imports compile during migration.\n */\nexport const AXMActivityInsightPermissionKeys = {\n ActivityInsight: {\n Events: { View: AXPInsightsReportingPermissionKeys.ViewActivityInsight },\n Timelines: { View: AXPInsightsReportingPermissionKeys.ViewActivityInsight },\n Policies: { Manage: AXPInsightsReportingPermissionKeys.ManageActivityInsight },\n Admin: AXPInsightsReportingPermissionKeys.ManageActivityInsight,\n Management: AXPInsightsReportingPermissionKeys.ManageActivityInsight,\n },\n} as const;\n","export enum AXPActivityInsightSettings {\n //#region ---- Tracking Settings ----\n\n Enabled = 'ActivityInsight:Setting:Tracking.Enabled',\n FlushIntervalMs = 'ActivityInsight:Setting:Buffer.FlushIntervalMs',\n MaxBatchSize = 'ActivityInsight:Setting:Buffer.MaxBatchSize',\n MaxPayloadBytes = 'ActivityInsight:Setting:Buffer.MaxPayloadBytes',\n MaxQueueSize = 'ActivityInsight:Setting:Buffer.MaxQueueSize',\n FlushOnVisibilityHidden = 'ActivityInsight:Setting:Buffer.FlushOnVisibilityHidden',\n UseBeaconForFinalFlush = 'ActivityInsight:Setting:Buffer.UseBeaconForFinalFlush',\n\n //#endregion\n\n //#region ---- Privacy Settings ----\n\n MaskingEnabled = 'ActivityInsight:Setting:Privacy.MaskingEnabled',\n SamplingEnabled = 'ActivityInsight:Setting:Privacy.SamplingEnabled',\n TrackAiContent = 'ActivityInsight:Setting:Privacy.TrackAiContent',\n\n //#endregion\n}\n","//#region ---- Query Keys ----\n\nexport const AXMActivityInsightQueryKeys = {\n ActivityEvent: {\n List: 'ActivityInsight:ActivityEvent:List',\n GetOne: 'ActivityInsight:ActivityEvent:GetOne',\n Aggregate: 'ActivityInsight:ActivityEvent:Aggregate',\n },\n ActivityTimeline: {\n Session: 'ActivityInsight:ActivityTimeline:Session',\n Journey: 'ActivityInsight:ActivityTimeline:Journey',\n Entity: 'ActivityInsight:ActivityTimeline:Entity',\n },\n} as const;\n\n//#endregion\n","//#region ---- Command Keys ----\n\nexport const AXMActivityInsightCommandKeys = {\n ActivityEvent: {\n Export: 'ActivityInsight:ActivityEvent:Export',\n },\n} as const;\n\n//#endregion\n","//#region ---- Activity insight transport keys ----\n\nexport const AXMActivityInsightTransportKeys = {\n Event: {\n BulkIngest: 'ActivityInsight:Event:BulkIngest',\n },\n} as const;\n\n//#endregion\n","const config = {\n i18n: 'activity-insight',\n};\n\nexport const RootConfig = {\n config,\n module: {\n route: 'activity-insight',\n module: 'ActivityInsight',\n name: 'ActivityInsight',\n title: '@activity-insight:module.title',\n icon: 'fa-light fa-chart-network',\n },\n entities: {\n activityEvent: {\n name: 'ActivityEvent',\n title: '@activity-insight:entities.activity-event.title',\n titlePlural: '@activity-insight:entities.activity-event.plural',\n icon: 'fa-light fa-wave-pulse',\n },\n trackingRule: {\n name: 'TrackingRule',\n title: '@activity-insight:entities.tracking-rule.title',\n titlePlural: '@activity-insight:entities.tracking-rule.plural',\n icon: 'fa-light fa-sliders',\n },\n activitySavedView: {\n name: 'ActivitySavedView',\n title: '@activity-insight:entities.saved-view.title',\n titlePlural: '@activity-insight:entities.saved-view.plural',\n icon: 'fa-light fa-bookmark',\n },\n retentionPolicy: {\n name: 'RetentionPolicy',\n title: '@activity-insight:entities.retention-policy.title',\n titlePlural: '@activity-insight:entities.retention-policy.plural',\n icon: 'fa-light fa-calendar-clock',\n },\n maskingPolicy: {\n name: 'MaskingPolicy',\n title: '@activity-insight:entities.masking-policy.title',\n titlePlural: '@activity-insight:entities.masking-policy.plural',\n icon: 'fa-light fa-eye-slash',\n },\n samplingPolicy: {\n name: 'SamplingPolicy',\n title: '@activity-insight:entities.sampling-policy.title',\n titlePlural: '@activity-insight:entities.sampling-policy.plural',\n icon: 'fa-light fa-percent',\n },\n activityDataSource: {\n name: 'ActivityDataSource',\n title: '@activity-insight:entities.data-source.title',\n titlePlural: '@activity-insight:entities.data-source.plural',\n icon: 'fa-light fa-database',\n },\n },\n} as const;\n","//#region ---- Imports ----\n\nimport { AXPModuleManifest } from '@acorex-platform/framework-shared/core';\nimport { RootConfig } from './root-config';\n\n//#endregion\n\n//#region ---- Manifest Definition ----\n\nexport const ActivityInsightManifest: AXPModuleManifest = {\n name: RootConfig.module.name,\n version: '1.0.0',\n title: RootConfig.module.title,\n icon: RootConfig.module.icon,\n i18n: RootConfig.config.i18n,\n type: 'platform',\n domain: 'platform',\n dependencies: [],\n};\n\n//#endregion\n","export const AXMActivityEventNames = {\n Page: {\n Viewed: 'page.viewed',\n },\n Entity: {\n ListOpened: 'entity.list.opened',\n DetailOpened: 'entity.detail.opened',\n FilterApplied: 'entity.filter.applied',\n SearchApplied: 'entity.search.applied',\n SortApplied: 'entity.sort.applied',\n Created: 'entity.created',\n Updated: 'entity.updated',\n Deleted: 'entity.deleted',\n },\n Command: {\n Executed: 'command.executed',\n },\n Query: {\n Executed: 'query.executed',\n },\n Form: {\n Submitted: 'form.submitted',\n ValidationFailed: 'form.validation.failed',\n FieldChanged: 'form.field.changed',\n },\n Ai: {\n ChatStarted: 'ai.chat.started',\n MessageSent: 'ai.message.sent',\n GenerationStarted: 'ai.generation.started',\n GenerationCompleted: 'ai.generation.completed',\n GenerationStopped: 'ai.generation.stopped',\n ImageGenerated: 'ai.image.generated',\n },\n Workflow: {\n ActionOpened: 'workflow.action.opened',\n StepTransitioned: 'workflow.step.transitioned',\n },\n Security: {\n PermissionAdded: 'security.permission.added',\n RoleUpdated: 'security.role.updated',\n },\n Error: {\n Seen: 'error.seen',\n },\n Process: {\n Abandoned: 'process.abandoned',\n },\n} as const;\n","import type { AXMActivityEventPriority, AXMActivityEventSeverity } from './activity-event.types';\n\nexport interface AXMActivityTrackingPolicy {\n enabled?: boolean;\n list?: {\n open?: boolean;\n filterApply?: boolean;\n search?: boolean;\n sort?: boolean;\n export?: boolean;\n };\n detail?: {\n open?: boolean;\n tabChange?: boolean;\n };\n form?: {\n createStart?: boolean;\n updateStart?: boolean;\n submit?: boolean;\n validationError?: boolean;\n fieldChange?: {\n enabled?: boolean;\n include?: string[];\n exclude?: string[];\n };\n };\n commands?: Record<string, boolean | { enabled?: boolean; severity?: AXMActivityEventSeverity }>;\n queries?: Record<string, boolean>;\n masking?: {\n fields?: string[];\n };\n sampling?: Record<string, number>;\n}\n\nexport interface AXMActivityMaskingPolicy {\n enabled?: boolean;\n denylist?: string[];\n allowlist?: string[];\n maxPropertyBytes?: number;\n}\n\nexport interface AXMActivitySamplingPolicy {\n rates?: Record<string, number>;\n defaultRate?: number;\n}\n\nexport interface AXMActivityRetentionPolicy {\n enabled?: boolean;\n periodDays?: number;\n}\n\nexport interface AXMActivityProviderConfig {\n provider: 'noop' | 'console' | 'in-memory' | 'elasticsearch' | 'clickhouse' | 'posthog' | 'matomo' | 'custom-rest';\n options?: Record<string, unknown>;\n}\n\nexport interface AXMActivityBufferConfig {\n flushIntervalMs: number;\n maxBatchSize: number;\n maxPayloadBytes: number;\n finalFlushMaxBytes: number;\n maxQueueSize: number;\n retryLimit: number;\n retryBackoffMs: number;\n maxPropertyBytes: number;\n flushOnVisibilityHidden: boolean;\n useBeaconForFinalFlush: boolean;\n}\n\nexport const AXM_DEFAULT_ACTIVITY_BUFFER_CONFIG: AXMActivityBufferConfig = {\n flushIntervalMs: 5000,\n maxBatchSize: 50,\n maxPayloadBytes: 48_000,\n finalFlushMaxBytes: 32_000,\n maxQueueSize: 1000,\n retryLimit: 3,\n retryBackoffMs: 1000,\n maxPropertyBytes: 4000,\n flushOnVisibilityHidden: true,\n useBeaconForFinalFlush: true,\n};\n\nexport interface AXMActivityTrackingRule {\n source: string;\n eventName: string;\n category?: string;\n priority?: AXMActivityEventPriority;\n severity?: AXMActivityEventSeverity;\n samplingRate?: number;\n}\n","import type { AXMActivityMaskingPolicy } from './tracking-policy.types';\n\nexport const AXM_DEFAULT_MASKING_DENYLIST = [\n 'password',\n 'token',\n 'secret',\n 'accessToken',\n 'refreshToken',\n 'authorization',\n 'apiKey',\n 'privateKey',\n 'creditCard',\n] as const;\n\nconst REDACTED = '***';\n\nfunction shouldMaskKey(key: string, policy?: AXMActivityMaskingPolicy): boolean {\n if (!policy?.enabled && policy?.enabled !== undefined) {\n return false;\n }\n const lower = key.toLowerCase();\n if (policy?.allowlist?.length) {\n return !policy.allowlist.some((k) => lower.includes(k.toLowerCase()));\n }\n const denylist = [...AXM_DEFAULT_MASKING_DENYLIST, ...(policy?.denylist ?? [])];\n return denylist.some((k) => lower.includes(k.toLowerCase()));\n}\n\nexport function maskActivityProperties(\n value: unknown,\n policy?: AXMActivityMaskingPolicy,\n depth = 0,\n): unknown {\n if (value == null || depth > 8) {\n return value;\n }\n if (Array.isArray(value)) {\n return value.map((item) => maskActivityProperties(item, policy, depth + 1));\n }\n if (typeof value === 'object') {\n const out: Record<string, unknown> = {};\n for (const [key, child] of Object.entries(value as Record<string, unknown>)) {\n out[key] = shouldMaskKey(key, policy) ? REDACTED : maskActivityProperties(child, policy, depth + 1);\n }\n return out;\n }\n return value;\n}\n\nexport function truncateActivityProperties(\n properties: Record<string, unknown> | undefined,\n maxBytes: number,\n): Record<string, unknown> | undefined {\n if (!properties) {\n return properties;\n }\n const json = JSON.stringify(properties);\n if (json.length <= maxBytes) {\n return properties;\n }\n return { _truncated: true, preview: json.slice(0, maxBytes) };\n}\n","//#region ---- Contracts barrel ----\n\nexport * from './menu.keys';\nexport * from './permission.keys';\nexport * from './settings.keys';\nexport * from './queries.keys';\nexport * from './commands.keys';\nexport * from './transport.keys';\nexport * from './dto';\nexport * from './root-config';\nexport * from './manifest';\nexport * from './events/activity-event.types';\nexport * from './events/activity-event-names';\nexport * from './events/tracking-policy.types';\nexport * from './events/masking.util';\n\n//#endregion\n\n// Entity layout factories live in server; keep barrel as empty module for compatibility.\nexport {};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AXPHookService, AXPBroadcastEventService, AXP_MODULE_MANIFEST_PROVIDER, AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, provideAppStartUpTask, AXP_APP_STARTUP_PRIORITY } from '@acorex-platform/framework-client/core';
1
+ import { AXPHookService, AXPBroadcastEventService, AXP_HOOK_PROVIDER, provideAppStartUpTask, AXP_APP_STARTUP_PRIORITY } from '@acorex-platform/framework-client/core';
2
2
  import { AXPSessionService, AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex-platform/framework-client/auth';
3
3
  import { AXPEntityService, AXP_ENTITY_ACTION_PLUGIN, AXP_ENTITY_MODIFIER } from '@acorex-platform/framework-client/layout/entity';
4
4
  import { AXPRuntimeTransportService, AXPCommandEventsService, AXPRuntimeModule } from '@acorex-platform/framework-client/runtime';
@@ -13,21 +13,6 @@ import { AXPCommonPermissionGroupKeys } from '@acorex-platform/module-common-cli
13
13
  import { distinctUntilChanged, filter } from 'rxjs';
14
14
  import { AXMActivityInsightTransportKeys } from '@acorex-platform/module-activity-insight-client/contracts';
15
15
 
16
- //#region ---- Imports ----
17
- //#endregion
18
- //#region ---- Manifest Definition ----
19
- const ActivityInsightManifest = {
20
- name: RootConfig.module.name,
21
- version: '1.0.0',
22
- title: RootConfig.module.title,
23
- icon: RootConfig.module.icon,
24
- i18n: RootConfig.config.i18n,
25
- type: 'platform',
26
- domain: 'platform',
27
- dependencies: [],
28
- };
29
- //#endregion
30
-
31
16
  //#region ---- Imports ----
32
17
  const ADMINISTRATION_MENU_KEY = 'Common:Menu:Administration';
33
18
  //#endregion
@@ -1437,6 +1422,7 @@ function createHookProvider(key, handler) {
1437
1422
  execute: (data) => {
1438
1423
  const svc = inject(AXMActivityInsightEntityInstrumentation);
1439
1424
  handler(svc, data);
1425
+ return data;
1440
1426
  },
1441
1427
  };
1442
1428
  }
@@ -1480,7 +1466,6 @@ class AXMActivityInsightModule {
1480
1466
  multi: true,
1481
1467
  useFactory: () => activityInsightFeatureRoutes,
1482
1468
  },
1483
- { provide: AXP_MODULE_MANIFEST_PROVIDER, useValue: ActivityInsightManifest, multi: true },
1484
1469
  {
1485
1470
  provide: AXP_PERMISSION_DEFINITION_PROVIDER,
1486
1471
  useClass: AXMActivityInsightPermissionDefinitionProvider,
@@ -1492,12 +1477,12 @@ class AXMActivityInsightModule {
1492
1477
  { provide: AXP_ENTITY_ACTION_PLUGIN, useValue: activityTrackingPlugin, multi: true },
1493
1478
  { provide: AXP_ENTITY_MODIFIER, useValue: activityTrackingDefaultsModifier, multi: true },
1494
1479
  ...AXMActivityInsightEntityHookProviders.map((provider) => ({
1495
- provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1480
+ provide: AXP_HOOK_PROVIDER,
1496
1481
  useValue: provider,
1497
1482
  multi: true,
1498
1483
  })),
1499
1484
  {
1500
- provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1485
+ provide: AXP_HOOK_PROVIDER,
1501
1486
  multi: true,
1502
1487
  useFactory: () => ({
1503
1488
  key: ACTIVITY_TRACK_HOOK_KEY,
@@ -1544,7 +1529,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
1544
1529
  multi: true,
1545
1530
  useFactory: () => activityInsightFeatureRoutes,
1546
1531
  },
1547
- { provide: AXP_MODULE_MANIFEST_PROVIDER, useValue: ActivityInsightManifest, multi: true },
1548
1532
  {
1549
1533
  provide: AXP_PERMISSION_DEFINITION_PROVIDER,
1550
1534
  useClass: AXMActivityInsightPermissionDefinitionProvider,
@@ -1556,12 +1540,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
1556
1540
  { provide: AXP_ENTITY_ACTION_PLUGIN, useValue: activityTrackingPlugin, multi: true },
1557
1541
  { provide: AXP_ENTITY_MODIFIER, useValue: activityTrackingDefaultsModifier, multi: true },
1558
1542
  ...AXMActivityInsightEntityHookProviders.map((provider) => ({
1559
- provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1543
+ provide: AXP_HOOK_PROVIDER,
1560
1544
  useValue: provider,
1561
1545
  multi: true,
1562
1546
  })),
1563
1547
  {
1564
- provide: AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER,
1548
+ provide: AXP_HOOK_PROVIDER,
1565
1549
  multi: true,
1566
1550
  useFactory: () => ({
1567
1551
  key: ACTIVITY_TRACK_HOOK_KEY,