# @blackforestsentinel/seed-web-people 中文文档

规范地址：https://npmcn.com/package/%40blackforestsentinel/seed-web-people/

版本：0\.10\.0
npm 元数据更新时间：2026-11-06T14:52:01.277Z
中文译文更新时间：2026-11-08T05:55:02.447Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40blackforestsentinel/seed-web-people
原文对照：https://npmcn.com/package/%40blackforestsentinel/seed-web-people/?lang=original
项目主页：https://github.com/blackforestsentinel/seed-packages/tree/main/web/packages/seed-web-people
源码仓库：https://github.com/blackforestsentinel/seed-packages

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：326 kB，83 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：0 个
- peer 依赖：react \>=18，@blackforestsentinel/seed-web-auth ^0\.10\.0
- 首次发布：2026-10-11T10:57:29.364Z
- 最新版本发布：2026-11-06T14:52:00.950Z
- 近 30 天下载量：1919（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：10（近 12 个月 10 个）

## 中文简介

React-Komponenten für Personen in Sentinel-Seed-Frontends: Avatar, Benutzermenü, Personenauswahl, Karten und Anmeldeseiten, mit Daten aus Microsoft Graph serekt im 浏览器 维基语录链接:名人名言 - 电影对白 - 电影对白 - 电影对白.

## 安装

```sh
npm install @blackforestsentinel/seed-web-people
```

也可以使用：`pnpm add @blackforestsentinel/seed-web-people`、`yarn add @blackforestsentinel/seed-web-people`、`bun add @blackforestsentinel/seed-web-people`

## README

# @blackforestsentinel/种子-网络-人民

