@burtson-labs/bandit-engine 2.0.166 → 2.0.168

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.
Files changed (48) hide show
  1. package/dist/chat-7LOFYEWE.mjs +15 -0
  2. package/dist/chat-provider.js +154 -38
  3. package/dist/chat-provider.js.map +1 -1
  4. package/dist/chat-provider.mjs +5 -5
  5. package/dist/{chunk-M4DWPNZZ.mjs → chunk-4SXXEGEK.mjs} +145 -30
  6. package/dist/chunk-4SXXEGEK.mjs.map +1 -0
  7. package/dist/{chunk-Q2DINRIU.mjs → chunk-62IYSU3I.mjs} +5 -4
  8. package/dist/chunk-62IYSU3I.mjs.map +1 -0
  9. package/dist/{chunk-6KRAPGXE.mjs → chunk-CABOLDNR.mjs} +2 -2
  10. package/dist/{chunk-MM3NRLVR.mjs → chunk-E5WMDLE3.mjs} +2 -2
  11. package/dist/{chunk-IB2LPSQQ.mjs → chunk-JD6C64CT.mjs} +2 -2
  12. package/dist/{chunk-33OSALGS.mjs → chunk-KAXUI5H7.mjs} +155 -41
  13. package/dist/chunk-KAXUI5H7.mjs.map +1 -0
  14. package/dist/{chunk-A6W6XIDD.mjs → chunk-QI67R5F6.mjs} +5 -5
  15. package/dist/{chunk-75OBTJPN.mjs → chunk-R3NOM2DG.mjs} +4 -4
  16. package/dist/{chunk-YH5YWK4K.mjs → chunk-SZJB5FLZ.mjs} +2 -2
  17. package/dist/{chunk-YH5YWK4K.mjs.map → chunk-SZJB5FLZ.mjs.map} +1 -1
  18. package/dist/{chunk-WSZE3DDJ.mjs → chunk-YGOLNWXJ.mjs} +9 -6
  19. package/dist/chunk-YGOLNWXJ.mjs.map +1 -0
  20. package/dist/index.d.mts +56 -4
  21. package/dist/index.d.ts +56 -4
  22. package/dist/index.js +309 -68
  23. package/dist/index.js.map +1 -1
  24. package/dist/index.mjs +10 -10
  25. package/dist/management/management.js +308 -68
  26. package/dist/management/management.js.map +1 -1
  27. package/dist/management/management.mjs +8 -8
  28. package/dist/modals/chat-modal/chat-modal.js +159 -42
  29. package/dist/modals/chat-modal/chat-modal.js.map +1 -1
  30. package/dist/modals/chat-modal/chat-modal.mjs +4 -4
  31. package/dist/{modelStore-F6JQUXGG.mjs → modelStore-TFNX4GEC.mjs} +2 -2
  32. package/dist/{public-0EYmtpGD.d.ts → public-DJa4Db00.d.mts} +9 -0
  33. package/dist/{public-0EYmtpGD.d.mts → public-DJa4Db00.d.ts} +9 -0
  34. package/dist/public-types.d.mts +1 -1
  35. package/dist/public-types.d.ts +1 -1
  36. package/package.json +1 -1
  37. package/dist/chat-RCMZYACB.mjs +0 -15
  38. package/dist/chunk-33OSALGS.mjs.map +0 -1
  39. package/dist/chunk-M4DWPNZZ.mjs.map +0 -1
  40. package/dist/chunk-Q2DINRIU.mjs.map +0 -1
  41. package/dist/chunk-WSZE3DDJ.mjs.map +0 -1
  42. /package/dist/{chat-RCMZYACB.mjs.map → chat-7LOFYEWE.mjs.map} +0 -0
  43. /package/dist/{chunk-6KRAPGXE.mjs.map → chunk-CABOLDNR.mjs.map} +0 -0
  44. /package/dist/{chunk-MM3NRLVR.mjs.map → chunk-E5WMDLE3.mjs.map} +0 -0
  45. /package/dist/{chunk-IB2LPSQQ.mjs.map → chunk-JD6C64CT.mjs.map} +0 -0
  46. /package/dist/{chunk-A6W6XIDD.mjs.map → chunk-QI67R5F6.mjs.map} +0 -0
  47. /package/dist/{chunk-75OBTJPN.mjs.map → chunk-R3NOM2DG.mjs.map} +0 -0
  48. /package/dist/{modelStore-F6JQUXGG.mjs.map → modelStore-TFNX4GEC.mjs.map} +0 -0
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  ChatProvider,
3
3
  chat_provider_default
