@thunderid/react 0.3.3 → 0.3.5
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/dist/ThunderIDReactClient.d.ts +1 -5
- package/dist/ThunderIDReactClient.d.ts.map +1 -1
- package/dist/ThunderIDReactClient.js +1 -68
- package/dist/ThunderIDReactClient.js.map +1 -1
- package/dist/cjs/ThunderIDReactClient.cjs +0 -67
- package/dist/cjs/ThunderIDReactClient.cjs.map +1 -1
- package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.cjs +1 -1
- package/dist/cjs/components/presentation/UserAvatar/BaseUserAvatar.cjs +57 -0
- package/dist/cjs/components/presentation/UserAvatar/BaseUserAvatar.cjs.map +1 -0
- package/dist/cjs/components/presentation/UserAvatar/UserAvatar.cjs +36 -0
- package/dist/cjs/components/presentation/UserAvatar/UserAvatar.cjs.map +1 -0
- package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs +6 -5
- package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs +3 -15
- package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs.map +1 -1
- package/dist/cjs/contexts/Theme/ThemeContext.cjs.map +1 -1
- package/dist/cjs/contexts/Theme/ThemeProvider.cjs +2 -5
- package/dist/cjs/contexts/Theme/ThemeProvider.cjs.map +1 -1
- package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs +0 -2
- package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs.map +1 -1
- package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs +14 -90
- package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs.map +1 -1
- package/dist/cjs/index.cjs +6 -51
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.js +1 -1
- package/dist/components/presentation/UserAvatar/BaseUserAvatar.d.ts +50 -0
- package/dist/components/presentation/UserAvatar/BaseUserAvatar.d.ts.map +1 -0
- package/dist/components/presentation/UserAvatar/BaseUserAvatar.js +55 -0
- package/dist/components/presentation/UserAvatar/BaseUserAvatar.js.map +1 -0
- package/dist/components/presentation/UserAvatar/UserAvatar.d.ts +46 -0
- package/dist/components/presentation/UserAvatar/UserAvatar.d.ts.map +1 -0
- package/dist/components/presentation/UserAvatar/UserAvatar.js +34 -0
- package/dist/components/presentation/UserAvatar/UserAvatar.js.map +1 -0
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.d.ts.map +1 -1
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.js +6 -5
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.js.map +1 -1
- package/dist/components/presentation/auth/AuthOptionFactory.d.ts +2 -2
- package/dist/components/presentation/auth/AuthOptionFactory.d.ts.map +1 -1
- package/dist/components/presentation/auth/AuthOptionFactory.js +3 -15
- package/dist/components/presentation/auth/AuthOptionFactory.js.map +1 -1
- package/dist/contexts/Theme/ThemeContext.d.ts +0 -12
- package/dist/contexts/Theme/ThemeContext.d.ts.map +1 -1
- package/dist/contexts/Theme/ThemeContext.js.map +1 -1
- package/dist/contexts/Theme/ThemeProvider.d.ts +0 -4
- package/dist/contexts/Theme/ThemeProvider.d.ts.map +1 -1
- package/dist/contexts/Theme/ThemeProvider.js +2 -5
- package/dist/contexts/Theme/ThemeProvider.js.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDContext.d.ts +2 -3
- package/dist/contexts/ThunderID/ThunderIDContext.d.ts.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDContext.js +0 -2
- package/dist/contexts/ThunderID/ThunderIDContext.js.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDProvider.d.ts.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDProvider.js +15 -91
- package/dist/contexts/ThunderID/ThunderIDProvider.js.map +1 -1
- package/dist/index.d.ts +4 -40
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -27
- package/package.json +2 -2
- package/dist/api/createOrganization.d.ts +0 -86
- package/dist/api/createOrganization.d.ts.map +0 -1
- package/dist/api/createOrganization.js +0 -80
- package/dist/api/createOrganization.js.map +0 -1
- package/dist/api/getAllOrganizations.d.ts +0 -78
- package/dist/api/getAllOrganizations.d.ts.map +0 -1
- package/dist/api/getAllOrganizations.js +0 -71
- package/dist/api/getAllOrganizations.js.map +0 -1
- package/dist/api/getMeOrganizations.d.ts +0 -82
- package/dist/api/getMeOrganizations.d.ts.map +0 -1
- package/dist/api/getMeOrganizations.js +0 -75
- package/dist/api/getMeOrganizations.js.map +0 -1
- package/dist/api/getOrganization.d.ts +0 -74
- package/dist/api/getOrganization.d.ts.map +0 -1
- package/dist/api/getOrganization.js +0 -67
- package/dist/api/getOrganization.js.map +0 -1
- package/dist/api/getSchemas.d.ts +0 -72
- package/dist/api/getSchemas.d.ts.map +0 -1
- package/dist/api/getSchemas.js +0 -65
- package/dist/api/getSchemas.js.map +0 -1
- package/dist/api/updateOrganization.d.ts +0 -81
- package/dist/api/updateOrganization.d.ts.map +0 -1
- package/dist/api/updateOrganization.js +0 -74
- package/dist/api/updateOrganization.js.map +0 -1
- package/dist/cjs/api/createOrganization.cjs +0 -82
- package/dist/cjs/api/createOrganization.cjs.map +0 -1
- package/dist/cjs/api/getAllOrganizations.cjs +0 -73
- package/dist/cjs/api/getAllOrganizations.cjs.map +0 -1
- package/dist/cjs/api/getMeOrganizations.cjs +0 -77
- package/dist/cjs/api/getMeOrganizations.cjs.map +0 -1
- package/dist/cjs/api/getOrganization.cjs +0 -69
- package/dist/cjs/api/getOrganization.cjs.map +0 -1
- package/dist/cjs/api/getSchemas.cjs +0 -67
- package/dist/cjs/api/getSchemas.cjs.map +0 -1
- package/dist/cjs/api/updateOrganization.cjs +0 -76
- package/dist/cjs/api/updateOrganization.cjs.map +0 -1
- package/dist/cjs/components/control/OrganizationContext/OrganizationContext.cjs +0 -34
- package/dist/cjs/components/control/OrganizationContext/OrganizationContext.cjs.map +0 -1
- package/dist/cjs/components/control/OrganizationContext/OrganizationContextController.cjs +0 -58
- package/dist/cjs/components/control/OrganizationContext/OrganizationContextController.cjs.map +0 -1
- package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.cjs +0 -183
- package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.cjs.map +0 -1
- package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.styles.cjs +0 -150
- package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.styles.cjs.map +0 -1
- package/dist/cjs/components/presentation/CreateOrganization/CreateOrganization.cjs +0 -90
- package/dist/cjs/components/presentation/CreateOrganization/CreateOrganization.cjs.map +0 -1
- package/dist/cjs/components/presentation/Organization/BaseOrganization.cjs +0 -41
- package/dist/cjs/components/presentation/Organization/BaseOrganization.cjs.map +0 -1
- package/dist/cjs/components/presentation/Organization/Organization.cjs +0 -49
- package/dist/cjs/components/presentation/Organization/Organization.cjs.map +0 -1
- package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.cjs +0 -257
- package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.cjs.map +0 -1
- package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.styles.cjs +0 -236
- package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.styles.cjs.map +0 -1
- package/dist/cjs/components/presentation/OrganizationList/OrganizationList.cjs +0 -86
- package/dist/cjs/components/presentation/OrganizationList/OrganizationList.cjs.map +0 -1
- package/dist/cjs/components/presentation/OrganizationList/OrganizationList.styles.cjs +0 -75
- package/dist/cjs/components/presentation/OrganizationList/OrganizationList.styles.cjs.map +0 -1
- package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.cjs +0 -328
- package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.cjs.map +0 -1
- package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.cjs +0 -166
- package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.cjs.map +0 -1
- package/dist/cjs/components/presentation/OrganizationProfile/OrganizationProfile.cjs +0 -126
- package/dist/cjs/components/presentation/OrganizationProfile/OrganizationProfile.cjs.map +0 -1
- package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.cjs +0 -288
- package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.cjs.map +0 -1
- package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.cjs +0 -237
- package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.cjs.map +0 -1
- package/dist/cjs/components/presentation/OrganizationSwitcher/OrganizationSwitcher.cjs +0 -127
- package/dist/cjs/components/presentation/OrganizationSwitcher/OrganizationSwitcher.cjs.map +0 -1
- package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.cjs +0 -183
- package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.cjs.map +0 -1
- package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.cjs +0 -128
- package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.cjs.map +0 -1
- package/dist/cjs/components/primitives/Icons/Building.cjs +0 -75
- package/dist/cjs/components/primitives/Icons/Building.cjs.map +0 -1
- package/dist/cjs/contexts/Branding/BrandingContext.cjs +0 -12
- package/dist/cjs/contexts/Branding/BrandingContext.cjs.map +0 -1
- package/dist/cjs/contexts/Branding/BrandingProvider.cjs +0 -96
- package/dist/cjs/contexts/Branding/BrandingProvider.cjs.map +0 -1
- package/dist/cjs/contexts/Branding/useBrandingContext.cjs +0 -40
- package/dist/cjs/contexts/Branding/useBrandingContext.cjs.map +0 -1
- package/dist/cjs/contexts/Organization/OrganizationContext.cjs +0 -27
- package/dist/cjs/contexts/Organization/OrganizationContext.cjs.map +0 -1
- package/dist/cjs/contexts/Organization/OrganizationProvider.cjs +0 -97
- package/dist/cjs/contexts/Organization/OrganizationProvider.cjs.map +0 -1
- package/dist/cjs/contexts/Organization/useOrganization.cjs +0 -100
- package/dist/cjs/contexts/Organization/useOrganization.cjs.map +0 -1
- package/dist/cjs/hooks/useBranding.cjs +0 -71
- package/dist/cjs/hooks/useBranding.cjs.map +0 -1
- package/dist/components/control/OrganizationContext/OrganizationContext.d.ts +0 -40
- package/dist/components/control/OrganizationContext/OrganizationContext.d.ts.map +0 -1
- package/dist/components/control/OrganizationContext/OrganizationContext.js +0 -32
- package/dist/components/control/OrganizationContext/OrganizationContext.js.map +0 -1
- package/dist/components/control/OrganizationContext/OrganizationContextController.d.ts +0 -35
- package/dist/components/control/OrganizationContext/OrganizationContextController.d.ts.map +0 -1
- package/dist/components/control/OrganizationContext/OrganizationContextController.js +0 -55
- package/dist/components/control/OrganizationContext/OrganizationContextController.js.map +0 -1
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.d.ts +0 -60
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.d.ts.map +0 -1
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.js +0 -178
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.js.map +0 -1
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.d.ts +0 -27
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.d.ts.map +0 -1
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.js +0 -147
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.js.map +0 -1
- package/dist/components/presentation/CreateOrganization/CreateOrganization.d.ts +0 -68
- package/dist/components/presentation/CreateOrganization/CreateOrganization.d.ts.map +0 -1
- package/dist/components/presentation/CreateOrganization/CreateOrganization.js +0 -87
- package/dist/components/presentation/CreateOrganization/CreateOrganization.js.map +0 -1
- package/dist/components/presentation/Organization/BaseOrganization.d.ts +0 -67
- package/dist/components/presentation/Organization/BaseOrganization.d.ts.map +0 -1
- package/dist/components/presentation/Organization/BaseOrganization.js +0 -39
- package/dist/components/presentation/Organization/BaseOrganization.js.map +0 -1
- package/dist/components/presentation/Organization/Organization.d.ts +0 -67
- package/dist/components/presentation/Organization/Organization.d.ts.map +0 -1
- package/dist/components/presentation/Organization/Organization.js +0 -47
- package/dist/components/presentation/Organization/Organization.js.map +0 -1
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.d.ts +0 -135
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.d.ts.map +0 -1
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.js +0 -252
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.js.map +0 -1
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.d.ts +0 -27
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.d.ts.map +0 -1
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.js +0 -233
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.js.map +0 -1
- package/dist/components/presentation/OrganizationList/OrganizationList.d.ts +0 -93
- package/dist/components/presentation/OrganizationList/OrganizationList.d.ts.map +0 -1
- package/dist/components/presentation/OrganizationList/OrganizationList.js +0 -82
- package/dist/components/presentation/OrganizationList/OrganizationList.js.map +0 -1
- package/dist/components/presentation/OrganizationList/OrganizationList.styles.d.ts +0 -27
- package/dist/components/presentation/OrganizationList/OrganizationList.styles.d.ts.map +0 -1
- package/dist/components/presentation/OrganizationList/OrganizationList.styles.js +0 -72
- package/dist/components/presentation/OrganizationList/OrganizationList.styles.js.map +0 -1
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.d.ts +0 -160
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.d.ts.map +0 -1
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.js +0 -323
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.js.map +0 -1
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.d.ts +0 -27
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.d.ts.map +0 -1
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.js +0 -163
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.js.map +0 -1
- package/dist/components/presentation/OrganizationProfile/OrganizationProfile.d.ts +0 -120
- package/dist/components/presentation/OrganizationProfile/OrganizationProfile.d.ts.map +0 -1
- package/dist/components/presentation/OrganizationProfile/OrganizationProfile.js +0 -122
- package/dist/components/presentation/OrganizationProfile/OrganizationProfile.js.map +0 -1
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.d.ts +0 -149
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.d.ts.map +0 -1
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.js +0 -282
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.js.map +0 -1
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.d.ts +0 -27
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.d.ts.map +0 -1
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.js +0 -234
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.js.map +0 -1
- package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.d.ts +0 -71
- package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.d.ts.map +0 -1
- package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.js +0 -124
- package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.js.map +0 -1
- package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.d.ts +0 -30
- package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.d.ts.map +0 -1
- package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.js +0 -179
- package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.js.map +0 -1
- package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.d.ts +0 -21
- package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.d.ts.map +0 -1
- package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.js +0 -125
- package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.js.map +0 -1
- package/dist/components/presentation/auth/OrganizationUnitPicker/index.d.ts +0 -20
- package/dist/components/presentation/auth/OrganizationUnitPicker/index.d.ts.map +0 -1
- package/dist/components/primitives/Icons/Building.js +0 -73
- package/dist/components/primitives/Icons/Building.js.map +0 -1
- package/dist/contexts/Branding/BrandingContext.d.ts +0 -53
- package/dist/contexts/Branding/BrandingContext.d.ts.map +0 -1
- package/dist/contexts/Branding/BrandingContext.js +0 -10
- package/dist/contexts/Branding/BrandingContext.js.map +0 -1
- package/dist/contexts/Branding/BrandingProvider.d.ts +0 -89
- package/dist/contexts/Branding/BrandingProvider.d.ts.map +0 -1
- package/dist/contexts/Branding/BrandingProvider.js +0 -92
- package/dist/contexts/Branding/BrandingProvider.js.map +0 -1
- package/dist/contexts/Branding/useBrandingContext.d.ts +0 -45
- package/dist/contexts/Branding/useBrandingContext.d.ts.map +0 -1
- package/dist/contexts/Branding/useBrandingContext.js +0 -38
- package/dist/contexts/Branding/useBrandingContext.js.map +0 -1
- package/dist/contexts/Organization/OrganizationContext.d.ts +0 -41
- package/dist/contexts/Organization/OrganizationContext.d.ts.map +0 -1
- package/dist/contexts/Organization/OrganizationContext.js +0 -25
- package/dist/contexts/Organization/OrganizationContext.js.map +0 -1
- package/dist/contexts/Organization/OrganizationProvider.d.ts +0 -94
- package/dist/contexts/Organization/OrganizationProvider.d.ts.map +0 -1
- package/dist/contexts/Organization/OrganizationProvider.js +0 -93
- package/dist/contexts/Organization/OrganizationProvider.js.map +0 -1
- package/dist/contexts/Organization/useOrganization.d.ts +0 -105
- package/dist/contexts/Organization/useOrganization.d.ts.map +0 -1
- package/dist/contexts/Organization/useOrganization.js +0 -98
- package/dist/contexts/Organization/useOrganization.js.map +0 -1
- package/dist/hooks/useBranding.d.ts +0 -128
- package/dist/hooks/useBranding.d.ts.map +0 -1
- package/dist/hooks/useBranding.js +0 -69
- package/dist/hooks/useBranding.js.map +0 -1
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
|
-
import { FC, ReactElement } from 'react';
|
|
19
|
-
import { BaseOrganizationSwitcherProps, Organization } from './BaseOrganizationSwitcher';
|
|
20
|
-
/**
|
|
21
|
-
* Props interface for the OrganizationSwitcher component.
|
|
22
|
-
* Makes organizations optional since they'll be retrieved from OrganizationContext.
|
|
23
|
-
*/
|
|
24
|
-
export interface OrganizationSwitcherProps extends Omit<BaseOrganizationSwitcherProps, 'organizations' | 'currentOrganization' | 'onOrganizationSwitch'> {
|
|
25
|
-
/**
|
|
26
|
-
* Optional override for current organization (will use context if not provided)
|
|
27
|
-
*/
|
|
28
|
-
currentOrganization?: Organization;
|
|
29
|
-
/**
|
|
30
|
-
* Fallback element to render when the user is not signed in.
|
|
31
|
-
*/
|
|
32
|
-
fallback?: ReactElement | null;
|
|
33
|
-
/**
|
|
34
|
-
* Optional callback for organization switch (will use context if not provided)
|
|
35
|
-
*/
|
|
36
|
-
onOrganizationSwitch?: (organization: Organization) => Promise<void> | void;
|
|
37
|
-
/**
|
|
38
|
-
* Optional override for organizations list (will use context if not provided)
|
|
39
|
-
*/
|
|
40
|
-
organizations?: Organization[];
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* OrganizationSwitcher component that provides organization switching functionality.
|
|
44
|
-
* This component automatically retrieves organizations from the OrganizationContext.
|
|
45
|
-
* You can also override the organizations, currentOrganization, and onOrganizationSwitch
|
|
46
|
-
* by passing them as props.
|
|
47
|
-
*
|
|
48
|
-
* @example
|
|
49
|
-
* ```tsx
|
|
50
|
-
* import { OrganizationSwitcher } from '@thunderid/react';
|
|
51
|
-
*
|
|
52
|
-
* // Basic usage - uses OrganizationContext
|
|
53
|
-
* <OrganizationSwitcher />
|
|
54
|
-
*
|
|
55
|
-
* // With custom organization switch handler
|
|
56
|
-
* <OrganizationSwitcher
|
|
57
|
-
* onOrganizationSwitch={(org) => {
|
|
58
|
-
* console.log('Switching to:', org.name);
|
|
59
|
-
* // Custom logic here
|
|
60
|
-
* }}
|
|
61
|
-
* />
|
|
62
|
-
*
|
|
63
|
-
* // With fallback for unauthenticated users
|
|
64
|
-
* <OrganizationSwitcher
|
|
65
|
-
* fallback={<div>Please sign in to view organizations</div>}
|
|
66
|
-
* />
|
|
67
|
-
* ```
|
|
68
|
-
*/
|
|
69
|
-
export declare const OrganizationSwitcher: FC<OrganizationSwitcherProps>;
|
|
70
|
-
export default OrganizationSwitcher;
|
|
71
|
-
//# sourceMappingURL=OrganizationSwitcher.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OrganizationSwitcher.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/OrganizationSwitcher/OrganizationSwitcher.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,EAAE,EAAE,YAAY,EAAW,MAAM,OAAO,CAAC;AAEjD,OAAO,EAEL,6BAA6B,EAC7B,YAAY,EACb,MAAM,4BAA4B,CAAC;AASpC;;;GAGG;AACH,MAAM,WAAW,yBACf,SAAQ,IAAI,CAAC,6BAA6B,EAAE,eAAe,GAAG,qBAAqB,GAAG,sBAAsB,CAAC;IAC7G;;OAEG;IACH,mBAAmB,CAAC,EAAE,YAAY,CAAC;IACnC;;OAEG;IACH,QAAQ,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC/B;;OAEG;IACH,oBAAoB,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5E;;OAEG;IACH,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,oBAAoB,EAAE,EAAE,CAAC,yBAAyB,CAkH9D,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
import useThunderID_default from "../../../contexts/ThunderID/useThunderID.js";
|
|
2
|
-
import useOrganization_default from "../../../contexts/Organization/useOrganization.js";
|
|
3
|
-
import useTranslation_default from "../../../hooks/useTranslation.js";
|
|
4
|
-
import { BaseOrganizationSwitcher } from "./BaseOrganizationSwitcher.js";
|
|
5
|
-
import BuildingAlt_default from "../../primitives/Icons/BuildingAlt.js";
|
|
6
|
-
import { CreateOrganization } from "../CreateOrganization/CreateOrganization.js";
|
|
7
|
-
import OrganizationList_default from "../OrganizationList/OrganizationList.js";
|
|
8
|
-
import OrganizationProfile_default from "../OrganizationProfile/OrganizationProfile.js";
|
|
9
|
-
import { useState } from "react";
|
|
10
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
11
|
-
|
|
12
|
-
//#region src/components/presentation/OrganizationSwitcher/OrganizationSwitcher.tsx
|
|
13
|
-
/**
|
|
14
|
-
* OrganizationSwitcher component that provides organization switching functionality.
|
|
15
|
-
* This component automatically retrieves organizations from the OrganizationContext.
|
|
16
|
-
* You can also override the organizations, currentOrganization, and onOrganizationSwitch
|
|
17
|
-
* by passing them as props.
|
|
18
|
-
*
|
|
19
|
-
* @example
|
|
20
|
-
* ```tsx
|
|
21
|
-
* import { OrganizationSwitcher } from '@thunderid/react';
|
|
22
|
-
*
|
|
23
|
-
* // Basic usage - uses OrganizationContext
|
|
24
|
-
* <OrganizationSwitcher />
|
|
25
|
-
*
|
|
26
|
-
* // With custom organization switch handler
|
|
27
|
-
* <OrganizationSwitcher
|
|
28
|
-
* onOrganizationSwitch={(org) => {
|
|
29
|
-
* console.log('Switching to:', org.name);
|
|
30
|
-
* // Custom logic here
|
|
31
|
-
* }}
|
|
32
|
-
* />
|
|
33
|
-
*
|
|
34
|
-
* // With fallback for unauthenticated users
|
|
35
|
-
* <OrganizationSwitcher
|
|
36
|
-
* fallback={<div>Please sign in to view organizations</div>}
|
|
37
|
-
* />
|
|
38
|
-
* ```
|
|
39
|
-
*/
|
|
40
|
-
const OrganizationSwitcher = ({ currentOrganization: propCurrentOrganization, fallback = null, onOrganizationSwitch: propOnOrganizationSwitch, organizations: propOrganizations, preferences,...props }) => {
|
|
41
|
-
const { isSignedIn } = useThunderID_default();
|
|
42
|
-
const { currentOrganization: contextCurrentOrganization, myOrganizations: contextOrganizations, switchOrganization, isLoading, error } = useOrganization_default();
|
|
43
|
-
const [isCreateOrgOpen, setIsCreateOrgOpen] = useState(false);
|
|
44
|
-
const [isProfileOpen, setIsProfileOpen] = useState(false);
|
|
45
|
-
const [isOrganizationListOpen, setIsOrganizationListOpen] = useState(false);
|
|
46
|
-
const { t } = useTranslation_default(preferences?.i18n);
|
|
47
|
-
if (!isSignedIn && fallback) return fallback;
|
|
48
|
-
if (!isSignedIn) return /* @__PURE__ */ jsx(Fragment, {});
|
|
49
|
-
const organizations = propOrganizations || contextOrganizations || [];
|
|
50
|
-
const currentOrganization = propCurrentOrganization || contextCurrentOrganization || void 0;
|
|
51
|
-
const onOrganizationSwitch = propOnOrganizationSwitch || switchOrganization;
|
|
52
|
-
const handleManageOrganizations = () => {
|
|
53
|
-
setIsOrganizationListOpen(true);
|
|
54
|
-
};
|
|
55
|
-
const handleManageOrganization = () => {
|
|
56
|
-
setIsProfileOpen(true);
|
|
57
|
-
};
|
|
58
|
-
const defaultMenuItems = [];
|
|
59
|
-
if (currentOrganization) defaultMenuItems.push({
|
|
60
|
-
icon: /* @__PURE__ */ jsx(BuildingAlt_default, {}),
|
|
61
|
-
label: t("organization.switcher.manage.organizations"),
|
|
62
|
-
onClick: handleManageOrganizations
|
|
63
|
-
});
|
|
64
|
-
defaultMenuItems.push({
|
|
65
|
-
icon: /* @__PURE__ */ jsx("svg", {
|
|
66
|
-
width: "16",
|
|
67
|
-
height: "16",
|
|
68
|
-
viewBox: "0 0 24 24",
|
|
69
|
-
fill: "none",
|
|
70
|
-
stroke: "currentColor",
|
|
71
|
-
strokeWidth: "2",
|
|
72
|
-
children: /* @__PURE__ */ jsx("path", { d: "M12 5v14m-7-7h14" })
|
|
73
|
-
}),
|
|
74
|
-
label: t("organization.switcher.create.organization"),
|
|
75
|
-
onClick: () => setIsCreateOrgOpen(true)
|
|
76
|
-
});
|
|
77
|
-
const menuItems = props.menuItems ? [...defaultMenuItems, ...props.menuItems] : defaultMenuItems;
|
|
78
|
-
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
79
|
-
/* @__PURE__ */ jsx(BaseOrganizationSwitcher, {
|
|
80
|
-
organizations,
|
|
81
|
-
currentOrganization,
|
|
82
|
-
onOrganizationSwitch,
|
|
83
|
-
loading: isLoading,
|
|
84
|
-
error: error ?? void 0,
|
|
85
|
-
menuItems,
|
|
86
|
-
onManageProfile: handleManageOrganization,
|
|
87
|
-
preferences,
|
|
88
|
-
...props
|
|
89
|
-
}),
|
|
90
|
-
/* @__PURE__ */ jsx(CreateOrganization, {
|
|
91
|
-
mode: "popup",
|
|
92
|
-
open: isCreateOrgOpen,
|
|
93
|
-
onOpenChange: setIsCreateOrgOpen,
|
|
94
|
-
onSuccess: (org) => {
|
|
95
|
-
if (org && onOrganizationSwitch) onOrganizationSwitch(org);
|
|
96
|
-
setIsCreateOrgOpen(false);
|
|
97
|
-
}
|
|
98
|
-
}),
|
|
99
|
-
currentOrganization && /* @__PURE__ */ jsx(OrganizationProfile_default, {
|
|
100
|
-
organizationId: currentOrganization.id,
|
|
101
|
-
mode: "popup",
|
|
102
|
-
open: isProfileOpen,
|
|
103
|
-
onOpenChange: setIsProfileOpen,
|
|
104
|
-
cardLayout: true,
|
|
105
|
-
loadingFallback: /* @__PURE__ */ jsx("div", { children: t("organization.profile.loading") }),
|
|
106
|
-
errorFallback: /* @__PURE__ */ jsx("div", { children: t("organization.profile.error") })
|
|
107
|
-
}),
|
|
108
|
-
/* @__PURE__ */ jsx(OrganizationList_default, {
|
|
109
|
-
mode: "popup",
|
|
110
|
-
open: isOrganizationListOpen,
|
|
111
|
-
onOpenChange: setIsOrganizationListOpen,
|
|
112
|
-
title: t("organization.switcher.manage.organizations"),
|
|
113
|
-
onOrganizationSelect: (organization) => {
|
|
114
|
-
if (onOrganizationSwitch) onOrganizationSwitch(organization);
|
|
115
|
-
setIsOrganizationListOpen(false);
|
|
116
|
-
}
|
|
117
|
-
})
|
|
118
|
-
] });
|
|
119
|
-
};
|
|
120
|
-
var OrganizationSwitcher_default = OrganizationSwitcher;
|
|
121
|
-
|
|
122
|
-
//#endregion
|
|
123
|
-
export { OrganizationSwitcher_default as default };
|
|
124
|
-
//# sourceMappingURL=OrganizationSwitcher.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OrganizationSwitcher.js","names":["OrganizationSwitcher: FC<OrganizationSwitcherProps>","useThunderID","useOrganization","useTranslation","organizations: Organization[]","currentOrganization: Organization | undefined","onOrganizationSwitch: (organization: Organization) => Promise<void> | void","defaultMenuItems: {icon?: ReactElement; label: string; onClick: () => void}[]","BuildingAlt","menuItems: any[]","BaseOrganizationSwitcherComponent","OrganizationProfile","OrganizationListComponent"],"sources":["../../../../src/components/presentation/OrganizationSwitcher/OrganizationSwitcher.tsx"],"sourcesContent":["/**\n * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\nimport {FC, ReactElement, useState} from 'react';\n\nimport {\n BaseOrganizationSwitcher as BaseOrganizationSwitcherComponent,\n BaseOrganizationSwitcherProps,\n Organization,\n} from './BaseOrganizationSwitcher';\nimport useOrganization from '../../../contexts/Organization/useOrganization';\nimport useThunderID from '../../../contexts/ThunderID/useThunderID';\nimport useTranslation from '../../../hooks/useTranslation';\nimport BuildingAlt from '../../primitives/Icons/BuildingAlt';\nimport {CreateOrganization} from '../CreateOrganization/CreateOrganization';\nimport OrganizationListComponent from '../OrganizationList/OrganizationList';\nimport OrganizationProfile from '../OrganizationProfile/OrganizationProfile';\n\n/**\n * Props interface for the OrganizationSwitcher component.\n * Makes organizations optional since they'll be retrieved from OrganizationContext.\n */\nexport interface OrganizationSwitcherProps\n extends Omit<BaseOrganizationSwitcherProps, 'organizations' | 'currentOrganization' | 'onOrganizationSwitch'> {\n /**\n * Optional override for current organization (will use context if not provided)\n */\n currentOrganization?: Organization;\n /**\n * Fallback element to render when the user is not signed in.\n */\n fallback?: ReactElement | null;\n /**\n * Optional callback for organization switch (will use context if not provided)\n */\n onOrganizationSwitch?: (organization: Organization) => Promise<void> | void;\n /**\n * Optional override for organizations list (will use context if not provided)\n */\n organizations?: Organization[];\n}\n\n/**\n * OrganizationSwitcher component that provides organization switching functionality.\n * This component automatically retrieves organizations from the OrganizationContext.\n * You can also override the organizations, currentOrganization, and onOrganizationSwitch\n * by passing them as props.\n *\n * @example\n * ```tsx\n * import { OrganizationSwitcher } from '@thunderid/react';\n *\n * // Basic usage - uses OrganizationContext\n * <OrganizationSwitcher />\n *\n * // With custom organization switch handler\n * <OrganizationSwitcher\n * onOrganizationSwitch={(org) => {\n * console.log('Switching to:', org.name);\n * // Custom logic here\n * }}\n * />\n *\n * // With fallback for unauthenticated users\n * <OrganizationSwitcher\n * fallback={<div>Please sign in to view organizations</div>}\n * />\n * ```\n */\nexport const OrganizationSwitcher: FC<OrganizationSwitcherProps> = ({\n currentOrganization: propCurrentOrganization,\n fallback = null,\n onOrganizationSwitch: propOnOrganizationSwitch,\n organizations: propOrganizations,\n preferences,\n ...props\n}: OrganizationSwitcherProps): ReactElement | null => {\n const {isSignedIn} = useThunderID();\n const {\n currentOrganization: contextCurrentOrganization,\n myOrganizations: contextOrganizations,\n switchOrganization,\n isLoading,\n error,\n } = useOrganization();\n const [isCreateOrgOpen, setIsCreateOrgOpen] = useState(false);\n const [isProfileOpen, setIsProfileOpen] = useState(false);\n const [isOrganizationListOpen, setIsOrganizationListOpen] = useState(false);\n const {t} = useTranslation(preferences?.i18n);\n\n if (!isSignedIn && fallback) {\n return fallback;\n }\n\n if (!isSignedIn) {\n return <></>;\n }\n\n const organizations: Organization[] = propOrganizations || contextOrganizations || [];\n const currentOrganization: Organization | undefined =\n propCurrentOrganization || contextCurrentOrganization || undefined;\n const onOrganizationSwitch: (organization: Organization) => Promise<void> | void =\n propOnOrganizationSwitch || switchOrganization;\n\n const handleManageOrganizations = (): void => {\n setIsOrganizationListOpen(true);\n };\n\n const handleManageOrganization = (): void => {\n setIsProfileOpen(true);\n };\n\n const defaultMenuItems: {icon?: ReactElement; label: string; onClick: () => void}[] = [];\n\n if (currentOrganization) {\n defaultMenuItems.push({\n icon: <BuildingAlt />,\n label: t('organization.switcher.manage.organizations'),\n onClick: handleManageOrganizations,\n });\n }\n\n defaultMenuItems.push({\n icon: (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\">\n <path d=\"M12 5v14m-7-7h14\" />\n </svg>\n ),\n label: t('organization.switcher.create.organization'),\n onClick: (): void => setIsCreateOrgOpen(true),\n });\n\n const menuItems: any[] = props.menuItems ? [...defaultMenuItems, ...props.menuItems] : defaultMenuItems;\n\n return (\n <>\n <BaseOrganizationSwitcherComponent\n organizations={organizations}\n currentOrganization={currentOrganization}\n onOrganizationSwitch={onOrganizationSwitch}\n loading={isLoading}\n error={error ?? undefined}\n menuItems={menuItems}\n onManageProfile={handleManageOrganization}\n preferences={preferences}\n {...props}\n />\n <CreateOrganization\n mode=\"popup\"\n open={isCreateOrgOpen}\n onOpenChange={setIsCreateOrgOpen}\n onSuccess={(org: Organization): void => {\n if (org && onOrganizationSwitch) {\n onOrganizationSwitch(org);\n }\n setIsCreateOrgOpen(false);\n }}\n />\n {currentOrganization && (\n <OrganizationProfile\n organizationId={currentOrganization.id}\n mode=\"popup\"\n open={isProfileOpen}\n onOpenChange={setIsProfileOpen}\n cardLayout={true}\n loadingFallback={<div>{t('organization.profile.loading')}</div>}\n errorFallback={<div>{t('organization.profile.error')}</div>}\n />\n )}\n <OrganizationListComponent\n mode=\"popup\"\n open={isOrganizationListOpen}\n onOpenChange={setIsOrganizationListOpen}\n title={t('organization.switcher.manage.organizations')}\n onOrganizationSelect={(organization: Organization): void => {\n if (onOrganizationSwitch) {\n onOrganizationSwitch(organization);\n }\n setIsOrganizationListOpen(false);\n }}\n />\n </>\n );\n};\n\nexport default OrganizationSwitcher;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoFA,MAAaA,wBAAuD,EAClE,qBAAqB,yBACrB,WAAW,MACX,sBAAsB,0BACtB,eAAe,mBACf,YACA,GAAG,YACiD;CACpD,MAAM,EAAC,eAAcC,sBAAc;CACnC,MAAM,EACJ,qBAAqB,4BACrB,iBAAiB,sBACjB,oBACA,WACA,UACEC,yBAAiB;CACrB,MAAM,CAAC,iBAAiB,sBAAsB,SAAS,MAAM;CAC7D,MAAM,CAAC,eAAe,oBAAoB,SAAS,MAAM;CACzD,MAAM,CAAC,wBAAwB,6BAA6B,SAAS,MAAM;CAC3E,MAAM,EAAC,MAAKC,uBAAe,aAAa,KAAK;AAE7C,KAAI,CAAC,cAAc,SACjB,QAAO;AAGT,KAAI,CAAC,WACH,QAAO,iCAAK;CAGd,MAAMC,gBAAgC,qBAAqB,wBAAwB,EAAE;CACrF,MAAMC,sBACJ,2BAA2B,8BAA8B;CAC3D,MAAMC,uBACJ,4BAA4B;CAE9B,MAAM,kCAAwC;AAC5C,4BAA0B,KAAK;;CAGjC,MAAM,iCAAuC;AAC3C,mBAAiB,KAAK;;CAGxB,MAAMC,mBAAgF,EAAE;AAExF,KAAI,oBACF,kBAAiB,KAAK;EACpB,MAAM,oBAACC,wBAAc;EACrB,OAAO,EAAE,6CAA6C;EACtD,SAAS;EACV,CAAC;AAGJ,kBAAiB,KAAK;EACpB,MACE,oBAAC;GAAI,OAAM;GAAK,QAAO;GAAK,SAAQ;GAAY,MAAK;GAAO,QAAO;GAAe,aAAY;aAC5F,oBAAC,UAAK,GAAE,qBAAqB;IACzB;EAER,OAAO,EAAE,4CAA4C;EACrD,eAAqB,mBAAmB,KAAK;EAC9C,CAAC;CAEF,MAAMC,YAAmB,MAAM,YAAY,CAAC,GAAG,kBAAkB,GAAG,MAAM,UAAU,GAAG;AAEvF,QACE;EACE,oBAACC;GACgB;GACM;GACC;GACtB,SAAS;GACT,OAAO,SAAS;GACL;GACX,iBAAiB;GACJ;GACb,GAAI;IACJ;EACF,oBAAC;GACC,MAAK;GACL,MAAM;GACN,cAAc;GACd,YAAY,QAA4B;AACtC,QAAI,OAAO,qBACT,sBAAqB,IAAI;AAE3B,uBAAmB,MAAM;;IAE3B;EACD,uBACC,oBAACC;GACC,gBAAgB,oBAAoB;GACpC,MAAK;GACL,MAAM;GACN,cAAc;GACd,YAAY;GACZ,iBAAiB,oBAAC,mBAAK,EAAE,+BAA+B,GAAO;GAC/D,eAAe,oBAAC,mBAAK,EAAE,6BAA6B,GAAO;IAC3D;EAEJ,oBAACC;GACC,MAAK;GACL,MAAM;GACN,cAAc;GACd,OAAO,EAAE,6CAA6C;GACtD,uBAAuB,iBAAqC;AAC1D,QAAI,qBACF,sBAAqB,aAAa;AAEpC,8BAA0B,MAAM;;IAElC;KACD;;AAIP,mCAAe"}
|
package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.d.ts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2026, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
|
-
import { OrganizationUnitListResponse } from '@thunderid/browser';
|
|
19
|
-
import React from 'react';
|
|
20
|
-
export interface OrganizationUnitPickerProps {
|
|
21
|
-
className?: string;
|
|
22
|
-
fetchChildren: (parentId: string, limit: number, offset: number) => Promise<OrganizationUnitListResponse>;
|
|
23
|
-
onSelect: (ouId: string) => void;
|
|
24
|
-
pageSize?: number;
|
|
25
|
-
rootOuId: string;
|
|
26
|
-
selectedOuId?: string | null;
|
|
27
|
-
}
|
|
28
|
-
declare const OrganizationUnitPicker: ({ rootOuId, selectedOuId, onSelect, fetchChildren, pageSize, className, }: OrganizationUnitPickerProps) => React.ReactElement;
|
|
29
|
-
export default OrganizationUnitPicker;
|
|
30
|
-
//# sourceMappingURL=OrganizationUnitPicker.d.ts.map
|
package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OrganizationUnitPicker.d.ts","sourceRoot":"","sources":["../../../../../src/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAmB,4BAA4B,EAAC,MAAM,oBAAoB,CAAC;AAClF,OAAO,KAAyC,MAAM,OAAO,CAAC;AAa9D,MAAM,WAAW,2BAA2B;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC1G,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,QAAA,MAAM,sBAAsB,GAAI,2EAO7B,2BAA2B,KAAG,KAAK,CAAC,YAiMtC,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
import useTheme_default from "../../../../contexts/Theme/useTheme.js";
|
|
2
|
-
import OrganizationUnitPicker_styles_default from "./OrganizationUnitPicker.styles.js";
|
|
3
|
-
import React, { useCallback, useEffect, useState } from "react";
|
|
4
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
-
import { cx } from "@emotion/css";
|
|
6
|
-
|
|
7
|
-
//#region src/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.tsx
|
|
8
|
-
const OrganizationUnitPicker = ({ rootOuId, selectedOuId, onSelect, fetchChildren, pageSize = 10, className }) => {
|
|
9
|
-
const { theme } = useTheme_default();
|
|
10
|
-
const styles = OrganizationUnitPicker_styles_default(theme);
|
|
11
|
-
const [nodeStates, setNodeStates] = useState({});
|
|
12
|
-
const loadChildren = useCallback(async (parentId, offset = 0) => {
|
|
13
|
-
setNodeStates((prev) => ({
|
|
14
|
-
...prev,
|
|
15
|
-
[parentId]: {
|
|
16
|
-
...prev[parentId] || {
|
|
17
|
-
children: [],
|
|
18
|
-
expanded: true,
|
|
19
|
-
hasMore: false,
|
|
20
|
-
offset: 0,
|
|
21
|
-
totalResults: 0
|
|
22
|
-
},
|
|
23
|
-
loading: true
|
|
24
|
-
}
|
|
25
|
-
}));
|
|
26
|
-
try {
|
|
27
|
-
const response = await fetchChildren(parentId, pageSize, offset);
|
|
28
|
-
const newChildren = response.organizationUnits || [];
|
|
29
|
-
setNodeStates((prev) => {
|
|
30
|
-
const existing = prev[parentId] || {
|
|
31
|
-
children: [],
|
|
32
|
-
expanded: true,
|
|
33
|
-
hasMore: false,
|
|
34
|
-
loading: false,
|
|
35
|
-
offset: 0,
|
|
36
|
-
totalResults: 0
|
|
37
|
-
};
|
|
38
|
-
const mergedChildren = offset === 0 ? newChildren : [...existing.children, ...newChildren];
|
|
39
|
-
const newOffset = offset + newChildren.length;
|
|
40
|
-
return {
|
|
41
|
-
...prev,
|
|
42
|
-
[parentId]: {
|
|
43
|
-
children: mergedChildren,
|
|
44
|
-
expanded: true,
|
|
45
|
-
hasMore: newOffset < response.totalResults,
|
|
46
|
-
loading: false,
|
|
47
|
-
offset: newOffset,
|
|
48
|
-
totalResults: response.totalResults
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
});
|
|
52
|
-
} catch {
|
|
53
|
-
setNodeStates((prev) => ({
|
|
54
|
-
...prev,
|
|
55
|
-
[parentId]: {
|
|
56
|
-
...prev[parentId] || {
|
|
57
|
-
children: [],
|
|
58
|
-
expanded: true,
|
|
59
|
-
hasMore: false,
|
|
60
|
-
offset: 0,
|
|
61
|
-
totalResults: 0
|
|
62
|
-
},
|
|
63
|
-
loading: false
|
|
64
|
-
}
|
|
65
|
-
}));
|
|
66
|
-
}
|
|
67
|
-
}, [fetchChildren, pageSize]);
|
|
68
|
-
useEffect(() => {
|
|
69
|
-
if (rootOuId && !nodeStates[rootOuId]) loadChildren(rootOuId);
|
|
70
|
-
}, [
|
|
71
|
-
rootOuId,
|
|
72
|
-
loadChildren,
|
|
73
|
-
nodeStates
|
|
74
|
-
]);
|
|
75
|
-
const handleToggle = useCallback((ouId) => {
|
|
76
|
-
const state = nodeStates[ouId];
|
|
77
|
-
if (state?.expanded) setNodeStates((prev) => ({
|
|
78
|
-
...prev,
|
|
79
|
-
[ouId]: {
|
|
80
|
-
...prev[ouId],
|
|
81
|
-
expanded: false
|
|
82
|
-
}
|
|
83
|
-
}));
|
|
84
|
-
else if (state?.children.length) setNodeStates((prev) => ({
|
|
85
|
-
...prev,
|
|
86
|
-
[ouId]: {
|
|
87
|
-
...prev[ouId],
|
|
88
|
-
expanded: true
|
|
89
|
-
}
|
|
90
|
-
}));
|
|
91
|
-
else loadChildren(ouId);
|
|
92
|
-
}, [nodeStates, loadChildren]);
|
|
93
|
-
const handleLoadMore = useCallback((parentId) => {
|
|
94
|
-
const state = nodeStates[parentId];
|
|
95
|
-
if (state) loadChildren(parentId, state.offset);
|
|
96
|
-
}, [nodeStates, loadChildren]);
|
|
97
|
-
const renderLoadingPlaceholders = (depth) => /* @__PURE__ */ jsx(Fragment, { children: [
|
|
98
|
-
0,
|
|
99
|
-
1,
|
|
100
|
-
2
|
|
101
|
-
].map((i) => /* @__PURE__ */ jsx("div", {
|
|
102
|
-
className: styles["loadingPlaceholder"],
|
|
103
|
-
style: { paddingLeft: `${(depth + 1) * 20}px` },
|
|
104
|
-
children: /* @__PURE__ */ jsx("div", {
|
|
105
|
-
className: styles["skeleton"],
|
|
106
|
-
style: { width: `${100 - i * 20}px` }
|
|
107
|
-
})
|
|
108
|
-
}, `skeleton-${i}`)) });
|
|
109
|
-
const renderNode = (ou, depth = 0) => {
|
|
110
|
-
const state = nodeStates[ou.id];
|
|
111
|
-
const isSelected = selectedOuId === ou.id;
|
|
112
|
-
const isExpanded = state?.expanded || false;
|
|
113
|
-
const isLoading = state?.loading || false;
|
|
114
|
-
const hasChildren = !state || state.totalResults > 0 || state.children.length > 0;
|
|
115
|
-
return /* @__PURE__ */ jsxs(React.Fragment, { children: [
|
|
116
|
-
/* @__PURE__ */ jsxs("div", {
|
|
117
|
-
className: cx(styles["node"], isSelected && styles["nodeSelected"]),
|
|
118
|
-
style: { paddingLeft: `${depth * 20 + 12}px` },
|
|
119
|
-
role: "treeitem",
|
|
120
|
-
"aria-selected": isSelected,
|
|
121
|
-
"aria-expanded": hasChildren ? isExpanded : void 0,
|
|
122
|
-
onClick: () => onSelect(ou.id),
|
|
123
|
-
onKeyDown: (e) => {
|
|
124
|
-
if (e.key === "Enter" || e.key === " ") {
|
|
125
|
-
e.preventDefault();
|
|
126
|
-
onSelect(ou.id);
|
|
127
|
-
}
|
|
128
|
-
},
|
|
129
|
-
tabIndex: 0,
|
|
130
|
-
children: [hasChildren ? /* @__PURE__ */ jsx("button", {
|
|
131
|
-
className: styles["toggleButton"],
|
|
132
|
-
onClick: (e) => {
|
|
133
|
-
e.stopPropagation();
|
|
134
|
-
handleToggle(ou.id);
|
|
135
|
-
},
|
|
136
|
-
"aria-label": isExpanded ? "Collapse" : "Expand",
|
|
137
|
-
type: "button",
|
|
138
|
-
children: isExpanded ? "▾" : "▸"
|
|
139
|
-
}) : /* @__PURE__ */ jsx("span", { className: styles["togglePlaceholder"] }), /* @__PURE__ */ jsx("span", {
|
|
140
|
-
className: styles["nodeName"],
|
|
141
|
-
children: ou.name
|
|
142
|
-
})]
|
|
143
|
-
}),
|
|
144
|
-
isExpanded && isLoading && !state?.children.length && renderLoadingPlaceholders(depth),
|
|
145
|
-
isExpanded && state?.children.map((child) => renderNode(child, depth + 1)),
|
|
146
|
-
isExpanded && state?.hasMore && /* @__PURE__ */ jsx("button", {
|
|
147
|
-
className: styles["loadMoreButton"],
|
|
148
|
-
style: { paddingLeft: `${(depth + 1) * 20 + 12}px` },
|
|
149
|
-
onClick: () => handleLoadMore(ou.id),
|
|
150
|
-
disabled: isLoading,
|
|
151
|
-
type: "button",
|
|
152
|
-
children: isLoading ? "Loading..." : "Load more"
|
|
153
|
-
})
|
|
154
|
-
] }, ou.id);
|
|
155
|
-
};
|
|
156
|
-
const rootState = nodeStates[rootOuId];
|
|
157
|
-
const isRootLoading = rootState?.loading && !rootState?.children.length;
|
|
158
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
159
|
-
className: cx(styles["container"], className),
|
|
160
|
-
role: "tree",
|
|
161
|
-
"aria-label": "Organization unit picker",
|
|
162
|
-
children: [
|
|
163
|
-
isRootLoading && renderLoadingPlaceholders(0),
|
|
164
|
-
rootState?.children.map((ou) => renderNode(ou, 0)),
|
|
165
|
-
rootState?.hasMore && /* @__PURE__ */ jsx("button", {
|
|
166
|
-
className: styles["loadMoreButton"],
|
|
167
|
-
onClick: () => handleLoadMore(rootOuId),
|
|
168
|
-
disabled: rootState?.loading,
|
|
169
|
-
type: "button",
|
|
170
|
-
children: rootState?.loading ? "Loading..." : "Load more"
|
|
171
|
-
})
|
|
172
|
-
]
|
|
173
|
-
});
|
|
174
|
-
};
|
|
175
|
-
var OrganizationUnitPicker_default = OrganizationUnitPicker;
|
|
176
|
-
|
|
177
|
-
//#endregion
|
|
178
|
-
export { OrganizationUnitPicker_default as default };
|
|
179
|
-
//# sourceMappingURL=OrganizationUnitPicker.js.map
|
package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OrganizationUnitPicker.js","names":["useTheme","styles: Record<string, string>","useStyles","loadChildren: (parentId: string, offset?: number) => Promise<void>","response: OrganizationUnitListResponse","newChildren: OrganizationUnit[]","existing: NodeState","mergedChildren: OrganizationUnit[]","newOffset: number","handleToggle: (ouId: string) => void","state: NodeState | undefined","handleLoadMore: (parentId: string) => void","isSelected: boolean","isExpanded: boolean","isLoading: boolean","hasChildren: boolean","rootState: NodeState | undefined","isRootLoading: boolean"],"sources":["../../../../../src/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.tsx"],"sourcesContent":["/**\n * Copyright (c) 2026, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\nimport {cx} from '@emotion/css';\nimport {OrganizationUnit, OrganizationUnitListResponse} from '@thunderid/browser';\nimport React, {useCallback, useEffect, useState} from 'react';\nimport useStyles from './OrganizationUnitPicker.styles';\nimport useTheme from '../../../../contexts/Theme/useTheme';\n\ninterface NodeState {\n children: OrganizationUnit[];\n expanded: boolean;\n hasMore: boolean;\n loading: boolean;\n offset: number;\n totalResults: number;\n}\n\nexport interface OrganizationUnitPickerProps {\n className?: string;\n fetchChildren: (parentId: string, limit: number, offset: number) => Promise<OrganizationUnitListResponse>;\n onSelect: (ouId: string) => void;\n pageSize?: number;\n rootOuId: string;\n selectedOuId?: string | null;\n}\n\nconst OrganizationUnitPicker = ({\n rootOuId,\n selectedOuId,\n onSelect,\n fetchChildren,\n pageSize = 10,\n className,\n}: OrganizationUnitPickerProps): React.ReactElement => {\n const {theme} = useTheme();\n const styles: Record<string, string> = useStyles(theme);\n\n const [nodeStates, setNodeStates] = useState<Record<string, NodeState>>({});\n\n const loadChildren: (parentId: string, offset?: number) => Promise<void> = useCallback(\n async (parentId: string, offset = 0) => {\n setNodeStates((prev: Record<string, NodeState>) => ({\n ...prev,\n [parentId]: {\n ...(prev[parentId] || {children: [], expanded: true, hasMore: false, offset: 0, totalResults: 0}),\n loading: true,\n },\n }));\n\n try {\n const response: OrganizationUnitListResponse = await fetchChildren(parentId, pageSize, offset);\n const newChildren: OrganizationUnit[] = response.organizationUnits || [];\n\n setNodeStates((prev: Record<string, NodeState>) => {\n const existing: NodeState = prev[parentId] || {\n children: [],\n expanded: true,\n hasMore: false,\n loading: false,\n offset: 0,\n totalResults: 0,\n };\n const mergedChildren: OrganizationUnit[] =\n offset === 0 ? newChildren : [...existing.children, ...newChildren];\n const newOffset: number = offset + newChildren.length;\n\n return {\n ...prev,\n [parentId]: {\n children: mergedChildren,\n expanded: true,\n hasMore: newOffset < response.totalResults,\n loading: false,\n offset: newOffset,\n totalResults: response.totalResults,\n },\n };\n });\n } catch {\n setNodeStates((prev: Record<string, NodeState>) => ({\n ...prev,\n [parentId]: {\n ...(prev[parentId] || {children: [], expanded: true, hasMore: false, offset: 0, totalResults: 0}),\n loading: false,\n },\n }));\n }\n },\n [fetchChildren, pageSize],\n );\n\n // Auto-load root children on mount\n useEffect(() => {\n if (rootOuId && !nodeStates[rootOuId]) {\n loadChildren(rootOuId);\n }\n }, [rootOuId, loadChildren, nodeStates]);\n\n const handleToggle: (ouId: string) => void = useCallback(\n (ouId: string) => {\n const state: NodeState | undefined = nodeStates[ouId];\n\n if (state?.expanded) {\n setNodeStates((prev: Record<string, NodeState>) => ({\n ...prev,\n [ouId]: {...prev[ouId], expanded: false},\n }));\n } else if (state?.children.length) {\n setNodeStates((prev: Record<string, NodeState>) => ({\n ...prev,\n [ouId]: {...prev[ouId], expanded: true},\n }));\n } else {\n loadChildren(ouId);\n }\n },\n [nodeStates, loadChildren],\n );\n\n const handleLoadMore: (parentId: string) => void = useCallback(\n (parentId: string) => {\n const state: NodeState | undefined = nodeStates[parentId];\n\n if (state) {\n loadChildren(parentId, state.offset);\n }\n },\n [nodeStates, loadChildren],\n );\n\n const renderLoadingPlaceholders = (depth: number): React.ReactElement => (\n <>\n {[0, 1, 2].map((i: number) => (\n <div\n key={`skeleton-${i}`}\n className={styles['loadingPlaceholder']}\n style={{paddingLeft: `${(depth + 1) * 20}px`}}\n >\n <div className={styles['skeleton']} style={{width: `${100 - i * 20}px`}} />\n </div>\n ))}\n </>\n );\n\n const renderNode = (ou: OrganizationUnit, depth = 0): React.ReactElement => {\n const state: NodeState | undefined = nodeStates[ou.id];\n const isSelected: boolean = selectedOuId === ou.id;\n const isExpanded: boolean = state?.expanded || false;\n const isLoading: boolean = state?.loading || false;\n const hasChildren: boolean = !state || state.totalResults > 0 || state.children.length > 0;\n\n return (\n <React.Fragment key={ou.id}>\n <div\n className={cx(styles['node'], isSelected && styles['nodeSelected'])}\n style={{paddingLeft: `${depth * 20 + 12}px`}}\n role=\"treeitem\"\n aria-selected={isSelected}\n aria-expanded={hasChildren ? isExpanded : undefined}\n onClick={() => onSelect(ou.id)}\n onKeyDown={(e: React.KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onSelect(ou.id);\n }\n }}\n tabIndex={0}\n >\n {hasChildren ? (\n <button\n className={styles['toggleButton']}\n onClick={(e: React.MouseEvent) => {\n e.stopPropagation();\n handleToggle(ou.id);\n }}\n aria-label={isExpanded ? 'Collapse' : 'Expand'}\n type=\"button\"\n >\n {isExpanded ? '▾' : '▸'}\n </button>\n ) : (\n <span className={styles['togglePlaceholder']} />\n )}\n <span className={styles['nodeName']}>{ou.name}</span>\n </div>\n\n {isExpanded && isLoading && !state?.children.length && renderLoadingPlaceholders(depth)}\n\n {isExpanded && state?.children.map((child: OrganizationUnit) => renderNode(child, depth + 1))}\n\n {isExpanded && state?.hasMore && (\n <button\n className={styles['loadMoreButton']}\n style={{paddingLeft: `${(depth + 1) * 20 + 12}px`}}\n onClick={() => handleLoadMore(ou.id)}\n disabled={isLoading}\n type=\"button\"\n >\n {isLoading ? 'Loading...' : 'Load more'}\n </button>\n )}\n </React.Fragment>\n );\n };\n\n const rootState: NodeState | undefined = nodeStates[rootOuId];\n const isRootLoading: boolean = rootState?.loading && !rootState?.children.length;\n\n return (\n <div className={cx(styles['container'], className)} role=\"tree\" aria-label=\"Organization unit picker\">\n {isRootLoading && renderLoadingPlaceholders(0)}\n\n {rootState?.children.map((ou: OrganizationUnit) => renderNode(ou, 0))}\n\n {rootState?.hasMore && (\n <button\n className={styles['loadMoreButton']}\n onClick={() => handleLoadMore(rootOuId)}\n disabled={rootState?.loading}\n type=\"button\"\n >\n {rootState?.loading ? 'Loading...' : 'Load more'}\n </button>\n )}\n </div>\n );\n};\n\nexport default OrganizationUnitPicker;\n"],"mappings":"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"}
|
package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2026, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
|
-
import { Theme } from '@thunderid/browser';
|
|
19
|
-
declare const useStyles: (theme: Theme) => Record<string, string>;
|
|
20
|
-
export default useStyles;
|
|
21
|
-
//# sourceMappingURL=OrganizationUnitPicker.styles.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OrganizationUnitPicker.styles.d.ts","sourceRoot":"","sources":["../../../../../src/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAC,KAAK,EAAC,MAAM,oBAAoB,CAAC;AAGzC,QAAA,MAAM,SAAS,GAAI,OAAO,KAAK,KAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAgInD,CAAC;AAEL,eAAe,SAAS,CAAC"}
|
package/dist/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.js
DELETED
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { useMemo } from "react";
|
|
2
|
-
import { css } from "@emotion/css";
|
|
3
|
-
|
|
4
|
-
//#region src/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.ts
|
|
5
|
-
const useStyles = (theme) => useMemo(() => {
|
|
6
|
-
const container = css`
|
|
7
|
-
display: flex;
|
|
8
|
-
flex-direction: column;
|
|
9
|
-
width: 100%;
|
|
10
|
-
max-height: 320px;
|
|
11
|
-
overflow-y: auto;
|
|
12
|
-
border: 1px solid ${theme.vars.colors.border};
|
|
13
|
-
border-radius: ${theme.vars.borderRadius.medium};
|
|
14
|
-
font-family: ${theme.vars.typography.fontFamily};
|
|
15
|
-
`;
|
|
16
|
-
const node = css`
|
|
17
|
-
display: flex;
|
|
18
|
-
align-items: center;
|
|
19
|
-
padding: calc(${theme.vars.spacing.unit} * 1) calc(${theme.vars.spacing.unit} * 1.5);
|
|
20
|
-
cursor: pointer;
|
|
21
|
-
user-select: none;
|
|
22
|
-
transition: background-color 0.15s ease;
|
|
23
|
-
|
|
24
|
-
&:hover {
|
|
25
|
-
background-color: ${theme.vars.colors.action.hover};
|
|
26
|
-
}
|
|
27
|
-
`;
|
|
28
|
-
const nodeSelected = css`
|
|
29
|
-
background-color: ${theme.vars.colors.action.selected};
|
|
30
|
-
|
|
31
|
-
&:hover {
|
|
32
|
-
background-color: ${theme.vars.colors.action.selected};
|
|
33
|
-
}
|
|
34
|
-
`;
|
|
35
|
-
const toggleButton = css`
|
|
36
|
-
display: inline-flex;
|
|
37
|
-
align-items: center;
|
|
38
|
-
justify-content: center;
|
|
39
|
-
width: 20px;
|
|
40
|
-
height: 20px;
|
|
41
|
-
border: none;
|
|
42
|
-
background: none;
|
|
43
|
-
cursor: pointer;
|
|
44
|
-
padding: 0;
|
|
45
|
-
margin-right: calc(${theme.vars.spacing.unit} * 0.5);
|
|
46
|
-
color: ${theme.vars.colors.text.secondary};
|
|
47
|
-
font-size: 12px;
|
|
48
|
-
flex-shrink: 0;
|
|
49
|
-
`;
|
|
50
|
-
const togglePlaceholder = css`
|
|
51
|
-
width: 20px;
|
|
52
|
-
height: 20px;
|
|
53
|
-
margin-right: calc(${theme.vars.spacing.unit} * 0.5);
|
|
54
|
-
flex-shrink: 0;
|
|
55
|
-
`;
|
|
56
|
-
const nodeName = css`
|
|
57
|
-
font-size: 14px;
|
|
58
|
-
color: ${theme.vars.colors.text.primary};
|
|
59
|
-
white-space: nowrap;
|
|
60
|
-
overflow: hidden;
|
|
61
|
-
text-overflow: ellipsis;
|
|
62
|
-
`;
|
|
63
|
-
return {
|
|
64
|
-
container,
|
|
65
|
-
loadMoreButton: css`
|
|
66
|
-
display: flex;
|
|
67
|
-
align-items: center;
|
|
68
|
-
padding: calc(${theme.vars.spacing.unit} * 0.75) calc(${theme.vars.spacing.unit} * 1.5);
|
|
69
|
-
border: none;
|
|
70
|
-
background: none;
|
|
71
|
-
cursor: pointer;
|
|
72
|
-
color: ${theme.vars.colors.primary.main};
|
|
73
|
-
font-size: 13px;
|
|
74
|
-
font-family: ${theme.vars.typography.fontFamily};
|
|
75
|
-
|
|
76
|
-
&:hover {
|
|
77
|
-
text-decoration: underline;
|
|
78
|
-
}
|
|
79
|
-
`,
|
|
80
|
-
loadingPlaceholder: css`
|
|
81
|
-
display: flex;
|
|
82
|
-
align-items: center;
|
|
83
|
-
padding: calc(${theme.vars.spacing.unit} * 1) calc(${theme.vars.spacing.unit} * 1.5);
|
|
84
|
-
gap: calc(${theme.vars.spacing.unit} * 1);
|
|
85
|
-
`,
|
|
86
|
-
node,
|
|
87
|
-
nodeName,
|
|
88
|
-
nodeSelected,
|
|
89
|
-
skeleton: css`
|
|
90
|
-
height: 14px;
|
|
91
|
-
border-radius: ${theme.vars.borderRadius.small};
|
|
92
|
-
background-color: ${theme.vars.colors.background.disabled};
|
|
93
|
-
animation: pulse 1.5s ease-in-out infinite;
|
|
94
|
-
|
|
95
|
-
@keyframes pulse {
|
|
96
|
-
0%,
|
|
97
|
-
100% {
|
|
98
|
-
opacity: 1;
|
|
99
|
-
}
|
|
100
|
-
50% {
|
|
101
|
-
opacity: 0.4;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
`,
|
|
105
|
-
toggleButton,
|
|
106
|
-
togglePlaceholder
|
|
107
|
-
};
|
|
108
|
-
}, [
|
|
109
|
-
theme.vars.colors.action.hover,
|
|
110
|
-
theme.vars.colors.action.selected,
|
|
111
|
-
theme.vars.colors.background.disabled,
|
|
112
|
-
theme.vars.colors.border,
|
|
113
|
-
theme.vars.colors.primary.main,
|
|
114
|
-
theme.vars.colors.text.primary,
|
|
115
|
-
theme.vars.colors.text.secondary,
|
|
116
|
-
theme.vars.borderRadius.medium,
|
|
117
|
-
theme.vars.borderRadius.small,
|
|
118
|
-
theme.vars.spacing.unit,
|
|
119
|
-
theme.vars.typography.fontFamily
|
|
120
|
-
]);
|
|
121
|
-
var OrganizationUnitPicker_styles_default = useStyles;
|
|
122
|
-
|
|
123
|
-
//#endregion
|
|
124
|
-
export { OrganizationUnitPicker_styles_default as default };
|
|
125
|
-
//# sourceMappingURL=OrganizationUnitPicker.styles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OrganizationUnitPicker.styles.js","names":["container: string","node: string","nodeSelected: string","toggleButton: string","togglePlaceholder: string","nodeName: string"],"sources":["../../../../../src/components/presentation/auth/OrganizationUnitPicker/OrganizationUnitPicker.styles.ts"],"sourcesContent":["/**\n * Copyright (c) 2026, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\nimport {css} from '@emotion/css';\nimport {Theme} from '@thunderid/browser';\nimport {useMemo} from 'react';\n\nconst useStyles = (theme: Theme): Record<string, string> =>\n useMemo(() => {\n const container: string = css`\n display: flex;\n flex-direction: column;\n width: 100%;\n max-height: 320px;\n overflow-y: auto;\n border: 1px solid ${theme.vars.colors.border};\n border-radius: ${theme.vars.borderRadius.medium};\n font-family: ${theme.vars.typography.fontFamily};\n `;\n\n const node: string = css`\n display: flex;\n align-items: center;\n padding: calc(${theme.vars.spacing.unit} * 1) calc(${theme.vars.spacing.unit} * 1.5);\n cursor: pointer;\n user-select: none;\n transition: background-color 0.15s ease;\n\n &:hover {\n background-color: ${theme.vars.colors.action.hover};\n }\n `;\n\n const nodeSelected: string = css`\n background-color: ${theme.vars.colors.action.selected};\n\n &:hover {\n background-color: ${theme.vars.colors.action.selected};\n }\n `;\n\n const toggleButton: string = css`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 20px;\n height: 20px;\n border: none;\n background: none;\n cursor: pointer;\n padding: 0;\n margin-right: calc(${theme.vars.spacing.unit} * 0.5);\n color: ${theme.vars.colors.text.secondary};\n font-size: 12px;\n flex-shrink: 0;\n `;\n\n const togglePlaceholder: string = css`\n width: 20px;\n height: 20px;\n margin-right: calc(${theme.vars.spacing.unit} * 0.5);\n flex-shrink: 0;\n `;\n\n const nodeName: string = css`\n font-size: 14px;\n color: ${theme.vars.colors.text.primary};\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n `;\n\n const loadMoreButton: string = css`\n display: flex;\n align-items: center;\n padding: calc(${theme.vars.spacing.unit} * 0.75) calc(${theme.vars.spacing.unit} * 1.5);\n border: none;\n background: none;\n cursor: pointer;\n color: ${theme.vars.colors.primary.main};\n font-size: 13px;\n font-family: ${theme.vars.typography.fontFamily};\n\n &:hover {\n text-decoration: underline;\n }\n `;\n\n const loadingPlaceholder: string = css`\n display: flex;\n align-items: center;\n padding: calc(${theme.vars.spacing.unit} * 1) calc(${theme.vars.spacing.unit} * 1.5);\n gap: calc(${theme.vars.spacing.unit} * 1);\n `;\n\n const skeleton: string = css`\n height: 14px;\n border-radius: ${theme.vars.borderRadius.small};\n background-color: ${theme.vars.colors.background.disabled};\n animation: pulse 1.5s ease-in-out infinite;\n\n @keyframes pulse {\n 0%,\n 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.4;\n }\n }\n `;\n\n return {\n container,\n loadMoreButton,\n loadingPlaceholder,\n node,\n nodeName,\n nodeSelected,\n skeleton,\n toggleButton,\n togglePlaceholder,\n };\n }, [\n theme.vars.colors.action.hover,\n theme.vars.colors.action.selected,\n theme.vars.colors.background.disabled,\n theme.vars.colors.border,\n theme.vars.colors.primary.main,\n theme.vars.colors.text.primary,\n theme.vars.colors.text.secondary,\n theme.vars.borderRadius.medium,\n theme.vars.borderRadius.small,\n theme.vars.spacing.unit,\n theme.vars.typography.fontFamily,\n ]);\n\nexport default useStyles;\n"],"mappings":";;;;AAsBA,MAAM,aAAa,UACjB,cAAc;CACZ,MAAMA,YAAoB,GAAG;;;;;;0BAMP,MAAM,KAAK,OAAO,OAAO;uBAC5B,MAAM,KAAK,aAAa,OAAO;qBACjC,MAAM,KAAK,WAAW,WAAW;;CAGlD,MAAMC,OAAe,GAAG;;;sBAGN,MAAM,KAAK,QAAQ,KAAK,aAAa,MAAM,KAAK,QAAQ,KAAK;;;;;;4BAMvD,MAAM,KAAK,OAAO,OAAO,MAAM;;;CAIvD,MAAMC,eAAuB,GAAG;0BACV,MAAM,KAAK,OAAO,OAAO,SAAS;;;4BAGhC,MAAM,KAAK,OAAO,OAAO,SAAS;;;CAI1D,MAAMC,eAAuB,GAAG;;;;;;;;;;2BAUT,MAAM,KAAK,QAAQ,KAAK;eACpC,MAAM,KAAK,OAAO,KAAK,UAAU;;;;CAK5C,MAAMC,oBAA4B,GAAG;;;2BAGd,MAAM,KAAK,QAAQ,KAAK;;;CAI/C,MAAMC,WAAmB,GAAG;;eAEjB,MAAM,KAAK,OAAO,KAAK,QAAQ;;;;;AA8C1C,QAAO;EACL;EACA,gBA1C6B,GAAG;;;sBAGhB,MAAM,KAAK,QAAQ,KAAK,gBAAgB,MAAM,KAAK,QAAQ,KAAK;;;;eAIvE,MAAM,KAAK,OAAO,QAAQ,KAAK;;qBAEzB,MAAM,KAAK,WAAW,WAAW;;;;;;EAkChD,oBA3BiC,GAAG;;;sBAGpB,MAAM,KAAK,QAAQ,KAAK,aAAa,MAAM,KAAK,QAAQ,KAAK;kBACjE,MAAM,KAAK,QAAQ,KAAK;;EAwBpC;EACA;EACA;EACA,UAxBuB,GAAG;;uBAET,MAAM,KAAK,aAAa,MAAM;0BAC3B,MAAM,KAAK,OAAO,WAAW,SAAS;;;;;;;;;;;;;EAsB1D;EACA;EACD;GACA;CACD,MAAM,KAAK,OAAO,OAAO;CACzB,MAAM,KAAK,OAAO,OAAO;CACzB,MAAM,KAAK,OAAO,WAAW;CAC7B,MAAM,KAAK,OAAO;CAClB,MAAM,KAAK,OAAO,QAAQ;CAC1B,MAAM,KAAK,OAAO,KAAK;CACvB,MAAM,KAAK,OAAO,KAAK;CACvB,MAAM,KAAK,aAAa;CACxB,MAAM,KAAK,aAAa;CACxB,MAAM,KAAK,QAAQ;CACnB,MAAM,KAAK,WAAW;CACvB,CAAC;AAEJ,4CAAe"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2026, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
|
-
export { default as OrganizationUnitPicker } from './OrganizationUnitPicker';
|
|
19
|
-
export type { OrganizationUnitPickerProps } from './OrganizationUnitPicker';
|
|
20
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/presentation/auth/OrganizationUnitPicker/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,IAAI,sBAAsB,EAAC,MAAM,0BAA0B,CAAC;AAC3E,YAAY,EAAC,2BAA2B,EAAC,MAAM,0BAA0B,CAAC"}
|