React-Kombonnenten rund um Personen für Frontends aus (英语) [哨兵种子](https://github.com/blackforestsentinel/seed-template):Profilbild, Name, Rolle, Abmelden, Personenauswahl, Karten, Anmelde- und Kein-Zugriff-Seite (英语). Die Daten kommen aus Microsoft Graph, mit dem Token der angemeldeten Person servt im 浏览器; einen eigenen Server-Endpunkt bracht es nicht. 互联网档案馆的存檔,存档日期2013-12-22.

-   Optik a Flent 2 Angelehnt(团队,展望),Ohne Abhängigkeit von `@fluentui/*`。 。 。 .
-   Ein statisches Styleshet, keine eingefügten Styles; passt zur CSP der Seed-Apps (英语:`style-src 'self'`) (中文(简体) ).
-   比尔德阿尔斯 `data:`\- URL;死亡 CSP erlaubt `img-src 'self' data:` 士诚.
-   运行了 16 KB JavaScript und 6 KB CSS nach gzip, ohne React. Einzelne Komponenten lassen sich per Tree-Shaking einbinden. 中国植物物种信息数据库. 中国植物物种信息数据库.

## 埃因鲍

```bash
npm install @blackforestsentinel/seed-web-people
```

死亡版本传出子 `@blackforestsentinel/seed-web-auth` (Peer-Abhängigkeit, ebenso React ab 18.) (英语).

```tsx
// main.tsx
import '@blackforestsentinel/seed-web-people/styles.css';
import { SeedUserProvider } from '@blackforestsentinel/seed-web-auth/react';
import { DirectoryProvider, SignInPage } from '@blackforestsentinel/seed-web-people';

const config = await loadRuntimeConfig<AppConfig>();
const auth = await startAuth(config.auth); // createSeedAuth oder null (lokal, ohne sso)

if (auth && !auth.account) {
  root.render(
    <DirectoryProvider config={config.auth} auth={auth}>
      <SignInPage appName="Kundenportal" />
    </DirectoryProvider>,
  );
} else {
  root.render(
    <SeedUserProvider load={api.getMe}>
      <DirectoryProvider config={config.auth} auth={auth}>
        <App />
      </DirectoryProvider>
    </SeedUserProvider>,
  );
}
```

-   `DirectoryProvider` 切入手冯 `config.auth`编号 : `auth.directory` (原始内容存档于2018-10-21) (英语). und Anmeldung Graph, im lokalen Modus die Liste aus `config.json`儿子们 欧恩 `auth.directory` seigen die Komponenten Namen und Instituten, die App übergibt, und rufen Graph nie auf. 中国植物物种信息数据库.
-   `DirectoryProvider` 热尔特英寸 `SeedUserProvider`达米特·罗伦 `/api/me` 安可门.
-   Die CSP der App raucht (英语) `connect-src https://graph.microsoft.com`; das Template trägt das mit (英语: `auth.directory` 爱因.

## 目标

```tsx
<CurrentUserMenu menuItems={[{ label: 'Hilfe', href: '/hilfe' }]} />
<PersonLabel id={invoice.approvedBy} secondary={formatDate(invoice.approvedAt)} card />
<PeoplePicker multiple value={reviewers} onChange={setReviewers} onlyWithAppRole roles={['Admin']} />
<PeoplePicker multiple value={writers} onChange={setWriters} principalTypes={['user', 'servicePrincipal']} />
<AvatarGroup people={task.participants} max={4} />
```

| 协调 | 齐格特 | Wichtige 道具 |
| --- | --- | --- |
| `Avatar` | Foto; ohne Foto Instituten auf einer Farbe aus der ID; Platzharter beim Laden; für Anwendungen ein 符号 | `id`, (中文(简体) ), `name`, (中文(简体) ), `image`, (中文(简体) ), `kind`, (中文(简体) ), `servicePrincipalType`, (中文(简体) ), `size` (16之二96,默认32), `shape` (单位:千美元)`circular`, (中文(简体) ), `square`, (中文(简体) ), `presence` (单位:千美元)`true` 病情恶化, `color`, (中文(简体) ), `decorative` |
| `PersonLabel` | 外观、 名称、 可选 zweite Zeile; mit `card` 死亡( e) `PersonCard` 每塔斯塔图尔 | `id`, (中文(简体) ), `name`, (中文(简体) ), `person`, (中文(简体) ), `secondary`, (中文(简体) ), `secondaryField` (单位:千美元)`mail`, (中文(简体) ), `jobTitle`, (中文(简体) ), `department`, (中文(简体) ), `size`, (中文(简体) ), `presence`, (中文(简体) ), `card` |
| `PersonCard` | größeres Bild, 名称, 位置, Abteilung, 状态, 邮件, Link zum Teams- Chat | `id`, (中文(简体) ), `person`, (中文(简体) ), `name`, (中文(简体) ), `presence`, (中文(简体) ), `chat`, (中文(简体) ), `actions` |
| `AvatarGroup` | 阿瓦塔雷·乌伯拉彭德阁下,ab `max` „+n" denbrigen Namen als Titel | `people` (指数oder) `{ id, name }`, (中文(简体) ), `max` (过失4), `size` |
| `CurrentUserMenu` | 阿凡达( Anazeigename aus),名作"罗来" `/api/me`),阿不梅尔登;米特 `menuItems` 埃因·梅纽 | `menuItems`, (中文(简体) ), `renderTrigger`, (中文(简体) ), `showRole`, (中文(简体) ), `presence`, (中文(简体) ), `onSignOut` (单位:千美元)`null` 搅拌机 |
| `PeoplePicker` | (原始内容存档于2013-10-12). Suchfeld mit Vorschlägen, eine oder mehree Personen als Chips | `value`编号 :`defaultValue`, (中文(简体) ), `onChange`, (中文(简体) ), `multiple`, (中文(简体) ), `filter`, (中文(简体) ), `renderOption`, (中文(简体) ), `onlyWithAppRole`, (中文(简体) ), `roles`, (中文(简体) ), `principalTypes`, (中文(简体) ), `servicePrincipalTypes`, (中文(简体) ), `minChars` (2), `debounceMs` (250个), `maxSuggestions` (8), (中文), `labels` |
| `SignInPage` | Anmeldeseite mit App - Name und Knopf (英语) | `appName`, (中文(简体) ), `description`, (中文(简体) ), `logo`, (中文(简体) ), `onSignIn` (过失) `auth.login()`, (中文(简体) ), `error`, (中文(简体) ), `footer` |
| `AccessDenied` | (原始内容存档于2018-06-26) (英语). angemeldet, aber ohne Rolle oder Capaility: Erklärung, Ansprechperson, Kontowechsel | `appName`, (中文(简体) ), `reason` (单位:千美元)`no-role`, (中文(简体) ), `missing-capability`, (中文(简体) ), `capability`, (中文(简体) ), `contact`, (中文(简体) ), `actions`, (中文(简体) ), `onSignOut` |
| `RoleBadge` | (原始内容存档于2017-10-21) (英语). Rolle als Etikett, Anzeigename aus `/api/me` | `role`, (中文(简体) ), `displayName`, (中文(简体) ), `appearance` (单位:千美元)`tint`, (中文(简体) ), `filled`, (中文(简体) ), `outline`(中文(简体) ) |
| `PresenceBadge` | 庞克特小组 | `status`, (中文(简体) ), `size`, (中文(简体) ), `label` |

### 选手

-   ARIA-Muster“Combobox”:Pfeiltasten wählen den Vorschlag, Enter übernimt ihn, Escape schließt die Liste und leert dans Feld, Rücktaste im Leeren Feld entfernt den letzten Chip.
-   (原始内容存档于2019-09-25). Suche ab zwei Zeichen mit 250 ms Verzögerung. 与Kontakte有关的人`/me/people`), Dann das Verzeichnis (英语:`/users?$search`),以einm为单位的饮料 `$batch`。 。 。 .
-   `filter` (原始内容存档于2019-09-21) (英语). Mindet Vorschläge aus, `renderOption` 斯特尔特·塞尔布斯特·达尔.
-   **`onlyWithAppRole`** seigt nur Personen mit einer App-Rolle der API, mit 互联网档案馆的存檔,存档日期2013-10-02 `roles` (原始内容存档于2018-09-21). Nur mit Diesen Rollen. Das Paket liet die Zuweisungen der API-Registrierung (英语:`/servicePrincipals(appId='…')/appRoleAssignedTo`(原始内容存档于2017-10-09) (英语). und löst Gruppen samt verschachtelter Gruppen auf (英语)`/groups/{id}/transitiveMembers`) (中文(简体) ). (原始内容存档于2018-10-21). Das Ergebnis bleibt sehn Minutern im Zwischenspeicher.
-   欧恩 `auth.directory.roleFilter` 皮克电玩 `onlyWithAppRole` 尼曼登、埃宁·费勒`data-state="error"`und in der Konsole. (原始内容存档于2019-09-29). Im lokalen Modus 过滤器 er nach `roles` (原始内容存档于2018-10-21). der erfunden Personen.

