@lokalise/harmony 1.16.0 → 1.17.0-exp-jwtheaderfactorysharedauth.1

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 (44) hide show
  1. package/README.md +31 -21
  2. package/dist/harmony.cjs +1 -1
  3. package/dist/harmony.mjs +915 -762
  4. package/dist/types/src/features/auth/core/headers/headerBuilder.d.ts +199 -0
  5. package/dist/types/src/features/auth/core/middleware/jwtAuthHeaderBuilderMiddleware.d.ts +10 -0
  6. package/dist/types/src/features/auth/core/middleware/publicApiHeaderBuilderMiddleware.d.ts +3 -0
  7. package/dist/types/src/features/auth/core/types/jwtTokenPayload.d.ts +2 -2
  8. package/dist/types/src/features/auth/core/types/jwtTokenPayload.fixture.d.ts +3 -3
  9. package/dist/types/src/features/auth/core/utils/makeAuthHeader.d.ts +2 -2
  10. package/dist/types/src/features/auth/errors/UnauthorizedError.d.ts +4 -0
  11. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedProjectContributor.d.ts +4 -1
  12. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedSessionPayload.d.ts +1 -1
  13. package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedUser.d.ts +4 -1
  14. package/dist/types/src/features/auth/frontend/hooks/useGetPromotedClassicSessionJwtQuery.d.ts +4 -2
  15. package/dist/types/src/features/auth/frontend/services/generateTokenFromClassicSession.d.ts +5 -0
  16. package/dist/types/src/features/auth/frontend/services/refreshExpiredToken.d.ts +6 -0
  17. package/dist/types/src/features/auth/frontend/utils/cookieTokenUtils.d.ts +2 -2
  18. package/dist/types/src/features/auth/node.d.ts +6 -4
  19. package/dist/types/src/features/publicApi/contributors.d.ts +19 -1
  20. package/dist/types/src/features/publicApi/hooks/useCreateProjectMutation.d.ts +4 -2
  21. package/dist/types/src/features/publicApi/hooks/useGetTeamUsersQuery.d.ts +4 -2
  22. package/dist/types/src/features/publicApi/hooks/useGetUserTokenQuery.d.ts +6 -5
  23. package/dist/types/src/features/publicApi/hooks/useListProjectLanguagesQuery.d.ts +10 -1
  24. package/dist/types/src/features/publicApi/hooks/useListProjectsQuery.d.ts +4 -2
  25. package/dist/types/src/features/publicApi/hooks/useRetrieveContributorQuery.d.ts +4 -2
  26. package/dist/types/src/features/publicApi/hooks/useRetrieveProjectQuery.d.ts +4 -2
  27. package/dist/types/src/features/publicApi/hooks/useUpdateProjectMutation.d.ts +4 -2
  28. package/dist/types/src/features/publicApi/languages.d.ts +19 -1
  29. package/dist/types/src/features/publicApi/node.d.ts +1 -1
  30. package/dist/types/src/features/publicApi/projects.d.ts +76 -4
  31. package/dist/types/src/features/publicApi/teamUsers.d.ts +22 -4
  32. package/dist/types/src/features/publicApi/types/contributorTypes.d.ts +20 -0
  33. package/dist/types/src/features/publicApi/types/projectTypes.d.ts +20 -0
  34. package/dist/types/src/features/publicApi/types/sharedTypes.d.ts +57 -0
  35. package/dist/types/src/features/publicApi/types/teamUserTypes.d.ts +20 -0
  36. package/dist/types/src/features/publicApi/types/userTokenTypes.d.ts +2 -2
  37. package/dist/types/src/features/publicApi/userToken.d.ts +1 -1
  38. package/package.json +1 -1
  39. package/dist/types/src/features/auth/core/middleware/jwtAuthMiddleware.d.ts +0 -17
  40. package/dist/types/src/features/auth/core/middleware/publicApiHeadersMiddleware.d.ts +0 -5
  41. package/dist/types/src/features/auth/frontend/middleware/clientSideJwtAuthMiddleware.d.ts +0 -9
  42. package/dist/types/src/features/auth/frontend/middleware/promoteClassicSessionToJwtMiddleware.d.ts +0 -14
  43. package/dist/types/src/features/auth/frontend/middleware/promoteClassicSessionToJwtMiddleware.test.d.ts +0 -1
  44. /package/dist/types/src/features/auth/core/{middleware/jwtAuthMiddleware.test.d.ts → headers/headerBuilder.test.d.ts} +0 -0
