@middlewr/contracts 0.0.41 → 0.0.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -34,6 +34,7 @@ __export(index_exports, {
34
34
  CreateDomainInputSchema: () => CreateDomainInputSchema,
35
35
  CreateInvitationInputSchema: () => CreateInvitationInputSchema,
36
36
  CreateLinkInputSchema: () => CreateLinkInputSchema,
37
+ CreateLinkTemplateInputSchema: () => CreateLinkTemplateInputSchema,
37
38
  CreateTagInputSchema: () => CreateTagInputSchema,
38
39
  CreateWorkspaceApiKeyInputSchema: () => CreateWorkspaceApiKeyInputSchema,
39
40
  CreateWorkspaceApiKeyResponseSchema: () => CreateWorkspaceApiKeyResponseSchema,
@@ -49,7 +50,11 @@ __export(index_exports, {
49
50
  LinkJobIdParamSchema: () => LinkJobIdParamSchema,
50
51
  LinkJobSchema: () => LinkJobSchema,
51
52
  LinkSchema: () => LinkSchema,
53
+ LinkTemplateFiltersSchema: () => LinkTemplateFiltersSchema,
54
+ LinkTemplateIdParamSchema: () => LinkTemplateIdParamSchema,
55
+ LinkTemplateSchema: () => LinkTemplateSchema,
52
56
  MemberIdParamSchema: () => MemberIdParamSchema,
57
+ PaginatedLinkTemplatesSchema: () => PaginatedLinkTemplatesSchema,
53
58
  PaginatedLinksSchema: () => PaginatedLinksSchema,
54
59
  PlanSchema: () => PlanSchema,
55
60
  PlansOutputSchema: () => PlansOutputSchema,
@@ -64,6 +69,7 @@ __export(index_exports, {
64
69
  TransferOwnershipInputSchema: () => TransferOwnershipInputSchema,
65
70
  UpdateDomainInputSchema: () => UpdateDomainInputSchema,
66
71
  UpdateLinkInputSchema: () => UpdateLinkInputSchema,
72
+ UpdateLinkTemplateInputSchema: () => UpdateLinkTemplateInputSchema,
67
73
  UpdateMemberInputSchema: () => UpdateMemberInputSchema,
68
74
  UpdateTagInputSchema: () => UpdateTagInputSchema,
69
75
  UpdateUserInputSchema: () => UpdateUserInputSchema,
@@ -85,6 +91,7 @@ __export(index_exports, {
85
91
  contract: () => contract,
86
92
  domainsContract: () => domainsContract,
87
93
  invitationsContract: () => invitationsContract,
94
+ linkTemplatesContract: () => linkTemplatesContract,
88
95
  linksContract: () => linksContract,
89
96
  tagsContract: () => tagsContract,
90
97
  usersContract: () => usersContract,
@@ -93,7 +100,7 @@ __export(index_exports, {
93
100
  });
94
101
  module.exports = __toCommonJS(index_exports);
95
102
  var import_contract = require("@orpc/contract");
96
- var import_zod11 = require("zod");
103
+ var import_zod12 = require("zod");
97
104
 
98
105
  // src/analytics.schema.ts
99
106
  var import_zod = require("zod");
@@ -253,6 +260,10 @@ var WorkspaceApiKeyIdParamSchema = import_zod4.z.object({
253
260
  workspace_id: import_zod4.z.string().uuid(),
254
261
  api_key_id: import_zod4.z.string().uuid()
255
262
  });
263
+ var LinkTemplateIdParamSchema = import_zod4.z.object({
264
+ workspace_id: import_zod4.z.string().uuid(),
265
+ link_template_id: import_zod4.z.string().uuid()
266
+ });
256
267
  var TokenParamSchema = import_zod4.z.object({
257
268
  token: import_zod4.z.string()
258
269
  });
@@ -287,8 +298,8 @@ var UpdateDomainInputSchema = import_zod5.z.object({
287
298
  }).optional()
288
299
  });
289
300
 
290
- // src/links.schema.ts
291
- var import_zod8 = require("zod");
301
+ // src/link-templates.schema.ts
302
+ var import_zod7 = require("zod");
292
303
 
293
304
  // src/rules.schema.ts
294
305
  var import_zod6 = require("zod");
@@ -374,253 +385,289 @@ var RuleGraphSchema = import_zod6.z.object({
374
385
  }).refine((data) => data.nodes[data.entry] !== void 0, {
375
386
  message: "Entry node must reference an existing node in the graph",
376
387
  path: ["entry"]
377
- }).nullable();
388
+ });
378
389
 
379
- // src/tags.schema.ts
380
- var import_zod7 = require("zod");
381
- var TagSchema = import_zod7.z.object({
390
+ // src/link-templates.schema.ts
391
+ var LinkTemplateSchema = import_zod7.z.object({
382
392
  id: import_zod7.z.string().uuid(),
383
393
  workspace_id: import_zod7.z.string().uuid(),
384
- name: import_zod7.z.string(),
385
- color: import_zod7.z.string().nullable(),
394
+ title: import_zod7.z.string(),
395
+ description: import_zod7.z.string().nullable(),
396
+ rule_graph: RuleGraphSchema,
386
397
  created_at: import_zod7.z.coerce.date(),
387
398
  updated_at: import_zod7.z.coerce.date().nullable()
388
399
  });
389
- var CreateTagInputSchema = import_zod7.z.object({
390
- name: import_zod7.z.string().min(1).max(50),
391
- color: import_zod7.z.string().regex(/^#[0-9A-Fa-f]{6}$/).optional()
400
+ var CreateLinkTemplateInputSchema = import_zod7.z.object({
401
+ title: import_zod7.z.string().min(1).max(255),
402
+ description: import_zod7.z.string().max(2e3).optional(),
403
+ rule_graph: RuleGraphSchema
404
+ });
405
+ var UpdateLinkTemplateInputSchema = import_zod7.z.object({
406
+ title: import_zod7.z.string().min(1).max(255).optional(),
407
+ description: import_zod7.z.string().max(2e3).nullable().optional(),
408
+ rule_graph: RuleGraphSchema.optional()
409
+ });
410
+ var LinkTemplateFiltersSchema = import_zod7.z.object({
411
+ search: import_zod7.z.string().optional(),
412
+ page: import_zod7.z.coerce.number().int().min(1).default(1),
413
+ per_page: import_zod7.z.coerce.number().int().min(1).max(100).default(20)
414
+ });
415
+ var PaginatedLinkTemplatesSchema = import_zod7.z.object({
416
+ link_templates: import_zod7.z.array(LinkTemplateSchema),
417
+ total: import_zod7.z.number().int(),
418
+ page: import_zod7.z.number().int(),
419
+ per_page: import_zod7.z.number().int(),
420
+ total_pages: import_zod7.z.number().int()
421
+ });
422
+
423
+ // src/links.schema.ts
424
+ var import_zod9 = require("zod");
425
+
426
+ // src/tags.schema.ts
427
+ var import_zod8 = require("zod");
428
+ var TagSchema = import_zod8.z.object({
429
+ id: import_zod8.z.string().uuid(),
430
+ workspace_id: import_zod8.z.string().uuid(),
431
+ name: import_zod8.z.string(),
432
+ color: import_zod8.z.string().nullable(),
433
+ created_at: import_zod8.z.coerce.date(),
434
+ updated_at: import_zod8.z.coerce.date().nullable()
435
+ });
436
+ var CreateTagInputSchema = import_zod8.z.object({
437
+ name: import_zod8.z.string().min(1).max(50),
438
+ color: import_zod8.z.string().regex(/^#[0-9A-Fa-f]{6}$/).optional()
392
439
  });
393
- var UpdateTagInputSchema = import_zod7.z.object({
394
- name: import_zod7.z.string().min(1).max(50).optional(),
395
- color: import_zod7.z.string().regex(/^#[0-9A-Fa-f]{6}$/).nullable().optional()
440
+ var UpdateTagInputSchema = import_zod8.z.object({
441
+ name: import_zod8.z.string().min(1).max(50).optional(),
442
+ color: import_zod8.z.string().regex(/^#[0-9A-Fa-f]{6}$/).nullable().optional()
396
443
  });
397
444
 
398
445
  // src/links.schema.ts
399
- var DotStyleSchema = import_zod8.z.enum(["square", "dots", "rounded", "classy", "classy-rounded", "extra-rounded"]);
400
- var EyeOuterStyleSchema = import_zod8.z.enum(["square", "dot", "extra-rounded"]);
401
- var EyeInnerStyleSchema = import_zod8.z.enum(["square", "dot"]);
402
- var QrCodeSettingsSchema = import_zod8.z.object({
403
- fg_color: import_zod8.z.string().max(20),
404
- bg_color: import_zod8.z.string().max(20),
446
+ var DotStyleSchema = import_zod9.z.enum(["square", "dots", "rounded", "classy", "classy-rounded", "extra-rounded"]);
447
+ var EyeOuterStyleSchema = import_zod9.z.enum(["square", "dot", "extra-rounded"]);
448
+ var EyeInnerStyleSchema = import_zod9.z.enum(["square", "dot"]);
449
+ var QrCodeSettingsSchema = import_zod9.z.object({
450
+ fg_color: import_zod9.z.string().max(20),
451
+ bg_color: import_zod9.z.string().max(20),
405
452
  dot_style: DotStyleSchema,
406
453
  eye_outer_style: EyeOuterStyleSchema,
407
454
  eye_inner_style: EyeInnerStyleSchema,
408
- frame_enabled: import_zod8.z.boolean(),
409
- frame_text: import_zod8.z.string().max(255),
410
- frame_color: import_zod8.z.string().max(20),
411
- frame_text_color: import_zod8.z.string().max(20),
412
- logo_size: import_zod8.z.number().int().min(1).nullable().optional()
455
+ frame_enabled: import_zod9.z.boolean(),
456
+ frame_text: import_zod9.z.string().max(255),
457
+ frame_color: import_zod9.z.string().max(20),
458
+ frame_text_color: import_zod9.z.string().max(20),
459
+ logo_size: import_zod9.z.number().int().min(1).nullable().optional()
413
460
  });
414
- var LinkSchema = import_zod8.z.object({
415
- id: import_zod8.z.string().uuid(),
416
- workspace_id: import_zod8.z.string().uuid(),
417
- domain_id: import_zod8.z.string().uuid(),
418
- created_by_id: import_zod8.z.string().uuid(),
419
- original_url: import_zod8.z.string().url(),
420
- short_code: import_zod8.z.string(),
421
- title: import_zod8.z.string().nullable(),
422
- description: import_zod8.z.string().nullable(),
423
- utm_source: import_zod8.z.string().nullable(),
424
- utm_medium: import_zod8.z.string().nullable(),
425
- utm_campaign: import_zod8.z.string().nullable(),
426
- utm_term: import_zod8.z.string().nullable(),
427
- utm_content: import_zod8.z.string().nullable(),
428
- password: import_zod8.z.string().nullable(),
429
- starts_at: import_zod8.z.coerce.date().nullable(),
430
- expires_at: import_zod8.z.coerce.date().nullable(),
431
- fallback_url: import_zod8.z.string().nullable(),
432
- is_active: import_zod8.z.boolean(),
433
- redirect_type: import_zod8.z.number().int(),
434
- click_count: import_zod8.z.coerce.number().int(),
435
- click_count_updated_at: import_zod8.z.coerce.date().nullable(),
436
- created_at: import_zod8.z.coerce.date(),
437
- updated_at: import_zod8.z.coerce.date().nullable(),
461
+ var LinkSchema = import_zod9.z.object({
462
+ id: import_zod9.z.string().uuid(),
463
+ workspace_id: import_zod9.z.string().uuid(),
464
+ domain_id: import_zod9.z.string().uuid(),
465
+ created_by_id: import_zod9.z.string().uuid(),
466
+ original_url: import_zod9.z.string().url(),
467
+ short_code: import_zod9.z.string(),
468
+ title: import_zod9.z.string().nullable(),
469
+ description: import_zod9.z.string().nullable(),
470
+ utm_source: import_zod9.z.string().nullable(),
471
+ utm_medium: import_zod9.z.string().nullable(),
472
+ utm_campaign: import_zod9.z.string().nullable(),
473
+ utm_term: import_zod9.z.string().nullable(),
474
+ utm_content: import_zod9.z.string().nullable(),
475
+ password: import_zod9.z.string().nullable(),
476
+ starts_at: import_zod9.z.coerce.date().nullable(),
477
+ expires_at: import_zod9.z.coerce.date().nullable(),
478
+ fallback_url: import_zod9.z.string().nullable(),
479
+ is_active: import_zod9.z.boolean(),
480
+ redirect_type: import_zod9.z.number().int(),
481
+ click_count: import_zod9.z.coerce.number().int(),
482
+ click_count_updated_at: import_zod9.z.coerce.date().nullable(),
483
+ created_at: import_zod9.z.coerce.date(),
484
+ updated_at: import_zod9.z.coerce.date().nullable(),
438
485
  qr_code_settings: QrCodeSettingsSchema.nullable(),
439
- qr_logo_key: import_zod8.z.string().nullable(),
440
- logo_url: import_zod8.z.string().nullable(),
441
- link_type: import_zod8.z.enum(["redirect", "rules"]).default("redirect"),
442
- rule_graph: RuleGraphSchema.optional(),
443
- tags: import_zod8.z.array(TagSchema)
444
- });
445
- var CreateLinkInputSchema = import_zod8.z.object({
446
- original_url: import_zod8.z.string().url().max(2048),
447
- domain_id: import_zod8.z.string().uuid().optional(),
448
- short_code: import_zod8.z.string().min(3).max(50).regex(/^[a-zA-Z0-9-]+$/).optional(),
449
- title: import_zod8.z.string().max(255).optional(),
450
- description: import_zod8.z.string().max(2e3).optional(),
451
- utm_source: import_zod8.z.string().max(255).optional(),
452
- utm_medium: import_zod8.z.string().max(255).optional(),
453
- utm_campaign: import_zod8.z.string().max(255).optional(),
454
- utm_term: import_zod8.z.string().max(255).optional(),
455
- utm_content: import_zod8.z.string().max(255).optional(),
456
- password: import_zod8.z.string().min(4).max(100).optional(),
457
- starts_at: import_zod8.z.coerce.date().optional(),
458
- expires_at: import_zod8.z.coerce.date().optional(),
459
- fallback_url: import_zod8.z.string().url().max(2048).optional(),
460
- redirect_type: import_zod8.z.coerce.number().refine((v) => [301, 302, 307, 308].includes(v)).optional(),
486
+ qr_logo_key: import_zod9.z.string().nullable(),
487
+ logo_url: import_zod9.z.string().nullable(),
488
+ link_type: import_zod9.z.enum(["redirect", "rules"]).default("redirect"),
489
+ rule_graph: RuleGraphSchema.nullable().optional(),
490
+ tags: import_zod9.z.array(TagSchema)
491
+ });
492
+ var CreateLinkInputSchema = import_zod9.z.object({
493
+ original_url: import_zod9.z.string().url().max(2048),
494
+ domain_id: import_zod9.z.string().uuid().optional(),
495
+ short_code: import_zod9.z.string().min(3).max(50).regex(/^[a-zA-Z0-9-]+$/).optional(),
496
+ title: import_zod9.z.string().max(255).optional(),
497
+ description: import_zod9.z.string().max(2e3).optional(),
498
+ utm_source: import_zod9.z.string().max(255).optional(),
499
+ utm_medium: import_zod9.z.string().max(255).optional(),
500
+ utm_campaign: import_zod9.z.string().max(255).optional(),
501
+ utm_term: import_zod9.z.string().max(255).optional(),
502
+ utm_content: import_zod9.z.string().max(255).optional(),
503
+ password: import_zod9.z.string().min(4).max(100).optional(),
504
+ starts_at: import_zod9.z.coerce.date().optional(),
505
+ expires_at: import_zod9.z.coerce.date().optional(),
506
+ fallback_url: import_zod9.z.string().url().max(2048).optional(),
507
+ redirect_type: import_zod9.z.coerce.number().refine((v) => [301, 302, 307, 308].includes(v)).optional(),
461
508
  qr_code_settings: QrCodeSettingsSchema.nullable().optional(),
462
- tag_ids: import_zod8.z.array(import_zod8.z.string().uuid()).optional(),
463
- link_type: import_zod8.z.enum(["redirect", "rules"]).optional(),
464
- rule_graph: RuleGraphSchema.optional()
509
+ tag_ids: import_zod9.z.array(import_zod9.z.string().uuid()).optional(),
510
+ link_type: import_zod9.z.enum(["redirect", "rules"]).optional(),
511
+ rule_graph: RuleGraphSchema.nullable().optional()
465
512
  }).refine((data) => data.link_type !== "rules" || data.rule_graph != null, {
466
513
  message: 'rule_graph is required when link_type is "rules"',
467
514
  path: ["rule_graph"]
468
515
  });
469
- var UpdateLinkInputSchema = import_zod8.z.object({
470
- original_url: import_zod8.z.string().url().max(2048).optional(),
471
- domain_id: import_zod8.z.string().uuid().optional(),
472
- short_code: import_zod8.z.string().min(3).max(50).regex(/^[a-zA-Z0-9-]+$/).optional(),
473
- title: import_zod8.z.string().max(255).nullable().optional(),
474
- description: import_zod8.z.string().max(2e3).nullable().optional(),
475
- utm_source: import_zod8.z.string().max(255).nullable().optional(),
476
- utm_medium: import_zod8.z.string().max(255).nullable().optional(),
477
- utm_campaign: import_zod8.z.string().max(255).nullable().optional(),
478
- utm_term: import_zod8.z.string().max(255).nullable().optional(),
479
- utm_content: import_zod8.z.string().max(255).nullable().optional(),
480
- password: import_zod8.z.string().min(4).max(100).nullable().optional(),
481
- starts_at: import_zod8.z.coerce.date().nullable().optional(),
482
- expires_at: import_zod8.z.coerce.date().nullable().optional(),
483
- fallback_url: import_zod8.z.string().url().max(2048).nullable().optional(),
484
- is_active: import_zod8.z.boolean().optional(),
485
- redirect_type: import_zod8.z.coerce.number().refine((v) => [301, 302, 307, 308].includes(v)).optional(),
516
+ var UpdateLinkInputSchema = import_zod9.z.object({
517
+ original_url: import_zod9.z.string().url().max(2048).optional(),
518
+ domain_id: import_zod9.z.string().uuid().optional(),
519
+ short_code: import_zod9.z.string().min(3).max(50).regex(/^[a-zA-Z0-9-]+$/).optional(),
520
+ title: import_zod9.z.string().max(255).nullable().optional(),
521
+ description: import_zod9.z.string().max(2e3).nullable().optional(),
522
+ utm_source: import_zod9.z.string().max(255).nullable().optional(),
523
+ utm_medium: import_zod9.z.string().max(255).nullable().optional(),
524
+ utm_campaign: import_zod9.z.string().max(255).nullable().optional(),
525
+ utm_term: import_zod9.z.string().max(255).nullable().optional(),
526
+ utm_content: import_zod9.z.string().max(255).nullable().optional(),
527
+ password: import_zod9.z.string().min(4).max(100).nullable().optional(),
528
+ starts_at: import_zod9.z.coerce.date().nullable().optional(),
529
+ expires_at: import_zod9.z.coerce.date().nullable().optional(),
530
+ fallback_url: import_zod9.z.string().url().max(2048).nullable().optional(),
531
+ is_active: import_zod9.z.boolean().optional(),
532
+ redirect_type: import_zod9.z.coerce.number().refine((v) => [301, 302, 307, 308].includes(v)).optional(),
486
533
  qr_code_settings: QrCodeSettingsSchema.nullable().optional(),
487
- tag_ids: import_zod8.z.array(import_zod8.z.string().uuid()).optional(),
488
- link_type: import_zod8.z.enum(["redirect", "rules"]).optional(),
489
- rule_graph: RuleGraphSchema.optional()
534
+ tag_ids: import_zod9.z.array(import_zod9.z.string().uuid()).optional(),
535
+ link_type: import_zod9.z.enum(["redirect", "rules"]).optional(),
536
+ rule_graph: RuleGraphSchema.nullable().optional()
490
537
  }).refine((data) => data.link_type !== "rules" || data.rule_graph != null, {
491
538
  message: 'rule_graph is required when link_type is "rules"',
492
539
  path: ["rule_graph"]
493
540
  });
494
- var stringToBoolean = import_zod8.z.union([import_zod8.z.boolean(), import_zod8.z.enum(["true", "false"])]).transform((val) => typeof val === "string" ? val === "true" : val);
495
- var LinkFiltersSchema = import_zod8.z.object({
496
- search: import_zod8.z.string().optional(),
497
- domain_ids: import_zod8.z.array(import_zod8.z.string().uuid()).optional(),
541
+ var stringToBoolean = import_zod9.z.union([import_zod9.z.boolean(), import_zod9.z.enum(["true", "false"])]).transform((val) => typeof val === "string" ? val === "true" : val);
542
+ var LinkFiltersSchema = import_zod9.z.object({
543
+ search: import_zod9.z.string().optional(),
544
+ domain_ids: import_zod9.z.array(import_zod9.z.string().uuid()).optional(),
498
545
  is_active: stringToBoolean.optional(),
499
546
  has_expiration: stringToBoolean.optional(),
500
547
  expired: stringToBoolean.optional(),
501
- created_from: import_zod8.z.coerce.date().optional(),
502
- created_to: import_zod8.z.coerce.date().optional(),
503
- expires_from: import_zod8.z.coerce.date().optional(),
504
- expires_to: import_zod8.z.coerce.date().optional(),
505
- tag_ids: import_zod8.z.array(import_zod8.z.string().uuid()).optional(),
506
- sort_by: import_zod8.z.enum(["created_at", "title", "click_count", "original_url"]).default("created_at"),
507
- sort_order: import_zod8.z.enum(["asc", "desc"]).default("desc"),
508
- page: import_zod8.z.coerce.number().int().min(1).default(1),
509
- per_page: import_zod8.z.coerce.number().int().min(1).max(100).default(20)
548
+ created_from: import_zod9.z.coerce.date().optional(),
549
+ created_to: import_zod9.z.coerce.date().optional(),
550
+ expires_from: import_zod9.z.coerce.date().optional(),
551
+ expires_to: import_zod9.z.coerce.date().optional(),
552
+ tag_ids: import_zod9.z.array(import_zod9.z.string().uuid()).optional(),
553
+ sort_by: import_zod9.z.enum(["created_at", "title", "click_count", "original_url"]).default("created_at"),
554
+ sort_order: import_zod9.z.enum(["asc", "desc"]).default("desc"),
555
+ page: import_zod9.z.coerce.number().int().min(1).default(1),
556
+ per_page: import_zod9.z.coerce.number().int().min(1).max(100).default(20)
510
557
  });
511
558
  var ExportLinksFiltersSchema = LinkFiltersSchema.omit({ page: true, per_page: true });
512
- var PaginatedLinksSchema = import_zod8.z.object({
513
- links: import_zod8.z.array(LinkSchema),
514
- total: import_zod8.z.number().int(),
515
- page: import_zod8.z.number().int(),
516
- per_page: import_zod8.z.number().int(),
517
- total_pages: import_zod8.z.number().int()
518
- });
519
- var LinkJobSchema = import_zod8.z.object({
520
- id: import_zod8.z.string().uuid(),
521
- workspace_id: import_zod8.z.string().uuid(),
522
- type: import_zod8.z.string(),
523
- status: import_zod8.z.enum(["pending", "processing", "completed", "failed"]),
524
- total_rows: import_zod8.z.number().int(),
525
- succeeded_count: import_zod8.z.number().int(),
526
- failed_count: import_zod8.z.number().int(),
527
- error: import_zod8.z.string().nullable(),
528
- created_by_id: import_zod8.z.string().uuid(),
529
- created_at: import_zod8.z.date(),
530
- completed_at: import_zod8.z.date().nullable()
531
- });
532
- var LinkJobIdParamSchema = import_zod8.z.object({
533
- workspace_id: import_zod8.z.string().uuid(),
534
- job_id: import_zod8.z.string().uuid()
535
- });
536
-
537
- // src/users.schema.ts
538
- var import_zod9 = require("zod");
539
- var UserSchema = import_zod9.z.object({
559
+ var PaginatedLinksSchema = import_zod9.z.object({
560
+ links: import_zod9.z.array(LinkSchema),
561
+ total: import_zod9.z.number().int(),
562
+ page: import_zod9.z.number().int(),
563
+ per_page: import_zod9.z.number().int(),
564
+ total_pages: import_zod9.z.number().int()
565
+ });
566
+ var LinkJobSchema = import_zod9.z.object({
540
567
  id: import_zod9.z.string().uuid(),
541
- external_id: import_zod9.z.string(),
542
- email: import_zod9.z.string().email(),
543
- email_verified_at: import_zod9.z.coerce.date().nullable(),
544
- first_name: import_zod9.z.string().nullable(),
545
- last_name: import_zod9.z.string().nullable(),
546
- created_at: import_zod9.z.coerce.date(),
547
- updated_at: import_zod9.z.coerce.date().nullable()
548
- });
549
- var SignInInputSchema = import_zod9.z.object({
550
- first_name: import_zod9.z.string().min(1).max(100).optional(),
551
- last_name: import_zod9.z.string().min(1).max(100).optional()
552
- });
553
- var UpdateUserInputSchema = import_zod9.z.object({
554
- first_name: import_zod9.z.string().min(1).max(100).optional(),
555
- last_name: import_zod9.z.string().min(1).max(100).optional()
568
+ workspace_id: import_zod9.z.string().uuid(),
569
+ type: import_zod9.z.string(),
570
+ status: import_zod9.z.enum(["pending", "processing", "completed", "failed"]),
571
+ total_rows: import_zod9.z.number().int(),
572
+ succeeded_count: import_zod9.z.number().int(),
573
+ failed_count: import_zod9.z.number().int(),
574
+ error: import_zod9.z.string().nullable(),
575
+ created_by_id: import_zod9.z.string().uuid(),
576
+ created_at: import_zod9.z.date(),
577
+ completed_at: import_zod9.z.date().nullable()
578
+ });
579
+ var LinkJobIdParamSchema = import_zod9.z.object({
580
+ workspace_id: import_zod9.z.string().uuid(),
581
+ job_id: import_zod9.z.string().uuid()
556
582
  });
557
583
 
558
- // src/workspaces.schema.ts
584
+ // src/users.schema.ts
559
585
  var import_zod10 = require("zod");
560
- var WorkspaceSchema = import_zod10.z.object({
586
+ var UserSchema = import_zod10.z.object({
561
587
  id: import_zod10.z.string().uuid(),
562
- name: import_zod10.z.string(),
563
- billing_plan: import_zod10.z.string(),
564
- billing_status: import_zod10.z.string(),
565
- billing_email: import_zod10.z.string().nullable(),
566
- billing_current_period_end: import_zod10.z.coerce.date().nullable(),
567
- billing_cancel_at_period_end: import_zod10.z.boolean(),
588
+ external_id: import_zod10.z.string(),
589
+ email: import_zod10.z.string().email(),
590
+ email_verified_at: import_zod10.z.coerce.date().nullable(),
591
+ first_name: import_zod10.z.string().nullable(),
592
+ last_name: import_zod10.z.string().nullable(),
568
593
  created_at: import_zod10.z.coerce.date(),
569
594
  updated_at: import_zod10.z.coerce.date().nullable()
570
595
  });
571
- var WorkspaceWithCountSchema = WorkspaceSchema.extend({
572
- member_count: import_zod10.z.number().int()
573
- });
574
- var CreateWorkspaceInputSchema = import_zod10.z.object({
575
- name: import_zod10.z.string().min(1).max(100)
576
- });
577
- var UpdateWorkspaceInputSchema = import_zod10.z.object({
578
- name: import_zod10.z.string().min(1).max(100).optional(),
579
- billing_email: import_zod10.z.string().email().nullish()
596
+ var SignInInputSchema = import_zod10.z.object({
597
+ first_name: import_zod10.z.string().min(1).max(100).optional(),
598
+ last_name: import_zod10.z.string().min(1).max(100).optional()
580
599
  });
581
- var TransferOwnershipInputSchema = import_zod10.z.object({
582
- to_user_id: import_zod10.z.string().uuid()
600
+ var UpdateUserInputSchema = import_zod10.z.object({
601
+ first_name: import_zod10.z.string().min(1).max(100).optional(),
602
+ last_name: import_zod10.z.string().min(1).max(100).optional()
583
603
  });
584
- var WorkspaceMemberUserSchema = import_zod10.z.object({
585
- id: import_zod10.z.string().uuid(),
586
- email: import_zod10.z.string().email(),
587
- first_name: import_zod10.z.string().nullable(),
588
- last_name: import_zod10.z.string().nullable()
604
+
605
+ // src/workspaces.schema.ts
606
+ var import_zod11 = require("zod");
607
+ var WorkspaceSchema = import_zod11.z.object({
608
+ id: import_zod11.z.string().uuid(),
609
+ name: import_zod11.z.string(),
610
+ billing_plan: import_zod11.z.string(),
611
+ billing_status: import_zod11.z.string(),
612
+ billing_email: import_zod11.z.string().nullable(),
613
+ billing_current_period_end: import_zod11.z.coerce.date().nullable(),
614
+ billing_cancel_at_period_end: import_zod11.z.boolean(),
615
+ created_at: import_zod11.z.coerce.date(),
616
+ updated_at: import_zod11.z.coerce.date().nullable()
589
617
  });
590
- var WorkspaceMemberSchema = import_zod10.z.object({
591
- id: import_zod10.z.string().uuid(),
592
- workspace_id: import_zod10.z.string().uuid(),
593
- user_id: import_zod10.z.string().uuid(),
594
- user: WorkspaceMemberUserSchema,
595
- permissions: import_zod10.z.number().int(),
596
- joined_at: import_zod10.z.coerce.date(),
597
- created_at: import_zod10.z.coerce.date(),
598
- updated_at: import_zod10.z.coerce.date().nullable()
618
+ var WorkspaceWithCountSchema = WorkspaceSchema.extend({
619
+ member_count: import_zod11.z.number().int()
599
620
  });
600
- var UpdateMemberInputSchema = import_zod10.z.object({
601
- permissions: import_zod10.z.number().int().min(1)
621
+ var CreateWorkspaceInputSchema = import_zod11.z.object({
622
+ name: import_zod11.z.string().min(1).max(100)
602
623
  });
603
- var WorkspaceInvitationSchema = import_zod10.z.object({
604
- id: import_zod10.z.string().uuid(),
605
- workspace_id: import_zod10.z.string().uuid(),
606
- email: import_zod10.z.string().email(),
607
- token: import_zod10.z.string(),
608
- permissions: import_zod10.z.number().int(),
609
- invited_by_id: import_zod10.z.string().uuid(),
610
- expires_at: import_zod10.z.coerce.date(),
611
- created_at: import_zod10.z.coerce.date()
624
+ var UpdateWorkspaceInputSchema = import_zod11.z.object({
625
+ name: import_zod11.z.string().min(1).max(100).optional(),
626
+ billing_email: import_zod11.z.string().email().nullish()
612
627
  });
613
- var CreateInvitationInputSchema = import_zod10.z.object({
614
- email: import_zod10.z.string().email(),
615
- permissions: import_zod10.z.number().int().min(1)
628
+ var TransferOwnershipInputSchema = import_zod11.z.object({
629
+ to_user_id: import_zod11.z.string().uuid()
616
630
  });
617
- var WorkspaceStatsSchema = import_zod10.z.object({
618
- links_count: import_zod10.z.number().int()
631
+ var WorkspaceMemberUserSchema = import_zod11.z.object({
632
+ id: import_zod11.z.string().uuid(),
633
+ email: import_zod11.z.string().email(),
634
+ first_name: import_zod11.z.string().nullable(),
635
+ last_name: import_zod11.z.string().nullable()
619
636
  });
620
- var WorkspaceRoleSchema = import_zod10.z.object({
621
- name: import_zod10.z.string(),
622
- description: import_zod10.z.string(),
623
- permissions: import_zod10.z.number().int()
637
+ var WorkspaceMemberSchema = import_zod11.z.object({
638
+ id: import_zod11.z.string().uuid(),
639
+ workspace_id: import_zod11.z.string().uuid(),
640
+ user_id: import_zod11.z.string().uuid(),
641
+ user: WorkspaceMemberUserSchema,
642
+ permissions: import_zod11.z.number().int(),
643
+ joined_at: import_zod11.z.coerce.date(),
644
+ created_at: import_zod11.z.coerce.date(),
645
+ updated_at: import_zod11.z.coerce.date().nullable()
646
+ });
647
+ var UpdateMemberInputSchema = import_zod11.z.object({
648
+ permissions: import_zod11.z.number().int().min(1)
649
+ });
650
+ var WorkspaceInvitationSchema = import_zod11.z.object({
651
+ id: import_zod11.z.string().uuid(),
652
+ workspace_id: import_zod11.z.string().uuid(),
653
+ email: import_zod11.z.string().email(),
654
+ token: import_zod11.z.string(),
655
+ permissions: import_zod11.z.number().int(),
656
+ invited_by_id: import_zod11.z.string().uuid(),
657
+ expires_at: import_zod11.z.coerce.date(),
658
+ created_at: import_zod11.z.coerce.date()
659
+ });
660
+ var CreateInvitationInputSchema = import_zod11.z.object({
661
+ email: import_zod11.z.string().email(),
662
+ permissions: import_zod11.z.number().int().min(1)
663
+ });
664
+ var WorkspaceStatsSchema = import_zod11.z.object({
665
+ links_count: import_zod11.z.number().int()
666
+ });
667
+ var WorkspaceRoleSchema = import_zod11.z.object({
668
+ name: import_zod11.z.string(),
669
+ description: import_zod11.z.string(),
670
+ permissions: import_zod11.z.number().int()
624
671
  });
625
672
 
626
673
  // src/index.ts
@@ -629,70 +676,77 @@ var analyticsContract = {
629
676
  link: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links/{link_id}/analytics" }).input(LinkIdParamSchema.merge(AnalyticsQuerySchema)).output(AnalyticsOutputSchema)
630
677
  };
631
678
  var usersContract = {
632
- me: import_contract.oc.route({ method: "GET", path: "/api/users/me" }).output(import_zod11.z.object({ user: UserSchema })),
633
- signIn: import_contract.oc.route({ method: "POST", path: "/api/users" }).input(SignInInputSchema).output(import_zod11.z.object({ user: UserSchema, status: import_zod11.z.enum(["created", "existing"]) })),
634
- update: import_contract.oc.route({ method: "PATCH", path: "/api/users/me" }).input(UpdateUserInputSchema).output(import_zod11.z.object({ user: UserSchema }))
679
+ me: import_contract.oc.route({ method: "GET", path: "/api/users/me" }).output(import_zod12.z.object({ user: UserSchema })),
680
+ signIn: import_contract.oc.route({ method: "POST", path: "/api/users" }).input(SignInInputSchema).output(import_zod12.z.object({ user: UserSchema, status: import_zod12.z.enum(["created", "existing"]) })),
681
+ update: import_contract.oc.route({ method: "PATCH", path: "/api/users/me" }).input(UpdateUserInputSchema).output(import_zod12.z.object({ user: UserSchema }))
635
682
  };
636
683
  var apiKeysContract = {
637
684
  create: import_contract.oc.route({ method: "POST", path: "/api/api-keys" }).input(CreateApiKeyInputSchema).output(CreateApiKeyResponseSchema),
638
- list: import_contract.oc.route({ method: "GET", path: "/api/api-keys" }).output(import_zod11.z.array(ApiKeySchema)),
639
- delete: import_contract.oc.route({ method: "DELETE", path: "/api/api-keys/{api_key_id}" }).input(ApiKeyIdParamSchema).output(import_zod11.z.void())
685
+ list: import_contract.oc.route({ method: "GET", path: "/api/api-keys" }).output(import_zod12.z.array(ApiKeySchema)),
686
+ delete: import_contract.oc.route({ method: "DELETE", path: "/api/api-keys/{api_key_id}" }).input(ApiKeyIdParamSchema).output(import_zod12.z.void())
640
687
  };
641
688
  var workspaceApiKeysContract = {
642
689
  create: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/api-keys" }).input(WorkspaceIdParamSchema.merge(CreateWorkspaceApiKeyInputSchema)).output(CreateWorkspaceApiKeyResponseSchema),
643
- list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/api-keys" }).input(WorkspaceIdParamSchema).output(import_zod11.z.array(ApiKeySchema)),
644
- delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/api-keys/{api_key_id}" }).input(WorkspaceApiKeyIdParamSchema).output(import_zod11.z.void())
690
+ list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/api-keys" }).input(WorkspaceIdParamSchema).output(import_zod12.z.array(ApiKeySchema)),
691
+ delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/api-keys/{api_key_id}" }).input(WorkspaceApiKeyIdParamSchema).output(import_zod12.z.void())
645
692
  };
646
693
  var workspacesContract = {
647
694
  create: import_contract.oc.route({ method: "POST", path: "/api/workspaces" }).input(CreateWorkspaceInputSchema).output(WorkspaceSchema),
648
- list: import_contract.oc.route({ method: "GET", path: "/api/workspaces" }).output(import_zod11.z.array(WorkspaceWithCountSchema)),
695
+ list: import_contract.oc.route({ method: "GET", path: "/api/workspaces" }).output(import_zod12.z.array(WorkspaceWithCountSchema)),
649
696
  get: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema).output(WorkspaceWithCountSchema),
650
697
  update: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema.merge(UpdateWorkspaceInputSchema)).output(WorkspaceSchema),
651
- delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema).output(import_zod11.z.void()),
652
- transfer: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/transfer" }).input(WorkspaceIdParamSchema.merge(TransferOwnershipInputSchema)).output(import_zod11.z.void()),
698
+ delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}" }).input(WorkspaceIdParamSchema).output(import_zod12.z.void()),
699
+ transfer: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/transfer" }).input(WorkspaceIdParamSchema.merge(TransferOwnershipInputSchema)).output(import_zod12.z.void()),
653
700
  stats: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/stats" }).input(WorkspaceIdParamSchema).output(WorkspaceStatsSchema),
654
701
  // Roles
655
- listRoles: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/roles" }).input(WorkspaceIdParamSchema).output(import_zod11.z.array(WorkspaceRoleSchema)),
702
+ listRoles: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/roles" }).input(WorkspaceIdParamSchema).output(import_zod12.z.array(WorkspaceRoleSchema)),
656
703
  // Members
657
- listMembers: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/members" }).input(WorkspaceIdParamSchema).output(import_zod11.z.array(WorkspaceMemberSchema)),
704
+ listMembers: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/members" }).input(WorkspaceIdParamSchema).output(import_zod12.z.array(WorkspaceMemberSchema)),
658
705
  updateMember: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/members/{user_id}" }).input(MemberIdParamSchema.merge(UpdateMemberInputSchema)).output(WorkspaceMemberSchema),
659
- removeMember: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/members/{user_id}" }).input(MemberIdParamSchema).output(import_zod11.z.void()),
706
+ removeMember: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/members/{user_id}" }).input(MemberIdParamSchema).output(import_zod12.z.void()),
660
707
  // Invitations
661
- listInvitations: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/invitations" }).input(WorkspaceIdParamSchema).output(import_zod11.z.array(WorkspaceInvitationSchema)),
708
+ listInvitations: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/invitations" }).input(WorkspaceIdParamSchema).output(import_zod12.z.array(WorkspaceInvitationSchema)),
662
709
  createInvitation: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/invitations" }).input(WorkspaceIdParamSchema.merge(CreateInvitationInputSchema)).output(WorkspaceInvitationSchema),
663
- revokeInvitation: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/invitations/{invitation_id}" }).input(InvitationIdParamSchema).output(import_zod11.z.void())
710
+ revokeInvitation: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/invitations/{invitation_id}" }).input(InvitationIdParamSchema).output(import_zod12.z.void())
664
711
  };
665
712
  var invitationsContract = {
666
713
  get: import_contract.oc.route({ method: "GET", path: "/api/invitations/{token}" }).input(TokenParamSchema).output(WorkspaceInvitationSchema),
667
714
  accept: import_contract.oc.route({ method: "POST", path: "/api/invitations/{token}/accept" }).input(TokenParamSchema).output(WorkspaceMemberSchema)
668
715
  };
716
+ var linkTemplatesContract = {
717
+ create: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/link-templates" }).input(WorkspaceIdParamSchema.merge(CreateLinkTemplateInputSchema)).output(LinkTemplateSchema),
718
+ list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/link-templates" }).input(WorkspaceIdParamSchema.merge(LinkTemplateFiltersSchema)).output(PaginatedLinkTemplatesSchema),
719
+ get: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/link-templates/{link_template_id}" }).input(LinkTemplateIdParamSchema).output(LinkTemplateSchema),
720
+ update: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/link-templates/{link_template_id}" }).input(LinkTemplateIdParamSchema.merge(UpdateLinkTemplateInputSchema)).output(LinkTemplateSchema),
721
+ delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/link-templates/{link_template_id}" }).input(LinkTemplateIdParamSchema).output(import_zod12.z.void())
722
+ };
669
723
  var linksContract = {
670
724
  create: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/links" }).input(WorkspaceIdParamSchema.merge(CreateLinkInputSchema)).output(LinkSchema),
671
725
  list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links" }).input(WorkspaceIdParamSchema.merge(LinkFiltersSchema)).output(PaginatedLinksSchema),
672
- exportCsv: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links/export" }).input(WorkspaceIdParamSchema.merge(ExportLinksFiltersSchema)).output(import_zod11.z.instanceof(File)),
726
+ exportCsv: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links/export" }).input(WorkspaceIdParamSchema.merge(ExportLinksFiltersSchema)).output(import_zod12.z.instanceof(File)),
673
727
  get: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema).output(LinkSchema),
674
728
  update: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema.merge(UpdateLinkInputSchema)).output(LinkSchema),
675
- delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema).output(import_zod11.z.void()),
676
- edgeSync: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/links/{link_id}/edge/sync" }).input(LinkIdParamSchema).output(import_zod11.z.void()),
677
- edgeStatus: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links/{link_id}/edge/status" }).input(LinkIdParamSchema).output(import_zod11.z.object({ synced: import_zod11.z.boolean() })),
678
- uploadLogo: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/links/{link_id}/logo" }).input(LinkIdParamSchema.merge(import_zod11.z.object({ file: import_zod11.z.file().mime(["image/png", "image/jpeg", "image/svg+xml", "image/webp"]) }))).output(LinkSchema),
729
+ delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/links/{link_id}" }).input(LinkIdParamSchema).output(import_zod12.z.void()),
730
+ edgeSync: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/links/{link_id}/edge/sync" }).input(LinkIdParamSchema).output(import_zod12.z.void()),
731
+ edgeStatus: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/links/{link_id}/edge/status" }).input(LinkIdParamSchema).output(import_zod12.z.object({ synced: import_zod12.z.boolean() })),
732
+ uploadLogo: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/links/{link_id}/logo" }).input(LinkIdParamSchema.merge(import_zod12.z.object({ file: import_zod12.z.file().mime(["image/png", "image/jpeg", "image/svg+xml", "image/webp"]) }))).output(LinkSchema),
679
733
  deleteLogo: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/links/{link_id}/logo" }).input(LinkIdParamSchema).output(LinkSchema),
680
734
  getJob: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/jobs/{job_id}" }).input(LinkJobIdParamSchema).output(LinkJobSchema),
681
- jobResults: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/jobs/{job_id}/results" }).input(LinkJobIdParamSchema).output(import_zod11.z.object({ url: import_zod11.z.string() }))
735
+ jobResults: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/jobs/{job_id}/results" }).input(LinkJobIdParamSchema).output(import_zod12.z.object({ url: import_zod12.z.string() }))
682
736
  };
683
737
  var tagsContract = {
684
738
  create: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/tags" }).input(WorkspaceIdParamSchema.merge(CreateTagInputSchema)).output(TagSchema),
685
- list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/tags" }).input(WorkspaceIdParamSchema).output(import_zod11.z.array(TagSchema)),
739
+ list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/tags" }).input(WorkspaceIdParamSchema).output(import_zod12.z.array(TagSchema)),
686
740
  get: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema).output(TagSchema),
687
741
  update: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema.merge(UpdateTagInputSchema)).output(TagSchema),
688
- delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema).output(import_zod11.z.void())
742
+ delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/tags/{tag_id}" }).input(TagIdParamSchema).output(import_zod12.z.void())
689
743
  };
690
744
  var domainsContract = {
691
745
  create: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/domains" }).input(WorkspaceIdParamSchema.merge(CreateDomainInputSchema)).output(DomainSchema),
692
- list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/domains" }).input(WorkspaceIdParamSchema).output(import_zod11.z.array(DomainSchema)),
746
+ list: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/domains" }).input(WorkspaceIdParamSchema).output(import_zod12.z.array(DomainSchema)),
693
747
  get: import_contract.oc.route({ method: "GET", path: "/api/workspaces/{workspace_id}/domains/{domain_id}" }).input(DomainIdParamSchema).output(DomainSchema),
694
748
  update: import_contract.oc.route({ method: "PATCH", path: "/api/workspaces/{workspace_id}/domains/{domain_id}" }).input(DomainIdParamSchema.merge(UpdateDomainInputSchema)).output(DomainSchema),
695
- delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/domains/{domain_id}" }).input(DomainIdParamSchema).output(import_zod11.z.void()),
749
+ delete: import_contract.oc.route({ method: "DELETE", path: "/api/workspaces/{workspace_id}/domains/{domain_id}" }).input(DomainIdParamSchema).output(import_zod12.z.void()),
696
750
  verify: import_contract.oc.route({ method: "POST", path: "/api/workspaces/{workspace_id}/domains/{domain_id}/verify" }).input(DomainIdParamSchema).output(DomainSchema)
697
751
  };
698
752
  var billingContract = {
@@ -708,6 +762,7 @@ var contract = {
708
762
  workspaceApiKeys: workspaceApiKeysContract,
709
763
  workspaces: workspacesContract,
710
764
  invitations: invitationsContract,
765
+ linkTemplates: linkTemplatesContract,
711
766
  links: linksContract,
712
767
  tags: tagsContract,
713
768
  domains: domainsContract,
@@ -729,6 +784,7 @@ var contract = {
729
784
  CreateDomainInputSchema,
730
785
  CreateInvitationInputSchema,
731
786
  CreateLinkInputSchema,
787
+ CreateLinkTemplateInputSchema,
732
788
  CreateTagInputSchema,
733
789
  CreateWorkspaceApiKeyInputSchema,
734
790
  CreateWorkspaceApiKeyResponseSchema,
@@ -744,7 +800,11 @@ var contract = {
744
800
  LinkJobIdParamSchema,
745
801
  LinkJobSchema,
746
802
  LinkSchema,
803
+ LinkTemplateFiltersSchema,
804
+ LinkTemplateIdParamSchema,
805
+ LinkTemplateSchema,
747
806
  MemberIdParamSchema,
807
+ PaginatedLinkTemplatesSchema,
748
808
  PaginatedLinksSchema,
749
809
  PlanSchema,
750
810
  PlansOutputSchema,
@@ -759,6 +819,7 @@ var contract = {
759
819
  TransferOwnershipInputSchema,
760
820
  UpdateDomainInputSchema,
761
821
  UpdateLinkInputSchema,
822
+ UpdateLinkTemplateInputSchema,
762
823
  UpdateMemberInputSchema,
763
824
  UpdateTagInputSchema,
764
825
  UpdateUserInputSchema,
@@ -780,6 +841,7 @@ var contract = {
780
841
  contract,
781
842
  domainsContract,
782
843
  invitationsContract,
844
+ linkTemplatesContract,
783
845
  linksContract,
784
846
  tagsContract,
785
847
  usersContract,