### (原始内容存档于2018-10-03) (英语). Anwendungen und verwalte Identitäten

Wer einen Datensatz bearbeiten darf, ist tot nicht nur eine Person, sonden auch eine verwalte Identität (managed Identität) (管理身份) oder eine andere Anwendung. 轻点 `auth.directory.servicePrincipals` (单位:千美元) `project.yaml` `auth.directory.servicePrincipals: true`Kennn die Komponenten auch diese Service Professors: (原始内容存档于2018-09-29). Kennn die Komponenten auch diese Service Professors:

```tsx
<PeoplePicker
  multiple
  principalTypes={['user', 'servicePrincipal']}
  servicePrincipalTypes={['ManagedIdentity', 'Application']}
  value={writers}
  onChange={setWriters}
/>
<PersonLabel id={record.updatedBy} secondaryField="jobTitle" card />
```

-   `Person.kind` 谓 `user` 欧德 `servicePrincipal`Kommen校长 `appId` ( client-ID) 未读取 `servicePrincipalType` (单位:千美元)`ManagedIdentity`, (中文(简体) ), `Application`)达祖. Gespeicherte Daten Ohne (英语) `kind` gelten als Person. (原始内容存档于2018-09-29).
-   **`principalTypes`** im Picker, 默认 `['user']`关闭 `servicePrincipal` {\\fn黑体\\fs22\\bord1\\shad0\\3ahbe\\4ah00\\fscx67\\fscy66\\2chffffff\\3ch808080}这样的话 {\\fn黑体\\fs22\\bord1\\shad0\\3ahbe\\4ah00\\fscx67\\fscy66\\2chffffff\\3ch808080}你应该知道 `/servicePrincipals?$search="displayName:…"`, imm selben (英语) `$batch` (原始内容存档于2018-10-21). Wie die Personen. **`servicePrincipalTypes`** (原始内容存档于2018-10-21) (英语). beschränkt die Suche, etwa auf `['ManagedIdentity']`. Ohne Beschränkung erscheinen auch Anwendungen von 微软(etwa “微软图”); `filter` 搅拌机 weitere aus.
-   (原始内容存档于2018-09-29). Personen und Anwendungen stehen abwechselnd in den Vorschlägen. Anwendungen zeigen ihre Art und die App-ID als zweite Zeile. 中国植物物种信息数据库.
-   轻点 `onlyWithAppRole` service Service 校长,Denen eine Role der API **恶作剧** 苏克维森是。 (原始内容存档于2018-10-21). Gruppen löst der Filter nur nach Personen auf.
-   **`PersonLabel`, (中文(简体) ), `PersonCard`, (中文(简体) ), `Avatar`** erkennan 服务负责人:`/users/{id}`(原始内容存档于2013-10-12). fragen sie `/servicePrincipals/{id}`. Statt Instituten zeigen sie ein system auf einem Quadrat, einen Schlüssel für verwalte Identitäten, sonst vier Kacheln. 中国植物物种信息数据库. Foto und Teams - Statistics es für Anwendungen nicht, Mail und Chat auf der Karte auch nicht; die Karte Nennt Art und App-ID. 存档副本.
-   德姆·沙尔特·莱德特·杰德斯 `PersonLabel` 攻击 `Avatar` 光标 `id` das Profil, um die Art zu kennen, arch wenn(英语:Art zu kenn (film)), (中文(简体) ) `name` 格鲁塞特是(他为塞尔本) `$batch`(原始内容存档于2013-10-12). 30 Minuten im Zwischenspeicher. (原始内容存档于2018-10-25) (英语). Den Teams - Status lädt das Label erst, wenn festesteht, dass es eine Person ist. Art schon kennt, gibt sie mit und spart die Abfrage: 亚特·斯克恩·克恩特(英语:Art schon kennt, Gibt sie mit und spart die Abfrage: 亚特·克恩特(英语: `person={{ kind: 'user' }}` z. `kind` 已经 `Avatar`。 。 。 .
-   `secondaryField` ("Verwalte Identität","Anwendung"),Wenn das Feld leer ist.
-   欧恩 `auth.directory.servicePrincipals` 皮克电玩 `principalTypes` einen Fehler im Feld und in der Konsole, start nur Personen zu zeigen. 中国植物物种信息数据库. Labels und Karten bleiben wie biher: Für die ID einer Anwendung zeigen sie den übergebenen nameen mit Inginden. 中国植物物种信息数据库.
-   伊克兰·莫多斯·斯蒂亨·安文登根·米特 `"kind": "servicePrincipal"` 内 `auth.directory.people`。 。 。 .

## 钩子

Oberflächen gibt es nur die Daten: 欧巴马

| 钩子 | 利费特 |
| --- | --- |
| `useCurrentUser()` | `{ status, user }`· ; `user` 光标 `id`, (中文(简体) ), `displayName`, (中文(简体) ), `username`, (中文(简体) ), `roles`, (中文(简体) ), `roleNames`, (中文(简体) ), `capabilities`. Der Name kommt sofort aus der Anmeldung, Rollen aus (英语: `/api/me`。 。 。 . |
| `usePerson(id)` | `{ status, person }` mIT 名称、邮件、位置、 Abteilung |
| `usePhoto(id, size)` | `{ status, url }` 参数 `data:`\- 欧德 `null` |
| `usePeopleSearch(text, options)` | `{ status, people, query }`(原始内容存档于2018-09-21) (英语). mit Verzögerung und Mindestlänge; `principalTypes` ưμ㼯a `servicePrincipalTypes` 皮克纳 |
| `usePresence(id)` | `{ status, presence }`(原始内容存档于2012-10-12). Gebündelt und jede Minument atkualisiert, solange sichtbar |
| `useAppRoleMembers(roles, options)` | `{ status, members, ids }`, personen mit App-Rolle; 缩写 `principalTypes` 服务负责人 |
| `useDirectory()`, (中文(简体) ), `useSignOut()` | das Verzeichnis; 阿布梅尔登·萨姆特·利伦德·兹维申斯佩切尔 |

`status` 谓 `idle` {\\fn黑体\\fs22\\bord1\\shad0\\3ahbe\\4ah00\\fscx67\\fscy66\\2chffffff\\3ch808080}我.., `loading`, (中文(简体) ), `ready` 欧德 `error`。Ohne反应: `createGraphDirectory()` ưμ㼯a `createLocalDirectory()`。 。 。 .

## 密码

-   **CSS - 变量** sichtbare,一位女演员:
    
    ```css
    :root {
      --seed-accent: #8a2be2;
      --seed-font: Inter, sans-serif;
      --seed-avatar-radius: 8px;
    }
    ```
    
    死神之门: `--seed-font`, (中文(简体) ), `--seed-accent` (关) `-hover`, (中文(简体) ), `-pressed`, (中文(简体) ), `--seed-text` (关) `-secondary`, (中文(简体) ), `-tertiary`, (中文(简体) ), `--seed-surface`, (中文(简体) ), `--seed-stroke`, (中文(简体) ), `--seed-focus`, (中文(简体) ), `--seed-radius-*`, (中文(简体) ), `--seed-shadow-*`, (中文(简体) ), `--seed-presence-*`, (中文(简体) ), `--seed-palette-<farbe>-bg`编号 :`-fg`Die Werte entsprechen den Tokens von Fluent 2 (布兰德) `#0F6CBD`) (中文(简体) ).
-   **`@layer seed`数字 :** Alle Standards-Styles liegen in dieser Ebene. (原始内容存档于2018-09-29) (英语). Jede Regel der App Gewont ohne (英语:Jede Regel der App Gewint ohne) (美国英语) `!important`{\\fn黑体\\fs22\\bord1\\shad0\\3aHBE\\4aH00\\fscx67\\fscy66\\2cHFFFFFF\\3cH808080}这太夸张了.
-   **Feste 克莱森纳姆** 纳克 BEM, etwa `seed-avatar`, (中文(简体) ), `seed-avatar__image`, (中文(简体) ), `seed-picker__option`, (中文(简体) ), `seed-user-menu__role`二. Zustände als `data-*`数字 : `data-state="loading"`, (中文(简体) ), `data-active`, (中文(简体) ), `data-open`, (中文(简体) ), `data-presence="busy"`, (中文(简体) ), `data-color="cranberry"`。 。 。 .
-   **`className` ưμ㼯a `classNames`数字 :** 杰德·科姆蓬特·尼姆特 `className` für das Wurzelelement und (法语) `classNames` für ihre Teile, z. B. (原始内容存档于2017-09-21). `classNames={{ option: 'px-2 py-1' }}`{\\fn黑体\\fs22\\bord1\\shad0\\3aHBE\\4aH00\\fscx67\\fscy66\\2cHFFFFFF\\3cH808080}我们很兴奋 {\\fn黑体\\fs22\\bord1\\shad0\\3aHBE\\4aH00\\fscx67\\fscy66\\2cHFFFFFF\\3cH808080}我们很兴奋.
-   **伊根·达斯特伦:** `renderOption` 皮克,我爱他 Impicker, `renderTrigger` ưμ㼯a `menuItems` (原始内容存档于2017-10-21). im Benutzermenü, die Hooks für alles andere.
-   **地狱出邓克尔** 费尔根 `prefers-color-scheme`。 。 。 . `data-seed-theme="light"` 欧德 `"dark"` 已经 `html`\- 节日节日 节日 节日 节日 节日 节日 节日 节日.
-   **贝迪恩巴克特:** Picker als Combobox, Benutzermenü als Menu Button, Bilder mit Alternativtext über (英语) `role="img"` ưμ㼯a `aria-label`,所有mit der Tastatur 床边酒吧, Fokusrahmen wie Fluent, `forced-colors` (原始内容存档于2017-10-29). berücksichtigt.

## 贝雷希蒂贡根恩德恩维利翁

Alle Berechtigungen sind delegiert: Das Frontend sieht nur, 是Outlook oder Teams ohnehin sieht中死亡的死因。 达斯地平线 `sso` (原始内容存档于2013-10-12). trägt sie a der SPA-Registrierung ein; einwilligen muss ein Mensch.

| 贝雷希通 | 沃菲尔 | 行政同意号 |
| --- | --- | --- |
| `User.Read` | 义工 | 无 |
| `User.ReadBasic.All` | Profile und Fotos anderer, Verzeichnissuche 互联网档案馆的存檔,存档日期2013-12-02 | 无 |
| `People.Read` | (原始内容存档于2018-09-21) (英语). Personen im Picker | 无 |
| `Presence.Read.All` | 各小组-现状`presence: true`(中文(简体) ) | 无 |
| `Application.Read.All` | 罗伦祖韦松根 der API(`roleFilter: true`), 服务校长 suchen und azeigen (`servicePrincipals: true`(中文(简体) ) | **对** |
| `GroupMember.Read.All` | 米格利德·苏格维塞纳·格鲁彭(英语:`roleFilter: true`(中文(简体) ) | **对** |

-   (原始内容存档于2018-09-26). Viele tenants erlauben keine eigene Einwilligung der Personen. Dann erteilt e in Admin sie einmal für alle: Entra ID, App-Registrierungen, die SPA-Registrierung, “API-Berechtigungen”, “行政学家zustimung ertelen”.
-   Das Paket holt ein Token für alle 范围 `auth.directory.scopes` 苏格利克。 Fehlt die Einwilligung für einen davon, bleibt Graph ganz aus. 中国植物物种信息数据库. 轻点 `roleFilter: true` 欧德 `servicePrincipals: true` (原始内容存档于2018-09-21) (英语). Darher erst die Edministratorzustimmung ertelen, dann ausrollen.
-   Fehlt die Einwilligung, leitet种子-web-auth je Tab einmal ohne und einmal mit Dialog zu Entra IDum, damit die Person sustimen Kann. 维基语录链接:名人名言 - 谚语 - 谚语 - 谚语 (原始内容存档于2018-10-21) (英语). Danach läuft die App ohne Graph Weiter: Instituten stat Fotos, der Picker meldet einen Fehler, in der Konsole steht ein Hinweis.
-   Lehnt Graph 位置 und Abteilung ab (403), fragt das Paket nur Name und Mail ab. 互联网档案馆的存檔,存档日期2013-12-02.

## 洛卡勒模式

轻点 `"auth": { "mode": "local" }` (原始内容存档于2017-03-27). gibt es kein MSAL und keinen Graph-Zugriff. 解开 `auth.directory.people` stehen erfundene Personen; Avatare zeigen Instituten, der Picker sucht in dieser Liste, einen status gibt es nicht. 中国植物物种信息数据库.

```json
{
  "apiBaseUrl": "http://localhost:7071",
  "auth": {
    "mode": "local",
    "directory": {
      "people": [
        { "id": "00000000-0000-4000-8000-000000000001", "displayName": "Erika Mustermann", "mail": "erika.mustermann@example.org", "jobTitle": "Buchhalterin", "department": "Buchhaltung", "roles": ["Admin"] },
        { "id": "00000000-0000-4000-8000-000000000101", "displayName": "Nachtlauf", "kind": "servicePrincipal", "servicePrincipalType": "ManagedIdentity", "appId": "00000000-0000-4000-8000-000000000201", "roles": ["Admin"] }
      ]
    }
  }
}
```

`roles` 不是一个可选的 und nur für `onlyWithAppRole` 木卫一 Einträge mit (英语) `"kind": "servicePrincipal"` 查找 der Picker nur mit 数据 `principalTypes`奥恩 `auth.directory` (原始内容存档于2013-10-12). sucht der Picker nicht und sagt das.

## (原始内容存档于2012-10-10). Laufzeit und Datenschutz

-   Bilder lädt das Paket nur, wenn eine Komponente sie zeigt, in festen Größen (48, 64 oder 96 Pixel aus) 维基语录链接:名人名言 - 文学作品 - 谚语 - 谚语 - 谚语 - 谚语 `/photos/{size}/$value`) (中文(简体) ).
-   (原始内容存档于2013-10-12). Anfragen neithalb weniger Milisekunden gehen gemeinsam als `$batch` (bis 20 je Aufruf). Gleiche laufende Anfragen werden zusammengefast, gedrosselte (429纳克) `Retry-After` 维德霍特.
-   Teams - status kommt gebündelt über (英语: `/communications/getPresencesByUserId` und wird jede minute neu geladen, solange er sichtbar ist und Tab im Vordergrund liegt. 互联网档案馆的存檔,存档日期2013-12-21., 互联网档案馆的存檔,存档日期2013-12-21.,.
-   兹维申斯佩切尔(英语:Zwischenspeicher im Speicher und im) 施佩切尔(英语:Zwischenspeicher und im) 施佩切尔(英语:Zwischenspeicher und im) 施佩切尔(英语: `sessionStorage` (endet mit dem Tab), Gerrennt je Konto: profile und Fotos 30 Minuten, Rollenzuweisungen 10 Minuten, Suchergebnisse und Status nur im Speicher. (原始内容存档于2012-10-12). Personen ohne Foto merkt er sich auch. Abmelden über die Komponenten leert alles. (原始内容存档于2018-07-29) (英语).
-   Fotos und Profile gehen nie a die eigene API und nicht in Logs. (原始内容存档于2018-09-29). (原始内容存档于2018-10-21) (英语). Profilbilder sind personenbezogene Daten; sie sind arber für depertopenen sichtbar wie in Teams und Outlook, und die Einstellungen des tents (etwa ausgeblendete Fotos) gelten weiter.

## 常见问题

### @blackforestsentinel/seed-web-people 是什么？

React-Komponenten für Personen in Sentinel-Seed-Frontends: Avatar, Benutzermenü, Personenauswahl, Karten und Anmeldeseiten, mit Daten aus Microsoft Graph serekt im 浏览器 维基语录链接:名人名言 - 电影对白 - 电影对白 - 电影对白\.

### 如何安装 @blackforestsentinel/seed-web-people？

在项目目录运行 npm install @blackforestsentinel/seed-web-people，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：react（\>=18）、@blackforestsentinel/seed-web-auth（^0\.10\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @blackforestsentinel/seed-web-people 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @blackforestsentinel/seed-web-people 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @blackforestsentinel/seed-web-people 可以商用吗？

@blackforestsentinel/seed-web-people 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @blackforestsentinel/seed-web-people 的下载量有多少？

根据 npm 官方下载统计，@blackforestsentinel/seed-web-people 在 2026/10/09 – 2026/11/07 这 30 天内被下载 1,919 次，日均约 64 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @blackforestsentinel/seed-web-people 还在维护吗？

最新版本 0\.10\.0 发布于 2026/11/06（1 天前）；至今共发布 10 个版本，其中过去 12 个月发布了 10 个；首次发布于 2026/10/11。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

