@kl1/contracts 1.0.7 → 1.0.9

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 (35) hide show
  1. package/dist/index.js +279 -66
  2. package/dist/index.js.map +1 -1
  3. package/dist/index.mjs +279 -66
  4. package/dist/index.mjs.map +1 -1
  5. package/dist/src/app/index.d.ts +17 -0
  6. package/dist/src/app/index.d.ts.map +1 -0
  7. package/dist/src/chat/index.d.ts +13804 -1345
  8. package/dist/src/chat/index.d.ts.map +1 -1
  9. package/dist/src/chat/schema.d.ts +11 -11
  10. package/dist/src/chat/schema.d.ts.map +1 -1
  11. package/dist/src/chat/validation.d.ts +425 -83
  12. package/dist/src/chat/validation.d.ts.map +1 -1
  13. package/dist/src/contract.d.ts +19265 -20283
  14. package/dist/src/contract.d.ts.map +1 -1
  15. package/dist/src/cx-log/index.d.ts +4 -4
  16. package/dist/src/cx-log/schema.d.ts +2 -2
  17. package/dist/src/extension/index.d.ts +1 -1
  18. package/dist/src/line/index.d.ts +2 -2
  19. package/dist/src/line/validation.d.ts +2 -2
  20. package/dist/src/mail/index.d.ts +13 -0
  21. package/dist/src/mail/index.d.ts.map +1 -0
  22. package/dist/src/mail/mail-contract.d.ts +114 -114
  23. package/dist/src/mail/mail-server.d.ts +216 -0
  24. package/dist/src/mail/mail-server.d.ts.map +1 -0
  25. package/dist/src/mail/message-contract.d.ts +6 -6
  26. package/dist/src/mail/room-contract.d.ts +108 -108
  27. package/dist/src/mail/schemas/message.schema.d.ts +4 -4
  28. package/dist/src/mail/schemas/room-validation.schema.d.ts +3426 -0
  29. package/dist/src/mail/schemas/room-validation.schema.d.ts.map +1 -0
  30. package/dist/src/mail/schemas/room.schema.d.ts +26 -26
  31. package/dist/src/telephony-extension/index.d.ts +193 -3
  32. package/dist/src/telephony-extension/index.d.ts.map +1 -1
  33. package/dist/src/telephony-extension/schema.d.ts +193 -3
  34. package/dist/src/telephony-extension/schema.d.ts.map +1 -1
  35. package/package.json +8 -8
