@equinor/amplify-component-lib 9.1.2 → 9.2.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/hooks/index.d.ts +1 -2
- package/dist/atoms/icons/drilling.d.ts +1 -0
- package/dist/atoms/icons/drilling.js +1 -1
- package/dist/atoms/index.js +1 -1
- package/dist/atoms/utils/index.d.ts +1 -0
- package/dist/atoms/utils/richtext.js +1 -1
- package/dist/atoms/utils/tutorials.d.ts +10 -0
- package/dist/atoms/utils/tutorials.js +1 -0
- package/dist/index.js +1 -1
- package/dist/molecules/FileProgress/CompactFileProgress.styles.d.ts +2 -0
- package/dist/molecules/OptionalTooltip/OptionalTooltip.d.ts +1 -0
- package/dist/molecules/RichTextEditor/index.js +1 -1
- package/dist/node_modules/@equinor/eds-tokens/dist/esm/base/index.js +1 -1
- package/dist/node_modules/@equinor/eds-tokens/dist/esm/base/spacings.js +1 -1
- package/dist/node_modules/prosemirror-transform/dist/index.js +1 -1
- package/dist/organisms/FieldSelector/ChangingField.js +4 -4
- package/dist/organisms/Filter/Filter.styles.js +1 -1
- package/dist/organisms/Filter/QuickFilter.js +1 -1
- package/dist/organisms/Filter/Sorting.js +2 -2
- package/dist/organisms/Status/Illustration.js +2 -2
- package/dist/organisms/Status/collections/MissingAccessToApp.js +1 -1
- package/dist/organisms/TableOfContents/TableOfContents.constants.js +1 -1
- package/dist/organisms/TopBar/Account/Account.js +1 -1
- package/dist/organisms/TopBar/Account/AccountAvatar.js +3 -3
- package/dist/organisms/TopBar/Account/AccountButton.js +3 -3
- package/dist/organisms/TopBar/Account/ActiveUserImpersonationButton.js +4 -4
- package/dist/organisms/TopBar/Account/ImpersonateAvatar.js +1 -1
- package/dist/organisms/TopBar/Account/ImpersonateButton.js +1 -1
- package/dist/organisms/TopBar/Account/ImpersonateMenu/DeleteUser/DeleteUser.js +1 -1
- package/dist/organisms/TopBar/Account/ImpersonateMenu/DeleteUser/DeleteUser.styles.js +1 -1
- package/dist/organisms/TopBar/Account/ImpersonateMenu/Impersonate.styles.js +1 -1
- package/dist/organisms/TopBar/Notifications/NotificationProvider.js +1 -1
- package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/UploadFile/UploadFile.styles.d.ts +2 -0
- package/dist/organisms/TopBar/Resources/Feedback/providers/FeedbackContextProvider.js +1 -1
- package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleaseNotes.js +1 -1
- package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleasePosts/ReleasePost/ReleasePost.js +1 -1
- package/dist/organisms/TopBar/Resources/Resources.d.ts +0 -3
- package/dist/organisms/TopBar/Resources/Resources.js +5 -5
- package/dist/organisms/TopBar/TransferToAppDialog.js +3 -3
- package/dist/organisms/TopBar/Tutorials/TutorialItem.d.ts +8 -0
- package/dist/organisms/TopBar/Tutorials/TutorialItem.js +21 -0
- package/dist/organisms/TopBar/Tutorials/Tutorials.d.ts +6 -0
- package/dist/organisms/TopBar/Tutorials/Tutorials.js +1 -0
- package/dist/organisms/TopBar/Tutorials/Tutorials.styles.d.ts +2 -0
- package/dist/organisms/TopBar/Tutorials/Tutorials.styles.js +18 -0
- package/dist/organisms/TopBar/index.d.ts +2 -0
- package/dist/organisms/TopBar/index.js +1 -1
- package/dist/providers/AuthProvider/AuthProvider.js +1 -1
- package/dist/providers/ReleaseNotesProvider.utils.js +1 -1
- package/dist/providers/StepperProvider.js +1 -1
- package/dist/providers/TableOfContentsProvider.js +1 -1
- package/dist/providers/ThemeProvider/ThemeProvider.js +1 -1
- package/dist/providers/TutorialHighlightingProvider/TutorialHighlightingProvider.constants.d.ts +2 -0
- package/dist/providers/TutorialHighlightingProvider/TutorialHighlightingProvider.constants.js +1 -0
- package/dist/providers/TutorialHighlightingProvider/TutorialHighlightingProvider.d.ts +11 -0
- package/dist/providers/TutorialHighlightingProvider/TutorialHighlightingProvider.js +1 -0
- package/dist/providers/TutorialHighlightingProvider/TutorialHighlightingProviderInner.d.ts +6 -0
- package/dist/providers/TutorialHighlightingProvider/TutorialHighlightingProviderInner.js +24 -0
- package/dist/providers/TutorialHighlightingProvider/TutorialPopover/StepIndicator.d.ts +6 -0
- package/dist/providers/TutorialHighlightingProvider/TutorialPopover/StepIndicator.js +20 -0
- package/dist/providers/TutorialHighlightingProvider/TutorialPopover/TutorialPopover.d.ts +11 -0
- package/dist/providers/TutorialHighlightingProvider/TutorialPopover/TutorialPopover.js +45 -0
- package/dist/providers/TutorialHighlightingProvider/hooks/useReversedScrollY.d.ts +1 -0
- package/dist/providers/TutorialHighlightingProvider/hooks/useReversedScrollY.js +1 -0
- package/dist/providers/index.d.ts +1 -1
- package/dist/tests/mockHandlers.d.ts +5 -1
- package/package.json +69 -69
- package/dist/node_modules/@equinor/eds-tokens/dist/esm/base/clickbounds.js +0 -1
- package/dist/node_modules/@equinor/eds-tokens/dist/esm/base/interactions.js +0 -1
- package/dist/organisms/TopBar/Resources/Tutorials/TutorialInfoDialog.d.ts +0 -15
- package/dist/organisms/TopBar/Resources/Tutorials/TutorialInfoDialog.js +0 -15
- package/dist/organisms/TopBar/Resources/Tutorials/TutorialItem.d.ts +0 -3
- package/dist/organisms/TopBar/Resources/Tutorials/TutorialItem.js +0 -12
- package/dist/providers/TutorialStepsProvider.d.ts +0 -23
- package/dist/providers/TutorialStepsProvider.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
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"../../../../../providers/SnackbarProvider/SnackbarProvider.js";import"../../../../../providers/StepperProvider.js";import"../../../../../providers/TableOfContentsProvider.js";import"../../../../../providers/ThemeProvider/ThemeProvider.js";import"../../../../../
|
|
1
|
+
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"../../../../../providers/SnackbarProvider/SnackbarProvider.js";import"../../../../../providers/StepperProvider.js";import"../../../../../providers/TableOfContentsProvider.js";import"../../../../../providers/ThemeProvider/ThemeProvider.js";import"../../../../../atoms/style/colors.js";import{spacings as i}from"../../../../../atoms/style/spacings.js";import"../../../../../atoms/enums/Errors.js";import"../../../../../atoms/enums/Theme.js";import"../../../../../atoms/enums/SpacingsMode.js";import"html2canvas";import"proj4";import r from"styled-components";const o=r.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
flex-direction: column;
|
|
4
4
|
min-width: 20rem;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
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"../../../../providers/SnackbarProvider/SnackbarProvider.js";import"../../../../providers/StepperProvider.js";import"../../../../providers/TableOfContentsProvider.js";import"../../../../providers/ThemeProvider/ThemeProvider.js";import
|
|
1
|
+
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"../../../../providers/SnackbarProvider/SnackbarProvider.js";import"../../../../providers/StepperProvider.js";import"../../../../providers/TableOfContentsProvider.js";import"../../../../providers/ThemeProvider/ThemeProvider.js";import{colors as r}from"../../../../atoms/style/colors.js";import{spacings as o}from"../../../../atoms/style/spacings.js";import"../../../../atoms/enums/Errors.js";import"../../../../atoms/enums/Theme.js";import"../../../../atoms/enums/SpacingsMode.js";import"html2canvas";import"proj4";import i from"styled-components";const t=i.header`
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: center;
|
|
4
4
|
gap: ${o.medium};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{createContext as t,
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{createContext as t,useState as e,useContext as i}from"react";const o=t(void 0),n=()=>{const r=i(o);if(void 0===r)throw new Error("useNotificationContext must be used within a Notification provider");return r},s=({children:t})=>{const[i,n]=e(!1);return r(o.Provider,{value:{isOpen:i,setIsOpen:n},children:t})};export{s as NotificationProvider,n as useNotification};
|
package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/UploadFile/UploadFile.styles.d.ts
CHANGED
|
@@ -10,9 +10,11 @@ export declare const FileTooltip: import("styled-components/dist/types").IStyled
|
|
|
10
10
|
title?: string;
|
|
11
11
|
children: React.ReactElement & React.RefAttributes<HTMLElement>;
|
|
12
12
|
enterDelay?: number;
|
|
13
|
+
portalContainer?: HTMLElement;
|
|
13
14
|
} & import("react").HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>, never>> & string & Omit<import("react").ForwardRefExoticComponent<{
|
|
14
15
|
placement?: import("@floating-ui/utils").Placement;
|
|
15
16
|
title?: string;
|
|
16
17
|
children: React.ReactElement & React.RefAttributes<HTMLElement>;
|
|
17
18
|
enterDelay?: number;
|
|
19
|
+
portalContainer?: HTMLElement;
|
|
18
20
|
} & import("react").HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>, keyof import("react").Component<any, {}, any>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{createContext as s,useState as t,useMemo as r,useCallback as o,useEffect as a}from"react";import{
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{createContext as s,useState as t,useMemo as r,useCallback as o,useEffect as a}from"react";import{DEFAULT_FEEDBACK_LOCAL_STORAGE as i,ONE_HOUR_IN_MS as n}from"../Feedback.const.js";import{StatusEnum as c,FeedbackType as m}from"../Feedback.types.js";import{createServiceNowUrl as u,createServiceNowDescription as p,getUrgencyNumber as d,createSlackMessage as l}from"../Feedback.utils.js";import{useServiceNowIncident as v}from"../hooks/useServiceNowIncident.js";import{useSlackFileUpload as f}from"../hooks/useSlackFileUpload.js";import{useSlackPostMessage as g}from"../hooks/useSlackPostMessage.js";import"../../../../../molecules/RichTextEditor/custom-extensions/AmplifyKit.js";import"../../../../../molecules/RichTextEditor/RichTextEditor.types.js";import{useLocalStorage as h}from"../../../../../atoms/hooks/useLocalStorage.js";import"@equinor/subsurface-app-management";import"@microsoft/signalr";import"@tanstack/react-query";import"../../../../../atoms/enums/Environment.js";import{environment as k}from"../../../../../atoms/utils/auth_environment.js";import"../../../Notifications/NotificationProvider.js";import{useAuth as R}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"html2canvas";import"proj4";const{getServiceNowConfigurationItem:j}=k,w=s(void 0),N=({children:s,selectedType:k,onClose:N,field:S})=>{const y=j(import.meta.env.VITE_SERVICE_NOW_CONFIGURATION_ITEM)||"117499",{account:I}=R(),T=I?.username,[P,b]=h(k+"-feedbackContentAndRequestStatus",{...i},n),{feedbackContent:q,serviceNowRequestResponse:A}=P,[C,E]=t([]),[F,x]=t({status:c.idle}),[D,O]=t([]),[U,_]=t(!1),[G,B]=t(!1),{mutateAsync:W,isPending:H}=f(q),{mutateAsync:L,status:M}=g(q),{mutateAsync:V,status:K}=v(q),[$,z]=t(""),[J,Q]=t(!1),X=r((()=>"pending"===M||"pending"===K||H),[H,M,K]),Y=r((()=>A.status===c.success),[A.status]),Z=r((()=>{const e=[F.status,...D.map((e=>e.status))];return e.every((e=>e===c.success))?c.success:e.includes(c.error)?c.partial:c.idle}),[D,F.status]),ee=r((()=>Z===c.error||Z===c.partial),[Z]),se=r((()=>ee||A.status===c.error),[A.status,ee]),te=()=>{_((e=>!e))},re=({status:e,response:s,error:t})=>{b({...P,serviceNowRequestResponse:{status:e,errorText:t?.message??void 0,serviceNowId:s?.sysId??void 0}})},oe=({status:e,filename:s,error:t})=>{O((r=>{const o=Array.from(r),a=o.find((e=>e.fileName===s));return a&&(a.status=e,a.errorText=e===c.error?t?.message:void 0),o}))},ae=({status:e,error:s})=>{x({status:e,errorText:s?.message??void 0})},ie=o((()=>{b(i),E([]),x({status:c.idle}),O([])}),[b]);return a((()=>()=>{A.status===c.success&&Z===c.success&&setTimeout((()=>{b(i)}),1100)}),[Z,A.status,b]),a((()=>{D.length!==C.length&&O(C.map((e=>({status:c.idle,fileName:e.name}))))}),[C,D.length]),a((()=>{A.serviceNowId&&0!==A.serviceNowId.length&&z(u(A.serviceNowId,!0))}),[A.serviceNowId]),a((()=>{(k===m.SUGGESTION&&Z===c.success||A.status===c.success&&Z===c.success)&&Q(!0)}),[Z,k,A.status]),e(w.Provider,{value:{selectedType:k,showResponsePage:U,feedbackAttachments:C,slackAttachmentsRequestResponse:D,slackRequestResponse:F,updateFeedback:(e,s)=>{b({...P,feedbackContent:{...q,[e]:s}})},feedbackContent:q,serviceNowRequestResponse:A,handleResponsePageOnClose:()=>{J?N():te()},toggleShowResponsePage:te,onDialogClose:N,handleSave:async()=>{te();let e="";if(k===m.BUG&&T&&A.status!==c.success){const s=new FormData;s.append("ConfigurationItem",y),s.append("Title",q.title),s.append("Description",p(q,S)),s.append("CallerEmail",T),q.urgency&&s.append("urgency",d(q.urgency).toString()),C&&C.length>0&&C.forEach((e=>s.append("Images",e)));try{const t=await V(s);e=t.sysId,re({status:c.success,response:t})}catch(e){re({status:c.error,error:e})}}const s=new FormData;s.append("comment",l(q,S,k,T,e));try{await L(s),ae({status:c.success})}catch(e){ae({status:c.error,error:e})}if(C&&C.length>0)for(const e of C){const s=new FormData;s.append("comment",`Title: ${q.title}`),s.append("file",e);try{await W(s),oe({status:c.success,filename:e.name})}catch(s){oe({status:c.error,filename:e.name,error:s})}}},resetForm:ie,requestIsLoading:X,serviceNowSuccess:Y,isWrongDomain:G,setIsWrongDomain:B,setFeedbackAttachments:E,requestHasError:se,showAllSlackRequests:ee,allSlackRequestStatus:Z,serviceNowUrl:$,relevantRequestsHaveBeenSuccess:J},children:s})};export{w as FeedbackContext,N as FeedbackContextProvider};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as e,jsx as o}from"react/jsx-runtime";import{CircularProgress as r}from"@equinor/eds-core-react";import{useReleaseNotesQuery as t}from"@equinor/subsurface-app-management";import{ReleasePosts as s}from"./ReleasePosts/ReleasePosts.js";import{StyledDialog as i,LoadingWrapper as l,ScrollWrapper as m,Wrapper as p,LeftContainer as n,Content as c}from"./ReleaseNotes.styles.js";import{ReleaseNotesHeader as a}from"./ReleaseNotesHeader.js";import{TableOfContents as u}from"../../../TableOfContents/TableOfContents.js";import"../../../../providers/AuthProvider/AuthProvider.js";import"../../../../providers/SideBarProvider.js";import"../../../../providers/SnackbarProvider/SnackbarProvider.js";import{TableOfContentsProvider as d}from"../../../../providers/TableOfContentsProvider.js";import{useReleaseNotes as j}from"../../../../providers/ReleaseNotesProvider.js";import"../../../../providers/
|
|
1
|
+
import{jsxs as e,jsx as o}from"react/jsx-runtime";import{CircularProgress as r}from"@equinor/eds-core-react";import{useReleaseNotesQuery as t}from"@equinor/subsurface-app-management";import{ReleasePosts as s}from"./ReleasePosts/ReleasePosts.js";import{StyledDialog as i,LoadingWrapper as l,ScrollWrapper as m,Wrapper as p,LeftContainer as n,Content as c}from"./ReleaseNotes.styles.js";import{ReleaseNotesHeader as a}from"./ReleaseNotesHeader.js";import{TableOfContents as u}from"../../../TableOfContents/TableOfContents.js";import"../../../../providers/AuthProvider/AuthProvider.js";import"../../../../providers/SideBarProvider.js";import"../../../../providers/SnackbarProvider/SnackbarProvider.js";import{TableOfContentsProvider as d}from"../../../../providers/TableOfContentsProvider.js";import{useReleaseNotes as j}from"../../../../providers/ReleaseNotesProvider.js";import"../../../../providers/TutorialHighlightingProvider/TutorialHighlightingProvider.js";import"react";import"@tanstack/react-query";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"../../../../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"../../../../_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"../../../../providers/ThemeProvider/ThemeProvider.js";import"../../../../providers/StepperProvider.js";const h=({enabled:h})=>{const{releaseNotesYears:v,setOpen:S,open:P}=j(),{isLoading:g,data:f}=t({enabled:h});return e(i,{open:P,onClose:()=>{S(!1)},isDismissable:!0,children:[o(a,{}),g?o(l,{children:o(r,{})}):o(d,{items:v,children:o(m,{children:e(p,{children:[o(n,{children:o(u,{})}),o(c,{children:o(s,{posts:f})})]})})})]})};export{h as ReleaseNotes};
|
package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleasePosts/ReleasePost/ReleasePost.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as o,Fragment as r}from"react/jsx-runtime";import{useState as t,useRef as i}from"react";import{Typography as s,Icon as l}from"@equinor/eds-core-react";import{arrow_drop_up as m,arrow_drop_down as a}from"@equinor/eds-icons";import{ReleaseNotesTypes as n}from"../../ReleaseNotesTypes/ReleaseNotesTypes.js";import{Container as p,TopContainer as c,HeadingContainer as u,RightContainer as d,ReleaseNoteTypeContainer as h,TitleContainer as j,BodyContainer as v,BtnContainer as g,Button as S,AccordionText as
|
|
1
|
+
import{jsx as e,jsxs as o,Fragment as r}from"react/jsx-runtime";import{useState as t,useRef as i}from"react";import{Typography as s,Icon as l}from"@equinor/eds-core-react";import{arrow_drop_up as m,arrow_drop_down as a}from"@equinor/eds-icons";import{ReleaseNotesTypes as n}from"../../ReleaseNotesTypes/ReleaseNotesTypes.js";import{Container as p,TopContainer as c,HeadingContainer as u,RightContainer as d,ReleaseNoteTypeContainer as h,TitleContainer as j,BodyContainer as v,BtnContainer as g,Button as S,AccordionText as f}from"./ReleasePost.styles.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"../../../../../../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"../../../../../../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{formatDate as P}from"../../../../../../atoms/utils/date.js";import"html2canvas";import"proj4";import"../../../../../../molecules/AnimatedCheckmark/AnimatedCheckmark.styles.js";import"../../../../../../molecules/ApplicationIcon/ApplicationIcon.js";import"../../../../../../molecules/Badge/Badge.styles.js";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{RichTextDisplay as R}from"../../../../../../molecules/RichTextDisplay/RichTextDisplay.js";import"../../../../../../molecules/RichTextEditor/MenuBar/MenuBar.js";import"@tiptap/react";import"../../../../../../molecules/RichTextEditor/RichTextEditor.styles.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{releaseNoteImageRead as y}from"./ReleasePost.utils.js";import{motion as T}from"framer-motion";const k=({createdDate:k,version:x,releaseDate:C,tags:E,title:B,body:D})=>{const[A,M]=t(!1),[F,b]=t(!1),I=i(new ResizeObserver((e=>{const{height:o}=e[0].contentRect;b(o>108)}))),q=A?"Read less":"Read more";return e(p,{"data-testid":"release-post",children:o(T.div,{initial:{height:"250px"},animate:{height:A?"auto":"250px"},children:[o(c,{children:[o(u,{children:[e(s,{group:"paragraph",variant:"overline",children:P(C||k,{format:"DD. month YYYY"})}),e(s,{group:"paragraph",variant:"overline",children:x})]}),e(d,{children:E?.map((o=>e(h,{children:e(n,{name:o,active:!0,showIcon:!1})},o)))})]}),e(j,{children:e(s,{group:"heading",variant:"h3",children:B})}),e(v,{ref:e=>{e&&I.current.observe(e)},children:e(R,{value:D,onImageRead:y})}),e(g,{$open:F,children:F&&e(S,{variant:"ghost_icon",onClick:()=>{M((e=>!e))},children:o(r,A?{children:[e(f,{children:q}),e(l,{data:m})]}:{children:[e(f,{children:q}),e(l,{data:a})]})})})]})})};export{k as ReleasePost};
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { FC, MutableRefObject, ReactElement, ReactNode } from 'react';
|
|
2
|
-
import { tutorialOptions } from './Tutorials/TutorialInfoDialog';
|
|
3
2
|
export interface ResourcesProps {
|
|
4
3
|
field?: string;
|
|
5
4
|
hideFeedback?: boolean;
|
|
6
5
|
hideReleaseNotes?: boolean;
|
|
7
6
|
hideLearnMore?: boolean;
|
|
8
7
|
children?: ReactNode;
|
|
9
|
-
showTutorials?: boolean;
|
|
10
|
-
tutorialOptions?: tutorialOptions[];
|
|
11
8
|
customButton?: (ref: MutableRefObject<HTMLButtonElement | null>, onToggle: () => void) => ReactElement;
|
|
12
9
|
}
|
|
13
10
|
export declare const Resources: FC<ResourcesProps>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{jsxs as e,Fragment as o,jsx as r}from"react/jsx-runtime";import{useState as
|
|
1
|
+
import{jsxs as e,Fragment as o,jsx as r}from"react/jsx-runtime";import{useState as i,useRef as t,useMemo as n}from"react";import{Dialog as s,Divider as a,Button as l,Icon as m}from"@equinor/eds-core-react";import{arrow_back as c,report_bug as d,lightbulb as p,file_description as u,school as h}from"@equinor/eds-icons";import{TopBarButton as f}from"../TopBar.styles.js";import{TopBarMenu as g}from"../TopBarMenu.js";import{TransferToAppDialog as j}from"../TransferToAppDialog.js";import{Feedback as v}from"./Feedback/Feedback.js";import{FeedbackType as k}from"./Feedback/Feedback.types.js";import{ReleaseNotes as T}from"./ReleaseNotesDialog/ReleaseNotes.js";import{ResourceMenuItem as C}from"./ResourceMenuItem.js";import{amplify_small_portal as R,amplify_resources as x}from"../../../atoms/icons/other.js";import"../../../atoms/style/colors.js";import{spacings as b}from"../../../atoms/style/spacings.js";import{environment as y}from"../../../atoms/utils/auth_environment.js";import"html2canvas";import"proj4";import"../../../molecules/RichTextEditor/RichTextEditor.types.js";import{useReleaseNotes as N}from"../../../providers/ReleaseNotesProvider.js";import O from"styled-components";const{PORTAL_URL_WITHOUT_LOCALHOST:S}=y,B=O(s)`
|
|
2
2
|
width: fit-content;
|
|
3
|
-
`,
|
|
4
|
-
padding: ${
|
|
5
|
-
${
|
|
6
|
-
`,
|
|
3
|
+
`,G=O.div`
|
|
4
|
+
padding: ${b.medium} ${b.medium} ${b.small}
|
|
5
|
+
${b.medium};
|
|
6
|
+
`,U=({field:b,hideFeedback:y=!1,hideReleaseNotes:O=!1,hideLearnMore:U=!1,children:I,customButton:L})=>{const{open:E,toggle:F}=N(),[H,_]=i(!1),[A,$]=i(!1),[D,M]=i(!1),[P,q]=i(void 0),w=t(null),[W,z]=i(void 0),J=()=>{q(void 0),_(!1)},K=()=>_((e=>!e)),Q=e=>{z(e?.currentTarget.id),$(!0)},V=()=>{z(void 0),J(),$(!1)},X=()=>q(void 0),Y=()=>{M(!0)},Z=n((()=>"learn-more"===P?e(o,{children:[r(C,{text:"Open Application portal",icon:R,onClick:Y,isHref:!0}),I&&!y&&!O&&r(a,{style:{margin:0}}),I&&r("div",{onClick:J,children:I}),r(G,{children:e(l,{variant:"outlined",onClick:X,children:[r(m,{data:c})," Back"]})})]}):null),[I,y,O,P]);return e(o,{children:[L?L(w,K):r(f,{variant:"ghost_icon",ref:w,id:"anchor-match","aria-haspopup":"true","aria-expanded":H,"aria-controls":"menu-match",onClick:K,children:r(m,{data:x})}),r(g,{open:H&&!E&&!A,title:"Resources",onClose:J,anchorEl:w.current,children:Z||e(o,{children:[r(C,{id:k.BUG,onClick:Q,icon:d,text:"Report a bug",lastItem:!0}),r(C,{id:k.SUGGESTION,onClick:Q,icon:p,text:"Suggest idea",lastItem:!0}),!O&&r(C,{id:"release-notes",icon:u,onClick:F,text:"Open release notes",isHref:!0}),!U&&r(C,{text:"Learn more",icon:h,onClick:()=>q("learn-more")})]})}),E&&r(T,{}),!y&&void 0!==W&&e(B,{open:W===k.BUG||W===k.SUGGESTION,onClose:V,isDismissable:!0,children:[r(s.Header,{children:W===k.BUG?"Report a bug - ServiceNow":"Suggest a feature"}),r(v,{field:b,selectedType:W,onClose:V})]}),D&&r(j,{onClose:()=>{M(!1),J()},url:S,applicationName:"Portal"})]})};export{U as Resources};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as r,Fragment as e,jsxs as i}from"react/jsx-runtime";import{Dialog as
|
|
1
|
+
import{jsx as r,Fragment as e,jsxs as i}from"react/jsx-runtime";import{Dialog as t,Typography as o,Button as s,Icon as n,LinearProgress as a}from"@equinor/eds-core-react";import{close as m}from"@equinor/eds-icons";import"react";import"../../molecules/RichTextEditor/custom-extensions/AmplifyKit.js";import"../../molecules/RichTextEditor/RichTextEditor.types.js";import{useFakeProgress as p}from"../../atoms/hooks/useFakeProgress.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"../../providers/SnackbarProvider/SnackbarProvider.js";import"../../providers/StepperProvider.js";import"../../providers/TableOfContentsProvider.js";import"../../providers/ThemeProvider/ThemeProvider.js";import"../../atoms/style/colors.js";import{spacings as d}from"../../atoms/style/spacings.js";import"html2canvas";import"proj4";import{capitalize as l}from"../../atoms/utils/string.js";import{AnimatedCheckmark as c}from"../../molecules/AnimatedCheckmark/AnimatedCheckmark.js";import h from"styled-components";const u=h(t)`
|
|
2
2
|
width: 400px;
|
|
3
3
|
height: 323px;
|
|
4
4
|
`,v=h.div`
|
|
@@ -15,7 +15,7 @@ import{jsx as r,Fragment as e,jsxs as i}from"react/jsx-runtime";import{Dialog as
|
|
|
15
15
|
width: 100%;
|
|
16
16
|
max-width: 370px;
|
|
17
17
|
padding: ${d.medium} ${d.large};
|
|
18
|
-
`,f=h(
|
|
18
|
+
`,f=h(o)`
|
|
19
19
|
span {
|
|
20
20
|
text-transform: capitalize;
|
|
21
21
|
}
|
|
@@ -30,4 +30,4 @@ import{jsx as r,Fragment as e,jsxs as i}from"react/jsx-runtime";import{Dialog as
|
|
|
30
30
|
width: 100%;
|
|
31
31
|
align-items: center;
|
|
32
32
|
padding: ${d.large} 0;
|
|
33
|
-
`,x=({onClose:d,applicationName:h,url:x})=>{const{finished:P,progress:k}=p({onDone:()=>window.open(x,"_self")});return r(e,{children:i(u,{open:!0,children:[i(
|
|
33
|
+
`,x=({onClose:d,applicationName:h,url:x})=>{const{finished:P,progress:k}=p({onDone:()=>window.open(x,"_self")});return r(e,{children:i(u,{open:!0,children:[i(t.Header,{children:["Open link",r(s,{variant:"ghost_icon",onClick:d,"data-testid":"close-transfer-app",children:r(n,{data:m})})]}),r(t.CustomContent,{children:r(v,{children:P?i(g,{children:[r(f,{variant:"h3",children:r("span",{children:l(h)})}),r(c,{size:"small"})]}):i(j,{children:[i(o,{variant:"h3",children:["Transferring you to application.",".".repeat(k/35)]}),r(a,{variant:"determinate",value:k})]})})})]})})};export{x as TransferToAppDialog};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { MyTutorialDto } from '@equinor/subsurface-app-management';
|
|
3
|
+
interface TutorialItemProps extends MyTutorialDto {
|
|
4
|
+
onTutorialStart: (tutorialId: string) => void;
|
|
5
|
+
onClose: () => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const TutorialItem: FC<TutorialItemProps>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import{jsxs as r,jsx as t}from"react/jsx-runtime";import{Icon as i,Typography as a}from"@equinor/eds-core-react";import{check as o,chevron_right as e}from"@equinor/eds-icons";import{useTutorials as n}from"@equinor/subsurface-app-management";import{animation as s}from"../../../atoms/style/animation.js";import{colors as m}from"../../../atoms/style/colors.js";import{spacings as l}from"../../../atoms/style/spacings.js";import c from"styled-components";const p=c.button`
|
|
2
|
+
display: grid;
|
|
3
|
+
align-items: center;
|
|
4
|
+
grid-template-columns: 1fr auto;
|
|
5
|
+
row-gap: ${l.small};
|
|
6
|
+
padding: ${l.medium};
|
|
7
|
+
transition: background ${s.transitionMS};
|
|
8
|
+
> header {
|
|
9
|
+
display: flex;
|
|
10
|
+
align-items: center;
|
|
11
|
+
gap: ${l.small};
|
|
12
|
+
grid-column: span 2;
|
|
13
|
+
> p {
|
|
14
|
+
color: ${m.interactive.primary__resting.rgba};
|
|
15
|
+
font-weight: 500;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
&:hover {
|
|
19
|
+
background: ${m.interactive.primary__hover_alt.rgba};
|
|
20
|
+
}
|
|
21
|
+
`,d=({onTutorialStart:s,onClose:l,id:c,name:d})=>{const{startTutorial:g,seenTutorialIDs:u}=n(),f=u.includes(c);return r(p,{onClick:()=>{g(c),s(c),l()},children:[f&&r("header",{children:[t(i,{data:o,size:16,color:m.interactive.primary__resting.rgba}),t(a,{varinat:"caption",children:"COMPLETED"})]}),t(a,{variant:"h4",children:d}),t(i,{data:e,color:m.interactive.primary__resting.rgba})]})};export{d as TutorialItem};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsxs as r,Fragment as o,jsx as t}from"react/jsx-runtime";import{useState as e,useRef as i}from"react";import{Icon as n,Typography as a,Divider as l}from"@equinor/eds-core-react";import{youtube_alt as s}from"@equinor/eds-icons";import{useTutorials as c}from"@equinor/subsurface-app-management";import{TutorialItem as m}from"./TutorialItem.js";import{Container as p,TutorialList as h}from"./Tutorials.styles.js";import{TopBarButton as u}from"../TopBar.styles.js";import{TopBarMenu as d}from"../TopBarMenu.js";const f=({onTutorialStart:f})=>{const{allTutorials:g,tutorialsOnThisPage:T}=c(),[j,v]=e(!1),C=i(null),q=g.filter((r=>-1===T.findIndex((o=>o.id===r.id)))),x=()=>v((r=>!r));return r(o,{children:[t(u,{variant:"ghost_icon",ref:C,onClick:x,children:t(n,{data:s})}),j&&t(d,{open:!0,onClose:x,anchorEl:C.current,children:r(p,{children:[r(a,{variant:"h4",children:["Available Tutorials (",g.length,")"]}),T.length>0&&r(h,{children:[t(a,{variant:"caption",children:"For current page"}),T.map((r=>t(m,{onTutorialStart:f,onClose:x,...r},r.id)))]}),T.length>0&&q.length>0&&t(l,{}),q.length>0&&r(h,{children:[t(a,{variant:"caption",children:"For other pages"}),q.map((r=>t(m,{onTutorialStart:f,onClose:x,...r},r.id)))]})]})})]})};export{f as Tutorials};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const Container: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
2
|
+
export declare const TutorialList: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, never>> & string;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import"../../../atoms/style/colors.js";import{spacings as o}from"../../../atoms/style/spacings.js";import t from"styled-components";const i=t.div`
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
padding: ${o.large};
|
|
5
|
+
width: 520px;
|
|
6
|
+
> h4 {
|
|
7
|
+
margin-bottom: ${o.x_large};
|
|
8
|
+
}
|
|
9
|
+
> hr {
|
|
10
|
+
margin-bottom: ${o.x_large};
|
|
11
|
+
}
|
|
12
|
+
`,m=t.section`
|
|
13
|
+
display: flex;
|
|
14
|
+
flex-direction: column;
|
|
15
|
+
> p:first-child {
|
|
16
|
+
margin-bottom: ${o.medium_small};
|
|
17
|
+
}
|
|
18
|
+
`;export{i as Container,m as TutorialList};
|
|
@@ -4,6 +4,7 @@ import { FieldMenu } from './FieldMenu/FieldMenu';
|
|
|
4
4
|
import { GuidelineSections } from './Guidelines/Guidelines';
|
|
5
5
|
import { Notifications } from './Notifications/Notifications';
|
|
6
6
|
import { Resources } from './Resources/Resources';
|
|
7
|
+
import { Tutorials } from './Tutorials/Tutorials';
|
|
7
8
|
import { Actions } from './Actions';
|
|
8
9
|
import { Guidelines } from './Guidelines';
|
|
9
10
|
import { Settings, SettingsProps } from './Settings';
|
|
@@ -17,6 +18,7 @@ type TopBarType = typeof BaseTopBar & {
|
|
|
17
18
|
FieldSelector: typeof FieldMenu;
|
|
18
19
|
Resources: typeof Resources;
|
|
19
20
|
ApplicationDrawer: typeof ApplicationDrawer;
|
|
21
|
+
Tutorials: typeof Tutorials;
|
|
20
22
|
};
|
|
21
23
|
export declare const TopBar: TopBarType;
|
|
22
24
|
export type { GuidelineSections, SettingsProps, TopBarType };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Account as o}from"./Account/Account.js";import{ApplicationDrawer as i}from"./ApplicationDrawer/ApplicationDrawer.js";import{FieldMenu as r}from"./FieldMenu/FieldMenu.js";import{Notifications as t}from"./Notifications/Notifications.js";import{Resources as s}from"./Resources/Resources.js";import{
|
|
1
|
+
import{Account as o}from"./Account/Account.js";import{ApplicationDrawer as i}from"./ApplicationDrawer/ApplicationDrawer.js";import{FieldMenu as r}from"./FieldMenu/FieldMenu.js";import{Notifications as t}from"./Notifications/Notifications.js";import{Resources as s}from"./Resources/Resources.js";import{Tutorials as e}from"./Tutorials/Tutorials.js";import{Actions as m}from"./Actions.js";import{Guidelines as c}from"./Guidelines/index.js";import{Settings as n}from"./Settings.js";import{TopBar as p}from"./TopBar.js";const a=p;a.Account=o,a.Actions=m,a.Guidelines=c,a.Settings=n,a.Notifications=t,a.FieldSelector=r,a.Resources=s,a.ApplicationDrawer=i,a.Tutorials=e;export{a as TopBar};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o}from"react/jsx-runtime";import{createContext as t,useContext as e,useState as n,useMemo as r}from"react";import{MsalProvider as i}from"@azure/msal-react";import{AuthProviderInner as a}from"./AuthProviderInner.js";import{
|
|
1
|
+
import{jsx as o}from"react/jsx-runtime";import{createContext as t,useContext as e,useState as n,useMemo as r}from"react";import{MsalProvider as i}from"@azure/msal-react";import{AuthProviderInner as a}from"./AuthProviderInner.js";import{environment as c,auth as u}from"../../atoms/utils/auth_environment.js";const{msalApp:m}=u,{getIsMock:d,getMockUserPhoto:s,getMockRoles:l}=c,h=t(void 0),p=()=>{const o=e(h);if(void 0===o)throw new Error("useAuth must be used within a AuthContext provider");return o},v={homeAccountId:"mock-home-account-id",environment:"mock",tenantId:"mock-tenant-id",username:"MOCK@equinor.com",localAccountId:"mock-local-account-id",name:"Mock mocksnes",idToken:"fake",idTokenClaims:{id:"claim"},nativeAccountId:"accountid",authorityType:"authority",tenantProfiles:new Map},g=({children:t,loadingComponent:e,unauthorizedComponent:c,withoutLoader:u=!1})=>{const[p,g]=n(void 0),[k,C]=n(),[I,A]=n("loading"),[M,f]=n(),T=r((()=>d(import.meta.env.VITE_IS_MOCK)),[]),_=r((()=>s(import.meta.env.VITE_MOCK_USER_PHOTO)),[]),O=r((()=>l(import.meta.env.VITE_MOCK_ROLES)),[]);return T?("loading"===I&&setTimeout((()=>{A("authorized")}),1e3),o(h.Provider,{value:{roles:O,account:v,photo:_,logout:()=>console.log("Logged out the user!"),authState:I},children:t})):o(h.Provider,{value:{roles:k,account:p,photo:M,logout:()=>m.logoutRedirect(),authState:I},children:o(i,{instance:m,children:o(a,{loadingComponent:e,unauthorizedComponent:c,account:p,setAccount:g,setRoles:C,setPhoto:f,authState:I,setAuthState:A,withoutLoader:u,children:t})})})};export{g as AuthProvider,v as MOCK_USER,p as useAuth};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
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"../organisms/TopBar/Notifications/NotificationProvider.js";import"./AuthProvider/AuthProvider.js";import"./ReleaseNotesProvider.js";import"./SideBarProvider.js";import"./SnackbarProvider/SnackbarProvider.js";import"./StepperProvider.js";import"./TableOfContentsProvider.js";import"./ThemeProvider/ThemeProvider.js";import"
|
|
1
|
+
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"../organisms/TopBar/Notifications/NotificationProvider.js";import"./AuthProvider/AuthProvider.js";import"./ReleaseNotesProvider.js";import"./SideBarProvider.js";import"./SnackbarProvider/SnackbarProvider.js";import"./StepperProvider.js";import"./TableOfContentsProvider.js";import"./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{sortByDate as t}from"../atoms/utils/sort.js";const e=t=>{const e=[],r=t.filter((t=>t.createdDate)),o=r.map((t=>{const e=new Date(t.createdDate);return{date:e,year:e.getFullYear(),month:e.getMonth()}}));for(const t of r){const r=new Date(t.createdDate),a=r.toLocaleString("en-US",{year:"numeric"}),i=`year${r.toLocaleString("en-US",{year:"numeric"})}`;if(e.find((t=>t.value===i)))continue;const s=o.filter((t=>t.year===r.getFullYear())),n=[...new Map(s.map((t=>[t.month,t]))).values()];n.sort(((t,e)=>e.date.getTime()-t.date.getTime()));const m=n.map((t=>{const e=t.date.toLocaleString("en-US",{month:"long"});return{label:e,value:`${i}--${e}`}}));e.push({label:a,value:i,children:m})}return e.sort(((t,e)=>{const r=parseInt(t.label);return parseInt(e.label)-r})),e},r=t=>`year${t.getFullYear()}--${t.toLocaleDateString("en-GB",{month:"long"})}`,o=e=>e.sort(((e,r)=>t(e.createdDate,r.createdDate)));export{e as extractDatesFromReleaseNotes,r as monthValueToString,o as sortReleaseNotesByDate};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{createContext as e,
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{createContext as e,useState as r,useContext as s}from"react";const n=e(void 0);function i(){const t=s(n);if(!t)throw new Error("useStepper must be used within a StepperProvider");return t}const p=({initialStep:e=0,steps:s,children:i})=>{const[p,o]=r(e),[u,S]=r(0);if(e>=s.length||e<0)throw new Error("initialStep must be a valid index of the steps array");return t(n.Provider,{value:{steps:s,currentStep:p,currentSubStep:u,setCurrentStep:o,goToNextStep:()=>{"subSteps"in s[p]&&s[p].subSteps&&u<s[p].subSteps.length-1?S((t=>t+1)):p!==s.length-1&&(o((t=>t+1)),0!==u&&S(0))},goToPreviousStep:()=>{if(u>0&&"subSteps"in s[p]&&s[p].subSteps&&s[p].subSteps.length>0)return void S((t=>t-1));if(0===p)return;o((t=>t-1));const t=s.at(p-1);t&&"subSteps"in t&&t.subSteps&&S(t.subSteps.length-1)}},children:i})};export{n as StepperContext,p as StepperProvider,i as useStepper};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{createContext as t,
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{createContext as t,useState as r,useMemo as n,useEffect as o,useCallback as i,useRef as s,useContext as l}from"react";import{useNavigate as c,useLocation as u}from"react-router";import{useOnScreenMultiple as a}from"../atoms/hooks/useOnScreenMultiple.js";import{getValues as m}from"./TableOfContentsProvider.utils.js";const d=t(void 0);function f(){const e=l(d);if(void 0===e)throw new Error("'useTableOfContents' must be used within provider");return e}const h=({items:t,children:l,hashNavigation:f})=>{const h=c(),{hash:p}=u(),[v,g]=r(t[0]?.value),[b,w]=r([]),[I,O]=r(""!==p),j=n((()=>t.flatMap((e=>m([],e)))),[t]);o((()=>{w(j.map((e=>document.getElementById(e))))}),[j]);const x=i((e=>{if(e.value===v)return!0;if(e.children&&v){return m([],e).includes(v)}return!1}),[v]),A=a(b),C=s(-1),M=i(((e,t)=>{const r=j.findIndex((t=>t===e)),n=b[r];if(n){const e=t?.shouldInstantlyJumpOnMount&&I?"instant":t?.behavior??"smooth";n.scrollIntoView({block:"start",behavior:e}),C.current=r;let o=1/0,i=0;const s=()=>{const e=n?.getBoundingClientRect().top;if(e===o){if(i+=1,i>1)return g(j[r]),f&&(h(`#${j[r]}`,{replace:!0}),O(!1)),void(C.current=-1)}else i=0,o=e;requestAnimationFrame(s)};requestAnimationFrame(s)}}),[b,f,h,I,j]);return o((()=>{if(0===A.length||A.length!==j.length||-1!==C.current)return;let e=-1;for(let t=A.length-1;t>=0;t--)A[t]&&(e=t);-1!==e&&void 0!==j.at(e)&&(g(j[e]),f&&h(`#${j[e]}`,{replace:!0}))}),[f,h,j,A]),e(d.Provider,{value:{items:t,selected:v,setSelected:M,isActive:x},children:l})};export{h as TableOfContentsProvider,f as useTableOfContents};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{createContext as o,
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{createContext as o,useEffect as t,useContext as e}from"react";import{THEME_LOCALSTORAGE_KEY as i}from"./ThemeProvider.constants.js";import"../../molecules/RichTextEditor/custom-extensions/AmplifyKit.js";import"../../molecules/RichTextEditor/RichTextEditor.types.js";import{useLocalStorage as s}from"../../atoms/hooks/useLocalStorage.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"../../organisms/TopBar/Notifications/NotificationProvider.js";import"../AuthProvider/AuthProvider.js";import"../ReleaseNotesProvider.js";import"../SideBarProvider.js";import"../SnackbarProvider/SnackbarProvider.js";import"../StepperProvider.js";import"../TableOfContentsProvider.js";import"../../atoms/style/colors.js";import"../../atoms/enums/Errors.js";import{Theme as m}from"../../atoms/enums/Theme.js";import"../../atoms/enums/SpacingsMode.js";import"html2canvas";import"proj4";const n=o(void 0);function a(){const r=e(n);if(void 0===r)throw new Error("ThemeProvider must be used within Provider");return r}const p=({children:o})=>{const[e,a]=s(i,m.LIGHT);t((()=>{document.documentElement.setAttribute("data-theme",e)}),[e]);return r(n.Provider,{value:{theme:e,setTheme:r=>{a(r)}},children:o})};export{p as ThemeProvider,n as ThemeProviderContext,a as useThemeProvider};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const i={initial:{opacity:0},animate:{opacity:1},transition:{delay:.5,duration:.5}};export{i as TUTORIAL_HIGHLIGHT_ANIMATION_PROPS};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { FC, ReactElement } from 'react';
|
|
2
|
+
interface TutorialHighlightingContextType {
|
|
3
|
+
customStepContent: Record<string, ReactElement>;
|
|
4
|
+
}
|
|
5
|
+
export declare function useTutorialHighlighting(): TutorialHighlightingContextType;
|
|
6
|
+
interface TutorialHighlightingProviderProps {
|
|
7
|
+
children: ReactElement | ReactElement[];
|
|
8
|
+
customStepContent?: Record<string, ReactElement>;
|
|
9
|
+
}
|
|
10
|
+
export declare const TutorialHighlightingProvider: FC<TutorialHighlightingProviderProps>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{createContext as t,useContext as i}from"react";import{TutorialProvider as o}from"@equinor/subsurface-app-management";import{TutorialHighlightingProviderInner as e}from"./TutorialHighlightingProviderInner.js";const n=t(void 0);function u(){const r=i(n);if(!r)throw new Error("useTutorialHighlighting must be used within a TutorialHighlightingProvider");return r}const m=({children:t,customStepContent:i})=>r(n.Provider,{value:{customStepContent:i??{}},children:r(o,{children:r(e,{children:t})})});export{m as TutorialHighlightingProvider,u as useTutorialHighlighting};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import{jsxs as t,Fragment as i,jsx as e}from"react/jsx-runtime";import{useMemo as r}from"react";import{useTutorials as o}from"@equinor/subsurface-app-management";import{useReversedScrollY as n}from"./hooks/useReversedScrollY.js";import{TutorialPopover as s}from"./TutorialPopover/TutorialPopover.js";import{TUTORIAL_HIGHLIGHT_ANIMATION_PROPS as l}from"./TutorialHighlightingProvider.constants.js";import"../../atoms/style/colors.js";import{spacings as a}from"../../atoms/style/spacings.js";import{getHighlightElementBoundingBox as h}from"../../atoms/utils/tutorials.js";import{motion as d}from"framer-motion";import m from"styled-components";const p=m.svg`
|
|
2
|
+
position: fixed;
|
|
3
|
+
top: 0;
|
|
4
|
+
left: 0;
|
|
5
|
+
height: 100vh;
|
|
6
|
+
width: 100vw;
|
|
7
|
+
z-index: 9999999;
|
|
8
|
+
background: none;
|
|
9
|
+
pointer-events: none;
|
|
10
|
+
`,c=m.div`
|
|
11
|
+
position: fixed;
|
|
12
|
+
top: 0;
|
|
13
|
+
left: 0;
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
gap: ${a.medium};
|
|
17
|
+
z-index: 99999999;
|
|
18
|
+
justify-content: center;
|
|
19
|
+
align-items: center;
|
|
20
|
+
width: 100vw;
|
|
21
|
+
height: 100vh;
|
|
22
|
+
background: none;
|
|
23
|
+
pointer-events: none;
|
|
24
|
+
`,g=({children:a})=>{const{activeTutorial:m,activeStep:g,unseenTutorialsOnThisPage:f}=o(),u=n(),v=m?[m]:f,$=r((()=>{if(m&&void 0!==g){if(!m.steps[g].highlightElement)return[];const t=h(m.id,g);return t?[t]:[]}return f.map((t=>{if(t.steps.at(0)?.highlightElement)return h(t.id,0)})).filter((t=>void 0!==t))}),[g,m,f]);return v.length>0?t(i,{children:[a,e(c,{children:v.map((t=>{const i=$.find((i=>i.id===t.id));return e(s,{isHighlighting:$.length>0,...t,...i},t.id)}))}),t(p,{children:[t("mask",{id:"tutorials-rectangles",children:[e("rect",{width:"100%",height:"100%",fill:"white"}),e(d.g,{style:{translateY:u},children:$.map((t=>e(d.path,{"data-testid":`tutorial-mask-${t.id}`,initial:{opacity:0,d:`M ${t.left} ${t.top} h ${t.width} v ${t.height} h -${t.width} Z`},animate:{opacity:1,d:`M ${t.left} ${t.top} h ${t.width} v ${t.height} h -${t.width} Z`},fill:"black"},t.id)))})]}),e(d.rect,{width:"100%",height:"100%",fill:"rgba(111, 111, 111, 0.35)",mask:"url(#tutorials-rectangles)",...l})]})]}):e(i,{children:a})};export{g as TutorialHighlightingProviderInner};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{useTutorials as r}from"@equinor/subsurface-app-management";import{shape as e}from"../../../atoms/style/index.js";import o from"styled-components";import{spacings as i}from"../../../atoms/style/spacings.js";import{colors as a}from"../../../atoms/style/colors.js";import{animation as n}from"../../../atoms/style/animation.js";const s=o.div`
|
|
2
|
+
display: grid;
|
|
3
|
+
gap: ${i.x_small};
|
|
4
|
+
`,m=o.span`
|
|
5
|
+
overflow: hidden;
|
|
6
|
+
height: 4px;
|
|
7
|
+
width: 100%;
|
|
8
|
+
background: ${a.infographic.primary__moss_green_34.rgba};
|
|
9
|
+
border-radius: ${e.rounded.borderRadius};
|
|
10
|
+
position: relative;
|
|
11
|
+
&:after {
|
|
12
|
+
content: '';
|
|
13
|
+
position: absolute;
|
|
14
|
+
background: ${a.interactive.primary__resting.rgba};
|
|
15
|
+
width: 100%;
|
|
16
|
+
height: 100%;
|
|
17
|
+
transition: left ${n.transitionMS};
|
|
18
|
+
left: calc(${({$index:t,$activeIndex:r})=>100*(r-t)}%);
|
|
19
|
+
}
|
|
20
|
+
`,p=({stepAmount:e})=>{const{activeStep:o}=r();return t(s,{style:{gridTemplateColumns:`repeat(${e}, 1fr)`},children:Array.from({length:e}).map(((r,e)=>t(m,{$index:e,$activeIndex:o},e)))})};export{p as StepIndicator};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { MyTutorialDto } from '@equinor/subsurface-app-management';
|
|
3
|
+
interface TutorialPopoverProps extends MyTutorialDto {
|
|
4
|
+
isHighlighting: boolean;
|
|
5
|
+
top?: number;
|
|
6
|
+
left?: number;
|
|
7
|
+
width?: number;
|
|
8
|
+
height?: number;
|
|
9
|
+
}
|
|
10
|
+
export declare const TutorialPopover: FC<TutorialPopoverProps>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import{jsxs as t,jsx as i,Fragment as o}from"react/jsx-runtime";import{Card as r,Icon as e,Typography as n,Button as a}from"@equinor/eds-core-react";import{info_circle as l}from"@equinor/eds-icons";import{useTutorials as s,useTutorialStepImage as d}from"@equinor/subsurface-app-management";import{useTutorialHighlighting as m}from"../TutorialHighlightingProvider.js";import{TUTORIAL_HIGHLIGHT_ANIMATION_PROPS as h}from"../TutorialHighlightingProvider.constants.js";import{StepIndicator as c}from"./StepIndicator.js";import{elevation as p}from"../../../atoms/style/index.js";import{useReversedScrollY as g}from"../hooks/useReversedScrollY.js";import{motion as u,useTransform as f}from"framer-motion";import v,{css as b}from"styled-components";import{spacings as x}from"../../../atoms/style/spacings.js";import{colors as y}from"../../../atoms/style/colors.js";const $=v(u(r))`
|
|
2
|
+
width: 360px;
|
|
3
|
+
padding: ${x.medium};
|
|
4
|
+
background: ${y.infographic.primary__moss_green_13.rgba};
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
gap: ${x.medium};
|
|
8
|
+
transition:
|
|
9
|
+
top 400ms,
|
|
10
|
+
left 400ms;
|
|
11
|
+
box-shadow: ${p.raised};
|
|
12
|
+
pointer-events: auto;
|
|
13
|
+
> header {
|
|
14
|
+
display: flex;
|
|
15
|
+
gap: ${x.small};
|
|
16
|
+
align-items: center;
|
|
17
|
+
}
|
|
18
|
+
> img {
|
|
19
|
+
max-height: 170px;
|
|
20
|
+
object-fit: contain;
|
|
21
|
+
}
|
|
22
|
+
${({$highlightingElement:t})=>t&&b`
|
|
23
|
+
transform: translateX(-50%);
|
|
24
|
+
&:before {
|
|
25
|
+
z-index: -1;
|
|
26
|
+
content: '';
|
|
27
|
+
width: 32px;
|
|
28
|
+
height: 26px;
|
|
29
|
+
background: ${y.infographic.primary__moss_green_13.rgba};
|
|
30
|
+
position: absolute;
|
|
31
|
+
top: 0;
|
|
32
|
+
left: 50%;
|
|
33
|
+
transform: translate(-50%, 0) rotate(45deg);
|
|
34
|
+
}
|
|
35
|
+
`}
|
|
36
|
+
`,_=v.div`
|
|
37
|
+
display: flex;
|
|
38
|
+
justify-content: flex-end;
|
|
39
|
+
gap: ${x.small};
|
|
40
|
+
&:has(> :last-child:nth-child(3)) {
|
|
41
|
+
> button:first-child {
|
|
42
|
+
margin-right: auto;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
`,k=({isHighlighting:r,id:p,top:u,left:v,width:b,height:x,name:k,steps:j})=>{const{customStepContent:C}=m(),{activeTutorial:S,activeStep:T,skipTutorial:w,startTutorial:E,goToNextStep:H,goToPreviousStep:P}=s(),{data:q}=d(S?.steps.at(T)?.imgUrl??void 0),I=g(),D=u&&x?u+x+16:void 0,N=v&&b?v+b/2:void 0,z=!!D&&!!N,A=f(I,(t=>z?t+D:null)),B=()=>{w(p)},F=()=>{E(p)};if(void 0!==T&&j[T].custom&&!C[j[T].id])throw new Error(`[TutorialHighlightingProvider]: Custom step content not found, tutorial ID: ${p}, step ID: ${j[T].id}`);return!z&&r?null:t($,S&&void 0!==T?{style:{position:z?"absolute":void 0,top:A,left:N},$highlightingElement:z,...h,children:[j[T].custom?C[j[T].id]:t(o,{children:[t("header",{children:[i(e,{data:l,color:y.interactive.primary__resting.rgba}),i(n,{variant:"h6",children:j[T]?.title})]}),i(n,{variant:"body_short",children:j[T]?.body}),q?i("img",{src:q,alt:j[T].title}):null]}),t(_,{children:[i(a,{variant:"outlined",disabled:0===T,onClick:P,children:"Back"}),i(a,{variant:"ghost",onClick:B,children:"Cancel"}),i(a,{onClick:H,children:T===j.length-1?"Finish":"Next"})]}),i(c,{stepAmount:j.length})]}:{style:{position:z?"absolute":void 0,top:A,left:N},$highlightingElement:z,...h,children:[t("header",{children:[i(e,{data:l,color:y.interactive.primary__resting.rgba}),i(n,{variant:"h6",children:k})]}),t(_,{children:[i(a,{variant:"ghost",onClick:B,children:"Skip"}),i(a,{onClick:F,children:"Start tour"})]})]})};export{k as TutorialPopover};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function useReversedScrollY(): import("framer-motion").MotionValue<number>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useScroll as t,useTransform as n}from"framer-motion";function o(){const{scrollY:o}=t({container:{current:document.getElementById("content")}});return n(o,(t=>t>0?-1*t:0))}export{o as useReversedScrollY};
|
|
@@ -3,7 +3,7 @@ export { SideBarProvider } from './SideBarProvider';
|
|
|
3
3
|
export { SnackbarProvider } from './SnackbarProvider/SnackbarProvider';
|
|
4
4
|
export { TableOfContentsProvider } from './TableOfContentsProvider';
|
|
5
5
|
export { ReleaseNotesProvider } from './ReleaseNotesProvider';
|
|
6
|
-
export {
|
|
6
|
+
export { TutorialHighlightingProvider } from './TutorialHighlightingProvider/TutorialHighlightingProvider';
|
|
7
7
|
export { LoadingProvider } from './LoadingProvider';
|
|
8
8
|
export { ThemeProvider } from './ThemeProvider/ThemeProvider';
|
|
9
9
|
export { StepperProvider } from './StepperProvider';
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import { AmplifyApplication, ImpersonateUserDto, MyFeatureDto, ReleaseNote } from '@equinor/subsurface-app-management';
|
|
1
|
+
import { AmplifyApplication, ImpersonateUserDto, MyFeatureDto, MyTutorialDto, ReleaseNote } from '@equinor/subsurface-app-management';
|
|
2
2
|
import { GraphAppRole } from '@equinor/subsurface-app-management/dist/api/models/GraphAppRole';
|
|
3
3
|
export declare const fakeReleaseNotes: ReleaseNote[];
|
|
4
4
|
export declare const FAKE_ROLES: GraphAppRole[];
|
|
5
5
|
export declare const fakeImpersonateUsers: ImpersonateUserDto[];
|
|
6
|
+
export declare function fakeTutorial(id: string, willPopUp: boolean, highlightElement: boolean, path?: string): MyTutorialDto;
|
|
7
|
+
export declare const FAKE_TUTORIALS: MyTutorialDto[];
|
|
6
8
|
export declare const FAKE_APPS: AmplifyApplication[];
|
|
7
9
|
export declare const FAKE_FEATURE_TOGGLES: MyFeatureDto[];
|
|
10
|
+
export declare const tokenHandler: import("msw").HttpHandler;
|
|
11
|
+
export declare const getTutorialImageHandler: import("msw").HttpHandler;
|
|
8
12
|
export declare const handlers: import("msw").HttpHandler[];
|