@secondlayer/shared 6.5.0 → 6.7.0
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/README.md +9 -12
- package/dist/src/db/index.js.map +2 -2
- package/dist/src/db/queries/chain-reorgs.js.map +2 -2
- package/dist/src/index.d.ts +29 -42
- package/dist/src/index.js +94 -103
- package/dist/src/index.js.map +4 -5
- package/dist/src/schemas/index.d.ts +29 -42
- package/dist/src/schemas/index.js +94 -103
- package/dist/src/schemas/index.js.map +3 -4
- package/package.json +1 -29
- package/dist/src/db/queries/account-spend-caps.d.ts +0 -729
- package/dist/src/db/queries/account-spend-caps.js +0 -59
- package/dist/src/db/queries/account-spend-caps.js.map +0 -10
- package/dist/src/db/queries/account-usage.d.ts +0 -741
- package/dist/src/db/queries/account-usage.js +0 -266
- package/dist/src/db/queries/account-usage.js.map +0 -11
- package/dist/src/db/queries/accounts.d.ts +0 -741
- package/dist/src/db/queries/accounts.js +0 -86
- package/dist/src/db/queries/accounts.js.map +0 -10
- package/dist/src/db/queries/projects.d.ts +0 -722
- package/dist/src/db/queries/projects.js +0 -47
- package/dist/src/db/queries/projects.js.map +0 -10
- package/dist/src/db/queries/usage.d.ts +0 -731
- package/dist/src/db/queries/usage.js +0 -109
- package/dist/src/db/queries/usage.js.map +0 -10
- package/dist/src/pricing.d.ts +0 -60
- package/dist/src/pricing.js +0 -164
- package/dist/src/pricing.js.map +0 -10
- package/dist/src/schemas/accounts.d.ts +0 -14
- package/dist/src/schemas/accounts.js +0 -29
- package/dist/src/schemas/accounts.js.map +0 -10
|
@@ -1,17 +1,4 @@
|
|
|
1
1
|
import { z } from "zod/v4";
|
|
2
|
-
/**
|
|
3
|
-
* Account profile shapes. Unrelated to marketplace — previously lived in
|
|
4
|
-
* schemas/marketplace.ts alongside public-directory types. Kept here now
|
|
5
|
-
* that marketplace is gone so the profile fields (display_name, bio, slug)
|
|
6
|
-
* have a stable home.
|
|
7
|
-
*/
|
|
8
|
-
interface UpdateProfileRequest {
|
|
9
|
-
display_name?: string;
|
|
10
|
-
bio?: string;
|
|
11
|
-
slug?: string;
|
|
12
|
-
}
|
|
13
|
-
declare const UpdateProfileRequestSchema: z.ZodType<UpdateProfileRequest>;
|
|
14
|
-
import { z as z2 } from "zod/v4";
|
|
15
2
|
interface StxTransferFilter {
|
|
16
3
|
type: "stx_transfer";
|
|
17
4
|
sender?: string;
|
|
@@ -90,21 +77,21 @@ interface PrintEventFilter {
|
|
|
90
77
|
contains?: string;
|
|
91
78
|
}
|
|
92
79
|
type EventFilter = StxTransferFilter | StxMintFilter | StxBurnFilter | StxLockFilter | FtTransferFilter | FtMintFilter | FtBurnFilter | NftTransferFilter | NftMintFilter | NftBurnFilter | ContractCallFilter | ContractDeployFilter | PrintEventFilter;
|
|
93
|
-
declare const StxTransferFilterSchema:
|
|
94
|
-
declare const StxMintFilterSchema:
|
|
95
|
-
declare const StxBurnFilterSchema:
|
|
96
|
-
declare const StxLockFilterSchema:
|
|
97
|
-
declare const FtTransferFilterSchema:
|
|
98
|
-
declare const FtMintFilterSchema:
|
|
99
|
-
declare const FtBurnFilterSchema:
|
|
100
|
-
declare const NftTransferFilterSchema:
|
|
101
|
-
declare const NftMintFilterSchema:
|
|
102
|
-
declare const NftBurnFilterSchema:
|
|
103
|
-
declare const ContractCallFilterSchema:
|
|
104
|
-
declare const ContractDeployFilterSchema:
|
|
105
|
-
declare const PrintEventFilterSchema:
|
|
106
|
-
declare const EventFilterSchema:
|
|
107
|
-
import { z as
|
|
80
|
+
declare const StxTransferFilterSchema: z.ZodType<StxTransferFilter>;
|
|
81
|
+
declare const StxMintFilterSchema: z.ZodType<StxMintFilter>;
|
|
82
|
+
declare const StxBurnFilterSchema: z.ZodType<StxBurnFilter>;
|
|
83
|
+
declare const StxLockFilterSchema: z.ZodType<StxLockFilter>;
|
|
84
|
+
declare const FtTransferFilterSchema: z.ZodType<FtTransferFilter>;
|
|
85
|
+
declare const FtMintFilterSchema: z.ZodType<FtMintFilter>;
|
|
86
|
+
declare const FtBurnFilterSchema: z.ZodType<FtBurnFilter>;
|
|
87
|
+
declare const NftTransferFilterSchema: z.ZodType<NftTransferFilter>;
|
|
88
|
+
declare const NftMintFilterSchema: z.ZodType<NftMintFilter>;
|
|
89
|
+
declare const NftBurnFilterSchema: z.ZodType<NftBurnFilter>;
|
|
90
|
+
declare const ContractCallFilterSchema: z.ZodType<ContractCallFilter>;
|
|
91
|
+
declare const ContractDeployFilterSchema: z.ZodType<ContractDeployFilter>;
|
|
92
|
+
declare const PrintEventFilterSchema: z.ZodType<PrintEventFilter>;
|
|
93
|
+
declare const EventFilterSchema: z.ZodType<EventFilter>;
|
|
94
|
+
import { z as z2 } from "zod/v4";
|
|
108
95
|
interface DeploySubgraphRequest {
|
|
109
96
|
name: string;
|
|
110
97
|
version?: string;
|
|
@@ -117,7 +104,7 @@ interface DeploySubgraphRequest {
|
|
|
117
104
|
/** Original TypeScript source, persisted so chat can read/diff/edit later. */
|
|
118
105
|
sourceCode?: string;
|
|
119
106
|
}
|
|
120
|
-
declare const DeploySubgraphRequestSchema:
|
|
107
|
+
declare const DeploySubgraphRequestSchema: z2.ZodType<DeploySubgraphRequest>;
|
|
121
108
|
interface DeploySubgraphResponse {
|
|
122
109
|
action: "created" | "unchanged" | "handler_updated" | "updated" | "reindexed";
|
|
123
110
|
subgraphId: string;
|
|
@@ -255,21 +242,21 @@ interface SubgraphQueryParams {
|
|
|
255
242
|
fields?: string;
|
|
256
243
|
filters?: Record<string, string>;
|
|
257
244
|
}
|
|
258
|
-
import { z as
|
|
245
|
+
import { z as z3 } from "zod/v4";
|
|
259
246
|
declare const SUBSCRIPTION_FORMATS: readonly ["standard-webhooks", "inngest", "trigger", "cloudflare", "cloudevents", "raw"];
|
|
260
247
|
declare const SUBSCRIPTION_RUNTIMES: readonly ["inngest", "trigger", "cloudflare", "node"];
|
|
261
248
|
declare const SUBSCRIPTION_STATUSES: readonly ["active", "paused", "error"];
|
|
262
249
|
declare const SUBSCRIPTION_FILTER_OPERATORS: readonly ["eq", "neq", "gt", "gte", "lt", "lte", "in"];
|
|
263
|
-
declare const SubscriptionStatusSchema:
|
|
264
|
-
declare const SubscriptionFormatSchema:
|
|
265
|
-
declare const SubscriptionRuntimeSchema:
|
|
266
|
-
declare const SubscriptionFilterPrimitiveSchema:
|
|
267
|
-
declare const SubscriptionFilterOperatorSchema:
|
|
268
|
-
declare const SubscriptionFilterClauseSchema:
|
|
269
|
-
declare const SubscriptionFilterSchema:
|
|
270
|
-
declare const CreateSubscriptionRequestSchema:
|
|
271
|
-
declare const UpdateSubscriptionRequestSchema:
|
|
272
|
-
declare const ReplaySubscriptionRequestSchema:
|
|
250
|
+
declare const SubscriptionStatusSchema: z3.ZodType<SubscriptionStatus>;
|
|
251
|
+
declare const SubscriptionFormatSchema: z3.ZodType<SubscriptionFormat>;
|
|
252
|
+
declare const SubscriptionRuntimeSchema: z3.ZodType<SubscriptionRuntime>;
|
|
253
|
+
declare const SubscriptionFilterPrimitiveSchema: z3.ZodType<SubscriptionFilterPrimitive>;
|
|
254
|
+
declare const SubscriptionFilterOperatorSchema: z3.ZodType<SubscriptionFilterOperator>;
|
|
255
|
+
declare const SubscriptionFilterClauseSchema: z3.ZodType<SubscriptionFilterClause>;
|
|
256
|
+
declare const SubscriptionFilterSchema: z3.ZodType<SubscriptionFilter>;
|
|
257
|
+
declare const CreateSubscriptionRequestSchema: z3.ZodType<ParsedCreateSubscriptionRequest>;
|
|
258
|
+
declare const UpdateSubscriptionRequestSchema: z3.ZodType<UpdateSubscriptionRequest>;
|
|
259
|
+
declare const ReplaySubscriptionRequestSchema: z3.ZodType<ReplaySubscriptionRequest>;
|
|
273
260
|
type SubscriptionStatus = (typeof SUBSCRIPTION_STATUSES)[number];
|
|
274
261
|
type SubscriptionFormat = (typeof SUBSCRIPTION_FORMATS)[number];
|
|
275
262
|
type SubscriptionRuntime = (typeof SUBSCRIPTION_RUNTIMES)[number];
|
|
@@ -389,11 +376,11 @@ interface SubscriptionSchemaTable {
|
|
|
389
376
|
columns: Record<string, SubscriptionSchemaColumn>;
|
|
390
377
|
}
|
|
391
378
|
type SubscriptionSchemaTables = Record<string, SubscriptionSchemaTable>;
|
|
392
|
-
declare function formatSubscriptionSchemaErrors(error:
|
|
379
|
+
declare function formatSubscriptionSchemaErrors(error: z3.ZodError): string[];
|
|
393
380
|
declare function validateSubscriptionFilterForTable(input: {
|
|
394
381
|
subgraphName?: string
|
|
395
382
|
tableName: string
|
|
396
383
|
filter?: unknown
|
|
397
384
|
tables: SubscriptionSchemaTables
|
|
398
385
|
}): string[];
|
|
399
|
-
export { validateSubscriptionFilterForTable, formatSubscriptionSchemaErrors, UpdateSubscriptionRequestSchema, UpdateSubscriptionRequest,
|
|
386
|
+
export { validateSubscriptionFilterForTable, formatSubscriptionSchemaErrors, UpdateSubscriptionRequestSchema, UpdateSubscriptionRequest, SubscriptionSummary, SubscriptionStatusSchema, SubscriptionSchemaTables, SubscriptionSchemaTable, SubscriptionSchemaColumn, SubscriptionRuntimeSchema, SubscriptionFormatSchema, SubscriptionFilterSchema, SubscriptionFilterPrimitiveSchema, SubscriptionFilterPrimitive, SubscriptionFilterOperatorSchema, SubscriptionFilterOperator, SubscriptionFilterClauseSchema, SubscriptionFilterClause, SubscriptionFilter, SubscriptionDetail, SubgraphSyncInfo, SubgraphSummary, SubgraphResourceWarning, SubgraphQueryParams, SubgraphGapsResponse, SubgraphGapRange, SubgraphGapEntry, SubgraphDetail, StxTransferFilterSchema, StxTransferFilter, StxMintFilterSchema, StxMintFilter, StxLockFilterSchema, StxLockFilter, StxBurnFilterSchema, StxBurnFilter, SUBSCRIPTION_STATUSES, SUBSCRIPTION_RUNTIMES, SUBSCRIPTION_FORMATS, SUBSCRIPTION_FILTER_OPERATORS, RotateSecretResponse, ReplaySubscriptionRequestSchema, ReplaySubscriptionRequest, ReplayResult, ReindexResponse, PrintEventFilterSchema, PrintEventFilter, ParsedUpdateSubscriptionRequest, ParsedReplaySubscriptionRequest, ParsedCreateSubscriptionRequest, NftTransferFilterSchema, NftTransferFilter, NftMintFilterSchema, NftMintFilter, NftBurnFilterSchema, NftBurnFilter, FtTransferFilterSchema, FtTransferFilter, FtMintFilterSchema, FtMintFilter, FtBurnFilterSchema, FtBurnFilter, EventFilterSchema, EventFilter, DeploySubgraphResponse, DeploySubgraphRequestSchema, DeploySubgraphRequest, DeliveryRow, DeadRow, CreateSubscriptionResponse, CreateSubscriptionRequestSchema, CreateSubscriptionRequest, ContractDeployFilterSchema, ContractDeployFilter, ContractCallFilterSchema, ContractCallFilter };
|
|
@@ -14,19 +14,11 @@ var __export = (target, all) => {
|
|
|
14
14
|
});
|
|
15
15
|
};
|
|
16
16
|
|
|
17
|
-
// src/schemas/accounts.ts
|
|
18
|
-
import { z } from "zod/v4";
|
|
19
|
-
var UpdateProfileRequestSchema = z.object({
|
|
20
|
-
display_name: z.string().max(50).optional(),
|
|
21
|
-
bio: z.string().max(300).optional(),
|
|
22
|
-
slug: z.string().regex(/^[a-z0-9-]+$/, "lowercase alphanumeric + hyphens only").min(3).max(30).optional()
|
|
23
|
-
});
|
|
24
|
-
|
|
25
17
|
// src/schemas/filters.ts
|
|
26
18
|
import { isValidAddress as _isValidAddress } from "@secondlayer/stacks";
|
|
27
|
-
import { z
|
|
19
|
+
import { z } from "zod/v4";
|
|
28
20
|
var isValidAddress = _isValidAddress;
|
|
29
|
-
var stacksPrincipal =
|
|
21
|
+
var stacksPrincipal = z.string().refine((val) => {
|
|
30
22
|
const parts = val.split(".");
|
|
31
23
|
if (parts.length > 2)
|
|
32
24
|
return false;
|
|
@@ -36,81 +28,81 @@ var baseFilter = {
|
|
|
36
28
|
sender: stacksPrincipal.optional(),
|
|
37
29
|
recipient: stacksPrincipal.optional()
|
|
38
30
|
};
|
|
39
|
-
var StxTransferFilterSchema =
|
|
40
|
-
type:
|
|
31
|
+
var StxTransferFilterSchema = z.object({
|
|
32
|
+
type: z.literal("stx_transfer"),
|
|
41
33
|
...baseFilter,
|
|
42
|
-
minAmount:
|
|
43
|
-
maxAmount:
|
|
34
|
+
minAmount: z.coerce.number().int().positive().optional(),
|
|
35
|
+
maxAmount: z.coerce.number().int().positive().optional()
|
|
44
36
|
});
|
|
45
|
-
var StxMintFilterSchema =
|
|
46
|
-
type:
|
|
37
|
+
var StxMintFilterSchema = z.object({
|
|
38
|
+
type: z.literal("stx_mint"),
|
|
47
39
|
recipient: stacksPrincipal.optional(),
|
|
48
|
-
minAmount:
|
|
40
|
+
minAmount: z.coerce.number().int().positive().optional()
|
|
49
41
|
});
|
|
50
|
-
var StxBurnFilterSchema =
|
|
51
|
-
type:
|
|
42
|
+
var StxBurnFilterSchema = z.object({
|
|
43
|
+
type: z.literal("stx_burn"),
|
|
52
44
|
sender: stacksPrincipal.optional(),
|
|
53
|
-
minAmount:
|
|
45
|
+
minAmount: z.coerce.number().int().positive().optional()
|
|
54
46
|
});
|
|
55
|
-
var StxLockFilterSchema =
|
|
56
|
-
type:
|
|
47
|
+
var StxLockFilterSchema = z.object({
|
|
48
|
+
type: z.literal("stx_lock"),
|
|
57
49
|
lockedAddress: stacksPrincipal.optional(),
|
|
58
|
-
minAmount:
|
|
50
|
+
minAmount: z.coerce.number().int().positive().optional()
|
|
59
51
|
});
|
|
60
|
-
var FtTransferFilterSchema =
|
|
61
|
-
type:
|
|
52
|
+
var FtTransferFilterSchema = z.object({
|
|
53
|
+
type: z.literal("ft_transfer"),
|
|
62
54
|
...baseFilter,
|
|
63
|
-
assetIdentifier:
|
|
64
|
-
minAmount:
|
|
55
|
+
assetIdentifier: z.string().optional(),
|
|
56
|
+
minAmount: z.coerce.number().int().positive().optional()
|
|
65
57
|
});
|
|
66
|
-
var FtMintFilterSchema =
|
|
67
|
-
type:
|
|
58
|
+
var FtMintFilterSchema = z.object({
|
|
59
|
+
type: z.literal("ft_mint"),
|
|
68
60
|
recipient: stacksPrincipal.optional(),
|
|
69
|
-
assetIdentifier:
|
|
70
|
-
minAmount:
|
|
61
|
+
assetIdentifier: z.string().optional(),
|
|
62
|
+
minAmount: z.coerce.number().int().positive().optional()
|
|
71
63
|
});
|
|
72
|
-
var FtBurnFilterSchema =
|
|
73
|
-
type:
|
|
64
|
+
var FtBurnFilterSchema = z.object({
|
|
65
|
+
type: z.literal("ft_burn"),
|
|
74
66
|
sender: stacksPrincipal.optional(),
|
|
75
|
-
assetIdentifier:
|
|
76
|
-
minAmount:
|
|
67
|
+
assetIdentifier: z.string().optional(),
|
|
68
|
+
minAmount: z.coerce.number().int().positive().optional()
|
|
77
69
|
});
|
|
78
|
-
var NftTransferFilterSchema =
|
|
79
|
-
type:
|
|
70
|
+
var NftTransferFilterSchema = z.object({
|
|
71
|
+
type: z.literal("nft_transfer"),
|
|
80
72
|
...baseFilter,
|
|
81
|
-
assetIdentifier:
|
|
82
|
-
tokenId:
|
|
73
|
+
assetIdentifier: z.string().optional(),
|
|
74
|
+
tokenId: z.string().optional()
|
|
83
75
|
});
|
|
84
|
-
var NftMintFilterSchema =
|
|
85
|
-
type:
|
|
76
|
+
var NftMintFilterSchema = z.object({
|
|
77
|
+
type: z.literal("nft_mint"),
|
|
86
78
|
recipient: stacksPrincipal.optional(),
|
|
87
|
-
assetIdentifier:
|
|
88
|
-
tokenId:
|
|
79
|
+
assetIdentifier: z.string().optional(),
|
|
80
|
+
tokenId: z.string().optional()
|
|
89
81
|
});
|
|
90
|
-
var NftBurnFilterSchema =
|
|
91
|
-
type:
|
|
82
|
+
var NftBurnFilterSchema = z.object({
|
|
83
|
+
type: z.literal("nft_burn"),
|
|
92
84
|
sender: stacksPrincipal.optional(),
|
|
93
|
-
assetIdentifier:
|
|
94
|
-
tokenId:
|
|
85
|
+
assetIdentifier: z.string().optional(),
|
|
86
|
+
tokenId: z.string().optional()
|
|
95
87
|
});
|
|
96
|
-
var ContractCallFilterSchema =
|
|
97
|
-
type:
|
|
88
|
+
var ContractCallFilterSchema = z.object({
|
|
89
|
+
type: z.literal("contract_call"),
|
|
98
90
|
contractId: stacksPrincipal.optional(),
|
|
99
|
-
functionName:
|
|
91
|
+
functionName: z.string().optional(),
|
|
100
92
|
caller: stacksPrincipal.optional()
|
|
101
93
|
});
|
|
102
|
-
var ContractDeployFilterSchema =
|
|
103
|
-
type:
|
|
94
|
+
var ContractDeployFilterSchema = z.object({
|
|
95
|
+
type: z.literal("contract_deploy"),
|
|
104
96
|
deployer: stacksPrincipal.optional(),
|
|
105
|
-
contractName:
|
|
97
|
+
contractName: z.string().optional()
|
|
106
98
|
});
|
|
107
|
-
var PrintEventFilterSchema =
|
|
108
|
-
type:
|
|
99
|
+
var PrintEventFilterSchema = z.object({
|
|
100
|
+
type: z.literal("print_event"),
|
|
109
101
|
contractId: stacksPrincipal.optional(),
|
|
110
|
-
topic:
|
|
111
|
-
contains:
|
|
102
|
+
topic: z.string().optional(),
|
|
103
|
+
contains: z.string().optional()
|
|
112
104
|
});
|
|
113
|
-
var EventFilterSchema =
|
|
105
|
+
var EventFilterSchema = z.discriminatedUnion("type", [
|
|
114
106
|
StxTransferFilterSchema,
|
|
115
107
|
StxMintFilterSchema,
|
|
116
108
|
StxBurnFilterSchema,
|
|
@@ -127,20 +119,20 @@ var EventFilterSchema = z2.discriminatedUnion("type", [
|
|
|
127
119
|
]);
|
|
128
120
|
|
|
129
121
|
// src/schemas/subgraphs.ts
|
|
130
|
-
import { z as
|
|
131
|
-
var DeploySubgraphRequestSchema =
|
|
132
|
-
name:
|
|
133
|
-
version:
|
|
134
|
-
description:
|
|
135
|
-
sources:
|
|
136
|
-
schema:
|
|
137
|
-
handlerCode:
|
|
138
|
-
startBlock:
|
|
139
|
-
sourceCode:
|
|
122
|
+
import { z as z2 } from "zod/v4";
|
|
123
|
+
var DeploySubgraphRequestSchema = z2.object({
|
|
124
|
+
name: z2.string().regex(/^[a-z0-9-]+$/, "lowercase alphanumeric + hyphens only").max(63),
|
|
125
|
+
version: z2.string().optional(),
|
|
126
|
+
description: z2.string().optional(),
|
|
127
|
+
sources: z2.record(z2.string(), z2.record(z2.string(), z2.unknown())).refine((s) => Object.keys(s).length > 0, "Must have at least one source"),
|
|
128
|
+
schema: z2.record(z2.string(), z2.unknown()),
|
|
129
|
+
handlerCode: z2.string().max(1048576, "handler code exceeds 1MB limit"),
|
|
130
|
+
startBlock: z2.number().int().nonnegative().optional(),
|
|
131
|
+
sourceCode: z2.string().max(1048576, "source code exceeds 1MB limit").optional()
|
|
140
132
|
});
|
|
141
133
|
|
|
142
134
|
// src/schemas/subscriptions.ts
|
|
143
|
-
import { z as
|
|
135
|
+
import { z as z3 } from "zod/v4";
|
|
144
136
|
var SUBSCRIPTION_FORMATS = [
|
|
145
137
|
"standard-webhooks",
|
|
146
138
|
"inngest",
|
|
@@ -165,30 +157,30 @@ var SUBSCRIPTION_FILTER_OPERATORS = [
|
|
|
165
157
|
"lte",
|
|
166
158
|
"in"
|
|
167
159
|
];
|
|
168
|
-
var webhookUrl =
|
|
169
|
-
var name =
|
|
170
|
-
var resourceName =
|
|
171
|
-
var SubscriptionStatusSchema =
|
|
172
|
-
var SubscriptionFormatSchema =
|
|
173
|
-
var SubscriptionRuntimeSchema =
|
|
174
|
-
var SubscriptionFilterPrimitiveSchema =
|
|
175
|
-
var SubscriptionFilterOperatorSchema =
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
in:
|
|
160
|
+
var webhookUrl = z3.string().trim().min(1).refine((value) => value.startsWith("http://") || value.startsWith("https://"), "must be an http(s) URL");
|
|
161
|
+
var name = z3.string().trim().min(1).max(128);
|
|
162
|
+
var resourceName = z3.string().trim().min(1).max(128);
|
|
163
|
+
var SubscriptionStatusSchema = z3.enum(SUBSCRIPTION_STATUSES);
|
|
164
|
+
var SubscriptionFormatSchema = z3.enum(SUBSCRIPTION_FORMATS);
|
|
165
|
+
var SubscriptionRuntimeSchema = z3.enum(SUBSCRIPTION_RUNTIMES);
|
|
166
|
+
var SubscriptionFilterPrimitiveSchema = z3.union([z3.string(), z3.number().finite(), z3.boolean()]);
|
|
167
|
+
var SubscriptionFilterOperatorSchema = z3.union([
|
|
168
|
+
z3.object({ eq: SubscriptionFilterPrimitiveSchema }).strict(),
|
|
169
|
+
z3.object({ neq: SubscriptionFilterPrimitiveSchema }).strict(),
|
|
170
|
+
z3.object({ gt: z3.union([z3.string(), z3.number().finite()]) }).strict(),
|
|
171
|
+
z3.object({ gte: z3.union([z3.string(), z3.number().finite()]) }).strict(),
|
|
172
|
+
z3.object({ lt: z3.union([z3.string(), z3.number().finite()]) }).strict(),
|
|
173
|
+
z3.object({ lte: z3.union([z3.string(), z3.number().finite()]) }).strict(),
|
|
174
|
+
z3.object({
|
|
175
|
+
in: z3.array(SubscriptionFilterPrimitiveSchema).min(1)
|
|
184
176
|
}).strict()
|
|
185
177
|
]);
|
|
186
|
-
var SubscriptionFilterClauseSchema =
|
|
178
|
+
var SubscriptionFilterClauseSchema = z3.union([
|
|
187
179
|
SubscriptionFilterPrimitiveSchema,
|
|
188
180
|
SubscriptionFilterOperatorSchema
|
|
189
181
|
]);
|
|
190
|
-
var SubscriptionFilterSchema =
|
|
191
|
-
var CreateSubscriptionRequestSchema =
|
|
182
|
+
var SubscriptionFilterSchema = z3.record(z3.string().min(1), SubscriptionFilterClauseSchema);
|
|
183
|
+
var CreateSubscriptionRequestSchema = z3.object({
|
|
192
184
|
name,
|
|
193
185
|
subgraphName: resourceName,
|
|
194
186
|
tableName: resourceName,
|
|
@@ -196,28 +188,28 @@ var CreateSubscriptionRequestSchema = z4.object({
|
|
|
196
188
|
filter: SubscriptionFilterSchema.optional(),
|
|
197
189
|
format: SubscriptionFormatSchema.default("standard-webhooks"),
|
|
198
190
|
runtime: SubscriptionRuntimeSchema.nullable().optional(),
|
|
199
|
-
authConfig:
|
|
200
|
-
maxRetries:
|
|
201
|
-
timeoutMs:
|
|
202
|
-
concurrency:
|
|
191
|
+
authConfig: z3.record(z3.string(), z3.unknown()).optional(),
|
|
192
|
+
maxRetries: z3.number().int().min(0).max(100).optional(),
|
|
193
|
+
timeoutMs: z3.number().int().min(100).max(300000).optional(),
|
|
194
|
+
concurrency: z3.number().int().min(1).max(100).optional()
|
|
203
195
|
});
|
|
204
|
-
var UpdateSubscriptionRequestSchema =
|
|
196
|
+
var UpdateSubscriptionRequestSchema = z3.object({
|
|
205
197
|
name: name.optional(),
|
|
206
198
|
url: webhookUrl.optional(),
|
|
207
199
|
filter: SubscriptionFilterSchema.optional(),
|
|
208
200
|
format: SubscriptionFormatSchema.optional(),
|
|
209
201
|
runtime: SubscriptionRuntimeSchema.nullable().optional(),
|
|
210
|
-
authConfig:
|
|
211
|
-
maxRetries:
|
|
212
|
-
timeoutMs:
|
|
213
|
-
concurrency:
|
|
202
|
+
authConfig: z3.record(z3.string(), z3.unknown()).optional(),
|
|
203
|
+
maxRetries: z3.number().int().min(0).max(100).optional(),
|
|
204
|
+
timeoutMs: z3.number().int().min(100).max(300000).optional(),
|
|
205
|
+
concurrency: z3.number().int().min(1).max(100).optional()
|
|
214
206
|
}).refine((value) => Object.keys(value).length > 0, {
|
|
215
207
|
message: "At least one field must be provided"
|
|
216
208
|
});
|
|
217
|
-
var ReplaySubscriptionRequestSchema =
|
|
218
|
-
fromBlock:
|
|
219
|
-
toBlock:
|
|
220
|
-
force:
|
|
209
|
+
var ReplaySubscriptionRequestSchema = z3.object({
|
|
210
|
+
fromBlock: z3.number().int().nonnegative(),
|
|
211
|
+
toBlock: z3.number().int().nonnegative(),
|
|
212
|
+
force: z3.string().trim().min(1).max(64).optional()
|
|
221
213
|
}).refine((value) => value.fromBlock <= value.toBlock, {
|
|
222
214
|
message: "fromBlock must be less than or equal to toBlock",
|
|
223
215
|
path: ["toBlock"]
|
|
@@ -279,7 +271,6 @@ export {
|
|
|
279
271
|
validateSubscriptionFilterForTable,
|
|
280
272
|
formatSubscriptionSchemaErrors,
|
|
281
273
|
UpdateSubscriptionRequestSchema,
|
|
282
|
-
UpdateProfileRequestSchema,
|
|
283
274
|
SubscriptionStatusSchema,
|
|
284
275
|
SubscriptionRuntimeSchema,
|
|
285
276
|
SubscriptionFormatSchema,
|
|
@@ -310,5 +301,5 @@ export {
|
|
|
310
301
|
ContractCallFilterSchema
|
|
311
302
|
};
|
|
312
303
|
|
|
313
|
-
//# debugId=
|
|
304
|
+
//# debugId=44F5C073D716B3C264756E2164756E21
|
|
314
305
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/schemas/
|
|
3
|
+
"sources": ["../src/schemas/filters.ts", "../src/schemas/subgraphs.ts", "../src/schemas/subscriptions.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
|
-
"import { z } from \"zod/v4\";\n\n/**\n * Account profile shapes. Unrelated to marketplace — previously lived in\n * schemas/marketplace.ts alongside public-directory types. Kept here now\n * that marketplace is gone so the profile fields (display_name, bio, slug)\n * have a stable home.\n */\n\nexport interface UpdateProfileRequest {\n\tdisplay_name?: string;\n\tbio?: string;\n\tslug?: string;\n}\n\nexport const UpdateProfileRequestSchema: z.ZodType<UpdateProfileRequest> =\n\tz.object({\n\t\tdisplay_name: z.string().max(50).optional(),\n\t\tbio: z.string().max(300).optional(),\n\t\tslug: z\n\t\t\t.string()\n\t\t\t.regex(/^[a-z0-9-]+$/, \"lowercase alphanumeric + hyphens only\")\n\t\t\t.min(3)\n\t\t\t.max(30)\n\t\t\t.optional(),\n\t});\n",
|
|
6
5
|
"import { isValidAddress as _isValidAddress } from \"@secondlayer/stacks\";\nimport { z } from \"zod/v4\";\n\nconst isValidAddress = _isValidAddress as (addr: string) => boolean;\n\n/** Validate a Stacks principal (standard or contract, e.g. SP2J...ABC or SP2J...ABC.contract-name) */\nconst stacksPrincipal = z.string().refine((val) => {\n\tconst parts = val.split(\".\");\n\tif (parts.length > 2) return false;\n\t// biome-ignore lint/style/noNonNullAssertion: value is non-null after preceding check or by construction; TS narrowing limitation\n\treturn isValidAddress(parts[0]!);\n}, \"Invalid Stacks principal address\");\n\n// Base filter with common fields\nconst baseFilter = {\n\t// Optional: filter by sender\n\tsender: stacksPrincipal.optional(),\n\t// Optional: filter by recipient\n\trecipient: stacksPrincipal.optional(),\n};\n\n// Type exports — defined first so they can annotate schemas\nexport interface StxTransferFilter {\n\ttype: \"stx_transfer\";\n\tsender?: string;\n\trecipient?: string;\n\tminAmount?: number;\n\tmaxAmount?: number;\n}\n\nexport interface StxMintFilter {\n\ttype: \"stx_mint\";\n\trecipient?: string;\n\tminAmount?: number;\n}\n\nexport interface StxBurnFilter {\n\ttype: \"stx_burn\";\n\tsender?: string;\n\tminAmount?: number;\n}\n\nexport interface StxLockFilter {\n\ttype: \"stx_lock\";\n\tlockedAddress?: string;\n\tminAmount?: number;\n}\n\nexport interface FtTransferFilter {\n\ttype: \"ft_transfer\";\n\tsender?: string;\n\trecipient?: string;\n\tassetIdentifier?: string;\n\tminAmount?: number;\n}\n\nexport interface FtMintFilter {\n\ttype: \"ft_mint\";\n\trecipient?: string;\n\tassetIdentifier?: string;\n\tminAmount?: number;\n}\n\nexport interface FtBurnFilter {\n\ttype: \"ft_burn\";\n\tsender?: string;\n\tassetIdentifier?: string;\n\tminAmount?: number;\n}\n\nexport interface NftTransferFilter {\n\ttype: \"nft_transfer\";\n\tsender?: string;\n\trecipient?: string;\n\tassetIdentifier?: string;\n\ttokenId?: string;\n}\n\nexport interface NftMintFilter {\n\ttype: \"nft_mint\";\n\trecipient?: string;\n\tassetIdentifier?: string;\n\ttokenId?: string;\n}\n\nexport interface NftBurnFilter {\n\ttype: \"nft_burn\";\n\tsender?: string;\n\tassetIdentifier?: string;\n\ttokenId?: string;\n}\n\nexport interface ContractCallFilter {\n\ttype: \"contract_call\";\n\tcontractId?: string;\n\tfunctionName?: string;\n\tcaller?: string;\n}\n\nexport interface ContractDeployFilter {\n\ttype: \"contract_deploy\";\n\tdeployer?: string;\n\tcontractName?: string;\n}\n\nexport interface PrintEventFilter {\n\ttype: \"print_event\";\n\tcontractId?: string;\n\ttopic?: string;\n\tcontains?: string;\n}\n\nexport type EventFilter =\n\t| StxTransferFilter\n\t| StxMintFilter\n\t| StxBurnFilter\n\t| StxLockFilter\n\t| FtTransferFilter\n\t| FtMintFilter\n\t| FtBurnFilter\n\t| NftTransferFilter\n\t| NftMintFilter\n\t| NftBurnFilter\n\t| ContractCallFilter\n\t| ContractDeployFilter\n\t| PrintEventFilter;\n\n// STX Transfer Filter\nexport const StxTransferFilterSchema: z.ZodType<StxTransferFilter> = z.object({\n\ttype: z.literal(\"stx_transfer\"),\n\t...baseFilter,\n\t// Optional: minimum amount in microSTX\n\tminAmount: z.coerce.number().int().positive().optional(),\n\t// Optional: maximum amount in microSTX\n\tmaxAmount: z.coerce.number().int().positive().optional(),\n});\n\n// STX Mint Filter\nexport const StxMintFilterSchema: z.ZodType<StxMintFilter> = z.object({\n\ttype: z.literal(\"stx_mint\"),\n\trecipient: stacksPrincipal.optional(),\n\tminAmount: z.coerce.number().int().positive().optional(),\n});\n\n// STX Burn Filter\nexport const StxBurnFilterSchema: z.ZodType<StxBurnFilter> = z.object({\n\ttype: z.literal(\"stx_burn\"),\n\tsender: stacksPrincipal.optional(),\n\tminAmount: z.coerce.number().int().positive().optional(),\n});\n\n// STX Lock Filter\nexport const StxLockFilterSchema: z.ZodType<StxLockFilter> = z.object({\n\ttype: z.literal(\"stx_lock\"),\n\tlockedAddress: stacksPrincipal.optional(),\n\tminAmount: z.coerce.number().int().positive().optional(),\n});\n\n// FT Transfer Filter\nexport const FtTransferFilterSchema: z.ZodType<FtTransferFilter> = z.object({\n\ttype: z.literal(\"ft_transfer\"),\n\t...baseFilter,\n\t// Contract that defines the token (e.g., SP3K8BC0PPEVCV7NZ6QSRWPQ2JE9E5B6N3PA0KBR9.token-wstx)\n\tassetIdentifier: z.string().optional(),\n\tminAmount: z.coerce.number().int().positive().optional(),\n});\n\n// FT Mint Filter\nexport const FtMintFilterSchema: z.ZodType<FtMintFilter> = z.object({\n\ttype: z.literal(\"ft_mint\"),\n\trecipient: stacksPrincipal.optional(),\n\tassetIdentifier: z.string().optional(),\n\tminAmount: z.coerce.number().int().positive().optional(),\n});\n\n// FT Burn Filter\nexport const FtBurnFilterSchema: z.ZodType<FtBurnFilter> = z.object({\n\ttype: z.literal(\"ft_burn\"),\n\tsender: stacksPrincipal.optional(),\n\tassetIdentifier: z.string().optional(),\n\tminAmount: z.coerce.number().int().positive().optional(),\n});\n\n// NFT Transfer Filter\nexport const NftTransferFilterSchema: z.ZodType<NftTransferFilter> = z.object({\n\ttype: z.literal(\"nft_transfer\"),\n\t...baseFilter,\n\tassetIdentifier: z.string().optional(),\n\t// Optional: filter by specific token ID (Clarity value as hex)\n\ttokenId: z.string().optional(),\n});\n\n// NFT Mint Filter\nexport const NftMintFilterSchema: z.ZodType<NftMintFilter> = z.object({\n\ttype: z.literal(\"nft_mint\"),\n\trecipient: stacksPrincipal.optional(),\n\tassetIdentifier: z.string().optional(),\n\ttokenId: z.string().optional(),\n});\n\n// NFT Burn Filter\nexport const NftBurnFilterSchema: z.ZodType<NftBurnFilter> = z.object({\n\ttype: z.literal(\"nft_burn\"),\n\tsender: stacksPrincipal.optional(),\n\tassetIdentifier: z.string().optional(),\n\ttokenId: z.string().optional(),\n});\n\n// Contract Call Filter\nexport const ContractCallFilterSchema: z.ZodType<ContractCallFilter> = z.object(\n\t{\n\t\ttype: z.literal(\"contract_call\"),\n\t\t// Contract being called\n\t\tcontractId: stacksPrincipal.optional(),\n\t\t// Function name (supports wildcards with *)\n\t\tfunctionName: z.string().optional(),\n\t\t// Caller address\n\t\tcaller: stacksPrincipal.optional(),\n\t},\n);\n\n// Contract Deploy Filter\nexport const ContractDeployFilterSchema: z.ZodType<ContractDeployFilter> =\n\tz.object({\n\t\ttype: z.literal(\"contract_deploy\"),\n\t\t// Deployer address\n\t\tdeployer: stacksPrincipal.optional(),\n\t\t// Contract name pattern (supports wildcards)\n\t\tcontractName: z.string().optional(),\n\t});\n\n// Print Event Filter (smart contract events)\nexport const PrintEventFilterSchema: z.ZodType<PrintEventFilter> = z.object({\n\ttype: z.literal(\"print_event\"),\n\t// Contract emitting the event\n\tcontractId: stacksPrincipal.optional(),\n\t// Topic/name of the event\n\ttopic: z.string().optional(),\n\t// Search for substring in event data\n\tcontains: z.string().optional(),\n});\n\n// Union of all filter types\nexport const EventFilterSchema: z.ZodType<EventFilter> = z.discriminatedUnion(\n\t\"type\",\n\t[\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tStxTransferFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tStxMintFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tStxBurnFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tStxLockFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tFtTransferFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tFtMintFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tFtBurnFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tNftTransferFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tNftMintFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tNftBurnFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tContractCallFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tContractDeployFilterSchema as any,\n\t\t// biome-ignore lint/suspicious/noExplicitAny: interop boundary or dynamic-shape value where typing adds friction without runtime safety\n\t\tPrintEventFilterSchema as any,\n\t],\n);\n",
|
|
7
6
|
"import { z } from \"zod/v4\";\n\n// ── Deploy Subgraph Request ─────────────────────────────────────────────────\n\nexport interface DeploySubgraphRequest {\n\tname: string;\n\tversion?: string;\n\tdescription?: string;\n\tsources: Record<string, Record<string, unknown>>;\n\tschema: Record<string, unknown>;\n\thandlerCode: string;\n\t/** Override the definition's startBlock for this deploy only. */\n\tstartBlock?: number;\n\t/** Original TypeScript source, persisted so chat can read/diff/edit later. */\n\tsourceCode?: string;\n}\n\nexport const DeploySubgraphRequestSchema: z.ZodType<DeploySubgraphRequest> =\n\tz.object({\n\t\tname: z\n\t\t\t.string()\n\t\t\t.regex(/^[a-z0-9-]+$/, \"lowercase alphanumeric + hyphens only\")\n\t\t\t.max(63),\n\t\tversion: z.string().optional(),\n\t\tdescription: z.string().optional(),\n\t\tsources: z\n\t\t\t.record(z.string(), z.record(z.string(), z.unknown()))\n\t\t\t.refine(\n\t\t\t\t(s) => Object.keys(s).length > 0,\n\t\t\t\t\"Must have at least one source\",\n\t\t\t),\n\t\tschema: z.record(z.string(), z.unknown()),\n\t\thandlerCode: z.string().max(1_048_576, \"handler code exceeds 1MB limit\"),\n\t\tstartBlock: z.number().int().nonnegative().optional(),\n\t\tsourceCode: z\n\t\t\t.string()\n\t\t\t.max(1_048_576, \"source code exceeds 1MB limit\")\n\t\t\t.optional(),\n\t});\n\nexport interface DeploySubgraphResponse {\n\taction: \"created\" | \"unchanged\" | \"handler_updated\" | \"updated\" | \"reindexed\";\n\tsubgraphId: string;\n\tversion: string;\n\tmessage: string;\n\toperationId?: string;\n\treindexStarted?: boolean;\n\tdiff?: {\n\t\taddedTables: string[];\n\t\tremovedTables: string[];\n\t\taddedColumns: Record<string, string[]>;\n\t\tbreakingChanges: string[];\n\t};\n}\n\n// Subgraph API response types\n\nexport interface SubgraphSummary {\n\tname: string;\n\tversion: string;\n\tstatus: string;\n\tlastProcessedBlock: number;\n\ttotalProcessed: number;\n\ttotalErrors: number;\n\ttables: string[];\n\tchainTip: number;\n\tsourceChainTip?: number;\n\ttargetBlock?: number;\n\tprogress: number;\n\tblocksRemaining?: number;\n\tsyncMode?: \"sync\" | \"reindex\";\n\tresourceWarning?: SubgraphResourceWarning;\n\tgapCount: number;\n\tintegrity: \"complete\" | \"gaps_detected\";\n\tcreatedAt: string;\n}\n\nexport interface SubgraphGapRange {\n\tstart: number;\n\tend: number;\n\tsize: number;\n\treason: string;\n}\n\nexport interface SubgraphSyncInfo {\n\tstatus: \"synced\" | \"catching_up\" | \"reindexing\" | \"error\";\n\tmode?: \"sync\" | \"reindex\";\n\tstartBlock: number;\n\tlastProcessedBlock: number;\n\t/**\n\t * Backward-compatible denominator for progress displays. During reindexing,\n\t * this is the reindex target block rather than the live source chain tip.\n\t */\n\tchainTip: number;\n\tsourceChainTip?: number;\n\ttargetBlock?: number;\n\tblocksRemaining: number;\n\tprocessedBlocks?: number;\n\ttotalBlocks?: number;\n\tprogress: number;\n\tresourceWarning?: SubgraphResourceWarning;\n\tgaps: {\n\t\tcount: number;\n\t\ttotalMissingBlocks: number;\n\t\tranges: SubgraphGapRange[];\n\t};\n\tintegrity: \"complete\" | \"gaps_detected\";\n}\n\nexport interface SubgraphResourceWarning {\n\tcode: string;\n\tmessage: string;\n\tplan?: string;\n\tblockRange: number;\n\tprocessorMemoryMb: number;\n\trecommendedPlan: \"launch\";\n}\n\nexport interface SubgraphDetail {\n\tname: string;\n\tversion: string;\n\tschemaHash?: string;\n\tstatus: string;\n\tlastProcessedBlock: number;\n\tdescription?: string;\n\tsources?: Record<string, unknown>;\n\tdefinition?: Record<string, unknown>;\n\thealth: {\n\t\ttotalProcessed: number;\n\t\ttotalErrors: number;\n\t\terrorRate: number;\n\t\tlastError: string | null;\n\t\tlastErrorAt: string | null;\n\t};\n\tsync: SubgraphSyncInfo;\n\ttables: Record<\n\t\tstring,\n\t\t{\n\t\t\tendpoint: string;\n\t\t\tcolumns: Record<\n\t\t\t\tstring,\n\t\t\t\t{\n\t\t\t\t\ttype: string;\n\t\t\t\t\tnullable?: boolean;\n\t\t\t\t\tindexed?: boolean;\n\t\t\t\t\tsearchable?: boolean;\n\t\t\t\t\tdefault?: string | number | boolean;\n\t\t\t\t}\n\t\t\t>;\n\t\t\trowCount: number;\n\t\t\texample: string;\n\t\t\tindexes?: string[][];\n\t\t\tuniqueKeys?: string[][];\n\t\t}\n\t>;\n\tcreatedAt: string;\n\tupdatedAt: string;\n}\n\nexport interface SubgraphGapEntry {\n\tstart: number;\n\tend: number;\n\tsize: number;\n\treason: string;\n\tdetectedAt: string;\n\tresolvedAt: string | null;\n}\n\nexport interface SubgraphGapsResponse {\n\tdata: SubgraphGapEntry[];\n\tmeta: {\n\t\ttotal: number;\n\t\ttotalMissingBlocks: number;\n\t\tlimit: number;\n\t\toffset: number;\n\t};\n}\n\nexport interface ReindexResponse {\n\tmessage: string;\n\tfromBlock: number;\n\ttoBlock: number | string;\n\toperationId?: string;\n\tstatus?: \"queued\" | \"running\" | \"cancel_requested\";\n}\n\nexport interface SubgraphQueryParams {\n\tsort?: string;\n\torder?: string;\n\tlimit?: number;\n\toffset?: number;\n\tfields?: string;\n\tfilters?: Record<string, string>;\n}\n",
|
|
8
7
|
"import { z } from \"zod/v4\";\n\nexport const SUBSCRIPTION_FORMATS = [\n\t\"standard-webhooks\",\n\t\"inngest\",\n\t\"trigger\",\n\t\"cloudflare\",\n\t\"cloudevents\",\n\t\"raw\",\n] as const;\n\nexport const SUBSCRIPTION_RUNTIMES = [\n\t\"inngest\",\n\t\"trigger\",\n\t\"cloudflare\",\n\t\"node\",\n] as const;\n\nexport const SUBSCRIPTION_STATUSES = [\"active\", \"paused\", \"error\"] as const;\n\nexport const SUBSCRIPTION_FILTER_OPERATORS = [\n\t\"eq\",\n\t\"neq\",\n\t\"gt\",\n\t\"gte\",\n\t\"lt\",\n\t\"lte\",\n\t\"in\",\n] as const;\n\nconst webhookUrl = z\n\t.string()\n\t.trim()\n\t.min(1)\n\t.refine(\n\t\t(value) => value.startsWith(\"http://\") || value.startsWith(\"https://\"),\n\t\t\"must be an http(s) URL\",\n\t);\n\nconst name = z.string().trim().min(1).max(128);\nconst resourceName = z.string().trim().min(1).max(128);\n\nexport const SubscriptionStatusSchema: z.ZodType<SubscriptionStatus> = z.enum(\n\tSUBSCRIPTION_STATUSES,\n);\nexport const SubscriptionFormatSchema: z.ZodType<SubscriptionFormat> =\n\tz.enum(SUBSCRIPTION_FORMATS);\nexport const SubscriptionRuntimeSchema: z.ZodType<SubscriptionRuntime> = z.enum(\n\tSUBSCRIPTION_RUNTIMES,\n);\n\nexport const SubscriptionFilterPrimitiveSchema: z.ZodType<SubscriptionFilterPrimitive> =\n\tz.union([z.string(), z.number().finite(), z.boolean()]);\n\nexport const SubscriptionFilterOperatorSchema: z.ZodType<SubscriptionFilterOperator> =\n\tz.union([\n\t\tz.object({ eq: SubscriptionFilterPrimitiveSchema }).strict(),\n\t\tz.object({ neq: SubscriptionFilterPrimitiveSchema }).strict(),\n\t\tz.object({ gt: z.union([z.string(), z.number().finite()]) }).strict(),\n\t\tz.object({ gte: z.union([z.string(), z.number().finite()]) }).strict(),\n\t\tz.object({ lt: z.union([z.string(), z.number().finite()]) }).strict(),\n\t\tz.object({ lte: z.union([z.string(), z.number().finite()]) }).strict(),\n\t\tz\n\t\t\t.object({\n\t\t\t\tin: z.array(SubscriptionFilterPrimitiveSchema).min(1),\n\t\t\t})\n\t\t\t.strict(),\n\t]);\n\nexport const SubscriptionFilterClauseSchema: z.ZodType<SubscriptionFilterClause> =\n\tz.union([\n\t\tSubscriptionFilterPrimitiveSchema,\n\t\tSubscriptionFilterOperatorSchema,\n\t]);\n\nexport const SubscriptionFilterSchema: z.ZodType<SubscriptionFilter> = z.record(\n\tz.string().min(1),\n\tSubscriptionFilterClauseSchema,\n);\n\nexport const CreateSubscriptionRequestSchema: z.ZodType<ParsedCreateSubscriptionRequest> =\n\tz.object({\n\t\tname,\n\t\tsubgraphName: resourceName,\n\t\ttableName: resourceName,\n\t\turl: webhookUrl,\n\t\tfilter: SubscriptionFilterSchema.optional(),\n\t\tformat: SubscriptionFormatSchema.default(\"standard-webhooks\"),\n\t\truntime: SubscriptionRuntimeSchema.nullable().optional(),\n\t\tauthConfig: z.record(z.string(), z.unknown()).optional(),\n\t\tmaxRetries: z.number().int().min(0).max(100).optional(),\n\t\ttimeoutMs: z.number().int().min(100).max(300_000).optional(),\n\t\tconcurrency: z.number().int().min(1).max(100).optional(),\n\t});\n\nexport const UpdateSubscriptionRequestSchema: z.ZodType<UpdateSubscriptionRequest> =\n\tz\n\t\t.object({\n\t\t\tname: name.optional(),\n\t\t\turl: webhookUrl.optional(),\n\t\t\tfilter: SubscriptionFilterSchema.optional(),\n\t\t\tformat: SubscriptionFormatSchema.optional(),\n\t\t\truntime: SubscriptionRuntimeSchema.nullable().optional(),\n\t\t\tauthConfig: z.record(z.string(), z.unknown()).optional(),\n\t\t\tmaxRetries: z.number().int().min(0).max(100).optional(),\n\t\t\ttimeoutMs: z.number().int().min(100).max(300_000).optional(),\n\t\t\tconcurrency: z.number().int().min(1).max(100).optional(),\n\t\t})\n\t\t.refine((value) => Object.keys(value).length > 0, {\n\t\t\tmessage: \"At least one field must be provided\",\n\t\t});\n\nexport const ReplaySubscriptionRequestSchema: z.ZodType<ReplaySubscriptionRequest> =\n\tz\n\t\t.object({\n\t\t\tfromBlock: z.number().int().nonnegative(),\n\t\t\ttoBlock: z.number().int().nonnegative(),\n\t\t\tforce: z.string().trim().min(1).max(64).optional(),\n\t\t})\n\t\t.refine((value) => value.fromBlock <= value.toBlock, {\n\t\t\tmessage: \"fromBlock must be less than or equal to toBlock\",\n\t\t\tpath: [\"toBlock\"],\n\t\t});\n\nexport type SubscriptionStatus = (typeof SUBSCRIPTION_STATUSES)[number];\nexport type SubscriptionFormat = (typeof SUBSCRIPTION_FORMATS)[number];\nexport type SubscriptionRuntime = (typeof SUBSCRIPTION_RUNTIMES)[number];\nexport type SubscriptionFilterPrimitive = string | number | boolean;\nexport type SubscriptionFilterOperator =\n\t| { eq: SubscriptionFilterPrimitive }\n\t| { neq: SubscriptionFilterPrimitive }\n\t| { gt: string | number }\n\t| { gte: string | number }\n\t| { lt: string | number }\n\t| { lte: string | number }\n\t| { in: SubscriptionFilterPrimitive[] };\nexport type SubscriptionFilterClause =\n\t| SubscriptionFilterPrimitive\n\t| SubscriptionFilterOperator;\nexport type SubscriptionFilter = Record<string, SubscriptionFilterClause>;\n\nexport interface CreateSubscriptionRequest {\n\tname: string;\n\tsubgraphName: string;\n\ttableName: string;\n\turl: string;\n\tfilter?: SubscriptionFilter;\n\tformat?: SubscriptionFormat;\n\truntime?: SubscriptionRuntime | null;\n\tauthConfig?: Record<string, unknown>;\n\tmaxRetries?: number;\n\ttimeoutMs?: number;\n\tconcurrency?: number;\n}\n\nexport interface ParsedCreateSubscriptionRequest\n\textends Omit<CreateSubscriptionRequest, \"format\"> {\n\tformat: SubscriptionFormat;\n}\n\nexport interface UpdateSubscriptionRequest {\n\tname?: string;\n\turl?: string;\n\tfilter?: SubscriptionFilter;\n\tformat?: SubscriptionFormat;\n\truntime?: SubscriptionRuntime | null;\n\tauthConfig?: Record<string, unknown>;\n\tmaxRetries?: number;\n\ttimeoutMs?: number;\n\tconcurrency?: number;\n}\n\nexport type ParsedUpdateSubscriptionRequest = UpdateSubscriptionRequest;\n\nexport interface ReplaySubscriptionRequest {\n\tfromBlock: number;\n\ttoBlock: number;\n\tforce?: string;\n}\n\nexport type ParsedReplaySubscriptionRequest = ReplaySubscriptionRequest;\n\nexport interface SubscriptionSummary {\n\tid: string;\n\tname: string;\n\tstatus: SubscriptionStatus;\n\tsubgraphName: string;\n\ttableName: string;\n\tformat: SubscriptionFormat;\n\truntime: SubscriptionRuntime | null;\n\turl: string;\n\tlastDeliveryAt: string | null;\n\tlastSuccessAt: string | null;\n\tcreatedAt: string;\n\tupdatedAt: string;\n}\n\nexport interface SubscriptionDetail extends SubscriptionSummary {\n\tfilter: Record<string, unknown>;\n\tauthConfig: Record<string, unknown>;\n\tmaxRetries: number;\n\ttimeoutMs: number;\n\tconcurrency: number;\n\tcircuitFailures: number;\n\tcircuitOpenedAt: string | null;\n\tlastError: string | null;\n}\n\nexport interface CreateSubscriptionResponse {\n\tsubscription: SubscriptionDetail;\n\t/** Plaintext signing secret — surfaced ONCE. Store it server-side. */\n\tsigningSecret: string;\n}\n\nexport interface RotateSecretResponse {\n\tsubscription: SubscriptionDetail;\n\tsigningSecret: string;\n}\n\nexport interface DeliveryRow {\n\tid: string;\n\tattempt: number;\n\tstatusCode: number | null;\n\terrorMessage: string | null;\n\tdurationMs: number | null;\n\tresponseBody: string | null;\n\tdispatchedAt: string;\n}\n\nexport interface ReplayResult {\n\treplayId: string;\n\tenqueuedCount: number;\n\tscannedCount: number;\n}\n\nexport interface DeadRow {\n\tid: string;\n\teventType: string;\n\tattempt: number;\n\tblockHeight: number;\n\ttxId: string | null;\n\tpayload: Record<string, unknown>;\n\tfailedAt: string | null;\n\tcreatedAt: string;\n}\n\nexport interface SubscriptionSchemaColumn {\n\ttype?: unknown;\n}\n\nexport interface SubscriptionSchemaTable {\n\tcolumns: Record<string, SubscriptionSchemaColumn>;\n}\n\nexport type SubscriptionSchemaTables = Record<string, SubscriptionSchemaTable>;\n\nconst SCALAR_COLUMN_TYPES = new Set([\n\t\"text\",\n\t\"uint\",\n\t\"int\",\n\t\"principal\",\n\t\"boolean\",\n\t\"timestamp\",\n]);\n\nconst COMPARISON_COLUMN_TYPES = new Set([\"uint\", \"int\", \"timestamp\"]);\n\nfunction formatIssuePath(path: PropertyKey[]): string {\n\treturn path.length > 0 ? `${path.map(String).join(\".\")}: ` : \"\";\n}\n\nexport function formatSubscriptionSchemaErrors(error: z.ZodError): string[] {\n\treturn error.issues.map(\n\t\t(issue) => `${formatIssuePath(issue.path)}${issue.message}`,\n\t);\n}\n\nfunction operatorForClause(clause: SubscriptionFilterClause): string {\n\tif (clause === null || typeof clause !== \"object\" || Array.isArray(clause)) {\n\t\treturn \"eq\";\n\t}\n\treturn Object.keys(clause)[0] ?? \"eq\";\n}\n\nexport function validateSubscriptionFilterForTable(input: {\n\tsubgraphName?: string;\n\ttableName: string;\n\tfilter?: unknown;\n\ttables: SubscriptionSchemaTables;\n}): string[] {\n\tconst errors: string[] = [];\n\tconst table = input.tables[input.tableName];\n\tif (!table) {\n\t\tconst names = Object.keys(input.tables);\n\t\terrors.push(\n\t\t\t`Unknown table \"${input.tableName}\"${\n\t\t\t\tinput.subgraphName ? ` in subgraph \"${input.subgraphName}\"` : \"\"\n\t\t\t}.${names.length > 0 ? ` Available tables: ${names.join(\", \")}.` : \"\"}`,\n\t\t);\n\t\treturn errors;\n\t}\n\n\tif (input.filter === undefined) return errors;\n\n\tconst parsed = SubscriptionFilterSchema.safeParse(input.filter);\n\tif (!parsed.success) {\n\t\treturn formatSubscriptionSchemaErrors(parsed.error);\n\t}\n\n\tfor (const [field, clause] of Object.entries(parsed.data)) {\n\t\tconst column = table.columns[field];\n\t\tif (!column) {\n\t\t\terrors.push(\n\t\t\t\t`Unknown filter field \"${field}\" on table \"${input.tableName}\".`,\n\t\t\t);\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst columnType =\n\t\t\ttypeof column.type === \"string\" ? column.type.toLowerCase() : \"\";\n\t\tif (!SCALAR_COLUMN_TYPES.has(columnType)) {\n\t\t\terrors.push(\n\t\t\t\t`Filter field \"${field}\" has unsupported type \"${columnType || \"unknown\"}\"; subscription filters require scalar columns.`,\n\t\t\t);\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst operator = operatorForClause(clause);\n\t\tif (\n\t\t\t(operator === \"gt\" ||\n\t\t\t\toperator === \"gte\" ||\n\t\t\t\toperator === \"lt\" ||\n\t\t\t\toperator === \"lte\") &&\n\t\t\t!COMPARISON_COLUMN_TYPES.has(columnType)\n\t\t) {\n\t\t\terrors.push(\n\t\t\t\t`Operator \"${operator}\" is not supported for ${columnType} field \"${field}\".`,\n\t\t\t);\n\t\t}\n\t}\n\n\treturn errors;\n}\n"
|
|
9
8
|
],
|
|
10
|
-
"mappings": ";;;;;;;;;;;;;;;;;AAAA
|
|
11
|
-
"debugId": "
|
|
9
|
+
"mappings": "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",
|
|
10
|
+
"debugId": "44F5C073D716B3C264756E2164756E21",
|
|
12
11
|
"names": []
|
|
13
12
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@secondlayer/shared",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.7.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,14 +24,6 @@
|
|
|
24
24
|
"types": "./dist/src/db/queries/integrity.d.ts",
|
|
25
25
|
"import": "./dist/src/db/queries/integrity.js"
|
|
26
26
|
},
|
|
27
|
-
"./db/queries/accounts": {
|
|
28
|
-
"types": "./dist/src/db/queries/accounts.d.ts",
|
|
29
|
-
"import": "./dist/src/db/queries/accounts.js"
|
|
30
|
-
},
|
|
31
|
-
"./db/queries/usage": {
|
|
32
|
-
"types": "./dist/src/db/queries/usage.d.ts",
|
|
33
|
-
"import": "./dist/src/db/queries/usage.js"
|
|
34
|
-
},
|
|
35
27
|
"./db/queries/chain-reorgs": {
|
|
36
28
|
"types": "./dist/src/db/queries/chain-reorgs.d.ts",
|
|
37
29
|
"import": "./dist/src/db/queries/chain-reorgs.js"
|
|
@@ -72,22 +64,6 @@
|
|
|
72
64
|
"types": "./dist/src/schemas/subscriptions.d.ts",
|
|
73
65
|
"import": "./dist/src/schemas/subscriptions.js"
|
|
74
66
|
},
|
|
75
|
-
"./schemas/accounts": {
|
|
76
|
-
"types": "./dist/src/schemas/accounts.d.ts",
|
|
77
|
-
"import": "./dist/src/schemas/accounts.js"
|
|
78
|
-
},
|
|
79
|
-
"./db/queries/projects": {
|
|
80
|
-
"types": "./dist/src/db/queries/projects.d.ts",
|
|
81
|
-
"import": "./dist/src/db/queries/projects.js"
|
|
82
|
-
},
|
|
83
|
-
"./db/queries/account-spend-caps": {
|
|
84
|
-
"types": "./dist/src/db/queries/account-spend-caps.d.ts",
|
|
85
|
-
"import": "./dist/src/db/queries/account-spend-caps.js"
|
|
86
|
-
},
|
|
87
|
-
"./db/queries/account-usage": {
|
|
88
|
-
"types": "./dist/src/db/queries/account-usage.d.ts",
|
|
89
|
-
"import": "./dist/src/db/queries/account-usage.js"
|
|
90
|
-
},
|
|
91
67
|
"./db/queries/subscriptions": {
|
|
92
68
|
"types": "./dist/src/db/queries/subscriptions.d.ts",
|
|
93
69
|
"import": "./dist/src/db/queries/subscriptions.js"
|
|
@@ -108,10 +84,6 @@
|
|
|
108
84
|
"types": "./dist/src/errors.d.ts",
|
|
109
85
|
"import": "./dist/src/errors.js"
|
|
110
86
|
},
|
|
111
|
-
"./pricing": {
|
|
112
|
-
"types": "./dist/src/pricing.d.ts",
|
|
113
|
-
"import": "./dist/src/pricing.js"
|
|
114
|
-
},
|
|
115
87
|
"./crypto/secrets": {
|
|
116
88
|
"types": "./dist/src/crypto/secrets.d.ts",
|
|
117
89
|
"import": "./dist/src/crypto/secrets.js"
|