@feltdb/core 0.6.10 → 0.6.12

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 (62) hide show
  1. package/dist/cli/application-lifecycle.js +112 -0
  2. package/dist/cli/application.js +10 -0
  3. package/dist/cli/commands.js +234 -64
  4. package/dist/cli/development-session.js +54 -0
  5. package/dist/cli/index.js +1 -1
  6. package/dist/cli/workspace-integration.js +151 -20
  7. package/dist/create/cli.js +4 -2
  8. package/dist/create/create.js +42 -6
  9. package/dist/create/frameworks.js +18 -0
  10. package/dist/create/package-versions.js +1 -1
  11. package/dist/create/workspace-initialization.js +4 -5
  12. package/dist/db.d.ts +4 -1
  13. package/dist/db.d.ts.map +1 -1
  14. package/dist/db.js +56 -7
  15. package/dist/development-runtime-bridge.d.ts +60 -0
  16. package/dist/development-runtime-bridge.d.ts.map +1 -0
  17. package/dist/development-runtime-bridge.js +171 -0
  18. package/dist/index-core.d.ts +2 -0
  19. package/dist/index-core.d.ts.map +1 -1
  20. package/dist/index-core.js +2 -0
  21. package/dist/studio/app.d.ts +2 -1
  22. package/dist/studio/app.d.ts.map +1 -1
  23. package/dist/studio/components/StateExplorer.d.ts +2 -1
  24. package/dist/studio/components/StateExplorer.d.ts.map +1 -1
  25. package/dist/studio/components/index.js +1 -1
  26. package/dist/studio/{components-9kDSWiGL.js → components-C5p2TfIU.js} +25 -14
  27. package/dist/studio/index.js +234 -160
  28. package/dist/studio-app/assets/index-DospFFYE.js +28 -0
  29. package/dist/studio-app/index.html +1 -1
  30. package/dist/workspace/browser.d.ts +3 -3
  31. package/dist/workspace/browser.d.ts.map +1 -1
  32. package/dist/workspace/browser.js +1 -1
  33. package/dist/workspace/development-node.d.ts +16 -0
  34. package/dist/workspace/development-node.d.ts.map +1 -1
  35. package/dist/workspace/development-node.js +85 -1
  36. package/dist/workspace/index.d.ts +3 -3
  37. package/dist/workspace/index.d.ts.map +1 -1
  38. package/dist/workspace/index.js +1 -1
  39. package/dist/workspace/investigation-lifecycle-manager.d.ts +2 -0
  40. package/dist/workspace/investigation-lifecycle-manager.d.ts.map +1 -1
  41. package/dist/workspace/investigation-lifecycle-manager.js +33 -3
  42. package/dist/workspace/investigation-supervisor.d.ts.map +1 -1
  43. package/dist/workspace/investigation-supervisor.js +3 -1
  44. package/dist/workspace/runtime-investigation.d.ts +4 -0
  45. package/dist/workspace/runtime-investigation.d.ts.map +1 -1
  46. package/dist/workspace/runtime-investigation.js +4 -0
  47. package/dist/workspace/runtime-observation.d.ts +4 -1
  48. package/dist/workspace/runtime-observation.d.ts.map +1 -1
  49. package/dist/workspace/runtime-observation.js +20 -2
  50. package/dist/workspace/runtime-observer.d.ts +6 -0
  51. package/dist/workspace/runtime-observer.d.ts.map +1 -1
  52. package/dist/workspace/runtime-observer.js +4 -0
  53. package/dist/workspace/workspace-connection.d.ts +33 -1
  54. package/dist/workspace/workspace-connection.d.ts.map +1 -1
  55. package/dist/workspace/workspace-connection.js +117 -2
  56. package/dist/workspace/workspace-identity.d.ts +1 -1
  57. package/dist/workspace/workspace-identity.d.ts.map +1 -1
  58. package/dist/workspace/workspace-identity.js +4 -4
  59. package/dist/workspace/workspace-types.d.ts +95 -0
  60. package/dist/workspace/workspace-types.d.ts.map +1 -1
  61. package/package.json +1 -1
  62. package/dist/studio-app/assets/index-D3rT0SJi.js +0 -28
