@assistant-ui/react 0.5.80 → 0.5.82
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/{chunk-BDPD5HCK.js → chunk-C6UZOY5A.js} +1 -1
- package/dist/chunk-C6UZOY5A.js.map +1 -0
- package/dist/{chunk-RRW3NW2F.mjs → chunk-TWIMAOZR.mjs} +1 -1
- package/dist/chunk-TWIMAOZR.mjs.map +1 -0
- package/dist/{edge-rTP-G718.d.mts → edge-8bY1SEQ-.d.mts} +4 -1
- package/dist/{edge-rTP-G718.d.ts → edge-8bY1SEQ-.d.ts} +4 -1
- package/dist/edge.js.map +1 -1
- package/dist/edge.mjs.map +1 -1
- package/dist/index.d.mts +150 -25
- package/dist/index.d.ts +150 -25
- package/dist/index.js +420 -261
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +311 -152
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
- package/dist/chunk-BDPD5HCK.js.map +0 -1
- package/dist/chunk-RRW3NW2F.mjs.map +0 -1
package/dist/index.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class; var _class2; var _class3; var _class4; var _class5; var _class6; var _class7; var _class8; var _class9; var _class10; var _class11; var _class12; var _class13; var _class14; var _class15; var _class16;
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class; var _class2; var _class3; var _class4; var _class5; var _class6; var _class7; var _class8; var _class9; var _class10; var _class11; var _class12; var _class13; var _class14; var _class15; var _class16;
|
2
2
|
|
3
3
|
|
4
4
|
|
@@ -9,7 +9,7 @@
|
|
9
9
|
|
10
10
|
|
11
11
|
|
12
|
-
var
|
12
|
+
var _chunkC6UZOY5Ajs = require('./chunk-C6UZOY5A.js');
|
13
13
|
|
14
14
|
|
15
15
|
var _chunkPZ5AY32Cjs = require('./chunk-PZ5AY32C.js');
|
@@ -155,6 +155,15 @@ var {
|
|
155
155
|
useViewport: useThreadViewport,
|
156
156
|
useViewportStore: useThreadViewportStore
|
157
157
|
} = createContextStoreHook(useThreadContext, "useViewport");
|
158
|
+
function useThreadModelConfig(options) {
|
159
|
+
const [, rerender] = _react.useState.call(void 0, {});
|
160
|
+
const runtime = useThreadRuntime(options);
|
161
|
+
_react.useEffect.call(void 0, () => {
|
162
|
+
return _optionalChain([runtime, 'optionalAccess', _5 => _5.unstable_on, 'call', _6 => _6("model-config-update", () => rerender({}))]);
|
163
|
+
}, [runtime]);
|
164
|
+
if (!runtime) return null;
|
165
|
+
return _optionalChain([runtime, 'optionalAccess', _7 => _7.getModelConfig, 'call', _8 => _8()]);
|
166
|
+
}
|
158
167
|
|
159
168
|
// src/context/stores/ThreadViewport.tsx
|
160
169
|
|
@@ -294,6 +303,9 @@ var ContentPartRuntimeImpl = class {
|
|
294
303
|
this.messageApi = messageApi;
|
295
304
|
this.threadApi = threadApi;
|
296
305
|
}
|
306
|
+
get path() {
|
307
|
+
return this.contentBinding.path;
|
308
|
+
}
|
297
309
|
getState() {
|
298
310
|
return this.contentBinding.getState();
|
299
311
|
}
|
@@ -404,7 +416,7 @@ var { useComposer, useComposerStore } = createContextStoreHook(
|
|
404
416
|
function useComposerRuntime(options) {
|
405
417
|
const messageRuntime = useMessageRuntime({ optional: true });
|
406
418
|
const threadRuntime = useThreadRuntime(options);
|
407
|
-
return messageRuntime ? messageRuntime.composer : _nullishCoalesce(_optionalChain([threadRuntime, 'optionalAccess',
|
419
|
+
return messageRuntime ? messageRuntime.composer : _nullishCoalesce(_optionalChain([threadRuntime, 'optionalAccess', _9 => _9.composer]), () => ( null));
|
408
420
|
}
|
409
421
|
|
410
422
|
// src/hooks/useAppendMessage.tsx
|
@@ -448,7 +460,7 @@ var useAssistantTool = (tool) => {
|
|
448
460
|
const unsub2 = render ? toolUIsStore.getState().setToolUI(toolName, render) : void 0;
|
449
461
|
return () => {
|
450
462
|
unsub1();
|
451
|
-
_optionalChain([unsub2, 'optionalCall',
|
463
|
+
_optionalChain([unsub2, 'optionalCall', _10 => _10()]);
|
452
464
|
};
|
453
465
|
}, [assistantRuntime, toolUIsStore, tool]);
|
454
466
|
};
|
@@ -500,64 +512,23 @@ var useAssistantInstructions = (instruction) => {
|
|
500
512
|
|
501
513
|
// src/primitive-hooks/actionBar/useActionBarCopy.tsx
|
502
514
|
|
503
|
-
|
504
|
-
// src/utils/combined/useCombinedStore.ts
|
505
|
-
|
506
|
-
|
507
|
-
// src/utils/combined/createCombinedStore.ts
|
508
|
-
|
509
|
-
var createCombinedStore = (stores) => {
|
510
|
-
const subscribe = (callback) => {
|
511
|
-
const unsubscribes = stores.map((store) => store.subscribe(callback));
|
512
|
-
return () => {
|
513
|
-
for (const unsub of unsubscribes) {
|
514
|
-
unsub();
|
515
|
-
}
|
516
|
-
};
|
517
|
-
};
|
518
|
-
return (selector) => {
|
519
|
-
const getSnapshot = () => selector(...stores.map((store) => store.getState()));
|
520
|
-
return _react.useSyncExternalStore.call(void 0, subscribe, getSnapshot, getSnapshot);
|
521
|
-
};
|
522
|
-
};
|
523
|
-
|
524
|
-
// src/utils/combined/useCombinedStore.ts
|
525
|
-
var useCombinedStore = (stores, selector) => {
|
526
|
-
const useCombined = _react.useMemo.call(void 0, () => createCombinedStore(stores), stores);
|
527
|
-
return useCombined(selector);
|
528
|
-
};
|
529
|
-
|
530
|
-
// src/utils/getThreadMessageText.tsx
|
531
|
-
var getThreadMessageText = (message) => {
|
532
|
-
const textParts = message.content.filter(
|
533
|
-
(part) => part.type === "text"
|
534
|
-
);
|
535
|
-
return textParts.map((part) => part.text).join("\n\n");
|
536
|
-
};
|
537
|
-
|
538
|
-
// src/primitive-hooks/actionBar/useActionBarCopy.tsx
|
539
515
|
var useActionBarCopy = ({
|
540
516
|
copiedDuration = 3e3
|
541
517
|
} = {}) => {
|
542
518
|
const messageRuntime = useMessageRuntime();
|
543
519
|
const composerRuntime = useComposerRuntime();
|
544
|
-
const
|
545
|
-
const hasCopyableContent =
|
546
|
-
|
547
|
-
|
548
|
-
return !c.isEditing && (message.role !== "assistant" || message.status.type !== "running") && message.content.some((c2) => c2.type === "text" && c2.text.length > 0);
|
549
|
-
}
|
550
|
-
);
|
520
|
+
const setIsCopied = useMessageUtils((s) => s.setIsCopied);
|
521
|
+
const hasCopyableContent = useMessage((message) => {
|
522
|
+
return (message.role !== "assistant" || message.status.type !== "running") && message.content.some((c) => c.type === "text" && c.text.length > 0);
|
523
|
+
});
|
551
524
|
const callback = _react.useCallback.call(void 0, () => {
|
552
|
-
const message = messageRuntime.getState();
|
553
|
-
const { setIsCopied } = messageUtilsStore.getState();
|
554
525
|
const { isEditing, text: composerValue } = composerRuntime.getState();
|
555
|
-
const valueToCopy = isEditing ? composerValue :
|
526
|
+
const valueToCopy = isEditing ? composerValue : messageRuntime.unstable_getCopyText();
|
556
527
|
navigator.clipboard.writeText(valueToCopy).then(() => {
|
557
528
|
setIsCopied(true);
|
558
529
|
setTimeout(() => setIsCopied(false), copiedDuration);
|
559
530
|
});
|
560
|
-
}, [messageRuntime,
|
531
|
+
}, [messageRuntime, setIsCopied, composerRuntime, copiedDuration]);
|
561
532
|
if (!hasCopyableContent) return null;
|
562
533
|
return callback;
|
563
534
|
};
|
@@ -576,6 +547,34 @@ var useActionBarEdit = () => {
|
|
576
547
|
|
577
548
|
// src/primitive-hooks/actionBar/useActionBarReload.tsx
|
578
549
|
|
550
|
+
|
551
|
+
// src/utils/combined/useCombinedStore.ts
|
552
|
+
|
553
|
+
|
554
|
+
// src/utils/combined/createCombinedStore.ts
|
555
|
+
|
556
|
+
var createCombinedStore = (stores) => {
|
557
|
+
const subscribe = (callback) => {
|
558
|
+
const unsubscribes = stores.map((store) => store.subscribe(callback));
|
559
|
+
return () => {
|
560
|
+
for (const unsub of unsubscribes) {
|
561
|
+
unsub();
|
562
|
+
}
|
563
|
+
};
|
564
|
+
};
|
565
|
+
return (selector) => {
|
566
|
+
const getSnapshot = () => selector(...stores.map((store) => store.getState()));
|
567
|
+
return _react.useSyncExternalStore.call(void 0, subscribe, getSnapshot, getSnapshot);
|
568
|
+
};
|
569
|
+
};
|
570
|
+
|
571
|
+
// src/utils/combined/useCombinedStore.ts
|
572
|
+
var useCombinedStore = (stores, selector) => {
|
573
|
+
const useCombined = _react.useMemo.call(void 0, () => createCombinedStore(stores), stores);
|
574
|
+
return useCombined(selector);
|
575
|
+
};
|
576
|
+
|
577
|
+
// src/primitive-hooks/actionBar/useActionBarReload.tsx
|
579
578
|
var useActionBarReload = () => {
|
580
579
|
const messageRuntime = useMessageRuntime();
|
581
580
|
const threadRuntime = useThreadRuntime();
|
@@ -723,7 +722,7 @@ var useComposerAddAttachment = () => {
|
|
723
722
|
input.accept = attachmentAccept;
|
724
723
|
}
|
725
724
|
input.onchange = (e) => {
|
726
|
-
const file = _optionalChain([e, 'access',
|
725
|
+
const file = _optionalChain([e, 'access', _11 => _11.target, 'access', _12 => _12.files, 'optionalAccess', _13 => _13[0]]);
|
727
726
|
if (!file) return;
|
728
727
|
composerRuntime.addAttachment(file);
|
729
728
|
};
|
@@ -799,7 +798,7 @@ var useMessageIf = (props) => {
|
|
799
798
|
return false;
|
800
799
|
if (props.hasContent === true && content.length === 0) return false;
|
801
800
|
if (props.hasContent === false && content.length > 0) return false;
|
802
|
-
if (props.submittedFeedback !== void 0 && (_nullishCoalesce(_optionalChain([submittedFeedback, 'optionalAccess',
|
801
|
+
if (props.submittedFeedback !== void 0 && (_nullishCoalesce(_optionalChain([submittedFeedback, 'optionalAccess', _14 => _14.type]), () => ( null))) !== props.submittedFeedback)
|
803
802
|
return false;
|
804
803
|
return true;
|
805
804
|
}
|
@@ -933,7 +932,7 @@ var ActionBarPrimitiveCopy = _react.forwardRef.call(void 0, ({ copiedDuration, o
|
|
933
932
|
ref: forwardedRef,
|
934
933
|
disabled: disabled || !callback,
|
935
934
|
onClick: _primitive.composeEventHandlers.call(void 0, onClick, () => {
|
936
|
-
_optionalChain([callback, 'optionalCall',
|
935
|
+
_optionalChain([callback, 'optionalCall', _15 => _15()]);
|
937
936
|
})
|
938
937
|
}
|
939
938
|
);
|
@@ -965,7 +964,7 @@ var createActionButton = (displayName, useActionButton, forwardProps = []) => {
|
|
965
964
|
ref: forwardedRef,
|
966
965
|
disabled: primitiveProps.disabled || !callback,
|
967
966
|
onClick: _primitive.composeEventHandlers.call(void 0, primitiveProps.onClick, () => {
|
968
|
-
_optionalChain([callback, 'optionalCall',
|
967
|
+
_optionalChain([callback, 'optionalCall', _16 => _16()]);
|
969
968
|
})
|
970
969
|
}
|
971
970
|
);
|
@@ -1014,7 +1013,7 @@ var ActionBarPrimitiveStopSpeaking = _react.forwardRef.call(void 0, (props, ref)
|
|
1014
1013
|
...props,
|
1015
1014
|
ref,
|
1016
1015
|
onClick: _primitive.composeEventHandlers.call(void 0, props.onClick, () => {
|
1017
|
-
_optionalChain([callback, 'optionalCall',
|
1016
|
+
_optionalChain([callback, 'optionalCall', _17 => _17()]);
|
1018
1017
|
})
|
1019
1018
|
}
|
1020
1019
|
);
|
@@ -1028,7 +1027,7 @@ ActionBarPrimitiveStopSpeaking.displayName = "ActionBarPrimitive.StopSpeaking";
|
|
1028
1027
|
|
1029
1028
|
var ActionBarPrimitiveFeedbackPositive = _react.forwardRef.call(void 0, ({ onClick, disabled, ...props }, forwardedRef) => {
|
1030
1029
|
const isSubmitted = useMessage(
|
1031
|
-
(u) => _optionalChain([u, 'access',
|
1030
|
+
(u) => _optionalChain([u, 'access', _18 => _18.submittedFeedback, 'optionalAccess', _19 => _19.type]) === "positive"
|
1032
1031
|
);
|
1033
1032
|
const callback = useActionBarFeedbackPositive();
|
1034
1033
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
@@ -1040,7 +1039,7 @@ var ActionBarPrimitiveFeedbackPositive = _react.forwardRef.call(void 0, ({ onCli
|
|
1040
1039
|
ref: forwardedRef,
|
1041
1040
|
disabled: disabled || !callback,
|
1042
1041
|
onClick: _primitive.composeEventHandlers.call(void 0, onClick, () => {
|
1043
|
-
_optionalChain([callback, 'optionalCall',
|
1042
|
+
_optionalChain([callback, 'optionalCall', _20 => _20()]);
|
1044
1043
|
})
|
1045
1044
|
}
|
1046
1045
|
);
|
@@ -1054,7 +1053,7 @@ ActionBarPrimitiveFeedbackPositive.displayName = "ActionBarPrimitive.FeedbackPos
|
|
1054
1053
|
|
1055
1054
|
var ActionBarPrimitiveFeedbackNegative = _react.forwardRef.call(void 0, ({ onClick, disabled, ...props }, forwardedRef) => {
|
1056
1055
|
const isSubmitted = useMessage(
|
1057
|
-
(u) => _optionalChain([u, 'access',
|
1056
|
+
(u) => _optionalChain([u, 'access', _21 => _21.submittedFeedback, 'optionalAccess', _22 => _22.type]) === "negative"
|
1058
1057
|
);
|
1059
1058
|
const callback = useActionBarFeedbackNegative();
|
1060
1059
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
@@ -1066,7 +1065,7 @@ var ActionBarPrimitiveFeedbackNegative = _react.forwardRef.call(void 0, ({ onCli
|
|
1066
1065
|
ref: forwardedRef,
|
1067
1066
|
disabled: disabled || !callback,
|
1068
1067
|
onClick: _primitive.composeEventHandlers.call(void 0, onClick, () => {
|
1069
|
-
_optionalChain([callback, 'optionalCall',
|
1068
|
+
_optionalChain([callback, 'optionalCall', _23 => _23()]);
|
1070
1069
|
})
|
1071
1070
|
}
|
1072
1071
|
);
|
@@ -1224,7 +1223,7 @@ var AttachmentContext = _react.createContext.call(void 0,
|
|
1224
1223
|
);
|
1225
1224
|
function useAttachmentContext(options) {
|
1226
1225
|
const context = _react.useContext.call(void 0, AttachmentContext);
|
1227
|
-
if (!_optionalChain([options, 'optionalAccess',
|
1226
|
+
if (!_optionalChain([options, 'optionalAccess', _24 => _24.optional]) && !context)
|
1228
1227
|
throw new Error(
|
1229
1228
|
"This component must be used within a ComposerPrimitive.Attachments or MessagePrimitive.Attachments component."
|
1230
1229
|
);
|
@@ -1505,7 +1504,7 @@ var withSmoothContextProvider = (Component) => {
|
|
1505
1504
|
};
|
1506
1505
|
function useSmoothContext(options) {
|
1507
1506
|
const context = _react.useContext.call(void 0, SmoothContext);
|
1508
|
-
if (!_optionalChain([options, 'optionalAccess',
|
1507
|
+
if (!_optionalChain([options, 'optionalAccess', _25 => _25.optional]) && !context)
|
1509
1508
|
throw new Error(
|
1510
1509
|
"This component must be used within a SmoothContextProvider."
|
1511
1510
|
);
|
@@ -1655,11 +1654,22 @@ var ContentPartPrimitiveInProgress = ({ children }) => {
|
|
1655
1654
|
};
|
1656
1655
|
ContentPartPrimitiveInProgress.displayName = "ContentPartPrimitive.InProgress";
|
1657
1656
|
|
1657
|
+
// src/utils/getThreadMessageText.tsx
|
1658
|
+
var getThreadMessageText = (message) => {
|
1659
|
+
const textParts = message.content.filter(
|
1660
|
+
(part) => part.type === "text"
|
1661
|
+
);
|
1662
|
+
return textParts.map((part) => part.text).join("\n\n");
|
1663
|
+
};
|
1664
|
+
|
1658
1665
|
// src/api/AttachmentRuntime.ts
|
1659
1666
|
var AttachmentRuntimeImpl = class {
|
1660
1667
|
constructor(_core) {
|
1661
1668
|
this._core = _core;
|
1662
1669
|
}
|
1670
|
+
get path() {
|
1671
|
+
return this._core.path;
|
1672
|
+
}
|
1663
1673
|
getState() {
|
1664
1674
|
return this._core.getState();
|
1665
1675
|
}
|
@@ -1715,7 +1725,7 @@ var BaseSubject = (_class2 = class {constructor() { _class2.prototype.__init5.ca
|
|
1715
1725
|
if (this._connection) return;
|
1716
1726
|
this._connection = this._connect();
|
1717
1727
|
} else {
|
1718
|
-
_optionalChain([this, 'access',
|
1728
|
+
_optionalChain([this, 'access', _26 => _26._connection, 'optionalCall', _27 => _27()]);
|
1719
1729
|
this._connection = void 0;
|
1720
1730
|
}
|
1721
1731
|
}
|
@@ -1738,6 +1748,9 @@ var LazyMemoizeSubject = (_class3 = class extends BaseSubject {
|
|
1738
1748
|
super();_class3.prototype.__init6.call(this);_class3.prototype.__init7.call(this);;
|
1739
1749
|
this.binding = binding;
|
1740
1750
|
}
|
1751
|
+
get path() {
|
1752
|
+
return this.binding.path;
|
1753
|
+
}
|
1741
1754
|
__init6() {this._previousStateDirty = true}
|
1742
1755
|
|
1743
1756
|
__init7() {this.getState = () => {
|
@@ -1784,6 +1797,9 @@ var ShallowMemoizeSubject = (_class4 = class extends BaseSubject {
|
|
1784
1797
|
throw new Error("Entry not available in the store");
|
1785
1798
|
this._previousState = state;
|
1786
1799
|
}
|
1800
|
+
get path() {
|
1801
|
+
return this.binding.path;
|
1802
|
+
}
|
1787
1803
|
|
1788
1804
|
__init8() {this.getState = () => {
|
1789
1805
|
if (!this.isConnected) this._syncState();
|
@@ -1814,42 +1830,45 @@ var EMPTY_ARRAY = Object.freeze([]);
|
|
1814
1830
|
var getThreadComposerState = (runtime) => {
|
1815
1831
|
return Object.freeze({
|
1816
1832
|
type: "thread",
|
1817
|
-
isEditing: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1818
|
-
canCancel: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1819
|
-
isEmpty: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1820
|
-
text: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1821
|
-
attachments: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1822
|
-
value: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1823
|
-
setValue: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1824
|
-
setText: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1833
|
+
isEditing: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _28 => _28.isEditing]), () => ( false)),
|
1834
|
+
canCancel: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _29 => _29.canCancel]), () => ( false)),
|
1835
|
+
isEmpty: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _30 => _30.isEmpty]), () => ( true)),
|
1836
|
+
text: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _31 => _31.text]), () => ( "")),
|
1837
|
+
attachments: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _32 => _32.attachments]), () => ( EMPTY_ARRAY)),
|
1838
|
+
value: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _33 => _33.text]), () => ( "")),
|
1839
|
+
setValue: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _34 => _34.setText, 'access', _35 => _35.bind, 'call', _36 => _36(runtime)]), () => ( METHOD_NOT_SUPPORTED)),
|
1840
|
+
setText: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _37 => _37.setText, 'access', _38 => _38.bind, 'call', _39 => _39(runtime)]), () => ( METHOD_NOT_SUPPORTED)),
|
1825
1841
|
// edit: beginEdit,
|
1826
|
-
send: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1827
|
-
cancel: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1828
|
-
reset: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1829
|
-
addAttachment: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1830
|
-
removeAttachment: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1842
|
+
send: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _40 => _40.send, 'access', _41 => _41.bind, 'call', _42 => _42(runtime)]), () => ( METHOD_NOT_SUPPORTED)),
|
1843
|
+
cancel: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _43 => _43.cancel, 'access', _44 => _44.bind, 'call', _45 => _45(runtime)]), () => ( METHOD_NOT_SUPPORTED)),
|
1844
|
+
reset: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _46 => _46.reset, 'access', _47 => _47.bind, 'call', _48 => _48(runtime)]), () => ( METHOD_NOT_SUPPORTED)),
|
1845
|
+
addAttachment: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _49 => _49.addAttachment, 'access', _50 => _50.bind, 'call', _51 => _51(runtime)]), () => ( METHOD_NOT_SUPPORTED)),
|
1846
|
+
removeAttachment: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _52 => _52.removeAttachment, 'access', _53 => _53.bind, 'call', _54 => _54(runtime)]), () => ( METHOD_NOT_SUPPORTED))
|
1831
1847
|
});
|
1832
1848
|
};
|
1833
1849
|
var getEditComposerState = (runtime, beginEdit) => {
|
1834
1850
|
return Object.freeze({
|
1835
1851
|
type: "edit",
|
1836
|
-
isEditing: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1837
|
-
canCancel: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1838
|
-
isEmpty: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1839
|
-
text: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1840
|
-
attachments: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1841
|
-
value: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1842
|
-
setValue: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1843
|
-
setText: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1852
|
+
isEditing: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _55 => _55.isEditing]), () => ( false)),
|
1853
|
+
canCancel: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _56 => _56.canCancel]), () => ( false)),
|
1854
|
+
isEmpty: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _57 => _57.isEmpty]), () => ( true)),
|
1855
|
+
text: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _58 => _58.text]), () => ( "")),
|
1856
|
+
attachments: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _59 => _59.attachments]), () => ( EMPTY_ARRAY)),
|
1857
|
+
value: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _60 => _60.text]), () => ( "")),
|
1858
|
+
setValue: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _61 => _61.setText, 'access', _62 => _62.bind, 'call', _63 => _63(runtime)]), () => ( METHOD_NOT_SUPPORTED)),
|
1859
|
+
setText: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _64 => _64.setText, 'access', _65 => _65.bind, 'call', _66 => _66(runtime)]), () => ( METHOD_NOT_SUPPORTED)),
|
1844
1860
|
edit: beginEdit,
|
1845
|
-
send: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1846
|
-
cancel: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
1861
|
+
send: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _67 => _67.send, 'access', _68 => _68.bind, 'call', _69 => _69(runtime)]), () => ( METHOD_NOT_SUPPORTED)),
|
1862
|
+
cancel: _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _70 => _70.cancel, 'access', _71 => _71.bind, 'call', _72 => _72(runtime)]), () => ( METHOD_NOT_SUPPORTED))
|
1847
1863
|
});
|
1848
1864
|
};
|
1849
1865
|
var ComposerRuntimeImpl = class {
|
1850
1866
|
constructor(_core) {
|
1851
1867
|
this._core = _core;
|
1852
1868
|
}
|
1869
|
+
get path() {
|
1870
|
+
return this._core.path;
|
1871
|
+
}
|
1853
1872
|
/**
|
1854
1873
|
* @deprecated Use `getState().isEditing` instead. This will be removed in 0.6.0.
|
1855
1874
|
*/
|
@@ -1935,23 +1954,28 @@ var ComposerRuntimeImpl = class {
|
|
1935
1954
|
}
|
1936
1955
|
};
|
1937
1956
|
var ThreadComposerRuntimeImpl = class extends ComposerRuntimeImpl {
|
1957
|
+
get path() {
|
1958
|
+
return this._core.path;
|
1959
|
+
}
|
1938
1960
|
get type() {
|
1939
1961
|
return "thread";
|
1940
1962
|
}
|
1941
1963
|
|
1942
1964
|
constructor(core) {
|
1943
1965
|
const stateBinding = new LazyMemoizeSubject({
|
1966
|
+
path: core.path,
|
1944
1967
|
getState: () => getThreadComposerState(core.getState()),
|
1945
1968
|
subscribe: (callback) => core.subscribe(callback)
|
1946
1969
|
});
|
1947
1970
|
super({
|
1971
|
+
path: core.path,
|
1948
1972
|
getState: () => core.getState(),
|
1949
1973
|
subscribe: (callback) => stateBinding.subscribe(callback)
|
1950
1974
|
});
|
1951
1975
|
this._getState = stateBinding.getState.bind(stateBinding);
|
1952
1976
|
}
|
1953
1977
|
get attachments() {
|
1954
|
-
return _nullishCoalesce(_optionalChain([this, 'access',
|
1978
|
+
return _nullishCoalesce(_optionalChain([this, 'access', _73 => _73.getState, 'call', _74 => _74(), 'optionalAccess', _75 => _75.attachments]), () => ( EMPTY_ARRAY));
|
1955
1979
|
}
|
1956
1980
|
getState() {
|
1957
1981
|
return this._getState();
|
@@ -1959,6 +1983,12 @@ var ThreadComposerRuntimeImpl = class extends ComposerRuntimeImpl {
|
|
1959
1983
|
getAttachmentByIndex(idx) {
|
1960
1984
|
return new ThreadComposerAttachmentRuntimeImpl(
|
1961
1985
|
new ShallowMemoizeSubject({
|
1986
|
+
path: {
|
1987
|
+
...this.path,
|
1988
|
+
attachmentSource: "thread-composer",
|
1989
|
+
attachmentSelector: { type: "index", index: idx },
|
1990
|
+
ref: this.path.ref + `${this.path.ref}.attachments[${idx}]`
|
1991
|
+
},
|
1962
1992
|
getState: () => {
|
1963
1993
|
const attachments = this.getState().attachments;
|
1964
1994
|
const attachment = attachments[idx];
|
@@ -1978,16 +2008,21 @@ var ThreadComposerRuntimeImpl = class extends ComposerRuntimeImpl {
|
|
1978
2008
|
var EditComposerRuntimeImpl = class extends ComposerRuntimeImpl {
|
1979
2009
|
constructor(core, _beginEdit) {
|
1980
2010
|
const stateBinding = new LazyMemoizeSubject({
|
2011
|
+
path: core.path,
|
1981
2012
|
getState: () => getEditComposerState(core.getState(), this._beginEdit),
|
1982
2013
|
subscribe: (callback) => core.subscribe(callback)
|
1983
2014
|
});
|
1984
2015
|
super({
|
2016
|
+
path: core.path,
|
1985
2017
|
getState: () => core.getState(),
|
1986
2018
|
subscribe: (callback) => stateBinding.subscribe(callback)
|
1987
2019
|
});
|
1988
2020
|
this._beginEdit = _beginEdit;
|
1989
2021
|
this._getState = stateBinding.getState.bind(stateBinding);
|
1990
2022
|
}
|
2023
|
+
get path() {
|
2024
|
+
return this._core.path;
|
2025
|
+
}
|
1991
2026
|
get type() {
|
1992
2027
|
return "edit";
|
1993
2028
|
}
|
@@ -2007,6 +2042,12 @@ var EditComposerRuntimeImpl = class extends ComposerRuntimeImpl {
|
|
2007
2042
|
getAttachmentByIndex(idx) {
|
2008
2043
|
return new EditComposerAttachmentRuntimeImpl(
|
2009
2044
|
new ShallowMemoizeSubject({
|
2045
|
+
path: {
|
2046
|
+
...this.path,
|
2047
|
+
attachmentSource: "edit-composer",
|
2048
|
+
attachmentSelector: { type: "index", index: idx },
|
2049
|
+
ref: this.path.ref + `${this.path.ref}.attachments[${idx}]`
|
2050
|
+
},
|
2010
2051
|
getState: () => {
|
2011
2052
|
const attachments = this.getState().attachments;
|
2012
2053
|
const attachment = attachments[idx];
|
@@ -2030,6 +2071,9 @@ var NestedSubscriptionSubject = class extends BaseSubject {
|
|
2030
2071
|
super();
|
2031
2072
|
this.binding = binding;
|
2032
2073
|
}
|
2074
|
+
get path() {
|
2075
|
+
return this.binding.path;
|
2076
|
+
}
|
2033
2077
|
getState() {
|
2034
2078
|
return this.binding.getState();
|
2035
2079
|
}
|
@@ -2041,19 +2085,19 @@ var NestedSubscriptionSubject = class extends BaseSubject {
|
|
2041
2085
|
this.notifySubscribers();
|
2042
2086
|
};
|
2043
2087
|
let lastState = this.binding.getState();
|
2044
|
-
let innerUnsubscribe = _optionalChain([lastState, 'optionalAccess',
|
2088
|
+
let innerUnsubscribe = _optionalChain([lastState, 'optionalAccess', _76 => _76.subscribe, 'call', _77 => _77(callback)]);
|
2045
2089
|
const onRuntimeUpdate = () => {
|
2046
2090
|
const newState = this.binding.getState();
|
2047
2091
|
if (newState === lastState) return;
|
2048
2092
|
lastState = newState;
|
2049
|
-
_optionalChain([innerUnsubscribe, 'optionalCall',
|
2050
|
-
innerUnsubscribe = _optionalChain([this, 'access',
|
2093
|
+
_optionalChain([innerUnsubscribe, 'optionalCall', _78 => _78()]);
|
2094
|
+
innerUnsubscribe = _optionalChain([this, 'access', _79 => _79.binding, 'access', _80 => _80.getState, 'call', _81 => _81(), 'optionalAccess', _82 => _82.subscribe, 'call', _83 => _83(callback)]);
|
2051
2095
|
callback();
|
2052
2096
|
};
|
2053
2097
|
const outerUnsubscribe = this.outerSubscribe(onRuntimeUpdate);
|
2054
2098
|
return () => {
|
2055
|
-
_optionalChain([outerUnsubscribe, 'optionalCall',
|
2056
|
-
_optionalChain([innerUnsubscribe, 'optionalCall',
|
2099
|
+
_optionalChain([outerUnsubscribe, 'optionalCall', _84 => _84()]);
|
2100
|
+
_optionalChain([innerUnsubscribe, 'optionalCall', _85 => _85()]);
|
2057
2101
|
};
|
2058
2102
|
}
|
2059
2103
|
};
|
@@ -2092,18 +2136,27 @@ var getContentPartState = (message, partIndex) => {
|
|
2092
2136
|
const status = toContentPartStatus(message, partIndex, part);
|
2093
2137
|
return Object.freeze({ ...part, part, status });
|
2094
2138
|
};
|
2095
|
-
var MessageRuntimeImpl =
|
2096
|
-
constructor(_core, _threadBinding) {
|
2139
|
+
var MessageRuntimeImpl = class {
|
2140
|
+
constructor(_core, _threadBinding) {
|
2097
2141
|
this._core = _core;
|
2098
2142
|
this._threadBinding = _threadBinding;
|
2143
|
+
this.composer = new EditComposerRuntimeImpl(
|
2144
|
+
new NestedSubscriptionSubject({
|
2145
|
+
path: {
|
2146
|
+
...this.path,
|
2147
|
+
ref: this.path.ref + `${this.path.ref}.composer`,
|
2148
|
+
composerSource: "edit"
|
2149
|
+
},
|
2150
|
+
getState: () => this._threadBinding.getState().getEditComposer(this._core.getState().id),
|
2151
|
+
subscribe: (callback) => this._threadBinding.subscribe(callback)
|
2152
|
+
}),
|
2153
|
+
() => this._threadBinding.getState().beginEdit(this._core.getState().id)
|
2154
|
+
);
|
2099
2155
|
}
|
2100
|
-
|
2101
|
-
|
2102
|
-
|
2103
|
-
|
2104
|
-
}),
|
2105
|
-
() => this._threadBinding.getState().beginEdit(this._core.getState().id)
|
2106
|
-
)}
|
2156
|
+
get path() {
|
2157
|
+
return this._core.path;
|
2158
|
+
}
|
2159
|
+
|
2107
2160
|
getState() {
|
2108
2161
|
return this._core.getState();
|
2109
2162
|
}
|
@@ -2123,7 +2176,7 @@ var MessageRuntimeImpl = (_class5 = class {
|
|
2123
2176
|
const state = this._core.getState();
|
2124
2177
|
if (!state) throw new Error("Message is not available");
|
2125
2178
|
const thread = this._threadBinding.getState();
|
2126
|
-
if (_optionalChain([thread, 'access',
|
2179
|
+
if (_optionalChain([thread, 'access', _86 => _86.speech, 'optionalAccess', _87 => _87.messageId]) === state.id) {
|
2127
2180
|
this._threadBinding.getState().stopSpeaking();
|
2128
2181
|
} else {
|
2129
2182
|
throw new Error("Message is not being spoken");
|
@@ -2159,13 +2212,21 @@ var MessageRuntimeImpl = (_class5 = class {
|
|
2159
2212
|
if (!targetBranch) throw new Error("Branch not found");
|
2160
2213
|
this._threadBinding.getState().switchToBranch(targetBranch);
|
2161
2214
|
}
|
2215
|
+
unstable_getCopyText() {
|
2216
|
+
return getThreadMessageText(this.getState());
|
2217
|
+
}
|
2162
2218
|
subscribe(callback) {
|
2163
2219
|
return this._core.subscribe(callback);
|
2164
2220
|
}
|
2165
2221
|
getContentPartByIndex(idx) {
|
2166
|
-
if (idx < 0) throw new Error("
|
2222
|
+
if (idx < 0) throw new Error("Content part index must be >= 0");
|
2167
2223
|
return new ContentPartRuntimeImpl(
|
2168
2224
|
new ShallowMemoizeSubject({
|
2225
|
+
path: {
|
2226
|
+
...this.path,
|
2227
|
+
ref: this.path.ref + `${this.path.ref}.content[${idx}]`,
|
2228
|
+
contentPartSelector: { type: "index", index: idx }
|
2229
|
+
},
|
2169
2230
|
getState: () => {
|
2170
2231
|
return getContentPartState(this.getState(), idx);
|
2171
2232
|
},
|
@@ -2175,12 +2236,40 @@ var MessageRuntimeImpl = (_class5 = class {
|
|
2175
2236
|
this._threadBinding
|
2176
2237
|
);
|
2177
2238
|
}
|
2239
|
+
getContentPartByToolCallId(toolCallId) {
|
2240
|
+
return new ContentPartRuntimeImpl(
|
2241
|
+
new ShallowMemoizeSubject({
|
2242
|
+
path: {
|
2243
|
+
...this.path,
|
2244
|
+
ref: this.path.ref + `${this.path.ref}.content[toolCallId=${JSON.stringify(toolCallId)}]`,
|
2245
|
+
contentPartSelector: { type: "toolCallId", toolCallId }
|
2246
|
+
},
|
2247
|
+
getState: () => {
|
2248
|
+
const state = this._core.getState();
|
2249
|
+
const idx = state.content.findIndex(
|
2250
|
+
(part) => part.type === "tool-call" && part.toolCallId === toolCallId
|
2251
|
+
);
|
2252
|
+
if (idx === -1) return SKIP_UPDATE;
|
2253
|
+
return getContentPartState(state, idx);
|
2254
|
+
},
|
2255
|
+
subscribe: (callback) => this._core.subscribe(callback)
|
2256
|
+
}),
|
2257
|
+
this._core,
|
2258
|
+
this._threadBinding
|
2259
|
+
);
|
2260
|
+
}
|
2178
2261
|
getAttachmentByIndex(idx) {
|
2179
2262
|
return new MessageAttachmentRuntimeImpl(
|
2180
2263
|
new ShallowMemoizeSubject({
|
2264
|
+
path: {
|
2265
|
+
...this.path,
|
2266
|
+
ref: this.path.ref + `${this.path.ref}.attachments[${idx}]`,
|
2267
|
+
attachmentSource: "message",
|
2268
|
+
attachmentSelector: { type: "index", index: idx }
|
2269
|
+
},
|
2181
2270
|
getState: () => {
|
2182
2271
|
const attachments = this.getState().attachments;
|
2183
|
-
const attachment = _optionalChain([attachments, 'optionalAccess',
|
2272
|
+
const attachment = _optionalChain([attachments, 'optionalAccess', _88 => _88[idx]]);
|
2184
2273
|
if (!attachment) return SKIP_UPDATE;
|
2185
2274
|
return {
|
2186
2275
|
...attachment,
|
@@ -2192,7 +2281,7 @@ var MessageRuntimeImpl = (_class5 = class {
|
|
2192
2281
|
})
|
2193
2282
|
);
|
2194
2283
|
}
|
2195
|
-
}
|
2284
|
+
};
|
2196
2285
|
|
2197
2286
|
// src/primitives/message/MessageContent.tsx
|
2198
2287
|
|
@@ -2263,7 +2352,7 @@ var MessageContentPartImpl = ({
|
|
2263
2352
|
};
|
2264
2353
|
var MessageContentPart = _react.memo.call(void 0,
|
2265
2354
|
MessageContentPartImpl,
|
2266
|
-
(prev, next) => prev.partIndex === next.partIndex && _optionalChain([prev, 'access',
|
2355
|
+
(prev, next) => prev.partIndex === next.partIndex && _optionalChain([prev, 'access', _89 => _89.components, 'optionalAccess', _90 => _90.Text]) === _optionalChain([next, 'access', _91 => _91.components, 'optionalAccess', _92 => _92.Text]) && _optionalChain([prev, 'access', _93 => _93.components, 'optionalAccess', _94 => _94.Image]) === _optionalChain([next, 'access', _95 => _95.components, 'optionalAccess', _96 => _96.Image]) && _optionalChain([prev, 'access', _97 => _97.components, 'optionalAccess', _98 => _98.UI]) === _optionalChain([next, 'access', _99 => _99.components, 'optionalAccess', _100 => _100.UI]) && _optionalChain([prev, 'access', _101 => _101.components, 'optionalAccess', _102 => _102.tools]) === _optionalChain([next, 'access', _103 => _103.components, 'optionalAccess', _104 => _104.tools])
|
2267
2356
|
);
|
2268
2357
|
var MessagePrimitiveContent = ({
|
2269
2358
|
components
|
@@ -2329,11 +2418,11 @@ var getComponent = (components, attachment) => {
|
|
2329
2418
|
const type = attachment.type;
|
2330
2419
|
switch (type) {
|
2331
2420
|
case "image":
|
2332
|
-
return _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
2421
|
+
return _nullishCoalesce(_optionalChain([components, 'optionalAccess', _105 => _105.Image]), () => ( _optionalChain([components, 'optionalAccess', _106 => _106.Attachment])));
|
2333
2422
|
case "document":
|
2334
|
-
return _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
2423
|
+
return _nullishCoalesce(_optionalChain([components, 'optionalAccess', _107 => _107.Document]), () => ( _optionalChain([components, 'optionalAccess', _108 => _108.Attachment])));
|
2335
2424
|
case "file":
|
2336
|
-
return _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
2425
|
+
return _nullishCoalesce(_optionalChain([components, 'optionalAccess', _109 => _109.File]), () => ( _optionalChain([components, 'optionalAccess', _110 => _110.Attachment])));
|
2337
2426
|
default:
|
2338
2427
|
const _exhaustiveCheck = type;
|
2339
2428
|
throw new Error(`Unknown attachment type: ${_exhaustiveCheck}`);
|
@@ -2356,7 +2445,7 @@ var MessageAttachmentImpl = ({ components, attachmentIndex }) => {
|
|
2356
2445
|
};
|
2357
2446
|
var MessageAttachment = _react.memo.call(void 0,
|
2358
2447
|
MessageAttachmentImpl,
|
2359
|
-
(prev, next) => prev.attachmentIndex === next.attachmentIndex && _optionalChain([prev, 'access',
|
2448
|
+
(prev, next) => prev.attachmentIndex === next.attachmentIndex && _optionalChain([prev, 'access', _111 => _111.components, 'optionalAccess', _112 => _112.Image]) === _optionalChain([next, 'access', _113 => _113.components, 'optionalAccess', _114 => _114.Image]) && _optionalChain([prev, 'access', _115 => _115.components, 'optionalAccess', _116 => _116.Document]) === _optionalChain([next, 'access', _117 => _117.components, 'optionalAccess', _118 => _118.Document]) && _optionalChain([prev, 'access', _119 => _119.components, 'optionalAccess', _120 => _120.File]) === _optionalChain([next, 'access', _121 => _121.components, 'optionalAccess', _122 => _122.File]) && _optionalChain([prev, 'access', _123 => _123.components, 'optionalAccess', _124 => _124.Attachment]) === _optionalChain([next, 'access', _125 => _125.components, 'optionalAccess', _126 => _126.Attachment])
|
2360
2449
|
);
|
2361
2450
|
var MessagePrimitiveAttachments = ({ components }) => {
|
2362
2451
|
const attachmentsCount = useMessage(({ message }) => {
|
@@ -2482,7 +2571,7 @@ var ComposerPrimitiveInput = _react.forwardRef.call(void 0,
|
|
2482
2571
|
const { isRunning } = threadRuntime.getState();
|
2483
2572
|
if (!isRunning) {
|
2484
2573
|
e.preventDefault();
|
2485
|
-
_optionalChain([textareaRef, 'access',
|
2574
|
+
_optionalChain([textareaRef, 'access', _127 => _127.current, 'optionalAccess', _128 => _128.closest, 'call', _129 => _129("form"), 'optionalAccess', _130 => _130.requestSubmit, 'call', _131 => _131()]);
|
2486
2575
|
}
|
2487
2576
|
}
|
2488
2577
|
};
|
@@ -2556,11 +2645,11 @@ var getComponent2 = (components, attachment) => {
|
|
2556
2645
|
const type = attachment.type;
|
2557
2646
|
switch (type) {
|
2558
2647
|
case "image":
|
2559
|
-
return _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
2648
|
+
return _nullishCoalesce(_optionalChain([components, 'optionalAccess', _132 => _132.Image]), () => ( _optionalChain([components, 'optionalAccess', _133 => _133.Attachment])));
|
2560
2649
|
case "document":
|
2561
|
-
return _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
2650
|
+
return _nullishCoalesce(_optionalChain([components, 'optionalAccess', _134 => _134.Document]), () => ( _optionalChain([components, 'optionalAccess', _135 => _135.Attachment])));
|
2562
2651
|
case "file":
|
2563
|
-
return _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
2652
|
+
return _nullishCoalesce(_optionalChain([components, 'optionalAccess', _136 => _136.File]), () => ( _optionalChain([components, 'optionalAccess', _137 => _137.Attachment])));
|
2564
2653
|
default:
|
2565
2654
|
const _exhaustiveCheck = type;
|
2566
2655
|
throw new Error(`Unknown attachment type: ${_exhaustiveCheck}`);
|
@@ -2583,7 +2672,7 @@ var ComposerAttachmentImpl = ({ components, attachmentIndex }) => {
|
|
2583
2672
|
};
|
2584
2673
|
var ComposerAttachment = _react.memo.call(void 0,
|
2585
2674
|
ComposerAttachmentImpl,
|
2586
|
-
(prev, next) => prev.attachmentIndex === next.attachmentIndex && _optionalChain([prev, 'access',
|
2675
|
+
(prev, next) => prev.attachmentIndex === next.attachmentIndex && _optionalChain([prev, 'access', _138 => _138.components, 'optionalAccess', _139 => _139.Image]) === _optionalChain([next, 'access', _140 => _140.components, 'optionalAccess', _141 => _141.Image]) && _optionalChain([prev, 'access', _142 => _142.components, 'optionalAccess', _143 => _143.Document]) === _optionalChain([next, 'access', _144 => _144.components, 'optionalAccess', _145 => _145.Document]) && _optionalChain([prev, 'access', _146 => _146.components, 'optionalAccess', _147 => _147.File]) === _optionalChain([next, 'access', _148 => _148.components, 'optionalAccess', _149 => _149.File]) && _optionalChain([prev, 'access', _150 => _150.components, 'optionalAccess', _151 => _151.Attachment]) === _optionalChain([next, 'access', _152 => _152.components, 'optionalAccess', _153 => _153.Attachment])
|
2587
2676
|
);
|
2588
2677
|
var ComposerPrimitiveAttachments = ({ components }) => {
|
2589
2678
|
const attachmentsCount = useComposer((s) => s.attachments.length);
|
@@ -2927,7 +3016,7 @@ var subscribeToMainThread = (runtime, callback) => {
|
|
2927
3016
|
let first = true;
|
2928
3017
|
let cleanup;
|
2929
3018
|
const inner = () => {
|
2930
|
-
_optionalChain([cleanup, 'optionalCall',
|
3019
|
+
_optionalChain([cleanup, 'optionalCall', _154 => _154()]);
|
2931
3020
|
cleanup = runtime.thread.subscribe(callback);
|
2932
3021
|
if (!first) {
|
2933
3022
|
callback();
|
@@ -2938,7 +3027,7 @@ var subscribeToMainThread = (runtime, callback) => {
|
|
2938
3027
|
inner();
|
2939
3028
|
return () => {
|
2940
3029
|
unsubscribe();
|
2941
|
-
_optionalChain([cleanup, 'optionalCall',
|
3030
|
+
_optionalChain([cleanup, 'optionalCall', _155 => _155()]);
|
2942
3031
|
};
|
2943
3032
|
};
|
2944
3033
|
|
@@ -2946,8 +3035,8 @@ var subscribeToMainThread = (runtime, callback) => {
|
|
2946
3035
|
|
2947
3036
|
|
2948
3037
|
// src/runtimes/core/BaseAssistantRuntimeCore.tsx
|
2949
|
-
var BaseAssistantRuntimeCore = (
|
2950
|
-
constructor(_thread) {;
|
3038
|
+
var BaseAssistantRuntimeCore = (_class5 = class {
|
3039
|
+
constructor(_thread) {;_class5.prototype.__init9.call(this);_class5.prototype.__init10.call(this);
|
2951
3040
|
this._thread = _thread;
|
2952
3041
|
this._thread = _thread;
|
2953
3042
|
}
|
@@ -2958,15 +3047,15 @@ var BaseAssistantRuntimeCore = (_class6 = class {
|
|
2958
3047
|
this._thread = thread;
|
2959
3048
|
this.subscriptionHandler();
|
2960
3049
|
}
|
2961
|
-
|
3050
|
+
__init9() {this._subscriptions = /* @__PURE__ */ new Set()}
|
2962
3051
|
subscribe(callback) {
|
2963
3052
|
this._subscriptions.add(callback);
|
2964
3053
|
return () => this._subscriptions.delete(callback);
|
2965
3054
|
}
|
2966
|
-
|
3055
|
+
__init10() {this.subscriptionHandler = () => {
|
2967
3056
|
for (const callback of this._subscriptions) callback();
|
2968
3057
|
}}
|
2969
|
-
},
|
3058
|
+
}, _class5);
|
2970
3059
|
|
2971
3060
|
// src/internal.ts
|
2972
3061
|
var internal_exports = {};
|
@@ -2986,12 +3075,12 @@ _chunkPZ5AY32Cjs.__export.call(void 0, internal_exports, {
|
|
2986
3075
|
|
2987
3076
|
// src/runtimes/composer/BaseComposerRuntimeCore.tsx
|
2988
3077
|
var isAttachmentComplete = (a) => a.status.type === "complete";
|
2989
|
-
var BaseComposerRuntimeCore = (
|
2990
|
-
|
3078
|
+
var BaseComposerRuntimeCore = (_class6 = class {constructor() { _class6.prototype.__init11.call(this);_class6.prototype.__init12.call(this);_class6.prototype.__init13.call(this);_class6.prototype.__init14.call(this); }
|
3079
|
+
__init11() {this.isEditing = true}
|
2991
3080
|
getAttachmentAccept() {
|
2992
|
-
return _nullishCoalesce(_optionalChain([this, 'access',
|
3081
|
+
return _nullishCoalesce(_optionalChain([this, 'access', _156 => _156.getAttachmentAdapter, 'call', _157 => _157(), 'optionalAccess', _158 => _158.accept]), () => ( "*"));
|
2993
3082
|
}
|
2994
|
-
|
3083
|
+
__init12() {this._attachments = []}
|
2995
3084
|
set attachments(value) {
|
2996
3085
|
this._attachments = value;
|
2997
3086
|
this.notifySubscribers();
|
@@ -3002,7 +3091,7 @@ var BaseComposerRuntimeCore = (_class7 = class {constructor() { _class7.prototyp
|
|
3002
3091
|
get isEmpty() {
|
3003
3092
|
return !this.text.trim() && !this.attachments.length;
|
3004
3093
|
}
|
3005
|
-
|
3094
|
+
__init13() {this._text = ""}
|
3006
3095
|
get text() {
|
3007
3096
|
return this._text;
|
3008
3097
|
}
|
@@ -3021,7 +3110,7 @@ var BaseComposerRuntimeCore = (_class7 = class {constructor() { _class7.prototyp
|
|
3021
3110
|
this.attachments.map(async (a) => {
|
3022
3111
|
if (isAttachmentComplete(a)) return a;
|
3023
3112
|
const result = await adapter.send(a);
|
3024
|
-
if (_optionalChain([result, 'access',
|
3113
|
+
if (_optionalChain([result, 'access', _159 => _159.status, 'optionalAccess', _160 => _160.type]) !== "complete") {
|
3025
3114
|
result.status = { type: "complete" };
|
3026
3115
|
}
|
3027
3116
|
return result;
|
@@ -3055,7 +3144,7 @@ var BaseComposerRuntimeCore = (_class7 = class {constructor() { _class7.prototyp
|
|
3055
3144
|
this._attachments = this._attachments.toSpliced(index, 1);
|
3056
3145
|
this.notifySubscribers();
|
3057
3146
|
}
|
3058
|
-
|
3147
|
+
__init14() {this._subscriptions = /* @__PURE__ */ new Set()}
|
3059
3148
|
notifySubscribers() {
|
3060
3149
|
for (const callback of this._subscriptions) callback();
|
3061
3150
|
}
|
@@ -3063,16 +3152,16 @@ var BaseComposerRuntimeCore = (_class7 = class {constructor() { _class7.prototyp
|
|
3063
3152
|
this._subscriptions.add(callback);
|
3064
3153
|
return () => this._subscriptions.delete(callback);
|
3065
3154
|
}
|
3066
|
-
},
|
3155
|
+
}, _class6);
|
3067
3156
|
|
3068
3157
|
// src/runtimes/composer/DefaultThreadComposerRuntimeCore.tsx
|
3069
|
-
var DefaultThreadComposerRuntimeCore = (
|
3158
|
+
var DefaultThreadComposerRuntimeCore = (_class7 = class extends BaseComposerRuntimeCore {
|
3070
3159
|
constructor(runtime) {
|
3071
|
-
super();
|
3160
|
+
super();_class7.prototype.__init15.call(this);;
|
3072
3161
|
this.runtime = runtime;
|
3073
3162
|
this.connect();
|
3074
3163
|
}
|
3075
|
-
|
3164
|
+
__init15() {this._canCancel = false}
|
3076
3165
|
get canCancel() {
|
3077
3166
|
return this._canCancel;
|
3078
3167
|
}
|
@@ -3080,7 +3169,7 @@ var DefaultThreadComposerRuntimeCore = (_class8 = class extends BaseComposerRunt
|
|
3080
3169
|
return super.attachments;
|
3081
3170
|
}
|
3082
3171
|
getAttachmentAdapter() {
|
3083
|
-
return _optionalChain([this, 'access',
|
3172
|
+
return _optionalChain([this, 'access', _161 => _161.runtime, 'access', _162 => _162.adapters, 'optionalAccess', _163 => _163.attachments]);
|
3084
3173
|
}
|
3085
3174
|
connect() {
|
3086
3175
|
return this.runtime.subscribe(() => {
|
@@ -3093,27 +3182,41 @@ var DefaultThreadComposerRuntimeCore = (_class8 = class extends BaseComposerRunt
|
|
3093
3182
|
async handleSend(message) {
|
3094
3183
|
this.runtime.append({
|
3095
3184
|
...message,
|
3096
|
-
parentId: _nullishCoalesce(_optionalChain([this, 'access',
|
3185
|
+
parentId: _nullishCoalesce(_optionalChain([this, 'access', _164 => _164.runtime, 'access', _165 => _165.messages, 'access', _166 => _166.at, 'call', _167 => _167(-1), 'optionalAccess', _168 => _168.id]), () => ( null))
|
3097
3186
|
});
|
3098
3187
|
}
|
3099
3188
|
async cancel() {
|
3100
3189
|
this.runtime.cancelRun();
|
3101
3190
|
}
|
3102
|
-
},
|
3191
|
+
}, _class7);
|
3103
3192
|
|
3104
3193
|
// src/utils/ProxyConfigProvider.ts
|
3105
|
-
var ProxyConfigProvider = (
|
3106
|
-
|
3194
|
+
var ProxyConfigProvider = (_class8 = class {constructor() { _class8.prototype.__init16.call(this);_class8.prototype.__init17.call(this); }
|
3195
|
+
__init16() {this._providers = /* @__PURE__ */ new Set()}
|
3107
3196
|
getModelConfig() {
|
3108
|
-
return
|
3197
|
+
return _chunkC6UZOY5Ajs.mergeModelConfigs.call(void 0, this._providers);
|
3109
3198
|
}
|
3110
3199
|
registerModelConfigProvider(provider) {
|
3111
3200
|
this._providers.add(provider);
|
3201
|
+
const unsubscribe = _optionalChain([provider, 'access', _169 => _169.subscribe, 'optionalCall', _170 => _170(() => {
|
3202
|
+
this.notifySubscribers();
|
3203
|
+
})]);
|
3204
|
+
this.notifySubscribers();
|
3112
3205
|
return () => {
|
3113
3206
|
this._providers.delete(provider);
|
3207
|
+
_optionalChain([unsubscribe, 'optionalCall', _171 => _171()]);
|
3208
|
+
this.notifySubscribers();
|
3114
3209
|
};
|
3115
3210
|
}
|
3116
|
-
|
3211
|
+
__init17() {this._subscribers = /* @__PURE__ */ new Set()}
|
3212
|
+
notifySubscribers() {
|
3213
|
+
for (const callback of this._subscribers) callback();
|
3214
|
+
}
|
3215
|
+
subscribe(callback) {
|
3216
|
+
this._subscribers.add(callback);
|
3217
|
+
return () => this._subscribers.delete(callback);
|
3218
|
+
}
|
3219
|
+
}, _class8);
|
3117
3220
|
|
3118
3221
|
// src/utils/idUtils.tsx
|
3119
3222
|
var _nonsecure = require('nanoid/non-secure');
|
@@ -3180,7 +3283,7 @@ var findHead = (message) => {
|
|
3180
3283
|
if ("current" in message) return message;
|
3181
3284
|
return null;
|
3182
3285
|
};
|
3183
|
-
var MessageRepository = (
|
3286
|
+
var MessageRepository = (_class9 = class {constructor() { _class9.prototype.__init18.call(this);_class9.prototype.__init19.call(this);_class9.prototype.__init20.call(this); }
|
3184
3287
|
__init18() {this.messages = /* @__PURE__ */ new Map()}
|
3185
3288
|
// message_id -> item
|
3186
3289
|
__init19() {this.head = null}
|
@@ -3226,7 +3329,7 @@ var MessageRepository = (_class10 = class {constructor() { _class10.prototype.__
|
|
3226
3329
|
}
|
3227
3330
|
}
|
3228
3331
|
getMessages() {
|
3229
|
-
const messages2 = new Array(_nullishCoalesce(_optionalChain([this, 'access',
|
3332
|
+
const messages2 = new Array(_nullishCoalesce(_optionalChain([this, 'access', _172 => _172.head, 'optionalAccess', _173 => _173.level]), () => ( 0)));
|
3230
3333
|
for (let current = this.head; current; current = current.prev) {
|
3231
3334
|
messages2[current.level] = current.current;
|
3232
3335
|
}
|
@@ -3264,7 +3367,7 @@ var MessageRepository = (_class10 = class {constructor() { _class10.prototype.__
|
|
3264
3367
|
"MessageRepository(updateMessage): Message not found. This is likely an internal bug in assistant-ui."
|
3265
3368
|
);
|
3266
3369
|
return {
|
3267
|
-
parentId: _nullishCoalesce(_optionalChain([message, 'access',
|
3370
|
+
parentId: _nullishCoalesce(_optionalChain([message, 'access', _174 => _174.prev, 'optionalAccess', _175 => _175.current, 'access', _176 => _176.id]), () => ( null)),
|
3268
3371
|
message: message.current
|
3269
3372
|
};
|
3270
3373
|
}
|
@@ -3348,11 +3451,11 @@ var MessageRepository = (_class10 = class {constructor() { _class10.prototype.__
|
|
3348
3451
|
for (const [, message] of this.messages) {
|
3349
3452
|
exportItems.push({
|
3350
3453
|
message: message.current,
|
3351
|
-
parentId: _nullishCoalesce(_optionalChain([message, 'access',
|
3454
|
+
parentId: _nullishCoalesce(_optionalChain([message, 'access', _177 => _177.prev, 'optionalAccess', _178 => _178.current, 'access', _179 => _179.id]), () => ( null))
|
3352
3455
|
});
|
3353
3456
|
}
|
3354
3457
|
return {
|
3355
|
-
headId: _nullishCoalesce(_optionalChain([this, 'access',
|
3458
|
+
headId: _nullishCoalesce(_optionalChain([this, 'access', _180 => _180.head, 'optionalAccess', _181 => _181.current, 'access', _182 => _182.id]), () => ( null)),
|
3356
3459
|
messages: exportItems
|
3357
3460
|
};
|
3358
3461
|
}
|
@@ -3360,9 +3463,9 @@ var MessageRepository = (_class10 = class {constructor() { _class10.prototype.__
|
|
3360
3463
|
for (const { message, parentId } of messages2) {
|
3361
3464
|
this.addOrUpdateMessage(parentId, message);
|
3362
3465
|
}
|
3363
|
-
this.resetHead(_nullishCoalesce(_nullishCoalesce(headId, () => ( _optionalChain([messages2, 'access',
|
3466
|
+
this.resetHead(_nullishCoalesce(_nullishCoalesce(headId, () => ( _optionalChain([messages2, 'access', _183 => _183.at, 'call', _184 => _184(-1), 'optionalAccess', _185 => _185.message, 'access', _186 => _186.id]))), () => ( null)));
|
3364
3467
|
}
|
3365
|
-
},
|
3468
|
+
}, _class9);
|
3366
3469
|
|
3367
3470
|
// src/ui/base/tooltip-icon-button.tsx
|
3368
3471
|
|
@@ -3464,7 +3567,7 @@ TooltipIconButton.displayName = "TooltipIconButton";
|
|
3464
3567
|
var toAppendMessage = (messages2, message) => {
|
3465
3568
|
if (typeof message === "string") {
|
3466
3569
|
return {
|
3467
|
-
parentId: _nullishCoalesce(_optionalChain([messages2, 'access',
|
3570
|
+
parentId: _nullishCoalesce(_optionalChain([messages2, 'access', _187 => _187.at, 'call', _188 => _188(-1), 'optionalAccess', _189 => _189.id]), () => ( null)),
|
3468
3571
|
role: "user",
|
3469
3572
|
content: [{ type: "text", text: message }],
|
3470
3573
|
attachments: []
|
@@ -3474,7 +3577,7 @@ var toAppendMessage = (messages2, message) => {
|
|
3474
3577
|
return message;
|
3475
3578
|
}
|
3476
3579
|
return {
|
3477
|
-
parentId: _nullishCoalesce(_nullishCoalesce(message.parentId, () => ( _optionalChain([messages2, 'access',
|
3580
|
+
parentId: _nullishCoalesce(_nullishCoalesce(message.parentId, () => ( _optionalChain([messages2, 'access', _190 => _190.at, 'call', _191 => _191(-1), 'optionalAccess', _192 => _192.id]))), () => ( null)),
|
3478
3581
|
role: _nullishCoalesce(message.role, () => ( "user")),
|
3479
3582
|
content: message.content,
|
3480
3583
|
attachments: _nullishCoalesce(message.attachments, () => ( []))
|
@@ -3486,15 +3589,17 @@ var getThreadState = (runtime) => {
|
|
3486
3589
|
threadId: runtime.threadId,
|
3487
3590
|
capabilities: runtime.capabilities,
|
3488
3591
|
isDisabled: runtime.isDisabled,
|
3489
|
-
isRunning: _optionalChain([lastMessage, 'optionalAccess',
|
3592
|
+
isRunning: _optionalChain([lastMessage, 'optionalAccess', _193 => _193.role]) !== "assistant" ? false : lastMessage.status.type === "running",
|
3490
3593
|
messages: runtime.messages,
|
3491
3594
|
suggestions: runtime.suggestions,
|
3492
3595
|
extras: runtime.extras,
|
3493
3596
|
speech: runtime.speech
|
3494
3597
|
});
|
3495
3598
|
};
|
3496
|
-
var ThreadRuntimeImpl = (
|
3497
|
-
|
3599
|
+
var ThreadRuntimeImpl = (_class10 = class {
|
3600
|
+
get path() {
|
3601
|
+
return this._threadBinding.path;
|
3602
|
+
}
|
3498
3603
|
/**
|
3499
3604
|
* @deprecated Use `getState().threadId` instead. This will be removed in 0.6.0.
|
3500
3605
|
*/
|
@@ -3547,24 +3652,32 @@ var ThreadRuntimeImpl = (_class11 = class {
|
|
3547
3652
|
return this._threadBinding.getState();
|
3548
3653
|
}
|
3549
3654
|
|
3550
|
-
constructor(threadBinding) {;
|
3655
|
+
constructor(threadBinding) {;_class10.prototype.__init21.call(this);
|
3551
3656
|
const stateBinding = new LazyMemoizeSubject({
|
3657
|
+
path: threadBinding.path,
|
3552
3658
|
getState: () => getThreadState(threadBinding.getState()),
|
3553
3659
|
subscribe: (callback) => threadBinding.subscribe(callback)
|
3554
3660
|
});
|
3555
3661
|
this._threadBinding = {
|
3662
|
+
path: threadBinding.path,
|
3556
3663
|
getState: () => threadBinding.getState(),
|
3557
3664
|
getStateState: () => stateBinding.getState(),
|
3558
3665
|
outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),
|
3559
3666
|
subscribe: (callback) => threadBinding.subscribe(callback)
|
3560
3667
|
};
|
3668
|
+
this.composer = new ThreadComposerRuntimeImpl(
|
3669
|
+
new NestedSubscriptionSubject({
|
3670
|
+
path: {
|
3671
|
+
...this.path,
|
3672
|
+
ref: this.path.ref + `${this.path.ref}.composer`,
|
3673
|
+
composerSource: "thread"
|
3674
|
+
},
|
3675
|
+
getState: () => this._threadBinding.getState().composer,
|
3676
|
+
subscribe: (callback) => this._threadBinding.subscribe(callback)
|
3677
|
+
})
|
3678
|
+
);
|
3561
3679
|
}
|
3562
|
-
|
3563
|
-
new NestedSubscriptionSubject({
|
3564
|
-
getState: () => this._threadBinding.getState().composer,
|
3565
|
-
subscribe: (callback) => this._threadBinding.subscribe(callback)
|
3566
|
-
})
|
3567
|
-
)}
|
3680
|
+
|
3568
3681
|
getState() {
|
3569
3682
|
return this._threadBinding.getStateState();
|
3570
3683
|
}
|
@@ -3642,37 +3755,67 @@ var ThreadRuntimeImpl = (_class11 = class {
|
|
3642
3755
|
}
|
3643
3756
|
getMesssageByIndex(idx) {
|
3644
3757
|
if (idx < 0) throw new Error("Message index must be >= 0");
|
3758
|
+
return this._getMessageRuntime(
|
3759
|
+
{
|
3760
|
+
...this.path,
|
3761
|
+
ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,
|
3762
|
+
messageSelector: { type: "index", index: idx }
|
3763
|
+
},
|
3764
|
+
() => {
|
3765
|
+
const messages2 = this._threadBinding.getState().messages;
|
3766
|
+
const message = messages2[idx];
|
3767
|
+
if (!message) return void 0;
|
3768
|
+
return {
|
3769
|
+
message,
|
3770
|
+
parentId: _nullishCoalesce(_optionalChain([messages2, 'access', _194 => _194[idx - 1], 'optionalAccess', _195 => _195.id]), () => ( null))
|
3771
|
+
};
|
3772
|
+
}
|
3773
|
+
);
|
3774
|
+
}
|
3775
|
+
getMesssageById(messageId) {
|
3776
|
+
return this._getMessageRuntime(
|
3777
|
+
{
|
3778
|
+
...this.path,
|
3779
|
+
ref: this.path.ref + `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,
|
3780
|
+
messageSelector: { type: "messageId", messageId }
|
3781
|
+
},
|
3782
|
+
() => this._threadBinding.getState().getMessageById(messageId)
|
3783
|
+
);
|
3784
|
+
}
|
3785
|
+
_getMessageRuntime(path, callback) {
|
3645
3786
|
return new MessageRuntimeImpl(
|
3646
3787
|
new ShallowMemoizeSubject({
|
3788
|
+
path,
|
3647
3789
|
getState: () => {
|
3648
|
-
const {
|
3649
|
-
const
|
3650
|
-
if (!message) return SKIP_UPDATE;
|
3790
|
+
const { message, parentId } = _nullishCoalesce(callback(), () => ( {}));
|
3791
|
+
const { messages: messages2, speech: speechState } = this._threadBinding.getState();
|
3792
|
+
if (!message || parentId === void 0) return SKIP_UPDATE;
|
3651
3793
|
const thread = this._threadBinding.getState();
|
3652
3794
|
const branches = thread.getBranches(message.id);
|
3653
3795
|
const submittedFeedback = thread.getSubmittedFeedback(message.id);
|
3654
3796
|
return {
|
3655
3797
|
...message,
|
3656
3798
|
message,
|
3657
|
-
isLast:
|
3658
|
-
parentId
|
3799
|
+
isLast: _optionalChain([messages2, 'access', _196 => _196.at, 'call', _197 => _197(-1), 'optionalAccess', _198 => _198.id]) === message.id,
|
3800
|
+
parentId,
|
3659
3801
|
branches,
|
3660
3802
|
branchNumber: branches.indexOf(message.id) + 1,
|
3661
3803
|
branchCount: branches.length,
|
3662
|
-
speech: _optionalChain([speechState, 'optionalAccess',
|
3804
|
+
speech: _optionalChain([speechState, 'optionalAccess', _199 => _199.messageId]) === message.id ? speechState : void 0,
|
3663
3805
|
submittedFeedback
|
3664
3806
|
};
|
3665
3807
|
},
|
3666
|
-
subscribe: (
|
3808
|
+
subscribe: (callback2) => this._threadBinding.subscribe(callback2)
|
3667
3809
|
}),
|
3668
3810
|
this._threadBinding
|
3669
3811
|
);
|
3670
3812
|
}
|
3671
|
-
|
3813
|
+
__init21() {this._eventListenerNestedSubscriptions = /* @__PURE__ */ new Map()}
|
3672
3814
|
unstable_on(event, callback) {
|
3673
3815
|
let subject = this._eventListenerNestedSubscriptions.get(event);
|
3674
3816
|
if (!subject) {
|
3675
3817
|
subject = new NestedSubscriptionSubject({
|
3818
|
+
path: this.path,
|
3676
3819
|
getState: () => ({
|
3677
3820
|
subscribe: (callback2) => this._threadBinding.getState().unstable_on(event, callback2)
|
3678
3821
|
}),
|
@@ -3682,7 +3825,7 @@ var ThreadRuntimeImpl = (_class11 = class {
|
|
3682
3825
|
}
|
3683
3826
|
return subject.subscribe(callback);
|
3684
3827
|
}
|
3685
|
-
},
|
3828
|
+
}, _class10);
|
3686
3829
|
|
3687
3830
|
// src/api/AssistantRuntime.ts
|
3688
3831
|
var AssistantRuntimeImpl = class _AssistantRuntimeImpl {
|
@@ -3702,16 +3845,19 @@ var AssistantRuntimeImpl = class _AssistantRuntimeImpl {
|
|
3702
3845
|
registerModelConfigProvider(provider) {
|
3703
3846
|
return this._core.registerModelConfigProvider(provider);
|
3704
3847
|
}
|
3705
|
-
// TODO events for thread switching
|
3706
3848
|
/**
|
3707
3849
|
* @deprecated Thread is now static and never gets updated. This will be removed in 0.6.0.
|
3708
3850
|
*/
|
3709
3851
|
subscribe(callback) {
|
3710
3852
|
return this._core.subscribe(callback);
|
3711
3853
|
}
|
3712
|
-
static
|
3854
|
+
static createMainThreadRuntime(_core, CustomThreadRuntime = ThreadRuntimeImpl) {
|
3713
3855
|
return new CustomThreadRuntime(
|
3714
3856
|
new NestedSubscriptionSubject({
|
3857
|
+
path: {
|
3858
|
+
ref: "threads.main",
|
3859
|
+
threadSelector: { type: "main" }
|
3860
|
+
},
|
3715
3861
|
getState: () => _core.thread,
|
3716
3862
|
subscribe: (callback) => _core.subscribe(callback)
|
3717
3863
|
})
|
@@ -3720,7 +3866,7 @@ var AssistantRuntimeImpl = class _AssistantRuntimeImpl {
|
|
3720
3866
|
static create(_core, CustomThreadRuntime = ThreadRuntimeImpl) {
|
3721
3867
|
return new _AssistantRuntimeImpl(
|
3722
3868
|
_core,
|
3723
|
-
_AssistantRuntimeImpl.
|
3869
|
+
_AssistantRuntimeImpl.createMainThreadRuntime(_core, CustomThreadRuntime)
|
3724
3870
|
);
|
3725
3871
|
}
|
3726
3872
|
};
|
@@ -3791,7 +3937,7 @@ var fromLanguageModelMessages = (lm, { mergeSteps }) => {
|
|
3791
3937
|
});
|
3792
3938
|
if (mergeSteps) {
|
3793
3939
|
const previousMessage = messages2[messages2.length - 1];
|
3794
|
-
if (_optionalChain([previousMessage, 'optionalAccess',
|
3940
|
+
if (_optionalChain([previousMessage, 'optionalAccess', _200 => _200.role]) === "assistant") {
|
3795
3941
|
previousMessage.content.push(...newContent);
|
3796
3942
|
break;
|
3797
3943
|
}
|
@@ -3804,7 +3950,7 @@ var fromLanguageModelMessages = (lm, { mergeSteps }) => {
|
|
3804
3950
|
}
|
3805
3951
|
case "tool": {
|
3806
3952
|
const previousMessage = messages2[messages2.length - 1];
|
3807
|
-
if (_optionalChain([previousMessage, 'optionalAccess',
|
3953
|
+
if (_optionalChain([previousMessage, 'optionalAccess', _201 => _201.role]) !== "assistant")
|
3808
3954
|
throw new Error(
|
3809
3955
|
"A tool message must be preceded by an assistant message."
|
3810
3956
|
);
|
@@ -3880,14 +4026,14 @@ function streamPartDecoderStream() {
|
|
3880
4026
|
controller.enqueue(decodeStreamPart(chunk));
|
3881
4027
|
}
|
3882
4028
|
});
|
3883
|
-
return new (0,
|
4029
|
+
return new (0, _chunkC6UZOY5Ajs.PipeableTransformStream)((readable) => {
|
3884
4030
|
return readable.pipeThrough(new TextDecoderStream()).pipeThrough(chunkByLineStream()).pipeThrough(decodeStream);
|
3885
4031
|
});
|
3886
4032
|
}
|
3887
4033
|
|
3888
4034
|
// src/runtimes/edge/streams/utils/index.ts
|
3889
4035
|
var streamUtils = {
|
3890
|
-
streamPartEncoderStream:
|
4036
|
+
streamPartEncoderStream: _chunkC6UZOY5Ajs.streamPartEncoderStream,
|
3891
4037
|
streamPartDecoderStream
|
3892
4038
|
};
|
3893
4039
|
|
@@ -3922,12 +4068,19 @@ function assistantDecoderStream() {
|
|
3922
4068
|
const { toolCallId: id, toolName: name } = value;
|
3923
4069
|
toolCallNames.set(id, name);
|
3924
4070
|
currentToolCall = { id, name, argsText: "" };
|
4071
|
+
controller.enqueue({
|
4072
|
+
type: "tool-call-delta",
|
4073
|
+
toolCallType: "function",
|
4074
|
+
toolCallId: id,
|
4075
|
+
toolName: name,
|
4076
|
+
argsTextDelta: ""
|
4077
|
+
});
|
3925
4078
|
break;
|
3926
4079
|
}
|
3927
4080
|
case "c" /* ToolCallDelta */: {
|
3928
4081
|
const { toolCallId, argsTextDelta } = value;
|
3929
4082
|
const toolName = toolCallNames.get(toolCallId);
|
3930
|
-
if (_optionalChain([currentToolCall, 'optionalAccess',
|
4083
|
+
if (_optionalChain([currentToolCall, 'optionalAccess', _202 => _202.id]) === toolCallId) {
|
3931
4084
|
currentToolCall.argsText += argsTextDelta;
|
3932
4085
|
}
|
3933
4086
|
controller.enqueue({
|
@@ -4028,8 +4181,8 @@ var EdgeChatAdapter = class {
|
|
4028
4181
|
credentials: _nullishCoalesce(this.options.credentials, () => ( "same-origin")),
|
4029
4182
|
body: JSON.stringify({
|
4030
4183
|
system: config.system,
|
4031
|
-
messages:
|
4032
|
-
tools: config.tools ?
|
4184
|
+
messages: _chunkC6UZOY5Ajs.toCoreMessages.call(void 0, messages2),
|
4185
|
+
tools: config.tools ? _chunkC6UZOY5Ajs.toLanguageModelTools.call(void 0, config.tools) : [],
|
4033
4186
|
...config.callSettings,
|
4034
4187
|
...config.config,
|
4035
4188
|
...this.options.body
|
@@ -4039,7 +4192,7 @@ var EdgeChatAdapter = class {
|
|
4039
4192
|
if (!result.ok) {
|
4040
4193
|
throw new Error(`Status ${result.status}: ${await result.text()}`);
|
4041
4194
|
}
|
4042
|
-
const stream = result.body.pipeThrough(streamPartDecoderStream()).pipeThrough(assistantDecoderStream()).pipeThrough(
|
4195
|
+
const stream = result.body.pipeThrough(streamPartDecoderStream()).pipeThrough(assistantDecoderStream()).pipeThrough(_chunkC6UZOY5Ajs.toolResultStream.call(void 0, config.tools, abortSignal)).pipeThrough(_chunkC6UZOY5Ajs.runResultStream.call(void 0, ));
|
4043
4196
|
let update;
|
4044
4197
|
for await (update of asAsyncIterable(stream)) {
|
4045
4198
|
yield update;
|
@@ -4071,7 +4224,7 @@ var useEdgeRuntime = (options) => {
|
|
4071
4224
|
};
|
4072
4225
|
|
4073
4226
|
// src/runtimes/local/shouldContinue.tsx
|
4074
|
-
var shouldContinue = (result) => _optionalChain([result, 'access',
|
4227
|
+
var shouldContinue = (result) => _optionalChain([result, 'access', _203 => _203.status, 'optionalAccess', _204 => _204.type]) === "requires-action" && result.status.reason === "tool-calls" && result.content.every((c) => c.type !== "tool-call" || !!c.result);
|
4075
4228
|
|
4076
4229
|
// src/runtimes/composer/DefaultEditComposerRuntimeCore.tsx
|
4077
4230
|
var DefaultEditComposerRuntimeCore = class extends BaseComposerRuntimeCore {
|
@@ -4091,7 +4244,7 @@ var DefaultEditComposerRuntimeCore = class extends BaseComposerRuntimeCore {
|
|
4091
4244
|
return true;
|
4092
4245
|
}
|
4093
4246
|
getAttachmentAdapter() {
|
4094
|
-
return _optionalChain([this, 'access',
|
4247
|
+
return _optionalChain([this, 'access', _205 => _205.runtime, 'access', _206 => _206.adapters, 'optionalAccess', _207 => _207.attachments]);
|
4095
4248
|
}
|
4096
4249
|
|
4097
4250
|
|
@@ -4115,20 +4268,23 @@ var DefaultEditComposerRuntimeCore = class extends BaseComposerRuntimeCore {
|
|
4115
4268
|
};
|
4116
4269
|
|
4117
4270
|
// src/runtimes/core/BaseThreadRuntimeCore.tsx
|
4118
|
-
var BaseThreadRuntimeCore = (
|
4119
|
-
constructor(configProvider) {;
|
4271
|
+
var BaseThreadRuntimeCore = (_class11 = class {
|
4272
|
+
constructor(configProvider) {;_class11.prototype.__init22.call(this);_class11.prototype.__init23.call(this);_class11.prototype.__init24.call(this);_class11.prototype.__init25.call(this);_class11.prototype.__init26.call(this);_class11.prototype.__init27.call(this);
|
4120
4273
|
this.configProvider = configProvider;
|
4274
|
+
_optionalChain([this, 'access', _208 => _208.configProvider, 'access', _209 => _209.subscribe, 'optionalCall', _210 => _210(() => {
|
4275
|
+
this._notifyEventSubscribers("model-config-update");
|
4276
|
+
})]);
|
4121
4277
|
}
|
4122
|
-
|
4123
|
-
|
4278
|
+
__init22() {this._subscriptions = /* @__PURE__ */ new Set()}
|
4279
|
+
__init23() {this.repository = new MessageRepository()}
|
4124
4280
|
get messages() {
|
4125
4281
|
return this.repository.getMessages();
|
4126
4282
|
}
|
4127
|
-
|
4283
|
+
__init24() {this.composer = new DefaultThreadComposerRuntimeCore(this)}
|
4128
4284
|
getModelConfig() {
|
4129
4285
|
return this.configProvider.getModelConfig();
|
4130
4286
|
}
|
4131
|
-
|
4287
|
+
__init25() {this._editComposers = /* @__PURE__ */ new Map()}
|
4132
4288
|
getEditComposer(messageId) {
|
4133
4289
|
return this._editComposers.get(messageId);
|
4134
4290
|
}
|
@@ -4145,6 +4301,9 @@ var BaseThreadRuntimeCore = (_class12 = class {
|
|
4145
4301
|
);
|
4146
4302
|
this._notifySubscribers();
|
4147
4303
|
}
|
4304
|
+
getMessageById(messageId) {
|
4305
|
+
return this.repository.getMessage(messageId);
|
4306
|
+
}
|
4148
4307
|
getBranches(messageId) {
|
4149
4308
|
return this.repository.getBranches(messageId);
|
4150
4309
|
}
|
@@ -4164,12 +4323,12 @@ var BaseThreadRuntimeCore = (_class12 = class {
|
|
4164
4323
|
this._subscriptions.add(callback);
|
4165
4324
|
return () => this._subscriptions.delete(callback);
|
4166
4325
|
}
|
4167
|
-
|
4326
|
+
__init26() {this._submittedFeedback = {}}
|
4168
4327
|
getSubmittedFeedback(messageId) {
|
4169
4328
|
return this._submittedFeedback[messageId];
|
4170
4329
|
}
|
4171
4330
|
submitFeedback({ messageId, type }) {
|
4172
|
-
const adapter = _optionalChain([this, 'access',
|
4331
|
+
const adapter = _optionalChain([this, 'access', _211 => _211.adapters, 'optionalAccess', _212 => _212.feedback]);
|
4173
4332
|
if (!adapter) throw new Error("Feedback adapter not configured");
|
4174
4333
|
const { message } = this.repository.getMessage(messageId);
|
4175
4334
|
adapter.submit({ message, type });
|
@@ -4179,11 +4338,11 @@ var BaseThreadRuntimeCore = (_class12 = class {
|
|
4179
4338
|
|
4180
4339
|
|
4181
4340
|
speak(messageId) {
|
4182
|
-
const adapter = _optionalChain([this, 'access',
|
4341
|
+
const adapter = _optionalChain([this, 'access', _213 => _213.adapters, 'optionalAccess', _214 => _214.speech]);
|
4183
4342
|
if (!adapter) throw new Error("Speech adapter not configured");
|
4184
4343
|
const { message } = this.repository.getMessage(messageId);
|
4185
|
-
_optionalChain([this, 'access',
|
4186
|
-
const utterance = adapter.speak(message);
|
4344
|
+
_optionalChain([this, 'access', _215 => _215._stopSpeaking, 'optionalCall', _216 => _216()]);
|
4345
|
+
const utterance = adapter.speak(getThreadMessageText(message));
|
4187
4346
|
const unsub = utterance.subscribe(() => {
|
4188
4347
|
if (utterance.status.type === "ended") {
|
4189
4348
|
this._stopSpeaking = void 0;
|
@@ -4214,7 +4373,7 @@ var BaseThreadRuntimeCore = (_class12 = class {
|
|
4214
4373
|
this.repository.import(data);
|
4215
4374
|
this._notifySubscribers();
|
4216
4375
|
}
|
4217
|
-
|
4376
|
+
__init27() {this._eventSubscribers = /* @__PURE__ */ new Map()}
|
4218
4377
|
unstable_on(event, callback) {
|
4219
4378
|
const subscribers = this._eventSubscribers.get(event);
|
4220
4379
|
if (!subscribers) {
|
@@ -4227,12 +4386,12 @@ var BaseThreadRuntimeCore = (_class12 = class {
|
|
4227
4386
|
subscribers2.delete(callback);
|
4228
4387
|
};
|
4229
4388
|
}
|
4230
|
-
},
|
4389
|
+
}, _class11);
|
4231
4390
|
|
4232
4391
|
// src/runtimes/local/LocalThreadRuntimeCore.tsx
|
4233
|
-
var LocalThreadRuntimeCore = (
|
4392
|
+
var LocalThreadRuntimeCore = (_class12 = class extends BaseThreadRuntimeCore {
|
4234
4393
|
constructor(configProvider, adapter, { initialMessages, ...options }) {
|
4235
|
-
super(configProvider);
|
4394
|
+
super(configProvider);_class12.prototype.__init28.call(this);_class12.prototype.__init29.call(this);_class12.prototype.__init30.call(this);_class12.prototype.__init31.call(this);;
|
4236
4395
|
this.adapter = adapter;
|
4237
4396
|
this.threadId = generateId();
|
4238
4397
|
this.options = options;
|
@@ -4245,7 +4404,7 @@ var LocalThreadRuntimeCore = (_class13 = class extends BaseThreadRuntimeCore {
|
|
4245
4404
|
}
|
4246
4405
|
}
|
4247
4406
|
}
|
4248
|
-
|
4407
|
+
__init28() {this.capabilities = {
|
4249
4408
|
switchToBranch: true,
|
4250
4409
|
edit: true,
|
4251
4410
|
reload: true,
|
@@ -4255,10 +4414,10 @@ var LocalThreadRuntimeCore = (_class13 = class extends BaseThreadRuntimeCore {
|
|
4255
4414
|
attachments: false,
|
4256
4415
|
feedback: false
|
4257
4416
|
}}
|
4258
|
-
|
4417
|
+
__init29() {this.abortController = null}
|
4259
4418
|
|
4260
|
-
|
4261
|
-
|
4419
|
+
__init30() {this.isDisabled = false}
|
4420
|
+
__init31() {this.suggestions = []}
|
4262
4421
|
get adapters() {
|
4263
4422
|
return this.options.adapters;
|
4264
4423
|
}
|
@@ -4272,17 +4431,17 @@ var LocalThreadRuntimeCore = (_class13 = class extends BaseThreadRuntimeCore {
|
|
4272
4431
|
set options({ initialMessages, ...options }) {
|
4273
4432
|
this._options = options;
|
4274
4433
|
let hasUpdates = false;
|
4275
|
-
const canSpeak = _optionalChain([options, 'access',
|
4434
|
+
const canSpeak = _optionalChain([options, 'access', _217 => _217.adapters, 'optionalAccess', _218 => _218.speech]) !== void 0;
|
4276
4435
|
if (this.capabilities.speech !== canSpeak) {
|
4277
4436
|
this.capabilities.speech = canSpeak;
|
4278
4437
|
hasUpdates = true;
|
4279
4438
|
}
|
4280
|
-
const canAttach = _optionalChain([options, 'access',
|
4439
|
+
const canAttach = _optionalChain([options, 'access', _219 => _219.adapters, 'optionalAccess', _220 => _220.attachments]) !== void 0;
|
4281
4440
|
if (this.capabilities.attachments !== canAttach) {
|
4282
4441
|
this.capabilities.attachments = canAttach;
|
4283
4442
|
hasUpdates = true;
|
4284
4443
|
}
|
4285
|
-
const canFeedback = _optionalChain([options, 'access',
|
4444
|
+
const canFeedback = _optionalChain([options, 'access', _221 => _221.adapters, 'optionalAccess', _222 => _222.feedback]) !== void 0;
|
4286
4445
|
if (this.capabilities.feedback !== canFeedback) {
|
4287
4446
|
this.capabilities.feedback = canFeedback;
|
4288
4447
|
hasUpdates = true;
|
@@ -4318,13 +4477,13 @@ var LocalThreadRuntimeCore = (_class13 = class extends BaseThreadRuntimeCore {
|
|
4318
4477
|
}
|
4319
4478
|
async performRoundtrip(parentId, message) {
|
4320
4479
|
const messages2 = this.repository.getMessages();
|
4321
|
-
_optionalChain([this, 'access',
|
4480
|
+
_optionalChain([this, 'access', _223 => _223.abortController, 'optionalAccess', _224 => _224.abort, 'call', _225 => _225()]);
|
4322
4481
|
this.abortController = new AbortController();
|
4323
4482
|
const initialContent = message.content;
|
4324
|
-
const initialSteps = _optionalChain([message, 'access',
|
4325
|
-
const initalCustom = _optionalChain([message, 'access',
|
4483
|
+
const initialSteps = _optionalChain([message, 'access', _226 => _226.metadata, 'optionalAccess', _227 => _227.steps]);
|
4484
|
+
const initalCustom = _optionalChain([message, 'access', _228 => _228.metadata, 'optionalAccess', _229 => _229.custom]);
|
4326
4485
|
const updateMessage = (m) => {
|
4327
|
-
const newSteps = _optionalChain([m, 'access',
|
4486
|
+
const newSteps = _optionalChain([m, 'access', _230 => _230.metadata, 'optionalAccess', _231 => _231.steps]) || _optionalChain([m, 'access', _232 => _232.metadata, 'optionalAccess', _233 => _233.roundtrips]);
|
4328
4487
|
const steps2 = newSteps ? [..._nullishCoalesce(initialSteps, () => ( [])), ...newSteps] : void 0;
|
4329
4488
|
message = {
|
4330
4489
|
...message,
|
@@ -4336,7 +4495,7 @@ var LocalThreadRuntimeCore = (_class13 = class extends BaseThreadRuntimeCore {
|
|
4336
4495
|
metadata: {
|
4337
4496
|
...message.metadata,
|
4338
4497
|
...steps2 ? { roundtrips: steps2, steps: steps2 } : void 0,
|
4339
|
-
..._optionalChain([m, 'access',
|
4498
|
+
..._optionalChain([m, 'access', _234 => _234.metadata, 'optionalAccess', _235 => _235.custom]) ? {
|
4340
4499
|
custom: { ..._nullishCoalesce(initalCustom, () => ( {})), ...m.metadata.custom }
|
4341
4500
|
} : void 0
|
4342
4501
|
}
|
@@ -4346,7 +4505,7 @@ var LocalThreadRuntimeCore = (_class13 = class extends BaseThreadRuntimeCore {
|
|
4346
4505
|
this._notifySubscribers();
|
4347
4506
|
};
|
4348
4507
|
const maxSteps = this.options.maxSteps ? this.options.maxSteps : (_nullishCoalesce(this.options.maxToolRoundtrips, () => ( 1))) + 1;
|
4349
|
-
const steps = _nullishCoalesce(_optionalChain([message, 'access',
|
4508
|
+
const steps = _nullishCoalesce(_optionalChain([message, 'access', _236 => _236.metadata, 'optionalAccess', _237 => _237.steps, 'optionalAccess', _238 => _238.length]), () => ( 0));
|
4350
4509
|
if (steps >= maxSteps) {
|
4351
4510
|
updateMessage({
|
4352
4511
|
status: {
|
@@ -4398,7 +4557,7 @@ var LocalThreadRuntimeCore = (_class13 = class extends BaseThreadRuntimeCore {
|
|
4398
4557
|
return message;
|
4399
4558
|
}
|
4400
4559
|
cancelRun() {
|
4401
|
-
_optionalChain([this, 'access',
|
4560
|
+
_optionalChain([this, 'access', _239 => _239.abortController, 'optionalAccess', _240 => _240.abort, 'call', _241 => _241()]);
|
4402
4561
|
this.abortController = null;
|
4403
4562
|
}
|
4404
4563
|
addToolResult({
|
@@ -4434,7 +4593,7 @@ var LocalThreadRuntimeCore = (_class13 = class extends BaseThreadRuntimeCore {
|
|
4434
4593
|
this.performRoundtrip(parentId, message);
|
4435
4594
|
}
|
4436
4595
|
}
|
4437
|
-
},
|
4596
|
+
}, _class12);
|
4438
4597
|
|
4439
4598
|
// src/runtimes/local/LocalRuntimeCore.tsx
|
4440
4599
|
var LocalRuntimeCore = class extends BaseAssistantRuntimeCore {
|
@@ -4470,7 +4629,7 @@ var LocalRuntimeCore = class extends BaseAssistantRuntimeCore {
|
|
4470
4629
|
const messages2 = fromCoreMessages(initialMessages);
|
4471
4630
|
this.thread.import({
|
4472
4631
|
messages: messages2.map((m, idx) => ({
|
4473
|
-
parentId: _nullishCoalesce(_optionalChain([messages2, 'access',
|
4632
|
+
parentId: _nullishCoalesce(_optionalChain([messages2, 'access', _242 => _242[idx - 1], 'optionalAccess', _243 => _243.id]), () => ( null)),
|
4474
4633
|
message: m
|
4475
4634
|
}))
|
4476
4635
|
});
|
@@ -4489,7 +4648,7 @@ var LocalRuntimeImpl = class _LocalRuntimeImpl extends AssistantRuntimeImpl {
|
|
4489
4648
|
static create(_core) {
|
4490
4649
|
return new _LocalRuntimeImpl(
|
4491
4650
|
_core,
|
4492
|
-
AssistantRuntimeImpl.
|
4651
|
+
AssistantRuntimeImpl.createMainThreadRuntime(_core, ThreadRuntimeImpl)
|
4493
4652
|
);
|
4494
4653
|
}
|
4495
4654
|
};
|
@@ -4512,8 +4671,8 @@ var getExternalStoreMessage = (message) => {
|
|
4512
4671
|
};
|
4513
4672
|
|
4514
4673
|
// src/runtimes/external-store/ThreadMessageConverter.ts
|
4515
|
-
var ThreadMessageConverter = (
|
4516
|
-
|
4674
|
+
var ThreadMessageConverter = (_class13 = class {constructor() { _class13.prototype.__init32.call(this); }
|
4675
|
+
__init32() {this.cache = /* @__PURE__ */ new WeakMap()}
|
4517
4676
|
convertMessages(messages2, converter) {
|
4518
4677
|
return messages2.map((m, idx) => {
|
4519
4678
|
const cached = this.cache.get(m);
|
@@ -4522,7 +4681,7 @@ var ThreadMessageConverter = (_class14 = class {constructor() { _class14.prototy
|
|
4522
4681
|
return newMessage;
|
4523
4682
|
});
|
4524
4683
|
}
|
4525
|
-
},
|
4684
|
+
}, _class13);
|
4526
4685
|
|
4527
4686
|
// src/runtimes/external-store/auto-status.tsx
|
4528
4687
|
var AUTO_STATUS_RUNNING = Object.freeze({ type: "running" });
|
@@ -4610,11 +4769,11 @@ var fromThreadMessageLike = (like, fallbackId, fallbackStatus) => {
|
|
4610
4769
|
// src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx
|
4611
4770
|
var EMPTY_ARRAY2 = Object.freeze([]);
|
4612
4771
|
var hasUpcomingMessage = (isRunning, messages2) => {
|
4613
|
-
return isRunning && _optionalChain([messages2, 'access',
|
4772
|
+
return isRunning && _optionalChain([messages2, 'access', _244 => _244[messages2.length - 1], 'optionalAccess', _245 => _245.role]) !== "assistant";
|
4614
4773
|
};
|
4615
|
-
var ExternalStoreThreadRuntimeCore = (
|
4616
|
-
|
4617
|
-
|
4774
|
+
var ExternalStoreThreadRuntimeCore = (_class14 = class extends BaseThreadRuntimeCore {
|
4775
|
+
__init33() {this.assistantOptimisticId = null}
|
4776
|
+
__init34() {this._capabilities = {
|
4618
4777
|
switchToBranch: false,
|
4619
4778
|
edit: false,
|
4620
4779
|
reload: false,
|
@@ -4636,9 +4795,9 @@ var ExternalStoreThreadRuntimeCore = (_class15 = class extends BaseThreadRuntime
|
|
4636
4795
|
get adapters() {
|
4637
4796
|
return this._store.adapters;
|
4638
4797
|
}
|
4639
|
-
|
4640
|
-
|
4641
|
-
|
4798
|
+
__init35() {this.suggestions = []}
|
4799
|
+
__init36() {this.extras = void 0}
|
4800
|
+
__init37() {this._converter = new ThreadMessageConverter()}
|
4642
4801
|
|
4643
4802
|
beginEdit(messageId) {
|
4644
4803
|
if (!this.store.onEdit)
|
@@ -4646,7 +4805,7 @@ var ExternalStoreThreadRuntimeCore = (_class15 = class extends BaseThreadRuntime
|
|
4646
4805
|
super.beginEdit(messageId);
|
4647
4806
|
}
|
4648
4807
|
constructor(configProvider, store) {
|
4649
|
-
super(configProvider);
|
4808
|
+
super(configProvider);_class14.prototype.__init33.call(this);_class14.prototype.__init34.call(this);_class14.prototype.__init35.call(this);_class14.prototype.__init36.call(this);_class14.prototype.__init37.call(this);_class14.prototype.__init38.call(this);;
|
4650
4809
|
this.store = store;
|
4651
4810
|
}
|
4652
4811
|
get store() {
|
@@ -4666,11 +4825,11 @@ var ExternalStoreThreadRuntimeCore = (_class15 = class extends BaseThreadRuntime
|
|
4666
4825
|
edit: this._store.onEdit !== void 0,
|
4667
4826
|
reload: this._store.onReload !== void 0,
|
4668
4827
|
cancel: this._store.onCancel !== void 0,
|
4669
|
-
speech: _optionalChain([this, 'access',
|
4670
|
-
unstable_copy: _optionalChain([this, 'access',
|
4828
|
+
speech: _optionalChain([this, 'access', _249 => _249._store, 'access', _250 => _250.adapters, 'optionalAccess', _251 => _251.speech]) !== void 0,
|
4829
|
+
unstable_copy: _optionalChain([this, 'access', _252 => _252._store, 'access', _253 => _253.unstable_capabilities, 'optionalAccess', _254 => _254.copy]) !== false,
|
4671
4830
|
// default true
|
4672
|
-
attachments: !!_optionalChain([this, 'access',
|
4673
|
-
feedback: !!_optionalChain([this, 'access',
|
4831
|
+
attachments: !!_optionalChain([this, 'access', _255 => _255.store, 'access', _256 => _256.adapters, 'optionalAccess', _257 => _257.attachments]),
|
4832
|
+
feedback: !!_optionalChain([this, 'access', _258 => _258.store, 'access', _259 => _259.adapters, 'optionalAccess', _260 => _260.feedback])
|
4674
4833
|
};
|
4675
4834
|
if (oldStore) {
|
4676
4835
|
if (oldStore.convertMessage !== store.convertMessage) {
|
@@ -4697,7 +4856,7 @@ var ExternalStoreThreadRuntimeCore = (_class15 = class extends BaseThreadRuntime
|
|
4697
4856
|
for (let i = 0; i < messages2.length; i++) {
|
4698
4857
|
const message = messages2[i];
|
4699
4858
|
const parent = messages2[i - 1];
|
4700
|
-
this.repository.addOrUpdateMessage(_nullishCoalesce(_optionalChain([parent, 'optionalAccess',
|
4859
|
+
this.repository.addOrUpdateMessage(_nullishCoalesce(_optionalChain([parent, 'optionalAccess', _261 => _261.id]), () => ( null)), message);
|
4701
4860
|
}
|
4702
4861
|
if (this.assistantOptimisticId) {
|
4703
4862
|
this.repository.deleteMessage(this.assistantOptimisticId);
|
@@ -4705,7 +4864,7 @@ var ExternalStoreThreadRuntimeCore = (_class15 = class extends BaseThreadRuntime
|
|
4705
4864
|
}
|
4706
4865
|
if (hasUpcomingMessage(isRunning, messages2)) {
|
4707
4866
|
this.assistantOptimisticId = this.repository.appendOptimisticMessage(
|
4708
|
-
_nullishCoalesce(_optionalChain([messages2, 'access',
|
4867
|
+
_nullishCoalesce(_optionalChain([messages2, 'access', _262 => _262.at, 'call', _263 => _263(-1), 'optionalAccess', _264 => _264.id]), () => ( null)),
|
4709
4868
|
{
|
4710
4869
|
role: "assistant",
|
4711
4870
|
content: []
|
@@ -4713,7 +4872,7 @@ var ExternalStoreThreadRuntimeCore = (_class15 = class extends BaseThreadRuntime
|
|
4713
4872
|
);
|
4714
4873
|
}
|
4715
4874
|
this.repository.resetHead(
|
4716
|
-
_nullishCoalesce(_nullishCoalesce(this.assistantOptimisticId, () => ( _optionalChain([messages2, 'access',
|
4875
|
+
_nullishCoalesce(_nullishCoalesce(this.assistantOptimisticId, () => ( _optionalChain([messages2, 'access', _265 => _265.at, 'call', _266 => _266(-1), 'optionalAccess', _267 => _267.id]))), () => ( null))
|
4717
4876
|
);
|
4718
4877
|
this._messages = this.repository.getMessages();
|
4719
4878
|
this._notifySubscribers();
|
@@ -4725,7 +4884,7 @@ var ExternalStoreThreadRuntimeCore = (_class15 = class extends BaseThreadRuntime
|
|
4725
4884
|
this.updateMessages(this.repository.getMessages());
|
4726
4885
|
}
|
4727
4886
|
async append(message) {
|
4728
|
-
if (message.parentId !== (_nullishCoalesce(_optionalChain([this, 'access',
|
4887
|
+
if (message.parentId !== (_nullishCoalesce(_optionalChain([this, 'access', _268 => _268.messages, 'access', _269 => _269.at, 'call', _270 => _270(-1), 'optionalAccess', _271 => _271.id]), () => ( null)))) {
|
4729
4888
|
if (!this._store.onEdit)
|
4730
4889
|
throw new Error("Runtime does not support editing messages.");
|
4731
4890
|
await this._store.onEdit(message);
|
@@ -4748,7 +4907,7 @@ var ExternalStoreThreadRuntimeCore = (_class15 = class extends BaseThreadRuntime
|
|
4748
4907
|
}
|
4749
4908
|
let messages2 = this.repository.getMessages();
|
4750
4909
|
const previousMessage = messages2[messages2.length - 1];
|
4751
|
-
if (_optionalChain([previousMessage, 'optionalAccess',
|
4910
|
+
if (_optionalChain([previousMessage, 'optionalAccess', _272 => _272.role]) === "user" && previousMessage.id === _optionalChain([messages2, 'access', _273 => _273.at, 'call', _274 => _274(-1), 'optionalAccess', _275 => _275.id])) {
|
4752
4911
|
this.repository.deleteMessage(previousMessage.id);
|
4753
4912
|
if (!this.composer.text.trim()) {
|
4754
4913
|
this.composer.setText(getThreadMessageText(previousMessage));
|
@@ -4766,12 +4925,12 @@ var ExternalStoreThreadRuntimeCore = (_class15 = class extends BaseThreadRuntime
|
|
4766
4925
|
throw new Error("Runtime does not support tool results.");
|
4767
4926
|
this._store.onAddToolResult(options);
|
4768
4927
|
}
|
4769
|
-
|
4770
|
-
_optionalChain([this, 'access',
|
4928
|
+
__init38() {this.updateMessages = (messages2) => {
|
4929
|
+
_optionalChain([this, 'access', _276 => _276._store, 'access', _277 => _277.setMessages, 'optionalCall', _278 => _278(
|
4771
4930
|
messages2.flatMap(getExternalStoreMessage).filter((m) => m != null)
|
4772
4931
|
)]);
|
4773
4932
|
}}
|
4774
|
-
},
|
4933
|
+
}, _class14);
|
4775
4934
|
|
4776
4935
|
// src/runtimes/external-store/ExternalStoreRuntimeCore.tsx
|
4777
4936
|
var ExternalStoreRuntimeCore = class extends BaseAssistantRuntimeCore {
|
@@ -4987,18 +5146,18 @@ var DangerousInBrowserAdapter = class {
|
|
4987
5146
|
this.options = options;
|
4988
5147
|
}
|
4989
5148
|
async *run({ messages: messages2, abortSignal, config }) {
|
4990
|
-
const res = await
|
5149
|
+
const res = await _chunkC6UZOY5Ajs.getEdgeRuntimeStream.call(void 0, {
|
4991
5150
|
options: this.options,
|
4992
5151
|
abortSignal,
|
4993
5152
|
requestData: {
|
4994
5153
|
system: config.system,
|
4995
|
-
messages:
|
4996
|
-
tools: config.tools ?
|
5154
|
+
messages: _chunkC6UZOY5Ajs.toCoreMessages.call(void 0, messages2),
|
5155
|
+
tools: config.tools ? _chunkC6UZOY5Ajs.toLanguageModelTools.call(void 0, config.tools) : [],
|
4997
5156
|
...config.callSettings,
|
4998
5157
|
...config.config
|
4999
5158
|
}
|
5000
5159
|
});
|
5001
|
-
const stream = res.pipeThrough(
|
5160
|
+
const stream = res.pipeThrough(_chunkC6UZOY5Ajs.toolResultStream.call(void 0, config.tools, abortSignal)).pipeThrough(_chunkC6UZOY5Ajs.runResultStream.call(void 0, ));
|
5002
5161
|
for await (const update of asAsyncIterable(stream)) {
|
5003
5162
|
yield update;
|
5004
5163
|
}
|
@@ -5014,8 +5173,7 @@ var useDangerousInBrowserRuntime = (options) => {
|
|
5014
5173
|
|
5015
5174
|
// src/runtimes/speech/WebSpeechSynthesisAdapter.ts
|
5016
5175
|
var WebSpeechSynthesisAdapter = class {
|
5017
|
-
speak(
|
5018
|
-
const text = getThreadMessageText(message);
|
5176
|
+
speak(text) {
|
5019
5177
|
const utterance = new SpeechSynthesisUtterance(text);
|
5020
5178
|
const subscribers = /* @__PURE__ */ new Set();
|
5021
5179
|
const handleEnd = (reason, error) => {
|
@@ -5054,8 +5212,8 @@ var WebSpeechSynthesisAdapter = class {
|
|
5054
5212
|
};
|
5055
5213
|
|
5056
5214
|
// src/runtimes/attachment/SimpleImageAttachmentAdapter.ts
|
5057
|
-
var SimpleImageAttachmentAdapter = (
|
5058
|
-
|
5215
|
+
var SimpleImageAttachmentAdapter = (_class15 = class {constructor() { _class15.prototype.__init39.call(this); }
|
5216
|
+
__init39() {this.accept = "image/*"}
|
5059
5217
|
async add(state) {
|
5060
5218
|
return {
|
5061
5219
|
id: state.file.name,
|
@@ -5080,7 +5238,7 @@ var SimpleImageAttachmentAdapter = (_class16 = class {constructor() { _class16.p
|
|
5080
5238
|
}
|
5081
5239
|
async remove() {
|
5082
5240
|
}
|
5083
|
-
},
|
5241
|
+
}, _class15);
|
5084
5242
|
var getFileDataURL = (file) => new Promise((resolve, reject) => {
|
5085
5243
|
const reader = new FileReader();
|
5086
5244
|
reader.onload = () => resolve(reader.result);
|
@@ -5089,8 +5247,8 @@ var getFileDataURL = (file) => new Promise((resolve, reject) => {
|
|
5089
5247
|
});
|
5090
5248
|
|
5091
5249
|
// src/runtimes/attachment/SimpleTextAttachmentAdapter.ts
|
5092
|
-
var SimpleTextAttachmentAdapter = (
|
5093
|
-
|
5250
|
+
var SimpleTextAttachmentAdapter = (_class16 = class {constructor() { _class16.prototype.__init40.call(this); }
|
5251
|
+
__init40() {this.accept = "text/plain,text/html,text/markdown,text/csv,text/xml,text/json,text/css"}
|
5094
5252
|
async add(state) {
|
5095
5253
|
return {
|
5096
5254
|
id: state.file.name,
|
@@ -5117,7 +5275,7 @@ ${await getFileText(attachment.file)}
|
|
5117
5275
|
}
|
5118
5276
|
async remove() {
|
5119
5277
|
}
|
5120
|
-
},
|
5278
|
+
}, _class16);
|
5121
5279
|
var getFileText = (file) => new Promise((resolve, reject) => {
|
5122
5280
|
const reader = new FileReader();
|
5123
5281
|
reader.onload = () => resolve(reader.result);
|
@@ -5218,7 +5376,7 @@ var ThreadConfigProvider = ({
|
|
5218
5376
|
}) => {
|
5219
5377
|
const hasAssistant = !!useAssistantRuntime({ optional: true });
|
5220
5378
|
const configProvider = config && Object.keys(_nullishCoalesce(config, () => ( {}))).length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ThreadConfigContext.Provider, { value: config, children }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children });
|
5221
|
-
if (!_optionalChain([config, 'optionalAccess',
|
5379
|
+
if (!_optionalChain([config, 'optionalAccess', _279 => _279.runtime])) return configProvider;
|
5222
5380
|
if (hasAssistant) {
|
5223
5381
|
throw new Error(
|
5224
5382
|
"You provided a runtime to <Thread> while simulataneously using <AssistantRuntimeProvider>. This is not allowed."
|
@@ -5546,7 +5704,7 @@ var AssistantMessageContent = _react.forwardRef.call(void 0, ({ components: comp
|
|
5546
5704
|
{
|
5547
5705
|
components: {
|
5548
5706
|
...componentsProp,
|
5549
|
-
Text: _nullishCoalesce(_nullishCoalesce(_optionalChain([componentsProp, 'optionalAccess',
|
5707
|
+
Text: _nullishCoalesce(_nullishCoalesce(_optionalChain([componentsProp, 'optionalAccess', _280 => _280.Text]), () => ( components.Text)), () => ( content_part_default.Text)),
|
5550
5708
|
tools: toolsComponents
|
5551
5709
|
}
|
5552
5710
|
}
|
@@ -5657,7 +5815,7 @@ var useAttachmentSrc = () => {
|
|
5657
5815
|
const { file, src } = useAttachment((a) => {
|
5658
5816
|
if (a.type !== "image") return {};
|
5659
5817
|
if (a.file) return { file: a.file };
|
5660
|
-
const src2 = _optionalChain([a, 'access',
|
5818
|
+
const src2 = _optionalChain([a, 'access', _281 => _281.content, 'optionalAccess', _282 => _282.filter, 'call', _283 => _283((c) => c.type === "image"), 'access', _284 => _284[0], 'optionalAccess', _285 => _285.image]);
|
5661
5819
|
if (!src2) return {};
|
5662
5820
|
return { src: src2 };
|
5663
5821
|
});
|
@@ -5801,7 +5959,7 @@ var ComposerAttachments = ({ components }) => {
|
|
5801
5959
|
{
|
5802
5960
|
components: {
|
5803
5961
|
...components,
|
5804
|
-
Attachment: _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
5962
|
+
Attachment: _nullishCoalesce(_optionalChain([components, 'optionalAccess', _286 => _286.Attachment]), () => ( attachment_default))
|
5805
5963
|
}
|
5806
5964
|
}
|
5807
5965
|
) });
|
@@ -5929,7 +6087,7 @@ var ThreadWelcomeSuggestions = () => {
|
|
5929
6087
|
const suggestions2 = useThread((t) => t.suggestions);
|
5930
6088
|
const { welcome: { suggestions } = {} } = useThreadConfig();
|
5931
6089
|
const finalSuggestions = suggestions2.length ? suggestions2 : suggestions;
|
5932
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ThreadWelcomeSuggestionContainer, { children: _optionalChain([finalSuggestions, 'optionalAccess',
|
6090
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ThreadWelcomeSuggestionContainer, { children: _optionalChain([finalSuggestions, 'optionalAccess', _287 => _287.map, 'call', _288 => _288((suggestion, idx) => {
|
5933
6091
|
const key = `${suggestion.prompt}-${idx}`;
|
5934
6092
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ThreadWelcomeSuggestion, { suggestion }, key);
|
5935
6093
|
})]) });
|
@@ -6007,7 +6165,7 @@ var UserMessageContent = _react.forwardRef.call(void 0, ({ components, ...props
|
|
6007
6165
|
{
|
6008
6166
|
components: {
|
6009
6167
|
...components,
|
6010
|
-
Text: _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
6168
|
+
Text: _nullishCoalesce(_optionalChain([components, 'optionalAccess', _289 => _289.Text]), () => ( content_part_default.Text))
|
6011
6169
|
}
|
6012
6170
|
}
|
6013
6171
|
) });
|
@@ -6024,7 +6182,7 @@ var UserMessageAttachments = ({
|
|
6024
6182
|
{
|
6025
6183
|
components: {
|
6026
6184
|
...components,
|
6027
|
-
Attachment: _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
6185
|
+
Attachment: _nullishCoalesce(_optionalChain([components, 'optionalAccess', _290 => _290.Attachment]), () => ( attachment_default))
|
6028
6186
|
}
|
6029
6187
|
}
|
6030
6188
|
) }) });
|
@@ -6127,10 +6285,10 @@ var ThreadMessages = ({ components, unstable_flexGrowDiv: flexGrowDiv = true, ..
|
|
6127
6285
|
thread_exports.Messages,
|
6128
6286
|
{
|
6129
6287
|
components: {
|
6130
|
-
UserMessage: _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
6131
|
-
EditComposer: _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
6132
|
-
AssistantMessage: _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
6133
|
-
SystemMessage: _nullishCoalesce(_optionalChain([components, 'optionalAccess',
|
6288
|
+
UserMessage: _nullishCoalesce(_optionalChain([components, 'optionalAccess', _291 => _291.UserMessage]), () => ( user_message_default)),
|
6289
|
+
EditComposer: _nullishCoalesce(_optionalChain([components, 'optionalAccess', _292 => _292.EditComposer]), () => ( edit_composer_default)),
|
6290
|
+
AssistantMessage: _nullishCoalesce(_optionalChain([components, 'optionalAccess', _293 => _293.AssistantMessage]), () => ( assistant_message_default)),
|
6291
|
+
SystemMessage: _nullishCoalesce(_optionalChain([components, 'optionalAccess', _294 => _294.SystemMessage]), () => ( SystemMessage))
|
6134
6292
|
},
|
6135
6293
|
...rest
|
6136
6294
|
}
|
@@ -6141,7 +6299,7 @@ var ThreadMessages = ({ components, unstable_flexGrowDiv: flexGrowDiv = true, ..
|
|
6141
6299
|
ThreadMessages.displayName = "ThreadMessages";
|
6142
6300
|
var ThreadFollowupSuggestions = () => {
|
6143
6301
|
const suggestions = useThread((t) => t.suggestions);
|
6144
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, thread_exports.If, { empty: false, running: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aui-thread-followup-suggestions", children: _optionalChain([suggestions, 'optionalAccess',
|
6302
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, thread_exports.If, { empty: false, running: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aui-thread-followup-suggestions", children: _optionalChain([suggestions, 'optionalAccess', _295 => _295.map, 'call', _296 => _296((suggestion, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
6145
6303
|
thread_exports.Suggestion,
|
6146
6304
|
{
|
6147
6305
|
className: "aui-thread-followup-suggestion",
|
@@ -6374,5 +6532,6 @@ var assistant_modal_default = Object.assign(AssistantModal, exports12);
|
|
6374
6532
|
|
6375
6533
|
|
6376
6534
|
|
6377
|
-
|
6535
|
+
|
6536
|
+
exports.ActionBarPrimitive = actionBar_exports; exports.AssistantActionBar = assistant_action_bar_default; exports.AssistantMessage = assistant_message_default; exports.AssistantModal = assistant_modal_default; exports.AssistantModalPrimitive = assistantModal_exports; exports.AssistantRuntimeProvider = AssistantRuntimeProvider; exports.AttachmentPrimitive = attachment_exports; exports.AttachmentUI = attachment_default; exports.BranchPicker = branch_picker_default; exports.BranchPickerPrimitive = branchPicker_exports; exports.Composer = composer_default; exports.ComposerAttachment = attachment_default; exports.ComposerPrimitive = composer_exports; exports.CompositeAttachmentAdapter = CompositeAttachmentAdapter; exports.ContentPart = content_part_default; exports.ContentPartPrimitive = contentPart_exports; exports.EdgeChatAdapter = EdgeChatAdapter; exports.EditComposer = edit_composer_default; exports.INTERNAL = internal_exports; exports.MessagePrimitive = message_exports; exports.SimpleImageAttachmentAdapter = SimpleImageAttachmentAdapter; exports.SimpleTextAttachmentAdapter = SimpleTextAttachmentAdapter; exports.TextContentPartProvider = TextContentPartProvider; exports.Thread = thread_default; exports.ThreadConfigProvider = ThreadConfigProvider; exports.ThreadPrimitive = thread_exports; exports.ThreadWelcome = thread_welcome_default; exports.UserActionBar = user_action_bar_default; exports.UserMessage = user_message_default; exports.UserMessageAttachment = attachment_default; exports.WebSpeechSynthesisAdapter = WebSpeechSynthesisAdapter; exports.fromCoreMessage = fromCoreMessage; exports.fromCoreMessages = fromCoreMessages; exports.fromLanguageModelMessages = fromLanguageModelMessages; exports.fromLanguageModelTools = fromLanguageModelTools; exports.getExternalStoreMessage = getExternalStoreMessage; exports.makeAssistantTool = makeAssistantTool; exports.makeAssistantToolUI = makeAssistantToolUI; exports.streamUtils = streamUtils; exports.subscribeToMainThread = subscribeToMainThread; exports.toCoreMessage = _chunkC6UZOY5Ajs.toCoreMessage; exports.toCoreMessages = _chunkC6UZOY5Ajs.toCoreMessages; exports.toLanguageModelMessages = _chunkC6UZOY5Ajs.toLanguageModelMessages; exports.toLanguageModelTools = _chunkC6UZOY5Ajs.toLanguageModelTools; exports.useActionBarCopy = useActionBarCopy; exports.useActionBarEdit = useActionBarEdit; exports.useActionBarFeedbackNegative = useActionBarFeedbackNegative; exports.useActionBarFeedbackPositive = useActionBarFeedbackPositive; exports.useActionBarReload = useActionBarReload; exports.useActionBarSpeak = useActionBarSpeak; exports.useActionBarStopSpeaking = useActionBarStopSpeaking; exports.useAppendMessage = useAppendMessage; exports.useAssistantActions = useAssistantActions; exports.useAssistantActionsStore = useAssistantActionsStore; exports.useAssistantContext = useAssistantContext; exports.useAssistantInstructions = useAssistantInstructions; exports.useAssistantRuntime = useAssistantRuntime; exports.useAssistantRuntimeStore = useAssistantRuntimeStore; exports.useAssistantTool = useAssistantTool; exports.useAssistantToolUI = useAssistantToolUI; exports.useBranchPickerCount = useBranchPickerCount; exports.useBranchPickerNext = useBranchPickerNext; exports.useBranchPickerNumber = useBranchPickerNumber; exports.useBranchPickerPrevious = useBranchPickerPrevious; exports.useComposer = useComposer; exports.useComposerAddAttachment = useComposerAddAttachment; exports.useComposerCancel = useComposerCancel; exports.useComposerContext = useComposerContext; exports.useComposerIf = useComposerIf; exports.useComposerRuntime = useComposerRuntime; exports.useComposerSend = useComposerSend; exports.useComposerStore = useComposerStore; exports.useContentPart = useContentPart; exports.useContentPartContext = useContentPartContext; exports.useContentPartDisplay = useContentPartDisplay; exports.useContentPartImage = useContentPartImage; exports.useContentPartRuntime = useContentPartRuntime; exports.useContentPartStore = useContentPartStore; exports.useContentPartText = useContentPartText; exports.useDangerousInBrowserRuntime = useDangerousInBrowserRuntime; exports.useEdgeRuntime = useEdgeRuntime; exports.useEditComposer = useEditComposer; exports.useEditComposerStore = useEditComposerStore; exports.useExternalMessageConverter = useExternalMessageConverter; exports.useExternalStoreRuntime = useExternalStoreRuntime; exports.useLocalRuntime = useLocalRuntime; exports.useMessage = useMessage; exports.useMessageContext = useMessageContext; exports.useMessageIf = useMessageIf; exports.useMessageRuntime = useMessageRuntime; exports.useMessageStore = useMessageStore; exports.useMessageUtils = useMessageUtils; exports.useMessageUtilsStore = useMessageUtilsStore; exports.useSwitchToNewThread = useSwitchToNewThread; exports.useThread = useThread; exports.useThreadActions = useThreadActions; exports.useThreadActionsStore = useThreadActionsStore; exports.useThreadComposer = useThreadComposer; exports.useThreadComposerStore = useThreadComposerStore; exports.useThreadConfig = useThreadConfig; exports.useThreadContext = useThreadContext; exports.useThreadEmpty = useThreadEmpty; exports.useThreadIf = useThreadIf; exports.useThreadMessages = useThreadMessages; exports.useThreadMessagesStore = useThreadMessagesStore; exports.useThreadModelConfig = useThreadModelConfig; exports.useThreadRuntime = useThreadRuntime; exports.useThreadRuntimeStore = useThreadRuntimeStore; exports.useThreadScrollToBottom = useThreadScrollToBottom; exports.useThreadStore = useThreadStore; exports.useThreadSuggestion = useThreadSuggestion; exports.useThreadViewport = useThreadViewport; exports.useThreadViewportStore = useThreadViewportStore; exports.useToolUIs = useToolUIs; exports.useToolUIsStore = useToolUIsStore;
|
6378
6537
|
//# sourceMappingURL=index.js.map
|