@invect/ui 0.0.4 → 0.0.5
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/{Invect-CJSKm2Aq.js → Invect-CUR_K7mH.js} +22899 -22871
- package/dist/demo.js +47 -48
- package/dist/index.js +157 -157
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { $ as e, $t as t, A as n, At as r, Bt as i, C as a, Ct as o, D as s, Dt as c, E as l, Et as u, F as d, G as f,
|
|
3
|
-
import
|
|
4
|
-
import { useMutation as
|
|
5
|
-
import { Fragment as
|
|
6
|
-
import { ChevronRight as
|
|
7
|
-
import { createSlot as
|
|
8
|
-
import * as
|
|
2
|
+
import { $ as e, $t as t, A as n, At as r, Bt as i, C as a, Ct as o, D as s, Dt as c, E as l, Et as u, F as d, G as f, Ht as p, I as m, It as h, J as g, Jt as _, K as v, Kt as y, Lt as ee, M as te, Mt as ne, N as re, O as ie, Ot as ae, P as oe, Pt as se, Q as ce, Qt as b, Rt as le, S as ue, St as de, T as fe, Tt as pe, U as me, Ut as he, Vt as ge, W as _e, Wt as ve, X as ye, Xt as be, Y as xe, Z as Se, Zt as Ce, _ as we, _t as Te, at as Ee, b as De, bt as x, c as Oe, ct as ke, d as Ae, dt as je, en as Me, et as Ne, f as Pe, ft as Fe, g as Ie, gt as Le, h as Re, ht as ze, i as Be, it as Ve, j as He, jt as Ue, k as We, kt as Ge, l as Ke, lt as qe, m as Je, mt as Ye, n as Xe, nt as Ze, ot as Qe, p as $e, pt as et, q as S, qt as C, r as tt, rt as nt, s as rt, st as it, t as at, tt as ot, u as st, ut as ct, v as lt, vt as ut, w as dt, wt as ft, x as pt, xt as mt, y as ht, yt as gt, zt as _t } from "./Invect-CUR_K7mH.js";
|
|
3
|
+
import w from "react";
|
|
4
|
+
import { useMutation as T, useQuery as E, useQueryClient as D } from "@tanstack/react-query";
|
|
5
|
+
import { Fragment as O, jsx as k, jsxs as A } from "react/jsx-runtime";
|
|
6
|
+
import { ChevronRight as vt, CircleIcon as yt } from "lucide-react";
|
|
7
|
+
import { createSlot as j } from "@radix-ui/react-slot";
|
|
8
|
+
import * as M from "@radix-ui/react-dropdown-menu";
|
|
9
9
|
//#region src/InvectShell.tsx
|
|
10
|
-
var
|
|
10
|
+
var N = w.memo(({ children: e, theme: t = "dark", className: n }) => /* @__PURE__ */ k(_, {
|
|
11
11
|
defaultTheme: t,
|
|
12
12
|
storageKey: "invect-ui-theme",
|
|
13
13
|
className: n,
|
|
14
14
|
children: e
|
|
15
15
|
}));
|
|
16
|
-
|
|
16
|
+
N.displayName = "InvectShell";
|
|
17
17
|
//#endregion
|
|
18
18
|
//#region src/stores/executionViewStore.ts
|
|
19
|
-
var
|
|
19
|
+
var P = {
|
|
20
20
|
activeFlowRunId: null,
|
|
21
21
|
activeFlowId: null,
|
|
22
22
|
selectedExecutionNodeId: null,
|
|
@@ -28,8 +28,8 @@ var N = {
|
|
|
28
28
|
sortOrder: "desc",
|
|
29
29
|
logsExpanded: !1,
|
|
30
30
|
selectedLogNodeId: null
|
|
31
|
-
},
|
|
32
|
-
...
|
|
31
|
+
}, F = Qe()(Ve(Ee(nt((e) => ({
|
|
32
|
+
...P,
|
|
33
33
|
setActiveExecution: (t, n) => e((e) => {
|
|
34
34
|
e.activeFlowId = t, e.activeFlowRunId = n, e.selectedExecutionNodeId = null, e.selectedLogNodeId = null;
|
|
35
35
|
}),
|
|
@@ -69,24 +69,24 @@ var N = {
|
|
|
69
69
|
selectLogNode: (t) => e((e) => {
|
|
70
70
|
e.selectedLogNodeId = t;
|
|
71
71
|
}),
|
|
72
|
-
reset: () => e(() => ({ ...
|
|
73
|
-
}))), { name: "execution-view" })),
|
|
72
|
+
reset: () => e(() => ({ ...P }))
|
|
73
|
+
}))), { name: "execution-view" })), bt = () => F((e) => e.activeFlowRunId), xt = () => F((e) => e.activeFlowId), St = () => F((e) => e.selectedExecutionNodeId), Ct = () => F((e) => e.statusFilter), wt = () => F((e) => ({
|
|
74
74
|
page: e.page,
|
|
75
75
|
limit: e.limit,
|
|
76
76
|
setPage: e.setPage,
|
|
77
77
|
setLimit: e.setLimit
|
|
78
|
-
})),
|
|
78
|
+
})), Tt = () => F((e) => ({
|
|
79
79
|
sortBy: e.sortBy,
|
|
80
80
|
sortOrder: e.sortOrder,
|
|
81
81
|
setSortBy: e.setSortBy,
|
|
82
82
|
setSortOrder: e.setSortOrder
|
|
83
|
-
})),
|
|
83
|
+
})), Et = () => F((e) => ({
|
|
84
84
|
logsExpanded: e.logsExpanded,
|
|
85
85
|
selectedLogNodeId: e.selectedLogNodeId,
|
|
86
86
|
toggleLogsExpanded: e.toggleLogsExpanded,
|
|
87
87
|
setLogsExpanded: e.setLogsExpanded,
|
|
88
88
|
selectLogNode: e.selectLogNode
|
|
89
|
-
})),
|
|
89
|
+
})), Dt = () => F((e) => ({
|
|
90
90
|
statusFilter: e.statusFilter,
|
|
91
91
|
flowIdFilter: e.flowIdFilter,
|
|
92
92
|
setStatusFilter: e.setStatusFilter,
|
|
@@ -95,80 +95,80 @@ var N = {
|
|
|
95
95
|
}));
|
|
96
96
|
//#endregion
|
|
97
97
|
//#region src/api/triggers.api.ts
|
|
98
|
-
function
|
|
98
|
+
function Ot(e) {
|
|
99
99
|
let t = b();
|
|
100
|
-
return
|
|
101
|
-
queryKey:
|
|
100
|
+
return E({
|
|
101
|
+
queryKey: C.triggers(e),
|
|
102
102
|
queryFn: () => t.listTriggersForFlow(e),
|
|
103
103
|
enabled: !!e,
|
|
104
104
|
staleTime: 1e3 * 30
|
|
105
105
|
});
|
|
106
106
|
}
|
|
107
|
-
function
|
|
107
|
+
function kt(e) {
|
|
108
108
|
let t = b();
|
|
109
|
-
return
|
|
110
|
-
queryKey:
|
|
109
|
+
return E({
|
|
110
|
+
queryKey: C.trigger(e),
|
|
111
111
|
queryFn: () => t.getTrigger(e),
|
|
112
112
|
enabled: !!e
|
|
113
113
|
});
|
|
114
114
|
}
|
|
115
|
-
function
|
|
116
|
-
let e = b(), t =
|
|
117
|
-
return
|
|
115
|
+
function At() {
|
|
116
|
+
let e = b(), t = D();
|
|
117
|
+
return T({
|
|
118
118
|
mutationFn: ({ flowId: t, input: n }) => e.createTrigger(t, n),
|
|
119
119
|
onSuccess: (e, { flowId: n }) => {
|
|
120
|
-
t.invalidateQueries({ queryKey:
|
|
120
|
+
t.invalidateQueries({ queryKey: C.triggers(n) });
|
|
121
121
|
},
|
|
122
122
|
onError: (e) => {
|
|
123
|
-
console.error("Error creating trigger:",
|
|
123
|
+
console.error("Error creating trigger:", y(e));
|
|
124
124
|
}
|
|
125
125
|
});
|
|
126
126
|
}
|
|
127
|
-
function
|
|
128
|
-
let e = b(), t =
|
|
129
|
-
return
|
|
127
|
+
function jt() {
|
|
128
|
+
let e = b(), t = D();
|
|
129
|
+
return T({
|
|
130
130
|
mutationFn: ({ triggerId: t, input: n }) => e.updateTrigger(t, n),
|
|
131
131
|
onSuccess: (e, { triggerId: n, flowId: r }) => {
|
|
132
|
-
t.invalidateQueries({ queryKey:
|
|
132
|
+
t.invalidateQueries({ queryKey: C.trigger(n) }), t.invalidateQueries({ queryKey: C.triggers(r) });
|
|
133
133
|
},
|
|
134
134
|
onError: (e) => {
|
|
135
|
-
console.error("Error updating trigger:",
|
|
135
|
+
console.error("Error updating trigger:", y(e));
|
|
136
136
|
}
|
|
137
137
|
});
|
|
138
138
|
}
|
|
139
|
-
function
|
|
140
|
-
let e = b(), t =
|
|
141
|
-
return
|
|
139
|
+
function Mt() {
|
|
140
|
+
let e = b(), t = D();
|
|
141
|
+
return T({
|
|
142
142
|
mutationFn: ({ triggerId: t }) => e.deleteTrigger(t),
|
|
143
143
|
onSuccess: (e, { flowId: n }) => {
|
|
144
|
-
t.invalidateQueries({ queryKey:
|
|
144
|
+
t.invalidateQueries({ queryKey: C.triggers(n) });
|
|
145
145
|
},
|
|
146
146
|
onError: (e) => {
|
|
147
|
-
console.error("Error deleting trigger:",
|
|
147
|
+
console.error("Error deleting trigger:", y(e));
|
|
148
148
|
}
|
|
149
149
|
});
|
|
150
150
|
}
|
|
151
|
-
function
|
|
152
|
-
let e = b(), t =
|
|
153
|
-
return
|
|
151
|
+
function Nt() {
|
|
152
|
+
let e = b(), t = D();
|
|
153
|
+
return T({
|
|
154
154
|
mutationFn: ({ flowId: t, definition: n }) => e.syncTriggersForFlow(t, n),
|
|
155
155
|
onSuccess: (e, { flowId: n }) => {
|
|
156
|
-
t.invalidateQueries({ queryKey:
|
|
156
|
+
t.invalidateQueries({ queryKey: C.triggers(n) });
|
|
157
157
|
},
|
|
158
158
|
onError: (e) => {
|
|
159
|
-
console.error("Error syncing triggers:",
|
|
159
|
+
console.error("Error syncing triggers:", y(e));
|
|
160
160
|
}
|
|
161
161
|
});
|
|
162
162
|
}
|
|
163
163
|
//#endregion
|
|
164
164
|
//#region ../../node_modules/.pnpm/@radix-ui+react-collection@1.1.7_@types+react-dom@18.3.7_@types+react@18.3.7__@types+re_9c54a6c78143ba4955bf0911e594a119/node_modules/@radix-ui/react-collection/dist/index.mjs
|
|
165
|
-
function
|
|
165
|
+
function Pt(e) {
|
|
166
166
|
let t = e + "CollectionProvider", [n, r] = f(t), [i, a] = n(t, {
|
|
167
167
|
collectionRef: { current: null },
|
|
168
168
|
itemMap: /* @__PURE__ */ new Map()
|
|
169
169
|
}), o = (e) => {
|
|
170
|
-
let { scope: t, children: n } = e, r =
|
|
171
|
-
return /* @__PURE__ */
|
|
170
|
+
let { scope: t, children: n } = e, r = w.useRef(null), a = w.useRef(/* @__PURE__ */ new Map()).current;
|
|
171
|
+
return /* @__PURE__ */ k(i, {
|
|
172
172
|
scope: t,
|
|
173
173
|
itemMap: a,
|
|
174
174
|
collectionRef: r,
|
|
@@ -176,20 +176,20 @@ function Ft(e) {
|
|
|
176
176
|
});
|
|
177
177
|
};
|
|
178
178
|
o.displayName = t;
|
|
179
|
-
let s = e + "CollectionSlot", c =
|
|
179
|
+
let s = e + "CollectionSlot", c = j(s), l = w.forwardRef((e, t) => {
|
|
180
180
|
let { scope: n, children: r } = e;
|
|
181
|
-
return /* @__PURE__ */
|
|
181
|
+
return /* @__PURE__ */ k(c, {
|
|
182
182
|
ref: v(t, a(s, n).collectionRef),
|
|
183
183
|
children: r
|
|
184
184
|
});
|
|
185
185
|
});
|
|
186
186
|
l.displayName = s;
|
|
187
|
-
let u = e + "CollectionItemSlot", d = "data-radix-collection-item", p =
|
|
188
|
-
let { scope: n, children: r, ...i } = e, o =
|
|
189
|
-
return
|
|
187
|
+
let u = e + "CollectionItemSlot", d = "data-radix-collection-item", p = j(u), m = w.forwardRef((e, t) => {
|
|
188
|
+
let { scope: n, children: r, ...i } = e, o = w.useRef(null), s = v(t, o), c = a(u, n);
|
|
189
|
+
return w.useEffect(() => (c.itemMap.set(o, {
|
|
190
190
|
ref: o,
|
|
191
191
|
...i
|
|
192
|
-
}), () => void c.itemMap.delete(o))), /* @__PURE__ */
|
|
192
|
+
}), () => void c.itemMap.delete(o))), /* @__PURE__ */ k(p, {
|
|
193
193
|
[d]: "",
|
|
194
194
|
ref: s,
|
|
195
195
|
children: r
|
|
@@ -198,7 +198,7 @@ function Ft(e) {
|
|
|
198
198
|
m.displayName = u;
|
|
199
199
|
function h(t) {
|
|
200
200
|
let n = a(e + "CollectionConsumer", t);
|
|
201
|
-
return
|
|
201
|
+
return w.useCallback(() => {
|
|
202
202
|
let e = n.collectionRef.current;
|
|
203
203
|
if (!e) return [];
|
|
204
204
|
let t = Array.from(e.querySelectorAll(`[${d}]`));
|
|
@@ -217,72 +217,72 @@ function Ft(e) {
|
|
|
217
217
|
}
|
|
218
218
|
//#endregion
|
|
219
219
|
//#region ../../node_modules/.pnpm/@radix-ui+react-accordion@1.2.12_@types+react-dom@18.3.7_@types+react@18.3.7__@types+re_38986d0a8e303276d4d07a19b1e5d4a9/node_modules/@radix-ui/react-accordion/dist/index.mjs
|
|
220
|
-
var
|
|
220
|
+
var I = "Accordion", Ft = [
|
|
221
221
|
"Home",
|
|
222
222
|
"End",
|
|
223
223
|
"ArrowDown",
|
|
224
224
|
"ArrowUp",
|
|
225
225
|
"ArrowLeft",
|
|
226
226
|
"ArrowRight"
|
|
227
|
-
], [
|
|
227
|
+
], [L, It, Lt] = Pt(I), [R, Rt] = f(I, [Lt, Ae]), z = Ae(), B = w.forwardRef((e, t) => {
|
|
228
228
|
let { type: n, ...r } = e, i = r, a = r;
|
|
229
|
-
return /* @__PURE__ */
|
|
229
|
+
return /* @__PURE__ */ k(L.Provider, {
|
|
230
230
|
scope: e.__scopeAccordion,
|
|
231
|
-
children: n === "multiple" ? /* @__PURE__ */
|
|
231
|
+
children: n === "multiple" ? /* @__PURE__ */ k(Ht, {
|
|
232
232
|
...a,
|
|
233
233
|
ref: t
|
|
234
|
-
}) : /* @__PURE__ */
|
|
234
|
+
}) : /* @__PURE__ */ k(Vt, {
|
|
235
235
|
...i,
|
|
236
236
|
ref: t
|
|
237
237
|
})
|
|
238
238
|
});
|
|
239
239
|
});
|
|
240
|
-
|
|
241
|
-
var [
|
|
240
|
+
B.displayName = I;
|
|
241
|
+
var [V, zt] = R(I), [H, Bt] = R(I, { collapsible: !1 }), Vt = w.forwardRef((e, t) => {
|
|
242
242
|
let { value: n, defaultValue: r, onValueChange: i = () => {}, collapsible: a = !1, ...o } = e, [s, c] = d({
|
|
243
243
|
prop: n,
|
|
244
244
|
defaultProp: r ?? "",
|
|
245
245
|
onChange: i,
|
|
246
|
-
caller:
|
|
246
|
+
caller: I
|
|
247
247
|
});
|
|
248
|
-
return /* @__PURE__ */
|
|
248
|
+
return /* @__PURE__ */ k(V, {
|
|
249
249
|
scope: e.__scopeAccordion,
|
|
250
|
-
value:
|
|
250
|
+
value: w.useMemo(() => s ? [s] : [], [s]),
|
|
251
251
|
onItemOpen: c,
|
|
252
|
-
onItemClose:
|
|
253
|
-
children: /* @__PURE__ */
|
|
252
|
+
onItemClose: w.useCallback(() => a && c(""), [a, c]),
|
|
253
|
+
children: /* @__PURE__ */ k(H, {
|
|
254
254
|
scope: e.__scopeAccordion,
|
|
255
255
|
collapsible: a,
|
|
256
|
-
children: /* @__PURE__ */
|
|
256
|
+
children: /* @__PURE__ */ k(W, {
|
|
257
257
|
...o,
|
|
258
258
|
ref: t
|
|
259
259
|
})
|
|
260
260
|
})
|
|
261
261
|
});
|
|
262
|
-
}),
|
|
262
|
+
}), Ht = w.forwardRef((e, t) => {
|
|
263
263
|
let { value: n, defaultValue: r, onValueChange: i = () => {}, ...a } = e, [o, s] = d({
|
|
264
264
|
prop: n,
|
|
265
265
|
defaultProp: r ?? [],
|
|
266
266
|
onChange: i,
|
|
267
|
-
caller:
|
|
268
|
-
}), c =
|
|
269
|
-
return /* @__PURE__ */
|
|
267
|
+
caller: I
|
|
268
|
+
}), c = w.useCallback((e) => s((t = []) => [...t, e]), [s]), l = w.useCallback((e) => s((t = []) => t.filter((t) => t !== e)), [s]);
|
|
269
|
+
return /* @__PURE__ */ k(V, {
|
|
270
270
|
scope: e.__scopeAccordion,
|
|
271
271
|
value: o,
|
|
272
272
|
onItemOpen: c,
|
|
273
273
|
onItemClose: l,
|
|
274
|
-
children: /* @__PURE__ */
|
|
274
|
+
children: /* @__PURE__ */ k(H, {
|
|
275
275
|
scope: e.__scopeAccordion,
|
|
276
276
|
collapsible: !0,
|
|
277
|
-
children: /* @__PURE__ */
|
|
277
|
+
children: /* @__PURE__ */ k(W, {
|
|
278
278
|
...a,
|
|
279
279
|
ref: t
|
|
280
280
|
})
|
|
281
281
|
})
|
|
282
282
|
});
|
|
283
|
-
}), [
|
|
284
|
-
let { __scopeAccordion: n, disabled: r, dir: i, orientation: a = "vertical", ...o } = e, s = v(
|
|
285
|
-
if (!
|
|
283
|
+
}), [Ut, U] = R(I), W = w.forwardRef((e, t) => {
|
|
284
|
+
let { __scopeAccordion: n, disabled: r, dir: i, orientation: a = "vertical", ...o } = e, s = v(w.useRef(null), t), c = It(n), l = _e(i) === "ltr", u = me(e.onKeyDown, (e) => {
|
|
285
|
+
if (!Ft.includes(e.key)) return;
|
|
286
286
|
let t = e.target, n = c().filter((e) => !e.ref.current?.disabled), r = n.findIndex((e) => e.ref.current === t), i = n.length;
|
|
287
287
|
if (r === -1) return;
|
|
288
288
|
e.preventDefault();
|
|
@@ -313,14 +313,14 @@ var [B, Bt] = L(F), [V, Vt] = L(F, { collapsible: !1 }), Ht = C.forwardRef((e, t
|
|
|
313
313
|
}
|
|
314
314
|
n[o % i].ref.current?.focus();
|
|
315
315
|
});
|
|
316
|
-
return /* @__PURE__ */
|
|
316
|
+
return /* @__PURE__ */ k(Ut, {
|
|
317
317
|
scope: n,
|
|
318
318
|
disabled: r,
|
|
319
319
|
direction: i,
|
|
320
320
|
orientation: a,
|
|
321
|
-
children: /* @__PURE__ */
|
|
321
|
+
children: /* @__PURE__ */ k(L.Slot, {
|
|
322
322
|
scope: n,
|
|
323
|
-
children: /* @__PURE__ */
|
|
323
|
+
children: /* @__PURE__ */ k(S.div, {
|
|
324
324
|
...o,
|
|
325
325
|
"data-orientation": a,
|
|
326
326
|
ref: s,
|
|
@@ -328,14 +328,14 @@ var [B, Bt] = L(F), [V, Vt] = L(F, { collapsible: !1 }), Ht = C.forwardRef((e, t
|
|
|
328
328
|
})
|
|
329
329
|
})
|
|
330
330
|
});
|
|
331
|
-
}),
|
|
332
|
-
let { __scopeAccordion: n, value: r, ...i } = e, a =
|
|
333
|
-
return /* @__PURE__ */
|
|
331
|
+
}), G = "AccordionItem", [Wt, K] = R(G), q = w.forwardRef((e, t) => {
|
|
332
|
+
let { __scopeAccordion: n, value: r, ...i } = e, a = U(G, n), o = zt(G, n), s = z(n), c = m(), l = r && o.value.includes(r) || !1, u = a.disabled || e.disabled;
|
|
333
|
+
return /* @__PURE__ */ k(Wt, {
|
|
334
334
|
scope: n,
|
|
335
335
|
open: l,
|
|
336
336
|
disabled: u,
|
|
337
337
|
triggerId: c,
|
|
338
|
-
children: /* @__PURE__ */
|
|
338
|
+
children: /* @__PURE__ */ k(Ke, {
|
|
339
339
|
"data-orientation": a.orientation,
|
|
340
340
|
"data-state": qt(l),
|
|
341
341
|
...s,
|
|
@@ -349,10 +349,10 @@ var [B, Bt] = L(F), [V, Vt] = L(F, { collapsible: !1 }), Ht = C.forwardRef((e, t
|
|
|
349
349
|
})
|
|
350
350
|
});
|
|
351
351
|
});
|
|
352
|
-
|
|
353
|
-
var
|
|
354
|
-
let { __scopeAccordion: n, ...r } = e, i =
|
|
355
|
-
return /* @__PURE__ */
|
|
352
|
+
q.displayName = G;
|
|
353
|
+
var J = "AccordionHeader", Y = w.forwardRef((e, t) => {
|
|
354
|
+
let { __scopeAccordion: n, ...r } = e, i = U(I, n), a = K(J, n);
|
|
355
|
+
return /* @__PURE__ */ k(S.h3, {
|
|
356
356
|
"data-orientation": i.orientation,
|
|
357
357
|
"data-state": qt(a.open),
|
|
358
358
|
"data-disabled": a.disabled ? "" : void 0,
|
|
@@ -360,12 +360,12 @@ var q = "AccordionHeader", J = C.forwardRef((e, t) => {
|
|
|
360
360
|
ref: t
|
|
361
361
|
});
|
|
362
362
|
});
|
|
363
|
-
|
|
364
|
-
var
|
|
365
|
-
let { __scopeAccordion: n, ...r } = e, i =
|
|
366
|
-
return /* @__PURE__ */
|
|
363
|
+
Y.displayName = J;
|
|
364
|
+
var X = "AccordionTrigger", Z = w.forwardRef((e, t) => {
|
|
365
|
+
let { __scopeAccordion: n, ...r } = e, i = U(I, n), a = K(X, n), o = Bt(X, n), s = z(n);
|
|
366
|
+
return /* @__PURE__ */ k(L.ItemSlot, {
|
|
367
367
|
scope: n,
|
|
368
|
-
children: /* @__PURE__ */
|
|
368
|
+
children: /* @__PURE__ */ k(st, {
|
|
369
369
|
"aria-disabled": a.open && !o.collapsible || void 0,
|
|
370
370
|
"data-orientation": i.orientation,
|
|
371
371
|
id: a.triggerId,
|
|
@@ -375,10 +375,10 @@ var Y = "AccordionTrigger", X = C.forwardRef((e, t) => {
|
|
|
375
375
|
})
|
|
376
376
|
});
|
|
377
377
|
});
|
|
378
|
-
|
|
379
|
-
var
|
|
380
|
-
let { __scopeAccordion: n, ...r } = e, i =
|
|
381
|
-
return /* @__PURE__ */
|
|
378
|
+
Z.displayName = X;
|
|
379
|
+
var Gt = "AccordionContent", Kt = w.forwardRef((e, t) => {
|
|
380
|
+
let { __scopeAccordion: n, ...r } = e, i = U(I, n), a = K(Gt, n), o = z(n);
|
|
381
|
+
return /* @__PURE__ */ k(Oe, {
|
|
382
382
|
role: "region",
|
|
383
383
|
"aria-labelledby": a.triggerId,
|
|
384
384
|
"data-orientation": i.orientation,
|
|
@@ -392,24 +392,24 @@ var Z = "AccordionContent", Kt = C.forwardRef((e, t) => {
|
|
|
392
392
|
}
|
|
393
393
|
});
|
|
394
394
|
});
|
|
395
|
-
Kt.displayName =
|
|
395
|
+
Kt.displayName = Gt;
|
|
396
396
|
function qt(e) {
|
|
397
397
|
return e ? "open" : "closed";
|
|
398
398
|
}
|
|
399
|
-
var Jt =
|
|
399
|
+
var Jt = B, Yt = q, Xt = Y, Zt = Z, Qt = Kt;
|
|
400
400
|
//#endregion
|
|
401
401
|
//#region src/components/ui/tree-view.tsx
|
|
402
402
|
function $t(e, t) {
|
|
403
403
|
return t ? { backgroundColor: "color-mix(in srgb, var(--imp-primary, #5B5BD6) 15%, transparent)" } : e ? { backgroundColor: "var(--imp-accent, #ededf7)" } : {};
|
|
404
404
|
}
|
|
405
|
-
var
|
|
406
|
-
let [d, f] =
|
|
405
|
+
var en = "group relative rounded-md px-2 cursor-pointer transition-colors", tn = "imp-tree-item-hover", nn = "font-medium", rn = w.forwardRef(({ data: e, initialSelectedItemId: t, onSelectChange: n, expandAll: r, defaultLeafIcon: i, defaultNodeIcon: a, className: o, onDocumentDrag: s, renderItem: c, ...l }, u) => {
|
|
406
|
+
let [d, f] = w.useState(t), [p, m] = w.useState(null), h = w.useCallback((e) => {
|
|
407
407
|
f(e?.id), n && n(e);
|
|
408
|
-
}, [n]), g =
|
|
408
|
+
}, [n]), g = w.useCallback((e) => {
|
|
409
409
|
m(e);
|
|
410
|
-
}, []), _ =
|
|
410
|
+
}, []), _ = w.useCallback((e) => {
|
|
411
411
|
p && s && p.id !== e.id && s(p, e), m(null);
|
|
412
|
-
}, [p, s]), v =
|
|
412
|
+
}, [p, s]), v = w.useMemo(() => {
|
|
413
413
|
if (!t) return [];
|
|
414
414
|
let n = [];
|
|
415
415
|
function i(e, t) {
|
|
@@ -426,9 +426,9 @@ var Q = "group relative rounded-md px-2 cursor-pointer transition-colors", en =
|
|
|
426
426
|
r,
|
|
427
427
|
t
|
|
428
428
|
]);
|
|
429
|
-
return /* @__PURE__ */
|
|
429
|
+
return /* @__PURE__ */ A("div", {
|
|
430
430
|
className: x("overflow-hidden relative p-2", o),
|
|
431
|
-
children: [/* @__PURE__ */
|
|
431
|
+
children: [/* @__PURE__ */ k(Q, {
|
|
432
432
|
data: e,
|
|
433
433
|
ref: u,
|
|
434
434
|
selectedItemId: d,
|
|
@@ -442,7 +442,7 @@ var Q = "group relative rounded-md px-2 cursor-pointer transition-colors", en =
|
|
|
442
442
|
renderItem: c,
|
|
443
443
|
level: 0,
|
|
444
444
|
...l
|
|
445
|
-
}), /* @__PURE__ */
|
|
445
|
+
}), /* @__PURE__ */ k("div", {
|
|
446
446
|
className: "w-full h-12",
|
|
447
447
|
onDrop: () => {
|
|
448
448
|
_({
|
|
@@ -453,15 +453,15 @@ var Q = "group relative rounded-md px-2 cursor-pointer transition-colors", en =
|
|
|
453
453
|
})]
|
|
454
454
|
});
|
|
455
455
|
});
|
|
456
|
-
|
|
457
|
-
var
|
|
456
|
+
rn.displayName = "TreeView";
|
|
457
|
+
var Q = w.forwardRef(({ className: e, data: t, selectedItemId: n, handleSelectChange: r, expandedItemIds: i, defaultNodeIcon: a, defaultLeafIcon: o, handleDragStart: s, handleDrop: c, draggedItem: l, renderItem: u, level: d, onSelectChange: f, expandAll: p, initialSelectedItemId: m, onDocumentDrag: h, ...g }, _) => {
|
|
458
458
|
let v = t;
|
|
459
|
-
return Array.isArray(v) || (v = [v]), /* @__PURE__ */
|
|
459
|
+
return Array.isArray(v) || (v = [v]), /* @__PURE__ */ k("div", {
|
|
460
460
|
ref: _,
|
|
461
461
|
role: "tree",
|
|
462
462
|
className: e,
|
|
463
463
|
...g,
|
|
464
|
-
children: /* @__PURE__ */
|
|
464
|
+
children: /* @__PURE__ */ k("ul", { children: v.map((e) => /* @__PURE__ */ k("li", { children: e.children ? /* @__PURE__ */ k(an, {
|
|
465
465
|
item: e,
|
|
466
466
|
level: d ?? 0,
|
|
467
467
|
selectedItemId: n,
|
|
@@ -473,7 +473,7 @@ var $ = C.forwardRef(({ className: e, data: t, selectedItemId: n, handleSelectCh
|
|
|
473
473
|
handleDrop: c,
|
|
474
474
|
draggedItem: l,
|
|
475
475
|
renderItem: u
|
|
476
|
-
}) : /* @__PURE__ */
|
|
476
|
+
}) : /* @__PURE__ */ k(on, {
|
|
477
477
|
item: e,
|
|
478
478
|
level: d ?? 0,
|
|
479
479
|
selectedItemId: n,
|
|
@@ -486,17 +486,17 @@ var $ = C.forwardRef(({ className: e, data: t, selectedItemId: n, handleSelectCh
|
|
|
486
486
|
}) }, e.id)) })
|
|
487
487
|
});
|
|
488
488
|
});
|
|
489
|
-
|
|
490
|
-
var
|
|
491
|
-
let [d, f] =
|
|
492
|
-
return /* @__PURE__ */
|
|
489
|
+
Q.displayName = "TreeItem";
|
|
490
|
+
var an = ({ item: e, handleSelectChange: t, expandedItemIds: n, selectedItemId: r, defaultNodeIcon: i, defaultLeafIcon: a, handleDragStart: o, handleDrop: s, draggedItem: c, renderItem: l, level: u = 0 }) => {
|
|
491
|
+
let [d, f] = w.useState(n.includes(e.id) ? [e.id] : []), [p, m] = w.useState(!1), h = !!e.children?.length, g = r === e.id, _ = d.includes(e.id);
|
|
492
|
+
return /* @__PURE__ */ k(Jt, {
|
|
493
493
|
type: "multiple",
|
|
494
494
|
value: d,
|
|
495
495
|
onValueChange: (e) => f(e),
|
|
496
|
-
children: /* @__PURE__ */
|
|
496
|
+
children: /* @__PURE__ */ A(Yt, {
|
|
497
497
|
value: e.id,
|
|
498
|
-
children: [/* @__PURE__ */
|
|
499
|
-
className: x(
|
|
498
|
+
children: [/* @__PURE__ */ k(sn, {
|
|
499
|
+
className: x(en, tn, g && nn, e.className),
|
|
500
500
|
style: $t(g, p),
|
|
501
501
|
onClick: () => {
|
|
502
502
|
t(e), e.onClick?.();
|
|
@@ -525,30 +525,30 @@ var rn = ({ item: e, handleSelectChange: t, expandedItemIds: n, selectedItemId:
|
|
|
525
525
|
isSelected: g,
|
|
526
526
|
isOpen: _,
|
|
527
527
|
hasChildren: h
|
|
528
|
-
}) : /* @__PURE__ */
|
|
529
|
-
/* @__PURE__ */
|
|
528
|
+
}) : /* @__PURE__ */ A(O, { children: [
|
|
529
|
+
/* @__PURE__ */ k(ln, {
|
|
530
530
|
item: e,
|
|
531
531
|
isSelected: g,
|
|
532
532
|
isOpen: _,
|
|
533
533
|
default: i
|
|
534
534
|
}),
|
|
535
|
-
/* @__PURE__ */
|
|
535
|
+
/* @__PURE__ */ k("span", {
|
|
536
536
|
className: "min-w-0 flex-1 text-sm truncate",
|
|
537
537
|
title: e.name,
|
|
538
538
|
children: e.name
|
|
539
539
|
}),
|
|
540
|
-
e.trailingContent ? /* @__PURE__ */
|
|
540
|
+
e.trailingContent ? /* @__PURE__ */ k("span", {
|
|
541
541
|
className: "ml-2 shrink-0",
|
|
542
542
|
children: e.trailingContent
|
|
543
543
|
}) : null,
|
|
544
|
-
/* @__PURE__ */
|
|
544
|
+
/* @__PURE__ */ k($, {
|
|
545
545
|
isSelected: g,
|
|
546
546
|
children: e.actions
|
|
547
547
|
})
|
|
548
548
|
] })
|
|
549
|
-
}), /* @__PURE__ */
|
|
549
|
+
}), /* @__PURE__ */ k(cn, {
|
|
550
550
|
className: x("ml-4 pl-1 border-l border-imp-border", e.childContainerClassName),
|
|
551
|
-
children: /* @__PURE__ */
|
|
551
|
+
children: /* @__PURE__ */ k(Q, {
|
|
552
552
|
data: e.children ? e.children : e,
|
|
553
553
|
selectedItemId: r,
|
|
554
554
|
handleSelectChange: t,
|
|
@@ -564,11 +564,11 @@ var rn = ({ item: e, handleSelectChange: t, expandedItemIds: n, selectedItemId:
|
|
|
564
564
|
})]
|
|
565
565
|
})
|
|
566
566
|
});
|
|
567
|
-
},
|
|
568
|
-
let [f, p] =
|
|
569
|
-
return /* @__PURE__ */
|
|
567
|
+
}, on = w.forwardRef(({ className: e, item: t, level: n, selectedItemId: r, handleSelectChange: i, defaultLeafIcon: a, handleDragStart: o, handleDrop: s, draggedItem: c, renderItem: l, ...u }, d) => {
|
|
568
|
+
let [f, p] = w.useState(!1), m = r === t.id;
|
|
569
|
+
return /* @__PURE__ */ k("div", {
|
|
570
570
|
ref: d,
|
|
571
|
-
className: x("ml-5 flex items-center py-2 text-left cursor-pointer",
|
|
571
|
+
className: x("ml-5 flex items-center py-2 text-left cursor-pointer", en, tn, e, m && nn, t.disabled && "opacity-50 cursor-not-allowed pointer-events-none", t.className),
|
|
572
572
|
style: $t(m, f),
|
|
573
573
|
onClick: () => {
|
|
574
574
|
t.disabled || (i(t), t.onClick?.());
|
|
@@ -591,78 +591,78 @@ var rn = ({ item: e, handleSelectChange: t, expandedItemIds: n, selectedItemId:
|
|
|
591
591
|
t.disabled || (e.preventDefault(), p(!1), s?.(t));
|
|
592
592
|
},
|
|
593
593
|
...u,
|
|
594
|
-
children: l ? /* @__PURE__ */
|
|
594
|
+
children: l ? /* @__PURE__ */ A(O, { children: [/* @__PURE__ */ k("div", { className: "h-4 w-4 shrink-0 mr-1" }), l({
|
|
595
595
|
item: t,
|
|
596
596
|
level: n,
|
|
597
597
|
isLeaf: !0,
|
|
598
598
|
isSelected: m,
|
|
599
599
|
hasChildren: !1
|
|
600
|
-
})] }) : /* @__PURE__ */
|
|
601
|
-
/* @__PURE__ */
|
|
600
|
+
})] }) : /* @__PURE__ */ A(O, { children: [
|
|
601
|
+
/* @__PURE__ */ k(ln, {
|
|
602
602
|
item: t,
|
|
603
603
|
isSelected: m,
|
|
604
604
|
default: a
|
|
605
605
|
}),
|
|
606
|
-
/* @__PURE__ */
|
|
606
|
+
/* @__PURE__ */ k("span", {
|
|
607
607
|
className: "grow min-w-0 text-sm truncate",
|
|
608
608
|
title: t.name,
|
|
609
609
|
children: t.name
|
|
610
610
|
}),
|
|
611
|
-
t.trailingContent ? /* @__PURE__ */
|
|
611
|
+
t.trailingContent ? /* @__PURE__ */ k("span", {
|
|
612
612
|
className: "ml-2 shrink-0",
|
|
613
613
|
children: t.trailingContent
|
|
614
614
|
}) : null,
|
|
615
|
-
/* @__PURE__ */
|
|
615
|
+
/* @__PURE__ */ k($, {
|
|
616
616
|
isSelected: m && !t.disabled,
|
|
617
617
|
children: t.actions
|
|
618
618
|
})
|
|
619
619
|
] })
|
|
620
620
|
});
|
|
621
621
|
});
|
|
622
|
-
|
|
623
|
-
var
|
|
622
|
+
on.displayName = "TreeLeaf";
|
|
623
|
+
var sn = w.forwardRef(({ className: e, children: t, ...n }, r) => /* @__PURE__ */ k(Xt, { children: /* @__PURE__ */ A(Zt, {
|
|
624
624
|
ref: r,
|
|
625
625
|
className: x("flex w-full flex-1 items-center py-2 text-left transition-all first:[&[data-state=open]>svg]:first-of-type:rotate-90", e),
|
|
626
626
|
...n,
|
|
627
|
-
children: [/* @__PURE__ */
|
|
627
|
+
children: [/* @__PURE__ */ k(vt, { className: "mr-1 h-4 w-4 shrink-0 text-accent-foreground/50 transition-transform duration-200" }), t]
|
|
628
628
|
}) }));
|
|
629
|
-
|
|
630
|
-
var
|
|
629
|
+
sn.displayName = Zt.displayName;
|
|
630
|
+
var cn = w.forwardRef(({ className: e, children: t, ...n }, r) => /* @__PURE__ */ k(Qt, {
|
|
631
631
|
ref: r,
|
|
632
632
|
className: x("overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down", e),
|
|
633
633
|
...n,
|
|
634
|
-
children: /* @__PURE__ */
|
|
634
|
+
children: /* @__PURE__ */ k("div", {
|
|
635
635
|
className: "pb-1 pt-0",
|
|
636
636
|
children: t
|
|
637
637
|
})
|
|
638
638
|
}));
|
|
639
|
-
|
|
640
|
-
var
|
|
639
|
+
cn.displayName = Qt.displayName;
|
|
640
|
+
var ln = ({ item: e, isOpen: t, isSelected: n, default: r }) => {
|
|
641
641
|
let i = r;
|
|
642
|
-
return n && e.selectedIcon ? i = e.selectedIcon : t && e.openIcon ? i = e.openIcon : e.icon && (i = e.icon), i ? /* @__PURE__ */
|
|
643
|
-
},
|
|
642
|
+
return n && e.selectedIcon ? i = e.selectedIcon : t && e.openIcon ? i = e.openIcon : e.icon && (i = e.icon), i ? /* @__PURE__ */ k(i, { className: "h-4 w-4 shrink-0 mr-2" }) : /* @__PURE__ */ k(O, {});
|
|
643
|
+
}, $ = ({ children: e, isSelected: t }) => /* @__PURE__ */ k("div", {
|
|
644
644
|
className: x(t ? "block" : "hidden", "absolute right-3 group-hover:block"),
|
|
645
645
|
children: e
|
|
646
646
|
});
|
|
647
647
|
//#endregion
|
|
648
648
|
//#region src/components/ui/dropdown-menu.tsx
|
|
649
649
|
function un({ ...e }) {
|
|
650
|
-
return /* @__PURE__ */
|
|
650
|
+
return /* @__PURE__ */ k(M.Root, {
|
|
651
651
|
"data-slot": "dropdown-menu",
|
|
652
652
|
...e
|
|
653
653
|
});
|
|
654
654
|
}
|
|
655
655
|
function dn({ ...e }) {
|
|
656
|
-
return /* @__PURE__ */
|
|
656
|
+
return /* @__PURE__ */ k(M.Trigger, {
|
|
657
657
|
"data-slot": "dropdown-menu-trigger",
|
|
658
658
|
...e
|
|
659
659
|
});
|
|
660
660
|
}
|
|
661
661
|
function fn({ className: e, sideOffset: t = 4, ...n }) {
|
|
662
|
-
let r =
|
|
663
|
-
return /* @__PURE__ */
|
|
662
|
+
let r = it();
|
|
663
|
+
return /* @__PURE__ */ k(M.Portal, { children: /* @__PURE__ */ k("div", {
|
|
664
664
|
className: r,
|
|
665
|
-
children: /* @__PURE__ */
|
|
665
|
+
children: /* @__PURE__ */ k(M.Content, {
|
|
666
666
|
"data-slot": "dropdown-menu-content",
|
|
667
667
|
sideOffset: t,
|
|
668
668
|
className: x("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md", e),
|
|
@@ -671,7 +671,7 @@ function fn({ className: e, sideOffset: t = 4, ...n }) {
|
|
|
671
671
|
}) });
|
|
672
672
|
}
|
|
673
673
|
function pn({ className: e, inset: t, variant: n = "default", ...r }) {
|
|
674
|
-
return /* @__PURE__ */
|
|
674
|
+
return /* @__PURE__ */ k(M.Item, {
|
|
675
675
|
"data-slot": "dropdown-menu-item",
|
|
676
676
|
"data-inset": t,
|
|
677
677
|
"data-variant": n,
|
|
@@ -680,24 +680,24 @@ function pn({ className: e, inset: t, variant: n = "default", ...r }) {
|
|
|
680
680
|
});
|
|
681
681
|
}
|
|
682
682
|
function mn({ ...e }) {
|
|
683
|
-
return /* @__PURE__ */
|
|
683
|
+
return /* @__PURE__ */ k(M.RadioGroup, {
|
|
684
684
|
"data-slot": "dropdown-menu-radio-group",
|
|
685
685
|
...e
|
|
686
686
|
});
|
|
687
687
|
}
|
|
688
688
|
function hn({ className: e, children: t, ...n }) {
|
|
689
|
-
return /* @__PURE__ */
|
|
689
|
+
return /* @__PURE__ */ A(M.RadioItem, {
|
|
690
690
|
"data-slot": "dropdown-menu-radio-item",
|
|
691
691
|
className: x("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", e),
|
|
692
692
|
...n,
|
|
693
|
-
children: [/* @__PURE__ */
|
|
693
|
+
children: [/* @__PURE__ */ k("span", {
|
|
694
694
|
className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",
|
|
695
|
-
children: /* @__PURE__ */
|
|
695
|
+
children: /* @__PURE__ */ k(M.ItemIndicator, { children: /* @__PURE__ */ k(yt, { className: "size-2 fill-current" }) })
|
|
696
696
|
}), t]
|
|
697
697
|
});
|
|
698
698
|
}
|
|
699
699
|
function gn({ className: e, inset: t, ...n }) {
|
|
700
|
-
return /* @__PURE__ */
|
|
700
|
+
return /* @__PURE__ */ k(M.Label, {
|
|
701
701
|
"data-slot": "dropdown-menu-label",
|
|
702
702
|
"data-inset": t,
|
|
703
703
|
className: x("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", e),
|
|
@@ -705,13 +705,13 @@ function gn({ className: e, inset: t, ...n }) {
|
|
|
705
705
|
});
|
|
706
706
|
}
|
|
707
707
|
function _n({ className: e, ...t }) {
|
|
708
|
-
return /* @__PURE__ */
|
|
708
|
+
return /* @__PURE__ */ k(M.Separator, {
|
|
709
709
|
"data-slot": "dropdown-menu-separator",
|
|
710
710
|
className: x("bg-border -mx-1 my-1 h-px", e),
|
|
711
711
|
...t
|
|
712
712
|
});
|
|
713
713
|
}
|
|
714
714
|
//#endregion
|
|
715
|
-
export {
|
|
715
|
+
export { t as ApiClient, be as ApiProvider, fe as Dialog, l as DialogClose, s as DialogContent, ie as DialogDescription, We as DialogFooter, n as DialogHeader, He as DialogOverlay, te as DialogPortal, re as DialogTitle, oe as DialogTrigger, un as DropdownMenu, fn as DropdownMenuContent, pn as DropdownMenuItem, gn as DropdownMenuLabel, mn as DropdownMenuRadioGroup, hn as DropdownMenuRadioItem, _n as DropdownMenuSeparator, dn as DropdownMenuTrigger, tt as FlowEditor, at as Invect, ke as InvectLoader, Xe as InvectLogo, N as InvectShell, rt as OAuth2CallbackHandler, ne as PageLayout, rn as TreeView, Me as ValidationError, y as getErrorMessage, C as queryKeys, xt as useActiveFlowId, bt as useActiveFlowRunId, g as useActiveModal, xe as useActiveSidebarTab, Be as useAgentTools, Ce as useApiBaseURL, b as useApiClient, h as useAvailableNodes, qe as useCancelFlowRun, Pe as useCreateCredential, mt as useCreateFlow, de as useCreateFlowVersion, o as useCreateFlowWithVersion, At as useCreateTrigger, $e as useCredential, Je as useCredentialUsage, Re as useCredentials, ft as useDashboardStats, Ie as useDeleteCredential, pe as useDeleteFlow, Mt as useDeleteTrigger, ct as useExecuteFlow, je as useExecuteFlowToNode, ee as useExecuteModelPrompt, le as useExecuteSqlQuery, Dt as useExecutionFilters, wt as useExecutionPagination, Tt as useExecutionSorting, F as useExecutionViewStore, u as useFlow, c as useFlowReactFlowData, Fe as useFlowRun, et as useFlowRuns, Ot as useFlowTriggers, ae as useFlowVersions, Ge as useFlows, we as useHandleOAuth2Callback, Ye as useLatestFlowRun, _t as useListAvailableModels, ze as useListFlowRuns, i as useListQueryDatabases, ge as useLoadFieldOptions, ye as useLogsPanelOpen, Et as useLogsState, Se as useModalData, ce as useModals, Le as useNodeExecutions, e as useNodeSidebarOpen, lt as useOAuth2Provider, ht as useOAuth2Providers, Te as usePauseFlowRun, se as usePluginRegistry, De as useRefreshOAuth2Credential, p as useResolveNodeDefinition, ut as useResumeFlowRun, St as useSelectedExecutionNodeId, Ne as useSidebarCollapsed, pt as useStartOAuth2Flow, Ct as useStatusFilter, Nt as useSyncTriggers, ue as useTestCredential, a as useTestCredentialRequest, he as useTestJsExpression, ve as useTestMapper, gt as useTestNode, kt as useTrigger, ot as useUIStore, dt as useUpdateCredential, r as useUpdateFlow, jt as useUpdateTrigger, Ue as useValidateFlow, Ze as useValidationPanelOpen };
|
|
716
716
|
|
|
717
717
|
//# sourceMappingURL=index.js.map
|