@@ -1,4 +1,4 @@
1
- import { _ as e, a as t, b as n, c as r, d as i, f as a, g as o, h as s, i as c, l, m as u, n as d, o as f, p, r as m, s as h, t as g, u as _, v, x as y, y as b } from "./components-9kDSWiGL.js";
1
+ import { _ as e, a as t, b as n, c as r, d as i, f as a, g as o, h as s, i as c, l, m as u, n as d, o as f, p, r as m, s as h, t as g, u as _, v, x as y, y as b } from "./components-C5p2TfIU.js";
2
2
  import { t as x } from "./KeyManagementPanel-DZuSeWBK.js";
3
3
  import { ManagedInstanceUtil as S } from "./utils/managed-instance.js";
4
4
  import { ManagedInstancePanel as C } from "./components/ManagedInstancePanel.js";
@@ -8,8 +8,8 @@ import { BrowserRouter as I, Link as L, Route as R, Routes as z } from "react-ro
8
8
  import { jsx as B, jsxs as V } from "react/jsx-runtime";
9
9
  import { parseFlowSpec as H } from "@feltdb/core";
10
10
  //#region src/app.tsx
11
- function U({ db: s, remoteUrl: b = "", token: S = "", namespace: C = "default", deploymentRuntime: w = "browser", applicationUrl: T = "", onConnect: E }) {
12
- let [D, O] = F(null), k = e(s || null, C), A = o(s || null, D, C), { diagnostics: j } = n(s || null), M = v(s || null), [N, U] = F(), W = w !== "browser" || !!b, G = (e) => ({
11
+ function U({ db: s, remoteUrl: b = "", token: S = "", namespace: C = "default", deploymentRuntime: w = "browser", applicationUrl: T = "", developmentSession: E, onConnect: D }) {
12
+ let [O, k] = F(null), A = e(s || null, C), j = o(s || null, O, C), { diagnostics: M } = n(s || null), N = v(s || null), [U, W] = F(), G = w !== "browser" || !!b, [K, q] = F([]), [J, Y] = F([]), [X, Z] = F(0), Q = (e) => ({
13
13
  pathname: e,
14
14
  search: window.location.search
15
15
  });
@@ -18,30 +18,56 @@ function U({ db: s, remoteUrl: b = "", token: S = "", namespace: C = "default",
18
18
  return fetch("/_feltdb/project", { cache: "no-store" }).then(async (t) => {
19
19
  if (!t.ok) throw Error("No project model endpoint");
20
20
  let n = await t.json();
21
- e && O(H(n.source));
21
+ e && k(H(n.source));
22
22
  }).catch(async () => {
23
23
  let t = s ? await s.collection("_flow_apps").all() : [];
24
- e && t[0]?.spec && O(t[0].spec);
24
+ e && t[0]?.spec && k(t[0].spec);
25
25
  }), () => {
26
26
  e = !1;
27
27
  };
28
- }, [s]), /* @__PURE__ */ B(I, { children: /* @__PURE__ */ V("div", {
28
+ }, [s]), P(() => {
29
+ if (!E?.sessionId) return;
30
+ let e = !0, t = () => void fetch("/_feltdb/runtime", { cache: "no-store" }).then((e) => e.ok ? e.json() : { runtimes: [] }).then((t) => {
31
+ e && q(t.runtimes || []);
32
+ }).catch(() => {
33
+ e && q([]);
34
+ });
35
+ t();
36
+ let n = window.setInterval(t, 2e3);
37
+ return () => {
38
+ e = !1, window.clearInterval(n);
39
+ };
40
+ }, [E?.sessionId]), P(() => {
41
+ let e = K[0]?.runtimeInstanceId;
42
+ if (!e) {
43
+ Y([]);
44
+ return;
45
+ }
46
+ let t = !0, n = 0, r = () => void fetch(`/_feltdb/observations?runtimeInstanceId=${encodeURIComponent(e)}&cursor=${n}&limit=100`, { cache: "no-store" }).then((e) => e.ok ? e.json() : { observations: [] }).then((e) => {
47
+ t && (n = e.nextCursor ?? n, Z(e.dropped || 0), Y((t) => [...t, ...e.observations || []].slice(-200)));
48
+ }).catch(() => void 0);
49
+ r();
50
+ let i = window.setInterval(r, 1e3);
51
+ return () => {
52
+ t = !1, window.clearInterval(i);
53
+ };
54
+ }, [K[0]?.runtimeInstanceId]), /* @__PURE__ */ B(I, { children: /* @__PURE__ */ V("div", {
29
55
  className: "studio-app",
30
56
  children: [/* @__PURE__ */ V("nav", {
31
57
  className: "studio-nav",
32
58
  children: [
33
59
  /* @__PURE__ */ V("div", {
34
60
  className: "nav-header",
35
- children: [/* @__PURE__ */ B("h1", { children: "FeltDB Studio" }), k && /* @__PURE__ */ B("div", {
61
+ children: [/* @__PURE__ */ B("h1", { children: "FeltDB Studio" }), A && /* @__PURE__ */ B("div", {
36
62
  className: "instance-info",
37
- children: k.namespace
63
+ children: A.namespace
38
64
  })]
39
65
  }),
40
66
  /* @__PURE__ */ B("div", {
41
67
  className: "nav-search",
42
68
  children: /* @__PURE__ */ B(d, {
43
69
  db: s,
44
- model: D
70
+ model: O
45
71
  })
46
72
  }),
47
73
  /* @__PURE__ */ V("ul", {
@@ -52,67 +78,71 @@ function U({ db: s, remoteUrl: b = "", token: S = "", namespace: C = "default",
52
78
  children: "Design"
53
79
  }),
54
80
  /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
55
- to: G("/"),
81
+ to: Q("/"),
56
82
  children: "Application"
57
83
  }) }),
58
84
  /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
59
- to: G("/capabilities"),
85
+ to: Q("/capabilities"),
60
86
  children: "Capabilities"
61
87
  }) }),
62
88
  /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
63
- to: G("/workflows"),
89
+ to: Q("/workflows"),
64
90
  children: "Workflows"
65
91
  }) }),
66
92
  /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
67
- to: G("/agents"),
93
+ to: Q("/agents"),
68
94
  children: "Agents"
69
95
  }) }),
70
96
  /* @__PURE__ */ B("li", {
71
97
  className: "nav-section",
72
98
  children: "Observe"
73
99
  }),
74
- W && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
75
- to: G("/overview"),
100
+ E?.sessionId && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
101
+ to: Q("/activity"),
102
+ children: "Live Activity"
103
+ }) }),
104
+ G && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
105
+ to: Q("/overview"),
76
106
  children: "Overview"
