uapp-communication-sdk 1.0.0-dev.101 → 1.0.0-dev.102

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "uapp-communication-sdk",
3
- "version": "1.0.0-dev.101",
3
+ "version": "1.0.0-dev.102",
4
4
  "description": "Embeddable Communication Hub widgets (chat, feed, bookings, schedule).",
5
5
  "type": "module",
6
6
  "types": "./types/sdk/index.d.ts",
@@ -3,10 +3,12 @@ import type { ApiKeyPendingAction } from './use-api-keys-page-controller';
3
3
  import { type ApiKey } from '../domain';
4
4
  interface ApiKeyCardProps {
5
5
  readonly apiKey: ApiKey;
6
+ readonly canUpdate?: boolean;
7
+ readonly canDelete?: boolean;
6
8
  readonly onAction: (action: ApiKeyPendingAction) => void;
7
9
  readonly onEdit: (apiKey: ApiKey) => void;
8
10
  readonly onGuide: (apiKey: ApiKey) => void;
9
11
  }
10
- export declare const ApiKeyCard: ({ apiKey: key, onAction, onEdit, onGuide, }: ApiKeyCardProps) => ReactElement;
12
+ export declare const ApiKeyCard: ({ apiKey: key, canUpdate, canDelete, onAction, onEdit, onGuide, }: ApiKeyCardProps) => ReactElement;
11
13
  export {};
12
14
  //# sourceMappingURL=ApiKeyCard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ApiKeyCard.d.ts","sourceRoot":"","sources":["../../../../../../src/features/api-keys/presentation/ApiKeyCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAqB,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAyC3D,UAAU,eAAe;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACzD,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C;AAED,eAAO,MAAM,UAAU,GAAI,6CAKxB,eAAe,KAAG,YA8DpB,CAAC"}