package/dist/harmony.mjs CHANGED
@@ -1,102 +1,102 @@
1
- var Kt = Object.defineProperty;
2
- var Qt = (e, t, n) => t in e ? Kt(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
- var Je = (e, t, n) => Qt(e, typeof t != "symbol" ? t + "" : t, n);
4
- import { jsx as a, jsxs as h, Fragment as Le } from "react/jsx-runtime";
5
- import * as H from "react";
6
- import { useRef as yt, useState as N, useCallback as ze, useEffect as J, useContext as Ct, createContext as wt, cloneElement as Yt, Fragment as St, forwardRef as Vt } from "react";
7
- import { Tooltip as q, Link as L, Menu as oe, MenuList as ae, CaretUpIcon as Zt, UserIcon as kt, MenuItem as z, MenuDivider as Et, ConfirmModal as Xt, Alert as en, Tag as Ne, Button as Re, Loading as tn, Popover as nn, JobIcon as rn } from "@lokalise/louis";
8
- import { format as It, parseISO as on } from "date-fns";
9
- import { toZonedTime as an } from "date-fns-tz";
10
- import { sendByPayloadRoute as G, sendByGetRoute as W } from "@lokalise/frontend-http-client";
1
+ var Zt = Object.defineProperty;
2
+ var en = (e, t, n) => t in e ? Zt(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
+ var ee = (e, t, n) => en(e, typeof t != "symbol" ? t + "" : t, n);
4
+ import { jsx as a, jsxs as h, Fragment as Ue } from "react/jsx-runtime";
5
+ import * as F from "react";
6
+ import { useRef as Et, useState as N, useCallback as We, useEffect as G, useContext as wt, createContext as Ct, cloneElement as tn, Fragment as kt, forwardRef as nn } from "react";
7
+ import { Tooltip as H, Link as L, Menu as ae, MenuList as se, CaretUpIcon as rn, UserIcon as Pt, MenuItem as K, MenuDivider as It, ConfirmModal as on, Alert as an, Tag as Re, Button as je, Loading as sn, Popover as cn, JobIcon as ln } from "@lokalise/louis";
8
+ import { format as At, parseISO as dn } from "date-fns";
9
+ import { toZonedTime as un } from "date-fns-tz";
11
10
  import { z as o } from "zod";
12
- import { buildPayloadRoute as Oe } from "@lokalise/universal-ts-utils/api-contracts/apiContracts";
13
- import { useQuery as B, useMutation as Pt } from "@tanstack/react-query";
14
- import { buildGetRoute as K } from "@lokalise/universal-ts-utils/node";
15
- const je = {
11
+ import { buildPayloadRoute as qe } from "@lokalise/universal-ts-utils/api-contracts/apiContracts";
12
+ import { sendByPayloadRoute as W, sendByGetRoute as J } from "@lokalise/frontend-http-client";
13
+ import { useQuery as B, useMutation as Nt } from "@tanstack/react-query";
14
+ import { buildGetRoute as Q } from "@lokalise/universal-ts-utils/node";
15
+ const xe = {
16
16
  Completed: "completed",
17
17
  InProgress: "in_progress",
18
18
  Created: "created",
19
19
  Queued: "queued"
20
- }, I = {
21
- ...je,
20
+ }, P = {
21
+ ...xe,
22
22
  NotStarted: "not_started"
23
- }, X = {
23
+ }, te = {
24
24
  translation: "translation",
25
25
  review: "review",
26
26
  lqa_by_ai: "lqa_by_ai",
27
27
  automatic_translation: "automatic_translation"
28
28
  };
29
- var ee = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
30
- function Nt(e) {
29
+ var ne = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
30
+ function Rt(e) {
31
31
  return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
32
32
  }
33
- var ue, Ge;
34
- function Me() {
35
- if (Ge) return ue;
36
- Ge = 1;
33
+ var fe, Je;
34
+ function He() {
35
+ if (Je) return fe;
36
+ Je = 1;
37
37
  function e(t) {
38
38
  var n = typeof t;
39
39
  return t != null && (n == "object" || n == "function");
40
40
  }
41
- return ue = e, ue;
41
+ return fe = e, fe;
42
42
  }
43
- var me, We;
44
- function sn() {
45
- if (We) return me;
46
- We = 1;
47
- var e = typeof ee == "object" && ee && ee.Object === Object && ee;
48
- return me = e, me;
43
+ var _e, Qe;
44
+ function mn() {
45
+ if (Qe) return _e;
46
+ Qe = 1;
47
+ var e = typeof ne == "object" && ne && ne.Object === Object && ne;
48
+ return _e = e, _e;
49
49
  }
50
- var fe, Ke;
51
- function Rt() {
52
- if (Ke) return fe;
53
- Ke = 1;
54
- var e = sn(), t = typeof self == "object" && self && self.Object === Object && self, n = e || t || Function("return this")();
55
- return fe = n, fe;
50
+ var ge, Ye;
51
+ function jt() {
52
+ if (Ye) return ge;
53
+ Ye = 1;
54
+ var e = mn(), t = typeof self == "object" && self && self.Object === Object && self, n = e || t || Function("return this")();
55
+ return ge = n, ge;
56
56
  }
57
- var ge, Qe;
58
- function cn() {
59
- if (Qe) return ge;
60
- Qe = 1;
61
- var e = Rt(), t = function() {
57
+ var he, Ve;
58
+ function fn() {
59
+ if (Ve) return he;
60
+ Ve = 1;
61
+ var e = jt(), t = function() {
62
62
  return e.Date.now();
63
63
  };
64
- return ge = t, ge;
64
+ return he = t, he;
65
65
  }
66
- var _e, Ye;
67
- function ln() {
68
- if (Ye) return _e;
69
- Ye = 1;
66
+ var pe, Xe;
67
+ function _n() {
68
+ if (Xe) return pe;
69
+ Xe = 1;
70
70
  var e = /\s/;
71
71
  function t(n) {
72
72
  for (var r = n.length; r-- && e.test(n.charAt(r)); )
73
73
  ;
74
74
  return r;
75
75
  }
76
- return _e = t, _e;
76
+ return pe = t, pe;
77
77
  }
78
- var he, Ve;
79
- function dn() {
80
- if (Ve) return he;
81
- Ve = 1;
82
- var e = ln(), t = /^\s+/;
78
+ var be, Ze;
79
+ function gn() {
80
+ if (Ze) return be;
81
+ Ze = 1;
82
+ var e = _n(), t = /^\s+/;
83
83
  function n(r) {
84
84
  return r && r.slice(0, e(r) + 1).replace(t, "");
85
85
  }
86
- return he = n, he;
86
+ return be = n, be;
87
87
  }
88
- var pe, Ze;
89
- function jt() {
90
- if (Ze) return pe;
91
- Ze = 1;
92
- var e = Rt(), t = e.Symbol;
93
- return pe = t, pe;
88
+ var ve, et;
89
+ function xt() {
90
+ if (et) return ve;
91
+ et = 1;
92
+ var e = jt(), t = e.Symbol;
93
+ return ve = t, ve;
94
94
  }
95
- var be, Xe;
96
- function un() {
97
- if (Xe) return be;
98
- Xe = 1;
99
- var e = jt(), t = Object.prototype, n = t.hasOwnProperty, r = t.toString, s = e ? e.toStringTag : void 0;
95
+ var Te, tt;
96
+ function hn() {
97
+ if (tt) return Te;
98
+ tt = 1;
99
+ var e = xt(), t = Object.prototype, n = t.hasOwnProperty, r = t.toString, s = e ? e.toStringTag : void 0;
100
100
  function i(c) {
101
101
  var l = n.call(c, s), u = c[s];
102
102
  try {
@@ -107,52 +107,52 @@ function un() {
107
107
  var m = r.call(c);
108
108
  return d && (l ? c[s] = u : delete c[s]), m;
109
109
  }
110
- return be = i, be;
110
+ return Te = i, Te;
111
111
  }
112
- var ve, et;
113
- function mn() {
114
- if (et) return ve;
115
- et = 1;
112
+ var ye, nt;
113
+ function pn() {
114
+ if (nt) return ye;
115
+ nt = 1;
116
116
  var e = Object.prototype, t = e.toString;
117
117
  function n(r) {
118
118
  return t.call(r);
119
119
  }
120
- return ve = n, ve;
120
+ return ye = n, ye;
121
121
  }
122
- var Te, tt;
123
- function fn() {
124
- if (tt) return Te;
125
- tt = 1;
126
- var e = jt(), t = un(), n = mn(), r = "[object Null]", s = "[object Undefined]", i = e ? e.toStringTag : void 0;
122
+ var Se, rt;
123
+ function bn() {
124
+ if (rt) return Se;
125
+ rt = 1;
126
+ var e = xt(), t = hn(), n = pn(), r = "[object Null]", s = "[object Undefined]", i = e ? e.toStringTag : void 0;
127
127
  function c(l) {
128
128
  return l == null ? l === void 0 ? s : r : i && i in Object(l) ? t(l) : n(l);
129
129
  }
130
- return Te = c, Te;
130
+ return Se = c, Se;
131
131
  }
132
- var ye, nt;
133
- function gn() {
134
- if (nt) return ye;
135
- nt = 1;
132
+ var Ee, ot;
133
+ function vn() {
134
+ if (ot) return Ee;
135
+ ot = 1;
136
136
  function e(t) {
137
137
  return t != null && typeof t == "object";
138
138
  }
139
- return ye = e, ye;
139
+ return Ee = e, Ee;
140
140
  }
141
- var Ce, rt;
142
- function _n() {
143
- if (rt) return Ce;
144
- rt = 1;
145
- var e = fn(), t = gn(), n = "[object Symbol]";
141
+ var we, at;
142
+ function Tn() {
143
+ if (at) return we;
144
+ at = 1;
145
+ var e = bn(), t = vn(), n = "[object Symbol]";
146
146
  function r(s) {
147
147
  return typeof s == "symbol" || t(s) && e(s) == n;
148
148
  }
149
- return Ce = r, Ce;
149
+ return we = r, we;
150
150
  }
151
- var we, ot;
152
- function hn() {
153
- if (ot) return we;
154
- ot = 1;
155
- var e = dn(), t = Me(), n = _n(), r = NaN, s = /^[-+]0x[0-9a-f]+$/i, i = /^0b[01]+$/i, c = /^0o[0-7]+$/i, l = parseInt;
151
+ var Ce, st;
152
+ function yn() {
153
+ if (st) return Ce;
154
+ st = 1;
155
+ var e = gn(), t = He(), n = Tn(), r = NaN, s = /^[-+]0x[0-9a-f]+$/i, i = /^0b[01]+$/i, c = /^0o[0-7]+$/i, l = parseInt;
156
156
  function u(d) {
157
157
  if (typeof d == "number")
158
158
  return d;
@@ -165,72 +165,72 @@ function hn() {
165
165
  if (typeof d != "string")
166
166
  return d === 0 ? d : +d;
167
167
  d = e(d);
168
- var g = i.test(d);
169
- return g || c.test(d) ? l(d.slice(2), g ? 2 : 8) : s.test(d) ? r : +d;
168
+ var _ = i.test(d);
169
+ return _ || c.test(d) ? l(d.slice(2), _ ? 2 : 8) : s.test(d) ? r : +d;
170
170
  }
171
- return we = u, we;
171
+ return Ce = u, Ce;
172
172
  }
173
- var Se, at;
174
- function At() {
175
- if (at) return Se;
176
- at = 1;
177
- var e = Me(), t = cn(), n = hn(), r = "Expected a function", s = Math.max, i = Math.min;
173
+ var ke, it;
174
+ function Ot() {
175
+ if (it) return ke;
176
+ it = 1;
177
+ var e = He(), t = fn(), n = yn(), r = "Expected a function", s = Math.max, i = Math.min;
178
178
  function c(l, u, d) {
179
- var m, g, T, y, f, w, b = 0, _ = !1, p = !1, v = !0;
179
+ var m, _, T, y, f, E, b = 0, g = !1, p = !1, v = !0;
180
180
  if (typeof l != "function")
181
181
  throw new TypeError(r);
182
- u = n(u) || 0, e(d) && (_ = !!d.leading, p = "maxWait" in d, T = p ? s(n(d.maxWait) || 0, u) : T, v = "trailing" in d ? !!d.trailing : v);
183
- function k(C) {
184
- var j = m, $ = g;
185
- return m = g = void 0, b = C, y = l.apply($, j), y;
182
+ u = n(u) || 0, e(d) && (g = !!d.leading, p = "maxWait" in d, T = p ? s(n(d.maxWait) || 0, u) : T, v = "trailing" in d ? !!d.trailing : v);
183
+ function C(S) {
184
+ var j = m, D = _;
185
+ return m = _ = void 0, b = S, y = l.apply(D, j), y;
186
186
  }
187
- function S(C) {
188
- return b = C, f = setTimeout(Z, u), _ ? k(C) : y;
187
+ function w(S) {
188
+ return b = S, f = setTimeout(Z, u), g ? C(S) : y;
189
189
  }
190
- function V(C) {
191
- var j = C - w, $ = C - b, Fe = u - j;
192
- return p ? i(Fe, T - $) : Fe;
190
+ function X(S) {
191
+ var j = S - E, D = S - b, Ke = u - j;
192
+ return p ? i(Ke, T - D) : Ke;
193
193
  }
194
- function De(C) {
195
- var j = C - w, $ = C - b;
196
- return w === void 0 || j >= u || j < 0 || p && $ >= T;
194
+ function ze(S) {
195
+ var j = S - E, D = S - b;
196
+ return E === void 0 || j >= u || j < 0 || p && D >= T;
197
197
  }
198
198
  function Z() {
199
- var C = t();
200
- if (De(C))
201
- return He(C);
202
- f = setTimeout(Z, V(C));
199
+ var S = t();
200
+ if (ze(S))
201
+ return Ge(S);
202
+ f = setTimeout(Z, X(S));
203
203
  }
204
- function He(C) {
205
- return f = void 0, v && m ? k(C) : (m = g = void 0, y);
204
+ function Ge(S) {
205
+ return f = void 0, v && m ? C(S) : (m = _ = void 0, y);
206
206
  }
207
- function Gt() {
208
- f !== void 0 && clearTimeout(f), b = 0, m = w = g = f = void 0;
207
+ function Vt() {
208
+ f !== void 0 && clearTimeout(f), b = 0, m = E = _ = f = void 0;
209
209
  }
210
- function Wt() {
211
- return f === void 0 ? y : He(t());
210
+ function Xt() {
211
+ return f === void 0 ? y : Ge(t());
212
212
  }
213
- function de() {
214
- var C = t(), j = De(C);
215
- if (m = arguments, g = this, w = C, j) {
213
+ function me() {
214
+ var S = t(), j = ze(S);
215
+ if (m = arguments, _ = this, E = S, j) {
216
216
  if (f === void 0)
217
- return S(w);
217
+ return w(E);
218
218
  if (p)
219
- return clearTimeout(f), f = setTimeout(Z, u), k(w);
219
+ return clearTimeout(f), f = setTimeout(Z, u), C(E);
220
220
  }
221
221
  return f === void 0 && (f = setTimeout(Z, u)), y;
222
222
  }
223
- return de.cancel = Gt, de.flush = Wt, de;
223
+ return me.cancel = Vt, me.flush = Xt, me;
224
224
  }
225
- return Se = c, Se;
225
+ return ke = c, ke;
226
226
  }
227
- var pn = At();
228
- const bn = /* @__PURE__ */ Nt(pn);
229
- var ke, st;
230
- function vn() {
231
- if (st) return ke;
232
- st = 1;
233
- var e = At(), t = Me(), n = "Expected a function";
227
+ var Sn = Ot();
228
+ const En = /* @__PURE__ */ Rt(Sn);
229
+ var Pe, ct;
230
+ function wn() {
231
+ if (ct) return Pe;
232
+ ct = 1;
233
+ var e = Ot(), t = He(), n = "Expected a function";
234
234
  function r(s, i, c) {
235
235
  var l = !0, u = !0;
236
236
  if (typeof s != "function")
@@ -241,36 +241,36 @@ function vn() {
241
241
  trailing: u
242
242
  });
243
243
  }
244
- return ke = r, ke;
244
+ return Pe = r, Pe;
245
245
  }
246
- var Tn = vn();
247
- const yn = /* @__PURE__ */ Nt(Tn), Cn = (e, t, n, r) => {
246
+ var Cn = wn();
247
+ const kn = /* @__PURE__ */ Rt(Cn), Pn = (e, t, n, r) => {
248
248
  switch (t) {
249
249
  case "debounce":
250
- return bn(e, n, r);
250
+ return En(e, n, r);
251
251
  case "throttle":
252
- return yn(e, n, r);
252
+ return kn(e, n, r);
253
253
  default:
254
254
  return e;
255
255
  }
256
- }, wn = (
256
+ }, In = (
257
257
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
258
258
  (e) => {
259
- const t = H.useRef(e);
260
- return H.useEffect(() => {
259
+ const t = F.useRef(e);
260
+ return F.useEffect(() => {
261
261
  t.current = e;
262
- }), H.useMemo(() => (...n) => {
262
+ }), F.useMemo(() => (...n) => {
263
263
  var r;
264
264
  return (r = t.current) === null || r === void 0 ? void 0 : r.call(t, ...n);
265
265
  }, []);
266
266
  }
267
- ), Sn = (
267
+ ), An = (
268
268
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
269
269
  (e) => {
270
- const [t, n] = H.useState((e == null ? void 0 : e.current) || null);
270
+ const [t, n] = F.useState((e == null ? void 0 : e.current) || null);
271
271
  return e && setTimeout(() => {
272
272
  e.current !== t && n(e.current);
273
- }, 0), { refProxy: H.useMemo(() => new Proxy((s) => {
273
+ }, 0), { refProxy: F.useMemo(() => new Proxy((s) => {
274
274
  s !== t && n(s);
275
275
  }, {
276
276
  get(s, i) {
@@ -281,7 +281,7 @@ const yn = /* @__PURE__ */ Nt(Tn), Cn = (e, t, n, r) => {
281
281
  }
282
282
  }), [t]), refElement: t, setRefElement: n };
283
283
  }
284
- ), kn = (e, t) => t === "border-box" ? {
284
+ ), Nn = (e, t) => t === "border-box" ? {
285
285
  width: e.borderBoxSize[0].inlineSize,
286
286
  height: e.borderBoxSize[0].blockSize
287
287
  } : t === "content-box" ? {
@@ -291,149 +291,149 @@ const yn = /* @__PURE__ */ Nt(Tn), Cn = (e, t, n, r) => {
291
291
  width: e.contentRect.width,
292
292
  height: e.contentRect.height
293
293
  };
294
- function En({ skipOnMount: e = !1, refreshMode: t, refreshRate: n = 1e3, refreshOptions: r, handleWidth: s = !0, handleHeight: i = !0, targetRef: c, observerOptions: l, onResize: u } = {}) {
295
- const d = yt(e), m = wn(u), [g, T] = N({
294
+ function Rn({ skipOnMount: e = !1, refreshMode: t, refreshRate: n = 1e3, refreshOptions: r, handleWidth: s = !0, handleHeight: i = !0, targetRef: c, observerOptions: l, onResize: u } = {}) {
295
+ const d = Et(e), m = In(u), [_, T] = N({
296
296
  width: void 0,
297
297
  height: void 0
298
- }), { refProxy: y, refElement: f } = Sn(c), { box: w } = l || {}, b = ze((p) => {
298
+ }), { refProxy: y, refElement: f } = An(c), { box: E } = l || {}, b = We((p) => {
299
299
  if (!s && !i)
300
300
  return;
301
301
  if (d.current) {
302
302
  d.current = !1;
303
303
  return;
304
304
  }
305
- const v = (k, S) => s && k.width !== S.width || i && k.height !== S.height;
306
- p.forEach((k) => {
307
- const S = kn(k, w);
308
- T((V) => v(V, S) ? (m == null || m({
309
- width: S.width,
310
- height: S.height,
311
- entry: k
312
- }), S) : V);
305
+ const v = (C, w) => s && C.width !== w.width || i && C.height !== w.height;
306
+ p.forEach((C) => {
307
+ const w = Nn(C, E);
308
+ T((X) => v(X, w) ? (m == null || m({
309
+ width: w.width,
310
+ height: w.height,
311
+ entry: C
312
+ }), w) : X);
313
313
  });
314
- }, [s, i, d, w]), _ = ze(Cn(b, t, n, r), [
314
+ }, [s, i, d, E]), g = We(Pn(b, t, n, r), [
315
315
  b,
316
316
  t,
317
317
  n,
318
318
  r
319
319
  ]);
320
- return J(() => {
320
+ return G(() => {
321
321
  let p;
322
- return f ? (p = new window.ResizeObserver(_), p.observe(f, l)) : (g.width || g.height) && (m == null || m({
322
+ return f ? (p = new window.ResizeObserver(g), p.observe(f, l)) : (_.width || _.height) && (m == null || m({
323
323
  width: null,
324
324
  height: null,
325
325
  entry: null
326
326
  }), T({ width: void 0, height: void 0 })), () => {
327
- var v, k, S;
328
- (v = p == null ? void 0 : p.disconnect) === null || v === void 0 || v.call(p), (S = (k = _).cancel) === null || S === void 0 || S.call(k);
327
+ var v, C, w;
328
+ (v = p == null ? void 0 : p.disconnect) === null || v === void 0 || v.call(p), (w = (C = g).cancel) === null || w === void 0 || w.call(C);
329
329
  };
330
- }, [_, f]), Object.assign({ ref: y }, g);
330
+ }, [g, f]), Object.assign({ ref: y }, _);
331
331
  }
332
- function xt(e) {
332
+ function Lt(e) {
333
333
  var t, n, r = "";
334
334
  if (typeof e == "string" || typeof e == "number") r += e;
335
335
  else if (typeof e == "object") if (Array.isArray(e)) {
336
336
  var s = e.length;
337
- for (t = 0; t < s; t++) e[t] && (n = xt(e[t])) && (r && (r += " "), r += n);
337
+ for (t = 0; t < s; t++) e[t] && (n = Lt(e[t])) && (r && (r += " "), r += n);
338
338
  } else for (n in e) e[n] && (r && (r += " "), r += n);
339
339
  return r;
340
340
  }
341
341
  function R() {
342
- for (var e, t, n = 0, r = "", s = arguments.length; n < s; n++) (e = arguments[n]) && (t = xt(e)) && (r && (r += " "), r += t);
342
+ for (var e, t, n = 0, r = "", s = arguments.length; n < s; n++) (e = arguments[n]) && (t = Lt(e)) && (r && (r += " "), r += t);
343
343
  return r;
344
344
  }
345
- const In = "_headerContainer_1cubo_1", Pn = "_navigationTabList_1cubo_8", Nn = "_navigationTab_1cubo_8", Rn = "_headerContent_1cubo_34", jn = "_staticEnabled_1cubo_50", U = {
346
- headerContainer: In,
347
- navigationTabList: Pn,
348
- navigationTab: Nn,
349
- headerContent: Rn,
350
- staticEnabled: jn
351
- }, An = 77, ne = ({ sticky: e, children: t }) => {
352
- const { ref: n, height: r } = En({
345
+ const jn = "_headerContainer_1cubo_1", xn = "_navigationTabList_1cubo_8", On = "_navigationTab_1cubo_8", Ln = "_headerContent_1cubo_34", Mn = "_staticEnabled_1cubo_50", q = {
346
+ headerContainer: jn,
347
+ navigationTabList: xn,
348
+ navigationTab: On,
349
+ headerContent: Ln,
350
+ staticEnabled: Mn
351
+ }, Un = 77, re = ({ sticky: e, children: t }) => {
352
+ const { ref: n, height: r } = Rn({
353
353
  refreshMode: "debounce",
354
354
  refreshRate: 0
355
355
  }), [s, i] = N(!1), c = () => s ? !e : !0;
356
- J(() => {
356
+ G(() => {
357
357
  const u = () => {
358
358
  i(window.scrollY > 0);
359
359
  };
360
360
  return window.addEventListener("scroll", u), () => window.removeEventListener("scroll", u);
361
361
  }, []);
362
- const l = `${r || An}px`;
362
+ const l = `${r || Un}px`;
363
363
  return /* @__PURE__ */ a("div", { style: { minHeight: l }, children: /* @__PURE__ */ a("div", { children: /* @__PURE__ */ h(
364
364
  "div",
365
365
  {
366
366
  ref: n,
367
- className: R(U.headerContent, {
368
- [U.staticEnabled]: c()
367
+ className: R(q.headerContent, {
368
+ [q.staticEnabled]: c()
369
369
  }),
370
370
  children: [
371
- /* @__PURE__ */ a(ne.Header, {}),
372
- /* @__PURE__ */ a(ne.Tabs, {}),
371
+ /* @__PURE__ */ a(re.Header, {}),
372
+ /* @__PURE__ */ a(re.Tabs, {}),
373
373
  t
374
374
  ]
375
375
  }
376
376
  ) }) });
377
377
  };
378
- ne.Header = ({ children: e }) => /* @__PURE__ */ a("div", { className: U.headerContainer, children: e });
379
- ne.Tabs = ({ children: e }) => /* @__PURE__ */ a("div", { className: "flex justify-between gap-2 nowrap", children: e });
380
- const xn = "_sidebarContainer_bmdti_1", Ln = {
381
- sidebarContainer: xn
382
- }, On = "_logoLink_1baxb_1", Mn = {
383
- logoLink: On
384
- }, Un = ({ src: e, href: t = "/", ariaLabel: n = "Home", alt: r = "Lokalise" }) => /* @__PURE__ */ a("a", { className: Mn.logoLink, href: t, "aria-label": n, children: /* @__PURE__ */ a("img", { src: e, alt: r }) }), qn = "_link_18vhx_1", Bn = "_active_18vhx_18", it = {
385
- link: qn,
386
- active: Bn
387
- }, $n = ({ label: e, to: t, icon: n }) => /* @__PURE__ */ a(q, { placement: "right", tooltip: e, children: /* @__PURE__ */ a(
378
+ re.Header = ({ children: e }) => /* @__PURE__ */ a("div", { className: q.headerContainer, children: e });
379
+ re.Tabs = ({ children: e }) => /* @__PURE__ */ a("div", { className: "flex justify-between gap-2 nowrap", children: e });
380
+ const qn = "_sidebarContainer_bmdti_1", Hn = {
381
+ sidebarContainer: qn
382
+ }, Bn = "_logoLink_1baxb_1", Dn = {
383
+ logoLink: Bn
384
+ }, $n = ({ src: e, href: t = "/", ariaLabel: n = "Home", alt: r = "Lokalise" }) => /* @__PURE__ */ a("a", { className: Dn.logoLink, href: t, "aria-label": n, children: /* @__PURE__ */ a("img", { src: e, alt: r }) }), Fn = "_link_18vhx_1", zn = "_active_18vhx_18", lt = {
385
+ link: Fn,
386
+ active: zn
387
+ }, Gn = ({ label: e, to: t, icon: n }) => /* @__PURE__ */ a(H, { placement: "right", tooltip: e, children: /* @__PURE__ */ a(
388
388
  L,
389
389
  {
390
- className: R(it.link, {
391
- [it.active]: window.location.pathname.startsWith(t)
390
+ className: R(lt.link, {
391
+ [lt.active]: window.location.pathname.startsWith(t)
392
392
  }),
393
393
  href: t,
394
394
  children: /* @__PURE__ */ a(n, { size: "25px" })
395
395
  }
396
- ) }), Dn = "_dropdownButton_13l5r_1", Hn = "_dropdownButtonActive_13l5r_18", ct = {
397
- dropdownButton: Dn,
398
- dropdownButtonActive: Hn
399
- }, Fn = ({ children: e, icon: t }) => /* @__PURE__ */ a(
400
- oe,
396
+ ) }), Kn = "_dropdownButton_13l5r_1", Wn = "_dropdownButtonActive_13l5r_18", dt = {
397
+ dropdownButton: Kn,
398
+ dropdownButtonActive: Wn
399
+ }, Jn = ({ children: e, icon: t }) => /* @__PURE__ */ a(
400
+ ae,
401
401
  {
402
- menuButton: ({ opened: n }) => /* @__PURE__ */ a(q, { placement: "right", tooltip: "Help", children: /* @__PURE__ */ a(
402
+ menuButton: ({ opened: n }) => /* @__PURE__ */ a(H, { placement: "right", tooltip: "Help", children: /* @__PURE__ */ a(
403
403
  "button",
404
404
  {
405
405
  type: "button",
406
- className: R(ct.dropdownButton, {
407
- [ct.dropdownButtonActive]: n
406
+ className: R(dt.dropdownButton, {
407
+ [dt.dropdownButtonActive]: n
408
408
  }),
409
409
  children: /* @__PURE__ */ a(t, { size: "25px" })
410
410
  }
411
411
  ) }),
412
- children: /* @__PURE__ */ a(ae, { placement: "right-start", children: e })
412
+ children: /* @__PURE__ */ a(se, { placement: "right-start", children: e })
413
413
  }
414
- ), Jn = "_iconContainer_nz34m_1", zn = {
415
- iconContainer: Jn
416
- }, Lt = ({ className: e = "" }) => /* @__PURE__ */ a(
414
+ ), Qn = "_iconContainer_nz34m_1", Yn = {
415
+ iconContainer: Qn
416
+ }, Mt = ({ className: e = "" }) => /* @__PURE__ */ a(
417
417
  "div",
418
418
  {
419
419
  "aria-label": "Upgrade Icon",
420
420
  className: R(
421
- zn.iconContainer,
421
+ Yn.iconContainer,
422
422
  "flex-row",
423
423
  "items-center",
424
424
  "justify-center",
425
425
  e
426
426
  ),
427
- children: /* @__PURE__ */ a(Zt, {})
427
+ children: /* @__PURE__ */ a(rn, {})
428
428
  }
429
- ), Gn = "_menuContainer_ywskt_5", Wn = "_profileButton_ywskt_15", Kn = "_profileImage_ywskt_28", Qn = "_profileImageHighlight_ywskt_36", Yn = "_profileImageUpgradeIcon_ywskt_40", Vn = "_userIconWrapper_ywskt_46", A = {
430
- menuContainer: Gn,
431
- profileButton: Wn,
432
- profileImage: Kn,
433
- profileImageHighlight: Qn,
434
- profileImageUpgradeIcon: Yn,
435
- userIconWrapper: Vn
436
- }, Ot = wt({}), Q = () => Ct(Ot), Zn = ({ children: e }) => {
429
+ ), Vn = "_menuContainer_ywskt_5", Xn = "_profileButton_ywskt_15", Zn = "_profileImage_ywskt_28", er = "_profileImageHighlight_ywskt_36", tr = "_profileImageUpgradeIcon_ywskt_40", nr = "_userIconWrapper_ywskt_46", x = {
430
+ menuContainer: Vn,
431
+ profileButton: Xn,
432
+ profileImage: Zn,
433
+ profileImageHighlight: er,
434
+ profileImageUpgradeIcon: tr,
435
+ userIconWrapper: nr
436
+ }, Ut = Ct({}), Y = () => wt(Ut), rr = ({ children: e }) => {
437
437
  const {
438
438
  currentTeam: t,
439
439
  otherTeams: n,
@@ -445,32 +445,32 @@ const xn = "_sidebarContainer_bmdti_1", Ln = {
445
445
  isEndOfTrialActive: u,
446
446
  isTeamSuspended: d,
447
447
  isFullyAuthenticated: m
448
- } = Q();
448
+ } = Y();
449
449
  return /* @__PURE__ */ a(
450
- oe,
450
+ ae,
451
451
  {
452
- menuButton: () => /* @__PURE__ */ h("button", { className: A.profileButton, "aria-label": "Profile menu", type: "button", children: [
452
+ menuButton: () => /* @__PURE__ */ h("button", { className: x.profileButton, "aria-label": "Profile menu", type: "button", children: [
453
453
  t != null && t.logoUrl ? /* @__PURE__ */ a(
454
454
  "img",
455
455
  {
456
456
  src: t.logoUrl,
457
- className: R(A.profileImage, {
458
- [A.profileImageHighlight]: r
457
+ className: R(x.profileImage, {
458
+ [x.profileImageHighlight]: r
459
459
  }),
460
460
  alt: "Team Logo"
461
461
  }
462
462
  ) : /* @__PURE__ */ a(
463
463
  "div",
464
464
  {
465
- className: R(A.userIconWrapper, "flex-row", "align-center", "items-center", {
466
- [A.profileImageHighlight]: r
465
+ className: R(x.userIconWrapper, "flex-row", "align-center", "items-center", {
466
+ [x.profileImageHighlight]: r
467
467
  }),
468
- children: /* @__PURE__ */ a(kt, { size: "25px" })
468
+ children: /* @__PURE__ */ a(Pt, { size: "25px" })
469
469
  }
470
470
  ),
471
- r && /* @__PURE__ */ a(Lt, { className: A.profileImageUpgradeIcon })
471
+ r && /* @__PURE__ */ a(Mt, { className: x.profileImageUpgradeIcon })
472
472
  ] }),
473
- children: /* @__PURE__ */ a(ae, { placement: "right-end", className: A.menuContainer, children: e({
473
+ children: /* @__PURE__ */ a(se, { placement: "right-end", className: x.menuContainer, children: e({
474
474
  allowTeamCreation: i,
475
475
  otherTeams: n,
476
476
  canAccessTeamSettings: l,
@@ -482,7 +482,7 @@ const xn = "_sidebarContainer_bmdti_1", Ln = {
482
482
  }) })
483
483
  }
484
484
  );
485
- }, Mt = 0, Xn = 9999, er = [150, 151, 250, 251], tr = [152, 153, 252, 253], nr = [154, 155, 157, 158, 254, 255, 258, 354, 355, 358], rr = [156, 159, 160, 256, 259, 260], Ut = 9998, Ue = (e) => e === Mt, qt = (e) => e === Xn, Ta = (e) => er.includes(e), ya = (e) => tr.includes(e), Ca = (e) => nr.includes(e), wa = (e) => rr.includes(e), Sa = (e) => e > Mt && e < Ut, ka = (e) => e === Ut, or = /\n/, lt = (e, t, n) => e.split(t).flatMap((r, s) => s !== 0 ? [Yt(n, { key: Math.random().toString(32).slice(0, 10) }), r] : r), ar = (e, t, n) => typeof e == "string" ? lt(e, t, n) : e.flatMap((r) => typeof r == "string" ? lt(r, t, n) : r), sr = (e) => ar(e, or, /* @__PURE__ */ a("br", {})), ir = /(\b(https?|):\/\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi, cr = (e) => e.match(ir) ?? [], dt = (e, t, n) => {
485
+ }, qt = 0, or = 9999, ar = [150, 151, 250, 251], sr = [152, 153, 252, 253], ir = [154, 155, 157, 158, 254, 255, 258, 354, 355, 358], cr = [156, 159, 160, 256, 259, 260], Ht = 9998, Be = (e) => e === qt, Bt = (e) => e === or, Na = (e) => ar.includes(e), Ra = (e) => sr.includes(e), ja = (e) => ir.includes(e), xa = (e) => cr.includes(e), Oa = (e) => e > qt && e < Ht, La = (e) => e === Ht, lr = /\n/, ut = (e, t, n) => e.split(t).flatMap((r, s) => s !== 0 ? [tn(n, { key: Math.random().toString(32).slice(0, 10) }), r] : r), dr = (e, t, n) => typeof e == "string" ? ut(e, t, n) : e.flatMap((r) => typeof r == "string" ? ut(r, t, n) : r), ur = (e) => dr(e, lr, /* @__PURE__ */ a("br", {})), mr = /(\b(https?|):\/\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi, fr = (e) => e.match(mr) ?? [], mt = (e, t, n) => {
486
486
  const r = e.split(t);
487
487
  if (r.length === 1)
488
488
  return e;
@@ -490,123 +490,123 @@ const xn = "_sidebarContainer_bmdti_1", Ln = {
490
490
  return r[0] !== "" && s.push(r[0]), r.shift(), r[r.length - 1] === "" && r.pop(), s.push(
491
491
  /* @__PURE__ */ a("a", { href: t, target: "_blank", rel: "noreferrer noopener", children: t }, t + n)
492
492
  ), s.push(r.join(t)), s.filter((i) => i !== "");
493
- }, ut = (e) => {
494
- const t = cr(e);
495
- return t != null && t.length ? t.reduce((n, r, s) => typeof n == "string" ? dt(n, r, s) : n.flatMap((i) => typeof i == "string" ? dt(i, r, s) : i), e) : e;
496
- }, lr = (e) => typeof e == "string" ? ut(e) : e.flatMap((t) => typeof t == "string" ? ut(t) : t, e), dr = (e, t = "PP") => It(e, t), Ea = (e, t, n = "PP") => It(an(e, t), n), qe = (e) => {
497
- J(e, []);
498
- }, mt = {
493
+ }, ft = (e) => {
494
+ const t = fr(e);
495
+ return t != null && t.length ? t.reduce((n, r, s) => typeof n == "string" ? mt(n, r, s) : n.flatMap((i) => typeof i == "string" ? mt(i, r, s) : i), e) : e;
496
+ }, _r = (e) => typeof e == "string" ? ft(e) : e.flatMap((t) => typeof t == "string" ? ft(t) : t, e), gr = (e, t = "PP") => At(e, t), Ma = (e, t, n = "PP") => At(un(e, t), n), De = (e) => {
497
+ G(e, []);
498
+ }, _t = {
499
499
  biller: "biller",
500
500
  owner: "owner"
501
- }, ft = [
502
- mt.biller,
503
- mt.owner
504
- ], ur = ({ children: e, config: t }) => {
505
- const { teams: n, currentTeamId: r, planId: s, isEndOfTrialActive: i, isFullyAuthenticated: c, userTeamRole: l } = t, u = n.find((_) => _.id === r), d = n.filter((_) => _.id !== r), m = ft.includes(l), g = ft.includes(l), T = Ue(s) || qt(s), b = {
501
+ }, gt = [
502
+ _t.biller,
503
+ _t.owner
504
+ ], hr = ({ children: e, config: t }) => {
505
+ const { teams: n, currentTeamId: r, planId: s, isEndOfTrialActive: i, isFullyAuthenticated: c, userTeamRole: l } = t, u = n.find((g) => g.id === r), d = n.filter((g) => g.id !== r), m = gt.includes(l), _ = gt.includes(l), T = Be(s) || Bt(s), b = {
506
506
  ...t,
507
507
  currentTeam: u,
508
508
  otherTeams: d,
509
509
  canChangeBilling: m,
510
- canAccessTeamSettings: g,
510
+ canAccessTeamSettings: _,
511
511
  isOnFreeOrTrialPlan: T,
512
512
  showUpgradeCta: c && T && m,
513
- showBillingButton: c && g && m,
513
+ showBillingButton: c && _ && m,
514
514
  allowTeamCreation: c && !i
515
515
  };
516
- return /* @__PURE__ */ a(Ot.Provider, { value: b, children: e });
517
- }, mr = ({ config: e, children: t }) => /* @__PURE__ */ a(ur, { config: e, children: /* @__PURE__ */ a(Zn, { children: t }) }), fr = "_container_q5pot_1", gr = "_profileEmail_q5pot_5", gt = {
518
- container: fr,
519
- profileEmail: gr
520
- }, _r = ({
516
+ return /* @__PURE__ */ a(Ut.Provider, { value: b, children: e });
517
+ }, pr = ({ config: e, children: t }) => /* @__PURE__ */ a(hr, { config: e, children: /* @__PURE__ */ a(rr, { children: t }) }), br = "_container_q5pot_1", vr = "_profileEmail_q5pot_5", ht = {
518
+ container: br,
519
+ profileEmail: vr
520
+ }, Tr = ({
521
521
  href: e,
522
522
  onClick: t,
523
523
  userEmail: n,
524
524
  hideBottomDivider: r
525
525
  }) => {
526
- const { isEndOfTrialActive: s, isTeamSuspended: i } = Q();
527
- return s || i ? null : /* @__PURE__ */ h(Le, { children: [
526
+ const { isEndOfTrialActive: s, isTeamSuspended: i } = Y();
527
+ return s || i ? null : /* @__PURE__ */ h(Ue, { children: [
528
528
  /* @__PURE__ */ a(
529
- z,
529
+ K,
530
530
  {
531
531
  href: e,
532
532
  onClick: () => {
533
533
  t == null || t();
534
534
  },
535
- children: /* @__PURE__ */ h("div", { className: `flex-col ${gt.container}`, children: [
535
+ children: /* @__PURE__ */ h("div", { className: `flex-col ${ht.container}`, children: [
536
536
  /* @__PURE__ */ a("span", { children: "Profile Settings" }),
537
- /* @__PURE__ */ a("span", { className: gt.profileEmail, children: n })
537
+ /* @__PURE__ */ a("span", { className: ht.profileEmail, children: n })
538
538
  ] })
539
539
  }
540
540
  ),
541
- !r && /* @__PURE__ */ a(Et, {})
541
+ !r && /* @__PURE__ */ a(It, {})
542
542
  ] });
543
- }, hr = "_wrapper_15d85_1", pr = "_profileImage_15d85_14", br = "_teamName_15d85_22", vr = "_planLabel_15d85_29", Tr = "_membership_15d85_38", yr = "_defaultProfileImage_15d85_44", O = {
544
- wrapper: hr,
545
- profileImage: pr,
546
- teamName: br,
547
- planLabel: vr,
548
- membership: Tr,
549
- defaultProfileImage: yr
550
- }, Bt = ({ team: e, onClick: t, hidePlanLabel: n }) => {
551
- const { currentTeam: r, planId: s } = Q(), i = e || r;
543
+ }, yr = "_wrapper_15d85_1", Sr = "_profileImage_15d85_14", Er = "_teamName_15d85_22", wr = "_planLabel_15d85_29", Cr = "_membership_15d85_38", kr = "_defaultProfileImage_15d85_44", M = {
544
+ wrapper: yr,
545
+ profileImage: Sr,
546
+ teamName: Er,
547
+ planLabel: wr,
548
+ membership: Cr,
549
+ defaultProfileImage: kr
550
+ }, Dt = ({ team: e, onClick: t, hidePlanLabel: n }) => {
551
+ const { currentTeam: r, planId: s } = Y(), i = e || r;
552
552
  if (!i)
553
553
  return null;
554
- const c = Ue(s) ? "Free" : qt(s) ? "Trial" : void 0;
554
+ const c = Be(s) ? "Free" : Bt(s) ? "Trial" : void 0;
555
555
  return /* @__PURE__ */ h(
556
- t ? z : "div",
556
+ t ? K : "div",
557
557
  {
558
- className: `flex-row gap-2 flex-nowrap items-center ${O.wrapper}`,
558
+ className: `flex-row gap-2 flex-nowrap items-center ${M.wrapper}`,
559
559
  ...t && { onClick: () => t(i) },
560
560
  children: [
561
- i.logoUrl ? /* @__PURE__ */ a("img", { className: O.profileImage, src: i.logoUrl, alt: "Team Logo" }) : /* @__PURE__ */ a("span", { className: `flex-row justify-center items-center ${O.defaultProfileImage}`, children: /* @__PURE__ */ a(kt, { size: "25px" }) }),
561
+ i.logoUrl ? /* @__PURE__ */ a("img", { className: M.profileImage, src: i.logoUrl, alt: "Team Logo" }) : /* @__PURE__ */ a("span", { className: `flex-row justify-center items-center ${M.defaultProfileImage}`, children: /* @__PURE__ */ a(Pt, { size: "25px" }) }),
562
562
  /* @__PURE__ */ h("div", { className: "flex-col items-start", children: [
563
563
  /* @__PURE__ */ h("div", { className: "flex-row items-center flex-nowrap gap-2", children: [
564
- /* @__PURE__ */ a("span", { title: i.name, className: O.teamName, children: i.name }),
565
- c && !n && /* @__PURE__ */ a("span", { className: `flex-row justify-center items-center ${O.planLabel}`, children: c })
564
+ /* @__PURE__ */ a("span", { title: i.name, className: M.teamName, children: i.name }),
565
+ c && !n && /* @__PURE__ */ a("span", { className: `flex-row justify-center items-center ${M.planLabel}`, children: c })
566
566
  ] }),
567
- /* @__PURE__ */ a("span", { className: O.membership, children: i.role })
567
+ /* @__PURE__ */ a("span", { className: M.membership, children: i.role })
568
568
  ] })
569
569
  ]
570
570
  }
571
571
  );
572
- }, Cr = "_teamsContainer_1t68g_1", wr = {
573
- teamsContainer: Cr
574
- }, Sr = ({ onSwitchTeam: e }) => {
575
- const { otherTeams: t } = Q();
576
- return t.length === 0 ? null : /* @__PURE__ */ a("div", { className: `flex-col items-stretch ${wr.teamsContainer}`, children: t.map((n) => /* @__PURE__ */ a(Bt, { team: n, onClick: e, hidePlanLabel: !0 }, n.id)) });
577
- }, kr = "_container_1u995_1", Er = "_planCta_1u995_15", Ir = "_upgradeIconWrapper_1u995_19", Ee = {
578
- container: kr,
579
- planCta: Er,
580
- upgradeIconWrapper: Ir
581
- }, Pr = ({ upgradeOptionHref: e }) => {
582
- const { planId: t, trialDaysLeft: n, showUpgradeCta: r } = Q();
572
+ }, Pr = "_teamsContainer_1t68g_1", Ir = {
573
+ teamsContainer: Pr
574
+ }, Ar = ({ onSwitchTeam: e }) => {
575
+ const { otherTeams: t } = Y();
576
+ return t.length === 0 ? null : /* @__PURE__ */ a("div", { className: `flex-col items-stretch ${Ir.teamsContainer}`, children: t.map((n) => /* @__PURE__ */ a(Dt, { team: n, onClick: e, hidePlanLabel: !0 }, n.id)) });
577
+ }, Nr = "_container_1u995_1", Rr = "_planCta_1u995_15", jr = "_upgradeIconWrapper_1u995_19", Ie = {
578
+ container: Nr,
579
+ planCta: Rr,
580
+ upgradeIconWrapper: jr
581
+ }, xr = ({ upgradeOptionHref: e }) => {
582
+ const { planId: t, trialDaysLeft: n, showUpgradeCta: r } = Y();
583
583
  if (!r)
584
584
  return null;
585
- const c = Ue(t) ? "Your team is currently on the Free plan" : `Free trial ends in ${n} ${n === 1 ? "day" : "days"}`;
586
- return /* @__PURE__ */ h(z, { href: e, className: `flex-col gap-1 items-start ${Ee.container}`, children: [
587
- /* @__PURE__ */ a("span", { className: Ee.planCta, children: c }),
588
- /* @__PURE__ */ h("div", { className: `flex-row items-center gap-1 ${Ee.upgradeIconWrapper}`, children: [
589
- /* @__PURE__ */ a(Lt, {}),
585
+ const c = Be(t) ? "Your team is currently on the Free plan" : `Free trial ends in ${n} ${n === 1 ? "day" : "days"}`;
586
+ return /* @__PURE__ */ h(K, { href: e, className: `flex-col gap-1 items-start ${Ie.container}`, children: [
587
+ /* @__PURE__ */ a("span", { className: Ie.planCta, children: c }),
588
+ /* @__PURE__ */ h("div", { className: `flex-row items-center gap-1 ${Ie.upgradeIconWrapper}`, children: [
589
+ /* @__PURE__ */ a(Mt, {}),
590
590
  /* @__PURE__ */ a("span", { children: "See upgrade options" })
591
591
  ] })
592
592
  ] });
593
- }, Nr = Math.min, Rr = Math.max;
594
- function _t(e, t, n) {
595
- return Rr(e, Nr(t, n));
593
+ }, Or = Math.min, Lr = Math.max;
594
+ function pt(e, t, n) {
595
+ return Lr(e, Or(t, n));
596
596
  }
597
597
  function $t(e, t) {
598
598
  return typeof e == "function" ? e(t) : e;
599
599
  }
600
- function Dt(e) {
600
+ function Ft(e) {
601
601
  return e.split("-")[0];
602
602
  }
603
- function jr(e) {
603
+ function Mr(e) {
604
604
  return e === "x" ? "y" : "x";
605
605
  }
606
- function Ar(e) {
607
- return ["top", "bottom"].includes(Dt(e)) ? "y" : "x";
606
+ function Ur(e) {
607
+ return ["top", "bottom"].includes(Ft(e)) ? "y" : "x";
608
608
  }
609
- function xr(e) {
609
+ function qr(e) {
610
610
  return {
611
611
  top: 0,
612
612
  right: 0,
@@ -615,15 +615,15 @@ function xr(e) {
615
615
  ...e
616
616
  };
617
617
  }
618
- function Lr(e) {
619
- return typeof e != "number" ? xr(e) : {
618
+ function Hr(e) {
619
+ return typeof e != "number" ? qr(e) : {
620
620
  top: e,
621
621
  right: e,
622
622
  bottom: e,
623
623
  left: e
624
624
  };
625
625
  }
626
- function ht(e) {
626
+ function bt(e) {
627
627
  const {
628
628
  x: t,
629
629
  y: n,
@@ -641,7 +641,7 @@ function ht(e) {
641
641
  y: n
642
642
  };
643
643
  }
644
- async function Or(e, t) {
644
+ async function Br(e, t) {
645
645
  var n;
646
646
  t === void 0 && (t = {});
647
647
  const {
@@ -654,39 +654,39 @@ async function Or(e, t) {
654
654
  } = e, {
655
655
  boundary: d = "clippingAncestors",
656
656
  rootBoundary: m = "viewport",
657
- elementContext: g = "floating",
657
+ elementContext: _ = "floating",
658
658
  altBoundary: T = !1,
659
659
  padding: y = 0
660
- } = $t(t, e), f = Lr(y), b = l[T ? g === "floating" ? "reference" : "floating" : g], _ = ht(await i.getClippingRect({
660
+ } = $t(t, e), f = Hr(y), b = l[T ? _ === "floating" ? "reference" : "floating" : _], g = bt(await i.getClippingRect({
661
661
  element: (n = await (i.isElement == null ? void 0 : i.isElement(b))) == null || n ? b : b.contextElement || await (i.getDocumentElement == null ? void 0 : i.getDocumentElement(l.floating)),
662
662
  boundary: d,
663
663
  rootBoundary: m,
664
664
  strategy: u
665
- })), p = g === "floating" ? {
665
+ })), p = _ === "floating" ? {
666
666
  x: r,
667
667
  y: s,
668
668
  width: c.floating.width,
669
669
  height: c.floating.height
670
- } : c.reference, v = await (i.getOffsetParent == null ? void 0 : i.getOffsetParent(l.floating)), k = await (i.isElement == null ? void 0 : i.isElement(v)) ? await (i.getScale == null ? void 0 : i.getScale(v)) || {
670
+ } : c.reference, v = await (i.getOffsetParent == null ? void 0 : i.getOffsetParent(l.floating)), C = await (i.isElement == null ? void 0 : i.isElement(v)) ? await (i.getScale == null ? void 0 : i.getScale(v)) || {
671
671
  x: 1,
672
672
  y: 1
673
673
  } : {
674
674
  x: 1,
675
675
  y: 1
676
- }, S = ht(i.convertOffsetParentRelativeRectToViewportRelativeRect ? await i.convertOffsetParentRelativeRectToViewportRelativeRect({
676
+ }, w = bt(i.convertOffsetParentRelativeRectToViewportRelativeRect ? await i.convertOffsetParentRelativeRectToViewportRelativeRect({
677
677
  elements: l,
678
678
  rect: p,
679
679
  offsetParent: v,
680
680
  strategy: u
681
681
  }) : p);
682
682
  return {
683
- top: (_.top - S.top + f.top) / k.y,
684
- bottom: (S.bottom - _.bottom + f.bottom) / k.y,
685
- left: (_.left - S.left + f.left) / k.x,
686
- right: (S.right - _.right + f.right) / k.x
683
+ top: (g.top - w.top + f.top) / C.y,
684
+ bottom: (w.bottom - g.bottom + f.bottom) / C.y,
685
+ left: (g.left - w.left + f.left) / C.x,
686
+ right: (w.right - g.right + f.right) / C.x
687
687
  };
688
688
  }
689
- const Mr = function(e) {
689
+ const Dr = function(e) {
690
690
  return e === void 0 && (e = {}), {
691
691
  name: "shift",
692
692
  options: e,
@@ -701,11 +701,11 @@ const Mr = function(e) {
701
701
  limiter: l = {
702
702
  fn: (b) => {
703
703
  let {
704
- x: _,
704
+ x: g,
705
705
  y: p
706
706
  } = b;
707
707
  return {
708
- x: _,
708
+ x: g,
709
709
  y: p
710
710
  };
711
711
  }
@@ -714,78 +714,78 @@ const Mr = function(e) {
714
714
  } = $t(e, t), d = {
715
715
  x: n,
716
716
  y: r
717
- }, m = await Or(t, u), g = Ar(Dt(s)), T = jr(g);
718
- let y = d[T], f = d[g];
717
+ }, m = await Br(t, u), _ = Ur(Ft(s)), T = Mr(_);
718
+ let y = d[T], f = d[_];
719
719
  if (i) {
720
- const b = T === "y" ? "top" : "left", _ = T === "y" ? "bottom" : "right", p = y + m[b], v = y - m[_];
721
- y = _t(p, y, v);
720
+ const b = T === "y" ? "top" : "left", g = T === "y" ? "bottom" : "right", p = y + m[b], v = y - m[g];
721
+ y = pt(p, y, v);
722
722
  }
723
723
  if (c) {
724
- const b = g === "y" ? "top" : "left", _ = g === "y" ? "bottom" : "right", p = f + m[b], v = f - m[_];
725
- f = _t(p, f, v);
724
+ const b = _ === "y" ? "top" : "left", g = _ === "y" ? "bottom" : "right", p = f + m[b], v = f - m[g];
725
+ f = pt(p, f, v);
726
726
  }
727
- const w = l.fn({
727
+ const E = l.fn({
728
728
  ...t,
729
729
  [T]: y,
730
- [g]: f
730
+ [_]: f
731
731
  });
732
732
  return {
733
- ...w,
733
+ ...E,
734
734
  data: {
735
- x: w.x - n,
736
- y: w.y - r,
735
+ x: E.x - n,
736
+ y: E.y - r,
737
737
  enabled: {
738
738
  [T]: i,
739
- [g]: c
739
+ [_]: c
740
740
  }
741
741
  }
742
742
  };
743
743
  }
744
744
  };
745
- }, Ur = "_navItem_1dudv_1", qr = "_activeNavItem_1dudv_18", Br = "_badge_1dudv_23", Ie = {
746
- navItem: Ur,
747
- activeNavItem: qr,
748
- badge: Br
749
- }, Ht = wt({}), Y = () => Ct(Ht), $r = (e) => {
745
+ }, $r = "_navItem_1dudv_1", Fr = "_activeNavItem_1dudv_18", zr = "_badge_1dudv_23", Ae = {
746
+ navItem: $r,
747
+ activeNavItem: Fr,
748
+ badge: zr
749
+ }, zt = Ct({}), V = () => wt(zt), Gr = (e) => {
750
750
  const t = e.lastIndexOf("."), n = e.slice(0, t), r = e.slice(t + 1);
751
751
  return { name: n, extension: r };
752
- }, Dr = (e, t) => {
752
+ }, Kr = (e, t) => {
753
753
  switch (e) {
754
- case I.Completed:
754
+ case P.Completed:
755
755
  return t < 100 ? "Closed" : "Completed";
756
- case I.Created:
756
+ case P.Created:
757
757
  return t > 0 ? "In progress" : "Not started";
758
- case I.InProgress:
758
+ case P.InProgress:
759
759
  return "In progress";
760
- case I.Queued:
760
+ case P.Queued:
761
761
  return "Queued";
762
- case I.NotStarted:
762
+ case P.NotStarted:
763
763
  return "Not started";
764
764
  default:
765
765
  return "-";
766
766
  }
767
- }, Hr = (e) => {
767
+ }, Wr = (e) => {
768
768
  const t = e.progress ?? 0;
769
- return e.status === I.Created && t > 0 ? I.InProgress : e.status;
770
- }, Fr = {
771
- [X.translation]: "#0891B2",
772
- [X.review]: "#16922D",
773
- [X.lqa_by_ai]: "#8B5CF6",
774
- [X.automatic_translation]: "#60A5FA"
775
- }, Jr = (e) => {
769
+ return e.status === P.Created && t > 0 ? P.InProgress : e.status;
770
+ }, Jr = {
771
+ [te.translation]: "#0891B2",
772
+ [te.review]: "#16922D",
773
+ [te.lqa_by_ai]: "#8B5CF6",
774
+ [te.automatic_translation]: "#60A5FA"
775
+ }, Qr = (e) => {
776
776
  const t = [
777
- I.InProgress,
778
- I.Created,
779
- I.Completed
777
+ P.InProgress,
778
+ P.Created,
779
+ P.Completed
780
780
  ];
781
- return e.filter((n) => n.status !== "queued").map((n) => ({ ...n, status: Hr(n) })).sort((n, r) => n.status === I.InProgress && n.progress === 100 ? -1 : r.status === I.InProgress && r.progress === 100 ? 1 : n.status === r.status ? n.name < r.name ? 1 : -1 : t.indexOf(n.status) - t.indexOf(r.status));
782
- }, pt = (e) => e in [je.InProgress, je.Created], zr = (e, t) => pt(e.status) && pt(t.status) && (t.progress ?? 0) >= 100, Gr = ({ task: e, language: t }) => {
783
- const [n, r] = N(!1), [s, i] = N(!1), { onLanguageCompleteConfirm: c, fetchTasks: l } = Y(), u = () => {
781
+ return e.filter((n) => n.status !== "queued").map((n) => ({ ...n, status: Wr(n) })).sort((n, r) => n.status === P.InProgress && n.progress === 100 ? -1 : r.status === P.InProgress && r.progress === 100 ? 1 : n.status === r.status ? n.name < r.name ? 1 : -1 : t.indexOf(n.status) - t.indexOf(r.status));
782
+ }, vt = (e) => e in [xe.InProgress, xe.Created], Yr = (e, t) => vt(e.status) && vt(t.status) && (t.progress ?? 0) >= 100, Vr = ({ task: e, language: t }) => {
783
+ const [n, r] = N(!1), [s, i] = N(!1), { onLanguageCompleteConfirm: c, fetchTasks: l } = V(), u = () => {
784
784
  i(!1);
785
785
  };
786
- return /* @__PURE__ */ h(Le, { children: [
786
+ return /* @__PURE__ */ h(Ue, { children: [
787
787
  s && /* @__PURE__ */ a(
788
- Xt,
788
+ on,
789
789
  {
790
790
  opened: !0,
791
791
  loading: n,
@@ -796,7 +796,7 @@ const Mr = function(e) {
796
796
  onConfirm: async () => {
797
797
  r(!0), await c({ task: e, language: t, closePrompt: u }), l();
798
798
  },
799
- children: /* @__PURE__ */ h(en, { status: "info", children: [
799
+ children: /* @__PURE__ */ h(an, { status: "info", children: [
800
800
  "Make sure you are finished and ",
801
801
  /* @__PURE__ */ a("strong", { children: "mark it as done" }),
802
802
  " to notify your team admin. This action cannot be undone, and the language might no longer be available for you to edit."
@@ -814,20 +814,20 @@ const Mr = function(e) {
814
814
  }
815
815
  )
816
816
  ] });
817
- }, Wr = "_langRowCompleted_vpgdi_1", Kr = "_langCellSecondary_vpgdi_15", Qr = "_langStatus_vpgdi_20", Pe = {
818
- langRowCompleted: Wr,
819
- langCellSecondary: Kr,
820
- langStatus: Qr
821
- }, Yr = ({ language: e, task: t }) => {
822
- const { getProjectUrl: n, langNameOnClick: r, langProgressOnClick: s } = Y(), i = e.progress ?? 0, c = e.status === I.Completed, l = zr(t, e);
817
+ }, Xr = "_langRowCompleted_vpgdi_1", Zr = "_langCellSecondary_vpgdi_15", eo = "_langStatus_vpgdi_20", Ne = {
818
+ langRowCompleted: Xr,
819
+ langCellSecondary: Zr,
820
+ langStatus: eo
821
+ }, to = ({ language: e, task: t }) => {
822
+ const { getProjectUrl: n, langNameOnClick: r, langProgressOnClick: s } = V(), i = e.progress ?? 0, c = e.status === P.Completed, l = Yr(t, e);
823
823
  return /* @__PURE__ */ h(
824
824
  "tr",
825
825
  {
826
826
  className: R({
827
- [Pe.langRowCompleted]: l
827
+ [Ne.langRowCompleted]: l
828
828
  }),
829
829
  children: [
830
- /* @__PURE__ */ a("td", { children: /* @__PURE__ */ a(q, { tooltip: "Open in bilingual view", children: /* @__PURE__ */ a(
830
+ /* @__PURE__ */ a("td", { children: /* @__PURE__ */ a(H, { tooltip: "Open in bilingual view", children: /* @__PURE__ */ a(
831
831
  L,
832
832
  {
833
833
  href: n({ task: t, language: e }),
@@ -837,7 +837,7 @@ const Mr = function(e) {
837
837
  children: e.name
838
838
  }
839
839
  ) }) }),
840
- /* @__PURE__ */ a("td", { className: Pe.langCellSecondary, children: l || c ? "0" : /* @__PURE__ */ a(q, { tooltip: "Open uncompleted items", children: /* @__PURE__ */ a(
840
+ /* @__PURE__ */ a("td", { className: Ne.langCellSecondary, children: l || c ? "0" : /* @__PURE__ */ a(H, { tooltip: "Open uncompleted items", children: /* @__PURE__ */ a(
841
841
  L,
842
842
  {
843
843
  href: n({ task: t, language: e, taskUncompleted: !0 }),
@@ -851,42 +851,42 @@ const Mr = function(e) {
851
851
  i,
852
852
  "%"
853
853
  ] }),
854
- /* @__PURE__ */ a("td", { children: l ? /* @__PURE__ */ a(Gr, { task: t, language: e }) : /* @__PURE__ */ a(
854
+ /* @__PURE__ */ a("td", { children: l ? /* @__PURE__ */ a(Vr, { task: t, language: e }) : /* @__PURE__ */ a(
855
855
  "span",
856
856
  {
857
- className: `${Pe.langStatus} flex-row items-center justify-start`,
857
+ className: `${Ne.langStatus} flex-row items-center justify-start`,
858
858
  "data-status": e.status,
859
- children: Dr(e.status, i)
859
+ children: Kr(e.status, i)
860
860
  }
861
861
  ) })
862
862
  ]
863
863
  }
864
864
  );
865
- }, Vr = "_taskContainer_mt2or_1", Zr = "_taskTitle_mt2or_21", Xr = "_taskDescription_mt2or_28", eo = "_languagesTable_mt2or_35", to = "_metadata_mt2or_87", M = {
866
- taskContainer: Vr,
867
- taskTitle: Zr,
868
- taskDescription: Xr,
869
- languagesTable: eo,
870
- metadata: to
871
- }, no = ({ task: e }) => {
872
- const { tasks: t, getProjectUrl: n, taskTitleOnClick: r } = Y(), s = Jr(e.langs), i = (c) => {
865
+ }, no = "_taskContainer_mt2or_1", ro = "_taskTitle_mt2or_21", oo = "_taskDescription_mt2or_28", ao = "_languagesTable_mt2or_35", so = "_metadata_mt2or_87", U = {
866
+ taskContainer: no,
867
+ taskTitle: ro,
868
+ taskDescription: oo,
869
+ languagesTable: ao,
870
+ metadata: so
871
+ }, io = ({ task: e }) => {
872
+ const { tasks: t, getProjectUrl: n, taskTitleOnClick: r } = V(), s = Qr(e.langs), i = (c) => {
873
873
  c !== void 0 && window.open(
874
874
  `/style-guide/${e.team_id}/download/${c.id}/link`,
875
875
  "_blank",
876
876
  "noopener,noreferrer"
877
877
  );
878
878
  };
879
- return t ? /* @__PURE__ */ h("div", { className: M.taskContainer, children: [
879
+ return t ? /* @__PURE__ */ h("div", { className: U.taskContainer, children: [
880
880
  /* @__PURE__ */ h("div", { className: "flex-row gap-1 items-center", children: [
881
881
  /* @__PURE__ */ h("div", { className: "flex-row gap-1 items-start flex-wrap", children: [
882
- /* @__PURE__ */ a(Ne, { color: Fr[e.task_type], variant: "solid", children: e.task_type.toLocaleUpperCase() }),
883
- e.due_date && /* @__PURE__ */ h(Ne, { color: "#EAB308", children: [
882
+ /* @__PURE__ */ a(Re, { color: Jr[e.task_type], variant: "solid", children: e.task_type.toLocaleUpperCase() }),
883
+ e.due_date && /* @__PURE__ */ h(Re, { color: "#EAB308", children: [
884
884
  "DUE ",
885
- dr(on(e.due_date), "yyyy-MM-dd")
885
+ gr(dn(e.due_date), "yyyy-MM-dd")
886
886
  ] })
887
887
  ] }),
888
888
  e.style_guides.length > 0 && /* @__PURE__ */ a("div", { className: "flex-row", children: e.style_guides.length === 1 ? /* @__PURE__ */ a(
889
- Re,
889
+ je,
890
890
  {
891
891
  size: "sm",
892
892
  variant: "secondary",
@@ -894,21 +894,21 @@ const Mr = function(e) {
894
894
  children: "Download style guide"
895
895
  }
896
896
  ) : /* @__PURE__ */ a(
897
- oe,
897
+ ae,
898
898
  {
899
- menuButton: /* @__PURE__ */ a(Re, { variant: "secondary", size: "sm", children: "Download style guide" }),
900
- children: /* @__PURE__ */ a(ae, { children: e.style_guides.map((c) => /* @__PURE__ */ a(
901
- z,
899
+ menuButton: /* @__PURE__ */ a(je, { variant: "secondary", size: "sm", children: "Download style guide" }),
900
+ children: /* @__PURE__ */ a(se, { children: e.style_guides.map((c) => /* @__PURE__ */ a(
901
+ K,
902
902
  {
903
903
  onClick: () => i(c),
904
- children: $r(c.name).name
904
+ children: Gr(c.name).name
905
905
  },
906
906
  c.id
907
907
  )) })
908
908
  }
909
909
  ) })
910
910
  ] }),
911
- /* @__PURE__ */ a("h4", { className: M.taskTitle, children: /* @__PURE__ */ a(
911
+ /* @__PURE__ */ a("h4", { className: U.taskTitle, children: /* @__PURE__ */ a(
912
912
  L,
913
913
  {
914
914
  href: n({ task: e, view: "multi" }),
@@ -918,17 +918,17 @@ const Mr = function(e) {
918
918
  children: e.title
919
919
  }
920
920
  ) }),
921
- e.description && /* @__PURE__ */ a("div", { className: M.taskDescription, children: sr(lr(e.description)) }),
922
- /* @__PURE__ */ h("table", { className: M.languagesTable, children: [
921
+ e.description && /* @__PURE__ */ a("div", { className: U.taskDescription, children: ur(_r(e.description)) }),
922
+ /* @__PURE__ */ h("table", { className: U.languagesTable, children: [
923
923
  /* @__PURE__ */ a("thead", { children: /* @__PURE__ */ h("tr", { children: [
924
924
  /* @__PURE__ */ a("th", { children: "Languages" }),
925
925
  /* @__PURE__ */ a("th", { children: "Words to do" }),
926
926
  /* @__PURE__ */ a("th", { children: "Progress" }),
927
927
  /* @__PURE__ */ a("th", { children: "Status" })
928
928
  ] }) }),
929
- /* @__PURE__ */ a("tbody", { children: s.map((c) => /* @__PURE__ */ a(Yr, { language: c, task: e }, c.lang_id)) })
929
+ /* @__PURE__ */ a("tbody", { children: s.map((c) => /* @__PURE__ */ a(to, { language: c, task: e }, c.lang_id)) })
930
930
  ] }),
931
- /* @__PURE__ */ h("div", { className: M.metadata, children: [
931
+ /* @__PURE__ */ h("div", { className: U.metadata, children: [
932
932
  /* @__PURE__ */ h("span", { children: [
933
933
  "Source: ",
934
934
  e.source_lang_name
@@ -937,51 +937,51 @@ const Mr = function(e) {
937
937
  /* @__PURE__ */ h("span", { children: [
938
938
  "In ",
939
939
  e.project_name,
940
- e.master_branching_enabled === "1" && /* @__PURE__ */ a("div", { className: M.tag, children: e.branch_name ? e.branch_name : "master" })
940
+ e.master_branching_enabled === "1" && /* @__PURE__ */ a("div", { className: U.tag, children: e.branch_name ? e.branch_name : "master" })
941
941
  ] })
942
942
  ] })
943
943
  ] }) : null;
944
- }, E = {
944
+ }, k = {
945
945
  TaskCompleted: "task_completed",
946
946
  TaskClosed: "task_closed",
947
947
  Refresh: "refresh",
948
948
  ShowDialog: "show_dialog"
949
- }, ro = "_loadingContainer_19d6m_1", oo = "_noTasksContainer_19d6m_7", ao = "_noTasksHeading_19d6m_14", so = "_noTasksText_19d6m_18", io = "_tasksContainer_19d6m_23", D = {
950
- loadingContainer: ro,
951
- noTasksContainer: oo,
952
- noTasksHeading: ao,
953
- noTasksText: so,
954
- tasksContainer: io
955
- }, co = () => {
956
- const { tasks: e, onTasksWidgetOpen: t, loadingTasks: n, fetchTasks: r } = Y();
957
- return qe(() => (r(), t == null || t({ tasks: e }), document.addEventListener(E.TaskCompleted, r), document.addEventListener(E.TaskClosed, r), document.addEventListener(E.Refresh, r), () => {
958
- document.removeEventListener(E.TaskCompleted, r), document.removeEventListener(E.TaskClosed, r), document.removeEventListener(E.Refresh, r);
959
- })), n ? /* @__PURE__ */ a("div", { "data-testid": "sidebar-tasks-loading-popover", className: D.loadingContainer, children: /* @__PURE__ */ a(tn, {}) }) : e.length === 0 ? /* @__PURE__ */ h("div", { "data-testid": "sidebar-no-tasks-popover", className: D.noTasksContainer, children: [
960
- /* @__PURE__ */ a("h3", { className: D.noTasksHeading, children: "No tasks" }),
961
- /* @__PURE__ */ h("div", { className: D.noTasksText, children: [
949
+ }, co = "_loadingContainer_19d6m_1", lo = "_noTasksContainer_19d6m_7", uo = "_noTasksHeading_19d6m_14", mo = "_noTasksText_19d6m_18", fo = "_tasksContainer_19d6m_23", $ = {
950
+ loadingContainer: co,
951
+ noTasksContainer: lo,
952
+ noTasksHeading: uo,
953
+ noTasksText: mo,
954
+ tasksContainer: fo
955
+ }, _o = () => {
956
+ const { tasks: e, onTasksWidgetOpen: t, loadingTasks: n, fetchTasks: r } = V();
957
+ return De(() => (r(), t == null || t({ tasks: e }), document.addEventListener(k.TaskCompleted, r), document.addEventListener(k.TaskClosed, r), document.addEventListener(k.Refresh, r), () => {
958
+ document.removeEventListener(k.TaskCompleted, r), document.removeEventListener(k.TaskClosed, r), document.removeEventListener(k.Refresh, r);
959
+ })), n ? /* @__PURE__ */ a("div", { "data-testid": "sidebar-tasks-loading-popover", className: $.loadingContainer, children: /* @__PURE__ */ a(sn, {}) }) : e.length === 0 ? /* @__PURE__ */ h("div", { "data-testid": "sidebar-no-tasks-popover", className: $.noTasksContainer, children: [
960
+ /* @__PURE__ */ a("h3", { className: $.noTasksHeading, children: "No tasks" }),
961
+ /* @__PURE__ */ h("div", { className: $.noTasksText, children: [
962
962
  "Your incoming tasks will appear here.",
963
963
  /* @__PURE__ */ a("br", {}),
964
964
  /* @__PURE__ */ a(L, { href: "https://docs.lokalise.com/translation-workflow/tasks", target: "_new", children: "Learn more" })
965
965
  ] })
966
- ] }) : /* @__PURE__ */ a("div", { "data-testid": "sidebar-tasks-popover", className: D.tasksContainer, children: e.map((s) => /* @__PURE__ */ a(no, { task: s }, s.id)) });
967
- }, lo = ({ children: e, config: t }) => {
966
+ ] }) : /* @__PURE__ */ a("div", { "data-testid": "sidebar-tasks-popover", className: $.tasksContainer, children: e.map((s) => /* @__PURE__ */ a(io, { task: s }, s.id)) });
967
+ }, go = ({ children: e, config: t }) => {
968
968
  const [n, r] = N([]), [s, i] = N(!0), [c, l] = N(0), {
969
969
  getProjectUrl: u,
970
970
  onLanguageCompleteConfirm: d,
971
971
  onTasksWidgetOpen: m,
972
- langNameOnClick: g,
972
+ langNameOnClick: _,
973
973
  langProgressOnClick: T,
974
974
  taskTitleOnClick: y
975
- } = t, { getTasks: f, getTasksCount: w } = t, b = async () => {
975
+ } = t, { getTasks: f, getTasksCount: E } = t, b = async () => {
976
976
  i(!0);
977
977
  const v = await f();
978
978
  r(v), i(!1);
979
- }, _ = async () => {
980
- const v = await w();
979
+ }, g = async () => {
980
+ const v = await E();
981
981
  l(v);
982
982
  };
983
- qe(() => (_(), document.addEventListener(E.TaskCompleted, _), document.addEventListener(E.TaskClosed, _), document.addEventListener(E.Refresh, _), () => {
984
- document.removeEventListener(E.TaskCompleted, _), document.removeEventListener(E.TaskClosed, _), document.removeEventListener(E.Refresh, _);
983
+ De(() => (g(), document.addEventListener(k.TaskCompleted, g), document.addEventListener(k.TaskClosed, g), document.addEventListener(k.Refresh, g), () => {
984
+ document.removeEventListener(k.TaskCompleted, g), document.removeEventListener(k.TaskClosed, g), document.removeEventListener(k.Refresh, g);
985
985
  }));
986
986
  const p = {
987
987
  fetchTasks: b,
@@ -991,32 +991,32 @@ const Mr = function(e) {
991
991
  getProjectUrl: u,
992
992
  onLanguageCompleteConfirm: d,
993
993
  onTasksWidgetOpen: m,
994
- langNameOnClick: g,
994
+ langNameOnClick: _,
995
995
  langProgressOnClick: T,
996
996
  taskTitleOnClick: y
997
997
  };
998
- return /* @__PURE__ */ a(Ht.Provider, { value: p, children: e });
999
- }, uo = (e) => function(n) {
998
+ return /* @__PURE__ */ a(zt.Provider, { value: p, children: e });
999
+ }, ho = (e) => function(n) {
1000
1000
  const { config: r, ...s } = n;
1001
- return /* @__PURE__ */ a(lo, { config: r, children: /* @__PURE__ */ a(e, { ...s }) });
1002
- }, mo = uo(() => {
1003
- const [e, t] = N(!1), { tasksCount: n } = Y();
1004
- return qe(() => {
1001
+ return /* @__PURE__ */ a(go, { config: r, children: /* @__PURE__ */ a(e, { ...s }) });
1002
+ }, po = ho(() => {
1003
+ const [e, t] = N(!1), { tasksCount: n } = V();
1004
+ return De(() => {
1005
1005
  const r = () => {
1006
1006
  t(!0);
1007
1007
  };
1008
- return document.addEventListener(E.ShowDialog, r), () => {
1009
- document.removeEventListener(E.ShowDialog, r);
1008
+ return document.addEventListener(k.ShowDialog, r), () => {
1009
+ document.removeEventListener(k.ShowDialog, r);
1010
1010
  };
1011
- }), /* @__PURE__ */ a(q, { tooltip: "Tasks", placement: "right", children: /* @__PURE__ */ a(
1012
- nn,
1011
+ }), /* @__PURE__ */ a(H, { tooltip: "Tasks", placement: "right", children: /* @__PURE__ */ a(
1012
+ cn,
1013
1013
  {
1014
- content: /* @__PURE__ */ a(co, {}),
1014
+ content: /* @__PURE__ */ a(_o, {}),
1015
1015
  placement: "right",
1016
1016
  open: e,
1017
1017
  onOpenChange: t,
1018
1018
  middlewares: [
1019
- Mr({
1019
+ Dr({
1020
1020
  // Adding some spacing to the top and bottom so the popover
1021
1021
  // doesn't extend to the edges of the screen.
1022
1022
  padding: {
@@ -1026,92 +1026,92 @@ const Mr = function(e) {
1026
1026
  })
1027
1027
  ],
1028
1028
  children: (r) => /* @__PURE__ */ h(
1029
- Re,
1029
+ je,
1030
1030
  {
1031
1031
  type: "button",
1032
1032
  "data-testid": "sidebar-tasks-widget-button",
1033
1033
  "aria-label": "Tasks",
1034
- className: R(Ie.navItem, {
1035
- [Ie.activeNavItem]: r
1034
+ className: R(Ae.navItem, {
1035
+ [Ae.activeNavItem]: r
1036
1036
  }),
1037
1037
  children: [
1038
- /* @__PURE__ */ a(rn, { size: "25px" }),
1039
- n > 0 && /* @__PURE__ */ a("div", { className: Ie.badge, "aria-label": `${n} items requiring attention`, children: n > 9 ? "9+" : n })
1038
+ /* @__PURE__ */ a(ln, { size: "25px" }),
1039
+ n > 0 && /* @__PURE__ */ a("div", { className: Ae.badge, "aria-label": `${n} items requiring attention`, children: n > 9 ? "9+" : n })
1040
1040
  ]
1041
1041
  }
1042
1042
  )
1043
1043
  }
1044
1044
  ) });
1045
- }), P = ({ children: e, ...t }) => /* @__PURE__ */ a("nav", { ...t, className: Ln.sidebarContainer, children: e }), fo = ({ children: e }) => /* @__PURE__ */ a("div", { children: e });
1046
- P.Top = fo;
1047
- const go = ({ children: e }) => /* @__PURE__ */ a("div", { children: e });
1048
- P.Bottom = go;
1049
- P.Avatar = Un;
1050
- P.IconLink = $n;
1051
- P.Menu = Fn;
1052
- P.ProfileMenu = mr;
1053
- P.TeamSwitch = Sr;
1054
- P.TeamMenuItem = Bt;
1055
- P.UpgradeMenuItem = Pr;
1056
- P.ProfileSettingsMenuItem = _r;
1057
- P.Tasks = mo;
1058
- const _o = "_breadcrumbsItem_1hm6a_1", ho = "_breadcrumbs_1hm6a_1", bt = {
1059
- breadcrumbsItem: _o,
1060
- breadcrumbs: ho
1061
- }, Ia = ({ items: e }) => /* @__PURE__ */ a("nav", { "aria-label": "breadcrumb", className: bt.breadcrumbs, children: e.map((t, n) => /* @__PURE__ */ h(St, { children: [
1062
- /* @__PURE__ */ a(L, { className: bt.breadcrumbsItem, href: t.link, rel: "noreferrer", children: t.name }),
1045
+ }), I = ({ children: e, ...t }) => /* @__PURE__ */ a("nav", { ...t, className: Hn.sidebarContainer, children: e }), bo = ({ children: e }) => /* @__PURE__ */ a("div", { children: e });
1046
+ I.Top = bo;
1047
+ const vo = ({ children: e }) => /* @__PURE__ */ a("div", { children: e });
1048
+ I.Bottom = vo;
1049
+ I.Avatar = $n;
1050
+ I.IconLink = Gn;
1051
+ I.Menu = Jn;
1052
+ I.ProfileMenu = pr;
1053
+ I.TeamSwitch = Ar;
1054
+ I.TeamMenuItem = Dt;
1055
+ I.UpgradeMenuItem = xr;
1056
+ I.ProfileSettingsMenuItem = Tr;
1057
+ I.Tasks = po;
1058
+ const To = "_breadcrumbsItem_1hm6a_1", yo = "_breadcrumbs_1hm6a_1", Tt = {
1059
+ breadcrumbsItem: To,
1060
+ breadcrumbs: yo
1061
+ }, Ua = ({ items: e }) => /* @__PURE__ */ a("nav", { "aria-label": "breadcrumb", className: Tt.breadcrumbs, children: e.map((t, n) => /* @__PURE__ */ h(kt, { children: [
1062
+ /* @__PURE__ */ a(L, { className: Tt.breadcrumbsItem, href: t.link, rel: "noreferrer", children: t.name }),
1063
1063
  n < e.length - 1 && /* @__PURE__ */ a("span", { children: " — " })
1064
- ] }, `${t.link}-${t.name}`)) }), po = ({ items: e }) => /* @__PURE__ */ a(Le, { children: e.map((t, n) => /* @__PURE__ */ h(St, { children: [
1065
- !!n && t.some((r) => r.visible) && /* @__PURE__ */ a(Et, {}),
1066
- t.filter(({ visible: r }) => r).map(({ link: r, label: s, onClick: i }) => /* @__PURE__ */ a(z, { href: r || "#", "aria-label": s, onClick: i, children: s }, s))
1067
- ] }, t[0].label)) }), bo = "_badge_1pc1v_1", vo = "_tag_1pc1v_15", To = "_withNavLinkStyle_1pc1v_42 _withLinkStyle_1pc1v_21", yo = "_disabled_1pc1v_57", Co = "_projectNavigationItem_1pc1v_61", wo = "_projectNavigationItemDisabled_1pc1v_67", x = {
1068
- badge: bo,
1069
- tag: vo,
1070
- withNavLinkStyle: To,
1071
- disabled: yo,
1072
- projectNavigationItem: Co,
1073
- projectNavigationItemDisabled: wo
1074
- }, vt = ({ label: e, badge: t, novel: n }) => /* @__PURE__ */ h("div", { className: "flex gap-1", children: [
1064
+ ] }, `${t.link}-${t.name}`)) }), So = ({ items: e }) => /* @__PURE__ */ a(Ue, { children: e.map((t, n) => /* @__PURE__ */ h(kt, { children: [
1065
+ !!n && t.some((r) => r.visible) && /* @__PURE__ */ a(It, {}),
1066
+ t.filter(({ visible: r }) => r).map(({ link: r, label: s, onClick: i }) => /* @__PURE__ */ a(K, { href: r || "#", "aria-label": s, onClick: i, children: s }, s))
1067
+ ] }, t[0].label)) }), Eo = "_badge_1pc1v_1", wo = "_tag_1pc1v_15", Co = "_withNavLinkStyle_1pc1v_42 _withLinkStyle_1pc1v_21", ko = "_disabled_1pc1v_57", Po = "_projectNavigationItem_1pc1v_61", Io = "_projectNavigationItemDisabled_1pc1v_67", O = {
1068
+ badge: Eo,
1069
+ tag: wo,
1070
+ withNavLinkStyle: Co,
1071
+ disabled: ko,
1072
+ projectNavigationItem: Po,
1073
+ projectNavigationItemDisabled: Io
1074
+ }, yt = ({ label: e, badge: t, novel: n }) => /* @__PURE__ */ h("div", { className: "flex gap-1", children: [
1075
1075
  /* @__PURE__ */ h("div", { children: [
1076
1076
  /* @__PURE__ */ a("span", { children: e }),
1077
- !!t && /* @__PURE__ */ a("div", { className: x.badge, "aria-label": `${t} items requiring attention`, children: t > 9 ? "9+" : t })
1077
+ !!t && /* @__PURE__ */ a("div", { className: O.badge, "aria-label": `${t} items requiring attention`, children: t > 9 ? "9+" : t })
1078
1078
  ] }),
1079
- !!n && /* @__PURE__ */ a(Ne, { className: x.tag, children: n })
1080
- ] }), Ae = Vt(
1081
- ({ label: e, href: t = "", disabled: n = !1, badge: r, onClick: s, novel: i }, c) => /* @__PURE__ */ a(q, { tooltip: "You do not have access to this function", show: n, children: /* @__PURE__ */ a(
1079
+ !!n && /* @__PURE__ */ a(Re, { className: O.tag, children: n })
1080
+ ] }), Oe = nn(
1081
+ ({ label: e, href: t = "", disabled: n = !1, badge: r, onClick: s, novel: i }, c) => /* @__PURE__ */ a(H, { tooltip: "You do not have access to this function", show: n, children: /* @__PURE__ */ a(
1082
1082
  "div",
1083
1083
  {
1084
- className: n ? x.projectNavigationItemDisabled : x.projectNavigationItem,
1084
+ className: n ? O.projectNavigationItemDisabled : O.projectNavigationItem,
1085
1085
  children: s || n || !t ? /* @__PURE__ */ a(
1086
1086
  "button",
1087
1087
  {
1088
1088
  type: "button",
1089
1089
  ref: c,
1090
- className: R(x.withNavLinkStyle, {
1091
- [x.disabled]: n
1090
+ className: R(O.withNavLinkStyle, {
1091
+ [O.disabled]: n
1092
1092
  }),
1093
1093
  disabled: n,
1094
1094
  onClick: s,
1095
- children: /* @__PURE__ */ a(vt, { label: e, badge: r, novel: i })
1095
+ children: /* @__PURE__ */ a(yt, { label: e, badge: r, novel: i })
1096
1096
  }
1097
- ) : /* @__PURE__ */ a("a", { href: t, className: x.withNavLinkStyle, children: /* @__PURE__ */ a(vt, { label: e, badge: r, novel: i }) })
1097
+ ) : /* @__PURE__ */ a("a", { href: t, className: O.withNavLinkStyle, children: /* @__PURE__ */ a(yt, { label: e, badge: r, novel: i }) })
1098
1098
  }
1099
1099
  ) })
1100
1100
  );
1101
- Ae.displayName = "NavigationTabsItem";
1102
- const So = (e) => (e == null ? void 0 : e.some((t) => t.some((n) => n.visible))) ?? !1, ko = (e) => e.visible && (!e.dropdown || So(e.dropdown)), Pa = ({ navigation: e, activeItem: t }) => /* @__PURE__ */ a("nav", { "aria-label": "Project", children: /* @__PURE__ */ a("ul", { className: U.navigationTabList, "aria-orientation": "horizontal", children: e.filter(ko).map((n) => {
1101
+ Oe.displayName = "NavigationTabsItem";
1102
+ const Ao = (e) => (e == null ? void 0 : e.some((t) => t.some((n) => n.visible))) ?? !1, No = (e) => e.visible && (!e.dropdown || Ao(e.dropdown)), qa = ({ navigation: e, activeItem: t }) => /* @__PURE__ */ a("nav", { "aria-label": "Project", children: /* @__PURE__ */ a("ul", { className: q.navigationTabList, "aria-orientation": "horizontal", children: e.filter(No).map((n) => {
1103
1103
  var r, s, i;
1104
1104
  return n.dropdown ? /* @__PURE__ */ a(
1105
1105
  "li",
1106
1106
  {
1107
- className: U.navigationTab,
1107
+ className: q.navigationTab,
1108
1108
  "data-testid": n.key,
1109
1109
  "aria-selected": (r = n.isActive) == null ? void 0 : r.call(n, t),
1110
1110
  children: /* @__PURE__ */ a(
1111
- oe,
1111
+ ae,
1112
1112
  {
1113
- menuButton: ({ opened: c }) => /* @__PURE__ */ a(Ae, { label: n.label, disabled: n.disabled, active: c }),
1114
- children: /* @__PURE__ */ a(ae, { children: /* @__PURE__ */ a(po, { items: n.dropdown }) })
1113
+ menuButton: ({ opened: c }) => /* @__PURE__ */ a(Oe, { label: n.label, disabled: n.disabled, active: c }),
1114
+ children: /* @__PURE__ */ a(se, { children: /* @__PURE__ */ a(So, { items: n.dropdown }) })
1115
1115
  }
1116
1116
  )
1117
1117
  },
@@ -1119,11 +1119,11 @@ const So = (e) => (e == null ? void 0 : e.some((t) => t.some((n) => n.visible)))
1119
1119
  ) : /* @__PURE__ */ a(
1120
1120
  "li",
1121
1121
  {
1122
- className: U.navigationTab,
1122
+ className: q.navigationTab,
1123
1123
  "data-testid": n.key,
1124
1124
  "aria-selected": (s = n.isActive) == null ? void 0 : s.call(n, t),
1125
1125
  children: /* @__PURE__ */ a(
1126
- Ae,
1126
+ Oe,
1127
1127
  {
1128
1128
  label: n.label,
1129
1129
  href: n.link,
@@ -1137,30 +1137,171 @@ const So = (e) => (e == null ? void 0 : e.some((t) => t.some((n) => n.visible)))
1137
1137
  },
1138
1138
  n.key
1139
1139
  );
1140
- }) }) }), Eo = o.object({
1141
- accessToken: o.string(),
1142
- refreshToken: o.string()
1143
- }), Io = o.union([
1144
- o.object({ Authorization: o.string().startsWith("Bearer ") }),
1145
- o.object({ "x-csrf-token": o.string() })
1146
- ]), Be = Oe({
1147
- description: "Takes a teamId and returns a JWT token access and refresh token for the user",
1148
- method: "post",
1149
- requestPathParamsSchema: o.object({ teamId: o.number() }),
1150
- pathResolver: (e) => `/team/${e.teamId}/actions/get-user-token`,
1151
- requestHeaderSchema: Io,
1152
- requestBodySchema: o.undefined(),
1153
- successResponseBodySchema: Eo
1154
- }), Ft = o.union([
1140
+ }) }) });
1141
+ class A {
1142
+ /**
1143
+ * This constructor is private to prevent the creation of a HeaderBuilder, it's an implementation detail
1144
+ * that users of this class should not be aware of. The only way to create a HeaderBuilder is through the
1145
+ * static create method.
1146
+ *
1147
+ * @private
1148
+ */
1149
+ constructor(t) {
1150
+ this.factories = t;
1151
+ }
1152
+ static create(t = {}) {
1153
+ return new A([() => t]);
1154
+ }
1155
+ /**
1156
+ * Adds a single header to the builder by providing a key and a value.
1157
+ *
1158
+ * @example
1159
+ * ```typescript
1160
+ * const builder = HeaderBuilder.create()
1161
+ * .add('Content-Type', 'application/json')
1162
+ * .add('Authorization', 'Bearer token')
1163
+ *
1164
+ * const headers = await builder.resolve()
1165
+ * console.log(headers)
1166
+ * // { 'Content-Type': 'application/json', 'Authorization': 'Bearer token' }
1167
+ * ```
1168
+ *
1169
+ * @param key - The key of the header
1170
+ * @param value - The value of the header
1171
+ */
1172
+ add(t, n) {
1173
+ return new A([...this.factories, () => ({ [t]: n })]);
1174
+ }
1175
+ /**
1176
+ * Adds multiple headers to the builder by providing an object or a promise of an object with the headers.
1177
+ *
1178
+ * @example
1179
+ * ```typescript
1180
+ * const builder = HeaderBuilder.create()
1181
+ * .and({ 'Content-Type': 'application/json', 'Authorization': 'Bearer token' })
1182
+ * .and(Promise.resolve({ 'X-Custom-Header': 'custom', 'X-Another-Header': 'another' }))
1183
+ *
1184
+ * const headers = await builder.resolve()
1185
+ * console.log(headers)
1186
+ * // Prints: {
1187
+ * // 'Content-Type': 'application/json',
1188
+ * // 'Authorization': 'Bearer token',
1189
+ * // 'X-Custom-Header': 'custom',
1190
+ * // 'X-Another-Header': 'another'
1191
+ * // }
1192
+ * ```
1193
+ *
1194
+ * @param extension - An object with the headers to add
1195
+ */
1196
+ and(t) {
1197
+ return new A([...this.factories, () => t]);
1198
+ }
1199
+ /**
1200
+ * Adds a factory function that returns a promise of headers to the builder.
1201
+ * This is useful when you need to fetch some data asynchronously to build the headers.
1202
+ *
1203
+ * @example
1204
+ * ```typescript
1205
+ * const builder = HeaderBuilder.create()
1206
+ * .from(async () => {
1207
+ * const token = await fetchToken()
1208
+ * return { 'Authorization': `Bearer ${token}` }
1209
+ * })
1210
+ *
1211
+ * const headers = await builder.resolve()
1212
+ * console.log(headers) // { 'Authorization': 'Bearer <token>' }
1213
+ * ```
1214
+ *
1215
+ * @param factory - A function that returns a promise of headers
1216
+ */
1217
+ from(t) {
1218
+ return new A([...this.factories, t]);
1219
+ }
1220
+ /**
1221
+ * Takes a middleware function that receives the current builder and returns a new, modified, builder.
1222
+ *
1223
+ * @example
1224
+ * ```typescript
1225
+ * const authMiddleware = createHeaderBuilderMiddleware(async (builder) => {
1226
+ * const token = await fetchToken()
1227
+ * return builder.add('Authorization', `Bearer ${token}`)
1228
+ * })
1229
+ *
1230
+ * const builder = HeaderBuilder.create()
1231
+ * .with(authMiddleware)
1232
+ *
1233
+ * const headers = await builder.resolve() // Type of headers is { 'Authorization': string }
1234
+ * console.log(headers) // { 'Authorization': 'Bearer <token>' }
1235
+ * ```
1236
+ *
1237
+ * @param middleware
1238
+ */
1239
+ with(t) {
1240
+ return t.apply(this);
1241
+ }
1242
+ /**
1243
+ * Merges the current builder with another builder.
1244
+ *
1245
+ * @example
1246
+ * ```typescript
1247
+ * const builderA = HeaderBuilder.create()
1248
+ * .add('Content-Type', 'application/json')
1249
+ *
1250
+ * const builderB = HeaderBuilder.create()
1251
+ * .add('Authorization', 'Bearer token')
1252
+ *
1253
+ * const mergedBuilder = builderA.merge(builderB)
1254
+ *
1255
+ * const headers = await mergedBuilder.resolve()
1256
+ * console.log(headers)
1257
+ * // { 'Content-Type': 'application/json', 'Authorization': 'Bearer token' }
1258
+ * ```
1259
+ *
1260
+ * @param builder - The builder to merge with
1261
+ */
1262
+ merge(t) {
1263
+ return new A([...this.factories, ...t.factories]);
1264
+ }
1265
+ /**
1266
+ * Resolves the headers by waiting for all the promises to resolve and merging them together.
1267
+ *
1268
+ * @example
1269
+ * ```typescript
1270
+ * const builder = HeaderBuilder.create()
1271
+ * .add('Content-Type', 'application/json')
1272
+ *
1273
+ * const headers = await builder.resolve()
1274
+ * console.log(headers) // { 'Content-Type': 'application/json' }
1275
+ */
1276
+ async resolve() {
1277
+ const t = this.factories.map((r) => r()), n = await Promise.all(t);
1278
+ return Object.assign({}, ...n);
1279
+ }
1280
+ }
1281
+ class Ro {
1282
+ constructor(t) {
1283
+ this.middleware = t;
1284
+ }
1285
+ apply(t) {
1286
+ return t.from(async () => {
1287
+ const n = this.middleware(A.create());
1288
+ return n instanceof Promise ? n.then((r) => r.resolve()) : n.resolve();
1289
+ });
1290
+ }
1291
+ }
1292
+ function Gt(e) {
1293
+ return new Ro(e);
1294
+ }
1295
+ const Kt = o.union([
1155
1296
  o.literal("owner"),
1156
1297
  o.literal("admin"),
1157
1298
  o.literal("biller"),
1158
1299
  o.literal("member")
1159
- ]), Po = o.object({
1300
+ ]), jo = o.object({
1160
1301
  userId: o.number(),
1161
1302
  userUuid: o.string(),
1162
1303
  teamId: o.number(),
1163
- userTeamRole: Ft,
1304
+ userTeamRole: Kt,
1164
1305
  userEmail: o.string().email(),
1165
1306
  userName: o.string(),
1166
1307
  userCurrentTeamId: o.number(),
@@ -1170,242 +1311,241 @@ const So = (e) => (e == null ? void 0 : e.some((t) => t.some((n) => n.visible)))
1170
1311
  isFullyAuthenticated: o.boolean(),
1171
1312
  exp: o.number()
1172
1313
  });
1173
- function se(e) {
1314
+ function ie(e) {
1174
1315
  try {
1175
1316
  const t = e.split(".")[1], n = atob(t);
1176
- return Po.parse(JSON.parse(n));
1317
+ return jo.parse(JSON.parse(n));
1177
1318
  } catch {
1178
1319
  return;
1179
1320
  }
1180
1321
  }
1181
- function te(e) {
1182
- return { Authorization: `Bearer ${e}` };
1183
- }
1184
- function No(e) {
1185
- return (t) => async (n, r) => {
1186
- var c;
1187
- const s = await e.getCachedJwtToken();
1188
- if (s === void 0)
1189
- return t(n, r);
1190
- const i = await t(n, {
1191
- ...r,
1192
- headers: { ...r.headers, ...te(s.accessToken) }
1193
- });
1194
- if (s && (i.status === 401 || i.status === 403)) {
1195
- const l = se(s.accessToken);
1196
- if (!l)
1197
- return i;
1198
- const u = await G(e.authProviderWretchClient, Be, {
1199
- pathParams: { teamId: l.teamId },
1200
- headers: te(s.refreshToken)
1201
- });
1202
- return await ((c = e.onNewJwtTokenIssued) == null ? void 0 : c.call(e, u)), t(n, {
1203
- ...r,
1204
- headers: { ...r.headers, ...te(u.accessToken) }
1205
- });
1206
- }
1207
- return i;
1208
- };
1322
+ class Le extends Error {
1323
+ constructor() {
1324
+ super(...arguments);
1325
+ ee(this, "name", "UnauthorizedError");
1326
+ ee(this, "status", 401);
1327
+ }
1209
1328
  }
1210
- function Na() {
1211
- return (e) => (t, n) => e(t, {
1212
- ...n,
1213
- headers: {
1214
- ...n.headers,
1215
- "x-lokalise-plugin": "true"
1216
- },
1217
- credentials: "omit"
1329
+ const Wt = 1e3, xo = 60 * Wt;
1330
+ function Ha(e) {
1331
+ return Gt(async (t) => {
1332
+ var c, l;
1333
+ const n = e.getCurrentToken() ?? await ((c = e.generateNewToken) == null ? void 0 : c.call(e));
1334
+ if (!n)
1335
+ throw new Le();
1336
+ const { exp: r } = ie(n.accessToken) ?? { exp: 0 };
1337
+ if (!(r * Wt - Date.now() < xo))
1338
+ return t.add("Authorization", `Bearer ${n.accessToken}`);
1339
+ const i = await e.refreshToken(n);
1340
+ if (!i)
1341
+ throw new Le();
1342
+ return (l = e.onNewTokenIssued) == null || l.call(e, i), t.add("Authorization", `Bearer ${i.accessToken}`);
1218
1343
  });
1219
1344
  }
1220
- function ie() {
1221
- const e = xe(document.cookie, "accessToken"), t = xe(document.cookie, "refreshToken");
1222
- if (!(!e || !t))
1223
- return { accessToken: e, refreshToken: t };
1224
- }
1345
+ const Ba = Gt(
1346
+ (e) => e.and({ "x-lokalise-plugin": "true" })
1347
+ );
1225
1348
  function Jt() {
1226
- return xe(document.cookie, "csrf_token");
1349
+ const e = Me(document.cookie, "accessToken"), t = Me(document.cookie, "refreshToken");
1350
+ return !e || !t ? null : { accessToken: e, refreshToken: t };
1227
1351
  }
1228
- function xe(e, t) {
1352
+ function Oo() {
1353
+ return Me(document.cookie, "csrf_token") ?? null;
1354
+ }
1355
+ function Me(e, t) {
1229
1356
  var n, r;
1230
1357
  return (r = (n = e.split(";").find((s) => s.trim().startsWith(`${t}=`))) == null ? void 0 : n.trim()) == null ? void 0 : r.substring(t.length + 1);
1231
1358
  }
1232
- function Ra(e) {
1233
- return No({
1234
- authProviderWretchClient: e.authProviderWretchClient,
1235
- getCachedJwtToken: e.getCachedJwtToken ?? Ro,
1236
- onNewJwtTokenIssued: e.onNewJwtTokenIssued
1237
- });
1238
- }
1239
- function Ro() {
1240
- return Promise.resolve(ie());
1241
- }
1242
- function ja(e) {
1243
- const t = {
1244
- authProviderWretchClient: e.authProviderWretchClient,
1245
- getCsrfToken: e.getCsrfToken ?? (async () => Jt()),
1246
- getCachedJwtToken: e.getCachedJwtToken ?? (async () => ie()),
1247
- onNewJwtTokenIssued: e.onNewJwtTokenIssued,
1248
- getTeamId: e.getTeamId
1249
- };
1250
- return (n) => async (r, s) => {
1251
- var u;
1252
- if (await t.getCachedJwtToken() !== void 0)
1253
- return n(r, s);
1254
- const c = await t.getCsrfToken();
1255
- if (c === void 0)
1256
- return n(r, s);
1257
- const l = await G(t.authProviderWretchClient, Be, {
1258
- pathParams: { teamId: await t.getTeamId() },
1259
- headers: { "x-csrf-token": c }
1260
- });
1261
- return await ((u = t.onNewJwtTokenIssued) == null ? void 0 : u.call(t, l)), n(r, {
1262
- ...s,
1263
- headers: { ...s.headers, ...te(l.accessToken) }
1264
- });
1265
- };
1266
- }
1267
- function Aa() {
1268
- const e = ie();
1359
+ function Da() {
1360
+ const e = Jt();
1269
1361
  if (!e)
1270
1362
  return;
1271
- const t = se(e.accessToken);
1363
+ const t = ie(e.accessToken);
1272
1364
  if (t)
1273
1365
  return { ...e, payload: t };
1274
1366
  }
1275
- const jo = {
1276
- teamKeyCsrf: (e, t) => ["getUserToken", "x-csrf-token", t, e],
1277
- teamKeyJwt: (e, t) => ["getUserToken", "Authorization", `Bearer ${t}`, e]
1278
- }, Ao = (e, t) => B({
1279
- ...t,
1280
- queryFn: ({ queryKey: [n, r, s, i] }) => G(e, Be, {
1281
- pathParams: { teamId: i },
1282
- headers: r === "x-csrf-token" ? { "x-csrf-token": s } : { Authorization: s }
1367
+ const Qt = o.object({
1368
+ Authorization: o.string()
1369
+ }), Lo = o.object({
1370
+ "X-API-Token": o.string()
1371
+ }), Mo = o.union([
1372
+ Qt,
1373
+ Lo
1374
+ ]), Uo = o.object({
1375
+ "X-Lokalise-Plugin": o.string()
1376
+ }), ce = Mo.and(Uo), qo = o.object({
1377
+ accessToken: o.string(),
1378
+ refreshToken: o.string()
1379
+ }), Ho = o.union([
1380
+ Qt,
1381
+ o.object({ "x-csrf-token": o.string() })
1382
+ ]), $e = qe({
1383
+ description: "Takes a teamId and returns a JWT token access and refresh token for the user",
1384
+ method: "post",
1385
+ requestPathParamsSchema: o.object({ teamId: o.number() }),
1386
+ pathResolver: (e) => `/team/${e.teamId}/actions/get-user-token`,
1387
+ requestHeaderSchema: Ho,
1388
+ requestBodySchema: o.undefined(),
1389
+ isEmptyResponseExpected: !0,
1390
+ successResponseBodySchema: qo
1391
+ });
1392
+ function $a(e, t, n) {
1393
+ return async () => {
1394
+ const r = t();
1395
+ if (!r)
1396
+ throw new Le();
1397
+ return W(e, $e, {
1398
+ pathParams: { teamId: Number(await n()) },
1399
+ headers: await A.create().add("x-csrf-token", r).resolve()
1400
+ });
1401
+ };
1402
+ }
1403
+ function Fa(e, t) {
1404
+ return async ({ refreshToken: n }) => W(e, $e, {
1405
+ pathParams: { teamId: Number(await t()) },
1406
+ headers: await A.create().add("Authorization", `Bearer ${n}`).resolve()
1407
+ });
1408
+ }
1409
+ const Bo = {
1410
+ teamKey: (e) => ["getUserToken", e]
1411
+ }, Do = (e, t, n) => B({
1412
+ ...n,
1413
+ queryFn: async ({ queryKey: [r, s] }) => W(e, $e, {
1414
+ headers: await t.resolve(),
1415
+ pathParams: { teamId: s }
1283
1416
  })
1284
- }), re = class re extends CustomEvent {
1417
+ }), oe = class oe extends CustomEvent {
1285
1418
  constructor(t) {
1286
- super(re.eventName, {
1287
- detail: { token: t, payload: se(t.accessToken) }
1419
+ super(oe.eventName, {
1420
+ detail: { token: t, payload: ie(t.accessToken) }
1288
1421
  });
1289
1422
  }
1290
1423
  };
1291
- Je(re, "eventName", "new-jwt-issued");
1292
- let F = re;
1293
- function xa(e, t) {
1294
- const n = Jt(), r = Ao(e, {
1295
- queryKey: jo.teamKeyCsrf(t, n ?? ""),
1296
- enabled: n !== void 0
1297
- }), s = yt();
1298
- return J(() => {
1299
- r.data && r.data.accessToken !== s.current && (window.dispatchEvent(new F(r.data)), s.current = r.data.accessToken);
1300
- }, [r.data]), r;
1424
+ ee(oe, "eventName", "new-jwt-issued");
1425
+ let z = oe;
1426
+ function za(e, t, n) {
1427
+ const r = Oo(), s = Do(e, t.add("x-csrf-token", r ?? ""), {
1428
+ queryKey: Bo.teamKey(n),
1429
+ enabled: r !== void 0
1430
+ }), i = Et();
1431
+ return G(() => {
1432
+ s.data && s.data.accessToken !== i.current && (window.dispatchEvent(new z(s.data)), i.current = s.data.accessToken);
1433
+ }, [s.data]), s;
1301
1434
  }
1302
- function zt() {
1435
+ function Yt() {
1303
1436
  const [e, t] = N();
1304
- return J(() => {
1437
+ return G(() => {
1305
1438
  const n = (s) => {
1306
1439
  t(s.detail.payload);
1307
- }, r = ie();
1308
- return t(r && se(r.accessToken)), window.addEventListener(F.eventName, n), () => {
1309
- window.removeEventListener(F.eventName, n);
1440
+ }, r = Jt();
1441
+ return t(r ? ie(r.accessToken) : void 0), window.addEventListener(z.eventName, n), () => {
1442
+ window.removeEventListener(z.eventName, n);
1310
1443
  };
1311
1444
  }, []), e;
1312
1445
  }
1313
- const xo = o.object({
1446
+ const $o = ce, Fo = o.object({
1314
1447
  user_id: o.number(),
1315
1448
  email: o.string().email(),
1316
1449
  fullname: o.string(),
1317
1450
  created_at: o.string(),
1318
1451
  created_at_timestamp: o.number(),
1319
- role: Ft
1320
- }), Lo = o.object({
1452
+ role: Kt
1453
+ }), zo = o.object({
1321
1454
  team_id: o.number(),
1322
- team_user: xo
1323
- }), Oo = K({
1455
+ team_user: Fo
1456
+ }), Go = Q({
1324
1457
  description: "Get the details of a team user",
1458
+ requestHeaderSchema: $o,
1325
1459
  requestPathParamsSchema: o.object({ teamId: o.number(), userId: o.number() }),
1326
1460
  pathResolver: ({ teamId: e, userId: t }) => `/teams/${e}/users/${t}`,
1327
- successResponseBodySchema: Lo
1328
- }), Mo = {
1461
+ successResponseBodySchema: zo
1462
+ }), Ko = {
1329
1463
  teamUserKey: (e, t) => ["GetTeamUsers", e, t]
1330
- }, Uo = (e, t) => B({
1331
- ...t,
1332
- queryFn: ({ queryKey: [n, r, s] }) => W(e, Oo, { pathParams: { teamId: r, userId: s } })
1464
+ }, Wo = (e, t, n) => B({
1465
+ ...n,
1466
+ queryFn: async ({ queryKey: [r, s, i] }) => J(e, Go, {
1467
+ headers: await t.resolve(),
1468
+ pathParams: { teamId: s, userId: i }
1469
+ })
1333
1470
  });
1334
- function La(e) {
1335
- const t = zt();
1336
- return Uo(e, {
1337
- queryKey: Mo.teamUserKey((t == null ? void 0 : t.teamId) ?? 0, (t == null ? void 0 : t.userId) ?? 0),
1338
- enabled: (t == null ? void 0 : t.userId) !== void 0 && t.teamId !== void 0
1471
+ function Ga(e, t) {
1472
+ const n = Yt();
1473
+ return Wo(e, t, {
1474
+ queryKey: Ko.teamUserKey((n == null ? void 0 : n.teamId) ?? 0, (n == null ? void 0 : n.userId) ?? 0),
1475
+ enabled: (n == null ? void 0 : n.userId) !== void 0 && n.teamId !== void 0
1339
1476
  });
1340
1477
  }
1341
- const qo = o.object({
1478
+ const Jo = o.object({
1342
1479
  lang_id: o.number(),
1343
1480
  lang_iso: o.string(),
1344
1481
  lang_name: o.string(),
1345
1482
  is_writable: o.union([o.literal(0), o.literal(1)])
1346
- }), Bo = o.object({
1483
+ }), Qo = o.object({
1347
1484
  user_id: o.number(),
1348
1485
  email: o.string().email(),
1349
1486
  fullname: o.string(),
1350
1487
  created_at: o.string(),
1351
1488
  created_at_timestamp: o.number(),
1352
1489
  admin_rights: o.array(o.string()),
1353
- languages: o.array(qo),
1490
+ languages: o.array(Jo),
1354
1491
  is_admin: o.boolean(),
1355
1492
  is_reviewer: o.boolean()
1356
- }), $o = o.object({
1493
+ }), Yo = o.object({
1357
1494
  project_id: o.string(),
1358
- contributors: o.array(Bo)
1359
- }), Do = K({
1495
+ contributors: o.array(Qo)
1496
+ }), Vo = Q({
1360
1497
  description: "Get the details of a project contributor",
1498
+ requestHeaderSchema: ce,
1361
1499
  requestPathParamsSchema: o.object({ projectId: o.string(), contributorId: o.number() }),
1362
1500
  pathResolver: ({ projectId: e, contributorId: t }) => `/projects/${e}/contributors/${t}`,
1363
- successResponseBodySchema: $o
1364
- }), Ho = {
1501
+ successResponseBodySchema: Yo
1502
+ }), Xo = {
1365
1503
  projectUserKey: (e, t) => ["RetrieveContributor", e, t]
1366
- }, Fo = (e, t) => B({
1367
- ...t,
1368
- queryFn: ({ queryKey: [n, r, s] }) => W(e, Do, {
1369
- pathParams: { projectId: r, contributorId: s }
1504
+ }, Zo = (e, t, n) => B({
1505
+ ...n,
1506
+ queryFn: async ({ queryKey: [r, s, i] }) => J(e, Vo, {
1507
+ pathParams: { projectId: s, contributorId: i },
1508
+ headers: await t.resolve()
1370
1509
  })
1371
1510
  });
1372
- function Oa(e, t) {
1373
- const n = zt();
1374
- return Fo(e, {
1375
- queryKey: Ho.projectUserKey(t, (n == null ? void 0 : n.userId) ?? 0),
1376
- enabled: n !== void 0
1511
+ function Ka(e, t, n) {
1512
+ const r = Yt();
1513
+ return Zo(e, t, {
1514
+ queryKey: Xo.projectUserKey(n, (r == null ? void 0 : r.userId) ?? 0),
1515
+ enabled: r !== void 0
1377
1516
  });
1378
1517
  }
1379
- const Jo = o.object({
1518
+ const ea = o.object({
1380
1519
  lang_iso: o.string(),
1381
1520
  custom_iso: o.string().optional()
1382
- }), zo = o.object({
1521
+ }), ta = o.object({
1383
1522
  language_id: o.number(),
1384
1523
  language_iso: o.string(),
1385
1524
  progress: o.number(),
1386
1525
  words_to_do: o.number()
1387
- }), Go = o.object({
1526
+ }), na = o.object({
1388
1527
  projectId: o.string()
1389
- }), Wo = o.object({
1528
+ }), ra = o.object({
1390
1529
  lang_id: o.number(),
1391
1530
  lang_iso: o.string(),
1392
1531
  lang_name: o.string(),
1393
1532
  is_rtl: o.boolean(),
1394
1533
  plural_forms: o.array(o.string().optional())
1395
- }), Ko = o.object({
1534
+ }), oa = o.object({
1396
1535
  project_id: o.string(),
1397
1536
  project_uuid: o.string().uuid(),
1398
- languages: o.array(Wo)
1399
- }), Qo = K({
1537
+ languages: o.array(ra)
1538
+ }), aa = Q({
1400
1539
  description: "List of project languages",
1401
- requestPathParamsSchema: Go,
1540
+ requestHeaderSchema: ce,
1541
+ requestPathParamsSchema: na,
1402
1542
  pathResolver: ({ projectId: e }) => `/projects/${e}/languages`,
1403
- successResponseBodySchema: Ko
1404
- }), $e = o.union([
1543
+ successResponseBodySchema: oa
1544
+ }), le = ce, Fe = o.union([
1405
1545
  o.literal("localization_files"),
1406
1546
  o.literal("paged_documents"),
1407
1547
  o.literal("marketing")
1408
- ]), Yo = o.object({
1548
+ ]), sa = o.object({
1409
1549
  per_platform_key_names: o.boolean(),
1410
1550
  reviewing: o.boolean(),
1411
1551
  auto_toggle_unverified: o.boolean(),
@@ -1416,7 +1556,7 @@ const Jo = o.object({
1416
1556
  custom_translation_statuses_allow_multiple: o.boolean(),
1417
1557
  segmentation: o.boolean(),
1418
1558
  contributor_preview_download_enabled: o.boolean()
1419
- }), Vo = o.object({
1559
+ }), ia = o.object({
1420
1560
  not_reviewed: o.number(),
1421
1561
  unverified: o.number(),
1422
1562
  spelling_grammar: o.number(),
@@ -1433,18 +1573,18 @@ const Jo = o.object({
1433
1573
  double_space: o.number(),
1434
1574
  special_placeholder: o.number(),
1435
1575
  unbalanced_brackets: o.number()
1436
- }), Zo = o.object({
1576
+ }), ca = o.object({
1437
1577
  progress_total: o.number(),
1438
1578
  keys_total: o.number(),
1439
1579
  team: o.number(),
1440
1580
  base_words: o.number(),
1441
1581
  qa_issues_total: o.number(),
1442
- qa_issues: Vo,
1443
- languages: o.array(zo)
1444
- }), ce = o.object({
1582
+ qa_issues: ia,
1583
+ languages: o.array(ta)
1584
+ }), de = o.object({
1445
1585
  project_id: o.string(),
1446
1586
  uuid: o.string().uuid(),
1447
- project_type: $e,
1587
+ project_type: Fe,
1448
1588
  name: o.string(),
1449
1589
  description: o.string(),
1450
1590
  created_at: o.string(),
@@ -1454,164 +1594,177 @@ const Jo = o.object({
1454
1594
  team_id: o.number(),
1455
1595
  base_language_id: o.number(),
1456
1596
  base_language_iso: o.string(),
1457
- settings: Yo.optional(),
1458
- statistics: Zo.optional()
1459
- }), Xo = o.object({
1597
+ settings: sa.optional(),
1598
+ statistics: ca.optional()
1599
+ }), la = o.object({
1460
1600
  name: o.string(),
1461
1601
  team_id: o.string(),
1462
1602
  base_lang_iso: o.string(),
1463
- languages: o.array(Jo),
1464
- project_type: $e,
1603
+ languages: o.array(ea),
1604
+ project_type: Fe,
1465
1605
  is_segmentation_enabled: o.boolean()
1466
- }), Tt = o.union([o.literal(0), o.literal(1)]), ea = o.object({
1467
- filter_type: $e.optional(),
1606
+ }), St = o.union([o.literal(0), o.literal(1)]), da = o.object({
1607
+ filter_type: Fe.optional(),
1468
1608
  filter_team_id: o.number().optional(),
1469
1609
  filter_names: o.string().optional(),
1470
- include_statistics: Tt.optional(),
1471
- include_settings: Tt.optional(),
1610
+ include_statistics: St.optional(),
1611
+ include_settings: St.optional(),
1472
1612
  limit: o.number().optional(),
1473
1613
  page: o.number().optional()
1474
- }), ta = o.object({
1475
- projects: o.array(ce)
1476
- }), na = o.object({
1614
+ }), ua = o.object({
1615
+ projects: o.array(de)
1616
+ }), ma = o.object({
1477
1617
  project_id: o.string()
1478
- }), ra = o.object({
1618
+ }), fa = o.object({
1479
1619
  project_id: o.string()
1480
- }), oa = o.object({
1620
+ }), _a = o.object({
1481
1621
  name: o.string().min(1),
1482
1622
  description: o.string().optional()
1483
- }), le = () => "/projects", aa = Oe({
1623
+ }), ue = () => "/projects", ga = qe({
1484
1624
  description: "Create a new project",
1625
+ requestHeaderSchema: le,
1485
1626
  method: "post",
1486
- pathResolver: le,
1487
- requestBodySchema: Xo,
1488
- successResponseBodySchema: ce
1489
- }), sa = K({
1627
+ pathResolver: ue,
1628
+ requestBodySchema: la,
1629
+ successResponseBodySchema: de
1630
+ }), ha = Q({
1490
1631
  description: "List all projects",
1491
- pathResolver: le,
1492
- requestQuerySchema: ea,
1493
- successResponseBodySchema: ta
1494
- }), ia = K({
1632
+ requestHeaderSchema: le,
1633
+ pathResolver: ue,
1634
+ requestQuerySchema: da,
1635
+ successResponseBodySchema: ua
1636
+ }), pa = Q({
1495
1637
  description: "Retrieve a project",
1496
- requestPathParamsSchema: na,
1497
- pathResolver: ({ project_id: e }) => `${le()}/${e}`,
1498
- successResponseBodySchema: ce
1499
- }), ca = Oe({
1638
+ requestHeaderSchema: le,
1639
+ requestPathParamsSchema: ma,
1640
+ pathResolver: ({ project_id: e }) => `${ue()}/${e}`,
1641
+ successResponseBodySchema: de
1642
+ }), ba = qe({
1500
1643
  description: "Update a project",
1644
+ requestHeaderSchema: le,
1501
1645
  method: "put",
1502
- requestPathParamsSchema: ra,
1503
- pathResolver: ({ project_id: e }) => `${le()}/${e}`,
1504
- requestBodySchema: oa,
1505
- successResponseBodySchema: ce
1646
+ requestPathParamsSchema: fa,
1647
+ pathResolver: ({ project_id: e }) => `${ue()}/${e}`,
1648
+ requestBodySchema: _a,
1649
+ successResponseBodySchema: de
1506
1650
  });
1507
- function Ma(e, t = {}) {
1508
- return Pt({
1509
- ...t,
1510
- mutationFn: (n) => G(e, aa, {
1511
- body: n
1651
+ function Wa(e, t, n = {}) {
1652
+ return Nt({
1653
+ ...n,
1654
+ mutationFn: async (r) => W(e, ga, {
1655
+ headers: await t.resolve(),
1656
+ body: r
1512
1657
  })
1513
1658
  });
1514
1659
  }
1515
- const Ua = {
1660
+ const Ja = {
1516
1661
  projectIdKey: (e) => ["listProjectLanguages", e]
1517
1662
  };
1518
- function qa(e, t) {
1663
+ function Qa(e, t, n) {
1519
1664
  return B({
1520
- ...t,
1521
- queryFn: ({ queryKey: [n, r] }) => W(e, Qo, {
1522
- pathParams: { projectId: r }
1665
+ ...n,
1666
+ queryFn: async ({ queryKey: [r, s] }) => J(e, aa, {
1667
+ headers: await t.resolve(),
1668
+ pathParams: { projectId: s }
1523
1669
  })
1524
1670
  });
1525
1671
  }
1526
- const Ba = {
1672
+ const Ya = {
1527
1673
  paramsKey: (e) => ["listProjects", e]
1528
1674
  };
1529
- function $a(e, t) {
1675
+ function Va(e, t, n) {
1530
1676
  return B({
1531
- ...t,
1532
- queryFn: ({ queryKey: [n, r] }) => W(e, sa, {
1533
- queryParams: r
1677
+ ...n,
1678
+ queryFn: async ({ queryKey: [r, s] }) => J(e, ha, {
1679
+ headers: await t.resolve(),
1680
+ queryParams: s
1534
1681
  })
1535
1682
  });
1536
1683
  }
1537
- const Da = {
1684
+ const Xa = {
1538
1685
  projectIdKey: (e) => ["retrieveProject", e]
1539
1686
  };
1540
- function Ha(e, t) {
1687
+ function Za(e, t, n) {
1541
1688
  return B({
1542
- ...t,
1543
- queryFn: ({ queryKey: [n, r] }) => W(e, ia, {
1544
- pathParams: { project_id: r }
1689
+ ...n,
1690
+ queryFn: async ({ queryKey: [r, s] }) => J(e, pa, {
1691
+ headers: await t.resolve(),
1692
+ pathParams: { project_id: s }
1545
1693
  })
1546
1694
  });
1547
1695
  }
1548
- function Fa(e, t, n = {}) {
1549
- return Pt({
1550
- ...n,
1551
- mutationFn: (r) => G(e, ca, {
1552
- body: r,
1553
- pathParams: t
1696
+ function es(e, t, n, r = {}) {
1697
+ return Nt({
1698
+ ...r,
1699
+ mutationFn: async (s) => W(e, ba, {
1700
+ headers: await t.resolve(),
1701
+ body: s,
1702
+ pathParams: n
1554
1703
  })
1555
1704
  });
1556
1705
  }
1557
1706
  export {
1558
- Ia as Breadcrumbs,
1559
- Ut as ENTERPRISE_OPENSOURCE_PLAN_ID,
1560
- rr as ENTERPRISE_PLAN_IDS,
1561
- tr as ESSENTIAL_PLAN_IDS,
1562
- Mt as FREE_PLAN_ID,
1563
- ne as NavigationPanel,
1564
- Pa as NavigationTabs,
1565
- nr as PRO_PLAN_IDS,
1566
- er as START_PLAN_IDS,
1567
- P as Sidebar,
1568
- I as SidebarTaskLanguageStatuses,
1569
- je as SidebarTaskStatuses,
1570
- X as SidebarTaskTypeOptions,
1571
- Xn as TRIAL_PLAN_ID,
1572
- Ra as clientSideJwtAuthMiddleware,
1573
- sr as convertNewLineToBreakTag,
1574
- aa as createProject,
1575
- dr as formatDate,
1576
- Ea as formatDateTz,
1577
- Aa as getAuthenticatedSessionDetailFromRequest,
1578
- Oo as getTeamUser,
1579
- Mo as getTeamUsersQueryKey,
1580
- Be as getUserToken,
1581
- jo as getUserTokenKey,
1582
- ka as isEnterpriseOpenSourcePlan,
1583
- wa as isEnterprisePlan,
1584
- ya as isEssentialPlan,
1585
- Ue as isFreePlan,
1586
- Sa as isPaidPlan,
1587
- Ca as isProPlan,
1588
- Ta as isStartPlan,
1589
- qt as isTrialPlan,
1590
- No as jwtAuthMiddleware,
1591
- Qo as listProjectLanguages,
1592
- Ua as listProjectLanguagesKey,
1593
- sa as listProjects,
1594
- Ba as listProjectsKey,
1595
- lr as makeUrlClickable,
1596
- se as parseJwtTokenPayload,
1597
- ja as promoteClassicSessionToJwtMiddleware,
1598
- Na as publicApiHeadersMiddleware,
1599
- Do as retrieveContributor,
1600
- Ho as retrieveContributorKeys,
1601
- ia as retrieveProject,
1602
- Da as retrieveProjectQueryKey,
1603
- ca as updateProject,
1604
- Oa as useAuthenticatedProjectContributor,
1605
- zt as useAuthenticatedSessionPayload,
1606
- La as useAuthenticatedUser,
1607
- Ma as useCreateProjectMutation,
1608
- qe as useEffectOnce,
1609
- xa as useGetPromotedClassicSessionJwtQuery,
1610
- Uo as useGetTeamUsersQuery,
1611
- Ao as useGetUserTokenQuery,
1612
- qa as useListProjectLanguagesQuery,
1613
- $a as useListProjectsQuery,
1614
- Fo as useRetrieveContributorQuery,
1615
- Ha as useRetrieveProjectQuery,
1616
- Fa as useUpdateProjectMutation
1707
+ Ua as Breadcrumbs,
1708
+ Ht as ENTERPRISE_OPENSOURCE_PLAN_ID,
1709
+ cr as ENTERPRISE_PLAN_IDS,
1710
+ sr as ESSENTIAL_PLAN_IDS,
1711
+ qt as FREE_PLAN_ID,
1712
+ A as HeaderBuilder,
1713
+ Ha as JwtAuthHeaderBuilderMiddleware,
1714
+ re as NavigationPanel,
1715
+ qa as NavigationTabs,
1716
+ ir as PRO_PLAN_IDS,
1717
+ Ba as PublicApiHeaderBuilderMiddleware,
1718
+ ar as START_PLAN_IDS,
1719
+ I as Sidebar,
1720
+ P as SidebarTaskLanguageStatuses,
1721
+ xe as SidebarTaskStatuses,
1722
+ te as SidebarTaskTypeOptions,
1723
+ or as TRIAL_PLAN_ID,
1724
+ ur as convertNewLineToBreakTag,
1725
+ Gt as createHeaderBuilderMiddleware,
1726
+ ga as createProject,
1727
+ gr as formatDate,
1728
+ Ma as formatDateTz,
1729
+ $a as generateTokenFromClassicSession,
1730
+ Da as getAuthenticatedSessionDetailFromRequest,
1731
+ Oo as getCsrfTokenFromCookie,
1732
+ Jt as getJwtTokenFromCookie,
1733
+ Go as getTeamUser,
1734
+ Ko as getTeamUsersQueryKey,
1735
+ $e as getUserToken,
1736
+ Bo as getUserTokenKey,
1737
+ La as isEnterpriseOpenSourcePlan,
1738
+ xa as isEnterprisePlan,
1739
+ Ra as isEssentialPlan,
1740
+ Be as isFreePlan,
1741
+ Oa as isPaidPlan,
1742
+ ja as isProPlan,
1743
+ Na as isStartPlan,
1744
+ Bt as isTrialPlan,
1745
+ aa as listProjectLanguages,
1746
+ Ja as listProjectLanguagesKey,
1747
+ ha as listProjects,
1748
+ Ya as listProjectsKey,
1749
+ _r as makeUrlClickable,
1750
+ ie as parseJwtTokenPayload,
1751
+ Fa as refreshExpiredToken,
1752
+ Vo as retrieveContributor,
1753
+ Xo as retrieveContributorKeys,
1754
+ pa as retrieveProject,
1755
+ Xa as retrieveProjectQueryKey,
1756
+ ba as updateProject,
1757
+ Ka as useAuthenticatedProjectContributor,
1758
+ Yt as useAuthenticatedSessionPayload,
1759
+ Ga as useAuthenticatedUser,
1760
+ Wa as useCreateProjectMutation,
1761
+ De as useEffectOnce,
1762
+ za as useGetPromotedClassicSessionJwtQuery,
1763
+ Wo as useGetTeamUsersQuery,
1764
+ Do as useGetUserTokenQuery,
1765
+ Qa as useListProjectLanguagesQuery,
1766
+ Va as useListProjectsQuery,
1767
+ Zo as useRetrieveContributorQuery,
1768
+ Za as useRetrieveProjectQuery,
1769
+ es as useUpdateProjectMutation
1617
1770
  };