77
107
  }) }),
78
108
  /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
79
- to: G("/data"),
109
+ to: Q("/data"),
80
110
  children: "Data"
81
111
  }) }),
82
- W && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
83
- to: G("/references"),
112
+ G && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
113
+ to: Q("/references"),
84
114
  children: "References"
85
115
  }) }),
86
- W && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
87
- to: G("/operations"),
116
+ G && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
117
+ to: Q("/operations"),
88
118
  children: "Operations"
89
119
  }) }),
90
- W && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
91
- to: G("/executions"),
120
+ G && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
121
+ to: Q("/executions"),
92
122
  children: "Executions"
93
123
  }) }),
94
- W && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
95
- to: G("/peers"),
124
+ G && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
125
+ to: Q("/peers"),
96
126
  children: "Peers"
97
127
  }) }),
98
- W && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
99
- to: G("/provenance"),
128
+ G && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
129
+ to: Q("/provenance"),
100
130
  children: "Provenance"
101
131
  }) }),
102
- W && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
103
- to: G("/conflicts"),
132
+ G && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
133
+ to: Q("/conflicts"),
104
134
  children: "Conflicts"
105
135
  }) }),
106
- W && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
107
- to: G("/health"),
136
+ G && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
137
+ to: Q("/health"),
108
138
  children: "Health"
