@sisense/sdk-ui 0.14.0 → 0.16.0
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/ai/api/chat-api-context.d.ts +12 -0
- package/dist/ai/api/chat-rest-api.d.ts +28 -0
- package/dist/ai/api/hooks.d.ts +74 -0
- package/dist/ai/api/types.d.ts +139 -0
- package/dist/ai/chat-box.d.ts +6 -0
- package/dist/ai/chat-frame.d.ts +8 -0
- package/dist/ai/chat-home.d.ts +2 -0
- package/dist/ai/chat-input.d.ts +7 -0
- package/dist/ai/chatbot-context.d.ts +11 -0
- package/dist/ai/chatbot.d.ts +27 -0
- package/dist/ai/data-topics/data-topic-item.d.ts +8 -0
- package/dist/ai/data-topics/data-topic-list.d.ts +10 -0
- package/dist/ai/data-topics/index.d.ts +2 -0
- package/dist/ai/icons/arrow-left-icon.d.ts +2 -0
- package/dist/ai/icons/clear-chat-icon.d.ts +2 -0
- package/dist/ai/icons/close-dialog-icon.d.ts +2 -0
- package/dist/ai/icons/expand-icon.d.ts +2 -0
- package/dist/ai/icons/info-icon.d.ts +2 -0
- package/dist/ai/icons/light-bulb-icon.d.ts +2 -0
- package/dist/ai/icons/loading-dots-icon.d.ts +2 -0
- package/dist/ai/icons/magic-wand-icon.d.ts +2 -0
- package/dist/ai/icons/message-icon.d.ts +2 -0
- package/dist/ai/icons/refresh-icon.d.ts +2 -0
- package/dist/ai/icons/sisense-logo.d.ts +2 -0
- package/dist/ai/icons/three-dots-icon.d.ts +2 -0
- package/dist/ai/index.d.ts +4 -0
- package/dist/ai/magic-wand-dropdown.d.ts +7 -0
- package/dist/ai/messages/chart-message-toolbar.d.ts +8 -0
- package/dist/ai/messages/chart-message.d.ts +8 -0
- package/dist/ai/messages/clear-history-message.d.ts +6 -0
- package/dist/ai/messages/get-widget-options.d.ts +13 -0
- package/dist/ai/messages/insights-message.d.ts +10 -0
- package/dist/ai/messages/jaql-element.d.ts +25 -0
- package/dist/ai/messages/message-list-resolver.d.ts +7 -0
- package/dist/ai/messages/message-resolver.d.ts +11 -0
- package/dist/ai/messages/text-message.d.ts +8 -0
- package/dist/ai/nav-back-button.d.ts +6 -0
- package/dist/ai/nlg-query-result.d.ts +20 -0
- package/dist/ai/suggestions/index.d.ts +4 -0
- package/dist/ai/suggestions/suggestion-dropdown-item.d.ts +7 -0
- package/dist/ai/suggestions/suggestion-dropdown-list.d.ts +7 -0
- package/dist/ai/suggestions/suggestion-item.d.ts +7 -0
- package/dist/ai/suggestions/suggestion-list-skeleton.d.ts +2 -0
- package/dist/ai/suggestions/suggestion-list.d.ts +7 -0
- package/dist/ai/suggestions/suggestions-with-intro.d.ts +8 -0
- package/dist/ai/toolbar.d.ts +8 -0
- package/dist/ai/use-chat-session.d.ts +22 -0
- package/dist/ai.d.ts +1 -0
- package/dist/ai.js +3390 -0
- package/dist/api/types/dashboard-dto.d.ts +5 -3
- package/dist/chart-data-options/coloring/consts.d.ts +3 -0
- package/dist/chart-data-options/coloring/utils.d.ts +6 -0
- package/dist/chart-data-options/get-translated-data-options.d.ts +6 -0
- package/dist/chart-options-processor/chart-options-service.d.ts +2 -74
- package/dist/chart-options-processor/translations/axis-section.d.ts +3 -1
- package/dist/chart-options-processor/translations/funnel-series.d.ts +1 -2
- package/dist/chart-options-processor/translations/legend-section.d.ts +2 -1
- package/dist/chart-options-processor/translations/pie-series.d.ts +1 -2
- package/dist/chart-options-processor/translations/translations-to-highcharts.d.ts +6 -2
- package/dist/charts/indicator/chart/indicator.d.ts +1 -1
- package/dist/charts/indicator/chart/ticker.d.ts +2 -2
- package/dist/charts/indicator/indicator-legacy-chart-options/default-options.d.ts +2 -1
- package/dist/charts/indicator/types.d.ts +47 -6
- package/dist/common/components/loading-indicator.d.ts +33 -0
- package/dist/common/icons/loading-icon.d.ts +6 -0
- package/dist/dashboard-widget/translate-dashboard-filters.d.ts +2 -2
- package/dist/dashboard-widget/translate-panel-color-format.d.ts +2 -2
- package/dist/dashboard-widget/translate-widget-data-options.d.ts +6 -6
- package/dist/dashboard-widget/translate-widget-filters.d.ts +4 -16
- package/dist/dashboard-widget/translate-widget-style-options.d.ts +1 -1
- package/dist/dashboard-widget/types.d.ts +21 -71
- package/dist/dashboard-widget/use-fetch-widget-dto-model.d.ts +7 -1
- package/dist/dashboard-widget/utils.d.ts +3 -3
- package/dist/filters/components/common/dropdown.d.ts +8 -0
- package/dist/filters/components/common/index.d.ts +4 -1
- package/dist/filters/components/common/radio.d.ts +7 -0
- package/dist/filters/components/common/triangle-indicator.d.ts +2 -0
- package/dist/filters/components/criteria-filter-tile/criteria-filter-display.d.ts +25 -0
- package/dist/filters/components/criteria-filter-tile/criteria-filter-menu.d.ts +22 -0
- package/dist/filters/components/criteria-filter-tile/criteria-filter-operations.d.ts +76 -0
- package/dist/filters/components/criteria-filter-tile/criteria-filter-tile.d.ts +44 -0
- package/dist/filters/components/criteria-filter-tile/index.d.ts +2 -0
- package/dist/filters/components/date-filter/date-filter/date-filter.d.ts +4 -0
- package/dist/filters/components/date-filter/date-range-filter-tile/date-range-filter-tile.d.ts +11 -3
- package/dist/filters/components/date-filter/date-range-filter-tile/use-date-limits.d.ts +2 -2
- package/dist/filters/components/filter-tile.d.ts +3 -0
- package/dist/filters/components/member-filter-tile/basic-member-filter-tile.d.ts +4 -0
- package/dist/filters/components/member-filter-tile/member-filter-tile.d.ts +3 -1
- package/dist/filters/components/member-filter-tile/members-reducer.d.ts +9 -1
- package/dist/filters/components/member-filter-tile/pill-section.d.ts +0 -1
- package/dist/filters/index.d.ts +1 -0
- package/dist/formulas/fetch-formula.d.ts +16 -0
- package/dist/formulas/index.d.ts +1 -0
- package/dist/formulas/use-get-shared-formula.d.ts +95 -0
- package/dist/highcharts-memorized.d.ts +4 -3
- package/dist/index.d.ts +3 -1
- package/dist/index.js +8974 -71500
- package/dist/models/dashboard/get-dashboard-models.d.ts +1 -1
- package/dist/models/dashboard/types.d.ts +1 -1
- package/dist/models/dashboard/use-get-dashboard-model.d.ts +1 -1
- package/dist/models/widget/get-widget-model.d.ts +4 -0
- package/dist/models/widget/index.d.ts +3 -1
- package/dist/models/widget/translate-widget.d.ts +1 -1
- package/dist/models/widget/use-get-widget-model.d.ts +102 -0
- package/dist/models/widget/widget-model.d.ts +122 -0
- package/dist/props.d.ts +30 -11
- package/dist/query/execute-query.d.ts +2 -0
- package/dist/query-execution/csv-query-state-reducer.d.ts +2 -0
- package/dist/query-execution/index.d.ts +4 -3
- package/dist/query-execution/query-state-reducer.d.ts +1 -58
- package/dist/query-execution/types.d.ts +190 -0
- package/dist/query-execution/use-execute-csv-query.d.ts +82 -0
- package/dist/query-execution/use-execute-query-by-widget-id.d.ts +2 -37
- package/dist/query-execution/use-execute-query.d.ts +8 -33
- package/dist/table/hooks/use-table-data.d.ts +5 -1
- package/dist/table/table.d.ts +3 -0
- package/dist/table-widget-5f3b1d03.js +64456 -0
- package/dist/themes/colors.d.ts +86 -0
- package/dist/translation/resources/en.d.ts +31 -0
- package/dist/translation/resources/index.d.ts +62 -0
- package/dist/types.d.ts +6 -0
- package/dist/utils/utility-types.d.ts +4 -0
- package/dist/widgets/common/drilldown-breadcrumbs/drilldown-breadcrumbs-navigation.d.ts +8 -0
- package/dist/widgets/common/drilldown-breadcrumbs/styled-buttons.d.ts +11 -0
- package/dist/widgets/common/widget-header-info-button.d.ts +8 -0
- package/dist/widgets/common/widget-header.d.ts +1 -1
- package/package.json +27 -8
- package/dist/models/widget/types.d.ts +0 -6
package/dist/ai.js
ADDED
|
@@ -0,0 +1,3390 @@
|
|
|
1
|
+
var Pt = Object.defineProperty, Mt = Object.defineProperties;
|
|
2
|
+
var Dt = Object.getOwnPropertyDescriptors;
|
|
3
|
+
var ne = Object.getOwnPropertySymbols;
|
|
4
|
+
var Me = Object.prototype.hasOwnProperty, De = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var we = Math.pow, pe = (t, e, r) => e in t ? Pt(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r, y = (t, e) => {
|
|
6
|
+
for (var r in e || (e = {}))
|
|
7
|
+
Me.call(e, r) && pe(t, r, e[r]);
|
|
8
|
+
if (ne)
|
|
9
|
+
for (var r of ne(e))
|
|
10
|
+
De.call(e, r) && pe(t, r, e[r]);
|
|
11
|
+
return t;
|
|
12
|
+
}, K = (t, e) => Mt(t, Dt(e));
|
|
13
|
+
var ze = (t, e) => {
|
|
14
|
+
var r = {};
|
|
15
|
+
for (var s in t)
|
|
16
|
+
Me.call(t, s) && e.indexOf(s) < 0 && (r[s] = t[s]);
|
|
17
|
+
if (t != null && ne)
|
|
18
|
+
for (var s of ne(t))
|
|
19
|
+
e.indexOf(s) < 0 && De.call(t, s) && (r[s] = t[s]);
|
|
20
|
+
return r;
|
|
21
|
+
};
|
|
22
|
+
var P = (t, e, r) => (pe(t, typeof e != "symbol" ? e + "" : e, r), r);
|
|
23
|
+
var D = (t, e, r) => new Promise((s, n) => {
|
|
24
|
+
var i = (u) => {
|
|
25
|
+
try {
|
|
26
|
+
l(r.next(u));
|
|
27
|
+
} catch (d) {
|
|
28
|
+
n(d);
|
|
29
|
+
}
|
|
30
|
+
}, a = (u) => {
|
|
31
|
+
try {
|
|
32
|
+
l(r.throw(u));
|
|
33
|
+
} catch (d) {
|
|
34
|
+
n(d);
|
|
35
|
+
}
|
|
36
|
+
}, l = (u) => u.done ? s(u.value) : Promise.resolve(u.value).then(i, a);
|
|
37
|
+
l((r = r.apply(t, e)).next());
|
|
38
|
+
});
|
|
39
|
+
import { Q as wt, P as zt, R as $, bl as It, bm as Wt, $ as J, V as U, bn as it, a4 as Rt, bo as Ut, W as Ht, bp as Qt, Y as fe, N as O, a0 as Gt, bq as Yt, ad as Ft, br as Le, bb as Jt, bs as Vt, aF as Xt, aC as Zt, M as ve, d as Bt, C as Ie, bt as We, bu as Re, ag as Ue, ah as He, bv as at, ae as _t } from "./table-widget-5f3b1d03.js";
|
|
40
|
+
import { jsx as o, jsxs as x, Fragment as R } from "react/jsx-runtime";
|
|
41
|
+
import * as E from "react";
|
|
42
|
+
import ot, { createContext as Ne, useMemo as ee, useEffect as lt, useContext as ut, useCallback as V, useState as z, Component as $t, isValidElement as er, createElement as be, memo as tr, forwardRef as rr, useRef as Qe, useLayoutEffect as sr } from "react";
|
|
43
|
+
import "react-dom";
|
|
44
|
+
function nr(t) {
|
|
45
|
+
return zt("MuiDialog", t);
|
|
46
|
+
}
|
|
47
|
+
const ir = wt("MuiDialog", ["root", "scrollPaper", "scrollBody", "container", "paper", "paperScrollPaper", "paperScrollBody", "paperWidthFalse", "paperWidthXs", "paperWidthSm", "paperWidthMd", "paperWidthLg", "paperWidthXl", "paperFullWidth", "paperFullScreen"]), ye = ir, ct = /* @__PURE__ */ E.createContext({});
|
|
48
|
+
process.env.NODE_ENV !== "production" && (ct.displayName = "DialogContext");
|
|
49
|
+
const ar = ct, or = ["aria-describedby", "aria-labelledby", "BackdropComponent", "BackdropProps", "children", "className", "disableEscapeKeyDown", "fullScreen", "fullWidth", "maxWidth", "onBackdropClick", "onClose", "open", "PaperComponent", "PaperProps", "scroll", "TransitionComponent", "transitionDuration", "TransitionProps"], lr = $(It, {
|
|
50
|
+
name: "MuiDialog",
|
|
51
|
+
slot: "Backdrop",
|
|
52
|
+
overrides: (t, e) => e.backdrop
|
|
53
|
+
})({
|
|
54
|
+
// Improve scrollable dialog support.
|
|
55
|
+
zIndex: -1
|
|
56
|
+
}), ur = (t) => {
|
|
57
|
+
const {
|
|
58
|
+
classes: e,
|
|
59
|
+
scroll: r,
|
|
60
|
+
maxWidth: s,
|
|
61
|
+
fullWidth: n,
|
|
62
|
+
fullScreen: i
|
|
63
|
+
} = t, a = {
|
|
64
|
+
root: ["root"],
|
|
65
|
+
container: ["container", `scroll${J(r)}`],
|
|
66
|
+
paper: ["paper", `paperScroll${J(r)}`, `paperWidth${J(String(s))}`, n && "paperFullWidth", i && "paperFullScreen"]
|
|
67
|
+
};
|
|
68
|
+
return Gt(a, nr, e);
|
|
69
|
+
}, cr = $(Wt, {
|
|
70
|
+
name: "MuiDialog",
|
|
71
|
+
slot: "Root",
|
|
72
|
+
overridesResolver: (t, e) => e.root
|
|
73
|
+
})({
|
|
74
|
+
"@media print": {
|
|
75
|
+
// Use !important to override the Modal inline-style.
|
|
76
|
+
position: "absolute !important"
|
|
77
|
+
}
|
|
78
|
+
}), Ar = $("div", {
|
|
79
|
+
name: "MuiDialog",
|
|
80
|
+
slot: "Container",
|
|
81
|
+
overridesResolver: (t, e) => {
|
|
82
|
+
const {
|
|
83
|
+
ownerState: r
|
|
84
|
+
} = t;
|
|
85
|
+
return [e.container, e[`scroll${J(r.scroll)}`]];
|
|
86
|
+
}
|
|
87
|
+
})(({
|
|
88
|
+
ownerState: t
|
|
89
|
+
}) => U({
|
|
90
|
+
height: "100%",
|
|
91
|
+
"@media print": {
|
|
92
|
+
height: "auto"
|
|
93
|
+
},
|
|
94
|
+
// We disable the focus ring for mouse, touch and keyboard users.
|
|
95
|
+
outline: 0
|
|
96
|
+
}, t.scroll === "paper" && {
|
|
97
|
+
display: "flex",
|
|
98
|
+
justifyContent: "center",
|
|
99
|
+
alignItems: "center"
|
|
100
|
+
}, t.scroll === "body" && {
|
|
101
|
+
overflowY: "auto",
|
|
102
|
+
overflowX: "hidden",
|
|
103
|
+
textAlign: "center",
|
|
104
|
+
"&:after": {
|
|
105
|
+
content: '""',
|
|
106
|
+
display: "inline-block",
|
|
107
|
+
verticalAlign: "middle",
|
|
108
|
+
height: "100%",
|
|
109
|
+
width: "0"
|
|
110
|
+
}
|
|
111
|
+
})), dr = $(it, {
|
|
112
|
+
name: "MuiDialog",
|
|
113
|
+
slot: "Paper",
|
|
114
|
+
overridesResolver: (t, e) => {
|
|
115
|
+
const {
|
|
116
|
+
ownerState: r
|
|
117
|
+
} = t;
|
|
118
|
+
return [e.paper, e[`scrollPaper${J(r.scroll)}`], e[`paperWidth${J(String(r.maxWidth))}`], r.fullWidth && e.paperFullWidth, r.fullScreen && e.paperFullScreen];
|
|
119
|
+
}
|
|
120
|
+
})(({
|
|
121
|
+
theme: t,
|
|
122
|
+
ownerState: e
|
|
123
|
+
}) => U({
|
|
124
|
+
margin: 32,
|
|
125
|
+
position: "relative",
|
|
126
|
+
overflowY: "auto",
|
|
127
|
+
// Fix IE11 issue, to remove at some point.
|
|
128
|
+
"@media print": {
|
|
129
|
+
overflowY: "visible",
|
|
130
|
+
boxShadow: "none"
|
|
131
|
+
}
|
|
132
|
+
}, e.scroll === "paper" && {
|
|
133
|
+
display: "flex",
|
|
134
|
+
flexDirection: "column",
|
|
135
|
+
maxHeight: "calc(100% - 64px)"
|
|
136
|
+
}, e.scroll === "body" && {
|
|
137
|
+
display: "inline-block",
|
|
138
|
+
verticalAlign: "middle",
|
|
139
|
+
textAlign: "left"
|
|
140
|
+
// 'initial' doesn't work on IE11
|
|
141
|
+
}, !e.maxWidth && {
|
|
142
|
+
maxWidth: "calc(100% - 64px)"
|
|
143
|
+
}, e.maxWidth === "xs" && {
|
|
144
|
+
maxWidth: t.breakpoints.unit === "px" ? Math.max(t.breakpoints.values.xs, 444) : `max(${t.breakpoints.values.xs}${t.breakpoints.unit}, 444px)`,
|
|
145
|
+
[`&.${ye.paperScrollBody}`]: {
|
|
146
|
+
[t.breakpoints.down(Math.max(t.breakpoints.values.xs, 444) + 32 * 2)]: {
|
|
147
|
+
maxWidth: "calc(100% - 64px)"
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}, e.maxWidth && e.maxWidth !== "xs" && {
|
|
151
|
+
maxWidth: `${t.breakpoints.values[e.maxWidth]}${t.breakpoints.unit}`,
|
|
152
|
+
[`&.${ye.paperScrollBody}`]: {
|
|
153
|
+
[t.breakpoints.down(t.breakpoints.values[e.maxWidth] + 32 * 2)]: {
|
|
154
|
+
maxWidth: "calc(100% - 64px)"
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}, e.fullWidth && {
|
|
158
|
+
width: "calc(100% - 64px)"
|
|
159
|
+
}, e.fullScreen && {
|
|
160
|
+
margin: 0,
|
|
161
|
+
width: "100%",
|
|
162
|
+
maxWidth: "100%",
|
|
163
|
+
height: "100%",
|
|
164
|
+
maxHeight: "none",
|
|
165
|
+
borderRadius: 0,
|
|
166
|
+
[`&.${ye.paperScrollBody}`]: {
|
|
167
|
+
margin: 0,
|
|
168
|
+
maxWidth: "100%"
|
|
169
|
+
}
|
|
170
|
+
})), At = /* @__PURE__ */ E.forwardRef(function(e, r) {
|
|
171
|
+
const s = Rt({
|
|
172
|
+
props: e,
|
|
173
|
+
name: "MuiDialog"
|
|
174
|
+
}), n = Ut(), i = {
|
|
175
|
+
enter: n.transitions.duration.enteringScreen,
|
|
176
|
+
exit: n.transitions.duration.leavingScreen
|
|
177
|
+
}, {
|
|
178
|
+
"aria-describedby": a,
|
|
179
|
+
"aria-labelledby": l,
|
|
180
|
+
BackdropComponent: u,
|
|
181
|
+
BackdropProps: d,
|
|
182
|
+
children: c,
|
|
183
|
+
className: A,
|
|
184
|
+
disableEscapeKeyDown: p = !1,
|
|
185
|
+
fullScreen: h = !1,
|
|
186
|
+
fullWidth: g = !1,
|
|
187
|
+
maxWidth: f = "sm",
|
|
188
|
+
onBackdropClick: v,
|
|
189
|
+
onClose: k,
|
|
190
|
+
open: j,
|
|
191
|
+
PaperComponent: S = it,
|
|
192
|
+
PaperProps: q = {},
|
|
193
|
+
scroll: N = "paper",
|
|
194
|
+
TransitionComponent: m = Yt,
|
|
195
|
+
transitionDuration: C = i,
|
|
196
|
+
TransitionProps: b
|
|
197
|
+
} = s, L = Ht(s, or), M = U({}, s, {
|
|
198
|
+
disableEscapeKeyDown: p,
|
|
199
|
+
fullScreen: h,
|
|
200
|
+
fullWidth: g,
|
|
201
|
+
maxWidth: f,
|
|
202
|
+
scroll: N
|
|
203
|
+
}), I = ur(M), se = E.useRef(), de = (Z) => {
|
|
204
|
+
se.current = Z.target === Z.currentTarget;
|
|
205
|
+
}, Tt = (Z) => {
|
|
206
|
+
se.current && (se.current = null, v && v(Z), k && k(Z, "backdropClick"));
|
|
207
|
+
}, he = Qt(l), Et = E.useMemo(() => ({
|
|
208
|
+
titleId: he
|
|
209
|
+
}), [he]);
|
|
210
|
+
return /* @__PURE__ */ o(cr, U({
|
|
211
|
+
className: fe(I.root, A),
|
|
212
|
+
closeAfterTransition: !0,
|
|
213
|
+
components: {
|
|
214
|
+
Backdrop: lr
|
|
215
|
+
},
|
|
216
|
+
componentsProps: {
|
|
217
|
+
backdrop: U({
|
|
218
|
+
transitionDuration: C,
|
|
219
|
+
as: u
|
|
220
|
+
}, d)
|
|
221
|
+
},
|
|
222
|
+
disableEscapeKeyDown: p,
|
|
223
|
+
onClose: k,
|
|
224
|
+
open: j,
|
|
225
|
+
ref: r,
|
|
226
|
+
onClick: Tt,
|
|
227
|
+
ownerState: M
|
|
228
|
+
}, L, {
|
|
229
|
+
children: /* @__PURE__ */ o(m, U({
|
|
230
|
+
appear: !0,
|
|
231
|
+
in: j,
|
|
232
|
+
timeout: C,
|
|
233
|
+
role: "presentation"
|
|
234
|
+
}, b, {
|
|
235
|
+
children: /* @__PURE__ */ o(Ar, {
|
|
236
|
+
className: fe(I.container),
|
|
237
|
+
onMouseDown: de,
|
|
238
|
+
ownerState: M,
|
|
239
|
+
children: /* @__PURE__ */ o(dr, U({
|
|
240
|
+
as: S,
|
|
241
|
+
elevation: 24,
|
|
242
|
+
role: "dialog",
|
|
243
|
+
"aria-describedby": a,
|
|
244
|
+
"aria-labelledby": he
|
|
245
|
+
}, q, {
|
|
246
|
+
className: fe(I.paper, q.className),
|
|
247
|
+
ownerState: M,
|
|
248
|
+
children: /* @__PURE__ */ o(ar.Provider, {
|
|
249
|
+
value: Et,
|
|
250
|
+
children: c
|
|
251
|
+
})
|
|
252
|
+
}))
|
|
253
|
+
})
|
|
254
|
+
}))
|
|
255
|
+
}));
|
|
256
|
+
});
|
|
257
|
+
process.env.NODE_ENV !== "production" && (At.propTypes = {
|
|
258
|
+
// ----------------------------- Warning --------------------------------
|
|
259
|
+
// | These PropTypes are generated from the TypeScript type definitions |
|
|
260
|
+
// | To update them edit the d.ts file and run "yarn proptypes" |
|
|
261
|
+
// ----------------------------------------------------------------------
|
|
262
|
+
/**
|
|
263
|
+
* The id(s) of the element(s) that describe the dialog.
|
|
264
|
+
*/
|
|
265
|
+
"aria-describedby": O.string,
|
|
266
|
+
/**
|
|
267
|
+
* The id(s) of the element(s) that label the dialog.
|
|
268
|
+
*/
|
|
269
|
+
"aria-labelledby": O.string,
|
|
270
|
+
/**
|
|
271
|
+
* A backdrop component. This prop enables custom backdrop rendering.
|
|
272
|
+
* @deprecated Use `slots.backdrop` instead. While this prop currently works, it will be removed in the next major version.
|
|
273
|
+
* Use the `slots.backdrop` prop to make your application ready for the next version of Material UI.
|
|
274
|
+
* @default styled(Backdrop, {
|
|
275
|
+
* name: 'MuiModal',
|
|
276
|
+
* slot: 'Backdrop',
|
|
277
|
+
* overridesResolver: (props, styles) => {
|
|
278
|
+
* return styles.backdrop;
|
|
279
|
+
* },
|
|
280
|
+
* })({
|
|
281
|
+
* zIndex: -1,
|
|
282
|
+
* })
|
|
283
|
+
*/
|
|
284
|
+
BackdropComponent: O.elementType,
|
|
285
|
+
/**
|
|
286
|
+
* @ignore
|
|
287
|
+
*/
|
|
288
|
+
BackdropProps: O.object,
|
|
289
|
+
/**
|
|
290
|
+
* Dialog children, usually the included sub-components.
|
|
291
|
+
*/
|
|
292
|
+
children: O.node,
|
|
293
|
+
/**
|
|
294
|
+
* Override or extend the styles applied to the component.
|
|
295
|
+
*/
|
|
296
|
+
classes: O.object,
|
|
297
|
+
/**
|
|
298
|
+
* @ignore
|
|
299
|
+
*/
|
|
300
|
+
className: O.string,
|
|
301
|
+
/**
|
|
302
|
+
* If `true`, hitting escape will not fire the `onClose` callback.
|
|
303
|
+
* @default false
|
|
304
|
+
*/
|
|
305
|
+
disableEscapeKeyDown: O.bool,
|
|
306
|
+
/**
|
|
307
|
+
* If `true`, the dialog is full-screen.
|
|
308
|
+
* @default false
|
|
309
|
+
*/
|
|
310
|
+
fullScreen: O.bool,
|
|
311
|
+
/**
|
|
312
|
+
* If `true`, the dialog stretches to `maxWidth`.
|
|
313
|
+
*
|
|
314
|
+
* Notice that the dialog width grow is limited by the default margin.
|
|
315
|
+
* @default false
|
|
316
|
+
*/
|
|
317
|
+
fullWidth: O.bool,
|
|
318
|
+
/**
|
|
319
|
+
* Determine the max-width of the dialog.
|
|
320
|
+
* The dialog width grows with the size of the screen.
|
|
321
|
+
* Set to `false` to disable `maxWidth`.
|
|
322
|
+
* @default 'sm'
|
|
323
|
+
*/
|
|
324
|
+
maxWidth: O.oneOfType([O.oneOf(["xs", "sm", "md", "lg", "xl", !1]), O.string]),
|
|
325
|
+
/**
|
|
326
|
+
* Callback fired when the backdrop is clicked.
|
|
327
|
+
* @deprecated Use the `onClose` prop with the `reason` argument to handle the `backdropClick` events.
|
|
328
|
+
*/
|
|
329
|
+
onBackdropClick: O.func,
|
|
330
|
+
/**
|
|
331
|
+
* Callback fired when the component requests to be closed.
|
|
332
|
+
*
|
|
333
|
+
* @param {object} event The event source of the callback.
|
|
334
|
+
* @param {string} reason Can be: `"escapeKeyDown"`, `"backdropClick"`.
|
|
335
|
+
*/
|
|
336
|
+
onClose: O.func,
|
|
337
|
+
/**
|
|
338
|
+
* If `true`, the component is shown.
|
|
339
|
+
*/
|
|
340
|
+
open: O.bool.isRequired,
|
|
341
|
+
/**
|
|
342
|
+
* The component used to render the body of the dialog.
|
|
343
|
+
* @default Paper
|
|
344
|
+
*/
|
|
345
|
+
PaperComponent: O.elementType,
|
|
346
|
+
/**
|
|
347
|
+
* Props applied to the [`Paper`](/material-ui/api/paper/) element.
|
|
348
|
+
* @default {}
|
|
349
|
+
*/
|
|
350
|
+
PaperProps: O.object,
|
|
351
|
+
/**
|
|
352
|
+
* Determine the container for scrolling the dialog.
|
|
353
|
+
* @default 'paper'
|
|
354
|
+
*/
|
|
355
|
+
scroll: O.oneOf(["body", "paper"]),
|
|
356
|
+
/**
|
|
357
|
+
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
358
|
+
*/
|
|
359
|
+
sx: O.oneOfType([O.arrayOf(O.oneOfType([O.func, O.object, O.bool])), O.func, O.object]),
|
|
360
|
+
/**
|
|
361
|
+
* The component used for the transition.
|
|
362
|
+
* [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
|
|
363
|
+
* @default Fade
|
|
364
|
+
*/
|
|
365
|
+
TransitionComponent: O.elementType,
|
|
366
|
+
/**
|
|
367
|
+
* The duration for the transition, in milliseconds.
|
|
368
|
+
* You may specify a single timeout for all transitions, or individually with an object.
|
|
369
|
+
* @default {
|
|
370
|
+
* enter: theme.transitions.duration.enteringScreen,
|
|
371
|
+
* exit: theme.transitions.duration.leavingScreen,
|
|
372
|
+
* }
|
|
373
|
+
*/
|
|
374
|
+
transitionDuration: O.oneOfType([O.number, O.shape({
|
|
375
|
+
appear: O.number,
|
|
376
|
+
enter: O.number,
|
|
377
|
+
exit: O.number
|
|
378
|
+
})]),
|
|
379
|
+
/**
|
|
380
|
+
* Props applied to the transition element.
|
|
381
|
+
* By default, the element is based on this [`Transition`](http://reactcommunity.org/react-transition-group/transition/) component.
|
|
382
|
+
*/
|
|
383
|
+
TransitionProps: O.object
|
|
384
|
+
});
|
|
385
|
+
const hr = At;
|
|
386
|
+
class te {
|
|
387
|
+
constructor() {
|
|
388
|
+
this.listeners = /* @__PURE__ */ new Set(), this.subscribe = this.subscribe.bind(this);
|
|
389
|
+
}
|
|
390
|
+
subscribe(e) {
|
|
391
|
+
const r = {
|
|
392
|
+
listener: e
|
|
393
|
+
};
|
|
394
|
+
return this.listeners.add(r), this.onSubscribe(), () => {
|
|
395
|
+
this.listeners.delete(r), this.onUnsubscribe();
|
|
396
|
+
};
|
|
397
|
+
}
|
|
398
|
+
hasListeners() {
|
|
399
|
+
return this.listeners.size > 0;
|
|
400
|
+
}
|
|
401
|
+
onSubscribe() {
|
|
402
|
+
}
|
|
403
|
+
onUnsubscribe() {
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
const _ = typeof window == "undefined" || "Deno" in window;
|
|
407
|
+
function w() {
|
|
408
|
+
}
|
|
409
|
+
function pr(t, e) {
|
|
410
|
+
return typeof t == "function" ? t(e) : t;
|
|
411
|
+
}
|
|
412
|
+
function Se(t) {
|
|
413
|
+
return typeof t == "number" && t >= 0 && t !== 1 / 0;
|
|
414
|
+
}
|
|
415
|
+
function dt(t, e) {
|
|
416
|
+
return Math.max(t + (e || 0) - Date.now(), 0);
|
|
417
|
+
}
|
|
418
|
+
function B(t, e, r) {
|
|
419
|
+
return ue(t) ? typeof e == "function" ? K(y({}, r), {
|
|
420
|
+
queryKey: t,
|
|
421
|
+
queryFn: e
|
|
422
|
+
}) : K(y({}, e), {
|
|
423
|
+
queryKey: t
|
|
424
|
+
}) : t;
|
|
425
|
+
}
|
|
426
|
+
function W(t, e, r) {
|
|
427
|
+
return ue(t) ? [K(y({}, e), {
|
|
428
|
+
queryKey: t
|
|
429
|
+
}), r] : [t || {}, e];
|
|
430
|
+
}
|
|
431
|
+
function Ge(t, e) {
|
|
432
|
+
const {
|
|
433
|
+
type: r = "all",
|
|
434
|
+
exact: s,
|
|
435
|
+
fetchStatus: n,
|
|
436
|
+
predicate: i,
|
|
437
|
+
queryKey: a,
|
|
438
|
+
stale: l
|
|
439
|
+
} = t;
|
|
440
|
+
if (ue(a)) {
|
|
441
|
+
if (s) {
|
|
442
|
+
if (e.queryHash !== je(a, e.options))
|
|
443
|
+
return !1;
|
|
444
|
+
} else if (!F(e.queryKey, a))
|
|
445
|
+
return !1;
|
|
446
|
+
}
|
|
447
|
+
if (r !== "all") {
|
|
448
|
+
const u = e.isActive();
|
|
449
|
+
if (r === "active" && !u || r === "inactive" && u)
|
|
450
|
+
return !1;
|
|
451
|
+
}
|
|
452
|
+
return !(typeof l == "boolean" && e.isStale() !== l || typeof n != "undefined" && n !== e.state.fetchStatus || i && !i(e));
|
|
453
|
+
}
|
|
454
|
+
function Ye(t, e) {
|
|
455
|
+
const {
|
|
456
|
+
exact: r,
|
|
457
|
+
fetching: s,
|
|
458
|
+
predicate: n,
|
|
459
|
+
mutationKey: i
|
|
460
|
+
} = t;
|
|
461
|
+
if (ue(i)) {
|
|
462
|
+
if (!e.options.mutationKey)
|
|
463
|
+
return !1;
|
|
464
|
+
if (r) {
|
|
465
|
+
if (H(e.options.mutationKey) !== H(i))
|
|
466
|
+
return !1;
|
|
467
|
+
} else if (!F(e.options.mutationKey, i))
|
|
468
|
+
return !1;
|
|
469
|
+
}
|
|
470
|
+
return !(typeof s == "boolean" && e.state.status === "loading" !== s || n && !n(e));
|
|
471
|
+
}
|
|
472
|
+
function je(t, e) {
|
|
473
|
+
return ((e == null ? void 0 : e.queryKeyHashFn) || H)(t);
|
|
474
|
+
}
|
|
475
|
+
function H(t) {
|
|
476
|
+
return JSON.stringify(t, (e, r) => Oe(r) ? Object.keys(r).sort().reduce((s, n) => (s[n] = r[n], s), {}) : r);
|
|
477
|
+
}
|
|
478
|
+
function F(t, e) {
|
|
479
|
+
return ht(t, e);
|
|
480
|
+
}
|
|
481
|
+
function ht(t, e) {
|
|
482
|
+
return t === e ? !0 : typeof t != typeof e ? !1 : t && e && typeof t == "object" && typeof e == "object" ? !Object.keys(e).some((r) => !ht(t[r], e[r])) : !1;
|
|
483
|
+
}
|
|
484
|
+
function pt(t, e) {
|
|
485
|
+
if (t === e)
|
|
486
|
+
return t;
|
|
487
|
+
const r = Fe(t) && Fe(e);
|
|
488
|
+
if (r || Oe(t) && Oe(e)) {
|
|
489
|
+
const s = r ? t.length : Object.keys(t).length, n = r ? e : Object.keys(e), i = n.length, a = r ? [] : {};
|
|
490
|
+
let l = 0;
|
|
491
|
+
for (let u = 0; u < i; u++) {
|
|
492
|
+
const d = r ? u : n[u];
|
|
493
|
+
a[d] = pt(t[d], e[d]), a[d] === t[d] && l++;
|
|
494
|
+
}
|
|
495
|
+
return s === i && l === s ? t : a;
|
|
496
|
+
}
|
|
497
|
+
return e;
|
|
498
|
+
}
|
|
499
|
+
function Ce(t, e) {
|
|
500
|
+
if (t && !e || e && !t)
|
|
501
|
+
return !1;
|
|
502
|
+
for (const r in t)
|
|
503
|
+
if (t[r] !== e[r])
|
|
504
|
+
return !1;
|
|
505
|
+
return !0;
|
|
506
|
+
}
|
|
507
|
+
function Fe(t) {
|
|
508
|
+
return Array.isArray(t) && t.length === Object.keys(t).length;
|
|
509
|
+
}
|
|
510
|
+
function Oe(t) {
|
|
511
|
+
if (!Je(t))
|
|
512
|
+
return !1;
|
|
513
|
+
const e = t.constructor;
|
|
514
|
+
if (typeof e == "undefined")
|
|
515
|
+
return !0;
|
|
516
|
+
const r = e.prototype;
|
|
517
|
+
return !(!Je(r) || !r.hasOwnProperty("isPrototypeOf"));
|
|
518
|
+
}
|
|
519
|
+
function Je(t) {
|
|
520
|
+
return Object.prototype.toString.call(t) === "[object Object]";
|
|
521
|
+
}
|
|
522
|
+
function ue(t) {
|
|
523
|
+
return Array.isArray(t);
|
|
524
|
+
}
|
|
525
|
+
function ft(t) {
|
|
526
|
+
return new Promise((e) => {
|
|
527
|
+
setTimeout(e, t);
|
|
528
|
+
});
|
|
529
|
+
}
|
|
530
|
+
function Ve(t) {
|
|
531
|
+
ft(0).then(t);
|
|
532
|
+
}
|
|
533
|
+
function fr() {
|
|
534
|
+
if (typeof AbortController == "function")
|
|
535
|
+
return new AbortController();
|
|
536
|
+
}
|
|
537
|
+
function ke(t, e, r) {
|
|
538
|
+
return r.isDataEqual != null && r.isDataEqual(t, e) ? t : typeof r.structuralSharing == "function" ? r.structuralSharing(t, e) : r.structuralSharing !== !1 ? pt(t, e) : e;
|
|
539
|
+
}
|
|
540
|
+
class vr extends te {
|
|
541
|
+
constructor() {
|
|
542
|
+
super(), this.setup = (e) => {
|
|
543
|
+
if (!_ && window.addEventListener) {
|
|
544
|
+
const r = () => e();
|
|
545
|
+
return window.addEventListener("visibilitychange", r, !1), window.addEventListener("focus", r, !1), () => {
|
|
546
|
+
window.removeEventListener("visibilitychange", r), window.removeEventListener("focus", r);
|
|
547
|
+
};
|
|
548
|
+
}
|
|
549
|
+
};
|
|
550
|
+
}
|
|
551
|
+
onSubscribe() {
|
|
552
|
+
this.cleanup || this.setEventListener(this.setup);
|
|
553
|
+
}
|
|
554
|
+
onUnsubscribe() {
|
|
555
|
+
if (!this.hasListeners()) {
|
|
556
|
+
var e;
|
|
557
|
+
(e = this.cleanup) == null || e.call(this), this.cleanup = void 0;
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
setEventListener(e) {
|
|
561
|
+
var r;
|
|
562
|
+
this.setup = e, (r = this.cleanup) == null || r.call(this), this.cleanup = e((s) => {
|
|
563
|
+
typeof s == "boolean" ? this.setFocused(s) : this.onFocus();
|
|
564
|
+
});
|
|
565
|
+
}
|
|
566
|
+
setFocused(e) {
|
|
567
|
+
this.focused !== e && (this.focused = e, this.onFocus());
|
|
568
|
+
}
|
|
569
|
+
onFocus() {
|
|
570
|
+
this.listeners.forEach(({
|
|
571
|
+
listener: e
|
|
572
|
+
}) => {
|
|
573
|
+
e();
|
|
574
|
+
});
|
|
575
|
+
}
|
|
576
|
+
isFocused() {
|
|
577
|
+
return typeof this.focused == "boolean" ? this.focused : typeof document == "undefined" ? !0 : [void 0, "visible", "prerender"].includes(document.visibilityState);
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
const oe = new vr(), Xe = ["online", "offline"];
|
|
581
|
+
class yr extends te {
|
|
582
|
+
constructor() {
|
|
583
|
+
super(), this.setup = (e) => {
|
|
584
|
+
if (!_ && window.addEventListener) {
|
|
585
|
+
const r = () => e();
|
|
586
|
+
return Xe.forEach((s) => {
|
|
587
|
+
window.addEventListener(s, r, !1);
|
|
588
|
+
}), () => {
|
|
589
|
+
Xe.forEach((s) => {
|
|
590
|
+
window.removeEventListener(s, r);
|
|
591
|
+
});
|
|
592
|
+
};
|
|
593
|
+
}
|
|
594
|
+
};
|
|
595
|
+
}
|
|
596
|
+
onSubscribe() {
|
|
597
|
+
this.cleanup || this.setEventListener(this.setup);
|
|
598
|
+
}
|
|
599
|
+
onUnsubscribe() {
|
|
600
|
+
if (!this.hasListeners()) {
|
|
601
|
+
var e;
|
|
602
|
+
(e = this.cleanup) == null || e.call(this), this.cleanup = void 0;
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
setEventListener(e) {
|
|
606
|
+
var r;
|
|
607
|
+
this.setup = e, (r = this.cleanup) == null || r.call(this), this.cleanup = e((s) => {
|
|
608
|
+
typeof s == "boolean" ? this.setOnline(s) : this.onOnline();
|
|
609
|
+
});
|
|
610
|
+
}
|
|
611
|
+
setOnline(e) {
|
|
612
|
+
this.online !== e && (this.online = e, this.onOnline());
|
|
613
|
+
}
|
|
614
|
+
onOnline() {
|
|
615
|
+
this.listeners.forEach(({
|
|
616
|
+
listener: e
|
|
617
|
+
}) => {
|
|
618
|
+
e();
|
|
619
|
+
});
|
|
620
|
+
}
|
|
621
|
+
isOnline() {
|
|
622
|
+
return typeof this.online == "boolean" ? this.online : typeof navigator == "undefined" || typeof navigator.onLine == "undefined" ? !0 : navigator.onLine;
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
const le = new yr();
|
|
626
|
+
function mr(t) {
|
|
627
|
+
return Math.min(1e3 * we(2, t), 3e4);
|
|
628
|
+
}
|
|
629
|
+
function ce(t) {
|
|
630
|
+
return (t != null ? t : "online") === "online" ? le.isOnline() : !0;
|
|
631
|
+
}
|
|
632
|
+
class vt {
|
|
633
|
+
constructor(e) {
|
|
634
|
+
this.revert = e == null ? void 0 : e.revert, this.silent = e == null ? void 0 : e.silent;
|
|
635
|
+
}
|
|
636
|
+
}
|
|
637
|
+
function ae(t) {
|
|
638
|
+
return t instanceof vt;
|
|
639
|
+
}
|
|
640
|
+
function yt(t) {
|
|
641
|
+
let e = !1, r = 0, s = !1, n, i, a;
|
|
642
|
+
const l = new Promise((v, k) => {
|
|
643
|
+
i = v, a = k;
|
|
644
|
+
}), u = (v) => {
|
|
645
|
+
s || (h(new vt(v)), t.abort == null || t.abort());
|
|
646
|
+
}, d = () => {
|
|
647
|
+
e = !0;
|
|
648
|
+
}, c = () => {
|
|
649
|
+
e = !1;
|
|
650
|
+
}, A = () => !oe.isFocused() || t.networkMode !== "always" && !le.isOnline(), p = (v) => {
|
|
651
|
+
s || (s = !0, t.onSuccess == null || t.onSuccess(v), n == null || n(), i(v));
|
|
652
|
+
}, h = (v) => {
|
|
653
|
+
s || (s = !0, t.onError == null || t.onError(v), n == null || n(), a(v));
|
|
654
|
+
}, g = () => new Promise((v) => {
|
|
655
|
+
n = (k) => {
|
|
656
|
+
const j = s || !A();
|
|
657
|
+
return j && v(k), j;
|
|
658
|
+
}, t.onPause == null || t.onPause();
|
|
659
|
+
}).then(() => {
|
|
660
|
+
n = void 0, s || t.onContinue == null || t.onContinue();
|
|
661
|
+
}), f = () => {
|
|
662
|
+
if (s)
|
|
663
|
+
return;
|
|
664
|
+
let v;
|
|
665
|
+
try {
|
|
666
|
+
v = t.fn();
|
|
667
|
+
} catch (k) {
|
|
668
|
+
v = Promise.reject(k);
|
|
669
|
+
}
|
|
670
|
+
Promise.resolve(v).then(p).catch((k) => {
|
|
671
|
+
var j, S;
|
|
672
|
+
if (s)
|
|
673
|
+
return;
|
|
674
|
+
const q = (j = t.retry) != null ? j : 3, N = (S = t.retryDelay) != null ? S : mr, m = typeof N == "function" ? N(r, k) : N, C = q === !0 || typeof q == "number" && r < q || typeof q == "function" && q(r, k);
|
|
675
|
+
if (e || !C) {
|
|
676
|
+
h(k);
|
|
677
|
+
return;
|
|
678
|
+
}
|
|
679
|
+
r++, t.onFail == null || t.onFail(r, k), ft(m).then(() => {
|
|
680
|
+
if (A())
|
|
681
|
+
return g();
|
|
682
|
+
}).then(() => {
|
|
683
|
+
e ? h(k) : f();
|
|
684
|
+
});
|
|
685
|
+
});
|
|
686
|
+
};
|
|
687
|
+
return ce(t.networkMode) ? f() : g().then(f), {
|
|
688
|
+
promise: l,
|
|
689
|
+
cancel: u,
|
|
690
|
+
continue: () => (n == null ? void 0 : n()) ? l : Promise.resolve(),
|
|
691
|
+
cancelRetry: d,
|
|
692
|
+
continueRetry: c
|
|
693
|
+
};
|
|
694
|
+
}
|
|
695
|
+
const Te = console;
|
|
696
|
+
function gr() {
|
|
697
|
+
let t = [], e = 0, r = (c) => {
|
|
698
|
+
c();
|
|
699
|
+
}, s = (c) => {
|
|
700
|
+
c();
|
|
701
|
+
};
|
|
702
|
+
const n = (c) => {
|
|
703
|
+
let A;
|
|
704
|
+
e++;
|
|
705
|
+
try {
|
|
706
|
+
A = c();
|
|
707
|
+
} finally {
|
|
708
|
+
e--, e || l();
|
|
709
|
+
}
|
|
710
|
+
return A;
|
|
711
|
+
}, i = (c) => {
|
|
712
|
+
e ? t.push(c) : Ve(() => {
|
|
713
|
+
r(c);
|
|
714
|
+
});
|
|
715
|
+
}, a = (c) => (...A) => {
|
|
716
|
+
i(() => {
|
|
717
|
+
c(...A);
|
|
718
|
+
});
|
|
719
|
+
}, l = () => {
|
|
720
|
+
const c = t;
|
|
721
|
+
t = [], c.length && Ve(() => {
|
|
722
|
+
s(() => {
|
|
723
|
+
c.forEach((A) => {
|
|
724
|
+
r(A);
|
|
725
|
+
});
|
|
726
|
+
});
|
|
727
|
+
});
|
|
728
|
+
};
|
|
729
|
+
return {
|
|
730
|
+
batch: n,
|
|
731
|
+
batchCalls: a,
|
|
732
|
+
schedule: i,
|
|
733
|
+
setNotifyFunction: (c) => {
|
|
734
|
+
r = c;
|
|
735
|
+
},
|
|
736
|
+
setBatchNotifyFunction: (c) => {
|
|
737
|
+
s = c;
|
|
738
|
+
}
|
|
739
|
+
};
|
|
740
|
+
}
|
|
741
|
+
const T = gr();
|
|
742
|
+
class mt {
|
|
743
|
+
destroy() {
|
|
744
|
+
this.clearGcTimeout();
|
|
745
|
+
}
|
|
746
|
+
scheduleGc() {
|
|
747
|
+
this.clearGcTimeout(), Se(this.cacheTime) && (this.gcTimeout = setTimeout(() => {
|
|
748
|
+
this.optionalRemove();
|
|
749
|
+
}, this.cacheTime));
|
|
750
|
+
}
|
|
751
|
+
updateCacheTime(e) {
|
|
752
|
+
this.cacheTime = Math.max(this.cacheTime || 0, e != null ? e : _ ? 1 / 0 : 5 * 60 * 1e3);
|
|
753
|
+
}
|
|
754
|
+
clearGcTimeout() {
|
|
755
|
+
this.gcTimeout && (clearTimeout(this.gcTimeout), this.gcTimeout = void 0);
|
|
756
|
+
}
|
|
757
|
+
}
|
|
758
|
+
class qr extends mt {
|
|
759
|
+
constructor(e) {
|
|
760
|
+
super(), this.abortSignalConsumed = !1, this.defaultOptions = e.defaultOptions, this.setOptions(e.options), this.observers = [], this.cache = e.cache, this.logger = e.logger || Te, this.queryKey = e.queryKey, this.queryHash = e.queryHash, this.initialState = e.state || br(this.options), this.state = this.initialState, this.scheduleGc();
|
|
761
|
+
}
|
|
762
|
+
get meta() {
|
|
763
|
+
return this.options.meta;
|
|
764
|
+
}
|
|
765
|
+
setOptions(e) {
|
|
766
|
+
this.options = y(y({}, this.defaultOptions), e), this.updateCacheTime(this.options.cacheTime);
|
|
767
|
+
}
|
|
768
|
+
optionalRemove() {
|
|
769
|
+
!this.observers.length && this.state.fetchStatus === "idle" && this.cache.remove(this);
|
|
770
|
+
}
|
|
771
|
+
setData(e, r) {
|
|
772
|
+
const s = ke(this.state.data, e, this.options);
|
|
773
|
+
return this.dispatch({
|
|
774
|
+
data: s,
|
|
775
|
+
type: "success",
|
|
776
|
+
dataUpdatedAt: r == null ? void 0 : r.updatedAt,
|
|
777
|
+
manual: r == null ? void 0 : r.manual
|
|
778
|
+
}), s;
|
|
779
|
+
}
|
|
780
|
+
setState(e, r) {
|
|
781
|
+
this.dispatch({
|
|
782
|
+
type: "setState",
|
|
783
|
+
state: e,
|
|
784
|
+
setStateOptions: r
|
|
785
|
+
});
|
|
786
|
+
}
|
|
787
|
+
cancel(e) {
|
|
788
|
+
var r;
|
|
789
|
+
const s = this.promise;
|
|
790
|
+
return (r = this.retryer) == null || r.cancel(e), s ? s.then(w).catch(w) : Promise.resolve();
|
|
791
|
+
}
|
|
792
|
+
destroy() {
|
|
793
|
+
super.destroy(), this.cancel({
|
|
794
|
+
silent: !0
|
|
795
|
+
});
|
|
796
|
+
}
|
|
797
|
+
reset() {
|
|
798
|
+
this.destroy(), this.setState(this.initialState);
|
|
799
|
+
}
|
|
800
|
+
isActive() {
|
|
801
|
+
return this.observers.some((e) => e.options.enabled !== !1);
|
|
802
|
+
}
|
|
803
|
+
isDisabled() {
|
|
804
|
+
return this.getObserversCount() > 0 && !this.isActive();
|
|
805
|
+
}
|
|
806
|
+
isStale() {
|
|
807
|
+
return this.state.isInvalidated || !this.state.dataUpdatedAt || this.observers.some((e) => e.getCurrentResult().isStale);
|
|
808
|
+
}
|
|
809
|
+
isStaleByTime(e = 0) {
|
|
810
|
+
return this.state.isInvalidated || !this.state.dataUpdatedAt || !dt(this.state.dataUpdatedAt, e);
|
|
811
|
+
}
|
|
812
|
+
onFocus() {
|
|
813
|
+
var e;
|
|
814
|
+
const r = this.observers.find((s) => s.shouldFetchOnWindowFocus());
|
|
815
|
+
r && r.refetch({
|
|
816
|
+
cancelRefetch: !1
|
|
817
|
+
}), (e = this.retryer) == null || e.continue();
|
|
818
|
+
}
|
|
819
|
+
onOnline() {
|
|
820
|
+
var e;
|
|
821
|
+
const r = this.observers.find((s) => s.shouldFetchOnReconnect());
|
|
822
|
+
r && r.refetch({
|
|
823
|
+
cancelRefetch: !1
|
|
824
|
+
}), (e = this.retryer) == null || e.continue();
|
|
825
|
+
}
|
|
826
|
+
addObserver(e) {
|
|
827
|
+
this.observers.includes(e) || (this.observers.push(e), this.clearGcTimeout(), this.cache.notify({
|
|
828
|
+
type: "observerAdded",
|
|
829
|
+
query: this,
|
|
830
|
+
observer: e
|
|
831
|
+
}));
|
|
832
|
+
}
|
|
833
|
+
removeObserver(e) {
|
|
834
|
+
this.observers.includes(e) && (this.observers = this.observers.filter((r) => r !== e), this.observers.length || (this.retryer && (this.abortSignalConsumed ? this.retryer.cancel({
|
|
835
|
+
revert: !0
|
|
836
|
+
}) : this.retryer.cancelRetry()), this.scheduleGc()), this.cache.notify({
|
|
837
|
+
type: "observerRemoved",
|
|
838
|
+
query: this,
|
|
839
|
+
observer: e
|
|
840
|
+
}));
|
|
841
|
+
}
|
|
842
|
+
getObserversCount() {
|
|
843
|
+
return this.observers.length;
|
|
844
|
+
}
|
|
845
|
+
invalidate() {
|
|
846
|
+
this.state.isInvalidated || this.dispatch({
|
|
847
|
+
type: "invalidate"
|
|
848
|
+
});
|
|
849
|
+
}
|
|
850
|
+
fetch(e, r) {
|
|
851
|
+
var s, n;
|
|
852
|
+
if (this.state.fetchStatus !== "idle") {
|
|
853
|
+
if (this.state.dataUpdatedAt && r != null && r.cancelRefetch)
|
|
854
|
+
this.cancel({
|
|
855
|
+
silent: !0
|
|
856
|
+
});
|
|
857
|
+
else if (this.promise) {
|
|
858
|
+
var i;
|
|
859
|
+
return (i = this.retryer) == null || i.continueRetry(), this.promise;
|
|
860
|
+
}
|
|
861
|
+
}
|
|
862
|
+
if (e && this.setOptions(e), !this.options.queryFn) {
|
|
863
|
+
const h = this.observers.find((g) => g.options.queryFn);
|
|
864
|
+
h && this.setOptions(h.options);
|
|
865
|
+
}
|
|
866
|
+
process.env.NODE_ENV !== "production" && (Array.isArray(this.options.queryKey) || this.logger.error("As of v4, queryKey needs to be an Array. If you are using a string like 'repoData', please change it to an Array, e.g. ['repoData']"));
|
|
867
|
+
const a = fr(), l = {
|
|
868
|
+
queryKey: this.queryKey,
|
|
869
|
+
pageParam: void 0,
|
|
870
|
+
meta: this.meta
|
|
871
|
+
}, u = (h) => {
|
|
872
|
+
Object.defineProperty(h, "signal", {
|
|
873
|
+
enumerable: !0,
|
|
874
|
+
get: () => {
|
|
875
|
+
if (a)
|
|
876
|
+
return this.abortSignalConsumed = !0, a.signal;
|
|
877
|
+
}
|
|
878
|
+
});
|
|
879
|
+
};
|
|
880
|
+
u(l);
|
|
881
|
+
const d = () => this.options.queryFn ? (this.abortSignalConsumed = !1, this.options.queryFn(l)) : Promise.reject("Missing queryFn for queryKey '" + this.options.queryHash + "'"), c = {
|
|
882
|
+
fetchOptions: r,
|
|
883
|
+
options: this.options,
|
|
884
|
+
queryKey: this.queryKey,
|
|
885
|
+
state: this.state,
|
|
886
|
+
fetchFn: d
|
|
887
|
+
};
|
|
888
|
+
if (u(c), (s = this.options.behavior) == null || s.onFetch(c), this.revertState = this.state, this.state.fetchStatus === "idle" || this.state.fetchMeta !== ((n = c.fetchOptions) == null ? void 0 : n.meta)) {
|
|
889
|
+
var A;
|
|
890
|
+
this.dispatch({
|
|
891
|
+
type: "fetch",
|
|
892
|
+
meta: (A = c.fetchOptions) == null ? void 0 : A.meta
|
|
893
|
+
});
|
|
894
|
+
}
|
|
895
|
+
const p = (h) => {
|
|
896
|
+
if (ae(h) && h.silent || this.dispatch({
|
|
897
|
+
type: "error",
|
|
898
|
+
error: h
|
|
899
|
+
}), !ae(h)) {
|
|
900
|
+
var g, f, v, k;
|
|
901
|
+
(g = (f = this.cache.config).onError) == null || g.call(f, h, this), (v = (k = this.cache.config).onSettled) == null || v.call(k, this.state.data, h, this), process.env.NODE_ENV !== "production" && this.logger.error(h);
|
|
902
|
+
}
|
|
903
|
+
this.isFetchingOptimistic || this.scheduleGc(), this.isFetchingOptimistic = !1;
|
|
904
|
+
};
|
|
905
|
+
return this.retryer = yt({
|
|
906
|
+
fn: c.fetchFn,
|
|
907
|
+
abort: a == null ? void 0 : a.abort.bind(a),
|
|
908
|
+
onSuccess: (h) => {
|
|
909
|
+
var g, f, v, k;
|
|
910
|
+
if (typeof h == "undefined") {
|
|
911
|
+
process.env.NODE_ENV !== "production" && this.logger.error("Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: " + this.queryHash), p(new Error(this.queryHash + " data is undefined"));
|
|
912
|
+
return;
|
|
913
|
+
}
|
|
914
|
+
this.setData(h), (g = (f = this.cache.config).onSuccess) == null || g.call(f, h, this), (v = (k = this.cache.config).onSettled) == null || v.call(k, h, this.state.error, this), this.isFetchingOptimistic || this.scheduleGc(), this.isFetchingOptimistic = !1;
|
|
915
|
+
},
|
|
916
|
+
onError: p,
|
|
917
|
+
onFail: (h, g) => {
|
|
918
|
+
this.dispatch({
|
|
919
|
+
type: "failed",
|
|
920
|
+
failureCount: h,
|
|
921
|
+
error: g
|
|
922
|
+
});
|
|
923
|
+
},
|
|
924
|
+
onPause: () => {
|
|
925
|
+
this.dispatch({
|
|
926
|
+
type: "pause"
|
|
927
|
+
});
|
|
928
|
+
},
|
|
929
|
+
onContinue: () => {
|
|
930
|
+
this.dispatch({
|
|
931
|
+
type: "continue"
|
|
932
|
+
});
|
|
933
|
+
},
|
|
934
|
+
retry: c.options.retry,
|
|
935
|
+
retryDelay: c.options.retryDelay,
|
|
936
|
+
networkMode: c.options.networkMode
|
|
937
|
+
}), this.promise = this.retryer.promise, this.promise;
|
|
938
|
+
}
|
|
939
|
+
dispatch(e) {
|
|
940
|
+
const r = (s) => {
|
|
941
|
+
var n, i;
|
|
942
|
+
switch (e.type) {
|
|
943
|
+
case "failed":
|
|
944
|
+
return K(y({}, s), {
|
|
945
|
+
fetchFailureCount: e.failureCount,
|
|
946
|
+
fetchFailureReason: e.error
|
|
947
|
+
});
|
|
948
|
+
case "pause":
|
|
949
|
+
return K(y({}, s), {
|
|
950
|
+
fetchStatus: "paused"
|
|
951
|
+
});
|
|
952
|
+
case "continue":
|
|
953
|
+
return K(y({}, s), {
|
|
954
|
+
fetchStatus: "fetching"
|
|
955
|
+
});
|
|
956
|
+
case "fetch":
|
|
957
|
+
return y(K(y({}, s), {
|
|
958
|
+
fetchFailureCount: 0,
|
|
959
|
+
fetchFailureReason: null,
|
|
960
|
+
fetchMeta: (n = e.meta) != null ? n : null,
|
|
961
|
+
fetchStatus: ce(this.options.networkMode) ? "fetching" : "paused"
|
|
962
|
+
}), !s.dataUpdatedAt && {
|
|
963
|
+
error: null,
|
|
964
|
+
status: "loading"
|
|
965
|
+
});
|
|
966
|
+
case "success":
|
|
967
|
+
return y(K(y({}, s), {
|
|
968
|
+
data: e.data,
|
|
969
|
+
dataUpdateCount: s.dataUpdateCount + 1,
|
|
970
|
+
dataUpdatedAt: (i = e.dataUpdatedAt) != null ? i : Date.now(),
|
|
971
|
+
error: null,
|
|
972
|
+
isInvalidated: !1,
|
|
973
|
+
status: "success"
|
|
974
|
+
}), !e.manual && {
|
|
975
|
+
fetchStatus: "idle",
|
|
976
|
+
fetchFailureCount: 0,
|
|
977
|
+
fetchFailureReason: null
|
|
978
|
+
});
|
|
979
|
+
case "error":
|
|
980
|
+
const a = e.error;
|
|
981
|
+
return ae(a) && a.revert && this.revertState ? K(y({}, this.revertState), {
|
|
982
|
+
fetchStatus: "idle"
|
|
983
|
+
}) : K(y({}, s), {
|
|
984
|
+
error: a,
|
|
985
|
+
errorUpdateCount: s.errorUpdateCount + 1,
|
|
986
|
+
errorUpdatedAt: Date.now(),
|
|
987
|
+
fetchFailureCount: s.fetchFailureCount + 1,
|
|
988
|
+
fetchFailureReason: a,
|
|
989
|
+
fetchStatus: "idle",
|
|
990
|
+
status: "error"
|
|
991
|
+
});
|
|
992
|
+
case "invalidate":
|
|
993
|
+
return K(y({}, s), {
|
|
994
|
+
isInvalidated: !0
|
|
995
|
+
});
|
|
996
|
+
case "setState":
|
|
997
|
+
return y(y({}, s), e.state);
|
|
998
|
+
}
|
|
999
|
+
};
|
|
1000
|
+
this.state = r(this.state), T.batch(() => {
|
|
1001
|
+
this.observers.forEach((s) => {
|
|
1002
|
+
s.onQueryUpdate(e);
|
|
1003
|
+
}), this.cache.notify({
|
|
1004
|
+
query: this,
|
|
1005
|
+
type: "updated",
|
|
1006
|
+
action: e
|
|
1007
|
+
});
|
|
1008
|
+
});
|
|
1009
|
+
}
|
|
1010
|
+
}
|
|
1011
|
+
function br(t) {
|
|
1012
|
+
const e = typeof t.initialData == "function" ? t.initialData() : t.initialData, r = typeof e != "undefined", s = r ? typeof t.initialDataUpdatedAt == "function" ? t.initialDataUpdatedAt() : t.initialDataUpdatedAt : 0;
|
|
1013
|
+
return {
|
|
1014
|
+
data: e,
|
|
1015
|
+
dataUpdateCount: 0,
|
|
1016
|
+
dataUpdatedAt: r ? s != null ? s : Date.now() : 0,
|
|
1017
|
+
error: null,
|
|
1018
|
+
errorUpdateCount: 0,
|
|
1019
|
+
errorUpdatedAt: 0,
|
|
1020
|
+
fetchFailureCount: 0,
|
|
1021
|
+
fetchFailureReason: null,
|
|
1022
|
+
fetchMeta: null,
|
|
1023
|
+
isInvalidated: !1,
|
|
1024
|
+
status: r ? "success" : "loading",
|
|
1025
|
+
fetchStatus: "idle"
|
|
1026
|
+
};
|
|
1027
|
+
}
|
|
1028
|
+
class Sr extends te {
|
|
1029
|
+
constructor(e) {
|
|
1030
|
+
super(), this.config = e || {}, this.queries = [], this.queriesMap = {};
|
|
1031
|
+
}
|
|
1032
|
+
build(e, r, s) {
|
|
1033
|
+
var n;
|
|
1034
|
+
const i = r.queryKey, a = (n = r.queryHash) != null ? n : je(i, r);
|
|
1035
|
+
let l = this.get(a);
|
|
1036
|
+
return l || (l = new qr({
|
|
1037
|
+
cache: this,
|
|
1038
|
+
logger: e.getLogger(),
|
|
1039
|
+
queryKey: i,
|
|
1040
|
+
queryHash: a,
|
|
1041
|
+
options: e.defaultQueryOptions(r),
|
|
1042
|
+
state: s,
|
|
1043
|
+
defaultOptions: e.getQueryDefaults(i)
|
|
1044
|
+
}), this.add(l)), l;
|
|
1045
|
+
}
|
|
1046
|
+
add(e) {
|
|
1047
|
+
this.queriesMap[e.queryHash] || (this.queriesMap[e.queryHash] = e, this.queries.push(e), this.notify({
|
|
1048
|
+
type: "added",
|
|
1049
|
+
query: e
|
|
1050
|
+
}));
|
|
1051
|
+
}
|
|
1052
|
+
remove(e) {
|
|
1053
|
+
const r = this.queriesMap[e.queryHash];
|
|
1054
|
+
r && (e.destroy(), this.queries = this.queries.filter((s) => s !== e), r === e && delete this.queriesMap[e.queryHash], this.notify({
|
|
1055
|
+
type: "removed",
|
|
1056
|
+
query: e
|
|
1057
|
+
}));
|
|
1058
|
+
}
|
|
1059
|
+
clear() {
|
|
1060
|
+
T.batch(() => {
|
|
1061
|
+
this.queries.forEach((e) => {
|
|
1062
|
+
this.remove(e);
|
|
1063
|
+
});
|
|
1064
|
+
});
|
|
1065
|
+
}
|
|
1066
|
+
get(e) {
|
|
1067
|
+
return this.queriesMap[e];
|
|
1068
|
+
}
|
|
1069
|
+
getAll() {
|
|
1070
|
+
return this.queries;
|
|
1071
|
+
}
|
|
1072
|
+
find(e, r) {
|
|
1073
|
+
const [s] = W(e, r);
|
|
1074
|
+
return typeof s.exact == "undefined" && (s.exact = !0), this.queries.find((n) => Ge(s, n));
|
|
1075
|
+
}
|
|
1076
|
+
findAll(e, r) {
|
|
1077
|
+
const [s] = W(e, r);
|
|
1078
|
+
return Object.keys(s).length > 0 ? this.queries.filter((n) => Ge(s, n)) : this.queries;
|
|
1079
|
+
}
|
|
1080
|
+
notify(e) {
|
|
1081
|
+
T.batch(() => {
|
|
1082
|
+
this.listeners.forEach(({
|
|
1083
|
+
listener: r
|
|
1084
|
+
}) => {
|
|
1085
|
+
r(e);
|
|
1086
|
+
});
|
|
1087
|
+
});
|
|
1088
|
+
}
|
|
1089
|
+
onFocus() {
|
|
1090
|
+
T.batch(() => {
|
|
1091
|
+
this.queries.forEach((e) => {
|
|
1092
|
+
e.onFocus();
|
|
1093
|
+
});
|
|
1094
|
+
});
|
|
1095
|
+
}
|
|
1096
|
+
onOnline() {
|
|
1097
|
+
T.batch(() => {
|
|
1098
|
+
this.queries.forEach((e) => {
|
|
1099
|
+
e.onOnline();
|
|
1100
|
+
});
|
|
1101
|
+
});
|
|
1102
|
+
}
|
|
1103
|
+
}
|
|
1104
|
+
class Cr extends mt {
|
|
1105
|
+
constructor(e) {
|
|
1106
|
+
super(), this.defaultOptions = e.defaultOptions, this.mutationId = e.mutationId, this.mutationCache = e.mutationCache, this.logger = e.logger || Te, this.observers = [], this.state = e.state || Or(), this.setOptions(e.options), this.scheduleGc();
|
|
1107
|
+
}
|
|
1108
|
+
setOptions(e) {
|
|
1109
|
+
this.options = y(y({}, this.defaultOptions), e), this.updateCacheTime(this.options.cacheTime);
|
|
1110
|
+
}
|
|
1111
|
+
get meta() {
|
|
1112
|
+
return this.options.meta;
|
|
1113
|
+
}
|
|
1114
|
+
setState(e) {
|
|
1115
|
+
this.dispatch({
|
|
1116
|
+
type: "setState",
|
|
1117
|
+
state: e
|
|
1118
|
+
});
|
|
1119
|
+
}
|
|
1120
|
+
addObserver(e) {
|
|
1121
|
+
this.observers.includes(e) || (this.observers.push(e), this.clearGcTimeout(), this.mutationCache.notify({
|
|
1122
|
+
type: "observerAdded",
|
|
1123
|
+
mutation: this,
|
|
1124
|
+
observer: e
|
|
1125
|
+
}));
|
|
1126
|
+
}
|
|
1127
|
+
removeObserver(e) {
|
|
1128
|
+
this.observers = this.observers.filter((r) => r !== e), this.scheduleGc(), this.mutationCache.notify({
|
|
1129
|
+
type: "observerRemoved",
|
|
1130
|
+
mutation: this,
|
|
1131
|
+
observer: e
|
|
1132
|
+
});
|
|
1133
|
+
}
|
|
1134
|
+
optionalRemove() {
|
|
1135
|
+
this.observers.length || (this.state.status === "loading" ? this.scheduleGc() : this.mutationCache.remove(this));
|
|
1136
|
+
}
|
|
1137
|
+
continue() {
|
|
1138
|
+
var e, r;
|
|
1139
|
+
return (e = (r = this.retryer) == null ? void 0 : r.continue()) != null ? e : this.execute();
|
|
1140
|
+
}
|
|
1141
|
+
execute() {
|
|
1142
|
+
return D(this, null, function* () {
|
|
1143
|
+
const e = () => {
|
|
1144
|
+
var C;
|
|
1145
|
+
return this.retryer = yt({
|
|
1146
|
+
fn: () => this.options.mutationFn ? this.options.mutationFn(this.state.variables) : Promise.reject("No mutationFn found"),
|
|
1147
|
+
onFail: (b, L) => {
|
|
1148
|
+
this.dispatch({
|
|
1149
|
+
type: "failed",
|
|
1150
|
+
failureCount: b,
|
|
1151
|
+
error: L
|
|
1152
|
+
});
|
|
1153
|
+
},
|
|
1154
|
+
onPause: () => {
|
|
1155
|
+
this.dispatch({
|
|
1156
|
+
type: "pause"
|
|
1157
|
+
});
|
|
1158
|
+
},
|
|
1159
|
+
onContinue: () => {
|
|
1160
|
+
this.dispatch({
|
|
1161
|
+
type: "continue"
|
|
1162
|
+
});
|
|
1163
|
+
},
|
|
1164
|
+
retry: (C = this.options.retry) != null ? C : 0,
|
|
1165
|
+
retryDelay: this.options.retryDelay,
|
|
1166
|
+
networkMode: this.options.networkMode
|
|
1167
|
+
}), this.retryer.promise;
|
|
1168
|
+
}, r = this.state.status === "loading";
|
|
1169
|
+
try {
|
|
1170
|
+
var s, n, i, a, l, u, d, c;
|
|
1171
|
+
if (!r) {
|
|
1172
|
+
var A, p, h, g;
|
|
1173
|
+
this.dispatch({
|
|
1174
|
+
type: "loading",
|
|
1175
|
+
variables: this.options.variables
|
|
1176
|
+
}), yield (A = (p = this.mutationCache.config).onMutate) == null ? void 0 : A.call(p, this.state.variables, this);
|
|
1177
|
+
const b = yield (h = (g = this.options).onMutate) == null ? void 0 : h.call(g, this.state.variables);
|
|
1178
|
+
b !== this.state.context && this.dispatch({
|
|
1179
|
+
type: "loading",
|
|
1180
|
+
context: b,
|
|
1181
|
+
variables: this.state.variables
|
|
1182
|
+
});
|
|
1183
|
+
}
|
|
1184
|
+
const C = yield e();
|
|
1185
|
+
return yield (s = (n = this.mutationCache.config).onSuccess) == null ? void 0 : s.call(n, C, this.state.variables, this.state.context, this), yield (i = (a = this.options).onSuccess) == null ? void 0 : i.call(a, C, this.state.variables, this.state.context), yield (l = (u = this.mutationCache.config).onSettled) == null ? void 0 : l.call(u, C, null, this.state.variables, this.state.context, this), yield (d = (c = this.options).onSettled) == null ? void 0 : d.call(c, C, null, this.state.variables, this.state.context), this.dispatch({
|
|
1186
|
+
type: "success",
|
|
1187
|
+
data: C
|
|
1188
|
+
}), C;
|
|
1189
|
+
} catch (C) {
|
|
1190
|
+
try {
|
|
1191
|
+
var f, v, k, j, S, q, N, m;
|
|
1192
|
+
throw yield (f = (v = this.mutationCache.config).onError) == null ? void 0 : f.call(v, C, this.state.variables, this.state.context, this), process.env.NODE_ENV !== "production" && this.logger.error(C), yield (k = (j = this.options).onError) == null ? void 0 : k.call(j, C, this.state.variables, this.state.context), yield (S = (q = this.mutationCache.config).onSettled) == null ? void 0 : S.call(q, void 0, C, this.state.variables, this.state.context, this), yield (N = (m = this.options).onSettled) == null ? void 0 : N.call(m, void 0, C, this.state.variables, this.state.context), C;
|
|
1193
|
+
} finally {
|
|
1194
|
+
this.dispatch({
|
|
1195
|
+
type: "error",
|
|
1196
|
+
error: C
|
|
1197
|
+
});
|
|
1198
|
+
}
|
|
1199
|
+
}
|
|
1200
|
+
});
|
|
1201
|
+
}
|
|
1202
|
+
dispatch(e) {
|
|
1203
|
+
const r = (s) => {
|
|
1204
|
+
switch (e.type) {
|
|
1205
|
+
case "failed":
|
|
1206
|
+
return K(y({}, s), {
|
|
1207
|
+
failureCount: e.failureCount,
|
|
1208
|
+
failureReason: e.error
|
|
1209
|
+
});
|
|
1210
|
+
case "pause":
|
|
1211
|
+
return K(y({}, s), {
|
|
1212
|
+
isPaused: !0
|
|
1213
|
+
});
|
|
1214
|
+
case "continue":
|
|
1215
|
+
return K(y({}, s), {
|
|
1216
|
+
isPaused: !1
|
|
1217
|
+
});
|
|
1218
|
+
case "loading":
|
|
1219
|
+
return K(y({}, s), {
|
|
1220
|
+
context: e.context,
|
|
1221
|
+
data: void 0,
|
|
1222
|
+
failureCount: 0,
|
|
1223
|
+
failureReason: null,
|
|
1224
|
+
error: null,
|
|
1225
|
+
isPaused: !ce(this.options.networkMode),
|
|
1226
|
+
status: "loading",
|
|
1227
|
+
variables: e.variables
|
|
1228
|
+
});
|
|
1229
|
+
case "success":
|
|
1230
|
+
return K(y({}, s), {
|
|
1231
|
+
data: e.data,
|
|
1232
|
+
failureCount: 0,
|
|
1233
|
+
failureReason: null,
|
|
1234
|
+
error: null,
|
|
1235
|
+
status: "success",
|
|
1236
|
+
isPaused: !1
|
|
1237
|
+
});
|
|
1238
|
+
case "error":
|
|
1239
|
+
return K(y({}, s), {
|
|
1240
|
+
data: void 0,
|
|
1241
|
+
error: e.error,
|
|
1242
|
+
failureCount: s.failureCount + 1,
|
|
1243
|
+
failureReason: e.error,
|
|
1244
|
+
isPaused: !1,
|
|
1245
|
+
status: "error"
|
|
1246
|
+
});
|
|
1247
|
+
case "setState":
|
|
1248
|
+
return y(y({}, s), e.state);
|
|
1249
|
+
}
|
|
1250
|
+
};
|
|
1251
|
+
this.state = r(this.state), T.batch(() => {
|
|
1252
|
+
this.observers.forEach((s) => {
|
|
1253
|
+
s.onMutationUpdate(e);
|
|
1254
|
+
}), this.mutationCache.notify({
|
|
1255
|
+
mutation: this,
|
|
1256
|
+
type: "updated",
|
|
1257
|
+
action: e
|
|
1258
|
+
});
|
|
1259
|
+
});
|
|
1260
|
+
}
|
|
1261
|
+
}
|
|
1262
|
+
function Or() {
|
|
1263
|
+
return {
|
|
1264
|
+
context: void 0,
|
|
1265
|
+
data: void 0,
|
|
1266
|
+
error: null,
|
|
1267
|
+
failureCount: 0,
|
|
1268
|
+
failureReason: null,
|
|
1269
|
+
isPaused: !1,
|
|
1270
|
+
status: "idle",
|
|
1271
|
+
variables: void 0
|
|
1272
|
+
};
|
|
1273
|
+
}
|
|
1274
|
+
class kr extends te {
|
|
1275
|
+
constructor(e) {
|
|
1276
|
+
super(), this.config = e || {}, this.mutations = [], this.mutationId = 0;
|
|
1277
|
+
}
|
|
1278
|
+
build(e, r, s) {
|
|
1279
|
+
const n = new Cr({
|
|
1280
|
+
mutationCache: this,
|
|
1281
|
+
logger: e.getLogger(),
|
|
1282
|
+
mutationId: ++this.mutationId,
|
|
1283
|
+
options: e.defaultMutationOptions(r),
|
|
1284
|
+
state: s,
|
|
1285
|
+
defaultOptions: r.mutationKey ? e.getMutationDefaults(r.mutationKey) : void 0
|
|
1286
|
+
});
|
|
1287
|
+
return this.add(n), n;
|
|
1288
|
+
}
|
|
1289
|
+
add(e) {
|
|
1290
|
+
this.mutations.push(e), this.notify({
|
|
1291
|
+
type: "added",
|
|
1292
|
+
mutation: e
|
|
1293
|
+
});
|
|
1294
|
+
}
|
|
1295
|
+
remove(e) {
|
|
1296
|
+
this.mutations = this.mutations.filter((r) => r !== e), this.notify({
|
|
1297
|
+
type: "removed",
|
|
1298
|
+
mutation: e
|
|
1299
|
+
});
|
|
1300
|
+
}
|
|
1301
|
+
clear() {
|
|
1302
|
+
T.batch(() => {
|
|
1303
|
+
this.mutations.forEach((e) => {
|
|
1304
|
+
this.remove(e);
|
|
1305
|
+
});
|
|
1306
|
+
});
|
|
1307
|
+
}
|
|
1308
|
+
getAll() {
|
|
1309
|
+
return this.mutations;
|
|
1310
|
+
}
|
|
1311
|
+
find(e) {
|
|
1312
|
+
return typeof e.exact == "undefined" && (e.exact = !0), this.mutations.find((r) => Ye(e, r));
|
|
1313
|
+
}
|
|
1314
|
+
findAll(e) {
|
|
1315
|
+
return this.mutations.filter((r) => Ye(e, r));
|
|
1316
|
+
}
|
|
1317
|
+
notify(e) {
|
|
1318
|
+
T.batch(() => {
|
|
1319
|
+
this.listeners.forEach(({
|
|
1320
|
+
listener: r
|
|
1321
|
+
}) => {
|
|
1322
|
+
r(e);
|
|
1323
|
+
});
|
|
1324
|
+
});
|
|
1325
|
+
}
|
|
1326
|
+
resumePausedMutations() {
|
|
1327
|
+
var e;
|
|
1328
|
+
return this.resuming = ((e = this.resuming) != null ? e : Promise.resolve()).then(() => {
|
|
1329
|
+
const r = this.mutations.filter((s) => s.state.isPaused);
|
|
1330
|
+
return T.batch(() => r.reduce((s, n) => s.then(() => n.continue().catch(w)), Promise.resolve()));
|
|
1331
|
+
}).then(() => {
|
|
1332
|
+
this.resuming = void 0;
|
|
1333
|
+
}), this.resuming;
|
|
1334
|
+
}
|
|
1335
|
+
}
|
|
1336
|
+
function xr() {
|
|
1337
|
+
return {
|
|
1338
|
+
onFetch: (t) => {
|
|
1339
|
+
t.fetchFn = () => {
|
|
1340
|
+
var e, r, s, n, i, a;
|
|
1341
|
+
const l = (e = t.fetchOptions) == null || (r = e.meta) == null ? void 0 : r.refetchPage, u = (s = t.fetchOptions) == null || (n = s.meta) == null ? void 0 : n.fetchMore, d = u == null ? void 0 : u.pageParam, c = (u == null ? void 0 : u.direction) === "forward", A = (u == null ? void 0 : u.direction) === "backward", p = ((i = t.state.data) == null ? void 0 : i.pages) || [], h = ((a = t.state.data) == null ? void 0 : a.pageParams) || [];
|
|
1342
|
+
let g = h, f = !1;
|
|
1343
|
+
const v = (m) => {
|
|
1344
|
+
Object.defineProperty(m, "signal", {
|
|
1345
|
+
enumerable: !0,
|
|
1346
|
+
get: () => {
|
|
1347
|
+
var C;
|
|
1348
|
+
if ((C = t.signal) != null && C.aborted)
|
|
1349
|
+
f = !0;
|
|
1350
|
+
else {
|
|
1351
|
+
var b;
|
|
1352
|
+
(b = t.signal) == null || b.addEventListener("abort", () => {
|
|
1353
|
+
f = !0;
|
|
1354
|
+
});
|
|
1355
|
+
}
|
|
1356
|
+
return t.signal;
|
|
1357
|
+
}
|
|
1358
|
+
});
|
|
1359
|
+
}, k = t.options.queryFn || (() => Promise.reject("Missing queryFn for queryKey '" + t.options.queryHash + "'")), j = (m, C, b, L) => (g = L ? [C, ...g] : [...g, C], L ? [b, ...m] : [...m, b]), S = (m, C, b, L) => {
|
|
1360
|
+
if (f)
|
|
1361
|
+
return Promise.reject("Cancelled");
|
|
1362
|
+
if (typeof b == "undefined" && !C && m.length)
|
|
1363
|
+
return Promise.resolve(m);
|
|
1364
|
+
const M = {
|
|
1365
|
+
queryKey: t.queryKey,
|
|
1366
|
+
pageParam: b,
|
|
1367
|
+
meta: t.options.meta
|
|
1368
|
+
};
|
|
1369
|
+
v(M);
|
|
1370
|
+
const I = k(M);
|
|
1371
|
+
return Promise.resolve(I).then((de) => j(m, b, de, L));
|
|
1372
|
+
};
|
|
1373
|
+
let q;
|
|
1374
|
+
if (!p.length)
|
|
1375
|
+
q = S([]);
|
|
1376
|
+
else if (c) {
|
|
1377
|
+
const m = typeof d != "undefined", C = m ? d : Ze(t.options, p);
|
|
1378
|
+
q = S(p, m, C);
|
|
1379
|
+
} else if (A) {
|
|
1380
|
+
const m = typeof d != "undefined", C = m ? d : Kr(t.options, p);
|
|
1381
|
+
q = S(p, m, C, !0);
|
|
1382
|
+
} else {
|
|
1383
|
+
g = [];
|
|
1384
|
+
const m = typeof t.options.getNextPageParam == "undefined";
|
|
1385
|
+
q = (l && p[0] ? l(p[0], 0, p) : !0) ? S([], m, h[0]) : Promise.resolve(j([], h[0], p[0]));
|
|
1386
|
+
for (let b = 1; b < p.length; b++)
|
|
1387
|
+
q = q.then((L) => {
|
|
1388
|
+
if (l && p[b] ? l(p[b], b, p) : !0) {
|
|
1389
|
+
const I = m ? h[b] : Ze(t.options, L);
|
|
1390
|
+
return S(L, m, I);
|
|
1391
|
+
}
|
|
1392
|
+
return Promise.resolve(j(L, h[b], p[b]));
|
|
1393
|
+
});
|
|
1394
|
+
}
|
|
1395
|
+
return q.then((m) => ({
|
|
1396
|
+
pages: m,
|
|
1397
|
+
pageParams: g
|
|
1398
|
+
}));
|
|
1399
|
+
};
|
|
1400
|
+
}
|
|
1401
|
+
};
|
|
1402
|
+
}
|
|
1403
|
+
function Ze(t, e) {
|
|
1404
|
+
return t.getNextPageParam == null ? void 0 : t.getNextPageParam(e[e.length - 1], e);
|
|
1405
|
+
}
|
|
1406
|
+
function Kr(t, e) {
|
|
1407
|
+
return t.getPreviousPageParam == null ? void 0 : t.getPreviousPageParam(e[0], e);
|
|
1408
|
+
}
|
|
1409
|
+
class Lr {
|
|
1410
|
+
constructor(e = {}) {
|
|
1411
|
+
this.queryCache = e.queryCache || new Sr(), this.mutationCache = e.mutationCache || new kr(), this.logger = e.logger || Te, this.defaultOptions = e.defaultOptions || {}, this.queryDefaults = [], this.mutationDefaults = [], this.mountCount = 0, process.env.NODE_ENV !== "production" && e.logger && this.logger.error("Passing a custom logger has been deprecated and will be removed in the next major version.");
|
|
1412
|
+
}
|
|
1413
|
+
mount() {
|
|
1414
|
+
this.mountCount++, this.mountCount === 1 && (this.unsubscribeFocus = oe.subscribe(() => {
|
|
1415
|
+
oe.isFocused() && (this.resumePausedMutations(), this.queryCache.onFocus());
|
|
1416
|
+
}), this.unsubscribeOnline = le.subscribe(() => {
|
|
1417
|
+
le.isOnline() && (this.resumePausedMutations(), this.queryCache.onOnline());
|
|
1418
|
+
}));
|
|
1419
|
+
}
|
|
1420
|
+
unmount() {
|
|
1421
|
+
var e, r;
|
|
1422
|
+
this.mountCount--, this.mountCount === 0 && ((e = this.unsubscribeFocus) == null || e.call(this), this.unsubscribeFocus = void 0, (r = this.unsubscribeOnline) == null || r.call(this), this.unsubscribeOnline = void 0);
|
|
1423
|
+
}
|
|
1424
|
+
isFetching(e, r) {
|
|
1425
|
+
const [s] = W(e, r);
|
|
1426
|
+
return s.fetchStatus = "fetching", this.queryCache.findAll(s).length;
|
|
1427
|
+
}
|
|
1428
|
+
isMutating(e) {
|
|
1429
|
+
return this.mutationCache.findAll(K(y({}, e), {
|
|
1430
|
+
fetching: !0
|
|
1431
|
+
})).length;
|
|
1432
|
+
}
|
|
1433
|
+
getQueryData(e, r) {
|
|
1434
|
+
var s;
|
|
1435
|
+
return (s = this.queryCache.find(e, r)) == null ? void 0 : s.state.data;
|
|
1436
|
+
}
|
|
1437
|
+
ensureQueryData(e, r, s) {
|
|
1438
|
+
const n = B(e, r, s), i = this.getQueryData(n.queryKey);
|
|
1439
|
+
return i ? Promise.resolve(i) : this.fetchQuery(n);
|
|
1440
|
+
}
|
|
1441
|
+
getQueriesData(e) {
|
|
1442
|
+
return this.getQueryCache().findAll(e).map(({
|
|
1443
|
+
queryKey: r,
|
|
1444
|
+
state: s
|
|
1445
|
+
}) => {
|
|
1446
|
+
const n = s.data;
|
|
1447
|
+
return [r, n];
|
|
1448
|
+
});
|
|
1449
|
+
}
|
|
1450
|
+
setQueryData(e, r, s) {
|
|
1451
|
+
const n = this.queryCache.find(e), i = n == null ? void 0 : n.state.data, a = pr(r, i);
|
|
1452
|
+
if (typeof a == "undefined")
|
|
1453
|
+
return;
|
|
1454
|
+
const l = B(e), u = this.defaultQueryOptions(l);
|
|
1455
|
+
return this.queryCache.build(this, u).setData(a, K(y({}, s), {
|
|
1456
|
+
manual: !0
|
|
1457
|
+
}));
|
|
1458
|
+
}
|
|
1459
|
+
setQueriesData(e, r, s) {
|
|
1460
|
+
return T.batch(() => this.getQueryCache().findAll(e).map(({
|
|
1461
|
+
queryKey: n
|
|
1462
|
+
}) => [n, this.setQueryData(n, r, s)]));
|
|
1463
|
+
}
|
|
1464
|
+
getQueryState(e, r) {
|
|
1465
|
+
var s;
|
|
1466
|
+
return (s = this.queryCache.find(e, r)) == null ? void 0 : s.state;
|
|
1467
|
+
}
|
|
1468
|
+
removeQueries(e, r) {
|
|
1469
|
+
const [s] = W(e, r), n = this.queryCache;
|
|
1470
|
+
T.batch(() => {
|
|
1471
|
+
n.findAll(s).forEach((i) => {
|
|
1472
|
+
n.remove(i);
|
|
1473
|
+
});
|
|
1474
|
+
});
|
|
1475
|
+
}
|
|
1476
|
+
resetQueries(e, r, s) {
|
|
1477
|
+
const [n, i] = W(e, r, s), a = this.queryCache, l = y({
|
|
1478
|
+
type: "active"
|
|
1479
|
+
}, n);
|
|
1480
|
+
return T.batch(() => (a.findAll(n).forEach((u) => {
|
|
1481
|
+
u.reset();
|
|
1482
|
+
}), this.refetchQueries(l, i)));
|
|
1483
|
+
}
|
|
1484
|
+
cancelQueries(e, r, s) {
|
|
1485
|
+
const [n, i = {}] = W(e, r, s);
|
|
1486
|
+
typeof i.revert == "undefined" && (i.revert = !0);
|
|
1487
|
+
const a = T.batch(() => this.queryCache.findAll(n).map((l) => l.cancel(i)));
|
|
1488
|
+
return Promise.all(a).then(w).catch(w);
|
|
1489
|
+
}
|
|
1490
|
+
invalidateQueries(e, r, s) {
|
|
1491
|
+
const [n, i] = W(e, r, s);
|
|
1492
|
+
return T.batch(() => {
|
|
1493
|
+
var a, l;
|
|
1494
|
+
if (this.queryCache.findAll(n).forEach((d) => {
|
|
1495
|
+
d.invalidate();
|
|
1496
|
+
}), n.refetchType === "none")
|
|
1497
|
+
return Promise.resolve();
|
|
1498
|
+
const u = K(y({}, n), {
|
|
1499
|
+
type: (a = (l = n.refetchType) != null ? l : n.type) != null ? a : "active"
|
|
1500
|
+
});
|
|
1501
|
+
return this.refetchQueries(u, i);
|
|
1502
|
+
});
|
|
1503
|
+
}
|
|
1504
|
+
refetchQueries(e, r, s) {
|
|
1505
|
+
const [n, i] = W(e, r, s), a = T.batch(() => this.queryCache.findAll(n).filter((u) => !u.isDisabled()).map((u) => {
|
|
1506
|
+
var d;
|
|
1507
|
+
return u.fetch(void 0, K(y({}, i), {
|
|
1508
|
+
cancelRefetch: (d = i == null ? void 0 : i.cancelRefetch) != null ? d : !0,
|
|
1509
|
+
meta: {
|
|
1510
|
+
refetchPage: n.refetchPage
|
|
1511
|
+
}
|
|
1512
|
+
}));
|
|
1513
|
+
}));
|
|
1514
|
+
let l = Promise.all(a).then(w);
|
|
1515
|
+
return i != null && i.throwOnError || (l = l.catch(w)), l;
|
|
1516
|
+
}
|
|
1517
|
+
fetchQuery(e, r, s) {
|
|
1518
|
+
const n = B(e, r, s), i = this.defaultQueryOptions(n);
|
|
1519
|
+
typeof i.retry == "undefined" && (i.retry = !1);
|
|
1520
|
+
const a = this.queryCache.build(this, i);
|
|
1521
|
+
return a.isStaleByTime(i.staleTime) ? a.fetch(i) : Promise.resolve(a.state.data);
|
|
1522
|
+
}
|
|
1523
|
+
prefetchQuery(e, r, s) {
|
|
1524
|
+
return this.fetchQuery(e, r, s).then(w).catch(w);
|
|
1525
|
+
}
|
|
1526
|
+
fetchInfiniteQuery(e, r, s) {
|
|
1527
|
+
const n = B(e, r, s);
|
|
1528
|
+
return n.behavior = xr(), this.fetchQuery(n);
|
|
1529
|
+
}
|
|
1530
|
+
prefetchInfiniteQuery(e, r, s) {
|
|
1531
|
+
return this.fetchInfiniteQuery(e, r, s).then(w).catch(w);
|
|
1532
|
+
}
|
|
1533
|
+
resumePausedMutations() {
|
|
1534
|
+
return this.mutationCache.resumePausedMutations();
|
|
1535
|
+
}
|
|
1536
|
+
getQueryCache() {
|
|
1537
|
+
return this.queryCache;
|
|
1538
|
+
}
|
|
1539
|
+
getMutationCache() {
|
|
1540
|
+
return this.mutationCache;
|
|
1541
|
+
}
|
|
1542
|
+
getLogger() {
|
|
1543
|
+
return this.logger;
|
|
1544
|
+
}
|
|
1545
|
+
getDefaultOptions() {
|
|
1546
|
+
return this.defaultOptions;
|
|
1547
|
+
}
|
|
1548
|
+
setDefaultOptions(e) {
|
|
1549
|
+
this.defaultOptions = e;
|
|
1550
|
+
}
|
|
1551
|
+
setQueryDefaults(e, r) {
|
|
1552
|
+
const s = this.queryDefaults.find((n) => H(e) === H(n.queryKey));
|
|
1553
|
+
s ? s.defaultOptions = r : this.queryDefaults.push({
|
|
1554
|
+
queryKey: e,
|
|
1555
|
+
defaultOptions: r
|
|
1556
|
+
});
|
|
1557
|
+
}
|
|
1558
|
+
getQueryDefaults(e) {
|
|
1559
|
+
if (!e)
|
|
1560
|
+
return;
|
|
1561
|
+
const r = this.queryDefaults.find((s) => F(e, s.queryKey));
|
|
1562
|
+
return process.env.NODE_ENV !== "production" && this.queryDefaults.filter((n) => F(e, n.queryKey)).length > 1 && this.logger.error("[QueryClient] Several query defaults match with key '" + JSON.stringify(e) + "'. The first matching query defaults are used. Please check how query defaults are registered. Order does matter here. cf. https://react-query.tanstack.com/reference/QueryClient#queryclientsetquerydefaults."), r == null ? void 0 : r.defaultOptions;
|
|
1563
|
+
}
|
|
1564
|
+
setMutationDefaults(e, r) {
|
|
1565
|
+
const s = this.mutationDefaults.find((n) => H(e) === H(n.mutationKey));
|
|
1566
|
+
s ? s.defaultOptions = r : this.mutationDefaults.push({
|
|
1567
|
+
mutationKey: e,
|
|
1568
|
+
defaultOptions: r
|
|
1569
|
+
});
|
|
1570
|
+
}
|
|
1571
|
+
getMutationDefaults(e) {
|
|
1572
|
+
if (!e)
|
|
1573
|
+
return;
|
|
1574
|
+
const r = this.mutationDefaults.find((s) => F(e, s.mutationKey));
|
|
1575
|
+
return process.env.NODE_ENV !== "production" && this.mutationDefaults.filter((n) => F(e, n.mutationKey)).length > 1 && this.logger.error("[QueryClient] Several mutation defaults match with key '" + JSON.stringify(e) + "'. The first matching mutation defaults are used. Please check how mutation defaults are registered. Order does matter here. cf. https://react-query.tanstack.com/reference/QueryClient#queryclientsetmutationdefaults."), r == null ? void 0 : r.defaultOptions;
|
|
1576
|
+
}
|
|
1577
|
+
defaultQueryOptions(e) {
|
|
1578
|
+
if (e != null && e._defaulted)
|
|
1579
|
+
return e;
|
|
1580
|
+
const r = K(y(y(y({}, this.defaultOptions.queries), this.getQueryDefaults(e == null ? void 0 : e.queryKey)), e), {
|
|
1581
|
+
_defaulted: !0
|
|
1582
|
+
});
|
|
1583
|
+
return !r.queryHash && r.queryKey && (r.queryHash = je(r.queryKey, r)), typeof r.refetchOnReconnect == "undefined" && (r.refetchOnReconnect = r.networkMode !== "always"), typeof r.useErrorBoundary == "undefined" && (r.useErrorBoundary = !!r.suspense), r;
|
|
1584
|
+
}
|
|
1585
|
+
defaultMutationOptions(e) {
|
|
1586
|
+
return e != null && e._defaulted ? e : K(y(y(y({}, this.defaultOptions.mutations), this.getMutationDefaults(e == null ? void 0 : e.mutationKey)), e), {
|
|
1587
|
+
_defaulted: !0
|
|
1588
|
+
});
|
|
1589
|
+
}
|
|
1590
|
+
clear() {
|
|
1591
|
+
this.queryCache.clear(), this.mutationCache.clear();
|
|
1592
|
+
}
|
|
1593
|
+
}
|
|
1594
|
+
class Nr extends te {
|
|
1595
|
+
constructor(e, r) {
|
|
1596
|
+
super(), this.client = e, this.options = r, this.trackedProps = /* @__PURE__ */ new Set(), this.selectError = null, this.bindMethods(), this.setOptions(r);
|
|
1597
|
+
}
|
|
1598
|
+
bindMethods() {
|
|
1599
|
+
this.remove = this.remove.bind(this), this.refetch = this.refetch.bind(this);
|
|
1600
|
+
}
|
|
1601
|
+
onSubscribe() {
|
|
1602
|
+
this.listeners.size === 1 && (this.currentQuery.addObserver(this), Be(this.currentQuery, this.options) && this.executeFetch(), this.updateTimers());
|
|
1603
|
+
}
|
|
1604
|
+
onUnsubscribe() {
|
|
1605
|
+
this.hasListeners() || this.destroy();
|
|
1606
|
+
}
|
|
1607
|
+
shouldFetchOnReconnect() {
|
|
1608
|
+
return xe(this.currentQuery, this.options, this.options.refetchOnReconnect);
|
|
1609
|
+
}
|
|
1610
|
+
shouldFetchOnWindowFocus() {
|
|
1611
|
+
return xe(this.currentQuery, this.options, this.options.refetchOnWindowFocus);
|
|
1612
|
+
}
|
|
1613
|
+
destroy() {
|
|
1614
|
+
this.listeners = /* @__PURE__ */ new Set(), this.clearStaleTimeout(), this.clearRefetchInterval(), this.currentQuery.removeObserver(this);
|
|
1615
|
+
}
|
|
1616
|
+
setOptions(e, r) {
|
|
1617
|
+
const s = this.options, n = this.currentQuery;
|
|
1618
|
+
if (this.options = this.client.defaultQueryOptions(e), process.env.NODE_ENV !== "production" && typeof (e == null ? void 0 : e.isDataEqual) != "undefined" && this.client.getLogger().error("The isDataEqual option has been deprecated and will be removed in the next major version. You can achieve the same functionality by passing a function as the structuralSharing option"), Ce(s, this.options) || this.client.getQueryCache().notify({
|
|
1619
|
+
type: "observerOptionsUpdated",
|
|
1620
|
+
query: this.currentQuery,
|
|
1621
|
+
observer: this
|
|
1622
|
+
}), typeof this.options.enabled != "undefined" && typeof this.options.enabled != "boolean")
|
|
1623
|
+
throw new Error("Expected enabled to be a boolean");
|
|
1624
|
+
this.options.queryKey || (this.options.queryKey = s.queryKey), this.updateQuery();
|
|
1625
|
+
const i = this.hasListeners();
|
|
1626
|
+
i && _e(this.currentQuery, n, this.options, s) && this.executeFetch(), this.updateResult(r), i && (this.currentQuery !== n || this.options.enabled !== s.enabled || this.options.staleTime !== s.staleTime) && this.updateStaleTimeout();
|
|
1627
|
+
const a = this.computeRefetchInterval();
|
|
1628
|
+
i && (this.currentQuery !== n || this.options.enabled !== s.enabled || a !== this.currentRefetchInterval) && this.updateRefetchInterval(a);
|
|
1629
|
+
}
|
|
1630
|
+
getOptimisticResult(e) {
|
|
1631
|
+
const r = this.client.getQueryCache().build(this.client, e), s = this.createResult(r, e);
|
|
1632
|
+
return Tr(this, s, e) && (this.currentResult = s, this.currentResultOptions = this.options, this.currentResultState = this.currentQuery.state), s;
|
|
1633
|
+
}
|
|
1634
|
+
getCurrentResult() {
|
|
1635
|
+
return this.currentResult;
|
|
1636
|
+
}
|
|
1637
|
+
trackResult(e) {
|
|
1638
|
+
const r = {};
|
|
1639
|
+
return Object.keys(e).forEach((s) => {
|
|
1640
|
+
Object.defineProperty(r, s, {
|
|
1641
|
+
configurable: !1,
|
|
1642
|
+
enumerable: !0,
|
|
1643
|
+
get: () => (this.trackedProps.add(s), e[s])
|
|
1644
|
+
});
|
|
1645
|
+
}), r;
|
|
1646
|
+
}
|
|
1647
|
+
getCurrentQuery() {
|
|
1648
|
+
return this.currentQuery;
|
|
1649
|
+
}
|
|
1650
|
+
remove() {
|
|
1651
|
+
this.client.getQueryCache().remove(this.currentQuery);
|
|
1652
|
+
}
|
|
1653
|
+
refetch(s = {}) {
|
|
1654
|
+
var n = s, {
|
|
1655
|
+
refetchPage: e
|
|
1656
|
+
} = n, r = ze(n, [
|
|
1657
|
+
"refetchPage"
|
|
1658
|
+
]);
|
|
1659
|
+
return this.fetch(K(y({}, r), {
|
|
1660
|
+
meta: {
|
|
1661
|
+
refetchPage: e
|
|
1662
|
+
}
|
|
1663
|
+
}));
|
|
1664
|
+
}
|
|
1665
|
+
fetchOptimistic(e) {
|
|
1666
|
+
const r = this.client.defaultQueryOptions(e), s = this.client.getQueryCache().build(this.client, r);
|
|
1667
|
+
return s.isFetchingOptimistic = !0, s.fetch().then(() => this.createResult(s, r));
|
|
1668
|
+
}
|
|
1669
|
+
fetch(e) {
|
|
1670
|
+
var r;
|
|
1671
|
+
return this.executeFetch(K(y({}, e), {
|
|
1672
|
+
cancelRefetch: (r = e.cancelRefetch) != null ? r : !0
|
|
1673
|
+
})).then(() => (this.updateResult(), this.currentResult));
|
|
1674
|
+
}
|
|
1675
|
+
executeFetch(e) {
|
|
1676
|
+
this.updateQuery();
|
|
1677
|
+
let r = this.currentQuery.fetch(this.options, e);
|
|
1678
|
+
return e != null && e.throwOnError || (r = r.catch(w)), r;
|
|
1679
|
+
}
|
|
1680
|
+
updateStaleTimeout() {
|
|
1681
|
+
if (this.clearStaleTimeout(), _ || this.currentResult.isStale || !Se(this.options.staleTime))
|
|
1682
|
+
return;
|
|
1683
|
+
const r = dt(this.currentResult.dataUpdatedAt, this.options.staleTime) + 1;
|
|
1684
|
+
this.staleTimeoutId = setTimeout(() => {
|
|
1685
|
+
this.currentResult.isStale || this.updateResult();
|
|
1686
|
+
}, r);
|
|
1687
|
+
}
|
|
1688
|
+
computeRefetchInterval() {
|
|
1689
|
+
var e;
|
|
1690
|
+
return typeof this.options.refetchInterval == "function" ? this.options.refetchInterval(this.currentResult.data, this.currentQuery) : (e = this.options.refetchInterval) != null ? e : !1;
|
|
1691
|
+
}
|
|
1692
|
+
updateRefetchInterval(e) {
|
|
1693
|
+
this.clearRefetchInterval(), this.currentRefetchInterval = e, !(_ || this.options.enabled === !1 || !Se(this.currentRefetchInterval) || this.currentRefetchInterval === 0) && (this.refetchIntervalId = setInterval(() => {
|
|
1694
|
+
(this.options.refetchIntervalInBackground || oe.isFocused()) && this.executeFetch();
|
|
1695
|
+
}, this.currentRefetchInterval));
|
|
1696
|
+
}
|
|
1697
|
+
updateTimers() {
|
|
1698
|
+
this.updateStaleTimeout(), this.updateRefetchInterval(this.computeRefetchInterval());
|
|
1699
|
+
}
|
|
1700
|
+
clearStaleTimeout() {
|
|
1701
|
+
this.staleTimeoutId && (clearTimeout(this.staleTimeoutId), this.staleTimeoutId = void 0);
|
|
1702
|
+
}
|
|
1703
|
+
clearRefetchInterval() {
|
|
1704
|
+
this.refetchIntervalId && (clearInterval(this.refetchIntervalId), this.refetchIntervalId = void 0);
|
|
1705
|
+
}
|
|
1706
|
+
createResult(e, r) {
|
|
1707
|
+
const s = this.currentQuery, n = this.options, i = this.currentResult, a = this.currentResultState, l = this.currentResultOptions, u = e !== s, d = u ? e.state : this.currentQueryInitialState, c = u ? this.currentResult : this.previousQueryResult, {
|
|
1708
|
+
state: A
|
|
1709
|
+
} = e;
|
|
1710
|
+
let {
|
|
1711
|
+
dataUpdatedAt: p,
|
|
1712
|
+
error: h,
|
|
1713
|
+
errorUpdatedAt: g,
|
|
1714
|
+
fetchStatus: f,
|
|
1715
|
+
status: v
|
|
1716
|
+
} = A, k = !1, j = !1, S;
|
|
1717
|
+
if (r._optimisticResults) {
|
|
1718
|
+
const b = this.hasListeners(), L = !b && Be(e, r), M = b && _e(e, s, r, n);
|
|
1719
|
+
(L || M) && (f = ce(e.options.networkMode) ? "fetching" : "paused", p || (v = "loading")), r._optimisticResults === "isRestoring" && (f = "idle");
|
|
1720
|
+
}
|
|
1721
|
+
if (r.keepPreviousData && !A.dataUpdatedAt && c != null && c.isSuccess && v !== "error")
|
|
1722
|
+
S = c.data, p = c.dataUpdatedAt, v = c.status, k = !0;
|
|
1723
|
+
else if (r.select && typeof A.data != "undefined")
|
|
1724
|
+
if (i && A.data === (a == null ? void 0 : a.data) && r.select === this.selectFn)
|
|
1725
|
+
S = this.selectResult;
|
|
1726
|
+
else
|
|
1727
|
+
try {
|
|
1728
|
+
this.selectFn = r.select, S = r.select(A.data), S = ke(i == null ? void 0 : i.data, S, r), this.selectResult = S, this.selectError = null;
|
|
1729
|
+
} catch (b) {
|
|
1730
|
+
process.env.NODE_ENV !== "production" && this.client.getLogger().error(b), this.selectError = b;
|
|
1731
|
+
}
|
|
1732
|
+
else
|
|
1733
|
+
S = A.data;
|
|
1734
|
+
if (typeof r.placeholderData != "undefined" && typeof S == "undefined" && v === "loading") {
|
|
1735
|
+
let b;
|
|
1736
|
+
if (i != null && i.isPlaceholderData && r.placeholderData === (l == null ? void 0 : l.placeholderData))
|
|
1737
|
+
b = i.data;
|
|
1738
|
+
else if (b = typeof r.placeholderData == "function" ? r.placeholderData() : r.placeholderData, r.select && typeof b != "undefined")
|
|
1739
|
+
try {
|
|
1740
|
+
b = r.select(b), this.selectError = null;
|
|
1741
|
+
} catch (L) {
|
|
1742
|
+
process.env.NODE_ENV !== "production" && this.client.getLogger().error(L), this.selectError = L;
|
|
1743
|
+
}
|
|
1744
|
+
typeof b != "undefined" && (v = "success", S = ke(i == null ? void 0 : i.data, b, r), j = !0);
|
|
1745
|
+
}
|
|
1746
|
+
this.selectError && (h = this.selectError, S = this.selectResult, g = Date.now(), v = "error");
|
|
1747
|
+
const q = f === "fetching", N = v === "loading", m = v === "error";
|
|
1748
|
+
return {
|
|
1749
|
+
status: v,
|
|
1750
|
+
fetchStatus: f,
|
|
1751
|
+
isLoading: N,
|
|
1752
|
+
isSuccess: v === "success",
|
|
1753
|
+
isError: m,
|
|
1754
|
+
isInitialLoading: N && q,
|
|
1755
|
+
data: S,
|
|
1756
|
+
dataUpdatedAt: p,
|
|
1757
|
+
error: h,
|
|
1758
|
+
errorUpdatedAt: g,
|
|
1759
|
+
failureCount: A.fetchFailureCount,
|
|
1760
|
+
failureReason: A.fetchFailureReason,
|
|
1761
|
+
errorUpdateCount: A.errorUpdateCount,
|
|
1762
|
+
isFetched: A.dataUpdateCount > 0 || A.errorUpdateCount > 0,
|
|
1763
|
+
isFetchedAfterMount: A.dataUpdateCount > d.dataUpdateCount || A.errorUpdateCount > d.errorUpdateCount,
|
|
1764
|
+
isFetching: q,
|
|
1765
|
+
isRefetching: q && !N,
|
|
1766
|
+
isLoadingError: m && A.dataUpdatedAt === 0,
|
|
1767
|
+
isPaused: f === "paused",
|
|
1768
|
+
isPlaceholderData: j,
|
|
1769
|
+
isPreviousData: k,
|
|
1770
|
+
isRefetchError: m && A.dataUpdatedAt !== 0,
|
|
1771
|
+
isStale: Ee(e, r),
|
|
1772
|
+
refetch: this.refetch,
|
|
1773
|
+
remove: this.remove
|
|
1774
|
+
};
|
|
1775
|
+
}
|
|
1776
|
+
updateResult(e) {
|
|
1777
|
+
const r = this.currentResult, s = this.createResult(this.currentQuery, this.options);
|
|
1778
|
+
if (this.currentResultState = this.currentQuery.state, this.currentResultOptions = this.options, Ce(s, r))
|
|
1779
|
+
return;
|
|
1780
|
+
this.currentResult = s;
|
|
1781
|
+
const n = {
|
|
1782
|
+
cache: !0
|
|
1783
|
+
}, i = () => {
|
|
1784
|
+
if (!r)
|
|
1785
|
+
return !0;
|
|
1786
|
+
const {
|
|
1787
|
+
notifyOnChangeProps: a
|
|
1788
|
+
} = this.options, l = typeof a == "function" ? a() : a;
|
|
1789
|
+
if (l === "all" || !l && !this.trackedProps.size)
|
|
1790
|
+
return !0;
|
|
1791
|
+
const u = new Set(l != null ? l : this.trackedProps);
|
|
1792
|
+
return this.options.useErrorBoundary && u.add("error"), Object.keys(this.currentResult).some((d) => {
|
|
1793
|
+
const c = d;
|
|
1794
|
+
return this.currentResult[c] !== r[c] && u.has(c);
|
|
1795
|
+
});
|
|
1796
|
+
};
|
|
1797
|
+
(e == null ? void 0 : e.listeners) !== !1 && i() && (n.listeners = !0), this.notify(y(y({}, n), e));
|
|
1798
|
+
}
|
|
1799
|
+
updateQuery() {
|
|
1800
|
+
const e = this.client.getQueryCache().build(this.client, this.options);
|
|
1801
|
+
if (e === this.currentQuery)
|
|
1802
|
+
return;
|
|
1803
|
+
const r = this.currentQuery;
|
|
1804
|
+
this.currentQuery = e, this.currentQueryInitialState = e.state, this.previousQueryResult = this.currentResult, this.hasListeners() && (r == null || r.removeObserver(this), e.addObserver(this));
|
|
1805
|
+
}
|
|
1806
|
+
onQueryUpdate(e) {
|
|
1807
|
+
const r = {};
|
|
1808
|
+
e.type === "success" ? r.onSuccess = !e.manual : e.type === "error" && !ae(e.error) && (r.onError = !0), this.updateResult(r), this.hasListeners() && this.updateTimers();
|
|
1809
|
+
}
|
|
1810
|
+
notify(e) {
|
|
1811
|
+
T.batch(() => {
|
|
1812
|
+
if (e.onSuccess) {
|
|
1813
|
+
var r, s, n, i;
|
|
1814
|
+
(r = (s = this.options).onSuccess) == null || r.call(s, this.currentResult.data), (n = (i = this.options).onSettled) == null || n.call(i, this.currentResult.data, null);
|
|
1815
|
+
} else if (e.onError) {
|
|
1816
|
+
var a, l, u, d;
|
|
1817
|
+
(a = (l = this.options).onError) == null || a.call(l, this.currentResult.error), (u = (d = this.options).onSettled) == null || u.call(d, void 0, this.currentResult.error);
|
|
1818
|
+
}
|
|
1819
|
+
e.listeners && this.listeners.forEach(({
|
|
1820
|
+
listener: c
|
|
1821
|
+
}) => {
|
|
1822
|
+
c(this.currentResult);
|
|
1823
|
+
}), e.cache && this.client.getQueryCache().notify({
|
|
1824
|
+
query: this.currentQuery,
|
|
1825
|
+
type: "observerResultsUpdated"
|
|
1826
|
+
});
|
|
1827
|
+
});
|
|
1828
|
+
}
|
|
1829
|
+
}
|
|
1830
|
+
function jr(t, e) {
|
|
1831
|
+
return e.enabled !== !1 && !t.state.dataUpdatedAt && !(t.state.status === "error" && e.retryOnMount === !1);
|
|
1832
|
+
}
|
|
1833
|
+
function Be(t, e) {
|
|
1834
|
+
return jr(t, e) || t.state.dataUpdatedAt > 0 && xe(t, e, e.refetchOnMount);
|
|
1835
|
+
}
|
|
1836
|
+
function xe(t, e, r) {
|
|
1837
|
+
if (e.enabled !== !1) {
|
|
1838
|
+
const s = typeof r == "function" ? r(t) : r;
|
|
1839
|
+
return s === "always" || s !== !1 && Ee(t, e);
|
|
1840
|
+
}
|
|
1841
|
+
return !1;
|
|
1842
|
+
}
|
|
1843
|
+
function _e(t, e, r, s) {
|
|
1844
|
+
return r.enabled !== !1 && (t !== e || s.enabled === !1) && (!r.suspense || t.state.status !== "error") && Ee(t, r);
|
|
1845
|
+
}
|
|
1846
|
+
function Ee(t, e) {
|
|
1847
|
+
return t.isStaleByTime(e.staleTime);
|
|
1848
|
+
}
|
|
1849
|
+
function Tr(t, e, r) {
|
|
1850
|
+
return r.keepPreviousData ? !1 : r.placeholderData !== void 0 ? e.isPlaceholderData : !Ce(t.getCurrentResult(), e);
|
|
1851
|
+
}
|
|
1852
|
+
var Ke = {}, Er = {
|
|
1853
|
+
get exports() {
|
|
1854
|
+
return Ke;
|
|
1855
|
+
},
|
|
1856
|
+
set exports(t) {
|
|
1857
|
+
Ke = t;
|
|
1858
|
+
}
|
|
1859
|
+
}, me = {};
|
|
1860
|
+
/**
|
|
1861
|
+
* @license React
|
|
1862
|
+
* use-sync-external-store-shim.production.min.js
|
|
1863
|
+
*
|
|
1864
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
1865
|
+
*
|
|
1866
|
+
* This source code is licensed under the MIT license found in the
|
|
1867
|
+
* LICENSE file in the root directory of this source tree.
|
|
1868
|
+
*/
|
|
1869
|
+
var $e;
|
|
1870
|
+
function Pr() {
|
|
1871
|
+
if ($e)
|
|
1872
|
+
return me;
|
|
1873
|
+
$e = 1;
|
|
1874
|
+
var t = ot;
|
|
1875
|
+
function e(A, p) {
|
|
1876
|
+
return A === p && (A !== 0 || 1 / A === 1 / p) || A !== A && p !== p;
|
|
1877
|
+
}
|
|
1878
|
+
var r = typeof Object.is == "function" ? Object.is : e, s = t.useState, n = t.useEffect, i = t.useLayoutEffect, a = t.useDebugValue;
|
|
1879
|
+
function l(A, p) {
|
|
1880
|
+
var h = p(), g = s({ inst: { value: h, getSnapshot: p } }), f = g[0].inst, v = g[1];
|
|
1881
|
+
return i(function() {
|
|
1882
|
+
f.value = h, f.getSnapshot = p, u(f) && v({ inst: f });
|
|
1883
|
+
}, [A, h, p]), n(function() {
|
|
1884
|
+
return u(f) && v({ inst: f }), A(function() {
|
|
1885
|
+
u(f) && v({ inst: f });
|
|
1886
|
+
});
|
|
1887
|
+
}, [A]), a(h), h;
|
|
1888
|
+
}
|
|
1889
|
+
function u(A) {
|
|
1890
|
+
var p = A.getSnapshot;
|
|
1891
|
+
A = A.value;
|
|
1892
|
+
try {
|
|
1893
|
+
var h = p();
|
|
1894
|
+
return !r(A, h);
|
|
1895
|
+
} catch (g) {
|
|
1896
|
+
return !0;
|
|
1897
|
+
}
|
|
1898
|
+
}
|
|
1899
|
+
function d(A, p) {
|
|
1900
|
+
return p();
|
|
1901
|
+
}
|
|
1902
|
+
var c = typeof window == "undefined" || typeof window.document == "undefined" || typeof window.document.createElement == "undefined" ? d : l;
|
|
1903
|
+
return me.useSyncExternalStore = t.useSyncExternalStore !== void 0 ? t.useSyncExternalStore : c, me;
|
|
1904
|
+
}
|
|
1905
|
+
var ge = {};
|
|
1906
|
+
/**
|
|
1907
|
+
* @license React
|
|
1908
|
+
* use-sync-external-store-shim.development.js
|
|
1909
|
+
*
|
|
1910
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
1911
|
+
*
|
|
1912
|
+
* This source code is licensed under the MIT license found in the
|
|
1913
|
+
* LICENSE file in the root directory of this source tree.
|
|
1914
|
+
*/
|
|
1915
|
+
var et;
|
|
1916
|
+
function Mr() {
|
|
1917
|
+
return et || (et = 1, process.env.NODE_ENV !== "production" && function() {
|
|
1918
|
+
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ != "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());
|
|
1919
|
+
var t = ot, e = t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
|
|
1920
|
+
function r(S) {
|
|
1921
|
+
{
|
|
1922
|
+
for (var q = arguments.length, N = new Array(q > 1 ? q - 1 : 0), m = 1; m < q; m++)
|
|
1923
|
+
N[m - 1] = arguments[m];
|
|
1924
|
+
s("error", S, N);
|
|
1925
|
+
}
|
|
1926
|
+
}
|
|
1927
|
+
function s(S, q, N) {
|
|
1928
|
+
{
|
|
1929
|
+
var m = e.ReactDebugCurrentFrame, C = m.getStackAddendum();
|
|
1930
|
+
C !== "" && (q += "%s", N = N.concat([C]));
|
|
1931
|
+
var b = N.map(function(L) {
|
|
1932
|
+
return String(L);
|
|
1933
|
+
});
|
|
1934
|
+
b.unshift("Warning: " + q), Function.prototype.apply.call(console[S], console, b);
|
|
1935
|
+
}
|
|
1936
|
+
}
|
|
1937
|
+
function n(S, q) {
|
|
1938
|
+
return S === q && (S !== 0 || 1 / S === 1 / q) || S !== S && q !== q;
|
|
1939
|
+
}
|
|
1940
|
+
var i = typeof Object.is == "function" ? Object.is : n, a = t.useState, l = t.useEffect, u = t.useLayoutEffect, d = t.useDebugValue, c = !1, A = !1;
|
|
1941
|
+
function p(S, q, N) {
|
|
1942
|
+
c || t.startTransition !== void 0 && (c = !0, r("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));
|
|
1943
|
+
var m = q();
|
|
1944
|
+
if (!A) {
|
|
1945
|
+
var C = q();
|
|
1946
|
+
i(m, C) || (r("The result of getSnapshot should be cached to avoid an infinite loop"), A = !0);
|
|
1947
|
+
}
|
|
1948
|
+
var b = a({
|
|
1949
|
+
inst: {
|
|
1950
|
+
value: m,
|
|
1951
|
+
getSnapshot: q
|
|
1952
|
+
}
|
|
1953
|
+
}), L = b[0].inst, M = b[1];
|
|
1954
|
+
return u(function() {
|
|
1955
|
+
L.value = m, L.getSnapshot = q, h(L) && M({
|
|
1956
|
+
inst: L
|
|
1957
|
+
});
|
|
1958
|
+
}, [S, m, q]), l(function() {
|
|
1959
|
+
h(L) && M({
|
|
1960
|
+
inst: L
|
|
1961
|
+
});
|
|
1962
|
+
var I = function() {
|
|
1963
|
+
h(L) && M({
|
|
1964
|
+
inst: L
|
|
1965
|
+
});
|
|
1966
|
+
};
|
|
1967
|
+
return S(I);
|
|
1968
|
+
}, [S]), d(m), m;
|
|
1969
|
+
}
|
|
1970
|
+
function h(S) {
|
|
1971
|
+
var q = S.getSnapshot, N = S.value;
|
|
1972
|
+
try {
|
|
1973
|
+
var m = q();
|
|
1974
|
+
return !i(N, m);
|
|
1975
|
+
} catch (C) {
|
|
1976
|
+
return !0;
|
|
1977
|
+
}
|
|
1978
|
+
}
|
|
1979
|
+
function g(S, q, N) {
|
|
1980
|
+
return q();
|
|
1981
|
+
}
|
|
1982
|
+
var f = typeof window != "undefined" && typeof window.document != "undefined" && typeof window.document.createElement != "undefined", v = !f, k = v ? g : p, j = t.useSyncExternalStore !== void 0 ? t.useSyncExternalStore : k;
|
|
1983
|
+
ge.useSyncExternalStore = j, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ != "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());
|
|
1984
|
+
}()), ge;
|
|
1985
|
+
}
|
|
1986
|
+
(function(t) {
|
|
1987
|
+
process.env.NODE_ENV === "production" ? t.exports = Pr() : t.exports = Mr();
|
|
1988
|
+
})(Er);
|
|
1989
|
+
const Dr = Ke.useSyncExternalStore, tt = /* @__PURE__ */ E.createContext(void 0), gt = /* @__PURE__ */ E.createContext(!1);
|
|
1990
|
+
function qt(t, e) {
|
|
1991
|
+
return t || (e && typeof window != "undefined" ? (window.ReactQueryClientContext || (window.ReactQueryClientContext = tt), window.ReactQueryClientContext) : tt);
|
|
1992
|
+
}
|
|
1993
|
+
const wr = ({
|
|
1994
|
+
context: t
|
|
1995
|
+
} = {}) => {
|
|
1996
|
+
const e = E.useContext(qt(t, E.useContext(gt)));
|
|
1997
|
+
if (!e)
|
|
1998
|
+
throw new Error("No QueryClient set, use QueryClientProvider to set one");
|
|
1999
|
+
return e;
|
|
2000
|
+
}, zr = ({
|
|
2001
|
+
client: t,
|
|
2002
|
+
children: e,
|
|
2003
|
+
context: r,
|
|
2004
|
+
contextSharing: s = !1
|
|
2005
|
+
}) => {
|
|
2006
|
+
E.useEffect(() => (t.mount(), () => {
|
|
2007
|
+
t.unmount();
|
|
2008
|
+
}), [t]), process.env.NODE_ENV !== "production" && s && t.getLogger().error("The contextSharing option has been deprecated and will be removed in the next major version");
|
|
2009
|
+
const n = qt(r, s);
|
|
2010
|
+
return /* @__PURE__ */ E.createElement(gt.Provider, {
|
|
2011
|
+
value: !r && s
|
|
2012
|
+
}, /* @__PURE__ */ E.createElement(n.Provider, {
|
|
2013
|
+
value: t
|
|
2014
|
+
}, e));
|
|
2015
|
+
}, bt = /* @__PURE__ */ E.createContext(!1), Ir = () => E.useContext(bt);
|
|
2016
|
+
bt.Provider;
|
|
2017
|
+
function Wr() {
|
|
2018
|
+
let t = !1;
|
|
2019
|
+
return {
|
|
2020
|
+
clearReset: () => {
|
|
2021
|
+
t = !1;
|
|
2022
|
+
},
|
|
2023
|
+
reset: () => {
|
|
2024
|
+
t = !0;
|
|
2025
|
+
},
|
|
2026
|
+
isReset: () => t
|
|
2027
|
+
};
|
|
2028
|
+
}
|
|
2029
|
+
const Rr = /* @__PURE__ */ E.createContext(Wr()), Ur = () => E.useContext(Rr);
|
|
2030
|
+
function Hr(t, e) {
|
|
2031
|
+
return typeof t == "function" ? t(...e) : !!t;
|
|
2032
|
+
}
|
|
2033
|
+
const Qr = (t, e) => {
|
|
2034
|
+
(t.suspense || t.useErrorBoundary) && (e.isReset() || (t.retryOnMount = !1));
|
|
2035
|
+
}, Gr = (t) => {
|
|
2036
|
+
E.useEffect(() => {
|
|
2037
|
+
t.clearReset();
|
|
2038
|
+
}, [t]);
|
|
2039
|
+
}, Yr = ({
|
|
2040
|
+
result: t,
|
|
2041
|
+
errorResetBoundary: e,
|
|
2042
|
+
useErrorBoundary: r,
|
|
2043
|
+
query: s
|
|
2044
|
+
}) => t.isError && !e.isReset() && !t.isFetching && Hr(r, [t.error, s]), Fr = (t) => {
|
|
2045
|
+
t.suspense && typeof t.staleTime != "number" && (t.staleTime = 1e3);
|
|
2046
|
+
}, Jr = (t, e) => t.isLoading && t.isFetching && !e, Vr = (t, e, r) => (t == null ? void 0 : t.suspense) && Jr(e, r), Xr = (t, e, r) => e.fetchOptimistic(t).then(({
|
|
2047
|
+
data: s
|
|
2048
|
+
}) => {
|
|
2049
|
+
t.onSuccess == null || t.onSuccess(s), t.onSettled == null || t.onSettled(s, null);
|
|
2050
|
+
}).catch((s) => {
|
|
2051
|
+
r.clearReset(), t.onError == null || t.onError(s), t.onSettled == null || t.onSettled(void 0, s);
|
|
2052
|
+
});
|
|
2053
|
+
function Zr(t, e) {
|
|
2054
|
+
const r = wr({
|
|
2055
|
+
context: t.context
|
|
2056
|
+
}), s = Ir(), n = Ur(), i = r.defaultQueryOptions(t);
|
|
2057
|
+
i._optimisticResults = s ? "isRestoring" : "optimistic", i.onError && (i.onError = T.batchCalls(i.onError)), i.onSuccess && (i.onSuccess = T.batchCalls(i.onSuccess)), i.onSettled && (i.onSettled = T.batchCalls(i.onSettled)), Fr(i), Qr(i, n), Gr(n);
|
|
2058
|
+
const [a] = E.useState(() => new e(r, i)), l = a.getOptimisticResult(i);
|
|
2059
|
+
if (Dr(E.useCallback((u) => {
|
|
2060
|
+
const d = s ? () => {
|
|
2061
|
+
} : a.subscribe(T.batchCalls(u));
|
|
2062
|
+
return a.updateResult(), d;
|
|
2063
|
+
}, [a, s]), () => a.getCurrentResult(), () => a.getCurrentResult()), E.useEffect(() => {
|
|
2064
|
+
a.setOptions(i, {
|
|
2065
|
+
listeners: !1
|
|
2066
|
+
});
|
|
2067
|
+
}, [i, a]), Vr(i, l, s))
|
|
2068
|
+
throw Xr(i, a, n);
|
|
2069
|
+
if (Yr({
|
|
2070
|
+
result: l,
|
|
2071
|
+
errorResetBoundary: n,
|
|
2072
|
+
useErrorBoundary: i.useErrorBoundary,
|
|
2073
|
+
query: a.getCurrentQuery()
|
|
2074
|
+
}))
|
|
2075
|
+
throw l.error;
|
|
2076
|
+
return i.notifyOnChangeProps ? l : a.trackResult(l);
|
|
2077
|
+
}
|
|
2078
|
+
function re(t, e, r) {
|
|
2079
|
+
const s = B(t, e, r);
|
|
2080
|
+
return Zr(s, Nr);
|
|
2081
|
+
}
|
|
2082
|
+
class Br {
|
|
2083
|
+
constructor(e) {
|
|
2084
|
+
P(this, "httpClient");
|
|
2085
|
+
P(this, "getDataModels", () => D(this, null, function* () {
|
|
2086
|
+
return (yield this.httpClient.get("api/v2/datamodels/schema")).filter((r) => r);
|
|
2087
|
+
}));
|
|
2088
|
+
P(this, "getPerspectives", () => D(this, null, function* () {
|
|
2089
|
+
return this.httpClient.get("api/v2/perspectives");
|
|
2090
|
+
}));
|
|
2091
|
+
// ==== /v2/ai endpoints ====
|
|
2092
|
+
P(this, "getNlgQueryResult", (e) => D(this, null, function* () {
|
|
2093
|
+
return this.httpClient.post("api/v2/ai/nlg/queryResult", e);
|
|
2094
|
+
}));
|
|
2095
|
+
P(this, "getQueryRecommendations", (e) => D(this, null, function* () {
|
|
2096
|
+
return this.httpClient.get(`api/v2/ai/recommendations/query/${e}`);
|
|
2097
|
+
}));
|
|
2098
|
+
P(this, "setLlmConfig", (e) => D(this, null, function* () {
|
|
2099
|
+
return this.httpClient.post("api/v2/settings/ai/llmProvider", e).catch((r) => {
|
|
2100
|
+
console.error("Unable to set llm config", r);
|
|
2101
|
+
});
|
|
2102
|
+
}));
|
|
2103
|
+
// ==== /v2/ai/chats endpoints ====
|
|
2104
|
+
P(this, "getAllChats", () => D(this, null, function* () {
|
|
2105
|
+
return this.httpClient.get("api/v2/ai/chats");
|
|
2106
|
+
}));
|
|
2107
|
+
P(this, "getChatById", (e) => D(this, null, function* () {
|
|
2108
|
+
return this.httpClient.get(`api/v2/ai/chats/${e}`);
|
|
2109
|
+
}));
|
|
2110
|
+
P(this, "createChat", (e) => D(this, null, function* () {
|
|
2111
|
+
return this.httpClient.post("api/v2/ai/chats", { contextId: e });
|
|
2112
|
+
}));
|
|
2113
|
+
P(this, "postChat", (e, r) => D(this, null, function* () {
|
|
2114
|
+
return this.httpClient.post(`api/v2/ai/chats/${e}`, r);
|
|
2115
|
+
}));
|
|
2116
|
+
P(this, "deleteChatHistory", (e) => D(this, null, function* () {
|
|
2117
|
+
return this.httpClient.delete(`api/v2/ai/chats/${e}/history`);
|
|
2118
|
+
}));
|
|
2119
|
+
P(this, "ai", {
|
|
2120
|
+
getNlgQueryResult: this.getNlgQueryResult,
|
|
2121
|
+
getQueryRecommendations: this.getQueryRecommendations,
|
|
2122
|
+
setLlmConfig: this.setLlmConfig,
|
|
2123
|
+
chat: {
|
|
2124
|
+
getAll: this.getAllChats,
|
|
2125
|
+
getById: this.getChatById,
|
|
2126
|
+
create: this.createChat,
|
|
2127
|
+
post: this.postChat,
|
|
2128
|
+
clearHistory: this.deleteChatHistory
|
|
2129
|
+
}
|
|
2130
|
+
});
|
|
2131
|
+
if (!e)
|
|
2132
|
+
throw new Error("HttpClient is required.");
|
|
2133
|
+
this.httpClient = e;
|
|
2134
|
+
}
|
|
2135
|
+
}
|
|
2136
|
+
const _r = new Lr({
|
|
2137
|
+
defaultOptions: {
|
|
2138
|
+
queries: {
|
|
2139
|
+
refetchOnWindowFocus: !1,
|
|
2140
|
+
refetchOnMount: !1
|
|
2141
|
+
}
|
|
2142
|
+
}
|
|
2143
|
+
}), St = Ne(void 0), Y = () => ut(St), $r = `
|
|
2144
|
+
=================================================================
|
|
2145
|
+
WARNING: You are importing a component from @sisense/sdk-ui/ai.
|
|
2146
|
+
This component is currently in PRIVATE PREVIEW and is exclusively
|
|
2147
|
+
available to a select group of pre-approved customers.
|
|
2148
|
+
|
|
2149
|
+
As a preview feature, this component may have limited support
|
|
2150
|
+
and is subject to potential changes.
|
|
2151
|
+
=================================================================`, an = ({ children: t }) => {
|
|
2152
|
+
const { app: e } = Ft(), r = ee(() => e ? new Br(e.httpClient) : void 0, [e]);
|
|
2153
|
+
return lt(() => {
|
|
2154
|
+
console.warn($r);
|
|
2155
|
+
}, []), /* @__PURE__ */ o(St.Provider, { value: r, children: /* @__PURE__ */ o(zr, { client: _r, children: t }) });
|
|
2156
|
+
}, Ct = () => {
|
|
2157
|
+
const t = Y(), { data: e, isLoading: r } = re({
|
|
2158
|
+
queryKey: ["getDataTopics", t],
|
|
2159
|
+
queryFn: () => D(void 0, null, function* () {
|
|
2160
|
+
if (!t)
|
|
2161
|
+
return;
|
|
2162
|
+
const s = (yield t.getDataModels()).map(
|
|
2163
|
+
(l) => ({
|
|
2164
|
+
id: l.oid,
|
|
2165
|
+
name: l.title,
|
|
2166
|
+
type: "datamodel",
|
|
2167
|
+
description: ""
|
|
2168
|
+
})
|
|
2169
|
+
), a = (yield t.getPerspectives()).filter(
|
|
2170
|
+
(l) => !l.isDefault
|
|
2171
|
+
).map(
|
|
2172
|
+
(l) => ({
|
|
2173
|
+
id: l.oid,
|
|
2174
|
+
name: l.name,
|
|
2175
|
+
type: "perspective",
|
|
2176
|
+
description: l.description
|
|
2177
|
+
})
|
|
2178
|
+
);
|
|
2179
|
+
return [...s, ...a];
|
|
2180
|
+
}),
|
|
2181
|
+
enabled: !!t
|
|
2182
|
+
});
|
|
2183
|
+
return { data: e, isLoading: r };
|
|
2184
|
+
}, es = () => {
|
|
2185
|
+
const t = Y(), { data: e, isLoading: r, refetch: s } = re({
|
|
2186
|
+
queryKey: ["getAllChats", t],
|
|
2187
|
+
queryFn: () => t == null ? void 0 : t.ai.chat.getAll(),
|
|
2188
|
+
enabled: !!t
|
|
2189
|
+
});
|
|
2190
|
+
return {
|
|
2191
|
+
data: e != null ? e : [],
|
|
2192
|
+
isLoading: r,
|
|
2193
|
+
refetch: s
|
|
2194
|
+
};
|
|
2195
|
+
}, ts = (t) => {
|
|
2196
|
+
const e = Y(), { data: r, isLoading: s, refetch: n } = re({
|
|
2197
|
+
queryKey: ["getChatById", e, t],
|
|
2198
|
+
queryFn: () => t ? e == null ? void 0 : e.ai.chat.getById(t) : void 0,
|
|
2199
|
+
enabled: !!e && !!t
|
|
2200
|
+
});
|
|
2201
|
+
return {
|
|
2202
|
+
data: r,
|
|
2203
|
+
isLoading: s,
|
|
2204
|
+
refetch: V(() => {
|
|
2205
|
+
n();
|
|
2206
|
+
}, [n])
|
|
2207
|
+
};
|
|
2208
|
+
};
|
|
2209
|
+
function rs(t) {
|
|
2210
|
+
const { contextId: e } = t, r = Y(), { data: s, isLoading: n } = re({
|
|
2211
|
+
queryKey: ["getQueryRecommendations", r, e],
|
|
2212
|
+
queryFn: () => r == null ? void 0 : r.ai.getQueryRecommendations(e),
|
|
2213
|
+
select: (i) => i == null ? void 0 : i.data.answer.map((a) => a.query),
|
|
2214
|
+
enabled: !!r
|
|
2215
|
+
});
|
|
2216
|
+
return { data: s != null ? s : [], isLoading: n };
|
|
2217
|
+
}
|
|
2218
|
+
const Ot = (t) => {
|
|
2219
|
+
const { dataSource: e, metadata: r, enabled: s = !0 } = t, n = Y(), { data: i, isError: a, isLoading: l, refetch: u } = re({
|
|
2220
|
+
queryKey: ["getNlgQueryResult", e, r],
|
|
2221
|
+
queryFn: () => n == null ? void 0 : n.ai.getNlgQueryResult({
|
|
2222
|
+
style: "Large",
|
|
2223
|
+
jaql: {
|
|
2224
|
+
datasource: {
|
|
2225
|
+
title: e
|
|
2226
|
+
},
|
|
2227
|
+
metadata: r
|
|
2228
|
+
}
|
|
2229
|
+
}),
|
|
2230
|
+
select: (d) => {
|
|
2231
|
+
var c;
|
|
2232
|
+
return (c = d == null ? void 0 : d.data) == null ? void 0 : c.answer;
|
|
2233
|
+
},
|
|
2234
|
+
enabled: !!n && s
|
|
2235
|
+
});
|
|
2236
|
+
return {
|
|
2237
|
+
data: i,
|
|
2238
|
+
isError: a,
|
|
2239
|
+
isLoading: l,
|
|
2240
|
+
refetch: V(() => {
|
|
2241
|
+
u();
|
|
2242
|
+
}, [u])
|
|
2243
|
+
};
|
|
2244
|
+
}, kt = Ne({
|
|
2245
|
+
setSelectedContext: () => {
|
|
2246
|
+
}
|
|
2247
|
+
}), Ae = () => ut(kt);
|
|
2248
|
+
function ss({ children: t }) {
|
|
2249
|
+
const [e, r] = z();
|
|
2250
|
+
return /* @__PURE__ */ o(
|
|
2251
|
+
kt.Provider,
|
|
2252
|
+
{
|
|
2253
|
+
value: {
|
|
2254
|
+
selectedContext: e,
|
|
2255
|
+
setSelectedContext: r
|
|
2256
|
+
},
|
|
2257
|
+
children: t
|
|
2258
|
+
}
|
|
2259
|
+
);
|
|
2260
|
+
}
|
|
2261
|
+
function ns() {
|
|
2262
|
+
return /* @__PURE__ */ o("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ o(
|
|
2263
|
+
"path",
|
|
2264
|
+
{
|
|
2265
|
+
d: "M4 14L0 10L24 0L14 24L10 20L8.47667 16.9533L19 6.4L20 4.00001L17.6099 5L7.04354 15.5218L4 14Z",
|
|
2266
|
+
fill: "#262E3D"
|
|
2267
|
+
}
|
|
2268
|
+
) });
|
|
2269
|
+
}
|
|
2270
|
+
function is() {
|
|
2271
|
+
return /* @__PURE__ */ x("svg", { xmlns: "http://www.w3.org/2000/svg", width: "25", height: "25", viewBox: "0 0 25 25", fill: "none", children: [
|
|
2272
|
+
/* @__PURE__ */ o(
|
|
2273
|
+
"path",
|
|
2274
|
+
{
|
|
2275
|
+
d: "M21.4095 11.1195L12.5644 6.0459C12.3247 5.90841 12.0189 5.99143 11.8816 6.23128L10.764 8.18434C10.6275 8.42284 10.709 8.72678 10.9466 8.86491L19.7108 13.9614C19.9464 14.0984 20.2483 14.0215 20.3897 13.7884L21.5883 11.8125C21.734 11.5723 21.6532 11.2592 21.4095 11.1195Z",
|
|
2276
|
+
fill: "#262E3D"
|
|
2277
|
+
}
|
|
2278
|
+
),
|
|
2279
|
+
/* @__PURE__ */ o(
|
|
2280
|
+
"path",
|
|
2281
|
+
{
|
|
2282
|
+
d: "M18.7329 8.60735L16.1048 7.07819L19.6668 0.928042C19.8041 0.6909 20.1068 0.608502 20.3454 0.743288L22.156 1.7661C22.3992 1.90347 22.4827 2.21344 22.3414 2.45438L18.7329 8.60735Z",
|
|
2283
|
+
fill: "#262E3D"
|
|
2284
|
+
}
|
|
2285
|
+
),
|
|
2286
|
+
/* @__PURE__ */ o(
|
|
2287
|
+
"path",
|
|
2288
|
+
{
|
|
2289
|
+
d: "M19.8544 14.9048L10.3563 9.43067C10.2184 9.35116 10.0413 9.39515 9.95275 9.52746C7.03423 13.8862 4.07448 15.2337 3.18167 16.0938C3.09276 16.1794 3.08414 16.3141 3.1538 16.416C3.74961 17.2879 5.10497 18.4425 6.05628 19.2048C6.17328 19.2985 6.34145 19.2903 6.44961 19.1865L9.97994 15.7973L7.69329 20.1066C7.61954 20.2456 7.66674 20.4186 7.80041 20.5017C11.6152 22.8708 14.2978 24.0437 16.9604 24.4472C17.1542 24.4766 17.3191 24.3106 17.3033 24.1152C17.007 20.469 19.0807 16.6112 19.8544 14.9048Z",
|
|
2290
|
+
fill: "#262E3D"
|
|
2291
|
+
}
|
|
2292
|
+
)
|
|
2293
|
+
] });
|
|
2294
|
+
}
|
|
2295
|
+
const ie = 34;
|
|
2296
|
+
function as({
|
|
2297
|
+
onSendMessage: t,
|
|
2298
|
+
onClearHistoryClick: e,
|
|
2299
|
+
disabled: r
|
|
2300
|
+
}) {
|
|
2301
|
+
const [s, n] = z(""), [i, a] = z(ie), l = () => {
|
|
2302
|
+
if (r)
|
|
2303
|
+
return;
|
|
2304
|
+
const f = s.trim();
|
|
2305
|
+
f.length !== 0 && (t(f), n(""));
|
|
2306
|
+
}, u = (f) => {
|
|
2307
|
+
f.key === "Enter" && (f.preventDefault(), l());
|
|
2308
|
+
}, d = (f) => {
|
|
2309
|
+
f.target.clientHeight <= ie && a(ie);
|
|
2310
|
+
const v = f.target.scrollHeight;
|
|
2311
|
+
n(f.target.value), f.target.value === "" ? a(ie) : v > f.target.clientHeight && a(v);
|
|
2312
|
+
}, c = s.length === 0 || r ? "csdk-opacity-30 csdk-cursor-not-allowed " : "csdk-opacity-100 csdk-cursor-pointer", A = i > 40 ? "csdk-items-end" : "csdk-items-center", p = "csdk-max-h-[88px] csdk-w-full", h = "csdk-py-[7px] csdk-px-[16px] csdk-mx-[10px]", g = "csdk-border csdk-border-[#262E3D]/[.15] csdk-rounded-lg focus:csdk-outline-[#262E3D]/50";
|
|
2313
|
+
return /* @__PURE__ */ x(
|
|
2314
|
+
"div",
|
|
2315
|
+
{
|
|
2316
|
+
className: `csdk-input csdk-flex ${A} csdk-content-center csdk-w-full csdk-relative csdk-px-[16px] csdk-py-[16px]`,
|
|
2317
|
+
children: [
|
|
2318
|
+
e && /* @__PURE__ */ o(
|
|
2319
|
+
"button",
|
|
2320
|
+
{
|
|
2321
|
+
className: "csdk-h-[34px] csdk-bg-inherit csdk-cursor-pointer",
|
|
2322
|
+
onClick: e,
|
|
2323
|
+
children: /* @__PURE__ */ o(is, {})
|
|
2324
|
+
}
|
|
2325
|
+
),
|
|
2326
|
+
/* @__PURE__ */ o(
|
|
2327
|
+
"textarea",
|
|
2328
|
+
{
|
|
2329
|
+
className: `csdk-text-ai-sm csdk-text-text-content csdk-resize-none csdk-overflow-y-auto ${p} ${h} ${g}`,
|
|
2330
|
+
onChange: d,
|
|
2331
|
+
spellCheck: "true",
|
|
2332
|
+
placeholder: "Ask a question",
|
|
2333
|
+
value: s,
|
|
2334
|
+
onKeyDown: u,
|
|
2335
|
+
style: { height: i }
|
|
2336
|
+
}
|
|
2337
|
+
),
|
|
2338
|
+
/* @__PURE__ */ o(
|
|
2339
|
+
"button",
|
|
2340
|
+
{
|
|
2341
|
+
disabled: r,
|
|
2342
|
+
className: `csdk-h-[34px] csdk-bg-inherit ${c}`,
|
|
2343
|
+
onClick: l,
|
|
2344
|
+
children: /* @__PURE__ */ o("span", { "data-state": "closed", children: /* @__PURE__ */ o(ns, {}) })
|
|
2345
|
+
}
|
|
2346
|
+
)
|
|
2347
|
+
]
|
|
2348
|
+
}
|
|
2349
|
+
);
|
|
2350
|
+
}
|
|
2351
|
+
const os = "data:image/gif;base64,R0lGODlh9AFNAff/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/ACH/C05FVFNDQVBFMi4wAwEAAAAh+QQFAwD/ACwAAAAA9AFNAYcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAI/wD/CRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DDi/8fT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqOKKLLbo4oswxijjjDTWaOONOOao44489ujjj0AGKeSQRBZp5JFIJqnkkkw26eSTUEYp5ZRUVmnllVhmqeWWXHbp5ZdghhkUAGSWaWaZcJ2pJplprnnmW26+uVacdJppVp143olnnGftyedYfgYKVqB+Dkponl4dimhXigqqVaOOZgVpoY9OuuhVlkZKVaaaTsUppVV9uqdVonb6VKmgQoVqqqeueqlTrpr/qlSsrC5F66tM3VqnqrrielSvo+YK7K7CDvvnrMb6OlSyygrFLJ22PusmstIeW1S10P6K7bRGbcttt95+u2y4a15LbrlEnYvuuOrK6Wy77gIFr5rszsvmu/aiKW++du7L770//atvwAID3FPBBu+EcMI6LQwAwQv75PDDPE1MscITH2xxxRtjnHHDHYNs8cU3jcwwTSZ7/HFOJp8cU8sk1wQzyy3TXHPJM9sEs8sv7RyzTD7/DFPQOu+Mc84y+5y00igT3TTTMwXN80pSC91S1VFL/bTWL2MNtNddcx222D1XbbVKZp+NUtpfs1222WOTfbXbb8NdN9hz081S2lOf/8S32ib9fTfeVAvu0t99j4T44HKjbXjefB++OOR6p4Q44CRdTnnla2u+t+eFg2656KNPHvrjjpPu9+WYg8T65nafjnrnqpfEeuIf3d567q+nXnvmt8s+e+C6+2467b8rHrzxxxO/PPLNO5+8SLrvzlH1zEeePee2F19679BHr/zz4Q8PPPnST887+umLPz747bsfUvXWb4T99+p7RD/++evvffnaW93/4me+9/WvI/cTIPsMeMDrDZCA3KNeAiEYQQkukIEFtCD8undBDAZQgQ203wPPt0EKEo6DJSSh/DS4wvmNUIUtXF8IRZhCGGbQhTX0YOwAuEMeNg6FMZRhEP/9l0Md/hCIHwThDXE4QxoOkYhPRGATnZhEHzpte0dEYg+taDTYZdGGJ1TiFsUYRjJeUXhlNCHSsAi1zy3RiGtE4xnl2EY3jpF/c2RjHPV4M8lV0Ix75OPIGFdHO6YRkCkb2h8ROci4FdKQj6RjIgnZR0UekosOy9oX8VhJS0YSkp2kZMg82cWthVKUmTTlKf1YSk0GEpUIK9orYSkwnLRSlSvDZS5dOUlZNtKXo1zaL4G5S2EWU5cFE9kxkfkvji2TmflyZiptNk2VJVNjEZNmLLV5TWzWEmLf9GY4ucmvMY1TnNH0VzPVWU582ate73RnPM3ZTniqC1zzMtc85dn/Lm3105/3xOc/9TlQgYaLWuRCqLeildBibcuh2GpKQxn6UFhFtFXV4lVGLbrRqDzLUx+VirRAyqxQGYtUw8JUSlEKLEnpqlK02spLYRqrRKHKUKXCqai+siqyZEpPkwIqpMryU7XIqk+1QktSlRosMTn1qVCNqlSnStWqWvWqWM2qVrfK1a569atgDatYx0rWspr1rGhNq1rXyta2uvWtcI2rXOdK17ra9a54zate98rXvvr1r4ANrGAHS9jCGvawiE2sYhfL2MY69rGQjaxkJ0vZylr2spjNrGY3y9nOevazoA2taEdL2tKa9rSoTa1qV8va1rr2tbCNrWxnS9vaPNr2trjNrW53y9ve+va3wA2ucIdL3OIa97jITa5yl8vc5jr3udCNrnSnS93qWve62M2udrfL3e5690QBAQAh+QQJBAD/ACwAAAAA9AFNAQAI/wD/CRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DDi/8fT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqOKKLLbo4oswxijjjDTWaOONOOao44489ujjj0AGKeSQRBZp5JFIJqnkkkw26eSTUEYp5ZRU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sZCNrGQnS9nKWvaymM2sZjfL2c569rOgDa1oR0va0pr2tKhNrWpXy9rWuva1sI2tbGdL29oy2va2uM2tbnfL29769rfADa5wh0vc4hr3uMhNrnKXy9zmOve50I2udKdL3epa97qcDQgAIfkECQMA/wAsAAAAAPQBTQEACP8A/wkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw4v/H0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhh94BIKKIICI34okopghAibyp6OKLI7JIG4w01iijazXmaOONqOno4448jvbjkDAGGRqRSBZpJGdJNunikpk5KeWTUFI25ZUpVikZllyeqOVjXYZJ4peLiWkmmYmZqSaahqnpJpuEubkmnIHJ+SadftkpJ5586Wknn3r5uSegdwn6J6F1GTooonIpeiijcDm6KKRtSfoopWtZOimmaGl6KadmebopqGSJeiepZZk6KqpfqXoqq2G5/zonrLHKKiatYtl6Jq5e6borr1z5eiuwwQrbJbHFGoslslspyyWzWjm7LLRYSXsltdVaK2VTOUYKJFvdcqutk0htm2qTZ5Fb7rjoEhUmWO/2emxR7LYL1KpU4TuVvjrVm+S9fl4lqMABA+zvkD85uq/CUkma8MEI8+QpVJpGVbFPEPsosaniitrxxBtn/O1Ntiol61In7yRyuDj5um7JRrnc78o05mQsvTe7m3PLNFNJsrJDSRu0szb3rOLPQhtMtNJAI220lzaN+7C2U1vL89Nj1lRvT/5yvXXUWGc908Ehs6ty12CHrTXEM6NdtNs0qR13xm+TfbXdcz+9Nt1p8/+9t99jG/034DLR7DTbg4uc98qJIx644Y3DHZPej0M+ueB941045Zdj3nnPmUsOk9yjY/056KFLvbjnLoW9Yummp5706qyz5PrrLd1+t9WyM9667r+7fvjslceeO/DHCz/8zrRzvtLtYqcEPe69pxx57ShNT73009ctc/WWq6R98sgvr6r3yovfve3rt32+++WfpH30Js2/vfkMo59+9vM/33/ZlgJg/Or3P+6ND2MO81oB5bdABh6wap86WwNLYj//PZBpw8LgAEliv/uNpIM4i5dQQGjAC1Kwgke5VsxQ6MAJfpCEL/uRyVhIQBqe0IZMQZHFcPhCHoqkgx4EDQz/a+jCHw5RSD4MCRBLaELRHPGGTexhFI+URCVW8SNPdOIVsVhEKUKvR1v0SBjF2MXPjLEjZ+RIGjGzRo20MSNvtEwZrThFL25Qi+1jIunU98XU1JGDedSj8U7zRzsOUpDOI2Qf2XdHKO4RjPuz4CP5OElFVpJ/kaTkISG5SU1iD5G+Y00mJflJT4ZvNZc0peJgV0pOnjJ4qDtdKHHUSlKuUpaEa00tbem4zb1Sl798STCFOcvYFNOXucTl12ZzS/AtDX+8q00yi6c6/UXTNprbHdXgt83cLJObxLNm03RTTQGO05zM8+Y1FfhMBIaTnO2E4Pc0CDPgpJOe7xuasIgz/0991lNnujLOP1eYzxh6zEQcy2FCUbbQ5IDMKQ9VaACdk8AdKmphF43OwKyy0ap0dDr8suivsjUr7IiwKydt1ry+Y65SqWssLS2PxirFMnDVFFs4zalOd8rTnvr0p0ANqlCHStSiGvWoSE2qUpfK1KY69alQjapUp0rVqlr1qljNqla3ytWuevWrYA2rWMdK1rKa9axoTata18rWtrr1rXCNq1znSte62vWueM2rXvfK17769a+ADaxgB0vYwhr2sIhNrGIXy9jGOvaxkI2sZCdL2cpa9rKYzaxmN8vZznr2s6ANrWhHS9rSmva0qE2talfL2ta69rWwja1sZ0vb2ifa9ra4za1ud8vb3vr2t8ANrnCHS9ziGve4yE2ucpfL3OY697mpDQgAIfkECQQA/wAsAAAAAPQBTQEACP8A/wkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw4v/H0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPrdw2gv38A+7H334AEDhggeAUmqKB/B2a34IMQNjgdhBRGKGFzFWZo4YXIaejhghwa9+GIIIYYHIkoJmiibym2qOKKubkoI4Ew3jbjjf/VSBuOPPanY2w9Bvkjf0EKOaRqRSZ5ZGpJKrlkaU06+aRoUTY5ZWhVRnnlZ1lauSVnXWr5pWZhejnmZWWKeWZlaZq5pmRtqvkmZHG6OWdjdcp552J52rlnYn1K+SeggQo6qGGFGnooYYkWuShijRr5aGGRSjppYJVaeulfmfa4qWCd8vgppqHeOCpgpZp6ql+pzrgqq626//hqX7HKOutetbZ4K665orirXr36+itewZI4LLHFfnjsXckqu6xdzWb4LLPRUjgttNVueK1c2Wq7bVzdKvhtXeG+OC635dJ47lzp5uiUtOtW1C6DSdka70Pz+miUp/c2NO++ivZb0L9DhSkwQukWnObBBiUcVJ5gWeuWxFKF+3CgWqV4lsZPZXtxolWJ6pXIS3n8U6ZR+RlywERFe3Ko72Z5VZdKJftyqSUvXLHORwV7c6r1xpmy0D336pPRRRXalNIAx3q0zwozHbTULbf6c65Codx0o0XD/LTNX2sdtdhVRwpUtWF3OrbaW2N8Ndg61fox0G3XObfLOSHdk95l2/99tsU4Fbs31HXLnHW5gQset+JIGby2yTU1u5PkNav8NuQyoZ045ZWT3DfiM3V7k+hL29t1u6FjnrrmUHlYer6ZA7666lPRu3O+AMLkcEy7s4a7vi6hHjvoq/0OfEsEv5Q8ksYrvzzyz59m/PEq4e589KZNn/tKv1+P/Wjab1+99cGTj1r40Js/vvrZo78++yhNz6T7KcnPkv3S0x9/8/fzn7/27+teAOFHJf2ZxIAHBOD/8HcSBJbEgViCoEgkOEEFts+CDcRgBhlImvCJL4EaJIkH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ZVJU4o6kqMcozKTucJ3UzCdD6RlIkpIzpjzlZjipSsqwspWSeSUsISPLWTqmlrZsjPFyWZld8nIyvvxlZPAoTFrKr5i9PCYyganIZT6mmc7UpQKjaUwLUpMx9rumK52ozVhysJveVCE4w0nIcQ6znOaspg7T6Ul4sTMz63xnO5koz1VKsZ7z9CI+7Un/xn2W0or+/Kf4Alo+OxL0eGI8qOPoqNAEIrKh93MkRMP0qYkWCVoWzahGN8rRjnr0oyANqUhHStKSmvSkKE2pSlfK0pa69KUwjalMZ0rTmtr0pjjNqU53ytOe+vSnQA2qUIdK1KIa9ahITapSl8rUpjr1qVCNqlSnStWqWvWqWM2qVrfK1a569atgDatYx0rWspr1rGhNq1rXyta2uvWtcI2rXOdK17ra9a54zate98rXvvr1r4ANrGAHS9jCGvawiE2sYhfL2MY69rGQjaxkJ0vZylr2spjNrGY3y9nOevazoA2taEdL2tKa9rSoTa1qV8va1rr2tbCNrWxnS9vaDdr2trjNrW53y1uPBAQAIfkECQQA/wAsAAAAAPQBTQEACP8A/wkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfDhWA9+/gwXP/H58yvPnz4cmr74i+vXvv6+NPfE//vfz7C+vrt4+/v8D9APLnX3wBFujegOQZqGB7CG634IPoNXgdhBSaJyF1FWYo3oXPaejhdxw29+GIAISoHIkkmogciimqSByLKGZ1notiwchiVArSqJWNNzaloY5V8dgjUjEC2Z2QQxLFo5E+IplkUE6WyGRSUT7ZU5UgTlkUlkX+xOWGWkL55Yg+jZlemF6a+eGVaoKJ5k5trqlTnGe+mROdHs6JZ5121rTnjzf9aWGffgpKYaCG8knoS4keWmijWS4KE6QPPkopfJIyemmOMm2qaKbleVpgp6K6CepJpY4aU6qmnkoSqwCu/worpq6aNOt+mt4qZa2v6kpfrrfyWpKvv7ZELK3CgnTsgcYem6xIyzLIUrS7PssetYOuRK21H2GbbajbcsuRt5/aiq2445IbKbjhoouRuuuiSq67GcGLrLze0vuuvdrOq69F9laLb77/UsSvSgcXLFHCKDGsMETw9qvuw/NNjHDEFEdk8cUYZ+zQxuz66/HHBIcs8nLlMlWyySsPZ2CT0U4bsMsZUtkuy+cC1+KWMcvscG5C8uxssx0DHeVQywJ78m1cIk2s0i3TpqaYuk5adG1xUj2r1SDP9idQwXK9dGyGpskqqV3D1qjZotJ09WuUsr2p22O7NneZnlp6M9x54/8dt949q12q3ILiFHVrqYKd6J05q4zrVLAq/rWegR/lKMxnEz41nJUrKafNYfvdJptJC72zUb5q/aXkqXu+pOmha46k6rHLDqPrVTvtJO5b0340660LNTvqudu+u/GJw/458b2LvjlPjSsPoeOZO581550zz6lTkVtPJ+V7gy6gVNVDv7bhh682uPeT21Q3a32T/jfd76s/v/nxo50+/OfLn7/Y0SNb2ZA3QP0FUIB7Al7bDHhAwX2PgJCS1dtkcz32LRBqDaTgmIQXPKKlDWtY4uDTXDKz3fxOhB2U2AeZZiPp1Q5n2TPh8niXQhiWLjg1I1L4GvYzHAYIczfk2Ar/j3OvI+3QXBMc2UHq16skKrEgQxxJCZ+okChCq4dUHIgTpYjFLP6ji1xkYhbBeEUxUpGMIdniGNWYRiuekY1tzKAXv4jGOB5xjlMUYgznSMc6KuuOeMyjDbvHR4METGA83CMfD0nCIBaSIIz0YA0f2Uc3NrF4lISkH8uIyUxqEY6XJKQnNWnJYTVvlKQ0IxLLh8r/gNKUyWtlKuXos//J0pX7k+T9bolLWtZyl7ysJCB1WcBgftKXjeyfMWc5NPQVc5nHVCQDKwhNKEqTfqOrJkKGic0NanObjsTf6r6ZkHD6b3jkLOcIaWildC5xkr7LkztJdkrLkWmeD+mk+BaE/8+KsRKI+uknwGJ5lZQJtCLrO6heLqjQhV6qoX55KET7EsGJRrRwFgVM+zKqUWpytKNm+qhhxinSkVappIpBJ0pT2s6VsjSHLqVMpWLKmWLR9KY4zalOd8rTnvr0p0ANqlCHStSiGvWoSE2qUpfK1KY69alQjapUp0rVqlr1qljNqla3ytWuevWrYA2rWMdK1rKa9axoTata18rWtrr1rXCNq1znSte62vWueM2rXvfK17769a+ADaxgB0vYwhr2sIhNrGIXy9jGOvaxkI2sZCdL2cpa9rKYzaxmN8vZznr2s6ANrWhHS9rSmva0qE2talfL2ta69rWwja1sZ0vb2jHa9ra4za1ud8vb3vr2t8ANrnCHS9ziGve4yE2ucpfL3OY697nQja50p0vd6lrXJAEBACH5BAkDAP8ALAAAAAD0AU0BAAj/AP8JHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr394cgPfv4MFz/x+PMrz58+bJq+eIvr377+vjT3xP/738+wvr67ePv7/A/QDy5198ARbo3oDkGahgewhut+CD5zV4HYQURiihdBVmGN6F0GnoIXwcMvfhiACEqByJJJp4HIooqliWhVex2KKLWykolYwz0miVhk3hyKKOU+V4lI8yAvmUj0gR+aORSynpXVFOLsmkUVGKJ1SVQk4ZFJYb/sRlilpe+aWVPY05YphemtnlTmp+iGaZbaanU5wevjknnXLehCePduq5Z541/VlhnzYJCiNNhlJI6EyJHhpToxAu+iikgMJE6YKSvnRppZpuamCmLXm6ZqeiBgjqSqWOGmqqAJ6aEqtkuv8E636uljfrk6TeemCtJekK4qq+MsjrSMHiCmyxjg7bEbIlHstsrMqyx6yzz/4arbTTolotp9diVC1L23LbbUXbghsutONaFK625xqb7kXrsnvuu97Gq1K77tI737z3tqsvvPy+6u+/FOErb7kE7xuwrQsn/JDB/TbscEP4NiswwhNDVPHB2Wb8MMQXf+vxxwNH/OzIJEts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JQdQiqlvhQ4sqMcE+rsPKZQi2lveoB5KLnjuCFMUrZc+i7erjAISgR5tjJNCGhkckbQyDj1pZkyn0s/oraUwjalMZ0rTmtr0pjjNqU53ytOe+vSnQA2qUIdK1KIa9ahITapSl8rUpjr1qVCNqlSnStWqWvWqWM2qVrfK1a569atgDatYx0rWspr1rGhNq1rXyta2uvWtcI2rXOdK17ra9a54zate98rXvvr1r4ANrGAHS9jCGvawiE2sYhfL2MY69rGQjaxkJ0vZylr2spjNrGY3y9nOevazoA2taEdL2tKa9rSoTa1qV8va1rr2tbCNrWxnS9vaItr2trjNrW53y9ve+va3wA2ucIdL3OIa97jITa5yl6uYgAAAIfkECQMA/wAsAAAAAPQBTQEACP8A/wkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry5c7EAokufTh3A8+tBq2vfLh27d5vcw4v//06+pfjz48urH4m+/fn18Du6n58+vv2J9PPXv89/of7/3PUn4EEAFrjdgAj+Y+CC2iXIH4MQUudgfBFW2N2E5VmooXUYerfhhh1e9+GHITY34oglKnciiikityKLLRL34okxDjcjjTUGdyOOOfa244o9+vgjjEHiNiSQRRp5JJFJzrYkj006+SSTUb42JZVVsnYllFlquSWJXbr2JZhhrjYmmWWmdiaaaZq2JohtovamhnHKOWeFdbp5J555krYnn32K9meEgY42KKGFgnYohIkqVR1UizLYqFD/JRXpgpP6xGhRlxqYqU5satpppZ/e9GJ2o+pXak0/ApVqfqvK//SkqK+6FytMW/JU63y3mjfmTrva2qtKb4Ia7HvDpnSnsccGmOxJf+bUbHjPmrSoqdMeWC17kYKX7aPbitQptt9eGO5HqXpbbnTnovuqut+261GwrK4rr3z0zmTvvRs1W2+2/GoEsL4DB4xRwbJOa/DB8dLk78IXlftvrRBHvC/BFFdc0bocOvyuxhRxzO7E3YIcssjwXmvyySiTHO3K+Ik8sstzwsxyyykXa3PMMku77M489+zzmUAHLfTQuRYtkczT6Zq00hExbS6wS0J989FO72j1xlLP3NOMW1vUtde00hk212NziujZaHeNFIBsCzx2x47u1xZ6cOG91Nx06/9YoFmeGsW3cBaCVThRcwOHJVVcls20b2BbdSOqbu82JOOtOo6zklU/NeXXlXM+K1NfZv34bWvW/SvSWEuZ+lE1s86xbXsK/jO5m8s2KOIv5ywxbSr/VDLNDes+POjBezy768cz23xMrYuZLtWj+v4wbLs6X73yxWOfPe7TY9y99N9bfynxGXt/rPnjin+9le9DrzD3+aof/0vj43q/mb/rj7D89YNf/lhysYSlT4D981UCDRg+BA5QWctz3/mMV0ACRlCCh2JeBSF4QQzWToML5GAHGdg7Co4QWqdjX+mAJzULRs+DK2RhCkWYO/qtrjaho+EJYdg52rWQWDnEyQ3/cZg2He4QfZET3QytVUTTaU03iTPiEVV4OMs1EYVBdCKchJRFkkSRUmb7zRex+EPeYcpGV2RiF4cCq+OMUY1ldErTnPPGktQRZnfk1hpNlkdxpdFmfQxJIDU2SHftEWSFnNcf8bhIPS4RaIcUZCQRGUeUTJKQlSRjDXd2SUNuEpIvhOMUGflJUYawaI+0ZClBuUEgtlJpqzTl/M4WSzu+Emq3lGL52JZLVf6Pl790yQPDNksS7jJuAimmMT+GTIKsD3wNbOZAAmjD9kmzIMdE4u6uaRBmyi553HSmNan3vHBOs5zfvJ05CZRBV4Fznd0sofC2CU+FfNCMOqunf/Kp/7bX6ZMh/oQd0f75kBha6mkELejo5LjQhEYtc1E5kkPFNrmqVHSiFlucVBqH0YxuyitV7Kgi4VaWwInUlnpji7BOytKWuvSlMI2pTGdK05ra9KY4zalOd8rTnvr0p0ANqlCHStSiGvWoSE2qUpfK1KY69alQjapUp0rVqlr1qljNqla3ytWuevWrYA2rWMdK1rKa9axoTata18rWtrr1rXCNq1znSte62vWueM2rXvfK17769a+ADaxgB0vYwhr2sIhNrGIXy9jGOvaxkI2sZCdL2cpa9rKYzaxmN8vZznr2s6ANrWhHS9rSmva0qE2talfL2ta69rWwja1sZ0vb2h7a9ra4za1ud8vb3vr2t8ANrnCHS9ziGve4yDVNQAAAIfkECQQA/wAsAAAAAPQBTQEACP8A/wkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzt0tgO/gw4f/707epPjz6M+XX68xvfv34NnLjwi/Pvz5+BPa338/v3/+APbn33oBFvjegOUZqKB7CG634IPoNXgdhBRGKKF0FWYo3oXQaehhfBwy9+GIAISoHIkkmngciiiqSByLLbooHIwxyugbjSza2BuOMOq4G485+ogbkD0KWRuRRRo5G5JJKvkak0062RqUUUqZGpVVWnkalllqSRqXQXq5JZg1ilkamWGaORqaZaoJGpttuukZnHHKuRmdKdr5GZ4j6rknnx76OSegGgrKGaGBGqoZooUqmhmjjTpqGaQZSnoZpRVaOimmEGpaGaedejoZqAuKShmpCpp6KqoBqjoqqwC6/yoZrLHKChmt/Nl6K6726borrwz6+hiwBwrrGLHBGssYshYqW9N4UzG7obMtpbqUtNBSi1KlSGH7nbYn1QmUt+CShGNR2JYrEpJESavuR1gKxey7HoEpL7H0bgRnUMDm2x6d4/LqL0aABgzrwBchajCpCFtEqU+sNlwRpj8xLPFEoFbM6cUSoaoxpBzTFzHEjIYMEa4f82nyySiTDPDKD/W7sL0wO4Qsv2TWHDO+OFMZVq9vAf2Uu/eyy1WoZCGdFNFDAXl0ol592G266KaJldVWdenyvFNzuxWPVzldNNVLl9oVk1ShPTPXTe0HFpdQwb0107nlzBSaPXmbrW0vd/+Nt056g8g3nn6zCXjgJQ6uctWL34T4t7SV3LTCNj0OuWwPr13ws5YvSXHK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9a1wjatc50rXutr1rnjNq173yte++vWvgA2sYAdL2MIa9rCITaxiF8vYxjr2sZCNrGQnS9nKWvaymM2sZjfL2c569rOgDa1oR0va0pr2tKhNrWpXy9rWuva1sI2tbGdL29o02va2uM2tbnfL29769rfADa5wh0vc4hr3uMhNrnKXy9zmOve50I2udKdL3epa97rY/UlAAAAh+QQJAwD/ACwAAAAA9AFNAQAI/wD/CRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DDi/8fT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqOKKLLbo4oswxijjjDTWaOONOOao44489ujjj0AGKeSQRBZp5JFIJqnkkkw26eSTUEYp5ZRUVmnllVhmqR4AXHbp5ZcAaGkYmGSW2aWYfpmp5ppo4rXmm2y2KRecdMYpJ1t15mnnV3DC1edbf3al56B7XkWol2YdemZZioaZVaOQLlpVpF+CRSmifF7KJVWaRsppp5g+CmqoWI1KalOmQgpVqpVaxWqrk77/KulSsiqKaq2nPoVrrrfuuqlSvhIKbLC8JkVssUgd++tRyuqZbLPLDguto7ROS+1Q1tZZVLazGsVttN5yS9S3dGJL7rXjnvssuUGdWy5Q7oLbbrzbxovuTvYWim++6dprLr895fumTwLLu2/B8yJ8cMFm8sSwwTk9fG/EEusksZoLM0zwxQFfPLFMHjeMU8gf00SywyHfRLLINa1cckwuW3yyTS6TqXLMN69Msc4m12xzzzjTXHPOQcPsM5hAD93y0UIrbfTRsD7tNMhQL8201FB321LWL6vEddI+Y/01TFxD7PXYYk/NUtlRb1021Wi/xLbcbCNrUt1dl1R32mG7/4S31inhTfbedM+99t9m302434sf3njgiCc+EuKMP3625SdFLrlIlLstuOeY66056IavFDnppUN+uumrX/4563873rnrr6seO+y1Z6553iCNjnvuireuu++0hz458SjtXvztyStvO/PNCx888tPPPrz0omNP0u6be8T98saH5Hz01Gev/fHlbz9+9dazD7z66aN/vvjrX9+++ffLP3/v9bsfPv/xo1//4Jc/AhaQcwNEYAIVeEAGNhCA+/sI93jXkQU6EHr+Sx3+HijBAF7wffrD4AZB+MG3/U6EBkRhCElYwqzJjoPesyAEVZhCE4JPgyP8XwcjKEAWttCG9vPhDP+FOMS43dCFR0Ti84hYxKqhDocZVCL5aFhDJ75Qh000YhCBeMKrPZGLW9RiGKXYxb5VDotZtGISzXhFNn5RjWssWhx5dkYv1hGMUxRjHsnYRjoODopLhOMcU8Y3QhZSbWV0YyIR+caKzYSJP/RjIyVZODn+kY99tGQmKVlJQz4Sj4v0ZCcVeUiANc2OlyTlJDlGtIfJTJWrdCXYNAk3We6MkaOc2SxFeUqBdYyWqeRlKTWWMX/9UpdWQ2YyhdlKd/0EmMM05siUWUxxJYyVr8TmLR35THX9y5bVNGU2wQkva/ZLYRsj5jHR+c1mrUuc65RmOn35zmBVS57dhOc86SX/LV/1ypvnZFdABcqUXa0KoPUi6ECzFZVXTUWh4TInsyQqlU6VyloFxWhGp6WVRnEFWgdVVkiPZSl9CcqeFSXWQ1UaHX/GqlaGwpV1ZNVRVm3FodoBVUk1tdNLgUdVjPJoUG1lHm21xah4CtSdlsrUpjr1qVCNqlSnStWqWvWqWM2qVrfK1a569atgDatYx0rWspr1rGhNq1rXyta2uvWtcI2rXOdK17ra9a54zate98rXvvr1r4ANrGAHS9jCGvawiE2sYhfL2MY69rGQjaxkJ0vZylr2spjNrGY3y9nOevazoA2taEdL2tKa9rSoTa1qV8va1rr2tbCNrWxnS9vaOdr2trjNrW53y9ve+va3wA2ucIdL3OIa97jITa5yl8vc5jr3udCNrnSnS93qWve62M2udrfL3akGBAAh+QQJAwD/ACwAAAAA9AFNAQAI/wD/CRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DDi/8fT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqOKKLLbo4oswxijjjDTWaOONOOao44489ujjj0AGKeSQRBZp5JFIJqnkkkw26eSTUEYp5ZRUVmnllVhmqeWWXHbp5ZdghhkUAGSWaWaZcJ2pJplprnnmW26+uVacdJppVp143olnnGftyedYfgYKVqB+Dkponl4dimhXigqqVaOOZgVpoY9OuuhVlkZKVaaaTsUppVV9uqdVonb6VKmgQoVqqqeueqlTrpr/qlSsrC5F66tM3VqnqrrielSvo+YK7K7CDvvnrMb6OlSyygrFLJ22PusmstIeW1S10P6K7bRGbcttt95+u2y4a15LbrlEnYvuuOrK6Wy77gIFr5rszsvmu/aiKW++du7L770//atvwAID3FPBBu+EcMI6LQwAwQv75PDDPE1MscITH2xxxRtjnHHDHYNs8cU3jcwwTSZ7/HFOJp8cU8sk1wQzyy3TXHPJM9sEs8sv7RyzTD7/DFPQOu+Mc84y+5y00igT3TTTMwXN80pSC91S1VFL/bTWL2MNtNddcx222D1XbbVKZp+NUtpfs1222WOTfbXbb8NdN9hz081S2lOf/8S32ib9fTfeVAvu0t99j4T44HKjbXjefB++OOR6p4Q44CRdTnnla2u+t+eFg2656KNPHvrjjpPu9+WYg8T65nafjnrnqpfEeuIf3d567q+nXnvmt8s+e+C6+2467b8rHrzxxxO/PPLNO5+8SLrvzlH1zEeePee2F19679BHr/zz4Q8PPPnST887+umLPz747bsfUvXWb4T99+p7RD/++evvffnaW93/4me+9/WvI/cTIPsMeMDrDZCA3KNeAiEYQQkukIEFtCD8undBDAZQgQ203wPPt0EKEo6DJSSh/DS4wvmNUIUtXF8IRZhCGGbQhTX0YOwAuEMeNg6FMZRhEP/9l0Md/hCIHwThDXE4QxoOkYhPRGATnZhEHzpte0dEYg+taDTYZdGGJ1TiFsUYRjJeUXhlNCHSsAi1zy3RiGtE4xnl2EY3jpF/c2RjHPV4M8lV0Ix75OPIGFdHO6YRkCkb2h8ROci4FdKQj6RjIgnZR0UekosOy9oX8VhJS0YSkp2kZMg82cWthVKUmTTlKf1YSk0GEpUIK9orYSkwnLRSlSvDZS5dOUlZNtKXo1zaL4G5S2EWU5cFE9kxkfkvji2TmflyZiptNk2VJVNjEZNmLLV5TWzWEmLf9GY4ucmvMY1TnNH0VzPVWU582ate73RnPM3ZTniqC1zzMtc85dn/Lm3105/3xOc/9TlQgYaLWuRCqLeildBibcuh2GpKQxn6UFhFtFXV4lVGLbrRqDzLUx+VirRAyqxQGYtUw8JUSlEKLEnpqlK02spLYRqrRKHKUKXCqai+siqyZEpPkwIqpMryU7XIqk+1QktSlRosMTn1qVCNqlSnStWqWvWqWM2qVrfK1a569atgDatYx0rWspr1rGhNq1rXyta2uvWtcI2rXOdK17ra9a54zate98rXvvr1r4ANrGAHS9jCGvawiE2sYhfL2MY69rGQjaxkJ0vZylr2spjNrGY3y9nOevazoA2taEdL2tKa9rSoTa1qV8va1rr2tbCNrWxnS9vaPNr2trjNrW53y9ve+va3wA2ucIdL3OIa97jITa5yl8vc5jr3udCNrnSnS93qWve62M2udrfL3e5690QBAQAh+QQJBAD/ACwAAAAA9AFNAQAI/wD/CRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DDi/8fT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqOKKLLbo4oswxijjjDTWaOONOOao44489ujjj0AGKeSQRBZp5JFIJqnkkkw26eSTUEYp5ZRUVmnllVhmqeWWXHbp5ZdghhkUAGSWaWaZcJ2pJplprnnmW26+uVacdJppVp143olnnGftyedYfgYKVqB+Dkponl4dimhXigqqVaOOZgVpoY9OuuhVlkZKVaaaTsUppVV9uqdVonb6VKmgQoVqqqeueqlTrpr/qlSsrC5F66tM3VqnqrrielSvo+YK7K7CDvvnrMb6OlSyygrFLJ22PusmstIeW1S10P6K7bRGbcttt95+u2y4a15LbrlEnYvuuOrK6Wy77gIFr5rszsvmu/aiKW++du7L770//atvwAID3FPBBu+EcMI6LQwAwQv75PDDPE1MscITH2xxxRtjnHHDHYNs8cU3jcwwTSZ7/HFOJp8cU8sk1wQzyy3TXHPJM9sEs8sv7RyzTD7/DFPQOu+Mc84y+5y00igT3TTTMwXN80pSC91S1VFL/bTWL2MNtNddcx222D1XbbVKZp+NUtpfs1222WOTfbXbb8NdN9hz081S2lOf/8S32ib9fTfeVAvu0t99j4T44HKjbXjefB++OOR6p4Q44CRdTnnla2u+t+eFg2656KNPHvrjjpPu9+WYg8T65nafjnrnqpfEeuIf3d567q+nXnvmt8s+e+C6+2467b8rHrzxxxO/PPLNO5+8SLrvzlH1zEeePee2F19679BHr/zz4Q8PPPnST887+umLPz747bsfUvXWb4T99+p7RD/++evvffnaW93/4me+9/WvI/cTIPsMeMDrDZCA3KNeAiEYQQkukIEFtCD8undBDAZQgQ203wPPt0EKEo6DJSSh/DS4wvmNUIUtXF8IRZhCGGbQhTX0YOwAuEMeNg6FMZRhEP/9l0Md/hCIHwThDXE4QxoOkYhPRGATnZhEHzpte0dEYg+taDTYZdGGJ1TiFsUYRjJeUXhlNCHSsAi1zy3RiGtE4xnl2EY3jpF/c2RjHPV4M8lV0Ix75OPIGFdHO6YRkCkb2h8ROci4FdKQj6RjIgnZR0UekosOy9oX8VhJS0YSkp2kZMg82cWthVKUmTTlKf1YSk0GEpUIK9orYSkwnLRSlSvDZS5dOUlZNtKXo1zaL4G5S2EWU5cFE9kxkfkvji2TmflyZiptNk2VJVNjEZNmLLV5TWzWEmLf9GY4ucmvMY1TnNH0VzPVWU582ate73RnPM3ZTniqC1zzMtc85dn/Lm3105/3xOc/9TlQgYaLWuRCqLeildBibcuh2GpKQxn6UFhFtFXV4lVGLbrRqDzLUx+VirRAyqxQGYtUw8JUSlEKLEnpqlK02spLYRqrRKHKUKXCqai+siqyZEpPkwIqpMryU7XIqk+1QktSlRosMTn1qVCNqlSnStWqWvWqWM2qVrfK1a569atgDatYx0rWspr1rGhNq1rXyta2uvWtcI2rXOdK17ra9a54zate98rXvvr1r4ANrGAHS9jCGvawiE2sYhfL2MY69rGQjaxkJ0vZylr2spjNrGY3y9nOevazoA2taEdL2tKa9rSoTa1qV8va1rr2tbCNrWxnS9vaPNr2trjNrW53y9ve+va3wA2ucIdL3OIa97jITa5yl8vc5jr3udCNrnSnS93qWve62M2udrfL3e5690QBAQAh+QQJBAD/ACwAAAAA9AFNAQAI/wD/CRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DDi/8fT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqOKKLLbo4oswxijjjDTWaOONOOao44489ujjj0AGKeSQRBZp5JFIJqnkkkw26eSTUEYp5ZRUVmnllVhmqeWWXHbp5ZdghhkUAGSWaWaZcJ2pJplprnnmW26+uVacdJppVp143olnnGftyedYfgYKVqB+Dkponl4dimhXigqqVaOOZgVpoY9OuuhVlkZKVaaaTsUppVV9uqdVonb6VKmgQoVqqqeueqlTrpr/qlSsrC5F66tM3VqnqrrielSvo+YK7K7CDvvnrMb6OlSyygrFLJ22PusmstIeW1S10P6K7bRGbcttt95+u2y4a15LbrlEnYvuuOrK6Wy77gIFr5rszsvmu/aiKW++du7L770//atvwAID3FPBBu+EcMI6LQwAwQv75PDDPE1MscITH2xxxRtjnHHDHYNs8cU3jcwwTSZ7/HFOJp8cU8sk1wQzyy3TXHPJM9sEs8sv7RyzTD7/DFPQOu+Mc84y+5y00igT3TTTMwXN80pSC91S1VFL/bTWL2MNtNddcx222D1XbbVKZp+NUtpfs1222WOTfbXbb8NdN9hz081S2lOf/8S32ib9fTfeVAvu0t99j4T44HKjbXjefB++OOR6p4Q44CRdTnnla2u+t+eFg2656KNPHvrjjpPu9+WYg8T65nafjnrnqpfEeuIf3d567q+nXnvmt8s+e+C6+2467b8rHrzxxxO/PPLNO5+8SLrvzlH1zEeePee2F19679BHr/zz4Q8PPPnST887+umLPz747bsfUvXWb4T99+p7RD/++evvffnaW93/4me+9/WvI/cTIPsMeMDrDZCA3KNeAiEYQQkukIEFtCD8undBDAZQgQ203wPPt0EKEo6DJSSh/DS4wvmNUIUtXF8IRZhCGGbQhTX0YOwAuEMeNg6FMZRhEP/9l0Md/hCIHwThDXE4QxoOkYhPRGATnZhEHzpte0dEYg+taDTYZdGGJ1TiFsUYRjJeUXhlNCHSsAi1zy3RiGtE4xnl2EY3jpF/c2RjHPV4M8lV0Ix75OPIGFdHO6YRkCkb2h8ROci4FdKQj6RjIgnZR0UekosOy9oX8VhJS0YSkp2kZMg82cWthVKUmTTlKf1YSk0GEpUIK9orYSkwnLRSlSvDZS5dOUlZNtKXo1zaL4G5S2EWU5cFE9kxkfkvji2TmflyZiptNk2VJVNjEZNmLLV5TWzWEmLf9GY4ucmvMY1TnNH0VzPVWU582ate73RnPM3ZTniqC1zzMtc85dn/Lm3105/3xOc/9TlQgYaLWuRCqLeildBibcuh2GpKQxn6UFhFtFXV4lVGLbrRqDzLUx+VirRAyqxQGYtUw8JUSlEKLEnpqlK02spLYRqrRKHKUKXCqai+siqyZEpPkwIqpMryU7XIqk+1QktSlRosMTn1qVCNqlSnStWqWvWqWM2qVrfK1a569atgDatYx0rWspr1rGhNq1rXyta2uvWtcI2rXOdK17ra9a54zate98rXvvr1r4ANrGAHS9jCGvawiE2sYhfL2MY69rGQjaxkJ0vZylr2spjNrGY3y9nOevazoA2taEdL2tKa9rSoTa1qV8va1rr2tbCNrWxnS9vaPNr2trjNrW53y9ve+va3wA2ucIdL3OIa97jITa5yl8vc5jr3udCNrnSnS93qWve62M2udrfL3e5690QBAQAh/gMyNDIAOw==";
|
|
2352
|
+
function xt() {
|
|
2353
|
+
return /* @__PURE__ */ o(
|
|
2354
|
+
"img",
|
|
2355
|
+
{
|
|
2356
|
+
src: os,
|
|
2357
|
+
alt: "Please wait while AI responds...",
|
|
2358
|
+
className: "csdk-w-[30px] csdk-opacity-70"
|
|
2359
|
+
}
|
|
2360
|
+
);
|
|
2361
|
+
}
|
|
2362
|
+
function ls() {
|
|
2363
|
+
return /* @__PURE__ */ o("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ o(
|
|
2364
|
+
"path",
|
|
2365
|
+
{
|
|
2366
|
+
fillRule: "evenodd",
|
|
2367
|
+
clipRule: "evenodd",
|
|
2368
|
+
d: "M16.6625 3.75693C17.1392 3.88466 17.6292 3.60177 17.7569 3.12507C17.8847 2.64838 17.6018 2.1584 17.1251 2.03067C16.6484 1.90294 16.1584 2.18583 16.0307 2.66252C15.9029 3.13922 16.1858 3.6292 16.6625 3.75693ZM16.8883 6.57911C16.5931 6.57917 16.4894 6.97072 16.7459 7.11693L16.8133 7.15536C17.5505 7.57652 18.0043 8.36245 18.0002 9.21159L18.0001 9.29005C17.9995 9.58597 18.3923 9.68995 18.5382 9.43254L18.5765 9.36512C18.9976 8.62835 19.7833 8.17475 20.6328 8.17873L20.7101 8.17916C21.0054 8.18078 21.1113 7.78983 20.8557 7.64216L20.7884 7.60329C20.0493 7.1812 19.5958 6.39586 19.5995 5.54602L19.6001 5.46949C19.6024 5.17358 19.2103 5.06727 19.0628 5.32381L19.0241 5.39111C18.6026 6.12947 17.817 6.58298 16.9674 6.5791L16.8883 6.57911ZM11.3446 8.62171C11.6782 8.18159 12.3055 8.09527 12.7456 8.4289L13.9343 9.33001C14.3744 9.66364 14.4608 10.2909 14.1271 10.731L12.9502 12.2835L5.98567 21.471C5.65204 21.9111 5.02479 21.9974 4.58467 21.6638L3.39595 20.7627C2.95583 20.429 2.86951 19.8018 3.20315 19.3617L10.1677 10.1742L11.3446 8.62171ZM10.3605 11.5752L4.00005 19.9658L5.18877 20.8669L11.5492 12.4763L10.3605 11.5752ZM12.1533 11.6794L13.3302 10.1269L12.1415 9.22581L10.9646 10.7783L12.1533 11.6794Z",
|
|
2369
|
+
fill: "#262E3D",
|
|
2370
|
+
fillOpacity: "0.67"
|
|
2371
|
+
}
|
|
2372
|
+
) });
|
|
2373
|
+
}
|
|
2374
|
+
function us(t) {
|
|
2375
|
+
return /* @__PURE__ */ o(
|
|
2376
|
+
"button",
|
|
2377
|
+
{
|
|
2378
|
+
className: "csdk-bg-transparent csdk-cursor-pointer csdk-px-[16px] csdk-py-[8px] csdk-flex csdk-items-center hover:csdk-bg-background-priority",
|
|
2379
|
+
onClick: t.onClick,
|
|
2380
|
+
children: /* @__PURE__ */ o("span", { className: "csdk-mx-[4px]", children: t.text })
|
|
2381
|
+
}
|
|
2382
|
+
);
|
|
2383
|
+
}
|
|
2384
|
+
function cs(t) {
|
|
2385
|
+
return /* @__PURE__ */ x("div", { className: "csdk-py-[16px] csdk-flex csdk-flex-col", children: [
|
|
2386
|
+
t.isLoading && /* @__PURE__ */ o("div", { className: "csdk-animate-pulse csdk-px-[16px] csdk-flex csdk-flex-col csdk-gap-[16px]", children: Array.from({ length: 3 }, (e, r) => /* @__PURE__ */ o(
|
|
2387
|
+
"div",
|
|
2388
|
+
{
|
|
2389
|
+
className: "csdk-h-[20px] csdk-bg-slate-300 csdk-rounded-[10px] csdk-col-span-2"
|
|
2390
|
+
},
|
|
2391
|
+
`suggestion-placeholder-${r}`
|
|
2392
|
+
)) }),
|
|
2393
|
+
!t.isLoading && t.suggestions.map((e) => /* @__PURE__ */ o(
|
|
2394
|
+
us,
|
|
2395
|
+
{
|
|
2396
|
+
onClick: () => t.onSelect(e),
|
|
2397
|
+
text: e
|
|
2398
|
+
},
|
|
2399
|
+
e
|
|
2400
|
+
))
|
|
2401
|
+
] });
|
|
2402
|
+
}
|
|
2403
|
+
const X = {
|
|
2404
|
+
row: {
|
|
2405
|
+
hover: "rgba(224, 224, 224, 0.3)"
|
|
2406
|
+
},
|
|
2407
|
+
secondary: {
|
|
2408
|
+
default: "rgba(38, 46, 61, 0.1)",
|
|
2409
|
+
hover: "rgba(38, 46, 61, 0.17)"
|
|
2410
|
+
},
|
|
2411
|
+
text: {
|
|
2412
|
+
active: "rgba(38, 46, 61, 1)",
|
|
2413
|
+
content: "rgba(38, 46, 61, 0.8)",
|
|
2414
|
+
secondary: "rgba(38, 46, 61, 0.55)",
|
|
2415
|
+
disabled: "rgba(38, 46, 61, 0.3)",
|
|
2416
|
+
link: "rgba(54, 163, 217, 1)",
|
|
2417
|
+
accented: "rgba(12, 14, 18, 1)",
|
|
2418
|
+
linkButton: "#1eaff3",
|
|
2419
|
+
primary: "#262E3D"
|
|
2420
|
+
},
|
|
2421
|
+
UI: {
|
|
2422
|
+
default: "#6e737d",
|
|
2423
|
+
additional: "rgba(38, 46, 61, 0.4)",
|
|
2424
|
+
guiding: "rgba(38, 46, 61, 0.1)"
|
|
2425
|
+
},
|
|
2426
|
+
background: {
|
|
2427
|
+
workspace: "rgba(255, 255, 255, 1)",
|
|
2428
|
+
supporting: "rgba(249, 249, 251, 1)",
|
|
2429
|
+
priority: "rgba(244, 244, 248, 1)"
|
|
2430
|
+
},
|
|
2431
|
+
primary: {
|
|
2432
|
+
primary: "rgba(255, 203, 5, 1)",
|
|
2433
|
+
default: "#FFC805",
|
|
2434
|
+
hover: "#F2B900"
|
|
2435
|
+
},
|
|
2436
|
+
interaction: {
|
|
2437
|
+
defaultHover: "rgba(12, 14, 18, 0.07)",
|
|
2438
|
+
guidingHover: "rgba(38, 46, 61, 0.17)",
|
|
2439
|
+
linkHovered: "rgba(50, 147, 197, 1)",
|
|
2440
|
+
primaryHovered: "rgba(242, 185, 0, 1)"
|
|
2441
|
+
},
|
|
2442
|
+
semantic: {
|
|
2443
|
+
info: "rgba(52, 150, 200, 1)",
|
|
2444
|
+
success: "rgba(34, 195, 195, 1)",
|
|
2445
|
+
warning: "rgba(242, 185, 0, 1)",
|
|
2446
|
+
error: "rgba(231, 71, 39, 1)",
|
|
2447
|
+
infoBG: "rgba(52, 150, 200, 0.1)",
|
|
2448
|
+
successBG: "rgba(34, 195, 195, 0.1)",
|
|
2449
|
+
warningBG: "rgba(242, 185, 0, 0.1)",
|
|
2450
|
+
errorBG: "rgba(231, 71, 39, 0.1)"
|
|
2451
|
+
},
|
|
2452
|
+
sisenseDark: {
|
|
2453
|
+
text: {
|
|
2454
|
+
active: "rgba(235, 239, 247, 1)",
|
|
2455
|
+
content: "rgba(235, 239, 247, 0.8)",
|
|
2456
|
+
secondary: "rgba(235, 239, 247, 0.55)",
|
|
2457
|
+
disabled: "rgba(235, 239, 247, 0.3)",
|
|
2458
|
+
link: "rgba(50, 147, 197, 1)",
|
|
2459
|
+
accented: "rgba(12, 14, 18, 1)"
|
|
2460
|
+
},
|
|
2461
|
+
ui: {
|
|
2462
|
+
default: "rgba(235, 239, 247, 0.67)",
|
|
2463
|
+
additional: "rgba(235, 239, 247, 0.4)",
|
|
2464
|
+
guiding: "rgba(235, 239, 247, 0.1)"
|
|
2465
|
+
},
|
|
2466
|
+
background: {
|
|
2467
|
+
workspace: "rgba(12, 14, 18, 1)",
|
|
2468
|
+
supporting: "rgba(249, 249, 251, 1)",
|
|
2469
|
+
priority: "rgba(244, 244, 248, 1)"
|
|
2470
|
+
},
|
|
2471
|
+
interaction: {
|
|
2472
|
+
defaultHover: "rgba(12, 14, 18, 0.07)",
|
|
2473
|
+
guidingHover: "rgba(235, 239, 247, 0.17)",
|
|
2474
|
+
linkHovered: "rgba(50, 147, 197, 1)",
|
|
2475
|
+
primaryHovered: "rgba(242, 185, 0, 1)"
|
|
2476
|
+
},
|
|
2477
|
+
semantic: {
|
|
2478
|
+
info: "rgba(52, 150, 200, 1)",
|
|
2479
|
+
success: "rgba(34, 195, 195, 1)",
|
|
2480
|
+
warning: "rgba(242, 185, 0, 1)",
|
|
2481
|
+
error: "rgba(231, 71, 39, 1)",
|
|
2482
|
+
infoBG: "rgba(52, 150, 200, 0.1)",
|
|
2483
|
+
successBG: "rgba(34, 195, 195, 0.1)",
|
|
2484
|
+
warningBG: "rgba(242, 185, 0, 0.1)",
|
|
2485
|
+
errorBG: "rgba(231, 71, 39, 0.1)"
|
|
2486
|
+
}
|
|
2487
|
+
}
|
|
2488
|
+
};
|
|
2489
|
+
function As({
|
|
2490
|
+
questions: t,
|
|
2491
|
+
onSelection: e,
|
|
2492
|
+
isLoading: r,
|
|
2493
|
+
anchorEl: s
|
|
2494
|
+
}) {
|
|
2495
|
+
const [n, i] = z(!1), a = () => {
|
|
2496
|
+
i(!0);
|
|
2497
|
+
}, l = () => {
|
|
2498
|
+
i(!1);
|
|
2499
|
+
};
|
|
2500
|
+
return /* @__PURE__ */ x(R, { children: [
|
|
2501
|
+
/* @__PURE__ */ o(
|
|
2502
|
+
Le,
|
|
2503
|
+
{
|
|
2504
|
+
sx: {
|
|
2505
|
+
p: "2px",
|
|
2506
|
+
"&.MuiIconButton-root:hover": {
|
|
2507
|
+
backgroundColor: X.interaction.defaultHover
|
|
2508
|
+
}
|
|
2509
|
+
},
|
|
2510
|
+
onClick: a,
|
|
2511
|
+
children: /* @__PURE__ */ o(ls, {})
|
|
2512
|
+
}
|
|
2513
|
+
),
|
|
2514
|
+
/* @__PURE__ */ o(
|
|
2515
|
+
Jt,
|
|
2516
|
+
{
|
|
2517
|
+
open: n,
|
|
2518
|
+
anchorEl: s,
|
|
2519
|
+
onClose: l,
|
|
2520
|
+
anchorOrigin: {
|
|
2521
|
+
vertical: "bottom",
|
|
2522
|
+
horizontal: "left"
|
|
2523
|
+
},
|
|
2524
|
+
transformOrigin: {
|
|
2525
|
+
vertical: "top",
|
|
2526
|
+
horizontal: "left"
|
|
2527
|
+
},
|
|
2528
|
+
marginThreshold: 0,
|
|
2529
|
+
children: /* @__PURE__ */ o("div", { style: { width: s == null ? void 0 : s.clientWidth }, children: /* @__PURE__ */ o(
|
|
2530
|
+
cs,
|
|
2531
|
+
{
|
|
2532
|
+
isLoading: r,
|
|
2533
|
+
onSelect: (u) => {
|
|
2534
|
+
e(u), l();
|
|
2535
|
+
},
|
|
2536
|
+
suggestions: t.slice(0, 4)
|
|
2537
|
+
}
|
|
2538
|
+
) })
|
|
2539
|
+
}
|
|
2540
|
+
)
|
|
2541
|
+
] });
|
|
2542
|
+
}
|
|
2543
|
+
function Q({ children: t, align: e, onClick: r }) {
|
|
2544
|
+
const s = "csdk-flex csdk-break-words", n = e === "left" ? "csdk-justify-start csdk-text-left" : "csdk-justify-end csdk-text-right", i = "csdk-max-w-[414px] csdk-p-2 csdk-rounded-[10px] csdk-text-ai-sm csdk-text-text-content", a = r ? "csdk-group csdk-cursor-pointer csdk-bg-background-priority hover:csdk-text-white hover:csdk-bg-text-content csdk-rounded-[20px] csdk-border csdk-border-text-content" : "csdk-bg-background-workspace";
|
|
2545
|
+
return /* @__PURE__ */ o("div", { className: `${s} ${n}`, children: /* @__PURE__ */ o("div", { className: `${i} ${a}`, onClick: r, children: t }) });
|
|
2546
|
+
}
|
|
2547
|
+
function ds({ onCancel: t, onConfirm: e }) {
|
|
2548
|
+
return /* @__PURE__ */ x("div", { className: "csdk-flex csdk-flex-col csdk-gap-y-2", children: [
|
|
2549
|
+
/* @__PURE__ */ o(Q, { align: "right", onClick: e, children: "Yes, clear chat" }),
|
|
2550
|
+
/* @__PURE__ */ o(Q, { align: "right", onClick: t, children: "No, continue analysis" })
|
|
2551
|
+
] });
|
|
2552
|
+
}
|
|
2553
|
+
const hs = Ne(null), qe = {
|
|
2554
|
+
didCatch: !1,
|
|
2555
|
+
error: null
|
|
2556
|
+
};
|
|
2557
|
+
class ps extends $t {
|
|
2558
|
+
constructor(e) {
|
|
2559
|
+
super(e), this.resetErrorBoundary = this.resetErrorBoundary.bind(this), this.state = qe;
|
|
2560
|
+
}
|
|
2561
|
+
static getDerivedStateFromError(e) {
|
|
2562
|
+
return {
|
|
2563
|
+
didCatch: !0,
|
|
2564
|
+
error: e
|
|
2565
|
+
};
|
|
2566
|
+
}
|
|
2567
|
+
resetErrorBoundary() {
|
|
2568
|
+
const {
|
|
2569
|
+
error: e
|
|
2570
|
+
} = this.state;
|
|
2571
|
+
if (e !== null) {
|
|
2572
|
+
for (var r, s, n = arguments.length, i = new Array(n), a = 0; a < n; a++)
|
|
2573
|
+
i[a] = arguments[a];
|
|
2574
|
+
(r = (s = this.props).onReset) === null || r === void 0 || r.call(s, {
|
|
2575
|
+
args: i,
|
|
2576
|
+
reason: "imperative-api"
|
|
2577
|
+
}), this.setState(qe);
|
|
2578
|
+
}
|
|
2579
|
+
}
|
|
2580
|
+
componentDidCatch(e, r) {
|
|
2581
|
+
var s, n;
|
|
2582
|
+
(s = (n = this.props).onError) === null || s === void 0 || s.call(n, e, r);
|
|
2583
|
+
}
|
|
2584
|
+
componentDidUpdate(e, r) {
|
|
2585
|
+
const {
|
|
2586
|
+
didCatch: s
|
|
2587
|
+
} = this.state, {
|
|
2588
|
+
resetKeys: n
|
|
2589
|
+
} = this.props;
|
|
2590
|
+
if (s && r.error !== null && fs(e.resetKeys, n)) {
|
|
2591
|
+
var i, a;
|
|
2592
|
+
(i = (a = this.props).onReset) === null || i === void 0 || i.call(a, {
|
|
2593
|
+
next: n,
|
|
2594
|
+
prev: e.resetKeys,
|
|
2595
|
+
reason: "keys"
|
|
2596
|
+
}), this.setState(qe);
|
|
2597
|
+
}
|
|
2598
|
+
}
|
|
2599
|
+
render() {
|
|
2600
|
+
const {
|
|
2601
|
+
children: e,
|
|
2602
|
+
fallbackRender: r,
|
|
2603
|
+
FallbackComponent: s,
|
|
2604
|
+
fallback: n
|
|
2605
|
+
} = this.props, {
|
|
2606
|
+
didCatch: i,
|
|
2607
|
+
error: a
|
|
2608
|
+
} = this.state;
|
|
2609
|
+
let l = e;
|
|
2610
|
+
if (i) {
|
|
2611
|
+
const u = {
|
|
2612
|
+
error: a,
|
|
2613
|
+
resetErrorBoundary: this.resetErrorBoundary
|
|
2614
|
+
};
|
|
2615
|
+
if (er(n))
|
|
2616
|
+
l = n;
|
|
2617
|
+
else if (typeof r == "function")
|
|
2618
|
+
l = r(u);
|
|
2619
|
+
else if (s)
|
|
2620
|
+
l = be(s, u);
|
|
2621
|
+
else
|
|
2622
|
+
throw a;
|
|
2623
|
+
}
|
|
2624
|
+
return be(hs.Provider, {
|
|
2625
|
+
value: {
|
|
2626
|
+
didCatch: i,
|
|
2627
|
+
error: a,
|
|
2628
|
+
resetErrorBoundary: this.resetErrorBoundary
|
|
2629
|
+
}
|
|
2630
|
+
}, l);
|
|
2631
|
+
}
|
|
2632
|
+
}
|
|
2633
|
+
function fs() {
|
|
2634
|
+
let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [], e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
|
|
2635
|
+
return t.length !== e.length || t.some((r, s) => !Object.is(r, e[s]));
|
|
2636
|
+
}
|
|
2637
|
+
function vs() {
|
|
2638
|
+
return /* @__PURE__ */ x("svg", { xmlns: "http://www.w3.org/2000/svg", width: "30", height: "30", viewBox: "0 0 30 30", fill: "none", children: [
|
|
2639
|
+
/* @__PURE__ */ o("rect", { x: "1", y: "1", width: "28", height: "28", rx: "14", stroke: "#9EA2AB" }),
|
|
2640
|
+
/* @__PURE__ */ o(
|
|
2641
|
+
"path",
|
|
2642
|
+
{
|
|
2643
|
+
fillRule: "evenodd",
|
|
2644
|
+
clipRule: "evenodd",
|
|
2645
|
+
d: "M14.2929 15L9.14645 9.85355C8.95118 9.65829 8.95118 9.34171 9.14645 9.14645C9.34171 8.95118 9.65829 8.95118 9.85355 9.14645L15 14.2929L20.1464 9.14645C20.3417 8.95118 20.6583 8.95118 20.8536 9.14645C21.0488 9.34171 21.0488 9.65829 20.8536 9.85355L15.7071 15L20.8536 20.1464C21.0488 20.3417 21.0488 20.6583 20.8536 20.8536C20.6583 21.0488 20.3417 21.0488 20.1464 20.8536L15 15.7071L9.85355 20.8536C9.65829 21.0488 9.34171 21.0488 9.14645 20.8536C8.95118 20.6583 8.95118 20.3417 9.14645 20.1464L14.2929 15Z",
|
|
2646
|
+
fill: "#262E3D"
|
|
2647
|
+
}
|
|
2648
|
+
)
|
|
2649
|
+
] });
|
|
2650
|
+
}
|
|
2651
|
+
function ys() {
|
|
2652
|
+
return /* @__PURE__ */ o("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ o(
|
|
2653
|
+
"path",
|
|
2654
|
+
{
|
|
2655
|
+
fillRule: "evenodd",
|
|
2656
|
+
clipRule: "evenodd",
|
|
2657
|
+
d: "M13.0503 10.2426L17.2929 6H14.5C14.2239 6 14 5.77614 14 5.5C14 5.22386 14.2239 5 14.5 5H18.5C18.7761 5 19 5.22386 19 5.5V9.5C19 9.77614 18.7761 10 18.5 10C18.2239 10 18 9.77614 18 9.5V6.70711L13.7574 10.9497C13.5621 11.145 13.2455 11.145 13.0503 10.9497C12.855 10.7545 12.855 10.4379 13.0503 10.2426ZM10.1464 13.1464L6 17.2929V14.5C6 14.2239 5.77614 14 5.5 14C5.22386 14 5 14.2239 5 14.5V18.5C5 18.7761 5.22386 19 5.5 19H9.5C9.77614 19 10 18.7761 10 18.5C10 18.2239 9.77614 18 9.5 18H6.70711L10.8536 13.8536C11.0488 13.6583 11.0488 13.3417 10.8536 13.1464C10.6583 12.9512 10.3417 12.9512 10.1464 13.1464Z",
|
|
2658
|
+
fill: "#262E3D",
|
|
2659
|
+
fillOpacity: "0.67"
|
|
2660
|
+
}
|
|
2661
|
+
) });
|
|
2662
|
+
}
|
|
2663
|
+
function ms() {
|
|
2664
|
+
return /* @__PURE__ */ o("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ o(
|
|
2665
|
+
"path",
|
|
2666
|
+
{
|
|
2667
|
+
fillRule: "evenodd",
|
|
2668
|
+
clipRule: "evenodd",
|
|
2669
|
+
d: "M17.25 12C17.25 14.8995 14.8995 17.25 12 17.25C9.10051 17.25 6.75 14.8995 6.75 12C6.75 9.10051 9.10051 6.75 12 6.75C14.8995 6.75 17.25 9.10051 17.25 12ZM18 12C18 15.3137 15.3137 18 12 18C8.68629 18 6 15.3137 6 12C6 8.68629 8.68629 6 12 6C15.3137 6 18 8.68629 18 12ZM11.625 9.375V10.1239H12.375V9.375H11.625ZM12.375 14.6239V10.8739H11.625V14.6239H12.375Z",
|
|
2670
|
+
fill: "#262E3D",
|
|
2671
|
+
fillOpacity: "0.67"
|
|
2672
|
+
}
|
|
2673
|
+
) });
|
|
2674
|
+
}
|
|
2675
|
+
function gs() {
|
|
2676
|
+
return /* @__PURE__ */ o("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ o(
|
|
2677
|
+
"path",
|
|
2678
|
+
{
|
|
2679
|
+
fillRule: "evenodd",
|
|
2680
|
+
clipRule: "evenodd",
|
|
2681
|
+
d: "M4.64372 12C4.64372 15.3137 7.33002 18 10.6437 18C12.6857 18 14.4894 16.9799 15.5731 15.4216C15.7307 15.195 16.0347 15.1118 16.2737 15.2498C16.5131 15.3879 16.5964 15.6953 16.4413 15.924C15.1825 17.7803 13.0555 19 10.6437 19C6.77773 19 3.64372 15.866 3.64372 12C3.64372 8.13401 6.77773 5 10.6437 5C13.8766 5 16.5977 7.19162 17.4021 10.1702L18.0347 8.56524C18.1359 8.30833 18.4263 8.18215 18.6832 8.2834C18.9401 8.38466 19.0663 8.67501 18.965 8.93192L17.865 11.723C17.7638 11.9799 17.4734 12.1061 17.2165 12.0048L14.4255 10.9048C14.1685 10.8035 14.0424 10.5132 14.1436 10.2563C14.2449 9.99935 14.5352 9.87317 14.7921 9.97442L16.4897 10.6435C15.8749 7.98316 13.4909 6 10.6437 6C7.33002 6 4.64372 8.68629 4.64372 12Z",
|
|
2682
|
+
fill: "#262E3D",
|
|
2683
|
+
fillOpacity: "0.67"
|
|
2684
|
+
}
|
|
2685
|
+
) });
|
|
2686
|
+
}
|
|
2687
|
+
function qs() {
|
|
2688
|
+
return /* @__PURE__ */ o("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ o(
|
|
2689
|
+
"path",
|
|
2690
|
+
{
|
|
2691
|
+
fillRule: "evenodd",
|
|
2692
|
+
clipRule: "evenodd",
|
|
2693
|
+
d: "M11 7C11 6.44772 11.4477 6 12 6C12.5523 6 13 6.44772 13 7C13 7.55228 12.5523 8 12 8C11.4477 8 11 7.55228 11 7ZM11 12C11 11.4477 11.4477 11 12 11C12.5523 11 13 11.4477 13 12C13 12.5523 12.5523 13 12 13C11.4477 13 11 12.5523 11 12ZM12 16C11.4477 16 11 16.4477 11 17C11 17.5523 11.4477 18 12 18C12.5523 18 13 17.5523 13 17C13 16.4477 12.5523 16 12 16Z",
|
|
2694
|
+
fill: "#262E3D",
|
|
2695
|
+
fillOpacity: "0.67"
|
|
2696
|
+
}
|
|
2697
|
+
) });
|
|
2698
|
+
}
|
|
2699
|
+
const Pe = $(Le)(() => ({
|
|
2700
|
+
padding: 2,
|
|
2701
|
+
"&.MuiIconButton-root:hover": {
|
|
2702
|
+
backgroundColor: X.interaction.defaultHover
|
|
2703
|
+
}
|
|
2704
|
+
})), Kt = ({ title: t, children: e }) => /* @__PURE__ */ o(
|
|
2705
|
+
Zt,
|
|
2706
|
+
{
|
|
2707
|
+
title: t,
|
|
2708
|
+
placement: "top",
|
|
2709
|
+
componentsProps: {
|
|
2710
|
+
tooltip: {
|
|
2711
|
+
sx: {
|
|
2712
|
+
bgcolor: X.background.workspace,
|
|
2713
|
+
color: X.text.content,
|
|
2714
|
+
paddingX: "16px",
|
|
2715
|
+
paddingY: "12px",
|
|
2716
|
+
fontSize: "13px",
|
|
2717
|
+
fontFamily: "Open Sans",
|
|
2718
|
+
fontWeight: 400,
|
|
2719
|
+
borderRadius: "4px",
|
|
2720
|
+
boxShadow: "0px 4px 12px 0px rgba(9, 9, 10, 0.20), 0px 1px 4px 0px rgba(9, 9, 10, 0.10);"
|
|
2721
|
+
}
|
|
2722
|
+
},
|
|
2723
|
+
arrow: {
|
|
2724
|
+
sx: {
|
|
2725
|
+
color: X.background.workspace
|
|
2726
|
+
}
|
|
2727
|
+
}
|
|
2728
|
+
},
|
|
2729
|
+
arrow: !0,
|
|
2730
|
+
children: e
|
|
2731
|
+
}
|
|
2732
|
+
), bs = ({ title: t }) => /* @__PURE__ */ o(Kt, { title: t, children: /* @__PURE__ */ o(Pe, { disableTouchRipple: !0, children: /* @__PURE__ */ o(ms, {}) }) }), Ss = ({ items: t }) => {
|
|
2733
|
+
const [e, r] = z(null), s = (i) => {
|
|
2734
|
+
r(i.currentTarget);
|
|
2735
|
+
}, n = () => {
|
|
2736
|
+
r(null);
|
|
2737
|
+
};
|
|
2738
|
+
return /* @__PURE__ */ x(R, { children: [
|
|
2739
|
+
/* @__PURE__ */ o(Pe, { onClick: s, children: /* @__PURE__ */ o(qs, {}) }),
|
|
2740
|
+
/* @__PURE__ */ o(
|
|
2741
|
+
Vt,
|
|
2742
|
+
{
|
|
2743
|
+
anchorEl: e,
|
|
2744
|
+
anchorOrigin: {
|
|
2745
|
+
vertical: "bottom",
|
|
2746
|
+
horizontal: "center"
|
|
2747
|
+
},
|
|
2748
|
+
transformOrigin: {
|
|
2749
|
+
vertical: "top",
|
|
2750
|
+
horizontal: "right"
|
|
2751
|
+
},
|
|
2752
|
+
open: Boolean(e),
|
|
2753
|
+
onClose: n,
|
|
2754
|
+
children: t.map((i) => /* @__PURE__ */ x(
|
|
2755
|
+
Xt,
|
|
2756
|
+
{
|
|
2757
|
+
onClick: () => {
|
|
2758
|
+
i.onClick(), n();
|
|
2759
|
+
},
|
|
2760
|
+
sx: {
|
|
2761
|
+
fontSize: "13px",
|
|
2762
|
+
fontFamily: "Open Sans",
|
|
2763
|
+
color: X.text.content
|
|
2764
|
+
},
|
|
2765
|
+
disableRipple: !0,
|
|
2766
|
+
children: [
|
|
2767
|
+
i.icon,
|
|
2768
|
+
/* @__PURE__ */ o("div", { className: "csdk-ml-1", children: i.title })
|
|
2769
|
+
]
|
|
2770
|
+
},
|
|
2771
|
+
i.title
|
|
2772
|
+
))
|
|
2773
|
+
}
|
|
2774
|
+
)
|
|
2775
|
+
] });
|
|
2776
|
+
}, Cs = ({ onClick: t }) => /* @__PURE__ */ o(Kt, { title: "Preview", children: /* @__PURE__ */ o(Pe, { onClick: t, children: /* @__PURE__ */ o(ys, {}) }) });
|
|
2777
|
+
function Os({
|
|
2778
|
+
infoTooltipText: t,
|
|
2779
|
+
onRefresh: e,
|
|
2780
|
+
onExpand: r
|
|
2781
|
+
}) {
|
|
2782
|
+
const s = ee(
|
|
2783
|
+
() => [
|
|
2784
|
+
{
|
|
2785
|
+
title: "Refresh",
|
|
2786
|
+
onClick: e,
|
|
2787
|
+
icon: /* @__PURE__ */ o(gs, {})
|
|
2788
|
+
}
|
|
2789
|
+
],
|
|
2790
|
+
[e]
|
|
2791
|
+
);
|
|
2792
|
+
return /* @__PURE__ */ x("div", { className: "csdk-flex csdk-py-1.5", children: [
|
|
2793
|
+
/* @__PURE__ */ o(bs, { title: t != null ? t : "" }),
|
|
2794
|
+
/* @__PURE__ */ o(Ss, { items: s }),
|
|
2795
|
+
/* @__PURE__ */ o(Cs, { onClick: r })
|
|
2796
|
+
] });
|
|
2797
|
+
}
|
|
2798
|
+
class ks extends Bt {
|
|
2799
|
+
constructor(r, s) {
|
|
2800
|
+
var n;
|
|
2801
|
+
super((n = r.jaql.title) != null ? n : "", s);
|
|
2802
|
+
P(this, "metadataItem");
|
|
2803
|
+
P(this, "expression");
|
|
2804
|
+
P(this, "skipValidation");
|
|
2805
|
+
this.expression = r.jaql.dim || r.jaql.formula, this.metadataItem = r, this.skipValidation = !0;
|
|
2806
|
+
}
|
|
2807
|
+
get id() {
|
|
2808
|
+
return this.expression;
|
|
2809
|
+
}
|
|
2810
|
+
jaql() {
|
|
2811
|
+
return this.metadataItem;
|
|
2812
|
+
}
|
|
2813
|
+
}
|
|
2814
|
+
const xs = {
|
|
2815
|
+
text: ve.TextAttribute,
|
|
2816
|
+
numeric: ve.NumericAttribute,
|
|
2817
|
+
datetime: ve.DateDimension
|
|
2818
|
+
};
|
|
2819
|
+
function G(t) {
|
|
2820
|
+
var e;
|
|
2821
|
+
return "format" in t.jaql && (t.format = t.jaql.format, delete t.jaql.format), new ks(t, (e = xs[t.jaql.datatype]) != null ? e : "numeric");
|
|
2822
|
+
}
|
|
2823
|
+
const Ks = (t) => ({
|
|
2824
|
+
dataOptions: { columns: t.map(G) }
|
|
2825
|
+
}), Ls = Object.freeze({
|
|
2826
|
+
convolution: {
|
|
2827
|
+
enabled: !0,
|
|
2828
|
+
selectedConvolutionType: "bySlicesCount",
|
|
2829
|
+
independentSlicesCount: 7
|
|
2830
|
+
},
|
|
2831
|
+
markers: {
|
|
2832
|
+
enabled: !1
|
|
2833
|
+
},
|
|
2834
|
+
legend: {
|
|
2835
|
+
enabled: !1
|
|
2836
|
+
},
|
|
2837
|
+
yAxis: {
|
|
2838
|
+
gridLines: !1
|
|
2839
|
+
},
|
|
2840
|
+
xAxis: {
|
|
2841
|
+
gridLines: !1
|
|
2842
|
+
}
|
|
2843
|
+
}), Ns = Object.freeze({
|
|
2844
|
+
line: "line/spline",
|
|
2845
|
+
pie: "pie/donut"
|
|
2846
|
+
}), js = (t, e) => {
|
|
2847
|
+
var s, n, i, a, l, u;
|
|
2848
|
+
const r = t.reduce((d, c) => (d[c.jaql.title] = c, d), {});
|
|
2849
|
+
return {
|
|
2850
|
+
category: (n = (s = e.category) == null ? void 0 : s.map((d) => G(r[d.name]))) != null ? n : [],
|
|
2851
|
+
value: (a = (i = e.value) == null ? void 0 : i.map((d) => ({
|
|
2852
|
+
column: G(r[d.name]),
|
|
2853
|
+
sortType: "sortNone"
|
|
2854
|
+
}))) != null ? a : [],
|
|
2855
|
+
breakBy: (u = (l = e.breakBy) == null ? void 0 : l.map((d) => G(r[d.name]))) != null ? u : []
|
|
2856
|
+
};
|
|
2857
|
+
}, Ts = (t, e) => {
|
|
2858
|
+
var s, n, i, a;
|
|
2859
|
+
const r = t.reduce((l, u) => (l[u.jaql.title] = u, l), {});
|
|
2860
|
+
return {
|
|
2861
|
+
category: (n = (s = e.breakBy) == null ? void 0 : s.map((l) => G(r[l.name]))) != null ? n : [],
|
|
2862
|
+
value: (a = (i = e.value) == null ? void 0 : i.map((l) => ({
|
|
2863
|
+
column: G(r[l.name]),
|
|
2864
|
+
sortType: "sortNone"
|
|
2865
|
+
}))) != null ? a : []
|
|
2866
|
+
};
|
|
2867
|
+
}, Es = (t, e) => {
|
|
2868
|
+
var i, a;
|
|
2869
|
+
let r;
|
|
2870
|
+
e.chartFamily === "categorical" ? r = Ts(t, e.axesMapping) : r = js(t, e.axesMapping);
|
|
2871
|
+
const s = Ie(Ls, {
|
|
2872
|
+
subtype: Ns[e.chartType]
|
|
2873
|
+
}), n = Ie(s, {
|
|
2874
|
+
legend: {
|
|
2875
|
+
enabled: !0,
|
|
2876
|
+
position: "right"
|
|
2877
|
+
},
|
|
2878
|
+
yAxis: {
|
|
2879
|
+
title: {
|
|
2880
|
+
enabled: !0,
|
|
2881
|
+
text: We(Re((i = r.value[0]) != null ? i : {}))
|
|
2882
|
+
}
|
|
2883
|
+
},
|
|
2884
|
+
xAxis: {
|
|
2885
|
+
title: {
|
|
2886
|
+
enabled: !0,
|
|
2887
|
+
text: We(Re((a = r.category[0]) != null ? a : {}))
|
|
2888
|
+
}
|
|
2889
|
+
}
|
|
2890
|
+
});
|
|
2891
|
+
return {
|
|
2892
|
+
dataOptions: r,
|
|
2893
|
+
styleOptions: s,
|
|
2894
|
+
expandedStyleOptions: n
|
|
2895
|
+
};
|
|
2896
|
+
};
|
|
2897
|
+
function Ps({ content: t, dataSource: e }) {
|
|
2898
|
+
const [r, s] = z(!1), { chartElement: n, expandedElement: i } = ee(() => {
|
|
2899
|
+
const { detailedDescription: a, chartRecommendations: l, jaql: u } = t, d = l.chartType.toLowerCase(), c = {
|
|
2900
|
+
cornerRadius: "Small",
|
|
2901
|
+
header: {
|
|
2902
|
+
renderToolbar: (f) => /* @__PURE__ */ o(
|
|
2903
|
+
Os,
|
|
2904
|
+
{
|
|
2905
|
+
infoTooltipText: a,
|
|
2906
|
+
onRefresh: f,
|
|
2907
|
+
onExpand: () => s(!0)
|
|
2908
|
+
}
|
|
2909
|
+
)
|
|
2910
|
+
}
|
|
2911
|
+
}, A = u.metadata.filter((f) => f.panel === "scope").map(G), p = u.metadata.filter((f) => f.panel !== "scope");
|
|
2912
|
+
let h, g;
|
|
2913
|
+
if (d === "table") {
|
|
2914
|
+
const { dataOptions: f } = Ks(p), v = {
|
|
2915
|
+
dataOptions: f,
|
|
2916
|
+
dataSource: e,
|
|
2917
|
+
filters: A
|
|
2918
|
+
};
|
|
2919
|
+
h = /* @__PURE__ */ o("div", { className: "csdk-h-[245px]", children: /* @__PURE__ */ o(Ue, K(y({}, v), { widgetStyleOptions: c })) }), g = /* @__PURE__ */ o(Ue, K(y({}, v), { widgetStyleOptions: { header: { hidden: !0 } } }));
|
|
2920
|
+
} else {
|
|
2921
|
+
const { dataOptions: f, styleOptions: v, expandedStyleOptions: k } = Es(
|
|
2922
|
+
p,
|
|
2923
|
+
l
|
|
2924
|
+
), j = {
|
|
2925
|
+
chartType: d,
|
|
2926
|
+
dataOptions: f,
|
|
2927
|
+
dataSource: e,
|
|
2928
|
+
filters: A
|
|
2929
|
+
};
|
|
2930
|
+
h = /* @__PURE__ */ o("div", { children: /* @__PURE__ */ o(
|
|
2931
|
+
He,
|
|
2932
|
+
K(y({}, j), {
|
|
2933
|
+
styleOptions: v,
|
|
2934
|
+
widgetStyleOptions: c
|
|
2935
|
+
})
|
|
2936
|
+
) }), g = /* @__PURE__ */ o(
|
|
2937
|
+
He,
|
|
2938
|
+
K(y({}, j), {
|
|
2939
|
+
styleOptions: k,
|
|
2940
|
+
widgetStyleOptions: { header: { hidden: !0 } }
|
|
2941
|
+
})
|
|
2942
|
+
);
|
|
2943
|
+
}
|
|
2944
|
+
return { chartElement: h, expandedElement: g };
|
|
2945
|
+
}, [t, e]);
|
|
2946
|
+
return /* @__PURE__ */ x(R, { children: [
|
|
2947
|
+
n,
|
|
2948
|
+
/* @__PURE__ */ x(hr, { open: r, onClose: () => s(!1), maxWidth: "xl", fullWidth: !0, children: [
|
|
2949
|
+
/* @__PURE__ */ x("div", { className: "csdk-flex csdk-items-center csdk-justify-between csdk-py-[30px] csdk-px-[40px]", children: [
|
|
2950
|
+
/* @__PURE__ */ o("div", { className: "csdk-text-ai-lg csdk-semibold csdk-text-text-active", children: t.queryTitle }),
|
|
2951
|
+
/* @__PURE__ */ o(Le, { onClick: () => s(!1), children: /* @__PURE__ */ o(vs, {}) })
|
|
2952
|
+
] }),
|
|
2953
|
+
/* @__PURE__ */ o("div", { className: "csdk-h-screen", children: i })
|
|
2954
|
+
] })
|
|
2955
|
+
] });
|
|
2956
|
+
}
|
|
2957
|
+
function Ms() {
|
|
2958
|
+
return /* @__PURE__ */ o("svg", { width: "24", height: "25", viewBox: "0 0 24 25", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ o(
|
|
2959
|
+
"path",
|
|
2960
|
+
{
|
|
2961
|
+
className: "group-hover:csdk-fill-white",
|
|
2962
|
+
fillRule: "evenodd",
|
|
2963
|
+
clipRule: "evenodd",
|
|
2964
|
+
d: "M11.5 3.5C11.2239 3.5 11 3.72386 11 4V5C11 5.27614 11.2239 5.5 11.5 5.5C11.7761 5.5 12 5.27614 12 5V4C12 3.72386 11.7761 3.5 11.5 3.5ZM20 11C20 10.7239 19.7761 10.5 19.5 10.5H18.5C18.2239 10.5 18 10.7239 18 11C18 11.2761 18.2239 11.5 18.5 11.5H19.5C19.7761 11.5 20 11.2761 20 11ZM6.06066 5.35355C5.8654 5.15829 5.54882 5.15829 5.35355 5.35355C5.15829 5.54882 5.15829 5.8654 5.35355 6.06066L6.06066 6.76777C6.25592 6.96303 6.5725 6.96303 6.76777 6.76777C6.96303 6.5725 6.96303 6.25592 6.76777 6.06066L6.06066 5.35355ZM5 11C5 10.7239 4.77614 10.5 4.5 10.5H3.5C3.22386 10.5 3 10.7239 3 11C3 11.2761 3.22386 11.5 3.5 11.5H4.5C4.77614 11.5 5 11.2761 5 11ZM17.7678 6.06066C17.963 5.8654 17.963 5.54882 17.7678 5.35355C17.5725 5.15829 17.2559 5.15829 17.0607 5.35355L16.3536 6.06066C16.1583 6.25592 16.1583 6.5725 16.3536 6.76777C16.5488 6.96303 16.8654 6.96303 17.0607 6.76777L17.7678 6.06066ZM12.1443 6.53487C14.6635 6.81824 16.6511 8.67684 16.9597 11.0379C17.1678 12.6385 16.5623 14.2379 15.3244 15.3575C14.5049 16.1022 14.0038 17.2023 14 18.2722V19.5H9V18.2753C8.98626 17.1847 8.46545 16.0683 7.62521 15.3139C6.04513 13.8436 5.56667 11.6251 6.41329 9.69484C7.25992 7.76454 9.26456 6.50321 11.4909 6.5C11.7093 6.50004 11.9274 6.51167 12.1443 6.53487ZM11.4927 7.5C9.675 7.50258 8.03521 8.51877 7.34062 10.0785C6.64391 11.643 7.03778 13.4417 8.32278 14.6196C9.36662 15.5426 9.98356 16.8913 10.0003 18.2029V18.5H13.0001L13.0001 18.1969C13.0048 16.9143 13.6014 15.5805 14.6246 14.6649C15.6402 13.7602 16.1379 12.4652 15.9669 11.1689C15.7132 9.25779 14.0849 7.75729 12.0264 7.52799C11.8487 7.50938 11.67 7.50004 11.4927 7.5ZM14.1068 12.5099H13.1068C13.1068 10.7222 12.3371 9.95246 10.6235 10.0096L10.5901 9.01014C12.8765 8.93393 14.1068 10.1642 14.1068 12.5099ZM13 21.5V20.5H10V21.5H13Z",
|
|
2965
|
+
fill: "#262E3D"
|
|
2966
|
+
}
|
|
2967
|
+
) });
|
|
2968
|
+
}
|
|
2969
|
+
function Ds({ disabled: t }) {
|
|
2970
|
+
return /* @__PURE__ */ x(
|
|
2971
|
+
"div",
|
|
2972
|
+
{
|
|
2973
|
+
className: `csdk-my-[-5px] csdk-flex csdk-items-center csdk-gap-x-2 csdk-select-none ${t ? "csdk-opacity-70" : ""}`,
|
|
2974
|
+
children: [
|
|
2975
|
+
/* @__PURE__ */ o(Ms, {}),
|
|
2976
|
+
"Insights"
|
|
2977
|
+
]
|
|
2978
|
+
}
|
|
2979
|
+
);
|
|
2980
|
+
}
|
|
2981
|
+
function Lt({ summary: t }) {
|
|
2982
|
+
const [e, r] = z(!0), s = t.length > 200;
|
|
2983
|
+
return /* @__PURE__ */ x("div", { children: [
|
|
2984
|
+
/* @__PURE__ */ o("div", { className: `${e ? "csdk-line-clamp-5" : ""} csdk-whitespace-pre-wrap`, children: t }),
|
|
2985
|
+
/* @__PURE__ */ x("div", { className: "csdk-mt-3 csdk-flex csdk-justify-between", children: [
|
|
2986
|
+
/* @__PURE__ */ o("div", { className: "csdk-text-text-disabled csdk-text-[10px]", children: "Powered by AI" }),
|
|
2987
|
+
s && /* @__PURE__ */ o(
|
|
2988
|
+
"div",
|
|
2989
|
+
{
|
|
2990
|
+
className: "csdk-text-ai-xs csdk-text-text-link csdk-cursor-pointer",
|
|
2991
|
+
onClick: () => r((n) => !n),
|
|
2992
|
+
children: e ? "Read more" : "Collapse"
|
|
2993
|
+
}
|
|
2994
|
+
)
|
|
2995
|
+
] })
|
|
2996
|
+
] });
|
|
2997
|
+
}
|
|
2998
|
+
function ws({ dataSource: t, metadata: e }) {
|
|
2999
|
+
const [r, s] = z(!1), { data: n, isLoading: i, refetch: a } = Ot({
|
|
3000
|
+
dataSource: t,
|
|
3001
|
+
metadata: e,
|
|
3002
|
+
enabled: !1
|
|
3003
|
+
}), l = V(() => {
|
|
3004
|
+
s(!0), a();
|
|
3005
|
+
}, [a]);
|
|
3006
|
+
return /* @__PURE__ */ x(R, { children: [
|
|
3007
|
+
/* @__PURE__ */ o(Q, { align: "right", onClick: r ? void 0 : l, children: /* @__PURE__ */ o(Ds, { disabled: r }) }),
|
|
3008
|
+
r && (i ? /* @__PURE__ */ o(xt, {}) : /* @__PURE__ */ o(Q, { align: "left", children: /* @__PURE__ */ o(Lt, { summary: n != null ? n : "No insights were returned." }) }))
|
|
3009
|
+
] });
|
|
3010
|
+
}
|
|
3011
|
+
function zs({
|
|
3012
|
+
message: t,
|
|
3013
|
+
dataSource: e,
|
|
3014
|
+
allowFollowupQuestions: r,
|
|
3015
|
+
sendMessage: s = () => {
|
|
3016
|
+
}
|
|
3017
|
+
}) {
|
|
3018
|
+
if ("type" in t && t.type === "nlq") {
|
|
3019
|
+
const n = JSON.parse(t.content), { queryTitle: i, chartRecommendations: a, jaql: l } = n;
|
|
3020
|
+
console.debug(`JAQL for ${i}`, l), console.debug(`chart recommendations for ${i}`, a);
|
|
3021
|
+
let u = a.chartType;
|
|
3022
|
+
return u !== "table" && (u += " chart"), /* @__PURE__ */ x(R, { children: [
|
|
3023
|
+
/* @__PURE__ */ o(Q, { align: "left", children: `Here is a ${u} showing ${n.queryTitle.toLowerCase()}.` }),
|
|
3024
|
+
/* @__PURE__ */ o(Ps, { content: n, dataSource: e }),
|
|
3025
|
+
/* @__PURE__ */ o(ws, { dataSource: e, metadata: n.jaql.metadata }),
|
|
3026
|
+
r && /* @__PURE__ */ o("div", { className: "csdk-flex csdk-flex-col csdk-gap-y-2 csdk-my-[8px]", children: n.followupQuestions.slice(0, 2).map((d, c) => /* @__PURE__ */ o(
|
|
3027
|
+
Q,
|
|
3028
|
+
{
|
|
3029
|
+
align: "right",
|
|
3030
|
+
onClick: () => {
|
|
3031
|
+
s(d);
|
|
3032
|
+
},
|
|
3033
|
+
children: d
|
|
3034
|
+
},
|
|
3035
|
+
c
|
|
3036
|
+
)) })
|
|
3037
|
+
] });
|
|
3038
|
+
}
|
|
3039
|
+
return /* @__PURE__ */ o(Q, { align: t.role === "user" ? "right" : "left", children: t.content });
|
|
3040
|
+
}
|
|
3041
|
+
const Is = tr(zs);
|
|
3042
|
+
function Ws({
|
|
3043
|
+
messages: t,
|
|
3044
|
+
sendMessage: e = () => {
|
|
3045
|
+
}
|
|
3046
|
+
}) {
|
|
3047
|
+
const { selectedContext: r } = Ae(), s = (i, a) => a === t.length - 1 && "type" in i && i.type === "nlq", n = ({ error: i }) => (console.debug("Unexpected error occurred when resolving a chat message:", i), /* @__PURE__ */ o(
|
|
3048
|
+
"div",
|
|
3049
|
+
{
|
|
3050
|
+
className: "csdk-p-4 csdk-text-sm csdk-text-red-800 csdk-rounded-lg csdk-bg-red-50 dark:csdk-bg-gray-800 dark:csdk-text-red-400",
|
|
3051
|
+
role: "alert",
|
|
3052
|
+
children: /* @__PURE__ */ o("span", { className: "font-medium", children: "Error: unable to render response" })
|
|
3053
|
+
}
|
|
3054
|
+
));
|
|
3055
|
+
return /* @__PURE__ */ o("div", { className: "csdk-flex csdk-flex-col csdk-gap-y-4", children: t.map((i, a) => /* @__PURE__ */ o(ps, { fallbackRender: n, children: /* @__PURE__ */ o(
|
|
3056
|
+
Is,
|
|
3057
|
+
{
|
|
3058
|
+
message: i,
|
|
3059
|
+
dataSource: r.name,
|
|
3060
|
+
sendMessage: e,
|
|
3061
|
+
allowFollowupQuestions: s(i, a)
|
|
3062
|
+
},
|
|
3063
|
+
a
|
|
3064
|
+
) }, a)) });
|
|
3065
|
+
}
|
|
3066
|
+
function Nt() {
|
|
3067
|
+
return /* @__PURE__ */ o(
|
|
3068
|
+
"svg",
|
|
3069
|
+
{
|
|
3070
|
+
width: "100%",
|
|
3071
|
+
height: "100%",
|
|
3072
|
+
viewBox: "0 0 4 8",
|
|
3073
|
+
fill: "none",
|
|
3074
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
3075
|
+
children: /* @__PURE__ */ o(
|
|
3076
|
+
"path",
|
|
3077
|
+
{
|
|
3078
|
+
d: "M3.87815 0.825307C4.05781 0.615598 4.03345 0.299954 3.82374 0.120297C3.61403 -0.05936 3.29838 -0.034998 3.11873 0.174711L0.120288 3.67471C-0.040096 3.86192 -0.040096 4.1381 0.120288 4.32531L3.11873 7.82531C3.29838 8.03502 3.61403 8.05938 3.82374 7.87972C4.03345 7.70006 4.05781 7.38442 3.87815 7.17471L1.15839 4.00001L3.87815 0.825307Z",
|
|
3079
|
+
fill: "#262E3D"
|
|
3080
|
+
}
|
|
3081
|
+
)
|
|
3082
|
+
}
|
|
3083
|
+
);
|
|
3084
|
+
}
|
|
3085
|
+
function Rs({ onClick: t }) {
|
|
3086
|
+
return /* @__PURE__ */ o("div", { className: "csdk-w-5 csdk-h-5 csdk-flex csdk-p-[4px] csdk-ml-[6px] csdk-cursor-pointer", onClick: t, children: /* @__PURE__ */ o(Nt, {}) });
|
|
3087
|
+
}
|
|
3088
|
+
const rt = ({ question: t, onClick: e }) => /* @__PURE__ */ o(
|
|
3089
|
+
"button",
|
|
3090
|
+
{
|
|
3091
|
+
className: "csdk-rounded-[20px] csdk-text-ai-sm csdk-text-text-active csdk-border csdk-border-text-content csdk-px-[14px] csdk-py-[11px] csdk-w-full csdk-bg-background-priority csdk-cursor-pointer hover:csdk-text-white hover:csdk-bg-text-content",
|
|
3092
|
+
onClick: e,
|
|
3093
|
+
children: t
|
|
3094
|
+
}
|
|
3095
|
+
);
|
|
3096
|
+
function Us(t) {
|
|
3097
|
+
const [e, r] = z(!1);
|
|
3098
|
+
return /* @__PURE__ */ x("div", { className: "csdk-flex csdk-flex-col csdk-gap-y-4 csdk-justify-center csdk-text-center csdk-items-center", children: [
|
|
3099
|
+
(e ? t.questions : t.questions.slice(0, 4)).map((s) => /* @__PURE__ */ o(
|
|
3100
|
+
rt,
|
|
3101
|
+
{
|
|
3102
|
+
question: s,
|
|
3103
|
+
onClick: () => t.onSelection(s)
|
|
3104
|
+
},
|
|
3105
|
+
s
|
|
3106
|
+
)),
|
|
3107
|
+
!e && t.questions.length > 4 && /* @__PURE__ */ o(rt, { question: "See more", onClick: () => r(!0) })
|
|
3108
|
+
] });
|
|
3109
|
+
}
|
|
3110
|
+
function Hs() {
|
|
3111
|
+
return /* @__PURE__ */ o("div", { className: "csdk-animate-pulse csdk-flex csdk-flex-col csdk-gap-4", children: Array.from({ length: 5 }, (t, e) => /* @__PURE__ */ o(
|
|
3112
|
+
"div",
|
|
3113
|
+
{
|
|
3114
|
+
className: "csdk-h-[40px] csdk-bg-slate-300 csdk-rounded-[10px] csdk-col-span-2"
|
|
3115
|
+
},
|
|
3116
|
+
e
|
|
3117
|
+
)) });
|
|
3118
|
+
}
|
|
3119
|
+
function Qs(t) {
|
|
3120
|
+
const e = t.questions.length > 0;
|
|
3121
|
+
return /* @__PURE__ */ x(R, { children: [
|
|
3122
|
+
/* @__PURE__ */ x("div", { className: "csdk-text-center", children: [
|
|
3123
|
+
/* @__PURE__ */ x("h1", { className: "csdk-text-ai-lg csdk-text-text-active csdk-font-semibold", children: [
|
|
3124
|
+
"Explore ",
|
|
3125
|
+
t.title
|
|
3126
|
+
] }),
|
|
3127
|
+
/* @__PURE__ */ x("p", { className: "csdk-text-ai-base csdk-text-text-active csdk-mb-[8px] csdk-mt-[32px]", children: [
|
|
3128
|
+
"You can ask questions about your data, and I'll provide insights based on the data model you're working with.",
|
|
3129
|
+
/* @__PURE__ */ o("br", {}),
|
|
3130
|
+
/* @__PURE__ */ o("br", {}),
|
|
3131
|
+
"Some suggestions to ask about this dataset:"
|
|
3132
|
+
] })
|
|
3133
|
+
] }),
|
|
3134
|
+
!e && /* @__PURE__ */ o(Hs, {}),
|
|
3135
|
+
e && /* @__PURE__ */ o(Us, { onSelection: t.onSelection, questions: t.questions })
|
|
3136
|
+
] });
|
|
3137
|
+
}
|
|
3138
|
+
const jt = rr(function({ title: e, leftNav: r, rightNav: s }, n) {
|
|
3139
|
+
return /* @__PURE__ */ x("div", { className: "csdk-w-full csdk-px-[14px] csdk-py-[29px] csdk-flex csdk-items-center csdk-rounded-[30px] csdk-relative", ref: n, children: [
|
|
3140
|
+
r,
|
|
3141
|
+
/* @__PURE__ */ o("div", { className: "csdk-text-ai-lg csdk-font-semibold csdk-text-text-content csdk-ml-[20px]", children: e }),
|
|
3142
|
+
/* @__PURE__ */ o("div", { className: "csdk-ml-auto", children: s })
|
|
3143
|
+
] });
|
|
3144
|
+
}), Gs = (t) => t.responseType === "Text" ? {
|
|
3145
|
+
content: t.data.answer,
|
|
3146
|
+
role: "assistant"
|
|
3147
|
+
} : {
|
|
3148
|
+
content: JSON.stringify(t.data),
|
|
3149
|
+
role: "assistant",
|
|
3150
|
+
type: "nlq"
|
|
3151
|
+
}, Ys = (t, e) => {
|
|
3152
|
+
const [r, s] = z([]), n = V((A) => {
|
|
3153
|
+
s((p) => [...p, A]);
|
|
3154
|
+
}, []), [i, a] = z(!1), l = Y(), u = V(
|
|
3155
|
+
(A) => {
|
|
3156
|
+
if (!l || !t)
|
|
3157
|
+
return;
|
|
3158
|
+
const p = {
|
|
3159
|
+
content: A,
|
|
3160
|
+
role: "user"
|
|
3161
|
+
};
|
|
3162
|
+
n(p), a(!0), l.ai.chat.post(t.chatId, { text: p.content }).then((h) => {
|
|
3163
|
+
const g = Gs(h);
|
|
3164
|
+
n(g);
|
|
3165
|
+
}).catch((h) => {
|
|
3166
|
+
h instanceof Error && (console.error("Error when sending message:", h.message), n({
|
|
3167
|
+
content: "Oh snap, something went wrong. Please try again later.",
|
|
3168
|
+
role: "assistant",
|
|
3169
|
+
type: "Text"
|
|
3170
|
+
}));
|
|
3171
|
+
}).finally(() => a(!1));
|
|
3172
|
+
},
|
|
3173
|
+
[l, t, n]
|
|
3174
|
+
), d = V(() => {
|
|
3175
|
+
t && (l == null || l.ai.chat.clearHistory(t.chatId).then(() => {
|
|
3176
|
+
e(), s([
|
|
3177
|
+
{
|
|
3178
|
+
role: "assistant",
|
|
3179
|
+
content: "Let's start over. Try asking questions about your dataset."
|
|
3180
|
+
}
|
|
3181
|
+
]);
|
|
3182
|
+
}).catch(console.error));
|
|
3183
|
+
}, [l, t, e]);
|
|
3184
|
+
return {
|
|
3185
|
+
history: ee(() => {
|
|
3186
|
+
var A;
|
|
3187
|
+
return ((A = t == null ? void 0 : t.chatHistory) != null ? A : []).concat(r);
|
|
3188
|
+
}, [t == null ? void 0 : t.chatHistory, r]),
|
|
3189
|
+
clearHistory: d,
|
|
3190
|
+
sendMessage: u,
|
|
3191
|
+
isAwaitingResponse: i,
|
|
3192
|
+
isLoading: !t
|
|
3193
|
+
};
|
|
3194
|
+
}, Fs = (t) => {
|
|
3195
|
+
var A, p;
|
|
3196
|
+
const { data: e, isLoading: r } = Ct(), { data: s, isLoading: n, refetch: i } = es(), a = (A = e == null ? void 0 : e.find((h) => h.name === t)) == null ? void 0 : A.id, l = (p = s.find((h) => h.contextId === a)) == null ? void 0 : p.chatId, { data: u, refetch: d } = ts(l), c = Y();
|
|
3197
|
+
return lt(() => {
|
|
3198
|
+
if (c) {
|
|
3199
|
+
if (!r && !a) {
|
|
3200
|
+
console.error("No data topic found for context title:", t);
|
|
3201
|
+
return;
|
|
3202
|
+
}
|
|
3203
|
+
a && !l && !n && c.ai.chat.create(a).then((h) => console.log(h)).then(() => i()).catch(console.error);
|
|
3204
|
+
}
|
|
3205
|
+
}, [a, c, l, n, i, t, r]), Ys(u, d);
|
|
3206
|
+
};
|
|
3207
|
+
function Js({ selectedContext: t }) {
|
|
3208
|
+
const { setSelectedContext: e } = Ae(), { data: r, isLoading: s } = rs({
|
|
3209
|
+
contextId: t.id
|
|
3210
|
+
}), { history: n, isAwaitingResponse: i, clearHistory: a, sendMessage: l, isLoading: u } = Fs(
|
|
3211
|
+
t.name
|
|
3212
|
+
), [d, c] = z(!1), A = () => c(!0), p = () => c(!1), h = () => {
|
|
3213
|
+
a(), p();
|
|
3214
|
+
}, g = Qe(null);
|
|
3215
|
+
sr(() => {
|
|
3216
|
+
g.current && (g.current.scrollTop = g.current.scrollHeight);
|
|
3217
|
+
}, [n, d, i]);
|
|
3218
|
+
const f = Qe(null), v = /* @__PURE__ */ o(
|
|
3219
|
+
jt,
|
|
3220
|
+
{
|
|
3221
|
+
ref: f,
|
|
3222
|
+
title: t.name,
|
|
3223
|
+
leftNav: /* @__PURE__ */ o(Rs, { onClick: () => e(void 0) }),
|
|
3224
|
+
rightNav: /* @__PURE__ */ o(
|
|
3225
|
+
As,
|
|
3226
|
+
{
|
|
3227
|
+
questions: r,
|
|
3228
|
+
isLoading: s,
|
|
3229
|
+
onSelection: l,
|
|
3230
|
+
anchorEl: f.current
|
|
3231
|
+
}
|
|
3232
|
+
)
|
|
3233
|
+
}
|
|
3234
|
+
);
|
|
3235
|
+
return /* @__PURE__ */ x(R, { children: [
|
|
3236
|
+
v,
|
|
3237
|
+
/* @__PURE__ */ x("div", { className: "csdk-h-full csdk-bg-background-priority csdk-rounded-b-[30px] csdk-flex csdk-flex-col csdk-justify-between csdk-overflow-hidden", children: [
|
|
3238
|
+
/* @__PURE__ */ x(
|
|
3239
|
+
"div",
|
|
3240
|
+
{
|
|
3241
|
+
ref: g,
|
|
3242
|
+
className: "csdk-flex csdk-flex-col csdk-gap-y-4 csdk-overflow-y-scroll csdk-p-[16px] csdk-flex-initial csdk-h-full",
|
|
3243
|
+
children: [
|
|
3244
|
+
/* @__PURE__ */ o(
|
|
3245
|
+
Qs,
|
|
3246
|
+
{
|
|
3247
|
+
questions: r,
|
|
3248
|
+
title: t.name,
|
|
3249
|
+
onSelection: l
|
|
3250
|
+
}
|
|
3251
|
+
),
|
|
3252
|
+
u && /* @__PURE__ */ o("div", { className: "csdk-m-auto", children: /* @__PURE__ */ o(at, { spin: !0 }) }),
|
|
3253
|
+
!u && /* @__PURE__ */ o(Ws, { sendMessage: l, messages: n }),
|
|
3254
|
+
i && /* @__PURE__ */ o(xt, {}),
|
|
3255
|
+
d && /* @__PURE__ */ o(
|
|
3256
|
+
ds,
|
|
3257
|
+
{
|
|
3258
|
+
onCancel: p,
|
|
3259
|
+
onConfirm: h
|
|
3260
|
+
}
|
|
3261
|
+
)
|
|
3262
|
+
]
|
|
3263
|
+
}
|
|
3264
|
+
),
|
|
3265
|
+
/* @__PURE__ */ o(
|
|
3266
|
+
as,
|
|
3267
|
+
{
|
|
3268
|
+
onSendMessage: l,
|
|
3269
|
+
disabled: i,
|
|
3270
|
+
onClearHistoryClick: A
|
|
3271
|
+
}
|
|
3272
|
+
)
|
|
3273
|
+
] })
|
|
3274
|
+
] });
|
|
3275
|
+
}
|
|
3276
|
+
const st = 500, nt = 500;
|
|
3277
|
+
function Vs({
|
|
3278
|
+
width: t = st,
|
|
3279
|
+
height: e = nt,
|
|
3280
|
+
children: r
|
|
3281
|
+
}) {
|
|
3282
|
+
return /* @__PURE__ */ o(
|
|
3283
|
+
"div",
|
|
3284
|
+
{
|
|
3285
|
+
className: "csdk-relative csdk-flex csdk-flex-col csdk-border csdk-border-[#c6c9ce] csdk-rounded-[30px] csdk-bg-background-workspace csdk-overflow-hidden",
|
|
3286
|
+
style: {
|
|
3287
|
+
minWidth: st,
|
|
3288
|
+
minHeight: nt,
|
|
3289
|
+
width: t,
|
|
3290
|
+
height: e
|
|
3291
|
+
},
|
|
3292
|
+
children: r
|
|
3293
|
+
}
|
|
3294
|
+
);
|
|
3295
|
+
}
|
|
3296
|
+
function Xs(t) {
|
|
3297
|
+
const { title: e, description: r = "", onClick: s = () => {
|
|
3298
|
+
} } = t;
|
|
3299
|
+
return /* @__PURE__ */ x(
|
|
3300
|
+
"div",
|
|
3301
|
+
{
|
|
3302
|
+
onClick: s,
|
|
3303
|
+
className: "csdk-max-w-full csdk-shadow-ai-shadow-sm csdk-cursor-pointer csdk-rounded-[30px] csdk-w-[460px] csdk-h-[100px] csdk-flex csdk-items-center csdk-flex-row csdk-justify-between csdk-bg-[#F4F4F8] csdk-p-[30px]",
|
|
3304
|
+
children: [
|
|
3305
|
+
/* @__PURE__ */ x("div", { children: [
|
|
3306
|
+
/* @__PURE__ */ o("div", { className: "csdk-text-xl csdk-text-text-active", children: e }),
|
|
3307
|
+
/* @__PURE__ */ o("div", { className: "csdk-text-ai-sm csdk-text-[#8E8E8E]", children: r })
|
|
3308
|
+
] }),
|
|
3309
|
+
/* @__PURE__ */ o("div", { className: "csdk-flex csdk-items-center csdk-h-[16px] csdk-w-[16px] csdk-rotate-180", children: /* @__PURE__ */ o(Nt, {}) })
|
|
3310
|
+
]
|
|
3311
|
+
}
|
|
3312
|
+
);
|
|
3313
|
+
}
|
|
3314
|
+
function Zs(t) {
|
|
3315
|
+
const { dataTopics: e } = t;
|
|
3316
|
+
return /* @__PURE__ */ x("div", { className: "csdk-p-[20px] csdk-flex csdk-flex-col csdk-gap-5 csdk-overflow-auto", children: [
|
|
3317
|
+
/* @__PURE__ */ o("div", { className: "csdk-text-2xl csdk-text-text-active csdk-font-semibold csdk-text-center csdk-pb-[4px]", children: "Data Topics" }),
|
|
3318
|
+
/* @__PURE__ */ x("div", { className: "csdk-text-ai-base csdk-text-text-active", children: [
|
|
3319
|
+
"Analytics Chatbot is designed to help you interact with your data using natural language.",
|
|
3320
|
+
/* @__PURE__ */ o("br", {}),
|
|
3321
|
+
/* @__PURE__ */ o("br", {}),
|
|
3322
|
+
"Pick a topic you would like to explore:"
|
|
3323
|
+
] }),
|
|
3324
|
+
e.map((r) => /* @__PURE__ */ be(Xs, K(y({}, r), { key: r.title })))
|
|
3325
|
+
] });
|
|
3326
|
+
}
|
|
3327
|
+
function Bs() {
|
|
3328
|
+
return /* @__PURE__ */ x("svg", { xmlns: "http://www.w3.org/2000/svg", width: "28", height: "32", viewBox: "0 0 28 32", fill: "none", children: [
|
|
3329
|
+
/* @__PURE__ */ o(
|
|
3330
|
+
"path",
|
|
3331
|
+
{
|
|
3332
|
+
d: "M15.6151 8.47656H15.5936V15.0679H15.6151C16.9896 15.0679 18.3078 15.6128 19.2797 16.5827C20.2517 17.5526 20.7977 18.8681 20.7977 20.2398C20.7977 21.6115 20.2517 22.927 19.2797 23.8969C18.3078 24.8668 16.9896 25.4117 15.6151 25.4117H15.5936V32.0006H15.6151C17.1627 32.0006 18.6952 31.6964 20.1251 31.1054C21.5549 30.5144 22.8541 29.6481 23.9484 28.556C25.0428 27.4639 25.9109 26.1674 26.5031 24.7405C27.0954 23.3136 27.4002 21.7843 27.4002 20.2398C27.4002 18.6953 27.0954 17.166 26.5031 15.7391C25.9109 14.3122 25.0428 13.0157 23.9484 11.9236C22.8541 10.8315 21.5549 9.96523 20.1251 9.37419C18.6952 8.78315 17.1627 8.47895 15.6151 8.47895V8.47656Z",
|
|
3333
|
+
fill: "#262E3D"
|
|
3334
|
+
}
|
|
3335
|
+
),
|
|
3336
|
+
/* @__PURE__ */ o(
|
|
3337
|
+
"path",
|
|
3338
|
+
{
|
|
3339
|
+
d: "M12.7349 23.5217H12.7564V16.9375H12.7349C11.3603 16.9375 10.0421 16.3926 9.07021 15.4227C8.09828 14.4528 7.55226 13.1373 7.55226 11.7656C7.55226 10.3939 8.09828 9.07845 9.07021 8.10853C10.0421 7.13861 11.3603 6.59371 12.7349 6.59371H12.7564V0H12.7349C9.60924 4.64793e-08 6.61164 1.23909 4.4015 3.44467C2.19135 5.65026 0.949707 8.64168 0.949707 11.7608C0.949707 14.88 2.19135 17.8714 4.4015 20.077C6.61164 22.2826 9.60924 23.5217 12.7349 23.5217Z",
|
|
3340
|
+
fill: "#FFD537"
|
|
3341
|
+
}
|
|
3342
|
+
)
|
|
3343
|
+
] });
|
|
3344
|
+
}
|
|
3345
|
+
function _s() {
|
|
3346
|
+
const { setSelectedContext: t } = Ae(), { data: e } = Ct(), r = ee(
|
|
3347
|
+
() => e == null ? void 0 : e.map(
|
|
3348
|
+
(s) => ({
|
|
3349
|
+
title: s.name,
|
|
3350
|
+
description: s.description,
|
|
3351
|
+
onClick: () => t(s)
|
|
3352
|
+
})
|
|
3353
|
+
),
|
|
3354
|
+
[e, t]
|
|
3355
|
+
);
|
|
3356
|
+
return /* @__PURE__ */ x(R, { children: [
|
|
3357
|
+
/* @__PURE__ */ o(
|
|
3358
|
+
jt,
|
|
3359
|
+
{
|
|
3360
|
+
title: "Analytics Chatbot",
|
|
3361
|
+
leftNav: /* @__PURE__ */ o("div", { className: "csdk-ml-[14px]", children: /* @__PURE__ */ o(Bs, {}) })
|
|
3362
|
+
}
|
|
3363
|
+
),
|
|
3364
|
+
/* @__PURE__ */ x("div", { className: "csdk-flex csdk-flex-col csdk-justify-center csdk-overflow-hidden csdk-h-full ", children: [
|
|
3365
|
+
!r && /* @__PURE__ */ o("div", { className: "csdk-self-center", children: /* @__PURE__ */ o(at, { spin: !0 }) }),
|
|
3366
|
+
r && /* @__PURE__ */ o(Zs, { dataTopics: r })
|
|
3367
|
+
] })
|
|
3368
|
+
] });
|
|
3369
|
+
}
|
|
3370
|
+
const $s = () => {
|
|
3371
|
+
const { selectedContext: t } = Ae();
|
|
3372
|
+
return t ? /* @__PURE__ */ o(Js, { selectedContext: t }) : /* @__PURE__ */ o(_s, {});
|
|
3373
|
+
}, on = _t({
|
|
3374
|
+
componentName: "Chatbot"
|
|
3375
|
+
})((t) => {
|
|
3376
|
+
const { width: e, height: r = "900px" } = t;
|
|
3377
|
+
return /* @__PURE__ */ o(ss, { children: /* @__PURE__ */ o(Vs, { width: e, height: r, children: /* @__PURE__ */ o($s, {}) }) });
|
|
3378
|
+
});
|
|
3379
|
+
function ln(t) {
|
|
3380
|
+
const { data: e, isLoading: r } = Ot(t), s = e != null ? e : "Oops, no data came back for that.";
|
|
3381
|
+
return /* @__PURE__ */ o(Lt, { summary: r ? "Loading..." : s });
|
|
3382
|
+
}
|
|
3383
|
+
export {
|
|
3384
|
+
an as ChatApiContextProvider,
|
|
3385
|
+
on as Chatbot,
|
|
3386
|
+
ln as NlgQueryResult,
|
|
3387
|
+
Ot as useGetNlgQueryResult,
|
|
3388
|
+
rs as useGetQueryRecommendations
|
|
3389
|
+
};
|
|
3390
|
+
(function(){"use strict";try{if(typeof document!="undefined"){var e=document.createElement("style");e.appendChild(document.createTextNode('@charset "UTF-8";.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon:before{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle,.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{margin-left:-4px;position:absolute;width:0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:before,.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:before,.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:after,.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:after{box-sizing:content-box;position:absolute;border:8px solid transparent;height:0;width:1px;content:"";z-index:-1;border-width:8px;left:-8px}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:before,.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:before{border-bottom-color:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{top:0;margin-top:-8px}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:before,.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:after{border-top:none;border-bottom-color:#f0f0f0}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:after{top:0}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle:before{top:-1px;border-bottom-color:#aeaeae}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{bottom:0;margin-bottom:-8px}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:before,.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:after{border-bottom:none;border-top-color:#fff}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:after{bottom:0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle:before{bottom:-1px;border-top-color:#aeaeae}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative}.react-datepicker--time-only .react-datepicker__triangle{left:35px}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__triangle{position:absolute;left:50px}.react-datepicker-popper{z-index:1}.react-datepicker-popper[data-placement^=bottom]{padding-top:10px}.react-datepicker-popper[data-placement=bottom-end] .react-datepicker__triangle,.react-datepicker-popper[data-placement=top-end] .react-datepicker__triangle{left:auto;right:50px}.react-datepicker-popper[data-placement^=top]{padding-bottom:10px}.react-datepicker-popper[data-placement^=right]{padding-left:8px}.react-datepicker-popper[data-placement^=right] .react-datepicker__triangle{left:auto;right:42px}.react-datepicker-popper[data-placement^=left]{padding-right:8px}.react-datepicker-popper[data-placement^=left] .react-datepicker__triangle{left:42px;right:auto}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:white;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day-names,.react-datepicker__week{white-space:nowrap}.react-datepicker__day-names{margin-bottom:-8px}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:hover,.react-datepicker__month-text:hover,.react-datepicker__quarter-text:hover,.react-datepicker__year-text:hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:hover,.react-datepicker__month-text--highlighted:hover,.react-datepicker__quarter-text--highlighted:hover,.react-datepicker__year-text--highlighted:hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .holiday-overlay,.react-datepicker__month-text--holidays .holiday-overlay,.react-datepicker__quarter-text--holidays .holiday-overlay,.react-datepicker__year-text--holidays .holiday-overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:hover,.react-datepicker__month-text--holidays:hover,.react-datepicker__quarter-text--holidays:hover,.react-datepicker__year-text--holidays:hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .holiday-overlay,.react-datepicker__month-text--holidays:hover .holiday-overlay,.react-datepicker__quarter-text--holidays:hover .holiday-overlay,.react-datepicker__year-text--holidays:hover .holiday-overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:hover,.react-datepicker__day--in-selecting-range:hover,.react-datepicker__day--in-range:hover,.react-datepicker__month-text--selected:hover,.react-datepicker__month-text--in-selecting-range:hover,.react-datepicker__month-text--in-range:hover,.react-datepicker__quarter-text--selected:hover,.react-datepicker__quarter-text--in-selecting-range:hover,.react-datepicker__quarter-text--in-range:hover,.react-datepicker__year-text--selected:hover,.react-datepicker__year-text--in-selecting-range:hover,.react-datepicker__year-text--in-range:hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:hover,.react-datepicker__month-text--keyboard-selected:hover,.react-datepicker__quarter-text--keyboard-selected:hover,.react-datepicker__year-text--keyboard-selected:hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled:hover,.react-datepicker__month-text--disabled:hover,.react-datepicker__quarter-text--disabled:hover,.react-datepicker__year-text--disabled:hover{background-color:transparent}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"\\d7"}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media (max-width: 400px),(max-height: 550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;-webkit-clip-path:circle(0);clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}[class|=csdk],[class|=csdk]:before,[class|=csdk]:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#d5d5d5;font-family:inherit}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.csdk-absolute{position:absolute}.csdk-relative{position:relative}.csdk-left-2{left:.5rem}.csdk-left-\\[10px\\]{left:10px}.csdk-right-0{right:0}.csdk-right-\\[-15px\\]{right:-15px}.csdk-right-\\[-5px\\]{right:-5px}.csdk-right-\\[0px\\]{right:0}.csdk-right-\\[10px\\]{right:10px}.csdk-right-\\[4px\\]{right:4px}.csdk-top-1\\/2{top:50%}.csdk-top-\\[3px\\]{top:3px}.csdk-top-\\[7px\\]{top:7px}.csdk-col-span-2{grid-column:span 2 / span 2}.csdk-m-2{margin:.5rem}.csdk-m-3{margin:.75rem}.csdk-m-auto{margin:auto}.csdk-m-checkbox{margin:6px 10px 6px 6px}.csdk-m-px{margin:1px}.csdk-m-radio{margin:6px 10px 6px 6px}.csdk-mx-\\[10px\\]{margin-left:10px;margin-right:10px}.csdk-mx-\\[4px\\]{margin-left:4px;margin-right:4px}.csdk-mx-auto{margin-left:auto;margin-right:auto}.csdk-my-2{margin-top:.5rem;margin-bottom:.5rem}.csdk-my-4{margin-top:1rem;margin-bottom:1rem}.csdk-my-\\[-5px\\]{margin-top:-5px;margin-bottom:-5px}.csdk-my-\\[2px\\]{margin-top:2px;margin-bottom:2px}.csdk-my-\\[5px\\]{margin-top:5px;margin-bottom:5px}.csdk-my-\\[8px\\]{margin-top:8px;margin-bottom:8px}.csdk-mb-2{margin-bottom:.5rem}.csdk-mb-\\[3px\\]{margin-bottom:3px}.csdk-mb-\\[4px\\]{margin-bottom:4px}.csdk-mb-\\[8px\\]{margin-bottom:8px}.csdk-ml-1{margin-left:.25rem}.csdk-ml-1\\.5{margin-left:.375rem}.csdk-ml-\\[14px\\]{margin-left:14px}.csdk-ml-\\[20px\\]{margin-left:20px}.csdk-ml-\\[4px\\]{margin-left:4px}.csdk-ml-\\[6px\\]{margin-left:6px}.csdk-ml-\\[7px\\]{margin-left:7px}.csdk-ml-auto{margin-left:auto}.csdk-mr-2{margin-right:.5rem}.csdk-mr-3{margin-right:.75rem}.csdk-mr-\\[10px\\]{margin-right:10px}.csdk-mr-\\[12px\\]{margin-right:12px}.csdk-mr-\\[7px\\]{margin-right:7px}.csdk-mt-3{margin-top:.75rem}.csdk-mt-\\[32px\\]{margin-top:32px}.csdk-mt-\\[6px\\]{margin-top:6px}.csdk-box-border{box-sizing:border-box}.csdk-line-clamp-5{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5}.csdk-flex{display:flex}.csdk-grid{display:grid}.csdk-h-1\\/2{height:50%}.csdk-h-5{height:1.25rem}.csdk-h-6{height:1.5rem}.csdk-h-\\[100px\\]{height:100px}.csdk-h-\\[10px\\]{height:10px}.csdk-h-\\[16px\\]{height:16px}.csdk-h-\\[18px\\]{height:18px}.csdk-h-\\[20px\\]{height:20px}.csdk-h-\\[245px\\]{height:245px}.csdk-h-\\[34px\\]{height:34px}.csdk-h-\\[40px\\]{height:40px}.csdk-h-\\[850px\\]{height:850px}.csdk-h-button{height:28px}.csdk-h-checkbox{height:12px}.csdk-h-fit{height:-moz-fit-content;height:fit-content}.csdk-h-full{height:100%}.csdk-h-radio{height:12px}.csdk-h-screen{height:100vh}.csdk-max-h-32{max-height:8rem}.csdk-max-h-96{max-height:24rem}.csdk-max-h-\\[150px\\]{max-height:150px}.csdk-max-h-\\[88px\\]{max-height:88px}.csdk-min-h-\\[20px\\]{min-height:20px}.csdk-min-h-\\[26px\\]{min-height:26px}.csdk-min-h-\\[32px\\]{min-height:32px}.csdk-w-1\\/2{width:50%}.csdk-w-48{width:12rem}.csdk-w-5{width:1.25rem}.csdk-w-\\[10px\\]{width:10px}.csdk-w-\\[152px\\]{width:152px}.csdk-w-\\[16px\\]{width:16px}.csdk-w-\\[18px\\]{width:18px}.csdk-w-\\[300px\\]{width:300px}.csdk-w-\\[30px\\]{width:30px}.csdk-w-\\[450px\\]{width:450px}.csdk-w-\\[460px\\]{width:460px}.csdk-w-\\[480px\\]{width:480px}.csdk-w-checkbox{width:12px}.csdk-w-fit{width:-moz-fit-content;width:fit-content}.csdk-w-full{width:100%}.csdk-w-max{width:-moz-max-content;width:max-content}.csdk-w-min{width:-moz-min-content;width:min-content}.csdk-w-radio{width:12px}.csdk-min-w-\\[216px\\]{min-width:216px}.csdk-min-w-fit{min-width:-moz-fit-content;min-width:fit-content}.csdk-max-w-\\[414px\\]{max-width:414px}.csdk-max-w-full{max-width:100%}.csdk-max-w-xs{max-width:20rem}.csdk-flex-1{flex:1 1 0%}.csdk-flex-initial{flex:0 1 auto}.csdk-flex-grow{flex-grow:1}.-csdk-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.csdk-translate-x-1\\/2{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-csdk-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.csdk-rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.csdk-rotate-45{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.csdk-scale-x-\\[-1\\]{--tw-scale-x: -1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.csdk-transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes csdk-pulse{50%{opacity:.5}}.csdk-animate-pulse{animation:csdk-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes csdk-spin{to{transform:rotate(360deg)}}.csdk-animate-spin{animation:csdk-spin 1s linear infinite}.csdk-cursor-not-allowed{cursor:not-allowed}.csdk-cursor-pointer{cursor:pointer}.csdk-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.csdk-resize-none{resize:none}.csdk-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.csdk-flex-row{flex-direction:row}.csdk-flex-col{flex-direction:column}.csdk-flex-wrap{flex-wrap:wrap}.csdk-content-center{align-content:center}.csdk-items-end{align-items:flex-end}.csdk-items-center{align-items:center}.csdk-justify-start{justify-content:flex-start}.csdk-justify-end{justify-content:flex-end}.csdk-justify-center{justify-content:center}.csdk-justify-between{justify-content:space-between}.csdk-gap-1{gap:.25rem}.csdk-gap-2{gap:.5rem}.csdk-gap-4{gap:1rem}.csdk-gap-5{gap:1.25rem}.csdk-gap-\\[16px\\]{gap:16px}.csdk-gap-\\[5px\\]{gap:5px}.csdk-gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.csdk-gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.csdk-gap-y-0{row-gap:0px}.csdk-gap-y-0\\.5{row-gap:.125rem}.csdk-gap-y-2{row-gap:.5rem}.csdk-gap-y-4{row-gap:1rem}.csdk-self-start{align-self:flex-start}.csdk-self-center{align-self:center}.csdk-overflow-auto{overflow:auto}.csdk-overflow-hidden{overflow:hidden}.\\!csdk-overflow-visible{overflow:visible!important}.csdk-overflow-y-auto{overflow-y:auto}.csdk-overflow-y-scroll{overflow-y:scroll}.csdk-text-ellipsis{text-overflow:ellipsis}.csdk-whitespace-nowrap{white-space:nowrap}.csdk-whitespace-pre-wrap{white-space:pre-wrap}.csdk-break-words{overflow-wrap:break-word}.csdk-rounded{border-radius:.25rem}.csdk-rounded-\\[10px\\]{border-radius:10px}.csdk-rounded-\\[20px\\]{border-radius:20px}.csdk-rounded-\\[30px\\]{border-radius:30px}.csdk-rounded-\\[4px\\]{border-radius:4px}.csdk-rounded-lg{border-radius:.5rem}.csdk-rounded-md{border-radius:.375rem}.csdk-rounded-pill{border-radius:4px}.csdk-rounded-b-\\[30px\\]{border-bottom-right-radius:30px;border-bottom-left-radius:30px}.csdk-border{border-width:1px}.csdk-border-0{border-width:0px}.csdk-border-input{border-width:1px}.csdk-border-b{border-bottom-width:1px}.csdk-border-l{border-left-width:1px}.csdk-border-l-\\[70px\\]{border-left-width:70px}.csdk-border-r-\\[70px\\]{border-right-width:70px}.csdk-border-t{border-top-width:1px}.csdk-border-t-\\[13px\\]{border-top-width:13px}.csdk-border-solid{border-style:solid}.csdk-border-none{border-style:none}.csdk-border-UI-default{--tw-border-opacity: 1;border-color:rgb(110 115 125 / var(--tw-border-opacity))}.csdk-border-\\[\\#262E3D\\]\\/\\[\\.15\\]{border-color:#262e3d26}.csdk-border-\\[\\#c6c9ce\\]{--tw-border-opacity: 1;border-color:rgb(198 201 206 / var(--tw-border-opacity))}.csdk-border-\\[\\#dadada\\]{--tw-border-opacity: 1;border-color:rgb(218 218 218 / var(--tw-border-opacity))}.csdk-border-\\[\\#e4e4e4\\]{--tw-border-opacity: 1;border-color:rgb(228 228 228 / var(--tw-border-opacity))}.csdk-border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.csdk-border-gray-400{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity))}.csdk-border-text-content{border-color:#262e3dcc}.csdk-border-transparent{border-color:transparent}.csdk-border-b-\\[\\#dadada\\]{--tw-border-opacity: 1;border-bottom-color:rgb(218 218 218 / var(--tw-border-opacity))}.csdk-border-l-\\[transparent\\]{border-left-color:transparent}.csdk-border-r-\\[transparent\\]{border-right-color:transparent}.csdk-border-t-\\[\\#dadada\\]{--tw-border-opacity: 1;border-top-color:rgb(218 218 218 / var(--tw-border-opacity))}.csdk-bg-\\[\\#F4F4F8\\],.csdk-bg-\\[\\#f4f4f8\\]{--tw-bg-opacity: 1;background-color:rgb(244 244 248 / var(--tw-bg-opacity))}.csdk-bg-background-priority{background-color:#f4f4f8}.csdk-bg-background-workspace{background-color:#fff}.csdk-bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.csdk-bg-inherit{background-color:inherit}.csdk-bg-primary-primary{background-color:#ffcb05}.csdk-bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))}.csdk-bg-slate-300{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity))}.csdk-bg-transparent{background-color:transparent}.csdk-bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.csdk-p-2{padding:.5rem}.csdk-p-3{padding:.75rem}.csdk-p-4{padding:1rem}.csdk-p-\\[10px\\]{padding:10px}.csdk-p-\\[16px\\]{padding:16px}.csdk-p-\\[20px\\]{padding:20px}.csdk-p-\\[30px\\]{padding:30px}.csdk-p-\\[4px\\]{padding:4px}.csdk-p-button{padding:4px 24px}.csdk-p-px{padding:1px}.csdk-px-1{padding-left:.25rem;padding-right:.25rem}.csdk-px-2{padding-left:.5rem;padding-right:.5rem}.csdk-px-\\[12px\\]{padding-left:12px;padding-right:12px}.csdk-px-\\[14px\\]{padding-left:14px;padding-right:14px}.csdk-px-\\[16px\\]{padding-left:16px;padding-right:16px}.csdk-px-\\[40px\\]{padding-left:40px;padding-right:40px}.csdk-px-\\[8px\\]{padding-left:8px;padding-right:8px}.csdk-py-1{padding-top:.25rem;padding-bottom:.25rem}.csdk-py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.csdk-py-\\[11px\\]{padding-top:11px;padding-bottom:11px}.csdk-py-\\[16px\\]{padding-top:16px;padding-bottom:16px}.csdk-py-\\[29px\\]{padding-top:29px;padding-bottom:29px}.csdk-py-\\[30px\\]{padding-top:30px;padding-bottom:30px}.csdk-py-\\[3px\\]{padding-top:3px;padding-bottom:3px}.csdk-py-\\[5px\\]{padding-top:5px;padding-bottom:5px}.csdk-py-\\[7px\\]{padding-top:7px;padding-bottom:7px}.csdk-py-\\[8px\\]{padding-top:8px;padding-bottom:8px}.csdk-pb-\\[0px\\]{padding-bottom:0}.csdk-pb-\\[4px\\]{padding-bottom:4px}.csdk-pl-1{padding-left:.25rem}.csdk-pl-1\\.5{padding-left:.375rem}.csdk-pl-2{padding-left:.5rem}.csdk-pl-2\\.5{padding-left:.625rem}.csdk-pl-3{padding-left:.75rem}.csdk-pr-10{padding-right:2.5rem}.csdk-text-left{text-align:left}.csdk-text-center{text-align:center}.csdk-text-right{text-align:right}.csdk-font-sans{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.csdk-text-2xl{font-size:1.5rem;line-height:2rem}.csdk-text-\\[10px\\]{font-size:10px}.csdk-text-\\[13px\\]{font-size:13px}.csdk-text-ai-base{font-size:15px;line-height:22px}.csdk-text-ai-lg{font-size:18px;line-height:22px}.csdk-text-ai-sm{font-size:13px;line-height:18px}.csdk-text-ai-xs{font-size:11px;line-height:18px}.csdk-text-pill{font-size:13px}.csdk-text-sm{font-size:.875rem;line-height:1.25rem}.csdk-text-xl{font-size:1.25rem;line-height:1.75rem}.csdk-text-xs{font-size:.75rem;line-height:1rem}.csdk-font-medium{font-weight:500}.csdk-font-normal{font-weight:400}.csdk-font-semibold{font-weight:600}.csdk-leading-4{line-height:1rem}.csdk-leading-\\[16px\\]{line-height:16px}.csdk-leading-\\[18px\\]{line-height:18px}.csdk-leading-\\[26px\\]{line-height:26px}.csdk-leading-none{line-height:1}.csdk-tracking-\\[0\\.3px\\]{letter-spacing:.3px}.csdk-text-UI-default{--tw-text-opacity: 1;color:rgb(110 115 125 / var(--tw-text-opacity))}.csdk-text-\\[\\#8E8E8E\\]{--tw-text-opacity: 1;color:rgb(142 142 142 / var(--tw-text-opacity))}.csdk-text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity))}.csdk-text-semantic-error{color:#e74727}.csdk-text-text-active{color:#262e3d}.csdk-text-text-content{color:#262e3dcc}.csdk-text-text-disabled{color:#262e3d4d}.csdk-text-text-link{color:#36a3d9}.csdk-text-text-linkButton{--tw-text-opacity: 1;color:rgb(30 175 243 / var(--tw-text-opacity))}.csdk-accent-UI-default{accent-color:#6e737d}.csdk-opacity-0{opacity:0}.csdk-opacity-100{opacity:1}.csdk-opacity-30{opacity:.3}.csdk-opacity-70{opacity:.7}.csdk-shadow-ai-shadow-sm{--tw-shadow: 0px 1px 2px rgba(9, 9, 10, .1), 0px 2px 4px rgba(9, 9, 10, .1);--tw-shadow-colored: 0px 1px 2px var(--tw-shadow-color), 0px 2px 4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.csdk-shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.csdk-shadow-gray-500{--tw-shadow-color: #6b7280;--tw-shadow: var(--tw-shadow-colored)}.csdk-outline-0{outline-width:0px}.csdk-transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#fff}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:10px;width:1px}::-webkit-scrollbar-thumb:hover{background:#555}.invalid\\:csdk-border-input:invalid{border-width:1px}.invalid\\:csdk-border-solid:invalid{border-style:solid}.invalid\\:csdk-border-semantic-error:invalid{border-color:#e74727}.hover\\:csdk-border-2:hover{border-width:2px}.hover\\:csdk-bg-background-priority:hover{background-color:#f4f4f8}.hover\\:csdk-bg-interaction-primaryHovered:hover{background-color:#f2b900}.hover\\:csdk-bg-row-hover:hover{background-color:#e0e0e04d}.hover\\:csdk-bg-text-content:hover{background-color:#262e3dcc}.hover\\:csdk-text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.focus\\:csdk-border-input:focus{border-width:1px}.focus\\:csdk-border-solid:focus{border-style:solid}.focus\\:csdk-border-UI-default:focus{--tw-border-opacity: 1;border-color:rgb(110 115 125 / var(--tw-border-opacity))}.focus\\:csdk-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\\:csdk-outline-\\[\\#262E3D\\]\\/50:focus{outline-color:#262e3d80}.disabled\\:csdk-cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:csdk-opacity-30:disabled{opacity:.3}.csdk-group:hover .group-hover\\:csdk-fill-white{fill:#fff}@media (prefers-color-scheme: dark){.dark\\:csdk-bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.dark\\:csdk-text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}}.csdk-treemap-tooltip-wrapper{min-width:210px;color:#acacac;font-size:14px;line-height:16px;background:white;border-radius:10px;overflow:hidden;margin-right:-1px;padding-bottom:10px}.csdk-treemap-tooltip-level{display:flex;align-items:center;position:relative;padding:8px;font-size:14px;border-bottom:1px solid #ccc}.csdk-treemap-tooltip-level span{padding:0 2px}.csdk-treemap-tooltip-value{padding:10px 10px 0;font-size:12px;line-height:16px}.highcharts-sunburst-series.highcharts-legend-item{pointer-events:none!important}._alert_box_10ttx_1{position:absolute;display:flex;justify-content:center;z-index:1;margin-top:1%}._alert_box_10ttx_1 ._content_10ttx_8{background-color:#616161;padding:5px;border-radius:3px;text-align:center}._alert_box_10ttx_1 ._content_10ttx_8 ._alert_10ttx_1{color:#fff;margin:0 8px;line-height:1;font-size:12px}._container_fab84_1{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:0 20px;text-align:center;margin:15px}._container_fab84_1 ._card_fab84_11{position:relative;padding:10px;background-color:#fff;box-shadow:0 2px 4px #0000001a;border-radius:4px;z-index:1;width:100%}._container_fab84_1 ._icon_fab84_20{display:flex;justify-content:center;margin-bottom:10px}._container_fab84_1 ._icon_fab84_20 polygon{fill:#ffcb05}._container_fab84_1 ._icon_fab84_20 svg{width:53px;height:53px}._container_fab84_1 ._text_fab84_32{color:#5b6372;font-family:Open Sans;font-size:13px;text-align:center;font-weight:700}._wrapper_g0ngm_1{width:100%;height:100%;position:relative}._title_g0ngm_7{font-size:18px;color:#9ea2ab;letter-spacing:normal;text-align:center;position:absolute;width:100%;top:11%}._image_g0ngm_18{width:66.6%;height:100%;margin:0 auto;display:block}.fixedDataTableCellGroupLayout_cellGroup{backface-visibility:hidden;left:0;overflow:hidden;position:absolute;top:0;white-space:nowrap}.fixedDataTable_isRTL .fixedDataTableCellGroupLayout_cellGroup{right:0;left:auto}.fixedDataTableCellGroupLayout_cellGroup>.public_fixedDataTableCell_main{display:inline-block;vertical-align:top;white-space:normal}.fixedDataTableCellGroupLayout_cellGroupWrapper{position:absolute;top:0}.fixedDataTableCellLayout_main{border-right-style:solid;border-right-width:1px;border-width:0 1px 0 0;box-sizing:border-box;display:block;overflow:hidden;position:absolute;white-space:normal}.fixedDataTable_isRTL .fixedDataTableCellLayout_main{border-right-width:0;border-left-style:solid;border-left-width:1px}.fixedDataTableCellLayout_lastChild{border-width:0 1px 1px 0}.fixedDataTableCellLayout_alignRight{text-align:right}.fixedDataTableCellLayout_alignCenter{text-align:center}.fixedDataTableCellLayout_wrap{display:table-cell;vertical-align:middle;box-sizing:border-box}.fixedDataTableCellLayout_wrap1{display:table}.fixedDataTableCellLayout_wrap2{display:table-row}.fixedDataTableCellLayout_wrap3{display:table-cell;vertical-align:middle}.fixedDataTableCellLayout_columnResizerContainer{position:absolute;right:0;width:6px;z-index:1}.fixedDataTable_isRTL .fixedDataTableCellLayout_columnResizerContainer{left:0;right:auto}.fixedDataTableCellLayout_columnResizerContainer:hover{cursor:ew-resize}.fixedDataTableCellLayout_columnResizerContainer:hover .fixedDataTableCellLayout_columnResizerKnob{visibility:visible}.fixedDataTableCellLayout_columnResizerKnob{position:absolute;right:0;visibility:hidden;width:4px}.fixedDataTable_isRTL .fixedDataTableCellLayout_columnResizerKnob{left:0;right:auto}.fixedDataTableColumnResizerLineLayout_mouseArea{cursor:ew-resize;position:absolute;right:-5px;width:12px}.fixedDataTable_isRTL .fixedDataTableColumnResizerLineLayout_mouseArea{right:auto;left:-5px}.fixedDataTableColumnResizerLineLayout_main{border-right-style:solid;border-right-width:1px;box-sizing:border-box;position:absolute;z-index:10;pointer-events:none}.fixedDataTable_isRTL .fixedDataTableColumnResizerLineLayout_main{border-right-width:0;border-left-style:solid;border-left-width:1px}.fixedDataTableColumnResizerLineLayout_hiddenElem{display:none!important}.fixedDataTableLayout_main{border-style:solid;border-width:1px;box-sizing:border-box;overflow:hidden;position:relative}.fixedDataTableLayout_header,.fixedDataTableLayout_hasBottomBorder{border-bottom-style:solid;border-bottom-width:1px}.fixedDataTableLayout_footer .public_fixedDataTableCell_main{border-top-style:solid;border-top-width:1px}.fixedDataTableLayout_topShadow,.fixedDataTableLayout_bottomShadow{height:4px;left:0;position:absolute;right:0;z-index:1}.fixedDataTableLayout_bottomShadow{margin-top:-4px}.fixedDataTableLayout_rowsContainer{overflow:hidden;position:relative}.fixedDataTableRowLayout_main{box-sizing:border-box;overflow:hidden;position:absolute;top:0}.fixedDataTableRowLayout_body{left:0;right:0;position:absolute;top:0}.fixedDataTableRowLayout_rowExpanded{box-sizing:border-box;left:0;position:absolute}.fixedDataTableRowLayout_fixedColumnsDivider{backface-visibility:hidden;border-left-style:solid;border-left-width:1px;left:0;position:absolute;top:0;width:0}.fixedDataTable_isRTL .fixedDataTableRowLayout_fixedColumnsDivider{border-left-width:0;border-right-style:solid;border-right-width:1px}.fixedDataTableRowLayout_columnsShadow{position:absolute;width:4px}.fixedDataTableRowLayout_columnsRightShadow{right:1px}.fixedDataTable_isRTL .fixedDataTableRowLayout_columnsRightShadow{left:1px;right:auto}.fixedDataTableRowLayout_rowWrapper{position:absolute;top:0}.ScrollbarLayout_main{box-sizing:border-box;outline:none;overflow:hidden;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ScrollbarLayout_mainVertical{bottom:0;right:0;top:0;width:15px}.ScrollbarLayout_mainHorizontal{height:15px;left:0;transition-property:background-color height}.ScrollbarLayout_mainHorizontal.public_Scrollbar_mainActive,.ScrollbarLayout_mainHorizontal:hover{height:17px}.ScrollbarLayout_face{left:0;overflow:hidden;position:absolute;z-index:1;transition-duration:.25s;transition-timing-function:ease;transition-property:width}.ScrollbarLayout_face:after{border-radius:6px;content:"";display:block;position:absolute;transition:background-color .25s ease}.ScrollbarLayout_faceHorizontal{bottom:0;left:0;top:0}.ScrollbarLayout_faceHorizontal:after{bottom:4px;left:0;top:4px;width:100%}.fixedDataTable_isRTL .ScrollbarLayout_faceHorizontal,.fixedDataTable_isRTL .ScrollbarLayout_faceHorizontal:after{right:0;left:auto}.ScrollbarLayout_faceHorizontal.public_Scrollbar_faceActive:after,.ScrollbarLayout_main:hover .ScrollbarLayout_faceHorizontal:after{bottom:2px}.ScrollbarLayout_faceVertical{left:0;right:0;top:0}.ScrollbarLayout_faceVertical:after{height:100%;left:4px;right:4px;top:0}.ScrollbarLayout_main:hover .ScrollbarLayout_faceVertical:after,.ScrollbarLayout_faceVertical.public_Scrollbar_faceActive:after{left:2px;right:2px}.public_fixedDataTable_main,.public_fixedDataTable_header,.public_fixedDataTable_hasBottomBorder{border-color:#d3d3d3}.public_fixedDataTable_header .public_fixedDataTableCell_main{font-weight:700}.public_fixedDataTable_header,.public_fixedDataTable_scrollbarSpacer,.public_fixedDataTable_header .public_fixedDataTableCell_main{background-color:#f6f7f8;background-image:linear-gradient(#fff,#efefef)}.public_fixedDataTable_scrollbarSpacer{position:absolute;z-index:99;top:0}.public_fixedDataTable_footer .public_fixedDataTableCell_main{background-color:#f6f7f8;border-color:#d3d3d3}.public_fixedDataTable_topShadow{background-image:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,0))}.public_fixedDataTable_bottomShadow{background-image:linear-gradient(0deg,rgba(0,0,0,.1),rgba(0,0,0,0))}.public_fixedDataTable_horizontalScrollbar .public_Scrollbar_mainHorizontal{background-color:#fff}.public_fixedDataTableCell_main{background-color:#fff;border-color:#d3d3d3}.public_fixedDataTableCell_highlighted{background-color:#f4f4f4}.public_fixedDataTableCell_cellContent{padding:8px}.public_fixedDataTableCell_columnResizerKnob{background-color:#0284ff}.public_fixedDataTableCell_hasReorderHandle .public_fixedDataTableCell_wrap1 .public_fixedDataTableCell_cellContent{margin-left:12px}.public_fixedDataTableCell_hasReorderHandle .public_fixedDataTableCell_wrap.public_fixedDataTableCell_cellContent{padding-left:20px}.fixedDataTable_isRTL .public_fixedDataTableCell_hasReorderHandle .public_fixedDataTableCell_wrap1 .public_fixedDataTableCell_cellContent{margin-left:auto;margin-right:12px}.fixedDataTable_isRTL .public_fixedDataTableCell_hasReorderHandle .public_fixedDataTableCell_wrap.public_fixedDataTableCell_cellContent{padding-right:20px}.fixedDataTableCellLayout_columnReorderContainer{border-color:#0284ff;background-color:#0000001a;width:12px;margin-right:-12px;float:left;cursor:move}.fixedDataTable_isRTL .fixedDataTableCellLayout_columnReorderContainer{margin-right:auto;margin-left:-12px;float:right}.fixedDataTableCellLayout_columnReorderContainer:after{content:"::";position:absolute;top:50%;left:1px;transform:translateY(-50%)}.fixedDataTable_isRTL .fixedDataTableCellLayout_columnReorderContainer:after{left:auto;right:1px}.public_fixedDataTableColumnResizerLine_main{border-color:#0284ff}.public_fixedDataTableRow_main{background-color:#fff}.public_fixedDataTableRow_highlighted,.public_fixedDataTableRow_highlighted .public_fixedDataTableCell_main{background-color:#f6f7f8}.public_fixedDataTableRow_fixedColumnsDivider{border-color:#d3d3d3}.public_fixedDataTableRow_columnsShadow{background-image:linear-gradient(90deg,rgba(0,0,0,.1),rgba(0,0,0,0))}.fixedDataTable_isRTL .public_fixedDataTableRow_columnsShadow{background-image:linear-gradient(270deg,rgba(0,0,0,.1),rgba(0,0,0,0))}.public_fixedDataTableRow_columnsRightShadow{transform:rotate(180deg)}.public_Scrollbar_main.public_Scrollbar_mainActive,.public_Scrollbar_main{background-color:#fff;border-left:1px solid #d3d3d3}.fixedDataTable_isRTL .public_Scrollbar_main.public_Scrollbar_mainActive,.fixedDataTable_isRTL .public_Scrollbar_main{border-right:1px solid #d3d3d3;border-left-width:0}.public_Scrollbar_mainOpaque,.public_Scrollbar_mainOpaque.public_Scrollbar_mainActive,.public_Scrollbar_mainOpaque:hover{background-color:#fff}.public_Scrollbar_face:after{background-color:#c2c2c2}.public_Scrollbar_main:hover .public_Scrollbar_face:after,.public_Scrollbar_mainActive .public_Scrollbar_face:after,.public_Scrollbar_faceActive:after{background-color:#7d7d7d}._tableWrapper_1g74p_16 .public_fixedDataTable_header,._tableWrapper_1g74p_16 .public_fixedDataTable_scrollbarSpacer,._tableWrapper_1g74p_16 .public_fixedDataTable_header .public_fixedDataTableCell_main{background-color:transparent;background-image:none;border-bottom:1px solid #edeef1}._tableWrapper_1g74p_16 .public_fixedDataTable_scrollbarSpacer{margin-left:3px}._tableWrapper_1g74p_16 .public_fixedDataTable_main,._tableWrapper_1g74p_16 .fixedDataTableLayout_main{border:none}._tableWrapper_1g74p_16 .public_fixedDataTableRow_highlighted,._tableWrapper_1g74p_16 .public_fixedDataTableRow_highlighted .public_fixedDataTableCell_main,._tableWrapper_1g74p_16 .public_fixedDataTableRow_main{background-color:transparent}._tableWrapper_1g74p_16 .public_fixedDataTableCell_main{background-color:transparent;border-color:#edeef1}._tableWrapper_1g74p_16 .public_fixedDataTable_header,._tableWrapper_1g74p_16 .public_fixedDataTable_hasBottomBorder,._tableWrapper_1g74p_16 .public_fixedDataTable_scrollbarSpacer{border-bottom:none}._tableWrapper_1g74p_16 .public_fixedDataTable_header .fixedDataTableCellGroupLayout_cellGroup{border-top:1px solid #edeef1;border-bottom:1px solid #edeef1}._tableWrapper_1g74p_16 .public_Scrollbar_main{border-left:none;background-color:transparent}._tableWrapper_1g74p_16 .fixedDataTableRowLayout_rowWrapper{border-left:1px solid #edeef1}._tableWrapper_1g74p_16 .public_Scrollbar_main.public_Scrollbar_mainOpaque{left:-1px}._tableWrapper_1g74p_16 .public_fixedDataTableCell_cellContent{padding:0 12px}._tableWrapper_1g74p_16{height:100%;width:100%;-webkit-user-select:text;-moz-user-select:text;user-select:text}._table_1g74p_16{background:transparent;font-size:13px;border:none}._tableHeader_1g74p_76{color:#5c6372;background-color:transparent;margin:0;border:none;width:100%;overflow:hidden}._tableCell_1g74p_85{color:#5c6372;background-color:transparent;border:none;border-right:1px solid #edeef1;border-bottom:1px solid #edeef1;overflow:hidden;width:100%}._tableCellContent_1g74p_95{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:10}._headerColor_1g74p_102,._rowColor_1g74p_106{background-color:#f9f9fb}._headerCell_o8e2h_16{display:flex;justify-content:left;align-items:center;margin-left:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:400;width:100%;cursor:pointer}._headerCell_o8e2h_16:hover ._noSort_o8e2h_29._standard_o8e2h_29{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjMiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00LjMxMyAxN2g3LjY2N2EuNDkuNDkgMCAwMS40NzkuNS40OS40OSAwIDAxLS40OC41SDQuMzE0YS40OS40OSAwIDAxLS40NzktLjVjMC0uMjc2LjIxNS0uNS40OC0uNXptNS43NS0zaC01Ljc1YS40OS40OSAwIDAwLS40NzkuNWMwIC4yNzYuMjE1LjUuNDguNWg1Ljc1YS40OS40OSAwIDAwLjQ3OC0uNS40OS40OSAwIDAwLS40NzktLjV6bS01Ljc1LTNoMy44MzNhLjQ5LjQ5IDAgMDEuNDguNS40OS40OSAwIDAxLS40OC41SDQuMzEzYS40OS40OSAwIDAxLS40NzktLjVjMC0uMjc2LjIxNS0uNS40OC0uNXptMC0zSDYuMjNhLjQ5LjQ5IDAgMDEuNDc5LjUuNDkuNDkgMCAwMS0uNDguNUg0LjMxNGEuNDkuNDkgMCAwMS0uNDc5LS41YzAtLjI3Ni4yMTUtLjUuNDgtLjV6bTEwLjU0MiAwYS40OS40OSAwIDAwLS40OC41djQuNzkzbC0yLjA1Ny0yLjE0N2EuNDY1LjQ2NSAwIDAwLS42NzggMCAuNTE1LjUxNSAwIDAwMCAuNzA4bDIuODY2IDIuOTlhLjQ2OC40NjggMCAwMC42OTYgMGwyLjg2Ni0yLjk5YS41MTYuNTE2IDAgMDAwLS43MDguNDY1LjQ2NSAwIDAwLS42NzggMGwtMi4wNTYgMi4xNDZWOC41YS40OS40OSAwIDAwLS40OC0uNXoiIGZpbGw9IiM1QzYzNzIiLz48L3N2Zz4K)}._headerCell_o8e2h_16:hover ._noSort_o8e2h_29._caret_o8e2h_33{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjk5OSAxMy44NGwzLjE3NS0yLjcxOWEuNS41IDAgMDEuNjUuNzZsLTMuNSAyLjk5OGEuNS41IDAgMDEtLjY1IDBsLTMuNS0yLjk5OGEuNS41IDAgMDEuNjUtLjc2TDEyIDEzLjg0MXoiIGZpbGw9IiM1QjYzNzIiLz48L3N2Zz4K)}._icon_o8e2h_43{margin-right:10px;width:20px;box-sizing:border-box;display:inline-block}._numberIcon_o8e2h_50{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTE3IDVINmEyIDIgMCAwIDAtMiAydjEwYTIgMiAwIDAgMCAyIDJoMTFhMiAyIDAgMCAwIDItMlY3YTIgMiAwIDAgMC0yLTJ6TTUgN2ExIDEgMCAwIDEgMS0xaDExYTEgMSAwIDAgMSAxIDF2MTBhMSAxIDAgMCAxLTEgMUg2YTEgMSAwIDAgMS0xLTFWN3ptNC41IDRoLjc2NmwtLjU3MiAySDguNWEuNS41IDAgMCAwIDAgMWguOTA5bC0uMzkgMS4zNjNhLjUuNSAwIDAgMCAuOTYyLjI3NEwxMC40NDkgMTRoMS45NmwtLjM5IDEuMzYzYS41LjUgMCAwIDAgLjk2Mi4yNzRMMTMuNDQ5IDE0SDE0LjVhLjUuNSAwIDAgMCAwLTFoLS43NjZsLjU3Mi0ySDE1LjVhLjUuNSAwIDAgMCAwLTFoLS45MDlsLjM5LTEuMzYzYS41LjUgMCAwIDAtLjk2Mi0uMjc0TDEzLjU1MSAxMGgtMS45NmwuMzktMS4zNjNhLjUuNSAwIDAgMC0uOTYyLS4yNzRMMTAuNTUxIDEwSDkuNWEuNS41IDAgMCAwIDAgMXptMy43NjYgMGgtMS45NmwtLjU3MiAyaDEuOTZsLjU3Mi0yeiIgZmlsbD0iIzVCNjM3MiIvPjwvc3ZnPgo=)}._dateIcon_o8e2h_54{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTkgNVYzLjVhLjUuNSAwIDAgMSAxIDBWNWgzVjMuNWEuNS41IDAgMCAxIDEgMFY1aDNhMiAyIDAgMCAxIDIgMnYxMGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlY3YTIgMiAwIDAgMSAyLTJoM3ptMSAxaDN2LjVhLjUuNSAwIDAgMCAxIDBWNmgzYTEgMSAwIDAgMSAxIDF2MUg1VjdhMSAxIDAgMCAxIDEtMWgzdi41YS41LjUgMCAwIDAgMSAwVjZ6TTUgMTdWOWgxM3Y4YTEgMSAwIDAgMS0xIDFINmExIDEgMCAwIDEtMS0xem05LjUtNWgtNmEuNS41IDAgMCAxIDAtMWg2YS41LjUgMCAwIDEgMCAxem0tNiAyaDZhLjUuNSAwIDAgMCAwLTFoLTZhLjUuNSAwIDAgMCAwIDF6bTYgMmgtNmEuNS41IDAgMCAxIDAtMWg2YS41LjUgMCAwIDEgMCAxeiIgZmlsbD0iIzVCNjM3MiIvPjwvc3ZnPgo=)}._textIcon_o8e2h_58{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTYgNWgxMWEyIDIgMCAwIDEgMiAydjEwYTIgMiAwIDAgMS0yIDJINmEyIDIgMCAwIDEtMi0yVjdhMiAyIDAgMCAxIDItMnptMCAxYTEgMSAwIDAgMC0xIDF2MTBhMSAxIDAgMCAwIDEgMWgxMWExIDEgMCAwIDAgMS0xVjdhMSAxIDAgMCAwLTEtMUg2em04IDEwSDlhLjUuNSAwIDAgMSAwLTFoMlY5SDguNWEuNS41IDAgMCAwLS41LjV2MmEuNS41IDAgMCAxLTEgMHYtMkExLjUgMS41IDAgMCAxIDguNSA4aDZBMS41IDEuNSAwIDAgMSAxNiA5LjV2MmEuNS41IDAgMCAxLTEgMHYtMmEuNS41IDAgMCAwLS41LS41SDEydjZoMmEuNS41IDAgMCAxIDAgMXoiIGZpbGw9IiM1QjYzNzIiLz48L3N2Zz4K)}._booleanIcon_o8e2h_62{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTE3IDVINmEyIDIgMCAwIDAtMiAydjEwYTIgMiAwIDAgMCAyIDJoMTFhMiAyIDAgMCAwIDItMlY3YTIgMiAwIDAgMC0yLTJ6TTUgN2ExIDEgMCAwIDEgMS0xaDExYTEgMSAwIDAgMSAxIDF2MTBhMSAxIDAgMCAxLTEgMUg2YTEgMSAwIDAgMS0xLTFWN3oiIGZpbGw9IiM1QjYzNzIiLz48cGF0aCBkPSJNOC44IDE1LjM5NGEuNS41IDAgMCAxLS4xLS43TDEzLjQyOCA4LjRhLjUuNSAwIDEgMSAuOC42TDkuNSAxNS4yOTRhLjUuNSAwIDAgMS0uNy4xeiIgZmlsbD0iIzVCNjM3MiIvPjxyZWN0IHg9IjYiIHk9IjgiIHdpZHRoPSI1IiBoZWlnaHQ9IjEiIHJ4PSIuNSIgZmlsbD0iIzVCNjM3MiIvPjxwYXRoIGQ9Ik04LjUgOGEuNS41IDAgMCAxIC41LjV2NGEuNS41IDAgMCAxLTEgMHYtNGEuNS41IDAgMCAxIC41LS41eiIgZmlsbD0iIzVCNjM3MiIvPjxyZWN0IHg9IjEzIiB5PSIxMiIgd2lkdGg9IjQiIGhlaWdodD0iMSIgcng9Ii41IiBmaWxsPSIjNUI2MzcyIi8+PHJlY3QgeD0iMTMiIHk9IjE0IiB3aWR0aD0iMyIgaGVpZ2h0PSIxIiByeD0iLjUiIGZpbGw9IiM1QjYzNzIiLz48cGF0aCBkPSJNMTMuNSAxMmEuNS41IDAgMCAxIC41LjV2NGEuNS41IDAgMCAxLTEgMHYtNGEuNS41IDAgMCAxIC41LS41eiIgZmlsbD0iIzVCNjM3MiIvPjwvc3ZnPgo=)}._sortIcon_o8e2h_66{position:absolute;right:0;width:24px;height:24px;margin-left:12px;flex-shrink:0;background-repeat:no-repeat}._sortAscending_o8e2h_76._standard_o8e2h_29{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjMiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00LjMxMyAxN2g3LjY2N2EuNDkuNDkgMCAwMS40NzkuNS40OS40OSAwIDAxLS40OC41SDQuMzE0YS40OS40OSAwIDAxLS40NzktLjVjMC0uMjc2LjIxNS0uNS40OC0uNXptNS43NS0zaC01Ljc1YS40OS40OSAwIDAwLS40NzkuNWMwIC4yNzYuMjE1LjUuNDguNWg1Ljc1YS40OS40OSAwIDAwLjQ3OC0uNS40OS40OSAwIDAwLS40NzktLjV6bS01Ljc1LTNoMy44MzNhLjQ5LjQ5IDAgMDEuNDguNS40OS40OSAwIDAxLS40OC41SDQuMzEzYS40OS40OSAwIDAxLS40NzktLjVjMC0uMjc2LjIxNS0uNS40OC0uNXptMC0zSDYuMjNhLjQ5LjQ5IDAgMDEuNDc5LjUuNDkuNDkgMCAwMS0uNDguNUg0LjMxNGEuNDkuNDkgMCAwMS0uNDc5LS41YzAtLjI3Ni4yMTUtLjUuNDgtLjV6bTEwLjU0MiAwYS40OS40OSAwIDAwLS40OC41djQuNzkzbC0yLjA1Ny0yLjE0N2EuNDY1LjQ2NSAwIDAwLS42NzggMCAuNTE1LjUxNSAwIDAwMCAuNzA4bDIuODY2IDIuOTlhLjQ2OC40NjggMCAwMC42OTYgMGwyLjg2Ni0yLjk5YS41MTYuNTE2IDAgMDAwLS43MDguNDY1LjQ2NSAwIDAwLS42NzggMGwtMi4wNTYgMi4xNDZWOC41YS40OS40OSAwIDAwLS40OC0uNXoiIGZpbGw9IiM1QzYzNzIiLz48L3N2Zz4K)}._sortDescending_o8e2h_80._standard_o8e2h_29{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjMiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00LjMxMyA3aDcuNjY3YS40OS40OSAwIDAwLjQ3OS0uNS40OS40OSAwIDAwLS40OC0uNUg0LjMxNGEuNDkuNDkgMCAwMC0uNDc5LjVjMCAuMjc2LjIxNS41LjQ4LjV6bTUuNzUgM2gtNS43NWEuNDkuNDkgMCAwMS0uNDc5LS41YzAtLjI3Ni4yMTUtLjUuNDgtLjVoNS43NWEuNDkuNDkgMCAwMS40NzguNS40OS40OSAwIDAxLS40NzkuNXptLTUuNzUgM2gzLjgzM2EuNDkuNDkgMCAwMC40OC0uNS40OS40OSAwIDAwLS40OC0uNUg0LjMxM2EuNDkuNDkgMCAwMC0uNDc5LjVjMCAuMjc2LjIxNS41LjQ4LjV6bTAgM0g2LjIzYS40OS40OSAwIDAwLjQ3OS0uNS40OS40OSAwIDAwLS40OC0uNUg0LjMxNGEuNDkuNDkgMCAwMC0uNDc5LjVjMCAuMjc2LjIxNS41LjQ4LjV6bTEwLjU0MiAwYS40OS40OSAwIDAxLS40OC0uNXYtNC43OTNsLTIuMDU3IDIuMTQ3YS40NjUuNDY1IDAgMDEtLjY3OCAwIC41MTUuNTE1IDAgMDEwLS43MDhsMi44NjYtMi45OWEuNDY4LjQ2OCAwIDAxLjY5NiAwbDIuODY2IDIuOTlhLjUxNi41MTYgMCAwMTAgLjcwOC40NjUuNDY1IDAgMDEtLjY3OCAwbC0yLjA1Ni0yLjE0NlYxNS41YS40OS40OSAwIDAxLS40OC41eiIgZmlsbD0iIzVDNjM3MiIvPjwvc3ZnPgo=)}._sortAscending_o8e2h_76._caret_o8e2h_33{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjk5OSAxMy44NGwzLjE3NS0yLjcxOWEuNS41IDAgMDEuNjUuNzZsLTMuNSAyLjk5OGEuNS41IDAgMDEtLjY1IDBsLTMuNS0yLjk5OGEuNS41IDAgMDEuNjUtLjc2TDEyIDEzLjg0MXoiIGZpbGw9IiM1QjYzNzIiLz48L3N2Zz4K)}._sortDescending_o8e2h_80._caret_o8e2h_33{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjk5OSAxMy44NGwzLjE3NS0yLjcxOWEuNS41IDAgMDEuNjUuNzZsLTMuNSAyLjk5OGEuNS41IDAgMDEtLjY1IDBsLTMuNS0yLjk5OGEuNS41IDAgMDEuNjUtLjc2TDEyIDEzLjg0MXoiIGZpbGw9IiM1QjYzNzIiLz48L3N2Zz4K);transform:rotate(180deg)}._headerLabel_o8e2h_37{text-align:left;overflow:hidden;flex-shrink:10}._icon_1on8w_1{width:24px;height:24px;margin-right:5px;box-sizing:border-box;display:inline-block;background-repeat:no-repeat;flex-shrink:0}._numberIcon_1on8w_11{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTE3IDVINmEyIDIgMCAwIDAtMiAydjEwYTIgMiAwIDAgMCAyIDJoMTFhMiAyIDAgMCAwIDItMlY3YTIgMiAwIDAgMC0yLTJ6TTUgN2ExIDEgMCAwIDEgMS0xaDExYTEgMSAwIDAgMSAxIDF2MTBhMSAxIDAgMCAxLTEgMUg2YTEgMSAwIDAgMS0xLTFWN3ptNC41IDRoLjc2NmwtLjU3MiAySDguNWEuNS41IDAgMCAwIDAgMWguOTA5bC0uMzkgMS4zNjNhLjUuNSAwIDAgMCAuOTYyLjI3NEwxMC40NDkgMTRoMS45NmwtLjM5IDEuMzYzYS41LjUgMCAwIDAgLjk2Mi4yNzRMMTMuNDQ5IDE0SDE0LjVhLjUuNSAwIDAgMCAwLTFoLS43NjZsLjU3Mi0ySDE1LjVhLjUuNSAwIDAgMCAwLTFoLS45MDlsLjM5LTEuMzYzYS41LjUgMCAwIDAtLjk2Mi0uMjc0TDEzLjU1MSAxMGgtMS45NmwuMzktMS4zNjNhLjUuNSAwIDAgMC0uOTYyLS4yNzRMMTAuNTUxIDEwSDkuNWEuNS41IDAgMCAwIDAgMXptMy43NjYgMGgtMS45NmwtLjU3MiAyaDEuOTZsLjU3Mi0yeiIgZmlsbD0iIzVCNjM3MiIvPjwvc3ZnPgo=)}._dateIcon_1on8w_15{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTkgNVYzLjVhLjUuNSAwIDAgMSAxIDBWNWgzVjMuNWEuNS41IDAgMCAxIDEgMFY1aDNhMiAyIDAgMCAxIDIgMnYxMGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlY3YTIgMiAwIDAgMSAyLTJoM3ptMSAxaDN2LjVhLjUuNSAwIDAgMCAxIDBWNmgzYTEgMSAwIDAgMSAxIDF2MUg1VjdhMSAxIDAgMCAxIDEtMWgzdi41YS41LjUgMCAwIDAgMSAwVjZ6TTUgMTdWOWgxM3Y4YTEgMSAwIDAgMS0xIDFINmExIDEgMCAwIDEtMS0xem05LjUtNWgtNmEuNS41IDAgMCAxIDAtMWg2YS41LjUgMCAwIDEgMCAxem0tNiAyaDZhLjUuNSAwIDAgMCAwLTFoLTZhLjUuNSAwIDAgMCAwIDF6bTYgMmgtNmEuNS41IDAgMCAxIDAtMWg2YS41LjUgMCAwIDEgMCAxeiIgZmlsbD0iIzVCNjM3MiIvPjwvc3ZnPgo=)}._textIcon_1on8w_19{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTYgNWgxMWEyIDIgMCAwIDEgMiAydjEwYTIgMiAwIDAgMS0yIDJINmEyIDIgMCAwIDEtMi0yVjdhMiAyIDAgMCAxIDItMnptMCAxYTEgMSAwIDAgMC0xIDF2MTBhMSAxIDAgMCAwIDEgMWgxMWExIDEgMCAwIDAgMS0xVjdhMSAxIDAgMCAwLTEtMUg2em04IDEwSDlhLjUuNSAwIDAgMSAwLTFoMlY5SDguNWEuNS41IDAgMCAwLS41LjV2MmEuNS41IDAgMCAxLTEgMHYtMkExLjUgMS41IDAgMCAxIDguNSA4aDZBMS41IDEuNSAwIDAgMSAxNiA5LjV2MmEuNS41IDAgMCAxLTEgMHYtMmEuNS41IDAgMCAwLS41LS41SDEydjZoMmEuNS41IDAgMCAxIDAgMXoiIGZpbGw9IiM1QjYzNzIiLz48L3N2Zz4K)}._booleanIcon_1on8w_23{background-image:url(data:image/svg+xml;charset=utf8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTE3IDVINmEyIDIgMCAwIDAtMiAydjEwYTIgMiAwIDAgMCAyIDJoMTFhMiAyIDAgMCAwIDItMlY3YTIgMiAwIDAgMC0yLTJ6TTUgN2ExIDEgMCAwIDEgMS0xaDExYTEgMSAwIDAgMSAxIDF2MTBhMSAxIDAgMCAxLTEgMUg2YTEgMSAwIDAgMS0xLTFWN3oiIGZpbGw9IiM1QjYzNzIiLz48cGF0aCBkPSJNOC44IDE1LjM5NGEuNS41IDAgMCAxLS4xLS43TDEzLjQyOCA4LjRhLjUuNSAwIDEgMSAuOC42TDkuNSAxNS4yOTRhLjUuNSAwIDAgMS0uNy4xeiIgZmlsbD0iIzVCNjM3MiIvPjxyZWN0IHg9IjYiIHk9IjgiIHdpZHRoPSI1IiBoZWlnaHQ9IjEiIHJ4PSIuNSIgZmlsbD0iIzVCNjM3MiIvPjxwYXRoIGQ9Ik04LjUgOGEuNS41IDAgMCAxIC41LjV2NGEuNS41IDAgMCAxLTEgMHYtNGEuNS41IDAgMCAxIC41LS41eiIgZmlsbD0iIzVCNjM3MiIvPjxyZWN0IHg9IjEzIiB5PSIxMiIgd2lkdGg9IjQiIGhlaWdodD0iMSIgcng9Ii41IiBmaWxsPSIjNUI2MzcyIi8+PHJlY3QgeD0iMTMiIHk9IjE0IiB3aWR0aD0iMyIgaGVpZ2h0PSIxIiByeD0iLjUiIGZpbGw9IiM1QjYzNzIiLz48cGF0aCBkPSJNMTMuNSAxMmEuNS41IDAgMCAxIC41LjV2NGEuNS41IDAgMCAxLTEgMHYtNGEuNS41IDAgMCAxIC41LS41eiIgZmlsbD0iIzVCNjM3MiIvPjwvc3ZnPgo=)}._component_1rw9b_1{flex-grow:1;font-family:Open Sans}')),document.head.appendChild(e)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})();
|