@spteck/react-controls-v2 2.0.1 → 2.0.2

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.
@@ -38,5 +38,11 @@ export interface IGraphProvider {
38
38
  value: T;
39
39
  '@odata.nextLink'?: string;
40
40
  }>;
41
+ /**
42
+ * Performs a GET request to Microsoft Graph and returns a blob (for photos, files, etc.)
43
+ * @param endpoint - The Graph API endpoint (e.g., '/me/photo/$value')
44
+ * @returns Promise with the blob data or undefined if not available
45
+ */
46
+ getBlob(endpoint: string): Promise<Blob | undefined>;
41
47
  }
42
48
  //# sourceMappingURL=IGraphProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IGraphProvider.d.ts","sourceRoot":"","sources":["../../src/abstractions/IGraphProvider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAErC;;;;;OAKG;IACH,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAEjD;;;;;OAKG;IACH,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAElD;;;;OAIG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExC;;;;OAIG;IACH,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACzF"}
1
+ {"version":3,"file":"IGraphProvider.d.ts","sourceRoot":"","sources":["../../src/abstractions/IGraphProvider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAErC;;;;;OAKG;IACH,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAEjD;;;;;OAKG;IACH,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAElD;;;;OAIG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExC;;;;OAIG;IACH,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAExF;;;;OAIG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;CACtD"}
@@ -24,5 +24,6 @@ export declare class DefaultGraphClient implements IGraphProvider {
24
24
  value: T;
25
25
  '@odata.nextLink'?: string;
26
26
  }>;
27
+ getBlob(endpoint: string): Promise<Blob | undefined>;
27
28
  }
28
29
  //# sourceMappingURL=DefaultGraphClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultGraphClient.d.ts","sourceRoot":"","sources":["../../../src/abstractions/providers/DefaultGraphClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACxD;AAED;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAC,CAAwC;gBAEnD,MAAM,EAAE,kBAAkB;YAMxB,UAAU;IAkBxB,OAAO,CAAC,QAAQ;IAMV,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAcpC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAehD,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAejD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYvC,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAa9F"}
