wcz-test 6.27.2 → 6.28.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/DialogsContext-CGAKEKKW.js +546 -0
- package/dist/DialogsContext-CGAKEKKW.js.map +1 -0
- package/dist/DialogsHooks-BZUdpDVJ.js +231 -0
- package/dist/{DialogsHooks-DzqOb2Zx.js.map → DialogsHooks-BZUdpDVJ.js.map} +1 -1
- package/dist/{FileHooks-C8Akmy_o.js → FileHooks-DCznEPaA.js} +65 -61
- package/dist/{FileHooks-C8Akmy_o.js.map → FileHooks-DCznEPaA.js.map} +1 -1
- package/dist/RouterListItemButton-C_jUvB6C.js +18 -0
- package/dist/RouterListItemButton-C_jUvB6C.js.map +1 -0
- package/dist/compiler-runtime-BNHg76kC.js +37 -0
- package/dist/compiler-runtime-BNHg76kC.js.map +1 -0
- package/dist/components.js +1652 -1013
- package/dist/components.js.map +1 -1
- package/dist/hooks.js +278 -278
- package/dist/hooks.js.map +1 -1
- package/dist/i18next-Bx3TmZAT.js +1337 -0
- package/dist/i18next-Bx3TmZAT.js.map +1 -0
- package/dist/index.js +842 -973
- package/dist/index.js.map +1 -1
- package/dist/queries.js +85 -85
- package/dist/queries.js.map +1 -1
- package/dist/utils-DV30kRxW.js +1921 -0
- package/dist/utils-DV30kRxW.js.map +1 -0
- package/dist/utils.js +4 -5
- package/dist/utils.js.map +1 -1
- package/package.json +1 -4
- package/dist/DialogsContext-2Yy6yhzQ.js +0 -6
- package/dist/DialogsContext-2Yy6yhzQ.js.map +0 -1
- package/dist/DialogsHooks-DzqOb2Zx.js +0 -233
- package/dist/RouterListItemButton-i4Ne2G-Z.js +0 -508
- package/dist/RouterListItemButton-i4Ne2G-Z.js.map +0 -1
- package/dist/_commonjsHelpers-DaMA6jEr.js +0 -9
- package/dist/_commonjsHelpers-DaMA6jEr.js.map +0 -1
- package/dist/utils-IWcYo8tM.js +0 -106
- package/dist/utils-IWcYo8tM.js.map +0 -1
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
import * as R from "react";
|
|
2
|
+
import { useContext as M } from "react";
|
|
3
|
+
import { D as O, u as W, j as h } from "./DialogsContext-CGAKEKKW.js";
|
|
4
|
+
import { c as E } from "./compiler-runtime-BNHg76kC.js";
|
|
5
|
+
import { useEventCallback as I, DialogContent as $, DialogTitle as w, DialogActions as F, Button as T, Dialog as _ } from "@mui/material";
|
|
6
|
+
var A = /* @__PURE__ */ new Map(), D = /* @__PURE__ */ new WeakMap(), L = 0, z;
|
|
7
|
+
function V(t) {
|
|
8
|
+
return t ? (D.has(t) || (L += 1, D.set(t, L.toString())), D.get(t)) : "0";
|
|
9
|
+
}
|
|
10
|
+
function q(t) {
|
|
11
|
+
return Object.keys(t).sort().filter(
|
|
12
|
+
(e) => t[e] !== void 0
|
|
13
|
+
).map((e) => `${e}_${e === "root" ? V(t.root) : t[e]}`).toString();
|
|
14
|
+
}
|
|
15
|
+
function G(t) {
|
|
16
|
+
const e = q(t);
|
|
17
|
+
let a = A.get(e);
|
|
18
|
+
if (!a) {
|
|
19
|
+
const n = /* @__PURE__ */ new Map();
|
|
20
|
+
let i;
|
|
21
|
+
const r = new IntersectionObserver((o) => {
|
|
22
|
+
o.forEach((s) => {
|
|
23
|
+
var l;
|
|
24
|
+
const c = s.isIntersecting && i.some((u) => s.intersectionRatio >= u);
|
|
25
|
+
t.trackVisibility && typeof s.isVisible > "u" && (s.isVisible = c), (l = n.get(s.target)) == null || l.forEach((u) => {
|
|
26
|
+
u(c, s);
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
}, t);
|
|
30
|
+
i = r.thresholds || (Array.isArray(t.threshold) ? t.threshold : [t.threshold || 0]), a = {
|
|
31
|
+
id: e,
|
|
32
|
+
observer: r,
|
|
33
|
+
elements: n
|
|
34
|
+
}, A.set(e, a);
|
|
35
|
+
}
|
|
36
|
+
return a;
|
|
37
|
+
}
|
|
38
|
+
function H(t, e, a = {}, n = z) {
|
|
39
|
+
if (typeof window.IntersectionObserver > "u" && n !== void 0) {
|
|
40
|
+
const l = t.getBoundingClientRect();
|
|
41
|
+
return e(n, {
|
|
42
|
+
isIntersecting: n,
|
|
43
|
+
target: t,
|
|
44
|
+
intersectionRatio: typeof a.threshold == "number" ? a.threshold : 0,
|
|
45
|
+
time: 0,
|
|
46
|
+
boundingClientRect: l,
|
|
47
|
+
intersectionRect: l,
|
|
48
|
+
rootBounds: l
|
|
49
|
+
}), () => {
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
const { id: i, observer: r, elements: o } = G(a), s = o.get(t) || [];
|
|
53
|
+
return o.has(t) || o.set(t, s), s.push(e), r.observe(t), function() {
|
|
54
|
+
s.splice(s.indexOf(e), 1), s.length === 0 && (o.delete(t), r.unobserve(t)), o.size === 0 && (r.disconnect(), A.delete(i));
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function X({
|
|
58
|
+
threshold: t,
|
|
59
|
+
delay: e,
|
|
60
|
+
trackVisibility: a,
|
|
61
|
+
rootMargin: n,
|
|
62
|
+
root: i,
|
|
63
|
+
triggerOnce: r,
|
|
64
|
+
skip: o,
|
|
65
|
+
initialInView: s,
|
|
66
|
+
fallbackInView: l,
|
|
67
|
+
onChange: c
|
|
68
|
+
} = {}) {
|
|
69
|
+
var u;
|
|
70
|
+
const [f, d] = R.useState(null), g = R.useRef(c), v = R.useRef(s), [m, x] = R.useState({
|
|
71
|
+
inView: !!s,
|
|
72
|
+
entry: void 0
|
|
73
|
+
});
|
|
74
|
+
g.current = c, R.useEffect(
|
|
75
|
+
() => {
|
|
76
|
+
if (v.current === void 0 && (v.current = s), o || !f) return;
|
|
77
|
+
let C;
|
|
78
|
+
return C = H(
|
|
79
|
+
f,
|
|
80
|
+
(j, y) => {
|
|
81
|
+
const B = v.current;
|
|
82
|
+
v.current = j, !(B === void 0 && !j) && (x({
|
|
83
|
+
inView: j,
|
|
84
|
+
entry: y
|
|
85
|
+
}), g.current && g.current(j, y), y.isIntersecting && r && C && (C(), C = void 0));
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
root: i,
|
|
89
|
+
rootMargin: n,
|
|
90
|
+
threshold: t,
|
|
91
|
+
// @ts-expect-error
|
|
92
|
+
trackVisibility: a,
|
|
93
|
+
delay: e
|
|
94
|
+
},
|
|
95
|
+
l
|
|
96
|
+
), () => {
|
|
97
|
+
C && C();
|
|
98
|
+
};
|
|
99
|
+
},
|
|
100
|
+
// We break the rule here, because we aren't including the actual `threshold` variable
|
|
101
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
102
|
+
[
|
|
103
|
+
// If the threshold is an array, convert it to a string, so it won't change between renders.
|
|
104
|
+
Array.isArray(t) ? t.toString() : t,
|
|
105
|
+
f,
|
|
106
|
+
i,
|
|
107
|
+
n,
|
|
108
|
+
r,
|
|
109
|
+
o,
|
|
110
|
+
a,
|
|
111
|
+
l,
|
|
112
|
+
e
|
|
113
|
+
]
|
|
114
|
+
);
|
|
115
|
+
const p = (u = m.entry) == null ? void 0 : u.target, S = R.useRef(void 0);
|
|
116
|
+
!f && p && !r && !o && S.current !== p && (S.current = p, x({
|
|
117
|
+
inView: !!s,
|
|
118
|
+
entry: void 0
|
|
119
|
+
}), v.current = s);
|
|
120
|
+
const b = [d, m.inView, m.entry];
|
|
121
|
+
return b.ref = b[0], b.inView = b[1], b.entry = b[2], b;
|
|
122
|
+
}
|
|
123
|
+
function J(t) {
|
|
124
|
+
const e = E.c(22), {
|
|
125
|
+
open: a,
|
|
126
|
+
payload: n,
|
|
127
|
+
onClose: i
|
|
128
|
+
} = t, {
|
|
129
|
+
t: r
|
|
130
|
+
} = W();
|
|
131
|
+
let o;
|
|
132
|
+
e[0] !== i ? (o = () => i(), e[0] = i, e[1] = o) : o = e[1];
|
|
133
|
+
let s;
|
|
134
|
+
e[2] !== n.title || e[3] !== r ? (s = n.title ?? r("Layout.Dialog.Alert"), e[2] = n.title, e[3] = r, e[4] = s) : s = e[4];
|
|
135
|
+
let l;
|
|
136
|
+
e[5] !== s ? (l = /* @__PURE__ */ h.jsx(w, { children: s }), e[5] = s, e[6] = l) : l = e[6];
|
|
137
|
+
let c;
|
|
138
|
+
e[7] !== n.message ? (c = /* @__PURE__ */ h.jsx($, { children: n.message }), e[7] = n.message, e[8] = c) : c = e[8];
|
|
139
|
+
let u;
|
|
140
|
+
e[9] !== i ? (u = () => i(), e[9] = i, e[10] = u) : u = e[10];
|
|
141
|
+
let f;
|
|
142
|
+
e[11] !== r ? (f = r("Layout.Dialog.Confirm"), e[11] = r, e[12] = f) : f = e[12];
|
|
143
|
+
let d;
|
|
144
|
+
e[13] !== u || e[14] !== f ? (d = /* @__PURE__ */ h.jsx(F, { children: /* @__PURE__ */ h.jsx(T, { onClick: u, autoFocus: !0, children: f }) }), e[13] = u, e[14] = f, e[15] = d) : d = e[15];
|
|
145
|
+
let g;
|
|
146
|
+
return e[16] !== a || e[17] !== o || e[18] !== l || e[19] !== c || e[20] !== d ? (g = /* @__PURE__ */ h.jsxs(_, { maxWidth: "xs", fullWidth: !0, open: a, onClose: o, disableRestoreFocus: !0, children: [
|
|
147
|
+
l,
|
|
148
|
+
c,
|
|
149
|
+
d
|
|
150
|
+
] }), e[16] = a, e[17] = o, e[18] = l, e[19] = c, e[20] = d, e[21] = g) : g = e[21], g;
|
|
151
|
+
}
|
|
152
|
+
function K(t) {
|
|
153
|
+
const e = E.c(33), {
|
|
154
|
+
open: a,
|
|
155
|
+
payload: n,
|
|
156
|
+
onClose: i
|
|
157
|
+
} = t, {
|
|
158
|
+
t: r
|
|
159
|
+
} = W();
|
|
160
|
+
let o;
|
|
161
|
+
e[0] !== i ? (o = () => i(!1), e[0] = i, e[1] = o) : o = e[1];
|
|
162
|
+
let s;
|
|
163
|
+
e[2] !== n.title || e[3] !== r ? (s = n.title ?? r("Layout.Dialog.Confirm"), e[2] = n.title, e[3] = r, e[4] = s) : s = e[4];
|
|
164
|
+
let l;
|
|
165
|
+
e[5] !== s ? (l = /* @__PURE__ */ h.jsx(w, { children: s }), e[5] = s, e[6] = l) : l = e[6];
|
|
166
|
+
let c;
|
|
167
|
+
e[7] !== n.message ? (c = /* @__PURE__ */ h.jsx($, { children: n.message }), e[7] = n.message, e[8] = c) : c = e[8];
|
|
168
|
+
let u;
|
|
169
|
+
e[9] !== i ? (u = () => i(!1), e[9] = i, e[10] = u) : u = e[10];
|
|
170
|
+
let f;
|
|
171
|
+
e[11] !== n.cancelText || e[12] !== r ? (f = n.cancelText ?? r("Layout.Dialog.Cancel"), e[11] = n.cancelText, e[12] = r, e[13] = f) : f = e[13];
|
|
172
|
+
let d;
|
|
173
|
+
e[14] !== u || e[15] !== f ? (d = /* @__PURE__ */ h.jsx(T, { onClick: u, children: f }), e[14] = u, e[15] = f, e[16] = d) : d = e[16];
|
|
174
|
+
let g;
|
|
175
|
+
e[17] !== i ? (g = () => i(!0), e[17] = i, e[18] = g) : g = e[18];
|
|
176
|
+
let v;
|
|
177
|
+
e[19] !== r ? (v = r("Layout.Dialog.Confirm"), e[19] = r, e[20] = v) : v = e[20];
|
|
178
|
+
let m;
|
|
179
|
+
e[21] !== g || e[22] !== v ? (m = /* @__PURE__ */ h.jsx(T, { onClick: g, autoFocus: !0, children: v }), e[21] = g, e[22] = v, e[23] = m) : m = e[23];
|
|
180
|
+
let x;
|
|
181
|
+
e[24] !== m || e[25] !== d ? (x = /* @__PURE__ */ h.jsxs(F, { children: [
|
|
182
|
+
d,
|
|
183
|
+
m
|
|
184
|
+
] }), e[24] = m, e[25] = d, e[26] = x) : x = e[26];
|
|
185
|
+
let p;
|
|
186
|
+
return e[27] !== a || e[28] !== o || e[29] !== x || e[30] !== l || e[31] !== c ? (p = /* @__PURE__ */ h.jsxs(_, { maxWidth: "xs", fullWidth: !0, open: a, onClose: o, disableRestoreFocus: !0, children: [
|
|
187
|
+
l,
|
|
188
|
+
c,
|
|
189
|
+
x
|
|
190
|
+
] }), e[27] = a, e[28] = o, e[29] = x, e[30] = l, e[31] = c, e[32] = p) : p = e[32], p;
|
|
191
|
+
}
|
|
192
|
+
function Y() {
|
|
193
|
+
const t = E.c(9), {
|
|
194
|
+
open: e,
|
|
195
|
+
close: a
|
|
196
|
+
} = M(O);
|
|
197
|
+
let n;
|
|
198
|
+
t[0] !== e ? (n = (l, c) => {
|
|
199
|
+
const {
|
|
200
|
+
...u
|
|
201
|
+
} = c === void 0 ? {} : c;
|
|
202
|
+
return e(J, {
|
|
203
|
+
...u,
|
|
204
|
+
message: l
|
|
205
|
+
});
|
|
206
|
+
}, t[0] = e, t[1] = n) : n = t[1];
|
|
207
|
+
const i = I(n);
|
|
208
|
+
let r;
|
|
209
|
+
t[2] !== e ? (r = (l, c) => {
|
|
210
|
+
const {
|
|
211
|
+
...u
|
|
212
|
+
} = c === void 0 ? {} : c;
|
|
213
|
+
return e(K, {
|
|
214
|
+
...u,
|
|
215
|
+
message: l
|
|
216
|
+
});
|
|
217
|
+
}, t[2] = e, t[3] = r) : r = t[3];
|
|
218
|
+
const o = I(r);
|
|
219
|
+
let s;
|
|
220
|
+
return t[4] !== i || t[5] !== a || t[6] !== o || t[7] !== e ? (s = {
|
|
221
|
+
alert: i,
|
|
222
|
+
confirm: o,
|
|
223
|
+
open: e,
|
|
224
|
+
close: a
|
|
225
|
+
}, t[4] = i, t[5] = a, t[6] = o, t[7] = e, t[8] = s) : s = t[8], s;
|
|
226
|
+
}
|
|
227
|
+
export {
|
|
228
|
+
X as a,
|
|
229
|
+
Y as u
|
|
230
|
+
};
|
|
231
|
+
//# sourceMappingURL=DialogsHooks-BZUdpDVJ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogsHooks-DzqOb2Zx.js","sources":["../node_modules/react-intersection-observer/dist/index.mjs","../src/hooks/DialogsHooks.tsx"],"sourcesContent":["\"use client\";\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n\n// src/InView.tsx\nimport * as React from \"react\";\n\n// src/observe.ts\nvar observerMap = /* @__PURE__ */ new Map();\nvar RootIds = /* @__PURE__ */ new WeakMap();\nvar rootId = 0;\nvar unsupportedValue;\nfunction defaultFallbackInView(inView) {\n unsupportedValue = inView;\n}\nfunction getRootId(root) {\n if (!root) return \"0\";\n if (RootIds.has(root)) return RootIds.get(root);\n rootId += 1;\n RootIds.set(root, rootId.toString());\n return RootIds.get(root);\n}\nfunction optionsToId(options) {\n return Object.keys(options).sort().filter(\n (key) => options[key] !== void 0\n ).map((key) => {\n return `${key}_${key === \"root\" ? getRootId(options.root) : options[key]}`;\n }).toString();\n}\nfunction createObserver(options) {\n const id = optionsToId(options);\n let instance = observerMap.get(id);\n if (!instance) {\n const elements = /* @__PURE__ */ new Map();\n let thresholds;\n const observer = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n var _a2;\n const inView = entry.isIntersecting && thresholds.some((threshold) => entry.intersectionRatio >= threshold);\n if (options.trackVisibility && typeof entry.isVisible === \"undefined\") {\n entry.isVisible = inView;\n }\n (_a2 = elements.get(entry.target)) == null ? void 0 : _a2.forEach((callback) => {\n callback(inView, entry);\n });\n });\n }, options);\n thresholds = observer.thresholds || (Array.isArray(options.threshold) ? options.threshold : [options.threshold || 0]);\n instance = {\n id,\n observer,\n elements\n };\n observerMap.set(id, instance);\n }\n return instance;\n}\nfunction observe(element, callback, options = {}, fallbackInView = unsupportedValue) {\n if (typeof window.IntersectionObserver === \"undefined\" && fallbackInView !== void 0) {\n const bounds = element.getBoundingClientRect();\n callback(fallbackInView, {\n isIntersecting: fallbackInView,\n target: element,\n intersectionRatio: typeof options.threshold === \"number\" ? options.threshold : 0,\n time: 0,\n boundingClientRect: bounds,\n intersectionRect: bounds,\n rootBounds: bounds\n });\n return () => {\n };\n }\n const { id, observer, elements } = createObserver(options);\n const callbacks = elements.get(element) || [];\n if (!elements.has(element)) {\n elements.set(element, callbacks);\n }\n callbacks.push(callback);\n observer.observe(element);\n return function unobserve() {\n callbacks.splice(callbacks.indexOf(callback), 1);\n if (callbacks.length === 0) {\n elements.delete(element);\n observer.unobserve(element);\n }\n if (elements.size === 0) {\n observer.disconnect();\n observerMap.delete(id);\n }\n };\n}\n\n// src/InView.tsx\nfunction isPlainChildren(props) {\n return typeof props.children !== \"function\";\n}\nvar InView = class extends React.Component {\n constructor(props) {\n super(props);\n __publicField(this, \"node\", null);\n __publicField(this, \"_unobserveCb\", null);\n __publicField(this, \"lastInView\");\n __publicField(this, \"handleNode\", (node) => {\n if (this.node) {\n this.unobserve();\n if (!node && !this.props.triggerOnce && !this.props.skip) {\n this.setState({ inView: !!this.props.initialInView, entry: void 0 });\n this.lastInView = this.props.initialInView;\n }\n }\n this.node = node ? node : null;\n this.observeNode();\n });\n __publicField(this, \"handleChange\", (inView, entry) => {\n const previousInView = this.lastInView;\n this.lastInView = inView;\n if (previousInView === void 0 && !inView) {\n return;\n }\n if (inView && this.props.triggerOnce) {\n this.unobserve();\n }\n if (!isPlainChildren(this.props)) {\n this.setState({ inView, entry });\n }\n if (this.props.onChange) {\n this.props.onChange(inView, entry);\n }\n });\n this.state = {\n inView: !!props.initialInView,\n entry: void 0\n };\n this.lastInView = props.initialInView;\n }\n componentDidMount() {\n this.unobserve();\n this.observeNode();\n }\n componentDidUpdate(prevProps) {\n if (prevProps.rootMargin !== this.props.rootMargin || prevProps.root !== this.props.root || prevProps.threshold !== this.props.threshold || prevProps.skip !== this.props.skip || prevProps.trackVisibility !== this.props.trackVisibility || prevProps.delay !== this.props.delay) {\n this.unobserve();\n this.observeNode();\n }\n }\n componentWillUnmount() {\n this.unobserve();\n }\n observeNode() {\n if (!this.node || this.props.skip) return;\n const {\n threshold,\n root,\n rootMargin,\n trackVisibility,\n delay,\n fallbackInView\n } = this.props;\n if (this.lastInView === void 0) {\n this.lastInView = this.props.initialInView;\n }\n this._unobserveCb = observe(\n this.node,\n this.handleChange,\n {\n threshold,\n root,\n rootMargin,\n // @ts-expect-error\n trackVisibility,\n delay\n },\n fallbackInView\n );\n }\n unobserve() {\n if (this._unobserveCb) {\n this._unobserveCb();\n this._unobserveCb = null;\n }\n }\n render() {\n const { children } = this.props;\n if (typeof children === \"function\") {\n const { inView, entry } = this.state;\n return children({ inView, entry, ref: this.handleNode });\n }\n const {\n as,\n triggerOnce,\n threshold,\n root,\n rootMargin,\n onChange,\n skip,\n trackVisibility,\n delay,\n initialInView,\n fallbackInView,\n ...props\n } = this.props;\n return React.createElement(\n as || \"div\",\n { ref: this.handleNode, ...props },\n children\n );\n }\n};\n\n// src/useInView.tsx\nimport * as React2 from \"react\";\nfunction useInView({\n threshold,\n delay,\n trackVisibility,\n rootMargin,\n root,\n triggerOnce,\n skip,\n initialInView,\n fallbackInView,\n onChange\n} = {}) {\n var _a2;\n const [ref, setRef] = React2.useState(null);\n const callback = React2.useRef(onChange);\n const lastInViewRef = React2.useRef(initialInView);\n const [state, setState] = React2.useState({\n inView: !!initialInView,\n entry: void 0\n });\n callback.current = onChange;\n React2.useEffect(\n () => {\n if (lastInViewRef.current === void 0) {\n lastInViewRef.current = initialInView;\n }\n if (skip || !ref) return;\n let unobserve;\n unobserve = observe(\n ref,\n (inView, entry) => {\n const previousInView = lastInViewRef.current;\n lastInViewRef.current = inView;\n if (previousInView === void 0 && !inView) {\n return;\n }\n setState({\n inView,\n entry\n });\n if (callback.current) callback.current(inView, entry);\n if (entry.isIntersecting && triggerOnce && unobserve) {\n unobserve();\n unobserve = void 0;\n }\n },\n {\n root,\n rootMargin,\n threshold,\n // @ts-expect-error\n trackVisibility,\n delay\n },\n fallbackInView\n );\n return () => {\n if (unobserve) {\n unobserve();\n }\n };\n },\n // We break the rule here, because we aren't including the actual `threshold` variable\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n // If the threshold is an array, convert it to a string, so it won't change between renders.\n Array.isArray(threshold) ? threshold.toString() : threshold,\n ref,\n root,\n rootMargin,\n triggerOnce,\n skip,\n trackVisibility,\n fallbackInView,\n delay\n ]\n );\n const entryTarget = (_a2 = state.entry) == null ? void 0 : _a2.target;\n const previousEntryTarget = React2.useRef(void 0);\n if (!ref && entryTarget && !triggerOnce && !skip && previousEntryTarget.current !== entryTarget) {\n previousEntryTarget.current = entryTarget;\n setState({\n inView: !!initialInView,\n entry: void 0\n });\n lastInViewRef.current = initialInView;\n }\n const result = [setRef, state.inView, state.entry];\n result.ref = result[0];\n result.inView = result[1];\n result.entry = result[2];\n return result;\n}\n\n// src/useOnInView.tsx\nimport * as React3 from \"react\";\nvar _a, _b;\nvar useSyncEffect = (_b = (_a = React3.useInsertionEffect) != null ? _a : React3.useLayoutEffect) != null ? _b : React3.useEffect;\nvar useOnInView = (onIntersectionChange, {\n threshold,\n root,\n rootMargin,\n trackVisibility,\n delay,\n triggerOnce,\n skip\n} = {}) => {\n const onIntersectionChangeRef = React3.useRef(onIntersectionChange);\n const observedElementRef = React3.useRef(null);\n const observerCleanupRef = React3.useRef(void 0);\n const lastInViewRef = React3.useRef(void 0);\n useSyncEffect(() => {\n onIntersectionChangeRef.current = onIntersectionChange;\n }, [onIntersectionChange]);\n return React3.useCallback(\n (element) => {\n const cleanupExisting = () => {\n if (observerCleanupRef.current) {\n const cleanup = observerCleanupRef.current;\n observerCleanupRef.current = void 0;\n cleanup();\n }\n };\n if (element === observedElementRef.current) {\n return observerCleanupRef.current;\n }\n if (!element || skip) {\n cleanupExisting();\n observedElementRef.current = null;\n lastInViewRef.current = void 0;\n return;\n }\n cleanupExisting();\n observedElementRef.current = element;\n let destroyed = false;\n const destroyObserver = observe(\n element,\n (inView, entry) => {\n const previousInView = lastInViewRef.current;\n lastInViewRef.current = inView;\n if (previousInView === void 0 && !inView) {\n return;\n }\n onIntersectionChangeRef.current(\n inView,\n entry\n );\n if (triggerOnce && inView) {\n stopObserving();\n }\n },\n {\n threshold,\n root,\n rootMargin,\n trackVisibility,\n delay\n }\n );\n function stopObserving() {\n if (destroyed) return;\n destroyed = true;\n destroyObserver();\n observedElementRef.current = null;\n observerCleanupRef.current = void 0;\n lastInViewRef.current = void 0;\n }\n observerCleanupRef.current = stopObserving;\n return observerCleanupRef.current;\n },\n [\n Array.isArray(threshold) ? threshold.toString() : threshold,\n root,\n rootMargin,\n trackVisibility,\n delay,\n triggerOnce,\n skip\n ]\n );\n};\nexport {\n InView,\n defaultFallbackInView,\n observe,\n useInView,\n useOnInView\n};\n//# sourceMappingURL=index.mjs.map","import { Button, Dialog, DialogActions, DialogContent, DialogTitle, useEventCallback } from \"@mui/material\";\nimport { useContext } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { DialogsContext } from \"../contexts/DialogsContext\";\nimport type { ReactNode } from \"react\";\n\nexport interface OpenDialogOptions<TResult> {\n onClose?: (result: TResult) => Promise<void>;\n}\n\nexport interface AlertOptions {\n title?: ReactNode;\n}\n\nexport interface ConfirmOptions {\n title?: ReactNode;\n cancelText?: ReactNode;\n}\n\nexport interface DialogProps<TPayload = undefined, TResult = void> {\n payload: TPayload;\n open: boolean;\n onClose: (result: TResult) => Promise<void>;\n}\n\nexport type OpenAlertDialog = (message: ReactNode, options?: AlertOptions) => Promise<void>;\n\nexport type OpenConfirmDialog = (message: ReactNode, options?: ConfirmOptions) => Promise<boolean>;\n\nexport type DialogComponent<TPayload, TResult> = React.ComponentType<DialogProps<TPayload, TResult>>;\n\nexport interface OpenDialog {\n <TPayload extends undefined, TResult>(Component: DialogComponent<TPayload, TResult>, payload?: TPayload, options?: OpenDialogOptions<TResult>): Promise<TResult>;\n <TPayload, TResult>(Component: DialogComponent<TPayload, TResult>, payload: TPayload, options?: OpenDialogOptions<TResult>): Promise<TResult>;\n}\n\nexport type CloseDialog = <TResult>(dialog: Promise<TResult>, result: TResult) => Promise<TResult>;\n\nexport interface AlertDialogPayload extends AlertOptions {\n message: ReactNode;\n}\n\nexport type AlertDialogProps = DialogProps<AlertDialogPayload, void>\n\nexport function AlertDialog({ open, payload, onClose }: Readonly<AlertDialogProps>) {\n const { t } = useTranslation();\n\n return (\n <Dialog maxWidth=\"xs\" fullWidth open={open} onClose={() => onClose()} disableRestoreFocus>\n <DialogTitle>{payload.title ?? t(\"Layout.Dialog.Alert\")}</DialogTitle>\n <DialogContent>{payload.message}</DialogContent>\n <DialogActions>\n <Button onClick={() => onClose()} autoFocus>\n {t(\"Layout.Dialog.Confirm\")}\n </Button>\n </DialogActions>\n </Dialog>\n );\n}\n\nexport interface ConfirmDialogPayload extends ConfirmOptions {\n message: ReactNode;\n}\n\nexport type ConfirmDialogProps = DialogProps<ConfirmDialogPayload, boolean>\n\nexport function ConfirmDialog({ open, payload, onClose }: Readonly<ConfirmDialogProps>) {\n const { t } = useTranslation();\n\n return (\n <Dialog maxWidth=\"xs\" fullWidth open={open} onClose={() => onClose(false)} disableRestoreFocus>\n <DialogTitle>{payload.title ?? t(\"Layout.Dialog.Confirm\")}</DialogTitle>\n <DialogContent>{payload.message}</DialogContent>\n <DialogActions>\n <Button onClick={() => onClose(false)}>\n {payload.cancelText ?? t(\"Layout.Dialog.Cancel\")}\n </Button>\n <Button onClick={() => onClose(true)} autoFocus>\n {t(\"Layout.Dialog.Confirm\")}\n </Button>\n </DialogActions>\n </Dialog>\n );\n}\n\ninterface DialogHook {\n alert: OpenAlertDialog;\n confirm: OpenConfirmDialog;\n open: OpenDialog;\n close: CloseDialog;\n}\n\nexport function useDialogs(): DialogHook {\n const { open, close } = useContext(DialogsContext);\n\n const alert = useEventCallback<OpenAlertDialog>((message, { ...options } = {}) =>\n open(AlertDialog, { ...options, message }),\n );\n\n const confirm = useEventCallback<OpenConfirmDialog>((message, { ...options } = {}) =>\n open(ConfirmDialog, { ...options, message }),\n );\n\n return { alert, confirm, open, close };\n}\n"],"names":["observerMap","RootIds","rootId","unsupportedValue","getRootId","root","optionsToId","options","key","createObserver","id","instance","elements","thresholds","observer","entries","entry","_a2","inView","threshold","callback","observe","element","fallbackInView","bounds","callbacks","useInView","delay","trackVisibility","rootMargin","triggerOnce","skip","initialInView","onChange","ref","setRef","React2","lastInViewRef","state","setState","unobserve","previousInView","entryTarget","previousEntryTarget","result","AlertDialog","t0","$","_c","open","payload","onClose","t","useTranslation","t1","t2","title","t3","jsx","DialogTitle","t4","message","DialogContent","t5","t6","t7","DialogActions","Button","t8","Dialog","ConfirmDialog","cancelText","t9","t10","t11","t12","useDialogs","close","useContext","DialogsContext","undefined","alert","useEventCallback","message_0","options_0","confirm"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"DialogsHooks-BZUdpDVJ.js","sources":["../node_modules/react-intersection-observer/dist/index.mjs","../src/hooks/DialogsHooks.tsx"],"sourcesContent":["\"use client\";\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n\n// src/InView.tsx\nimport * as React from \"react\";\n\n// src/observe.ts\nvar observerMap = /* @__PURE__ */ new Map();\nvar RootIds = /* @__PURE__ */ new WeakMap();\nvar rootId = 0;\nvar unsupportedValue;\nfunction defaultFallbackInView(inView) {\n unsupportedValue = inView;\n}\nfunction getRootId(root) {\n if (!root) return \"0\";\n if (RootIds.has(root)) return RootIds.get(root);\n rootId += 1;\n RootIds.set(root, rootId.toString());\n return RootIds.get(root);\n}\nfunction optionsToId(options) {\n return Object.keys(options).sort().filter(\n (key) => options[key] !== void 0\n ).map((key) => {\n return `${key}_${key === \"root\" ? getRootId(options.root) : options[key]}`;\n }).toString();\n}\nfunction createObserver(options) {\n const id = optionsToId(options);\n let instance = observerMap.get(id);\n if (!instance) {\n const elements = /* @__PURE__ */ new Map();\n let thresholds;\n const observer = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n var _a2;\n const inView = entry.isIntersecting && thresholds.some((threshold) => entry.intersectionRatio >= threshold);\n if (options.trackVisibility && typeof entry.isVisible === \"undefined\") {\n entry.isVisible = inView;\n }\n (_a2 = elements.get(entry.target)) == null ? void 0 : _a2.forEach((callback) => {\n callback(inView, entry);\n });\n });\n }, options);\n thresholds = observer.thresholds || (Array.isArray(options.threshold) ? options.threshold : [options.threshold || 0]);\n instance = {\n id,\n observer,\n elements\n };\n observerMap.set(id, instance);\n }\n return instance;\n}\nfunction observe(element, callback, options = {}, fallbackInView = unsupportedValue) {\n if (typeof window.IntersectionObserver === \"undefined\" && fallbackInView !== void 0) {\n const bounds = element.getBoundingClientRect();\n callback(fallbackInView, {\n isIntersecting: fallbackInView,\n target: element,\n intersectionRatio: typeof options.threshold === \"number\" ? options.threshold : 0,\n time: 0,\n boundingClientRect: bounds,\n intersectionRect: bounds,\n rootBounds: bounds\n });\n return () => {\n };\n }\n const { id, observer, elements } = createObserver(options);\n const callbacks = elements.get(element) || [];\n if (!elements.has(element)) {\n elements.set(element, callbacks);\n }\n callbacks.push(callback);\n observer.observe(element);\n return function unobserve() {\n callbacks.splice(callbacks.indexOf(callback), 1);\n if (callbacks.length === 0) {\n elements.delete(element);\n observer.unobserve(element);\n }\n if (elements.size === 0) {\n observer.disconnect();\n observerMap.delete(id);\n }\n };\n}\n\n// src/InView.tsx\nfunction isPlainChildren(props) {\n return typeof props.children !== \"function\";\n}\nvar InView = class extends React.Component {\n constructor(props) {\n super(props);\n __publicField(this, \"node\", null);\n __publicField(this, \"_unobserveCb\", null);\n __publicField(this, \"lastInView\");\n __publicField(this, \"handleNode\", (node) => {\n if (this.node) {\n this.unobserve();\n if (!node && !this.props.triggerOnce && !this.props.skip) {\n this.setState({ inView: !!this.props.initialInView, entry: void 0 });\n this.lastInView = this.props.initialInView;\n }\n }\n this.node = node ? node : null;\n this.observeNode();\n });\n __publicField(this, \"handleChange\", (inView, entry) => {\n const previousInView = this.lastInView;\n this.lastInView = inView;\n if (previousInView === void 0 && !inView) {\n return;\n }\n if (inView && this.props.triggerOnce) {\n this.unobserve();\n }\n if (!isPlainChildren(this.props)) {\n this.setState({ inView, entry });\n }\n if (this.props.onChange) {\n this.props.onChange(inView, entry);\n }\n });\n this.state = {\n inView: !!props.initialInView,\n entry: void 0\n };\n this.lastInView = props.initialInView;\n }\n componentDidMount() {\n this.unobserve();\n this.observeNode();\n }\n componentDidUpdate(prevProps) {\n if (prevProps.rootMargin !== this.props.rootMargin || prevProps.root !== this.props.root || prevProps.threshold !== this.props.threshold || prevProps.skip !== this.props.skip || prevProps.trackVisibility !== this.props.trackVisibility || prevProps.delay !== this.props.delay) {\n this.unobserve();\n this.observeNode();\n }\n }\n componentWillUnmount() {\n this.unobserve();\n }\n observeNode() {\n if (!this.node || this.props.skip) return;\n const {\n threshold,\n root,\n rootMargin,\n trackVisibility,\n delay,\n fallbackInView\n } = this.props;\n if (this.lastInView === void 0) {\n this.lastInView = this.props.initialInView;\n }\n this._unobserveCb = observe(\n this.node,\n this.handleChange,\n {\n threshold,\n root,\n rootMargin,\n // @ts-expect-error\n trackVisibility,\n delay\n },\n fallbackInView\n );\n }\n unobserve() {\n if (this._unobserveCb) {\n this._unobserveCb();\n this._unobserveCb = null;\n }\n }\n render() {\n const { children } = this.props;\n if (typeof children === \"function\") {\n const { inView, entry } = this.state;\n return children({ inView, entry, ref: this.handleNode });\n }\n const {\n as,\n triggerOnce,\n threshold,\n root,\n rootMargin,\n onChange,\n skip,\n trackVisibility,\n delay,\n initialInView,\n fallbackInView,\n ...props\n } = this.props;\n return React.createElement(\n as || \"div\",\n { ref: this.handleNode, ...props },\n children\n );\n }\n};\n\n// src/useInView.tsx\nimport * as React2 from \"react\";\nfunction useInView({\n threshold,\n delay,\n trackVisibility,\n rootMargin,\n root,\n triggerOnce,\n skip,\n initialInView,\n fallbackInView,\n onChange\n} = {}) {\n var _a2;\n const [ref, setRef] = React2.useState(null);\n const callback = React2.useRef(onChange);\n const lastInViewRef = React2.useRef(initialInView);\n const [state, setState] = React2.useState({\n inView: !!initialInView,\n entry: void 0\n });\n callback.current = onChange;\n React2.useEffect(\n () => {\n if (lastInViewRef.current === void 0) {\n lastInViewRef.current = initialInView;\n }\n if (skip || !ref) return;\n let unobserve;\n unobserve = observe(\n ref,\n (inView, entry) => {\n const previousInView = lastInViewRef.current;\n lastInViewRef.current = inView;\n if (previousInView === void 0 && !inView) {\n return;\n }\n setState({\n inView,\n entry\n });\n if (callback.current) callback.current(inView, entry);\n if (entry.isIntersecting && triggerOnce && unobserve) {\n unobserve();\n unobserve = void 0;\n }\n },\n {\n root,\n rootMargin,\n threshold,\n // @ts-expect-error\n trackVisibility,\n delay\n },\n fallbackInView\n );\n return () => {\n if (unobserve) {\n unobserve();\n }\n };\n },\n // We break the rule here, because we aren't including the actual `threshold` variable\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n // If the threshold is an array, convert it to a string, so it won't change between renders.\n Array.isArray(threshold) ? threshold.toString() : threshold,\n ref,\n root,\n rootMargin,\n triggerOnce,\n skip,\n trackVisibility,\n fallbackInView,\n delay\n ]\n );\n const entryTarget = (_a2 = state.entry) == null ? void 0 : _a2.target;\n const previousEntryTarget = React2.useRef(void 0);\n if (!ref && entryTarget && !triggerOnce && !skip && previousEntryTarget.current !== entryTarget) {\n previousEntryTarget.current = entryTarget;\n setState({\n inView: !!initialInView,\n entry: void 0\n });\n lastInViewRef.current = initialInView;\n }\n const result = [setRef, state.inView, state.entry];\n result.ref = result[0];\n result.inView = result[1];\n result.entry = result[2];\n return result;\n}\n\n// src/useOnInView.tsx\nimport * as React3 from \"react\";\nvar _a, _b;\nvar useSyncEffect = (_b = (_a = React3.useInsertionEffect) != null ? _a : React3.useLayoutEffect) != null ? _b : React3.useEffect;\nvar useOnInView = (onIntersectionChange, {\n threshold,\n root,\n rootMargin,\n trackVisibility,\n delay,\n triggerOnce,\n skip\n} = {}) => {\n const onIntersectionChangeRef = React3.useRef(onIntersectionChange);\n const observedElementRef = React3.useRef(null);\n const observerCleanupRef = React3.useRef(void 0);\n const lastInViewRef = React3.useRef(void 0);\n useSyncEffect(() => {\n onIntersectionChangeRef.current = onIntersectionChange;\n }, [onIntersectionChange]);\n return React3.useCallback(\n (element) => {\n const cleanupExisting = () => {\n if (observerCleanupRef.current) {\n const cleanup = observerCleanupRef.current;\n observerCleanupRef.current = void 0;\n cleanup();\n }\n };\n if (element === observedElementRef.current) {\n return observerCleanupRef.current;\n }\n if (!element || skip) {\n cleanupExisting();\n observedElementRef.current = null;\n lastInViewRef.current = void 0;\n return;\n }\n cleanupExisting();\n observedElementRef.current = element;\n let destroyed = false;\n const destroyObserver = observe(\n element,\n (inView, entry) => {\n const previousInView = lastInViewRef.current;\n lastInViewRef.current = inView;\n if (previousInView === void 0 && !inView) {\n return;\n }\n onIntersectionChangeRef.current(\n inView,\n entry\n );\n if (triggerOnce && inView) {\n stopObserving();\n }\n },\n {\n threshold,\n root,\n rootMargin,\n trackVisibility,\n delay\n }\n );\n function stopObserving() {\n if (destroyed) return;\n destroyed = true;\n destroyObserver();\n observedElementRef.current = null;\n observerCleanupRef.current = void 0;\n lastInViewRef.current = void 0;\n }\n observerCleanupRef.current = stopObserving;\n return observerCleanupRef.current;\n },\n [\n Array.isArray(threshold) ? threshold.toString() : threshold,\n root,\n rootMargin,\n trackVisibility,\n delay,\n triggerOnce,\n skip\n ]\n );\n};\nexport {\n InView,\n defaultFallbackInView,\n observe,\n useInView,\n useOnInView\n};\n//# sourceMappingURL=index.mjs.map","import { Button, Dialog, DialogActions, DialogContent, DialogTitle, useEventCallback } from \"@mui/material\";\nimport { useContext } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { DialogsContext } from \"../contexts/DialogsContext\";\nimport type { ReactNode } from \"react\";\n\nexport interface OpenDialogOptions<TResult> {\n onClose?: (result: TResult) => Promise<void>;\n}\n\nexport interface AlertOptions {\n title?: ReactNode;\n}\n\nexport interface ConfirmOptions {\n title?: ReactNode;\n cancelText?: ReactNode;\n}\n\nexport interface DialogProps<TPayload = undefined, TResult = void> {\n payload: TPayload;\n open: boolean;\n onClose: (result: TResult) => Promise<void>;\n}\n\nexport type OpenAlertDialog = (message: ReactNode, options?: AlertOptions) => Promise<void>;\n\nexport type OpenConfirmDialog = (message: ReactNode, options?: ConfirmOptions) => Promise<boolean>;\n\nexport type DialogComponent<TPayload, TResult> = React.ComponentType<DialogProps<TPayload, TResult>>;\n\nexport interface OpenDialog {\n <TPayload extends undefined, TResult>(Component: DialogComponent<TPayload, TResult>, payload?: TPayload, options?: OpenDialogOptions<TResult>): Promise<TResult>;\n <TPayload, TResult>(Component: DialogComponent<TPayload, TResult>, payload: TPayload, options?: OpenDialogOptions<TResult>): Promise<TResult>;\n}\n\nexport type CloseDialog = <TResult>(dialog: Promise<TResult>, result: TResult) => Promise<TResult>;\n\nexport interface AlertDialogPayload extends AlertOptions {\n message: ReactNode;\n}\n\nexport type AlertDialogProps = DialogProps<AlertDialogPayload, void>\n\nexport function AlertDialog({ open, payload, onClose }: Readonly<AlertDialogProps>) {\n const { t } = useTranslation();\n\n return (\n <Dialog maxWidth=\"xs\" fullWidth open={open} onClose={() => onClose()} disableRestoreFocus>\n <DialogTitle>{payload.title ?? t(\"Layout.Dialog.Alert\")}</DialogTitle>\n <DialogContent>{payload.message}</DialogContent>\n <DialogActions>\n <Button onClick={() => onClose()} autoFocus>\n {t(\"Layout.Dialog.Confirm\")}\n </Button>\n </DialogActions>\n </Dialog>\n );\n}\n\nexport interface ConfirmDialogPayload extends ConfirmOptions {\n message: ReactNode;\n}\n\nexport type ConfirmDialogProps = DialogProps<ConfirmDialogPayload, boolean>\n\nexport function ConfirmDialog({ open, payload, onClose }: Readonly<ConfirmDialogProps>) {\n const { t } = useTranslation();\n\n return (\n <Dialog maxWidth=\"xs\" fullWidth open={open} onClose={() => onClose(false)} disableRestoreFocus>\n <DialogTitle>{payload.title ?? t(\"Layout.Dialog.Confirm\")}</DialogTitle>\n <DialogContent>{payload.message}</DialogContent>\n <DialogActions>\n <Button onClick={() => onClose(false)}>\n {payload.cancelText ?? t(\"Layout.Dialog.Cancel\")}\n </Button>\n <Button onClick={() => onClose(true)} autoFocus>\n {t(\"Layout.Dialog.Confirm\")}\n </Button>\n </DialogActions>\n </Dialog>\n );\n}\n\ninterface DialogHook {\n alert: OpenAlertDialog;\n confirm: OpenConfirmDialog;\n open: OpenDialog;\n close: CloseDialog;\n}\n\nexport function useDialogs(): DialogHook {\n const { open, close } = useContext(DialogsContext);\n\n const alert = useEventCallback<OpenAlertDialog>((message, { ...options } = {}) =>\n open(AlertDialog, { ...options, message }),\n );\n\n const confirm = useEventCallback<OpenConfirmDialog>((message, { ...options } = {}) =>\n open(ConfirmDialog, { ...options, message }),\n );\n\n return { alert, confirm, open, close };\n}\n"],"names":["observerMap","RootIds","rootId","unsupportedValue","getRootId","root","optionsToId","options","key","createObserver","id","instance","elements","thresholds","observer","entries","entry","_a2","inView","threshold","callback","observe","element","fallbackInView","bounds","callbacks","useInView","delay","trackVisibility","rootMargin","triggerOnce","skip","initialInView","onChange","ref","setRef","React2","lastInViewRef","state","setState","unobserve","previousInView","entryTarget","previousEntryTarget","result","AlertDialog","t0","$","_c","open","payload","onClose","t","useTranslation","t1","t2","title","t3","jsx","DialogTitle","t4","message","DialogContent","t5","t6","t7","DialogActions","Button","t8","Dialog","ConfirmDialog","cancelText","t9","t10","t11","t12","useDialogs","close","useContext","DialogsContext","undefined","alert","useEventCallback","message_0","options_0","confirm"],"mappings":"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","x_google_ignoreList":[0]}
|