1
+ {"version":3,"file":"ApiKeyCard.d.ts","sourceRoot":"","sources":["../../../../../../src/features/api-keys/presentation/ApiKeyCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAqB,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAyC3D,UAAU,eAAe;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACzD,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C;AAED,eAAO,MAAM,UAAU,GAAI,mEAOxB,eAAe,KAAG,YAoEpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ApiKeysPage.d.ts","sourceRoot":"","sources":["../../../../../../src/features/api-keys/presentation/ApiKeysPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAyJ1C,eAAO,MAAM,WAAW,QAAO,YAoC9B,CAAC"}
1
+ {"version":3,"file":"ApiKeysPage.d.ts","sourceRoot":"","sources":["../../../../../../src/features/api-keys/presentation/ApiKeysPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAgK1C,eAAO,MAAM,WAAW,QAAO,YA4C9B,CAAC"}
@@ -34,13 +34,21 @@ export declare const POLICIES: {
34
34
  readonly accessControlUpdate: "CommunicationHub.AccessControl.Update";
35
35
  readonly accessControlDelete: "CommunicationHub.AccessControl.Delete";
36
36
  readonly orgSettingsUpdate: "CommunicationHub.OrgSettings.Update";
37
+ readonly branches: "CommunicationHub.Branches";
37
38
  readonly branchesCreate: "CommunicationHub.Branches.Create";
38
39
  readonly branchesUpdate: "CommunicationHub.Branches.Update";
39
40
  readonly branchesDelete: "CommunicationHub.Branches.Delete";
41
+ readonly userTypes: "CommunicationHub.UserTypes";
40
42
  readonly userTypesCreate: "CommunicationHub.UserTypes.Create";
41
43
  readonly userTypesUpdate: "CommunicationHub.UserTypes.Update";
42
44
  readonly userTypesDelete: "CommunicationHub.UserTypes.Delete";
45
+ readonly userTypesAssign: "CommunicationHub.UserTypes.Assign";
46
+ readonly teams: "CommunicationHub.Teams";
43
47
  readonly teamsManage: "CommunicationHub.Teams.Manage";
48
+ readonly hierarchy: "CommunicationHub.Hierarchy";
49
+ readonly hierarchyManage: "CommunicationHub.Hierarchy.Manage";
50
+ readonly userBranches: "CommunicationHub.UserBranches";
51
+ readonly userBranchesManage: "CommunicationHub.UserBranches.Manage";
44
52
  readonly webhooksCreate: "CommunicationHub.Webhooks.Create";
45
53
  readonly webhooksUpdate: "CommunicationHub.Webhooks.Update";
46
54
  readonly webhooksDelete: "CommunicationHub.Webhooks.Delete";
@@ -52,6 +60,9 @@ export declare const POLICIES: {
52
60
  readonly promotionsDelete: "CommunicationHub.Promotions.Delete";
53
61
  readonly feedPreferenceSave: "CommunicationHub.FeedPreference.Save";
54
62
  readonly feedPreferenceManageCategories: "CommunicationHub.FeedPreference.ManageCategories";
63
+ readonly apiKeysCreate: "CommunicationHub.SdkClients.Create";
64
+ readonly apiKeysUpdate: "CommunicationHub.SdkClients.Update";
65
+ readonly apiKeysDelete: "CommunicationHub.SdkClients.Delete";
55
66
  };
56
67
  export type PolicyKey = (typeof POLICIES)[keyof typeof POLICIES];
57
68
  /** The signed-in user's accessible sidebar modules — a set of module-access permission ids. */
@@ -1 +1 @@
1
- {"version":3,"file":"module-access.d.ts","sourceRoot":"","sources":["../../../../../../src/features/module-access/domain/module-access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;CAehB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAEjF;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CX,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAEjE,+FAA+F;AAC/F,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9C,yGAAyG;IACzG,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;CACvC;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,aAAa,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,6CAK7B,kBAAkB,KAAG,OAKvB,CAAC;AAEF,iDAAiD;AACjD,8BAAsB,iBAAkB,SAAQ,WAAW;CAAG;AAE9D,2GAA2G;AAC3G,qBAAa,4BAA6B,SAAQ,iBAAiB;IACjE,SAAgB,IAAI,+BAA+B;gBAEhC,KAAK,CAAC,EAAE,OAAO;CAGnC;AAED,0FAA0F;AAC1F,MAAM,WAAW,mBAAmB;IAClC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC,CAAC;CACrE"}
1
+ {"version":3,"file":"module-access.d.ts","sourceRoot":"","sources":["../../../../../../src/features/module-access/domain/module-access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;CAehB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAEjF;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8DX,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAEjE,+FAA+F;AAC/F,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9C,yGAAyG;IACzG,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;CACvC;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,aAAa,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,6CAK7B,kBAAkB,KAAG,OAKvB,CAAC;AAEF,iDAAiD;AACjD,8BAAsB,iBAAkB,SAAQ,WAAW;CAAG;AAE9D,2GAA2G;AAC3G,qBAAa,4BAA6B,SAAQ,iBAAiB;IACjE,SAAgB,IAAI,+BAA+B;gBAEhC,KAAK,CAAC,EAAE,OAAO;CAGnC;AAED,0FAA0F;AAC1F,MAAM,WAAW,mBAAmB;IAClC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC,CAAC;CACrE"}
@@ -1 +1 @@
1
- {"version":3,"file":"AccessControlPage.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/AccessControlPage.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AA2DpD;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,QAAO,YA8DpC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"AccessControlPage.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/AccessControlPage.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAiIpD;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,QAAO,YAiFpC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"GroupMembershipSetting.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/GroupMembershipSetting.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAQ1C;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAO,YA+CzC,CAAC"}
1
+ {"version":3,"file":"GroupMembershipSetting.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/GroupMembershipSetting.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAS1C;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAO,YAiDzC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MemberAccessCard.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/MemberAccessCard.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAqQpD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,YAAY,qBAAqB,KAAG,YAKpE,CAAC"}
1
+ {"version":3,"file":"MemberAccessCard.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/MemberAccessCard.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AA0NpD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,YAAY,qBAAqB,KAAG,YAiBpE,CAAC"}
@@ -0,0 +1,29 @@
1
+ import type { ReactElement } from 'react';
2
+ export interface PickRowProps {
3
+ readonly label: string;
4
+ readonly value: string;
5
+ readonly options: readonly {
6
+ readonly value: string;
7
+ readonly label: string;
8
+ }[];
9
+ readonly disabled: boolean;
10
+ readonly onChange: (value: string) => void;
11
+ readonly onAssign: () => void;
12
+ }
13
+ /** A select + Assign button row used by both the types and branches sections. */
14
+ export declare const PickRow: ({ label, value, options, disabled, onChange, onAssign, }: PickRowProps) => ReactElement;
15
+ /** One list row: a name (+ badge), an optional muted subline, and right-aligned actions. */
16
+ export declare const AccessRow: ({ name, badge, sub, actions, }: {
17
+ readonly name: string;
18
+ readonly badge?: ReactElement | undefined;
19
+ readonly sub?: string | undefined;
20
+ readonly actions?: ReactElement | undefined;
21
+ }) => ReactElement;
22
+ /** A branch row's actions — an optional "Make primary" plus "Remove". */
23
+ export declare const BranchActions: ({ primary, disabled, onMakePrimary, onRemove, }: {
24
+ readonly primary: boolean;
25
+ readonly disabled: boolean;
26
+ readonly onMakePrimary: () => void;
27
+ readonly onRemove: () => void;
28
+ }) => ReactElement;
29
+ //# sourceMappingURL=MemberAccessRow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemberAccessRow.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/MemberAccessRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAI1C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,SAAS;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAChF,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;CAC/B;AAED,iFAAiF;AACjF,eAAO,MAAM,OAAO,GAAI,0DAOrB,YAAY,KAAG,YAqBjB,CAAC;AAEF,4FAA4F;AAC5F,eAAO,MAAM,SAAS,GAAI,gCAKvB;IACD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;CAC7C,KAAG,YAaH,CAAC;AAEF,yEAAyE;AACzE,eAAO,MAAM,aAAa,GAAI,iDAK3B;IACD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,IAAI,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;CAC/B,KAAG,YAWH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"OrgChartPanel.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/OrgChartPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AA8FpD;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,QAAO,YAyEhC,CAAC"}
1
+ {"version":3,"file":"OrgChartPanel.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/OrgChartPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AA6HpD;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,QAAO,YA2EhC,CAAC"}
@@ -1,11 +1,12 @@
1
1
  import { type ReactElement } from 'react';
2
2
  import type { HierarchyEdgeView } from '../domain';
3
+ /** Group the flat edges by branch — reporting is branch-scoped, so each branch is its own forest. */
3
4
  export interface OrgChartTreeProps {
4
5
  readonly edges: readonly HierarchyEdgeView[];
5
6
  /** Resolves a branch key to its display name (falls back to the key). */
6
7
  readonly branchName: (branchKey: string) => string;
7
- readonly onSelect: (id: string, name: string) => void;
8
- readonly onRemove: (subordinateId: string, subordinateUserTypeId: string, branchKey: string) => void;
8
+ readonly onSelect?: ((id: string, name: string) => void) | undefined;
9
+ readonly onRemove?: ((subordinateId: string, subordinateUserTypeId: string, branchKey: string) => void) | undefined;
9
10
  }
10
11
  /**
11
12
  * The reporting hierarchy drawn as an indented tree (role-coloured chips + connector stubs + a chevron
@@ -1 +1 @@
1
- {"version":3,"file":"OrgChartTree.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/OrgChartTree.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAKpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAgOnD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC7C,yEAAyE;IACzE,QAAQ,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACnD,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtD,QAAQ,CAAC,QAAQ,EAAE,CACjB,aAAa,EAAE,MAAM,EACrB,qBAAqB,EAAE,MAAM,EAC7B,SAAS,EAAE,MAAM,KACd,IAAI,CAAC;CACX;AAsBD;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,4CAK1B,iBAAiB,KAAG,YAyCtB,CAAC"}
1
+ {"version":3,"file":"OrgChartTree.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/OrgChartTree.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAKpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAsKnD,qGAAqG;AAErG,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC7C,yEAAyE;IACzE,QAAQ,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACrE,QAAQ,CAAC,QAAQ,CAAC,EACd,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC,GACnF,SAAS,CAAC;CACf;AAsBD;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,4CAK1B,iBAAiB,KAAG,YAgDtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"UserTypeFormView.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/UserTypeFormView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAI1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAwE7C,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,sBAG9B,qBAAqB,KAAG,YAmE1B,CAAC"}
1
+ {"version":3,"file":"UserTypeFormView.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/UserTypeFormView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAK1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AA0E7C,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,sBAG9B,qBAAqB,KAAG,YAsE1B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { HierarchyEdgeView } from '../domain';
2
+ /** A person acting in one role context (id + user-type), with the reports underneath them. */
3
+ export interface TreeNode {
4
+ readonly key: string;
5
+ readonly id: string;
6
+ readonly userTypeId: string;
7
+ name: string;
8
+ typeName: string;
9
+ readonly children: TreeNode[];
10
+ }
11
+ /** Builds the reporting FOREST from the flat role-pair edges. Roots = nodes that report to no one. */
12
+ export declare const buildForest: (edges: readonly HierarchyEdgeView[]) => TreeNode[];
13
+ /** The distinct role names present, for the colour legend. */
14
+ export declare const legendRoles: (edges: readonly HierarchyEdgeView[]) => string[];
15
+ /** Group the flat edges by branch — reporting is branch-scoped, so each branch is its own forest. */
16
+ export declare const groupByBranch: (edges: readonly HierarchyEdgeView[]) => Map<string, HierarchyEdgeView[]>;
17
+ //# sourceMappingURL=org-tree-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"org-tree-builder.d.ts","sourceRoot":"","sources":["../../../../../../src/features/org/presentation/org-tree-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAKnD,8FAA8F;AAC9F,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;CAC/B;AAED,sGAAsG;AACtG,eAAO,MAAM,WAAW,GAAI,OAAO,SAAS,iBAAiB,EAAE,KAAG,QAAQ,EAgDzE,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,WAAW,GAAI,OAAO,SAAS,iBAAiB,EAAE,KAAG,MAAM,EAOvE,CAAC;AAEF,qGAAqG;AACrG,eAAO,MAAM,aAAa,GACxB,OAAO,SAAS,iBAAiB,EAAE,KAClC,GAAG,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAQjC,CAAC"}