1
+ {"version":3,"file":"DefaultGraphClient.d.ts","sourceRoot":"","sources":["../../../src/abstractions/providers/DefaultGraphClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACxD;AAED;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAC,CAAwC;gBAEnD,MAAM,EAAE,kBAAkB;YAMxB,UAAU;IAkBxB,OAAO,CAAC,QAAQ;IAMV,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAcpC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAehD,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAejD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYvC,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAcvF,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;CA+B3D"}
@@ -1 +1 @@
1
- {"version":3,"file":"useUserProfile.d.ts","sourceRoot":"","sources":["../../../src/components/userCard/useUserProfile.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAa,MAAM,oBAAoB,CAAC;AAKpE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AAGlE,MAAM,WAAW,SAAU,SAAQ,IAAI;IACrC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA8BD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,QAAQ,MAAM,GAAG,SAAS,EAC1B,kBAAkB,mBAAmB,KACpC;IACD,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAgM9B,CAAC"}
1
+ {"version":3,"file":"useUserProfile.d.ts","sourceRoot":"","sources":["../../../src/components/userCard/useUserProfile.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAa,MAAM,oBAAoB,CAAC;AAKpE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AAGlE,MAAM,WAAW,SAAU,SAAQ,IAAI;IACrC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA8BD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,QAAQ,MAAM,GAAG,SAAS,EAC1B,kBAAkB,mBAAmB,KACpC;IACD,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CA2O9B,CAAC"}
package/dist/index.js CHANGED
@@ -94,7 +94,7 @@ var s=function(){function e(){}return e.generate=function(){var t=4294967295*Mat
94
94
  animation-delay: 0.2s;
95
95
  `,dot3:g.css`
96
96
  animation-delay: 0.4s;
97
- `}})();return c.jsxs("div",{className:e.root,children:[c.jsx("div",{className:`${e.dot} ${e.dot1}`}),c.jsx("div",{className:`${e.dot} ${e.dot2}`}),c.jsx("div",{className:`${e.dot} ${e.dot3}`})]})},cc=(e,t)=>{switch(t.type){case"INIT":return{...e,messages:[t.welcomeMessage],isLoading:!1};case"SET_INPUT":return{...e,inputText:t.inputText};case"ADD_USER_MESSAGE":case"ADD_ASSISTANT_MESSAGE":return{...e,messages:[...e.messages,t.message]};case"UPDATE_LAST_ASSISTANT_MESSAGE":{const n=[...e.messages],r=n.length-1;return r>=0&&"Assistant"===n[r].senderName&&(n[r]=t.message),{...e,messages:n}}case"SET_ERROR":return{...e,error:t.error};case"CLEAR_INPUT":return{...e,inputText:""};case"SET_IS_RUNNING":return{...e,isRunning:!e.isRunning};default:return e}};const uc=(e,t)=>{const{getFormatRelative:n}=Ze(e,t);return n(new Date)},dc=e=>{const{template:t}=e;return c.jsx(c.Fragment,{children:t})},pc=new Map,hc=3e5;setInterval(()=>{const e=Date.now(),t=[];pc.forEach((n,r)=>{e>n.expiresAt&&t.push(r)}),t.forEach(e=>pc.delete(e))},6e5);const mc=u.memo(({userId:e,avatarSize:t=32,showHoverCard:n=!0,context:r,textPosition:o="after",className:i,avatarOnly:a=!1,secondaryText:s,tertiaryText:d,quaternaryText:h})=>{var m,f;const y={root:g.css({display:"flex",flexDirection:"row",justifyContent:"flex-start",alignItems:"flex-start",width:"fit-content",gap:"10px","&[data-fui-focus-within]:focus-within::after":{borderWidth:"0px"}}),personContainer:g.css({display:"flex",flexDirection:"column",justifyContent:"flex-start",alignItems:"flex-start",width:"100%",maxWidth:"100%",overflow:"hidden",paddingBottom:"0px"}),textStyle:g.css({width:"100%",maxWidth:"100%",overflow:"hidden",display:"-webkit-box",WebkitLineClamp:"1",WebkitBoxOrient:"vertical",paddingBottom:"0px",textAlign:"start",wordBreak:"break-all",textOverflow:"ellipsis",textOverlay:"hidden"}),spinnerContainer:g.css({display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",width:"100%"})},{user:v}=((e,t)=>{const n=G(),r=t||n,o=null==r?void 0:r.graphClient,{error:i}=q(),[a,s]=u.useState(void 0),[c,d]=u.useState(!0),p=u.useCallback(async e=>{if(!o)return console.warn("Graph client not available"),null;try{return await o.get(`/users/${e}`)}catch(t){return console.error("Error fetching user:",t),null}},[o]),h=u.useCallback(async e=>{if(!o)return console.warn("Graph client not available"),null;try{return await o.get(`/users/${e}/presence`)}catch(t){return console.error("Error fetching user presence:",t),null}},[o]),m=u.useCallback(async()=>{var t;if(!e)return void d(!1);const n=pc.get(e),r=Date.now();if(n&&r<n.expiresAt)return s(n.data),void d(!1);try{const n=await p(e);if(!n)return;let a={availability:"Offline",activity:"Offline"};try{if(n.id){const e=await h(n.id);e&&(a=e)}}catch(o){(null==(t=null==o?void 0:o.message)?void 0:t.toLowerCase().includes("exceed"))?(i("fetchUser: Exceeded resource error during presence check",o,l.ErrorType.Error),a=n.presence||{availability:"Offline",activity:"Offline"}):i("fetchUser: Error fetching user presence",o,l.ErrorType.Error)}const c={...n,presence:a};pc.set(e,{data:c,timestamp:r,expiresAt:r+hc}),s(c)}catch(o){i("fetchUser: Error fetching user",o,l.ErrorType.Error)}finally{d(!1)}},[e,p,h,i]),f=u.useCallback(async()=>{var t;if(!e||!a)return;const n=pc.get(e),r=Date.now();if(!(n&&n.data.presence&&r-n.timestamp<12e4))try{let c={availability:"Offline",activity:"Offline"};try{if(a.id){const e=await h(a.id);e&&(c=e)}}catch(o){(null==(t=o.message)?void 0:t.toLowerCase().includes("exceed"))?(i("checkUserPresence: Exceeded resource error during presence check",o,l.ErrorType.Error),c=a.presence||{availability:"Offline",activity:"Offline"}):i("checkUserPresence: Error fetching user presence",o,l.ErrorType.Error)}const u={...a,presence:c};pc.set(e,{data:u,timestamp:r,expiresAt:(null==n?void 0:n.expiresAt)||r+hc}),s(u)}catch(o){i("checkUserPresence: Error in checkUserPresence",o,l.ErrorType.Error)}},[e,a,h,i]);u.useEffect(()=>{(async()=>{await m()})()},[m]);const{startPolling:g,stopPolling:y}=Y(f,a?6e4:12e4,!1);return u.useEffect(()=>(a&&g(),()=>{y()}),[a,g,y]),{user:a,loading:c,refetch:m}})(e,r),b=u.useMemo(()=>{var e,t,n,r;const o=null==(t=null==(e=null==v?void 0:v.presence)?void 0:e.availability)?void 0:t.toLowerCase(),i=null==(r=null==(n=null==v?void 0:v.presence)?void 0:n.activity)?void 0:r.toLowerCase();switch(o){case"available":return{status:"available",text:"Available"};case"availableidle":return{status:"available",text:"Available, idle"};case"away":return{status:"away",text:"Away"};case"busy":return{status:"busy",text:"Busy"};case"busyidle":return{status:"busy",text:"Busy, idle"};case"donotdisturb":return{status:"do-not-disturb",text:"Do not disturb"};case"berighback":return{status:"away",text:"Be right back"};case"invisible":return{status:"offline",text:"Appear offline"};case"presenceunknown":return{status:"unknown",text:"Unknown"};case"offline":return{status:"offline",text:"outofoffice"===i?"Out of office":"Offline",outOfOffice:"outofoffice"===i};default:return{status:"offline",text:"Offline",outOfOffice:"outofoffice"===i}}},[null==(m=null==v?void 0:v.presence)?void 0:m.availability,null==(f=null==v?void 0:v.presence)?void 0:f.activity]);return c.jsx(dc,{upn:n&&(null==v?void 0:v.mail)||"",template:c.jsx("div",{className:p.mergeClasses(y.root,i),children:a?c.jsx(p.Avatar,{color:"colorful",image:{src:null==v?void 0:v.userPhoto,alt:(null==v?void 0:v.displayName)||"User Avatar"},size:t,name:(null==v?void 0:v.displayName)||e||"Unknown User",badge:{status:b.status,outOfOffice:b.outOfOffice}}):c.jsx(p.Persona,{primaryText:c.jsxs(p.Body1Strong,{className:y.textStyle,children:[" ",(null==v?void 0:v.displayName)||e||"Unknown User"]}),textPosition:o??"after",presence:{status:b.status,outOfOffice:b.outOfOffice},secondaryText:(null==s?void 0:s.showSecondaryText)?s.text?c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:s.text})}):c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:(null==v?void 0:v.jobTitle)||"Unknown Job Title"})}):void 0,tertiaryText:(null==d?void 0:d.showTertiaryText)?d.text?c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:d.text})}):c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:(null==v?void 0:v.mail)||"Unknown Email"})}):void 0,quaternaryText:(null==h?void 0:h.showQuaternaryText)?h.text?c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:h.text})}):c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:b.text})}):void 0,avatar:{color:"colorful",image:{src:null==v?void 0:v.userPhoto,alt:(null==v?void 0:v.displayName)||"User Avatar"},size:t},textAlignment:"start"})})})},(e,t)=>e.userId===t.userId&&e.avatarSize===t.avatarSize&&e.showHoverCard===t.showHoverCard&&e.textPosition===t.textPosition&&e.avatarOnly===t.avatarOnly&&e.className===t.className&&JSON.stringify(e.secondaryText)===JSON.stringify(t.secondaryText)&&JSON.stringify(e.tertiaryText)===JSON.stringify(t.tertiaryText)&&JSON.stringify(e.quaternaryText)===JSON.stringify(t.quaternaryText)),fc={width:"20px",height:"20px",color:p.tokens.colorBrandBackground},gc=["access","comment","create","delete","edit","mention","move","rename","restore","share","version"],yc=new Map([["access",{message:"accessed this"}],["comment",{message:"commented on this"}],["create",{message:"created this"}],["delete",{message:"deleted this"}],["edit",{message:"edited this"}],["mention",{message:"mentioned you in this"}],["move",{message:"moved this"}],["rename",{message:"renamed this"}],["restore",{message:"restored this"}],["share",{message:"shared this"}],["version",{message:"versioned this"}]]),vc=e=>c.jsxs("svg",{width:"100",height:"100",viewBox:"0 0 100 100",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[c.jsx("rect",{x:"20",y:"30",width:"60",height:"50",fill:"#0078D4",opacity:"0.1"}),c.jsx("rect",{x:"30",y:"50",width:"10",height:"20",fill:"#0078D4"}),c.jsx("rect",{x:"45",y:"40",width:"10",height:"30",fill:"#0078D4"}),c.jsx("rect",{x:"60",y:"35",width:"10",height:"35",fill:"#0078D4"})]}),bc=e=>{const{height:t}=e;return c.jsxs("div",{style:{height:t||"100%",display:"flex",justifyContent:"center",alignItems:"center",flexDirection:"column"},children:[c.jsx(vc,{width:200,height:200}),c.jsx(p.Text,{size:500,weight:"semibold",children:"No Dashboards Available"})]})},xc=e=>{const{onChange:t,values:n,maxCols:r,maxRows:o}=e,i=v.bundleIcon(v.Settings20Filled,v.Settings20Regular),a={gridContainer:g.css`
97
+ `}})();return c.jsxs("div",{className:e.root,children:[c.jsx("div",{className:`${e.dot} ${e.dot1}`}),c.jsx("div",{className:`${e.dot} ${e.dot2}`}),c.jsx("div",{className:`${e.dot} ${e.dot3}`})]})},cc=(e,t)=>{switch(t.type){case"INIT":return{...e,messages:[t.welcomeMessage],isLoading:!1};case"SET_INPUT":return{...e,inputText:t.inputText};case"ADD_USER_MESSAGE":case"ADD_ASSISTANT_MESSAGE":return{...e,messages:[...e.messages,t.message]};case"UPDATE_LAST_ASSISTANT_MESSAGE":{const n=[...e.messages],r=n.length-1;return r>=0&&"Assistant"===n[r].senderName&&(n[r]=t.message),{...e,messages:n}}case"SET_ERROR":return{...e,error:t.error};case"CLEAR_INPUT":return{...e,inputText:""};case"SET_IS_RUNNING":return{...e,isRunning:!e.isRunning};default:return e}};const uc=(e,t)=>{const{getFormatRelative:n}=Ze(e,t);return n(new Date)},dc=e=>{const{template:t}=e;return c.jsx(c.Fragment,{children:t})},pc=new Map,hc=3e5;setInterval(()=>{const e=Date.now(),t=[];pc.forEach((n,r)=>{e>n.expiresAt&&t.push(r)}),t.forEach(e=>pc.delete(e))},6e5);const mc=u.memo(({userId:e,avatarSize:t=32,showHoverCard:n=!0,context:r,textPosition:o="after",className:i,avatarOnly:a=!1,secondaryText:s,tertiaryText:d,quaternaryText:h})=>{var m,f;const y={root:g.css({display:"flex",flexDirection:"row",justifyContent:"flex-start",alignItems:"flex-start",width:"fit-content",gap:"10px","&[data-fui-focus-within]:focus-within::after":{borderWidth:"0px"}}),personContainer:g.css({display:"flex",flexDirection:"column",justifyContent:"flex-start",alignItems:"flex-start",width:"100%",maxWidth:"100%",overflow:"hidden",paddingBottom:"0px"}),textStyle:g.css({width:"100%",maxWidth:"100%",overflow:"hidden",display:"-webkit-box",WebkitLineClamp:"1",WebkitBoxOrient:"vertical",paddingBottom:"0px",textAlign:"start",wordBreak:"break-all",textOverflow:"ellipsis",textOverlay:"hidden"}),spinnerContainer:g.css({display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",width:"100%"})},{user:v}=((e,t)=>{const n=G(),r=t||n,o=null==r?void 0:r.graphClient,{error:i}=q(),[a,s]=u.useState(void 0),[c,d]=u.useState(!0),p=u.useCallback(async e=>{if(!o)return console.warn("Graph client not available"),null;try{return await o.get(`/users/${e}`)}catch(t){return console.error("Error fetching user:",t),null}},[o]),h=u.useCallback(async e=>{if(!o)return console.warn("Graph client not available"),null;try{return await o.get(`/users/${e}/presence`)}catch(t){return console.error("Error fetching user presence:",t),null}},[o]),m=u.useCallback(async e=>{if(o)try{const t=await o.getBlob(`/users/${e}/photo/$value`);return t?new Promise((e,n)=>{const r=new FileReader;r.onloadend=()=>e(r.result),r.onerror=n,r.readAsDataURL(t)}):void 0}catch(t){return void console.debug("No photo available for user:",e)}else console.warn("Graph client not available")},[o]),f=u.useCallback(async()=>{var t;if(!e)return void d(!1);const n=pc.get(e),r=Date.now();if(n&&r<n.expiresAt)return s(n.data),void d(!1);try{const n=await p(e);if(!n)return;let a,c={availability:"Offline",activity:"Offline"};try{if(n.id){const e=await h(n.id);e&&(c=e)}}catch(o){(null==(t=null==o?void 0:o.message)?void 0:t.toLowerCase().includes("exceed"))?(i("fetchUser: Exceeded resource error during presence check",o,l.ErrorType.Error),c=n.presence||{availability:"Offline",activity:"Offline"}):i("fetchUser: Error fetching user presence",o,l.ErrorType.Error)}try{n.id&&(a=await m(n.id))}catch(o){i("fetchUser: Error fetching user photo",o,l.ErrorType.Warning)}const u={...n,presence:c,userPhoto:a};pc.set(e,{data:u,timestamp:r,expiresAt:r+hc}),s(u)}catch(o){i("fetchUser: Error fetching user",o,l.ErrorType.Error)}finally{d(!1)}},[e,p,h,m,i]),g=u.useCallback(async()=>{var t;if(!e||!a)return;const n=pc.get(e),r=Date.now();if(!(n&&n.data.presence&&r-n.timestamp<12e4))try{let c={availability:"Offline",activity:"Offline"};try{if(a.id){const e=await h(a.id);e&&(c=e)}}catch(o){(null==(t=o.message)?void 0:t.toLowerCase().includes("exceed"))?(i("checkUserPresence: Exceeded resource error during presence check",o,l.ErrorType.Error),c=a.presence||{availability:"Offline",activity:"Offline"}):i("checkUserPresence: Error fetching user presence",o,l.ErrorType.Error)}const u={...a,presence:c};pc.set(e,{data:u,timestamp:r,expiresAt:(null==n?void 0:n.expiresAt)||r+hc}),s(u)}catch(o){i("checkUserPresence: Error in checkUserPresence",o,l.ErrorType.Error)}},[e,a,h,i]);u.useEffect(()=>{(async()=>{await f()})()},[f]);const{startPolling:y,stopPolling:v}=Y(g,a?6e4:12e4,!1);return u.useEffect(()=>(a&&y(),()=>{v()}),[a,y,v]),{user:a,loading:c,refetch:f}})(e,r),b=u.useMemo(()=>{var e,t,n,r;const o=null==(t=null==(e=null==v?void 0:v.presence)?void 0:e.availability)?void 0:t.toLowerCase(),i=null==(r=null==(n=null==v?void 0:v.presence)?void 0:n.activity)?void 0:r.toLowerCase();switch(o){case"available":return{status:"available",text:"Available"};case"availableidle":return{status:"available",text:"Available, idle"};case"away":return{status:"away",text:"Away"};case"busy":return{status:"busy",text:"Busy"};case"busyidle":return{status:"busy",text:"Busy, idle"};case"donotdisturb":return{status:"do-not-disturb",text:"Do not disturb"};case"berighback":return{status:"away",text:"Be right back"};case"invisible":return{status:"offline",text:"Appear offline"};case"presenceunknown":return{status:"unknown",text:"Unknown"};case"offline":return{status:"offline",text:"outofoffice"===i?"Out of office":"Offline",outOfOffice:"outofoffice"===i};default:return{status:"offline",text:"Offline",outOfOffice:"outofoffice"===i}}},[null==(m=null==v?void 0:v.presence)?void 0:m.availability,null==(f=null==v?void 0:v.presence)?void 0:f.activity]);return c.jsx(dc,{upn:n&&(null==v?void 0:v.mail)||"",template:c.jsx("div",{className:p.mergeClasses(y.root,i),children:a?c.jsx(p.Avatar,{color:"colorful",image:{src:null==v?void 0:v.userPhoto,alt:(null==v?void 0:v.displayName)||"User Avatar"},size:t,name:(null==v?void 0:v.displayName)||e||"Unknown User",badge:{status:b.status,outOfOffice:b.outOfOffice}}):c.jsx(p.Persona,{primaryText:c.jsxs(p.Body1Strong,{className:y.textStyle,children:[" ",(null==v?void 0:v.displayName)||e||"Unknown User"]}),textPosition:o??"after",presence:{status:b.status,outOfOffice:b.outOfOffice},secondaryText:(null==s?void 0:s.showSecondaryText)?s.text?c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:s.text})}):c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:(null==v?void 0:v.jobTitle)||"Unknown Job Title"})}):void 0,tertiaryText:(null==d?void 0:d.showTertiaryText)?d.text?c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:d.text})}):c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:(null==v?void 0:v.mail)||"Unknown Email"})}):void 0,quaternaryText:(null==h?void 0:h.showQuaternaryText)?h.text?c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:h.text})}):c.jsx(c.Fragment,{children:c.jsx("span",{className:y.textStyle,children:b.text})}):void 0,avatar:{color:"colorful",image:{src:null==v?void 0:v.userPhoto,alt:(null==v?void 0:v.displayName)||"User Avatar"},size:t},textAlignment:"start"})})})},(e,t)=>e.userId===t.userId&&e.avatarSize===t.avatarSize&&e.showHoverCard===t.showHoverCard&&e.textPosition===t.textPosition&&e.avatarOnly===t.avatarOnly&&e.className===t.className&&JSON.stringify(e.secondaryText)===JSON.stringify(t.secondaryText)&&JSON.stringify(e.tertiaryText)===JSON.stringify(t.tertiaryText)&&JSON.stringify(e.quaternaryText)===JSON.stringify(t.quaternaryText)),fc={width:"20px",height:"20px",color:p.tokens.colorBrandBackground},gc=["access","comment","create","delete","edit","mention","move","rename","restore","share","version"],yc=new Map([["access",{message:"accessed this"}],["comment",{message:"commented on this"}],["create",{message:"created this"}],["delete",{message:"deleted this"}],["edit",{message:"edited this"}],["mention",{message:"mentioned you in this"}],["move",{message:"moved this"}],["rename",{message:"renamed this"}],["restore",{message:"restored this"}],["share",{message:"shared this"}],["version",{message:"versioned this"}]]),vc=e=>c.jsxs("svg",{width:"100",height:"100",viewBox:"0 0 100 100",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[c.jsx("rect",{x:"20",y:"30",width:"60",height:"50",fill:"#0078D4",opacity:"0.1"}),c.jsx("rect",{x:"30",y:"50",width:"10",height:"20",fill:"#0078D4"}),c.jsx("rect",{x:"45",y:"40",width:"10",height:"30",fill:"#0078D4"}),c.jsx("rect",{x:"60",y:"35",width:"10",height:"35",fill:"#0078D4"})]}),bc=e=>{const{height:t}=e;return c.jsxs("div",{style:{height:t||"100%",display:"flex",justifyContent:"center",alignItems:"center",flexDirection:"column"},children:[c.jsx(vc,{width:200,height:200}),c.jsx(p.Text,{size:500,weight:"semibold",children:"No Dashboards Available"})]})},xc=e=>{const{onChange:t,values:n,maxCols:r,maxRows:o}=e,i=v.bundleIcon(v.Settings20Filled,v.Settings20Regular),a={gridContainer:g.css`
98
98
  display: grid;
99
99
  gap: 4px;
100
100
  padding: 8px;