@equinor/amplify-component-lib 9.2.0 → 9.3.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.
- package/dist/atoms/utils/date.d.ts +12 -3
- package/dist/atoms/utils/date.js +1 -1
- package/dist/index.js +1 -1
- package/dist/molecules/DatePicker/DatePicker.js +1 -1
- package/dist/molecules/FileProgress/CompactFileProgress.d.ts +2 -4
- package/dist/molecules/FileProgress/CompactFileProgress.js +1 -1
- package/dist/molecules/FileProgress/FileProgress.d.ts +15 -25
- package/dist/molecules/FileProgress/FileProgress.types.d.ts +41 -0
- package/dist/molecules/FileProgress/RegularFileProgress.d.ts +2 -4
- package/dist/molecules/FileProgress/RegularFileProgress.js +1 -1
- package/dist/molecules/Select/GroupedSelectMenu.js +1 -1
- package/dist/molecules/Select/ListSelectMenu.js +1 -1
- package/dist/molecules/Select/Select.js +1 -1
- package/dist/molecules/Select/Select.types.d.ts +5 -8
- package/dist/molecules/Select/SelectMenuItem.js +1 -1
- package/dist/molecules/Select/SingleSelect/SingleSelect.js +1 -1
- package/dist/molecules/index.d.ts +2 -1
- package/dist/organisms/PageTitle/PageTitle.d.ts +7 -0
- package/dist/organisms/PageTitle/PageTitle.js +1 -0
- package/dist/organisms/SideBar/CreateItem.styles.js +1 -0
- package/dist/organisms/SideBar/MenuItem.styles.js +1 -0
- package/dist/organisms/SideBar/SideBar.styles.js +2 -0
- package/dist/organisms/TopBar/Account/Account.js +1 -1
- package/dist/organisms/TopBar/Account/ImpersonateAvatar.js +1 -1
- package/dist/organisms/TopBar/Account/ImpersonateMenu/DeleteUser/DeleteUser.js +1 -1
- package/dist/organisms/TopBar/Account/ImpersonateMenu/Impersonate.utils.d.ts +2 -0
- package/dist/organisms/TopBar/Account/ImpersonateMenu/Impersonate.utils.js +1 -0
- package/dist/organisms/TopBar/Account/ImpersonateMenu/ImpersonateMenu.js +1 -1
- package/dist/organisms/TopBar/Account/ImpersonateMenu/UserImpersonation.js +6 -6
- package/dist/organisms/TopBar/Account/ImpersonateMenu/hooks/useStartImpersonation.js +1 -1
- package/dist/organisms/index.d.ts +1 -0
- package/dist/providers/SnackbarProvider/APIErrorSnackbar.d.ts +6 -0
- package/dist/providers/SnackbarProvider/APIErrorSnackbar.js +1 -0
- package/dist/providers/SnackbarProvider/SnackbarProvider.d.ts +5 -0
- package/dist/providers/SnackbarProvider/SnackbarProvider.js +1 -1
- package/dist/providers/StepperProvider.d.ts +13 -2
- package/dist/providers/StepperProvider.js +1 -1
- package/package.json +13 -13
|
@@ -1,6 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
format:
|
|
3
|
-
month?:
|
|
1
|
+
type FormatDateOptions = {
|
|
2
|
+
format: 'DD. month YYYY' | 'DD. month';
|
|
3
|
+
month?: 'short' | 'long';
|
|
4
|
+
} | {
|
|
5
|
+
format: 'DD.MM.YYYY' | 'YYYY-MM-DD' | 'DD.MM.YY';
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* @param date - The date obj / date string to format
|
|
9
|
+
* @param options - Default is { format: 'DD. month YYYY', month: 'long' }
|
|
10
|
+
*/
|
|
11
|
+
export declare const formatDate: (date: Date | string | null | undefined, options?: FormatDateOptions & {
|
|
4
12
|
useUTC?: boolean;
|
|
5
13
|
}) => string;
|
|
6
14
|
export declare const formatDateTime: (date: Date | string | null | undefined, options?: {
|
|
@@ -10,3 +18,4 @@ export declare const formatDateTime: (date: Date | string | null | undefined, op
|
|
|
10
18
|
}) => string;
|
|
11
19
|
export declare const formatRelativeDateTime: (date: Date | string | null | undefined, isGMT?: boolean) => string;
|
|
12
20
|
export declare const isBetweenDates: (date: Date | string | null | undefined, dates: [Date, Date]) => boolean;
|
|
21
|
+
export {};
|
package/dist/atoms/utils/date.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=(t,e)=>{if(t){const n=new Date(t);if(n.getTime()){if("DD. month YYYY"===e?.format){return`${n.toLocaleDateString("en-GB",{day:"numeric",timeZone:e.useUTC?"UTC":void 0})}. ${n.toLocaleString("en-GB",{month:e?.month??"long",year:"numeric",timeZone:e.useUTC?"UTC":void 0})}`}const t=e?.useUTC?n.getUTCDate():n.getDate(),
|
|
1
|
+
const t=(t,e={format:"DD. month YYYY",month:"long"})=>{if(t){const n=new Date(t);if(n.getTime()){if("DD. month YYYY"===e?.format){return`${n.toLocaleDateString("en-GB",{day:"numeric",timeZone:e.useUTC?"UTC":void 0})}. ${n.toLocaleString("en-GB",{month:e?.month??"long",year:"numeric",timeZone:e.useUTC?"UTC":void 0})}`}const t=e?.useUTC?n.getUTCDate():n.getDate(),o=e?.useUTC?n.getUTCMonth()+1:n.getMonth()+1,i=e?.useUTC?n.getUTCFullYear():n.getFullYear();if("DD. month"===e?.format){return`${n.toLocaleDateString("en-GB",{day:"numeric",timeZone:e.useUTC?"UTC":void 0})}. ${n.toLocaleString("en-GB",{month:e.month??"long",timeZone:e.useUTC?"UTC":void 0})}`}return"YYYY-MM-DD"===e?.format?`${i.toString().padStart(4,"0")}-${o.toString().padStart(2,"0")}-${t.toString().padStart(2,"0")}`:"DD.MM.YY"===e?.format?`${t.toString().padStart(2,"0")}.${o.toString().padStart(2,"0")}.${i.toString().padStart(4,"0").slice(-2)}`:`${t.toString().padStart(2,"0")}.${o.toString().padStart(2,"0")}.${i.toString().padStart(4,"0")}`}}return""},e=(t,e={month:"long",hideYear:!1,isGMT:!1})=>{if(t){const n=new Date(t);if(n.getTime()){e.isGMT&&n.setTime(n.getTime()+6e4*n.getTimezoneOffset());return`${n.toLocaleDateString("en-GB",{day:"numeric"})}. ${n.toLocaleString("en-GB",{month:e.month??"long",year:e.hideYear?void 0:"numeric",hour:"2-digit",minute:"2-digit"})}`}}return""},n=(t,n=!1)=>{if(t){const o=new Date(t),i=new Date;if(o.getTime()){n&&o.setTime(o.getTime()+6e4*o.getTimezoneOffset());const r=(o<i?i.getTime()-o.getTime():o.getTime()-i.getTime())/864e5,a=o.toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit"});return r<1&&o.getDate()===i.getDate()?`Today at ${a}`:r<2&&o<i?`Yesterday at ${a}`:r<2&&r>=0?`Tomorrow at ${a}`:r>2&&r<7&&o>i?`${o.toLocaleString("en-GB",{weekday:"long"})} at ${a}`:e(t,{hideYear:o.getFullYear()===i.getFullYear()})}}return""},o=(t,e)=>{if(t){if(new Date(t).getTime())return t>=e[0]&&t<=e[1]}return!1};export{t as formatDate,e as formatDateTime,n as formatRelativeDateTime,o as isBetweenDates};
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{AuthProvider,useAuth}from"./providers/AuthProvider/AuthProvider.js";export{SideBarProvider,useSideBar}from"./providers/SideBarProvider.js";export{SnackbarProvider,useSnackbar}from"./providers/SnackbarProvider/SnackbarProvider.js";export{TableOfContentsProvider,useTableOfContents}from"./providers/TableOfContentsProvider.js";export{ReleaseNotesProvider,useReleaseNotes}from"./providers/ReleaseNotesProvider.js";export{TutorialHighlightingProvider}from"./providers/TutorialHighlightingProvider/TutorialHighlightingProvider.js";export{LoadingProvider}from"./providers/LoadingProvider.js";export{ThemeProvider,useThemeProvider}from"./providers/ThemeProvider/ThemeProvider.js";export{StepperProvider,useStepper}from"./providers/StepperProvider.js";export{style}from"./atoms/index.js";export{AnimatedCheckmark}from"./molecules/AnimatedCheckmark/AnimatedCheckmark.js";export{ApplicationIcon}from"./molecules/ApplicationIcon/ApplicationIcon.js";export{Badge}from"./molecules/Badge/Badge.js";export{Banner}from"./molecules/Banner/Banner.js";export{Chip}from"./molecules/Chip/Chip.js";export{ContentMenu}from"./molecules/ContentMenu/ContentMenu.js";export{DatePicker}from"./molecules/DatePicker/DatePicker.js";export{Dialog}from"./molecules/Dialog/Dialog.js";export{EquinorLogo}from"./molecules/EquinorLogo/EquinorLogo.js";export{FileProgress}from"./molecules/FileProgress/FileProgress.js";export{FileUploadArea}from"./molecules/FileUploadArea/FileUploadArea.js";export{FullPageSpinner}from"./molecules/FullPageSpinner/FullPageSpinner.js";export{InfoElement}from"./molecules/InfoElement/InfoElement.js";export{OptionalTooltip}from"./molecules/OptionalTooltip/OptionalTooltip.js";export{ProfileAvatar}from"./molecules/ProfileAvatar/ProfileAvatar.js";export{RichTextDisplay}from"./molecules/RichTextDisplay/RichTextDisplay.js";export{RichText}from"./molecules/RichTextEditor/index.js";export{AmplifyBar,EditorMenu,EditorText}from"./molecules/RichTextEditor/MenuBar/MenuBar.js";export{AmplifyKit}from"./molecules/RichTextEditor/custom-extensions/AmplifyKit.js";export{TableMenuBar,TextTable}from"./molecules/RichTextEditor/MenuBar/Table/TableBar.js";export{DEFAULT_FEATURES,RichTextEditorFeatures}from"./molecules/RichTextEditor/RichTextEditor.types.js";export{Search}from"./molecules/Search/Search.js";export{Sieve}from"./molecules/Sieve/Sieve.js";export{SingleFilterMenu}from"./molecules/SingleFilterMenu/SingleFilterMenu.js";export{SkeletonBase,skeletonBaseloading}from"./molecules/Skeleton/SkeletonBase/SkeletonBase.js";export{SkeletonGradient}from"./molecules/Skeleton/SkeletonGradient/SkeletonGradient.js";export{Stepper}from"./molecules/Stepper/Stepper.js";export{OptionDrawer}from"./molecules/OptionDrawer/OptionDrawer.js";export{ComboBox}from"./molecules/Select/ComboBox/ComboBox.js";export{ComboBoxChip}from"./molecules/Select/Select.styles.js";export{SingleSelect}from"./molecules/Select/SingleSelect/SingleSelect.js";export{PageWithTitle}from"./molecules/PageWithTitle/PageWithTitle.js";export{FeedBackIcon}from"./molecules/FeedBackIcon/FeedBackIcon.js";export{ListItem}from"./molecules/ListItem/ListItem.js";export{Checkbox}from"./molecules/SelectionControls/Checkbox/Checkbox.js";export{Radio}from"./molecules/SelectionControls/Radio/Radio.js";export{Switch}from"./molecules/SelectionControls/Switch/Switch.js";export{Accordion,Breadcrumbs,Button,Card,CircularProgress,DateRangePicker,Divider,DotProgress,Dialog as EDSDialog,Icon,LinearProgress,Menu,Tabs,TextField,Typography}from"@equinor/eds-core-react";export{DataGrid}from"./organisms/DataGrid/DataGrid.js";export{FieldSelector}from"./organisms/FieldSelector/FieldSelector.js";export{Filter}from"./organisms/Filter/Filter.js";export{SideBar}from"./organisms/SideBar/index.js";export{TopBar}from"./organisms/TopBar/index.js";export{Status}from"./organisms/Status/index.js";export{BadRequest}from"./organisms/Status/collections/BadRequest.js";export{GenericError}from"./organisms/Status/collections/GenericError.js";export{MissingAccessToApp}from"./organisms/Status/collections/MissingAccessToApp.js";export{MissingPermissions}from"./organisms/Status/collections/MissingPermissions.js";export{PageNotFound}from"./organisms/Status/collections/PageNotFound.js";export{ServerError}from"./organisms/Status/collections/ServerError.js";export{ApiResponseError}from"./organisms/Status/collections/ApiResponseError.js";export{TableOfContents}from"./organisms/TableOfContents/TableOfContents.js";export{Template}from"./organisms/Template/Template.js";export{ExpandingIconButton}from"./deprecated/ExpandingIconButton/ExpandingIconButton.js";export{default as IconToggleButton}from"./deprecated/IconToggleButton.js";export{OldStepper}from"./deprecated/OldStepper/OldStepper.js";export{useSelect}from"./atoms/hooks/useSelect.js";export{useDebounce}from"./atoms/hooks/useDebounce.js";export{useFakeProgress}from"./atoms/hooks/useFakeProgress.js";export{useLocalStorage}from"./atoms/hooks/useLocalStorage.js";export{useNotification}from"./organisms/TopBar/Notifications/NotificationProvider.js";export{useOnScreenMultiple}from"./atoms/hooks/useOnScreenMultiple.js";export{usePrevious}from"./atoms/hooks/usePrevious.js";export{useSignalRMessages}from"./atoms/hooks/useSignalRMessages.js";export{useAmplifyKit}from"./atoms/hooks/useAmplifyKit.js";export{spacings}from"./atoms/style/spacings.js";export{colors}from"./atoms/style/colors.js";export{animation}from"./atoms/style/animation.js";export{elevation,shape,typography}from"./atoms/style/index.js";export{ErrorType}from"./atoms/enums/Errors.js";export{EnvironmentType}from"./atoms/enums/Environment.js";export{Theme}from"./atoms/enums/Theme.js";export{SpacingsMode}from"./atoms/enums/SpacingsMode.js";export{amplify_failure,amplify_lwd,amplify_success,amplify_wellbore,amplify_wireline,amplify_wireline_cased_hole,amplify_wireline_open_hole}from"./atoms/icons/drilling.js";export{amplify_calculator,amplify_overlay,amplify_sidebyside}from"./atoms/icons/map.js";export{amplify_aml,amplify_arrow_up_down,amplify_branch,amplify_info_small,amplify_merged,amplify_overview,amplify_resources,amplify_sharepoint,amplify_shield_person,amplify_small_portal,amplify_snail,amplify_sort_small,amplify_tutorials}from"./atoms/icons/other.js";export{amplify_h1,amplify_h2,amplify_h3,amplify_h4,amplify_table_add_column_left,amplify_table_add_column_right,amplify_table_add_row_above,amplify_table_add_row_below,amplify_table_column_heading,amplify_table_merge_cells,amplify_table_remove_column,amplify_table_remove_row,amplify_table_row_heading,amplify_table_split_cell}from"./atoms/icons/wysiwyg.js";export{auth,environment}from"./atoms/utils/auth_environment.js";export{formatLatLng,formatUtm}from"./atoms/utils/coordinate.js";export{formatDate,formatDateTime,formatRelativeDateTime,isBetweenDates}from"./atoms/utils/date.js";export{exportComponent}from"./atoms/utils/export.js";export{setupIcons}from"./atoms/utils/favicon.js";export{convertLatLngToUtm,convertUtmToLatLng,degrees2radians,distanceLatLng,utmProjection}from"./atoms/utils/map.js";export{defaultQueryOptions}from"./atoms/utils/reactquery.js";export{IMG_WITH_ALT,IMG_WITH_SRC_AND_ALT,cleanRichTextValue,extractImageUrls,getFeatures,imageToB64}from"./atoms/utils/richtext.js";export{formatBytes,formatDataSize,formatKiloBytes}from"./atoms/utils/size.js";export{sortByDate,sortByWellboreName}from"./atoms/utils/sort.js";export{Empty,capitalize}from"./atoms/utils/string.js";export{isValidUrl}from"./atoms/utils/url.js";export{getHighlightElementBoundingBox,highlightTutorialElementID}from"./atoms/utils/tutorials.js";export{RichTextEditor}from"./molecules/RichTextEditor/RichTextEditor.js";
|
|
1
|
+
export{AuthProvider,useAuth}from"./providers/AuthProvider/AuthProvider.js";export{SideBarProvider,useSideBar}from"./providers/SideBarProvider.js";export{SnackbarProvider,useSnackbar}from"./providers/SnackbarProvider/SnackbarProvider.js";export{TableOfContentsProvider,useTableOfContents}from"./providers/TableOfContentsProvider.js";export{ReleaseNotesProvider,useReleaseNotes}from"./providers/ReleaseNotesProvider.js";export{TutorialHighlightingProvider}from"./providers/TutorialHighlightingProvider/TutorialHighlightingProvider.js";export{LoadingProvider}from"./providers/LoadingProvider.js";export{ThemeProvider,useThemeProvider}from"./providers/ThemeProvider/ThemeProvider.js";export{StepperProvider,useStepper}from"./providers/StepperProvider.js";export{style}from"./atoms/index.js";export{AnimatedCheckmark}from"./molecules/AnimatedCheckmark/AnimatedCheckmark.js";export{ApplicationIcon}from"./molecules/ApplicationIcon/ApplicationIcon.js";export{Badge}from"./molecules/Badge/Badge.js";export{Banner}from"./molecules/Banner/Banner.js";export{Chip}from"./molecules/Chip/Chip.js";export{ContentMenu}from"./molecules/ContentMenu/ContentMenu.js";export{DatePicker}from"./molecules/DatePicker/DatePicker.js";export{Dialog}from"./molecules/Dialog/Dialog.js";export{EquinorLogo}from"./molecules/EquinorLogo/EquinorLogo.js";export{FileProgress}from"./molecules/FileProgress/FileProgress.js";export{FileUploadArea}from"./molecules/FileUploadArea/FileUploadArea.js";export{FullPageSpinner}from"./molecules/FullPageSpinner/FullPageSpinner.js";export{InfoElement}from"./molecules/InfoElement/InfoElement.js";export{OptionalTooltip}from"./molecules/OptionalTooltip/OptionalTooltip.js";export{ProfileAvatar}from"./molecules/ProfileAvatar/ProfileAvatar.js";export{RichTextDisplay}from"./molecules/RichTextDisplay/RichTextDisplay.js";export{RichText}from"./molecules/RichTextEditor/index.js";export{AmplifyBar,EditorMenu,EditorText}from"./molecules/RichTextEditor/MenuBar/MenuBar.js";export{AmplifyKit}from"./molecules/RichTextEditor/custom-extensions/AmplifyKit.js";export{TableMenuBar,TextTable}from"./molecules/RichTextEditor/MenuBar/Table/TableBar.js";export{DEFAULT_FEATURES,RichTextEditorFeatures}from"./molecules/RichTextEditor/RichTextEditor.types.js";export{Search}from"./molecules/Search/Search.js";export{Sieve}from"./molecules/Sieve/Sieve.js";export{SingleFilterMenu}from"./molecules/SingleFilterMenu/SingleFilterMenu.js";export{SkeletonBase,skeletonBaseloading}from"./molecules/Skeleton/SkeletonBase/SkeletonBase.js";export{SkeletonGradient}from"./molecules/Skeleton/SkeletonGradient/SkeletonGradient.js";export{Stepper}from"./molecules/Stepper/Stepper.js";export{OptionDrawer}from"./molecules/OptionDrawer/OptionDrawer.js";export{ComboBox}from"./molecules/Select/ComboBox/ComboBox.js";export{ComboBoxChip}from"./molecules/Select/Select.styles.js";export{SingleSelect}from"./molecules/Select/SingleSelect/SingleSelect.js";export{PageWithTitle}from"./molecules/PageWithTitle/PageWithTitle.js";export{FeedBackIcon}from"./molecules/FeedBackIcon/FeedBackIcon.js";export{ListItem}from"./molecules/ListItem/ListItem.js";export{Checkbox}from"./molecules/SelectionControls/Checkbox/Checkbox.js";export{Radio}from"./molecules/SelectionControls/Radio/Radio.js";export{Switch}from"./molecules/SelectionControls/Switch/Switch.js";export{Accordion,Breadcrumbs,Button,Card,CircularProgress,DateRangePicker,Divider,DotProgress,Dialog as EDSDialog,Icon,LinearProgress,Menu,Tabs,TextField,Typography}from"@equinor/eds-core-react";export{DataGrid}from"./organisms/DataGrid/DataGrid.js";export{FieldSelector}from"./organisms/FieldSelector/FieldSelector.js";export{Filter}from"./organisms/Filter/Filter.js";export{SideBar}from"./organisms/SideBar/index.js";export{TopBar}from"./organisms/TopBar/index.js";export{Status}from"./organisms/Status/index.js";export{BadRequest}from"./organisms/Status/collections/BadRequest.js";export{GenericError}from"./organisms/Status/collections/GenericError.js";export{MissingAccessToApp}from"./organisms/Status/collections/MissingAccessToApp.js";export{MissingPermissions}from"./organisms/Status/collections/MissingPermissions.js";export{PageNotFound}from"./organisms/Status/collections/PageNotFound.js";export{ServerError}from"./organisms/Status/collections/ServerError.js";export{ApiResponseError}from"./organisms/Status/collections/ApiResponseError.js";export{TableOfContents}from"./organisms/TableOfContents/TableOfContents.js";export{Template}from"./organisms/Template/Template.js";export{PageTitle}from"./organisms/PageTitle/PageTitle.js";export{ExpandingIconButton}from"./deprecated/ExpandingIconButton/ExpandingIconButton.js";export{default as IconToggleButton}from"./deprecated/IconToggleButton.js";export{OldStepper}from"./deprecated/OldStepper/OldStepper.js";export{useSelect}from"./atoms/hooks/useSelect.js";export{useDebounce}from"./atoms/hooks/useDebounce.js";export{useFakeProgress}from"./atoms/hooks/useFakeProgress.js";export{useLocalStorage}from"./atoms/hooks/useLocalStorage.js";export{useNotification}from"./organisms/TopBar/Notifications/NotificationProvider.js";export{useOnScreenMultiple}from"./atoms/hooks/useOnScreenMultiple.js";export{usePrevious}from"./atoms/hooks/usePrevious.js";export{useSignalRMessages}from"./atoms/hooks/useSignalRMessages.js";export{useAmplifyKit}from"./atoms/hooks/useAmplifyKit.js";export{spacings}from"./atoms/style/spacings.js";export{colors}from"./atoms/style/colors.js";export{animation}from"./atoms/style/animation.js";export{elevation,shape,typography}from"./atoms/style/index.js";export{ErrorType}from"./atoms/enums/Errors.js";export{EnvironmentType}from"./atoms/enums/Environment.js";export{Theme}from"./atoms/enums/Theme.js";export{SpacingsMode}from"./atoms/enums/SpacingsMode.js";export{amplify_failure,amplify_lwd,amplify_success,amplify_wellbore,amplify_wireline,amplify_wireline_cased_hole,amplify_wireline_open_hole}from"./atoms/icons/drilling.js";export{amplify_calculator,amplify_overlay,amplify_sidebyside}from"./atoms/icons/map.js";export{amplify_aml,amplify_arrow_up_down,amplify_branch,amplify_info_small,amplify_merged,amplify_overview,amplify_resources,amplify_sharepoint,amplify_shield_person,amplify_small_portal,amplify_snail,amplify_sort_small,amplify_tutorials}from"./atoms/icons/other.js";export{amplify_h1,amplify_h2,amplify_h3,amplify_h4,amplify_table_add_column_left,amplify_table_add_column_right,amplify_table_add_row_above,amplify_table_add_row_below,amplify_table_column_heading,amplify_table_merge_cells,amplify_table_remove_column,amplify_table_remove_row,amplify_table_row_heading,amplify_table_split_cell}from"./atoms/icons/wysiwyg.js";export{auth,environment}from"./atoms/utils/auth_environment.js";export{formatLatLng,formatUtm}from"./atoms/utils/coordinate.js";export{formatDate,formatDateTime,formatRelativeDateTime,isBetweenDates}from"./atoms/utils/date.js";export{exportComponent}from"./atoms/utils/export.js";export{setupIcons}from"./atoms/utils/favicon.js";export{convertLatLngToUtm,convertUtmToLatLng,degrees2radians,distanceLatLng,utmProjection}from"./atoms/utils/map.js";export{defaultQueryOptions}from"./atoms/utils/reactquery.js";export{IMG_WITH_ALT,IMG_WITH_SRC_AND_ALT,cleanRichTextValue,extractImageUrls,getFeatures,imageToB64}from"./atoms/utils/richtext.js";export{formatBytes,formatDataSize,formatKiloBytes}from"./atoms/utils/size.js";export{sortByDate,sortByWellboreName}from"./atoms/utils/sort.js";export{Empty,capitalize}from"./atoms/utils/string.js";export{isValidUrl}from"./atoms/utils/url.js";export{getHighlightElementBoundingBox,highlightTutorialElementID}from"./atoms/utils/tutorials.js";export{RichTextEditor}from"./molecules/RichTextEditor/RichTextEditor.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as r,jsx as e}from"react/jsx-runtime";import{forwardRef as t}from"react";import{DatePicker as o,Typography as i}from"@equinor/eds-core-react";import{DatePickerWrapper as a}from"./DatePicker.styles.js";const m=t(((t,m)=>{const n=t.locale??"en-GB",c=void 0!==t.formatOptions?t.formatOptions:{
|
|
1
|
+
import{jsxs as r,jsx as e}from"react/jsx-runtime";import{forwardRef as t}from"react";import{DatePicker as o,Typography as i}from"@equinor/eds-core-react";import{DatePickerWrapper as a}from"./DatePicker.styles.js";const m=t(((t,m)=>{const n=t.locale??"en-GB",c=void 0!==t.formatOptions?t.formatOptions:{day:"2-digit",month:"2-digit",year:"numeric"};return r(a,{children:[e(o,{...t,ref:m,locale:n,formatOptions:c}),t.meta&&e(i,{variant:"helper",group:"input",children:t.meta})]})}));m.displayName="DatePicker";export{m as DatePicker};
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
|
-
import { CompactFileProgressBaseProps, FileProgressPropsExtension } from './FileProgress';
|
|
3
|
-
|
|
4
|
-
}
|
|
5
|
-
declare const CompactFileProgress: FC<CompactFileProgressProps>;
|
|
2
|
+
import { CompactFileProgressBaseProps, FileProgressPropsExtension } from './FileProgress.types';
|
|
3
|
+
declare const CompactFileProgress: FC<CompactFileProgressBaseProps & FileProgressPropsExtension>;
|
|
6
4
|
export default CompactFileProgress;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as t,jsx as e}from"react/jsx-runtime";import{useState as r,useEffect as i,useMemo as o}from"react";import{Icon as
|
|
1
|
+
import{jsxs as t,jsx as e}from"react/jsx-runtime";import{useState as r,useEffect as i,useMemo as o}from"react";import{Icon as n,Typography as s}from"@equinor/eds-core-react";import{error_outlined as a,clear as l}from"@equinor/eds-icons";import{Rejection as m,DoneWrapper as p,LoadingWrapper as c,CircularProgress as h,CompactFileProgressContainer as d,FileTooltip as j,AdditionalText as g,CloseButton as u}from"./CompactFileProgress.styles.js";import{isFileImage as x,getFileIcon as k,readUploadedFileAsText as w}from"./FileProgress.utils.js";import{colors as S}from"../../atoms/style/colors.js";import"../AnimatedCheckmark/AnimatedCheckmark.styles.js";import"../ApplicationIcon/ApplicationIcon.js";import"../Badge/Badge.styles.js";import"../Banner/Banner.styles.js";import"../Chip/Chip.js";import"../ContentMenu/ContentMenu.styles.js";import"../DatePicker/DatePicker.js";import"../Dialog/Dialog.js";import"../EquinorLogo/EquinorLogo.js";import"../../atoms/utils/auth_environment.js";import"html2canvas";import"proj4";import"../RichTextEditor/RichTextEditor.types.js";import"./RegularFileProgress.styles.js";import"../FileUploadArea/FileUploadArea.js";import"../FullPageSpinner/FullPageSpinner.js";import"../InfoElement/InfoElement.js";import{OptionalTooltip as v}from"../OptionalTooltip/OptionalTooltip.js";import"../ProfileAvatar/ProfileAvatar.js";import"@tiptap/react";import"../RichTextEditor/custom-extensions/AmplifyKit.js";import"../RichTextEditor/RichTextEditor.styles.js";import"../RichTextEditor/MenuBar/MenuBar.js";import"@tanstack/react-query";import"../RichTextEditor/MenuBar/MenuBar.styles.js";import"../RichTextEditor/MenuBar/MenuButton.js";import"../Search/Search.js";import"react-router-dom";import"../Sieve/Sieve.styles.js";import"../../_virtual/lodash.js";import"../SingleFilterMenu/SingleFilterMenu.js";import"../Skeleton/SkeletonBase/SkeletonBase.js";import"../Skeleton/Skeleton.styles.js";import"../Stepper/Stepper.js";import"../OptionDrawer/OptionDrawer.js";import"../Select/Select.styles.js";import"../ListItem/ListItem.js";import"../SelectionControls/Checkbox/Checkbox.js";import"../SelectionControls/Radio/Radio.js";import"../SelectionControls/Switch/Switch.js";const y=({file:y,isError:f,shortErrorText:E,showCompleteState:C,fullErrorText:B,handleOnClick:T,isDeleting:R,..._})=>{const[A,M]=r("");i((()=>{f||(async t=>{const e=await w(t);M(e)})(y)}),[f,y]);const P=o((()=>f?B&&B.length>0?B:"An error has occurred with the file":""),[B,f]),D=o((()=>f?t(m,{children:[e(n,{data:a,color:S.interactive.warning__text.rgba}),e("div",{children:E&&E.length>0?E:"Invalid file type"}),e("svg",{width:"88",height:"88",viewBox:"0 0 88 88",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:e("rect",{x:"1",y:"1",width:"86",height:"86",rx:"7",stroke:S.interactive.warning__text.rgba,strokeWidth:"2",strokeDasharray:"4 4"})})]}):C&&!R&&x(y.name)?e(p,{children:e("img",{src:A,alt:` ${y.name}`})}):C&&!R?e(p,{children:e(n,{data:k(y.name)})}):t(c,{children:[e(h,{variant:_.indeterminate||R?"indeterminate":"determinate",value:_.indeterminate?_.progressPercent:void 0,size:24}),e(s,{variant:"meta",children:"Uploading..."}),e("svg",{width:"88",height:"88",viewBox:"0 0 88 88",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:e("rect",{x:"1",y:"1",width:"86",height:"86",rx:"7",stroke:S.ui.background__medium.rgba,strokeWidth:"2",strokeDasharray:"4 4"})})]})),[f,C,R,E,A,y.name,_]);return t(d,{$isError:f,children:[e(j,{title:P,children:D}),e(v,{title:y.name,children:e(g,{group:"paragraph",variant:"meta",children:y.name})}),!R&&e(u,{"data-testid":"attachment-delete-button",onClick:T,children:e(n,{color:S.text.static_icons__tertiary.rgba,data:l})})]})};export{y as default};
|
|
@@ -1,33 +1,23 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
interface FileProgressBaseProps {
|
|
4
|
-
onDelete: () => Promise<void> | void;
|
|
5
|
-
file: FileWithPath | File;
|
|
6
|
-
isDone?: boolean;
|
|
7
|
-
progressPercent?: number;
|
|
8
|
-
indeterminate?: boolean;
|
|
9
|
-
onCancel?: () => void;
|
|
10
|
-
isError?: boolean;
|
|
11
|
-
}
|
|
12
|
-
export interface RegularFileProgressBaseProps extends FileProgressBaseProps {
|
|
13
|
-
compact?: false;
|
|
14
|
-
fullErrorText?: string;
|
|
15
|
-
customLoadingText?: string;
|
|
16
|
-
customCompleteText?: string;
|
|
17
|
-
onRetry?: () => void;
|
|
18
|
-
}
|
|
19
|
-
export interface CompactFileProgressBaseProps extends FileProgressBaseProps {
|
|
20
|
-
compact: true;
|
|
21
|
-
shortErrorText?: string;
|
|
22
|
-
fullErrorText?: string;
|
|
23
|
-
}
|
|
2
|
+
import { FileProgressProps } from './FileProgress.types';
|
|
24
3
|
export interface FileProgressPropsExtension {
|
|
25
4
|
showCompleteState: boolean;
|
|
26
5
|
handleOnClick: () => void;
|
|
27
6
|
isDeleting: boolean;
|
|
28
7
|
}
|
|
29
8
|
/**
|
|
30
|
-
* @
|
|
9
|
+
* @param onDelete - call back when clicking delete
|
|
10
|
+
* @param file - file to show progress for (FileWithPath or File)
|
|
11
|
+
* @param onCancel - call back when clicking cancel
|
|
12
|
+
* @param isError - if the file upload has an error
|
|
13
|
+
* @param isDone - if the file upload is done
|
|
14
|
+
* @param progressPercent - the percentage of the file that has been uploaded, if undefined its considered indeterminate
|
|
15
|
+
* @param indeterminate - if the file upload progress is indeterminate
|
|
16
|
+
* @param compact - if the file progress should use compact mode
|
|
17
|
+
* @param fullErrorText - the full error text to show when hovering over the error icon
|
|
18
|
+
* @param customLoadingText - custom loading text to show
|
|
19
|
+
* @param customCompleteText - custom complete text to show
|
|
20
|
+
* @param onRetry - call back when clicking retry on a failed upload
|
|
21
|
+
* @param shortErrorText - short error text to show (in compact mode)
|
|
31
22
|
*/
|
|
32
|
-
export declare const FileProgress: FC<
|
|
33
|
-
export {};
|
|
23
|
+
export declare const FileProgress: FC<FileProgressProps>;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { FileWithPath } from 'react-dropzone';
|
|
2
|
+
interface FileProgressBaseProps {
|
|
3
|
+
onDelete: () => Promise<void> | void;
|
|
4
|
+
file: FileWithPath | File;
|
|
5
|
+
onCancel?: () => void;
|
|
6
|
+
isError?: boolean;
|
|
7
|
+
}
|
|
8
|
+
type DoneFileProgress = FileProgressBaseProps & {
|
|
9
|
+
isDone: true;
|
|
10
|
+
indeterminate?: undefined;
|
|
11
|
+
};
|
|
12
|
+
type ProgressPercentFileProgress = FileProgressBaseProps & {
|
|
13
|
+
progressPercent: number;
|
|
14
|
+
isDone?: false;
|
|
15
|
+
indeterminate?: false;
|
|
16
|
+
};
|
|
17
|
+
type IndeterminateFileProgress = FileProgressBaseProps & {
|
|
18
|
+
progressPercent?: undefined;
|
|
19
|
+
isDone?: false;
|
|
20
|
+
indeterminate: true;
|
|
21
|
+
};
|
|
22
|
+
type FileProgressBase = DoneFileProgress | ProgressPercentFileProgress | IndeterminateFileProgress;
|
|
23
|
+
export type RegularFileProgressBaseProps = FileProgressBase & {
|
|
24
|
+
compact?: false;
|
|
25
|
+
fullErrorText?: string;
|
|
26
|
+
customLoadingText?: string;
|
|
27
|
+
customCompleteText?: string;
|
|
28
|
+
onRetry?: () => void;
|
|
29
|
+
};
|
|
30
|
+
export type CompactFileProgressBaseProps = FileProgressBase & {
|
|
31
|
+
compact: true;
|
|
32
|
+
shortErrorText?: string;
|
|
33
|
+
fullErrorText?: string;
|
|
34
|
+
};
|
|
35
|
+
export interface FileProgressPropsExtension {
|
|
36
|
+
showCompleteState: boolean;
|
|
37
|
+
handleOnClick: () => void;
|
|
38
|
+
isDeleting: boolean;
|
|
39
|
+
}
|
|
40
|
+
export type FileProgressProps = RegularFileProgressBaseProps | CompactFileProgressBaseProps;
|
|
41
|
+
export {};
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
|
-
import { FileProgressPropsExtension, RegularFileProgressBaseProps } from './FileProgress';
|
|
3
|
-
|
|
4
|
-
}
|
|
5
|
-
declare const RegularFileProgress: FC<RegularFileProgressProps>;
|
|
2
|
+
import { FileProgressPropsExtension, RegularFileProgressBaseProps } from './FileProgress.types';
|
|
3
|
+
declare const RegularFileProgress: FC<RegularFileProgressBaseProps & FileProgressPropsExtension>;
|
|
6
4
|
export default RegularFileProgress;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as r,jsx as e}from"react/jsx-runtime";import{useMemo as i}from"react";import{Icon as t,Typography as o,Button as n,CircularProgress as
|
|
1
|
+
import{jsxs as r,jsx as e}from"react/jsx-runtime";import{useMemo as i}from"react";import{Icon as t,Typography as o,Button as n,CircularProgress as s}from"@equinor/eds-core-react";import{file as a,delete_to_trash as c,close_circle_outlined as l,refresh as m}from"@equinor/eds-icons";import{colors as d}from"../../atoms/style/colors.js";import"../../atoms/utils/auth_environment.js";import"html2canvas";import"proj4";import"../RichTextEditor/RichTextEditor.types.js";import{formatDataSize as p}from"../../atoms/utils/size.js";import{Container as h,RegularFileProgressWrapper as u,FileName as v,ProgressWrapper as g,LinearProgress as z,RegularFileProgressDetails as _}from"./RegularFileProgress.styles.js";const f=({onRetry:f,file:x,customLoadingText:j,customCompleteText:y,isError:C,fullErrorText:E,showCompleteState:F,handleOnClick:T,isDeleting:b,...P})=>{const R=i((()=>{if(!x?.size||P.isDone||P.indeterminate||void 0===P.progressPercent)return 1;const r=x.size/100*P.progressPercent;return p({inputFormat:"B",size:r,decimals:1})}),[x?.size,P]),k=i((()=>{if(C)return E??"An error has occurred";return F?y??"File uploaded!":j??"loading..."}),[y,j,E,F,C]);return r(h,{$isError:C,children:[e(t,{data:a,color:C?d.interactive.danger__hover.rgba:d.interactive.primary__resting.rgba,size:32}),r(u,{children:[r(v,{children:[e(o,{variant:"caption",children:x.name}),r("div",{children:[e(n,b?{variant:"ghost_icon",children:e(s,{size:24})}:{variant:"ghost_icon",onClick:T,children:e(t,{data:F?c:l,color:d.text.static_icons__tertiary.rgba,size:24})}),C&&f&&e(n,{variant:"ghost_icon",onClick:f,children:e(t,{data:m,color:d.text.static_icons__tertiary.rgba,size:24})})]})]}),e(g,{children:!F&&e(z,{variant:P.indeterminate?"indeterminate":"determinate",value:P.indeterminate?P.progressPercent:void 0})}),r(_,{children:[e(o,{variant:"overline",children:k}),x?.size&&e(o,{variant:"overline",children:F?p({size:x.size,decimals:1,inputFormat:"B"}):`${R} of ${p({size:x.size,decimals:1,inputFormat:"B"})}`})]})]})]})};export{f as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{useMemo as t}from"react";import{Menu as i}from"@equinor/eds-core-react";import{NoItemsFoundText as m}from"./Select.styles.js";import{getCumulativeArrayFromNumberedArray as l}from"./Select.utils.js";import{SelectMenuItem as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{useMemo as t}from"react";import{Menu as i}from"@equinor/eds-core-react";import{NoItemsFoundText as m}from"./Select.styles.js";import{getCumulativeArrayFromNumberedArray as l}from"./Select.utils.js";import{SelectMenuItem as r}from"./SelectMenuItem.js";const n=n=>{const{onItemSelect:o,onItemKeyDown:s,itemRefs:c,groups:a,search:f,onSearchFilter:u}=n,p=t((()=>{if(""===f)return a;const e=new RegExp(f.trim(),"i");return a.map((t=>({title:t.title,items:t.items.filter((t=>void 0!==u?u(f,t):t.label.match(e)))}))).filter((e=>e.items.length>0))}),[a,u,f]),d=t((()=>{const e=p.map((e=>e.items.length));return l(e)}),[p]);return 0===p.length?e(m,{children:"No items found"}):"values"in n?p.map(((t,m)=>e(i.Section,{index:m,title:t.title,children:t.items.map(((i,l)=>e(r,{index:l+d[m],childOffset:0,item:i,itemRefs:c,onItemKeyDown:s,onItemSelect:o,values:n.values},`${t.title}-${m}-item-${i.value}`)))},`${t.title}-${m}`))):p.map(((t,m)=>e(i.Section,{index:m,title:t.title,children:t.items.map(((i,l)=>e(r,{index:l+d[m],childOffset:0,item:i,itemRefs:c,onItemKeyDown:s,onItemSelect:o,value:n.value},`${t.title}-${m}-item-${i.value}`)))},`${t.title}-${m}`)))};export{n as GroupedSelectMenu};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import{useMemo as
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import{useMemo as r}from"react";import{Menu as i}from"@equinor/eds-core-react";import{AddTagItem as m}from"./AddTagItem.js";import{NoItemsFoundText as o,NoTagFoundText as d}from"./Select.styles.js";import{flattenOptions as l,getChildOffset as s}from"./Select.utils.js";import{SelectMenuItem as c}from"./SelectMenuItem.js";const a=a=>{const{search:h,items:f,itemRefs:u,onItemKeyDown:p,onSearchFilter:g}=a,I=r((()=>{if(""===h)return f;const e=new RegExp(h.trim(),"i");return l(f).filter((t=>void 0!==g?g(h,t):t.label.match(e)))}),[f,g,h]);if(0===I.length&&!a.onAddItem)return e(o,{children:"No items found"});const x=I.some((e=>e.children&&e.children.length>0)),A=I.map(((e,t)=>({childOffset:s(I,t),index:t,item:e,itemValue:e.value,parentHasNestedItems:x,...a})));return"onAddItem"in a&&a.onAddItem&&""!==h&&(1===I.length&&I.at(0)?.label.toLowerCase()!==h.trim().toLowerCase()||1!==I.length)?t(n,{children:[e(i.Section,{title:"Add tag",index:0,children:e(m,{index:0,itemRefs:u,onItemKeyDown:p,onAddItem:a.onAddItem,children:h})}),e(i.Section,{title:"Tag search results",index:1,children:A.length>0?A.map(((t,n)=>e(c,{...t,index:n+1},`menu-item-${n}-${t.item.value}`))):t(d,{children:['No tag for "',h,'" found.']})})]}):A.map(((t,n)=>e(c,{...t,index:n},`menu-item-${n}-${t.item.value}`)))};export{a as ListSelectMenu};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t}from"react/jsx-runtime";import{useRef as
|
|
1
|
+
import{jsx as e,jsxs as t}from"react/jsx-runtime";import{useRef as o,useMemo as n}from"react";import{Label as r,CircularProgress as l,Icon as a}from"@equinor/eds-core-react";import{thumbs_up as i,warning_filled as c,error_filled as s,arrow_drop_up as d,arrow_drop_down as m,clear as u}from"@equinor/eds-icons";import{tokens as h}from"../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{useSelect as p}from"../../atoms/hooks/useSelect.js";import{GroupedSelectMenu as g}from"./GroupedSelectMenu.js";import{ListSelectMenu as b}from"./ListSelectMenu.js";import{ValueText as f,ComboBoxChip as v,Wrapper as y,Container as x,Section as C,PlaceholderText as S,ClearButton as I,HelperWrapper as O,StyledMenu as k}from"./Select.styles.js";import{useOutsideClick as w}from"../../node_modules/@equinor/eds-utils/dist/esm/hooks/useOutsideClick.js";const{colors:D}=h,R=h=>{const{clearable:R=!0,loading:$=!1,disabled:j=!1,lightBackground:V=!1,underlineHighlight:B=!1,sortValues:F=!0,placeholder:K="Select...",label:T,helperText:_,showHelperIcon:q=!0,meta:z,id:A=`amplify-combobox-${T}`,variant:H,inDialog:W=!1,onSearchFilter:M,"data-testid":E}=h,{handleOnAddItem:G,handleOnClear:L,handleOnItemKeyDown:N,handleOnItemSelect:J,handleOnSearchChange:P,handleOnSearchKeyDown:Q,handleToggleOpen:U,itemRefs:X,search:Y,selectedValues:Z,handleOnClose:ee,handleOnOpen:te,handleOnRemoveItem:oe,open:ne,searchRef:re,tryingToRemoveItem:le}=p({...h,clearable:R,loading:$,disabled:j,lightBackground:V,underlineHighlight:B,sortValues:F,placeholder:K}),ae=o(null),ie=o(null),ce=n((()=>!!T||!!z),[T,z]),se=n((()=>!!_),[_]),de=n((()=>{if(q)switch(H){case"error":return s;case"warning":return c;case"success":return i}}),[q,H]);w(ie.current,(e=>{W&&ne&&e.target&&ae.current&&ie.current&&!ae.current.contains(e.target)&&!ie.current?.contains(e.target)&&ee()}));const me=n((()=>"value"in h&&h.value?e(f,{children:h.value.label}):Z.map((t=>"customValueComponent"in h&&h.customValueComponent?e(h.customValueComponent,{item:t,onDelete:()=>oe(t),tryingToRemove:void 0!==le&&le.value===t.value},t.value):e(v,{"data-testid":"amplify-combobox-chip",className:"amplify-combo-box-chip",onDelete:()=>oe(t),$tryingToRemove:le?.value===t.value,$lightBackground:V,children:t.label},t.value)))),[Z,le,V,h,oe]);return t("div",{children:[ce&&e(r,{label:T,meta:z,htmlFor:A}),t(y,{children:[t(x,{"data-testid":E||"combobox-container",ref:ae,onClick:te,"aria-expanded":ne,$variant:H,$lightBackground:V,children:[t(C,{children:[""===Y&&0===Z.length&&e(S,{children:K}),(""===Y||"values"in h&&Z.length>0)&&me,e("input",{id:A,disabled:j||$,ref:re,type:"search",role:"combobox",value:Y,autoComplete:"off",onChange:P,onKeyDownCapture:Q})]}),$?e(l,{size:16}):e(a,{onClick:U,data:ne?d:m,color:D.interactive.primary__resting.rgba}),R&&Z.length>0&&!$&&e(I,{id:"clear",variant:"ghost_icon",onClick:L,"data-testid":"clearBtn",children:e(a,{data:u,size:18})})]}),se&&t(O,{$variant:H,children:[de&&e(a,{data:de,size:16}),e(r,{label:_,htmlFor:A})]})]}),ne&&e(k,{ref:ie,open:!0,id:"combobox-menu",anchorEl:ae.current,onClose:ee,placement:"bottom",style:{width:`${ae.current?.clientWidth}px`,maxWidth:`${ae.current?.clientWidth}px`},children:"groups"in h&&h.groups?e(g,{...h,search:Y,itemRefs:X,onItemSelect:J,onItemKeyDown:N,onSearchFilter:M}):e(b,{...h,search:Y,itemRefs:X,onAddItem:h.onAddItem?G:void 0,onItemSelect:J,onItemKeyDown:N,onSearchFilter:M})})]})};export{R as Select};
|
|
@@ -15,7 +15,6 @@ export interface MultiSelectCommon<T extends SelectOptionRequired> {
|
|
|
15
15
|
values: SelectOption<T>[];
|
|
16
16
|
onSelect: (values: SelectOption<T>[], selectedValue?: SelectOption<T>) => void;
|
|
17
17
|
syncParentChildSelection?: boolean;
|
|
18
|
-
onAddItem?: (item: string) => void;
|
|
19
18
|
customValueComponent?: FC<{
|
|
20
19
|
item: SelectOption<T>;
|
|
21
20
|
onDelete: () => void;
|
|
@@ -49,16 +48,13 @@ interface SelectMenuItemProps<T extends SelectOptionRequired> {
|
|
|
49
48
|
index: number;
|
|
50
49
|
childOffset: number;
|
|
51
50
|
depth?: number;
|
|
52
|
-
}
|
|
53
|
-
export type SingleSelectMenuItemProps<T extends SelectOptionRequired> = {
|
|
54
|
-
multiselect?: undefined;
|
|
55
51
|
isParentSelected?: boolean;
|
|
56
52
|
parentHasNestedItems?: boolean;
|
|
57
|
-
}
|
|
53
|
+
}
|
|
54
|
+
export type SingleSelectMenuItemProps<T extends SelectOptionRequired> = {
|
|
55
|
+
value: SelectOption<T> | undefined;
|
|
56
|
+
} & Omit<SelectMenuProps<T>, 'search'> & SelectMenuItemProps<T>;
|
|
58
57
|
export type MultiSelectMenuItemProps<T extends SelectOptionRequired> = {
|
|
59
|
-
isParentSelected?: boolean;
|
|
60
|
-
parentHasNestedItems?: boolean;
|
|
61
|
-
multiselect: true;
|
|
62
58
|
values: SelectOption<T>[];
|
|
63
59
|
} & Omit<SelectMenuProps<T>, 'search'> & SelectMenuItemProps<T>;
|
|
64
60
|
export declare const VARIANT_OPTIONS: Variants[];
|
|
@@ -80,6 +76,7 @@ export interface CommonSelectProps<T extends SelectOptionRequired> {
|
|
|
80
76
|
inDialog?: boolean;
|
|
81
77
|
onOpenCallback?: (value: boolean) => void;
|
|
82
78
|
onSearchFilter?: (searchValue: string, item: T) => void;
|
|
79
|
+
onAddItem?: (item: string) => void;
|
|
83
80
|
'data-testid'?: string;
|
|
84
81
|
}
|
|
85
82
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as r,Fragment as t}from"react/jsx-runtime";import{useState as n,useRef as
|
|
1
|
+
import{jsx as e,jsxs as r,Fragment as t}from"react/jsx-runtime";import{useState as n,useRef as i,useMemo as o}from"react";import{Icon as l}from"@equinor/eds-core-react";import{checkbox_outline as c,chevron_down as a,chevron_right as s,checkbox as u}from"@equinor/eds-icons";import{tokens as d}from"../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{getChildOffset as m}from"./Select.utils.js";import{getParentIcon as p}from"./SelectMenuItem.utils.js";import{spacings as h}from"../../atoms/style/spacings.js";import{MenuItemSpacer as f,MenuItemWrapper as v,SmallButton as y,StyledMenuItem as g}from"./Select.styles.js";const{colors:w}=d,k=d=>{const{index:b,childOffset:x,depth:C=0,item:D,itemRefs:$,onItemKeyDown:A,onItemSelect:I,parentHasNestedItems:_=!1}=d,[j,K]=n(!1),S=i(-1),O=i([]),q=("values"in d?d.values.map((({value:e})=>e)):[]).includes(D.value),L=o((()=>"value"in d?c:p(D,d.values)),[D,d]),M=o((()=>new Array(C).fill(0).map(((r,t)=>e(f,{},`spacer-${r+t}`)))),[C]),R=e=>{e.preventDefault(),I(D)},H=e=>{e.stopPropagation(),K((e=>!e))},N=e=>{"ArrowDown"===e.key?S.current+=1:"ArrowUp"===e.key&&(S.current-=1),S.current<=-1?($.current[b]?.focus(),S.current=-1):S.current+x===O.current.length?(S.current=-1,A(e),K(!1)):S.current>=0&&S.current<O.current.length-x&&O.current[S.current+x]?.focus()},U=e=>{!j&&"ArrowDown"===e.key||"ArrowUp"===e.key?A(e):"ArrowRight"===e.key||"ArrowLeft"===e.key?K((e=>!e)):j&&"ArrowDown"===e.key&&-1===S.current&&(S.current=0,O.current[S.current+x]?.focus())};return D.children&&D.children.length>0&&"values"in d?r(t,{children:[r(v,{style:{paddingLeft:0===C?h.small:0},children:[M,e(y,{variant:"ghost_icon",onClick:H,"data-testid":"toggle-button",children:e(l,{color:w.interactive.primary__resting.rgba,data:j?a:s})}),r(g,{$depth:C,ref:e=>{$.current[b]=e},index:b,closeMenuOnClick:!1,onKeyDownCapture:U,onClick:R,children:[e(l,{color:w.interactive.primary__resting.rgba,data:L}),e("span",{children:D.label})]})]}),j&&D.children.map(((r,t)=>e(k,{index:x+t,childOffset:x+m(D.children,t),depth:C+1,item:r,itemRefs:O,values:d.values,onItemKeyDown:N,onItemSelect:I,parentHasNestedItems:!0},`child-${t}-${r.value}-${D.value}`)))]}):"values"in d?r(v,{children:[M,r(g,{$depth:C,$paddedLeft:_,ref:e=>{$.current[b]=e},index:b,tabIndex:C,closeMenuOnClick:!1,onKeyDownCapture:A,onClick:R,children:[e(l,{color:w.interactive.primary__resting.rgba,data:q?u:c}),e("span",{children:D.label})]})]}):e(v,{children:e(g,{$depth:C,$selected:d.value&&D.value===d.value.value,ref:e=>{$.current[b]=e},index:b,onKeyDownCapture:A,onClick:R,children:e("span",{children:D.label})})})};export{k as SelectMenuItem};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{Select as
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{Select as o}from"../Select.js";function t(t){if("groups"in t&&t.groups&&t.onAddItem)throw new Error("[ACL - SingleSelect] Using 'onAddItem' is only supported in lists and not groups");return r(o,{...t})}export{t as SingleSelect};
|
|
@@ -16,7 +16,8 @@ export type { DialogProps, DialogAction } from './Dialog/Dialog';
|
|
|
16
16
|
export { EquinorLogo } from './EquinorLogo/EquinorLogo';
|
|
17
17
|
export type { EquinorLogoProps } from './EquinorLogo/EquinorLogo';
|
|
18
18
|
export { FileProgress } from './FileProgress/FileProgress';
|
|
19
|
-
export type {
|
|
19
|
+
export type { FileProgressPropsExtension } from './FileProgress/FileProgress';
|
|
20
|
+
export type { FileProgressProps } from './FileProgress/FileProgress.types';
|
|
20
21
|
export { FileUploadArea } from './FileUploadArea/FileUploadArea';
|
|
21
22
|
export type { FileUploadAreaProps } from './FileUploadArea/FileUploadArea';
|
|
22
23
|
export { FullPageSpinner } from './FullPageSpinner/FullPageSpinner';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useEffect as r}from"react";import"../../molecules/RichTextEditor/custom-extensions/AmplifyKit.js";import"../../molecules/RichTextEditor/RichTextEditor.types.js";import"../../_virtual/lodash.js";import"@equinor/subsurface-app-management";import"@microsoft/signalr";import"@tanstack/react-query";import"../../atoms/enums/Environment.js";import{environment as o}from"../../atoms/utils/auth_environment.js";import"../TopBar/Notifications/NotificationProvider.js";import"../../providers/AuthProvider/AuthProvider.js";import"../../providers/ReleaseNotesProvider.js";import"../../providers/SideBarProvider.js";import"../../providers/SnackbarProvider/SnackbarProvider.js";import"../../providers/StepperProvider.js";import"../../providers/TableOfContentsProvider.js";import"../../providers/ThemeProvider/ThemeProvider.js";import"../../atoms/style/colors.js";import"../../atoms/enums/Errors.js";import"../../atoms/enums/Theme.js";import"../../atoms/enums/SpacingsMode.js";import"html2canvas";import"proj4";const t=o.getAppName(import.meta.env.VITE_NAME),e=({title:o,children:e})=>(r((()=>{document.title!==o&&(document.title=`${t} - ${o}`)}),[o]),e);export{e as PageTitle};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as o,Fragment as r,jsx as e}from"react/jsx-runtime";import{useState as t,useRef as i,useCallback as m,useEffect as
|
|
1
|
+
import{jsxs as o,Fragment as r,jsx as e}from"react/jsx-runtime";import{useState as t,useRef as i,useCallback as m,useEffect as s,useMemo as n}from"react";import{Typography as p,Button as a,Icon as c}from"@equinor/eds-core-react";import{log_out as u}from"@equinor/eds-icons";import{TopBarMenu as l}from"../TopBarMenu.js";import{useActiveImpersonationUser as d}from"./ImpersonateMenu/hooks/useActiveImpersonationUser.js";import{useCanImpersonate as h}from"./ImpersonateMenu/hooks/useCanImpersonate.js";import{useStopImpersonation as v}from"./ImpersonateMenu/hooks/useStopImpersonation.js";import{ImpersonateMenu as j}from"./ImpersonateMenu/ImpersonateMenu.js";import{Container as f,TextContent as I,RolesContainer as A,RoleChip as E,ButtonWrapper as N}from"./Account.styles.js";import{AccountAvatar as C}from"./AccountAvatar.js";import{AccountButton as T}from"./AccountButton.js";import{ActiveUserImpersonationButton as P}from"./ActiveUserImpersonationButton.js";import{ImpersonateButton as M}from"./ImpersonateButton.js";import"../../../molecules/RichTextEditor/custom-extensions/AmplifyKit.js";import"../../../molecules/RichTextEditor/RichTextEditor.types.js";import"../../../_virtual/lodash.js";import"@equinor/subsurface-app-management";import"@microsoft/signalr";import"@tanstack/react-query";import{EnvironmentType as g}from"../../../atoms/enums/Environment.js";import{environment as k}from"../../../atoms/utils/auth_environment.js";import"../Notifications/NotificationProvider.js";import{useAuth as _}from"../../../providers/AuthProvider/AuthProvider.js";import"../../../providers/ReleaseNotesProvider.js";import"../../../providers/SideBarProvider.js";import"../../../providers/SnackbarProvider/SnackbarProvider.js";import"../../../providers/StepperProvider.js";import"../../../providers/TableOfContentsProvider.js";import"../../../providers/ThemeProvider/ThemeProvider.js";import"../../../atoms/style/colors.js";import"../../../atoms/enums/Errors.js";import"../../../atoms/enums/Theme.js";import"../../../atoms/enums/SpacingsMode.js";import"html2canvas";import"proj4";import{impersonateUserDtoToFullName as B}from"./ImpersonateMenu/Impersonate.utils.js";const R=({renderCustomButton:R,hideRoleChips:x=!1,children:y})=>{const S=k.getEnvironmentName(import.meta.env.VITE_ENVIRONMENT_NAME),q=k.getApiClientId(import.meta.env.VITE_API_CLIENT_ID),O=k.getAppName(import.meta.env.VITE_NAME),{account:U,roles:b,logout:V}=_(),[D,L]=t(!1),[K,w]=t(!1),z=i(null),{data:F=!0}=h(),{data:G}=d(),{mutate:H}=v(),J=G?B(G):U?.name,Q=G?G.roles:b,W=G?G.uniqueName:U?.username,X=()=>L(!1),Y=m((()=>{L((o=>!o)),w(!1)}),[]),Z=()=>{w(!0),L(!1)};s((()=>{G&&null!=G.appName&&G.appName.toUpperCase()!=O.toUpperCase()&&H()}),[G,O,H]);const $=n((()=>R?R(z,Y):null),[R,Y]);return o(r,{children:[$||e(T,{ref:z,onClick:Y}),o(l,{open:D,title:"Account",onClose:X,anchorEl:z.current,children:[o(f,{children:[G&&e(P,{onClick:Z}),e(C,{}),o(I,{children:[e(p,{variant:"h6",children:J}),e(p,{children:W})]}),Q&&!x&&e(A,{children:Q.map((o=>e(E,{children:o},o)))}),y,F&&S!==g.PRODUCTION&&q&&e(M,{onOpenImpersonateMenu:Z,onClose:X})]}),e(N,{children:o(a,{variant:"ghost",onClick:V,children:[e(c,{data:u}),"Log out"]})})]}),e(j,{open:K,onClose:()=>w(!1),anchorEl:z.current})]})};R.displayName="TopBar.Account";export{R as Account};
|
|
@@ -5,4 +5,4 @@ import{jsx as e}from"react/jsx-runtime";import"react";import"../../../molecules/
|
|
|
5
5
|
> div:first-child {
|
|
6
6
|
background: ${o.interactive.warning__text.rgba};
|
|
7
7
|
}
|
|
8
|
-
`,
|
|
8
|
+
`,m=({size:o,fullName:i})=>{const{data:m}=t();return e(s,{children:e(r,{size:o,name:i||m?.firstName})})};export{m as ImpersonateAvatar};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as e,jsx as o}from"react/jsx-runtime";import{arrow_back as r,delete_to_trash as t}from"@equinor/eds-icons";import{useDeleteImpersonation as i}from"../hooks/useDeleteImpersonation.js";import{Header as s}from"../Impersonate.styles.js";import{Container as l}from"./DeleteUser.styles.js";import"react";import"../../../../../molecules/RichTextEditor/custom-extensions/AmplifyKit.js";import"../../../../../molecules/RichTextEditor/RichTextEditor.types.js";import"../../../../../_virtual/lodash.js";import"@equinor/subsurface-app-management";import"@microsoft/signalr";import"@tanstack/react-query";import"../../../../../atoms/enums/Environment.js";import"../../../../../atoms/utils/auth_environment.js";import"../../../Notifications/NotificationProvider.js";import"../../../../../providers/AuthProvider/AuthProvider.js";import"../../../../../providers/ReleaseNotesProvider.js";import"../../../../../providers/SideBarProvider.js";import{useSnackbar as m}from"../../../../../providers/SnackbarProvider/SnackbarProvider.js";import"../../../../../providers/StepperProvider.js";import"../../../../../providers/TableOfContentsProvider.js";import"../../../../../providers/ThemeProvider/ThemeProvider.js";import{colors as n}from"../../../../../atoms/style/colors.js";import"../../../../../atoms/enums/Errors.js";import"../../../../../atoms/enums/Theme.js";import"../../../../../atoms/enums/SpacingsMode.js";import"html2canvas";import"proj4";import"../../../../../molecules/AnimatedCheckmark/AnimatedCheckmark.styles.js";import"../../../../../molecules/ApplicationIcon/ApplicationIcon.js";import"../../../../../molecules/Badge/Badge.styles.js";import{Button as a,Icon as c,Typography as p,DotProgress as u}from"@equinor/eds-core-react";import"../../../../../molecules/Banner/Banner.styles.js";import"../../../../../molecules/Chip/Chip.js";import"../../../../../molecules/ContentMenu/ContentMenu.styles.js";import"../../../../../molecules/DatePicker/DatePicker.js";import"../../../../../molecules/Dialog/Dialog.js";import"../../../../../molecules/EquinorLogo/EquinorLogo.js";import"../../../../../molecules/FileProgress/CompactFileProgress.styles.js";import"../../../../../molecules/FileProgress/RegularFileProgress.styles.js";import"../../../../../molecules/FileUploadArea/FileUploadArea.js";import"../../../../../molecules/FullPageSpinner/FullPageSpinner.js";import"../../../../../molecules/InfoElement/InfoElement.js";import"../../../../../molecules/OptionalTooltip/OptionalTooltip.js";import"../../../../../molecules/ProfileAvatar/ProfileAvatar.js";import"@tiptap/react";import"../../../../../molecules/RichTextEditor/RichTextEditor.styles.js";import"../../../../../molecules/RichTextEditor/MenuBar/MenuBar.js";import"../../../../../molecules/RichTextEditor/MenuBar/MenuBar.styles.js";import"../../../../../molecules/RichTextEditor/MenuBar/MenuButton.js";import"../../../../../molecules/Search/Search.js";import"react-router-dom";import"../../../../../molecules/Sieve/Sieve.styles.js";import"../../../../../molecules/SingleFilterMenu/SingleFilterMenu.js";import"../../../../../molecules/Skeleton/SkeletonBase/SkeletonBase.js";import"../../../../../molecules/Skeleton/Skeleton.styles.js";import"../../../../../molecules/Stepper/Stepper.js";import"../../../../../molecules/OptionDrawer/OptionDrawer.js";import"../../../../../molecules/Select/Select.styles.js";import"../../../../../molecules/ListItem/ListItem.js";import"../../../../../molecules/SelectionControls/Checkbox/Checkbox.js";import"../../../../../molecules/SelectionControls/Radio/Radio.js";import"../../../../../molecules/SelectionControls/Switch/Switch.js";import{TextContent as d,RolesContainer as j,RoleChip as h}from"../../Account.styles.js";import{ImpersonateAvatar as v}from"../../ImpersonateAvatar.js";const S=({user:S,onBack:
|
|
1
|
+
import{jsxs as e,jsx as o}from"react/jsx-runtime";import{arrow_back as r,delete_to_trash as t}from"@equinor/eds-icons";import{useDeleteImpersonation as i}from"../hooks/useDeleteImpersonation.js";import{Header as s}from"../Impersonate.styles.js";import{Container as l}from"./DeleteUser.styles.js";import"react";import"../../../../../molecules/RichTextEditor/custom-extensions/AmplifyKit.js";import"../../../../../molecules/RichTextEditor/RichTextEditor.types.js";import"../../../../../_virtual/lodash.js";import"@equinor/subsurface-app-management";import"@microsoft/signalr";import"@tanstack/react-query";import"../../../../../atoms/enums/Environment.js";import"../../../../../atoms/utils/auth_environment.js";import"../../../Notifications/NotificationProvider.js";import"../../../../../providers/AuthProvider/AuthProvider.js";import"../../../../../providers/ReleaseNotesProvider.js";import"../../../../../providers/SideBarProvider.js";import{useSnackbar as m}from"../../../../../providers/SnackbarProvider/SnackbarProvider.js";import"../../../../../providers/StepperProvider.js";import"../../../../../providers/TableOfContentsProvider.js";import"../../../../../providers/ThemeProvider/ThemeProvider.js";import{colors as n}from"../../../../../atoms/style/colors.js";import"../../../../../atoms/enums/Errors.js";import"../../../../../atoms/enums/Theme.js";import"../../../../../atoms/enums/SpacingsMode.js";import"html2canvas";import"proj4";import"../../../../../molecules/AnimatedCheckmark/AnimatedCheckmark.styles.js";import"../../../../../molecules/ApplicationIcon/ApplicationIcon.js";import"../../../../../molecules/Badge/Badge.styles.js";import{Button as a,Icon as c,Typography as p,DotProgress as u}from"@equinor/eds-core-react";import"../../../../../molecules/Banner/Banner.styles.js";import"../../../../../molecules/Chip/Chip.js";import"../../../../../molecules/ContentMenu/ContentMenu.styles.js";import"../../../../../molecules/DatePicker/DatePicker.js";import"../../../../../molecules/Dialog/Dialog.js";import"../../../../../molecules/EquinorLogo/EquinorLogo.js";import"../../../../../molecules/FileProgress/CompactFileProgress.styles.js";import"../../../../../molecules/FileProgress/RegularFileProgress.styles.js";import"../../../../../molecules/FileUploadArea/FileUploadArea.js";import"../../../../../molecules/FullPageSpinner/FullPageSpinner.js";import"../../../../../molecules/InfoElement/InfoElement.js";import"../../../../../molecules/OptionalTooltip/OptionalTooltip.js";import"../../../../../molecules/ProfileAvatar/ProfileAvatar.js";import"@tiptap/react";import"../../../../../molecules/RichTextEditor/RichTextEditor.styles.js";import"../../../../../molecules/RichTextEditor/MenuBar/MenuBar.js";import"../../../../../molecules/RichTextEditor/MenuBar/MenuBar.styles.js";import"../../../../../molecules/RichTextEditor/MenuBar/MenuButton.js";import"../../../../../molecules/Search/Search.js";import"react-router-dom";import"../../../../../molecules/Sieve/Sieve.styles.js";import"../../../../../molecules/SingleFilterMenu/SingleFilterMenu.js";import"../../../../../molecules/Skeleton/SkeletonBase/SkeletonBase.js";import"../../../../../molecules/Skeleton/Skeleton.styles.js";import"../../../../../molecules/Stepper/Stepper.js";import"../../../../../molecules/OptionDrawer/OptionDrawer.js";import"../../../../../molecules/Select/Select.styles.js";import"../../../../../molecules/ListItem/ListItem.js";import"../../../../../molecules/SelectionControls/Checkbox/Checkbox.js";import"../../../../../molecules/SelectionControls/Radio/Radio.js";import"../../../../../molecules/SelectionControls/Switch/Switch.js";import{TextContent as d,RolesContainer as j,RoleChip as h}from"../../Account.styles.js";import{ImpersonateAvatar as v}from"../../ImpersonateAvatar.js";const S=({user:S,onBack:g})=>{const{mutateAsync:y,isPending:f}=i(),{showSnackbar:k}=m(),P=`${S.firstName} ${S.lastName}`;return e(l,{children:[e(s,{children:[o(a,{variant:"ghost_icon",onClick:g,children:o(c,{data:r})}),o(p,{variant:"h6",children:"Delete user"})]}),e("section",{children:[o(p,{variant:"h4",children:"You are deleting a user"}),e(p,{variant:"caption",color:n.text.static_icons__tertiary.rgba,children:['Are you sure you want to delete user "',P,'"?']})]}),o(v,{size:64,fullName:P}),e(d,{children:[o(p,{variant:"h6",children:P}),o(p,{children:S.uniqueName})]}),o(j,{children:S.roles.map((e=>o(h,{children:e},e)))}),e("div",{children:[f?o(a,{variant:"outlined",color:"danger",children:o(u,{color:"tertiary"})}):e(a,{variant:"outlined",color:"danger",onClick:async()=>{await y(S),k(`Deleted user "${P}" successfully`),g()},children:[o(c,{data:t})," Delete user"]}),o(a,{variant:"ghost",onClick:g,children:"Cancel"})]})]})};export{S as DeleteUser};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function t(t){return`${t.firstName} ${t.lastName}`}export{t as impersonateUserDtoToFullName};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as o}from"react/jsx-runtime";import{useState as t,useEffect as r}from"react";import{Menu as s,Typography as
|
|
1
|
+
import{jsx as e,jsxs as o}from"react/jsx-runtime";import{useState as t,useEffect as r}from"react";import{Menu as s,Typography as i}from"@equinor/eds-core-react";import{CreateOrEditUser as l}from"./CreateOrEditUser/CreateOrEditUser.js";import{DeleteUser as m}from"./DeleteUser/DeleteUser.js";import{useActiveImpersonationUser as n}from"./hooks/useActiveImpersonationUser.js";import{useGetAllImpersonationUsersForApp as c}from"./hooks/useGetAllImpersonationUsersForApp.js";import{Actions as p}from"./Actions.js";import{CreateNewUserButton as a}from"./CreateNewUserButton.js";import{Header as u,Content as d,NoUsersText as j}from"./ImpersonateMenu.styles.js";import{UserImpersonation as h}from"./UserImpersonation.js";import"../../../../molecules/AnimatedCheckmark/AnimatedCheckmark.styles.js";import"../../../../molecules/ApplicationIcon/ApplicationIcon.js";import"../../../../molecules/Badge/Badge.styles.js";import"../../../../molecules/Banner/Banner.styles.js";import"@equinor/eds-icons";import"../../../../molecules/Chip/Chip.js";import"../../../../molecules/ContentMenu/ContentMenu.styles.js";import"../../../../molecules/DatePicker/DatePicker.js";import"../../../../molecules/Dialog/Dialog.js";import"../../../../molecules/EquinorLogo/EquinorLogo.js";import"../../../../molecules/FileProgress/CompactFileProgress.styles.js";import"../../../../atoms/style/colors.js";import"../../../../atoms/utils/auth_environment.js";import"html2canvas";import"proj4";import"../../../../molecules/RichTextEditor/RichTextEditor.types.js";import"../../../../molecules/FileProgress/RegularFileProgress.styles.js";import"../../../../molecules/FileUploadArea/FileUploadArea.js";import"../../../../molecules/FullPageSpinner/FullPageSpinner.js";import"../../../../molecules/InfoElement/InfoElement.js";import"../../../../molecules/OptionalTooltip/OptionalTooltip.js";import"../../../../molecules/ProfileAvatar/ProfileAvatar.js";import"@tiptap/react";import"../../../../molecules/RichTextEditor/custom-extensions/AmplifyKit.js";import"../../../../molecules/RichTextEditor/RichTextEditor.styles.js";import"../../../../molecules/RichTextEditor/MenuBar/MenuBar.js";import"@tanstack/react-query";import"../../../../molecules/RichTextEditor/MenuBar/MenuBar.styles.js";import"../../../../molecules/RichTextEditor/MenuBar/MenuButton.js";import{Search as C}from"../../../../molecules/Search/Search.js";import"react-router-dom";import"../../../../molecules/Sieve/Sieve.styles.js";import"../../../../_virtual/lodash.js";import"../../../../molecules/SingleFilterMenu/SingleFilterMenu.js";import"../../../../molecules/Skeleton/SkeletonBase/SkeletonBase.js";import"../../../../molecules/Skeleton/Skeleton.styles.js";import"../../../../molecules/Stepper/Stepper.js";import"../../../../molecules/OptionDrawer/OptionDrawer.js";import"../../../../molecules/Select/Select.styles.js";import"../../../../molecules/ListItem/ListItem.js";import"../../../../molecules/SelectionControls/Checkbox/Checkbox.js";import"../../../../molecules/SelectionControls/Radio/Radio.js";import"../../../../molecules/SelectionControls/Switch/Switch.js";import{impersonateUserDtoToFullName as S}from"./Impersonate.utils.js";const f=({open:f,onClose:k,anchorEl:g})=>{const[y,E]=t(!1),[v,x]=t(void 0),[B,A]=t(void 0),[q,I]=t(""),[U,F]=t(""),{data:M}=c(),{data:R}=n(),w=M?.filter((e=>S(e).toLowerCase().includes(U.toLowerCase())));r((()=>{!f&&R&&q!==R.uniqueName?I(R.uniqueName):f||R||""===q||I("")}),[R,f,q]);const P=()=>{k()},T=()=>{E(!1),v&&x(void 0),P()},D=e=>{x(M?.find((o=>o.uniqueName===e))),E(!0)},N=e=>{A(M?.find((o=>o.uniqueName===e)))},L=()=>{A(void 0)};return f?y?e(s,{open:!0,anchorEl:g,onClose:T,placement:"bottom-end",style:{width:"400px"},children:e(l,{editingUser:v,onBack:()=>{E(!1),v&&x(void 0)}})}):B?e(s,{open:!0,anchorEl:g,onClose:T,placement:"bottom-end",style:{width:"400px"},children:e(m,{user:B,onBack:L})}):o(s,{open:!0,anchorEl:g,onClose:P,placement:"bottom-end",style:{width:"400px"},children:[o(u,{children:[e(i,{variant:"h6",children:"Impersonate"}),e(i,{variant:"caption",children:"Select a user to impersonate"}),e(C,{placeholder:"Search users",value:U,onChange:e=>{F(e.target.value)}})]}),e(d,{children:w&&w.length>0?w?.map((o=>e(h,{...o,selected:q===o.uniqueName,onClick:I,onEdit:D,onDelete:N},o.uniqueName))):e(j,{children:"No items found"})}),e(a,{onClick:()=>E(!0)}),e(p,{selectedUniqueName:q,onCancel:k})]}):null};export{f as ImpersonateMenu};
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import{jsxs as e,Fragment as t,jsx as r}from"react/jsx-runtime";import{useState as i,useRef as o}from"react";import{Icon as n,Typography as l,Button as a,Menu as s}from"@equinor/eds-core-react";import{account_circle as c,check as d,more_horizontal as m,edit as g,delete_to_trash as
|
|
1
|
+
import{jsxs as e,Fragment as t,jsx as r}from"react/jsx-runtime";import{useState as i,useRef as o}from"react";import{Icon as n,Typography as l,Button as a,Menu as s}from"@equinor/eds-core-react";import{account_circle as c,check as d,more_horizontal as m,edit as g,delete_to_trash as p}from"@equinor/eds-icons";import{Container as h,RoleChipContainer as u,RoleChip as f}from"./UserImpersonation.styles.js";import{colors as _}from"../../../../atoms/style/colors.js";import{ListItem as b}from"../../../../molecules/ListItem/ListItem.js";import{OptionalTooltip as v}from"../../../../molecules/OptionalTooltip/OptionalTooltip.js";import{impersonateUserDtoToFullName as C}from"./Impersonate.utils.js";import j from"styled-components";const k=j(b)`
|
|
2
2
|
svg {
|
|
3
|
-
fill: ${
|
|
3
|
+
fill: ${_.interactive.danger__resting.rgba};
|
|
4
4
|
}
|
|
5
5
|
p {
|
|
6
|
-
color: ${
|
|
6
|
+
color: ${_.interactive.danger__resting.rgba};
|
|
7
7
|
}
|
|
8
8
|
&:disabled {
|
|
9
9
|
svg {
|
|
10
|
-
fill: ${
|
|
10
|
+
fill: ${_.interactive.disabled__text.rgba};
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
&:hover:not(:disabled) {
|
|
14
|
-
background: ${
|
|
14
|
+
background: ${_.interactive.danger__highlight.rgba};
|
|
15
15
|
}
|
|
16
|
-
|
|
16
|
+
`,$=({firstName:j,lastName:$,uniqueName:y,roles:N,activeUsers:x,selected:I,onClick:q,onEdit:E,onDelete:D})=>{const[L,O]=i(!1),T=o(null),U=C({firstName:j,lastName:$}),w=[...N].sort(),z=()=>O(!1);return e(t,{children:[e(h,{$selected:I,onClick:e=>{e.target!==T.current&&q(y)},"data-testid":"impersonation-user",children:[r(n,{color:_.text.static_icons__tertiary.rgba,data:c}),r(l,{"data-testid":"name",children:U}),e(u,{$selected:I,children:[r(f,{"data-testid":"role",children:w[0]}),w.length>1&&r(v,{title:w.slice(1).join(", "),children:r(f,{"data-testid":"additional-roles",children:"+"+(w.length-1)})})]}),I&&r(n,{data:d,color:_.interactive.primary__resting.rgba}),r(a,{variant:"ghost_icon",ref:T,onClick:()=>O((e=>!e)),children:r(n,{data:m})})]}),L&&e(s,{open:!0,anchorEl:T.current,placement:"right-start",onClose:z,children:[r(b,{label:"Edit user",onClick:()=>{E(y),z()},leadingContent:g}),r(v,{title:x.length>0?"Cannot delete user with active sessions":void 0,children:r(k,{label:"Delete user",onClick:()=>{D(y),z()},disabled:x.length>0,leadingContent:p})})]})]})};export{$ as UserImpersonation};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ImpersonateUserService as r}from"@equinor/subsurface-app-management";import{useQueryClient as t,useMutation as a}from"@tanstack/react-query";import{SET_ACTIVE_IMPERSONATION as e,ACTIVE_USERIMPERSONATION as n,IMPERSONATE_QUERY_FILTER as o}from"../Impersonate.constants.js";import{useSnackbar as i}from"../../../../../providers/SnackbarProvider/SnackbarProvider.js";function s(){const s=t(),{showSnackbar:m}=i();return a({mutationKey:[e],mutationFn:async t=>{const a=await r.startImpersonating(t);return s.setQueryData([n],a),await s.invalidateQueries(o),m(`Set active user impersonation: ${a.
|
|
1
|
+
import{ImpersonateUserService as r}from"@equinor/subsurface-app-management";import{useQueryClient as t,useMutation as a}from"@tanstack/react-query";import{SET_ACTIVE_IMPERSONATION as e,ACTIVE_USERIMPERSONATION as n,IMPERSONATE_QUERY_FILTER as o}from"../Impersonate.constants.js";import{useSnackbar as i}from"../../../../../providers/SnackbarProvider/SnackbarProvider.js";function s(){const s=t(),{showSnackbar:m}=i();return a({mutationKey:[e],mutationFn:async t=>{const a=await r.startImpersonating(t);return s.setQueryData([n],a),await s.invalidateQueries(o),m(`Set active user impersonation: ${a.firstName} ${a.lastName}`),a}})}export{s as useStartImpersonation};
|
|
@@ -15,5 +15,6 @@ export { TableOfContents } from './TableOfContents/TableOfContents';
|
|
|
15
15
|
export type { TableOfContentsProps } from './TableOfContents/TableOfContents';
|
|
16
16
|
export { Template } from './Template/Template';
|
|
17
17
|
export type { ContentProps, TemplateType } from './Template/Template';
|
|
18
|
+
export { PageTitle } from './PageTitle/PageTitle';
|
|
18
19
|
export { Card, } from '@equinor/eds-core-react';
|
|
19
20
|
export type { CardProps } from '@equinor/eds-core-react';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useRef as r,useEffect as e}from"react";import{ApiError as t}from"@equinor/subsurface-app-management";import{useQueryClient as s}from"@tanstack/react-query";import{useSnackbar as o}from"./SnackbarProvider.js";const a=({children:a})=>{const n=s(),{showSnackbar:i}=o(),u=r(!1);return e((()=>{if(!u.current){u.current=!0;const r=n.getDefaultOptions();n.setDefaultOptions({...r,queries:{throwOnError:r=>{if(r instanceof t){let e=r.message;"userMessage"in r.body&&(e=r.body.userMessage),i({text:`${r.status}: ${e}`,variant:"error"})}return!1}},mutations:{throwOnError:r=>{if(r instanceof t){let e=r.message;"userMessage"in r.body&&(e=r.body.userMessage),i({text:`${r.status}: ${e}`,variant:"error"})}return!1}}})}}),[n,i]),a};export{a as APIErrorSnackbar};
|
|
@@ -20,5 +20,10 @@ export interface State {
|
|
|
20
20
|
export declare const useSnackbar: () => State;
|
|
21
21
|
export type SnackbarProviderProps = {
|
|
22
22
|
children: ReactNode;
|
|
23
|
+
showAPIErrors?: boolean;
|
|
23
24
|
} & SnackbarProps;
|
|
25
|
+
/**
|
|
26
|
+
* @param children - Children to render under the SnackbarProvider
|
|
27
|
+
* @param showAPIErrors - Set default query options for showing API errors, defaults to true
|
|
28
|
+
*/
|
|
24
29
|
export declare const SnackbarProvider: FC<SnackbarProviderProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as r,jsx as o}from"react/jsx-runtime";import{createContext as t,useContext as i,useState as e}from"react";import{Icon as n,Typography as a,Snackbar as d,Button as
|
|
1
|
+
import{jsxs as r,jsx as o}from"react/jsx-runtime";import{createContext as t,useContext as i,useState as e}from"react";import{Icon as n,Typography as a,Snackbar as d,Button as s}from"@equinor/eds-core-react";import{close as c}from"@equinor/eds-icons";import{APIErrorSnackbar as l}from"./APIErrorSnackbar.js";import{StyledSnackbar as m}from"./SnackbarProvider.styles.js";import{snackbarIcon as h}from"./SnackbarProvider.utils.js";const v=t(void 0),u=()=>{const r=i(v);if(void 0===r)throw new Error("useSnackbar must be used within a SnackbarContextProvider");return r},b=({children:t,showAPIErrors:i=!0,...u})=>{const[b,p]=e(!1),[f,k]=e(void 0),[S,P]=e(u),[x,C]=e(),w=()=>{p(!1),S.onClose&&S.onClose()};return r(v.Provider,{value:{showSnackbar:(r,o)=>{k("string"==typeof r?{text:r,variant:"info"}:r),P(o?.customProps??u),C(o?.action??void 0),p(!0)},setActionDisabledState:r=>{C((o=>o?{...o,disabled:r}:o))},hideSnackbar:()=>p(!1)},children:[i?o(l,{children:t}):t,r(m,{$variant:f?.variant,open:b,onClose:w,autoHideDuration:S.autoHideDuration,placement:S.placement,children:[f&&o(n,{data:h(f.variant)}),o(a,{variant:"body_short",children:f?.text}),x&&o(d.Action,{children:o(s,{disabled:x.disabled,variant:"ghost",onClick:x.handler,children:x.text})}),o(s,{variant:"ghost_icon",onClick:w,children:o(n,{data:c})})]})]})};export{b as SnackbarProvider,u as useSnackbar};
|
|
@@ -27,9 +27,20 @@ interface StepperContextType {
|
|
|
27
27
|
export declare const StepperContext: import("react").Context<StepperContextType | undefined>;
|
|
28
28
|
export declare function useStepper(): StepperContextType;
|
|
29
29
|
export interface StepperProviderProps {
|
|
30
|
-
initialStep?: number;
|
|
31
30
|
steps: [Step, Step, ...Step[]];
|
|
32
31
|
children: ReactNode;
|
|
33
32
|
}
|
|
34
|
-
|
|
33
|
+
interface StepperProviderSyncedToURLParamProps extends StepperProviderProps {
|
|
34
|
+
syncToURLParam: true;
|
|
35
|
+
}
|
|
36
|
+
interface StepperProviderWithoutSyncToURLParamProps extends StepperProviderProps {
|
|
37
|
+
syncToURLParam?: undefined;
|
|
38
|
+
initialStep?: number;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* @param steps - Which steps the stepper should have
|
|
42
|
+
* @param syncToURLParam - Assumes step param is at end of path, syncs current step to the URL param
|
|
43
|
+
* @param initialStep - Initial step to start the stepper at, can't be set if you use syncToURLParam
|
|
44
|
+
*/
|
|
45
|
+
export declare const StepperProvider: FC<StepperProviderSyncedToURLParamProps | StepperProviderWithoutSyncToURLParamProps>;
|
|
35
46
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{createContext as t,useState as r,useContext as s}from"react";import{useParams as n,useNavigate as o,useLocation as i}from"react-router";const p=t(void 0);function u(){const e=s(p);if(!e)throw new Error("useStepper must be used within a StepperProvider");return e}const a=({steps:t,children:s,...u})=>{const{step:a}=n(),c=o(),m=i().pathname.replace(`/${a}`,""),S=u.syncToURLParam?Number(a):u?.initialStep??0;if(u.syncToURLParam&&a&&isNaN(Number(a)))throw new Error('Step URL param must be a valid number when using "syncToURLParam"');const[b,h]=r(S),l=u.syncToURLParam?Number(a):b,[d,f]=r(0);if(S>=t.length||S<0)throw new Error("initialStep must be a valid index of the steps array");const g=e=>{u.syncToURLParam?c(`${m}/${e}`):h(e)};return e(p.Provider,{value:{steps:t,currentStep:l,currentSubStep:d,setCurrentStep:g,goToNextStep:()=>{"subSteps"in t[l]&&t[l].subSteps&&d<t[l].subSteps.length-1?f((e=>e+1)):l!==t.length-1&&(g(l+1),0!==d&&f(0))},goToPreviousStep:()=>{if(d>0&&"subSteps"in t[l]&&t[l].subSteps&&t[l].subSteps.length>0)return void f((e=>e-1));if(0===l)return;g(l-1);const e=t.at(l-1);e&&"subSteps"in e&&e.subSteps&&f(e.subSteps.length-1)}},children:s})};export{p as StepperContext,a as StepperProvider,u as useStepper};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@equinor/amplify-component-lib",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.3.0",
|
|
4
4
|
"description": "Frontend Typescript components for the Amplify team",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -101,18 +101,18 @@
|
|
|
101
101
|
"@rollup/plugin-node-resolve": "^16.0.0",
|
|
102
102
|
"@rollup/plugin-terser": "^0.4.4",
|
|
103
103
|
"@rollup/plugin-typescript": "^12.1.2",
|
|
104
|
-
"@storybook/addon-actions": "^8.5.
|
|
104
|
+
"@storybook/addon-actions": "^8.5.4",
|
|
105
105
|
"@storybook/addon-designs": "^8.1.0",
|
|
106
|
-
"@storybook/addon-docs": "^8.5.
|
|
107
|
-
"@storybook/addon-essentials": "^8.5.
|
|
108
|
-
"@storybook/addon-links": "^8.5.
|
|
109
|
-
"@storybook/addon-mdx-gfm": "^8.5.
|
|
110
|
-
"@storybook/blocks": "^8.5.
|
|
111
|
-
"@storybook/components": "^8.5.
|
|
112
|
-
"@storybook/manager-api": "^8.5.
|
|
113
|
-
"@storybook/preview-api": "^8.5.
|
|
114
|
-
"@storybook/react": "^8.5.
|
|
115
|
-
"@storybook/react-vite": "^8.5.
|
|
106
|
+
"@storybook/addon-docs": "^8.5.4",
|
|
107
|
+
"@storybook/addon-essentials": "^8.5.4",
|
|
108
|
+
"@storybook/addon-links": "^8.5.4",
|
|
109
|
+
"@storybook/addon-mdx-gfm": "^8.5.4",
|
|
110
|
+
"@storybook/blocks": "^8.5.4",
|
|
111
|
+
"@storybook/components": "^8.5.4",
|
|
112
|
+
"@storybook/manager-api": "^8.5.4",
|
|
113
|
+
"@storybook/preview-api": "^8.5.4",
|
|
114
|
+
"@storybook/react": "^8.5.4",
|
|
115
|
+
"@storybook/react-vite": "^8.5.4",
|
|
116
116
|
"@tanstack/react-query": "^5.66.0",
|
|
117
117
|
"@testing-library/dom": "^10.4.0",
|
|
118
118
|
"@testing-library/jest-dom": "^6.6.3",
|
|
@@ -153,7 +153,7 @@
|
|
|
153
153
|
"rollup": "^4.34.6",
|
|
154
154
|
"rollup-plugin-delete": "^2.1.0",
|
|
155
155
|
"rollup-plugin-import-css": "^3.5.8",
|
|
156
|
-
"storybook": "^8.5.
|
|
156
|
+
"storybook": "^8.5.4",
|
|
157
157
|
"storybook-addon-data-theme-switcher": "^1.0.0",
|
|
158
158
|
"typescript": "^5.7.3",
|
|
159
159
|
"typescript-eslint": "^8.23.0",
|