@arbidocs/react 0.5.108 → 0.5.110
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +224 -49
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +17 -1
- package/dist/index.d.ts +17 -1
- package/dist/index.js +224 -51
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import { createRecordStore, useUserSettings, patchConversation, invalidateConver
|
|
|
3
3
|
export { AUDIENCE_CHOICES, CALL_CAPTION_TOPIC, CALL_CHAT_MAX_CHARS, CALL_CHAT_TOPIC, CALL_MODERATION_TOPIC, CALL_RECORDING_TOPIC, CALL_TRANSCRIPTION_TOPIC, CALL_WEBINAR_TOPIC, CAPTION_MAX_CHARS, COMPOSITE_AUDIO_BITS_PER_SECOND, COMPOSITE_VIDEO_BITS_PER_SECOND, DEFAULT_JOIN_CHOICES, EMPTY_CALL_SESSION, EXPORT_SAMPLE_RATE, HISTORY_LIMIT, LIVE_SEGMENTER, MAX_AVATAR_FILE_BYTES, MUTED_DEDUPE_MS, PLAYBACK_LOOKAHEAD_MS, READ_ONLY_MEETING_TEXT, RECORDING_CHUNK_MS, RECORDING_SEGMENTER, SEGMENT_FRAME_MS, SEGMENT_ID_PATTERN, SEGMENT_PRE_ROLL_MS, SHORT_PIECE_MERGE_GAP_MS, SPEAKER_AUDIO_BITS_PER_SECOND, TrackUploader, UPLOAD_ATTEMPTS, UPLOAD_BACKOFF_MS, acceptRing, addConversationToList, appendToThread, applyAgentDmStatus, applyCallEvent, applyChatEvent, applyChatMessage, applyChatRead, applyChatUpdated, arbiAccountClient, buildMeetingChatBody, cachedChat, cachedChats, callLink, callMemberKeys, callSession, chatByExtId, chatHasLiveCall, chatLiveCallId, chatTranscriptRef, clearMeetingChatCache, clearTrackUploaders, clockTime, compositeFiles, compositeTrack, conversationKeyForCall, createLocalFeatureStore, createMutedNotifier, createTrackCutter, cutAtPauses, declineRing, decodeCallChatPacket, decodeCaptionPacket, decodeMono16k, decryptPart, encodeCallChatPacket, encodeCaptionPacket, encodeWav, encryptPart, ensureMeetingChat, entitlementRefusal, extensionFor, fetchPart, fileSafe, findConversation, floatToWav, formatTranscriptMarkdown, getOpenChat, hasRecordingTranscript, invalidateCall, invalidateConversationDetails, invalidateConversationLists, isConversationListKey, isConversationShared, isRecordingOver, isRecordingSegmentId, isRetryable, isWorkspaceGuestOf, joinFromPreJoin, knownMeetingChat, loadMeetingHistory, markRejoining, meetingChatRefFrom, meetingRefForCall, mergeChatLines, mutedNoticeFromEvent, mutedNoticeFromPacket, mutedNoticeText, myChatId, newPacketId, newSegmentId, newTrackKey, nextSeqAfter, onCallEvent, openCall, openQuestion, openRecording, parseWebinarPacket, partKey, partOffsetMs, partsDue, patchConversation, patchConversationList, persistMeetingMessage, persistTranscriptSegment, playheadAt, postRecordingDocsToThread, postTranscriptToThread, readLocalFeature, recordingFiles, recordingWindowsOf, rejoinAsAudience, removeChat, removeConversationFromLists, resetCallSession, resolveMeetingChat, saveRecordingFilesToThread, schedulePart, sealQuestionText, serverCallsExperimental, setOpenChat, sortTranscriptMessages, sortedParts, speakerTracks, speakerWav, splitIntoFiles, standalone, startChatCall, startContactsCall, startDmCall, startThreadCall, startsMediaFile, storeTranscriptSegment, stripSpeakerPrefix, supersedeLiveTranscript, supersededTranscriptLines, threadHasLiveCall, threadLiveCallId, threadTranscriptLines, threadTranscriptRef, threadTranscriptText, timelineDurationMs, timelineOf, toProfileView, trackUploaderFor, transcribeRecording, transcriptPersistRole, transcriptSegmentOf, unwrapTrackKey, upsertChat, useAccountClient, useAvatarCrop, useCall, useCallInviteLinks, useCallRecording, useCallRecordings, useCallSession, useCallTranscriptionAvailable, useCallsConfig, useCallsEnabled, useCanHostCalls, useEntitlements, useFeature, useFeatureCheck, useFeatureSwitch, useInvalidateEntitlements, useIsEntitled, useMeetingReadOnly, useNameEditor, useOpenCallMeetingChat, useProfile, useRecordingActions, useRecordingWindows, useRevokeCallInviteLink, useSaveToThread, useServerCallsEnabled, useServerCallsExperimental, useUpdateProfile, useUpdateUserSettings, useUserSettings, wipeOfflineMail, wrapTrackKey, writeSamples } from './chunk-DQALOQPI.js';
|
|
4
4
|
import { replayableTagMutations, inWorkspace, primeOnClient, patchDocuments, setCachedDocument, adjustTagCounts, patchCachedDocument, FINISHED_DOCUMENT_STATUSES, refreshDocuments, getCachedDocuments, useArbiWsStore, IN_FLIGHT_DOCUMENT_STATUSES, useCapturingWorkspace, QUEUED_WRITE_RETRY, isWorkspaceUnavailable, primeOnArbi, forgetDocuments, useDocument, useSimilarDocuments, SIMILARITY_THRESHOLD, QUEUED_WRITE_BLOCKED_MESSAGE, isBlockedOnWorkspace, useDocuments, finishEntityExtraction } from './chunk-P6WLV5UY.js';
|
|
5
5
|
export { DISMISSED_TASK_TTL_MS, DOCUMENTS_FIRST_PAGE_MEASURE, DOCUMENTS_FIRST_PAGE_SIZE, DOCUMENTS_PAGE_SIZE, FINISHED_DOCUMENT_STATUSES, IN_FLIGHT_DOCUMENT_STATUSES, SIMILARITY_THRESHOLD, adjustTagCounts, dropTagFromCachedDocuments, finishEntityExtraction, forgetDocuments, getCachedDocuments, invalidateTagData, invalidateTagTables, isDocumentsLoading, isRowNewer, isStaleTaskUpdate, patchCachedDocument, patchDocuments, patchWorkspaceTags, refreshDocuments, resolveDocumentStatus, setCachedDocument, settledByRows, startEntityExtraction, stopDocumentsLoading, subscribeDocumentRows, upsertDocuments, useArbiWsStore, useCreateTag, useDeleteTag, useDocument, useDocuments, useDocumentsLoading, useEntityExtractionDocIds, useExtractEntities, useInvalidateTagData, useIsCreatingTag, useRefreshDocuments, useSetTagValues, useSimilarDocuments, useTagKindSchema, useUpdateTag, useUpdateTagKindSchema } from './chunk-P6WLV5UY.js';
|
|
6
|
-
import { useArbiSessionState, useArbiSession, useWorkspaces, useConversations, useConfig, useArbiSessionStore, useAvailableModels, useParsedDocument, useTags, selectDraft, useConversationThreads, createArbiSessionStore, useTransientView, useWorkspaceActivity,
|
|
6
|
+
import { useProjects, useCurrentUser, useArbiSessionState, useArbiSession, useWorkspaces, useConversations, useConfig, useArbiSessionStore, useAvailableModels, useParsedDocument, useTags, selectDraft, useConversationThreads, createArbiSessionStore, useTransientView, useWorkspaceActivity, useAgents, useAssistantQuery, useActivity, queuedMessages, MIN_QUEUED_MESSAGE_VISIBILITY_MS } from './chunk-H5M7FXLB.js';
|
|
7
7
|
export { DEFAULT_DOCUMENT_VIEWER_STATE, DOCUMENT_VIEWER_PANEL, EMPTY_CHAT_STATE, EMPTY_DOCUMENT_STATE, EMPTY_SESSION_STATE, MAX_THREAD_TABS, MIN_QUEUED_MESSAGE_VISIBILITY_MS, PROJECT_CREATION_DENIED_REASON, WORKSPACE_LAST_OPENED_KEY, WORKSPACE_STORAGE_KEY, agentControl, browserWorkspaceStorage, clearSealedDrafts, closePanelIn, composeArbiSessionStore, conversationKey, createArbiChatStore, createArbiDocumentSessionStore, createArbiLayoutStore, createArbiSessionStore, createArbiWorkspaceStore, createDebouncedWriter, createSealedDraftStorage, createStoragePersist, createUiStateStorage, defaultLayoutState, dmTabId, flushOnPageExit, isPanelOpen, isUsageMetered, layoutActionsOf, nextViewingDocument, openPanelIn, panelPlace, parseSavedChat, parseSavedDocuments, parseSavedLayout, queuedMessages, readWorkspaceLastOpened, restoreLayout, restoreSavedDocuments, savedChatOf, savedDocumentsOf, savedLayoutOf, selectDraft, selectIsGenerating, selectViewingDocumentId, threadTabId, useActivity, useAgents, useArbiSession, useArbiSessionState, useArbiSessionStore, useAssistantQuery, useAvailableModels, useBoxRole, useBuiltinCommands, useCanCreateProjects, useConfig, useConfigs, useConversationThreads, useConversations, useCurrentUser, useDeleteAgents, useDocumentVersionList, useHealth, useMessageDetails, useParsedDocument, useProjectInvoices, useProjectUsage, useProjects, useSessionPageTab, useSessionView, useSignedInSession, useTags, useThumbnails, useTransientView, useUserUsageToday, useWorkspaceActivity, useWorkspaces } from './chunk-H5M7FXLB.js';
|
|
8
8
|
import { fetchDocumentFile, downloadBlob, fetchMarkupPdf, fetchDocumentPdf } from './chunk-CPQ3CU4B.js';
|
|
9
9
|
import { arbiMutationKeys, arbiQueryKeys, useArbi, useArbiHost, mailQueryKeys, isUnderQueryKey, connectorQueryKeys, calendarQueryKeys } from './chunk-6H3O63TQ.js';
|
|
@@ -3339,13 +3339,18 @@ function useUploadFiles() {
|
|
|
3339
3339
|
}
|
|
3340
3340
|
const total = input.files.reduce((sum, file) => sum + file.size, 0);
|
|
3341
3341
|
const loadedByBatch = new Array(batches.length).fill(0);
|
|
3342
|
+
const filesByBatch = new Array(batches.length).fill(0);
|
|
3342
3343
|
let done = 0;
|
|
3344
|
+
let highest = 0;
|
|
3343
3345
|
const report = () => {
|
|
3344
3346
|
const loaded = loadedByBatch.reduce((sum, bytes) => sum + bytes, 0);
|
|
3347
|
+
const sent = filesByBatch.reduce((sum, files) => sum + files, 0);
|
|
3348
|
+
const share = input.files.length > 0 ? sent / input.files.length : 0;
|
|
3349
|
+
highest = Math.max(highest, Math.min(Math.round(share * 100), 100));
|
|
3345
3350
|
onProgress?.({
|
|
3346
3351
|
loaded,
|
|
3347
3352
|
total,
|
|
3348
|
-
percentage:
|
|
3353
|
+
percentage: highest,
|
|
3349
3354
|
batches: batches.length > 1 ? { current: done, total: batches.length } : null
|
|
3350
3355
|
});
|
|
3351
3356
|
};
|
|
@@ -3359,11 +3364,14 @@ function useUploadFiles() {
|
|
|
3359
3364
|
configExtId: input.configExtId ?? void 0,
|
|
3360
3365
|
// Named even when it is the open one: batches sent after a switch stay in this workspace.
|
|
3361
3366
|
workspaceExtId: workspaceId,
|
|
3367
|
+
// One request for the batch: its files count by the share of its bytes sent.
|
|
3362
3368
|
onProgress: (loaded) => {
|
|
3363
3369
|
loadedByBatch[index] = Math.min(loaded, bytes);
|
|
3370
|
+
filesByBatch[index] = bytes > 0 ? loadedByBatch[index] / bytes * files.length : 0;
|
|
3364
3371
|
report();
|
|
3365
3372
|
}
|
|
3366
3373
|
});
|
|
3374
|
+
const fileShares = new Array(files.length).fill(0);
|
|
3367
3375
|
const directly = async (key, workspace) => arbi.documents.uploadDirect(
|
|
3368
3376
|
workspace,
|
|
3369
3377
|
key,
|
|
@@ -3378,9 +3386,15 @@ function useUploadFiles() {
|
|
|
3378
3386
|
shared: input.shared,
|
|
3379
3387
|
folder: folder ?? void 0,
|
|
3380
3388
|
configExtId: input.configExtId ?? void 0,
|
|
3381
|
-
//
|
|
3382
|
-
|
|
3383
|
-
|
|
3389
|
+
// Per file, in ciphertext bytes: that file's share sent, scaled back to its own
|
|
3390
|
+
// size so the byte total stays true.
|
|
3391
|
+
onBytesProgress: ({ fileIndex, loaded, total: sent }) => {
|
|
3392
|
+
const share = sent > 0 ? Math.min(loaded / sent, 1) : 0;
|
|
3393
|
+
fileShares[fileIndex] = Math.max(fileShares[fileIndex] ?? 0, share);
|
|
3394
|
+
loadedByBatch[index] = Math.round(
|
|
3395
|
+
files.reduce((sum, file, i) => sum + (fileShares[i] ?? 0) * file.size, 0)
|
|
3396
|
+
);
|
|
3397
|
+
filesByBatch[index] = fileShares.reduce((sum, part) => sum + part, 0);
|
|
3384
3398
|
report();
|
|
3385
3399
|
}
|
|
3386
3400
|
}
|
|
@@ -3397,6 +3411,7 @@ function useUploadFiles() {
|
|
|
3397
3411
|
);
|
|
3398
3412
|
}
|
|
3399
3413
|
loadedByBatch[index] = bytes;
|
|
3414
|
+
filesByBatch[index] = files.length;
|
|
3400
3415
|
done += 1;
|
|
3401
3416
|
report();
|
|
3402
3417
|
return result;
|
|
@@ -10972,6 +10987,8 @@ var DEFAULT_USAGE_SOURCE_LABELS = {
|
|
|
10972
10987
|
description: "AI usage of your projects by day and model: \xA3 (ex VAT), tokens and requests.",
|
|
10973
10988
|
period: "Period",
|
|
10974
10989
|
periods: { current: "This period", previous: "Last period" },
|
|
10990
|
+
projectParam: "Project",
|
|
10991
|
+
allProjects: "All your projects",
|
|
10975
10992
|
day: "Day",
|
|
10976
10993
|
project: "Project",
|
|
10977
10994
|
model: "Model",
|
|
@@ -10979,9 +10996,32 @@ var DEFAULT_USAGE_SOURCE_LABELS = {
|
|
|
10979
10996
|
tokens: "Tokens",
|
|
10980
10997
|
requests: "Requests"
|
|
10981
10998
|
};
|
|
10999
|
+
var DEFAULT_USAGE_BREAKDOWN_SOURCE_LABELS = {
|
|
11000
|
+
...DEFAULT_USAGE_SOURCE_LABELS,
|
|
11001
|
+
source: "AI usage breakdown",
|
|
11002
|
+
description: "AI usage of your projects this period, in total or by user, workspace, model or feature: \xA3 (ex VAT), tokens and requests.",
|
|
11003
|
+
breakdown: "Breakdown",
|
|
11004
|
+
by: { total: "Total", user: "User", workspace: "Workspace", model: "Model", feature: "Feature" }
|
|
11005
|
+
};
|
|
10982
11006
|
var monthsBackOf = (params) => String(params.period ?? "0") === "1" ? 1 : 0;
|
|
10983
|
-
|
|
10984
|
-
|
|
11007
|
+
var projectOf = (params) => typeof params.project === "string" && params.project ? params.project : void 0;
|
|
11008
|
+
var BREAKDOWNS = ["total", "user", "workspace", "model", "feature"];
|
|
11009
|
+
var breakdownOf = (params) => BREAKDOWNS.find((b) => b === params.by) ?? "user";
|
|
11010
|
+
var ownedBy = (projects, me) => (projects ?? []).filter((p) => !!me && p.created_by === me);
|
|
11011
|
+
function periodDays(start) {
|
|
11012
|
+
const end = /* @__PURE__ */ new Date(`${start}T00:00:00Z`);
|
|
11013
|
+
end.setUTCMonth(end.getUTCMonth() + 1);
|
|
11014
|
+
end.setUTCDate(end.getUTCDate() - 1);
|
|
11015
|
+
const days = [];
|
|
11016
|
+
for (const d = /* @__PURE__ */ new Date(`${start}T00:00:00Z`); d <= end; d.setUTCDate(d.getUTCDate() + 1)) {
|
|
11017
|
+
days.push(d.toISOString().slice(0, 10));
|
|
11018
|
+
}
|
|
11019
|
+
return days;
|
|
11020
|
+
}
|
|
11021
|
+
var featureLabel = (key) => key.replace(/[_-]+/g, " ").replace(/^\w/, (c) => c.toUpperCase());
|
|
11022
|
+
var modelLabelOf = (group) => MODEL_GROUP_LABELS[group] ?? group;
|
|
11023
|
+
function usageRows(usage, project, modelLabel = modelLabelOf) {
|
|
11024
|
+
const rows = (usage.daily ?? []).flatMap(
|
|
10985
11025
|
(day2) => Object.entries(day2.model_groups ?? {}).map(([group, mg]) => ({
|
|
10986
11026
|
day: day2.date,
|
|
10987
11027
|
project,
|
|
@@ -10991,6 +11031,127 @@ function usageRows(usage, project, modelLabel = (g) => MODEL_GROUP_LABELS[g] ??
|
|
|
10991
11031
|
requests: (mg.successful_requests ?? 0) + (mg.failed_requests ?? 0)
|
|
10992
11032
|
}))
|
|
10993
11033
|
);
|
|
11034
|
+
const model = rows[0]?.model;
|
|
11035
|
+
if (!usage.period_start || model === void 0) return rows;
|
|
11036
|
+
const used = new Set(rows.map((r) => r.day));
|
|
11037
|
+
const gaps = periodDays(usage.period_start).filter((day2) => !used.has(day2)).map((day2) => ({ day: day2, project, model, spend: 0, tokens: 0, requests: 0 }));
|
|
11038
|
+
return [...rows, ...gaps];
|
|
11039
|
+
}
|
|
11040
|
+
function usageNamesOf(workspaces) {
|
|
11041
|
+
const names = {};
|
|
11042
|
+
for (const ws of workspaces) {
|
|
11043
|
+
names[ws.external_id] = ws.name;
|
|
11044
|
+
for (const wu of ws.users ?? []) {
|
|
11045
|
+
const user = wu.user;
|
|
11046
|
+
if (user?.external_id && !names[user.external_id]) {
|
|
11047
|
+
names[user.external_id] = getUserDisplayName(user);
|
|
11048
|
+
}
|
|
11049
|
+
}
|
|
11050
|
+
}
|
|
11051
|
+
return names;
|
|
11052
|
+
}
|
|
11053
|
+
function usageBreakdownRows(usage, project, by, names = {}, totalLabel = "Total") {
|
|
11054
|
+
if (by === "total") {
|
|
11055
|
+
return [
|
|
11056
|
+
{
|
|
11057
|
+
project,
|
|
11058
|
+
name: totalLabel,
|
|
11059
|
+
spend: usage.total_spend ?? 0,
|
|
11060
|
+
tokens: usage.total_tokens ?? 0,
|
|
11061
|
+
requests: usage.total_requests ?? 0
|
|
11062
|
+
}
|
|
11063
|
+
];
|
|
11064
|
+
}
|
|
11065
|
+
if (by === "model") {
|
|
11066
|
+
return Object.entries(usage.model_groups ?? {}).map(([group, mg]) => ({
|
|
11067
|
+
project,
|
|
11068
|
+
name: names[group] ?? modelLabelOf(group),
|
|
11069
|
+
spend: mg.spend ?? 0,
|
|
11070
|
+
tokens: mg.total_tokens ?? 0,
|
|
11071
|
+
requests: (mg.successful_requests ?? 0) + (mg.failed_requests ?? 0)
|
|
11072
|
+
}));
|
|
11073
|
+
}
|
|
11074
|
+
const totals = by === "workspace" ? usage.by_workspace : by === "feature" ? usage.by_feature : usage.by_user;
|
|
11075
|
+
return Object.entries(totals ?? {}).map(([key, t]) => ({
|
|
11076
|
+
project,
|
|
11077
|
+
name: by === "feature" ? featureLabel(key) : names[key] ?? key,
|
|
11078
|
+
spend: t.spend ?? 0,
|
|
11079
|
+
tokens: t.total_tokens ?? 0,
|
|
11080
|
+
requests: t.requests ?? 0
|
|
11081
|
+
}));
|
|
11082
|
+
}
|
|
11083
|
+
function useUsageResponses(params, enabled) {
|
|
11084
|
+
const arbi = useArbi();
|
|
11085
|
+
const monthsBack = monthsBackOf(params);
|
|
11086
|
+
const only = projectOf(params);
|
|
11087
|
+
const projects = useProjects({ enabled });
|
|
11088
|
+
const user = useCurrentUser({ enabled: enabled && arbi.isLoggedIn && !only });
|
|
11089
|
+
const me = user.data?.external_id;
|
|
11090
|
+
const list = useMemo(() => {
|
|
11091
|
+
const all = projects.data ?? [];
|
|
11092
|
+
if (only) return [all.find((p) => p.external_id === only) ?? { external_id: only, name: only }];
|
|
11093
|
+
return ownedBy(all, me);
|
|
11094
|
+
}, [projects.data, me, only]);
|
|
11095
|
+
const results = useQueries({
|
|
11096
|
+
queries: list.map((p) => ({
|
|
11097
|
+
queryKey: arbiQueryKeys.projectUsage(p.external_id, monthsBack),
|
|
11098
|
+
queryFn: () => arbi.projects.usage(p.external_id, monthsBack),
|
|
11099
|
+
enabled: enabled && arbi.isLoggedIn,
|
|
11100
|
+
retry: false
|
|
11101
|
+
}))
|
|
11102
|
+
});
|
|
11103
|
+
const signature = results.map((r) => `${r.status}:${r.dataUpdatedAt}`).join("|");
|
|
11104
|
+
const usages = useMemo(() => {
|
|
11105
|
+
if (results.some((r) => r.isLoading)) return void 0;
|
|
11106
|
+
if (!only && (!projects.data || !me)) return void 0;
|
|
11107
|
+
return results.map((r, i) => ({
|
|
11108
|
+
project: list[i],
|
|
11109
|
+
usage: r.data
|
|
11110
|
+
}));
|
|
11111
|
+
}, [projects.data, me, only, signature]);
|
|
11112
|
+
const loading = results.some((r) => r.isLoading);
|
|
11113
|
+
return only ? (
|
|
11114
|
+
// One project: its usage is the point, so its error shows (the project's name can wait).
|
|
11115
|
+
{ usages, isLoading: loading, error: results[0]?.error ?? null }
|
|
11116
|
+
) : {
|
|
11117
|
+
usages,
|
|
11118
|
+
isLoading: projects.isLoading || user.isLoading || loading,
|
|
11119
|
+
// One project's usage failing (not its owner after all, a hiccup) leaves it out.
|
|
11120
|
+
error: projects.error ?? user.error ?? null
|
|
11121
|
+
};
|
|
11122
|
+
}
|
|
11123
|
+
function usageParams(l) {
|
|
11124
|
+
const periodOptions = {
|
|
11125
|
+
options: [
|
|
11126
|
+
{ value: "0", label: l.periods.current },
|
|
11127
|
+
{ value: "1", label: l.periods.previous }
|
|
11128
|
+
],
|
|
11129
|
+
isLoading: false
|
|
11130
|
+
};
|
|
11131
|
+
return [
|
|
11132
|
+
{
|
|
11133
|
+
id: "period",
|
|
11134
|
+
label: l.period,
|
|
11135
|
+
placeholder: l.periods.current,
|
|
11136
|
+
useOptions: () => periodOptions
|
|
11137
|
+
},
|
|
11138
|
+
{
|
|
11139
|
+
id: "project",
|
|
11140
|
+
label: l.projectParam,
|
|
11141
|
+
placeholder: l.allProjects,
|
|
11142
|
+
useOptions() {
|
|
11143
|
+
const arbi = useArbi();
|
|
11144
|
+
const projects = useProjects();
|
|
11145
|
+
const user = useCurrentUser({ enabled: arbi.isLoggedIn });
|
|
11146
|
+
const me = user.data?.external_id;
|
|
11147
|
+
const options = useMemo(
|
|
11148
|
+
() => ownedBy(projects.data, me).map((p) => ({ value: p.external_id, label: p.name })),
|
|
11149
|
+
[projects.data, me]
|
|
11150
|
+
);
|
|
11151
|
+
return { options, isLoading: projects.isLoading || user.isLoading };
|
|
11152
|
+
}
|
|
11153
|
+
}
|
|
11154
|
+
];
|
|
10994
11155
|
}
|
|
10995
11156
|
function createUsageSource(labels) {
|
|
10996
11157
|
const l = { ...DEFAULT_USAGE_SOURCE_LABELS, ...labels };
|
|
@@ -11002,59 +11163,70 @@ function createUsageSource(labels) {
|
|
|
11002
11163
|
{ id: "tokens", label: l.tokens, type: "number", unit: "tokens" },
|
|
11003
11164
|
{ id: "requests", label: l.requests, type: "number" }
|
|
11004
11165
|
];
|
|
11005
|
-
const periodOptions = {
|
|
11006
|
-
options: [
|
|
11007
|
-
{ value: "0", label: l.periods.current },
|
|
11008
|
-
{ value: "1", label: l.periods.previous }
|
|
11009
|
-
],
|
|
11010
|
-
isLoading: false
|
|
11011
|
-
};
|
|
11012
11166
|
return defineRowsSource({
|
|
11013
11167
|
id: "usage",
|
|
11014
11168
|
label: l.source,
|
|
11015
11169
|
description: l.description,
|
|
11016
|
-
params:
|
|
11170
|
+
params: usageParams(l),
|
|
11171
|
+
useFields: staticFields(fields),
|
|
11172
|
+
useRows(params, enabled) {
|
|
11173
|
+
const { usages, isLoading, error } = useUsageResponses(params, enabled);
|
|
11174
|
+
const rows = useMemo(
|
|
11175
|
+
() => usages?.flatMap((u) => u.usage ? usageRows(u.usage, u.project.name) : []),
|
|
11176
|
+
[usages]
|
|
11177
|
+
);
|
|
11178
|
+
return { rows, isLoading, error };
|
|
11179
|
+
}
|
|
11180
|
+
});
|
|
11181
|
+
}
|
|
11182
|
+
function createUsageBreakdownSource(labels) {
|
|
11183
|
+
const l = { ...DEFAULT_USAGE_BREAKDOWN_SOURCE_LABELS, ...labels };
|
|
11184
|
+
const fieldsBy = Object.fromEntries(
|
|
11185
|
+
BREAKDOWNS.map((by) => [
|
|
11186
|
+
by,
|
|
11017
11187
|
{
|
|
11018
|
-
|
|
11019
|
-
|
|
11020
|
-
|
|
11021
|
-
|
|
11188
|
+
fields: [
|
|
11189
|
+
{ id: "project", label: l.project, type: "string" },
|
|
11190
|
+
{ id: "name", label: l.by[by], type: "string" },
|
|
11191
|
+
{ id: "spend", label: l.spend, type: "number", unit: "gbp" },
|
|
11192
|
+
{ id: "tokens", label: l.tokens, type: "number", unit: "tokens" },
|
|
11193
|
+
{ id: "requests", label: l.requests, type: "number" }
|
|
11194
|
+
],
|
|
11195
|
+
isLoading: false,
|
|
11196
|
+
error: null
|
|
11022
11197
|
}
|
|
11198
|
+
])
|
|
11199
|
+
);
|
|
11200
|
+
const byOptions = {
|
|
11201
|
+
options: BREAKDOWNS.map((by) => ({ value: by, label: l.by[by] })),
|
|
11202
|
+
isLoading: false
|
|
11203
|
+
};
|
|
11204
|
+
return defineRowsSource({
|
|
11205
|
+
id: "usage-breakdown",
|
|
11206
|
+
label: l.source,
|
|
11207
|
+
description: l.description,
|
|
11208
|
+
params: [
|
|
11209
|
+
...usageParams(l),
|
|
11210
|
+
{ id: "by", label: l.breakdown, placeholder: l.by.user, useOptions: () => byOptions }
|
|
11023
11211
|
],
|
|
11024
|
-
useFields:
|
|
11212
|
+
useFields: (params) => fieldsBy[breakdownOf(params)],
|
|
11025
11213
|
useRows(params, enabled) {
|
|
11026
|
-
const
|
|
11027
|
-
const
|
|
11028
|
-
const
|
|
11029
|
-
|
|
11030
|
-
|
|
11031
|
-
const
|
|
11032
|
-
() => (
|
|
11033
|
-
|
|
11214
|
+
const by = breakdownOf(params);
|
|
11215
|
+
const { usages, isLoading, error } = useUsageResponses(params, enabled);
|
|
11216
|
+
const workspaces = useWorkspaces({
|
|
11217
|
+
enabled: enabled && (by === "user" || by === "workspace")
|
|
11218
|
+
});
|
|
11219
|
+
const names = useMemo(
|
|
11220
|
+
() => usageNamesOf(workspaces.data ?? []),
|
|
11221
|
+
[workspaces.data]
|
|
11222
|
+
);
|
|
11223
|
+
const rows = useMemo(
|
|
11224
|
+
() => usages?.flatMap(
|
|
11225
|
+
(u) => u.usage ? usageBreakdownRows(u.usage, u.project.name, by, names, l.by.total) : []
|
|
11034
11226
|
),
|
|
11035
|
-
[
|
|
11227
|
+
[usages, by, names, l.by.total]
|
|
11036
11228
|
);
|
|
11037
|
-
|
|
11038
|
-
queries: list.map((p) => ({
|
|
11039
|
-
queryKey: arbiQueryKeys.projectUsage(p.external_id, monthsBack),
|
|
11040
|
-
queryFn: () => arbi.projects.usage(p.external_id, monthsBack),
|
|
11041
|
-
enabled: enabled && arbi.isLoggedIn,
|
|
11042
|
-
retry: false
|
|
11043
|
-
}))
|
|
11044
|
-
});
|
|
11045
|
-
const signature = results.map((r) => `${r.status}:${r.dataUpdatedAt}`).join("|");
|
|
11046
|
-
const rows = useMemo(() => {
|
|
11047
|
-
if (!projects.data || !me || results.some((r) => r.isLoading)) return void 0;
|
|
11048
|
-
return results.flatMap(
|
|
11049
|
-
(r, i) => r.data ? usageRows(r.data, list[i].name) : []
|
|
11050
|
-
);
|
|
11051
|
-
}, [projects.data, me, signature]);
|
|
11052
|
-
return {
|
|
11053
|
-
rows,
|
|
11054
|
-
isLoading: projects.isLoading || user.isLoading || results.some((r) => r.isLoading),
|
|
11055
|
-
// One project's usage failing (not its owner after all, a hiccup) leaves it out.
|
|
11056
|
-
error: projects.error ?? user.error ?? null
|
|
11057
|
-
};
|
|
11229
|
+
return { rows, isLoading, error };
|
|
11058
11230
|
}
|
|
11059
11231
|
});
|
|
11060
11232
|
}
|
|
@@ -11121,6 +11293,7 @@ function createWorkspacesSource(labels) {
|
|
|
11121
11293
|
// src/datasets/registry.ts
|
|
11122
11294
|
var BUILTIN_DATA_SOURCES = [
|
|
11123
11295
|
createUsageSource(),
|
|
11296
|
+
createUsageBreakdownSource(),
|
|
11124
11297
|
createDocumentsSource(),
|
|
11125
11298
|
createConversationsSource(),
|
|
11126
11299
|
createProjectsSource(),
|
|
@@ -16885,6 +17058,6 @@ function useRateSupportTicket() {
|
|
|
16885
17058
|
});
|
|
16886
17059
|
}
|
|
16887
17060
|
|
|
16888
|
-
export { AGENT_CONTROL_COMMANDS, AGGREGATE_FIELDS, ALLOWED_PORTAL_ORIGINS, ARCHIVE_POLL_MS, ASSISTANT_MENTION_LABEL, AUTO_CHAT_MODEL, ActivityFeed, AiAnswer, AppleIcon, ArbiHost2 as ArbiHost, ArbiWebSocketProvider, ArtifactCanvas, BOOT_GATE_TIMEOUT_MS, BOX_SEAT_REFUSED, BOX_SEAT_REFUSED_ACTION, BOX_SEAT_REFUSED_TITLE, BUILTIN_DATA_SOURCES, CONVERSATION_SWITCH_MEASURE, ChatBubble, CitationRenderer, ConversationList, ConversationScope, DATABASE_RELATION_PICK_LIMIT, DATABASE_ROWS_PAGE, DEFAULT_ACTIVITY_SOURCE_LABELS, DEFAULT_ASPECT_OPTIONS, DEFAULT_CONVERSATIONS_SOURCE_LABELS, DEFAULT_DATABASE_SOURCE_LABELS, DEFAULT_DOCUMENTS_SOURCE_LABELS, DEFAULT_FACTS_SOURCE_LABELS, DEFAULT_PASSWORD_CHANGE_FORM_MESSAGES, DEFAULT_PROJECTS_SOURCE_LABELS, DEFAULT_TAGS_SOURCE_LABELS, DEFAULT_USAGE_SOURCE_LABELS, DEFAULT_WORKFLOWS_SOURCE_LABELS, DEFAULT_WORKSPACES_SOURCE_LABELS, DateSeparator, DmAvatar, DmComposer, DocumentReview, DraftTitleControls, EMPTY_GROUP_LABEL, FACTS_SEARCH_VIEW, FIRST_TOKEN_MEASURE, GitHubIcon, ImageCropModal, ImageCropper, LIVE_UPDATE_TYPES, LinkedInIcon, MAIL_DRAFT_REPLACED_EVENT, MAX_DASHBOARD_SPEC_CHARS, MAX_SERIES, MIN_NARRATION_DWELL_MS, MODEL_GROUP_LABELS, MailOfflineUnavailableError, MessageArtifactCard, OUTBOX_FOLDER, PENDING_SYNC_PREDICATE, POLL_EVERY_MS, PhotoCapture, REMOTE_CONTROL_VIEW, RUN_WINDOW_MS, SIGNATURE_NOTIFICATION_TYPES, SLOW_AFTER_MS, STILL_WORKING, StorageActionError, TRANSFER_POLL_MS, TaskThreadPendingError, TypingIndicator, UPLOAD_ACCEPT, UPLOAD_MAX_FILE_SIZE, VideoCapture, VoiceNoteRecorder, WORK_NOTIFICATION_LABELS, WORK_OFFLINE_VIEW, __resetPendingFinalCommitsForTests, __resetStreamingTokenBufferForTests, accountPath, addAssistantMessageToCache, addUserMessageToCache, adoptNewChatDocument, aggregateDataset, aliasTakenMessage, allConversationThreads, annotateThread, announceMailDraftReplaced, appendTokenToMessage, applyConversationEvent, applyFinalContextToMessage, applyLiveUpdate, applyNotificationRow, applyOptimisticDocumentEdit, applyOutputItemToMessage, applyTaskEvent, arbiMailClient, archiveName, archivedWorkspaceMessage, assistantLabels, bindThreadDocument, boundDocumentOf, bucketOf2 as bucketOf, bucketRange, buildDocumentMetadataRows, buildMentionCandidates, buildPendingFirstTurn, buildPendingSyncItem, buildWorkspaceArchive, cacheThreadBinding, cachedAssistantMode, cachedMentionCandidates, cachedQuotaUsedUp, calendarNotificationMeta, calendarOfflineSupport, callNotificationMeta, captureFrameAsBlob, claimOfflineQueue, clearLoadingState, clearUserInputRequest, commitFinalMessage, completeQueuedUserMessageByContent, computeOnline, confirmLosingOfflineMail, connectOAuthCalendarAccount, connectorErrorStatus, connectorReturnTo, conversationsPath, createActivitySource, createArbiQueryClient, createConversationsSource, createDataSourceRegistry, createDatabaseSource, createDocumentsSource, createFactsSource, createMailClient, createMemoryDashboardStore, createProjectsSource, createSkillPack, createStreamHandlers, createTagsSource, createUsageSource, createWorkflowsSource, createWorkspaceSwitch, createWorkspacesSource, cropImage, dayKey, defaultMailAlias, defineRowsSource, defineSkillPack, deleteLocalDraft, deleteOutboxItem, deploymentUserMeta, describeActivity, describeCalendarNotification, describeServerNotification, discardStreamingTokensForMessage, disconnectAttachedRun, documentActivityMeta, documentActivityPhrase, documentDisplayName, documentMailAttachment, docxMentionMeta, downloadRecoveryFile, enqueueOutbox, ensureAssistantMessageLoading, extractZipFile, fallbackFileName, fileAttachment, filesFromDrop, fillTimeGaps, filterRows, flushStreamingTokens, forgetUploadedDocumentFolder, formatConfigValidationError, formatIdentityPrice, getInterjectionText, getNotificationTypeMeta, getOfflineDocument, getOrphanedLastMessage, getRelatedLabels, getRelatedTotal, getRunStartedAt, getThreadsQueryKey, getWorkspaceActionText, getWorkspaceKind, getWorkspaceSentPhrase, groupMailConversations, hasPendingFinalCommit, hasPendingMailChange, hasVideoTrack, identityStepFor, inputRequestTitle, invalidateCalendarEvents, invalidateCalendars, invalidateConversationActivity, isActivityKey, isAliasTakenError, isArchiveMoving, isCommentToPeople, isDeploymentAdmin, isDeploymentUserNotification, isFullConfig, isMessageRunning, isNetworkFailure, isNotificationRow, isOrphanedUserMessage, isQueuedCalendarWrite, isReplayableArbiMutation, isSignatureNotificationType, isTableViewOf, isTransferFinished, isTransferResumable, isWorkingOffline, isWorkspaceArchivedError, isWorkspaceNotificationType, isZipFile, loadOfflineDocument, loadAttachment as loadOfflineMailAttachment, mailConversationKey, mailDraftIdFromContent, mailJson, mailThreadRoot, markMessageAsFailed, markNarrationSettled, migrateLegacyThreadDocuments, mountDiditVerification, nativeThreadKeys, nextAliasSuggestion, notificationUserName, offlineMailReads, openAccessRequest, parseActivityContent, parseDashboardSpec, parseDeleteAccountBlockers, pendingChatModelSave, peopleDirectory, personOfUser, pickRecentWorkspaces, prepareUploadFiles, queryOfChart, queueMailChange, recordsOf, redlineStats, refuseChatWhenOffline, registerArbiMutationDefaults, registerAttachedRun, remoteControlActions, remoteControlStateOf, removeSettledNarration, requestPersistentStorage, resetCalendarAccountSyncState, resetMessageContent, resolveActiveWorkspace, resolveConfigModel, resolveReplyTarget, retryOutboxItem, rollbackOptimisticDocumentEdit, safePortalUrl, saveLocalDraft, sendMailFile, serializeDashboardSpec, serverNotificationBellEntry, setMessageContent, setUserInputRequest, setWorkOfflineIn, signatureNotificationPhrase, signatureRequestMeta, skillPackPrompt, subscribeDocumentReads, supportsHouseTemplates, textToArtifact, threadBinding, threadEndingAtContains, threadPath, titleFromQuestion, toChatCitations, toMailConversation, toNotificationPreferences, toRedlineMarkdown, toRemoteControlRequest, toShellWorkspace, updateMessageWithMetadata, updateUserMessageInCache, updateUserMessageStateInCache, uploadFolderOf, uploadedDocumentFolder, useActOnStep, useActiveConfigId, useAddChatMembers, useAddDatabaseRows, useAddHolidayCalendar, useAddProjectAddonBlock, useAddWorkspaceMembers, useAddonQuote, useAgentChats, useAgentConfig, useAgentDmStatus, useAgentModels, useAgentRunControl, useAgentSession, useAgentWorkspaces, useAiTask, useAnswerAgentQuestion, useApplyChatModel, useArbiWebSocket, useArbiWsContext, useArbiWsMessage, useArbiWsStatus, useArchiveProgressPolling, useArchiveWorkspace, useAskAgain, useAssignDocTags, useAuthorizeLimits, useAutoSendDraft, useBookingPages, useBootTimeout, useBranchNavigation, useCalDavProfiles, useCalendarAccounts, useCalendarEvent, useCalendarEventByUid, useCalendarEvents, useCalendarInvitations, useCalendarOfflineRuntime, useCalendarOutbox, useCalendarOverlays, useCalendarSettings, useCalendarShares, useCalendarSupport, useCalendars, useCameraStream, useCanEditShared, useCancelDriveSync, useCancelMailboxSync, useCancelManyPendingSync, useCancelProjectSubscription, useCancelWorkspaceTransfer, useChangeProjectPlan, useChargeWatch, useChatArrivals, useChatPost, useChatSummaries, useChatThread, useChatUnreadTotal, useChats, useClaimNativeAlias, useClaimSecureMail, useCloseAgentSession, useConfigSchema, useConfirmEmailChange, useConnectCalDavAccount, useConnectMailAccount, useConnectOAuthAccount, useConnectRunStream, useConnectedMailFiling, useConnectorAutoSync, useConnectorCatalog, useConnectorVendorVisibility, useContacts, useConversation, useConversationActions, useConversationActivity, useConversationData, useConversationDocuments, useConversationIsShared, useConversationItems, useConversationPendingAuth, useConversationSearch, useConversationSettings, useConversationTurn, useConversationWorkspace, useCreateAgent, useCreateCalendar, useCreateContact, useCreateDatabase, useCreateEvent, useCreateFact, useCreateFacts, useCreateGroupChat, useCreateProject, useCreateProjectCheckout, useCreateRoom, useCreateWork, useCreateWorkflow, useCreateWorkspace, useCurrentSessionId, useCurrentWorkspace, useDashboardStore, useDataSources, useDatabase, useDatabaseAggregate, useDatabaseDashboardStore, useDatabaseRows, useDatabases, useDecideCounter, useDeleteAccount, useDeleteAccountFlow, useDeleteBookingPage, useDeleteCalendar, useDeleteChatMessage, useDeleteConfig, useDeleteContact, useDeleteConversation, useDeleteDashboard, useDeleteDatabase, useDeleteDatabaseRows, useDeleteDocuments, useDeleteEvent, useDeleteFact, useDeleteMessage, useDeleteNotifications, useDeleteProject, useDeleteSkill, useDeleteWorkflow, useDeleteWorkspaces, useDirectModelUsage, useDisconnectCalendarAccount, useDisconnectConnector, useDisconnectMailAccount, useDisconnectSlack, useDismissedTips, useDocumentAutoAdd, useDocumentHostActions, useDocumentPendingSync, useDocumentThumbnails, useDocumentsSupport, useDownloadDocuments, useDriveFolderChildren, useDriveFolderDocCount, useDriveFolders, useDriveSyncEstimate, useDriveSyncProgress, useEmailChange, useEnableDriveSync, useEnableMailboxSync, useExportDatabase, useFacts, useFactsSearch, useFetchCalendarEvent, useFileWaitingNativeMail, useFinaliseTranslation, useFindTime, useFlushOutbox, useFollowThread, useFreeBusy, useGenerateAgentAvatar, useGenerateDocTags, useGrantAgentAccess, useHolidayCountries, useHouseTemplateCandidates, useIdentityVerification, useIdentityVerificationFlow, useImportCalendar, useImportContacts, useImportDatabase, useImportDatabaseRows, useInstallSkillPack, useInvalidateAfterTransfer, useInvalidateProjects, useInvalidateStorage, useInviteContacts, useIsSlow, useIsWorkspaceOwner, useKeepDocumentsOffline, useLinkContact, useLinkMentions, useLocalDrafts, useMailAccounts, useMailAttachmentText, useMailCache, useMailClient, useMailConversations, useMailDraftCompose, useMailDraftEditor, useMailDraftReplaced, useMailFiling, useMailFolders, useMailMessage, useMailMessages, useMailOnline, useMailPolicy, useMailProjects, useMailThread, useMailUnlock, useMailWorkspacePrimer, useMailboxFolders, useMailboxSyncProgress, useMarkChatRead, useMarkDocumentShared, useMarkNotificationsRead, useMcpTools, useMessageTimer, useModelConnections, useMoveEvent, useMoveWorkspaceToProject, useMyConnectors, useNativeMailFiling, useNativeThreadKeys, useNotificationPreferences, useNotifications, useOfflineDocumentIds, useOfflineMailActive, useOfflineMailRuntime, useOfflineMailSettings, useOfflineMailStatus, useOpenSelectedWorkspace, useOpenViewerDocumentId, useOutbox, usePanelDataset, usePassageQuotes, usePasswordChange, usePasswordChangeForm, usePendingMailChanges, usePendingSyncCounts, usePendingSyncItems, usePeople, usePeopleSearch, usePlanQuote, usePlanWork, usePlanWorkspaceTransfer, usePreviewProjectPlanChange, useProcessingTask, useProcessingTasks, useProducts, useProjectBillingPortal, useProjectConversationUsage, usePublishCalendar, useRateSupportTicket, useReadMailMessage, useReconnect, useRefreshCalendar, useRefreshConnectorsOnRunEnd, useRefreshProject, useRelatedDocuments, useRemoteControl, useRemoveChatMember, useRemoveDocTags, useRemoveDocumentsOffline, useRemoveModelConnection, useRemoveWorkspaceMembers, useRenameChat, useRenameFolder, useRequestEmailChange, useRequestWorkspaceAccess, useRespondToEvent, useResumeCalendarAccountConnect, useResumeWorkspaceTransfer, useRevokeAgentAccess, useRooms, useRunConversation, useRunWorkflow, useSaveAgentConfig, useSaveBookingPage, useSaveCalendarSettings, useSaveConfig, useSaveConfigField, useSaveDashboard, useSaveMailDraft, useSaveModelConnection, useSaveSkill, useSavedDashboards, useSearchContacts, useSearchDatabaseRows, useSearchFacts, useSemanticSearch, useSendMail, useSessions, useSetDeploymentHouseTemplate, useSetNativeMailFiling, useSetSkillVisibility, useSetWorkspaceHouseTemplate, useSetWorkspaceMemberRoles, useShareCalendar, useShellWorkspaces, useSignOut, useSkillSource, useSkills, useSlackConnection, useStartAgentSession, useStartCalendarAccountOAuth, useStartTaskQuery, useStartWorkspaceTransfer, useStopMailFilingRule, useStorageActions, useStorageItemNames, useStorageItems, useStorageProjects, useStorageSnapshots, useStreamHandlers, useSubscribeCalendar, useSupportTicket, useSupportTickets, useSwitchWorkspace, useSyncAccountsOnOpen, useSyncCalendarAccount, useSyncOfflineMailbox, useTerminateSession, useThinkingContent, useThreadDocument, useTriggerDriveSync, useTriggerMailboxSync, useUnarchiveWorkspace, useUnlockModelConnections, useUnreadByPeer, useUnshareCalendar, useUpdateCalendar, useUpdateCalendarAccount, useUpdateContact, useUpdateConversation, useUpdateDatabase, useUpdateDatabaseRow, useUpdateDocTag, useUpdateDocuments, useUpdateEvent, useUpdateFact, useUpdateProjectAddonSettings, useUpdateProjectFields, useUpdateProjectNextPeriodAddons, useUpdateWorkflow, useUpdateWorkspace, useUploadDocuments, useUploadFiles, useUploadFromUrls, useUploadSkillFiles, useUploadUrls, useVideoRecorder, useWorkItems, useWorkOffline, useWorkflowRuns, useWorkflows, useWorkspaceArchive, useWorkspaceDocs, useWorkspaceExportDownload, useWorkspaceNotificationLevel, useWorkspaceProcessing, useWorkspaceRole, useWorkspaceTransfer, useWorkspaceTransfers, useWorkspaceTrash, useWorkspaceUsers, userDisplayName, userInitials, viewsOfTable, waitForResponseId, wipeCalendarOffline, wipeOfflineDocuments, withRelativePath, workflowRunTitle, workflowStepOf, workspaceHouseTemplateId };
|
|
17061
|
+
export { AGENT_CONTROL_COMMANDS, AGGREGATE_FIELDS, ALLOWED_PORTAL_ORIGINS, ARCHIVE_POLL_MS, ASSISTANT_MENTION_LABEL, AUTO_CHAT_MODEL, ActivityFeed, AiAnswer, AppleIcon, ArbiHost2 as ArbiHost, ArbiWebSocketProvider, ArtifactCanvas, BOOT_GATE_TIMEOUT_MS, BOX_SEAT_REFUSED, BOX_SEAT_REFUSED_ACTION, BOX_SEAT_REFUSED_TITLE, BUILTIN_DATA_SOURCES, CONVERSATION_SWITCH_MEASURE, ChatBubble, CitationRenderer, ConversationList, ConversationScope, DATABASE_RELATION_PICK_LIMIT, DATABASE_ROWS_PAGE, DEFAULT_ACTIVITY_SOURCE_LABELS, DEFAULT_ASPECT_OPTIONS, DEFAULT_CONVERSATIONS_SOURCE_LABELS, DEFAULT_DATABASE_SOURCE_LABELS, DEFAULT_DOCUMENTS_SOURCE_LABELS, DEFAULT_FACTS_SOURCE_LABELS, DEFAULT_PASSWORD_CHANGE_FORM_MESSAGES, DEFAULT_PROJECTS_SOURCE_LABELS, DEFAULT_TAGS_SOURCE_LABELS, DEFAULT_USAGE_BREAKDOWN_SOURCE_LABELS, DEFAULT_USAGE_SOURCE_LABELS, DEFAULT_WORKFLOWS_SOURCE_LABELS, DEFAULT_WORKSPACES_SOURCE_LABELS, DateSeparator, DmAvatar, DmComposer, DocumentReview, DraftTitleControls, EMPTY_GROUP_LABEL, FACTS_SEARCH_VIEW, FIRST_TOKEN_MEASURE, GitHubIcon, ImageCropModal, ImageCropper, LIVE_UPDATE_TYPES, LinkedInIcon, MAIL_DRAFT_REPLACED_EVENT, MAX_DASHBOARD_SPEC_CHARS, MAX_SERIES, MIN_NARRATION_DWELL_MS, MODEL_GROUP_LABELS, MailOfflineUnavailableError, MessageArtifactCard, OUTBOX_FOLDER, PENDING_SYNC_PREDICATE, POLL_EVERY_MS, PhotoCapture, REMOTE_CONTROL_VIEW, RUN_WINDOW_MS, SIGNATURE_NOTIFICATION_TYPES, SLOW_AFTER_MS, STILL_WORKING, StorageActionError, TRANSFER_POLL_MS, TaskThreadPendingError, TypingIndicator, UPLOAD_ACCEPT, UPLOAD_MAX_FILE_SIZE, VideoCapture, VoiceNoteRecorder, WORK_NOTIFICATION_LABELS, WORK_OFFLINE_VIEW, __resetPendingFinalCommitsForTests, __resetStreamingTokenBufferForTests, accountPath, addAssistantMessageToCache, addUserMessageToCache, adoptNewChatDocument, aggregateDataset, aliasTakenMessage, allConversationThreads, annotateThread, announceMailDraftReplaced, appendTokenToMessage, applyConversationEvent, applyFinalContextToMessage, applyLiveUpdate, applyNotificationRow, applyOptimisticDocumentEdit, applyOutputItemToMessage, applyTaskEvent, arbiMailClient, archiveName, archivedWorkspaceMessage, assistantLabels, bindThreadDocument, boundDocumentOf, bucketOf2 as bucketOf, bucketRange, buildDocumentMetadataRows, buildMentionCandidates, buildPendingFirstTurn, buildPendingSyncItem, buildWorkspaceArchive, cacheThreadBinding, cachedAssistantMode, cachedMentionCandidates, cachedQuotaUsedUp, calendarNotificationMeta, calendarOfflineSupport, callNotificationMeta, captureFrameAsBlob, claimOfflineQueue, clearLoadingState, clearUserInputRequest, commitFinalMessage, completeQueuedUserMessageByContent, computeOnline, confirmLosingOfflineMail, connectOAuthCalendarAccount, connectorErrorStatus, connectorReturnTo, conversationsPath, createActivitySource, createArbiQueryClient, createConversationsSource, createDataSourceRegistry, createDatabaseSource, createDocumentsSource, createFactsSource, createMailClient, createMemoryDashboardStore, createProjectsSource, createSkillPack, createStreamHandlers, createTagsSource, createUsageBreakdownSource, createUsageSource, createWorkflowsSource, createWorkspaceSwitch, createWorkspacesSource, cropImage, dayKey, defaultMailAlias, defineRowsSource, defineSkillPack, deleteLocalDraft, deleteOutboxItem, deploymentUserMeta, describeActivity, describeCalendarNotification, describeServerNotification, discardStreamingTokensForMessage, disconnectAttachedRun, documentActivityMeta, documentActivityPhrase, documentDisplayName, documentMailAttachment, docxMentionMeta, downloadRecoveryFile, enqueueOutbox, ensureAssistantMessageLoading, extractZipFile, fallbackFileName, fileAttachment, filesFromDrop, fillTimeGaps, filterRows, flushStreamingTokens, forgetUploadedDocumentFolder, formatConfigValidationError, formatIdentityPrice, getInterjectionText, getNotificationTypeMeta, getOfflineDocument, getOrphanedLastMessage, getRelatedLabels, getRelatedTotal, getRunStartedAt, getThreadsQueryKey, getWorkspaceActionText, getWorkspaceKind, getWorkspaceSentPhrase, groupMailConversations, hasPendingFinalCommit, hasPendingMailChange, hasVideoTrack, identityStepFor, inputRequestTitle, invalidateCalendarEvents, invalidateCalendars, invalidateConversationActivity, isActivityKey, isAliasTakenError, isArchiveMoving, isCommentToPeople, isDeploymentAdmin, isDeploymentUserNotification, isFullConfig, isMessageRunning, isNetworkFailure, isNotificationRow, isOrphanedUserMessage, isQueuedCalendarWrite, isReplayableArbiMutation, isSignatureNotificationType, isTableViewOf, isTransferFinished, isTransferResumable, isWorkingOffline, isWorkspaceArchivedError, isWorkspaceNotificationType, isZipFile, loadOfflineDocument, loadAttachment as loadOfflineMailAttachment, mailConversationKey, mailDraftIdFromContent, mailJson, mailThreadRoot, markMessageAsFailed, markNarrationSettled, migrateLegacyThreadDocuments, mountDiditVerification, nativeThreadKeys, nextAliasSuggestion, notificationUserName, offlineMailReads, openAccessRequest, parseActivityContent, parseDashboardSpec, parseDeleteAccountBlockers, pendingChatModelSave, peopleDirectory, personOfUser, pickRecentWorkspaces, prepareUploadFiles, queryOfChart, queueMailChange, recordsOf, redlineStats, refuseChatWhenOffline, registerArbiMutationDefaults, registerAttachedRun, remoteControlActions, remoteControlStateOf, removeSettledNarration, requestPersistentStorage, resetCalendarAccountSyncState, resetMessageContent, resolveActiveWorkspace, resolveConfigModel, resolveReplyTarget, retryOutboxItem, rollbackOptimisticDocumentEdit, safePortalUrl, saveLocalDraft, sendMailFile, serializeDashboardSpec, serverNotificationBellEntry, setMessageContent, setUserInputRequest, setWorkOfflineIn, signatureNotificationPhrase, signatureRequestMeta, skillPackPrompt, subscribeDocumentReads, supportsHouseTemplates, textToArtifact, threadBinding, threadEndingAtContains, threadPath, titleFromQuestion, toChatCitations, toMailConversation, toNotificationPreferences, toRedlineMarkdown, toRemoteControlRequest, toShellWorkspace, updateMessageWithMetadata, updateUserMessageInCache, updateUserMessageStateInCache, uploadFolderOf, uploadedDocumentFolder, useActOnStep, useActiveConfigId, useAddChatMembers, useAddDatabaseRows, useAddHolidayCalendar, useAddProjectAddonBlock, useAddWorkspaceMembers, useAddonQuote, useAgentChats, useAgentConfig, useAgentDmStatus, useAgentModels, useAgentRunControl, useAgentSession, useAgentWorkspaces, useAiTask, useAnswerAgentQuestion, useApplyChatModel, useArbiWebSocket, useArbiWsContext, useArbiWsMessage, useArbiWsStatus, useArchiveProgressPolling, useArchiveWorkspace, useAskAgain, useAssignDocTags, useAuthorizeLimits, useAutoSendDraft, useBookingPages, useBootTimeout, useBranchNavigation, useCalDavProfiles, useCalendarAccounts, useCalendarEvent, useCalendarEventByUid, useCalendarEvents, useCalendarInvitations, useCalendarOfflineRuntime, useCalendarOutbox, useCalendarOverlays, useCalendarSettings, useCalendarShares, useCalendarSupport, useCalendars, useCameraStream, useCanEditShared, useCancelDriveSync, useCancelMailboxSync, useCancelManyPendingSync, useCancelProjectSubscription, useCancelWorkspaceTransfer, useChangeProjectPlan, useChargeWatch, useChatArrivals, useChatPost, useChatSummaries, useChatThread, useChatUnreadTotal, useChats, useClaimNativeAlias, useClaimSecureMail, useCloseAgentSession, useConfigSchema, useConfirmEmailChange, useConnectCalDavAccount, useConnectMailAccount, useConnectOAuthAccount, useConnectRunStream, useConnectedMailFiling, useConnectorAutoSync, useConnectorCatalog, useConnectorVendorVisibility, useContacts, useConversation, useConversationActions, useConversationActivity, useConversationData, useConversationDocuments, useConversationIsShared, useConversationItems, useConversationPendingAuth, useConversationSearch, useConversationSettings, useConversationTurn, useConversationWorkspace, useCreateAgent, useCreateCalendar, useCreateContact, useCreateDatabase, useCreateEvent, useCreateFact, useCreateFacts, useCreateGroupChat, useCreateProject, useCreateProjectCheckout, useCreateRoom, useCreateWork, useCreateWorkflow, useCreateWorkspace, useCurrentSessionId, useCurrentWorkspace, useDashboardStore, useDataSources, useDatabase, useDatabaseAggregate, useDatabaseDashboardStore, useDatabaseRows, useDatabases, useDecideCounter, useDeleteAccount, useDeleteAccountFlow, useDeleteBookingPage, useDeleteCalendar, useDeleteChatMessage, useDeleteConfig, useDeleteContact, useDeleteConversation, useDeleteDashboard, useDeleteDatabase, useDeleteDatabaseRows, useDeleteDocuments, useDeleteEvent, useDeleteFact, useDeleteMessage, useDeleteNotifications, useDeleteProject, useDeleteSkill, useDeleteWorkflow, useDeleteWorkspaces, useDirectModelUsage, useDisconnectCalendarAccount, useDisconnectConnector, useDisconnectMailAccount, useDisconnectSlack, useDismissedTips, useDocumentAutoAdd, useDocumentHostActions, useDocumentPendingSync, useDocumentThumbnails, useDocumentsSupport, useDownloadDocuments, useDriveFolderChildren, useDriveFolderDocCount, useDriveFolders, useDriveSyncEstimate, useDriveSyncProgress, useEmailChange, useEnableDriveSync, useEnableMailboxSync, useExportDatabase, useFacts, useFactsSearch, useFetchCalendarEvent, useFileWaitingNativeMail, useFinaliseTranslation, useFindTime, useFlushOutbox, useFollowThread, useFreeBusy, useGenerateAgentAvatar, useGenerateDocTags, useGrantAgentAccess, useHolidayCountries, useHouseTemplateCandidates, useIdentityVerification, useIdentityVerificationFlow, useImportCalendar, useImportContacts, useImportDatabase, useImportDatabaseRows, useInstallSkillPack, useInvalidateAfterTransfer, useInvalidateProjects, useInvalidateStorage, useInviteContacts, useIsSlow, useIsWorkspaceOwner, useKeepDocumentsOffline, useLinkContact, useLinkMentions, useLocalDrafts, useMailAccounts, useMailAttachmentText, useMailCache, useMailClient, useMailConversations, useMailDraftCompose, useMailDraftEditor, useMailDraftReplaced, useMailFiling, useMailFolders, useMailMessage, useMailMessages, useMailOnline, useMailPolicy, useMailProjects, useMailThread, useMailUnlock, useMailWorkspacePrimer, useMailboxFolders, useMailboxSyncProgress, useMarkChatRead, useMarkDocumentShared, useMarkNotificationsRead, useMcpTools, useMessageTimer, useModelConnections, useMoveEvent, useMoveWorkspaceToProject, useMyConnectors, useNativeMailFiling, useNativeThreadKeys, useNotificationPreferences, useNotifications, useOfflineDocumentIds, useOfflineMailActive, useOfflineMailRuntime, useOfflineMailSettings, useOfflineMailStatus, useOpenSelectedWorkspace, useOpenViewerDocumentId, useOutbox, usePanelDataset, usePassageQuotes, usePasswordChange, usePasswordChangeForm, usePendingMailChanges, usePendingSyncCounts, usePendingSyncItems, usePeople, usePeopleSearch, usePlanQuote, usePlanWork, usePlanWorkspaceTransfer, usePreviewProjectPlanChange, useProcessingTask, useProcessingTasks, useProducts, useProjectBillingPortal, useProjectConversationUsage, usePublishCalendar, useRateSupportTicket, useReadMailMessage, useReconnect, useRefreshCalendar, useRefreshConnectorsOnRunEnd, useRefreshProject, useRelatedDocuments, useRemoteControl, useRemoveChatMember, useRemoveDocTags, useRemoveDocumentsOffline, useRemoveModelConnection, useRemoveWorkspaceMembers, useRenameChat, useRenameFolder, useRequestEmailChange, useRequestWorkspaceAccess, useRespondToEvent, useResumeCalendarAccountConnect, useResumeWorkspaceTransfer, useRevokeAgentAccess, useRooms, useRunConversation, useRunWorkflow, useSaveAgentConfig, useSaveBookingPage, useSaveCalendarSettings, useSaveConfig, useSaveConfigField, useSaveDashboard, useSaveMailDraft, useSaveModelConnection, useSaveSkill, useSavedDashboards, useSearchContacts, useSearchDatabaseRows, useSearchFacts, useSemanticSearch, useSendMail, useSessions, useSetDeploymentHouseTemplate, useSetNativeMailFiling, useSetSkillVisibility, useSetWorkspaceHouseTemplate, useSetWorkspaceMemberRoles, useShareCalendar, useShellWorkspaces, useSignOut, useSkillSource, useSkills, useSlackConnection, useStartAgentSession, useStartCalendarAccountOAuth, useStartTaskQuery, useStartWorkspaceTransfer, useStopMailFilingRule, useStorageActions, useStorageItemNames, useStorageItems, useStorageProjects, useStorageSnapshots, useStreamHandlers, useSubscribeCalendar, useSupportTicket, useSupportTickets, useSwitchWorkspace, useSyncAccountsOnOpen, useSyncCalendarAccount, useSyncOfflineMailbox, useTerminateSession, useThinkingContent, useThreadDocument, useTriggerDriveSync, useTriggerMailboxSync, useUnarchiveWorkspace, useUnlockModelConnections, useUnreadByPeer, useUnshareCalendar, useUpdateCalendar, useUpdateCalendarAccount, useUpdateContact, useUpdateConversation, useUpdateDatabase, useUpdateDatabaseRow, useUpdateDocTag, useUpdateDocuments, useUpdateEvent, useUpdateFact, useUpdateProjectAddonSettings, useUpdateProjectFields, useUpdateProjectNextPeriodAddons, useUpdateWorkflow, useUpdateWorkspace, useUploadDocuments, useUploadFiles, useUploadFromUrls, useUploadSkillFiles, useUploadUrls, useVideoRecorder, useWorkItems, useWorkOffline, useWorkflowRuns, useWorkflows, useWorkspaceArchive, useWorkspaceDocs, useWorkspaceExportDownload, useWorkspaceNotificationLevel, useWorkspaceProcessing, useWorkspaceRole, useWorkspaceTransfer, useWorkspaceTransfers, useWorkspaceTrash, useWorkspaceUsers, userDisplayName, userInitials, viewsOfTable, waitForResponseId, wipeCalendarOffline, wipeOfflineDocuments, withRelativePath, workflowRunTitle, workflowStepOf, workspaceHouseTemplateId };
|
|
16889
17062
|
//# sourceMappingURL=index.js.map
|
|
16890
17063
|
//# sourceMappingURL=index.js.map
|