@explorins/pers-shared 2.1.80 → 2.1.82
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/cjs/index.d.ts +1 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/shared-lib/dto/analytics/base-analytics.dto.d.ts +38 -0
- package/dist/cjs/shared-lib/dto/analytics/base-analytics.dto.d.ts.map +1 -0
- package/dist/cjs/shared-lib/dto/analytics/base-analytics.dto.js +53 -0
- package/dist/cjs/shared-lib/dto/analytics/base-analytics.dto.js.map +1 -0
- package/dist/cjs/shared-lib/dto/{campaign → analytics}/campaign-claim-analytics.dto.d.ts +2 -2
- package/dist/cjs/shared-lib/dto/analytics/campaign-claim-analytics.dto.d.ts.map +1 -0
- package/dist/cjs/shared-lib/dto/{campaign → analytics}/campaign-claim-analytics.dto.js +2 -2
- package/dist/cjs/shared-lib/dto/analytics/campaign-claim-analytics.dto.js.map +1 -0
- package/dist/cjs/shared-lib/dto/{transaction → analytics}/transaction-analytics.request.dto.d.ts +4 -5
- package/dist/cjs/shared-lib/dto/analytics/transaction-analytics.request.dto.d.ts.map +1 -0
- package/dist/cjs/shared-lib/dto/{transaction → analytics}/transaction-analytics.request.dto.js +19 -10
- package/dist/cjs/shared-lib/dto/analytics/transaction-analytics.request.dto.js.map +1 -0
- package/dist/cjs/shared-lib/dto/{user-analytics.dto.d.ts → analytics/user-analytics.dto.d.ts} +16 -10
- package/dist/cjs/shared-lib/dto/analytics/user-analytics.dto.d.ts.map +1 -0
- package/dist/cjs/shared-lib/dto/{user-analytics.dto.js → analytics/user-analytics.dto.js} +56 -21
- package/dist/cjs/shared-lib/dto/analytics/user-analytics.dto.js.map +1 -0
- package/dist/cjs/shared-lib/dto/analytics/user-ranking-analytics.dto.d.ts +71 -0
- package/dist/cjs/shared-lib/dto/analytics/user-ranking-analytics.dto.d.ts.map +1 -0
- package/dist/cjs/shared-lib/dto/analytics/user-ranking-analytics.dto.js +242 -0
- package/dist/cjs/shared-lib/dto/analytics/user-ranking-analytics.dto.js.map +1 -0
- package/dist/cjs/shared-lib/dto/campaign/campaign-claim-analytics-request.dto.d.ts +3 -4
- package/dist/cjs/shared-lib/dto/campaign/campaign-claim-analytics-request.dto.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/campaign/campaign-claim-analytics-request.dto.js +12 -4
- package/dist/cjs/shared-lib/dto/campaign/campaign-claim-analytics-request.dto.js.map +1 -1
- package/dist/cjs/shared-lib/dto/index.d.ts +4 -2
- package/dist/cjs/shared-lib/dto/index.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/index.js +4 -2
- package/dist/cjs/shared-lib/dto/index.js.map +1 -1
- package/dist/cjs/shared-lib/dto/transaction/index.d.ts +1 -1
- package/dist/cjs/shared-lib/dto/transaction/index.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/transaction/index.js +1 -1
- package/dist/cjs/shared-lib/dto/transaction/index.js.map +1 -1
- package/dist/cjs/shared-lib/interfaces/transaction-analytics-request.interface.d.ts +1 -1
- package/dist/cjs/shared-lib/interfaces/transaction-analytics-request.interface.d.ts.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/shared-lib/dto/analytics/base-analytics.dto.d.ts +38 -0
- package/dist/esm/shared-lib/dto/analytics/base-analytics.dto.d.ts.map +1 -0
- package/dist/esm/shared-lib/dto/analytics/base-analytics.dto.js +43 -0
- package/dist/esm/shared-lib/dto/analytics/base-analytics.dto.js.map +1 -0
- package/dist/esm/shared-lib/dto/{campaign → analytics}/campaign-claim-analytics.dto.d.ts +2 -2
- package/dist/esm/shared-lib/dto/analytics/campaign-claim-analytics.dto.d.ts.map +1 -0
- package/dist/esm/shared-lib/dto/{campaign → analytics}/campaign-claim-analytics.dto.js +2 -2
- package/dist/esm/shared-lib/dto/analytics/campaign-claim-analytics.dto.js.map +1 -0
- package/dist/esm/shared-lib/dto/{transaction → analytics}/transaction-analytics.request.dto.d.ts +4 -5
- package/dist/esm/shared-lib/dto/analytics/transaction-analytics.request.dto.d.ts.map +1 -0
- package/dist/esm/shared-lib/dto/{transaction → analytics}/transaction-analytics.request.dto.js +19 -10
- package/dist/esm/shared-lib/dto/analytics/transaction-analytics.request.dto.js.map +1 -0
- package/dist/esm/shared-lib/dto/{user-analytics.dto.d.ts → analytics/user-analytics.dto.d.ts} +16 -10
- package/dist/esm/shared-lib/dto/analytics/user-analytics.dto.d.ts.map +1 -0
- package/dist/esm/shared-lib/dto/{user-analytics.dto.js → analytics/user-analytics.dto.js} +54 -21
- package/dist/esm/shared-lib/dto/analytics/user-analytics.dto.js.map +1 -0
- package/dist/esm/shared-lib/dto/analytics/user-ranking-analytics.dto.d.ts +71 -0
- package/dist/esm/shared-lib/dto/analytics/user-ranking-analytics.dto.d.ts.map +1 -0
- package/dist/esm/shared-lib/dto/analytics/user-ranking-analytics.dto.js +215 -0
- package/dist/esm/shared-lib/dto/analytics/user-ranking-analytics.dto.js.map +1 -0
- package/dist/esm/shared-lib/dto/campaign/campaign-claim-analytics-request.dto.d.ts +3 -4
- package/dist/esm/shared-lib/dto/campaign/campaign-claim-analytics-request.dto.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/campaign/campaign-claim-analytics-request.dto.js +12 -4
- package/dist/esm/shared-lib/dto/campaign/campaign-claim-analytics-request.dto.js.map +1 -1
- package/dist/esm/shared-lib/dto/index.d.ts +4 -2
- package/dist/esm/shared-lib/dto/index.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/index.js +4 -2
- package/dist/esm/shared-lib/dto/index.js.map +1 -1
- package/dist/esm/shared-lib/dto/transaction/index.d.ts +1 -1
- package/dist/esm/shared-lib/dto/transaction/index.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/transaction/index.js +1 -1
- package/dist/esm/shared-lib/dto/transaction/index.js.map +1 -1
- package/dist/esm/shared-lib/interfaces/transaction-analytics-request.interface.d.ts +1 -1
- package/dist/esm/shared-lib/interfaces/transaction-analytics-request.interface.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/cjs/shared-lib/dto/campaign/campaign-claim-analytics.dto.d.ts.map +0 -1
- package/dist/cjs/shared-lib/dto/campaign/campaign-claim-analytics.dto.js.map +0 -1
- package/dist/cjs/shared-lib/dto/transaction/transaction-analytics.request.dto.d.ts.map +0 -1
- package/dist/cjs/shared-lib/dto/transaction/transaction-analytics.request.dto.js.map +0 -1
- package/dist/cjs/shared-lib/dto/user-analytics.dto.d.ts.map +0 -1
- package/dist/cjs/shared-lib/dto/user-analytics.dto.js.map +0 -1
- package/dist/esm/shared-lib/dto/campaign/campaign-claim-analytics.dto.d.ts.map +0 -1
- package/dist/esm/shared-lib/dto/campaign/campaign-claim-analytics.dto.js.map +0 -1
- package/dist/esm/shared-lib/dto/transaction/transaction-analytics.request.dto.d.ts.map +0 -1
- package/dist/esm/shared-lib/dto/transaction/transaction-analytics.request.dto.js.map +0 -1
- package/dist/esm/shared-lib/dto/user-analytics.dto.d.ts.map +0 -1
- package/dist/esm/shared-lib/dto/user-analytics.dto.js.map +0 -1
package/dist/cjs/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export * from './shared-lib/enum';
|
|
2
2
|
export * from './shared-lib/interfaces';
|
|
3
3
|
export * from './shared-lib/types';
|
|
4
|
-
export
|
|
4
|
+
export * from './shared-lib/dto';
|
|
5
5
|
export * from '@explorins/web3-types';
|
|
6
6
|
export type * from './shared-lib/errors';
|
|
7
7
|
export { type StructuredError, ErrorCategory } from './shared-lib/errors/base/error-classification-enums';
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,uBAAuB,CAAC;AAGtC,mBAAmB,qBAAqB,CAAC;AACzC,OAAO,EAAE,KAAK,eAAe,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -21,6 +21,7 @@ exports.ErrorCategory = void 0;
|
|
|
21
21
|
__exportStar(require("./shared-lib/enum"), exports);
|
|
22
22
|
__exportStar(require("./shared-lib/interfaces"), exports);
|
|
23
23
|
__exportStar(require("./shared-lib/types"), exports);
|
|
24
|
+
__exportStar(require("./shared-lib/dto"), exports); // Export runtime classes, not just types
|
|
24
25
|
// Re-export web3 types for convenience
|
|
25
26
|
__exportStar(require("@explorins/web3-types"), exports);
|
|
26
27
|
var error_classification_enums_1 = require("./shared-lib/errors/base/error-classification-enums");
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,4EAA4E;AAC5E,8FAA8F;;;;;;;;;;;;;;;;;AAE9F,wBAAwB;AACxB,oDAAkC;AAClC,0DAAwC;AACxC,qDAAmC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,4EAA4E;AAC5E,8FAA8F;;;;;;;;;;;;;;;;;AAE9F,wBAAwB;AACxB,oDAAkC;AAClC,0DAAwC;AACxC,qDAAmC;AACnC,mDAAiC,CAAC,yCAAyC;AAE3E,uCAAuC;AACvC,wDAAsC;AAItC,kGAA0G;AAA3E,2HAAA,aAAa,OAAA;AAE5C,4CAA4C;AAC5C,2CAA2C;AAC3C,iFAAiF"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* BASE ANALYTICS REQUEST
|
|
3
|
+
*
|
|
4
|
+
* Common date range filtering for all analytics endpoints.
|
|
5
|
+
* Extend this for consistent API patterns across analytics.
|
|
6
|
+
*/
|
|
7
|
+
export declare abstract class BaseAnalyticsRequestDTO {
|
|
8
|
+
startDate?: Date;
|
|
9
|
+
endDate?: Date;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* BASE ANALYTICS RESPONSE METADATA
|
|
13
|
+
*
|
|
14
|
+
* Common metadata structure for all analytics responses.
|
|
15
|
+
* Shows applied filters for transparency.
|
|
16
|
+
*
|
|
17
|
+
* Note: Execution time removed - client can measure total request time using performance.now()
|
|
18
|
+
* which includes network latency and is more relevant for UX monitoring.
|
|
19
|
+
*/
|
|
20
|
+
export interface BaseAnalyticsMetadata {
|
|
21
|
+
/**
|
|
22
|
+
* Applied date range filter (always present - uses current date as fallback if not provided in request)
|
|
23
|
+
*/
|
|
24
|
+
dateRange: {
|
|
25
|
+
startDate: Date;
|
|
26
|
+
endDate: Date;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* BASE ANALYTICS RESPONSE
|
|
31
|
+
*
|
|
32
|
+
* Common response structure for analytics endpoints.
|
|
33
|
+
* All analytics responses should include metadata with timing and filter info.
|
|
34
|
+
*/
|
|
35
|
+
export declare abstract class BaseAnalyticsResponseDTO {
|
|
36
|
+
abstract metadata: BaseAnalyticsMetadata;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=base-analytics.dto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-analytics.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/base-analytics.dto.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,8BAAsB,uBAAuB;IAO3C,SAAS,CAAC,EAAE,IAAI,CAAC;IAQjB,OAAO,CAAC,EAAE,IAAI,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,SAAS,EAAE;QACT,SAAS,EAAE,IAAI,CAAC;QAChB,OAAO,EAAE,IAAI,CAAC;KACf,CAAC;CACH;AAED;;;;;GAKG;AACH,8BAAsB,wBAAwB;IAC5C,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;CAC1C"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.BaseAnalyticsResponseDTO = exports.BaseAnalyticsRequestDTO = void 0;
|
|
13
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
/**
|
|
16
|
+
* BASE ANALYTICS REQUEST
|
|
17
|
+
*
|
|
18
|
+
* Common date range filtering for all analytics endpoints.
|
|
19
|
+
* Extend this for consistent API patterns across analytics.
|
|
20
|
+
*/
|
|
21
|
+
class BaseAnalyticsRequestDTO {
|
|
22
|
+
startDate;
|
|
23
|
+
endDate;
|
|
24
|
+
}
|
|
25
|
+
exports.BaseAnalyticsRequestDTO = BaseAnalyticsRequestDTO;
|
|
26
|
+
__decorate([
|
|
27
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
28
|
+
description: 'Start date for filtering (ISO 8601 format). Filters records with createdAt >= startDate.',
|
|
29
|
+
example: '2024-01-01T00:00:00.000Z'
|
|
30
|
+
}),
|
|
31
|
+
(0, class_validator_1.IsOptional)(),
|
|
32
|
+
(0, class_validator_1.IsDateString)(),
|
|
33
|
+
__metadata("design:type", Date)
|
|
34
|
+
], BaseAnalyticsRequestDTO.prototype, "startDate", void 0);
|
|
35
|
+
__decorate([
|
|
36
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
37
|
+
description: 'End date for filtering (ISO 8601 format). Filters records with createdAt <= endDate.',
|
|
38
|
+
example: '2024-12-31T23:59:59.999Z'
|
|
39
|
+
}),
|
|
40
|
+
(0, class_validator_1.IsOptional)(),
|
|
41
|
+
(0, class_validator_1.IsDateString)(),
|
|
42
|
+
__metadata("design:type", Date)
|
|
43
|
+
], BaseAnalyticsRequestDTO.prototype, "endDate", void 0);
|
|
44
|
+
/**
|
|
45
|
+
* BASE ANALYTICS RESPONSE
|
|
46
|
+
*
|
|
47
|
+
* Common response structure for analytics endpoints.
|
|
48
|
+
* All analytics responses should include metadata with timing and filter info.
|
|
49
|
+
*/
|
|
50
|
+
class BaseAnalyticsResponseDTO {
|
|
51
|
+
}
|
|
52
|
+
exports.BaseAnalyticsResponseDTO = BaseAnalyticsResponseDTO;
|
|
53
|
+
//# sourceMappingURL=base-analytics.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-analytics.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/base-analytics.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAsD;AACtD,qDAA2D;AAE3D;;;;;GAKG;AACH,MAAsB,uBAAuB;IAO3C,SAAS,CAAQ;IAQjB,OAAO,CAAQ;CAChB;AAhBD,0DAgBC;AATC;IANC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,0FAA0F;QACvG,OAAO,EAAE,0BAA0B;KACpC,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,8BAAY,GAAE;8BACH,IAAI;0DAAC;AAQjB;IANC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,sFAAsF;QACnG,OAAO,EAAE,0BAA0B;KACpC,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,8BAAY,GAAE;8BACL,IAAI;wDAAC;AAsBjB;;;;;GAKG;AACH,MAAsB,wBAAwB;CAE7C;AAFD,4DAEC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ProcessRecordStatus } from "../../enum";
|
|
2
2
|
import { UserDTO } from "../user.dto";
|
|
3
|
-
import { CampaignDTO } from "
|
|
3
|
+
import { CampaignDTO } from "../campaign/campaign.dto";
|
|
4
4
|
import { BusinessDTO } from "../business/business.dto";
|
|
5
|
-
import { TriggerSourceDTO } from "
|
|
5
|
+
import { TriggerSourceDTO } from "../campaign/trigger-source.dto";
|
|
6
6
|
/**
|
|
7
7
|
* Campaign Claim Analytics DTO
|
|
8
8
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"campaign-claim-analytics.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/campaign-claim-analytics.dto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE;;;;;;;;;;;;;GAaG;AACH,qBAAa,yBAAyB;IAKpC,EAAE,EAAE,MAAM,CAAM;IAMhB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAQ;IAQ9B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAQ7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAQjC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAQjC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAOtC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAQ;IAO5B,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAQ;IAOpC,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAO9B,aAAa,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAOxC,MAAM,EAAE,mBAAmB,CAA+B;IAQ1D,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IAQtC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAQ/B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAOhC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB"}
|
|
@@ -13,9 +13,9 @@ exports.CampaignClaimAnalyticsDTO = void 0;
|
|
|
13
13
|
const swagger_1 = require("@nestjs/swagger");
|
|
14
14
|
const enum_1 = require("../../enum");
|
|
15
15
|
const user_dto_1 = require("../user.dto");
|
|
16
|
-
const campaign_dto_1 = require("
|
|
16
|
+
const campaign_dto_1 = require("../campaign/campaign.dto");
|
|
17
17
|
const business_dto_1 = require("../business/business.dto");
|
|
18
|
-
const trigger_source_dto_1 = require("
|
|
18
|
+
const trigger_source_dto_1 = require("../campaign/trigger-source.dto");
|
|
19
19
|
/**
|
|
20
20
|
* Campaign Claim Analytics DTO
|
|
21
21
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"campaign-claim-analytics.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/campaign-claim-analytics.dto.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/shared-lib/dto/{transaction → analytics}/transaction-analytics.request.dto.d.ts
RENAMED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { TransactionDTO } from '
|
|
1
|
+
import { TransactionDTO } from '../transaction/transaction.dto';
|
|
2
2
|
import { SortOrder } from '../../enum';
|
|
3
3
|
import { AnalyticsGroupByType, AnalyticsMetricType, AnalyticsResultItem } from '../../types/analytics.type';
|
|
4
|
-
import { GroupByExpressionDTO } from '
|
|
4
|
+
import { GroupByExpressionDTO } from './group-by-expression.dto';
|
|
5
|
+
import { BaseAnalyticsMetadata } from './base-analytics.dto';
|
|
5
6
|
declare const TransactionAnalyticsFiltersDTO_base: import("@nestjs/common").Type<Partial<Omit<TransactionDTO, "createdAt" | "updatedAt">>>;
|
|
6
7
|
/**
|
|
7
8
|
* Type-safe filters for transaction analytics
|
|
@@ -35,9 +36,7 @@ export type TransactionAnalyticsGroupByType = AnalyticsGroupByType | keyof Omit<
|
|
|
35
36
|
export declare class TransactionAnalyticsResponseDTO {
|
|
36
37
|
results: TransactionAnalyticsResultItem[];
|
|
37
38
|
totalGroups: number;
|
|
38
|
-
metadata:
|
|
39
|
-
executionTime: string;
|
|
40
|
-
};
|
|
39
|
+
metadata: BaseAnalyticsMetadata;
|
|
41
40
|
}
|
|
42
41
|
export type TransactionAnalyticsResultItem = AnalyticsResultItem & {
|
|
43
42
|
[K in keyof Omit<TransactionDTO, 'id' | 'createdAt' | 'updatedAt' | 'transactionHash'>]?: TransactionDTO[K];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction-analytics.request.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/transaction-analytics.request.dto.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,SAAS,EAAoB,MAAM,YAAY,CAAC;AACzD,OAAO,EAA0B,oBAAoB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACpI,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;;AAE7D;;;;GAIG;AACH,qBAAa,8BAA+B,SAAQ,mCAEnD;CAAG;AAEJ;;;GAGG;AACH,qBAAa,8BAA8B;IAkBzC,OAAO,CAAC,EAAE,8BAA8B,CAAC;IAUzC,OAAO,CAAC,EAAE,+BAA+B,EAAE,CAAC;IAkB5C,kBAAkB,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAW5C,OAAO,EAAE,mBAAmB,EAAE,CAAa;IAU3C,MAAM,CAAC,EAAE,mBAAmB,GAAG,+BAA+B,GAAG,MAAM,CAAW;IASlF,SAAS,CAAC,EAAE,SAAS,CAAkB;IAcvC,KAAK,CAAC,EAAE,MAAM,CAAM;IASpB,SAAS,CAAC,EAAE,IAAI,CAAC;IAQjB,OAAO,CAAC,EAAE,IAAI,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,+BAA+B,GACzC,oBAAoB,GAClB,MAAM,IAAI,CAAC,cAAc,EACrB,WAAW,GAAG,WAAW,GACzB,IAAI,GACJ,iBAAiB,CACpB,CAAC;AAEN;;GAEG;AACH,qBAAa,+BAA+B;IAU1C,OAAO,EAAE,8BAA8B,EAAE,CAAM;IAM/C,WAAW,EAAE,MAAM,CAAK;IAWxB,QAAQ,EAAE,qBAAqB,CAK7B;CACH;AAED,MAAM,MAAM,8BAA8B,GAAG,mBAAmB,GAAG;KAEhE,CAAC,IAAI,MAAM,IAAI,CAAC,cAAc,EAC3B,IAAI,GACJ,WAAW,GAAG,WAAW,GACzB,iBAAiB,CACpB,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;CACvB,CAAC"}
|
package/dist/cjs/shared-lib/dto/{transaction → analytics}/transaction-analytics.request.dto.js
RENAMED
|
@@ -13,10 +13,11 @@ exports.TransactionAnalyticsResponseDTO = exports.TransactionAnalyticsRequestDTO
|
|
|
13
13
|
const class_validator_1 = require("class-validator");
|
|
14
14
|
const class_transformer_1 = require("class-transformer");
|
|
15
15
|
const swagger_1 = require("@nestjs/swagger");
|
|
16
|
-
const transaction_dto_1 = require("
|
|
16
|
+
const transaction_dto_1 = require("../transaction/transaction.dto");
|
|
17
17
|
const enum_1 = require("../../enum");
|
|
18
18
|
const analytics_type_1 = require("../../types/analytics.type");
|
|
19
|
-
const group_by_expression_dto_1 = require("
|
|
19
|
+
const group_by_expression_dto_1 = require("./group-by-expression.dto");
|
|
20
|
+
const native_token_type_1 = require("../../types/native-token.type");
|
|
20
21
|
/**
|
|
21
22
|
* Type-safe filters for transaction analytics
|
|
22
23
|
* All fields optional via PartialType
|
|
@@ -50,11 +51,11 @@ class TransactionAnalyticsRequestDTO {
|
|
|
50
51
|
exports.TransactionAnalyticsRequestDTO = TransactionAnalyticsRequestDTO;
|
|
51
52
|
__decorate([
|
|
52
53
|
(0, swagger_1.ApiPropertyOptional)({
|
|
53
|
-
description: 'Dynamic filters based on TransactionDTO fields - all transaction fields available',
|
|
54
|
+
description: 'Dynamic filters based on TransactionDTO fields - all transaction fields available. Note: tokenType uses native blockchain types (ERC721, ERC20, ERC1155), not friendly names.',
|
|
54
55
|
type: TransactionAnalyticsFiltersDTO,
|
|
55
56
|
example: {
|
|
56
57
|
status: 'SUCCEEDED',
|
|
57
|
-
tokenType:
|
|
58
|
+
tokenType: native_token_type_1.NativeTokenTypes.ERC721,
|
|
58
59
|
triggerProcessType: 'MINT',
|
|
59
60
|
tenantId: 'tenant-123',
|
|
60
61
|
chainId: 1
|
|
@@ -68,7 +69,7 @@ __decorate([
|
|
|
68
69
|
], TransactionAnalyticsRequestDTO.prototype, "filters", void 0);
|
|
69
70
|
__decorate([
|
|
70
71
|
(0, swagger_1.ApiPropertyOptional)({
|
|
71
|
-
description: 'Fields to group by - any TransactionDTO field plus computed time fields',
|
|
72
|
+
description: 'Fields to group by - any TransactionDTO field plus computed time fields. Note: tokenType values are ERC721/ERC20/ERC1155.',
|
|
72
73
|
type: [String],
|
|
73
74
|
example: ['tokenType', 'month', 'status', 'chainId']
|
|
74
75
|
}),
|
|
@@ -164,18 +165,21 @@ class TransactionAnalyticsResponseDTO {
|
|
|
164
165
|
results = [];
|
|
165
166
|
totalGroups = 0;
|
|
166
167
|
metadata = {
|
|
167
|
-
|
|
168
|
+
dateRange: {
|
|
169
|
+
startDate: new Date(),
|
|
170
|
+
endDate: new Date()
|
|
171
|
+
}
|
|
168
172
|
};
|
|
169
173
|
}
|
|
170
174
|
exports.TransactionAnalyticsResponseDTO = TransactionAnalyticsResponseDTO;
|
|
171
175
|
__decorate([
|
|
172
176
|
(0, swagger_1.ApiProperty)({
|
|
173
|
-
description: 'Analytics results array with dynamic fields and expression aliases',
|
|
177
|
+
description: 'Analytics results array with dynamic fields and expression aliases. Note: tokenType values are ERC721/ERC20/ERC1155, not friendly names.',
|
|
174
178
|
type: 'array',
|
|
175
179
|
example: [
|
|
176
180
|
{ userId: 'user-123', count: 45 },
|
|
177
181
|
{ userAddress: '0xabc...def', count: 32 },
|
|
178
|
-
{ tokenType:
|
|
182
|
+
{ tokenType: native_token_type_1.NativeTokenTypes.ERC721, count: 150, month: '2024-01-01T00:00:00.000Z' }
|
|
179
183
|
]
|
|
180
184
|
}),
|
|
181
185
|
__metadata("design:type", Array)
|
|
@@ -189,8 +193,13 @@ __decorate([
|
|
|
189
193
|
], TransactionAnalyticsResponseDTO.prototype, "totalGroups", void 0);
|
|
190
194
|
__decorate([
|
|
191
195
|
(0, swagger_1.ApiProperty)({
|
|
192
|
-
description: 'Query
|
|
193
|
-
example: {
|
|
196
|
+
description: 'Query metadata showing applied date range (always present)',
|
|
197
|
+
example: {
|
|
198
|
+
dateRange: {
|
|
199
|
+
startDate: '2024-01-01T00:00:00.000Z',
|
|
200
|
+
endDate: '2024-12-31T23:59:59.999Z'
|
|
201
|
+
}
|
|
202
|
+
}
|
|
194
203
|
}),
|
|
195
204
|
__metadata("design:type", Object)
|
|
196
205
|
], TransactionAnalyticsResponseDTO.prototype, "metadata", void 0);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction-analytics.request.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/transaction-analytics.request.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA0I;AAC1I,yDAAoD;AACpD,6CAA0F;AAC1F,oEAAgE;AAChE,qCAAyD;AACzD,+DAAoI;AACpI,uEAAiE;AACjE,qEAAiE;AAGjE;;;;GAIG;AACH,MAAa,8BAA+B,SAAQ,IAAA,qBAAW,EAC7D,IAAA,kBAAQ,EAAC,gCAAc,EAAE,CAAC,WAAW,EAAE,WAAW,CAAU,CAAC,CAC9D;CAAG;AAFJ,wEAEI;AAEJ;;;GAGG;AACH,MAAa,8BAA8B;IAEzC,mDAAmD;IAgBnD,OAAO,CAAkC;IAEzC,0CAA0C;IAQ1C,OAAO,CAAqC;IAE5C,+CAA+C;IAgB/C,kBAAkB,CAA0B;IAE5C,kBAAkB;IASlB,OAAO,GAA0B,CAAC,OAAO,CAAC,CAAC;IAE3C,mBAAmB;IAQnB,MAAM,GAAoE,OAAO,CAAC;IASlF,SAAS,GAAe,gBAAS,CAAC,IAAI,CAAC;IAEvC,gBAAgB;IAYhB,KAAK,GAAY,EAAE,CAAC;IAEpB,qBAAqB;IAOrB,SAAS,CAAQ;IAQjB,OAAO,CAAQ;CAChB;AA5GD,wEA4GC;AA1FC;IAfC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,+KAA+K;QAC5L,IAAI,EAAE,8BAA8B;QACpC,OAAO,EAAE;YACP,MAAM,EAAE,WAAW;YACnB,SAAS,EAAE,oCAAgB,CAAC,MAAM;YAClC,kBAAkB,EAAE,MAAM;YAC1B,QAAQ,EAAE,YAAY;YACtB,OAAO,EAAE,CAAC;SACX;KACF,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,8BAA8B,CAAC;8BACjC,8BAA8B;+DAAC;AAUzC;IAPC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,2HAA2H;QACxI,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC;KACrD,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;+DACmB;AAkB5C;IAfC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,+DAA+D;QAC5E,IAAI,EAAE,CAAC,8CAAoB,CAAC;QAC5B,OAAO,EAAE;YACP;gBACE,UAAU,EAAE,+BAA+B,uBAAgB,CAAC,IAAI,4CAA4C,uBAAgB,CAAC,IAAI,uBAAuB;gBACxJ,KAAK,EAAE,QAAQ;gBACf,KAAK,EAAE,SAAS;aACjB;SACF;KACF,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;IACT,IAAA,gCAAc,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,8CAAoB,CAAC;;0EACW;AAW5C;IARC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,sBAAsB;QACnC,IAAI,EAAE,uCAAsB;QAC5B,OAAO,EAAE,CAAC,OAAO,CAAC;KACnB,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,IAAA,sBAAI,EAAC,uCAAsB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;+DACF;AAU3C;IAPC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,yDAAyD;QACtE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,uCAAsB,EAAE,WAAW,CAAC,EAAE,CAAC;QAC/E,OAAO,EAAE,OAAO;KACjB,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;8DACuE;AASlF;IAPC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,gBAAS;QACf,OAAO,EAAE,gBAAS,CAAC,IAAI;KACxB,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,gBAAS,CAAC;;iEACqB;AAcvC;IAXC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,qCAAqC;QAClD,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,EAAE;KACZ,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,qBAAG,EAAC,CAAC,CAAC;IACN,IAAA,qBAAG,EAAC,GAAG,CAAC;IACR,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;;6DACtB;AASpB;IANC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,uCAAuC;QACpD,OAAO,EAAE,0BAA0B;KACpC,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,8BAAY,GAAE;8BACH,IAAI;iEAAC;AAQjB;IANC,IAAA,6BAAmB,EAAC;QACnB,WAAW,EAAE,qCAAqC;QAClD,OAAO,EAAE,0BAA0B;KACpC,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,8BAAY,GAAE;8BACL,IAAI;+DAAC;AAcjB;;GAEG;AACH,MAAa,+BAA+B;IAU1C,OAAO,GAAqC,EAAE,CAAC;IAM/C,WAAW,GAAW,CAAC,CAAC;IAWxB,QAAQ,GAA0B;QAChC,SAAS,EAAE;YACT,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,OAAO,EAAE,IAAI,IAAI,EAAE;SACpB;KACF,CAAC;CACH;AAjCD,0EAiCC;AAvBC;IATC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,0IAA0I;QACvJ,IAAI,EAAE,OAAO;QACb,OAAO,EAAE;YACP,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;YACjC,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE;YACzC,EAAE,SAAS,EAAE,oCAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,0BAA0B,EAAE;SACtF;KACF,CAAC;;gEAC6C;AAM/C;IAJC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,+BAA+B;QAC5C,OAAO,EAAE,CAAC;KACX,CAAC;;oEACsB;AAWxB;IATC,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,4DAA4D;QACzE,OAAO,EAAE;YACP,SAAS,EAAE;gBACT,SAAS,EAAE,0BAA0B;gBACrC,OAAO,EAAE,0BAA0B;aACpC;SACF;KACF,CAAC;;iEAMA"}
|
package/dist/cjs/shared-lib/dto/{user-analytics.dto.d.ts → analytics/user-analytics.dto.d.ts}
RENAMED
|
@@ -1,13 +1,25 @@
|
|
|
1
|
+
import { BaseAnalyticsMetadata } from './base-analytics.dto';
|
|
2
|
+
/**
|
|
3
|
+
* USER ANALYTICS FILTERS DTO
|
|
4
|
+
*
|
|
5
|
+
* Filters to scope user analytics aggregations.
|
|
6
|
+
* Determines which users/activity to include in calculations.
|
|
7
|
+
*/
|
|
8
|
+
export declare class UserAnalyticsFiltersDTO {
|
|
9
|
+
businessId?: string;
|
|
10
|
+
}
|
|
1
11
|
/**
|
|
2
12
|
* USER ANALYTICS REQUEST DTO
|
|
3
13
|
*
|
|
4
|
-
*
|
|
5
|
-
* Supports date range filtering and business-specific
|
|
14
|
+
* Request structure for user engagement analytics.
|
|
15
|
+
* Supports date range filtering and business-specific scoping.
|
|
16
|
+
*
|
|
17
|
+
* Pattern matches TransactionAnalyticsRequestDTO and CampaignClaimAnalyticsRequestDTO for consistency.
|
|
6
18
|
*/
|
|
7
19
|
export declare class UserAnalyticsRequestDTO {
|
|
20
|
+
filters?: UserAnalyticsFiltersDTO;
|
|
8
21
|
startDate?: Date;
|
|
9
22
|
endDate?: Date;
|
|
10
|
-
businessId?: string;
|
|
11
23
|
}
|
|
12
24
|
/**
|
|
13
25
|
* USER ANALYTICS RESPONSE DTO
|
|
@@ -35,12 +47,6 @@ export declare class UserAnalyticsResponseDTO {
|
|
|
35
47
|
activeUsers: number;
|
|
36
48
|
newUsers: number;
|
|
37
49
|
}[];
|
|
38
|
-
metadata:
|
|
39
|
-
executionTimeMs: number;
|
|
40
|
-
dateRange?: {
|
|
41
|
-
startDate: Date;
|
|
42
|
-
endDate: Date;
|
|
43
|
-
};
|
|
44
|
-
};
|
|
50
|
+
metadata: BaseAnalyticsMetadata;
|
|
45
51
|
}
|
|
46
52
|
//# sourceMappingURL=user-analytics.dto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-analytics.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/user-analytics.dto.ts"],"names":[],"mappings":"AAEyC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACtG;;;;;GAKG;AACH,qBAAa,uBAAuB;IASlC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,qBAAa,uBAAuB;IAWlC,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAQlC,SAAS,CAAC,EAAE,IAAI,CAAC;IAQjB,OAAO,CAAC,EAAE,IAAI,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,qBAAa,wBAAwB;IAKnC,UAAU,EAAE,MAAM,CAAK;IAMvB,WAAW,EAAE,MAAM,CAAK;IAMxB,QAAQ,EAAE,MAAM,CAAK;IAMrB,0BAA0B,EAAE,MAAM,CAAK;IAMvC,wBAAwB,EAAE,MAAM,CAAK;IAMrC,sBAAsB,EAAE,MAAM,CAAK;IAMnC,oBAAoB,EAAE,MAAM,CAAK;IAMjC,yBAAyB,EAAE,MAAM,CAAK;IAMtC,gCAAgC,EAAE,MAAM,CAAK;IAM7C,0BAA0B,EAAE,MAAM,CAAK;IAMvC,+BAA+B,EAAE,MAAM,CAAK;IAO5C,cAAc,EAAE,MAAM,CAAK;IAc3B,eAAe,CAAC,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;KAClB,EAAE,CAAC;IAgBJ,QAAQ,EAAE,qBAAqB,CAK7B;CACH"}
|
|
@@ -9,41 +9,76 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.UserAnalyticsResponseDTO = exports.UserAnalyticsRequestDTO = void 0;
|
|
12
|
+
exports.UserAnalyticsResponseDTO = exports.UserAnalyticsRequestDTO = exports.UserAnalyticsFiltersDTO = void 0;
|
|
13
13
|
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
const class_transformer_1 = require("class-transformer");
|
|
16
|
+
/**
|
|
17
|
+
* USER ANALYTICS FILTERS DTO
|
|
18
|
+
*
|
|
19
|
+
* Filters to scope user analytics aggregations.
|
|
20
|
+
* Determines which users/activity to include in calculations.
|
|
21
|
+
*/
|
|
22
|
+
class UserAnalyticsFiltersDTO {
|
|
23
|
+
businessId;
|
|
24
|
+
}
|
|
25
|
+
exports.UserAnalyticsFiltersDTO = UserAnalyticsFiltersDTO;
|
|
26
|
+
__decorate([
|
|
27
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
28
|
+
description: 'Filter analytics to specific business (filters transactions, claims, redemptions by businessId)',
|
|
29
|
+
type: String,
|
|
30
|
+
format: 'uuid',
|
|
31
|
+
example: 'biz-uuid-123'
|
|
32
|
+
}),
|
|
33
|
+
(0, class_validator_1.IsOptional)(),
|
|
34
|
+
(0, class_validator_1.IsString)(),
|
|
35
|
+
__metadata("design:type", String)
|
|
36
|
+
], UserAnalyticsFiltersDTO.prototype, "businessId", void 0);
|
|
14
37
|
/**
|
|
15
38
|
* USER ANALYTICS REQUEST DTO
|
|
16
39
|
*
|
|
17
|
-
*
|
|
18
|
-
* Supports date range filtering and business-specific
|
|
40
|
+
* Request structure for user engagement analytics.
|
|
41
|
+
* Supports date range filtering and business-specific scoping.
|
|
42
|
+
*
|
|
43
|
+
* Pattern matches TransactionAnalyticsRequestDTO and CampaignClaimAnalyticsRequestDTO for consistency.
|
|
19
44
|
*/
|
|
20
45
|
class UserAnalyticsRequestDTO {
|
|
46
|
+
filters;
|
|
21
47
|
startDate;
|
|
22
48
|
endDate;
|
|
23
|
-
businessId;
|
|
24
49
|
}
|
|
25
50
|
exports.UserAnalyticsRequestDTO = UserAnalyticsRequestDTO;
|
|
26
51
|
__decorate([
|
|
27
52
|
(0, swagger_1.ApiPropertyOptional)({
|
|
28
|
-
description: '
|
|
53
|
+
description: 'Filters to scope which users/activity to include in analytics',
|
|
54
|
+
type: UserAnalyticsFiltersDTO,
|
|
55
|
+
example: {
|
|
56
|
+
businessId: 'biz-uuid-123'
|
|
57
|
+
}
|
|
58
|
+
}),
|
|
59
|
+
(0, class_validator_1.IsOptional)(),
|
|
60
|
+
(0, class_validator_1.ValidateNested)(),
|
|
61
|
+
(0, class_transformer_1.Type)(() => UserAnalyticsFiltersDTO),
|
|
62
|
+
__metadata("design:type", UserAnalyticsFiltersDTO)
|
|
63
|
+
], UserAnalyticsRequestDTO.prototype, "filters", void 0);
|
|
64
|
+
__decorate([
|
|
65
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
66
|
+
description: 'Start date for filtering activity and new users (ISO 8601 format). Filters transactions, claims, redemptions, and user creation dates.',
|
|
29
67
|
example: '2024-01-01T00:00:00Z'
|
|
30
68
|
}),
|
|
69
|
+
(0, class_validator_1.IsOptional)(),
|
|
70
|
+
(0, class_validator_1.IsDateString)(),
|
|
31
71
|
__metadata("design:type", Date)
|
|
32
72
|
], UserAnalyticsRequestDTO.prototype, "startDate", void 0);
|
|
33
73
|
__decorate([
|
|
34
74
|
(0, swagger_1.ApiPropertyOptional)({
|
|
35
|
-
description: 'End date for filtering (ISO 8601)',
|
|
75
|
+
description: 'End date for filtering activity and new users (ISO 8601 format). Filters transactions, claims, redemptions, and user creation dates.',
|
|
36
76
|
example: '2024-12-31T23:59:59Z'
|
|
37
77
|
}),
|
|
78
|
+
(0, class_validator_1.IsOptional)(),
|
|
79
|
+
(0, class_validator_1.IsDateString)(),
|
|
38
80
|
__metadata("design:type", Date)
|
|
39
81
|
], UserAnalyticsRequestDTO.prototype, "endDate", void 0);
|
|
40
|
-
__decorate([
|
|
41
|
-
(0, swagger_1.ApiPropertyOptional)({
|
|
42
|
-
description: 'Filter by specific business ID',
|
|
43
|
-
example: 'biz-uuid-123'
|
|
44
|
-
}),
|
|
45
|
-
__metadata("design:type", String)
|
|
46
|
-
], UserAnalyticsRequestDTO.prototype, "businessId", void 0);
|
|
47
82
|
/**
|
|
48
83
|
* USER ANALYTICS RESPONSE DTO
|
|
49
84
|
*
|
|
@@ -66,7 +101,12 @@ class UserAnalyticsResponseDTO {
|
|
|
66
101
|
averageRedemptionsPerActiveUser = 0;
|
|
67
102
|
engagementRate = 0;
|
|
68
103
|
periodBreakdown;
|
|
69
|
-
metadata = {
|
|
104
|
+
metadata = {
|
|
105
|
+
dateRange: {
|
|
106
|
+
startDate: new Date(),
|
|
107
|
+
endDate: new Date()
|
|
108
|
+
}
|
|
109
|
+
};
|
|
70
110
|
}
|
|
71
111
|
exports.UserAnalyticsResponseDTO = UserAnalyticsResponseDTO;
|
|
72
112
|
__decorate([
|
|
@@ -171,21 +211,16 @@ __decorate([
|
|
|
171
211
|
], UserAnalyticsResponseDTO.prototype, "periodBreakdown", void 0);
|
|
172
212
|
__decorate([
|
|
173
213
|
(0, swagger_1.ApiProperty)({
|
|
174
|
-
description: 'Query
|
|
214
|
+
description: 'Query metadata showing applied date range (always present)',
|
|
175
215
|
type: 'object',
|
|
176
216
|
properties: {
|
|
177
|
-
executionTimeMs: {
|
|
178
|
-
type: 'number',
|
|
179
|
-
example: 142,
|
|
180
|
-
description: 'SQL query execution time in milliseconds (for performance monitoring)'
|
|
181
|
-
},
|
|
182
217
|
dateRange: {
|
|
183
218
|
type: 'object',
|
|
184
219
|
properties: {
|
|
185
220
|
startDate: { type: 'string', format: 'date-time' },
|
|
186
221
|
endDate: { type: 'string', format: 'date-time' }
|
|
187
222
|
},
|
|
188
|
-
description: 'Applied date range filter
|
|
223
|
+
description: 'Applied date range filter'
|
|
189
224
|
}
|
|
190
225
|
}
|
|
191
226
|
}),
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-analytics.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/user-analytics.dto.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { SortOrder } from '../../enum';
|
|
2
|
+
import type { NativeTokenType } from '../../types/native-token.type';
|
|
3
|
+
import { BaseAnalyticsMetadata } from './base-analytics.dto';
|
|
4
|
+
/**
|
|
5
|
+
* USER RANKING FILTERS DTO
|
|
6
|
+
*
|
|
7
|
+
* Filters to scope user ranking calculations.
|
|
8
|
+
* Determines which transactions/users to include.
|
|
9
|
+
*/
|
|
10
|
+
export declare class UserRankingFiltersDTO {
|
|
11
|
+
businessId?: string;
|
|
12
|
+
tokenType?: NativeTokenType;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* USER RANKING REQUEST DTO
|
|
16
|
+
*
|
|
17
|
+
* Request structure for user transaction ranking analytics.
|
|
18
|
+
* Returns ranked list of users with transaction metrics and full user details.
|
|
19
|
+
*
|
|
20
|
+
* Use Cases:
|
|
21
|
+
* - Admin leaderboards showing top users by activity
|
|
22
|
+
* - User engagement analysis with full user context
|
|
23
|
+
* - Identifying power users for campaigns
|
|
24
|
+
*/
|
|
25
|
+
export declare class UserRankingAnalyticsRequestDTO {
|
|
26
|
+
filters?: UserRankingFiltersDTO;
|
|
27
|
+
sortBy?: 'totalTransactions' | 'tokenSpent' | 'userId' | 'email';
|
|
28
|
+
sortOrder?: SortOrder;
|
|
29
|
+
limit?: number;
|
|
30
|
+
startDate?: Date;
|
|
31
|
+
endDate?: Date;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* USER RANKING RESULT ITEM DTO
|
|
35
|
+
*
|
|
36
|
+
* Single user's ranking data with full user details and transaction metrics.
|
|
37
|
+
* Enriched with user data via SQL JOIN (not post-query enrichment).
|
|
38
|
+
*/
|
|
39
|
+
export declare class UserRankingResultItemDTO {
|
|
40
|
+
userId: string | null;
|
|
41
|
+
email: string | null;
|
|
42
|
+
externalUserId: string | null;
|
|
43
|
+
totalTransactions: number;
|
|
44
|
+
tokenSpent: number;
|
|
45
|
+
hasLegacyTransactions?: boolean;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* USER RANKING RESPONSE DTO
|
|
49
|
+
*
|
|
50
|
+
* Ranked list of users with transaction metrics and full user details.
|
|
51
|
+
* Results are pre-sorted by backend according to request.sortBy/sortOrder.
|
|
52
|
+
*/
|
|
53
|
+
export declare class UserRankingAnalyticsResponseDTO {
|
|
54
|
+
results: UserRankingResultItemDTO[];
|
|
55
|
+
totalUsers: number;
|
|
56
|
+
metadata: BaseAnalyticsMetadata & {
|
|
57
|
+
/**
|
|
58
|
+
* Token type used for filtering sum (if provided in request)
|
|
59
|
+
* Native token type (ERC721, ERC20, ERC1155)
|
|
60
|
+
*/
|
|
61
|
+
tokenType?: NativeTokenType;
|
|
62
|
+
/**
|
|
63
|
+
* Sort configuration applied
|
|
64
|
+
*/
|
|
65
|
+
sorting?: {
|
|
66
|
+
sortBy: string;
|
|
67
|
+
sortOrder: SortOrder;
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=user-ranking-analytics.dto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-ranking-analytics.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/analytics/user-ranking-analytics.dto.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D;;;;;GAKG;AACH,qBAAa,qBAAqB;IAShC,UAAU,CAAC,EAAE,MAAM,CAAC;IASpB,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED;;;;;;;;;;GAUG;AACH,qBAAa,8BAA8B;IAYzC,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAUhC,MAAM,CAAC,EAAE,mBAAmB,GAAG,YAAY,GAAG,QAAQ,GAAG,OAAO,CAAC;IAUjE,SAAS,CAAC,EAAE,SAAS,CAAC;IAatB,KAAK,CAAC,EAAE,MAAM,CAAC;IAQf,SAAS,CAAC,EAAE,IAAI,CAAC;IAQjB,OAAO,CAAC,EAAE,IAAI,CAAC;CAChB;AAED;;;;;GAKG;AACH,qBAAa,wBAAwB;IAUnC,MAAM,EAAG,MAAM,GAAG,IAAI,CAAC;IASvB,KAAK,EAAG,MAAM,GAAG,IAAI,CAAC;IAQtB,cAAc,EAAG,MAAM,GAAG,IAAI,CAAC;IAQ/B,iBAAiB,EAAG,MAAM,CAAC;IAM3B,UAAU,EAAG,MAAM,CAAC;IAUpB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED;;;;;GAKG;AACH,qBAAa,+BAA+B;IAM1C,OAAO,EAAG,wBAAwB,EAAE,CAAC;IAMrC,UAAU,EAAG,MAAM,CAAC;IAMpB,QAAQ,EAAG,qBAAqB,GAAG;QACjC;;;WAGG;QACH,SAAS,CAAC,EAAE,eAAe,CAAC;QAE5B;;WAEG;QACH,OAAO,CAAC,EAAE;YACR,MAAM,EAAE,MAAM,CAAC;YACf,SAAS,EAAE,SAAS,CAAC;SACtB,CAAC;KACH,CAAC;CACH"}
|