@middlewr/contracts 0.0.11 → 0.0.12
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/analytics.schema.d.ts +7 -0
- package/dist/cjs/analytics.schema.d.ts.map +1 -0
- package/dist/cjs/api-keys.schema.d.ts +24 -0
- package/dist/cjs/api-keys.schema.d.ts.map +1 -0
- package/dist/cjs/common.schema.d.ts +6 -0
- package/dist/cjs/common.schema.d.ts.map +1 -1
- package/dist/cjs/index.d.ts +54 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +270 -218
- package/dist/esm/analytics.schema.d.ts +7 -0
- package/dist/esm/analytics.schema.d.ts.map +1 -0
- package/dist/esm/api-keys.schema.d.ts +24 -0
- package/dist/esm/api-keys.schema.d.ts.map +1 -0
- package/dist/esm/common.schema.d.ts +6 -0
- package/dist/esm/common.schema.d.ts.map +1 -1
- package/dist/esm/index.d.ts +54 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +263 -218
- package/package.json +1 -1
- package/src/analytics.schema.ts +7 -0
- package/src/api-keys.schema.ts +19 -0
- package/src/common.schema.ts +8 -0
- package/src/index.ts +14 -0
package/dist/cjs/index.js
CHANGED
|
@@ -20,6 +20,10 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
20
20
|
// src/index.ts
|
|
21
21
|
var index_exports = {};
|
|
22
22
|
__export(index_exports, {
|
|
23
|
+
ApiKeyIdParamSchema: () => ApiKeyIdParamSchema,
|
|
24
|
+
ApiKeySchema: () => ApiKeySchema,
|
|
25
|
+
CreateApiKeyInputSchema: () => CreateApiKeyInputSchema,
|
|
26
|
+
CreateApiKeyResponseSchema: () => CreateApiKeyResponseSchema,
|
|
23
27
|
CreateDomainInputSchema: () => CreateDomainInputSchema,
|
|
24
28
|
CreateInvitationInputSchema: () => CreateInvitationInputSchema,
|
|
25
29
|
CreateLinkInputSchema: () => CreateLinkInputSchema,
|
|
@@ -28,6 +32,7 @@ __export(index_exports, {
|
|
|
28
32
|
DomainIdParamSchema: () => DomainIdParamSchema,
|
|
29
33
|
DomainSchema: () => DomainSchema,
|
|
30
34
|
InvitationIdParamSchema: () => InvitationIdParamSchema,
|
|
35
|
+
LinkAnalyticsQuerySchema: () => LinkAnalyticsQuerySchema,
|
|
31
36
|
LinkFiltersSchema: () => LinkFiltersSchema,
|
|
32
37
|
LinkIdParamSchema: () => LinkIdParamSchema,
|
|
33
38
|
LinkSchema: () => LinkSchema,
|
|
@@ -44,6 +49,7 @@ __export(index_exports, {
|
|
|
44
49
|
UpdateTagInputSchema: () => UpdateTagInputSchema,
|
|
45
50
|
UpdateUserInputSchema: () => UpdateUserInputSchema,
|
|
46
51
|
UpdateWorkspaceInputSchema: () => UpdateWorkspaceInputSchema,
|
|
52
|
+
UserIdParamSchema: () => UserIdParamSchema,
|
|
47
53
|
UserSchema: () => UserSchema,
|
|
48
54
|
WorkspaceIdParamSchema: () => WorkspaceIdParamSchema,
|
|
49
55
|
WorkspaceInvitationSchema: () => WorkspaceInvitationSchema,
|
|
@@ -52,6 +58,7 @@ __export(index_exports, {
|
|
|
52
58
|
WorkspaceRoleSchema: () => WorkspaceRoleSchema,
|
|
53
59
|
WorkspaceSchema: () => WorkspaceSchema,
|
|
54
60
|
WorkspaceWithCountSchema: () => WorkspaceWithCountSchema,
|
|
61
|
+
apiKeysContract: () => apiKeysContract,
|
|
55
62
|
contract: () => contract,
|
|
56
63
|
domainsContract: () => domainsContract,
|
|
57
64
|
invitationsContract: () => invitationsContract,
|
|
@@ -62,277 +69,314 @@ __export(index_exports, {
|
|
|
62
69
|
});
|
|
63
70
|
module.exports = __toCommonJS(index_exports);
|
|
64
71
|
var import_contract = require("@orpc/contract");
|
|
65
|
-
var
|
|
72
|
+
var import_zod9 = require("zod");
|
|
66
73
|
|
|
67
|
-
// src/
|
|
74
|
+
// src/api-keys.schema.ts
|
|
68
75
|
var import_zod = require("zod");
|
|
69
|
-
var
|
|
70
|
-
|
|
76
|
+
var ApiKeySchema = import_zod.z.object({
|
|
77
|
+
id: import_zod.z.string().uuid(),
|
|
78
|
+
user_id: import_zod.z.string().uuid(),
|
|
79
|
+
name: import_zod.z.string(),
|
|
80
|
+
key_prefix: import_zod.z.string(),
|
|
81
|
+
last_used_at: import_zod.z.coerce.date().nullable(),
|
|
82
|
+
created_at: import_zod.z.coerce.date(),
|
|
83
|
+
updated_at: import_zod.z.coerce.date().nullable()
|
|
71
84
|
});
|
|
72
|
-
var
|
|
73
|
-
|
|
74
|
-
link_id: import_zod.z.string().uuid()
|
|
85
|
+
var CreateApiKeyInputSchema = import_zod.z.object({
|
|
86
|
+
name: import_zod.z.string().min(1).max(255)
|
|
75
87
|
});
|
|
76
|
-
var
|
|
77
|
-
|
|
78
|
-
tag_id: import_zod.z.string().uuid()
|
|
88
|
+
var CreateApiKeyResponseSchema = ApiKeySchema.extend({
|
|
89
|
+
key: import_zod.z.string()
|
|
79
90
|
});
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
91
|
+
|
|
92
|
+
// src/common.schema.ts
|
|
93
|
+
var import_zod2 = require("zod");
|
|
94
|
+
var WorkspaceIdParamSchema = import_zod2.z.object({
|
|
95
|
+
workspace_id: import_zod2.z.string().uuid()
|
|
83
96
|
});
|
|
84
|
-
var
|
|
85
|
-
workspace_id:
|
|
86
|
-
|
|
97
|
+
var LinkIdParamSchema = import_zod2.z.object({
|
|
98
|
+
workspace_id: import_zod2.z.string().uuid(),
|
|
99
|
+
link_id: import_zod2.z.string().uuid()
|
|
87
100
|
});
|
|
88
|
-
var
|
|
89
|
-
workspace_id:
|
|
90
|
-
|
|
101
|
+
var TagIdParamSchema = import_zod2.z.object({
|
|
102
|
+
workspace_id: import_zod2.z.string().uuid(),
|
|
103
|
+
tag_id: import_zod2.z.string().uuid()
|
|
91
104
|
});
|
|
92
|
-
var
|
|
93
|
-
|
|
105
|
+
var MemberIdParamSchema = import_zod2.z.object({
|
|
106
|
+
workspace_id: import_zod2.z.string().uuid(),
|
|
107
|
+
user_id: import_zod2.z.string().uuid()
|
|
94
108
|
});
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
var DomainSchema = import_zod2.z.object({
|
|
99
|
-
id: import_zod2.z.string().uuid(),
|
|
100
|
-
workspace_id: import_zod2.z.string().uuid().nullable(),
|
|
101
|
-
created_by_id: import_zod2.z.string().uuid().nullable(),
|
|
102
|
-
domain: import_zod2.z.string(),
|
|
103
|
-
is_verified: import_zod2.z.boolean(),
|
|
104
|
-
cf_hostname_id: import_zod2.z.string().nullable(),
|
|
105
|
-
cf_ssl_status: import_zod2.z.string().nullable(),
|
|
106
|
-
cf_ownership_status: import_zod2.z.string().nullable(),
|
|
107
|
-
cf_txt_name: import_zod2.z.string().nullable(),
|
|
108
|
-
cf_txt_value: import_zod2.z.string().nullable(),
|
|
109
|
-
cf_ssl_txt_name: import_zod2.z.string().nullable(),
|
|
110
|
-
cf_ssl_txt_value: import_zod2.z.string().nullable(),
|
|
111
|
-
cf_last_checked_at: import_zod2.z.coerce.date().nullable(),
|
|
112
|
-
created_at: import_zod2.z.coerce.date(),
|
|
113
|
-
updated_at: import_zod2.z.coerce.date().nullable()
|
|
114
|
-
});
|
|
115
|
-
var CreateDomainInputSchema = import_zod2.z.object({
|
|
116
|
-
domain: import_zod2.z.string().min(1).max(253).regex(/^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/, {
|
|
117
|
-
message: "Invalid domain format"
|
|
118
|
-
})
|
|
109
|
+
var InvitationIdParamSchema = import_zod2.z.object({
|
|
110
|
+
workspace_id: import_zod2.z.string().uuid(),
|
|
111
|
+
invitation_id: import_zod2.z.string().uuid()
|
|
119
112
|
});
|
|
120
|
-
var
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
113
|
+
var DomainIdParamSchema = import_zod2.z.object({
|
|
114
|
+
workspace_id: import_zod2.z.string().uuid(),
|
|
115
|
+
domain_id: import_zod2.z.string().uuid()
|
|
116
|
+
});
|
|
117
|
+
var UserIdParamSchema = import_zod2.z.object({
|
|
118
|
+
user_id: import_zod2.z.string().uuid()
|
|
119
|
+
});
|
|
120
|
+
var ApiKeyIdParamSchema = import_zod2.z.object({
|
|
121
|
+
api_key_id: import_zod2.z.string().uuid()
|
|
122
|
+
});
|
|
123
|
+
var TokenParamSchema = import_zod2.z.object({
|
|
124
|
+
token: import_zod2.z.string()
|
|
124
125
|
});
|
|
125
126
|
|
|
126
|
-
// src/
|
|
127
|
-
var import_zod4 = require("zod");
|
|
128
|
-
|
|
129
|
-
// src/tags.schema.ts
|
|
127
|
+
// src/domains.schema.ts
|
|
130
128
|
var import_zod3 = require("zod");
|
|
131
|
-
var
|
|
129
|
+
var DomainSchema = import_zod3.z.object({
|
|
132
130
|
id: import_zod3.z.string().uuid(),
|
|
133
|
-
workspace_id: import_zod3.z.string().uuid(),
|
|
134
|
-
|
|
135
|
-
|
|
131
|
+
workspace_id: import_zod3.z.string().uuid().nullable(),
|
|
132
|
+
created_by_id: import_zod3.z.string().uuid().nullable(),
|
|
133
|
+
domain: import_zod3.z.string(),
|
|
134
|
+
is_verified: import_zod3.z.boolean(),
|
|
135
|
+
cf_hostname_id: import_zod3.z.string().nullable(),
|
|
136
|
+
cf_ssl_status: import_zod3.z.string().nullable(),
|
|
137
|
+
cf_ownership_status: import_zod3.z.string().nullable(),
|
|
138
|
+
cf_txt_name: import_zod3.z.string().nullable(),
|
|
139
|
+
cf_txt_value: import_zod3.z.string().nullable(),
|
|
140
|
+
cf_ssl_txt_name: import_zod3.z.string().nullable(),
|
|
141
|
+
cf_ssl_txt_value: import_zod3.z.string().nullable(),
|
|
142
|
+
cf_last_checked_at: import_zod3.z.coerce.date().nullable(),
|
|
136
143
|
created_at: import_zod3.z.coerce.date(),
|
|
137
144
|
updated_at: import_zod3.z.coerce.date().nullable()
|
|
138
145
|
});
|
|
139
|
-
var
|
|
140
|
-
|
|
141
|
-
|
|
146
|
+
var CreateDomainInputSchema = import_zod3.z.object({
|
|
147
|
+
domain: import_zod3.z.string().min(1).max(253).regex(/^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/, {
|
|
148
|
+
message: "Invalid domain format"
|
|
149
|
+
})
|
|
142
150
|
});
|
|
143
|
-
var
|
|
144
|
-
|
|
145
|
-
|
|
151
|
+
var UpdateDomainInputSchema = import_zod3.z.object({
|
|
152
|
+
domain: import_zod3.z.string().min(1).max(253).regex(/^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/, {
|
|
153
|
+
message: "Invalid domain format"
|
|
154
|
+
}).optional()
|
|
146
155
|
});
|
|
147
156
|
|
|
148
157
|
// src/links.schema.ts
|
|
149
|
-
var
|
|
158
|
+
var import_zod5 = require("zod");
|
|
159
|
+
|
|
160
|
+
// src/tags.schema.ts
|
|
161
|
+
var import_zod4 = require("zod");
|
|
162
|
+
var TagSchema = import_zod4.z.object({
|
|
150
163
|
id: import_zod4.z.string().uuid(),
|
|
151
164
|
workspace_id: import_zod4.z.string().uuid(),
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
original_url: import_zod4.z.string().url(),
|
|
155
|
-
short_code: import_zod4.z.string(),
|
|
156
|
-
title: import_zod4.z.string().nullable(),
|
|
157
|
-
description: import_zod4.z.string().nullable(),
|
|
158
|
-
utm_source: import_zod4.z.string().nullable(),
|
|
159
|
-
utm_medium: import_zod4.z.string().nullable(),
|
|
160
|
-
utm_campaign: import_zod4.z.string().nullable(),
|
|
161
|
-
utm_term: import_zod4.z.string().nullable(),
|
|
162
|
-
utm_content: import_zod4.z.string().nullable(),
|
|
163
|
-
password: import_zod4.z.string().nullable(),
|
|
164
|
-
starts_at: import_zod4.z.coerce.date().nullable(),
|
|
165
|
-
expires_at: import_zod4.z.coerce.date().nullable(),
|
|
166
|
-
is_active: import_zod4.z.boolean(),
|
|
167
|
-
redirect_type: import_zod4.z.number().int(),
|
|
168
|
-
click_count: import_zod4.z.coerce.number().int(),
|
|
169
|
-
click_count_updated_at: import_zod4.z.coerce.date().nullable(),
|
|
165
|
+
name: import_zod4.z.string(),
|
|
166
|
+
color: import_zod4.z.string().nullable(),
|
|
170
167
|
created_at: import_zod4.z.coerce.date(),
|
|
171
|
-
updated_at: import_zod4.z.coerce.date().nullable()
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
utm_source: import_zod4.z.string().max(255).optional(),
|
|
181
|
-
utm_medium: import_zod4.z.string().max(255).optional(),
|
|
182
|
-
utm_campaign: import_zod4.z.string().max(255).optional(),
|
|
183
|
-
utm_term: import_zod4.z.string().max(255).optional(),
|
|
184
|
-
utm_content: import_zod4.z.string().max(255).optional(),
|
|
185
|
-
password: import_zod4.z.string().min(4).max(100).optional(),
|
|
186
|
-
starts_at: import_zod4.z.coerce.date().optional(),
|
|
187
|
-
expires_at: import_zod4.z.coerce.date().optional(),
|
|
188
|
-
redirect_type: import_zod4.z.coerce.number().refine((v) => [301, 302, 307, 308].includes(v)).optional(),
|
|
189
|
-
tag_ids: import_zod4.z.array(import_zod4.z.string().uuid()).optional()
|
|
190
|
-
});
|
|
191
|
-
var UpdateLinkInputSchema = import_zod4.z.object({
|
|
192
|
-
original_url: import_zod4.z.string().url().max(2048).optional(),
|
|
193
|
-
domain_id: import_zod4.z.string().uuid().optional(),
|
|
194
|
-
short_code: import_zod4.z.string().min(3).max(50).regex(/^[a-zA-Z0-9-]+$/).optional(),
|
|
195
|
-
title: import_zod4.z.string().max(255).nullable().optional(),
|
|
196
|
-
description: import_zod4.z.string().max(2e3).nullable().optional(),
|
|
197
|
-
utm_source: import_zod4.z.string().max(255).nullable().optional(),
|
|
198
|
-
utm_medium: import_zod4.z.string().max(255).nullable().optional(),
|
|
199
|
-
utm_campaign: import_zod4.z.string().max(255).nullable().optional(),
|
|
200
|
-
utm_term: import_zod4.z.string().max(255).nullable().optional(),
|
|
201
|
-
utm_content: import_zod4.z.string().max(255).nullable().optional(),
|
|
202
|
-
password: import_zod4.z.string().min(4).max(100).nullable().optional(),
|
|
203
|
-
starts_at: import_zod4.z.coerce.date().nullable().optional(),
|
|
204
|
-
expires_at: import_zod4.z.coerce.date().nullable().optional(),
|
|
205
|
-
is_active: import_zod4.z.boolean().optional(),
|
|
206
|
-
redirect_type: import_zod4.z.coerce.number().refine((v) => [301, 302, 307, 308].includes(v)).optional(),
|
|
207
|
-
tag_ids: import_zod4.z.array(import_zod4.z.string().uuid()).optional()
|
|
208
|
-
});
|
|
209
|
-
var LinkFiltersSchema = import_zod4.z.object({
|
|
210
|
-
search: import_zod4.z.string().optional(),
|
|
211
|
-
domain_id: import_zod4.z.string().uuid().optional(),
|
|
212
|
-
is_active: import_zod4.z.coerce.boolean().optional(),
|
|
213
|
-
has_expiration: import_zod4.z.coerce.boolean().optional(),
|
|
214
|
-
expired: import_zod4.z.coerce.boolean().optional(),
|
|
215
|
-
created_from: import_zod4.z.coerce.date().optional(),
|
|
216
|
-
created_to: import_zod4.z.coerce.date().optional(),
|
|
217
|
-
expires_from: import_zod4.z.coerce.date().optional(),
|
|
218
|
-
expires_to: import_zod4.z.coerce.date().optional(),
|
|
219
|
-
tag_ids: import_zod4.z.array(import_zod4.z.string().uuid()).optional(),
|
|
220
|
-
sort_by: import_zod4.z.enum(["created_at", "title", "click_count"]).default("created_at"),
|
|
221
|
-
sort_order: import_zod4.z.enum(["asc", "desc"]).default("desc"),
|
|
222
|
-
page: import_zod4.z.coerce.number().int().min(1).default(1),
|
|
223
|
-
per_page: import_zod4.z.coerce.number().int().min(1).max(100).default(20)
|
|
224
|
-
});
|
|
225
|
-
var PaginatedLinksSchema = import_zod4.z.object({
|
|
226
|
-
links: import_zod4.z.array(LinkSchema),
|
|
227
|
-
total: import_zod4.z.number().int(),
|
|
228
|
-
page: import_zod4.z.number().int(),
|
|
229
|
-
per_page: import_zod4.z.number().int(),
|
|
230
|
-
total_pages: import_zod4.z.number().int()
|
|
168
|
+
updated_at: import_zod4.z.coerce.date().nullable()
|
|
169
|
+
});
|
|
170
|
+
var CreateTagInputSchema = import_zod4.z.object({
|
|
171
|
+
name: import_zod4.z.string().min(1).max(50),
|
|
172
|
+
color: import_zod4.z.string().regex(/^#[0-9A-Fa-f]{6}$/).optional()
|
|
173
|
+
});
|
|
174
|
+
var UpdateTagInputSchema = import_zod4.z.object({
|
|
175
|
+
name: import_zod4.z.string().min(1).max(50).optional(),
|
|
176
|
+
color: import_zod4.z.string().regex(/^#[0-9A-Fa-f]{6}$/).nullable().optional()
|
|
231
177
|
});
|
|
232
178
|
|
|
233
|
-
// src/
|
|
234
|
-
var
|
|
235
|
-
var UserSchema = import_zod5.z.object({
|
|
179
|
+
// src/links.schema.ts
|
|
180
|
+
var LinkSchema = import_zod5.z.object({
|
|
236
181
|
id: import_zod5.z.string().uuid(),
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
182
|
+
workspace_id: import_zod5.z.string().uuid(),
|
|
183
|
+
domain_id: import_zod5.z.string().uuid(),
|
|
184
|
+
created_by_id: import_zod5.z.string().uuid(),
|
|
185
|
+
original_url: import_zod5.z.string().url(),
|
|
186
|
+
short_code: import_zod5.z.string(),
|
|
187
|
+
title: import_zod5.z.string().nullable(),
|
|
188
|
+
description: import_zod5.z.string().nullable(),
|
|
189
|
+
utm_source: import_zod5.z.string().nullable(),
|
|
190
|
+
utm_medium: import_zod5.z.string().nullable(),
|
|
191
|
+
utm_campaign: import_zod5.z.string().nullable(),
|
|
192
|
+
utm_term: import_zod5.z.string().nullable(),
|
|
193
|
+
utm_content: import_zod5.z.string().nullable(),
|
|
194
|
+
password: import_zod5.z.string().nullable(),
|
|
195
|
+
starts_at: import_zod5.z.coerce.date().nullable(),
|
|
196
|
+
expires_at: import_zod5.z.coerce.date().nullable(),
|
|
197
|
+
is_active: import_zod5.z.boolean(),
|
|
198
|
+
redirect_type: import_zod5.z.number().int(),
|
|
199
|
+
click_count: import_zod5.z.coerce.number().int(),
|
|
200
|
+
click_count_updated_at: import_zod5.z.coerce.date().nullable(),
|
|
242
201
|
created_at: import_zod5.z.coerce.date(),
|
|
243
|
-
updated_at: import_zod5.z.coerce.date().nullable()
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
202
|
+
updated_at: import_zod5.z.coerce.date().nullable(),
|
|
203
|
+
tags: import_zod5.z.array(TagSchema)
|
|
204
|
+
});
|
|
205
|
+
var CreateLinkInputSchema = import_zod5.z.object({
|
|
206
|
+
original_url: import_zod5.z.string().url().max(2048),
|
|
207
|
+
domain_id: import_zod5.z.string().uuid().optional(),
|
|
208
|
+
short_code: import_zod5.z.string().min(3).max(50).regex(/^[a-zA-Z0-9-]+$/).optional(),
|
|
209
|
+
title: import_zod5.z.string().max(255).optional(),
|
|
210
|
+
description: import_zod5.z.string().max(2e3).optional(),
|
|
211
|
+
utm_source: import_zod5.z.string().max(255).optional(),
|
|
212
|
+
utm_medium: import_zod5.z.string().max(255).optional(),
|
|
213
|
+
utm_campaign: import_zod5.z.string().max(255).optional(),
|
|
214
|
+
utm_term: import_zod5.z.string().max(255).optional(),
|
|
215
|
+
utm_content: import_zod5.z.string().max(255).optional(),
|
|
216
|
+
password: import_zod5.z.string().min(4).max(100).optional(),
|
|
217
|
+
starts_at: import_zod5.z.coerce.date().optional(),
|
|
218
|
+
expires_at: import_zod5.z.coerce.date().optional(),
|
|
219
|
+
redirect_type: import_zod5.z.coerce.number().refine((v) => [301, 302, 307, 308].includes(v)).optional(),
|
|
220
|
+
tag_ids: import_zod5.z.array(import_zod5.z.string().uuid()).optional()
|
|
221
|
+
});
|
|
222
|
+
var UpdateLinkInputSchema = import_zod5.z.object({
|
|
223
|
+
original_url: import_zod5.z.string().url().max(2048).optional(),
|
|
224
|
+
domain_id: import_zod5.z.string().uuid().optional(),
|
|
225
|
+
short_code: import_zod5.z.string().min(3).max(50).regex(/^[a-zA-Z0-9-]+$/).optional(),
|
|
226
|
+
title: import_zod5.z.string().max(255).nullable().optional(),
|
|
227
|
+
description: import_zod5.z.string().max(2e3).nullable().optional(),
|
|
228
|
+
utm_source: import_zod5.z.string().max(255).nullable().optional(),
|
|
229
|
+
utm_medium: import_zod5.z.string().max(255).nullable().optional(),
|
|
230
|
+
utm_campaign: import_zod5.z.string().max(255).nullable().optional(),
|
|
231
|
+
utm_term: import_zod5.z.string().max(255).nullable().optional(),
|
|
232
|
+
utm_content: import_zod5.z.string().max(255).nullable().optional(),
|
|
233
|
+
password: import_zod5.z.string().min(4).max(100).nullable().optional(),
|
|
234
|
+
starts_at: import_zod5.z.coerce.date().nullable().optional(),
|
|
235
|
+
expires_at: import_zod5.z.coerce.date().nullable().optional(),
|
|
236
|
+
is_active: import_zod5.z.boolean().optional(),
|
|
237
|
+
redirect_type: import_zod5.z.coerce.number().refine((v) => [301, 302, 307, 308].includes(v)).optional(),
|
|
238
|
+
tag_ids: import_zod5.z.array(import_zod5.z.string().uuid()).optional()
|
|
239
|
+
});
|
|
240
|
+
var LinkFiltersSchema = import_zod5.z.object({
|
|
241
|
+
search: import_zod5.z.string().optional(),
|
|
242
|
+
domain_id: import_zod5.z.string().uuid().optional(),
|
|
243
|
+
is_active: import_zod5.z.coerce.boolean().optional(),
|
|
244
|
+
has_expiration: import_zod5.z.coerce.boolean().optional(),
|
|
245
|
+
expired: import_zod5.z.coerce.boolean().optional(),
|
|
246
|
+
created_from: import_zod5.z.coerce.date().optional(),
|
|
247
|
+
created_to: import_zod5.z.coerce.date().optional(),
|
|
248
|
+
expires_from: import_zod5.z.coerce.date().optional(),
|
|
249
|
+
expires_to: import_zod5.z.coerce.date().optional(),
|
|
250
|
+
tag_ids: import_zod5.z.array(import_zod5.z.string().uuid()).optional(),
|
|
251
|
+
sort_by: import_zod5.z.enum(["created_at", "title", "click_count"]).default("created_at"),
|
|
252
|
+
sort_order: import_zod5.z.enum(["asc", "desc"]).default("desc"),
|
|
253
|
+
page: import_zod5.z.coerce.number().int().min(1).default(1),
|
|
254
|
+
per_page: import_zod5.z.coerce.number().int().min(1).max(100).default(20)
|
|
255
|
+
});
|
|
256
|
+
var PaginatedLinksSchema = import_zod5.z.object({
|
|
257
|
+
links: import_zod5.z.array(LinkSchema),
|
|
258
|
+
total: import_zod5.z.number().int(),
|
|
259
|
+
page: import_zod5.z.number().int(),
|
|
260
|
+
per_page: import_zod5.z.number().int(),
|
|
261
|
+
total_pages: import_zod5.z.number().int()
|
|
252
262
|
});
|
|
253
263
|
|
|
254
|
-
// src/
|
|
264
|
+
// src/users.schema.ts
|
|
255
265
|
var import_zod6 = require("zod");
|
|
256
|
-
var
|
|
266
|
+
var UserSchema = import_zod6.z.object({
|
|
257
267
|
id: import_zod6.z.string().uuid(),
|
|
258
|
-
|
|
268
|
+
external_id: import_zod6.z.string(),
|
|
269
|
+
email: import_zod6.z.string().email(),
|
|
270
|
+
email_verified_at: import_zod6.z.coerce.date().nullable(),
|
|
271
|
+
first_name: import_zod6.z.string().nullable(),
|
|
272
|
+
last_name: import_zod6.z.string().nullable(),
|
|
259
273
|
created_at: import_zod6.z.coerce.date(),
|
|
260
274
|
updated_at: import_zod6.z.coerce.date().nullable()
|
|
261
275
|
});
|
|
262
|
-
var
|
|
263
|
-
|
|
276
|
+
var SignInInputSchema = import_zod6.z.object({
|
|
277
|
+
first_name: import_zod6.z.string().min(1).max(100).optional(),
|
|
278
|
+
last_name: import_zod6.z.string().min(1).max(100).optional()
|
|
264
279
|
});
|
|
265
|
-
var
|
|
266
|
-
|
|
280
|
+
var UpdateUserInputSchema = import_zod6.z.object({
|
|
281
|
+
first_name: import_zod6.z.string().min(1).max(100).optional(),
|
|
282
|
+
last_name: import_zod6.z.string().min(1).max(100).optional()
|
|
267
283
|
});
|
|
268
|
-
|
|
269
|
-
|
|
284
|
+
|
|
285
|
+
// src/workspaces.schema.ts
|
|
286
|
+
var import_zod7 = require("zod");
|
|
287
|
+
var WorkspaceSchema = import_zod7.z.object({
|
|
288
|
+
id: import_zod7.z.string().uuid(),
|
|
289
|
+
name: import_zod7.z.string(),
|
|
290
|
+
created_at: import_zod7.z.coerce.date(),
|
|
291
|
+
updated_at: import_zod7.z.coerce.date().nullable()
|
|
270
292
|
});
|
|
271
|
-
var
|
|
272
|
-
|
|
293
|
+
var WorkspaceWithCountSchema = WorkspaceSchema.extend({
|
|
294
|
+
member_count: import_zod7.z.number().int()
|
|
273
295
|
});
|
|
274
|
-
var
|
|
275
|
-
|
|
276
|
-
email: import_zod6.z.string().email(),
|
|
277
|
-
first_name: import_zod6.z.string().nullable(),
|
|
278
|
-
last_name: import_zod6.z.string().nullable()
|
|
296
|
+
var CreateWorkspaceInputSchema = import_zod7.z.object({
|
|
297
|
+
name: import_zod7.z.string().min(1).max(100)
|
|
279
298
|
});
|
|
280
|
-
var
|
|
281
|
-
|
|
282
|
-
workspace_id: import_zod6.z.string().uuid(),
|
|
283
|
-
user_id: import_zod6.z.string().uuid(),
|
|
284
|
-
user: WorkspaceMemberUserSchema,
|
|
285
|
-
permissions: import_zod6.z.number().int(),
|
|
286
|
-
joined_at: import_zod6.z.coerce.date(),
|
|
287
|
-
created_at: import_zod6.z.coerce.date(),
|
|
288
|
-
updated_at: import_zod6.z.coerce.date().nullable()
|
|
299
|
+
var UpdateWorkspaceInputSchema = import_zod7.z.object({
|
|
300
|
+
name: import_zod7.z.string().min(1).max(100).optional()
|
|
289
301
|
});
|
|
290
|
-
var
|
|
291
|
-
|
|
302
|
+
var TransferOwnershipInputSchema = import_zod7.z.object({
|
|
303
|
+
to_user_id: import_zod7.z.string().uuid()
|
|
292
304
|
});
|
|
293
|
-
var
|
|
294
|
-
id:
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
permissions: import_zod6.z.number().int(),
|
|
299
|
-
invited_by_id: import_zod6.z.string().uuid(),
|
|
300
|
-
expires_at: import_zod6.z.coerce.date(),
|
|
301
|
-
created_at: import_zod6.z.coerce.date()
|
|
305
|
+
var WorkspaceMemberUserSchema = import_zod7.z.object({
|
|
306
|
+
id: import_zod7.z.string().uuid(),
|
|
307
|
+
email: import_zod7.z.string().email(),
|
|
308
|
+
first_name: import_zod7.z.string().nullable(),
|
|
309
|
+
last_name: import_zod7.z.string().nullable()
|
|
302
310
|
});
|
|
303
|
-
var
|
|
304
|
-
|
|
305
|
-
|
|
311
|
+
var WorkspaceMemberSchema = import_zod7.z.object({
|
|
312
|
+
id: import_zod7.z.string().uuid(),
|
|
313
|
+
workspace_id: import_zod7.z.string().uuid(),
|
|
314
|
+
user_id: import_zod7.z.string().uuid(),
|
|
315
|
+
user: WorkspaceMemberUserSchema,
|
|
316
|
+
permissions: import_zod7.z.number().int(),
|
|
317
|
+
joined_at: import_zod7.z.coerce.date(),
|
|
318
|
+
created_at: import_zod7.z.coerce.date(),
|
|
319
|
+
updated_at: import_zod7.z.coerce.date().nullable()
|
|
320
|
+
});
|
|
321
|
+
var UpdateMemberInputSchema = import_zod7.z.object({
|
|
322
|
+
permissions: import_zod7.z.number().int().min(1)
|
|
323
|
+
});
|
|
324
|
+
var WorkspaceInvitationSchema = import_zod7.z.object({
|
|
325
|
+
id: import_zod7.z.string().uuid(),
|
|
326
|
+
workspace_id: import_zod7.z.string().uuid(),
|
|
327
|
+
email: import_zod7.z.string().email(),
|
|
328
|
+
token: import_zod7.z.string(),
|
|
329
|
+
permissions: import_zod7.z.number().int(),
|
|
330
|
+
invited_by_id: import_zod7.z.string().uuid(),
|
|
331
|
+
expires_at: import_zod7.z.coerce.date(),
|
|
332
|
+
created_at: import_zod7.z.coerce.date()
|
|
333
|
+
});
|
|
334
|
+
var CreateInvitationInputSchema = import_zod7.z.object({
|
|
335
|
+
email: import_zod7.z.string().email(),
|
|
336
|
+
permissions: import_zod7.z.number().int().min(1)
|
|
337
|
+
});
|
|
338
|
+
var WorkspaceRoleSchema = import_zod7.z.object({
|
|
339
|
+
name: import_zod7.z.string(),
|
|
340
|
+
description: import_zod7.z.string(),
|
|
341
|
+
permissions: import_zod7.z.number().int()
|
|
306
342
|
});
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
343
|
+
|
|
344
|
+
// src/analytics.schema.ts
|
|
345
|
+
var import_zod8 = require("zod");
|
|
346
|
+
var LinkAnalyticsQuerySchema = import_zod8.z.object({
|
|
347
|
+
link_id: import_zod8.z.string().uuid(),
|
|
348
|
+
from: import_zod8.z.coerce.date(),
|
|
349
|
+
to: import_zod8.z.coerce.date()
|
|
311
350
|
});
|
|
312
351
|
|
|
313
352
|
// src/index.ts
|
|
314
353
|
var usersContract = {
|
|
315
|
-
me: import_contract.oc.route({ method: "GET", path: "/api/users/me" }).output(
|
|
316
|
-
signIn: import_contract.oc.route({ method: "POST", path: "/api/users" }).input(SignInInputSchema).output(
|
|
317
|
-
update: import_contract.oc.route({ method: "PATCH", path: "/api/users/me" }).input(UpdateUserInputSchema).output(
|
|
354
|
+
me: import_contract.oc.route({ method: "GET", path: "/api/users/me" }).output(import_zod9.z.object({ user: UserSchema })),
|
|
355
|
+
signIn: import_contract.oc.route({ method: "POST", path: "/api/users" }).input(SignInInputSchema).output(import_zod9.z.object({ user: UserSchema, status: import_zod9.z.enum(["created", "existing"]) })),
|
|
356
|
+
update: import_contract.oc.route({ method: "PATCH", path: "/api/users/me" }).input(UpdateUserInputSchema).output(import_zod9.z.object({ user: UserSchema }))
|
|
357
|
+
};
|
|
358
|
+
var apiKeysContract = {
|
|
359
|
+
create: import_contract.oc.route({ method: "POST", path: "/api/api-keys" }).input(CreateApiKeyInputSchema).output(CreateApiKeyResponseSchema),
|
|
360
|
+
list: import_contract.oc.route({ method: "GET", path: "/api/api-keys" }).output(import_zod9.z.array(ApiKeySchema)),
|
|
361
|
+
delete: import_contract.oc.route({ method: "DELETE", path: "/api/api-keys/{api_key_id}" }).input(ApiKeyIdParamSchema).output(import_zod9.z.void())
|
|
318
362
|
};
|
|
319
363
|
var workspacesContract = {
|
|
320
364
|
create: import_contract.oc.route({ method: "POST", path: "/api/workspaces" }).input(CreateWorkspaceInputSchema).output(WorkspaceSchema),
|
|
321
|
-
list: import_contract.oc.route({ method: "GET", path: "/api/workspaces" }).output(
|
|
365
|
+
list: import_contract.oc.route({ method: "GET", path: "/api/workspaces" }).output(import_zod9.z.array(WorkspaceWithCountSchema)),
|
|
322
366
|
get: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema).output(WorkspaceWithCountSchema),
|
|
323
367
|
update: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema.merge(UpdateWorkspaceInputSchema)).output(WorkspaceSchema),
|
|
324
|
-
delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema).output(
|
|
325
|
-
transfer: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/transfer" }).input(WorkspaceIdParamSchema.merge(TransferOwnershipInputSchema)).output(
|
|
368
|
+
delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema).output(import_zod9.z.void()),
|
|
369
|
+
transfer: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/transfer" }).input(WorkspaceIdParamSchema.merge(TransferOwnershipInputSchema)).output(import_zod9.z.void()),
|
|
326
370
|
// Roles
|
|
327
|
-
listRoles: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/roles" }).input(WorkspaceIdParamSchema).output(
|
|
371
|
+
listRoles: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/roles" }).input(WorkspaceIdParamSchema).output(import_zod9.z.array(WorkspaceRoleSchema)),
|
|
328
372
|
// Members
|
|
329
|
-
listMembers: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/members" }).input(WorkspaceIdParamSchema).output(
|
|
373
|
+
listMembers: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/members" }).input(WorkspaceIdParamSchema).output(import_zod9.z.array(WorkspaceMemberSchema)),
|
|
330
374
|
updateMember: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/members/{user_id}" }).input(MemberIdParamSchema.merge(UpdateMemberInputSchema)).output(WorkspaceMemberSchema),
|
|
331
|
-
removeMember: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/members/{user_id}" }).input(MemberIdParamSchema).output(
|
|
375
|
+
removeMember: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/members/{user_id}" }).input(MemberIdParamSchema).output(import_zod9.z.void()),
|
|
332
376
|
// Invitations
|
|
333
|
-
listInvitations: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/invitations" }).input(WorkspaceIdParamSchema).output(
|
|
377
|
+
listInvitations: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/invitations" }).input(WorkspaceIdParamSchema).output(import_zod9.z.array(WorkspaceInvitationSchema)),
|
|
334
378
|
createInvitation: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/invitations" }).input(WorkspaceIdParamSchema.merge(CreateInvitationInputSchema)).output(WorkspaceInvitationSchema),
|
|
335
|
-
revokeInvitation: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/invitations/{invitation_id}" }).input(InvitationIdParamSchema).output(
|
|
379
|
+
revokeInvitation: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/invitations/{invitation_id}" }).input(InvitationIdParamSchema).output(import_zod9.z.void())
|
|
336
380
|
};
|
|
337
381
|
var invitationsContract = {
|
|
338
382
|
get: import_contract.oc.route({ method: "GET", path: "/api/invitations/{token}" }).input(TokenParamSchema).output(WorkspaceInvitationSchema),
|
|
@@ -343,25 +387,26 @@ var linksContract = {
|
|
|
343
387
|
list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links" }).input(WorkspaceIdParamSchema.merge(LinkFiltersSchema)).output(PaginatedLinksSchema),
|
|
344
388
|
get: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema).output(LinkSchema),
|
|
345
389
|
update: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema.merge(UpdateLinkInputSchema)).output(LinkSchema),
|
|
346
|
-
delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema).output(
|
|
390
|
+
delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema).output(import_zod9.z.void())
|
|
347
391
|
};
|
|
348
392
|
var tagsContract = {
|
|
349
393
|
create: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/tags" }).input(WorkspaceIdParamSchema.merge(CreateTagInputSchema)).output(TagSchema),
|
|
350
|
-
list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/tags" }).input(WorkspaceIdParamSchema).output(
|
|
394
|
+
list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/tags" }).input(WorkspaceIdParamSchema).output(import_zod9.z.array(TagSchema)),
|
|
351
395
|
get: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema).output(TagSchema),
|
|
352
396
|
update: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema.merge(UpdateTagInputSchema)).output(TagSchema),
|
|
353
|
-
delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema).output(
|
|
397
|
+
delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema).output(import_zod9.z.void())
|
|
354
398
|
};
|
|
355
399
|
var domainsContract = {
|
|
356
400
|
create: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/domains" }).input(WorkspaceIdParamSchema.merge(CreateDomainInputSchema)).output(DomainSchema),
|
|
357
|
-
list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/domains" }).input(WorkspaceIdParamSchema).output(
|
|
401
|
+
list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/domains" }).input(WorkspaceIdParamSchema).output(import_zod9.z.array(DomainSchema)),
|
|
358
402
|
get: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/domains/{domain_id}" }).input(DomainIdParamSchema).output(DomainSchema),
|
|
359
403
|
update: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/domains/{domain_id}" }).input(DomainIdParamSchema.merge(UpdateDomainInputSchema)).output(DomainSchema),
|
|
360
|
-
delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/domains/{domain_id}" }).input(DomainIdParamSchema).output(
|
|
404
|
+
delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/domains/{domain_id}" }).input(DomainIdParamSchema).output(import_zod9.z.void()),
|
|
361
405
|
verify: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/domains/{domain_id}/verify" }).input(DomainIdParamSchema).output(DomainSchema)
|
|
362
406
|
};
|
|
363
407
|
var contract = {
|
|
364
408
|
users: usersContract,
|
|
409
|
+
apiKeys: apiKeysContract,
|
|
365
410
|
workspaces: workspacesContract,
|
|
366
411
|
invitations: invitationsContract,
|
|
367
412
|
links: linksContract,
|
|
@@ -370,6 +415,10 @@ var contract = {
|
|
|
370
415
|
};
|
|
371
416
|
// Annotate the CommonJS export names for ESM import in node:
|
|
372
417
|
0 && (module.exports = {
|
|
418
|
+
ApiKeyIdParamSchema,
|
|
419
|
+
ApiKeySchema,
|
|
420
|
+
CreateApiKeyInputSchema,
|
|
421
|
+
CreateApiKeyResponseSchema,
|
|
373
422
|
CreateDomainInputSchema,
|
|
374
423
|
CreateInvitationInputSchema,
|
|
375
424
|
CreateLinkInputSchema,
|
|
@@ -378,6 +427,7 @@ var contract = {
|
|
|
378
427
|
DomainIdParamSchema,
|
|
379
428
|
DomainSchema,
|
|
380
429
|
InvitationIdParamSchema,
|
|
430
|
+
LinkAnalyticsQuerySchema,
|
|
381
431
|
LinkFiltersSchema,
|
|
382
432
|
LinkIdParamSchema,
|
|
383
433
|
LinkSchema,
|
|
@@ -394,6 +444,7 @@ var contract = {
|
|
|
394
444
|
UpdateTagInputSchema,
|
|
395
445
|
UpdateUserInputSchema,
|
|
396
446
|
UpdateWorkspaceInputSchema,
|
|
447
|
+
UserIdParamSchema,
|
|
397
448
|
UserSchema,
|
|
398
449
|
WorkspaceIdParamSchema,
|
|
399
450
|
WorkspaceInvitationSchema,
|
|
@@ -402,6 +453,7 @@ var contract = {
|
|
|
402
453
|
WorkspaceRoleSchema,
|
|
403
454
|
WorkspaceSchema,
|
|
404
455
|
WorkspaceWithCountSchema,
|
|
456
|
+
apiKeysContract,
|
|
405
457
|
contract,
|
|
406
458
|
domainsContract,
|
|
407
459
|
invitationsContract,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analytics.schema.d.ts","sourceRoot":"","sources":["../../src/analytics.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,wBAAwB;;;;iBAInC,CAAC"}
|