@isoftdata/svelte-user-configuration 1.3.2 → 2.0.0

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.
@@ -1,41 +1,116 @@
1
- <script>import UserSiteAccess from "./UserSiteAccess.svelte";
2
- import PermissionList from "./PermissionList.svelte";
3
- import UserAccountInfo from "./UserAccountInfo.svelte";
4
- import UserGroupMembership from "./UserGroupMembership.svelte";
5
- export let siteLabel = "Site";
6
- export let userAccountInfoIcon = "user";
7
- export let groupMembershipIcon = "users";
8
- export let permissionListIcon = "user-lock";
9
- export let userSiteAccessIcon = "industry-windows";
10
- export let permissionListCardHeaderTitle = "Permissions";
11
- export let usernameInput = void 0;
12
- export let userAccount;
13
- export let canToggleActive = true;
14
- export let canEditAccountInfo = true;
15
- export let doSendPasswordRecoveryToken = false;
16
- export let hasPermissionToChangePassword = false;
17
- export let passwordValidationRules = void 0;
18
- export let error = void 0;
19
- export let success = void 0;
20
- export let deactivateUser = void 0;
21
- export let confirmPasswordSet = void 0;
22
- export let accountInfoChanged = void 0;
23
- export let sendPasswordRecoveryToken = void 0;
24
- export let generateNewActivationPIN = () => Promise.resolve();
25
- export let userSites;
26
- export let canEditSiteAccess = true;
27
- export let siteAccessChange = void 0;
28
- export let groupMembership;
29
- export let canEditGroupMembership = true;
30
- export let groupMembershipChange = void 0;
31
- export let permissions;
32
- export let permissionValueMap = /* @__PURE__ */ new Map();
33
- export let groupPermissionValueMap = void 0;
34
- export let permissionValueChange = void 0;
35
- let cardHeight;
1
+ <script lang="ts">
2
+ import type {
3
+ ErrorFn,
4
+ IconName,
5
+ UserSites,
6
+ SuccessFn,
7
+ SiteLabel,
8
+ UserAccount,
9
+ Permissions,
10
+ GroupMembership,
11
+ CanToggleActive,
12
+ DeactivateUserFn,
13
+ CanEditSiteAccess,
14
+ SiteAccessChangeFn,
15
+ PermissionValueMap,
16
+ CanEditAccountInfo,
17
+ ConfirmPasswordSetFn,
18
+ AccountInfoChangedFn,
19
+ CanEditGroupMembership,
20
+ PasswordValidationRules,
21
+ GroupMembershipChangeFn,
22
+ PermissionValueChangeFn,
23
+ GroupPermissionValueMap,
24
+ GenerateNewActivationPINFn,
25
+ DoSendPasswordRecoveryToken,
26
+ SendPasswordRecoveryTokenFn,
27
+ HasPermissionToChangePassword,
28
+ PermissionListCardHeaderTitle,
29
+ } from './util'
30
+
31
+ import UserSiteAccess from './UserSiteAccess.svelte'
32
+ import PermissionList from './PermissionList.svelte'
33
+ import UserAccountInfo from './UserAccountInfo.svelte'
34
+ import UserGroupMembership from './UserGroupMembership.svelte'
35
+
36
+ interface Props {
37
+ siteLabel?: SiteLabel
38
+ userAccountInfoIcon?: IconName
39
+ groupMembershipIcon?: IconName
40
+ permissionListIcon?: IconName
41
+ userSiteAccessIcon?: IconName
42
+ permissionListCardHeaderTitle?: PermissionListCardHeaderTitle
43
+ usernameInput?: HTMLInputElement | undefined
44
+ userAccount: UserAccount
45
+ canToggleActive?: CanToggleActive
46
+ canEditAccountInfo?: CanEditAccountInfo
47
+ doSendPasswordRecoveryToken?: DoSendPasswordRecoveryToken
48
+ hasPermissionToChangePassword?: HasPermissionToChangePassword
49
+ passwordValidationRules?: PasswordValidationRules | undefined
50
+ error?: ErrorFn
51
+ success?: SuccessFn
52
+ deactivateUser?: DeactivateUserFn
53
+ confirmPasswordSet?: ConfirmPasswordSetFn | undefined
54
+ accountInfoChanged?: AccountInfoChangedFn
55
+ sendPasswordRecoveryToken?: SendPasswordRecoveryTokenFn
56
+ generateNewActivationPIN?: GenerateNewActivationPINFn
57
+ userSites: UserSites
58
+ canEditSiteAccess?: CanEditSiteAccess
59
+ siteAccessChange?: SiteAccessChangeFn
60
+ groupMembership: GroupMembership
61
+ canEditGroupMembership?: CanEditGroupMembership
62
+ groupMembershipChange?: GroupMembershipChangeFn
63
+ permissions: Permissions
64
+ permissionValueMap?: PermissionValueMap
65
+ groupPermissionValueMap?: GroupPermissionValueMap
66
+ permissionValueChange?: PermissionValueChangeFn
67
+ userAccountInfo?: import('svelte').Snippet
68
+ siteAccess?: import('svelte').Snippet
69
+ userGroupMembership?: import('svelte').Snippet
70
+ permissionList?: import('svelte').Snippet
71
+ }
72
+
73
+ let {
74
+ siteLabel = 'Site',
75
+ userAccountInfoIcon = 'user',
76
+ groupMembershipIcon = 'users',
77
+ permissionListIcon = 'user-lock',
78
+ userSiteAccessIcon = 'industry-windows',
79
+ permissionListCardHeaderTitle = 'Permissions',
80
+ usernameInput = $bindable(undefined),
81
+ userAccount = $bindable(),
82
+ canToggleActive = true,
83
+ canEditAccountInfo = true,
84
+ doSendPasswordRecoveryToken = $bindable(false),
85
+ hasPermissionToChangePassword = false,
86
+ passwordValidationRules = undefined,
87
+ error = undefined,
88
+ success = undefined,
89
+ deactivateUser = undefined,
90
+ confirmPasswordSet = undefined,
91
+ accountInfoChanged = undefined,
92
+ sendPasswordRecoveryToken = undefined,
93
+ generateNewActivationPIN = () => Promise.resolve(),
94
+ userSites,
95
+ canEditSiteAccess = true,
96
+ siteAccessChange = undefined,
97
+ groupMembership,
98
+ canEditGroupMembership = true,
99
+ groupMembershipChange = undefined,
100
+ permissions,
101
+ permissionValueMap = new Map(),
102
+ groupPermissionValueMap = undefined,
103
+ permissionValueChange = undefined,
104
+ userAccountInfo,
105
+ siteAccess,
106
+ userGroupMembership,
107
+ permissionList,
108
+ }: Props = $props()
109
+
110
+ let cardHeight: number | undefined = $state()
36
111
  </script>