4
- } from "./chunk-A6W6XIDD.mjs";
4
+ } from "./chunk-QI67R5F6.mjs";
5
5
  import "./chunk-ONQMRE2G.mjs";
6
- import "./chunk-6KRAPGXE.mjs";
7
- import "./chunk-MM3NRLVR.mjs";
8
- import "./chunk-33OSALGS.mjs";
9
- import "./chunk-YH5YWK4K.mjs";
6
+ import "./chunk-CABOLDNR.mjs";
7
+ import "./chunk-E5WMDLE3.mjs";
8
+ import "./chunk-KAXUI5H7.mjs";
9
+ import "./chunk-SZJB5FLZ.mjs";
10
10
  import "./chunk-GRPTCHFN.mjs";
11
11
  import "./chunk-HNXPDIWC.mjs";
12
12
  export {
@@ -2,10 +2,10 @@ import {
2
2
  StreamingMarkdown_default,
3
3
  isNativeShell,
4
4
  isStandalonePwa
5
- } from "./chunk-IB2LPSQQ.mjs";
5
+ } from "./chunk-JD6C64CT.mjs";
6
6
  import {
7
7
  aiProviderInitService
8
- } from "./chunk-6KRAPGXE.mjs";
8
+ } from "./chunk-CABOLDNR.mjs";
9
9
  import {
10
10
  addMcpServer,
11
11
  deleteMcpServer,
@@ -13,10 +13,10 @@ import {
13
13
  listMcpServers,
14
14
  updateMcpServer,
15
15
  useMCPToolsStore
16
- } from "./chunk-MM3NRLVR.mjs";
16
+ } from "./chunk-E5WMDLE3.mjs";
17
17
  import {
18
18
  chat_modal_default
19
- } from "./chunk-75OBTJPN.mjs";
19
+ } from "./chunk-R3NOM2DG.mjs";
20
20
  import {
21
21
  AlertCircle,
22
22
  AlertTriangle,
@@ -91,7 +91,7 @@ import {
91
91
  themeSkinIds,
92
92
  useNotificationService,
93
93
  useVoiceStore
94
- } from "./chunk-Q2DINRIU.mjs";
94
+ } from "./chunk-62IYSU3I.mjs";
95
95
  import {
96
96
  TOPICS,
97
97
  brandingService_default,
@@ -102,14 +102,14 @@ import {
102
102
  useFeatures,
103
103
  useKnowledgeStore2 as useKnowledgeStore,
104
104
  useVectorStore
105
- } from "./chunk-33OSALGS.mjs";
105
+ } from "./chunk-KAXUI5H7.mjs";
106
106
  import {
107
107
  indexedDBService_default,
108
108
  models,
109
109
  useModelStore,
110
110
  usePackageSettingsStore,
111
111
  usePreferencesStore
112
- } from "./chunk-YH5YWK4K.mjs";
112
+ } from "./chunk-SZJB5FLZ.mjs";
113
113
  import {
114
114
  AIProviderFactory,
115
115
  GatewayService,
@@ -4039,6 +4039,21 @@ var getContentSourceInfo = (doc, isVectorMode) => {
4039
4039
  }
4040
4040
  return { label: "Local", icon: Lock };
4041
4041
  };
