@gearbox-protocol/sdk 16.0.0-next.52 → 16.0.0-next.54
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/dev/mode-parity/compareOpportunities.js +1 -1
- package/dist/cjs/dev/mode-parity/comparePositions.js +1 -1
- package/dist/cjs/model/analytics.js +1 -0
- package/dist/cjs/model/analytics.schema.js +117 -0
- package/dist/cjs/model/charts.schema.js +1 -1
- package/dist/cjs/model/index.js +18 -7
- package/dist/cjs/model/liquidations.schema.js +2 -2
- package/dist/cjs/model/opportunities.schema.js +3 -3
- package/dist/cjs/model/positions.schema.js +2 -2
- package/dist/cjs/offchain/GearboxAPI.js +5 -0
- package/dist/cjs/offchain/analytics/OffchainAnalytics.js +12 -0
- package/dist/cjs/offchain/analytics/OffchainAnalyticsPositions.js +24 -0
- package/dist/cjs/offchain/analytics/index.js +6 -0
- package/dist/cjs/offchain/analytics/types.js +1 -0
- package/dist/cjs/offchain/index.js +5 -0
- package/dist/cjs/onchain/market/credit/CreditSuite.js +2 -2
- package/dist/cjs/sdk/GearboxSDK.js +5 -0
- package/dist/cjs/sdk/analytics/AnalyticsNamespace.js +11 -0
- package/dist/cjs/sdk/analytics/index.js +4 -0
- package/dist/cjs/sdk/analytics/types.js +1 -0
- package/dist/cjs/sdk/index.js +3 -0
- package/dist/esm/dev/mode-parity/compareOpportunities.js +1 -1
- package/dist/esm/dev/mode-parity/comparePositions.js +1 -1
- package/dist/esm/model/analytics.js +1 -0
- package/dist/esm/model/analytics.schema.js +108 -0
- package/dist/esm/model/charts.schema.js +1 -1
- package/dist/esm/model/index.js +10 -8
- package/dist/esm/model/liquidations.schema.js +2 -2
- package/dist/esm/model/opportunities.schema.js +3 -3
- package/dist/esm/model/positions.schema.js +2 -2
- package/dist/esm/offchain/GearboxAPI.js +5 -0
- package/dist/esm/offchain/analytics/OffchainAnalytics.js +11 -0
- package/dist/esm/offchain/analytics/OffchainAnalyticsPositions.js +23 -0
- package/dist/esm/offchain/analytics/index.js +4 -0
- package/dist/esm/offchain/analytics/types.js +1 -0
- package/dist/esm/offchain/index.js +4 -1
- package/dist/esm/onchain/market/credit/CreditSuite.js +3 -3
- package/dist/esm/sdk/GearboxSDK.js +5 -0
- package/dist/esm/sdk/analytics/AnalyticsNamespace.js +10 -0
- package/dist/esm/sdk/analytics/index.js +3 -0
- package/dist/esm/sdk/analytics/types.js +1 -0
- package/dist/esm/sdk/index.js +3 -1
- package/dist/types/model/analytics.d.ts +62 -0
- package/dist/types/model/analytics.schema.d.ts +149 -0
- package/dist/types/model/index.d.ts +10 -8
- package/dist/types/model/opportunities.d.ts +1 -1
- package/dist/types/model/previews.d.ts +2 -2
- package/dist/types/offchain/AbstractOffchainNamespace.d.ts +1 -1
- package/dist/types/offchain/GearboxAPI.d.ts +4 -0
- package/dist/types/offchain/analytics/OffchainAnalytics.d.ts +11 -0
- package/dist/types/offchain/analytics/OffchainAnalyticsPositions.d.ts +14 -0
- package/dist/types/offchain/analytics/index.d.ts +4 -0
- package/dist/types/offchain/analytics/types.d.ts +17 -0
- package/dist/types/offchain/index.d.ts +5 -1
- package/dist/types/offchain/opportunities/OffchainOpportunities.d.ts +1 -1
- package/dist/types/offchain/opportunities/types.d.ts +1 -1
- package/dist/types/offchain/positions/OffchainPositions.d.ts +1 -1
- package/dist/types/offchain/positions/types.d.ts +1 -1
- package/dist/types/onchain/market/credit/CreditSuite.d.ts +1 -2
- package/dist/types/sdk/GearboxSDK.d.ts +4 -0
- package/dist/types/sdk/analytics/AnalyticsNamespace.d.ts +11 -0
- package/dist/types/sdk/analytics/index.d.ts +3 -0
- package/dist/types/sdk/analytics/types.d.ts +15 -0
- package/dist/types/sdk/index.d.ts +4 -1
- package/dist/types/sdk/opportunities/OpportunitiesNamespace.d.ts +1 -1
- package/dist/types/sdk/opportunities/types.d.ts +1 -1
- package/dist/types/sdk/positions/PositionsNamespace.d.ts +1 -1
- package/dist/types/sdk/positions/types.d.ts +1 -1
- package/dist/types/sdk/types.d.ts +3 -0
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_model_opportunities = require("../../model/opportunities.js");
|
|
3
2
|
const require_model_opportunities_schema = require("../../model/opportunities.schema.js");
|
|
3
|
+
const require_model_opportunities = require("../../model/opportunities.js");
|
|
4
4
|
require("../../model/index.js");
|
|
5
5
|
const require_dev_mode_parity_fieldDiff = require("./fieldDiff.js");
|
|
6
6
|
const require_dev_mode_parity_compareRules = require("./compareRules.js");
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_model_liquidations_schema = require("../../model/liquidations.schema.js");
|
|
3
|
-
const require_model_positions = require("../../model/positions.js");
|
|
4
3
|
const require_model_positions_schema = require("../../model/positions.schema.js");
|
|
4
|
+
const require_model_positions = require("../../model/positions.js");
|
|
5
5
|
require("../../model/index.js");
|
|
6
6
|
const require_dev_mode_parity_fieldDiff = require("./fieldDiff.js");
|
|
7
7
|
const require_dev_mode_parity_compareRules = require("./compareRules.js");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_onchain_utils_zod = require("../onchain/utils/zod.js");
|
|
3
|
+
const require_model_filters = require("./filters.js");
|
|
4
|
+
const require_model_filters_schema = require("./filters.schema.js");
|
|
5
|
+
const require_model_primitives_schema = require("./primitives.schema.js");
|
|
6
|
+
const require_model_liquidations_schema = require("./liquidations.schema.js");
|
|
7
|
+
const require_model_positions_schema = require("./positions.schema.js");
|
|
8
|
+
let viem = require("viem");
|
|
9
|
+
let zod_v4 = require("zod/v4");
|
|
10
|
+
//#region src/model/analytics.schema.ts
|
|
11
|
+
/** Default page size of the protocol-wide positions list. */
|
|
12
|
+
const ANALYTICS_POSITIONS_DEFAULT_LIMIT = 25;
|
|
13
|
+
/** Largest page the protocol-wide positions list accepts. */
|
|
14
|
+
const ANALYTICS_POSITIONS_MAX_LIMIT = 100;
|
|
15
|
+
/** {@link AnalyticsPositionSortField} */
|
|
16
|
+
const analyticsPositionSortFieldSchema = zod_v4.z.enum([
|
|
17
|
+
"netValueUsd",
|
|
18
|
+
"totalValueUsd",
|
|
19
|
+
"totalDebtUsd",
|
|
20
|
+
"pnlUsd",
|
|
21
|
+
"apy",
|
|
22
|
+
"healthFactor",
|
|
23
|
+
"leverage",
|
|
24
|
+
"chainId",
|
|
25
|
+
"name",
|
|
26
|
+
"borrower"
|
|
27
|
+
]);
|
|
28
|
+
/** {@link AnalyticsSortDirection} */
|
|
29
|
+
const analyticsSortDirectionSchema = zod_v4.z.enum(["asc", "desc"]);
|
|
30
|
+
const analyticsOwnerShape = { borrower: require_onchain_utils_zod.ZodAddress() };
|
|
31
|
+
const addressSchema = zod_v4.z.custom((value) => typeof value === "string" && (0, viem.isAddress)(value, { strict: false }));
|
|
32
|
+
/** {@link AnalyticsPosition} */
|
|
33
|
+
const analyticsPositionSchema = zod_v4.z.discriminatedUnion("kind", [
|
|
34
|
+
zod_v4.z.object({
|
|
35
|
+
...require_model_positions_schema.poolPositionSchema.shape,
|
|
36
|
+
...analyticsOwnerShape
|
|
37
|
+
}),
|
|
38
|
+
zod_v4.z.object({
|
|
39
|
+
...require_model_positions_schema.strategyPositionSchema.shape,
|
|
40
|
+
...analyticsOwnerShape
|
|
41
|
+
}),
|
|
42
|
+
zod_v4.z.object({
|
|
43
|
+
...require_model_liquidations_schema.liquidationPositionSchema.shape,
|
|
44
|
+
...analyticsOwnerShape
|
|
45
|
+
})
|
|
46
|
+
]);
|
|
47
|
+
/** {@link AnalyticsPositionListOptions} */
|
|
48
|
+
const analyticsPositionListOptionsSchema = zod_v4.z.object({
|
|
49
|
+
borrower: addressSchema.optional(),
|
|
50
|
+
kind: require_model_filters_schema.filterable(require_model_positions_schema.positionKindSchema).optional(),
|
|
51
|
+
isZeroDebt: require_model_filters_schema.filterable(zod_v4.z.boolean()).optional(),
|
|
52
|
+
chainIds: zod_v4.z.array(require_model_primitives_schema.chainIdSchema).optional(),
|
|
53
|
+
underlyingType: require_model_filters_schema.filterable(require_model_primitives_schema.assetTypeSchema).optional(),
|
|
54
|
+
sortBy: analyticsPositionSortFieldSchema.optional(),
|
|
55
|
+
sortDirection: analyticsSortDirectionSchema.optional(),
|
|
56
|
+
offset: zod_v4.z.number().int().nonnegative().optional(),
|
|
57
|
+
limit: zod_v4.z.number().int().positive().max(100).optional()
|
|
58
|
+
});
|
|
59
|
+
/**
|
|
60
|
+
* {@link AnalyticsPositionListOptions} as URL query parameters.
|
|
61
|
+
**/
|
|
62
|
+
const analyticsPositionListQueryParamsSchema = zod_v4.z.object({
|
|
63
|
+
borrower: zod_v4.z.string().refine((value) => (0, viem.isAddress)(value, { strict: false }), "invalid address").optional(),
|
|
64
|
+
kind: require_model_positions_schema.positionKindSchema.optional(),
|
|
65
|
+
isZeroDebt: zod_v4.z.enum(["true", "false"]).optional(),
|
|
66
|
+
chainIds: zod_v4.z.string().regex(/^$|^\d+(,\d+)*$/).optional(),
|
|
67
|
+
underlyingType: require_model_primitives_schema.assetTypeSchema.optional(),
|
|
68
|
+
sortBy: analyticsPositionSortFieldSchema.optional(),
|
|
69
|
+
sortDirection: analyticsSortDirectionSchema.optional(),
|
|
70
|
+
offset: zod_v4.z.string().regex(/^\d+$/).optional(),
|
|
71
|
+
limit: zod_v4.z.string().regex(/^[1-9]\d*$/).optional()
|
|
72
|
+
});
|
|
73
|
+
/**
|
|
74
|
+
* Codec for an analytics position-list query. It is shared by the SDK client
|
|
75
|
+
* and backend controller so both sides interpret every parameter identically.
|
|
76
|
+
**/
|
|
77
|
+
const analyticsPositionListQuerySchema = zod_v4.z.codec(analyticsPositionListQueryParamsSchema, analyticsPositionListOptionsSchema, {
|
|
78
|
+
decode: (params) => ({
|
|
79
|
+
...params.borrower === void 0 ? {} : { borrower: params.borrower },
|
|
80
|
+
...params.kind === void 0 ? {} : { kind: params.kind },
|
|
81
|
+
...params.isZeroDebt === void 0 ? {} : { isZeroDebt: params.isZeroDebt === "true" },
|
|
82
|
+
...params.chainIds === void 0 ? {} : { chainIds: params.chainIds === "" ? [] : params.chainIds.split(",").map(Number) },
|
|
83
|
+
...params.underlyingType === void 0 ? {} : { underlyingType: params.underlyingType },
|
|
84
|
+
...params.sortBy === void 0 ? {} : { sortBy: params.sortBy },
|
|
85
|
+
...params.sortDirection === void 0 ? {} : { sortDirection: params.sortDirection },
|
|
86
|
+
...params.offset === void 0 ? {} : { offset: Number(params.offset) },
|
|
87
|
+
...params.limit === void 0 ? {} : { limit: Number(params.limit) }
|
|
88
|
+
}),
|
|
89
|
+
encode: (options) => ({
|
|
90
|
+
borrower: options.borrower,
|
|
91
|
+
kind: require_model_filters.isFilterSet(options.kind) ? options.kind : void 0,
|
|
92
|
+
isZeroDebt: require_model_filters_schema.encodeFlag(options.isZeroDebt),
|
|
93
|
+
chainIds: options.chainIds?.join(","),
|
|
94
|
+
underlyingType: require_model_filters.isFilterSet(options.underlyingType) ? options.underlyingType : void 0,
|
|
95
|
+
sortBy: options.sortBy,
|
|
96
|
+
sortDirection: options.sortDirection,
|
|
97
|
+
offset: options.offset?.toString(),
|
|
98
|
+
limit: options.limit?.toString()
|
|
99
|
+
})
|
|
100
|
+
});
|
|
101
|
+
/** {@link AnalyticsPositionPage} */
|
|
102
|
+
const analyticsPositionPageSchema = zod_v4.z.object({
|
|
103
|
+
items: zod_v4.z.array(analyticsPositionSchema),
|
|
104
|
+
total: zod_v4.z.number().int().nonnegative(),
|
|
105
|
+
offset: zod_v4.z.number().int().nonnegative(),
|
|
106
|
+
limit: zod_v4.z.number().int().positive().max(100)
|
|
107
|
+
});
|
|
108
|
+
//#endregion
|
|
109
|
+
exports.ANALYTICS_POSITIONS_DEFAULT_LIMIT = ANALYTICS_POSITIONS_DEFAULT_LIMIT;
|
|
110
|
+
exports.ANALYTICS_POSITIONS_MAX_LIMIT = ANALYTICS_POSITIONS_MAX_LIMIT;
|
|
111
|
+
exports.analyticsPositionListOptionsSchema = analyticsPositionListOptionsSchema;
|
|
112
|
+
exports.analyticsPositionListQueryParamsSchema = analyticsPositionListQueryParamsSchema;
|
|
113
|
+
exports.analyticsPositionListQuerySchema = analyticsPositionListQuerySchema;
|
|
114
|
+
exports.analyticsPositionPageSchema = analyticsPositionPageSchema;
|
|
115
|
+
exports.analyticsPositionSchema = analyticsPositionSchema;
|
|
116
|
+
exports.analyticsPositionSortFieldSchema = analyticsPositionSortFieldSchema;
|
|
117
|
+
exports.analyticsSortDirectionSchema = analyticsSortDirectionSchema;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_model_charts = require("./charts.js");
|
|
3
2
|
const require_model_primitives_schema = require("./primitives.schema.js");
|
|
3
|
+
const require_model_charts = require("./charts.js");
|
|
4
4
|
let zod_v4 = require("zod/v4");
|
|
5
5
|
//#region src/model/charts.schema.ts
|
|
6
6
|
/**
|
package/dist/cjs/model/index.js
CHANGED
|
@@ -1,22 +1,24 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
2
|
+
require("./analytics.js");
|
|
3
|
+
const require_model_filters = require("./filters.js");
|
|
4
|
+
const require_model_filters_schema = require("./filters.schema.js");
|
|
3
5
|
const require_model_compare_schema = require("./compare.schema.js");
|
|
6
|
+
const require_model_curators_schema = require("./curators.schema.js");
|
|
4
7
|
const require_model_primitives_schema = require("./primitives.schema.js");
|
|
8
|
+
const require_model_liquidations_schema = require("./liquidations.schema.js");
|
|
9
|
+
const require_model_opportunities_schema = require("./opportunities.schema.js");
|
|
10
|
+
const require_model_positions_schema = require("./positions.schema.js");
|
|
11
|
+
const require_model_analytics_schema = require("./analytics.schema.js");
|
|
12
|
+
const require_model_charts = require("./charts.js");
|
|
5
13
|
const require_model_charts_schema = require("./charts.schema.js");
|
|
6
14
|
require("./curators.js");
|
|
7
|
-
const require_model_curators_schema = require("./curators.schema.js");
|
|
8
15
|
require("./delayed-intents.js");
|
|
9
16
|
require("./errors.js");
|
|
10
|
-
const require_model_filters = require("./filters.js");
|
|
11
|
-
const require_model_filters_schema = require("./filters.schema.js");
|
|
12
17
|
const require_model_liquidations = require("./liquidations.js");
|
|
13
|
-
const require_model_liquidations_schema = require("./liquidations.schema.js");
|
|
14
18
|
require("./notices.js");
|
|
15
19
|
const require_model_notices_schema = require("./notices.schema.js");
|
|
16
20
|
const require_model_opportunities = require("./opportunities.js");
|
|
17
|
-
const require_model_opportunities_schema = require("./opportunities.schema.js");
|
|
18
21
|
const require_model_positions = require("./positions.js");
|
|
19
|
-
const require_model_positions_schema = require("./positions.schema.js");
|
|
20
22
|
const require_model_previews = require("./previews.js");
|
|
21
23
|
require("./primitives.js");
|
|
22
24
|
require("./response.js");
|
|
@@ -24,6 +26,8 @@ const require_model_response_schema = require("./response.schema.js");
|
|
|
24
26
|
const require_model_result = require("./result.js");
|
|
25
27
|
require("./withdrawals.js");
|
|
26
28
|
const require_model_withdrawals_schema = require("./withdrawals.schema.js");
|
|
29
|
+
exports.ANALYTICS_POSITIONS_DEFAULT_LIMIT = require_model_analytics_schema.ANALYTICS_POSITIONS_DEFAULT_LIMIT;
|
|
30
|
+
exports.ANALYTICS_POSITIONS_MAX_LIMIT = require_model_analytics_schema.ANALYTICS_POSITIONS_MAX_LIMIT;
|
|
27
31
|
exports.CHART_METRIC_UNITS = require_model_charts.CHART_METRIC_UNITS;
|
|
28
32
|
exports.CHART_RANGES = require_model_charts.CHART_RANGES;
|
|
29
33
|
exports.CHART_UNAVAILABLE_CODES = require_model_charts.CHART_UNAVAILABLE_CODES;
|
|
@@ -34,6 +38,13 @@ exports.STRATEGY_OPPORTUNITY_CHART_METRICS = require_model_charts.STRATEGY_OPPOR
|
|
|
34
38
|
exports.STRATEGY_POSITION_CHART_METRICS = require_model_charts.STRATEGY_POSITION_CHART_METRICS;
|
|
35
39
|
exports.STRATEGY_POSITION_COLLATERAL_ERROR = require_model_positions.STRATEGY_POSITION_COLLATERAL_ERROR;
|
|
36
40
|
exports.amountSchema = require_model_primitives_schema.amountSchema;
|
|
41
|
+
exports.analyticsPositionListOptionsSchema = require_model_analytics_schema.analyticsPositionListOptionsSchema;
|
|
42
|
+
exports.analyticsPositionListQueryParamsSchema = require_model_analytics_schema.analyticsPositionListQueryParamsSchema;
|
|
43
|
+
exports.analyticsPositionListQuerySchema = require_model_analytics_schema.analyticsPositionListQuerySchema;
|
|
44
|
+
exports.analyticsPositionPageSchema = require_model_analytics_schema.analyticsPositionPageSchema;
|
|
45
|
+
exports.analyticsPositionSchema = require_model_analytics_schema.analyticsPositionSchema;
|
|
46
|
+
exports.analyticsPositionSortFieldSchema = require_model_analytics_schema.analyticsPositionSortFieldSchema;
|
|
47
|
+
exports.analyticsSortDirectionSchema = require_model_analytics_schema.analyticsSortDirectionSchema;
|
|
37
48
|
exports.apyBreakdownSchema = require_model_opportunities_schema.apyBreakdownSchema;
|
|
38
49
|
exports.asEstimated = require_model_previews.asEstimated;
|
|
39
50
|
exports.assetTypeSchema = require_model_primitives_schema.assetTypeSchema;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_onchain_utils_zod = require("../onchain/utils/zod.js");
|
|
3
|
-
const require_model_primitives_schema = require("./primitives.schema.js");
|
|
4
|
-
const require_model_curators_schema = require("./curators.schema.js");
|
|
5
3
|
const require_model_filters_schema = require("./filters.schema.js");
|
|
4
|
+
const require_model_curators_schema = require("./curators.schema.js");
|
|
5
|
+
const require_model_primitives_schema = require("./primitives.schema.js");
|
|
6
6
|
let zod_v4 = require("zod/v4");
|
|
7
7
|
//#region src/model/liquidations.schema.ts
|
|
8
8
|
/**
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_onchain_utils_zod = require("../onchain/utils/zod.js");
|
|
3
|
-
const require_model_compare_schema = require("./compare.schema.js");
|
|
4
|
-
const require_model_primitives_schema = require("./primitives.schema.js");
|
|
5
|
-
const require_model_curators_schema = require("./curators.schema.js");
|
|
6
3
|
const require_model_filters = require("./filters.js");
|
|
7
4
|
const require_model_filters_schema = require("./filters.schema.js");
|
|
5
|
+
const require_model_compare_schema = require("./compare.schema.js");
|
|
6
|
+
const require_model_curators_schema = require("./curators.schema.js");
|
|
7
|
+
const require_model_primitives_schema = require("./primitives.schema.js");
|
|
8
8
|
let zod_v4 = require("zod/v4");
|
|
9
9
|
//#region src/model/opportunities.schema.ts
|
|
10
10
|
/**
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_onchain_utils_zod = require("../onchain/utils/zod.js");
|
|
3
|
-
const require_model_compare_schema = require("./compare.schema.js");
|
|
4
|
-
const require_model_primitives_schema = require("./primitives.schema.js");
|
|
5
3
|
const require_model_filters = require("./filters.js");
|
|
6
4
|
const require_model_filters_schema = require("./filters.schema.js");
|
|
5
|
+
const require_model_compare_schema = require("./compare.schema.js");
|
|
6
|
+
const require_model_primitives_schema = require("./primitives.schema.js");
|
|
7
7
|
const require_model_liquidations_schema = require("./liquidations.schema.js");
|
|
8
8
|
const require_model_opportunities_schema = require("./opportunities.schema.js");
|
|
9
9
|
let zod_v4 = require("zod/v4");
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_offchain_analytics_OffchainAnalytics = require("./analytics/OffchainAnalytics.js");
|
|
3
|
+
require("./analytics/index.js");
|
|
2
4
|
const require_offchain_notices_OffchainNotices = require("./notices/OffchainNotices.js");
|
|
3
5
|
require("./notices/index.js");
|
|
4
6
|
const require_offchain_opportunities_OffchainOpportunities = require("./opportunities/OffchainOpportunities.js");
|
|
@@ -28,6 +30,8 @@ var GearboxAPI = class {
|
|
|
28
30
|
* Chains every read of this client is scoped to.
|
|
29
31
|
**/
|
|
30
32
|
chainIds;
|
|
33
|
+
/** Protocol-wide, backend-only analytics. */
|
|
34
|
+
analytics;
|
|
31
35
|
/**
|
|
32
36
|
* Namespace for pool and strategy opportunities.
|
|
33
37
|
**/
|
|
@@ -42,6 +46,7 @@ var GearboxAPI = class {
|
|
|
42
46
|
notices;
|
|
43
47
|
constructor(options) {
|
|
44
48
|
this.chainIds = [...options.chainIds];
|
|
49
|
+
this.analytics = new require_offchain_analytics_OffchainAnalytics.OffchainAnalytics(options);
|
|
45
50
|
this.opportunities = new require_offchain_opportunities_OffchainOpportunities.OffchainOpportunities(options);
|
|
46
51
|
this.positions = new require_offchain_positions_OffchainPositions.OffchainPositions(options);
|
|
47
52
|
this.notices = new require_offchain_notices_OffchainNotices.OffchainNotices(options);
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_offchain_analytics_OffchainAnalyticsPositions = require("./OffchainAnalyticsPositions.js");
|
|
3
|
+
//#region src/offchain/analytics/OffchainAnalytics.ts
|
|
4
|
+
/** Backend-only protocol analytics, grouped by subject. */
|
|
5
|
+
var OffchainAnalytics = class {
|
|
6
|
+
positions;
|
|
7
|
+
constructor(options) {
|
|
8
|
+
this.positions = new require_offchain_analytics_OffchainAnalyticsPositions.OffchainAnalyticsPositions(options);
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
//#endregion
|
|
12
|
+
exports.OffchainAnalytics = OffchainAnalytics;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_model_analytics_schema = require("../../model/analytics.schema.js");
|
|
3
|
+
const require_offchain_AbstractOffchainNamespace = require("../AbstractOffchainNamespace.js");
|
|
4
|
+
let zod_v4 = require("zod/v4");
|
|
5
|
+
//#region src/offchain/analytics/OffchainAnalyticsPositions.ts
|
|
6
|
+
/** Backend client for protocol-wide position analytics. */
|
|
7
|
+
var OffchainAnalyticsPositions = class extends require_offchain_AbstractOffchainNamespace.AbstractOffchainNamespace {
|
|
8
|
+
constructor(options) {
|
|
9
|
+
super("OffchainAnalyticsPositions", options);
|
|
10
|
+
}
|
|
11
|
+
/** {@inheritDoc IOffchainAnalyticsPositions.list} */
|
|
12
|
+
async list(options) {
|
|
13
|
+
return this.get({
|
|
14
|
+
path: "/v2/analytics/positions",
|
|
15
|
+
query: zod_v4.z.encode(require_model_analytics_schema.analyticsPositionListQuerySchema, {
|
|
16
|
+
...options,
|
|
17
|
+
chainIds: this.scopedChainIds(options)
|
|
18
|
+
}),
|
|
19
|
+
schema: require_model_analytics_schema.analyticsPositionPageSchema
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
//#endregion
|
|
24
|
+
exports.OffchainAnalyticsPositions = OffchainAnalyticsPositions;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_offchain_analytics_OffchainAnalyticsPositions = require("./OffchainAnalyticsPositions.js");
|
|
3
|
+
const require_offchain_analytics_OffchainAnalytics = require("./OffchainAnalytics.js");
|
|
4
|
+
require("./types.js");
|
|
5
|
+
exports.OffchainAnalytics = require_offchain_analytics_OffchainAnalytics.OffchainAnalytics;
|
|
6
|
+
exports.OffchainAnalyticsPositions = require_offchain_analytics_OffchainAnalyticsPositions.OffchainAnalyticsPositions;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
@@ -11,6 +11,9 @@ const require_offchain_errors_OffchainValidationError = require("./errors/Offcha
|
|
|
11
11
|
const require_offchain_errors_readResponseBody = require("./errors/readResponseBody.js");
|
|
12
12
|
require("./errors/index.js");
|
|
13
13
|
const require_offchain_AbstractOffchainNamespace = require("./AbstractOffchainNamespace.js");
|
|
14
|
+
const require_offchain_analytics_OffchainAnalyticsPositions = require("./analytics/OffchainAnalyticsPositions.js");
|
|
15
|
+
const require_offchain_analytics_OffchainAnalytics = require("./analytics/OffchainAnalytics.js");
|
|
16
|
+
require("./analytics/index.js");
|
|
14
17
|
const require_offchain_notices_OffchainNotices = require("./notices/OffchainNotices.js");
|
|
15
18
|
require("./notices/index.js");
|
|
16
19
|
const require_offchain_opportunities_OffchainOpportunities = require("./opportunities/OffchainOpportunities.js");
|
|
@@ -21,6 +24,8 @@ const require_offchain_GearboxAPI = require("./GearboxAPI.js");
|
|
|
21
24
|
require("./types.js");
|
|
22
25
|
exports.AbstractOffchainNamespace = require_offchain_AbstractOffchainNamespace.AbstractOffchainNamespace;
|
|
23
26
|
exports.GearboxAPI = require_offchain_GearboxAPI.GearboxAPI;
|
|
27
|
+
exports.OffchainAnalytics = require_offchain_analytics_OffchainAnalytics.OffchainAnalytics;
|
|
28
|
+
exports.OffchainAnalyticsPositions = require_offchain_analytics_OffchainAnalyticsPositions.OffchainAnalyticsPositions;
|
|
24
29
|
exports.OffchainInvalidJsonError = require_offchain_errors_OffchainInvalidJsonError.OffchainInvalidJsonError;
|
|
25
30
|
exports.OffchainNotConfiguredError = require_offchain_errors_OffchainNotConfiguredError.OffchainNotConfiguredError;
|
|
26
31
|
exports.OffchainNotImplementedError = require_offchain_errors_OffchainNotImplementedError.OffchainNotImplementedError;
|
|
@@ -291,13 +291,13 @@ var CreditSuite = class extends require_onchain_base_SDKConstruct.SDKConstruct {
|
|
|
291
291
|
}
|
|
292
292
|
/**
|
|
293
293
|
* Describes this suite's leveraged strategy as the shared read model does,
|
|
294
|
-
* or `undefined` when
|
|
295
|
-
* {@link maxBorrowAmount} is at or below {@link MIN_STRATEGY_BORROW_AMOUNT}.
|
|
294
|
+
* or `undefined` when credit suite does not offer a strategy opportunity.
|
|
296
295
|
*/
|
|
297
296
|
strategyOpportunity() {
|
|
298
297
|
if (this.maxBorrowAmount <= MIN_STRATEGY_BORROW_AMOUNT) return;
|
|
299
298
|
const collateral = this.strategyTargetCollateral;
|
|
300
299
|
if (!collateral) return;
|
|
300
|
+
if (!require_onchain_market_credit_collateralUtils.isStrategyCollateral(this.#strategyCollateralProps(collateral), true)) return;
|
|
301
301
|
const { market, creditManager: cm } = this;
|
|
302
302
|
const { pool } = market.pool;
|
|
303
303
|
const oracle = market.priceOracle;
|
|
@@ -7,6 +7,8 @@ require("../offchain/index.js");
|
|
|
7
7
|
const require_sdk_errors_assertSameChains = require("./errors/assertSameChains.js");
|
|
8
8
|
const require_sdk_errors_MissingSourceError = require("./errors/MissingSourceError.js");
|
|
9
9
|
require("./errors/index.js");
|
|
10
|
+
const require_sdk_analytics_AnalyticsNamespace = require("./analytics/AnalyticsNamespace.js");
|
|
11
|
+
require("./analytics/index.js");
|
|
10
12
|
const require_sdk_liquidations_LiquidationsNamespace = require("./liquidations/LiquidationsNamespace.js");
|
|
11
13
|
require("./liquidations/index.js");
|
|
12
14
|
require("./utils/mergeChains.js");
|
|
@@ -51,6 +53,8 @@ var GearboxSDK = class {
|
|
|
51
53
|
* Chains this instance covers, which every read is scoped to.
|
|
52
54
|
**/
|
|
53
55
|
networks;
|
|
56
|
+
/** Protocol-wide analytics. Undefined in `onchain` mode. */
|
|
57
|
+
analytics;
|
|
54
58
|
/**
|
|
55
59
|
* Namespace for pool and strategy opportunities.
|
|
56
60
|
**/
|
|
@@ -131,6 +135,7 @@ var GearboxSDK = class {
|
|
|
131
135
|
ensureFresh: this.#onchain ? (chainIds) => this.#ensureFresh(chainIds) : void 0,
|
|
132
136
|
logger
|
|
133
137
|
};
|
|
138
|
+
this.analytics = this.#offchain ? new require_sdk_analytics_AnalyticsNamespace.AnalyticsNamespace(this.#offchain) : void 0;
|
|
134
139
|
this.opportunities = new require_sdk_opportunities_OpportunitiesNamespace.OpportunitiesNamespace(this.#onchain, this.#offchain, namespaceOptions);
|
|
135
140
|
this.positions = new require_sdk_positions_PositionsNamespace.PositionsNamespace(this.#onchain, this.#offchain, namespaceOptions);
|
|
136
141
|
this.liquidations = this.#onchain ? new require_sdk_liquidations_LiquidationsNamespace.LiquidationsNamespace(this.#onchain, namespaceOptions) : void 0;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
//#region src/sdk/analytics/AnalyticsNamespace.ts
|
|
3
|
+
/** Backend-only protocol analytics exposed by {@link GearboxSDK}. */
|
|
4
|
+
var AnalyticsNamespace = class {
|
|
5
|
+
positions;
|
|
6
|
+
constructor(backend) {
|
|
7
|
+
this.positions = backend.analytics.positions;
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
//#endregion
|
|
11
|
+
exports.AnalyticsNamespace = AnalyticsNamespace;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_sdk_analytics_AnalyticsNamespace = require("./AnalyticsNamespace.js");
|
|
3
|
+
require("./types.js");
|
|
4
|
+
exports.AnalyticsNamespace = require_sdk_analytics_AnalyticsNamespace.AnalyticsNamespace;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
package/dist/cjs/sdk/index.js
CHANGED
|
@@ -9,6 +9,8 @@ const require_sdk_errors_NoSourceServedError = require("./errors/NoSourceServedE
|
|
|
9
9
|
const require_sdk_errors_SourceUnavailableError = require("./errors/SourceUnavailableError.js");
|
|
10
10
|
require("./errors/index.js");
|
|
11
11
|
const require_sdk_AbstractNamespace = require("./AbstractNamespace.js");
|
|
12
|
+
const require_sdk_analytics_AnalyticsNamespace = require("./analytics/AnalyticsNamespace.js");
|
|
13
|
+
require("./analytics/index.js");
|
|
12
14
|
const require_sdk_liquidations_LiquidationsNamespace = require("./liquidations/LiquidationsNamespace.js");
|
|
13
15
|
require("./liquidations/index.js");
|
|
14
16
|
const require_sdk_execute_ExecuteApi = require("./execute/ExecuteApi.js");
|
|
@@ -29,6 +31,7 @@ const require_sdk_GearboxSDK = require("./GearboxSDK.js");
|
|
|
29
31
|
require("./types.js");
|
|
30
32
|
exports.AbstractNamespace = require_sdk_AbstractNamespace.AbstractNamespace;
|
|
31
33
|
exports.AllSourcesFailedError = require_sdk_errors_AllSourcesFailedError.AllSourcesFailedError;
|
|
34
|
+
exports.AnalyticsNamespace = require_sdk_analytics_AnalyticsNamespace.AnalyticsNamespace;
|
|
32
35
|
exports.DEFAULT_MAX_OFFCHAIN_LAG = require_sdk_utils_mergeChains.DEFAULT_MAX_OFFCHAIN_LAG;
|
|
33
36
|
exports.DEFAULT_MAX_STATE_AGE = require_sdk_GearboxSDK.DEFAULT_MAX_STATE_AGE;
|
|
34
37
|
exports.ExecuteApi = require_sdk_execute_ExecuteApi.ExecuteApi;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { opportunityId } from "../../model/opportunities.js";
|
|
2
1
|
import { poolOpportunitySchema, strategyOpportunitySchema } from "../../model/opportunities.schema.js";
|
|
2
|
+
import { opportunityId } from "../../model/opportunities.js";
|
|
3
3
|
import "../../model/index.js";
|
|
4
4
|
import { countPaths, diffObjects, toCompareCounts, union } from "./fieldDiff.js";
|
|
5
5
|
import { compileCompareRules, makeTagDiff } from "./compareRules.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { liquidationPositionSchema } from "../../model/liquidations.schema.js";
|
|
2
|
-
import { positionId } from "../../model/positions.js";
|
|
3
2
|
import { poolPositionSchema, strategyPositionSchema } from "../../model/positions.schema.js";
|
|
3
|
+
import { positionId } from "../../model/positions.js";
|
|
4
4
|
import "../../model/index.js";
|
|
5
5
|
import { countPaths, diffObjects, isRecord, toCompareCounts, union } from "./fieldDiff.js";
|
|
6
6
|
import { compileCompareRules, makeTagDiff } from "./compareRules.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { ZodAddress } from "../onchain/utils/zod.js";
|
|
2
|
+
import { isFilterSet } from "./filters.js";
|
|
3
|
+
import { encodeFlag, filterable } from "./filters.schema.js";
|
|
4
|
+
import { assetTypeSchema, chainIdSchema } from "./primitives.schema.js";
|
|
5
|
+
import { liquidationPositionSchema } from "./liquidations.schema.js";
|
|
6
|
+
import { poolPositionSchema, positionKindSchema, strategyPositionSchema } from "./positions.schema.js";
|
|
7
|
+
import { isAddress } from "viem";
|
|
8
|
+
import { z } from "zod/v4";
|
|
9
|
+
//#region src/model/analytics.schema.ts
|
|
10
|
+
/** Default page size of the protocol-wide positions list. */
|
|
11
|
+
const ANALYTICS_POSITIONS_DEFAULT_LIMIT = 25;
|
|
12
|
+
/** Largest page the protocol-wide positions list accepts. */
|
|
13
|
+
const ANALYTICS_POSITIONS_MAX_LIMIT = 100;
|
|
14
|
+
/** {@link AnalyticsPositionSortField} */
|
|
15
|
+
const analyticsPositionSortFieldSchema = z.enum([
|
|
16
|
+
"netValueUsd",
|
|
17
|
+
"totalValueUsd",
|
|
18
|
+
"totalDebtUsd",
|
|
19
|
+
"pnlUsd",
|
|
20
|
+
"apy",
|
|
21
|
+
"healthFactor",
|
|
22
|
+
"leverage",
|
|
23
|
+
"chainId",
|
|
24
|
+
"name",
|
|
25
|
+
"borrower"
|
|
26
|
+
]);
|
|
27
|
+
/** {@link AnalyticsSortDirection} */
|
|
28
|
+
const analyticsSortDirectionSchema = z.enum(["asc", "desc"]);
|
|
29
|
+
const analyticsOwnerShape = { borrower: ZodAddress() };
|
|
30
|
+
const addressSchema = z.custom((value) => typeof value === "string" && isAddress(value, { strict: false }));
|
|
31
|
+
/** {@link AnalyticsPosition} */
|
|
32
|
+
const analyticsPositionSchema = z.discriminatedUnion("kind", [
|
|
33
|
+
z.object({
|
|
34
|
+
...poolPositionSchema.shape,
|
|
35
|
+
...analyticsOwnerShape
|
|
36
|
+
}),
|
|
37
|
+
z.object({
|
|
38
|
+
...strategyPositionSchema.shape,
|
|
39
|
+
...analyticsOwnerShape
|
|
40
|
+
}),
|
|
41
|
+
z.object({
|
|
42
|
+
...liquidationPositionSchema.shape,
|
|
43
|
+
...analyticsOwnerShape
|
|
44
|
+
})
|
|
45
|
+
]);
|
|
46
|
+
/** {@link AnalyticsPositionListOptions} */
|
|
47
|
+
const analyticsPositionListOptionsSchema = z.object({
|
|
48
|
+
borrower: addressSchema.optional(),
|
|
49
|
+
kind: filterable(positionKindSchema).optional(),
|
|
50
|
+
isZeroDebt: filterable(z.boolean()).optional(),
|
|
51
|
+
chainIds: z.array(chainIdSchema).optional(),
|
|
52
|
+
underlyingType: filterable(assetTypeSchema).optional(),
|
|
53
|
+
sortBy: analyticsPositionSortFieldSchema.optional(),
|
|
54
|
+
sortDirection: analyticsSortDirectionSchema.optional(),
|
|
55
|
+
offset: z.number().int().nonnegative().optional(),
|
|
56
|
+
limit: z.number().int().positive().max(100).optional()
|
|
57
|
+
});
|
|
58
|
+
/**
|
|
59
|
+
* {@link AnalyticsPositionListOptions} as URL query parameters.
|
|
60
|
+
**/
|
|
61
|
+
const analyticsPositionListQueryParamsSchema = z.object({
|
|
62
|
+
borrower: z.string().refine((value) => isAddress(value, { strict: false }), "invalid address").optional(),
|
|
63
|
+
kind: positionKindSchema.optional(),
|
|
64
|
+
isZeroDebt: z.enum(["true", "false"]).optional(),
|
|
65
|
+
chainIds: z.string().regex(/^$|^\d+(,\d+)*$/).optional(),
|
|
66
|
+
underlyingType: assetTypeSchema.optional(),
|
|
67
|
+
sortBy: analyticsPositionSortFieldSchema.optional(),
|
|
68
|
+
sortDirection: analyticsSortDirectionSchema.optional(),
|
|
69
|
+
offset: z.string().regex(/^\d+$/).optional(),
|
|
70
|
+
limit: z.string().regex(/^[1-9]\d*$/).optional()
|
|
71
|
+
});
|
|
72
|
+
/**
|
|
73
|
+
* Codec for an analytics position-list query. It is shared by the SDK client
|
|
74
|
+
* and backend controller so both sides interpret every parameter identically.
|
|
75
|
+
**/
|
|
76
|
+
const analyticsPositionListQuerySchema = z.codec(analyticsPositionListQueryParamsSchema, analyticsPositionListOptionsSchema, {
|
|
77
|
+
decode: (params) => ({
|
|
78
|
+
...params.borrower === void 0 ? {} : { borrower: params.borrower },
|
|
79
|
+
...params.kind === void 0 ? {} : { kind: params.kind },
|
|
80
|
+
...params.isZeroDebt === void 0 ? {} : { isZeroDebt: params.isZeroDebt === "true" },
|
|
81
|
+
...params.chainIds === void 0 ? {} : { chainIds: params.chainIds === "" ? [] : params.chainIds.split(",").map(Number) },
|
|
82
|
+
...params.underlyingType === void 0 ? {} : { underlyingType: params.underlyingType },
|
|
83
|
+
...params.sortBy === void 0 ? {} : { sortBy: params.sortBy },
|
|
84
|
+
...params.sortDirection === void 0 ? {} : { sortDirection: params.sortDirection },
|
|
85
|
+
...params.offset === void 0 ? {} : { offset: Number(params.offset) },
|
|
86
|
+
...params.limit === void 0 ? {} : { limit: Number(params.limit) }
|
|
87
|
+
}),
|
|
88
|
+
encode: (options) => ({
|
|
89
|
+
borrower: options.borrower,
|
|
90
|
+
kind: isFilterSet(options.kind) ? options.kind : void 0,
|
|
91
|
+
isZeroDebt: encodeFlag(options.isZeroDebt),
|
|
92
|
+
chainIds: options.chainIds?.join(","),
|
|
93
|
+
underlyingType: isFilterSet(options.underlyingType) ? options.underlyingType : void 0,
|
|
94
|
+
sortBy: options.sortBy,
|
|
95
|
+
sortDirection: options.sortDirection,
|
|
96
|
+
offset: options.offset?.toString(),
|
|
97
|
+
limit: options.limit?.toString()
|
|
98
|
+
})
|
|
99
|
+
});
|
|
100
|
+
/** {@link AnalyticsPositionPage} */
|
|
101
|
+
const analyticsPositionPageSchema = z.object({
|
|
102
|
+
items: z.array(analyticsPositionSchema),
|
|
103
|
+
total: z.number().int().nonnegative(),
|
|
104
|
+
offset: z.number().int().nonnegative(),
|
|
105
|
+
limit: z.number().int().positive().max(100)
|
|
106
|
+
});
|
|
107
|
+
//#endregion
|
|
108
|
+
export { ANALYTICS_POSITIONS_DEFAULT_LIMIT, ANALYTICS_POSITIONS_MAX_LIMIT, analyticsPositionListOptionsSchema, analyticsPositionListQueryParamsSchema, analyticsPositionListQuerySchema, analyticsPositionPageSchema, analyticsPositionSchema, analyticsPositionSortFieldSchema, analyticsSortDirectionSchema };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { CHART_METRIC_UNITS, CHART_RANGES, CHART_UNAVAILABLE_CODES, POOL_OPPORTUNITY_CHART_METRICS, POOL_POSITION_CHART_METRICS, STRATEGY_OPPORTUNITY_CHART_METRICS, STRATEGY_POSITION_CHART_METRICS } from "./charts.js";
|
|
2
1
|
import { timestampSchema, tokenSchema } from "./primitives.schema.js";
|
|
2
|
+
import { CHART_METRIC_UNITS, CHART_RANGES, CHART_UNAVAILABLE_CODES, POOL_OPPORTUNITY_CHART_METRICS, POOL_POSITION_CHART_METRICS, STRATEGY_OPPORTUNITY_CHART_METRICS, STRATEGY_POSITION_CHART_METRICS } from "./charts.js";
|
|
3
3
|
import { z } from "zod/v4";
|
|
4
4
|
//#region src/model/charts.schema.ts
|
|
5
5
|
/**
|
package/dist/esm/model/index.js
CHANGED
|
@@ -1,21 +1,23 @@
|
|
|
1
|
-
import
|
|
1
|
+
import "./analytics.js";
|
|
2
|
+
import { FILTER_ALL, isFilterSet } from "./filters.js";
|
|
3
|
+
import { booleanParamSchema, encodeFlag, filterAllSchema, filterable } from "./filters.schema.js";
|
|
2
4
|
import { backendPreferred, compareTagOf, offchainOnly, onchainOnly, tolerance } from "./compare.schema.js";
|
|
5
|
+
import { curatorNameSchema, curatorSchema } from "./curators.schema.js";
|
|
3
6
|
import { amountSchema, assetTypeSchema, bpsSchema, chainIdSchema, leverageSchema, timestampSchema, tokenAmountSchema, tokenSchema, txCallSchema, underlyingTokenSchema } from "./primitives.schema.js";
|
|
7
|
+
import { delayedReceivedAssetSchema, instantReceivedAssetSchema, liquidatableAccountFilterSchema, liquidatableAccountSchema, liquidationApprovalSchema, liquidationDetailsSchema, liquidationPositionSchema, receivedAssetSchema } from "./liquidations.schema.js";
|
|
8
|
+
import { apyBreakdownSchema, opportunityBaseSchema, opportunityDetailSchema, opportunityFilterQueryParamsSchema, opportunityFilterQuerySchema, opportunityFilterSchema, opportunityKeySchema, opportunityKindSchema, opportunitySchema, opportunityTotalsSchema, pointRewardsSchema, pointsProgramSchema, poolOpportunityDetailSchema, poolOpportunityKeySchema, poolOpportunitySchema, priceFeedDataSchema, priceFeedSummarySchema, quotaAssetSchema, rateCurvePointSchema, rateCurveSchema, rewardsSchema, strategyOpportunityDetailSchema, strategyOpportunityKeySchema, strategyOpportunitySchema, tokenRewardsSchema } from "./opportunities.schema.js";
|
|
9
|
+
import { borrowRateBreakdownSchema, pnlBreakdownSchema, pointsProgramPnLSchema, pointsRewardsPnLSchema, poolPositionKeySchema, poolPositionSchema, positionCollateralSchema, positionFilterQueryParamsSchema, positionFilterQuerySchema, positionFilterSchema, positionKeySchema, positionKindSchema, positionSchema, positionTransactionKindSchema, positionTransactionSchema, positionsTotalsSchema, rewardsPnLSchema, strategyPositionKeySchema, strategyPositionSchema, tokenQuotaRateSchema, tokenRewardsPnLSchema } from "./positions.schema.js";
|
|
10
|
+
import { ANALYTICS_POSITIONS_DEFAULT_LIMIT, ANALYTICS_POSITIONS_MAX_LIMIT, analyticsPositionListOptionsSchema, analyticsPositionListQueryParamsSchema, analyticsPositionListQuerySchema, analyticsPositionPageSchema, analyticsPositionSchema, analyticsPositionSortFieldSchema, analyticsSortDirectionSchema } from "./analytics.schema.js";
|
|
11
|
+
import { CHART_METRIC_UNITS, CHART_RANGES, CHART_UNAVAILABLE_CODES, POOL_OPPORTUNITY_CHART_METRICS, POOL_POSITION_CHART_METRICS, STRATEGY_OPPORTUNITY_CHART_METRICS, STRATEGY_POSITION_CHART_METRICS } from "./charts.js";
|
|
4
12
|
import { chartBundleSchemaFor, chartDenominationSchema, chartMetricSchema, chartQueryCodec, chartQueryParamsSchema, chartQuerySchema, chartRangeSchema, chartSeriesSchema, chartValueSchema, chartWindowSchema, poolOpportunityChartMetricSchema, poolPositionChartMetricSchema, strategyOpportunityChartMetricSchema, strategyPositionChartMetricSchema } from "./charts.schema.js";
|
|
5
13
|
import "./curators.js";
|
|
6
|
-
import { curatorNameSchema, curatorSchema } from "./curators.schema.js";
|
|
7
14
|
import "./delayed-intents.js";
|
|
8
15
|
import "./errors.js";
|
|
9
|
-
import { FILTER_ALL, isFilterSet } from "./filters.js";
|
|
10
|
-
import { booleanParamSchema, encodeFlag, filterAllSchema, filterable } from "./filters.schema.js";
|
|
11
16
|
import { matchesLiquidatableAccountFilter } from "./liquidations.js";
|
|
12
|
-
import { delayedReceivedAssetSchema, instantReceivedAssetSchema, liquidatableAccountFilterSchema, liquidatableAccountSchema, liquidationApprovalSchema, liquidationDetailsSchema, liquidationPositionSchema, receivedAssetSchema } from "./liquidations.schema.js";
|
|
13
17
|
import "./notices.js";
|
|
14
18
|
import { noticeKindSchema, noticeSchema } from "./notices.schema.js";
|
|
15
19
|
import { matchesOpportunityFilter, opportunityId, poolOpportunityId, strategyOpportunityId } from "./opportunities.js";
|
|
16
|
-
import { apyBreakdownSchema, opportunityBaseSchema, opportunityDetailSchema, opportunityFilterQueryParamsSchema, opportunityFilterQuerySchema, opportunityFilterSchema, opportunityKeySchema, opportunityKindSchema, opportunitySchema, opportunityTotalsSchema, pointRewardsSchema, pointsProgramSchema, poolOpportunityDetailSchema, poolOpportunityKeySchema, poolOpportunitySchema, priceFeedDataSchema, priceFeedSummarySchema, quotaAssetSchema, rateCurvePointSchema, rateCurveSchema, rewardsSchema, strategyOpportunityDetailSchema, strategyOpportunityKeySchema, strategyOpportunitySchema, tokenRewardsSchema } from "./opportunities.schema.js";
|
|
17
20
|
import { STRATEGY_POSITION_COLLATERAL_ERROR, liquidationPositionId, matchesPositionFilter, poolPositionId, positionId, strategyPositionId } from "./positions.js";
|
|
18
|
-
import { borrowRateBreakdownSchema, pnlBreakdownSchema, pointsProgramPnLSchema, pointsRewardsPnLSchema, poolPositionKeySchema, poolPositionSchema, positionCollateralSchema, positionFilterQueryParamsSchema, positionFilterQuerySchema, positionFilterSchema, positionKeySchema, positionKindSchema, positionSchema, positionTransactionKindSchema, positionTransactionSchema, positionsTotalsSchema, rewardsPnLSchema, strategyPositionKeySchema, strategyPositionSchema, tokenQuotaRateSchema, tokenRewardsPnLSchema } from "./positions.schema.js";
|
|
19
21
|
import { asEstimated } from "./previews.js";
|
|
20
22
|
import "./primitives.js";
|
|
21
23
|
import "./response.js";
|
|
@@ -23,4 +25,4 @@ import { chainFailedSchema, chainMetadataSchema, chainSucceededSchema, dataSourc
|
|
|
23
25
|
import { isSDKError, safeValue, sdkErr, sdkOk } from "./result.js";
|
|
24
26
|
import "./withdrawals.js";
|
|
25
27
|
import { positionClaimableWithdrawalSchema, positionPendingWithdrawalSchema, positionWithdrawalsSchema, withdrawalOutputAmountSchema } from "./withdrawals.schema.js";
|
|
26
|
-
export { CHART_METRIC_UNITS, CHART_RANGES, CHART_UNAVAILABLE_CODES, FILTER_ALL, POOL_OPPORTUNITY_CHART_METRICS, POOL_POSITION_CHART_METRICS, STRATEGY_OPPORTUNITY_CHART_METRICS, STRATEGY_POSITION_CHART_METRICS, STRATEGY_POSITION_COLLATERAL_ERROR, amountSchema, apyBreakdownSchema, asEstimated, assetTypeSchema, backendPreferred, booleanParamSchema, borrowRateBreakdownSchema, bpsSchema, chainFailedSchema, chainIdSchema, chainMetadataSchema, chainSucceededSchema, chartBundleSchemaFor, chartDenominationSchema, chartMetricSchema, chartQueryCodec, chartQueryParamsSchema, chartQuerySchema, chartRangeSchema, chartSeriesSchema, chartValueSchema, chartWindowSchema, compareTagOf, curatorNameSchema, curatorSchema, dataSourceSchema, delayedReceivedAssetSchema, encodeFlag, filterAllSchema, filterable, instantReceivedAssetSchema, isFilterSet, isSDKError, leverageSchema, liquidatableAccountFilterSchema, liquidatableAccountSchema, liquidationApprovalSchema, liquidationDetailsSchema, liquidationPositionId, liquidationPositionSchema, matchesLiquidatableAccountFilter, matchesOpportunityFilter, matchesPositionFilter, noticeKindSchema, noticeSchema, offchainOnly, onchainOnly, opportunityBaseSchema, opportunityDetailSchema, opportunityFilterQueryParamsSchema, opportunityFilterQuerySchema, opportunityFilterSchema, opportunityId, opportunityKeySchema, opportunityKindSchema, opportunitySchema, opportunityTotalsSchema, pnlBreakdownSchema, pointRewardsSchema, pointsProgramPnLSchema, pointsProgramSchema, pointsRewardsPnLSchema, poolOpportunityChartMetricSchema, poolOpportunityDetailSchema, poolOpportunityId, poolOpportunityKeySchema, poolOpportunitySchema, poolPositionChartMetricSchema, poolPositionId, poolPositionKeySchema, poolPositionSchema, positionClaimableWithdrawalSchema, positionCollateralSchema, positionFilterQueryParamsSchema, positionFilterQuerySchema, positionFilterSchema, positionId, positionKeySchema, positionKindSchema, positionPendingWithdrawalSchema, positionSchema, positionTransactionKindSchema, positionTransactionSchema, positionWithdrawalsSchema, positionsTotalsSchema, priceFeedDataSchema, priceFeedSummarySchema, quotaAssetSchema, rateCurvePointSchema, rateCurveSchema, receivedAssetSchema, responseMetadataSchema, responseSchema, rewardsPnLSchema, rewardsSchema, safeValue, sdkErr, sdkOk, strategyOpportunityChartMetricSchema, strategyOpportunityDetailSchema, strategyOpportunityId, strategyOpportunityKeySchema, strategyOpportunitySchema, strategyPositionChartMetricSchema, strategyPositionId, strategyPositionKeySchema, strategyPositionSchema, timestampSchema, tokenAmountSchema, tokenQuotaRateSchema, tokenRewardsPnLSchema, tokenRewardsSchema, tokenSchema, tolerance, txCallSchema, underlyingTokenSchema, withdrawalOutputAmountSchema };
|
|
28
|
+
export { ANALYTICS_POSITIONS_DEFAULT_LIMIT, ANALYTICS_POSITIONS_MAX_LIMIT, CHART_METRIC_UNITS, CHART_RANGES, CHART_UNAVAILABLE_CODES, FILTER_ALL, POOL_OPPORTUNITY_CHART_METRICS, POOL_POSITION_CHART_METRICS, STRATEGY_OPPORTUNITY_CHART_METRICS, STRATEGY_POSITION_CHART_METRICS, STRATEGY_POSITION_COLLATERAL_ERROR, amountSchema, analyticsPositionListOptionsSchema, analyticsPositionListQueryParamsSchema, analyticsPositionListQuerySchema, analyticsPositionPageSchema, analyticsPositionSchema, analyticsPositionSortFieldSchema, analyticsSortDirectionSchema, apyBreakdownSchema, asEstimated, assetTypeSchema, backendPreferred, booleanParamSchema, borrowRateBreakdownSchema, bpsSchema, chainFailedSchema, chainIdSchema, chainMetadataSchema, chainSucceededSchema, chartBundleSchemaFor, chartDenominationSchema, chartMetricSchema, chartQueryCodec, chartQueryParamsSchema, chartQuerySchema, chartRangeSchema, chartSeriesSchema, chartValueSchema, chartWindowSchema, compareTagOf, curatorNameSchema, curatorSchema, dataSourceSchema, delayedReceivedAssetSchema, encodeFlag, filterAllSchema, filterable, instantReceivedAssetSchema, isFilterSet, isSDKError, leverageSchema, liquidatableAccountFilterSchema, liquidatableAccountSchema, liquidationApprovalSchema, liquidationDetailsSchema, liquidationPositionId, liquidationPositionSchema, matchesLiquidatableAccountFilter, matchesOpportunityFilter, matchesPositionFilter, noticeKindSchema, noticeSchema, offchainOnly, onchainOnly, opportunityBaseSchema, opportunityDetailSchema, opportunityFilterQueryParamsSchema, opportunityFilterQuerySchema, opportunityFilterSchema, opportunityId, opportunityKeySchema, opportunityKindSchema, opportunitySchema, opportunityTotalsSchema, pnlBreakdownSchema, pointRewardsSchema, pointsProgramPnLSchema, pointsProgramSchema, pointsRewardsPnLSchema, poolOpportunityChartMetricSchema, poolOpportunityDetailSchema, poolOpportunityId, poolOpportunityKeySchema, poolOpportunitySchema, poolPositionChartMetricSchema, poolPositionId, poolPositionKeySchema, poolPositionSchema, positionClaimableWithdrawalSchema, positionCollateralSchema, positionFilterQueryParamsSchema, positionFilterQuerySchema, positionFilterSchema, positionId, positionKeySchema, positionKindSchema, positionPendingWithdrawalSchema, positionSchema, positionTransactionKindSchema, positionTransactionSchema, positionWithdrawalsSchema, positionsTotalsSchema, priceFeedDataSchema, priceFeedSummarySchema, quotaAssetSchema, rateCurvePointSchema, rateCurveSchema, receivedAssetSchema, responseMetadataSchema, responseSchema, rewardsPnLSchema, rewardsSchema, safeValue, sdkErr, sdkOk, strategyOpportunityChartMetricSchema, strategyOpportunityDetailSchema, strategyOpportunityId, strategyOpportunityKeySchema, strategyOpportunitySchema, strategyPositionChartMetricSchema, strategyPositionId, strategyPositionKeySchema, strategyPositionSchema, timestampSchema, tokenAmountSchema, tokenQuotaRateSchema, tokenRewardsPnLSchema, tokenRewardsSchema, tokenSchema, tolerance, txCallSchema, underlyingTokenSchema, withdrawalOutputAmountSchema };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ZodAddress } from "../onchain/utils/zod.js";
|
|
2
|
-
import { assetTypeSchema, bpsSchema, chainIdSchema, timestampSchema, tokenAmountSchema, tokenSchema, txCallSchema, underlyingTokenSchema } from "./primitives.schema.js";
|
|
3
|
-
import { curatorSchema } from "./curators.schema.js";
|
|
4
2
|
import { filterable } from "./filters.schema.js";
|
|
3
|
+
import { curatorSchema } from "./curators.schema.js";
|
|
4
|
+
import { assetTypeSchema, bpsSchema, chainIdSchema, timestampSchema, tokenAmountSchema, tokenSchema, txCallSchema, underlyingTokenSchema } from "./primitives.schema.js";
|
|
5
5
|
import { z } from "zod/v4";
|
|
6
6
|
//#region src/model/liquidations.schema.ts
|
|
7
7
|
/**
|