109
139
  }) }),
110
140
  /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
111
- to: G("/settings"),
141
+ to: Q("/settings"),
112
142
  children: "Settings"
113
143
  }) }),
114
- W && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
115
- to: G("/api-keys"),
144
+ G && /* @__PURE__ */ B("li", { children: /* @__PURE__ */ B(L, {
145
+ to: Q("/api-keys"),
116
146
  children: "API Keys"
117
147
  }) })
118
148
  ]
@@ -120,137 +150,181 @@ function U({ db: s, remoteUrl: b = "", token: S = "", namespace: C = "default",
120
150
  ]
121
151
  }), /* @__PURE__ */ V("main", {
122
152
  className: "studio-content",
123
- children: [!W && /* @__PURE__ */ B("div", {
124
- className: "runtime-notice",
125
- children: "Browser data is read live from the generated application origin through the local Studio bridge."
126
- }), /* @__PURE__ */ V(z, { children: [
127
- /* @__PURE__ */ B(R, {
128
- path: "/",
129
- element: /* @__PURE__ */ B(g, {
130
- db: s,
131
- namespace: C,
132
- projectSpec: D,
133
- onSpecChange: O
134
- })
135
- }),
136
- /* @__PURE__ */ B(R, {
137
- path: "/overview",
138
- element: /* @__PURE__ */ B(y, { stats: A })
139
- }),
140
- /* @__PURE__ */ B(R, {
141
- path: "/data",
142
- element: /* @__PURE__ */ B(u, {
143
- db: s,
144
- model: D,
145
- namespace: C,
146
- applicationUrl: w === "browser" ? T : ""
147
- })
148
- }),
149
- /* @__PURE__ */ B(R, {
150
- path: "/state",
151
- element: /* @__PURE__ */ B(u, {
152
- db: s,
153
- model: D,
154
- namespace: C,
155
- applicationUrl: w === "browser" ? T : ""
156
- })
157
- }),
158
- /* @__PURE__ */ B(R, {
159
- path: "/references",
160
- element: /* @__PURE__ */ B(p, {
161
- db: s,
162
- model: D,
163
- namespace: C
164
- })
165
- }),
166
- /* @__PURE__ */ B(R, {
167
- path: "/operations",
168
- element: /* @__PURE__ */ B(a, {
169
- db: s,
170
- model: D,
171
- namespace: C
172
- })
173
- }),
174
- /* @__PURE__ */ B(R, {
175
- path: "/peers",
176
- element: /* @__PURE__ */ B(i, {
177
- peers: M,
178
- localInstance: k?.instanceId
179
- })
180
- }),
181
- /* @__PURE__ */ B(R, {
182
- path: "/capabilities",
183
- element: /* @__PURE__ */ B(_, {
184
- db: s,
185
- model: D
186
- })
187
- }),
188
- /* @__PURE__ */ B(R, {
189
- path: "/executions",
190
- element: /* @__PURE__ */ B(l, {
191
- db: s,
192
- model: D
193
- })
194
- }),
195
- /* @__PURE__ */ B(R, {
196
- path: "/workflows",
197
- element: /* @__PURE__ */ B(h, {
198
- db: s,
199
- model: D
200
- })
201
- }),
202
- /* @__PURE__ */ B(R, {
203
- path: "/agents",
204
- element: /* @__PURE__ */ B(f, {
205
- db: s,
206
- model: D
207
- })
208
- }),
209
- /* @__PURE__ */ B(R, {
210
- path: "/provenance",
211
- element: /* @__PURE__ */ B(t, {
212
- db: s,
213
- model: D,
214
- namespace: C,
215
- reference: N
216
- })
217
- }),
218
- /* @__PURE__ */ B(R, {
219
- path: "/conflicts",
220
- element: /* @__PURE__ */ B(r, {
221
- db: s,
222
- diagnostics: j
223
- })
224
- }),
225
- /* @__PURE__ */ B(R, {
226
- path: "/health",
227
- element: /* @__PURE__ */ B(c, {
228
- diagnostics: j,
229
- model: D
230
- })
153
+ children: [
154
+ E?.sessionId && /* @__PURE__ */ V("div", {
155
+ className: "runtime-notice",
156
+ children: ["Application runtime: ", K.length ? `Connected (${K[0].runtime}, ${K[0].namespace})` : "Not connected"]
231
157
  }),
232
- /* @__PURE__ */ B(R, {
233
- path: "/settings",
234
- element: /* @__PURE__ */ B(m, {
235
- db: s,
236
- remoteUrl: b,
237
- token: S,
238
- onConnect: E
239
- })
158
+ !G && /* @__PURE__ */ B("div", {
159
+ className: "runtime-notice",
160
+ children: "Browser data is read live from the generated application origin through the local Studio bridge."
240
161
  }),
241
- /* @__PURE__ */ B(R, {
242
- path: "/api-keys",
243
- element: /* @__PURE__ */ V("div", {
244
- style: { padding: "2rem" },
245
- children: [/* @__PURE__ */ B("h1", { children: "API Key Management" }), /* @__PURE__ */ B(x, {
246
- apiUrl: b,
247
- token: S,
162
+ /* @__PURE__ */ V(z, { children: [
163
+ /* @__PURE__ */ B(R, {
164
+ path: "/",
165
+ element: /* @__PURE__ */ B(g, {
166
+ db: s,
248
167
  namespace: C,
249
- onConfigure: () => window.location.assign("/settings")
250
- })]
168
+ projectSpec: O,
169
+ onSpecChange: k
170
+ })
171
+ }),
172
+ /* @__PURE__ */ B(R, {
173
+ path: "/overview",
174
+ element: /* @__PURE__ */ B(y, { stats: j })
175
+ }),
176
+ /* @__PURE__ */ B(R, {
177
+ path: "/activity",
178
+ element: /* @__PURE__ */ V("div", {
179
+ className: "runtime-activity",
180
+ children: [
181
+ /* @__PURE__ */ B("h1", { children: "Live Activity" }),
182
+ /* @__PURE__ */ V("p", { children: [
183
+ J.some((e) => Date.now() - e.timestamp < 5e3) ? "Active" : "Idle",
184
+ " · Runtime ",
185
+ K[0]?.runtimeInstanceId || "not connected"
186
+ ] }),
187
+ X > 0 && /* @__PURE__ */ V("p", {
188
+ className: "runtime-notice",
189
+ children: [
190
+ "Observation is incomplete: ",
191
+ X,
192
+ " events dropped."
193
+ ]
194
+ }),
195
+ /* @__PURE__ */ V("table", { children: [/* @__PURE__ */ B("thead", { children: /* @__PURE__ */ V("tr", { children: [
196
+ /* @__PURE__ */ B("th", { children: "Time" }),
197
+ /* @__PURE__ */ B("th", { children: "Operation" }),
198
+ /* @__PURE__ */ B("th", { children: "Collection" }),
199
+ /* @__PURE__ */ B("th", { children: "Status" }),
200
+ /* @__PURE__ */ B("th", { children: "Duration" })
201
+ ] }) }), /* @__PURE__ */ B("tbody", { children: [...J].reverse().map((e) => /* @__PURE__ */ V("tr", { children: [
202
+ /* @__PURE__ */ B("td", { children: new Date(e.timestamp).toLocaleTimeString() }),
203
+ /* @__PURE__ */ B("td", { children: e.operation?.type }),
204
+ /* @__PURE__ */ B("td", { children: e.operation?.collection || "—" }),
205
+ /* @__PURE__ */ B("td", { children: e.status }),
206
+ /* @__PURE__ */ B("td", { children: e.durationMs === void 0 ? "—" : `${e.durationMs} ms` })
207
+ ] }, e.cursor || e.eventId)) })] })
208
+ ]
209
+ })
210
+ }),
211
+ /* @__PURE__ */ B(R, {
212
+ path: "/data",
213
+ element: /* @__PURE__ */ B(u, {
214
+ db: s,
215
+ model: O,
216
+ namespace: C,
217
+ applicationUrl: w === "browser" ? T : "",
218
+ developmentSession: E
219
+ })
220
+ }),
221
+ /* @__PURE__ */ B(R, {
222
+ path: "/state",
223
+ element: /* @__PURE__ */ B(u, {
224
+ db: s,
225
+ model: O,
226
+ namespace: C,
227
+ applicationUrl: w === "browser" ? T : "",
228
+ developmentSession: E
229
+ })
230
+ }),
231
+ /* @__PURE__ */ B(R, {
232
+ path: "/references",
233
+ element: /* @__PURE__ */ B(p, {
234
+ db: s,
235
+ model: O,
236
+ namespace: C
237
+ })
238
+ }),
239
+ /* @__PURE__ */ B(R, {
240
+ path: "/operations",
241
+ element: /* @__PURE__ */ B(a, {
242
+ db: s,
243
+ model: O,
244
+ namespace: C
245
+ })
246
+ }),
247
+ /* @__PURE__ */ B(R, {
248
+ path: "/peers",
249
+ element: /* @__PURE__ */ B(i, {
250
+ peers: N,
251
+ localInstance: A?.instanceId
252
+ })
253
+ }),
254
+ /* @__PURE__ */ B(R, {
255
+ path: "/capabilities",
256
+ element: /* @__PURE__ */ B(_, {
257
+ db: s,
258
+ model: O
259
+ })
260
+ }),
261
+ /* @__PURE__ */ B(R, {
262
+ path: "/executions",
263
+ element: /* @__PURE__ */ B(l, {
264
+ db: s,
265
+ model: O
266
+ })
267
+ }),
268
+ /* @__PURE__ */ B(R, {
269
+ path: "/workflows",
270
+ element: /* @__PURE__ */ B(h, {
271
+ db: s,
272
+ model: O
273
+ })
274
+ }),
275
+ /* @__PURE__ */ B(R, {
276
+ path: "/agents",
277
+ element: /* @__PURE__ */ B(f, {
278
+ db: s,
279
+ model: O
280
+ })
281
+ }),
282
+ /* @__PURE__ */ B(R, {
283
+ path: "/provenance",
284
+ element: /* @__PURE__ */ B(t, {
285
+ db: s,
286
+ model: O,
287
+ namespace: C,
288
+ reference: U
289
+ })
290
+ }),
291
+ /* @__PURE__ */ B(R, {
292
+ path: "/conflicts",
293
+ element: /* @__PURE__ */ B(r, {
294
+ db: s,
295
+ diagnostics: M
296
+ })
297
+ }),
298
+ /* @__PURE__ */ B(R, {
299
+ path: "/health",
300
+ element: /* @__PURE__ */ B(c, {
301
+ diagnostics: M,
302
+ model: O
303
+ })
304
+ }),
305
+ /* @__PURE__ */ B(R, {
306
+ path: "/settings",
307
+ element: /* @__PURE__ */ B(m, {
308
+ db: s,
309
+ remoteUrl: b,
310
+ token: S,
311
+ onConnect: D
312
+ })
313
+ }),
314
+ /* @__PURE__ */ B(R, {
315
+ path: "/api-keys",
316
+ element: /* @__PURE__ */ V("div", {
317
+ style: { padding: "2rem" },
318
+ children: [/* @__PURE__ */ B("h1", { children: "API Key Management" }), /* @__PURE__ */ B(x, {
319
+ apiUrl: b,
320
+ token: S,
321
+ namespace: C,
322
+ onConfigure: () => window.location.assign("/settings")
323
+ })]
324
+ })
251
325
  })
252
- })
253
- ] })]
326
+ ] })
327
+ ]
254
328
  })]
255
329
  }) });
256
330
  }