@ottocode/web-sdk 0.1.278 → 0.1.280
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/components/chat/ChatInput.d.ts.map +1 -1
- package/dist/components/chat/ChatInputContainer.d.ts.map +1 -1
- package/dist/components/chat/NewSessionLanding.d.ts.map +1 -1
- package/dist/components/dashboard/UsageDashboard.d.ts +6 -0
- package/dist/components/dashboard/UsageDashboard.d.ts.map +1 -0
- package/dist/components/file-browser/FileViewerPanel.d.ts.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +4201 -2669
- package/dist/components/index.js.map +25 -21
- package/dist/components/messages/MessagePartItem.d.ts.map +1 -1
- package/dist/components/messages/UserMessageGroup.d.ts.map +1 -1
- package/dist/components/messages/renderers/CopyAttachmentRenderer.d.ts +3 -0
- package/dist/components/messages/renderers/CopyAttachmentRenderer.d.ts.map +1 -0
- package/dist/components/messages/renderers/ReadImageRenderer.d.ts +3 -0
- package/dist/components/messages/renderers/ReadImageRenderer.d.ts.map +1 -0
- package/dist/components/messages/renderers/index.d.ts.map +1 -1
- package/dist/components/messages/renderers/types.d.ts +8 -0
- package/dist/components/messages/renderers/types.d.ts.map +1 -1
- package/dist/components/onboarding/OnboardingModal.d.ts.map +1 -1
- package/dist/components/settings/SettingsSidebar.d.ts +11 -1
- package/dist/components/settings/SettingsSidebar.d.ts.map +1 -1
- package/dist/components/workspace/ViewerTabs.d.ts.map +1 -1
- package/dist/hooks/index.js +113 -39
- package/dist/hooks/index.js.map +8 -7
- package/dist/hooks/useFileUpload.d.ts +19 -2
- package/dist/hooks/useFileUpload.d.ts.map +1 -1
- package/dist/hooks/usePreferences.d.ts +1 -0
- package/dist/hooks/usePreferences.d.ts.map +1 -1
- package/dist/index.js +4403 -2859
- package/dist/index.js.map +26 -21
- package/dist/lib/api-client/index.d.ts +2 -0
- package/dist/lib/api-client/index.d.ts.map +1 -1
- package/dist/lib/api-client/usage.d.ts +8 -0
- package/dist/lib/api-client/usage.d.ts.map +1 -0
- package/dist/lib/index.js +37 -1
- package/dist/lib/index.js.map +6 -5
- package/dist/lib/platform.d.ts +1 -0
- package/dist/lib/platform.d.ts.map +1 -1
- package/dist/stores/index.d.ts +1 -0
- package/dist/stores/index.d.ts.map +1 -1
- package/dist/stores/index.js +12 -1
- package/dist/stores/index.js.map +5 -4
- package/dist/stores/rightRailStore.d.ts +20 -0
- package/dist/stores/rightRailStore.d.ts.map +1 -0
- package/dist/types/api.d.ts +9 -2
- package/dist/types/api.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessagePartItem.d.ts","sourceRoot":"","sources":["../../../src/components/messages/MessagePartItem.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MessagePartItem.d.ts","sourceRoot":"","sources":["../../../src/components/messages/MessagePartItem.tsx"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAI1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAwInD,UAAU,oBAAoB;IAC7B,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC7C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,eAAO,MAAM,eAAe,4DAqf3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserMessageGroup.d.ts","sourceRoot":"","sources":["../../../src/components/messages/UserMessageGroup.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAM/C,UAAU,qBAAqB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CAChC;
|
|
1
|
+
{"version":3,"file":"UserMessageGroup.d.ts","sourceRoot":"","sources":["../../../src/components/messages/UserMessageGroup.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAM/C,UAAU,qBAAqB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CAChC;AAgBD,eAAO,MAAM,gBAAgB,6DAsT5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CopyAttachmentRenderer.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/renderers/CopyAttachmentRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAoC7C,wBAAgB,sBAAsB,CAAC,EACtC,WAAW,EACX,cAAc,EACd,UAAU,EACV,QAAQ,EACR,OAAO,GACP,EAAE,aAAa,2CAkHf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadImageRenderer.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/renderers/ReadImageRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAiC7C,wBAAgB,iBAAiB,CAAC,EACjC,WAAW,EACX,cAAc,EACd,UAAU,EACV,QAAQ,EACR,OAAO,GACP,EAAE,aAAa,2CAiGf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/renderers/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/renderers/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA0B3C,UAAU,uBAAuB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AA4DD,wBAAgB,kBAAkB,CAAC,EAClC,QAAQ,EACR,WAAW,EACX,cAAc,EACd,KAAK,EACL,mBAAmB,EACnB,OAAO,EACP,SAAS,EACT,OAAO,EACP,SAAS,GACT,EAAE,uBAAuB,2CA+FzB;AAED,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -67,6 +67,14 @@ export interface ToolResultData {
|
|
|
67
67
|
lineRange?: string;
|
|
68
68
|
content?: string;
|
|
69
69
|
bytes?: number;
|
|
70
|
+
mediaType?: string;
|
|
71
|
+
data?: string;
|
|
72
|
+
size?: number;
|
|
73
|
+
transmittedSize?: number;
|
|
74
|
+
sha256?: string;
|
|
75
|
+
compressed?: boolean;
|
|
76
|
+
width?: number;
|
|
77
|
+
height?: number;
|
|
70
78
|
artifact?: {
|
|
71
79
|
patch?: string;
|
|
72
80
|
summary?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/renderers/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/renderers/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OnboardingModal.d.ts","sourceRoot":"","sources":["../../../src/components/onboarding/OnboardingModal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"OnboardingModal.d.ts","sourceRoot":"","sources":["../../../src/components/onboarding/OnboardingModal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAQ5D,UAAU,oBAAoB;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,aAAa,CAAC;CACtB;AAED,eAAO,MAAM,eAAe,4DA+G1B,CAAC"}
|
|
@@ -1,2 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
interface SettingsSidebarProps {
|
|
2
|
+
/**
|
|
3
|
+
* Override navigation for the "Usage Dashboard" button. When provided,
|
|
4
|
+
* this is called instead of `window.location.assign('/dashboard')` so
|
|
5
|
+
* embedders (e.g. the Tauri desktop app, which has no URL routing) can
|
|
6
|
+
* render the dashboard inline.
|
|
7
|
+
*/
|
|
8
|
+
onOpenDashboard?: () => void;
|
|
9
|
+
}
|
|
10
|
+
export declare const SettingsSidebar: import("react").NamedExoticComponent<SettingsSidebarProps>;
|
|
11
|
+
export {};
|
|
2
12
|
//# sourceMappingURL=SettingsSidebar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingsSidebar.d.ts","sourceRoot":"","sources":["../../../src/components/settings/SettingsSidebar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SettingsSidebar.d.ts","sourceRoot":"","sources":["../../../src/components/settings/SettingsSidebar.tsx"],"names":[],"mappings":"AA8qBA,UAAU,oBAAoB;IAC7B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,eAAO,MAAM,eAAe,4DAyN1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewerTabs.d.ts","sourceRoot":"","sources":["../../../src/components/workspace/ViewerTabs.tsx"],"names":[],"mappings":"AAyVA,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"ViewerTabs.d.ts","sourceRoot":"","sources":["../../../src/components/workspace/ViewerTabs.tsx"],"names":[],"mappings":"AAyVA,eAAO,MAAM,UAAU,8CA8FrB,CAAC"}
|
package/dist/hooks/index.js
CHANGED
|
@@ -907,6 +907,30 @@ var skillsMixin = {
|
|
|
907
907
|
}
|
|
908
908
|
};
|
|
909
909
|
|
|
910
|
+
// src/lib/api-client/usage.ts
|
|
911
|
+
import {
|
|
912
|
+
getUsageStats as apiGetUsageStats,
|
|
913
|
+
getGlobalUsageStats as apiGetGlobalUsageStats
|
|
914
|
+
} from "@ottocode/api";
|
|
915
|
+
var usageMixin = {
|
|
916
|
+
async getUsageStats() {
|
|
917
|
+
const { data, error } = await apiGetUsageStats();
|
|
918
|
+
if (error)
|
|
919
|
+
throw new Error(extractErrorMessage(error));
|
|
920
|
+
if (!data)
|
|
921
|
+
throw new Error("Empty response from /v1/usage/stats");
|
|
922
|
+
return data;
|
|
923
|
+
},
|
|
924
|
+
async getGlobalUsageStats() {
|
|
925
|
+
const { data, error } = await apiGetGlobalUsageStats();
|
|
926
|
+
if (error)
|
|
927
|
+
throw new Error(extractErrorMessage(error));
|
|
928
|
+
if (!data)
|
|
929
|
+
throw new Error("Empty response from /v1/usage/stats/global");
|
|
930
|
+
return data;
|
|
931
|
+
}
|
|
932
|
+
};
|
|
933
|
+
|
|
910
934
|
// src/lib/api-client/index.ts
|
|
911
935
|
class ApiClient {
|
|
912
936
|
getSessions = sessionsMixin.getSessions;
|
|
@@ -997,6 +1021,8 @@ class ApiClient {
|
|
|
997
1021
|
getSkillFileContent = skillsMixin.getSkillFileContent;
|
|
998
1022
|
getSkillsConfig = skillsMixin.getSkillsConfig;
|
|
999
1023
|
updateSkillsConfig = skillsMixin.updateSkillsConfig;
|
|
1024
|
+
getUsageStats = usageMixin.getUsageStats;
|
|
1025
|
+
getGlobalUsageStats = usageMixin.getGlobalUsageStats;
|
|
1000
1026
|
}
|
|
1001
1027
|
var apiClient = new ApiClient;
|
|
1002
1028
|
|
|
@@ -1105,6 +1131,15 @@ function hasPlatformOpenUrl() {
|
|
|
1105
1131
|
function hasPlatformSystemFonts() {
|
|
1106
1132
|
return !!getPlatformWindow()?.OTTO_LIST_SYSTEM_FONTS;
|
|
1107
1133
|
}
|
|
1134
|
+
function isPlatformDesktop() {
|
|
1135
|
+
if (typeof window === "undefined")
|
|
1136
|
+
return false;
|
|
1137
|
+
try {
|
|
1138
|
+
return "__TAURI__" in window || "__TAURI_INTERNALS__" in window || "__TAURI_METADATA__" in window;
|
|
1139
|
+
} catch {
|
|
1140
|
+
return false;
|
|
1141
|
+
}
|
|
1142
|
+
}
|
|
1108
1143
|
|
|
1109
1144
|
// src/hooks/usePreferences.ts
|
|
1110
1145
|
var STORAGE_KEY = "otto-preferences";
|
|
@@ -1112,7 +1147,8 @@ var DEFAULT_FONT_FAMILY = "IBM Plex Mono";
|
|
|
1112
1147
|
var DEFAULT_STORED_PREFERENCES = {
|
|
1113
1148
|
vimMode: false,
|
|
1114
1149
|
compactThread: true,
|
|
1115
|
-
fontFamily: DEFAULT_FONT_FAMILY
|
|
1150
|
+
fontFamily: DEFAULT_FONT_FAMILY,
|
|
1151
|
+
smartEdges: true
|
|
1116
1152
|
};
|
|
1117
1153
|
function cssFontFamily(fontFamily) {
|
|
1118
1154
|
const trimmed = fontFamily.trim();
|
|
@@ -1145,7 +1181,8 @@ function resolveInitialPreferences() {
|
|
|
1145
1181
|
return {
|
|
1146
1182
|
vimMode: typeof parsed.vimMode === "boolean" ? parsed.vimMode : DEFAULT_STORED_PREFERENCES.vimMode,
|
|
1147
1183
|
compactThread: typeof parsed.compactThread === "boolean" ? parsed.compactThread : DEFAULT_STORED_PREFERENCES.compactThread,
|
|
1148
|
-
fontFamily: typeof parsed.fontFamily === "string" && parsed.fontFamily.trim() ? parsed.fontFamily.trim() : DEFAULT_STORED_PREFERENCES.fontFamily
|
|
1184
|
+
fontFamily: typeof parsed.fontFamily === "string" && parsed.fontFamily.trim() ? parsed.fontFamily.trim() : DEFAULT_STORED_PREFERENCES.fontFamily,
|
|
1185
|
+
smartEdges: typeof parsed.smartEdges === "boolean" ? parsed.smartEdges : DEFAULT_STORED_PREFERENCES.smartEdges
|
|
1149
1186
|
};
|
|
1150
1187
|
}
|
|
1151
1188
|
} catch (error) {
|
|
@@ -1200,6 +1237,9 @@ function usePreferences() {
|
|
|
1200
1237
|
if (updates.fontFamily !== undefined) {
|
|
1201
1238
|
localUpdates.fontFamily = updates.fontFamily.trim() || DEFAULT_FONT_FAMILY;
|
|
1202
1239
|
}
|
|
1240
|
+
if (updates.smartEdges !== undefined) {
|
|
1241
|
+
localUpdates.smartEdges = updates.smartEdges;
|
|
1242
|
+
}
|
|
1203
1243
|
if (Object.keys(localUpdates).length > 0) {
|
|
1204
1244
|
updateStore(localUpdates);
|
|
1205
1245
|
}
|
|
@@ -4822,10 +4862,13 @@ var TEXT_EXTENSIONS = [
|
|
|
4822
4862
|
".svelte",
|
|
4823
4863
|
".vue"
|
|
4824
4864
|
];
|
|
4825
|
-
var SUPPORTED_TYPES2 = [...IMAGE_TYPES, ...PDF_TYPES, ...TEXT_TYPES];
|
|
4826
4865
|
function generateId2() {
|
|
4827
4866
|
return `file-${Date.now()}-${Math.random().toString(36).slice(2, 9)}`;
|
|
4828
4867
|
}
|
|
4868
|
+
function getExtension(file) {
|
|
4869
|
+
const index = file.name.lastIndexOf(".");
|
|
4870
|
+
return index >= 0 ? file.name.toLowerCase().slice(index) : "";
|
|
4871
|
+
}
|
|
4829
4872
|
function getFileType(file) {
|
|
4830
4873
|
if (IMAGE_TYPES.includes(file.type))
|
|
4831
4874
|
return "image";
|
|
@@ -4833,16 +4876,9 @@ function getFileType(file) {
|
|
|
4833
4876
|
return "pdf";
|
|
4834
4877
|
if (TEXT_TYPES.includes(file.type))
|
|
4835
4878
|
return "text";
|
|
4836
|
-
|
|
4837
|
-
if (TEXT_EXTENSIONS.includes(ext))
|
|
4879
|
+
if (TEXT_EXTENSIONS.includes(getExtension(file)))
|
|
4838
4880
|
return "text";
|
|
4839
|
-
return
|
|
4840
|
-
}
|
|
4841
|
-
function isSupported(file) {
|
|
4842
|
-
if (SUPPORTED_TYPES2.includes(file.type))
|
|
4843
|
-
return true;
|
|
4844
|
-
const ext = file.name.toLowerCase().slice(file.name.lastIndexOf("."));
|
|
4845
|
-
return TEXT_EXTENSIONS.includes(ext);
|
|
4881
|
+
return "binary";
|
|
4846
4882
|
}
|
|
4847
4883
|
async function fileToBase642(file) {
|
|
4848
4884
|
return new Promise((resolve, reject) => {
|
|
@@ -4872,13 +4908,29 @@ async function fileToPreview2(file) {
|
|
|
4872
4908
|
reader.readAsDataURL(file);
|
|
4873
4909
|
});
|
|
4874
4910
|
}
|
|
4911
|
+
async function uploadOriginalFile(file, sessionId) {
|
|
4912
|
+
const form = new FormData;
|
|
4913
|
+
form.set("file", file);
|
|
4914
|
+
if (sessionId)
|
|
4915
|
+
form.set("sessionId", sessionId);
|
|
4916
|
+
const response = await fetch(`${getBaseUrl()}/v1/attachments`, {
|
|
4917
|
+
method: "POST",
|
|
4918
|
+
body: form
|
|
4919
|
+
});
|
|
4920
|
+
const data = await response.json().catch(() => null);
|
|
4921
|
+
if (!response.ok) {
|
|
4922
|
+
throw new Error(extractErrorMessage(data));
|
|
4923
|
+
}
|
|
4924
|
+
return data;
|
|
4925
|
+
}
|
|
4875
4926
|
function useFileUpload(options = {}) {
|
|
4876
4927
|
const {
|
|
4877
4928
|
maxFiles = 10,
|
|
4878
|
-
maxSizeMB =
|
|
4929
|
+
maxSizeMB = 100,
|
|
4879
4930
|
pageWide = true,
|
|
4880
4931
|
supportsImages = true,
|
|
4881
4932
|
supportsFileAttachments = true,
|
|
4933
|
+
sessionId,
|
|
4882
4934
|
onError
|
|
4883
4935
|
} = options;
|
|
4884
4936
|
const [files, setFiles] = useState4([]);
|
|
@@ -4886,21 +4938,11 @@ function useFileUpload(options = {}) {
|
|
|
4886
4938
|
const [error, setError] = useState4(null);
|
|
4887
4939
|
const maxSizeBytes = maxSizeMB * 1024 * 1024;
|
|
4888
4940
|
const validateFile = useCallback5((file) => {
|
|
4889
|
-
if (!supportsImages && IMAGE_TYPES.includes(file.type)) {
|
|
4890
|
-
return "This model does not support image attachments";
|
|
4891
|
-
}
|
|
4892
|
-
if (!supportsFileAttachments && PDF_TYPES.includes(file.type)) {
|
|
4893
|
-
return "This model does not support PDF attachments";
|
|
4894
|
-
}
|
|
4895
|
-
if (!isSupported(file)) {
|
|
4896
|
-
const ext = file.name.slice(file.name.lastIndexOf("."));
|
|
4897
|
-
return `Unsupported file type: ${ext || file.type || "unknown"}`;
|
|
4898
|
-
}
|
|
4899
4941
|
if (file.size > maxSizeBytes) {
|
|
4900
4942
|
return `File too large: ${(file.size / 1024 / 1024).toFixed(1)}MB. Max: ${maxSizeMB}MB`;
|
|
4901
4943
|
}
|
|
4902
4944
|
return null;
|
|
4903
|
-
}, [maxSizeBytes, maxSizeMB
|
|
4945
|
+
}, [maxSizeBytes, maxSizeMB]);
|
|
4904
4946
|
const addFiles = useCallback5(async (inputFiles) => {
|
|
4905
4947
|
setError(null);
|
|
4906
4948
|
const fileArray = Array.from(inputFiles);
|
|
@@ -4921,38 +4963,44 @@ function useFileUpload(options = {}) {
|
|
|
4921
4963
|
continue;
|
|
4922
4964
|
}
|
|
4923
4965
|
const fileType = getFileType(file);
|
|
4924
|
-
if (!fileType)
|
|
4925
|
-
continue;
|
|
4926
4966
|
try {
|
|
4927
4967
|
let preview;
|
|
4928
4968
|
let data;
|
|
4929
4969
|
let textContent;
|
|
4930
|
-
let mediaType = file.type;
|
|
4970
|
+
let mediaType = file.type || "application/octet-stream";
|
|
4931
4971
|
if (fileType === "image") {
|
|
4932
|
-
|
|
4933
|
-
|
|
4934
|
-
|
|
4935
|
-
|
|
4972
|
+
if (supportsImages) {
|
|
4973
|
+
[preview, data] = await Promise.all([
|
|
4974
|
+
fileToPreview2(file),
|
|
4975
|
+
fileToBase642(file)
|
|
4976
|
+
]);
|
|
4977
|
+
} else {
|
|
4978
|
+
preview = await fileToPreview2(file);
|
|
4979
|
+
}
|
|
4936
4980
|
} else if (fileType === "pdf") {
|
|
4937
|
-
data = await fileToBase642(file);
|
|
4938
4981
|
mediaType = "application/pdf";
|
|
4939
|
-
|
|
4982
|
+
if (supportsFileAttachments) {
|
|
4983
|
+
data = await fileToBase642(file);
|
|
4984
|
+
}
|
|
4985
|
+
} else if (fileType === "text") {
|
|
4940
4986
|
textContent = await fileToText(file);
|
|
4941
4987
|
data = textContent;
|
|
4942
|
-
if (!
|
|
4988
|
+
if (!file.type) {
|
|
4943
4989
|
const ext = file.name.toLowerCase();
|
|
4944
4990
|
mediaType = ext.endsWith(".md") || ext.endsWith(".markdown") ? "text/markdown" : "text/plain";
|
|
4945
4991
|
}
|
|
4946
4992
|
}
|
|
4993
|
+
const id = generateId2();
|
|
4947
4994
|
newFiles.push({
|
|
4948
|
-
id
|
|
4995
|
+
id,
|
|
4949
4996
|
file,
|
|
4950
4997
|
type: fileType,
|
|
4951
4998
|
name: file.name,
|
|
4952
4999
|
preview,
|
|
4953
5000
|
data,
|
|
4954
5001
|
mediaType,
|
|
4955
|
-
textContent
|
|
5002
|
+
textContent,
|
|
5003
|
+
uploadStatus: "uploading"
|
|
4956
5004
|
});
|
|
4957
5005
|
} catch {
|
|
4958
5006
|
const msg = `Failed to process file: ${file.name}`;
|
|
@@ -4962,8 +5010,34 @@ function useFileUpload(options = {}) {
|
|
|
4962
5010
|
}
|
|
4963
5011
|
if (newFiles.length > 0) {
|
|
4964
5012
|
setFiles((prev) => [...prev, ...newFiles]);
|
|
5013
|
+
for (const item of newFiles) {
|
|
5014
|
+
uploadOriginalFile(item.file, sessionId).then((uploadedAttachment) => {
|
|
5015
|
+
setFiles((prev) => prev.map((existing) => existing.id === item.id ? {
|
|
5016
|
+
...existing,
|
|
5017
|
+
uploadStatus: "ready",
|
|
5018
|
+
uploadedAttachment,
|
|
5019
|
+
uploadError: undefined
|
|
5020
|
+
} : existing));
|
|
5021
|
+
}).catch((uploadError) => {
|
|
5022
|
+
const msg = uploadError instanceof Error ? uploadError.message : `Failed to upload ${item.name}`;
|
|
5023
|
+
setFiles((prev) => prev.map((existing) => existing.id === item.id ? {
|
|
5024
|
+
...existing,
|
|
5025
|
+
uploadStatus: "failed",
|
|
5026
|
+
uploadError: msg
|
|
5027
|
+
} : existing));
|
|
5028
|
+
onError?.(msg);
|
|
5029
|
+
});
|
|
5030
|
+
}
|
|
4965
5031
|
}
|
|
4966
|
-
}, [
|
|
5032
|
+
}, [
|
|
5033
|
+
files.length,
|
|
5034
|
+
maxFiles,
|
|
5035
|
+
validateFile,
|
|
5036
|
+
onError,
|
|
5037
|
+
sessionId,
|
|
5038
|
+
supportsImages,
|
|
5039
|
+
supportsFileAttachments
|
|
5040
|
+
]);
|
|
4967
5041
|
const removeFile = useCallback5((id) => {
|
|
4968
5042
|
setFiles((prev) => prev.filter((f) => f.id !== id));
|
|
4969
5043
|
setError(null);
|
|
@@ -5064,7 +5138,7 @@ function useFileUpload(options = {}) {
|
|
|
5064
5138
|
};
|
|
5065
5139
|
}, [pageWide, addFiles]);
|
|
5066
5140
|
const images = files.filter((f) => f.type === "image");
|
|
5067
|
-
const documents = files.filter((f) => f.type
|
|
5141
|
+
const documents = files.filter((f) => f.type !== "image");
|
|
5068
5142
|
return {
|
|
5069
5143
|
files,
|
|
5070
5144
|
images,
|
|
@@ -6688,4 +6762,4 @@ export {
|
|
|
6688
6762
|
normalizeQueueState
|
|
6689
6763
|
};
|
|
6690
6764
|
|
|
6691
|
-
//# debugId=
|
|
6765
|
+
//# debugId=D9223216E14373C964756E2164756E21
|