4042
+ var KNOWLEDGE_PAGE_SIZE = 50;
4043
+ var EMPTY_LIST_META = {
4044
+ total: null,
4045
+ hasMore: false,
4046
+ nextSkip: 0,
4047
+ scope: "knowledge",
4048
+ serverScoped: false,
4049
+ knowledgeFilterUnavailable: false,
4050
+ hiddenCount: 0
4051
+ };
4052
+ var docTime = (doc) => {
4053
+ const time = doc.addedDate instanceof Date ? doc.addedDate.getTime() : NaN;
4054
+ return Number.isFinite(time) ? time : 0;
4055
+ };
4056
+ var docBytes = (doc) => typeof doc.size === "number" && doc.size > 0 ? doc.size : (doc.content?.length || 0) * 2;
4042
4057
  var KnowledgeTab = ({
4043
4058
  documents,
4044
4059
  addDocuments,
@@ -4057,7 +4072,7 @@ var KnowledgeTab = ({
4057
4072
  isVectorEnabled,
4058
4073
  uploadDocument: uploadToVector,
4059
4074
  searchDocuments: searchVectorDocuments,
4060
- getUserDocuments,
4075
+ getKnowledgeDocumentsPage,
4061
4076
  downloadVectorFile,
4062
4077
  getFilePreview,
4063
4078
  refreshCompatibilityCheck,
@@ -4070,6 +4085,9 @@ var KnowledgeTab = ({
4070
4085
  const [vectorDocuments, setVectorDocuments] = useState8([]);
4071
4086
  const [loadingVectorDocs, setLoadingVectorDocs] = useState8(false);
4072
4087
  const [vectorLoadError, setVectorLoadError] = useState8(null);
4088
+ const [knowledgeScope, setKnowledgeScope] = useState8("knowledge");
4089
+ const [listMeta, setListMeta] = useState8(EMPTY_LIST_META);
4090
+ const [loadingMoreVectorDocs, setLoadingMoreVectorDocs] = useState8(false);
4073
4091
  const [searchQuery, setSearchQuery] = useState8("");
4074
4092
  const [selectedCategory, setSelectedCategory] = useState8("all");
4075
4093
  const [contentSourceFilter, setContentSourceFilter] = useState8("all");
@@ -4120,16 +4138,52 @@ var KnowledgeTab = ({
4120
4138
  setLoadingVectorDocs(true);
4121
4139
  setVectorLoadError(null);
4122
4140
  try {
4123
- const docs = await getUserDocuments(0, 100);
4124
- const mappedDocs = mapVectorDocsToKnowledgeDocs(docs);
4125
- setVectorDocuments(mappedDocs);
4141
+ const page = await getKnowledgeDocumentsPage(0, KNOWLEDGE_PAGE_SIZE, knowledgeScope);
4142
+ setVectorDocuments(mapVectorDocsToKnowledgeDocs(page.documents));
4143
+ setListMeta({
4144
+ total: page.serverScoped ? page.total : null,
4145
+ hasMore: page.hasMore,
4146
+ nextSkip: page.serverScoped ? page.documents.length : KNOWLEDGE_PAGE_SIZE,
4147
+ scope: page.scope,
4148
+ serverScoped: page.serverScoped,
4149
+ knowledgeFilterUnavailable: page.knowledgeFilterUnavailable,
4150
+ hiddenCount: page.hiddenCount
4151
+ });
4126
4152
  } catch (error) {
4127
4153
  console.error("Failed to load vector documents:", error);
4128
4154
  setVectorLoadError(error instanceof Error ? error.message : String(error));
4129
4155
  } finally {
4130
4156
  setLoadingVectorDocs(false);
4131
4157
  }
4132
- }, [shouldUseVector, getUserDocuments, mapVectorDocsToKnowledgeDocs]);
4158
+ }, [shouldUseVector, getKnowledgeDocumentsPage, mapVectorDocsToKnowledgeDocs, knowledgeScope]);
4159
+ const loadMoreVectorDocuments = useCallback5(async () => {
4160
+ if (!shouldUseVector || !listMeta.hasMore || loadingMoreVectorDocs) {
4161
+ return;
4162
+ }
4163
+ setLoadingMoreVectorDocs(true);
4164
+ try {
4165
+ const page = await getKnowledgeDocumentsPage(listMeta.nextSkip, KNOWLEDGE_PAGE_SIZE, knowledgeScope);
4166
+ const mapped = mapVectorDocsToKnowledgeDocs(page.documents);
4167
+ setVectorDocuments((prev) => {
4168
+ const seen = new Set(prev.map((doc) => doc.id));
4169
+ return [...prev, ...mapped.filter((doc) => !seen.has(doc.id))];
4170
+ });
4171
+ setListMeta((prev) => ({
4172
+ ...prev,
4173
+ total: page.serverScoped ? page.total : null,
4174
+ hasMore: page.hasMore,
4175
+ nextSkip: prev.nextSkip + (page.serverScoped ? page.documents.length : KNOWLEDGE_PAGE_SIZE),
4176
+ knowledgeFilterUnavailable: page.knowledgeFilterUnavailable,
4177
+ hiddenCount: prev.hiddenCount + page.hiddenCount
4178
+ }));
4179
+ } catch (error) {
4180
+ setSnackbarSeverity("error");
4181
+ setSnackbarMessage(`Couldn't load more documents: ${error instanceof Error ? error.message : String(error)}`);
4182
+ setShowSnackbar(true);
4183
+ } finally {
4184
+ setLoadingMoreVectorDocs(false);
4185
+ }
4186
+ }, [shouldUseVector, listMeta.hasMore, listMeta.nextSkip, loadingMoreVectorDocs, getKnowledgeDocumentsPage, knowledgeScope, mapVectorDocsToKnowledgeDocs]);
4133
4187
  useEffect7(() => {
4134
4188
  if (shouldUseVector) {
4135
4189
  loadVectorDocuments();
@@ -4137,7 +4191,7 @@ var KnowledgeTab = ({
4137
4191
  }, [shouldUseVector, loadVectorDocuments]);
4138
4192
  const filteredAndSortedDocuments = useMemo2(() => {
4139
4193
  const sourceDocuments2 = shouldUseVector ? vectorDocuments : documents;
4140
- let filtered = sourceDocuments2;
4194
+ let filtered = [...sourceDocuments2];
4141
4195
  if (searchQuery) {
4142
4196
  if (shouldUseVector) {
4143
4197
  filtered = filtered.filter(
@@ -4172,10 +4226,10 @@ var KnowledgeTab = ({
4172
4226
  comparison = a.name.localeCompare(b.name);
4173
4227
  break;
4174
4228
  case "date":
4175
- comparison = documents.indexOf(a) - documents.indexOf(b);
4229
+ comparison = docTime(a) - docTime(b) || sourceDocuments2.indexOf(a) - sourceDocuments2.indexOf(b);
4176
4230
  break;
4177
4231
  case "size":
4178
- comparison = (a.content.length || 0) - (b.content.length || 0);
4232
+ comparison = docBytes(a) - docBytes(b);
4179
4233
  break;
4180
4234
  case "type":
4181
4235
  comparison = getFileTypeInfo(a.name).category.localeCompare(getFileTypeInfo(b.name).category);
@@ -4204,12 +4258,15 @@ var KnowledgeTab = ({
4204
4258
  acc[category] = (acc[category] || 0) + 1;
4205
4259
  return acc;
4206
4260
  }, {});
4261
+ const serverTotal = shouldUseVector && listMeta.total !== null ? listMeta.total : null;
4262
+ const totalDocuments = serverTotal !== null ? Math.max(serverTotal, sourceDocuments2.length) : sourceDocuments2.length;
4207
4263
  return {
4208
- totalDocuments: sourceDocuments2.length,
4264
+ totalDocuments,
4265
+ loadedDocuments: sourceDocuments2.length,
4209
4266
  totalSize: formatFileSize(totalSize),
4210
4267
  categoryCounts
4211
4268
  };
4212
- }, [documents, vectorDocuments, shouldUseVector]);
4269
+ }, [documents, vectorDocuments, shouldUseVector, listMeta.total]);
4213
4270
  const handleDocumentUpload = async (files) => {
4214
4271
  if (shouldUseVector) {
4215
4272
  showProcessing(
@@ -4521,6 +4578,12 @@ var KnowledgeTab = ({
4521
4578
  const openFilePicker = () => document.getElementById("file-upload")?.click();
4522
4579
  const storageHint = shouldUseVector ? hasTeam && shareWithTeam ? "Shared with your team: members can search these documents." : "Stored privately in your account." : "Stored locally in this browser.";
4523
4580
  const isInitialVectorLoad = shouldUseVector && loadingVectorDocs && vectorDocuments.length === 0;
4581
+ const isWorkspaceView = shouldUseVector && listMeta.scope === "all";
4582
+ const canDeleteListed = !isWorkspaceView;
4583
+ const changeKnowledgeScope = (scope) => {
4584
+ setSelectedDocuments([]);
4585
+ setKnowledgeScope(scope);
4586
+ };
4524
4587
  const touchIcon = { width: { xs: 44, sm: 36 }, height: { xs: 44, sm: 36 } };
4525
4588
  const dropHandlers = {
4526
4589
  onDrop: handleFileDrop,
@@ -4553,13 +4616,30 @@ var KnowledgeTab = ({
4553
4616
  /* @__PURE__ */ jsxs8(Typography8, { variant: "body2", color: "text.secondary", sx: { minWidth: 0 }, children: [
4554
4617
  statistics.totalDocuments,
4555
4618
  " ",
4556
- statistics.totalDocuments === 1 ? "document" : "documents",
4619
+ isWorkspaceView ? statistics.totalDocuments === 1 ? "file" : "files" : statistics.totalDocuments === 1 ? "document" : "documents",
4557
4620
  " \xB7 ",
4558
4621
  statistics.totalSize,
4622
+ statistics.loadedDocuments < statistics.totalDocuments && ` in ${statistics.loadedDocuments} loaded`,
4559
4623
  Object.entries(statistics.categoryCounts).map(([category, count]) => ` \xB7 ${category} ${count}`),
4560
- shouldUseVector && " \xB7 Synced workspace"
4624
+ shouldUseVector && (isWorkspaceView ? " \xB7 All workspace files" : " \xB7 Synced workspace")
4561
4625
  ] }),
4562
- /* @__PURE__ */ jsxs8(Stack4, { direction: "row", spacing: 1, children: [
4626
+ /* @__PURE__ */ jsxs8(Stack4, { direction: "row", spacing: 1, alignItems: "center", children: [
4627
+ shouldUseVector && /* @__PURE__ */ jsxs8(
4628
+ TextField4,
4629
+ {
4630
+ select: true,
4631
+ label: "Show",
4632
+ value: knowledgeScope,
4633
+ onChange: (e) => changeKnowledgeScope(e.target.value),
4634
+ size: "small",
4635
+ sx: { minWidth: 170 },
4636
+ inputProps: { "aria-label": "Which files to show" },
4637
+ children: [
4638
+ /* @__PURE__ */ jsx8(MenuItem3, { value: "knowledge", children: "Knowledge documents" }),
4639
+ /* @__PURE__ */ jsx8(MenuItem3, { value: "all", children: "All workspace files" })
4640
+ ]
4641
+ }
4642
+ ),
4563
4643
  shouldUseVector && /* @__PURE__ */ jsx8(
4564
4644
  Button7,
4565
4645
  {
@@ -4611,6 +4691,30 @@ var KnowledgeTab = ({
4611
4691
  ]
4612
4692
  }
4613
4693
  ),
4694
+ shouldUseVector && !vectorLoadError && listMeta.knowledgeFilterUnavailable && /* @__PURE__ */ jsx8(Alert5, { severity: "warning", sx: { mb: 1.5 }, children: "Couldn't check which files are indexed for Knowledge, so every file in your workspace is listed. Refresh to try again." }),
4695
+ shouldUseVector && !vectorLoadError && isWorkspaceView && !listMeta.knowledgeFilterUnavailable && /* @__PURE__ */ jsx8(
4696
+ Alert5,
4697
+ {
4698
+ severity: "info",
4699
+ sx: { mb: 1.5 },
4700
+ action: /* @__PURE__ */ jsx8(Button7, { color: "inherit", size: "small", onClick: () => changeKnowledgeScope("knowledge"), children: "Knowledge only" }),
4701
+ children: "Every file stored in your workspace, including Drive uploads, email attachments and app images. Only Knowledge documents are searched in chat. Files here can be viewed and downloaded, not deleted."
4702
+ }
4703
+ ),
4704
+ shouldUseVector && !vectorLoadError && !isWorkspaceView && !listMeta.serverScoped && listMeta.hiddenCount > 0 && /* @__PURE__ */ jsxs8(
4705
+ Alert5,
4706
+ {
4707
+ severity: "info",
4708
+ sx: { mb: 1.5 },
4709
+ action: /* @__PURE__ */ jsx8(Button7, { color: "inherit", size: "small", onClick: () => changeKnowledgeScope("all"), children: "Show all" }),
4710
+ children: [
4711
+ listMeta.hiddenCount,
4712
+ " ",
4713
+ listMeta.hiddenCount === 1 ? "image or temporary file is" : "images and temporary files are",
4714
+ " hidden. They come from other apps (Drive, email attachments) and aren't Knowledge documents."
4715
+ ]
4716
+ }
4717
+ ),
4614
4718
  uploadStatuses.length > 0 && /* @__PURE__ */ jsx8(Stack4, { spacing: 0.75, sx: { mb: 1.5 }, children: uploadStatuses.map((status, index) => /* @__PURE__ */ jsxs8(
4615
4719
  Stack4,
4616
4720
  {
@@ -4852,8 +4956,9 @@ var KnowledgeTab = ({
4852
4956
  "Showing ",
4853
4957
  filteredAndSortedDocuments.length,
4854
4958
  " of ",
4855
- sourceDocuments.length,
4856
- " documents",
4959
+ statistics.totalDocuments,
4960
+ " ",
4961
+ isWorkspaceView ? "files" : "documents",
4857
4962
  searchQuery && ` for "${searchQuery}"`
4858
4963
  ] }),
4859
4964
  viewMode === "grid" ? /* @__PURE__ */ jsx8(
@@ -4879,8 +4984,8 @@ var KnowledgeTab = ({
4879
4984
  isSelected: selectedDocuments.includes(doc.id),
4880
4985
  isDeleting: deletingDocuments.has(doc.id),
4881
4986
  variant: "full",
4882
- showSelection: true,
4883
- showDelete: true,
4987
+ showSelection: canDeleteListed,
4988
+ showDelete: canDeleteListed,
4884
4989
  showPreview: true
4885
4990
  },
4886
4991
  doc.id
@@ -4921,7 +5026,7 @@ var KnowledgeTab = ({
4921
5026
  transform: isDeleting ? "scale(0.98)" : "none"
4922
5027
  },
4923
5028
  children: [
4924
- /* @__PURE__ */ jsx8(
5029
+ canDeleteListed && /* @__PURE__ */ jsx8(
4925
5030
  Checkbox,
4926
5031
  {
4927
5032
  size: "small",
@@ -4942,7 +5047,7 @@ var KnowledgeTab = ({
4942
5047
  " \xB7 ",
4943
5048
  fileInfo.language ?? fileInfo.category,
4944
5049
  " \xB7 ",
4945
- formatFileSize(doc.content.length * 2)
5050
+ formatFileSize(docBytes(doc))
4946
5051
  ] })
4947
5052
  ] })
4948
5053
  ] }),
@@ -4958,7 +5063,7 @@ var KnowledgeTab = ({
4958
5063
  children: /* @__PURE__ */ jsx8(Download, { sx: { fontSize: 18 } })
4959
5064
  }
4960
5065
  ),
4961
- /* @__PURE__ */ jsx8(
5066
+ canDeleteListed && /* @__PURE__ */ jsx8(
4962
5067
  IconButton4,
4963
5068
  {
4964
5069
  onClick: (e) => handleRemoveDocument(e, doc.id),
@@ -4971,7 +5076,17 @@ var KnowledgeTab = ({
4971
5076
  },
4972
5077
  doc.id
4973
5078
  );
4974
- }) })
5079
+ }) }),
5080
+ shouldUseVector && listMeta.hasMore && /* @__PURE__ */ jsx8(Stack4, { alignItems: "center", sx: { mt: 2 }, children: /* @__PURE__ */ jsx8(
5081
+ Button7,
5082
+ {
5083
+ variant: "outlined",
5084
+ size: "small",
5085
+ onClick: loadMoreVectorDocuments,
5086
+ disabled: loadingMoreVectorDocs || loadingVectorDocs,
5087
+ children: loadingMoreVectorDocs ? "Loading\u2026" : "Load more"
5088
+ }
5089
+ ) })
4975
5090
  ] })
4976
5091
  ] }),
4977
5092
  selectedDocuments.length > 0 && /* @__PURE__ */ jsx8(
@@ -9516,7 +9631,7 @@ function useManagementAccess() {
9516
9631
 
9517
9632
  // src/management/management.tsx
9518
9633
  import { jsx as jsx17, jsxs as jsxs17 } from "react/jsx-runtime";
9519
- var preloadChatPage = () => import("./chat-RCMZYACB.mjs");
9634
+ var preloadChatPage = () => import("./chat-7LOFYEWE.mjs");
9520
9635
  var buildCapabilitiesUrl = (gatewayApiUrl) => {
9521
9636
  const trimmed = gatewayApiUrl.replace(/\/$/, "");
9522
9637
  if (trimmed.endsWith("/api")) {
@@ -10572,4 +10687,4 @@ export {
10572
10687
  useManagementAccess,
10573
10688
  management_default
10574
10689
  };
10575
- //# sourceMappingURL=chunk-M4DWPNZZ.mjs.map
10690
+ //# sourceMappingURL=chunk-4SXXEGEK.mjs.map