@devsym/graph-toolkit-react 1.1.0 → 1.2.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.
package/dist/index.mjs CHANGED
@@ -1,56 +1,56 @@
1
1
  import * as e from "react";
2
2
  import t, { createContext as n, useCallback as r, useContext as i, useEffect as a, useMemo as o, useRef as s, useState as c, useSyncExternalStore as l } from "react";
3
- import { Avatar as u, AvatarGroup as d, AvatarGroupItem as f, AvatarGroupPopover as p, InteractionTag as m, InteractionTagPrimary as h, InteractionTagSecondary as g, Persona as _, Skeleton as v, SkeletonItem as y, Spinner as b, TagPicker as x, TagPickerControl as ee, TagPickerGroup as te, TagPickerInput as S, TagPickerList as ne, TagPickerOption as re } from "@fluentui/react-components";
4
- import { jsx as C, jsxs as w } from "react/jsx-runtime";
5
- import { Client as ie } from "@microsoft/microsoft-graph-client";
3
+ import { Avatar as u, AvatarGroup as d, AvatarGroupItem as f, AvatarGroupPopover as p, Button as m, Card as h, Divider as g, InteractionTag as _, InteractionTagPrimary as v, InteractionTagSecondary as y, Persona as b, Popover as x, PopoverSurface as ee, PopoverTrigger as S, Skeleton as C, SkeletonItem as w, Spinner as T, TagPicker as te, TagPickerControl as ne, TagPickerGroup as re, TagPickerInput as ie, TagPickerList as ae, TagPickerOption as oe, Text as E, tokens as D } from "@fluentui/react-components";
4
+ import { jsx as O, jsxs as k } from "react/jsx-runtime";
5
+ import { Client as A } from "@microsoft/microsoft-graph-client";
6
6
  //#region src/utils/personCache.ts