37
112
 
38
- <div class="form-row">
113
+ <div class="row">
39
114
  <div class="col-12 col-lg-4 mb-2">
40
115
  <UserAccountInfo
41
116
  bind:userAccount
@@ -55,7 +130,7 @@ let cardHeight;
55
130
  {sendPasswordRecoveryToken}
56
131
  icon={userAccountInfoIcon}
57
132
  >
58
- <slot name="userAccountInfo"></slot>
133
+ {@render userAccountInfo?.()}
59
134
  </UserAccountInfo>
60
135
  </div>
61
136
  <div class="col-12 col-lg-4 mb-2">
@@ -67,7 +142,7 @@ let cardHeight;
67
142
  icon={userSiteAccessIcon}
68
143
  style="height: {cardHeight}px;"
69
144
  >
70
- <slot name="siteAccess"></slot>
145
+ {@render siteAccess?.()}
71
146
  </UserSiteAccess>
72
147
  </div>
73
148
  <div class="col-12 col-lg-4 mb-2">
@@ -78,11 +153,11 @@ let cardHeight;
78
153
  icon={groupMembershipIcon}
79
154
  style="height: {cardHeight}px;"
80
155
  >
81
- <slot name="userGroupMembership"></slot>
156
+ {@render userGroupMembership?.()}
82
157
  </UserGroupMembership>
83
158
  </div>
84
159
  </div>
85
- <div class="form-row">
160
+ <div class="row">
86
161
  <div class="col-12">
87
162
  <PermissionList
88
163
  {siteLabel}
@@ -93,7 +168,7 @@ let cardHeight;
93
168
  icon={permissionListIcon}
94
169
  cardHeaderTitle={permissionListCardHeaderTitle}
95
170
  >
96
- <slot name="permissionList"></slot>
171
+ {@render permissionList?.()}
97
172
  </PermissionList>
98
173
  </div>