package/dist/index.mjs CHANGED
@@ -477,9 +477,6 @@ var categoryContract = initContract3().router(
477
477
  import { initContract as initContract4 } from "@ts-rest/core";
478
478
  import z19 from "zod";
479
479
 
480
- // src/chat/schema.ts
481
- import z16 from "zod";
482
-
483
480
  // src/contact/schema.ts
484
481
  import z13 from "zod";
485
482
  var ContactSchema = DefaultEntitySchema.extend({
@@ -493,6 +490,9 @@ var ContactSchema = DefaultEntitySchema.extend({
493
490
  socialProfileUrl: z13.string().nullable()
494
491
  });
495
492
 
493
+ // src/chat/schema.ts
494
+ import z16 from "zod";
495
+
496
496
  // src/tag/schema.ts
497
497
  import z14 from "zod";
498
498
  var TagSchema = DefaultEntitySchema.extend({
@@ -513,7 +513,7 @@ var UploadSchema = DefaultEntitySchema.extend({
513
513
  });
514
514
 
515
515
  // src/chat/schema.ts
516
- var ChannelTypeEnumSchema = z16.union([
516
+ var ChannelTypeSchema = z16.union([
517
517
  z16.literal("messenger"),
518
518
  z16.literal("line"),
519
519
  z16.literal("viber"),
@@ -523,17 +523,18 @@ var ChannelTypeEnumSchema = z16.union([
523
523
  z16.literal("telegram"),
524
524
  z16.literal("kakao")
525
525
  ]);
526
- var DirectionEnumSchema = z16.union([
526
+ var MessageDirectionTypeSchema = z16.union([
527
527
  z16.literal("incoming"),
528
- z16.literal("outgoing")
528
+ z16.literal("outgoing"),
529
+ z16.literal("system")
529
530
  ]);
530
- var ChannelStatusEnumSchema = z16.union([
531
+ var ChannelStatusTypeSchema = z16.union([
531
532
  z16.literal(1),
532
533
  // on
533
534
  z16.literal(0)
534
535
  // off
535
536
  ]);
536
- var MessageTypeEnumSchema = z16.union([
537
+ var MessageTypeSchema = z16.union([
537
538
  z16.literal("text"),
538
539
  z16.literal("image"),
539
540
  z16.literal("video"),
@@ -552,7 +553,7 @@ var MessageTypeEnumSchema = z16.union([
552
553
  z16.literal("updated"),
553
554
  z16.literal("started")
554
555
  ]);
555
- var MessageLocaleEnumSchema = z16.union([
556
+ var MessageLocaleTypeSchema = z16.union([
556
557
  z16.literal("mm"),
557
558
  z16.literal("en"),
558
559
  z16.literal("th")
@@ -565,11 +566,11 @@ var ChannelMetadataSchema = z16.object({
565
566
  });
566
567
  var ChannelSchema = DefaultEntitySchema.extend({
567
568
  name: z16.string(),
568
- type: ChannelTypeEnumSchema,
569
+ type: ChannelTypeSchema,
569
570
  metadata: ChannelMetadataSchema,
570
571
  brandName: z16.string(),
571
572
  platformId: z16.string().uuid(),
572
- status: ChannelStatusEnumSchema,
573
+ status: ChannelStatusTypeSchema,
573
574
  isReloginRequired: z16.boolean(),
574
575
  connectedUserName: z16.string(),
575
576
  connectedUserId: z16.string(),
@@ -583,7 +584,7 @@ var PlatformContactMetadataSchema = z16.object({
583
584
  var PlatformContactSchema = DefaultEntitySchema.extend({
584
585
  channelId: z16.string().uuid(),
585
586
  socialPlatformId: z16.string().uuid(),
586
- platform: ChannelTypeEnumSchema,
587
+ platform: ChannelTypeSchema,
587
588
  metadata: PlatformContactMetadataSchema,
588
589
  contact: ContactSchema
589
590
  });
@@ -596,7 +597,7 @@ var RoomSchema = DefaultEntitySchema.extend({
596
597
  unreadCount: z16.number(),
597
598
  firstResponseTime: z16.date(),
598
599
  isLatest: z16.boolean(),
599
- direction: DirectionEnumSchema,
600
+ direction: MessageDirectionTypeSchema,
600
601
  platformContact: PlatformContactSchema,
601
602
  actor: UserSchema,
602
603
  assignee: UserSchema,
@@ -605,8 +606,8 @@ var RoomSchema = DefaultEntitySchema.extend({
605
606
  });
606
607
  var MessageSchema = DefaultEntitySchema.extend({
607
608
  message: z16.string(),
608
- direction: DirectionEnumSchema,
609
- type: MessageTypeEnumSchema,
609
+ direction: MessageDirectionTypeSchema,
610
+ type: MessageTypeSchema,
610
611
  user: UserSchema,
611
612
  readAt: z16.date(),
612
613
  metadata: z16.any(),
@@ -615,7 +616,7 @@ var MessageSchema = DefaultEntitySchema.extend({
615
616
  platformMessageId: z16.string(),
616
617
  upload: UploadSchema,
617
618
  template: z16.any(),
618
- locale: MessageLocaleEnumSchema,
619
+ locale: MessageLocaleTypeSchema,
619
620
  isSent: z16.boolean()
620
621
  });
621
622
  var UnreadCountsByAssigneeSchema = z16.object({
@@ -640,64 +641,255 @@ var CustomFieldSchema = DefaultEntitySchema.extend({
640
641
  // src/chat/validation.ts
641
642
  var ConnectChannelSchema = z18.object({
642
643
  name: z18.string(),
643
- type: ChannelTypeEnumSchema,
644
+ type: ChannelTypeSchema,
644
645
  metadata: ChannelMetadataSchema,
645
646
  brandName: z18.string(),
646
647
  connectedUserName: z18.string(),
647
648
  connectedUserId: z18.string(),
648
649
  actor: UserSchema
649
- }).partial().optional();
650
- var GetRoomsSchema = DefaultQueryParamsSchema.extend({
651
- contactTagIds: z18.string().array().nullable().default([]),
652
- contactIds: z18.string().array().nullable().default([]),
653
- agentIds: z18.string().array().nullable().default([]),
654
- roomStatusTagIds: z18.string().array().nullable().default([]),
655
- keyword: z18.string().nullable(),
656
- company: z18.string().array().nullable().default([]),
657
- name: z18.string().nullable(),
658
- address: z18.string().nullable(),
659
- contactGroups: z18.string().array().nullable().default([]),
660
- selectedDate: z18.string().nullable(),
661
- customFields: CustomFieldSchema,
662
- tags: z18.string().array().nullable().default([]),
663
- phone: z18.string().nullable(),
664
- email: z18.string().nullable(),
665
- notes: z18.string().nullable(),
666
- tab: z18.string().nullable()
667
- }).partial().optional();
650
+ });
651
+ var GetRoomsSchema = z18.object({
652
+ page: z18.coerce.number().positive().default(1),
653
+ pageSize: z18.coerce.number().positive().default(20),
654
+ contactTagIds: z18.string().array().optional(),
655
+ contactIds: z18.string().array().optional(),
656
+ agentIds: z18.string().array().optional(),
657
+ roomTagIds: z18.string().array().optional(),
658
+ keyword: z18.string().optional(),
659
+ company: z18.string().array().optional(),
660
+ channel: z18.string().array().optional(),
661
+ name: z18.string().optional(),
662
+ address: z18.string().optional(),
663
+ contactGroups: z18.string().array().optional(),
664
+ selectedDate: z18.string().optional(),
665
+ customFields: z18.array(CustomFieldSchema).optional(),
666
+ tags: z18.string().array().optional(),
667
+ phone: z18.string().optional(),
668
+ email: z18.string().optional(),
669
+ notes: z18.string().optional(),
670
+ tab: z18.string().optional()
671
+ });
672
+ var UpdateRoomTagsAndNotesSchema = z18.object({
673
+ notes: z18.string().optional(),
674
+ tags: z18.string().array().optional()
675
+ });
676
+ var UpdateRoomAttributesSchema = UpdateRoomTagsAndNotesSchema.extend({
677
+ roomId: z18.string().uuid()
678
+ });
679
+ var MessageAttachmentSchema = z18.object({
680
+ bucketName: z18.string(),
681
+ fileKey: z18.string(),
682
+ fileName: z18.string(),
683
+ fileSize: z18.string(),
684
+ url: z18.string(),
685
+ fileType: MessageTypeSchema,
686
+ thumbnailUrl: z18.string().optional()
687
+ });
688
+ var SendMessageSchema = z18.object({
689
+ platform: ChannelTypeSchema,
690
+ room: z18.string().uuid(),
691
+ messageType: MessageTypeSchema,
692
+ message: z18.string().optional(),
693
+ direction: MessageDirectionTypeSchema,
694
+ messageAttachments: MessageAttachmentSchema,
695
+ user: UserSchema.optional(),
696
+ packageId: z18.number().optional(),
697
+ stickerId: z18.number().optional()
698
+ });
699
+ var SolveRoomSchema = z18.object({
700
+ roomId: z18.string()
701
+ });
702
+ var UpdateAssigneeSchema = SolveRoomSchema.extend({
703
+ assigneeId: z18.string().uuid()
704
+ });
705
+ var SearchRoomsSchema = DefaultQueryParamsSchema.extend({
706
+ query: z18.string()
707
+ });
668
708
 
669
709
  // src/chat/index.ts
670
- var chatContract = initContract4().router({
671
- connectChannel: {
672
- method: "POST",
673
- path: "connect",
674
- headers: DefaultHeaderSchema,
675
- responses: {
676
- 200: DefaultSuccessResponseSchema.extend({
677
- channel: ChannelSchema
678
- })
710
+ var chatContract = initContract4().router(
711
+ {
712
+ getRooms: {
713
+ method: "GET",
714
+ path: "/rooms",
715
+ responses: {
716
+ 200: DefaultSuccessResponseSchema.extend({
717
+ total: z19.number(),
718
+ page: z19.number(),
719
+ pageSize: z19.number(),
720
+ data: z19.array(RoomSchema),
721
+ unreadCountsByAssignee: z19.array(UnreadCountsByAssigneeSchema)
722
+ }),
723
+ 401: DefaultUnauthorizedSchema
724
+ },
725
+ query: GetRoomsSchema,
726
+ summary: "Get rooms"
679
727
  },
680
- body: ConnectChannelSchema,
681
- summary: "Connect message channel"
682
- },
683
- getRooms: {
684
- method: "GET",
685
- path: "/rooms",
686
- responses: {
687
- 200: DefaultSuccessResponseSchema.extend({
688
- total: z19.number(),
689
- page: z19.number(),
690
- pageSize: z19.number(),
691
- data: z19.array(RoomSchema),
692
- unreadCountsByAssignee: z19.array(UnreadCountsByAssigneeSchema)
728
+ getRoomContact: {
729
+ method: "GET",
730
+ path: "/contact/:contactId",
731
+ pathParams: z19.object({
732
+ contactId: z19.string().uuid()
693
733
  }),
694
- 401: DefaultUnauthorizedSchema
734
+ responses: {
735
+ 200: DefaultSuccessResponseSchema.extend({
736
+ data: ContactSchema
737
+ })
738
+ },
739
+ summary: "Get Contacts"
695
740
  },
696
- headers: DefaultHeaderSchema,
697
- query: GetRoomsSchema,
698
- summary: "Get rooms"
741
+ updateRoomAttributes: {
742
+ method: "PUT",
743
+ path: "/room",
744
+ body: UpdateRoomAttributesSchema,
745
+ responses: {
746
+ 200: DefaultSuccessResponseSchema.extend({
747
+ data: RoomSchema
748
+ })
749
+ },
750
+ summary: "Update room attributes"
751
+ },
752
+ updateRoomTagsAndNotes: {
753
+ method: "PATCH",
754
+ path: "/room/:roomId",
755
+ body: UpdateRoomAttributesSchema,
756
+ responses: {
757
+ 200: DefaultSuccessResponseSchema.extend({
758
+ data: RoomSchema
759
+ })
760
+ },
761
+ summary: "Update room tags and notes"
762
+ },
763
+ sendMessage: {
764
+ method: "POST",
765
+ path: "/message",
766
+ body: SendMessageSchema,
767
+ responses: {
768
+ 200: DefaultSuccessResponseSchema.extend({
769
+ data: MessageSchema
770
+ })
771
+ },
772
+ summary: "Send message to room"
773
+ },
774
+ getMessages: {
775
+ method: "GET",
776
+ path: "/message/:roomId",
777
+ pathParams: z19.object({
778
+ roomId: z19.string().uuid()
779
+ }),
780
+ responses: {
781
+ 200: DefaultSuccessResponseSchema.extend({
782
+ data: z19.array(MessageSchema)
783
+ })
784
+ },
785
+ summary: "Get messages"
786
+ },
787
+ solveRoom: {
788
+ method: "POST",
789
+ path: "/room/solve",
790
+ body: SolveRoomSchema,
791
+ responses: {
792
+ 200: DefaultSuccessResponseSchema.extend({
793
+ data: RoomSchema
794
+ }),
795
+ 409: DefaultErrorResponseSchema
796
+ },
797
+ summary: "Solve room"
798
+ },
799
+ updateAssignee: {
800
+ method: "POST",
801
+ path: "/room/assignee/update",
802
+ body: UpdateAssigneeSchema,
803
+ responses: {
804
+ 200: DefaultSuccessResponseSchema.extend({
805
+ data: RoomSchema
806
+ })
807
+ },
808
+ summary: "Update room assignee"
809
+ },
810
+ getRoom: {
811
+ method: "GET",
812
+ path: "/room/:roomId",
813
+ pathParams: z19.object({
814
+ roomId: z19.string().uuid()
815
+ }),
816
+ responses: {
817
+ 200: DefaultSuccessResponseSchema.extend({
818
+ data: RoomSchema
819
+ }),
820
+ 404: DefaultErrorResponseSchema
821
+ },
822
+ summary: "Get Room by id"
823
+ },
824
+ createRoom: {
825
+ method: "POST",
826
+ path: "/room/create/:roomid",
827
+ pathParams: z19.object({
828
+ roomid: z19.string().uuid()
829
+ }),
830
+ responses: {
831
+ 200: DefaultSuccessResponseSchema.extend({
832
+ data: RoomSchema.extend({
833
+ contact: ContactSchema
834
+ })
835
+ })
836
+ },
837
+ body: null,
838
+ summary: "Create new latest room by room id"
839
+ },
840
+ readRoom: {
841
+ method: "POST",
842
+ path: "/room/:roomid/read",
843
+ pathParams: z19.object({
844
+ roomid: z19.string().uuid()
845
+ }),
846
+ responses: {
847
+ 200: DefaultSuccessResponseSchema.extend({
848
+ data: RoomSchema.extend({
849
+ description: z19.string().nullable()
850
+ })
851
+ })
852
+ },
853
+ body: null,
854
+ summary: "Read room messages by room id"
855
+ },
856
+ searchRooms: {
857
+ method: "GET",
858
+ path: "/search",
859
+ responses: {
860
+ 200: DefaultSuccessResponseSchema.extend({
861
+ data: z19.array(RoomSchema)
862
+ })
863
+ },
864
+ query: SearchRoomsSchema,
865
+ summary: "Search Rooms"
866
+ },
867
+ connectChannel: {
868
+ method: "POST",
869
+ path: "connect",
870
+ responses: {
871
+ 200: DefaultSuccessResponseSchema.extend({
872
+ channel: ChannelSchema
873
+ })
874
+ },
875
+ body: ConnectChannelSchema,
876
+ summary: "Connect message channel"
877
+ },
878
+ getChannels: {
879
+ method: "GET",
880
+ path: "/channels",
881
+ responses: {
882
+ 200: DefaultSuccessResponseSchema.extend({
883
+ channels: ChannelSchema
884
+ })
885
+ },
886
+ summary: "Get Channels"
887
+ }
888
+ },
889
+ {
890
+ baseHeaders: DefaultHeaderSchema
699
891
  }
700
- });
892
+ );
701
893
 
702
894
  // src/cx-log/index.ts
703
895
  import { initContract as initContract5 } from "@ts-rest/core";
@@ -1617,7 +1809,7 @@ var extensionContract = initContract14().router(
1617
1809
  },
1618
1810
  getExtensionByUserId: {
1619
1811
  method: "GET",
1620
- path: "",
1812
+ path: "/user/:userId",
1621
1813
  pathParams: z40.object({ userId: z40.string() }),
1622
1814
  headers: DefaultHeaderSchema,
1623
1815
  responses: {
@@ -2177,7 +2369,29 @@ var TelephonyExtensionSchema = z52.object({
2177
2369
  errcode: z52.coerce.number(),
2178
2370
  errmsg: z52.string(),
2179
2371
  total_number: z52.coerce.number(),
2180
- data: z52.array(z52.object({}))
2372
+ data: z52.array(
2373
+ z52.object({
2374
+ id: z52.coerce.number(),
2375
+ online_status: z52.object({
2376
+ fx_phone: z52.object({ status: z52.coerce.number() }),
2377
+ sip_phone: z52.object({
2378
+ status: z52.coerce.number(),
2379
+ ext_dev_type: z52.string().optional()
2380
+ }),
2381
+ linkus_desktop: z52.object({ status: z52.coerce.number() }),
2382
+ linkus_mobile: z52.object({ status: z52.coerce.number() }),
2383
+ linkus_web: z52.object({
2384
+ status: z52.coerce.number(),
2385
+ ext_dev_type: z52.string().optional()
2386
+ })
2387
+ }).optional(),
2388
+ presence_status: z52.string().optional(),
2389
+ number: z52.string().optional(),
2390
+ call_id_name: z52.string().optional(),
2391
+ role_name: z52.string().optional(),
2392
+ email_addr: z52.string().optional()
2393
+ })
2394
+ )
2181
2395
  });
2182
2396
 
2183
2397
  // src/telephony-extension/index.ts
@@ -2271,7 +2485,6 @@ var awsContract = initContract21().router(
2271
2485
  var apiContract = initContract22().router({
2272
2486
  auth: authContract,
2273
2487
  mail: mailContract,
2274
- mailRoom: mailContract,
2275
2488
  cxLog: cxLogContract,
2276
2489
  permission: permissionContract,
2277
2490
  role: roleContract,