7
- var T = "graph-toolkit-person-cache", E = "personData", D = 1, O = {
7
+ var j = "graph-toolkit-person-cache", M = "personData", N = 1, P = {
8
8
  enabled: !0,
9
9
  userTtlMs: 3600 * 1e3,
10
10
  photoTtlMs: 3600 * 1e3,
11
11
  presenceTtlMs: 300 * 1e3
12
- }, k = () => typeof window < "u" && window.indexedDB !== void 0, A = (e) => new Promise((t, n) => {
12
+ }, F = () => typeof window < "u" && window.indexedDB !== void 0, I = (e) => new Promise((t, n) => {
13
13
  e.onsuccess = () => t(e.result), e.onerror = () => n(e.error);
14
- }), j = () => new Promise((e, t) => {
15
- if (!k()) {
14
+ }), se = () => new Promise((e, t) => {
15
+ if (!F()) {
16
16
  t(/* @__PURE__ */ Error("IndexedDB unavailable"));
17
17
  return;
18
18
  }
19
- let n = window.indexedDB.open(T, D);
19
+ let n = window.indexedDB.open(j, N);
20
20
  n.onupgradeneeded = () => {
21
21
  let e = n.result;
22
- e.objectStoreNames.contains(E) || e.createObjectStore(E);
22
+ e.objectStoreNames.contains(M) || e.createObjectStore(M);
23
23
  }, n.onsuccess = () => e(n.result), n.onerror = () => t(n.error);
24
- }), M = (e) => `person:${e.trim().toLowerCase()}`, N = (e, t) => e ? Date.now() - e < t : !1, P = async (e) => {
25
- if (!k()) return null;
24
+ }), ce = (e) => `person:${e.trim().toLowerCase()}`, le = (e, t) => e ? Date.now() - e < t : !1, L = async (e) => {
25
+ if (!F()) return null;
26
26
  let t = null;
27
27
  try {
28
- return t = await j(), await A(t.transaction(E, "readonly").objectStore(E).get(e)) ?? null;
28
+ return t = await se(), await I(t.transaction(M, "readonly").objectStore(M).get(e)) ?? null;
29
29
  } catch {
30
30
  return null;
31
31
  } finally {
32
32
  t?.close();
33
33
  }
34
- }, F = async (e, t) => {
35
- if (!k()) return;
34
+ }, ue = async (e, t) => {
35
+ if (!F()) return;
36
36
  let n = null;
37
37
  try {
38
- n = await j(), await A(n.transaction(E, "readwrite").objectStore(E).put(t, e));
38
+ n = await se(), await I(n.transaction(M, "readwrite").objectStore(M).put(t, e));
39
39
  } catch {
40
40
  return;
41
41
  } finally {
42
42
  n?.close();
43
43
  }
44
- }, I = n({
44
+ }, R = n({
45
45
  provider: null,
46
46
  state: "Loading",
47
- personCacheOptions: O
48
- }), ae = ({ provider: e, children: t, personCacheOptions: n }) => {
47
+ personCacheOptions: P
48
+ }), de = ({ provider: e, children: t, personCacheOptions: n }) => {
49
49
  let i = r(() => e?.getState?.() ?? "Loading", [e]), a = l(r((t) => (e.onStateChanged?.(t), () => {
50
50
  let n = e;
51
51
  typeof n.removeStateChangedHandler == "function" && n.removeStateChangedHandler(t);
52
52
  }), [e]), i, i), s = o(() => ({
53
- ...O,
53
+ ...P,
54
54
  ...n ?? {}
55
55
  }), [n]), c = o(() => ({
56
56
  provider: e,
@@ -61,30 +61,32 @@ var T = "graph-toolkit-person-cache", E = "personData", D = 1, O = {
61
61
  a,
62
62
  s
63
63
  ]);
64
- return /* @__PURE__ */ C(I.Provider, {
64
+ return /* @__PURE__ */ O(R.Provider, {
65
65
  value: c,
66
66
  children: t
67
67
  });
68
- }, L = () => {
69
- let { provider: e } = i(I);
68
+ }, z = () => {
69
+ let { provider: e } = i(R);
70
70
  return e;
71
- }, R = () => {
72
- let { state: e } = i(I);
71
+ }, B = () => {
72
+ let { state: e } = i(R);
73
73
  return e;
74
- }, z = () => {
75
- let { personCacheOptions: e } = i(I);
74
+ }, V = () => {
75
+ let { personCacheOptions: e } = i(R);
76
76
  return e;
77
- }, oe = (e) => ie.init({ authProvider: async (t) => {
77
+ }, H = (e) => A.init({ authProvider: async (t) => {
78
78
  try {
79
79
  t(null, await e.getAccessToken());
80
80
  } catch (e) {
81
81
  t(e, null);
82
82
  }
83
- } }), se = (e) => {
84
- if (!e) return "";
85
- let t = e.trim().split(" ");
86
- return t.length === 1 ? t[0].substring(0, 2).toUpperCase() : (t[0][0] + t[t.length - 1][0]).toUpperCase();
87
- }, ce = async (e) => {
83
+ } }), fe = (e) => {
84
+ let t = typeof e == "string" ? { displayName: e } : e, n = t?.givenName?.trim(), r = t?.surname?.trim(), i = t?.displayName?.trim(), a = "";
85
+ if (n && (a += n[0]?.toUpperCase() ?? ""), r && (a += r[0]?.toUpperCase() ?? ""), a) return a;
86
+ if (!i) return "";
87
+ let o = i.split(/\s+/);
88
+ return o.length === 1 ? o[0].substring(0, 2).toUpperCase() : (o[0][0] + o[o.length - 1][0]).toUpperCase();
89
+ }, U = async (e) => {
88
90
  if (!e) return null;
89
91
  if (typeof e == "string") return e;
90
92
  let t = e instanceof Blob ? e : e instanceof ArrayBuffer ? new Blob([e]) : null;
@@ -92,10 +94,10 @@ var T = "graph-toolkit-person-cache", E = "personData", D = 1, O = {
92
94
  let r = new FileReader();
93
95
  r.onloadend = () => e(typeof r.result == "string" ? r.result : null), r.onerror = () => n(r.error), r.readAsDataURL(t);
94
96
  }) : null;
95
- }, B = (e) => encodeURIComponent(e.trim()), V = () => {
96
- let e = L(), t = R();
97
- return o(() => !e || t !== "SignedIn" ? null : oe(e), [e, t]);
98
- }, H = (e) => typeof e == "object" && !!e && typeof e.getPersonData == "function", U = (e) => typeof e == "object" && !!e && typeof e.searchPeople == "function", le = [
97
+ }, W = (e) => encodeURIComponent(e.trim()), G = () => {
98
+ let e = z(), t = B();
99
+ return o(() => !e || t !== "SignedIn" ? null : H(e), [e, t]);
100
+ }, pe = (e) => typeof e == "object" && !!e && typeof e.getPersonData == "function", me = (e) => typeof e == "object" && !!e && typeof e.searchPeople == "function", he = [
99
101
  "id",
100
102
  "displayName",
101
103
  "jobTitle",
@@ -103,8 +105,8 @@ var T = "graph-toolkit-person-cache", E = "personData", D = 1, O = {
103
105
  "department",
104
106
  "officeLocation",
105
107
  "userPrincipalName"
106
- ], ue = (e) => {
107
- let t = V(), n = L(), r = R(), i = z(), { userId: o, userPrincipalName: s, fetchPresence: l = !1, fetchPhoto: u = !0, selectFields: d } = e, f = [...new Set([...le, ...(d ?? []).map((e) => e.trim()).filter((e) => e.length > 0 && /^[a-zA-Z0-9_./]+$/.test(e))])].join(","), [p, m] = c({
108
+ ], ge = (e) => {
109
+ let t = G(), n = z(), r = B(), i = V(), { userId: o, userPrincipalName: s, fetchPresence: l = !1, fetchPhoto: u = !0, selectFields: d } = e, f = [...new Set([...he, ...(d ?? []).map((e) => e.trim()).filter((e) => e.length > 0 && /^[a-zA-Z0-9_./]+$/.test(e))])].join(","), [p, m] = c({
108
110
  user: null,
109
111
  presence: null,
110
112
  photoUrl: null,
@@ -112,10 +114,10 @@ var T = "graph-toolkit-person-cache", E = "personData", D = 1, O = {
112
114
  error: null
113
115
  });
114
116
  return a(() => {
115
- let e = !1, a = f.split(",").filter((e) => !le.includes(e));
117
+ let e = !1, a = f.split(",").filter((e) => !he.includes(e));
116
118
  return (async () => {
117
119
  let c = o || s;
118
- if (H(n)) {
120
+ if (pe(n)) {
119
121
  try {
120
122
  let t = await n.getPersonData({
121
123
  identifier: c,
@@ -168,7 +170,7 @@ var T = "graph-toolkit-person-cache", E = "personData", D = 1, O = {
168
170
  });
169
171
  return;
170
172
  }
171
- let d = M(c), p = i.enabled ? await P(d) : null, h = !!(p?.user && N(p.userCachedAt, i.userTtlMs)), g = !!(p?.presenceCachedAt && N(p.presenceCachedAt, i.presenceTtlMs)), _ = !!(p?.photoCachedAt && N(p.photoCachedAt, i.photoTtlMs));
173
+ let d = ce(c), p = i.enabled ? await L(d) : null, h = !!(p?.user && le(p.userCachedAt, i.userTtlMs)), g = !!(p?.presenceCachedAt && le(p.presenceCachedAt, i.presenceTtlMs)), _ = !!(p?.photoCachedAt && le(p.photoCachedAt, i.photoTtlMs));
172
174
  if (h && (!l || g) && (!u || _)) {
173
175
  e || m({
174
176
  user: p?.user ?? null,
@@ -186,13 +188,13 @@ var T = "graph-toolkit-person-cache", E = "personData", D = 1, O = {
186
188
  error: null
187
189
  }));
188
190
  let n = c.toLowerCase() === "me", r = Date.now(), a = !1, o = !1, s = !1, v = h ? p?.user ?? null : null;
189
- if (v || (v = await t.api(n ? "/me" : `/users/${B(c)}`).select(f).get(), a = !0), e) return;
191
+ if (v || (v = await t.api(n ? "/me" : `/users/${W(c)}`).select(f).get(), a = !0), e) return;
190
192
  let y = null, b = null;
191
193
  if (l) {
192
194
  if (g) y = p?.presence ?? null;
193
195
  else if (v?.id) {
194
196
  try {
195
- y = await t.api(n ? "/me/presence" : `/users/${B(v.id)}/presence`).get();
197
+ y = await t.api(n ? "/me/presence" : `/users/${W(v.id)}/presence`).get();
196
198
  } catch (e) {
197
199
  console.warn("Failed to fetch presence:", e);
198
200
  }
@@ -203,7 +205,7 @@ var T = "graph-toolkit-person-cache", E = "personData", D = 1, O = {
203
205
  if (_) b = p?.photoUrl ?? null;
204
206
  else if (v?.id) {
205
207
  try {
206
- b = await ce(await t.api(n ? "/me/photo/$value" : `/users/${B(v.id)}/photo/$value`).get());
208
+ b = await U(await t.api(n ? "/me/photo/$value" : `/users/${W(v.id)}/photo/$value`).get());
207
209
  } catch (e) {
208
210
  console.warn("Failed to fetch photo:", e);
209
211
  }
@@ -211,7 +213,7 @@ var T = "graph-toolkit-person-cache", E = "personData", D = 1, O = {
211
213
  }
212
214
  }
213
215
  let x = { ...p ?? {} };
214
- a && v && (x.user = v, x.userCachedAt = r), l && (o || g) && (x.presence = o ? y : p?.presence, x.presenceCachedAt = o ? r : p?.presenceCachedAt), u && (s || _) && (x.photoUrl = s ? b : p?.photoUrl, x.photoCachedAt = s ? r : p?.photoCachedAt), i.enabled && (a || o || s) && x.user && await F(d, x), e || m({
216
+ a && v && (x.user = v, x.userCachedAt = r), l && (o || g) && (x.presence = o ? y : p?.presence, x.presenceCachedAt = o ? r : p?.presenceCachedAt), u && (s || _) && (x.photoUrl = s ? b : p?.photoUrl, x.photoCachedAt = s ? r : p?.photoCachedAt), i.enabled && (a || o || s) && x.user && await ue(d, x), e || m({
215
217
  user: v,
216
218
  presence: y,
217
219
  photoUrl: b,
@@ -241,662 +243,260 @@ var T = "graph-toolkit-person-cache", E = "personData", D = 1, O = {
241
243
  i,
242
244
  f
243
245
  ]), p;
244
- }, de = (e) => {
245
- switch (e?.toLowerCase()) {
246
- case "available":
247
- case "availableidle": return "available";
248
- case "away":
249
- case "berightback": return "away";
250
- case "busy":
251
- case "busyidle":
252
- case "donotdisturb": return "busy";
253
- default: return "offline";
246
+ }, _e = typeof window > "u" ? global : window, ve = "@griffel/";
247
+ function ye(e, t) {
248
+ return _e[Symbol.for(ve + e)] || (_e[Symbol.for(ve + e)] = t), _e[Symbol.for(ve + e)];
249
+ }
250
+ var be = /* @__PURE__ */ ye("DEBUG_RESET_CLASSES", {}), K = /* @__PURE__ */ ye("DEFINITION_LOOKUP_TABLE", {}), q = "data-make-styles-bucket", J = "data-priority", xe = process.env.NODE_ENV === "production" ? 10 : 18;
251
+ //#endregion
252
+ //#region node_modules/@emotion/hash/dist/emotion-hash.esm.js
253
+ function Se(e) {
254
+ for (var t = 0, n, r = 0, i = e.length; i >= 4; ++r, i -= 4) n = e.charCodeAt(r) & 255 | (e.charCodeAt(++r) & 255) << 8 | (e.charCodeAt(++r) & 255) << 16 | (e.charCodeAt(++r) & 255) << 24, n = (n & 65535) * 1540483477 + ((n >>> 16) * 59797 << 16), n ^= n >>> 24, t = (n & 65535) * 1540483477 + ((n >>> 16) * 59797 << 16) ^ (t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16);
255
+ switch (i) {
256
+ case 3: t ^= (e.charCodeAt(r + 2) & 255) << 16;
257
+ case 2: t ^= (e.charCodeAt(r + 1) & 255) << 8;
258
+ case 1: t ^= e.charCodeAt(r) & 255, t = (t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16);
254
259
  }
255
- }, fe = {
256
- avatar: [
257
- void 0,
258
- void 0,
259
- void 0,
260
- void 0
261
- ],
262
- oneline: [
263
- "displayName",
264
- void 0,
265
- void 0,
266
- void 0
267
- ],
268
- twolines: [
269
- "displayName",
270
- "jobTitle",
271
- void 0,
272
- void 0
273
- ],
274
- threelines: [
275
- "displayName",
276
- "jobTitle",
277
- "department",
278
- void 0
279
- ],
280
- fourlines: [
281
- "displayName",
282
- "jobTitle",
283
- "department",
284
- "officeLocation,mail"
285
- ]
286
- }, pe = new Set(["presenceActivity", "presenceAvailability"]), me = new Set(["email", ...pe]), he = 16, ge = 12, _e = {
287
- 1: "8rem",
288
- 2: "6rem",
289
- 3: "5rem",
290
- 4: "7rem"
291
- }, ve = (e) => e?.split(",").map((e) => e.trim()).filter(Boolean) ?? [], W = (e) => {
292
- if (e != null) {
293
- if (typeof e == "string") return e || void 0;
294
- if (typeof e == "number" || typeof e == "boolean") return String(e);
295
- if (Array.isArray(e)) {
296
- let t = e.map((e) => W(e)).filter((e) => !!e);
297
- return t.length > 0 ? t.join(", ") : void 0;
260
+ return t ^= t >>> 13, t = (t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16), ((t ^ t >>> 15) >>> 0).toString(36);
261
+ }
262
+ //#endregion
263
+ //#region node_modules/@griffel/core/src/runtime/utils/hashSequence.js
264
+ function Ce(e) {
265
+ let t = e.length;
266
+ if (t === 7) return e;
267
+ for (let n = t; n < 7; n++) e += "0";
268
+ return e;
269
+ }
270
+ function we(e, t, n = []) {
271
+ return process.env.NODE_ENV === "production" ? "___" + Ce(Se(e + t)) : "___" + Ce(Se(e + t)) + "_" + Ce(Se(n.join("")));
272
+ }
273
+ //#endregion
274
+ //#region node_modules/@griffel/core/src/runtime/reduceToClassNameForSlots.js
275
+ function Te(e, t) {
276
+ let n = "", r = "";
277
+ for (let i in e) {
278
+ let a = e[i];
279
+ if (a === 0) {
280
+ r += i + " ";
281
+ continue;
298
282
  }
283
+ let o = Array.isArray(a), s = t === "rtl" ? (o ? a[1] : a) + " " : (o ? a[0] : a) + " ";
284
+ n += s, r += s;
299
285
  }
300
- }, ye = (e) => W(e.mail) ?? W(e.email) ?? W(e.userPrincipalName), G = (e, t) => {
301
- let n = ve(t);
302
- for (let t of n) switch (t) {
303
- case "mail":
304
- case "email": {
305
- let t = ye(e);
306
- if (t) return t;
307
- break;
308
- }
309
- default: {
310
- let n = W(e[t]);
311
- if (n) return n;
286
+ return [n.slice(0, -1), r.slice(0, -1)];
287
+ }
288
+ function Ee(e, t) {
289
+ let n = {};
290
+ for (let r in e) {
291
+ let [i, a] = Te(e[r], t);
292
+ if (a === "") {
293
+ n[r] = "";
294
+ continue;
312
295
  }
296
+ let o = we(a, t), s = o + (i === "" ? "" : " " + i);
297
+ K[o] = [e[r], t], n[r] = s;
313
298
  }
314
- }, be = (e, t, n) => ({
315
- line: e,
316
- person: t,
317
- text: n
318
- }), K = (e, t, n, r) => r ? r(be(e, t, n)) : n, q = (e) => /* @__PURE__ */ C(v, { children: /* @__PURE__ */ C(y, {
319
- size: e === 1 ? he : ge,
320
- style: {
321
- width: _e[e],
322
- maxWidth: "100%"
299
+ return n;
300
+ }
301
+ //#endregion
302
+ //#region node_modules/@griffel/core/src/mergeClasses.js
303
+ var De = {};
304
+ function Oe() {
305
+ let e = null, t = "", n = "", r = Array(arguments.length), i = "";
306
+ for (let e = 0; e < arguments.length; e++) {
307
+ let a = arguments[e];
308
+ if (typeof a == "string" && a !== "") {
309
+ let o = a.indexOf("___");
310
+ if (o === -1) process.env.NODE_ENV !== "production" && a.split(" ").forEach((e) => {
311
+ e.startsWith("r") && be[e] && (i ? console.error(`mergeClasses(): a passed string contains multiple classes produced by makeResetStyles (${a} & ${t}, this will lead to non-deterministic behavior. Learn more:https://griffel.js.org/react/api/make-reset-styles#limitations
312
+ Source string: ${a}`) : i = e);
313
+ }), t += a + " ";
314
+ else {
315
+ let i = a.substr(o, xe);
316
+ o > 0 && (t += a.slice(0, o)), n += i, r[e] = i;
317
+ }
318
+ process.env.NODE_ENV !== "production" && a.indexOf("___", o + 1) !== -1 && console.error(`mergeClasses(): a passed string contains multiple identifiers of atomic classes (classes that start with "___"), it's possible that passed classes were concatenated in a wrong way. Source string: ${a}`);
319
+ }
323
320
  }
324
- }) }), J = (e, t, n) => n ?? fe[e][t - 1], xe = (e) => {
325
- switch (e) {
326
- case "avatar": return 0;
327
- case "oneline": return 1;
328
- case "twolines": return 2;
329
- case "threelines": return 3;
330
- default: return 4;
321
+ if (n === "") return t.slice(0, -1);
322
+ let a = De[n];
323
+ if (a !== void 0) return t + a;
324
+ let o = [];
325
+ for (let t = 0; t < arguments.length; t++) {
326
+ let n = r[t];
327
+ if (n) {
328
+ let r = K[n];
329
+ r ? (o.push(r[0]), process.env.NODE_ENV !== "production" && e !== null && e !== r[1] && console.error(`mergeClasses(): a passed string contains an identifier (${n}) that has different direction (dir="${r[1] ? "rtl" : "ltr"}") setting than other classes. This is not supported. Source string: ${arguments[t]}`), e = r[1]) : process.env.NODE_ENV !== "production" && console.error(`mergeClasses(): a passed string contains an identifier (${n}) that does not match any entry in cache. Source string: ${arguments[t]}`);
330
+ }
331
331
  }
332
- }, Y = (e, t) => t <= xe(e), Se = (e) => [...new Set(e.flatMap((e) => ve(e)))].filter((e) => !me.has(e)), Ce = ({ userId: e, userPrincipalName: t, email: n, personDetails: r, view: i = "oneline", showPresence: s = !1, line1Property: c, line2Property: l, line3Property: u, line4Property: d, renderLine1: f, renderLine2: p, renderLine3: m, renderLine4: h, fetchImage: g = !0, onUpdated: v, ...y }) => {
333
- let b = i === "avatar", x = Y(i, 1) ? J(i, 1, c) : void 0, ee = Y(i, 2) ? J(i, 2, l) : void 0, te = Y(i, 3) ? J(i, 3, u) : void 0, S = Y(i, 4) ? J(i, 4, d) : void 0, ne = [
334
- x,
335
- ee,
336
- te,
337
- S
338
- ].some((e) => ve(e).some((e) => pe.has(e))), { user: re, presence: w, photoUrl: ie, loading: T, error: E } = ue({
339
- userId: r ? void 0 : e || t || n,
340
- fetchPresence: s || ne,
341
- fetchPhoto: g,
342
- selectFields: Se([
343
- x,
344
- ee,
345
- te,
346
- S
347
- ])
348
- }), D = r || re, O = D || null, k = o(() => O ? {
349
- ...O,
350
- email: n ?? W(O.email),
351
- presenceActivity: w?.activity ?? W(O.presenceActivity),
352
- presenceAvailability: w?.availability ?? W(O.presenceAvailability)
353
- } : null, [
354
- n,
355
- w?.activity,
356
- w?.availability,
357
- O
358
- ]);
359
- if (a(() => {
360
- if (!(!v || T)) {
361
- if (r && k) {
362
- v({
363
- trigger: "personDetailsChanged",
364
- person: k,
365
- loading: !1,
366
- error: E
367
- });
368
- return;
369
- }
370
- if (E) {
371
- v({
372
- trigger: "personLoadFailed",
373
- person: null,
374
- loading: !1,
375
- error: E
376
- });
377
- return;
378
- }
379
- k && v({
380
- trigger: "personLoaded",
381
- person: k,
382
- loading: !1,
383
- error: null
384
- });
332
+ let s = Object.assign.apply(Object, [{}].concat(o)), [c, l] = Te(s, e), u = we(l, e, r), d = u + " " + c;
333
+ return De[n] = d, K[u] = [s, e], t + d;
334
+ }
335
+ //#endregion
336
+ //#region node_modules/@griffel/core/src/devtools/store.js
337
+ var ke = {}, Ae = /* @__PURE__ */ new Set(), Y = {
338
+ getChildrenSequences: (e) => {
339
+ let t = Object.keys(De).find((t) => De[t].startsWith(e));
340
+ return t ? t.split("___").filter((e) => e.length).map((e) => "___" + e) : [];
341
+ },
342
+ addCSSRule: (e) => {
343
+ Ae.add(e);
344
+ },
345
+ addSequenceDetails: (e, t) => {
346
+ Object.entries(e).forEach(([e, n]) => {
347
+ ke[n.substring(0, xe)] = {
348
+ slotName: e,
349
+ sourceURL: t
350
+ };
351
+ });
352
+ },
353
+ getCSSRules: () => Array.from(Ae),
354
+ getSequenceDetails: (e) => ke[e]
355
+ };
356
+ //#endregion
357
+ //#region node_modules/@griffel/core/src/devtools/utils.js
358
+ function je(e, t) {
359
+ return Array.isArray(e) ? t === "rtl" ? e[1] : e[0] : e || "";
360
+ }
361
+ function Me(e, t, n, r) {
362
+ let i = e[0], a = e[1];
363
+ return Object.entries(i).map(([e, i]) => {
364
+ let o = je(i, a), s;
365
+ if (n && t) {
366
+ let i = n.find(({ className: e }) => e === o);
367
+ !i && t[0][e] ? s = je(t[0][e], t[1]) : i && t[0][e] ? s = r && r.filter(({ debugClassNames: e }) => e.filter(({ className: e }) => e === o).length > 0).length > 0 ? i.className : i.overriddenBy : (!i && !t[0][e] || i && !t[0][e]) && (s = void 0);
385
368
  }
386
- }, [
387
- E,
388
- T,
389
- v,
390
- r,
391
- k
392
- ]), T) return /* @__PURE__ */ C(_, {
393
- ...y,
394
- name: b ? void 0 : y.name,
395
- primaryText: b || !Y(i, 1) ? void 0 : y.primaryText === void 0 ? q(1) : y.primaryText,
396
- secondaryText: b || !Y(i, 2) ? void 0 : y.secondaryText === void 0 ? q(2) : y.secondaryText,
397
- tertiaryText: b || !Y(i, 3) ? void 0 : y.tertiaryText === void 0 ? q(3) : y.tertiaryText,
398
- quaternaryText: b || !Y(i, 4) ? void 0 : y.quaternaryText === void 0 ? q(4) : y.quaternaryText
369
+ return {
370
+ className: o,
371
+ overriddenBy: s
372
+ };
399
373
  });
400
- if (!D) return null;
401
- let A = k ?? O, j = D.displayName || "Unknown User", M = se(j), N = G(A, x), P = G(A, ee), F = G(A, te), I = G(A, S), ae = Y(i, 1) ? x && N !== j || f ? K(1, A, N, f) : y.primaryText : void 0, L = Y(i, 2) ? K(2, A, P, p) : void 0, R = Y(i, 3) ? K(3, A, F, m) : void 0, z = Y(i, 4) ? K(4, A, I, h) : void 0, oe = s && w ? { status: de(w.availability) } : void 0, ce = y.presence ?? oe, B = (typeof A.photoUrl == "string" && A.photoUrl.length > 0 ? A.photoUrl : void 0) ?? ie ?? void 0, V = y.avatar ?? {
402
- image: B ? { src: B } : void 0,
403
- initials: B ? void 0 : M,
404
- name: j
405
- }, H = b ? void 0 : y.name ?? j, U = b ? void 0 : y.primaryText ?? ae, le = b ? void 0 : y.secondaryText ?? L, fe = b ? void 0 : y.tertiaryText ?? R, me = b ? void 0 : y.quaternaryText ?? z;
406
- return /* @__PURE__ */ C(_, {
407
- ...y,
408
- name: H,
409
- primaryText: U,
410
- avatar: V,
411
- presence: ce,
412
- secondaryText: le,
413
- tertiaryText: fe,
414
- quaternaryText: me
415
- });
416
- }, we = [
417
- "id",
418
- "displayName",
419
- "mail",
420
- "userPrincipalName",
421
- "jobTitle",
422
- "department"
423
- ], Te = new Set(we), Ee = 10, De = /^[a-zA-Z0-9_./]+$/, Oe = "asc", ke = (e) => ({
424
- id: e.id ?? e.userPrincipalName ?? e.mail ?? "unknown-user",
425
- givenName: e.givenName ?? null,
426
- surname: e.surname ?? null,
427
- displayName: e.displayName ?? null,
428
- mail: e.mail ?? null,
429
- userPrincipalName: e.userPrincipalName ?? null,
430
- jobTitle: e.jobTitle ?? null,
431
- department: e.department ?? null
432
- }), Ae = (e, t) => ({
433
- ...e,
434
- presenceActivity: t?.activity ?? null,
435
- presenceAvailability: t?.availability ?? null
436
- }), je = (e) => e.id ?? e.userPrincipalName ?? e.mail ?? void 0, Me = (e) => e.userPrincipalName ?? e.mail ?? e.id ?? void 0, Ne = (e) => Array.from(new Set((e ?? []).map((e) => e.trim()).filter(Boolean))), Pe = (e) => Array.from(new Set((e ?? []).map((e) => e.trim()).filter((e) => e.length > 0 && De.test(e)))), Fe = (e, t) => {
437
- let n = [...we, ...Pe(e)];
438
- return (t === "givenName" || t === "surname") && n.push(t), Array.from(new Set(n));
439
- }, Ie = (e) => {
440
- let t = e.filter((e) => !Te.has(e));
441
- return t.length > 0 ? t : void 0;
442
- }, Le = (e, t) => {
443
- let n = e[t];
444
- return typeof n == "string" && n.trim().length > 0 ? n : e.displayName ?? e.mail ?? e.userPrincipalName ?? e.id;
445
- }, Re = (e, t, n = Oe) => {
446
- if (!t) return e;
447
- let r = new Intl.Collator(void 0, {
448
- sensitivity: "base",
449
- numeric: !0
450
- }), i = n === "desc" ? -1 : 1;
451
- return e.map((e, t) => ({
452
- person: e,
453
- index: t
454
- })).sort((e, n) => {
455
- let a = r.compare(Le(e.person, t), Le(n.person, t));
456
- return a === 0 ? e.index - n.index : a * i;
457
- }).map((e) => e.person);
458
- }, ze = (e) => {
459
- let t = V(), n = L(), r = R(), i = JSON.stringify(e?.people ?? null), s = JSON.stringify(Ne(e?.userIds)), l = JSON.stringify(Pe(e?.selectFields).filter((e) => !Te.has(e))), u = o(() => {
460
- if (i !== "null") return JSON.parse(i);
461
- }, [i]), d = o(() => JSON.parse(s), [s]), f = o(() => JSON.parse(l), [l]), p = o(() => Fe(f, e?.sortBy), [f, e?.sortBy]), m = o(() => Ie(p), [p]), h = o(() => e?.groupId?.trim(), [e?.groupId]), g = e?.maxPeople ?? Ee, _ = e?.showPresence ?? !1, v = e?.sortBy, y = e?.sortDirection ?? Oe, [b, x] = c({
462
- people: [],
463
- loading: !0,
464
- error: null
465
- });
466
- return a(() => {
467
- let e = !1, i = async (e) => {
468
- if (H(n)) {
469
- let t = await n.getPersonData({
470
- identifier: e,
471
- fetchPresence: _,
472
- fetchPhoto: !0,
473
- selectFields: m
474
- });
475
- return t.user ? {
476
- ...ke(t.user),
477
- photoUrl: t.photoUrl,
478
- presenceActivity: t.presence?.activity ?? null,
479
- presenceAvailability: t.presence?.availability ?? null
480
- } : null;
481
- }
482
- if (r !== "SignedIn" || !t) return null;
483
- let i = e.toLowerCase() === "me", a = await t.api(i ? "/me" : `/users/${B(e)}`).select(p.join(",")).get(), o = null, s = null;
484
- if (_ && a.id) try {
485
- o = await t.api(i ? "/me/presence" : `/users/${B(a.id)}/presence`).get();
486
- } catch {
487
- o = null;
488
- }
489
- if (a.id) try {
490
- s = await ce(await t.api(i ? "/me/photo/$value" : `/users/${B(a.id)}/photo/$value`).get());
491
- } catch {
492
- s = null;
493
- }
494
- return {
495
- ...ke(a),
496
- photoUrl: s,
497
- presenceActivity: o?.activity ?? null,
498
- presenceAvailability: o?.availability ?? null
499
- };
500
- }, a = async (e, t = je) => (await Promise.all(e.map(async (e) => {
501
- let n = t(e);
502
- if (!n) return _ ? Ae(e, null) : e;
503
- let r = _ && !e.presenceAvailability && !e.presenceActivity, a = !e.photoUrl;
504
- if (!r && !a) return e;
505
- try {
506
- let t = await i(n);
507
- return t ? {
508
- ...e,
509
- photoUrl: e.photoUrl ?? t.photoUrl,
510
- presenceActivity: e.presenceActivity ?? t.presenceActivity,
511
- presenceAvailability: e.presenceAvailability ?? t.presenceAvailability
512
- } : e;
513
- } catch {
514
- return e;
515
- }
516
- }))).filter((e) => !!e.id);
517
- return (async () => {
518
- if (e || x((e) => ({
519
- ...e,
520
- loading: !0,
521
- error: null
522
- })), u) {
523
- let t = _ || u.some((e) => !e.photoUrl) ? await a(u, Me) : u;
524
- e || x({
525
- people: Re(t, v, y),
526
- loading: !1,
527
- error: null
528
- });
529
- return;
530
- }
531
- if (d.length > 0) {
532
- let t = (await Promise.allSettled(d.map((e) => i(e)))).flatMap((e) => e.status === "fulfilled" && e.value ? [e.value] : []);
533
- e || x({
534
- people: Re(t, v, y),
535
- loading: !1,
536
- error: null
537
- });
538
- return;
539
- }
540
- if (!U(n) && r !== "SignedIn") {
541
- e || x({
542
- people: [],
543
- loading: !1,
544
- error: null
545
- });
546
- return;
547
- }
548
- try {
549
- let i = [];
550
- h ? t && r === "SignedIn" && (i = ((await t.api(`/groups/${B(h)}/members/microsoft.graph.user`).select(p.join(",")).top(g).get()).value ?? []).map(ke)) : U(n) ? i = (await n.searchPeople("", g)).map((e) => ({
551
- ...e,
552
- presenceActivity: null,
553
- presenceAvailability: null
554
- })) : t && r === "SignedIn" && (i = ((await t.api("/users").select(p.join(",")).top(g).get()).value ?? []).map(ke)), (_ || i.some((e) => !e.photoUrl)) && (i = await a(i)), e || x({
555
- people: Re(i, v, y),
556
- loading: !1,
557
- error: null
558
- });
559
- } catch (t) {
560
- e || x({
561
- people: [],
562
- loading: !1,
563
- error: t
564
- });
565
- }
566
- })(), () => {
567
- e = !0;
568
- };
569
- }, [
570
- u,
571
- i,
572
- t,
573
- h,
574
- g,
575
- n,
576
- m,
577
- r,
578
- p,
579
- _,
580
- v,
581
- y,
582
- d
583
- ]), b;
584
- }, Be = 3, Ve = 10, He = (e) => {
585
- switch (e?.toLowerCase()) {
586
- case "available":
587
- case "availableidle": return "available";
588
- case "away":
589
- case "berightback": return "away";
590
- case "busy":
591
- case "busyidle":
592
- case "donotdisturb": return "busy";
593
- case "offline":
594
- case "presenceunknown": return "offline";
595
- default: return;
596
- }
597
- }, Ue = (e) => e.displayName ?? e.mail ?? e.userPrincipalName ?? e.id, We = (e) => {
598
- let t = Ue(e), n = He(e.presenceAvailability);
599
- return /* @__PURE__ */ C(f, {
600
- name: t,
601
- avatar: {
602
- name: t,
603
- image: e.photoUrl ? { src: e.photoUrl } : void 0,
604
- badge: n ? { status: n } : void 0,
605
- color: "colorful"
606
- }
607
- }, e.id);
608
- }, Ge = ({ people: e, userIds: t, selectFields: n, sortBy: r, sortDirection: i, groupId: o, showMax: s = Be, showPresence: c = !1, layout: l = "stack", size: u = 32, onUpdated: f, ...m }) => {
609
- let { people: h, loading: g, error: _ } = ze({
610
- people: e,
611
- userIds: t,
612
- selectFields: n,
613
- sortBy: r,
614
- sortDirection: i,
615
- groupId: o,
616
- maxPeople: Math.max(Ve, s + 5),
617
- showPresence: c
618
- });
619
- if (a(() => {
620
- if (!f || g) return;
621
- let t = "peopleLoaded";
622
- _ ? t = "peopleLoadFailed" : e && (t = "peopleChanged"), f({
623
- trigger: t,
624
- people: h,
625
- loading: !1,
626
- error: _
627
- });
628
- }, [
629
- _,
630
- g,
631
- f,
632
- e,
633
- h
634
- ]), g) return /* @__PURE__ */ C(b, { size: "tiny" });
635
- if (h.length === 0) return null;
636
- let v = Math.max(0, s), y = h.slice(0, v), x = h.slice(v);
637
- return /* @__PURE__ */ w(d, {
638
- layout: l,
639
- size: u,
640
- ...m,
641
- children: [y.map(We), x.length > 0 && /* @__PURE__ */ C(p, {
642
- count: x.length,
643
- children: x.map(We)
644
- })]
645
- });
646
- }, Ke = typeof window > "u" ? global : window, qe = "@griffel/";
647
- function Je(e, t) {
648
- return Ke[Symbol.for(qe + e)] || (Ke[Symbol.for(qe + e)] = t), Ke[Symbol.for(qe + e)];
649
- }
650
- var Ye = /* @__PURE__ */ Je("DEBUG_RESET_CLASSES", {}), X = /* @__PURE__ */ Je("DEFINITION_LOOKUP_TABLE", {}), Z = "data-make-styles-bucket", Xe = "data-priority", Ze = process.env.NODE_ENV === "production" ? 10 : 18;
651
- //#endregion
652
- //#region node_modules/@emotion/hash/dist/emotion-hash.esm.js
653
- function Qe(e) {
654
- for (var t = 0, n, r = 0, i = e.length; i >= 4; ++r, i -= 4) n = e.charCodeAt(r) & 255 | (e.charCodeAt(++r) & 255) << 8 | (e.charCodeAt(++r) & 255) << 16 | (e.charCodeAt(++r) & 255) << 24, n = (n & 65535) * 1540483477 + ((n >>> 16) * 59797 << 16), n ^= n >>> 24, t = (n & 65535) * 1540483477 + ((n >>> 16) * 59797 << 16) ^ (t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16);
655
- switch (i) {
656
- case 3: t ^= (e.charCodeAt(r + 2) & 255) << 16;
657
- case 2: t ^= (e.charCodeAt(r + 1) & 255) << 8;
658
- case 1: t ^= e.charCodeAt(r) & 255, t = (t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16);
659
- }
660
- return t ^= t >>> 13, t = (t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16), ((t ^ t >>> 15) >>> 0).toString(36);
661
- }
662
- //#endregion
663
- //#region node_modules/@griffel/core/src/runtime/utils/hashSequence.js
664
- function $e(e) {
665
- let t = e.length;
666
- if (t === 7) return e;
667
- for (let n = t; n < 7; n++) e += "0";
668
- return e;
669
- }
670
- function et(e, t, n = []) {
671
- return process.env.NODE_ENV === "production" ? "___" + $e(Qe(e + t)) : "___" + $e(Qe(e + t)) + "_" + $e(Qe(n.join("")));
672
- }
673
- //#endregion
674
- //#region node_modules/@griffel/core/src/runtime/reduceToClassNameForSlots.js
675
- function tt(e, t) {
676
- let n = "", r = "";
677
- for (let i in e) {
678
- let a = e[i];
679
- if (a === 0) {
680
- r += i + " ";
681
- continue;
682
- }
683
- let o = Array.isArray(a), s = t === "rtl" ? (o ? a[1] : a) + " " : (o ? a[0] : a) + " ";
684
- n += s, r += s;
685
- }
686
- return [n.slice(0, -1), r.slice(0, -1)];
687
- }
688
- function nt(e, t) {
689
- let n = {};
690
- for (let r in e) {
691
- let [i, a] = tt(e[r], t);
692
- if (a === "") {
693
- n[r] = "";
694
- continue;
695
- }
696
- let o = et(a, t), s = o + (i === "" ? "" : " " + i);
697
- X[o] = [e[r], t], n[r] = s;
698
- }
699
- return n;
700
- }
701
- //#endregion
702
- //#region node_modules/@griffel/core/src/mergeClasses.js
703
- var rt = {};
704
- function it() {
705
- let e = null, t = "", n = "", r = Array(arguments.length), i = "";
706
- for (let e = 0; e < arguments.length; e++) {
707
- let a = arguments[e];
708
- if (typeof a == "string" && a !== "") {
709
- let o = a.indexOf("___");
710
- if (o === -1) process.env.NODE_ENV !== "production" && a.split(" ").forEach((e) => {
711
- e.startsWith("r") && Ye[e] && (i ? console.error(`mergeClasses(): a passed string contains multiple classes produced by makeResetStyles (${a} & ${t}, this will lead to non-deterministic behavior. Learn more:https://griffel.js.org/react/api/make-reset-styles#limitations
712
- Source string: ${a}`) : i = e);
713
- }), t += a + " ";
714
- else {
715
- let i = a.substr(o, Ze);
716
- o > 0 && (t += a.slice(0, o)), n += i, r[e] = i;
717
- }
718
- process.env.NODE_ENV !== "production" && a.indexOf("___", o + 1) !== -1 && console.error(`mergeClasses(): a passed string contains multiple identifiers of atomic classes (classes that start with "___"), it's possible that passed classes were concatenated in a wrong way. Source string: ${a}`);
719
- }
720
- }
721
- if (n === "") return t.slice(0, -1);
722
- let a = rt[n];
723
- if (a !== void 0) return t + a;
724
- let o = [];
725
- for (let t = 0; t < arguments.length; t++) {
726
- let n = r[t];
727
- if (n) {
728
- let r = X[n];
729
- r ? (o.push(r[0]), process.env.NODE_ENV !== "production" && e !== null && e !== r[1] && console.error(`mergeClasses(): a passed string contains an identifier (${n}) that has different direction (dir="${r[1] ? "rtl" : "ltr"}") setting than other classes. This is not supported. Source string: ${arguments[t]}`), e = r[1]) : process.env.NODE_ENV !== "production" && console.error(`mergeClasses(): a passed string contains an identifier (${n}) that does not match any entry in cache. Source string: ${arguments[t]}`);
730
- }
731
- }
732
- let s = Object.assign.apply(Object, [{}].concat(o)), [c, l] = tt(s, e), u = et(l, e, r), d = u + " " + c;
733
- return rt[n] = d, X[u] = [s, e], t + d;
734
- }
735
- //#endregion
736
- //#region node_modules/@griffel/core/src/devtools/store.js
737
- var at = {}, ot = /* @__PURE__ */ new Set(), Q = {
738
- getChildrenSequences: (e) => {
739
- let t = Object.keys(rt).find((t) => rt[t].startsWith(e));
740
- return t ? t.split("___").filter((e) => e.length).map((e) => "___" + e) : [];
741
- },
742
- addCSSRule: (e) => {
743
- ot.add(e);
744
- },
745
- addSequenceDetails: (e, t) => {
746
- Object.entries(e).forEach(([e, n]) => {
747
- at[n.substring(0, Ze)] = {
748
- slotName: e,
749
- sourceURL: t
750
- };
751
- });
752
- },
753
- getCSSRules: () => Array.from(ot),
754
- getSequenceDetails: (e) => at[e]
755
- };
756
- //#endregion
757
- //#region node_modules/@griffel/core/src/devtools/utils.js
758
- function st(e, t) {
759
- return Array.isArray(e) ? t === "rtl" ? e[1] : e[0] : e || "";
760
- }
761
- function ct(e, t, n, r) {
762
- let i = e[0], a = e[1];
763
- return Object.entries(i).map(([e, i]) => {
764
- let o = st(i, a), s;
765
- if (n && t) {
766
- let i = n.find(({ className: e }) => e === o);
767
- !i && t[0][e] ? s = st(t[0][e], t[1]) : i && t[0][e] ? s = r && r.filter(({ debugClassNames: e }) => e.filter(({ className: e }) => e === o).length > 0).length > 0 ? i.className : i.overriddenBy : (!i && !t[0][e] || i && !t[0][e]) && (s = void 0);
768
- }
769
- return {
770
- className: o,
771
- overriddenBy: s
772
- };
773
- });
774
- }
775
- //#endregion
776
- //#region node_modules/@griffel/core/src/devtools/getAtomicDebugSequenceTree.js
777
- function lt(e, t) {
778
- let n = X[e];
779
- if (n === void 0) return;
780
- let r = ct(n, t ? X[t.sequenceHash] : void 0, t?.debugClassNames, t?.children), i = {
781
- sequenceHash: e,
782
- direction: n[1],
783
- children: [],
784
- debugClassNames: r
785
- };
786
- return Q.getChildrenSequences(i.sequenceHash).reverse().forEach((e) => {
787
- let t = lt(e, i);
788
- t && i.children.push(t);
789
- }), i.children.length || (i.rules = {}, i.debugClassNames.forEach(({ className: t }) => {
790
- let n = Q.getSequenceDetails(e);
791
- n && (i.slot = n.slotName, i.sourceURL = n.sourceURL);
792
- let r = Q.getCSSRules().find((e) => e.includes(t));
793
- i.rules[t] = r;
794
- })), i;
795
- }
796
- //#endregion
797
- //#region node_modules/@griffel/core/src/devtools/getResetDebugSequence.js
798
- function ut(e) {
799
- if (Ye[e] === void 0) return;
800
- let t = {
801
- sequenceHash: e,
802
- direction: "ltr",
803
- children: [],
804
- debugClassNames: [{ className: e }]
805
- };
806
- t.rules = {}, t.slot = "makeResetStyles()";
807
- let [{ className: n }] = t.debugClassNames, r = Q.getCSSRules().filter((e) => e.includes(`.${n}`));
808
- return t.rules[n] = r.join(""), t;
809
- }
810
- //#endregion
811
- //#region node_modules/@griffel/core/src/devtools/mergeDebugSequence.js
812
- function dt(e, t) {
813
- let n = e ? lt(e) : void 0, r = t ? ut(t) : void 0;
814
- if (!(!n && !r)) return n ? r ? {
815
- sequenceHash: n.sequenceHash + r.sequenceHash,
816
- direction: n.direction,
817
- children: [n, r],
818
- debugClassNames: [...n.debugClassNames, ...r.debugClassNames]
819
- } : n : r;
820
- }
821
- //#endregion
822
- //#region node_modules/@griffel/core/src/devtools/injectDevTools.js
823
- function ft(e) {
824
- let t = e.defaultView;
825
- if (!t || t.__GRIFFEL_DEVTOOLS__) return;
826
- let n = { getInfo: (e) => {
827
- let t, n;
828
- for (let r of e.classList) r.startsWith("___") && (t = r), Ye[r] && (n = r);
829
- return dt(t, n);
830
- } };
831
- Object.defineProperty(t, "__GRIFFEL_DEVTOOLS__", {
832
- configurable: !1,
833
- enumerable: !1,
834
- get() {
835
- return n;
836
- }
374
+ }
375
+ //#endregion
376
+ //#region node_modules/@griffel/core/src/devtools/getAtomicDebugSequenceTree.js
377
+ function Ne(e, t) {
378
+ let n = K[e];
379
+ if (n === void 0) return;
380
+ let r = Me(n, t ? K[t.sequenceHash] : void 0, t?.debugClassNames, t?.children), i = {
381
+ sequenceHash: e,
382
+ direction: n[1],
383
+ children: [],
384
+ debugClassNames: r
385
+ };
386
+ return Y.getChildrenSequences(i.sequenceHash).reverse().forEach((e) => {
387
+ let t = Ne(e, i);
388
+ t && i.children.push(t);
389
+ }), i.children.length || (i.rules = {}, i.debugClassNames.forEach(({ className: t }) => {
390
+ let n = Y.getSequenceDetails(e);
391
+ n && (i.slot = n.slotName, i.sourceURL = n.sourceURL);
392
+ let r = Y.getCSSRules().find((e) => e.includes(t));
393
+ i.rules[t] = r;
394
+ })), i;
395
+ }
396
+ //#endregion
397
+ //#region node_modules/@griffel/core/src/devtools/getResetDebugSequence.js
398
+ function Pe(e) {
399
+ if (be[e] === void 0) return;
400
+ let t = {
401
+ sequenceHash: e,
402
+ direction: "ltr",
403
+ children: [],
404
+ debugClassNames: [{ className: e }]
405
+ };
406
+ t.rules = {}, t.slot = "makeResetStyles()";
407
+ let [{ className: n }] = t.debugClassNames, r = Y.getCSSRules().filter((e) => e.includes(`.${n}`));
408
+ return t.rules[n] = r.join(""), t;
409
+ }
410
+ //#endregion
411
+ //#region node_modules/@griffel/core/src/devtools/mergeDebugSequence.js
412
+ function Fe(e, t) {
413
+ let n = e ? Ne(e) : void 0, r = t ? Pe(t) : void 0;
414
+ if (!(!n && !r)) return n ? r ? {
415
+ sequenceHash: n.sequenceHash + r.sequenceHash,
416
+ direction: n.direction,
417
+ children: [n, r],
418
+ debugClassNames: [...n.debugClassNames, ...r.debugClassNames]
419
+ } : n : r;
420
+ }
421
+ //#endregion
422
+ //#region node_modules/@griffel/core/src/devtools/injectDevTools.js
423
+ function Ie(e) {
424
+ let t = e.defaultView;
425
+ if (!t || t.__GRIFFEL_DEVTOOLS__) return;
426
+ let n = { getInfo: (e) => {
427
+ let t, n;
428
+ for (let r of e.classList) r.startsWith("___") && (t = r), be[r] && (n = r);
429
+ return Fe(t, n);
430
+ } };
431
+ Object.defineProperty(t, "__GRIFFEL_DEVTOOLS__", {
432
+ configurable: !1,
433
+ enumerable: !1,
434
+ get() {
435
+ return n;
436
+ }
837
437
  });
838
438
  }
839
439
  //#endregion
840
440
  //#region node_modules/@griffel/core/src/devtools/isDevToolsEnabled.js
841
- var pt = (() => {
441
+ var Le = (() => {
842
442
  try {
843
443
  return !!(typeof window < "u" && window.sessionStorage?.getItem("__GRIFFEL_DEVTOOLS__"));
844
444
  } catch {
845
445
  return !1;
846
446
  }
847
- })(), mt = "<unknown>";
848
- function ht(e) {
849
- return yt(e) || St(e) || wt(e);
447
+ })(), Re = "<unknown>";
448
+ function ze(e) {
449
+ return Ue(e) || Ke(e) || Je(e);
850
450
  }
851
- var gt = /^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack|<anonymous>|\/|[a-z]:\\|\\\\).*?)?\)?\s*$/i, _t = /^\s*at ()((?:file|https?|blob|chrome-extension|native|eval|webpack|<anonymous>|\/|[a-z]:\\|\\\\).*?)\s*$/i, vt = /\((\S*)\)/;
852
- function yt(e) {
853
- let t = gt.exec(e) || _t.exec(e);
451
+ var Be = /^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack|<anonymous>|\/|[a-z]:\\|\\\\).*?)?\)?\s*$/i, Ve = /^\s*at ()((?:file|https?|blob|chrome-extension|native|eval|webpack|<anonymous>|\/|[a-z]:\\|\\\\).*?)\s*$/i, He = /\((\S*)\)/;
452
+ function Ue(e) {
453
+ let t = Be.exec(e) || Ve.exec(e);
854
454
  if (!t) return null;
855
- let n = t[2], r = n && n.indexOf("native") === 0, i = n && n.indexOf("eval") === 0, a = vt.exec(n);
455
+ let n = t[2], r = n && n.indexOf("native") === 0, i = n && n.indexOf("eval") === 0, a = He.exec(n);
856
456
  return i && a !== null && (n = a[1]), {
857
457
  loc: r ? null : t[2],
858
- name: t[1] || mt
458
+ name: t[1] || Re
859
459
  };
860
460
  }
861
- var bt = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|\[native).*?|[^@]*bundle)\s*$/i, xt = /(\S+) line (\d+)(?: > eval line \d+)* > eval/i;
862
- function St(e) {
863
- let t = bt.exec(e);
461
+ var We = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|\[native).*?|[^@]*bundle)\s*$/i, Ge = /(\S+) line (\d+)(?: > eval line \d+)* > eval/i;
462
+ function Ke(e) {
463
+ let t = We.exec(e);
864
464
  if (!t) return null;
865
- let n = t[3], r = n && n.indexOf(" > eval") > -1, i = xt.exec(n);
465
+ let n = t[3], r = n && n.indexOf(" > eval") > -1, i = Ge.exec(n);
866
466
  return r && i !== null && (n = i[1]), {
867
467
  loc: t[3],
868
- name: t[1] || mt
468
+ name: t[1] || Re
869
469
  };
870
470
  }
871
- var Ct = /^\s*(?:([^@]*)(?:\((.*?)\))?@)?(\S.*?)\s*$/i;
872
- function wt(e) {
873
- let t = Ct.exec(e);
471
+ var qe = /^\s*(?:([^@]*)(?:\((.*?)\))?@)?(\S.*?)\s*$/i;
472
+ function Je(e) {
473
+ let t = qe.exec(e);
874
474
  return t ? {
875
475
  loc: t[3],
876
- name: t[1] || mt
476
+ name: t[1] || Re
877
477
  } : null;
878
478
  }
879
479
  //#endregion
880
480
  //#region node_modules/@griffel/core/src/devtools/getSourceURLfromError.js
881
- function Tt() {
882
- let e = Et(String((/* @__PURE__ */ Error()).stack).split("\n"));
883
- return e === void 0 ? void 0 : ht(e)?.loc;
481
+ function Ye() {
482
+ let e = Xe(String((/* @__PURE__ */ Error()).stack).split("\n"));
483
+ return e === void 0 ? void 0 : ze(e)?.loc;
884
484
  }
885
- function Et(e) {
485
+ function Xe(e) {
886
486
  for (let t = e.length - 1; t >= 0; --t) if (e[t].includes("at getSourceURLfromError")) return e[t + 3];
887
487
  }
888
488
  //#endregion
889
489
  //#region node_modules/@griffel/core/src/runtime/utils/normalizeCSSBucketEntry.js
890
- function Dt(e) {
490
+ function Ze(e) {
891
491
  if (!Array.isArray(e)) return [e];
892
492
  if (process.env.NODE_ENV !== "production" && e.length > 2) throw Error("CSS Bucket contains an entry with greater than 2 items, please report this to https://github.com/microsoft/griffel/issues");
893
493
  return e;
894
494
  }
895
495
  //#endregion
896
496
  //#region node_modules/@griffel/core/src/renderer/createIsomorphicStyleSheet.js
897
- function Ot(e, t, n, r) {
497
+ function Qe(e, t, n, r) {
898
498
  let i = [];
899
- if (r[Z] = t, r[Xe] = String(n), e) for (let t in r) e.setAttribute(t, r[t]);
499
+ if (r[q] = t, r[J] = String(n), e) for (let t in r) e.setAttribute(t, r[t]);
900
500
  function a(t) {
901
501
  return e?.sheet ? e.sheet.insertRule(t, e.sheet.cssRules.length) : i.push(t);
902
502
  }
@@ -910,7 +510,7 @@ function Ot(e, t, n, r) {
910
510
  }
911
511
  };
912
512
  }
913
- var kt = /* @__PURE__ */ [
513
+ var $e = /* @__PURE__ */ [
914
514
  "r",
915
515
  "d",
916
516
  "l",
@@ -926,30 +526,30 @@ var kt = /* @__PURE__ */ [
926
526
  "m",
927
527
  "c"
928
528
  ].reduce((e, t, n) => (e[t] = n, e), {});
929
- function At(e, t, n) {
529
+ function et(e, t, n) {
930
530
  return (e === "m" ? e + t : e) + n;
931
531
  }
932
- function jt(e, t, n, r, i = {}) {
933
- let a = e === "m", o = i.m ?? "0", s = i.p ?? 0, c = At(e, o, s);
532
+ function tt(e, t, n, r, i = {}) {
533
+ let a = e === "m", o = i.m ?? "0", s = i.p ?? 0, c = et(e, o, s);
934
534
  if (!r.stylesheets[c]) {
935
- let l = t && t.createElement("style"), u = Ot(l, e, s, {
535
+ let l = t && t.createElement("style"), u = Qe(l, e, s, {
936
536
  ...r.styleElementAttributes,
937
537
  ...a && { media: o }
938
538
  });
939
- r.stylesheets[c] = u, t?.head && l && t.head.insertBefore(l, Nt(t, n, e, r, i));
539
+ r.stylesheets[c] = u, t?.head && l && t.head.insertBefore(l, rt(t, n, e, r, i));
940
540
  }
941
541
  return r.stylesheets[c];
942
542
  }
943
- function Mt(e, t, n) {
944
- return t + (n.m ?? "") === e.getAttribute(Z) + (e.media ?? "");
543
+ function nt(e, t, n) {
544
+ return t + (n.m ?? "") === e.getAttribute(q) + (e.media ?? "");
945
545
  }
946
- function Nt(e, t, n, r, i = {}) {
947
- let a = kt[n], o = i.m ?? "", s = i.p ?? 0, c = (e) => a - kt[e.getAttribute(Z)], l = e.head.querySelectorAll(`[${Z}]`);
546
+ function rt(e, t, n, r, i = {}) {
547
+ let a = $e[n], o = i.m ?? "", s = i.p ?? 0, c = (e) => a - $e[e.getAttribute(q)], l = e.head.querySelectorAll(`[${q}]`);
948
548
  if (n === "m") {
949
- let t = e.head.querySelectorAll(`[${Z}="${n}"]`);
549
+ let t = e.head.querySelectorAll(`[${q}="${n}"]`);
950
550
  t.length && (l = t, c = (e) => r.compareMediaQueries(o, e.media));
951
551
  }
952
- let u = (e) => Mt(e, n, i) ? s - Number(e.getAttribute("data-priority")) : c(e), d = l.length, f = d - 1;
552
+ let u = (e) => nt(e, n, i) ? s - Number(e.getAttribute("data-priority")) : c(e), d = l.length, f = d - 1;
953
553
  for (; f >= 0;) {
954
554
  let e = l.item(f);
955
555
  if (u(e) > 0) return e.nextSibling;
@@ -959,7 +559,7 @@ function Nt(e, t, n, r, i = {}) {
959
559
  }
960
560
  //#endregion
961
561
  //#region node_modules/@griffel/core/src/renderer/safeInsertRule.js
962
- var Pt = /* @__PURE__ */ RegExp(`:(${/* @__PURE__ */ [
562
+ var it = /* @__PURE__ */ RegExp(`:(${/* @__PURE__ */ [
963
563
  "-moz-placeholder",
964
564
  "-moz-focus-inner",
965
565
  "-moz-focusring",
@@ -967,155 +567,814 @@ var Pt = /* @__PURE__ */ RegExp(`:(${/* @__PURE__ */ [
967
567
  "-moz-read-write",
968
568
  "-moz-read-only"
969
569
  ].join("|")})`);
970
- function Ft(e, t) {
570
+ function at(e, t) {
971
571
  try {
972
572
  e.insertRule(t);
973
573
  } catch (e) {
974
- process.env.NODE_ENV !== "production" && !Pt.test(t) && console.error(`There was a problem inserting the following rule: "${t}"`, e);
574
+ process.env.NODE_ENV !== "production" && !it.test(t) && console.error(`There was a problem inserting the following rule: "${t}"`, e);
975
575
  }
976
576
  }
977
577
  //#endregion
978
578
  //#region node_modules/@griffel/core/src/renderer/createDOMRenderer.js
979
- var It = 0, Lt = (e, t) => e < t ? -1 : +(e > t);
980
- function Rt(e = typeof document > "u" ? void 0 : document, t = {}) {
981
- let { classNameHashSalt: n, unstable_filterCSSRule: r, insertionPoint: i, styleElementAttributes: a, compareMediaQueries: o = Lt } = t, s = {
579
+ var ot = 0, st = (e, t) => e < t ? -1 : +(e > t);
580
+ function ct(e = typeof document > "u" ? void 0 : document, t = {}) {
581
+ let { classNameHashSalt: n, unstable_filterCSSRule: r, insertionPoint: i, styleElementAttributes: a, compareMediaQueries: o = st } = t, s = {
982
582
  classNameHashSalt: n,
983
583
  insertionCache: {},
984
584
  stylesheets: {},
985
585
  styleElementAttributes: Object.freeze(a),
986
586
  compareMediaQueries: o,
987
- id: `d${It++}`,
587
+ id: `d${ot++}`,
988
588
  insertCSSRules(t) {
989
589
  for (let n in t) {
990
590
  let a = t[n];
991
591
  for (let t = 0, o = a.length; t < o; t++) {
992
- let [o, c] = Dt(a[t]), l = jt(n, e, i || null, s, c);
993
- s.insertionCache[o] || (s.insertionCache[o] = n, process.env.NODE_ENV !== "production" && pt && Q.addCSSRule(o), r ? r(o) && Ft(l, o) : Ft(l, o));
592
+ let [o, c] = Ze(a[t]), l = tt(n, e, i || null, s, c);
593
+ s.insertionCache[o] || (s.insertionCache[o] = n, process.env.NODE_ENV !== "production" && Le && Y.addCSSRule(o), r ? r(o) && at(l, o) : at(l, o));
994
594
  }
995
595
  }
996
- }
997
- };
998
- return e && process.env.NODE_ENV !== "production" && pt && ft(e), s;
999
- }
1000
- //#endregion
1001
- //#region node_modules/@griffel/core/src/insertionFactory.js
1002
- var zt = () => {
1003
- let e = {};
1004
- return function(t, n) {
1005
- e[t.id] === void 0 && (t.insertCSSRules(n), e[t.id] = !0);
1006
- };
1007
- };
1008
- //#endregion
1009
- //#region node_modules/@griffel/core/src/__styles.js
1010
- function Bt(e, t, n = zt) {
1011
- let r = n(), i = null, a = null, o;
1012
- process.env.NODE_ENV !== "production" && pt && (o = Tt());
1013
- function s(n) {
1014
- let { dir: s, renderer: c } = n, l = s === "ltr";
1015
- l ? i === null && (i = nt(e, s)) : a === null && (a = nt(e, s)), r(c, t);
1016
- let u = l ? i : a;
1017
- return process.env.NODE_ENV !== "production" && pt && Q.addSequenceDetails(u, o), u;
596
+ }
597
+ };
598
+ return e && process.env.NODE_ENV !== "production" && Le && Ie(e), s;
599
+ }
600
+ //#endregion
601
+ //#region node_modules/@griffel/core/src/insertionFactory.js
602
+ var lt = () => {
603
+ let e = {};
604
+ return function(t, n) {
605
+ e[t.id] === void 0 && (t.insertCSSRules(n), e[t.id] = !0);
606
+ };
607
+ };
608
+ //#endregion
609
+ //#region node_modules/@griffel/core/src/__styles.js
610
+ function ut(e, t, n = lt) {
611
+ let r = n(), i = null, a = null, o;
612
+ process.env.NODE_ENV !== "production" && Le && (o = Ye());
613
+ function s(n) {
614
+ let { dir: s, renderer: c } = n, l = s === "ltr";
615
+ l ? i === null && (i = Ee(e, s)) : a === null && (a = Ee(e, s)), r(c, t);
616
+ let u = l ? i : a;
617
+ return process.env.NODE_ENV !== "production" && Le && Y.addSequenceDetails(u, o), u;
618
+ }
619
+ return s;
620
+ }
621
+ //#endregion
622
+ //#region node_modules/@griffel/react/src/utils/canUseDOM.js
623
+ function dt() {
624
+ return typeof window < "u" && !!(window.document && window.document.createElement);
625
+ }
626
+ //#endregion
627
+ //#region node_modules/@griffel/react/src/useInsertionEffect.js
628
+ var ft = t.useInsertionEffect ? t.useInsertionEffect : void 0, pt = () => {
629
+ let e = {};
630
+ return function(t, n) {
631
+ if (ft && dt()) {
632
+ ft(() => {
633
+ t.insertCSSRules(n);
634
+ }, [t, n]);
635
+ return;
636
+ }
637
+ e[t.id] === void 0 && (t.insertCSSRules(n), e[t.id] = !0);
638
+ };
639
+ }, mt = /* @__PURE__ */ n(/* @__PURE__ */ ct());
640
+ function ht() {
641
+ return i(mt);
642
+ }
643
+ //#endregion
644
+ //#region node_modules/@griffel/react/src/TextDirectionContext.js
645
+ var gt = /* @__PURE__ */ n("ltr");
646
+ function _t() {
647
+ return i(gt);
648
+ }
649
+ //#endregion
650
+ //#region node_modules/@griffel/react/src/__styles.js
651
+ function vt(e, t) {
652
+ let n = ut(e, t, pt);
653
+ return function() {
654
+ return n({
655
+ dir: _t(),
656
+ renderer: ht()
657
+ });
658
+ };
659
+ }
660
+ //#endregion
661
+ //#region node_modules/@fluentui/react-icons/lib/contexts/IconDirectionContext.js
662
+ var yt = e.createContext(void 0), bt = {};
663
+ yt.Provider;
664
+ var xt = () => e.useContext(yt) ?? bt, St = vt({
665
+ root: {
666
+ mc9l5x: "f1w7gpdv",
667
+ Bg96gwp: "fez10in"
668
+ },
669
+ rtl: { Bz10aip: "f13rod7r" }
670
+ }, { d: [
671
+ ".f1w7gpdv{display:inline;}",
672
+ ".fez10in{line-height:0;}",
673
+ ".f13rod7r{transform:scaleX(-1);}"
674
+ ] }), Ct = (e, t) => {
675
+ let { filled: n, title: r, primaryFill: i = "currentColor", ...a } = e, o = {
676
+ ...a,
677
+ fill: i
678
+ }, s = St(), c = xt();
679
+ return o.className = Oe(s.root, t?.flipInRtl && c?.textDirection === "rtl" && s.rtl, o.className), r && (o["aria-label"] = r), !o["aria-label"] && !o["aria-labelledby"] ? o["aria-hidden"] = !0 : o.role = "img", o;
680
+ }, wt = vt({ root: { B8gzw0y: "f1dd5bof" } }, { m: [["@media (forced-colors: active){.f1dd5bof{forced-color-adjust:auto;}}", { m: "(forced-colors: active)" }]] }), Tt = "fui-Icon", Et = (t, n) => {
681
+ let [r, i, ...a] = t;
682
+ return e.createElement(r, {
683
+ ...i,
684
+ key: n
685
+ }, ...a.map(Et));
686
+ }, Dt = (t, n, r, i) => {
687
+ let a = n === "1em" ? "20" : n, o = typeof r != "string" && (i?.color || Array.isArray(r[0])) ? r.map(Et) : void 0, s = e.forwardRef((t, s) => {
688
+ let c = wt(), l = Ct(t, { flipInRtl: i?.flipInRtl }), u = {
689
+ ...l,
690
+ className: Oe(Tt, l.className, c.root),
691
+ ref: s,
692
+ width: n,
693
+ height: n,
694
+ viewBox: `0 0 ${a} ${a}`,
695
+ xmlns: "http://www.w3.org/2000/svg"
696
+ };
697
+ return typeof r == "string" ? e.createElement("svg", {
698
+ ...u,
699
+ dangerouslySetInnerHTML: { __html: r }
700
+ }) : o ? e.createElement("svg", u, ...o) : e.createElement("svg", u, ...r.map((t) => e.createElement("path", {
701
+ d: t,
702
+ fill: u.fill
703
+ })));
704
+ });
705
+ return s.displayName = t, s;
706
+ }, Ot = /* @__PURE__ */ Dt("SearchRegular", "1em", ["M13.73 14.44a6.5 6.5 0 1 1 .7-.7l3.42 3.4a.5.5 0 0 1-.63.77l-.07-.06-3.42-3.41Zm-.71-.71A5.54 5.54 0 0 0 15 9.5a5.5 5.5 0 1 0-1.98 4.23Z"]), kt = /* @__PURE__ */ Dt("Mail24Regular", "24", ["M5.25 4h13.5a3.25 3.25 0 0 1 3.24 3.07l.01.18v9.5a3.25 3.25 0 0 1-3.07 3.24l-.18.01H5.25a3.25 3.25 0 0 1-3.24-3.07L2 16.75v-9.5a3.25 3.25 0 0 1 3.07-3.24L5.25 4h13.5-13.5ZM20.5 9.37l-8.15 4.3c-.19.1-.4.1-.6.04l-.1-.05L3.5 9.37v7.38c0 .92.7 1.67 1.6 1.74l.15.01h13.5c.92 0 1.67-.7 1.74-1.6l.01-.15V9.37ZM18.75 5.5H5.25c-.92 0-1.67.7-1.74 1.6l-.01.15v.43l8.5 4.47 8.5-4.47v-.43c0-.92-.7-1.67-1.6-1.74l-.15-.01Z"]), At = /* @__PURE__ */ Dt("Location24Regular", "24", ["M5.84 4.57a8.7 8.7 0 0 1 12.32 12.31l-1.19 1.18c-.87.86-2.01 1.96-3.4 3.3-.88.85-2.26.85-3.13 0l-3.5-3.39-1.1-1.09a8.7 8.7 0 0 1 0-12.31ZM17.1 5.63a7.2 7.2 0 1 0-10.2 10.2l1.5 1.46 3.08 3c.29.28.75.28 1.04 0l3.4-3.3 1.18-1.17a7.2 7.2 0 0 0 0-10.19ZM12 7.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7ZM12 9a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z"]), jt = /* @__PURE__ */ Dt("Chat24Regular", "24", ["M12 2a10 10 0 1 1-4.59 18.89L3.6 21.96a1.25 1.25 0 0 1-1.54-1.54l1.06-3.83A10 10 0 0 1 12 2Zm0 1.5a8.5 8.5 0 0 0-7.43 12.64l.15.27-1.1 3.98 3.98-1.11.27.15A8.5 8.5 0 1 0 12 3.5ZM8.75 13h4.5a.75.75 0 0 1 .1 1.5h-4.6a.75.75 0 0 1-.1-1.5h4.6-4.5Zm0-3.5h6.5a.75.75 0 0 1 .1 1.5h-6.6a.75.75 0 0 1-.1-1.5h6.6-6.5Z"]), Mt = /* @__PURE__ */ Dt("Phone24Regular", "24", ["M15.75 2C16.99 2 18 3 18 4.25v15.5c0 1.24-1 2.25-2.25 2.25h-7.5C7.01 22 6 21 6 19.75V4.25C6 3.01 7 2 8.25 2h7.5Zm0 1.5h-7.5a.75.75 0 0 0-.75.75v15.5c0 .41.34.75.75.75h7.5c.41 0 .75-.34.75-.75V4.25a.75.75 0 0 0-.75-.75Zm-2.5 14a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1 0-1.5h2.5Z"]), Nt = (e) => {
707
+ switch (e?.toLowerCase()) {
708
+ case "available":
709
+ case "availableidle": return "available";
710
+ case "away":
711
+ case "berightback": return "away";
712
+ case "busy":
713
+ case "busyidle": return "busy";
714
+ case "donotdisturb": return "do-not-disturb";
715
+ case "offline": return "offline";
716
+ default: return;
717
+ }
718
+ }, X = (e) => {
719
+ if (e != null) {
720
+ if (typeof e == "string") return e || void 0;
721
+ if (typeof e == "number" || typeof e == "boolean") return String(e);
722
+ if (Array.isArray(e)) {
723
+ let t = e.map((e) => X(e)).filter((e) => !!e);
724
+ return t.length > 0 ? t.join(", ") : void 0;
725
+ }
726
+ }
727
+ }, Pt = (e) => X(e.mail) ?? X(e.email) ?? X(e.userPrincipalName), Ft = (e) => {
728
+ let t = e.businessPhones;
729
+ if (!(!t || t.length === 0)) return X(t[0]);
730
+ }, It = (e) => `tel:${e.replace(/\s+/g, "")}`, Lt = (e, t, n) => /* @__PURE__ */ O(m, {
731
+ appearance: "subtle",
732
+ icon: t,
733
+ "aria-label": e,
734
+ as: "a",
735
+ href: n
736
+ }), Rt = ({ person: e, displayName: t, onEscape: n }) => {
737
+ let r = Pt(e), i = X(e.mobilePhone), a = Ft(e), o = r ? encodeURIComponent(r) : void 0, s = X(e.officeLocation), c = [X(e.jobTitle), X(e.department)].filter((e) => !!e).join(" · "), l = i ? It(i) : a ? It(a) : void 0, d = Nt(X(e.presenceAvailability));
738
+ return /* @__PURE__ */ k(h, {
739
+ appearance: "filled-alternative",
740
+ style: {
741
+ width: "24rem",
742
+ maxWidth: "calc(100vw - 2rem)",
743
+ padding: 0,
744
+ gap: 0,
745
+ overflow: "hidden",
746
+ boxShadow: D.shadow16
747
+ },
748
+ tabIndex: 0,
749
+ onKeyDown: (e) => {
750
+ e.key === "Escape" && n?.();
751
+ },
752
+ children: [
753
+ /* @__PURE__ */ k("div", {
754
+ style: { padding: "24px 28px 16px" },
755
+ children: [/* @__PURE__ */ k("div", {
756
+ style: {
757
+ display: "flex",
758
+ alignItems: "center",
759
+ gap: "18px"
760
+ },
761
+ children: [/* @__PURE__ */ O("div", {
762
+ style: { flex: "0 0 auto" },
763
+ children: /* @__PURE__ */ O(u, {
764
+ image: e.photoUrl ? { src: e.photoUrl } : void 0,
765
+ initials: e.photoUrl ? void 0 : fe({
766
+ ...e,
767
+ displayName: t
768
+ }) || void 0,
769
+ name: t,
770
+ size: 72,
771
+ color: "colorful",
772
+ badge: d ? { status: d } : void 0
773
+ })
774
+ }), /* @__PURE__ */ k("div", {
775
+ style: { minWidth: 0 },
776
+ children: [/* @__PURE__ */ O("div", {
777
+ style: {
778
+ overflow: "hidden",
779
+ textOverflow: "ellipsis",
780
+ whiteSpace: "nowrap"
781
+ },
782
+ children: /* @__PURE__ */ O(E, {
783
+ weight: "semibold",
784
+ size: 400,
785
+ title: t,
786
+ children: t
787
+ })
788
+ }), c ? /* @__PURE__ */ O("div", {
789
+ style: {
790
+ overflow: "hidden",
791
+ textOverflow: "ellipsis",
792
+ whiteSpace: "nowrap"
793
+ },
794
+ children: /* @__PURE__ */ O(E, {
795
+ size: 300,
796
+ title: c,
797
+ style: { color: D.colorNeutralForeground3 },
798
+ children: c
799
+ })
800
+ }) : null]
801
+ })]
802
+ }), r || l ? /* @__PURE__ */ k("div", {
803
+ style: {
804
+ display: "flex",
805
+ gap: 16,
806
+ marginTop: 18
807
+ },
808
+ children: [
809
+ o ? Lt("Chat", /* @__PURE__ */ O(jt, {}), `https://teams.microsoft.com/l/chat/0/0?users=${o}`) : null,
810
+ l ? Lt("Call", /* @__PURE__ */ O(Mt, {}), l) : null,
811
+ r ? Lt("Email", /* @__PURE__ */ O(kt, {}), `mailto:${r}`) : null
812
+ ]
813
+ }) : null]
814
+ }),
815
+ /* @__PURE__ */ O(g, {}),
816
+ /* @__PURE__ */ k("div", {
817
+ style: {
818
+ display: "grid",
819
+ gap: 14,
820
+ padding: "18px 28px 24px"
821
+ },
822
+ children: [
823
+ r ? /* @__PURE__ */ k("div", {
824
+ style: {
825
+ display: "flex",
826
+ gap: 14,
827
+ alignItems: "center"
828
+ },
829
+ children: [/* @__PURE__ */ O(kt, { style: { color: D.colorNeutralForeground3 } }), /* @__PURE__ */ O("a", {
830
+ href: `mailto:${r}`,
831
+ target: "_self",
832
+ rel: "noreferrer",
833
+ children: r
834
+ })]
835
+ }) : null,
836
+ i ? /* @__PURE__ */ k("div", {
837
+ style: {
838
+ display: "flex",
839
+ gap: 14,
840
+ alignItems: "center"
841
+ },
842
+ children: [/* @__PURE__ */ O(Mt, { style: { color: D.colorNeutralForeground3 } }), /* @__PURE__ */ O("a", {
843
+ href: It(i),
844
+ target: "_self",
845
+ rel: "noreferrer",
846
+ children: i
847
+ })]
848
+ }) : null,
849
+ a && !i ? /* @__PURE__ */ k("div", {
850
+ style: {
851
+ display: "flex",
852
+ gap: 14,
853
+ alignItems: "center"
854
+ },
855
+ children: [/* @__PURE__ */ O(Mt, { style: { color: D.colorNeutralForeground3 } }), /* @__PURE__ */ O("a", {
856
+ href: It(a),
857
+ target: "_self",
858
+ rel: "noreferrer",
859
+ children: a
860
+ })]
861
+ }) : null,
862
+ s ? /* @__PURE__ */ k("div", {
863
+ style: {
864
+ display: "flex",
865
+ gap: 14,
866
+ alignItems: "center"
867
+ },
868
+ children: [/* @__PURE__ */ O(At, { style: { color: D.colorNeutralForeground3 } }), /* @__PURE__ */ k(E, {
869
+ style: { color: D.colorNeutralForeground3 },
870
+ children: ["Office: ", s]
871
+ })]
872
+ }) : null
873
+ ]
874
+ })
875
+ ]
876
+ });
877
+ }, zt = (e) => {
878
+ switch (e?.toLowerCase()) {
879
+ case "available":
880
+ case "availableidle": return "available";
881
+ case "away":
882
+ case "berightback": return "away";
883
+ case "busy":
884
+ case "busyidle":
885
+ case "donotdisturb": return "busy";
886
+ default: return "offline";
887
+ }
888
+ }, Bt = {
889
+ avatar: [
890
+ void 0,
891
+ void 0,
892
+ void 0,
893
+ void 0
894
+ ],
895
+ oneline: [
896
+ "displayName",
897
+ void 0,
898
+ void 0,
899
+ void 0
900
+ ],
901
+ twolines: [
902
+ "displayName",
903
+ "jobTitle",
904
+ void 0,
905
+ void 0
906
+ ],
907
+ threelines: [
908
+ "displayName",
909
+ "jobTitle",
910
+ "department",
911
+ void 0
912
+ ],
913
+ fourlines: [
914
+ "displayName",
915
+ "jobTitle",
916
+ "department",
917
+ "officeLocation,mail"
918
+ ]
919
+ }, Vt = new Set(["presenceActivity", "presenceAvailability"]), Ht = new Set(["email", ...Vt]), Ut = 16, Wt = 12, Gt = 500, Kt = 500, qt = [
920
+ "mail",
921
+ "userPrincipalName",
922
+ "jobTitle",
923
+ "department",
924
+ "officeLocation",
925
+ "mobilePhone",
926
+ "businessPhones"
927
+ ], Jt = {
928
+ 1: "8rem",
929
+ 2: "6rem",
930
+ 3: "5rem",
931
+ 4: "7rem"
932
+ }, Yt = (e) => e?.split(",").map((e) => e.trim()).filter(Boolean) ?? [], Z = (e) => {
933
+ if (e != null) {
934
+ if (typeof e == "string") return e || void 0;
935
+ if (typeof e == "number" || typeof e == "boolean") return String(e);
936
+ if (Array.isArray(e)) {
937
+ let t = e.map((e) => Z(e)).filter((e) => !!e);
938
+ return t.length > 0 ? t.join(", ") : void 0;
939
+ }
940
+ }
941
+ }, Xt = (e) => Z(e.mail) ?? Z(e.email) ?? Z(e.userPrincipalName), Zt = (e, t) => {
942
+ let n = Yt(t);
943
+ for (let t of n) switch (t) {
944
+ case "mail":
945
+ case "email": {
946
+ let t = Xt(e);
947
+ if (t) return t;
948
+ break;
949
+ }
950
+ default: {
951
+ let n = Z(e[t]);
952
+ if (n) return n;
953
+ }
954
+ }
955
+ }, Qt = (e, t, n) => ({
956
+ line: e,
957
+ person: t,
958
+ text: n
959
+ }), $t = (e, t, n, r) => r ? r(Qt(e, t, n)) : n, en = (e) => /* @__PURE__ */ O(C, { children: /* @__PURE__ */ O(w, {
960
+ size: e === 1 ? Ut : Wt,
961
+ style: {
962
+ width: Jt[e],
963
+ maxWidth: "100%"
964
+ }
965
+ }) }), tn = (e, t, n) => n ?? Bt[e][t - 1], nn = (e) => {
966
+ switch (e) {
967
+ case "avatar": return 0;
968
+ case "oneline": return 1;
969
+ case "twolines": return 2;
970
+ case "threelines": return 3;
971
+ default: return 4;
972
+ }
973
+ }, Q = (e, t) => t <= nn(e), rn = (e) => [...new Set(e.flatMap((e) => Yt(e)))].filter((e) => !Ht.has(e)), an = ({ userId: e, userPrincipalName: t, email: n, personDetails: r, view: i = "oneline", showPresence: l = !1, personCardInteraction: u = "none", line1Property: d, line2Property: f, line3Property: p, line4Property: m, renderLine1: h, renderLine2: g, renderLine3: _, renderLine4: v, fetchImage: y = !0, onUpdated: C, ...w }) => {
974
+ let T = i === "avatar", te = Q(i, 1) ? tn(i, 1, d) : void 0, ne = Q(i, 2) ? tn(i, 2, f) : void 0, re = Q(i, 3) ? tn(i, 3, p) : void 0, ie = Q(i, 4) ? tn(i, 4, m) : void 0, ae = [
975
+ te,
976
+ ne,
977
+ re,
978
+ ie
979
+ ].some((e) => Yt(e).some((e) => Vt.has(e))), oe = u !== "none", E = s(null), D = s(null), [A, j] = c(!1), [M, N] = c(null), P = u === "hover", F = () => {
980
+ E.current !== null && (window.clearTimeout(E.current), E.current = null), D.current !== null && (window.clearTimeout(D.current), D.current = null);
981
+ }, I = () => {
982
+ F(), N(null), j(!1);
983
+ }, se = () => {
984
+ P && (D.current !== null && (window.clearTimeout(D.current), D.current = null), !A && E.current === null && (E.current = window.setTimeout(() => {
985
+ E.current = null, N("hover"), j(!0);
986
+ }, Gt)));
987
+ }, ce = () => {
988
+ P && A && (E.current !== null && (window.clearTimeout(E.current), E.current = null), D.current === null && (D.current = window.setTimeout(() => {
989
+ D.current = null, j(!1);
990
+ }, Kt)));
991
+ };
992
+ a(() => () => {
993
+ F();
994
+ }, []);
995
+ let { user: le, presence: L, photoUrl: ue, loading: R, error: de } = ge({
996
+ userId: r ? void 0 : e || t || n,
997
+ fetchPresence: l || ae,
998
+ fetchPhoto: y,
999
+ selectFields: rn([
1000
+ te,
1001
+ ne,
1002
+ re,
1003
+ ie,
1004
+ ...oe ? qt : []
1005
+ ])
1006
+ }), z = r || le, B = z || null, V = o(() => B ? {
1007
+ ...B,
1008
+ email: n ?? Z(B.email),
1009
+ presenceActivity: L?.activity ?? Z(B.presenceActivity),
1010
+ presenceAvailability: L?.availability ?? Z(B.presenceAvailability)
1011
+ } : null, [
1012
+ n,
1013
+ L?.activity,
1014
+ L?.availability,
1015
+ B
1016
+ ]);
1017
+ if (a(() => {
1018
+ if (!(!C || R)) {
1019
+ if (r && V) {
1020
+ C({
1021
+ trigger: "personDetailsChanged",
1022
+ person: V,
1023
+ loading: !1,
1024
+ error: de
1025
+ });
1026
+ return;
1027
+ }
1028
+ if (de) {
1029
+ C({
1030
+ trigger: "personLoadFailed",
1031
+ person: null,
1032
+ loading: !1,
1033
+ error: de
1034
+ });
1035
+ return;
1036
+ }
1037
+ V && C({
1038
+ trigger: "personLoaded",
1039
+ person: V,
1040
+ loading: !1,
1041
+ error: null
1042
+ });
1043
+ }
1044
+ }, [
1045
+ de,
1046
+ R,
1047
+ C,
1048
+ r,
1049
+ V
1050
+ ]), R) return /* @__PURE__ */ O(b, {
1051
+ ...w,
1052
+ name: T ? void 0 : w.name,
1053
+ primaryText: T || !Q(i, 1) ? void 0 : w.primaryText === void 0 ? en(1) : w.primaryText,
1054
+ secondaryText: T || !Q(i, 2) ? void 0 : w.secondaryText === void 0 ? en(2) : w.secondaryText,
1055
+ tertiaryText: T || !Q(i, 3) ? void 0 : w.tertiaryText === void 0 ? en(3) : w.tertiaryText,
1056
+ quaternaryText: T || !Q(i, 4) ? void 0 : w.quaternaryText === void 0 ? en(4) : w.quaternaryText
1057
+ });
1058
+ if (!z) return null;
1059
+ let H = V ?? B, U = z.displayName || "Unknown User", W = fe({
1060
+ ...z,
1061
+ displayName: U
1062
+ }) || void 0, G = Zt(H, te), pe = Zt(H, ne), me = Zt(H, re), he = Zt(H, ie), _e = Q(i, 1) ? te && G !== U || h ? $t(1, H, G, h) : w.primaryText : void 0, ve = Q(i, 2) ? $t(2, H, pe, g) : void 0, ye = Q(i, 3) ? $t(3, H, me, _) : void 0, be = Q(i, 4) ? $t(4, H, he, v) : void 0, K = l && L ? { status: zt(L.availability) } : void 0, q = w.presence ?? K, J = (typeof H.photoUrl == "string" && H.photoUrl.length > 0 ? H.photoUrl : void 0) ?? ue ?? void 0, xe = w.avatar ?? {
1063
+ image: J ? { src: J } : void 0,
1064
+ initials: J ? void 0 : W,
1065
+ name: U
1066
+ }, Se = T ? void 0 : w.name ?? U, Ce = T ? void 0 : w.primaryText ?? _e, we = T ? void 0 : w.secondaryText ?? ve, Te = T ? void 0 : w.tertiaryText ?? ye, Ee = T ? void 0 : w.quaternaryText ?? be, De = J ? {
1067
+ ...H,
1068
+ photoUrl: J
1069
+ } : H, Oe = /* @__PURE__ */ O(b, {
1070
+ ...w,
1071
+ name: Se,
1072
+ primaryText: Ce,
1073
+ avatar: xe,
1074
+ presence: q,
1075
+ secondaryText: we,
1076
+ tertiaryText: Te,
1077
+ quaternaryText: Ee
1078
+ });
1079
+ return oe ? /* @__PURE__ */ k(x, {
1080
+ open: A,
1081
+ onOpenChange: (e, t) => {
1082
+ if (!t.open) {
1083
+ I();
1084
+ return;
1085
+ }
1086
+ },
1087
+ positioning: "below-start",
1088
+ trapFocus: M !== "hover",
1089
+ children: [/* @__PURE__ */ O(S, {
1090
+ disableButtonEnhancement: !0,
1091
+ children: /* @__PURE__ */ O("span", {
1092
+ style: {
1093
+ display: "inline-flex",
1094
+ cursor: "pointer"
1095
+ },
1096
+ tabIndex: 0,
1097
+ role: "button",
1098
+ "aria-label": `Show details for ${U}`,
1099
+ "aria-haspopup": "dialog",
1100
+ "aria-expanded": A,
1101
+ onClick: () => {
1102
+ N("click"), j((e) => !e);
1103
+ },
1104
+ onKeyDown: (e) => {
1105
+ if (e.key === "Escape") {
1106
+ I();
1107
+ return;
1108
+ }
1109
+ e.key !== "Enter" && e.key !== " " || (e.preventDefault(), N("keyboard"), j((e) => !e));
1110
+ },
1111
+ onMouseEnter: se,
1112
+ onMouseLeave: ce,
1113
+ children: Oe
1114
+ })
1115
+ }), /* @__PURE__ */ O(ee, {
1116
+ style: {
1117
+ padding: 0,
1118
+ backgroundColor: "transparent",
1119
+ border: "none",
1120
+ boxShadow: "none"
1121
+ },
1122
+ onMouseEnter: se,
1123
+ onMouseLeave: ce,
1124
+ children: /* @__PURE__ */ O(Rt, {
1125
+ person: De,
1126
+ displayName: U,
1127
+ onEscape: I
1128
+ })
1129
+ })]
1130
+ }) : Oe;
1131
+ }, on = [
1132
+ "id",
1133
+ "displayName",
1134
+ "mail",
1135
+ "userPrincipalName",
1136
+ "jobTitle",
1137
+ "department"
1138
+ ], sn = new Set(on), cn = 10, ln = /^[a-zA-Z0-9_./]+$/, un = "asc", dn = (e) => ({
1139
+ id: e.id ?? e.userPrincipalName ?? e.mail ?? "unknown-user",
1140
+ givenName: e.givenName ?? null,
1141
+ surname: e.surname ?? null,
1142
+ displayName: e.displayName ?? null,
1143
+ mail: e.mail ?? null,
1144
+ userPrincipalName: e.userPrincipalName ?? null,
1145
+ jobTitle: e.jobTitle ?? null,
1146
+ department: e.department ?? null
1147
+ }), fn = (e, t) => ({
1148
+ ...e,
1149
+ presenceActivity: t?.activity ?? null,
1150
+ presenceAvailability: t?.availability ?? null
1151
+ }), pn = (e) => e.id ?? e.userPrincipalName ?? e.mail ?? void 0, mn = (e) => e.userPrincipalName ?? e.mail ?? e.id ?? void 0, hn = (e) => Array.from(new Set((e ?? []).map((e) => e.trim()).filter(Boolean))), gn = (e) => Array.from(new Set((e ?? []).map((e) => e.trim()).filter((e) => e.length > 0 && ln.test(e)))), _n = (e, t) => {
1152
+ let n = [...on, ...gn(e)];
1153
+ return (t === "givenName" || t === "surname") && n.push(t), Array.from(new Set(n));
1154
+ }, vn = (e) => {
1155
+ let t = e.filter((e) => !sn.has(e));
1156
+ return t.length > 0 ? t : void 0;
1157
+ }, yn = (e, t) => {
1158
+ let n = e[t];
1159
+ return typeof n == "string" && n.trim().length > 0 ? n : e.displayName ?? e.mail ?? e.userPrincipalName ?? e.id;
1160
+ }, bn = (e, t, n = un) => {
1161
+ if (!t) return e;
1162
+ let r = new Intl.Collator(void 0, {
1163
+ sensitivity: "base",
1164
+ numeric: !0
1165
+ }), i = n === "desc" ? -1 : 1;
1166
+ return e.map((e, t) => ({
1167
+ person: e,
1168
+ index: t
1169
+ })).sort((e, n) => {
1170
+ let a = r.compare(yn(e.person, t), yn(n.person, t));
1171
+ return a === 0 ? e.index - n.index : a * i;
1172
+ }).map((e) => e.person);
1173
+ }, xn = (e) => {
1174
+ let t = G(), n = z(), r = B(), i = JSON.stringify(e?.people ?? null), s = JSON.stringify(hn(e?.userIds)), l = JSON.stringify(gn(e?.selectFields).filter((e) => !sn.has(e))), u = o(() => {
1175
+ if (i !== "null") return JSON.parse(i);
1176
+ }, [i]), d = o(() => JSON.parse(s), [s]), f = o(() => JSON.parse(l), [l]), p = o(() => _n(f, e?.sortBy), [f, e?.sortBy]), m = o(() => vn(p), [p]), h = o(() => e?.groupId?.trim(), [e?.groupId]), g = e?.maxPeople ?? cn, _ = e?.showPresence ?? !1, v = e?.sortBy, y = e?.sortDirection ?? un, [b, x] = c({
1177
+ people: [],
1178
+ loading: !0,
1179
+ error: null
1180
+ });
1181
+ return a(() => {
1182
+ let e = !1, i = async (e) => {
1183
+ if (pe(n)) {
1184
+ let t = await n.getPersonData({
1185
+ identifier: e,
1186
+ fetchPresence: _,
1187
+ fetchPhoto: !0,
1188
+ selectFields: m
1189
+ });
1190
+ return t.user ? {
1191
+ ...dn(t.user),
1192
+ photoUrl: t.photoUrl,
1193
+ presenceActivity: t.presence?.activity ?? null,
1194
+ presenceAvailability: t.presence?.availability ?? null
1195
+ } : null;
1196
+ }
1197
+ if (r !== "SignedIn" || !t) return null;
1198
+ let i = e.toLowerCase() === "me", a = await t.api(i ? "/me" : `/users/${W(e)}`).select(p.join(",")).get(), o = null, s = null;
1199
+ if (_ && a.id) try {
1200
+ o = await t.api(i ? "/me/presence" : `/users/${W(a.id)}/presence`).get();
1201
+ } catch {
1202
+ o = null;
1203
+ }
1204
+ if (a.id) try {
1205
+ s = await U(await t.api(i ? "/me/photo/$value" : `/users/${W(a.id)}/photo/$value`).get());
1206
+ } catch {
1207
+ s = null;
1208
+ }
1209
+ return {
1210
+ ...dn(a),
1211
+ photoUrl: s,
1212
+ presenceActivity: o?.activity ?? null,
1213
+ presenceAvailability: o?.availability ?? null
1214
+ };
1215
+ }, a = async (e, t = pn) => (await Promise.all(e.map(async (e) => {
1216
+ let n = t(e);
1217
+ if (!n) return _ ? fn(e, null) : e;
1218
+ let r = _ && !e.presenceAvailability && !e.presenceActivity, a = !e.photoUrl;
1219
+ if (!r && !a) return e;
1220
+ try {
1221
+ let t = await i(n);
1222
+ return t ? {
1223
+ ...e,
1224
+ photoUrl: e.photoUrl ?? t.photoUrl,
1225
+ presenceActivity: e.presenceActivity ?? t.presenceActivity,
1226
+ presenceAvailability: e.presenceAvailability ?? t.presenceAvailability
1227
+ } : e;
1228
+ } catch {
1229
+ return e;
1230
+ }
1231
+ }))).filter((e) => !!e.id);
1232
+ return (async () => {
1233
+ if (e || x((e) => ({
1234
+ ...e,
1235
+ loading: !0,
1236
+ error: null
1237
+ })), u) {
1238
+ let t = _ || u.some((e) => !e.photoUrl) ? await a(u, mn) : u;
1239
+ e || x({
1240
+ people: bn(t, v, y),
1241
+ loading: !1,
1242
+ error: null
1243
+ });
1244
+ return;
1245
+ }
1246
+ if (d.length > 0) {
1247
+ let t = (await Promise.allSettled(d.map((e) => i(e)))).flatMap((e) => e.status === "fulfilled" && e.value ? [e.value] : []);
1248
+ e || x({
1249
+ people: bn(t, v, y),
1250
+ loading: !1,
1251
+ error: null
1252
+ });
1253
+ return;
1254
+ }
1255
+ if (!me(n) && r !== "SignedIn") {
1256
+ e || x({
1257
+ people: [],
1258
+ loading: !1,
1259
+ error: null
1260
+ });
1261
+ return;
1262
+ }
1263
+ try {
1264
+ let i = [];
1265
+ h ? t && r === "SignedIn" && (i = ((await t.api(`/groups/${W(h)}/members/microsoft.graph.user`).select(p.join(",")).top(g).get()).value ?? []).map(dn)) : me(n) ? i = (await n.searchPeople("", g)).map((e) => ({
1266
+ ...e,
1267
+ presenceActivity: null,
1268
+ presenceAvailability: null
1269
+ })) : t && r === "SignedIn" && (i = ((await t.api("/users").select(p.join(",")).top(g).get()).value ?? []).map(dn)), (_ || i.some((e) => !e.photoUrl)) && (i = await a(i)), e || x({
1270
+ people: bn(i, v, y),
1271
+ loading: !1,
1272
+ error: null
1273
+ });
1274
+ } catch (t) {
1275
+ e || x({
1276
+ people: [],
1277
+ loading: !1,
1278
+ error: t
1279
+ });
1280
+ }
1281
+ })(), () => {
1282
+ e = !0;
1283
+ };
1284
+ }, [
1285
+ u,
1286
+ i,
1287
+ t,
1288
+ h,
1289
+ g,
1290
+ n,
1291
+ m,
1292
+ r,
1293
+ p,
1294
+ _,
1295
+ v,
1296
+ y,
1297
+ d
1298
+ ]), b;
1299
+ }, Sn = 3, Cn = 10, wn = (e) => {
1300
+ switch (e?.toLowerCase()) {
1301
+ case "available":
1302
+ case "availableidle": return "available";
1303
+ case "away":
1304
+ case "berightback": return "away";
1305
+ case "busy":
1306
+ case "busyidle":
1307
+ case "donotdisturb": return "busy";
1308
+ case "offline":
1309
+ case "presenceunknown": return "offline";
1310
+ default: return;
1018
1311
  }
1019
- return s;
1020
- }
1021
- //#endregion
1022
- //#region node_modules/@griffel/react/src/utils/canUseDOM.js
1023
- function Vt() {
1024
- return typeof window < "u" && !!(window.document && window.document.createElement);
1025
- }
1026
- //#endregion
1027
- //#region node_modules/@griffel/react/src/useInsertionEffect.js
1028
- var Ht = t.useInsertionEffect ? t.useInsertionEffect : void 0, Ut = () => {
1029
- let e = {};
1030
- return function(t, n) {
1031
- if (Ht && Vt()) {
1032
- Ht(() => {
1033
- t.insertCSSRules(n);
1034
- }, [t, n]);
1035
- return;
1312
+ }, Tn = (e) => e.displayName ?? e.mail ?? e.userPrincipalName ?? e.id, En = (e) => {
1313
+ let t = Tn(e), n = wn(e.presenceAvailability);
1314
+ return /* @__PURE__ */ O(f, {
1315
+ name: t,
1316
+ avatar: {
1317
+ name: t,
1318
+ image: e.photoUrl ? { src: e.photoUrl } : void 0,
1319
+ initials: e.photoUrl ? void 0 : fe({
1320
+ ...e,
1321
+ displayName: t
1322
+ }) || void 0,
1323
+ badge: n ? { status: n } : void 0,
1324
+ color: "colorful"
1036
1325
  }
1037
- e[t.id] === void 0 && (t.insertCSSRules(n), e[t.id] = !0);
1038
- };
1039
- }, Wt = /* @__PURE__ */ n(/* @__PURE__ */ Rt());
1040
- function Gt() {
1041
- return i(Wt);
1042
- }
1043
- //#endregion
1044
- //#region node_modules/@griffel/react/src/TextDirectionContext.js
1045
- var Kt = /* @__PURE__ */ n("ltr");
1046
- function qt() {
1047
- return i(Kt);
1048
- }
1049
- //#endregion
1050
- //#region node_modules/@griffel/react/src/__styles.js
1051
- function Jt(e, t) {
1052
- let n = Bt(e, t, Ut);
1053
- return function() {
1054
- return n({
1055
- dir: qt(),
1056
- renderer: Gt()
1326
+ }, e.id);
1327
+ }, Dn = ({ people: e, userIds: t, selectFields: n, sortBy: r, sortDirection: i, groupId: o, showMax: s = Sn, showPresence: c = !1, layout: l = "stack", size: u = 32, onUpdated: f, ...m }) => {
1328
+ let { people: h, loading: g, error: _ } = xn({
1329
+ people: e,
1330
+ userIds: t,
1331
+ selectFields: n,
1332
+ sortBy: r,
1333
+ sortDirection: i,
1334
+ groupId: o,
1335
+ maxPeople: Math.max(Cn, s + 5),
1336
+ showPresence: c
1337
+ });
1338
+ if (a(() => {
1339
+ if (!f || g) return;
1340
+ let t = "peopleLoaded";
1341
+ _ ? t = "peopleLoadFailed" : e && (t = "peopleChanged"), f({
1342
+ trigger: t,
1343
+ people: h,
1344
+ loading: !1,
1345
+ error: _
1057
1346
  });
1058
- };
1059
- }
1060
- //#endregion
1061
- //#region node_modules/@fluentui/react-icons/lib/contexts/IconDirectionContext.js
1062
- var Yt = e.createContext(void 0), Xt = {};
1063
- Yt.Provider;
1064
- var Zt = () => e.useContext(Yt) ?? Xt, Qt = Jt({
1065
- root: {
1066
- mc9l5x: "f1w7gpdv",
1067
- Bg96gwp: "fez10in"
1068
- },
1069
- rtl: { Bz10aip: "f13rod7r" }
1070
- }, { d: [
1071
- ".f1w7gpdv{display:inline;}",
1072
- ".fez10in{line-height:0;}",
1073
- ".f13rod7r{transform:scaleX(-1);}"
1074
- ] }), $t = (e, t) => {
1075
- let { filled: n, title: r, primaryFill: i = "currentColor", ...a } = e, o = {
1076
- ...a,
1077
- fill: i
1078
- }, s = Qt(), c = Zt();
1079
- return o.className = it(s.root, t?.flipInRtl && c?.textDirection === "rtl" && s.rtl, o.className), r && (o["aria-label"] = r), !o["aria-label"] && !o["aria-labelledby"] ? o["aria-hidden"] = !0 : o.role = "img", o;
1080
- }, en = Jt({ root: { B8gzw0y: "f1dd5bof" } }, { m: [["@media (forced-colors: active){.f1dd5bof{forced-color-adjust:auto;}}", { m: "(forced-colors: active)" }]] }), tn = "fui-Icon", nn = (t, n) => {
1081
- let [r, i, ...a] = t;
1082
- return e.createElement(r, {
1083
- ...i,
1084
- key: n
1085
- }, ...a.map(nn));
1086
- }, rn = /* @__PURE__ */ ((t, n, r, i) => {
1087
- let a = n === "1em" ? "20" : n, o = typeof r != "string" && (i?.color || Array.isArray(r[0])) ? r.map(nn) : void 0, s = e.forwardRef((t, s) => {
1088
- let c = en(), l = $t(t, { flipInRtl: i?.flipInRtl }), u = {
1089
- ...l,
1090
- className: it(tn, l.className, c.root),
1091
- ref: s,
1092
- width: n,
1093
- height: n,
1094
- viewBox: `0 0 ${a} ${a}`,
1095
- xmlns: "http://www.w3.org/2000/svg"
1096
- };
1097
- return typeof r == "string" ? e.createElement("svg", {
1098
- ...u,
1099
- dangerouslySetInnerHTML: { __html: r }
1100
- }) : o ? e.createElement("svg", u, ...o) : e.createElement("svg", u, ...r.map((t) => e.createElement("path", {
1101
- d: t,
1102
- fill: u.fill
1103
- })));
1347
+ }, [
1348
+ _,
1349
+ g,
1350
+ f,
1351
+ e,
1352
+ h
1353
+ ]), g) return /* @__PURE__ */ O(T, { size: "tiny" });
1354
+ if (h.length === 0) return null;
1355
+ let v = Math.max(0, s), y = h.slice(0, v), b = h.slice(v);
1356
+ return /* @__PURE__ */ k(d, {
1357
+ layout: l,
1358
+ size: u,
1359
+ ...m,
1360
+ children: [y.map(En), b.length > 0 && /* @__PURE__ */ O(p, {
1361
+ count: b.length,
1362
+ children: b.map(En)
1363
+ })]
1104
1364
  });
1105
- return s.displayName = t, s;
1106
- })("SearchRegular", "1em", ["M13.73 14.44a6.5 6.5 0 1 1 .7-.7l3.42 3.4a.5.5 0 0 1-.63.77l-.07-.06-3.42-3.41Zm-.71-.71A5.54 5.54 0 0 0 15 9.5a5.5 5.5 0 1 0-1.98 4.23Z"]), an = "id,displayName,mail,userPrincipalName,jobTitle,department", on = [], sn = (e) => e.trim().replace(/"/g, "").trim(), cn = (e, t) => {
1107
- let n = V(), r = L(), i = R(), o = t?.minChars ?? 1, s = t?.maxResults ?? 10, l = t?.loadInitialResults ?? !1, [u, d] = c([]), [f, p] = c(!1), m = sn(e), h = l && e.length === 0, g = !h && (!m || m.length < o);
1365
+ }, On = "id,displayName,mail,userPrincipalName,jobTitle,department", kn = [], An = (e) => e.trim().replace(/"/g, "").trim(), jn = (e, t) => {
1366
+ let n = G(), r = z(), i = B(), o = t?.minChars ?? 1, s = t?.maxResults ?? 10, l = t?.loadInitialResults ?? !1, [u, d] = c([]), [f, p] = c(!1), m = An(e), h = l && e.length === 0, g = !h && (!m || m.length < o);
1108
1367
  return a(() => {
1109
1368
  if (g) return;
1110
1369
  let e = !1, t = async () => {
1111
1370
  p(!0);
1112
1371
  try {
1113
- if (U(r)) {
1372
+ if (me(r)) {
1114
1373
  let t = await r.searchPeople(h ? "" : m, s);
1115
1374
  e || d(t);
1116
1375
  } else if (i === "SignedIn" && n) {
1117
1376
  let t;
1118
- t = h ? (await n.api("/users").select(an).top(s).get()).value ?? [] : (await n.api("/users").header("ConsistencyLevel", "eventual").search(`"displayName:${m}" OR "mail:${m}" OR "userPrincipalName:${m}"`).select(an).top(s).get()).value ?? [], e || d(t);
1377
+ t = h ? (await n.api("/users").select(On).top(s).get()).value ?? [] : (await n.api("/users").header("ConsistencyLevel", "eventual").search(`"displayName:${m}" OR "mail:${m}" OR "userPrincipalName:${m}"`).select(On).top(s).get()).value ?? [], e || d(t);
1119
1378
  } else e || d([]);
1120
1379
  } catch {
1121
1380
  e || d([]);
@@ -1144,133 +1403,133 @@ var Zt = () => e.useContext(Yt) ?? Xt, Qt = Jt({
1144
1403
  h,
1145
1404
  g
1146
1405
  ]), {
1147
- results: g ? on : u,
1406
+ results: g ? kn : u,
1148
1407
  loading: g ? !1 : f
1149
1408
  };
1150
- }, ln = "__no_results__", un = 50, dn = (e, t, n, r) => e.filter((e) => !t.includes(e.id) && !n.includes(e.id)).slice(0, r), fn = (e) => e.displayName || e.mail || e.userPrincipalName || e.id, pn = (e) => e.mail ?? e.userPrincipalName ?? void 0, mn = ({ person: e, size: t, photoUrl: n }) => /* @__PURE__ */ C(u, {
1409
+ }, Mn = "__no_results__", Nn = 50, Pn = (e, t, n, r) => e.filter((e) => !t.includes(e.id) && !n.includes(e.id)).slice(0, r), Fn = (e) => e.displayName || e.mail || e.userPrincipalName || e.id, In = (e) => e.mail ?? e.userPrincipalName ?? void 0, Ln = ({ person: e, size: t, photoUrl: n }) => /* @__PURE__ */ O(u, {
1151
1410
  name: e.displayName ?? void 0,
1152
1411
  image: n ? { src: n } : void 0,
1153
- initials: n ? void 0 : se(e.displayName ?? void 0),
1412
+ initials: n ? void 0 : fe(e),
1154
1413
  size: t
1155
- }), hn = ({ person: e, size: t }) => {
1156
- let { photoUrl: n } = ue({
1414
+ }), Rn = ({ person: e, size: t }) => {
1415
+ let { photoUrl: n } = ge({
1157
1416
  userId: e.id,
1158
1417
  fetchPhoto: !0
1159
1418
  });
1160
- return /* @__PURE__ */ C(mn, {
1419
+ return /* @__PURE__ */ O(Ln, {
1161
1420
  person: e,
1162
1421
  size: t,
1163
1422
  photoUrl: n
1164
1423
  });
1165
- }, gn = ({ person: e, size: t }) => e.photoUrl ? /* @__PURE__ */ C(mn, {
1424
+ }, zn = ({ person: e, size: t }) => e.photoUrl ? /* @__PURE__ */ O(Ln, {
1166
1425
  person: e,
1167
1426
  size: t,
1168
1427
  photoUrl: e.photoUrl
1169
- }) : /* @__PURE__ */ C(hn, {
1428
+ }) : /* @__PURE__ */ O(Rn, {
1170
1429
  person: e,
1171
1430
  size: t
1172
- }), _n = ({ selectedPeople: e, defaultSelectedPeople: t, onSelectionChange: n, placeholder: i = "Search for people...", maxPeople: l, searchMinChars: u = 1, maxSearchResults: d = 10, excludeUserIds: f = [], appearance: p, size: _, disabled: v, onUpdated: y }) => {
1173
- let b = e !== void 0, [ie, T] = c(t ?? []), E = b ? e : ie, [D, O] = c(""), [k, A] = c(!1), j = o(() => Array.from(new Set(f)), [f]), { results: M, loading: N } = cn(D, {
1431
+ }), Bn = ({ selectedPeople: e, defaultSelectedPeople: t, onSelectionChange: n, placeholder: i = "Search for people...", maxPeople: l, searchMinChars: u = 1, maxSearchResults: d = 10, excludeUserIds: f = [], appearance: p, size: m, disabled: h, onUpdated: g }) => {
1432
+ let b = e !== void 0, [x, ee] = c(t ?? []), S = b ? e : x, [C, w] = c(""), [T, E] = c(!1), D = o(() => Array.from(new Set(f)), [f]), { results: A, loading: j } = jn(C, {
1174
1433
  minChars: u,
1175
- maxResults: Math.min(d + j.length, un),
1176
- loadInitialResults: k
1177
- }), P = o(() => {
1434
+ maxResults: Math.min(d + D.length, Nn),
1435
+ loadInitialResults: T
1436
+ }), M = o(() => {
1178
1437
  let e = /* @__PURE__ */ new Map();
1179
- for (let t of E) e.set(t.id, t);
1180
- for (let t of M) e.set(t.id, t);
1438
+ for (let t of S) e.set(t.id, t);
1439
+ for (let t of A) e.set(t.id, t);
1181
1440
  return e;
1182
- }, [E, M]), F = o(() => E.map((e) => e.id), [E]), I = o(() => dn(M, F, j, d), [
1183
- M,
1184
- F,
1185
- j,
1441
+ }, [S, A]), N = o(() => S.map((e) => e.id), [S]), P = o(() => Pn(A, N, D, d), [
1442
+ A,
1443
+ N,
1444
+ D,
1186
1445
  d
1187
- ]), ae = r((e, t) => {
1188
- let r = t.selectedOptions.filter((e) => e !== ln).map((e) => P.get(e)).filter((e) => e !== void 0), i = dn(M, r.map((e) => e.id), j, d);
1189
- b || T(r), n?.(r), y?.({
1446
+ ]), F = r((e, t) => {
1447
+ let r = t.selectedOptions.filter((e) => e !== Mn).map((e) => M.get(e)).filter((e) => e !== void 0), i = Pn(A, r.map((e) => e.id), D, d);
1448
+ b || ee(r), n?.(r), g?.({
1190
1449
  trigger: "selectionChanged",
1191
1450
  searchQuery: "",
1192
1451
  selectedPeople: r,
1193
1452
  searchResults: i,
1194
- loading: N
1195
- }), O("");
1453
+ loading: j
1454
+ }), w("");
1196
1455
  }, [
1197
1456
  b,
1198
1457
  d,
1199
1458
  n,
1200
- y,
1201
- P,
1202
- N,
1459
+ g,
1203
1460
  M,
1204
- j
1205
- ]), L = r((e) => {
1206
- O(e.target.value);
1207
- }, []), R = r(() => {
1208
- A(!0);
1209
- }, []), z = r(() => {
1210
- A(!1);
1211
- }, []), oe = l !== void 0 && E.length >= l, se = s(!0);
1461
+ j,
1462
+ A,
1463
+ D
1464
+ ]), I = r((e) => {
1465
+ w(e.target.value);
1466
+ }, []), se = r(() => {
1467
+ E(!0);
1468
+ }, []), ce = r(() => {
1469
+ E(!1);
1470
+ }, []), le = l !== void 0 && S.length >= l, L = s(!0);
1212
1471
  return a(() => {
1213
- if (!y || N) return;
1214
- let e = se.current && D.length === 0 && I.length === 0;
1215
- se.current = !1, !e && y({
1472
+ if (!g || j) return;
1473
+ let e = L.current && C.length === 0 && P.length === 0;
1474
+ L.current = !1, !e && g({
1216
1475
  trigger: "searchResultsUpdated",
1217
- searchQuery: D,
1218
- selectedPeople: E,
1219
- searchResults: I,
1476
+ searchQuery: C,
1477
+ selectedPeople: S,
1478
+ searchResults: P,
1220
1479
  loading: !1
1221
1480
  });
1222
1481
  }, [
1223
- E,
1224
- I,
1225
- y,
1226
- N,
1227
- D
1228
- ]), /* @__PURE__ */ w(x, {
1229
- onOptionSelect: ae,
1230
- selectedOptions: F,
1482
+ S,
1483
+ P,
1484
+ g,
1485
+ j,
1486
+ C
1487
+ ]), /* @__PURE__ */ k(te, {
1488
+ onOptionSelect: F,
1489
+ selectedOptions: N,
1231
1490
  appearance: p,
1232
- size: _,
1233
- disabled: v,
1234
- children: [/* @__PURE__ */ w(ee, {
1235
- expandIcon: /* @__PURE__ */ C(rn, {}),
1236
- children: [/* @__PURE__ */ C(te, { children: E.map((e) => /* @__PURE__ */ w(m, {
1491
+ size: m,
1492
+ disabled: h,
1493
+ children: [/* @__PURE__ */ k(ne, {
1494
+ expandIcon: /* @__PURE__ */ O(Ot, {}),
1495
+ children: [/* @__PURE__ */ O(re, { children: S.map((e) => /* @__PURE__ */ k(_, {
1237
1496
  value: e.id,
1238
1497
  shape: "rounded",
1239
- children: [/* @__PURE__ */ C(h, {
1498
+ children: [/* @__PURE__ */ O(v, {
1240
1499
  hasSecondaryAction: !0,
1241
- media: /* @__PURE__ */ C(gn, {
1500
+ media: /* @__PURE__ */ O(zn, {
1242
1501
  person: e,
1243
1502
  size: 16
1244
1503
  }),
1245
- children: fn(e)
1246
- }), /* @__PURE__ */ C(g, { "aria-label": `Remove ${fn(e)}` })]
1247
- }, e.id)) }), !oe && /* @__PURE__ */ C(S, {
1248
- value: D,
1249
- onChange: L,
1250
- onFocus: R,
1251
- onBlur: z,
1252
- placeholder: E.length === 0 ? i : void 0,
1253
- disabled: v
1504
+ children: Fn(e)
1505
+ }), /* @__PURE__ */ O(y, { "aria-label": `Remove ${Fn(e)}` })]
1506
+ }, e.id)) }), !le && /* @__PURE__ */ O(ie, {
1507
+ value: C,
1508
+ onChange: I,
1509
+ onFocus: se,
1510
+ onBlur: ce,
1511
+ placeholder: S.length === 0 ? i : void 0,
1512
+ disabled: h
1254
1513
  })]
1255
- }), /* @__PURE__ */ w(ne, { children: [D.length >= u && !N && I.length === 0 && /* @__PURE__ */ C(re, {
1256
- value: ln,
1514
+ }), /* @__PURE__ */ k(ae, { children: [C.length >= u && !j && P.length === 0 && /* @__PURE__ */ O(oe, {
1515
+ value: Mn,
1257
1516
  text: "No people found",
1258
1517
  style: {
1259
1518
  pointerEvents: "none",
1260
1519
  color: "var(--colorNeutralForegroundDisabled)"
1261
1520
  },
1262
1521
  children: "No people found"
1263
- }), I.map((e) => /* @__PURE__ */ C(re, {
1522
+ }), P.map((e) => /* @__PURE__ */ O(oe, {
1264
1523
  value: e.id,
1265
- media: /* @__PURE__ */ C(gn, {
1524
+ media: /* @__PURE__ */ O(zn, {
1266
1525
  person: e,
1267
1526
  size: 32
1268
1527
  }),
1269
- secondaryContent: pn(e),
1270
- children: fn(e)
1528
+ secondaryContent: In(e),
1529
+ children: Fn(e)
1271
1530
  }, e.id))] })]
1272
1531
  });
1273
- }, vn = "data:image/jpeg;base64,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", $ = [
1532
+ }, Vn = "data:image/jpeg;base64,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", $ = [
1274
1533
  {
1275
1534
  id: "00000000-0000-0000-0000-000000000001",
1276
1535
  givenName: "Adele",
@@ -1373,8 +1632,8 @@ var Zt = () => e.useContext(Yt) ?? Xt, Qt = Jt({
1373
1632
  }
1374
1633
  ].map((e) => ({
1375
1634
  ...e,
1376
- photoUrl: vn
1377
- })), yn = class {
1635
+ photoUrl: Vn
1636
+ })), Hn = class {
1378
1637
  state = "SignedOut";
1379
1638
  listeners = [];
1380
1639
  constructor(e) {
@@ -1403,7 +1662,7 @@ var Zt = () => e.useContext(Yt) ?? Xt, Qt = Jt({
1403
1662
  return {
1404
1663
  user: o,
1405
1664
  presence: e.fetchPresence ? s : null,
1406
- photoUrl: e.fetchPhoto ? vn : null
1665
+ photoUrl: e.fetchPhoto ? Vn : null
1407
1666
  };
1408
1667
  }
1409
1668
  async searchPeople(e, t = 10) {
@@ -1432,26 +1691,26 @@ var Zt = () => e.useContext(Yt) ?? Xt, Qt = Jt({
1432
1691
  e();
1433
1692
  } catch {}
1434
1693
  }
1435
- }, bn = () => new yn({ autoSignIn: !0 });
1694
+ }, Un = () => new Hn({ autoSignIn: !0 });
1436
1695
  //#endregion
1437
1696
  //#region node_modules/@azure/msal-common/dist-browser/error/AuthError.mjs
1438
- function xn(e) {
1697
+ function Wn(e) {
1439
1698
  return `See https://aka.ms/msal.js.errors#${e} for details`;
1440
1699
  }
1441
- var Sn = class e extends Error {
1700
+ var Gn = class e extends Error {
1442
1701
  constructor(t, n, r, i) {
1443
- let a = r || (t ? xn(t) : ""), o = a ? `${t}: ${a}` : t;
1702
+ let a = r || (t ? Wn(t) : ""), o = a ? `${t}: ${a}` : t;
1444
1703
  super(o), Object.setPrototypeOf(this, e.prototype), this.errorCode = t || "", this.errorMessage = a || "", this.subError = i || "", this.correlationId = n, this.name = "AuthError";
1445
1704
  }
1446
- }, Cn = class e extends Sn {
1705
+ }, Kn = class e extends Gn {
1447
1706
  constructor(t, n, r, i, a, o, s, c) {
1448
1707
  super(t, n, r, i), Object.setPrototypeOf(this, e.prototype), this.timestamp = a || "", this.traceId = o || "", this.claims = s || "", this.name = "InteractionRequiredAuthError", this.errorNo = c;
1449
1708
  }
1450
- }, wn = class extends Error {
1709
+ }, qn = class extends Error {
1451
1710
  constructor(e) {
1452
1711
  super(e), this.name = "RedirectInProgressError";
1453
1712
  }
1454
- }, Tn = class {
1713
+ }, Jn = class {
1455
1714
  msalInstance;
1456
1715
  defaultScopes;
1457
1716
  account = null;
@@ -1488,12 +1747,12 @@ var Sn = class e extends Error {
1488
1747
  try {
1489
1748
  return (await this.msalInstance.acquireTokenSilent(r)).accessToken;
1490
1749
  } catch (e) {
1491
- if (e instanceof Cn) {
1750
+ if (e instanceof Kn) {
1492
1751
  let e = {
1493
1752
  scopes: t,
1494
1753
  account: n
1495
1754
  };
1496
- throw await this.msalInstance.acquireTokenRedirect(e), new wn("Redirecting for interactive token acquisition.");
1755
+ throw await this.msalInstance.acquireTokenRedirect(e), new qn("Redirecting for interactive token acquisition.");
1497
1756
  }
1498
1757
  throw e;
1499
1758
  }
@@ -1515,8 +1774,8 @@ var Sn = class e extends Error {
1515
1774
  e();
1516
1775
  } catch {}
1517
1776
  }
1518
- }, En = 6e4;
1519
- function Dn(e) {
1777
+ }, Yn = 6e4;
1778
+ function Xn(e) {
1520
1779
  let t = e.fetchFn ?? fetch;
1521
1780
  return async ({ ssoToken: n, scopes: r }) => {
1522
1781
  let i = await t(e.endpoint, {
@@ -1538,7 +1797,7 @@ function Dn(e) {
1538
1797
  };
1539
1798
  };
1540
1799
  }
1541
- var On = class {
1800
+ var Zn = class {
1542
1801
  defaultScopes;
1543
1802
  getTeamsSsoTokenFn;
1544
1803
  exchangeForGraphTokenFn;
@@ -1548,7 +1807,7 @@ var On = class {
1548
1807
  tokenCache = /* @__PURE__ */ new Map();
1549
1808
  constructor(e) {
1550
1809
  if (!e.defaultScopes || e.defaultScopes.length === 0) throw Error("TeamsHostedProvider requires at least one default scope.");
1551
- this.defaultScopes = [...new Set(e.defaultScopes)], this.getTeamsSsoTokenFn = e.getTeamsSsoToken, this.exchangeForGraphTokenFn = e.exchangeForGraphToken, this.refreshSkewMs = e.refreshSkewMs ?? En;
1810
+ this.defaultScopes = [...new Set(e.defaultScopes)], this.getTeamsSsoTokenFn = e.getTeamsSsoToken, this.exchangeForGraphTokenFn = e.exchangeForGraphToken, this.refreshSkewMs = e.refreshSkewMs ?? Yn;
1552
1811
  }
1553
1812
  async login() {
1554
1813
  try {
@@ -1618,4 +1877,4 @@ var On = class {
1618
1877
  }
1619
1878
  };
1620
1879
  //#endregion
1621
- export { ae as GraphProvider, yn as MockProvider, Tn as MsalBrowserProvider, Ge as People, _n as PeoplePicker, Ce as Person, wn as RedirectInProgressError, On as TeamsHostedProvider, Dn as createBackendTokenExchange, bn as createMockSignedInProvider, U as isPeopleSearchProvider, H as isPersonDataProvider, V as useGraphClient, ze as usePeopleList, cn as usePeopleSearch, z as usePersonCacheOptions, ue as usePersonData, L as useProvider, R as useProviderState };
1880
+ export { de as GraphProvider, Hn as MockProvider, Jn as MsalBrowserProvider, Dn as People, Bn as PeoplePicker, an as Person, Rt as PersonCard, qn as RedirectInProgressError, Zn as TeamsHostedProvider, Xn as createBackendTokenExchange, Un as createMockSignedInProvider, me as isPeopleSearchProvider, pe as isPersonDataProvider, G as useGraphClient, xn as usePeopleList, jn as usePeopleSearch, V as usePersonCacheOptions, ge as usePersonData, z as useProvider, B as useProviderState };