supercompat 1.0.4 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -443,26 +443,19 @@ var perplexityClientAdapter = function(param) {
443
443
  };
444
444
  // src/adapters/run/completionsRunAdapter/index.ts
445
445
  var import_lodash = __toESM(require("lodash"), 1);
446
- var import_radash4 = require("radash");
446
+ var import_radash3 = require("radash");
447
447
  var import_dayjs = __toESM(require("dayjs"), 1);
448
448
  // src/adapters/run/completionsRunAdapter/messages.ts
449
- var import_radash3 = require("radash");
450
- // src/adapters/run/completionsRunAdapter/serializeMessage.ts
451
449
  var import_radash2 = require("radash");
452
- var serializeToolCalls = function(param) {
453
- var runStep = param.runStep;
454
- if (runStep.step_details.type !== "tool_calls") return [];
455
- var functionToolCalls = runStep.step_details.tool_calls.filter(function(tc) {
456
- return tc.type === "function";
457
- });
458
- return functionToolCalls.map(function(toolCall) {
459
- return {
460
- tool_call_id: toolCall.id,
461
- role: "tool",
462
- name: toolCall.function.name,
463
- content: toolCall.function.output
464
- };
465
- });
450
+ // src/adapters/run/completionsRunAdapter/serializeMessage.ts
451
+ var serializeToolCall = function(param) {
452
+ var toolCall = param.toolCall;
453
+ return {
454
+ tool_call_id: toolCall.id,
455
+ role: "tool",
456
+ name: toolCall.function.name,
457
+ content: toolCall.function.output
458
+ };
466
459
  };
467
460
  var serializeMessageWithContent = function(param) {
468
461
  var message = param.message;
@@ -490,42 +483,48 @@ var serializeMessage = function(param) {
490
483
  message: message
491
484
  })
492
485
  ];
493
- if (!message.run) return result;
494
- if ((0, import_radash2.isEmpty)((_message_metadata = message.metadata) === null || _message_metadata === void 0 ? void 0 : _message_metadata.toolCalls)) return result;
495
- var toolCallsRunSteps = message.run.runSteps.filter(function(runStep) {
496
- return runStep.type === "tool_calls";
497
- });
498
- toolCallsRunSteps.forEach(function(runStep) {
499
- var _result;
500
- (_result = result).push.apply(_result, _to_consumable_array(serializeToolCalls({
501
- runStep: runStep
502
- })));
503
- });
504
- console.dir({
505
- result: result
506
- }, {
507
- depth: null
486
+ var run = message.run;
487
+ if (!run) return result;
488
+ var messageToolCalls = ((_message_metadata = message.metadata) === null || _message_metadata === void 0 ? void 0 : _message_metadata.toolCalls) || [];
489
+ messageToolCalls.forEach(function(tc) {
490
+ var runStep = run.runSteps.find(function(rs) {
491
+ if (rs.type !== "tool_calls") return false;
492
+ return rs.step_details.tool_calls.some(function(rsTc) {
493
+ if (rsTc.type !== "function") return false;
494
+ return rsTc.id === tc.id;
495
+ });
496
+ });
497
+ if (!runStep) return;
498
+ var toolCall = runStep.step_details.tool_calls.find(function(rsTc) {
499
+ if (rsTc.type !== "function") return false;
500
+ return rsTc.id === tc.id;
501
+ });
502
+ result.push(serializeToolCall({
503
+ toolCall: toolCall
504
+ }));
508
505
  });
509
506
  return result;
510
507
  };
511
508
  // src/adapters/run/completionsRunAdapter/messages.ts
512
509
  var messages = function() {
513
510
  var _ref = _async_to_generator(function(param) {
514
- var run, getMessages2, _, _1, _2;
511
+ var run, getMessages2, messagesHistoryLength, _, _1, _2;
515
512
  return _ts_generator(this, function(_state) {
516
513
  switch(_state.label){
517
514
  case 0:
518
- run = param.run, getMessages2 = param.getMessages;
515
+ run = param.run, getMessages2 = param.getMessages, messagesHistoryLength = param.messagesHistoryLength;
519
516
  _1 = (_ = _to_consumable_array(run.instructions ? [
520
517
  {
521
518
  role: "system",
522
519
  content: run.instructions
523
520
  }
524
521
  ] : [])).concat;
525
- _2 = (0, import_radash3.flat);
522
+ _2 = (0, import_radash2.flat);
526
523
  return [
527
524
  4,
528
- getMessages2()
525
+ getMessages2({
526
+ messagesHistoryLength: messagesHistoryLength
527
+ })
529
528
  ];
530
529
  case 1:
531
530
  return [
@@ -552,7 +551,7 @@ var messages = function() {
552
551
  // src/adapters/run/completionsRunAdapter/index.ts
553
552
  var updatedToolCall = function(param) {
554
553
  var toolCall = param.toolCall, delta = param.delta;
555
- if (!toolCall) return (0, import_radash4.omit)(delta, [
554
+ if (!toolCall) return (0, import_radash3.omit)(delta, [
556
555
  "index"
557
556
  ]);
558
557
  var result = import_lodash.default.cloneDeep(toolCall);
@@ -584,9 +583,9 @@ var toolCallsData = function(param) {
584
583
  if (!prevToolCalls) {
585
584
  return delta.tool_calls.map(function(tc) {
586
585
  return _object_spread({
587
- id: (0, import_radash4.uid)(24),
586
+ id: (0, import_radash3.uid)(24),
588
587
  type: "function"
589
- }, (0, import_radash4.omit)(tc, [
588
+ }, (0, import_radash3.omit)(tc, [
590
589
  "index"
591
590
  ]));
592
591
  });
@@ -617,177 +616,110 @@ var toolCallsData = function(param) {
617
616
  }
618
617
  return newToolCalls;
619
618
  };
620
- var completionsRunAdapter = function() {
621
- var _ref = _async_to_generator(function(param) {
622
- var client, run, onEvent2, getMessages2, opts, _tmp, providerResponse, e, message, toolCallsRunStep, currentContent, currentToolCalls, _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, chunk, delta, _delta_content, err;
623
- return _ts_generator(this, function(_state) {
624
- switch(_state.label){
625
- case 0:
626
- client = param.client, run = param.run, onEvent2 = param.onEvent, getMessages2 = param.getMessages;
627
- if (run.status !== "queued") return [
628
- 2
629
- ];
630
- onEvent2({
631
- event: "thread.run.in_progress",
632
- data: _object_spread_props(_object_spread({}, run), {
633
- status: "in_progress"
634
- })
635
- });
636
- _tmp = {};
637
- return [
638
- 4,
639
- messages({
640
- run: run,
641
- getMessages: getMessages2
642
- })
643
- ];
644
- case 1:
645
- opts = _object_spread.apply(void 0, [
646
- (_tmp.messages = _state.sent(), _tmp.model = run.model, _tmp.stream = true, _tmp),
647
- (0, import_radash4.isEmpty)(run.tools) ? {} : {
648
- tools: run.tools
649
- }
650
- ]);
651
- console.dir({
652
- opts: opts
653
- }, {
654
- depth: null
655
- });
656
- _state.label = 2;
657
- case 2:
658
- _state.trys.push([
659
- 2,
660
- 4,
661
- ,
662
- 5
663
- ]);
664
- return [
665
- 4,
666
- client.chat.completions.create(opts)
667
- ];
668
- case 3:
669
- providerResponse = _state.sent();
670
- return [
671
- 3,
672
- 5
673
- ];
674
- case 4:
675
- e = _state.sent();
676
- console.error(e);
677
- return [
678
- 2,
619
+ var completionsRunAdapter = function(param) {
620
+ var _param_messagesHistoryLength = param.messagesHistoryLength, messagesHistoryLength = _param_messagesHistoryLength === void 0 ? 10 : _param_messagesHistoryLength;
621
+ return function() {
622
+ var _ref = _async_to_generator(function(param) {
623
+ var client, run, onEvent2, getMessages2, opts, _tmp, providerResponse, e, message, toolCallsRunStep, currentContent, currentToolCalls, _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, chunk, delta, _delta_content, err;
624
+ return _ts_generator(this, function(_state) {
625
+ switch(_state.label){
626
+ case 0:
627
+ client = param.client, run = param.run, onEvent2 = param.onEvent, getMessages2 = param.getMessages;
628
+ if (run.status !== "queued") return [
629
+ 2
630
+ ];
679
631
  onEvent2({
680
- event: "thread.run.failed",
632
+ event: "thread.run.in_progress",
681
633
  data: _object_spread_props(_object_spread({}, run), {
682
- failed_at: (0, import_dayjs.default)().unix(),
683
- status: "in_progress",
684
- last_error: e.message
685
- })
686
- })
687
- ];
688
- case 5:
689
- return [
690
- 4,
691
- onEvent2({
692
- event: "thread.message.created",
693
- data: {
694
- id: "THERE_IS_A_BUG_IN_SUPERCOMPAT_IF_YOU_SEE_THIS_ID",
695
- object: "thread.message",
696
- completed_at: null,
697
- run_id: run.id,
698
- created_at: (0, import_dayjs.default)().unix(),
699
- assistant_id: run.assistant_id,
700
- incomplete_at: null,
701
- incomplete_details: null,
702
- metadata: {},
703
- file_ids: [],
704
- thread_id: run.thread_id,
705
- content: [
706
- {
707
- text: {
708
- value: "",
709
- annotations: []
710
- },
711
- type: "text"
712
- }
713
- ],
714
- role: "assistant",
715
634
  status: "in_progress"
635
+ })
636
+ });
637
+ _tmp = {};
638
+ return [
639
+ 4,
640
+ messages({
641
+ run: run,
642
+ getMessages: getMessages2,
643
+ messagesHistoryLength: messagesHistoryLength
644
+ })
645
+ ];
646
+ case 1:
647
+ opts = _object_spread.apply(void 0, [
648
+ (_tmp.messages = _state.sent(), _tmp.model = run.model, _tmp.stream = true, _tmp),
649
+ (0, import_radash3.isEmpty)(run.tools) ? {} : {
650
+ tools: run.tools
716
651
  }
717
- })
718
- ];
719
- case 6:
720
- message = _state.sent();
721
- onEvent2({
722
- event: "thread.run.step.created",
723
- data: {
724
- id: "THERE_IS_A_BUG_IN_SUPERCOMPAT_IF_YOU_SEE_THIS_ID",
725
- object: "thread.run.step",
726
- run_id: run.id,
727
- assistant_id: run.assistant_id,
728
- thread_id: run.thread_id,
729
- type: "message_creation",
730
- status: "completed",
731
- completed_at: (0, import_dayjs.default)().unix(),
732
- created_at: (0, import_dayjs.default)().unix(),
733
- expired_at: null,
734
- last_error: null,
735
- metadata: {},
736
- failed_at: null,
737
- cancelled_at: null,
738
- usage: null,
739
- step_details: {
740
- type: "message_creation",
741
- message_creation: {
742
- message_id: message.id
652
+ ]);
653
+ console.dir({
654
+ opts: opts
655
+ }, {
656
+ depth: null
657
+ });
658
+ _state.label = 2;
659
+ case 2:
660
+ _state.trys.push([
661
+ 2,
662
+ 4,
663
+ ,
664
+ 5
665
+ ]);
666
+ return [
667
+ 4,
668
+ client.chat.completions.create(opts)
669
+ ];
670
+ case 3:
671
+ providerResponse = _state.sent();
672
+ return [
673
+ 3,
674
+ 5
675
+ ];
676
+ case 4:
677
+ e = _state.sent();
678
+ console.error(e);
679
+ return [
680
+ 2,
681
+ onEvent2({
682
+ event: "thread.run.failed",
683
+ data: _object_spread_props(_object_spread({}, run), {
684
+ failed_at: (0, import_dayjs.default)().unix(),
685
+ status: "in_progress",
686
+ last_error: e.message
687
+ })
688
+ })
689
+ ];
690
+ case 5:
691
+ return [
692
+ 4,
693
+ onEvent2({
694
+ event: "thread.message.created",
695
+ data: {
696
+ id: "THERE_IS_A_BUG_IN_SUPERCOMPAT_IF_YOU_SEE_THIS_ID",
697
+ object: "thread.message",
698
+ completed_at: null,
699
+ run_id: run.id,
700
+ created_at: (0, import_dayjs.default)().unix(),
701
+ assistant_id: run.assistant_id,
702
+ incomplete_at: null,
703
+ incomplete_details: null,
704
+ metadata: {},
705
+ file_ids: [],
706
+ thread_id: run.thread_id,
707
+ content: [
708
+ {
709
+ text: {
710
+ value: "",
711
+ annotations: []
712
+ },
713
+ type: "text"
714
+ }
715
+ ],
716
+ role: "assistant",
717
+ status: "in_progress"
743
718
  }
744
- }
745
- }
746
- });
747
- currentContent = "";
748
- console.dir({
749
- providerResponse: providerResponse
750
- }, {
751
- depth: null
752
- });
753
- _iteratorAbruptCompletion = false, _didIteratorError = false;
754
- _state.label = 7;
755
- case 7:
756
- _state.trys.push([
757
- 7,
758
- 15,
759
- 16,
760
- 21
761
- ]);
762
- _iterator = _async_iterator(providerResponse);
763
- _state.label = 8;
764
- case 8:
765
- return [
766
- 4,
767
- _iterator.next()
768
- ];
769
- case 9:
770
- if (!(_iteratorAbruptCompletion = !(_step = _state.sent()).done)) return [
771
- 3,
772
- 14
773
- ];
774
- _value = _step.value;
775
- chunk = _value;
776
- delta = chunk.choices[0].delta;
777
- if (delta.content) {
778
- ;
779
- currentContent = "".concat(currentContent).concat((_delta_content = delta.content) !== null && _delta_content !== void 0 ? _delta_content : "");
780
- }
781
- if (!delta.tool_calls) return [
782
- 3,
783
- 12
784
- ];
785
- if (!!toolCallsRunStep) return [
786
- 3,
787
- 11
788
- ];
789
- return [
790
- 4,
719
+ })
720
+ ];
721
+ case 6:
722
+ message = _state.sent();
791
723
  onEvent2({
792
724
  event: "thread.run.step.created",
793
725
  data: {
@@ -796,9 +728,9 @@ var completionsRunAdapter = function() {
796
728
  run_id: run.id,
797
729
  assistant_id: run.assistant_id,
798
730
  thread_id: run.thread_id,
799
- type: "tool_calls",
800
- status: "in_progress",
801
- completed_at: null,
731
+ type: "message_creation",
732
+ status: "completed",
733
+ completed_at: (0, import_dayjs.default)().unix(),
802
734
  created_at: (0, import_dayjs.default)().unix(),
803
735
  expired_at: null,
804
736
  last_error: null,
@@ -807,170 +739,241 @@ var completionsRunAdapter = function() {
807
739
  cancelled_at: null,
808
740
  usage: null,
809
741
  step_details: {
810
- type: "tool_calls",
811
- tool_calls: []
742
+ type: "message_creation",
743
+ message_creation: {
744
+ message_id: message.id
745
+ }
812
746
  }
813
747
  }
814
- })
815
- ];
816
- case 10:
817
- toolCallsRunStep = _state.sent();
818
- _state.label = 11;
819
- case 11:
820
- onEvent2({
821
- event: "thread.run.step.delta",
822
- data: {
823
- object: "thread.run.step.delta",
824
- run_id: run.id,
825
- id: toolCallsRunStep.id,
826
- delta: {
827
- step_details: {
748
+ });
749
+ currentContent = "";
750
+ console.dir({
751
+ providerResponse: providerResponse
752
+ }, {
753
+ depth: null
754
+ });
755
+ _iteratorAbruptCompletion = false, _didIteratorError = false;
756
+ _state.label = 7;
757
+ case 7:
758
+ _state.trys.push([
759
+ 7,
760
+ 15,
761
+ 16,
762
+ 21
763
+ ]);
764
+ _iterator = _async_iterator(providerResponse);
765
+ _state.label = 8;
766
+ case 8:
767
+ return [
768
+ 4,
769
+ _iterator.next()
770
+ ];
771
+ case 9:
772
+ if (!(_iteratorAbruptCompletion = !(_step = _state.sent()).done)) return [
773
+ 3,
774
+ 14
775
+ ];
776
+ _value = _step.value;
777
+ chunk = _value;
778
+ delta = chunk.choices[0].delta;
779
+ if (delta.content) {
780
+ ;
781
+ currentContent = "".concat(currentContent).concat((_delta_content = delta.content) !== null && _delta_content !== void 0 ? _delta_content : "");
782
+ }
783
+ if (!delta.tool_calls) return [
784
+ 3,
785
+ 12
786
+ ];
787
+ if (!!toolCallsRunStep) return [
788
+ 3,
789
+ 11
790
+ ];
791
+ return [
792
+ 4,
793
+ onEvent2({
794
+ event: "thread.run.step.created",
795
+ data: {
796
+ id: "THERE_IS_A_BUG_IN_SUPERCOMPAT_IF_YOU_SEE_THIS_ID",
797
+ object: "thread.run.step",
798
+ run_id: run.id,
799
+ assistant_id: run.assistant_id,
800
+ thread_id: run.thread_id,
828
801
  type: "tool_calls",
829
- tool_calls: delta.tool_calls.map(function(tc) {
830
- return _object_spread({
831
- id: (0, import_radash4.uid)(24),
832
- type: "function"
833
- }, tc);
834
- })
802
+ status: "in_progress",
803
+ completed_at: null,
804
+ created_at: (0, import_dayjs.default)().unix(),
805
+ expired_at: null,
806
+ last_error: null,
807
+ metadata: {},
808
+ failed_at: null,
809
+ cancelled_at: null,
810
+ usage: null,
811
+ step_details: {
812
+ type: "tool_calls",
813
+ tool_calls: []
814
+ }
835
815
  }
836
- }
837
- }
838
- });
839
- currentToolCalls = toolCallsData({
840
- prevToolCalls: currentToolCalls,
841
- delta: delta
842
- });
843
- _state.label = 12;
844
- case 12:
845
- if (delta.content) {
816
+ })
817
+ ];
818
+ case 10:
819
+ toolCallsRunStep = _state.sent();
820
+ _state.label = 11;
821
+ case 11:
846
822
  onEvent2({
847
- event: "thread.message.delta",
823
+ event: "thread.run.step.delta",
848
824
  data: {
849
- id: message.id,
825
+ object: "thread.run.step.delta",
826
+ run_id: run.id,
827
+ id: toolCallsRunStep.id,
850
828
  delta: {
851
- content: [
852
- {
853
- type: "text",
854
- index: 0,
855
- text: {
856
- value: delta.content
857
- }
858
- }
859
- ]
829
+ step_details: {
830
+ type: "tool_calls",
831
+ tool_calls: delta.tool_calls.map(function(tc) {
832
+ return _object_spread({
833
+ id: (0, import_radash3.uid)(24),
834
+ type: "function"
835
+ }, tc);
836
+ })
837
+ }
860
838
  }
861
839
  }
862
840
  });
863
- }
864
- _state.label = 13;
865
- case 13:
866
- _iteratorAbruptCompletion = false;
867
- return [
868
- 3,
869
- 8
870
- ];
871
- case 14:
872
- return [
873
- 3,
874
- 21
875
- ];
876
- case 15:
877
- err = _state.sent();
878
- _didIteratorError = true;
879
- _iteratorError = err;
880
- return [
881
- 3,
882
- 21
883
- ];
884
- case 16:
885
- _state.trys.push([
886
- 16,
887
- ,
888
- 19,
889
- 20
890
- ]);
891
- if (!(_iteratorAbruptCompletion && _iterator.return != null)) return [
892
- 3,
893
- 18
894
- ];
895
- return [
896
- 4,
897
- _iterator.return()
898
- ];
899
- case 17:
900
- _state.sent();
901
- _state.label = 18;
902
- case 18:
903
- return [
904
- 3,
905
- 20
906
- ];
907
- case 19:
908
- if (_didIteratorError) {
909
- throw _iteratorError;
910
- }
911
- return [
912
- 7
913
- ];
914
- case 20:
915
- return [
916
- 7
917
- ];
918
- case 21:
919
- return [
920
- 4,
921
- onEvent2({
922
- event: "thread.message.completed",
923
- data: _object_spread_props(_object_spread({}, message), {
924
- status: "completed",
925
- content: [
926
- {
927
- text: {
928
- value: currentContent,
929
- annotations: []
930
- },
931
- type: "text"
841
+ currentToolCalls = toolCallsData({
842
+ prevToolCalls: currentToolCalls,
843
+ delta: delta
844
+ });
845
+ _state.label = 12;
846
+ case 12:
847
+ if (delta.content) {
848
+ onEvent2({
849
+ event: "thread.message.delta",
850
+ data: {
851
+ id: message.id,
852
+ delta: {
853
+ content: [
854
+ {
855
+ type: "text",
856
+ index: 0,
857
+ text: {
858
+ value: delta.content
859
+ }
860
+ }
861
+ ]
932
862
  }
933
- ],
934
- tool_calls: currentToolCalls
935
- })
936
- })
937
- ];
938
- case 22:
939
- message = _state.sent();
940
- if ((0, import_radash4.isEmpty)(message.toolCalls)) {
863
+ }
864
+ });
865
+ }
866
+ _state.label = 13;
867
+ case 13:
868
+ _iteratorAbruptCompletion = false;
941
869
  return [
942
- 2,
870
+ 3,
871
+ 8
872
+ ];
873
+ case 14:
874
+ return [
875
+ 3,
876
+ 21
877
+ ];
878
+ case 15:
879
+ err = _state.sent();
880
+ _didIteratorError = true;
881
+ _iteratorError = err;
882
+ return [
883
+ 3,
884
+ 21
885
+ ];
886
+ case 16:
887
+ _state.trys.push([
888
+ 16,
889
+ ,
890
+ 19,
891
+ 20
892
+ ]);
893
+ if (!(_iteratorAbruptCompletion && _iterator.return != null)) return [
894
+ 3,
895
+ 18
896
+ ];
897
+ return [
898
+ 4,
899
+ _iterator.return()
900
+ ];
901
+ case 17:
902
+ _state.sent();
903
+ _state.label = 18;
904
+ case 18:
905
+ return [
906
+ 3,
907
+ 20
908
+ ];
909
+ case 19:
910
+ if (_didIteratorError) {
911
+ throw _iteratorError;
912
+ }
913
+ return [
914
+ 7
915
+ ];
916
+ case 20:
917
+ return [
918
+ 7
919
+ ];
920
+ case 21:
921
+ return [
922
+ 4,
943
923
  onEvent2({
944
- event: "thread.run.completed",
945
- data: _object_spread_props(_object_spread({}, run), {
924
+ event: "thread.message.completed",
925
+ data: _object_spread_props(_object_spread({}, message), {
946
926
  status: "completed",
947
- completed_at: (0, import_dayjs.default)().unix()
927
+ content: [
928
+ {
929
+ text: {
930
+ value: currentContent,
931
+ annotations: []
932
+ },
933
+ type: "text"
934
+ }
935
+ ],
936
+ tool_calls: currentToolCalls
948
937
  })
949
938
  })
950
939
  ];
951
- }
952
- return [
953
- 2,
954
- onEvent2({
955
- event: "thread.run.requires_action",
956
- data: _object_spread_props(_object_spread({}, run), {
957
- status: "requires_action",
958
- required_action: {
959
- type: "submit_tool_outputs",
960
- submit_tool_outputs: {
961
- tool_calls: message.toolCalls
940
+ case 22:
941
+ message = _state.sent();
942
+ if ((0, import_radash3.isEmpty)(message.toolCalls)) {
943
+ return [
944
+ 2,
945
+ onEvent2({
946
+ event: "thread.run.completed",
947
+ data: _object_spread_props(_object_spread({}, run), {
948
+ status: "completed",
949
+ completed_at: (0, import_dayjs.default)().unix()
950
+ })
951
+ })
952
+ ];
953
+ }
954
+ return [
955
+ 2,
956
+ onEvent2({
957
+ event: "thread.run.requires_action",
958
+ data: _object_spread_props(_object_spread({}, run), {
959
+ status: "requires_action",
960
+ required_action: {
961
+ type: "submit_tool_outputs",
962
+ submit_tool_outputs: {
963
+ tool_calls: message.toolCalls
964
+ }
962
965
  }
963
- }
966
+ })
964
967
  })
965
- })
966
- ];
967
- }
968
+ ];
969
+ }
970
+ });
968
971
  });
969
- });
970
- return function completionsRunAdapter(_) {
971
- return _ref.apply(this, arguments);
972
- };
973
- }();
972
+ return function(_) {
973
+ return _ref.apply(this, arguments);
974
+ };
975
+ }();
976
+ };
974
977
  // src/adapters/storage/prismaStorageAdapter/beta/threads/create.ts
975
978
  var import_dayjs3 = __toESM(require("dayjs"), 1);
976
979
  // src/adapters/storage/prismaStorageAdapter/beta/threads/serializeThread.ts
@@ -1044,10 +1047,10 @@ var create = function(param) {
1044
1047
  });
1045
1048
  };
1046
1049
  // src/adapters/storage/prismaStorageAdapter/beta/threads/messages/list.ts
1047
- var import_radash6 = require("radash");
1050
+ var import_radash5 = require("radash");
1048
1051
  // src/adapters/storage/prismaStorageAdapter/beta/threads/messages/serializeMessage.ts
1049
1052
  var import_dayjs4 = __toESM(require("dayjs"), 1);
1050
- var import_radash5 = require("radash");
1053
+ var import_radash4 = require("radash");
1051
1054
  var serializeMessage2 = function(param) {
1052
1055
  var message = param.message;
1053
1056
  var _message_metadata;
@@ -1065,9 +1068,9 @@ var serializeMessage2 = function(param) {
1065
1068
  run_id: message.runId,
1066
1069
  file_ids: message.fileIds,
1067
1070
  status: message.status.toLowerCase(),
1068
- metadata: (0, import_radash5.assign)((_message_metadata = message.metadata) !== null && _message_metadata !== void 0 ? _message_metadata : {}, {
1071
+ metadata: (0, import_radash4.assign)((_message_metadata = message.metadata) !== null && _message_metadata !== void 0 ? _message_metadata : {}, message.toolCalls ? {
1069
1072
  toolCalls: message.toolCalls
1070
- })
1073
+ } : {})
1071
1074
  };
1072
1075
  };
1073
1076
  // src/adapters/storage/prismaStorageAdapter/beta/threads/messages/list.ts
@@ -1085,7 +1088,7 @@ var list = function(param) {
1085
1088
  args[_key] = _arguments[_key];
1086
1089
  }
1087
1090
  threadId = args[0];
1088
- _ref = (0, import_radash6.assign)({
1091
+ _ref = (0, import_radash5.assign)({
1089
1092
  // @ts-ignore-next-line
1090
1093
  limit: 20,
1091
1094
  order: "desc"
@@ -1116,7 +1119,7 @@ var list = function(param) {
1116
1119
  return false;
1117
1120
  },
1118
1121
  body: {
1119
- last_id: (_id = (_this = (0, import_radash6.last)(messages3)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
1122
+ last_id: (_id = (_this = (0, import_radash5.last)(messages3)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
1120
1123
  }
1121
1124
  }
1122
1125
  ];
@@ -1187,7 +1190,7 @@ var messages2 = function(param) {
1187
1190
  };
1188
1191
  };
1189
1192
  // src/adapters/storage/prismaStorageAdapter/beta/threads/runs/list.ts
1190
- var import_radash7 = require("radash");
1193
+ var import_radash6 = require("radash");
1191
1194
  // src/adapters/storage/prismaStorageAdapter/beta/threads/runs/serializeRun.ts
1192
1195
  var import_dayjs5 = __toESM(require("dayjs"), 1);
1193
1196
  var serializeRun = function(param) {
@@ -1230,7 +1233,7 @@ var list2 = function(param) {
1230
1233
  args[_key] = _arguments[_key];
1231
1234
  }
1232
1235
  threadId = args[0];
1233
- _ref = (0, import_radash7.assign)({
1236
+ _ref = (0, import_radash6.assign)({
1234
1237
  // @ts-ignore-next-line
1235
1238
  limit: 20,
1236
1239
  order: "desc"
@@ -1261,7 +1264,7 @@ var list2 = function(param) {
1261
1264
  return false;
1262
1265
  },
1263
1266
  body: {
1264
- last_id: (_id = (_this = (0, import_radash7.last)(runs2)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
1267
+ last_id: (_id = (_this = (0, import_radash6.last)(runs2)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
1265
1268
  }
1266
1269
  }
1267
1270
  ];
@@ -1271,7 +1274,7 @@ var list2 = function(param) {
1271
1274
  };
1272
1275
  // src/adapters/storage/prismaStorageAdapter/beta/threads/runs/create.ts
1273
1276
  var import_dayjs6 = __toESM(require("dayjs"), 1);
1274
- var import_radash8 = require("radash");
1277
+ var import_radash7 = require("radash");
1275
1278
  var create3 = function(param) {
1276
1279
  var prisma = param.prisma;
1277
1280
  return /*#__PURE__*/ _async_to_generator(function() {
@@ -1299,7 +1302,7 @@ var create3 = function(param) {
1299
1302
  if (!assistant) {
1300
1303
  throw new Error("Assistant not found");
1301
1304
  }
1302
- _ref = (0, import_radash8.assign)({
1305
+ _ref = (0, import_radash7.assign)({
1303
1306
  model: assistant.modelSlug,
1304
1307
  instructions: "",
1305
1308
  additional_instructions: null
@@ -1344,7 +1347,7 @@ var create3 = function(param) {
1344
1347
  });
1345
1348
  };
1346
1349
  // src/adapters/storage/prismaStorageAdapter/beta/threads/runs/createAndStream.ts
1347
- var import_radash9 = require("radash");
1350
+ var import_radash8 = require("radash");
1348
1351
  var import_dayjs8 = __toESM(require("dayjs"), 1);
1349
1352
  // src/adapters/storage/prismaStorageAdapter/beta/threads/runs/onEvent/handlers/threadRunInProgress.ts
1350
1353
  var threadRunInProgress = function(param) {
@@ -1637,53 +1640,59 @@ var onEvent = function(param) {
1637
1640
  // src/adapters/storage/prismaStorageAdapter/beta/threads/runs/getMessages.ts
1638
1641
  var getMessages = function(param) {
1639
1642
  var prisma = param.prisma, run = param.run;
1640
- return /*#__PURE__*/ _async_to_generator(function() {
1641
- var messages3;
1642
- return _ts_generator(this, function(_state) {
1643
- switch(_state.label){
1644
- case 0:
1645
- return [
1646
- 4,
1647
- prisma.message.findMany({
1648
- where: {
1649
- threadId: run.threadId
1650
- },
1651
- include: {
1652
- run: {
1653
- include: {
1654
- runSteps: true
1643
+ return function() {
1644
+ var _ref = _async_to_generator(function(param) {
1645
+ var messagesHistoryLength, messages3;
1646
+ return _ts_generator(this, function(_state) {
1647
+ switch(_state.label){
1648
+ case 0:
1649
+ messagesHistoryLength = param.messagesHistoryLength;
1650
+ return [
1651
+ 4,
1652
+ prisma.message.findMany({
1653
+ where: {
1654
+ threadId: run.threadId
1655
+ },
1656
+ include: {
1657
+ run: {
1658
+ include: {
1659
+ runSteps: true
1660
+ }
1655
1661
  }
1662
+ },
1663
+ take: -messagesHistoryLength,
1664
+ orderBy: {
1665
+ createdAt: "asc"
1656
1666
  }
1657
- },
1658
- take: -10,
1659
- orderBy: {
1660
- createdAt: "asc"
1661
- }
1662
- })
1663
- ];
1664
- case 1:
1665
- messages3 = _state.sent();
1666
- return [
1667
- 2,
1668
- messages3.map(function(message) {
1669
- return _object_spread_props(_object_spread({}, serializeMessage2({
1670
- message: message
1671
- })), {
1672
- run: message.run ? _object_spread_props(_object_spread({}, serializeRun({
1673
- run: message.run
1667
+ })
1668
+ ];
1669
+ case 1:
1670
+ messages3 = _state.sent();
1671
+ return [
1672
+ 2,
1673
+ messages3.map(function(message) {
1674
+ return _object_spread_props(_object_spread({}, serializeMessage2({
1675
+ message: message
1674
1676
  })), {
1675
- runSteps: message.run.runSteps.map(function(runStep) {
1676
- return serializeRunStep({
1677
- runStep: runStep
1678
- });
1679
- })
1680
- }) : null
1681
- });
1682
- })
1683
- ];
1684
- }
1677
+ run: message.run ? _object_spread_props(_object_spread({}, serializeRun({
1678
+ run: message.run
1679
+ })), {
1680
+ runSteps: message.run.runSteps.map(function(runStep) {
1681
+ return serializeRunStep({
1682
+ runStep: runStep
1683
+ });
1684
+ })
1685
+ }) : null
1686
+ });
1687
+ })
1688
+ ];
1689
+ }
1690
+ });
1685
1691
  });
1686
- });
1692
+ return function(_) {
1693
+ return _ref.apply(this, arguments);
1694
+ };
1695
+ }();
1687
1696
  };
1688
1697
  // src/adapters/storage/prismaStorageAdapter/beta/threads/runs/createAndStream.ts
1689
1698
  var createAndStream = function(param) {
@@ -1715,7 +1724,7 @@ var createAndStream = function(param) {
1715
1724
  if (!assistant) {
1716
1725
  throw new Error("Assistant not found");
1717
1726
  }
1718
- _ref = (0, import_radash9.assign)({
1727
+ _ref = (0, import_radash8.assign)({
1719
1728
  model: assistant.modelSlug,
1720
1729
  instructions: "",
1721
1730
  additional_instructions: null
@@ -2208,7 +2217,7 @@ var submitToolOutputsStream = function(param) {
2208
2217
  };
2209
2218
  };
2210
2219
  // src/adapters/storage/prismaStorageAdapter/beta/threads/runs/steps/list.ts
2211
- var import_radash10 = require("radash");
2220
+ var import_radash9 = require("radash");
2212
2221
  var list3 = function(param) {
2213
2222
  var prisma = param.prisma;
2214
2223
  return /*#__PURE__*/ _async_to_generator(function() {
@@ -2224,7 +2233,7 @@ var list3 = function(param) {
2224
2233
  }
2225
2234
  threadId = args[0];
2226
2235
  runId = args[1];
2227
- _ref = (0, import_radash10.assign)({
2236
+ _ref = (0, import_radash9.assign)({
2228
2237
  // @ts-ignore-next-line
2229
2238
  limit: 20,
2230
2239
  order: "desc"
@@ -2256,7 +2265,7 @@ var list3 = function(param) {
2256
2265
  return false;
2257
2266
  },
2258
2267
  body: {
2259
- last_id: (_id = (_this = (0, import_radash10.last)(runSteps)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
2268
+ last_id: (_id = (_this = (0, import_radash9.last)(runSteps)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
2260
2269
  }
2261
2270
  }
2262
2271
  ];