99
174
  </div>
@@ -1,53 +1,40 @@
1
- import { SvelteComponent } from "svelte";
2
1
  import type { ErrorFn, IconName, UserSites, SuccessFn, SiteLabel, UserAccount, Permissions, GroupMembership, CanToggleActive, DeactivateUserFn, CanEditSiteAccess, SiteAccessChangeFn, PermissionValueMap, CanEditAccountInfo, ConfirmPasswordSetFn, AccountInfoChangedFn, CanEditGroupMembership, PasswordValidationRules, GroupMembershipChangeFn, PermissionValueChangeFn, GroupPermissionValueMap, GenerateNewActivationPINFn, DoSendPasswordRecoveryToken, SendPasswordRecoveryTokenFn, HasPermissionToChangePassword, PermissionListCardHeaderTitle } from './util';
3
- declare const __propDef: {
4
- props: {
5
- siteLabel?: SiteLabel;
6
- userAccountInfoIcon?: IconName;
7
- groupMembershipIcon?: IconName;
8
- permissionListIcon?: IconName;
9
- userSiteAccessIcon?: IconName;
10
- permissionListCardHeaderTitle?: PermissionListCardHeaderTitle;
11
- usernameInput?: HTMLInputElement | undefined;
12
- userAccount: UserAccount;
13
- canToggleActive?: CanToggleActive;
14
- canEditAccountInfo?: CanEditAccountInfo;
15
- doSendPasswordRecoveryToken?: DoSendPasswordRecoveryToken;
16
- hasPermissionToChangePassword?: HasPermissionToChangePassword;
17
- passwordValidationRules?: PasswordValidationRules | undefined;
18
- error?: ErrorFn;
19
- success?: SuccessFn;
20
- deactivateUser?: DeactivateUserFn;
21
- confirmPasswordSet?: ConfirmPasswordSetFn | undefined;
22
- accountInfoChanged?: AccountInfoChangedFn;
23
- sendPasswordRecoveryToken?: SendPasswordRecoveryTokenFn;
24
- generateNewActivationPIN?: GenerateNewActivationPINFn;
25
- userSites: UserSites;
26
- canEditSiteAccess?: CanEditSiteAccess;
27
- siteAccessChange?: SiteAccessChangeFn;
28
- groupMembership: GroupMembership;
29
- canEditGroupMembership?: CanEditGroupMembership;
30
- groupMembershipChange?: GroupMembershipChangeFn;
31
- permissions: Permissions;
32
- permissionValueMap?: PermissionValueMap;
33
- groupPermissionValueMap?: GroupPermissionValueMap;
34
- permissionValueChange?: PermissionValueChangeFn;
35
- };
36
- events: {
37
- [evt: string]: CustomEvent<any>;
38
- };
39
- slots: {
40
- userAccountInfo: {};
41
- siteAccess: {};
42
- userGroupMembership: {};
43
- permissionList: {};
44
- };
45
- exports?: {} | undefined;
46
- bindings?: string | undefined;
47
- };
48
- export type UserConfigurationProps = typeof __propDef.props;
49
- export type UserConfigurationEvents = typeof __propDef.events;
50
- export type UserConfigurationSlots = typeof __propDef.slots;
51
- export default class UserConfiguration extends SvelteComponent<UserConfigurationProps, UserConfigurationEvents, UserConfigurationSlots> {
2
+ interface Props {
3
+ siteLabel?: SiteLabel;
4
+ userAccountInfoIcon?: IconName;
5
+ groupMembershipIcon?: IconName;
6
+ permissionListIcon?: IconName;
7
+ userSiteAccessIcon?: IconName;
8
+ permissionListCardHeaderTitle?: PermissionListCardHeaderTitle;
9
+ usernameInput?: HTMLInputElement | undefined;
10
+ userAccount: UserAccount;
11
+ canToggleActive?: CanToggleActive;
12
+ canEditAccountInfo?: CanEditAccountInfo;
13
+ doSendPasswordRecoveryToken?: DoSendPasswordRecoveryToken;
14
+ hasPermissionToChangePassword?: HasPermissionToChangePassword;
15
+ passwordValidationRules?: PasswordValidationRules | undefined;
16
+ error?: ErrorFn;
17
+ success?: SuccessFn;
18
+ deactivateUser?: DeactivateUserFn;
19
+ confirmPasswordSet?: ConfirmPasswordSetFn | undefined;
20
+ accountInfoChanged?: AccountInfoChangedFn;
21
+ sendPasswordRecoveryToken?: SendPasswordRecoveryTokenFn;
22
+ generateNewActivationPIN?: GenerateNewActivationPINFn;
23
+ userSites: UserSites;
24
+ canEditSiteAccess?: CanEditSiteAccess;
25
+ siteAccessChange?: SiteAccessChangeFn;
26
+ groupMembership: GroupMembership;
27
+ canEditGroupMembership?: CanEditGroupMembership;
28
+ groupMembershipChange?: GroupMembershipChangeFn;
29
+ permissions: Permissions;
30
+ permissionValueMap?: PermissionValueMap;
31
+ groupPermissionValueMap?: GroupPermissionValueMap;
32
+ permissionValueChange?: PermissionValueChangeFn;
33
+ userAccountInfo?: import('svelte').Snippet;
34
+ siteAccess?: import('svelte').Snippet;
35
+ userGroupMembership?: import('svelte').Snippet;
36
+ permissionList?: import('svelte').Snippet;
52
37
  }
53
- export {};
38
+ declare const UserConfiguration: import("svelte").Component<Props, {}, "doSendPasswordRecoveryToken" | "userAccount" | "usernameInput">;
39
+ type UserConfiguration = ReturnType<typeof UserConfiguration>;
40
+ export default UserConfiguration;
@@ -1,17 +1,41 @@
1
- <script>import { getContext } from "svelte";
2
- import Icon from "@isoftdata/svelte-icon";
3
- import Checkbox from "@isoftdata/svelte-checkbox";
4
- import { translate as defaultTranslate } from "@isoftdata/utility-string";
5
- const { t: translate } = getContext("i18next") || { t: defaultTranslate };
6
- export let groupMembership;
7
- export let canEditGroupMembership = true;
8
- export let groupMembershipChange = void 0;
9
- export let icon = "users";
1
+ <script lang="ts">
2
+ import type { i18n } from 'i18next'
3
+ import type { IconName, HTMLDivAttributes } from './'
4
+
5
+ import { getContext } from 'svelte'
6
+ import Icon from '@isoftdata/svelte-icon'
7
+ import Checkbox from '@isoftdata/svelte-checkbox'
8
+ import { translate as defaultTranslate } from '@isoftdata/utility-string'
9
+
10
+ const { t: translate } = getContext<i18n>('i18next') || { t: defaultTranslate }
11
+
12
+ interface GroupMembership {
13
+ id: number
14
+ name: string
15
+ isMember: boolean
16
+ }
17
+
18
+ interface Props extends HTMLDivAttributes {
19
+ groupMembership: Array<GroupMembership>
20
+ canEditGroupMembership?: boolean
21
+ groupMembershipChange?: ((groupMembership: GroupMembership) => void | Promise<void>) | undefined
22
+ icon?: IconName
23
+ children?: import('svelte').Snippet
24
+ }
25
+
26
+ let {
27
+ groupMembership,
28
+ canEditGroupMembership = true,
29
+ groupMembershipChange = undefined,
30
+ icon = 'users',
31
+ children,
32
+ ...rest
33
+ }: Props = $props()
10
34
  </script>
11
35
 
12
36
  <div
13
37
  class="card"
14
- {...$$restProps}
38
+ {...rest}
15
39
  >
16
40
  <div class="card-header">
17
41
  <h5 class="mb-0">
@@ -23,18 +47,18 @@ export let icon = "users";
23
47
  class="list-group list-group-flush h-100"
24
48
  style="overflow-y: auto;"
25
49
  >
26
- {#each groupMembership as { id, name, isMember } (id)}
50
+ {#each groupMembership as { id, name, isMember }, index (id)}
27
51
  <li class="list-group-item">
28
52
  <Checkbox
29
53
  label={name}
30
- bind:checked={isMember}
54
+ bind:checked={groupMembership[index].isMember}
31
55
  disabled={!canEditGroupMembership}
32
- on:change={async () => {
56
+ onchange={async () => {
33
57
  await groupMembershipChange?.({ id, name, isMember })
34
58
  }}
35
59
  />
36
60
  </li>
37
61
  {/each}
38
62
  </ul>
39
- <slot></slot>
63
+ {@render children?.()}
40
64
  </div>
@@ -1,32 +1,16 @@
1
- import { SvelteComponent } from "svelte";
2
1
  import type { IconName, HTMLDivAttributes } from './';
3
- declare const __propDef: {
4
- props: HTMLDivAttributes & {
5
- groupMembership: Array<{
6
- id: number;
7
- name: string;
8
- isMember: boolean;
9
- }>;
10
- canEditGroupMembership?: boolean;
11
- groupMembershipChange?: ((groupMembership: {
12
- id: number;
13
- name: string;
14
- isMember: boolean;
15
- }) => void | Promise<void>) | undefined;
16
- icon?: IconName;
17
- };
18
- events: {
19
- [evt: string]: CustomEvent<any>;
20
- };
21
- slots: {
22
- default: {};
23
- };
24
- exports?: {} | undefined;
25
- bindings?: string | undefined;
26
- };
27
- export type UserGroupMembershipProps = typeof __propDef.props;
28
- export type UserGroupMembershipEvents = typeof __propDef.events;
29
- export type UserGroupMembershipSlots = typeof __propDef.slots;
30
- export default class UserGroupMembership extends SvelteComponent<UserGroupMembershipProps, UserGroupMembershipEvents, UserGroupMembershipSlots> {
2
+ interface GroupMembership {
3
+ id: number;
4
+ name: string;
5
+ isMember: boolean;
31
6
  }
32
- export {};
7
+ interface Props extends HTMLDivAttributes {
8
+ groupMembership: Array<GroupMembership>;
9
+ canEditGroupMembership?: boolean;
10
+ groupMembershipChange?: ((groupMembership: GroupMembership) => void | Promise<void>) | undefined;
11
+ icon?: IconName;
12
+ children?: import('svelte').Snippet;
13
+ }
14
+ declare const UserGroupMembership: import("svelte").Component<Props, {}, "">;
15
+ type UserGroupMembership = ReturnType<typeof UserGroupMembership>;
16
+ export default UserGroupMembership;
@@ -1,18 +1,45 @@
1
- <script>import { getContext } from "svelte";
2
- import Icon from "@isoftdata/svelte-icon";
3
- import Checkbox from "@isoftdata/svelte-checkbox";
4
- import { translate as defaultTranslate } from "@isoftdata/utility-string";
5
- const { t: translate } = getContext("i18next") || { t: defaultTranslate };
6
- export let userSites;
7
- export let siteLabel = "Site";
8
- export let canEditSiteAccess = true;
9
- export let siteAccessChange = void 0;
10
- export let icon = "industry-windows";
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte'
3
+ import type { i18n } from 'i18next'
4
+ import type { IconName, HTMLDivAttributes, SiteLabel } from './'
5
+
6
+ import { getContext } from 'svelte'
7
+ import Icon from '@isoftdata/svelte-icon'
8
+ import Checkbox from '@isoftdata/svelte-checkbox'
9
+ import { translate as defaultTranslate } from '@isoftdata/utility-string'
10
+
11
+ const { t: translate } = getContext<i18n>('i18next') || { t: defaultTranslate }
12
+
13
+ interface SiteAccess {
14
+ id: number
15
+ code: string
16
+ name: string
17
+ isAuthorized: boolean
18
+ }
19
+
20
+ interface Props extends HTMLDivAttributes {
21
+ userSites: Array<SiteAccess>
22
+ siteLabel?: SiteLabel
23
+ canEditSiteAccess?: boolean
24
+ siteAccessChange?: ((siteAccess: SiteAccess) => void | Promise<void>) | undefined
25
+ icon?: IconName
26
+ children?: Snippet
27
+ }
28
+
29
+ let {
30
+ userSites = $bindable(),
31
+ siteLabel = 'Site',
32
+ canEditSiteAccess = true,
33
+ siteAccessChange = undefined,
34
+ icon = 'industry-windows',
35
+ children,
36
+ ...rest
37
+ }: Props = $props()
11
38
  </script>
12
39
 
13
40
  <div
14
41
  class="card"
15
- {...$$restProps}
42
+ {...rest}
16
43
  >
17
44
  <div class="card-header">
18
45
  <h5 class="mb-0"><Icon {icon} /> {translate(`user.configuration.${siteLabel}Access`, `${siteLabel} Access`)}</h5>
@@ -27,12 +54,12 @@ export let icon = "industry-windows";
27
54
  label="{code} - {name}"
28
55
  bind:checked={userSites[i].isAuthorized}
29
56
  disabled={!canEditSiteAccess}
30
- on:change={async () => {
57
+ onchange={async () => {
31
58
  await siteAccessChange?.(userSites[i])
32
59
  }}
33
60
  />
34
61
  </li>
35
62
  {/each}
36
63
  </ul>
37
- <slot></slot>
64
+ {@render children?.()}
38
65
  </div>
@@ -1,35 +1,19 @@
1
- import { SvelteComponent } from "svelte";
1
+ import type { Snippet } from 'svelte';
2
2
  import type { IconName, HTMLDivAttributes, SiteLabel } from './';
3
- declare const __propDef: {
4
- props: HTMLDivAttributes & {
5
- userSites: Array<{
6
- id: number;
7
- code: string;
8
- name: string;
9
- isAuthorized: boolean;
10
- }>;
11
- siteLabel?: SiteLabel;
12
- canEditSiteAccess?: boolean;
13
- siteAccessChange?: ((siteAccess: {
14
- id: number;
15
- code: string;
16
- name: string;
17
- isAuthorized: boolean;
18
- }) => void | Promise<void>) | undefined;
19
- icon?: IconName;
20
- };
21
- events: {
22
- [evt: string]: CustomEvent<any>;
23
- };
24
- slots: {
25
- default: {};
26
- };
27
- exports?: {} | undefined;
28
- bindings?: string | undefined;
29
- };
30
- export type UserSiteAccessProps = typeof __propDef.props;
31
- export type UserSiteAccessEvents = typeof __propDef.events;
32
- export type UserSiteAccessSlots = typeof __propDef.slots;
33
- export default class UserSiteAccess extends SvelteComponent<UserSiteAccessProps, UserSiteAccessEvents, UserSiteAccessSlots> {
3
+ interface SiteAccess {
4
+ id: number;
5
+ code: string;
6
+ name: string;
7
+ isAuthorized: boolean;
34
8
  }
35
- export {};
9
+ interface Props extends HTMLDivAttributes {
10
+ userSites: Array<SiteAccess>;
11
+ siteLabel?: SiteLabel;
12
+ canEditSiteAccess?: boolean;
13
+ siteAccessChange?: ((siteAccess: SiteAccess) => void | Promise<void>) | undefined;
14
+ icon?: IconName;
15
+ children?: Snippet;
16
+ }
17
+ declare const UserSiteAccess: import("svelte").Component<Props, {}, "userSites">;
18
+ type UserSiteAccess = ReturnType<typeof UserSiteAccess>;
19
+ export default UserSiteAccess;
package/dist/util.d.ts CHANGED
@@ -18,8 +18,7 @@ export interface UserAccount {
18
18
  status: 'ACTIVE' | 'DEACTIVATED' | 'LOCKED' | 'PENDING_ACTIVATION';
19
19
  newPassword?: string;
20
20
  currentPassword?: string;
21
- lastPasswordResetDate?: Date;
22
- lastAccessDate?: Date;
21
+ lastPasswordResetDate?: Date | null;
23
22
  userActivationData?: {
24
23
  activationPIN: string | null;
25
24
  activationPINExpiration: Date | null;
@@ -31,28 +30,28 @@ export type HTMLDivAttributes = HTMLAttributes<HTMLDivElement>;
31
30
  export type SiteLabel = string;
32
31
  export type PermissionValue = 'NONE' | 'SITE' | 'GLOBAL';
33
32
  export declare const valueRank: Record<PermissionValue, number>;
34
- export type GenerateNewActivationPINFn = ComponentProps<UserAccountInfo>['generateNewActivationPIN'];
35
- export type SuccessFn = ComponentProps<UserAccountInfo>['success'];
36
- export type ErrorFn = ComponentProps<UserAccountInfo>['error'];
37
- export type AccountInfoChangedFn = ComponentProps<UserAccountInfo>['accountInfoChanged'];
38
- export type CanEditAccountInfo = ComponentProps<UserAccountInfo>['canEditAccountInfo'];
39
- export type CanToggleActive = ComponentProps<UserAccountInfo>['canToggleActive'];
40
- export type HasPermissionToChangePassword = ComponentProps<UserAccountInfo>['hasPermissionToChangePassword'];
41
- export type ConfirmPasswordSetFn = ComponentProps<PasswordSetModal>['confirmPasswordSet'];
42
- export type DeactivateUserFn = ComponentProps<DeactivateUserModal>['deactivateUser'];
43
- export type DoSendPasswordRecoveryToken = ComponentProps<PasswordRecoveryModal>['doSendPasswordRecoveryToken'];
44
- export type SendPasswordRecoveryTokenFn = ComponentProps<PasswordRecoveryModal>['sendPasswordRecoveryToken'];
45
- export type UserSites = ComponentProps<UserSiteAccess>['userSites'];
46
- export type CanEditSiteAccess = ComponentProps<UserSiteAccess>['canEditSiteAccess'];
47
- export type SiteAccessChangeFn = ComponentProps<UserSiteAccess>['siteAccessChange'];
48
- export type GroupMembership = ComponentProps<UserGroupMembership>['groupMembership'];
49
- export type GroupMembershipChangeFn = ComponentProps<UserGroupMembership>['groupMembershipChange'];
50
- export type CanEditGroupMembership = ComponentProps<UserGroupMembership>['canEditGroupMembership'];
51
- export type Permissions = ComponentProps<PermissionList>['permissions'];
52
- export type PermissionValueMap = ComponentProps<PermissionList>['permissionValueMap'];
53
- export type GroupPermissionValueMap = ComponentProps<PermissionList>['groupPermissionValueMap'];
54
- export type PermissionValueChangeFn = ComponentProps<PermissionList>['permissionValueChange'];
55
- export type PermissionListCardHeaderTitle = ComponentProps<PermissionList>['cardHeaderTitle'];
33
+ export type GenerateNewActivationPINFn = ComponentProps<typeof UserAccountInfo>['generateNewActivationPIN'];
34
+ export type SuccessFn = ComponentProps<typeof UserAccountInfo>['success'];
35
+ export type ErrorFn = ComponentProps<typeof UserAccountInfo>['error'];
36
+ export type AccountInfoChangedFn = ComponentProps<typeof UserAccountInfo>['accountInfoChanged'];
37
+ export type CanEditAccountInfo = ComponentProps<typeof UserAccountInfo>['canEditAccountInfo'];
38
+ export type CanToggleActive = ComponentProps<typeof UserAccountInfo>['canToggleActive'];
39
+ export type HasPermissionToChangePassword = ComponentProps<typeof UserAccountInfo>['hasPermissionToChangePassword'];
40
+ export type ConfirmPasswordSetFn = ComponentProps<typeof PasswordSetModal>['confirmPasswordSet'];
41
+ export type DeactivateUserFn = ComponentProps<typeof DeactivateUserModal>['deactivateUser'];
42
+ export type DoSendPasswordRecoveryToken = ComponentProps<typeof PasswordRecoveryModal>['doSendPasswordRecoveryToken'];
43
+ export type SendPasswordRecoveryTokenFn = ComponentProps<typeof PasswordRecoveryModal>['sendPasswordRecoveryToken'];
44
+ export type UserSites = ComponentProps<typeof UserSiteAccess>['userSites'];
45
+ export type CanEditSiteAccess = ComponentProps<typeof UserSiteAccess>['canEditSiteAccess'];
46
+ export type SiteAccessChangeFn = ComponentProps<typeof UserSiteAccess>['siteAccessChange'];
47
+ export type GroupMembership = ComponentProps<typeof UserGroupMembership>['groupMembership'];
48
+ export type GroupMembershipChangeFn = ComponentProps<typeof UserGroupMembership>['groupMembershipChange'];
49
+ export type CanEditGroupMembership = ComponentProps<typeof UserGroupMembership>['canEditGroupMembership'];
50
+ export type Permissions = ComponentProps<typeof PermissionList>['permissions'];
51
+ export type PermissionValueMap = ComponentProps<typeof PermissionList>['permissionValueMap'];
52
+ export type GroupPermissionValueMap = ComponentProps<typeof PermissionList>['groupPermissionValueMap'];
53
+ export type PermissionValueChangeFn = ComponentProps<typeof PermissionList>['permissionValueChange'];
54
+ export type PermissionListCardHeaderTitle = ComponentProps<typeof PermissionList>['cardHeaderTitle'];
56
55
  /** Returns a Map where the key is the `permissioniId` and the value is the highest permission level for the given group membership
57
56
  *
58
57
  * You'll probably want to call this in your code when the group membership changes, and pass the result to the `groupPermissionValueMap` prop of the `PermissionList` component.