@lokalise/harmony 1.6.0-exp-jwtutils.14 → 1.6.0-exp-jwtutils.16
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/harmony.cjs +1 -1
- package/dist/harmony.mjs +435 -445
- package/dist/types/src/features/auth/bff/services/getAuthenticatedSessionDetailFromRequest.d.ts +4 -3
- package/dist/types/src/features/publicApi/hooks/useCreateProjectMutation.d.ts +70 -0
- package/dist/types/src/features/publicApi/hooks/useGetUserTokenQuery.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/useListProjectsQuery.d.ts +71 -0
- package/dist/types/src/features/publicApi/hooks/useRetrieveContributorQuery.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/useRetrieveProjectQuery.d.ts +62 -0
- package/dist/types/src/features/publicApi/hooks/userGetTeamUsersQuery.d.ts +1 -1
- package/dist/types/src/features/publicApi/projects.d.ts +1541 -0
- package/dist/types/src/features/publicApi/types/language.d.ts +29 -0
- package/dist/types/src/features/publicApi/types/project.d.ts +479 -0
- package/dist/types/src/utils/types/apiMutationOverrides.d.ts +2 -0
- package/dist/types/src/utils/types/apiQueryOverrides.d.ts +1 -1
- package/package.json +1 -1
package/dist/harmony.mjs
CHANGED
@@ -1,89 +1,89 @@
|
|
1
|
-
var
|
2
|
-
var
|
3
|
-
var
|
4
|
-
import { jsx as
|
1
|
+
var Tt = Object.defineProperty;
|
2
|
+
var wt = (e, t, n) => t in e ? Tt(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
|
3
|
+
var Ne = (e, t, n) => wt(e, typeof t != "symbol" ? t + "" : t, n);
|
4
|
+
import { jsx as i, jsxs as _, Fragment as Ve } from "react/jsx-runtime";
|
5
5
|
import * as x from "react";
|
6
|
-
import { useRef as
|
7
|
-
import { Tooltip as me, Link as
|
6
|
+
import { useRef as Ye, useState as de, useCallback as ke, useEffect as q, useContext as yt, createContext as It, cloneElement as Nt, Fragment as Ze, forwardRef as kt } from "react";
|
7
|
+
import { Tooltip as me, Link as Xe, Menu as fe, MenuList as he, CaretUpIcon as St, UserIcon as et, MenuItem as H, MenuDivider as tt, Tag as Et } from "@lokalise/louis";
|
8
8
|
import { z as s } from "zod";
|
9
|
-
import {
|
10
|
-
import { buildPayloadRoute as
|
9
|
+
import { sendByGetRoute as nt, sendByPayloadRoute as ge } from "@lokalise/frontend-http-client";
|
10
|
+
import { buildPayloadRoute as Pt } from "@lokalise/universal-ts-utils/api-contracts/apiContracts";
|
11
11
|
import { useQuery as be } from "@tanstack/react-query";
|
12
|
-
import { buildGetRoute as
|
13
|
-
import { format as
|
14
|
-
import { toZonedTime as
|
12
|
+
import { buildGetRoute as rt } from "@lokalise/universal-ts-utils/node";
|
13
|
+
import { format as at } from "date-fns";
|
14
|
+
import { toZonedTime as Ct } from "date-fns-tz";
|
15
15
|
var $ = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
|
16
|
-
function
|
16
|
+
function it(e) {
|
17
17
|
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
18
18
|
}
|
19
|
-
var J,
|
19
|
+
var J, Se;
|
20
20
|
function pe() {
|
21
|
-
if (
|
22
|
-
|
21
|
+
if (Se) return J;
|
22
|
+
Se = 1;
|
23
23
|
function e(t) {
|
24
24
|
var n = typeof t;
|
25
25
|
return t != null && (n == "object" || n == "function");
|
26
26
|
}
|
27
27
|
return J = e, J;
|
28
28
|
}
|
29
|
-
var
|
30
|
-
function
|
31
|
-
if (
|
32
|
-
|
29
|
+
var K, Ee;
|
30
|
+
function Rt() {
|
31
|
+
if (Ee) return K;
|
32
|
+
Ee = 1;
|
33
33
|
var e = typeof $ == "object" && $ && $.Object === Object && $;
|
34
|
-
return
|
34
|
+
return K = e, K;
|
35
35
|
}
|
36
|
-
var
|
36
|
+
var Q, Pe;
|
37
37
|
function ot() {
|
38
|
-
if (Pe) return
|
38
|
+
if (Pe) return Q;
|
39
39
|
Pe = 1;
|
40
|
-
var e =
|
41
|
-
return
|
40
|
+
var e = Rt(), t = typeof self == "object" && self && self.Object === Object && self, n = e || t || Function("return this")();
|
41
|
+
return Q = n, Q;
|
42
42
|
}
|
43
|
-
var
|
44
|
-
function
|
45
|
-
if (
|
46
|
-
|
43
|
+
var V, Ce;
|
44
|
+
function jt() {
|
45
|
+
if (Ce) return V;
|
46
|
+
Ce = 1;
|
47
47
|
var e = ot(), t = function() {
|
48
48
|
return e.Date.now();
|
49
49
|
};
|
50
|
-
return
|
50
|
+
return V = t, V;
|
51
51
|
}
|
52
|
-
var
|
53
|
-
function
|
54
|
-
if (
|
55
|
-
|
52
|
+
var Y, Re;
|
53
|
+
function At() {
|
54
|
+
if (Re) return Y;
|
55
|
+
Re = 1;
|
56
56
|
var e = /\s/;
|
57
57
|
function t(n) {
|
58
58
|
for (var r = n.length; r-- && e.test(n.charAt(r)); )
|
59
59
|
;
|
60
60
|
return r;
|
61
61
|
}
|
62
|
-
return
|
62
|
+
return Y = t, Y;
|
63
63
|
}
|
64
|
-
var
|
65
|
-
function
|
66
|
-
if (
|
67
|
-
|
68
|
-
var e =
|
64
|
+
var Z, je;
|
65
|
+
function Lt() {
|
66
|
+
if (je) return Z;
|
67
|
+
je = 1;
|
68
|
+
var e = At(), t = /^\s+/;
|
69
69
|
function n(r) {
|
70
70
|
return r && r.slice(0, e(r) + 1).replace(t, "");
|
71
71
|
}
|
72
|
-
return
|
72
|
+
return Z = n, Z;
|
73
73
|
}
|
74
|
-
var
|
75
|
-
function
|
76
|
-
if (
|
77
|
-
|
74
|
+
var X, Ae;
|
75
|
+
function st() {
|
76
|
+
if (Ae) return X;
|
77
|
+
Ae = 1;
|
78
78
|
var e = ot(), t = e.Symbol;
|
79
|
-
return
|
79
|
+
return X = t, X;
|
80
80
|
}
|
81
|
-
var
|
82
|
-
function
|
83
|
-
if (
|
84
|
-
|
85
|
-
var e =
|
86
|
-
function
|
81
|
+
var ee, Le;
|
82
|
+
function Ot() {
|
83
|
+
if (Le) return ee;
|
84
|
+
Le = 1;
|
85
|
+
var e = st(), t = Object.prototype, n = t.hasOwnProperty, r = t.toString, a = e ? e.toStringTag : void 0;
|
86
|
+
function o(c) {
|
87
87
|
var u = n.call(c, a), d = c[a];
|
88
88
|
try {
|
89
89
|
c[a] = void 0;
|
@@ -93,52 +93,52 @@ function Ut() {
|
|
93
93
|
var m = r.call(c);
|
94
94
|
return l && (u ? c[a] = d : delete c[a]), m;
|
95
95
|
}
|
96
|
-
return
|
96
|
+
return ee = o, ee;
|
97
97
|
}
|
98
|
-
var
|
99
|
-
function
|
100
|
-
if (
|
101
|
-
|
98
|
+
var te, Oe;
|
99
|
+
function xt() {
|
100
|
+
if (Oe) return te;
|
101
|
+
Oe = 1;
|
102
102
|
var e = Object.prototype, t = e.toString;
|
103
103
|
function n(r) {
|
104
104
|
return t.call(r);
|
105
105
|
}
|
106
|
-
return
|
106
|
+
return te = n, te;
|
107
107
|
}
|
108
|
-
var
|
109
|
-
function
|
110
|
-
if (
|
111
|
-
|
112
|
-
var e =
|
108
|
+
var ne, xe;
|
109
|
+
function qt() {
|
110
|
+
if (xe) return ne;
|
111
|
+
xe = 1;
|
112
|
+
var e = st(), t = Ot(), n = xt(), r = "[object Null]", a = "[object Undefined]", o = e ? e.toStringTag : void 0;
|
113
113
|
function c(u) {
|
114
|
-
return u == null ? u === void 0 ? a : r :
|
114
|
+
return u == null ? u === void 0 ? a : r : o && o in Object(u) ? t(u) : n(u);
|
115
115
|
}
|
116
|
-
return
|
116
|
+
return ne = c, ne;
|
117
117
|
}
|
118
|
-
var
|
119
|
-
function
|
120
|
-
if (
|
121
|
-
|
118
|
+
var re, qe;
|
119
|
+
function Mt() {
|
120
|
+
if (qe) return re;
|
121
|
+
qe = 1;
|
122
122
|
function e(t) {
|
123
123
|
return t != null && typeof t == "object";
|
124
124
|
}
|
125
|
-
return
|
125
|
+
return re = e, re;
|
126
126
|
}
|
127
|
-
var
|
128
|
-
function
|
129
|
-
if (
|
130
|
-
|
131
|
-
var e =
|
127
|
+
var ae, Me;
|
128
|
+
function Ut() {
|
129
|
+
if (Me) return ae;
|
130
|
+
Me = 1;
|
131
|
+
var e = qt(), t = Mt(), n = "[object Symbol]";
|
132
132
|
function r(a) {
|
133
133
|
return typeof a == "symbol" || t(a) && e(a) == n;
|
134
134
|
}
|
135
|
-
return
|
135
|
+
return ae = r, ae;
|
136
136
|
}
|
137
137
|
var ie, Ue;
|
138
|
-
function
|
138
|
+
function Bt() {
|
139
139
|
if (Ue) return ie;
|
140
140
|
Ue = 1;
|
141
|
-
var e =
|
141
|
+
var e = Lt(), t = pe(), n = Ut(), r = NaN, a = /^[-+]0x[0-9a-f]+$/i, o = /^0b[01]+$/i, c = /^0o[0-7]+$/i, u = parseInt;
|
142
142
|
function d(l) {
|
143
143
|
if (typeof l == "number")
|
144
144
|
return l;
|
@@ -151,54 +151,54 @@ function Dt() {
|
|
151
151
|
if (typeof l != "string")
|
152
152
|
return l === 0 ? l : +l;
|
153
153
|
l = e(l);
|
154
|
-
var b =
|
154
|
+
var b = o.test(l);
|
155
155
|
return b || c.test(l) ? u(l.slice(2), b ? 2 : 8) : a.test(l) ? r : +l;
|
156
156
|
}
|
157
157
|
return ie = d, ie;
|
158
158
|
}
|
159
|
-
var
|
160
|
-
function
|
161
|
-
if (
|
162
|
-
|
163
|
-
var e = pe(), t =
|
159
|
+
var oe, Be;
|
160
|
+
function ct() {
|
161
|
+
if (Be) return oe;
|
162
|
+
Be = 1;
|
163
|
+
var e = pe(), t = jt(), n = Bt(), r = "Expected a function", a = Math.max, o = Math.min;
|
164
164
|
function c(u, d, l) {
|
165
165
|
var m, b, T, w, g, y, N = 0, S = !1, h = !1, k = !0;
|
166
166
|
if (typeof u != "function")
|
167
167
|
throw new TypeError(r);
|
168
168
|
d = n(d) || 0, e(l) && (S = !!l.leading, h = "maxWait" in l, T = h ? a(n(l.maxWait) || 0, d) : T, k = "trailing" in l ? !!l.trailing : k);
|
169
169
|
function v(f) {
|
170
|
-
var
|
171
|
-
return m = b = void 0, N = f, w = u.apply(O,
|
170
|
+
var E = m, O = b;
|
171
|
+
return m = b = void 0, N = f, w = u.apply(O, E), w;
|
172
172
|
}
|
173
173
|
function p(f) {
|
174
174
|
return N = f, g = setTimeout(B, d), S ? v(f) : w;
|
175
175
|
}
|
176
|
-
function
|
177
|
-
var
|
178
|
-
return h ?
|
176
|
+
function U(f) {
|
177
|
+
var E = f - y, O = f - N, Ie = d - E;
|
178
|
+
return h ? o(Ie, T - O) : Ie;
|
179
179
|
}
|
180
|
-
function
|
181
|
-
var
|
182
|
-
return y === void 0 ||
|
180
|
+
function we(f) {
|
181
|
+
var E = f - y, O = f - N;
|
182
|
+
return y === void 0 || E >= d || E < 0 || h && O >= T;
|
183
183
|
}
|
184
184
|
function B() {
|
185
185
|
var f = t();
|
186
|
-
if (
|
187
|
-
return
|
188
|
-
g = setTimeout(B,
|
186
|
+
if (we(f))
|
187
|
+
return ye(f);
|
188
|
+
g = setTimeout(B, U(f));
|
189
189
|
}
|
190
|
-
function
|
190
|
+
function ye(f) {
|
191
191
|
return g = void 0, k && m ? v(f) : (m = b = void 0, w);
|
192
192
|
}
|
193
|
-
function
|
193
|
+
function _t() {
|
194
194
|
g !== void 0 && clearTimeout(g), N = 0, m = y = b = g = void 0;
|
195
195
|
}
|
196
|
-
function
|
197
|
-
return g === void 0 ? w :
|
196
|
+
function vt() {
|
197
|
+
return g === void 0 ? w : ye(t());
|
198
198
|
}
|
199
|
-
function
|
200
|
-
var f = t(),
|
201
|
-
if (m = arguments, b = this, y = f,
|
199
|
+
function W() {
|
200
|
+
var f = t(), E = we(f);
|
201
|
+
if (m = arguments, b = this, y = f, E) {
|
202
202
|
if (g === void 0)
|
203
203
|
return p(y);
|
204
204
|
if (h)
|
@@ -206,40 +206,40 @@ function st() {
|
|
206
206
|
}
|
207
207
|
return g === void 0 && (g = setTimeout(B, d)), w;
|
208
208
|
}
|
209
|
-
return
|
209
|
+
return W.cancel = _t, W.flush = vt, W;
|
210
210
|
}
|
211
|
-
return
|
211
|
+
return oe = c, oe;
|
212
212
|
}
|
213
|
-
var
|
214
|
-
const
|
215
|
-
var
|
216
|
-
function
|
217
|
-
if (
|
218
|
-
|
219
|
-
var e =
|
220
|
-
function r(a,
|
213
|
+
var $t = ct();
|
214
|
+
const zt = /* @__PURE__ */ it($t);
|
215
|
+
var se, $e;
|
216
|
+
function Dt() {
|
217
|
+
if ($e) return se;
|
218
|
+
$e = 1;
|
219
|
+
var e = ct(), t = pe(), n = "Expected a function";
|
220
|
+
function r(a, o, c) {
|
221
221
|
var u = !0, d = !0;
|
222
222
|
if (typeof a != "function")
|
223
223
|
throw new TypeError(n);
|
224
|
-
return t(c) && (u = "leading" in c ? !!c.leading : u, d = "trailing" in c ? !!c.trailing : d), e(a,
|
224
|
+
return t(c) && (u = "leading" in c ? !!c.leading : u, d = "trailing" in c ? !!c.trailing : d), e(a, o, {
|
225
225
|
leading: u,
|
226
|
-
maxWait:
|
226
|
+
maxWait: o,
|
227
227
|
trailing: d
|
228
228
|
});
|
229
229
|
}
|
230
|
-
return
|
230
|
+
return se = r, se;
|
231
231
|
}
|
232
|
-
var
|
233
|
-
const
|
232
|
+
var Ft = Dt();
|
233
|
+
const Ht = /* @__PURE__ */ it(Ft), Gt = (e, t, n, r) => {
|
234
234
|
switch (t) {
|
235
235
|
case "debounce":
|
236
|
-
return
|
236
|
+
return zt(e, n, r);
|
237
237
|
case "throttle":
|
238
|
-
return
|
238
|
+
return Ht(e, n, r);
|
239
239
|
default:
|
240
240
|
return e;
|
241
241
|
}
|
242
|
-
},
|
242
|
+
}, Wt = (
|
243
243
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
244
244
|
(e) => {
|
245
245
|
const t = x.useRef(e);
|
@@ -250,7 +250,7 @@ const Kt = /* @__PURE__ */ at(Wt), Jt = (e, t, n, r) => {
|
|
250
250
|
return (r = t.current) === null || r === void 0 ? void 0 : r.call(t, ...n);
|
251
251
|
}, []);
|
252
252
|
}
|
253
|
-
),
|
253
|
+
), Jt = (
|
254
254
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
255
255
|
(e) => {
|
256
256
|
const [t, n] = x.useState((e == null ? void 0 : e.current) || null);
|
@@ -259,15 +259,15 @@ const Kt = /* @__PURE__ */ at(Wt), Jt = (e, t, n, r) => {
|
|
259
259
|
}, 0), { refProxy: x.useMemo(() => new Proxy((a) => {
|
260
260
|
a !== t && n(a);
|
261
261
|
}, {
|
262
|
-
get(a,
|
263
|
-
return
|
262
|
+
get(a, o) {
|
263
|
+
return o === "current" ? t : a[o];
|
264
264
|
},
|
265
|
-
set(a,
|
266
|
-
return
|
265
|
+
set(a, o, c) {
|
266
|
+
return o === "current" ? n(c) : a[o] = c, !0;
|
267
267
|
}
|
268
268
|
}), [t]), refElement: t, setRefElement: n };
|
269
269
|
}
|
270
|
-
),
|
270
|
+
), Kt = (e, t) => t === "border-box" ? {
|
271
271
|
width: e.borderBoxSize[0].inlineSize,
|
272
272
|
height: e.borderBoxSize[0].blockSize
|
273
273
|
} : t === "content-box" ? {
|
@@ -277,27 +277,27 @@ const Kt = /* @__PURE__ */ at(Wt), Jt = (e, t, n, r) => {
|
|
277
277
|
width: e.contentRect.width,
|
278
278
|
height: e.contentRect.height
|
279
279
|
};
|
280
|
-
function
|
281
|
-
const l =
|
280
|
+
function Qt({ skipOnMount: e = !1, refreshMode: t, refreshRate: n = 1e3, refreshOptions: r, handleWidth: a = !0, handleHeight: o = !0, targetRef: c, observerOptions: u, onResize: d } = {}) {
|
281
|
+
const l = Ye(e), m = Wt(d), [b, T] = de({
|
282
282
|
width: void 0,
|
283
283
|
height: void 0
|
284
|
-
}), { refProxy: w, refElement: g } =
|
285
|
-
if (!a && !
|
284
|
+
}), { refProxy: w, refElement: g } = Jt(c), { box: y } = u || {}, N = ke((h) => {
|
285
|
+
if (!a && !o)
|
286
286
|
return;
|
287
287
|
if (l.current) {
|
288
288
|
l.current = !1;
|
289
289
|
return;
|
290
290
|
}
|
291
|
-
const k = (v, p) => a && v.width !== p.width ||
|
291
|
+
const k = (v, p) => a && v.width !== p.width || o && v.height !== p.height;
|
292
292
|
h.forEach((v) => {
|
293
|
-
const p =
|
294
|
-
T((
|
293
|
+
const p = Kt(v, y);
|
294
|
+
T((U) => k(U, p) ? (m == null || m({
|
295
295
|
width: p.width,
|
296
296
|
height: p.height,
|
297
297
|
entry: v
|
298
|
-
}), p) :
|
298
|
+
}), p) : U);
|
299
299
|
});
|
300
|
-
}, [a,
|
300
|
+
}, [a, o, l, y]), S = ke(Gt(N, t, n, r), [
|
301
301
|
N,
|
302
302
|
t,
|
303
303
|
n,
|
@@ -315,38 +315,38 @@ function Zt({ skipOnMount: e = !1, refreshMode: t, refreshRate: n = 1e3, refresh
|
|
315
315
|
};
|
316
316
|
}, [S, g]), Object.assign({ ref: w }, b);
|
317
317
|
}
|
318
|
-
function
|
318
|
+
function lt(e) {
|
319
319
|
var t, n, r = "";
|
320
320
|
if (typeof e == "string" || typeof e == "number") r += e;
|
321
321
|
else if (typeof e == "object") if (Array.isArray(e)) {
|
322
322
|
var a = e.length;
|
323
|
-
for (t = 0; t < a; t++) e[t] && (n =
|
323
|
+
for (t = 0; t < a; t++) e[t] && (n = lt(e[t])) && (r && (r += " "), r += n);
|
324
324
|
} else for (n in e) e[n] && (r && (r += " "), r += n);
|
325
325
|
return r;
|
326
326
|
}
|
327
327
|
function R() {
|
328
|
-
for (var e, t, n = 0, r = "", a = arguments.length; n < a; n++) (e = arguments[n]) && (t =
|
328
|
+
for (var e, t, n = 0, r = "", a = arguments.length; n < a; n++) (e = arguments[n]) && (t = lt(e)) && (r && (r += " "), r += t);
|
329
329
|
return r;
|
330
330
|
}
|
331
|
-
const
|
332
|
-
headerContainer:
|
333
|
-
navigationTabList:
|
334
|
-
navigationTab:
|
335
|
-
headerContent:
|
336
|
-
staticEnabled:
|
337
|
-
},
|
338
|
-
const { ref: n, height: r } =
|
331
|
+
const Vt = "_headerContainer_1cubo_1", Yt = "_navigationTabList_1cubo_8", Zt = "_navigationTab_1cubo_8", Xt = "_headerContent_1cubo_34", en = "_staticEnabled_1cubo_50", A = {
|
332
|
+
headerContainer: Vt,
|
333
|
+
navigationTabList: Yt,
|
334
|
+
navigationTab: Zt,
|
335
|
+
headerContent: Xt,
|
336
|
+
staticEnabled: en
|
337
|
+
}, tn = 77, D = ({ sticky: e, children: t }) => {
|
338
|
+
const { ref: n, height: r } = Qt({
|
339
339
|
refreshMode: "debounce",
|
340
340
|
refreshRate: 0
|
341
|
-
}), [a,
|
341
|
+
}), [a, o] = de(!1), c = () => a ? !e : !0;
|
342
342
|
q(() => {
|
343
343
|
const d = () => {
|
344
|
-
|
344
|
+
o(window.scrollY > 0);
|
345
345
|
};
|
346
346
|
return window.addEventListener("scroll", d), () => window.removeEventListener("scroll", d);
|
347
347
|
}, []);
|
348
|
-
const u = `${r ||
|
349
|
-
return /* @__PURE__ */
|
348
|
+
const u = `${r || tn}px`;
|
349
|
+
return /* @__PURE__ */ i("div", { style: { minHeight: u }, children: /* @__PURE__ */ i("div", { children: /* @__PURE__ */ _(
|
350
350
|
"div",
|
351
351
|
{
|
352
352
|
ref: n,
|
@@ -354,110 +354,110 @@ const Xt = "_headerContainer_1cubo_1", en = "_navigationTabList_1cubo_8", tn = "
|
|
354
354
|
[A.staticEnabled]: c()
|
355
355
|
}),
|
356
356
|
children: [
|
357
|
-
/* @__PURE__ */
|
358
|
-
/* @__PURE__ */
|
357
|
+
/* @__PURE__ */ i(D.Header, {}),
|
358
|
+
/* @__PURE__ */ i(D.Tabs, {}),
|
359
359
|
t
|
360
360
|
]
|
361
361
|
}
|
362
362
|
) }) });
|
363
363
|
};
|
364
|
-
D.Header = ({ children: e }) => /* @__PURE__ */
|
365
|
-
D.Tabs = ({ children: e }) => /* @__PURE__ */
|
366
|
-
const
|
367
|
-
sidebarContainer:
|
368
|
-
},
|
369
|
-
logoLink:
|
370
|
-
},
|
371
|
-
link:
|
372
|
-
active:
|
373
|
-
},
|
374
|
-
|
364
|
+
D.Header = ({ children: e }) => /* @__PURE__ */ i("div", { className: A.headerContainer, children: e });
|
365
|
+
D.Tabs = ({ children: e }) => /* @__PURE__ */ i("div", { className: "flex justify-between gap-2 nowrap", children: e });
|
366
|
+
const nn = "_sidebarContainer_bmdti_1", rn = {
|
367
|
+
sidebarContainer: nn
|
368
|
+
}, an = "_logoLink_1baxb_1", on = {
|
369
|
+
logoLink: an
|
370
|
+
}, sn = ({ src: e, href: t = "/", ariaLabel: n = "Home", alt: r = "Lokalise" }) => /* @__PURE__ */ i("a", { className: on.logoLink, href: t, "aria-label": n, children: /* @__PURE__ */ i("img", { src: e, alt: r }) }), cn = "_link_1weq1_1", ln = "_active_1weq1_18", ze = {
|
371
|
+
link: cn,
|
372
|
+
active: ln
|
373
|
+
}, un = ({ label: e, to: t, icon: n }) => /* @__PURE__ */ i(me, { placement: "right", tooltip: e, children: /* @__PURE__ */ i(
|
374
|
+
Xe,
|
375
375
|
{
|
376
|
-
className: R(
|
377
|
-
[
|
376
|
+
className: R(ze.link, {
|
377
|
+
[ze.active]: window.location.pathname.startsWith(t)
|
378
378
|
}),
|
379
379
|
href: t,
|
380
|
-
children: /* @__PURE__ */
|
380
|
+
children: /* @__PURE__ */ i(n, { size: "25px" })
|
381
381
|
}
|
382
|
-
) }),
|
383
|
-
dropdownButton:
|
384
|
-
dropdownButtonActive:
|
385
|
-
},
|
382
|
+
) }), dn = "_dropdownButton_hwh0c_1", mn = "_dropdownButtonActive_hwh0c_18", De = {
|
383
|
+
dropdownButton: dn,
|
384
|
+
dropdownButtonActive: mn
|
385
|
+
}, fn = ({ children: e, icon: t }) => /* @__PURE__ */ i(
|
386
386
|
fe,
|
387
387
|
{
|
388
|
-
menuButton: ({ opened: n }) => /* @__PURE__ */
|
388
|
+
menuButton: ({ opened: n }) => /* @__PURE__ */ i(me, { placement: "right", tooltip: "Help", children: /* @__PURE__ */ i(
|
389
389
|
"button",
|
390
390
|
{
|
391
391
|
type: "button",
|
392
|
-
className: R(
|
393
|
-
[
|
392
|
+
className: R(De.dropdownButton, {
|
393
|
+
[De.dropdownButtonActive]: n
|
394
394
|
}),
|
395
|
-
children: /* @__PURE__ */
|
395
|
+
children: /* @__PURE__ */ i(t, { size: "25px" })
|
396
396
|
}
|
397
397
|
) }),
|
398
|
-
children: /* @__PURE__ */
|
398
|
+
children: /* @__PURE__ */ i(he, { placement: "right-start", children: e })
|
399
399
|
}
|
400
|
-
),
|
401
|
-
iconContainer:
|
402
|
-
},
|
400
|
+
), hn = "_iconContainer_nz34m_1", gn = {
|
401
|
+
iconContainer: hn
|
402
|
+
}, ut = ({ className: e = "" }) => /* @__PURE__ */ i(
|
403
403
|
"div",
|
404
404
|
{
|
405
405
|
"aria-label": "Upgrade Icon",
|
406
406
|
className: R(
|
407
|
-
|
407
|
+
gn.iconContainer,
|
408
408
|
"flex-row",
|
409
409
|
"items-center",
|
410
410
|
"justify-center",
|
411
411
|
e
|
412
412
|
),
|
413
|
-
children: /* @__PURE__ */
|
413
|
+
children: /* @__PURE__ */ i(St, {})
|
414
414
|
}
|
415
|
-
),
|
416
|
-
menuContainer:
|
417
|
-
profileButton:
|
418
|
-
profileImage:
|
419
|
-
profileImageHighlight:
|
420
|
-
profileImageUpgradeIcon:
|
421
|
-
userIconWrapper:
|
422
|
-
},
|
415
|
+
), bn = "_menuContainer_wbu3u_5", pn = "_profileButton_wbu3u_16", _n = "_profileImage_wbu3u_29", vn = "_profileImageHighlight_wbu3u_37", Tn = "_profileImageUpgradeIcon_wbu3u_41", wn = "_userIconWrapper_wbu3u_47", P = {
|
416
|
+
menuContainer: bn,
|
417
|
+
profileButton: pn,
|
418
|
+
profileImage: _n,
|
419
|
+
profileImageHighlight: vn,
|
420
|
+
profileImageUpgradeIcon: Tn,
|
421
|
+
userIconWrapper: wn
|
422
|
+
}, dt = It({}), M = () => yt(dt), yn = ({ children: e }) => {
|
423
423
|
const {
|
424
424
|
currentTeam: t,
|
425
425
|
otherTeams: n,
|
426
426
|
showUpgradeCta: r,
|
427
427
|
showBillingButton: a,
|
428
|
-
allowTeamCreation:
|
428
|
+
allowTeamCreation: o,
|
429
429
|
isLimitedView: c,
|
430
430
|
isProviderAlpha: u,
|
431
431
|
canAccessTeamSettings: d,
|
432
432
|
isEndOfTrialActive: l,
|
433
433
|
isTeamSuspended: m
|
434
|
-
} =
|
435
|
-
return /* @__PURE__ */
|
434
|
+
} = M();
|
435
|
+
return /* @__PURE__ */ i(
|
436
436
|
fe,
|
437
437
|
{
|
438
|
-
menuButton: () => /* @__PURE__ */ _("button", { className:
|
439
|
-
t != null && t.logoUrl ? /* @__PURE__ */
|
438
|
+
menuButton: () => /* @__PURE__ */ _("button", { className: P.profileButton, "aria-label": "Profile menu", type: "button", children: [
|
439
|
+
t != null && t.logoUrl ? /* @__PURE__ */ i(
|
440
440
|
"img",
|
441
441
|
{
|
442
442
|
src: t.logoUrl,
|
443
|
-
className: R(
|
444
|
-
[
|
443
|
+
className: R(P.profileImage, {
|
444
|
+
[P.profileImageHighlight]: r
|
445
445
|
}),
|
446
446
|
alt: "Team Logo"
|
447
447
|
}
|
448
|
-
) : /* @__PURE__ */
|
448
|
+
) : /* @__PURE__ */ i(
|
449
449
|
"div",
|
450
450
|
{
|
451
|
-
className: R(
|
452
|
-
[
|
451
|
+
className: R(P.userIconWrapper, "flex-row", "align-center", "items-center", {
|
452
|
+
[P.profileImageHighlight]: r
|
453
453
|
}),
|
454
|
-
children: /* @__PURE__ */
|
454
|
+
children: /* @__PURE__ */ i(et, { size: "25px" })
|
455
455
|
}
|
456
456
|
),
|
457
|
-
r && /* @__PURE__ */
|
457
|
+
r && /* @__PURE__ */ i(ut, { className: P.profileImageUpgradeIcon })
|
458
458
|
] }),
|
459
|
-
children: /* @__PURE__ */
|
460
|
-
allowTeamCreation:
|
459
|
+
children: /* @__PURE__ */ i(he, { placement: "right-end", className: P.menuContainer, children: e({
|
460
|
+
allowTeamCreation: o,
|
461
461
|
otherTeams: n,
|
462
462
|
isLimitedView: c,
|
463
463
|
canAccessTeamSettings: d,
|
@@ -468,154 +468,154 @@ const on = "_sidebarContainer_bmdti_1", sn = {
|
|
468
468
|
}) })
|
469
469
|
}
|
470
470
|
);
|
471
|
-
},
|
471
|
+
}, mt = 0, In = 9999, Nn = [150, 151, 250, 251], kn = [152, 153, 252, 253], Sn = [154, 155, 157, 158, 254, 255, 258, 354, 355, 358], En = [156, 159, 160, 256, 259, 260], ft = 9998, _e = (e) => e === mt, ht = (e) => e === In, Mr = (e) => Nn.includes(e), Ur = (e) => kn.includes(e), Br = (e) => Sn.includes(e), $r = (e) => En.includes(e), zr = (e) => e > mt && e < ft, Dr = (e) => e === ft, Pn = /\n/, Fe = (e, t, n) => e.split(t).flatMap((r, a) => a !== 0 ? [Nt(n, { key: Math.random().toString(32).slice(0, 10) }), r] : r), Cn = (e, t, n) => typeof e == "string" ? Fe(e, t, n) : e.flatMap((r) => typeof r == "string" ? Fe(r, t, n) : r), Fr = (e) => Cn(e, Pn, /* @__PURE__ */ i("br", {})), Rn = /(\b(https?|):\/\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi, jn = (e) => e.match(Rn) ?? [], He = (e, t, n) => {
|
472
472
|
const r = e.split(t);
|
473
473
|
if (r.length === 1)
|
474
474
|
return e;
|
475
475
|
const a = [];
|
476
476
|
return r[0] !== "" && a.push(r[0]), r.shift(), r[r.length - 1] === "" && r.pop(), a.push(
|
477
|
-
/* @__PURE__ */
|
478
|
-
), a.push(r.join(t)), a.filter((
|
479
|
-
},
|
480
|
-
const t =
|
481
|
-
return t != null && t.length ? t.reduce((n, r, a) => typeof n == "string" ?
|
482
|
-
}, Hr = (e) => typeof e == "string" ?
|
477
|
+
/* @__PURE__ */ i("a", { href: t, target: "_blank", rel: "noreferrer noopener", children: t }, t + n)
|
478
|
+
), a.push(r.join(t)), a.filter((o) => o !== "");
|
479
|
+
}, Ge = (e) => {
|
480
|
+
const t = jn(e);
|
481
|
+
return t != null && t.length ? t.reduce((n, r, a) => typeof n == "string" ? He(n, r, a) : n.flatMap((o) => typeof o == "string" ? He(o, r, a) : o), e) : e;
|
482
|
+
}, Hr = (e) => typeof e == "string" ? Ge(e) : e.flatMap((t) => typeof t == "string" ? Ge(t) : t, e), Gr = (e, t = "PP") => at(e, t), Wr = (e, t, n = "PP") => at(Ct(e, t), n), Jr = (e) => {
|
483
483
|
q(e, []);
|
484
|
-
},
|
484
|
+
}, An = ({ children: e, config: t }) => {
|
485
485
|
const {
|
486
486
|
teams: n,
|
487
487
|
currentTeamId: r,
|
488
488
|
planId: a,
|
489
|
-
isLimitedView:
|
489
|
+
isLimitedView: o,
|
490
490
|
isTeamSuspended: c,
|
491
491
|
canAccessTeamSettings: u,
|
492
492
|
isEndOfTrialActive: d
|
493
|
-
} = t, l = n.find((h) => h.id === r), m = n.filter((h) => h.id !== r), b = (l == null ? void 0 : l.role) ?? "", T = ["biller", "owner"].includes(b), w = _e(a) ||
|
493
|
+
} = t, l = n.find((h) => h.id === r), m = n.filter((h) => h.id !== r), b = (l == null ? void 0 : l.role) ?? "", T = ["biller", "owner"].includes(b), w = _e(a) || ht(a), S = {
|
494
494
|
...t,
|
495
495
|
currentTeam: l,
|
496
496
|
otherTeams: m,
|
497
497
|
canChangeBilling: T,
|
498
498
|
isOnFreeOrTrialPlan: w,
|
499
|
-
showUpgradeCta: !
|
500
|
-
showBillingButton: !
|
501
|
-
allowTeamCreation: !
|
499
|
+
showUpgradeCta: !o && w && T && !c,
|
500
|
+
showBillingButton: !o && u && T,
|
501
|
+
allowTeamCreation: !o && !d
|
502
502
|
};
|
503
|
-
return /* @__PURE__ */
|
504
|
-
},
|
505
|
-
container:
|
506
|
-
profileEmail:
|
507
|
-
},
|
503
|
+
return /* @__PURE__ */ i(dt.Provider, { value: S, children: e });
|
504
|
+
}, Ln = ({ config: e, children: t }) => /* @__PURE__ */ i(An, { config: e, children: /* @__PURE__ */ i(yn, { children: t }) }), On = "_container_q5pot_1", xn = "_profileEmail_q5pot_5", We = {
|
505
|
+
container: On,
|
506
|
+
profileEmail: xn
|
507
|
+
}, qn = ({
|
508
508
|
href: e,
|
509
509
|
onClick: t,
|
510
510
|
userEmail: n,
|
511
511
|
hideBottomDivider: r
|
512
512
|
}) => {
|
513
|
-
const { isEndOfTrialActive: a, isTeamSuspended:
|
514
|
-
return a ||
|
515
|
-
/* @__PURE__ */
|
516
|
-
|
513
|
+
const { isEndOfTrialActive: a, isTeamSuspended: o } = M();
|
514
|
+
return a || o ? null : /* @__PURE__ */ _(Ve, { children: [
|
515
|
+
/* @__PURE__ */ i(
|
516
|
+
H,
|
517
517
|
{
|
518
518
|
href: e,
|
519
519
|
onClick: () => {
|
520
520
|
t == null || t();
|
521
521
|
},
|
522
|
-
children: /* @__PURE__ */ _("div", { className: `flex-col ${
|
523
|
-
/* @__PURE__ */
|
524
|
-
/* @__PURE__ */
|
522
|
+
children: /* @__PURE__ */ _("div", { className: `flex-col ${We.container}`, children: [
|
523
|
+
/* @__PURE__ */ i("span", { children: "Profile Settings" }),
|
524
|
+
/* @__PURE__ */ i("span", { className: We.profileEmail, children: n })
|
525
525
|
] })
|
526
526
|
}
|
527
527
|
),
|
528
|
-
!r && /* @__PURE__ */
|
528
|
+
!r && /* @__PURE__ */ i(tt, {})
|
529
529
|
] });
|
530
|
-
},
|
531
|
-
wrapper:
|
532
|
-
profileImage:
|
533
|
-
teamName:
|
534
|
-
planLabel:
|
535
|
-
membership:
|
536
|
-
defaultProfileImage:
|
537
|
-
},
|
538
|
-
const { currentTeam: r, planId: a } =
|
539
|
-
if (!
|
530
|
+
}, Mn = "_wrapper_15d85_1", Un = "_profileImage_15d85_14", Bn = "_teamName_15d85_22", $n = "_planLabel_15d85_29", zn = "_membership_15d85_38", Dn = "_defaultProfileImage_15d85_44", j = {
|
531
|
+
wrapper: Mn,
|
532
|
+
profileImage: Un,
|
533
|
+
teamName: Bn,
|
534
|
+
planLabel: $n,
|
535
|
+
membership: zn,
|
536
|
+
defaultProfileImage: Dn
|
537
|
+
}, gt = ({ team: e, onClick: t, hidePlanLabel: n }) => {
|
538
|
+
const { currentTeam: r, planId: a } = M(), o = e || r;
|
539
|
+
if (!o)
|
540
540
|
return null;
|
541
|
-
const c = _e(a) ? "Free" :
|
541
|
+
const c = _e(a) ? "Free" : ht(a) ? "Trial" : void 0;
|
542
542
|
return /* @__PURE__ */ _(
|
543
|
-
t ?
|
543
|
+
t ? H : "div",
|
544
544
|
{
|
545
545
|
className: `flex-row gap-2 flex-nowrap items-center ${j.wrapper}`,
|
546
|
-
...t && { onClick: () => t(
|
546
|
+
...t && { onClick: () => t(o) },
|
547
547
|
children: [
|
548
|
-
|
548
|
+
o.logoUrl ? /* @__PURE__ */ i("img", { className: j.profileImage, src: o.logoUrl, alt: "Team Logo" }) : /* @__PURE__ */ i("span", { className: `flex-row justify-center items-center ${j.defaultProfileImage}`, children: /* @__PURE__ */ i(et, { size: "25px" }) }),
|
549
549
|
/* @__PURE__ */ _("div", { className: "flex-col items-start", children: [
|
550
550
|
/* @__PURE__ */ _("div", { className: "flex-row items-center flex-nowrap gap-2", children: [
|
551
|
-
/* @__PURE__ */
|
552
|
-
c && !n && /* @__PURE__ */
|
551
|
+
/* @__PURE__ */ i("span", { title: o.name, className: j.teamName, children: o.name }),
|
552
|
+
c && !n && /* @__PURE__ */ i("span", { className: `flex-row justify-center items-center ${j.planLabel}`, children: c })
|
553
553
|
] }),
|
554
|
-
/* @__PURE__ */
|
554
|
+
/* @__PURE__ */ i("span", { className: j.membership, children: o.role })
|
555
555
|
] })
|
556
556
|
]
|
557
557
|
}
|
558
558
|
);
|
559
|
-
},
|
560
|
-
teamsContainer:
|
561
|
-
},
|
562
|
-
const { otherTeams: t } =
|
563
|
-
return t.length === 0 ? null : /* @__PURE__ */
|
564
|
-
},
|
565
|
-
container:
|
566
|
-
planCta:
|
567
|
-
upgradeIconWrapper:
|
568
|
-
},
|
569
|
-
const { planId: t, trialDaysLeft: n, showUpgradeCta: r } =
|
559
|
+
}, Fn = "_teamsContainer_1t68g_1", Hn = {
|
560
|
+
teamsContainer: Fn
|
561
|
+
}, Gn = ({ onSwitchTeam: e }) => {
|
562
|
+
const { otherTeams: t } = M();
|
563
|
+
return t.length === 0 ? null : /* @__PURE__ */ i("div", { className: `flex-col items-stretch ${Hn.teamsContainer}`, children: t.map((n) => /* @__PURE__ */ i(gt, { team: n, onClick: e, hidePlanLabel: !0 }, n.id)) });
|
564
|
+
}, Wn = "_container_1u995_1", Jn = "_planCta_1u995_15", Kn = "_upgradeIconWrapper_1u995_19", ce = {
|
565
|
+
container: Wn,
|
566
|
+
planCta: Jn,
|
567
|
+
upgradeIconWrapper: Kn
|
568
|
+
}, Qn = ({ upgradeOptionHref: e }) => {
|
569
|
+
const { planId: t, trialDaysLeft: n, showUpgradeCta: r } = M();
|
570
570
|
if (!r)
|
571
571
|
return null;
|
572
572
|
const c = _e(t) ? "Your team is currently on the Free plan" : `Free trial ends in ${n} ${n === 1 ? "day" : "days"}`;
|
573
|
-
return /* @__PURE__ */ _(
|
574
|
-
/* @__PURE__ */
|
575
|
-
/* @__PURE__ */ _("div", { className: `flex-row items-center gap-1 ${
|
576
|
-
/* @__PURE__ */
|
577
|
-
/* @__PURE__ */
|
573
|
+
return /* @__PURE__ */ _(H, { href: e, className: `flex-col gap-1 items-start ${ce.container}`, children: [
|
574
|
+
/* @__PURE__ */ i("span", { className: ce.planCta, children: c }),
|
575
|
+
/* @__PURE__ */ _("div", { className: `flex-row items-center gap-1 ${ce.upgradeIconWrapper}`, children: [
|
576
|
+
/* @__PURE__ */ i(ut, {}),
|
577
|
+
/* @__PURE__ */ i("span", { children: "See upgrade options" })
|
578
578
|
] })
|
579
579
|
] });
|
580
|
-
}, I = ({ children: e, ...t }) => /* @__PURE__ */
|
581
|
-
I.Top = ({ children: e }) => /* @__PURE__ */
|
582
|
-
I.Bottom = ({ children: e }) => /* @__PURE__ */
|
583
|
-
I.Avatar =
|
584
|
-
I.IconLink =
|
585
|
-
I.Menu =
|
586
|
-
I.ProfileMenu =
|
587
|
-
I.TeamSwitch =
|
588
|
-
I.TeamMenuItem =
|
589
|
-
I.UpgradeMenuItem =
|
590
|
-
I.ProfileSettingsMenuItem =
|
591
|
-
const
|
592
|
-
breadcrumbsItem:
|
593
|
-
breadcrumbs:
|
594
|
-
},
|
595
|
-
/* @__PURE__ */
|
596
|
-
n < e.length - 1 && /* @__PURE__ */
|
597
|
-
] }, `${t.link}-${t.name}`)) }),
|
598
|
-
!!n && t.some((r) => r.visible) && /* @__PURE__ */
|
599
|
-
t.filter(({ visible: r }) => r).map(({ link: r, label: a, onClick:
|
600
|
-
] }, t[0].label)) }),
|
601
|
-
badge:
|
602
|
-
tag:
|
603
|
-
withNavLinkStyle:
|
604
|
-
disabled:
|
605
|
-
projectNavigationItem:
|
606
|
-
projectNavigationItemDisabled:
|
580
|
+
}, I = ({ children: e, ...t }) => /* @__PURE__ */ i("nav", { ...t, className: rn.sidebarContainer, children: e });
|
581
|
+
I.Top = ({ children: e }) => /* @__PURE__ */ i("div", { children: e });
|
582
|
+
I.Bottom = ({ children: e }) => /* @__PURE__ */ i("div", { children: e });
|
583
|
+
I.Avatar = sn;
|
584
|
+
I.IconLink = un;
|
585
|
+
I.Menu = fn;
|
586
|
+
I.ProfileMenu = Ln;
|
587
|
+
I.TeamSwitch = Gn;
|
588
|
+
I.TeamMenuItem = gt;
|
589
|
+
I.UpgradeMenuItem = Qn;
|
590
|
+
I.ProfileSettingsMenuItem = qn;
|
591
|
+
const Vn = "_breadcrumbsItem_1hm6a_1", Yn = "_breadcrumbs_1hm6a_1", Je = {
|
592
|
+
breadcrumbsItem: Vn,
|
593
|
+
breadcrumbs: Yn
|
594
|
+
}, Kr = ({ items: e }) => /* @__PURE__ */ i("nav", { "aria-label": "breadcrumb", className: Je.breadcrumbs, children: e.map((t, n) => /* @__PURE__ */ _(Ze, { children: [
|
595
|
+
/* @__PURE__ */ i(Xe, { className: Je.breadcrumbsItem, href: t.link, rel: "noreferrer", children: t.name }),
|
596
|
+
n < e.length - 1 && /* @__PURE__ */ i("span", { children: " — " })
|
597
|
+
] }, `${t.link}-${t.name}`)) }), Zn = ({ items: e }) => /* @__PURE__ */ i(Ve, { children: e.map((t, n) => /* @__PURE__ */ _(Ze, { children: [
|
598
|
+
!!n && t.some((r) => r.visible) && /* @__PURE__ */ i(tt, {}),
|
599
|
+
t.filter(({ visible: r }) => r).map(({ link: r, label: a, onClick: o }) => /* @__PURE__ */ i(H, { href: r || "#", "aria-label": a, onClick: o, children: a }, a))
|
600
|
+
] }, t[0].label)) }), Xn = "_badge_1pc1v_1", er = "_tag_1pc1v_15", tr = "_withNavLinkStyle_1pc1v_42 _withLinkStyle_1pc1v_21", nr = "_disabled_1pc1v_57", rr = "_projectNavigationItem_1pc1v_61", ar = "_projectNavigationItemDisabled_1pc1v_67", C = {
|
601
|
+
badge: Xn,
|
602
|
+
tag: er,
|
603
|
+
withNavLinkStyle: tr,
|
604
|
+
disabled: nr,
|
605
|
+
projectNavigationItem: rr,
|
606
|
+
projectNavigationItemDisabled: ar
|
607
607
|
}, Ke = ({ label: e, badge: t, novel: n }) => /* @__PURE__ */ _("div", { className: "flex gap-1", children: [
|
608
608
|
/* @__PURE__ */ _("div", { children: [
|
609
|
-
/* @__PURE__ */
|
610
|
-
!!t && /* @__PURE__ */
|
609
|
+
/* @__PURE__ */ i("span", { children: e }),
|
610
|
+
!!t && /* @__PURE__ */ i("div", { className: C.badge, "aria-label": `${t} items requiring attention`, children: t > 9 ? "9+" : t })
|
611
611
|
] }),
|
612
|
-
!!n && /* @__PURE__ */
|
613
|
-
] }),
|
614
|
-
({ label: e, href: t = "", disabled: n = !1, badge: r, onClick: a, novel:
|
612
|
+
!!n && /* @__PURE__ */ i(Et, { className: C.tag, children: n })
|
613
|
+
] }), le = kt(
|
614
|
+
({ label: e, href: t = "", disabled: n = !1, badge: r, onClick: a, novel: o }, c) => /* @__PURE__ */ i(me, { tooltip: "You do not have access to this function", show: n, children: /* @__PURE__ */ i(
|
615
615
|
"div",
|
616
616
|
{
|
617
617
|
className: n ? C.projectNavigationItemDisabled : C.projectNavigationItem,
|
618
|
-
children: a || n || !t ? /* @__PURE__ */
|
618
|
+
children: a || n || !t ? /* @__PURE__ */ i(
|
619
619
|
"button",
|
620
620
|
{
|
621
621
|
type: "button",
|
@@ -625,38 +625,38 @@ const Xn = "_breadcrumbsItem_1hm6a_1", er = "_breadcrumbs_1hm6a_1", We = {
|
|
625
625
|
}),
|
626
626
|
disabled: n,
|
627
627
|
onClick: a,
|
628
|
-
children: /* @__PURE__ */
|
628
|
+
children: /* @__PURE__ */ i(Ke, { label: e, badge: r, novel: o })
|
629
629
|
}
|
630
|
-
) : /* @__PURE__ */
|
630
|
+
) : /* @__PURE__ */ i("a", { href: t, className: C.withNavLinkStyle, children: /* @__PURE__ */ i(Ke, { label: e, badge: r, novel: o }) })
|
631
631
|
}
|
632
632
|
) })
|
633
633
|
);
|
634
|
-
|
635
|
-
const
|
636
|
-
var r, a,
|
637
|
-
return n.dropdown ? /* @__PURE__ */
|
634
|
+
le.displayName = "NavigationTabsItem";
|
635
|
+
const ir = (e) => (e == null ? void 0 : e.some((t) => t.some((n) => n.visible))) ?? !1, or = (e) => e.visible && (!e.dropdown || ir(e.dropdown)), Qr = ({ navigation: e, activeItem: t }) => /* @__PURE__ */ i("nav", { "aria-label": "Project", children: /* @__PURE__ */ i("ul", { className: A.navigationTabList, "aria-orientation": "horizontal", children: e.filter(or).map((n) => {
|
636
|
+
var r, a, o;
|
637
|
+
return n.dropdown ? /* @__PURE__ */ i(
|
638
638
|
"li",
|
639
639
|
{
|
640
640
|
className: A.navigationTab,
|
641
641
|
"data-testid": n.key,
|
642
642
|
"aria-selected": (r = n.isActive) == null ? void 0 : r.call(n, t),
|
643
|
-
children: /* @__PURE__ */
|
643
|
+
children: /* @__PURE__ */ i(
|
644
644
|
fe,
|
645
645
|
{
|
646
|
-
menuButton: ({ opened: c }) => /* @__PURE__ */
|
647
|
-
children: /* @__PURE__ */
|
646
|
+
menuButton: ({ opened: c }) => /* @__PURE__ */ i(le, { label: n.label, disabled: n.disabled, active: c }),
|
647
|
+
children: /* @__PURE__ */ i(he, { children: /* @__PURE__ */ i(Zn, { items: n.dropdown }) })
|
648
648
|
}
|
649
649
|
)
|
650
650
|
},
|
651
651
|
n.key
|
652
|
-
) : /* @__PURE__ */
|
652
|
+
) : /* @__PURE__ */ i(
|
653
653
|
"li",
|
654
654
|
{
|
655
655
|
className: A.navigationTab,
|
656
656
|
"data-testid": n.key,
|
657
657
|
"aria-selected": (a = n.isActive) == null ? void 0 : a.call(n, t),
|
658
|
-
children: /* @__PURE__ */
|
659
|
-
|
658
|
+
children: /* @__PURE__ */ i(
|
659
|
+
le,
|
660
660
|
{
|
661
661
|
label: n.label,
|
662
662
|
href: n.link,
|
@@ -664,16 +664,60 @@ const cr = (e) => (e == null ? void 0 : e.some((t) => t.some((n) => n.visible)))
|
|
664
664
|
disabled: n.disabled,
|
665
665
|
badge: n.badge,
|
666
666
|
novel: n.novel,
|
667
|
-
active: (
|
667
|
+
active: (o = n.isActive) == null ? void 0 : o.call(n, t)
|
668
668
|
}
|
669
669
|
)
|
670
670
|
},
|
671
671
|
n.key
|
672
672
|
);
|
673
|
-
}) }) }),
|
673
|
+
}) }) }), sr = s.object({
|
674
|
+
lang_id: s.number(),
|
675
|
+
lang_iso: s.string(),
|
676
|
+
lang_name: s.string(),
|
677
|
+
is_writable: s.union([s.literal(0), s.literal(1)])
|
678
|
+
}), cr = s.object({
|
679
|
+
user_id: s.number(),
|
680
|
+
email: s.string().email(),
|
681
|
+
fullname: s.string(),
|
682
|
+
created_at: s.string(),
|
683
|
+
created_at_timestamp: s.number(),
|
684
|
+
admin_rights: s.array(s.string()),
|
685
|
+
languages: s.array(sr),
|
686
|
+
// TODO nic: Do I need this?
|
687
|
+
is_admin: s.boolean(),
|
688
|
+
is_reviewer: s.boolean()
|
689
|
+
}), lr = s.object({
|
690
|
+
project_id: s.string(),
|
691
|
+
contributors: s.array(cr)
|
692
|
+
}), ur = rt({
|
693
|
+
description: "Get the details of a project contributor",
|
694
|
+
requestPathParamsSchema: s.object({ projectId: s.string(), contributorId: s.number() }),
|
695
|
+
pathResolver: ({ projectId: e, contributorId: t }) => `/projects/${e}/contributors/${t}`,
|
696
|
+
successResponseBodySchema: lr
|
697
|
+
}), bt = s.union([
|
698
|
+
s.literal("owner"),
|
699
|
+
s.literal("admin"),
|
700
|
+
s.literal("biller"),
|
701
|
+
s.literal("member")
|
702
|
+
]), dr = s.object({
|
703
|
+
user_id: s.number(),
|
704
|
+
email: s.string().email(),
|
705
|
+
fullname: s.string(),
|
706
|
+
created_at: s.string(),
|
707
|
+
created_at_timestamp: s.number(),
|
708
|
+
role: bt
|
709
|
+
}), mr = s.object({
|
710
|
+
team_id: s.number(),
|
711
|
+
team_user: dr
|
712
|
+
}), fr = rt({
|
713
|
+
description: "Get the details of a team user",
|
714
|
+
requestPathParamsSchema: s.object({ teamId: s.number(), userId: s.number() }),
|
715
|
+
pathResolver: ({ teamId: e, userId: t }) => `/teams/${e}/users/${t}`,
|
716
|
+
successResponseBodySchema: mr
|
717
|
+
}), hr = s.object({
|
674
718
|
accessToken: s.string(),
|
675
719
|
refreshToken: s.string()
|
676
|
-
}), ve =
|
720
|
+
}), ve = Pt({
|
677
721
|
description: "Takes a teamId and returns a JWT token access and refresh token for the user",
|
678
722
|
method: "post",
|
679
723
|
requestPathParamsSchema: s.object({ teamId: s.number() }),
|
@@ -683,22 +727,28 @@ const cr = (e) => (e == null ? void 0 : e.some((t) => t.some((n) => n.visible)))
|
|
683
727
|
"x-csrf-token": s.string().optional()
|
684
728
|
}),
|
685
729
|
requestBodySchema: s.undefined(),
|
686
|
-
successResponseBodySchema:
|
687
|
-
}),
|
730
|
+
successResponseBodySchema: hr
|
731
|
+
}), gr = {
|
732
|
+
teamUserKey: (e, t) => ["GetTeamUsers", e, t]
|
733
|
+
}, br = (e, t) => be({
|
734
|
+
...t,
|
735
|
+
queryFn: ({ queryKey: [n, r, a] }) => nt(e, fr, { pathParams: { teamId: r, userId: a } })
|
736
|
+
}), pr = {
|
688
737
|
teamKey: (e) => ["getUserToken", e]
|
689
|
-
},
|
690
|
-
...
|
691
|
-
queryFn: ({ queryKey: [
|
692
|
-
pathParams: { teamId:
|
738
|
+
}, _r = (e, t) => be({
|
739
|
+
...t,
|
740
|
+
queryFn: ({ queryKey: [n, r] }) => ge(e, ve, {
|
741
|
+
pathParams: { teamId: r },
|
693
742
|
headers: {}
|
694
|
-
})
|
695
|
-
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
|
701
|
-
|
743
|
+
})
|
744
|
+
}), vr = {
|
745
|
+
projectUserKey: (e, t) => ["RetrieveContributor", e, t]
|
746
|
+
}, Tr = (e, t) => be({
|
747
|
+
...t,
|
748
|
+
queryFn: ({ queryKey: [n, r, a] }) => nt(e, ur, {
|
749
|
+
pathParams: { projectId: r, contributorId: a }
|
750
|
+
})
|
751
|
+
}), wr = s.object({
|
702
752
|
userId: s.number(),
|
703
753
|
userUuid: s.string(),
|
704
754
|
teamId: s.number(),
|
@@ -712,131 +762,71 @@ const cr = (e) => (e == null ? void 0 : e.some((t) => t.some((n) => n.visible)))
|
|
712
762
|
isFullyAuthenticated: s.boolean(),
|
713
763
|
exp: s.number()
|
714
764
|
});
|
715
|
-
function
|
765
|
+
function G(e) {
|
716
766
|
try {
|
717
767
|
const t = e.split(".")[1], n = atob(t);
|
718
|
-
return
|
768
|
+
return wr.parse(JSON.parse(n));
|
719
769
|
} catch {
|
720
770
|
return;
|
721
771
|
}
|
722
772
|
}
|
723
|
-
const
|
773
|
+
const F = class F extends CustomEvent {
|
724
774
|
constructor(t) {
|
725
|
-
super(
|
726
|
-
detail: { token: t, payload:
|
775
|
+
super(F.eventName, {
|
776
|
+
detail: { token: t, payload: G(t.accessToken) }
|
727
777
|
});
|
728
778
|
}
|
729
779
|
};
|
730
|
-
|
731
|
-
let L =
|
732
|
-
const Vr =
|
780
|
+
Ne(F, "eventName", "new-jwt-issued");
|
781
|
+
let L = F;
|
782
|
+
const Vr = pr;
|
733
783
|
function Yr(e, t) {
|
734
|
-
const n =
|
784
|
+
const n = _r(e, t), r = Ye();
|
735
785
|
return q(() => {
|
736
786
|
n.data && n.data.accessToken !== r.current && (window.dispatchEvent(new L(n.data)), r.current = n.data.accessToken);
|
737
787
|
}, [n.data]), n;
|
738
788
|
}
|
739
|
-
function
|
740
|
-
const e =
|
789
|
+
function Te() {
|
790
|
+
const e = ue(document.cookie, "accessToken"), t = ue(document.cookie, "refreshToken");
|
741
791
|
return !e || !t ? Promise.resolve(void 0) : Promise.resolve({ accessToken: e, refreshToken: t });
|
742
792
|
}
|
743
|
-
function
|
744
|
-
return Promise.resolve(
|
793
|
+
function yr() {
|
794
|
+
return Promise.resolve(ue(document.cookie, "csrf_token"));
|
745
795
|
}
|
746
|
-
function
|
796
|
+
function ue(e, t) {
|
747
797
|
var n, r;
|
748
798
|
return (r = (n = e.split(";").find((a) => a.trim().startsWith(`${t}=`))) == null ? void 0 : n.trim()) == null ? void 0 : r.substring(t.length + 1);
|
749
799
|
}
|
750
|
-
function
|
800
|
+
function pt() {
|
751
801
|
const [e, t] = de();
|
752
802
|
return q(() => {
|
753
803
|
let n = !1;
|
754
804
|
const r = (a) => {
|
755
805
|
t(a.detail.payload), n = !0;
|
756
806
|
};
|
757
|
-
return
|
807
|
+
return Te().then((a) => a && G(a.accessToken)).then((a) => {
|
758
808
|
n || t(a);
|
759
809
|
}), window.addEventListener(L.eventName, r), () => {
|
760
810
|
window.removeEventListener(L.eventName, r);
|
761
811
|
};
|
762
812
|
}, []), e;
|
763
813
|
}
|
764
|
-
const
|
765
|
-
user_id: s.number(),
|
766
|
-
email: s.string().email(),
|
767
|
-
fullname: s.string(),
|
768
|
-
created_at: s.string(),
|
769
|
-
created_at_timestamp: s.number(),
|
770
|
-
role: bt
|
771
|
-
}), gr = s.object({
|
772
|
-
team_id: s.number(),
|
773
|
-
team_user: hr
|
774
|
-
}), br = nt({
|
775
|
-
description: "Get the details of a team user",
|
776
|
-
requestPathParamsSchema: s.object({ teamId: s.number(), userId: s.number() }),
|
777
|
-
pathResolver: ({ teamId: e, userId: t }) => `/teams/${e}/users/${t}`,
|
778
|
-
successResponseBodySchema: gr
|
779
|
-
}), vt = {
|
780
|
-
teamUserKey: (e, t) => ["GetTeamUsers", e, t]
|
781
|
-
}, pr = (e, t, n, r) => be({
|
782
|
-
...r,
|
783
|
-
queryKey: vt.teamUserKey(t, n),
|
784
|
-
queryFn: ({ queryKey: [a, i, c] }) => tt(e, br, { pathParams: { teamId: i, userId: c } })
|
785
|
-
}), Zr = vt;
|
814
|
+
const Zr = gr;
|
786
815
|
function Xr(e) {
|
787
|
-
const t =
|
788
|
-
return
|
789
|
-
enabled: t !== void 0
|
790
|
-
});
|
816
|
+
const t = pt();
|
817
|
+
return br(e, (t == null ? void 0 : t.teamId) ?? 0, (t == null ? void 0 : t.userId) ?? 0);
|
791
818
|
}
|
792
|
-
const
|
793
|
-
lang_id: s.number(),
|
794
|
-
lang_iso: s.string(),
|
795
|
-
lang_name: s.string(),
|
796
|
-
is_writable: s.union([s.literal(0), s.literal(1)])
|
797
|
-
}), vr = s.object({
|
798
|
-
user_id: s.number(),
|
799
|
-
email: s.string().email(),
|
800
|
-
fullname: s.string(),
|
801
|
-
created_at: s.string(),
|
802
|
-
created_at_timestamp: s.number(),
|
803
|
-
admin_rights: s.array(s.string()),
|
804
|
-
languages: s.array(_r),
|
805
|
-
// TODO nic: Do I need this?
|
806
|
-
is_admin: s.boolean(),
|
807
|
-
is_reviewer: s.boolean()
|
808
|
-
}), Tr = s.object({
|
809
|
-
project_id: s.string(),
|
810
|
-
contributors: s.array(vr)
|
811
|
-
}), wr = nt({
|
812
|
-
description: "Get the details of a project contributor",
|
813
|
-
requestPathParamsSchema: s.object({ projectId: s.string(), contributorId: s.number() }),
|
814
|
-
pathResolver: ({ projectId: e, contributorId: t }) => `/projects/${e}/contributors/${t}`,
|
815
|
-
successResponseBodySchema: Tr
|
816
|
-
}), Tt = {
|
817
|
-
projectUserKey: (e, t) => ["RetrieveContributor", e, t]
|
818
|
-
}, yr = (e, t, n, r) => be({
|
819
|
-
...r,
|
820
|
-
queryKey: Tt.projectUserKey(n, t),
|
821
|
-
queryFn: ({ queryKey: [a, i, c] }) => tt(e, wr, {
|
822
|
-
pathParams: { projectId: i, contributorId: c }
|
823
|
-
})
|
824
|
-
}), ea = Tt;
|
819
|
+
const ea = vr;
|
825
820
|
function ta(e, t) {
|
826
|
-
const n =
|
827
|
-
return
|
828
|
-
|
829
|
-
|
830
|
-
|
831
|
-
|
832
|
-
const t = e.headers.get("Cookie");
|
833
|
-
if (!t)
|
834
|
-
return Promise.resolve(void 0);
|
835
|
-
const n = F(t, "accessToken");
|
836
|
-
if (!n)
|
821
|
+
const n = pt();
|
822
|
+
return Tr(e, (n == null ? void 0 : n.userId) ?? 0);
|
823
|
+
}
|
824
|
+
async function na() {
|
825
|
+
const e = await Te();
|
826
|
+
if (!e)
|
837
827
|
return Promise.resolve(void 0);
|
838
|
-
const
|
839
|
-
return
|
828
|
+
const t = G(e.accessToken);
|
829
|
+
return t ? { ...e, payload: t } : Promise.resolve(void 0);
|
840
830
|
}
|
841
831
|
function z(e) {
|
842
832
|
return { Authorization: `Bearer ${e}` };
|
@@ -844,20 +834,20 @@ function z(e) {
|
|
844
834
|
function Ir(e, t) {
|
845
835
|
return (n) => async (r, a) => {
|
846
836
|
var u;
|
847
|
-
const
|
848
|
-
if (
|
837
|
+
const o = await t.getCachedJwtToken();
|
838
|
+
if (o === void 0)
|
849
839
|
return n(r, a);
|
850
840
|
const c = await n(r, {
|
851
841
|
...a,
|
852
|
-
headers: { ...a.headers, ...z(
|
842
|
+
headers: { ...a.headers, ...z(o.accessToken) }
|
853
843
|
});
|
854
|
-
if (
|
855
|
-
const d =
|
844
|
+
if (o && (c.status === 401 || c.status === 403)) {
|
845
|
+
const d = G(o.accessToken);
|
856
846
|
if (!d)
|
857
847
|
return c;
|
858
848
|
const l = await ge(e, ve, {
|
859
849
|
pathParams: { teamId: d.teamId },
|
860
|
-
headers: z(
|
850
|
+
headers: z(o.refreshToken)
|
861
851
|
});
|
862
852
|
return await ((u = t.onNewJwtTokenIssued) == null ? void 0 : u.call(t, l)), n(r, {
|
863
853
|
...a,
|
@@ -895,19 +885,19 @@ function kr(e, t) {
|
|
895
885
|
const ra = {
|
896
886
|
wretch: {
|
897
887
|
lokaliseAuth(e = {}) {
|
898
|
-
return this.addon(Nr).lokaliseAuth(
|
888
|
+
return this.addon(Nr).lokaliseAuth(Qe(e));
|
899
889
|
},
|
900
890
|
promoteClassicSession(e) {
|
901
|
-
const t =
|
891
|
+
const t = Qe(e);
|
902
892
|
return this.middlewares([kr(this, t)]);
|
903
893
|
}
|
904
894
|
}
|
905
895
|
};
|
906
|
-
function
|
896
|
+
function Qe(e) {
|
907
897
|
return {
|
908
898
|
...e,
|
909
|
-
getCachedJwtToken: e.getCachedJwtToken ??
|
910
|
-
getCsrfToken: "getCsrfToken" in e ? e.getCsrfToken :
|
899
|
+
getCachedJwtToken: e.getCachedJwtToken ?? Te,
|
900
|
+
getCsrfToken: "getCsrfToken" in e ? e.getCsrfToken : yr,
|
911
901
|
onNewJwtTokenIssued: (t) => {
|
912
902
|
var n;
|
913
903
|
return window.dispatchEvent(new L(t)), ((n = e.onNewJwtTokenIssued) == null ? void 0 : n.call(e, t)) ?? Promise.resolve();
|
@@ -915,21 +905,21 @@ function Je(e) {
|
|
915
905
|
};
|
916
906
|
}
|
917
907
|
export {
|
918
|
-
|
919
|
-
|
920
|
-
|
921
|
-
|
922
|
-
|
923
|
-
|
908
|
+
Kr as Breadcrumbs,
|
909
|
+
ft as ENTERPRISE_OPENSOURCE_PLAN_ID,
|
910
|
+
En as ENTERPRISE_PLAN_IDS,
|
911
|
+
kn as ESSENTIAL_PLAN_IDS,
|
912
|
+
mt as FREE_PLAN_ID,
|
913
|
+
hr as JWT_TOKEN_SCHEMA,
|
924
914
|
Nr as LokaliseAuthAddon,
|
925
915
|
ra as LokaliseAuthBrowserAddon,
|
926
916
|
D as NavigationPanel,
|
927
917
|
Qr as NavigationTabs,
|
928
|
-
|
929
|
-
|
918
|
+
Sn as PRO_PLAN_IDS,
|
919
|
+
Nn as START_PLAN_IDS,
|
930
920
|
I as Sidebar,
|
931
|
-
|
932
|
-
|
921
|
+
dr as TEAM_USER_SCHEMA,
|
922
|
+
In as TRIAL_PLAN_ID,
|
933
923
|
ea as authenticatedContributorKeys,
|
934
924
|
Zr as authenticatedUserKeys,
|
935
925
|
Fr as convertNewLineToBreakTag,
|
@@ -937,28 +927,28 @@ export {
|
|
937
927
|
Wr as formatDateTz,
|
938
928
|
na as getAuthenticatedSessionDetailFromRequest,
|
939
929
|
Vr as getPromotedClassicSessionJwtKey,
|
940
|
-
|
941
|
-
|
930
|
+
fr as getTeamUser,
|
931
|
+
gr as getTeamUsersQueryKey,
|
942
932
|
ve as getUserToken,
|
943
|
-
|
933
|
+
pr as getUserTokenKey,
|
944
934
|
Dr as isEnterpriseOpenSourcePlan,
|
945
935
|
$r as isEnterprisePlan,
|
946
|
-
|
936
|
+
Ur as isEssentialPlan,
|
947
937
|
_e as isFreePlan,
|
948
938
|
zr as isPaidPlan,
|
949
939
|
Br as isProPlan,
|
950
|
-
|
951
|
-
|
940
|
+
Mr as isStartPlan,
|
941
|
+
ht as isTrialPlan,
|
952
942
|
Hr as makeUrlClickable,
|
953
|
-
|
954
|
-
|
955
|
-
|
943
|
+
G as parseJwtTokenPayload,
|
944
|
+
ur as retrieveContributor,
|
945
|
+
vr as retrieveContributorKeys,
|
956
946
|
ta as useAuthenticatedProjectContributor,
|
957
|
-
|
947
|
+
pt as useAuthenticatedSessionPayload,
|
958
948
|
Xr as useAuthenticatedUser,
|
959
|
-
|
949
|
+
Jr as useEffectOnce,
|
960
950
|
Yr as useGetPromotedClassicSessionJwtQuery,
|
961
|
-
|
962
|
-
|
963
|
-
|
951
|
+
_r as useGetUserTokenQuery,
|
952
|
+
Tr as useRetrieveContributorQuery,
|
953
|
+
br as userGetTeamUsersQuery
|
964
954
|
};
|