@middlewr/contracts 0.0.7 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/{cjs → dist/cjs}/common.schema.d.ts +4 -0
  2. package/dist/cjs/common.schema.d.ts.map +1 -0
  3. package/dist/cjs/domains.schema.d.ts +17 -0
  4. package/dist/cjs/domains.schema.d.ts.map +1 -0
  5. package/{esm → dist/cjs}/index.d.ts +197 -10
  6. package/dist/cjs/index.d.ts.map +1 -0
  7. package/{cjs → dist/cjs}/index.js +196 -145
  8. package/{cjs → dist/cjs}/links.schema.d.ts +24 -3
  9. package/dist/cjs/links.schema.d.ts.map +1 -0
  10. package/dist/cjs/tags.schema.d.ts.map +1 -0
  11. package/dist/cjs/users.schema.d.ts.map +1 -0
  12. package/dist/cjs/workspaces.schema.d.ts.map +1 -0
  13. package/{esm → dist/esm}/common.schema.d.ts +4 -0
  14. package/dist/esm/common.schema.d.ts.map +1 -0
  15. package/dist/esm/domains.schema.d.ts +17 -0
  16. package/dist/esm/domains.schema.d.ts.map +1 -0
  17. package/{cjs → dist/esm}/index.d.ts +197 -10
  18. package/dist/esm/index.d.ts.map +1 -0
  19. package/dist/esm/index.js +332 -0
  20. package/{esm → dist/esm}/links.schema.d.ts +24 -3
  21. package/dist/esm/links.schema.d.ts.map +1 -0
  22. package/dist/esm/tags.schema.d.ts.map +1 -0
  23. package/dist/esm/users.schema.d.ts.map +1 -0
  24. package/dist/esm/workspaces.schema.d.ts.map +1 -0
  25. package/package.json +20 -7
  26. package/scripts/build.sh +55 -0
  27. package/src/common.schema.ts +34 -0
  28. package/src/domains.schema.ts +32 -0
  29. package/src/index.ts +196 -0
  30. package/src/links.schema.ts +107 -0
  31. package/src/tags.schema.ts +27 -0
  32. package/src/users.schema.ts +22 -0
  33. package/src/workspaces.schema.ts +64 -0
  34. package/tsconfig.json +17 -0
  35. package/cjs/common.schema.d.ts.map +0 -1
  36. package/cjs/index.d.ts.map +0 -1
  37. package/cjs/links.schema.d.ts.map +0 -1
  38. package/cjs/tags.schema.d.ts.map +0 -1
  39. package/cjs/users.schema.d.ts.map +0 -1
  40. package/cjs/workspaces.schema.d.ts.map +0 -1
  41. package/esm/common.schema.d.ts.map +0 -1
  42. package/esm/index.d.ts.map +0 -1
  43. package/esm/index.js +0 -286
  44. package/esm/links.schema.d.ts.map +0 -1
  45. package/esm/tags.schema.d.ts.map +0 -1
  46. package/esm/users.schema.d.ts.map +0 -1
  47. package/esm/workspaces.schema.d.ts.map +0 -1
  48. /package/{cjs → dist/cjs}/package.json +0 -0
  49. /package/{cjs → dist/cjs}/tags.schema.d.ts +0 -0
  50. /package/{cjs → dist/cjs}/users.schema.d.ts +0 -0
  51. /package/{cjs → dist/cjs}/workspaces.schema.d.ts +0 -0
  52. /package/{esm → dist/esm}/package.json +0 -0
  53. /package/{esm → dist/esm}/tags.schema.d.ts +0 -0
  54. /package/{esm → dist/esm}/users.schema.d.ts +0 -0
  55. /package/{esm → dist/esm}/workspaces.schema.d.ts +0 -0
