@devsym/graph-toolkit-react 1.0.0-next.7 → 1.0.0-next.8

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.
@@ -19,6 +19,12 @@ export interface ProviderPersonDataRequest {
19
19
  * Whether to fetch profile photo
20
20
  */
21
21
  fetchPhoto: boolean;
22
+ /**
23
+ * Additional user profile fields to fetch beyond the default set.
24
+ * Each entry must be a valid OData field name (letters, digits, underscores, dots, or slashes).
25
+ * Empty strings and entries containing unsafe characters are ignored.
26
+ */
27
+ selectFields?: string[];
22
28
  }
23
29
  /**
24
30
  * Response data containing user information, presence, and photo
@@ -1 +1 @@
1
- {"version":3,"file":"IPersonDataProvider.d.ts","sourceRoot":"","sources":["../../src/providers/IPersonDataProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB;;OAEG;IACH,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,aAAa,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;CACxF;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,UAAU,SAAS,GAAG,IAAI,KACzB,QAAQ,IAAI,SAAS,GAAG,mBAM1B,CAAC"}
1
+ {"version":3,"file":"IPersonDataProvider.d.ts","sourceRoot":"","sources":["../../src/providers/IPersonDataProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB;;OAEG;IACH,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,aAAa,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;CACxF;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,UAAU,SAAS,GAAG,IAAI,KACzB,QAAQ,IAAI,SAAS,GAAG,mBAM1B,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Native MSAL browser provider for Graph Toolkit React
3
3
  */
4
- import { PublicClientApplication } from '@azure/msal-browser';
4
+ import type { IPublicClientApplication } from '@azure/msal-browser';
5
5
  import { IProvider, ProviderState } from './IProvider';
6
6
  export declare class MsalBrowserProvider implements IProvider {
7
7
  private readonly msalInstance;
@@ -9,7 +9,7 @@ export declare class MsalBrowserProvider implements IProvider {
9
9
  private account;
10
10
  private state;
11
11
  private listeners;
12
- constructor(msalInstance: PublicClientApplication, defaultScopes: string[]);
12
+ constructor(msalInstance: IPublicClientApplication, defaultScopes: string[]);
13
13
  initialize(): Promise<void>;
14
14
  login(): Promise<void>;
15
15
  logout(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"MsalBrowserProvider.d.ts","sourceRoot":"","sources":["../../src/providers/MsalBrowserProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAIL,uBAAuB,EAExB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEvD,qBAAa,mBAAoB,YAAW,SAAS;IACnD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAW;IACzC,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,SAAS,CAAyB;gBAE9B,YAAY,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,EAAE;IAKpE,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAYtB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAOvB,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA8BxD,QAAQ,IAAI,aAAa;IAIzB,cAAc,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI;IAIzC,yBAAyB,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI;IAIpD,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,IAAI;CASb"}
1
+ {"version":3,"file":"MsalBrowserProvider.d.ts","sourceRoot":"","sources":["../../src/providers/MsalBrowserProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAe,wBAAwB,EAA+B,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEvD,qBAAa,mBAAoB,YAAW,SAAS;IACnD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2B;IACxD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAW;IACzC,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,SAAS,CAAyB;gBAE9B,YAAY,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,EAAE;IAKrE,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAYtB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAOvB,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA8BxD,QAAQ,IAAI,aAAa;IAIzB,cAAc,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI;IAIzC,yBAAyB,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI;IAIpD,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,IAAI;CASb"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devsym/graph-toolkit-react",
3
- "version": "1.0.0-next.7",
3
+ "version": "1.0.0-next.8",
4
4
  "description": "React components for Microsoft Graph powered by Fluent UI",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
package/readme.md CHANGED
@@ -101,6 +101,36 @@ import { Person } from '@devsym/graph-toolkit-react';
101
101
 
102
102
  `Person` supports Fluent UI Persona props directly.
103
103
 
104
+ MGT-style line customization is also supported:
105
+
106
+ ```tsx
107
+ <Person
108
+ userId="me"
109
+ view="threelines"
110
+ line1Property="givenName"
111
+ line2Property="mail,userPrincipalName"
112
+ line3Property="presenceAvailability"
113
+ />
114
+ ```
115
+
116
+ For full manual override, use React render callbacks as the replacement for MGT line templates:
117
+
118
+ ```tsx
119
+ <Person
120
+ personDetails={{
121
+ displayName: 'Megan Bowen',
122
+ jobTitle: 'CEO',
123
+ department: 'Leadership',
124
+ officeLocation: 'Seattle',
125
+ }}
126
+ view="fourlines"
127
+ renderLine1={({ text }) => <span>Name: {text}</span>}
128
+ renderLine2={({ text }) => <span>Role: {text}</span>}
129
+ renderLine3={({ text }) => <span>Org: {text}</span>}
130
+ renderLine4={({ text }) => <span>Location: {text}</span>}
131
+ />
132
+ ```
133
+
104
134
 
105
135
  <a id="getting-started"></a>
106
136
  ## 🚀 Getting Started