@superinterface/react 2.1.2 → 2.2.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 +926 -1226
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +18 -690
- package/dist/index.d.ts +18 -690
- package/dist/index.js +893 -1173
- package/dist/index.js.map +1 -1
- package/dist/mutationFns.cjs +1 -161
- package/dist/mutationFns.cjs.map +1 -1
- package/dist/mutationFns.d.cts +6 -26
- package/dist/mutationFns.d.ts +6 -26
- package/dist/mutationFns.js +1 -153
- package/dist/mutationFns.js.map +1 -1
- package/dist/queryFns.cjs +8 -56
- package/dist/queryFns.cjs.map +1 -1
- package/dist/queryFns.d.cts +4 -20
- package/dist/queryFns.d.ts +4 -20
- package/dist/queryFns.js +8 -48
- package/dist/queryFns.js.map +1 -1
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.cts +4 -3
- package/dist/types/index.d.ts +4 -3
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.d.cts +6 -2
- package/dist/utils.d.ts +6 -2
- package/dist/utils.js.map +1 -1
- package/package.json +10 -7
package/dist/queryFns.d.cts
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { d as defaultClient } from './index-CGpJFXMu.cjs';
|
|
2
|
-
import { MessagesPage
|
|
2
|
+
import { MessagesPage } from './types/index.cjs';
|
|
3
3
|
import * as _tanstack_react_query_build_legacy_types from '@tanstack/react-query/build/legacy/types';
|
|
4
4
|
import * as _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw from '@tanstack/query-core/build/legacy/queryClient-Ho-z40Sw';
|
|
5
5
|
import { useQueryClient } from '@tanstack/react-query';
|
|
6
6
|
import { u as useSuperinterfaceContext } from './index-u67QcaWg.cjs';
|
|
7
7
|
import 'openai';
|
|
8
8
|
|
|
9
|
-
type Args
|
|
9
|
+
type Args = {
|
|
10
10
|
client?: typeof defaultClient;
|
|
11
11
|
threadId: string;
|
|
12
12
|
pageParam?: string;
|
|
13
13
|
};
|
|
14
|
-
declare const messagesQueryFn: ({ client, threadId, pageParam, }: Args
|
|
14
|
+
declare const messagesQueryFn: ({ client, threadId, pageParam, }: Args) => Promise<MessagesPage>;
|
|
15
15
|
|
|
16
16
|
declare const messagesQueryOptions: ({ queryClient, threadContext, superinterfaceContext, }: {
|
|
17
17
|
queryClient: ReturnType<typeof useQueryClient>;
|
|
@@ -23,20 +23,4 @@ declare const messagesQueryOptions: ({ queryClient, threadContext, superinterfac
|
|
|
23
23
|
queryKey: _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.u<_tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.s, _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.B<MessagesPage, unknown>>;
|
|
24
24
|
};
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
client?: typeof defaultClient;
|
|
28
|
-
threadId: string;
|
|
29
|
-
};
|
|
30
|
-
declare const runsQueryFn: ({ client, threadId, }: Args) => Promise<RunsPage>;
|
|
31
|
-
|
|
32
|
-
declare const runsQueryOptions: ({ queryClient, threadContext, superinterfaceContext, }: {
|
|
33
|
-
queryClient: ReturnType<typeof useQueryClient>;
|
|
34
|
-
threadContext: ReturnType<typeof useSuperinterfaceContext>;
|
|
35
|
-
superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>;
|
|
36
|
-
}) => _tanstack_react_query_build_legacy_types.UseInfiniteQueryOptions<MessagesPage, Error, _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.B<TQueryFnData, unknown>, MessagesPage, _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.s, unknown> & {
|
|
37
|
-
initialData?: undefined;
|
|
38
|
-
} & {
|
|
39
|
-
queryKey: _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.u<_tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.s, _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.B<MessagesPage, unknown>>;
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
export { messagesQueryFn, messagesQueryOptions, runsQueryFn, runsQueryOptions };
|
|
26
|
+
export { messagesQueryFn, messagesQueryOptions };
|
package/dist/queryFns.d.ts
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { d as defaultClient } from './index-CGpJFXMu.js';
|
|
2
|
-
import { MessagesPage
|
|
2
|
+
import { MessagesPage } from './types/index.js';
|
|
3
3
|
import * as _tanstack_react_query_build_legacy_types from '@tanstack/react-query/build/legacy/types';
|
|
4
4
|
import * as _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw from '@tanstack/query-core/build/legacy/queryClient-Ho-z40Sw';
|
|
5
5
|
import { useQueryClient } from '@tanstack/react-query';
|
|
6
6
|
import { u as useSuperinterfaceContext } from './index-u67QcaWg.js';
|
|
7
7
|
import 'openai';
|
|
8
8
|
|
|
9
|
-
type Args
|
|
9
|
+
type Args = {
|
|
10
10
|
client?: typeof defaultClient;
|
|
11
11
|
threadId: string;
|
|
12
12
|
pageParam?: string;
|
|
13
13
|
};
|
|
14
|
-
declare const messagesQueryFn: ({ client, threadId, pageParam, }: Args
|
|
14
|
+
declare const messagesQueryFn: ({ client, threadId, pageParam, }: Args) => Promise<MessagesPage>;
|
|
15
15
|
|
|
16
16
|
declare const messagesQueryOptions: ({ queryClient, threadContext, superinterfaceContext, }: {
|
|
17
17
|
queryClient: ReturnType<typeof useQueryClient>;
|
|
@@ -23,20 +23,4 @@ declare const messagesQueryOptions: ({ queryClient, threadContext, superinterfac
|
|
|
23
23
|
queryKey: _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.u<_tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.s, _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.B<MessagesPage, unknown>>;
|
|
24
24
|
};
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
client?: typeof defaultClient;
|
|
28
|
-
threadId: string;
|
|
29
|
-
};
|
|
30
|
-
declare const runsQueryFn: ({ client, threadId, }: Args) => Promise<RunsPage>;
|
|
31
|
-
|
|
32
|
-
declare const runsQueryOptions: ({ queryClient, threadContext, superinterfaceContext, }: {
|
|
33
|
-
queryClient: ReturnType<typeof useQueryClient>;
|
|
34
|
-
threadContext: ReturnType<typeof useSuperinterfaceContext>;
|
|
35
|
-
superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>;
|
|
36
|
-
}) => _tanstack_react_query_build_legacy_types.UseInfiniteQueryOptions<MessagesPage, Error, _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.B<TQueryFnData, unknown>, MessagesPage, _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.s, unknown> & {
|
|
37
|
-
initialData?: undefined;
|
|
38
|
-
} & {
|
|
39
|
-
queryKey: _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.u<_tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.s, _tanstack_query_core_build_legacy_queryClient_Ho_z40Sw.B<MessagesPage, unknown>>;
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
export { messagesQueryFn, messagesQueryOptions, runsQueryFn, runsQueryOptions };
|
|
26
|
+
export { messagesQueryFn, messagesQueryOptions };
|
package/dist/queryFns.js
CHANGED
|
@@ -306,6 +306,8 @@ var extendMessage = function() {
|
|
|
306
306
|
return _ref.apply(this, arguments);
|
|
307
307
|
};
|
|
308
308
|
}();
|
|
309
|
+
// src/lib/messages/messagesQueryFn/data/runMessages/index.ts
|
|
310
|
+
import dayjs from "dayjs";
|
|
309
311
|
// src/lib/messages/messagesQueryFn/data/runMessages/getLatestRun.ts
|
|
310
312
|
var getLatestRun = function() {
|
|
311
313
|
var _ref = _async_to_generator(function(param) {
|
|
@@ -388,8 +390,12 @@ var runMessages = function() {
|
|
|
388
390
|
message: {
|
|
389
391
|
id: optimisticId(),
|
|
390
392
|
role: "assistant",
|
|
391
|
-
created_at:
|
|
393
|
+
created_at: dayjs().unix(),
|
|
392
394
|
object: "thread.message",
|
|
395
|
+
incomplete_details: null,
|
|
396
|
+
completed_at: dayjs().unix(),
|
|
397
|
+
incomplete_at: null,
|
|
398
|
+
status: "completed",
|
|
393
399
|
content: [],
|
|
394
400
|
run_id: latestRun.id,
|
|
395
401
|
assistant_id: latestRun.assistant_id,
|
|
@@ -608,51 +614,5 @@ var messagesQueryOptions = function(param) {
|
|
|
608
614
|
superinterfaceContext: superinterfaceContext
|
|
609
615
|
});
|
|
610
616
|
};
|
|
611
|
-
|
|
612
|
-
var runsQueryFn = function() {
|
|
613
|
-
var _ref = _async_to_generator(function(param) {
|
|
614
|
-
var _param_client, client, threadId, response;
|
|
615
|
-
return _ts_generator(this, function(_state) {
|
|
616
|
-
switch(_state.label){
|
|
617
|
-
case 0:
|
|
618
|
-
_param_client = param.client, client = _param_client === void 0 ? defaultClient : _param_client, threadId = param.threadId;
|
|
619
|
-
return [
|
|
620
|
-
4,
|
|
621
|
-
client.beta.threads.runs.list(threadId, {
|
|
622
|
-
limit: 1
|
|
623
|
-
})
|
|
624
|
-
];
|
|
625
|
-
case 1:
|
|
626
|
-
response = _state.sent();
|
|
627
|
-
return [
|
|
628
|
-
2,
|
|
629
|
-
{
|
|
630
|
-
// @ts-ignore-next-line
|
|
631
|
-
data: response.data,
|
|
632
|
-
hasNextPage: response.hasNextPage(),
|
|
633
|
-
// @ts-ignore-next-line
|
|
634
|
-
lastId: response.body.last_id
|
|
635
|
-
}
|
|
636
|
-
];
|
|
637
|
-
}
|
|
638
|
-
});
|
|
639
|
-
});
|
|
640
|
-
return function runsQueryFn(_) {
|
|
641
|
-
return _ref.apply(this, arguments);
|
|
642
|
-
};
|
|
643
|
-
}();
|
|
644
|
-
// src/lib/runs/runsQueryOptions.ts
|
|
645
|
-
var runsQueryOptions = function(param) {
|
|
646
|
-
var queryClient = param.queryClient, threadContext = param.threadContext, superinterfaceContext = param.superinterfaceContext;
|
|
647
|
-
return queryOptions({
|
|
648
|
-
queryKeyBase: [
|
|
649
|
-
"runs"
|
|
650
|
-
],
|
|
651
|
-
path: "/runs",
|
|
652
|
-
queryClient: queryClient,
|
|
653
|
-
threadContext: threadContext,
|
|
654
|
-
superinterfaceContext: superinterfaceContext
|
|
655
|
-
});
|
|
656
|
-
};
|
|
657
|
-
export { messagesQueryFn, messagesQueryOptions, runsQueryFn, runsQueryOptions };
|
|
617
|
+
export { messagesQueryFn, messagesQueryOptions };
|
|
658
618
|
//# sourceMappingURL=queryFns.js.map
|
package/dist/queryFns.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/lib/ai/index.ts","../src/lib/messages/messagesQueryFn/data/index.ts","../src/lib/runSteps/getRunSteps/index.ts","../src/lib/messages/extendMessage.ts","../src/lib/messages/messagesQueryFn/data/runMessages/getLatestRun.ts","../src/lib/optimistic/optimisticId.ts","../src/lib/messages/messagesQueryFn/data/runMessages/index.ts","../src/lib/messages/messagesQueryFn/messagesLimit.ts","../src/lib/messages/messagesQueryFn/hasNextPage.ts","../src/lib/messages/messagesQueryFn/index.ts","../src/lib/threads/queryOptions/index.ts","../src/lib/messages/messagesQueryOptions.ts","../src/lib/runs/runsQueryFn.ts","../src/lib/runs/runsQueryOptions.ts"],"names":["queryKey"],"mappings":";AAAA,OAAO,YAAY;AAEZ,IAAM,gBAAgB,IAAI,OAAO;AAAA,EACtC,QAAQ,QAAQ,IAAI;AACtB,CAAC;;;ACHD,OAAO,UAAU;;;ACOV,IAAM,cAAc,OAAO;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AACF,MAAY;AACV,QAAM,mBAAmB,MAAM,OAAO,KAAK,QAAQ,KAAK,MAAM;AAAA,IAC5D;AAAA,IACA;AAAA,EACF;AAEA,SAAO,iBAAiB;AAC1B;;;ACXO,IAAM,gBAAgB,OAAO;AAAA,EAClC;AAAA,EACA;AACF,MAAY;AACV,MAAI,CAAC,QAAQ,QAAQ;AACnB,WAAO;AAAA,MACL,GAAG;AAAA,MACH,UAAU,CAAC;AAAA,IACb;AAAA,EACF;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,MAAM,YAAY;AAAA,MAC1B,UAAU,QAAQ;AAAA,MAClB,OAAO,QAAQ;AAAA,MACf;AAAA,IACF,CAAC;AAAA,EACH;AACF;;;ACpBO,IAAM,eAAe,OAAO;AAAA,EACjC;AAAA,EACA;AACF,MAAY;AACV,QAAM,eAAe,MAAM,OAAO,KAAK,QAAQ,KAAK,KAAK,UAAU;AAAA,IACjE,OAAO;AAAA,EACT,CAAC;AAED,SAAO,aAAa,KAAK,CAAC;AAC5B;;;AChBA,SAAS,WAAW;AAEb,IAAM,eAAe,MAC1B,IAAI,IAAI,EAAE,CAAC;;;ACSb,IAAM,mBAAmB;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,IAAM,cAAc,OAAO;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AACF,MAAY;AACV,QAAM,YAAY,MAAM,aAAa,EAAE,UAAU,OAAO,CAAC;AAEzD,MAAI,CAAC,WAAW;AACd,WAAO,CAAC;AAAA,EACV;AAEA,QAAM,uBAAuB,SAAS,KAAK,OAAK,EAAE,WAAW,UAAU,EAAE;AAEzE,MAAI,sBAAsB;AACxB,WAAO,CAAC;AAAA,EACV;AAEA,MAAI,CAAC,iBAAiB,SAAS,UAAU,MAAM,GAAG;AAChD,WAAO,CAAC;AAAA,EACV;AAEA,SAAO;AAAA,IACL,MAAM,cAAc;AAAA,MAClB,SAAS;AAAA,QACP,IAAI,aAAa;AAAA,QACjB,MAAM;AAAA,QACN,YAAY,CAAC,oBAAI,KAAK;AAAA,QACtB,QAAQ;AAAA,QACR,SAAS,CAAC;AAAA,QACV,QAAQ,UAAU;AAAA,QAClB,cAAc,UAAU;AAAA,QACxB,WAAW,UAAU;AAAA,QACrB,UAAU,CAAC;AAAA,QACX,UAAU,CAAC;AAAA,MACb;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AACF;;;ALpDO,IAAM,OAAO,OAAO;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAKM;AACJ,QAAM,WAAW,MAAM,KAAK,iBAAiB,MAAM,CAAC,YAClD,cAAc;AAAA,IACZ;AAAA,IACA;AAAA,EACF,CAAC,CACF;AAED,MAAI,WAAW;AACb,WAAO;AAAA,EACT;AAEA,SAAO;AAAA,IACL,GAAG,MAAM,YAAY;AAAA,MACnB;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACD,GAAG;AAAA,EACL;AACF;;;AMnCO,IAAM,gBAAgB;;;ACGtB,IAAM,cAAc,CAAC;AAAA,EAC1B;AACF,MAEM;AACJ,MAAI,iBAAiB,KAAK,SAAS;AAAe,WAAO;AAEzD,SAAO,iBAAiB,YAAY;AACtC;;;ACEO,IAAM,kBAAkB,OAAO;AAAA,EACpC,SAAS;AAAA,EACT;AAAA,EACA;AACF,MAAmC;AACjC,QAAM,mBAAmB,MAAM,OAAO,KAAK,QAAQ,SAAS,KAAK,UAAU;AAAA,IACzE,GAAI,YAAY,EAAE,OAAO,UAAU,IAAI,CAAC;AAAA,IACxC,OAAO;AAAA,EACT,CAAC;AAED,SAAO;AAAA,IACL,MAAM,MAAM,KAAK;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACD,aAAa,YAAY,EAAE,iBAAiB,CAAC;AAAA;AAAA,IAE7C,QAAQ,iBAAiB,KAAK;AAAA,EAChC;AACF;;;AClCA;AAAA,EAEE;AAAA,OACK;AAUA,IAAM,eAAe,CAAC;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAMM;AACJ,QAAM,WAAW,CAAC,GAAG,cAAc,cAAc,SAAS;AAE1D,SAAO,qBAAmC;AAAA;AAAA,IAExC,SAAS,OAAO;AAAA,MACd;AAAA,MACA,UAAAA;AAAA,IACF,MAAyB;AACvB,YAAM,CAAC,MAAM,SAAS,IAAIA;AAC1B,YAAM,SAAS,IAAI,gBAAgB;AAAA,QACjC,GAAI,YAAY,EAAE,UAAU,IAAI,CAAC;AAAA,QACjC,GAAG;AAAA,MACL,CAAC;AAED,aAAO,MAAM,GAAG,sBAAsB,OAAO,GAAG,IAAI,IAAI,MAAM,IAAI;AAAA,QAChE,aAAa;AAAA,QACb,GAAI,sBAAsB,eAAe;AAAA,UACvC,SAAS;AAAA,YACP,eAAe,UAAU,sBAAsB,YAAY;AAAA,UAC7D;AAAA,QACF,IAAI,CAAC;AAAA,MACP,CAAC,EACE,KAAK,OAAO,aAAa;AACxB,YAAI,SAAS,WAAW,KAAK;AAC3B,cAAI;AACF,kBAAM,gBAAgB,MAAM,SAAS,KAAK;AAC1C,kBAAM,IAAI,MAAM,cAAc,KAAK;AAAA,UACrC,SAAS,OAAO;AACd,kBAAM,IAAI,MAAM,iBAAiB;AAAA,UACnC;AAAA,QACF;AAEA,eAAO,SAAS,KAAK;AAAA,MACvB,CAAC;AAAA,IACL;AAAA,IACA,kBAAkB;AAAA,IAClB,kBAAkB,CAAC,aAA2B;AAC5C,UAAI,CAAC,SAAS;AAAa,eAAO;AAElC,aAAO,SAAS;AAAA,IAClB;AAAA,IACA,OAAO;AAAA,IACP,GAAG,cAAc,eAAe;AAAA,IAChC,GAAG,YAAY,iBAAiB,QAAQ;AAAA,IACxC;AAAA,EACF,CAAC;AACH;;;ACnEO,IAAM,uBAAuB,CAAC;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AACF,MAKE,aAAa;AAAA,EACX,cAAc,CAAC,UAAU;AAAA,EACzB,MAAM;AAAA,EACN;AAAA,EACA;AAAA,EACA;AACF,CAAC;;;ACZI,IAAM,cAAc,OAAO;AAAA,EAChC,SAAS;AAAA,EACT;AACF,MAA+B;AAC7B,QAAM,WAAW,MAAM,OAAO,KAAK,QAAQ,KAAK,KAAK,UAAU;AAAA,IAC7D,OAAO;AAAA,EACT,CAAC;AAED,SAAO;AAAA;AAAA,IAEL,MAAM,SAAS;AAAA,IACf,aAAa,SAAS,YAAY;AAAA;AAAA,IAElC,QAAQ,SAAS,KAAK;AAAA,EACxB;AACF;;;AClBO,IAAM,mBAAmB,CAAC;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AACF,MAKE,aAAa;AAAA,EACX,cAAc,CAAC,MAAM;AAAA,EACrB,MAAM;AAAA,EACN;AAAA,EACA;AAAA,EACA;AACF,CAAC","sourcesContent":["import OpenAI from 'openai'\n\nexport const defaultClient = new OpenAI({\n apiKey: process.env.OPENAI_API_KEY!,\n})\n","import OpenAI from 'openai'\nimport pMap from 'p-map'\nimport { extendMessage } from '@/lib/messages/extendMessage'\nimport { runMessages } from './runMessages'\n\nexport const data = async ({\n messagesResponse,\n pageParam,\n threadId,\n client,\n}: {\n messagesResponse: OpenAI.CursorPage<OpenAI.Beta.Threads.Messages.ThreadMessage>\n pageParam?: string\n threadId: string\n client: OpenAI\n}) => {\n const messages = await pMap(messagesResponse.data, (message) => (\n extendMessage({\n client,\n message,\n })\n ))\n\n if (pageParam) {\n return messages\n }\n\n return [\n ...await runMessages({\n messages,\n threadId,\n client,\n }),\n ...messages,\n ]\n}\n","import OpenAI from 'openai'\n\ntype Args = {\n threadId: string\n runId: string\n client: OpenAI\n}\n\nexport const getRunSteps = async ({\n threadId,\n runId,\n client,\n}: Args) => {\n const runStepsResponse = await client.beta.threads.runs.steps.list(\n threadId,\n runId,\n )\n\n return runStepsResponse.data\n}\n","import OpenAI from 'openai'\nimport { getRunSteps } from '@/lib/runSteps/getRunSteps'\n\ntype Args = {\n message: OpenAI.Beta.Threads.Messages.ThreadMessage\n client: OpenAI\n}\n\nexport const extendMessage = async ({\n message,\n client,\n}: Args) => {\n if (!message.run_id) {\n return {\n ...message,\n runSteps: [],\n }\n }\n\n return {\n ...message,\n runSteps: await getRunSteps({\n threadId: message.thread_id,\n runId: message.run_id,\n client,\n }),\n }\n}\n","import OpenAI from 'openai'\n\ntype Args = {\n threadId: string\n client: OpenAI\n}\n\nexport const getLatestRun = async ({\n threadId,\n client,\n}: Args) => {\n const runsResponse = await client.beta.threads.runs.list(threadId, {\n limit: 1,\n })\n\n return runsResponse.data[0]\n}\n","import { uid } from 'radash'\n\nexport const optimisticId = () => (\n `-${uid(24)}`\n)\n","import OpenAI from 'openai'\nimport { Message } from '@/types'\nimport { getLatestRun } from './getLatestRun'\nimport { extendMessage } from '@/lib/messages/extendMessage'\nimport { optimisticId } from '@/lib/optimistic/optimisticId'\n\ntype Args = {\n messages: Message[]\n threadId: string\n client: OpenAI\n}\n\nconst progressStatuses = [\n 'queued',\n 'in_progress',\n 'requires_action',\n 'cancelling',\n]\n\nexport const runMessages = async ({\n messages,\n threadId,\n client,\n}: Args) => {\n const latestRun = await getLatestRun({ threadId, client })\n\n if (!latestRun) {\n return []\n }\n\n const messageFromLatestRun = messages.find(m => m.run_id === latestRun.id)\n\n if (messageFromLatestRun) {\n return []\n }\n\n if (!progressStatuses.includes(latestRun.status)) {\n return []\n }\n\n return [\n await extendMessage({\n message: {\n id: optimisticId(),\n role: 'assistant' as OpenAI.Beta.Threads.Messages.ThreadMessage['role'],\n created_at: +new Date(),\n object: 'thread.message' as OpenAI.Beta.Threads.Messages.ThreadMessage['object'],\n content: [],\n run_id: latestRun.id,\n assistant_id: latestRun.assistant_id,\n thread_id: latestRun.thread_id,\n file_ids: [],\n metadata: {},\n },\n client,\n }),\n ]\n}\n","export const messagesLimit = 10\n","import OpenAI from 'openai'\nimport { messagesLimit } from './messagesLimit'\n\nexport const hasNextPage = ({\n messagesResponse,\n}: {\n messagesResponse: OpenAI.CursorPage<OpenAI.Beta.Threads.Messages.ThreadMessage>\n}) => {\n if (messagesResponse.data.length < messagesLimit) return false\n\n return messagesResponse.hasNextPage()\n}\n","import _ from 'lodash'\nimport { defaultClient } from '@/lib/ai'\nimport { MessagesPage } from '@/types'\nimport { data } from './data'\nimport { messagesLimit } from './messagesLimit'\nimport { hasNextPage } from './hasNextPage'\n\ntype Args = {\n client?: typeof defaultClient\n threadId: string\n pageParam?: string\n}\n\nexport const messagesQueryFn = async ({\n client = defaultClient,\n threadId,\n pageParam,\n}: Args): Promise<MessagesPage> => {\n const messagesResponse = await client.beta.threads.messages.list(threadId, {\n ...(pageParam ? { after: pageParam } : {}),\n limit: messagesLimit,\n })\n\n return {\n data: await data({\n client,\n messagesResponse,\n pageParam,\n threadId,\n }),\n hasNextPage: hasNextPage({ messagesResponse }),\n // @ts-ignore-next-line\n lastId: messagesResponse.body.last_id,\n }\n}\n","import {\n useQueryClient,\n infiniteQueryOptions,\n} from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { MessagesPage } from '@/types'\n\ntype QueryFunctionArgs = {\n queryKey: Readonly<[string, { [key: string]: any }]>\n pageParam?: string\n}\n\nexport const queryOptions = ({\n queryKeyBase,\n path,\n queryClient,\n threadContext,\n superinterfaceContext,\n}: {\n queryKeyBase: string[]\n path: string,\n queryClient: ReturnType<typeof useQueryClient>,\n threadContext: ReturnType<typeof useThreadContext>,\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>,\n}) => {\n const queryKey = [...queryKeyBase, threadContext.variables]\n\n return infiniteQueryOptions<MessagesPage>({\n // @ts-ignore-next-line\n queryFn: async ({\n pageParam,\n queryKey,\n }: QueryFunctionArgs) => {\n const [_key, variables] = queryKey\n const params = new URLSearchParams({\n ...(pageParam ? { pageParam } : {}),\n ...variables,\n })\n\n return fetch(`${superinterfaceContext.baseUrl}${path}?${params}`, {\n credentials: 'include',\n ...(superinterfaceContext.publicApiKey ? {\n headers: {\n Authorization: `Bearer ${superinterfaceContext.publicApiKey}`,\n },\n } : {}),\n })\n .then(async (response) => {\n if (response.status !== 200) {\n try {\n const errorResponse = await response.json() as { error: string }\n throw new Error(errorResponse.error)\n } catch (error) {\n throw new Error('Failed to fetch')\n }\n }\n\n return response.json() as Promise<MessagesPage>\n })\n },\n initialPageParam: undefined,\n getNextPageParam: (lastPage: MessagesPage) => {\n if (!lastPage.hasNextPage) return null\n\n return lastPage.lastId\n },\n limit: 10,\n ...threadContext.defaultOptions.queries,\n ...queryClient.getQueryDefaults(queryKey),\n queryKey,\n })\n}\n","import { useQueryClient } from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { queryOptions } from '@/lib/threads/queryOptions'\n\nexport const messagesQueryOptions = ({\n queryClient,\n threadContext,\n superinterfaceContext,\n}: {\n queryClient: ReturnType<typeof useQueryClient>,\n threadContext: ReturnType<typeof useThreadContext>,\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>,\n}) => (\n queryOptions({\n queryKeyBase: ['messages'],\n path: '/messages',\n queryClient,\n threadContext,\n superinterfaceContext,\n })\n)\n","import { RunsPage } from '@/types'\nimport { defaultClient } from '@/lib/ai'\n\ntype Args = {\n client?: typeof defaultClient\n threadId: string\n}\n\nexport const runsQueryFn = async ({\n client = defaultClient,\n threadId,\n}: Args): Promise<RunsPage> => {\n const response = await client.beta.threads.runs.list(threadId, {\n limit: 1,\n })\n\n return {\n // @ts-ignore-next-line\n data: response.data,\n hasNextPage: response.hasNextPage(),\n // @ts-ignore-next-line\n lastId: response.body.last_id,\n }\n}\n","import { useQueryClient } from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { queryOptions } from '@/lib/threads/queryOptions'\n\nexport const runsQueryOptions = ({\n queryClient,\n threadContext,\n superinterfaceContext,\n}: {\n queryClient: ReturnType<typeof useQueryClient>,\n threadContext: ReturnType<typeof useThreadContext>,\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>,\n}) => (\n queryOptions({\n queryKeyBase: ['runs'],\n path: '/runs',\n queryClient,\n threadContext,\n superinterfaceContext,\n })\n)\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/lib/ai/index.ts","../src/lib/messages/messagesQueryFn/data/index.ts","../src/lib/runSteps/getRunSteps/index.ts","../src/lib/messages/extendMessage.ts","../src/lib/messages/messagesQueryFn/data/runMessages/index.ts","../src/lib/messages/messagesQueryFn/data/runMessages/getLatestRun.ts","../src/lib/optimistic/optimisticId.ts","../src/lib/messages/messagesQueryFn/messagesLimit.ts","../src/lib/messages/messagesQueryFn/hasNextPage.ts","../src/lib/messages/messagesQueryFn/index.ts","../src/lib/threads/queryOptions/index.ts","../src/lib/messages/messagesQueryOptions.ts"],"names":["queryKey"],"mappings":"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","sourcesContent":["import OpenAI from 'openai'\n\nexport const defaultClient = new OpenAI({\n apiKey: process.env.OPENAI_API_KEY!,\n})\n","import OpenAI from 'openai'\nimport pMap from 'p-map'\nimport { extendMessage } from '@/lib/messages/extendMessage'\nimport { runMessages } from './runMessages'\n\nexport const data = async ({\n messagesResponse,\n pageParam,\n threadId,\n client,\n}: {\n messagesResponse: OpenAI.CursorPage<OpenAI.Beta.Threads.Messages.Message>\n pageParam?: string\n threadId: string\n client: OpenAI\n}) => {\n const messages = await pMap(messagesResponse.data, (message) => (\n extendMessage({\n client,\n message,\n })\n ))\n\n if (pageParam) {\n return messages\n }\n\n return [\n ...await runMessages({\n messages,\n threadId,\n client,\n }),\n ...messages,\n ]\n}\n","import OpenAI from 'openai'\n\ntype Args = {\n threadId: string\n runId: string\n client: OpenAI\n}\n\nexport const getRunSteps = async ({\n threadId,\n runId,\n client,\n}: Args) => {\n const runStepsResponse = await client.beta.threads.runs.steps.list(\n threadId,\n runId,\n )\n\n return runStepsResponse.data\n}\n","import OpenAI from 'openai'\nimport { getRunSteps } from '@/lib/runSteps/getRunSteps'\n\ntype Args = {\n message: OpenAI.Beta.Threads.Messages.Message\n client: OpenAI\n}\n\nexport const extendMessage = async ({\n message,\n client,\n}: Args) => {\n if (!message.run_id) {\n return {\n ...message,\n runSteps: [],\n }\n }\n\n return {\n ...message,\n runSteps: await getRunSteps({\n threadId: message.thread_id,\n runId: message.run_id,\n client,\n }),\n }\n}\n","import dayjs from 'dayjs'\nimport OpenAI from 'openai'\nimport { Message } from '@/types'\nimport { getLatestRun } from './getLatestRun'\nimport { extendMessage } from '@/lib/messages/extendMessage'\nimport { optimisticId } from '@/lib/optimistic/optimisticId'\n\ntype Args = {\n messages: Message[]\n threadId: string\n client: OpenAI\n}\n\nconst progressStatuses = [\n 'queued',\n 'in_progress',\n 'requires_action',\n 'cancelling',\n]\n\nexport const runMessages = async ({\n messages,\n threadId,\n client,\n}: Args) => {\n const latestRun = await getLatestRun({ threadId, client })\n\n if (!latestRun) {\n return []\n }\n\n const messageFromLatestRun = messages.find(m => m.run_id === latestRun.id)\n\n if (messageFromLatestRun) {\n return []\n }\n\n if (!progressStatuses.includes(latestRun.status)) {\n return []\n }\n\n return [\n await extendMessage({\n message: {\n id: optimisticId(),\n role: 'assistant' as OpenAI.Beta.Threads.Messages.Message['role'],\n created_at: dayjs().unix(),\n object: 'thread.message' as OpenAI.Beta.Threads.Messages.Message['object'],\n incomplete_details: null,\n completed_at: dayjs().unix(),\n incomplete_at: null,\n status: 'completed',\n content: [],\n run_id: latestRun.id,\n assistant_id: latestRun.assistant_id,\n thread_id: latestRun.thread_id,\n file_ids: [],\n metadata: {},\n },\n client,\n }),\n ]\n}\n","import OpenAI from 'openai'\n\ntype Args = {\n threadId: string\n client: OpenAI\n}\n\nexport const getLatestRun = async ({\n threadId,\n client,\n}: Args) => {\n const runsResponse = await client.beta.threads.runs.list(threadId, {\n limit: 1,\n })\n\n return runsResponse.data[0]\n}\n","import { uid } from 'radash'\n\nexport const optimisticId = () => (\n `-${uid(24)}`\n)\n","export const messagesLimit = 10\n","import OpenAI from 'openai'\nimport { messagesLimit } from './messagesLimit'\n\nexport const hasNextPage = ({\n messagesResponse,\n}: {\n messagesResponse: OpenAI.CursorPage<OpenAI.Beta.Threads.Messages.Message>\n}) => {\n if (messagesResponse.data.length < messagesLimit) return false\n\n return messagesResponse.hasNextPage()\n}\n","import _ from 'lodash'\nimport { defaultClient } from '@/lib/ai'\nimport { MessagesPage } from '@/types'\nimport { data } from './data'\nimport { messagesLimit } from './messagesLimit'\nimport { hasNextPage } from './hasNextPage'\n\ntype Args = {\n client?: typeof defaultClient\n threadId: string\n pageParam?: string\n}\n\nexport const messagesQueryFn = async ({\n client = defaultClient,\n threadId,\n pageParam,\n}: Args): Promise<MessagesPage> => {\n const messagesResponse = await client.beta.threads.messages.list(threadId, {\n ...(pageParam ? { after: pageParam } : {}),\n limit: messagesLimit,\n })\n\n return {\n data: await data({\n client,\n messagesResponse,\n pageParam,\n threadId,\n }),\n hasNextPage: hasNextPage({ messagesResponse }),\n // @ts-ignore-next-line\n lastId: messagesResponse.body.last_id,\n }\n}\n","import {\n useQueryClient,\n infiniteQueryOptions,\n} from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { MessagesPage } from '@/types'\n\ntype QueryFunctionArgs = {\n queryKey: Readonly<[string, { [key: string]: any }]>\n pageParam?: string\n}\n\nexport const queryOptions = ({\n queryKeyBase,\n path,\n queryClient,\n threadContext,\n superinterfaceContext,\n}: {\n queryKeyBase: string[]\n path: string,\n queryClient: ReturnType<typeof useQueryClient>,\n threadContext: ReturnType<typeof useThreadContext>,\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>,\n}) => {\n const queryKey = [...queryKeyBase, threadContext.variables]\n\n return infiniteQueryOptions<MessagesPage>({\n // @ts-ignore-next-line\n queryFn: async ({\n pageParam,\n queryKey,\n }: QueryFunctionArgs) => {\n const [_key, variables] = queryKey\n const params = new URLSearchParams({\n ...(pageParam ? { pageParam } : {}),\n ...variables,\n })\n\n return fetch(`${superinterfaceContext.baseUrl}${path}?${params}`, {\n credentials: 'include',\n ...(superinterfaceContext.publicApiKey ? {\n headers: {\n Authorization: `Bearer ${superinterfaceContext.publicApiKey}`,\n },\n } : {}),\n })\n .then(async (response) => {\n if (response.status !== 200) {\n try {\n const errorResponse = await response.json() as { error: string }\n throw new Error(errorResponse.error)\n } catch (error) {\n throw new Error('Failed to fetch')\n }\n }\n\n return response.json() as Promise<MessagesPage>\n })\n },\n initialPageParam: undefined,\n getNextPageParam: (lastPage: MessagesPage) => {\n if (!lastPage.hasNextPage) return null\n\n return lastPage.lastId\n },\n limit: 10,\n ...threadContext.defaultOptions.queries,\n ...queryClient.getQueryDefaults(queryKey),\n queryKey,\n })\n}\n","import { useQueryClient } from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { queryOptions } from '@/lib/threads/queryOptions'\n\nexport const messagesQueryOptions = ({\n queryClient,\n threadContext,\n superinterfaceContext,\n}: {\n queryClient: ReturnType<typeof useQueryClient>,\n threadContext: ReturnType<typeof useThreadContext>,\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>,\n}) => (\n queryOptions({\n queryKeyBase: ['messages'],\n path: '/messages',\n queryClient,\n threadContext,\n superinterfaceContext,\n })\n)\n"]}
|
package/dist/types/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA","sourcesContent":["import OpenAI from 'openai'\n\nexport type Message = OpenAI.Beta.Threads.Messages.
|
|
1
|
+
{"version":3,"sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA","sourcesContent":["import OpenAI from 'openai'\n\nexport type RunStep = OpenAI.Beta.Threads.Runs.RunStep\n\nexport type Message = OpenAI.Beta.Threads.Messages.Message & {\n runSteps: RunStep[]\n}\n\nexport type MessagesPage = {\n data: Message[]\n hasNextPage: boolean\n lastId: string\n}\n\nexport type RunStepsPage = {\n data: OpenAI.Beta.Threads.Runs.RunStep[]\n hasNextPage: boolean\n lastId: string\n}\n\nexport type MessageGroup = {\n id: string\n role: \"user\" | \"assistant\"\n messages: Message[]\n createdAt: number\n}\n\nexport type Run = OpenAI.Beta.Threads.Runs.Run\n\nexport type RunsPage = {\n data: Run[]\n hasNextPage: boolean\n lastId: string\n}\n\ntype Fn = (args: any) => Promise<string>\n\nexport type Functions = {\n [key: string]: Fn\n}\n\nexport type AudioEngine = {\n source: MediaStreamAudioSourceNode | GainNode\n audioContext: AudioContext\n}\n\nexport type Toast = {\n type: 'success' | 'error'\n message: string\n}\n"]}
|
package/dist/types/index.d.cts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
|
|
3
|
-
type
|
|
4
|
-
|
|
3
|
+
type RunStep = OpenAI.Beta.Threads.Runs.RunStep;
|
|
4
|
+
type Message = OpenAI.Beta.Threads.Messages.Message & {
|
|
5
|
+
runSteps: RunStep[];
|
|
5
6
|
};
|
|
6
7
|
type MessagesPage = {
|
|
7
8
|
data: Message[];
|
|
@@ -38,4 +39,4 @@ type Toast = {
|
|
|
38
39
|
message: string;
|
|
39
40
|
};
|
|
40
41
|
|
|
41
|
-
export type { AudioEngine, Functions, Message, MessageGroup, MessagesPage, Run, RunStepsPage, RunsPage, Toast };
|
|
42
|
+
export type { AudioEngine, Functions, Message, MessageGroup, MessagesPage, Run, RunStep, RunStepsPage, RunsPage, Toast };
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
|
|
3
|
-
type
|
|
4
|
-
|
|
3
|
+
type RunStep = OpenAI.Beta.Threads.Runs.RunStep;
|
|
4
|
+
type Message = OpenAI.Beta.Threads.Messages.Message & {
|
|
5
|
+
runSteps: RunStep[];
|
|
5
6
|
};
|
|
6
7
|
type MessagesPage = {
|
|
7
8
|
data: Message[];
|
|
@@ -38,4 +39,4 @@ type Toast = {
|
|
|
38
39
|
message: string;
|
|
39
40
|
};
|
|
40
41
|
|
|
41
|
-
export type { AudioEngine, Functions, Message, MessageGroup, MessagesPage, Run, RunStepsPage, RunsPage, Toast };
|
|
42
|
+
export type { AudioEngine, Functions, Message, MessageGroup, MessagesPage, Run, RunStep, RunStepsPage, RunsPage, Toast };
|
package/dist/utils.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/utils.ts","../src/lib/runSteps/getRunSteps/index.ts","../src/lib/messages/extendMessage.ts","../src/lib/optimistic/optimisticId.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACQO,IAAM,cAAc,OAAO;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AACF,MAAY;AACV,QAAM,mBAAmB,MAAM,OAAO,KAAK,QAAQ,KAAK,MAAM;AAAA,IAC5D;AAAA,IACA;AAAA,EACF;AAEA,SAAO,iBAAiB;AAC1B;;;ACXO,IAAM,gBAAgB,OAAO;AAAA,EAClC;AAAA,EACA;AACF,MAAY;AACV,MAAI,CAAC,QAAQ,QAAQ;AACnB,WAAO;AAAA,MACL,GAAG;AAAA,MACH,UAAU,CAAC;AAAA,IACb;AAAA,EACF;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,MAAM,YAAY;AAAA,MAC1B,UAAU,QAAQ;AAAA,MAClB,OAAO,QAAQ;AAAA,MACf;AAAA,IACF,CAAC;AAAA,EACH;AACF;;;AC3BA,oBAAoB;AAEb,IAAM,eAAe,MAC1B,QAAI,mBAAI,EAAE,CAAC","sourcesContent":["export { extendMessage } from '@/lib/messages/extendMessage'\nexport { optimisticId } from '@/lib/optimistic/optimisticId'\n","import OpenAI from 'openai'\n\ntype Args = {\n threadId: string\n runId: string\n client: OpenAI\n}\n\nexport const getRunSteps = async ({\n threadId,\n runId,\n client,\n}: Args) => {\n const runStepsResponse = await client.beta.threads.runs.steps.list(\n threadId,\n runId,\n )\n\n return runStepsResponse.data\n}\n","import OpenAI from 'openai'\nimport { getRunSteps } from '@/lib/runSteps/getRunSteps'\n\ntype Args = {\n message: OpenAI.Beta.Threads.Messages.
|
|
1
|
+
{"version":3,"sources":["../src/utils.ts","../src/lib/runSteps/getRunSteps/index.ts","../src/lib/messages/extendMessage.ts","../src/lib/optimistic/optimisticId.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACQO,IAAM,cAAc,OAAO;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AACF,MAAY;AACV,QAAM,mBAAmB,MAAM,OAAO,KAAK,QAAQ,KAAK,MAAM;AAAA,IAC5D;AAAA,IACA;AAAA,EACF;AAEA,SAAO,iBAAiB;AAC1B;;;ACXO,IAAM,gBAAgB,OAAO;AAAA,EAClC;AAAA,EACA;AACF,MAAY;AACV,MAAI,CAAC,QAAQ,QAAQ;AACnB,WAAO;AAAA,MACL,GAAG;AAAA,MACH,UAAU,CAAC;AAAA,IACb;AAAA,EACF;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,MAAM,YAAY;AAAA,MAC1B,UAAU,QAAQ;AAAA,MAClB,OAAO,QAAQ;AAAA,MACf;AAAA,IACF,CAAC;AAAA,EACH;AACF;;;AC3BA,oBAAoB;AAEb,IAAM,eAAe,MAC1B,QAAI,mBAAI,EAAE,CAAC","sourcesContent":["export { extendMessage } from '@/lib/messages/extendMessage'\nexport { optimisticId } from '@/lib/optimistic/optimisticId'\n","import OpenAI from 'openai'\n\ntype Args = {\n threadId: string\n runId: string\n client: OpenAI\n}\n\nexport const getRunSteps = async ({\n threadId,\n runId,\n client,\n}: Args) => {\n const runStepsResponse = await client.beta.threads.runs.steps.list(\n threadId,\n runId,\n )\n\n return runStepsResponse.data\n}\n","import OpenAI from 'openai'\nimport { getRunSteps } from '@/lib/runSteps/getRunSteps'\n\ntype Args = {\n message: OpenAI.Beta.Threads.Messages.Message\n client: OpenAI\n}\n\nexport const extendMessage = async ({\n message,\n client,\n}: Args) => {\n if (!message.run_id) {\n return {\n ...message,\n runSteps: [],\n }\n }\n\n return {\n ...message,\n runSteps: await getRunSteps({\n threadId: message.thread_id,\n runId: message.run_id,\n client,\n }),\n }\n}\n","import { uid } from 'radash'\n\nexport const optimisticId = () => (\n `-${uid(24)}`\n)\n"]}
|
package/dist/utils.d.cts
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
|
|
3
3
|
type Args = {
|
|
4
|
-
message: OpenAI.Beta.Threads.Messages.
|
|
4
|
+
message: OpenAI.Beta.Threads.Messages.Message;
|
|
5
5
|
client: OpenAI;
|
|
6
6
|
};
|
|
7
7
|
declare const extendMessage: ({ message, client, }: Args) => Promise<{
|
|
8
8
|
runSteps: OpenAI.Beta.Threads.Runs.Steps.RunStep[];
|
|
9
9
|
id: string;
|
|
10
10
|
assistant_id: string | null;
|
|
11
|
-
|
|
11
|
+
completed_at: number | null;
|
|
12
|
+
content: OpenAI.Beta.Threads.Messages.MessageContent[];
|
|
12
13
|
created_at: number;
|
|
13
14
|
file_ids: string[];
|
|
15
|
+
incomplete_at: number | null;
|
|
16
|
+
incomplete_details: OpenAI.Beta.Threads.Messages.Message.IncompleteDetails | null;
|
|
14
17
|
metadata: unknown;
|
|
15
18
|
object: "thread.message";
|
|
16
19
|
role: "user" | "assistant";
|
|
17
20
|
run_id: string | null;
|
|
21
|
+
status: "in_progress" | "incomplete" | "completed";
|
|
18
22
|
thread_id: string;
|
|
19
23
|
}>;
|
|
20
24
|
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
|
|
3
3
|
type Args = {
|
|
4
|
-
message: OpenAI.Beta.Threads.Messages.
|
|
4
|
+
message: OpenAI.Beta.Threads.Messages.Message;
|
|
5
5
|
client: OpenAI;
|
|
6
6
|
};
|
|
7
7
|
declare const extendMessage: ({ message, client, }: Args) => Promise<{
|
|
8
8
|
runSteps: OpenAI.Beta.Threads.Runs.Steps.RunStep[];
|
|
9
9
|
id: string;
|
|
10
10
|
assistant_id: string | null;
|
|
11
|
-
|
|
11
|
+
completed_at: number | null;
|
|
12
|
+
content: OpenAI.Beta.Threads.Messages.MessageContent[];
|
|
12
13
|
created_at: number;
|
|
13
14
|
file_ids: string[];
|
|
15
|
+
incomplete_at: number | null;
|
|
16
|
+
incomplete_details: OpenAI.Beta.Threads.Messages.Message.IncompleteDetails | null;
|
|
14
17
|
metadata: unknown;
|
|
15
18
|
object: "thread.message";
|
|
16
19
|
role: "user" | "assistant";
|
|
17
20
|
run_id: string | null;
|
|
21
|
+
status: "in_progress" | "incomplete" | "completed";
|
|
18
22
|
thread_id: string;
|
|
19
23
|
}>;
|
|
20
24
|
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/lib/runSteps/getRunSteps/index.ts","../src/lib/messages/extendMessage.ts","../src/lib/optimistic/optimisticId.ts"],"names":[],"mappings":";AAQO,IAAM,cAAc,OAAO;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AACF,MAAY;AACV,QAAM,mBAAmB,MAAM,OAAO,KAAK,QAAQ,KAAK,MAAM;AAAA,IAC5D;AAAA,IACA;AAAA,EACF;AAEA,SAAO,iBAAiB;AAC1B;;;ACXO,IAAM,gBAAgB,OAAO;AAAA,EAClC;AAAA,EACA;AACF,MAAY;AACV,MAAI,CAAC,QAAQ,QAAQ;AACnB,WAAO;AAAA,MACL,GAAG;AAAA,MACH,UAAU,CAAC;AAAA,IACb;AAAA,EACF;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,MAAM,YAAY;AAAA,MAC1B,UAAU,QAAQ;AAAA,MAClB,OAAO,QAAQ;AAAA,MACf;AAAA,IACF,CAAC;AAAA,EACH;AACF;;;AC3BA,SAAS,WAAW;AAEb,IAAM,eAAe,MAC1B,IAAI,IAAI,EAAE,CAAC","sourcesContent":["import OpenAI from 'openai'\n\ntype Args = {\n threadId: string\n runId: string\n client: OpenAI\n}\n\nexport const getRunSteps = async ({\n threadId,\n runId,\n client,\n}: Args) => {\n const runStepsResponse = await client.beta.threads.runs.steps.list(\n threadId,\n runId,\n )\n\n return runStepsResponse.data\n}\n","import OpenAI from 'openai'\nimport { getRunSteps } from '@/lib/runSteps/getRunSteps'\n\ntype Args = {\n message: OpenAI.Beta.Threads.Messages.
|
|
1
|
+
{"version":3,"sources":["../src/lib/runSteps/getRunSteps/index.ts","../src/lib/messages/extendMessage.ts","../src/lib/optimistic/optimisticId.ts"],"names":[],"mappings":";AAQO,IAAM,cAAc,OAAO;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AACF,MAAY;AACV,QAAM,mBAAmB,MAAM,OAAO,KAAK,QAAQ,KAAK,MAAM;AAAA,IAC5D;AAAA,IACA;AAAA,EACF;AAEA,SAAO,iBAAiB;AAC1B;;;ACXO,IAAM,gBAAgB,OAAO;AAAA,EAClC;AAAA,EACA;AACF,MAAY;AACV,MAAI,CAAC,QAAQ,QAAQ;AACnB,WAAO;AAAA,MACL,GAAG;AAAA,MACH,UAAU,CAAC;AAAA,IACb;AAAA,EACF;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,MAAM,YAAY;AAAA,MAC1B,UAAU,QAAQ;AAAA,MAClB,OAAO,QAAQ;AAAA,MACf;AAAA,IACF,CAAC;AAAA,EACH;AACF;;;AC3BA,SAAS,WAAW;AAEb,IAAM,eAAe,MAC1B,IAAI,IAAI,EAAE,CAAC","sourcesContent":["import OpenAI from 'openai'\n\ntype Args = {\n threadId: string\n runId: string\n client: OpenAI\n}\n\nexport const getRunSteps = async ({\n threadId,\n runId,\n client,\n}: Args) => {\n const runStepsResponse = await client.beta.threads.runs.steps.list(\n threadId,\n runId,\n )\n\n return runStepsResponse.data\n}\n","import OpenAI from 'openai'\nimport { getRunSteps } from '@/lib/runSteps/getRunSteps'\n\ntype Args = {\n message: OpenAI.Beta.Threads.Messages.Message\n client: OpenAI\n}\n\nexport const extendMessage = async ({\n message,\n client,\n}: Args) => {\n if (!message.run_id) {\n return {\n ...message,\n runSteps: [],\n }\n }\n\n return {\n ...message,\n runSteps: await getRunSteps({\n threadId: message.thread_id,\n runId: message.run_id,\n client,\n }),\n }\n}\n","import { uid } from 'radash'\n\nexport const optimisticId = () => (\n `-${uid(24)}`\n)\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@superinterface/react",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -22,16 +22,19 @@
|
|
|
22
22
|
"@hookform/resolvers": "^3.3.4",
|
|
23
23
|
"@radix-ui/react-icons": "^1.3.0",
|
|
24
24
|
"@radix-ui/react-toast": "^1.1.5",
|
|
25
|
+
"@streamparser/json": "^0.0.20",
|
|
26
|
+
"@streamparser/json-whatwg": "^0.0.20",
|
|
27
|
+
"ai": "^3.0.12",
|
|
25
28
|
"dayjs": "^1.11.10",
|
|
26
29
|
"detect-browser": "^5.3.0",
|
|
27
30
|
"howler": "^2.2.4",
|
|
28
31
|
"lodash": "^4.17.21",
|
|
29
|
-
"openai": "^4.
|
|
32
|
+
"openai": "^4.29.1",
|
|
30
33
|
"p-map": "^7.0.1",
|
|
31
|
-
"radash": "^12.
|
|
34
|
+
"radash": "^12.1.0",
|
|
32
35
|
"react-children-utilities": "^2.10.0",
|
|
33
|
-
"react-hook-form": "^7.
|
|
34
|
-
"react-intersection-observer": "^9.8.
|
|
36
|
+
"react-hook-form": "^7.51.0",
|
|
37
|
+
"react-intersection-observer": "^9.8.1",
|
|
35
38
|
"react-remark": "^2.1.0",
|
|
36
39
|
"react-speech-recognition": "^3.10.0",
|
|
37
40
|
"react-textarea-autosize": "^8.5.3",
|
|
@@ -51,8 +54,8 @@
|
|
|
51
54
|
},
|
|
52
55
|
"devDependencies": {
|
|
53
56
|
"@tanstack/react-query": ">=5.0.0",
|
|
54
|
-
"@types/lodash": "^4.
|
|
55
|
-
"@types/react": "^18.2.
|
|
57
|
+
"@types/lodash": "^4.17.0",
|
|
58
|
+
"@types/react": "^18.2.66",
|
|
56
59
|
"@types/react-speech-recognition": "^3.9.5",
|
|
57
60
|
"react": ">=18.0.0",
|
|
58
61
|
"tsup": "^8.0.2"
|