package/esm/index.js DELETED
@@ -1,286 +0,0 @@
1
- // src/contracts/index.ts
2
- import { oc } from "@orpc/contract";
3
- import { z as z6 } from "zod";
4
-
5
- // src/contracts/common.schema.ts
6
- import { z } from "zod";
7
- var WorkspaceIdParamSchema = z.object({
8
- workspace_id: z.string().uuid()
9
- });
10
- var LinkIdParamSchema = z.object({
11
- workspace_id: z.string().uuid(),
12
- link_id: z.string().uuid()
13
- });
14
- var TagIdParamSchema = z.object({
15
- workspace_id: z.string().uuid(),
16
- tag_id: z.string().uuid()
17
- });
18
- var MemberIdParamSchema = z.object({
19
- workspace_id: z.string().uuid(),
20
- user_id: z.string().uuid()
21
- });
22
- var InvitationIdParamSchema = z.object({
23
- workspace_id: z.string().uuid(),
24
- invitation_id: z.string().uuid()
25
- });
26
- var TokenParamSchema = z.object({
27
- token: z.string()
28
- });
29
-
30
- // src/contracts/links.schema.ts
31
- import { z as z2 } from "zod";
32
- var LinkSchema = z2.object({
33
- id: z2.string().uuid(),
34
- workspace_id: z2.string().uuid(),
35
- created_by_id: z2.string().uuid(),
36
- original_url: z2.string().url(),
37
- short_code: z2.string(),
38
- title: z2.string().nullable(),
39
- description: z2.string().nullable(),
40
- utm_source: z2.string().nullable(),
41
- utm_medium: z2.string().nullable(),
42
- utm_campaign: z2.string().nullable(),
43
- utm_term: z2.string().nullable(),
44
- utm_content: z2.string().nullable(),
45
- password: z2.string().nullable(),
46
- starts_at: z2.coerce.date().nullable(),
47
- expires_at: z2.coerce.date().nullable(),
48
- is_active: z2.boolean(),
49
- redirect_type: z2.number().int(),
50
- click_count: z2.number().int(),
51
- click_count_updated_at: z2.coerce.date().nullable(),
52
- created_at: z2.coerce.date(),
53
- updated_at: z2.coerce.date().nullable()
54
- });
55
- var CreateLinkInputSchema = z2.object({
56
- original_url: z2.string().url().max(2048),
57
- short_code: z2.string().min(3).max(50).regex(/^[a-zA-Z0-9-]+$/).optional(),
58
- title: z2.string().max(255).optional(),
59
- description: z2.string().max(2e3).optional(),
60
- utm_source: z2.string().max(255).optional(),
61
- utm_medium: z2.string().max(255).optional(),
62
- utm_campaign: z2.string().max(255).optional(),
63
- utm_term: z2.string().max(255).optional(),
64
- utm_content: z2.string().max(255).optional(),
65
- password: z2.string().min(4).max(100).optional(),
66
- starts_at: z2.coerce.date().optional(),
67
- expires_at: z2.coerce.date().optional(),
68
- redirect_type: z2.coerce.number().refine((v) => [301, 302, 307, 308].includes(v)).optional(),
69
- tag_ids: z2.array(z2.string().uuid()).optional()
70
- });
71
- var UpdateLinkInputSchema = z2.object({
72
- original_url: z2.string().url().max(2048).optional(),
73
- short_code: z2.string().min(3).max(50).regex(/^[a-zA-Z0-9-]+$/).optional(),
74
- title: z2.string().max(255).nullable().optional(),
75
- description: z2.string().max(2e3).nullable().optional(),
76
- utm_source: z2.string().max(255).nullable().optional(),
77
- utm_medium: z2.string().max(255).nullable().optional(),
78
- utm_campaign: z2.string().max(255).nullable().optional(),
79
- utm_term: z2.string().max(255).nullable().optional(),
80
- utm_content: z2.string().max(255).nullable().optional(),
81
- password: z2.string().min(4).max(100).nullable().optional(),
82
- starts_at: z2.coerce.date().nullable().optional(),
83
- expires_at: z2.coerce.date().nullable().optional(),
84
- is_active: z2.boolean().optional(),
85
- redirect_type: z2.coerce.number().refine((v) => [301, 302, 307, 308].includes(v)).optional(),
86
- tag_ids: z2.array(z2.string().uuid()).optional()
87
- });
88
- var LinkFiltersSchema = z2.object({
89
- search: z2.string().optional(),
90
- is_active: z2.coerce.boolean().optional(),
91
- has_expiration: z2.coerce.boolean().optional(),
92
- expired: z2.coerce.boolean().optional(),
93
- created_from: z2.coerce.date().optional(),
94
- created_to: z2.coerce.date().optional(),
95
- expires_from: z2.coerce.date().optional(),
96
- expires_to: z2.coerce.date().optional(),
97
- tag_ids: z2.array(z2.string().uuid()).optional(),
98
- sort_by: z2.enum(["created_at", "title", "click_count"]).default("created_at"),
99
- sort_order: z2.enum(["asc", "desc"]).default("desc"),
100
- page: z2.coerce.number().int().min(1).default(1),
101
- per_page: z2.coerce.number().int().min(1).max(100).default(20)
102
- });
103
- var PaginatedLinksSchema = z2.object({
104
- links: z2.array(LinkSchema),
105
- total: z2.number().int(),
106
- page: z2.number().int(),
107
- per_page: z2.number().int(),
108
- total_pages: z2.number().int()
109
- });
110
-
111
- // src/contracts/tags.schema.ts
112
- import { z as z3 } from "zod";
113
- var TagSchema = z3.object({
114
- id: z3.string().uuid(),
115
- workspace_id: z3.string().uuid(),
116
- name: z3.string(),
117
- color: z3.string().nullable(),
118
- created_at: z3.coerce.date(),
119
- updated_at: z3.coerce.date().nullable()
120
- });
121
- var CreateTagInputSchema = z3.object({
122
- name: z3.string().min(1).max(50),
123
- color: z3.string().regex(/^#[0-9A-Fa-f]{6}$/).optional()
124
- });
125
- var UpdateTagInputSchema = z3.object({
126
- name: z3.string().min(1).max(50).optional(),
127
- color: z3.string().regex(/^#[0-9A-Fa-f]{6}$/).nullable().optional()
128
- });
129
-
130
- // src/contracts/users.schema.ts
131
- import { z as z4 } from "zod";
132
- var UserSchema = z4.object({
133
- id: z4.string().uuid(),
134
- external_id: z4.string(),
135
- email: z4.string().email(),
136
- email_verified_at: z4.coerce.date().nullable(),
137
- first_name: z4.string().nullable(),
138
- last_name: z4.string().nullable(),
139
- created_at: z4.coerce.date(),
140
- updated_at: z4.coerce.date().nullable()
141
- });
142
- var SignInInputSchema = z4.object({
143
- first_name: z4.string().min(1).max(100).optional(),
144
- last_name: z4.string().min(1).max(100).optional()
145
- });
146
- var UpdateUserInputSchema = z4.object({
147
- first_name: z4.string().min(1).max(100).optional(),
148
- last_name: z4.string().min(1).max(100).optional()
149
- });
150
-
151
- // src/contracts/workspaces.schema.ts
152
- import { z as z5 } from "zod";
153
- var WorkspaceSchema = z5.object({
154
- id: z5.string().uuid(),
155
- name: z5.string(),
156
- created_at: z5.coerce.date(),
157
- updated_at: z5.coerce.date().nullable()
158
- });
159
- var WorkspaceWithCountSchema = WorkspaceSchema.extend({
160
- member_count: z5.number().int()
161
- });
162
- var CreateWorkspaceInputSchema = z5.object({
163
- name: z5.string().min(1).max(100)
164
- });
165
- var UpdateWorkspaceInputSchema = z5.object({
166
- name: z5.string().min(1).max(100).optional()
167
- });
168
- var TransferOwnershipInputSchema = z5.object({
169
- to_user_id: z5.string().uuid()
170
- });
171
- var WorkspaceMemberUserSchema = z5.object({
172
- id: z5.string().uuid(),
173
- email: z5.string().email(),
174
- first_name: z5.string().nullable(),
175
- last_name: z5.string().nullable()
176
- });
177
- var WorkspaceMemberSchema = z5.object({
178
- id: z5.string().uuid(),
179
- workspace_id: z5.string().uuid(),
180
- user_id: z5.string().uuid(),
181
- user: WorkspaceMemberUserSchema,
182
- permissions: z5.number().int(),
183
- joined_at: z5.coerce.date(),
184
- created_at: z5.coerce.date(),
185
- updated_at: z5.coerce.date().nullable()
186
- });
187
- var UpdateMemberInputSchema = z5.object({
188
- permissions: z5.number().int().min(1)
189
- });
190
- var WorkspaceInvitationSchema = z5.object({
191
- id: z5.string().uuid(),
192
- workspace_id: z5.string().uuid(),
193
- email: z5.string().email(),
194
- token: z5.string(),
195
- permissions: z5.number().int(),
196
- invited_by_id: z5.string().uuid(),
197
- expires_at: z5.coerce.date(),
198
- created_at: z5.coerce.date()
199
- });
200
- var CreateInvitationInputSchema = z5.object({
201
- email: z5.string().email(),
202
- permissions: z5.number().int().min(1)
203
- });
204
-
205
- // src/contracts/index.ts
206
- var usersContract = {
207
- me: oc.route({ method: "GET", path: "/api/users/me" }).output(z6.object({ user: UserSchema })),
208
- signIn: oc.route({ method: "POST", path: "/api/users" }).input(SignInInputSchema).output(z6.object({ user: UserSchema, status: z6.enum(["created", "existing"]) })),
209
- update: oc.route({ method: "PATCH", path: "/api/users/me" }).input(UpdateUserInputSchema).output(z6.object({ user: UserSchema }))
210
- };
211
- var workspacesContract = {
212
- create: oc.route({ method: "POST", path: "/api/workspaces" }).input(CreateWorkspaceInputSchema).output(WorkspaceSchema),
213
- list: oc.route({ method: "GET", path: "/api/workspaces" }).output(z6.array(WorkspaceWithCountSchema)),
214
- get: oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema).output(WorkspaceWithCountSchema),
215
- update: oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema.merge(UpdateWorkspaceInputSchema)).output(WorkspaceSchema),
216
- delete: oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema).output(z6.void()),
217
- transfer: oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/transfer" }).input(WorkspaceIdParamSchema.merge(TransferOwnershipInputSchema)).output(z6.void()),
218
- // Members
219
- listMembers: oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/members" }).input(WorkspaceIdParamSchema).output(z6.array(WorkspaceMemberSchema)),
220
- updateMember: oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/members/{user_id}" }).input(MemberIdParamSchema.merge(UpdateMemberInputSchema)).output(WorkspaceMemberSchema),
221
- removeMember: oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/members/{user_id}" }).input(MemberIdParamSchema).output(z6.void()),
222
- // Invitations
223
- listInvitations: oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/invitations" }).input(WorkspaceIdParamSchema).output(z6.array(WorkspaceInvitationSchema)),
224
- createInvitation: oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/invitations" }).input(WorkspaceIdParamSchema.merge(CreateInvitationInputSchema)).output(WorkspaceInvitationSchema),
225
- revokeInvitation: oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/invitations/{invitation_id}" }).input(InvitationIdParamSchema).output(z6.void())
226
- };
227
- var invitationsContract = {
228
- get: oc.route({ method: "GET", path: "/api/invitations/{token}" }).input(TokenParamSchema).output(WorkspaceInvitationSchema),
229
- accept: oc.route({ method: "POST", path: "/api/invitations/{token}/accept" }).input(TokenParamSchema).output(WorkspaceMemberSchema)
230
- };
231
- var linksContract = {
232
- create: oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/links" }).input(WorkspaceIdParamSchema.merge(CreateLinkInputSchema)).output(LinkSchema),
233
- list: oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links" }).input(WorkspaceIdParamSchema.merge(LinkFiltersSchema)).output(PaginatedLinksSchema),
234
- get: oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema).output(LinkSchema),
235
- update: oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema.merge(UpdateLinkInputSchema)).output(LinkSchema),
236
- delete: oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema).output(z6.void())
237
- };
238
- var tagsContract = {
239
- create: oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/tags" }).input(WorkspaceIdParamSchema.merge(CreateTagInputSchema)).output(TagSchema),
240
- list: oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/tags" }).input(WorkspaceIdParamSchema).output(z6.array(TagSchema)),
241
- get: oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema).output(TagSchema),
242
- update: oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema.merge(UpdateTagInputSchema)).output(TagSchema),
243
- delete: oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema).output(z6.void())
244
- };
245
- var contract = {
246
- users: usersContract,
247
- workspaces: workspacesContract,
248
- invitations: invitationsContract,
249
- links: linksContract,
250
- tags: tagsContract
251
- };
252
- export {
253
- CreateInvitationInputSchema,
254
- CreateLinkInputSchema,
255
- CreateTagInputSchema,
256
- CreateWorkspaceInputSchema,
257
- InvitationIdParamSchema,
258
- LinkFiltersSchema,
259
- LinkIdParamSchema,
260
- LinkSchema,
261
- MemberIdParamSchema,
262
- PaginatedLinksSchema,
263
- SignInInputSchema,
264
- TagIdParamSchema,
265
- TagSchema,
266
- TokenParamSchema,
267
- TransferOwnershipInputSchema,
268
- UpdateLinkInputSchema,
269
- UpdateMemberInputSchema,
270
- UpdateTagInputSchema,
271
- UpdateUserInputSchema,
272
- UpdateWorkspaceInputSchema,
273
- UserSchema,
274
- WorkspaceIdParamSchema,
275
- WorkspaceInvitationSchema,
276
- WorkspaceMemberSchema,
277
- WorkspaceMemberUserSchema,
278
- WorkspaceSchema,
279
- WorkspaceWithCountSchema,
280
- contract,
281
- invitationsContract,
282
- linksContract,
283
- tagsContract,
284
- usersContract,
285
- workspacesContract
286
- };
@@ -1 +0,0 @@
1
- {"version":3,"file":"links.schema.d.ts","sourceRoot":"","sources":["../../src/contracts/links.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;iBAsBrB,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;iBAuBhC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;iBAwBhC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;iBAc5B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAM/B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tags.schema.d.ts","sourceRoot":"","sources":["../../src/contracts/tags.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,SAAS;;;;;;;iBAOpB,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;iBAM/B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;iBAO/B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"users.schema.d.ts","sourceRoot":"","sources":["../../src/contracts/users.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,UAAU;;;;;;;;;iBASrB,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;iBAGhC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"workspaces.schema.d.ts","sourceRoot":"","sources":["../../src/contracts/workspaces.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe;;;;;iBAK1B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;iBAEnC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;iBAErC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;iBAErC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;iBAEvC,CAAC;AAGH,eAAO,MAAM,yBAAyB;;;;;iBAKpC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;iBAShC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;iBAElC,CAAC;AAGH,eAAO,MAAM,yBAAyB;;;;;;;;;iBASpC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;iBAGtC,CAAC"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes