wcz-test 6.27.1 → 6.27.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/DialogsContext-CGAKEKKW.js +546 -0
  2. package/dist/DialogsContext-CGAKEKKW.js.map +1 -0
  3. package/dist/DialogsHooks-BZUdpDVJ.js +231 -0
  4. package/dist/{DialogsHooks-DzqOb2Zx.js.map → DialogsHooks-BZUdpDVJ.js.map} +1 -1
  5. package/dist/{FileHooks-C8Akmy_o.js → FileHooks-DCznEPaA.js} +65 -61
  6. package/dist/{FileHooks-C8Akmy_o.js.map → FileHooks-DCznEPaA.js.map} +1 -1
  7. package/dist/RouterListItemButton-C_jUvB6C.js +18 -0
  8. package/dist/RouterListItemButton-C_jUvB6C.js.map +1 -0
  9. package/dist/compiler-runtime-BNHg76kC.js +37 -0
  10. package/dist/compiler-runtime-BNHg76kC.js.map +1 -0
  11. package/dist/components.js +1562 -944
  12. package/dist/components.js.map +1 -1
  13. package/dist/hooks.js +278 -278
  14. package/dist/hooks.js.map +1 -1
  15. package/dist/i18next-Bx3TmZAT.js +1337 -0
  16. package/dist/i18next-Bx3TmZAT.js.map +1 -0
  17. package/dist/index.js +842 -973
  18. package/dist/index.js.map +1 -1
  19. package/dist/queries.js +85 -85
  20. package/dist/queries.js.map +1 -1
  21. package/dist/utils-DV30kRxW.js +1921 -0
  22. package/dist/utils-DV30kRxW.js.map +1 -0
  23. package/dist/utils.js +4 -5
  24. package/dist/utils.js.map +1 -1
  25. package/package.json +1 -1
  26. package/dist/DialogsContext-2Yy6yhzQ.js +0 -6
  27. package/dist/DialogsContext-2Yy6yhzQ.js.map +0 -1
  28. package/dist/DialogsHooks-DzqOb2Zx.js +0 -233
  29. package/dist/RouterListItemButton-B6kAS_RK.js +0 -640
  30. package/dist/RouterListItemButton-B6kAS_RK.js.map +0 -1
  31. package/dist/_commonjsHelpers-DaMA6jEr.js +0 -9
  32. package/dist/_commonjsHelpers-DaMA6jEr.js.map +0 -1
  33. package/dist/utils-IWcYo8tM.js +0 -106
  34. 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]}