@equinor/amplify-component-lib 8.0.1 → 8.1.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.
Files changed (159) hide show
  1. package/dist/atoms/hooks/useReleaseNotesQuery.js +1 -1
  2. package/dist/atoms/hooks/useSelect.d.ts +1 -0
  3. package/dist/atoms/hooks/useSelect.js +1 -1
  4. package/dist/atoms/icons/map.js +1 -1
  5. package/dist/atoms/icons/other.js +1 -1
  6. package/dist/atoms/utils/index.d.ts +3 -2
  7. package/dist/atoms/utils/reactquery.d.ts +4 -0
  8. package/dist/atoms/utils/reactquery.js +1 -0
  9. package/dist/atoms/utils/releaseNotes.js +1 -1
  10. package/dist/atoms/utils/richtext.d.ts +20 -0
  11. package/dist/atoms/utils/richtext.js +1 -0
  12. package/dist/deprecated/Workflow/WorkflowDescription.js +5 -5
  13. package/dist/index.js +1 -1
  14. package/dist/molecules/AnimatedCheckmark/AnimatedCheckmark.d.ts +2 -3
  15. package/dist/molecules/AnimatedCheckmark/AnimatedCheckmark.js +1 -24
  16. package/dist/molecules/AnimatedCheckmark/AnimatedCheckmark.styles.d.ts +6 -0
  17. package/dist/molecules/AnimatedCheckmark/AnimatedCheckmark.styles.js +19 -0
  18. package/dist/molecules/AnimatedCheckmark/AnimatedCheckmark.utils.d.ts +2 -0
  19. package/dist/molecules/AnimatedCheckmark/AnimatedCheckmark.utils.js +1 -0
  20. package/dist/molecules/ApplicationIcon/ApplicationIcon.constants.d.ts +3 -3
  21. package/dist/molecules/ApplicationIcon/ApplicationIcon.js +1 -1
  22. package/dist/molecules/ApplicationIcon/ApplicationIcon.types.d.ts +1 -0
  23. package/dist/molecules/ApplicationIcon/ApplicationIcon.utils.d.ts +2 -1
  24. package/dist/molecules/ApplicationIcon/ApplicationIconBase.d.ts +1 -2
  25. package/dist/molecules/ApplicationIcon/ApplicationIconBase.js +1 -1
  26. package/dist/molecules/ApplicationIcon/ApplicationIconBase.styles.d.ts +19 -15
  27. package/dist/molecules/ApplicationIcon/ApplicationIconBase.styles.js +14 -14
  28. package/dist/molecules/ApplicationIcon/ApplicationIconData/AppIconSvg.d.ts +4 -3
  29. package/dist/molecules/ApplicationIcon/ApplicationIconData/AppIconSvg.js +1 -1
  30. package/dist/molecules/ApplicationIcon/ApplicationIconData/ApplicationIconCollection.d.ts +6 -3
  31. package/dist/molecules/ApplicationIcon/ApplicationIconData/ApplicationIconCollection.js +1 -1
  32. package/dist/molecules/Badge/Badge.js +1 -1
  33. package/dist/molecules/Chip/Chip.d.ts +4 -7
  34. package/dist/molecules/Chip/Chip.js +1 -1
  35. package/dist/molecules/Chip/InteractiveChip.js +1 -1
  36. package/dist/molecules/Chip/ReadOnlyChip.d.ts +2 -2
  37. package/dist/molecules/FileProgress/RegularFileProgress.js +1 -1
  38. package/dist/molecules/InfoElement/InfoElement.js +1 -1
  39. package/dist/molecules/ListItem/ListItem.js +7 -7
  40. package/dist/molecules/RichTextDisplay/RichTextDisplay.js +1 -1
  41. package/dist/molecules/RichTextEditor/RichTextEditor.js +1 -1
  42. package/dist/molecules/RichTextEditor/custom-extensions/ExtendedHeaders.js +1 -1
  43. package/dist/molecules/RichTextEditor/index.js +1 -1
  44. package/dist/molecules/Select/GroupedSelectMenu.js +1 -1
  45. package/dist/molecules/Select/Select.js +1 -1
  46. package/dist/molecules/Select/Select.styles.d.ts +3 -4
  47. package/dist/molecules/Select/Select.styles.js +18 -17
  48. package/dist/molecules/Select/Select.types.d.ts +3 -0
  49. package/dist/molecules/Select/SelectMenu.js +1 -1
  50. package/dist/molecules/Select/SelectMenuItem.js +1 -1
  51. package/dist/molecules/SelectionControls/Checkbox/Checkbox.d.ts +6 -0
  52. package/dist/molecules/SelectionControls/Checkbox/Checkbox.js +1 -0
  53. package/dist/molecules/SelectionControls/Radio/Radio.d.ts +6 -0
  54. package/dist/molecules/SelectionControls/Radio/Radio.js +1 -0
  55. package/dist/molecules/SelectionControls/SelectionControls.styles.d.ts +5 -0
  56. package/dist/molecules/SelectionControls/SelectionControls.styles.js +66 -0
  57. package/dist/molecules/SelectionControls/Switch/Switch.d.ts +5 -0
  58. package/dist/molecules/SelectionControls/Switch/Switch.js +1 -0
  59. package/dist/molecules/Waves/NoiseSvg.d.ts +2 -0
  60. package/dist/molecules/Waves/NoiseSvg.js +1 -0
  61. package/dist/molecules/Waves/Waves.js +1 -48
  62. package/dist/molecules/Waves/Waves.styles.d.ts +10 -0
  63. package/dist/molecules/Waves/Waves.styles.js +48 -0
  64. package/dist/molecules/index.d.ts +9 -3
  65. package/dist/organisms/ErrorPage/Description.js +1 -1
  66. package/dist/organisms/ErrorPage/Title.js +1 -1
  67. package/dist/organisms/ErrorPage/collections/PageNotFound.js +1 -1
  68. package/dist/organisms/ErrorPage/collections/Unauthorized.js +1 -1
  69. package/dist/organisms/SideBar/MenuItem.js +1 -0
  70. package/dist/organisms/SideBar/MenuItem.styles.js +4 -4
  71. package/dist/organisms/SideBar/index.js +1 -0
  72. package/dist/organisms/TopBar/Account/Account.js +1 -0
  73. package/dist/organisms/TopBar/Account/Account.styles.js +36 -0
  74. package/dist/organisms/TopBar/Actions.js +6 -0
  75. package/dist/organisms/TopBar/ApplicationDrawer/ApplicationDrawer.js +1 -0
  76. package/dist/organisms/TopBar/ApplicationDrawer/ApplicationDrawer.styles.js +73 -0
  77. package/dist/organisms/TopBar/FieldMenu/FieldMenu.styles.js +4 -4
  78. package/dist/organisms/TopBar/Guidelines/Colorbox.js +6 -0
  79. package/dist/organisms/TopBar/Guidelines/Guidelines.js +1 -0
  80. package/dist/organisms/TopBar/Guidelines/Item.js +6 -0
  81. package/dist/organisms/TopBar/Guidelines/Section.js +19 -0
  82. package/dist/organisms/TopBar/Guidelines/index.js +1 -0
  83. package/dist/organisms/TopBar/Notifications/FilterOptions.js +36 -0
  84. package/dist/organisms/TopBar/Notifications/NotificationProvider.js +1 -1
  85. package/dist/organisms/TopBar/Notifications/Notifications.js +1 -0
  86. package/dist/organisms/TopBar/Notifications/NotificationsInner.js +8 -0
  87. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationElements/DefaultNotification.js +6 -0
  88. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationElements/ExperienceDue3Weeks.js +6 -0
  89. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationElements/MergedBranchOrca.js +7 -0
  90. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationElements/NoNotifications.js +7 -0
  91. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationElements/ReadyToBePublished.js +5 -0
  92. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationElements/ReadyToReportNotification.js +14 -0
  93. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationElements/RequestChangeOrca.js +7 -0
  94. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationElements/RequestReviewOrca.js +7 -0
  95. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationElements/ReviewQANotification.js +6 -0
  96. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationTemplate.js +1 -0
  97. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/NotificationTemplate.style.js +53 -0
  98. package/dist/organisms/TopBar/Notifications/NotificationsTemplate/Notifications.types.js +1 -0
  99. package/dist/organisms/TopBar/Resources/Feedback/Feedback.const.js +1 -0
  100. package/dist/organisms/TopBar/Resources/Feedback/Feedback.js +1 -0
  101. package/dist/organisms/TopBar/Resources/Feedback/Feedback.styles.js +41 -0
  102. package/dist/organisms/TopBar/Resources/Feedback/Feedback.types.js +1 -0
  103. package/dist/organisms/TopBar/Resources/Feedback/Feedback.utils.js +1 -0
  104. package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/Description.js +9 -0
  105. package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/FeedbackForm.js +1 -0
  106. package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/LockedInputTooltip.js +5 -0
  107. package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/Severity.js +7 -0
  108. package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/Title.js +3 -0
  109. package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/UploadFile/ImageFile.js +7 -0
  110. package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/UploadFile/UploadFile.js +5 -0
  111. package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/UploadFile/UploadFile.styles.js +79 -0
  112. package/dist/organisms/TopBar/Resources/Feedback/FeedbackForm/Url.js +3 -0
  113. package/dist/organisms/TopBar/Resources/Feedback/FeedbackInner.js +1 -0
  114. package/dist/organisms/TopBar/Resources/Feedback/ResponsePage/AnimateChangeInHeight.js +7 -0
  115. package/dist/organisms/TopBar/Resources/Feedback/ResponsePage/FullSlackResponse.js +4 -0
  116. package/dist/organisms/TopBar/Resources/Feedback/ResponsePage/RequestStatus.js +5 -0
  117. package/dist/organisms/TopBar/Resources/Feedback/ResponsePage/ResponsePage.js +9 -0
  118. package/dist/organisms/TopBar/Resources/Feedback/ResponsePage/ResponsePage.styles.js +20 -0
  119. package/dist/organisms/TopBar/Resources/Feedback/ResponsePage/ResponseStatus.js +1 -0
  120. package/dist/organisms/TopBar/Resources/Feedback/ResponsePage/Success.js +9 -0
  121. package/dist/organisms/TopBar/Resources/Feedback/hooks/useFeedbackContext.js +1 -0
  122. package/dist/organisms/TopBar/Resources/Feedback/hooks/useServiceNowIncident.js +1 -0
  123. package/dist/organisms/TopBar/Resources/Feedback/hooks/useSlackFileUpload.js +1 -0
  124. package/dist/organisms/TopBar/Resources/Feedback/hooks/useSlackPostMessage.js +1 -0
  125. package/dist/organisms/TopBar/Resources/Feedback/providers/FeedbackContextProvider.js +1 -0
  126. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/FilterHeader/FilterHeader.js +1 -0
  127. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/FilterHeader/FilterHeader.styles.js +42 -0
  128. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleaseNotes.js +1 -0
  129. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleaseNotes.styles.js +43 -0
  130. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleaseNotesHeader.js +1 -0
  131. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleaseNotesHeader.styles.js +23 -0
  132. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleaseNotesTypes/ReleaseNotesTypes.js +1 -0
  133. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleaseNotesTypes/ReleaseNotesTypes.styles.js +42 -0
  134. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleaseNotesTypes/ReleaseNotesTypes.types.js +1 -0
  135. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleasePosts/ReleasePost/ReleasePost.js +1 -0
  136. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleasePosts/ReleasePost/ReleasePost.styles.js +69 -0
  137. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleasePosts/ReleasePost/TextContent.js +1 -0
  138. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleasePosts/ReleasePosts.js +1 -0
  139. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleasePosts/ReleasePosts.styles.js +16 -0
  140. package/dist/organisms/TopBar/Resources/ReleaseNotesDialog/ReleasePosts/hooks/useTokenReleaseNote.js +1 -0
  141. package/dist/organisms/TopBar/Resources/ResourceMenuItem.js +20 -0
  142. package/dist/organisms/TopBar/Resources/Resources.js +6 -0
  143. package/dist/organisms/TopBar/Resources/Tutorials/TutorialInfoDialog.js +15 -0
  144. package/dist/organisms/TopBar/Resources/Tutorials/TutorialItem.js +12 -0
  145. package/dist/organisms/TopBar/Settings.d.ts +4 -4
  146. package/dist/organisms/TopBar/Settings.js +25 -0
  147. package/dist/organisms/TopBar/TopBar.js +1 -1
  148. package/dist/organisms/TopBar/TransferToAppDialog.js +33 -0
  149. package/dist/organisms/TopBar/index.js +1 -0
  150. package/dist/organisms/index.d.ts +5 -2
  151. package/dist/providers/AuthProvider/AuthProvider.js +1 -1
  152. package/dist/providers/AuthProvider/AuthProviderInner.js +1 -1
  153. package/dist/providers/ReleaseNotesProvider.js +1 -1
  154. package/dist/tests/mockHandlers.d.ts +3 -0
  155. package/dist/tests/msalMock.d.ts +1 -0
  156. package/dist/tests/setupTests.d.ts +2 -0
  157. package/package.json +2 -3
  158. package/dist/atoms/utils/getFeatures.d.ts +0 -8
  159. package/dist/atoms/utils/getFeatures.js +0 -1
@@ -0,0 +1,14 @@
1
+ import{jsx as e,jsxs as i}from"react/jsx-runtime";import{Tooltip as r,Typography as o,Chip as t}from"@equinor/eds-core-react";import{tokens as l}from"../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{NotificationsTypes as a}from"../Notifications.types.js";import n from"styled-components";const{spacings:d}=l,p=n.div`
2
+ display: grid;
3
+ grid-template-columns: 1fr 1fr;
4
+ gap: ${d.comfortable.medium};
5
+ padding-top: ${d.comfortable.medium_small};
6
+ `,c=n.div`
7
+ display: flex;
8
+ flex-direction: column;
9
+ `,m=n.div`
10
+ grid-column: span 3;
11
+ display: flex;
12
+ gap: 5px;
13
+ align-items: center;
14
+ `,s=({field:l,wellbore:n,dataType:d,onClick:s})=>e(r,{title:`Go to ${d}`,children:i(p,{onClick:s,"data-testid":a.READY_TO_REPORT,children:[i(c,{children:[e(o,{group:"paragraph",variant:"overline",children:"Field"}),e(o,{group:"table",variant:"cell_text",children:l})]}),i(c,{children:[e(o,{group:"paragraph",variant:"overline",children:"WELLBORE"}),e(o,{group:"table",variant:"cell_text",children:n})]}),i(m,{children:[i(t,{children:[" ",d," "]}),e(o,{group:"navigation",variant:"label",children:"is ready to report"})]})]})});export{s as ReadyToReportNotification};
@@ -0,0 +1,7 @@
1
+ import{jsx as o,jsxs as e}from"react/jsx-runtime";import{Tooltip as r,Typography as t}from"@equinor/eds-core-react";import{tokens as i}from"../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{OptionalTooltip as l}from"../../../../../molecules/OptionalTooltip/OptionalTooltip.js";import m from"styled-components";const{spacings:n}=i,s=m.div`
2
+ display: flex;
3
+ flex-direction: column;
4
+ gap: ${n.comfortable.medium};
5
+ padding-top: ${n.comfortable.medium_small};
6
+ cursor: pointer;
7
+ `,a=({fromUser:i,branchName:m,onClick:n})=>o(r,{title:`Go to ${m}`,children:o(s,{onClick:n,children:o(l,{title:`Go to ${m}`,children:e(t,{group:"table",variant:"cell_text",children:[i.displayName," has requested changes for branch ",m]})})})});export{a as RequestChangeOrca};
@@ -0,0 +1,7 @@
1
+ import{jsx as o,jsxs as e}from"react/jsx-runtime";import{Tooltip as t,Typography as i}from"@equinor/eds-core-react";import{tokens as r}from"../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{NotificationsTypes as l}from"../Notifications.types.js";import{OptionalTooltip as m}from"../../../../../molecules/OptionalTooltip/OptionalTooltip.js";import s from"styled-components";const{spacings:n}=r,a=s.div`
2
+ display: flex;
3
+ flex-direction: column;
4
+ gap: ${n.comfortable.medium};
5
+ padding-top: ${n.comfortable.medium_small};
6
+ cursor: pointer;
7
+ `,c=({fromUser:r,branchName:s,onClick:n})=>o(t,{title:`Go to ${s}`,children:o(a,{onClick:n,"data-testid":l.REQUESTED_REVIEW,children:o(m,{title:`Go to ${s}`,children:e(i,{group:"table",variant:"cell_text",children:[r.displayName," has requested review for branch ",s]})})})});export{c as RequestReviewOrca};
@@ -0,0 +1,6 @@
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Tooltip as i,Typography as l}from"@equinor/eds-core-react";import{tokens as o}from"../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import r from"styled-components";const{spacings:n}=o,c=r.div`
2
+ display: flex;
3
+ flex-direction: column;
4
+ gap: ${n.comfortable.medium};
5
+ padding-top: ${n.comfortable.medium_small};
6
+ `,m=({well:o,experienceComments:r,experience:n,onClick:m})=>e(i,{title:`Go to ${n.title}`,children:t(c,{onClick:m,children:[t("div",{children:[e(l,{group:"table",variant:"cell_text",bold:!0,children:"Please review my QA comments"}),e(l,{group:"table",variant:"cell_text",children:o.displayName}),t(l,{group:"table",variant:"cell_text",children:[n.title," - ",n?.topic?.displayName]})]}),e("div",{children:t(l,{group:"table",variant:"cell_text",children:[r," comments"]})})]})});export{m as ReviewQANotification};
@@ -0,0 +1 @@
1
+ import{jsx as t,jsxs as i,Fragment as e}from"react/jsx-runtime";import{useMemo as o}from"react";import{Typography as r,Icon as a}from"@equinor/eds-core-react";import{delete_to_trash as n}from"@equinor/eds-icons";import{tokens as s}from"../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{DefaultNotification as c}from"./NotificationElements/DefaultNotification.js";import{ExperienceDue3Weeks as l}from"./NotificationElements/ExperienceDue3Weeks.js";import{MergedBranchOrca as m}from"./NotificationElements/MergedBranchOrca.js";import{ReadyToBePublished as p}from"./NotificationElements/ReadyToBePublished.js";import{ReadyToReportNotification as d}from"./NotificationElements/ReadyToReportNotification.js";import{RequestChangeOrca as f}from"./NotificationElements/RequestChangeOrca.js";import{RequestReviewOrca as u}from"./NotificationElements/RequestReviewOrca.js";import{ReviewQANotification as E}from"./NotificationElements/ReviewQANotification.js";import{NotificationsTypes as h}from"./Notifications.types.js";import{Wrapper as _,GridContainer as g,TopContainer as j,UserInformation as N,Dot as R,Content as v,FooterContainer as y,DeleteButton as T,Divider as b}from"./NotificationTemplate.style.js";import"../../../../atoms/utils/auth_environment.js";import x from"../../../../atoms/utils/date.js";import"../../../../atoms/types/Errors.js";import"../../../ErrorPage/illustrations/GlitchAnimation.js";import"../../../ErrorPage/illustrations/QuestioningAnimation.js";import"html2canvas";import"proj4";import"../../../../molecules/RichTextEditor/RichTextEditor.types.js";import{ApplicationIcon as A}from"../../../../molecules/ApplicationIcon/ApplicationIcon.js";import{OptionalTooltip as D}from"../../../../molecules/OptionalTooltip/OptionalTooltip.js";import{ProfileAvatar as O}from"../../../../molecules/ProfileAvatar/ProfileAvatar.js";const{colors:P}=s,C=s=>{const{user:C,notificationType:S,applicationName:U,Read:q,field:I,time:Q,footer:B=!0,onDelete:M}=s,k=o((()=>{switch(S){case h.READY_TO_REPORT:return t(d,{...s});case h.DEFAULT:return t(c,{...s});case h.REQUESTED_REVIEW:return t(u,{...s});case h.REQUESTED_CHANGES:return t(f,{...s});case h.MERGE_BRANCH:return t(m,{...s});case h.QA_COMMENTS:return t(E,{...s});case h.EXPERIENCE_READY_TO_PUBLISH:return t(p,{...s});case h.DUE_3_WEEKS:return t(l,{...s})}}),[s,S]);return i(e,{children:[t(_,{children:i(g,{children:[i(j,{children:[i(N,C?{children:[!q&&t(R,{}),t(O,{url:C?.image,name:C?.shortName,size:"large"}),i("div",{children:[t(r,{color:P.text.static_icons__default.rgba,group:"heading",variant:"h6",children:C?.displayName}),t(r,{group:"paragraph",variant:"caption",color:P.text.static_icons__secondary.rgba,children:C?.shortName})]})]}:{$systemUser:!0,children:[!q&&t(R,{"data-testid":"unread-dot-system"}),t(A,{name:U}),t(r,{group:"heading",variant:"h6",children:U})]}),t(r,{group:"navigation",variant:"label",color:q?P.text.static_icons__secondary.rgba:P.infographic.substitute__blue_overcast.rgba,"data-testid":"notification-date",children:x.formatRelativeDateTime(Q)})]}),t(v,{children:k}),B&&i(y,{children:[i("div",{style:{display:"flex",gap:"5px"},children:[t(r,{group:"navigation",variant:"label",color:P.text.static_icons__tertiary.rgba,children:U}),t(r,{group:"navigation",variant:"label",color:P.text.static_icons__tertiary.rgba,children:I})]}),t(D,{title:"Delete notification",children:t(T,{onClick:M,variant:"ghost_icon",children:t(a,{data:n})})})]})]})}),t(b,{})]})};export{C as NotificationTemplate};
@@ -0,0 +1,53 @@
1
+ import{Button as e,Divider as i}from"@equinor/eds-core-react";import{tokens as o}from"../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import r from"styled-components";const{spacings:a,colors:l}=o,t=r.div`
2
+ padding: ${a.comfortable.medium};
3
+ //border-bottom: 1px solid ${l.ui.background__medium.rgba};
4
+ &:hover {
5
+ background: #f2f2f2;
6
+ }
7
+ `,s=r.div`
8
+ display: flex;
9
+ flex-direction: column;
10
+ grid-column: span 3;
11
+ padding: ${a.comfortable.small};
12
+ cursor: pointer;
13
+ `,d=r.div`
14
+ display: grid;
15
+ grid-template-columns: 10px 1fr;
16
+ grid-gap: ${a.comfortable.medium_small};
17
+ align-items: center;
18
+ `,m=r.span`
19
+ width: 10px;
20
+ height: 10px;
21
+ border-radius: 50%;
22
+ background-color: ${l.infographic.substitute__blue_overcast.rgba};
23
+ position: relative;
24
+ `,n=r.div`
25
+ display: grid;
26
+ grid-template-columns: auto 1fr;
27
+ align-items: start;
28
+ gap: ${a.comfortable.medium_small};
29
+ justify-items: end;
30
+ grid-column: span 3;
31
+ `,p=r.div`
32
+ display: flex;
33
+ flex-direction: row;
34
+ align-items: ${({$systemUser:e})=>e?"flex-start":"center"};
35
+ gap: ${a.comfortable.small};
36
+ `,c=r.div`
37
+ display: flex;
38
+ flex-direction: row;
39
+ gap: ${a.comfortable.medium_small};
40
+ grid-column: span 3;
41
+ align-items: center;
42
+ justify-content: space-between;
43
+ height: 40px;
44
+ padding: 0 ${a.comfortable.small};
45
+ `,g=r(e)`
46
+ display: none;
47
+ ${d}:hover & {
48
+ display: initial;
49
+ }
50
+ `,f=r(i)`
51
+ display: flex;
52
+ margin: 0 ${a.comfortable.medium_small};
53
+ `;export{s as Content,g as DeleteButton,f as Divider,m as Dot,c as FooterContainer,d as GridContainer,n as TopContainer,p as UserInformation,t as Wrapper};
@@ -0,0 +1 @@
1
+ var E,e,R;!function(E){E.READY_TO_REPORT="readytoreport",E.DEFAULT="default",E.REQUESTED_REVIEW="requestReview",E.REQUESTED_CHANGES="requestedChanges",E.MERGE_BRANCH="mergeBranch",E.QA_COMMENTS=" TaskInReview",E.DUE_3_WEEKS="WellDueForReport",E.EXPERIENCE_READY_TO_PUBLISH="WellReadyForPublishing ",E.SYSTEM_USER="systemUser"}(E||(E={})),function(E){E.UNREAD="unread",E.SYSTEM="systemUser",E.USER="user"}(e||(e={})),function(E){E.NEW_OLDEST="newtoold",E.OLD_NEWEST="oldtonew",E.UNREAD="unread"}(R||(R={}));export{e as FilterNotification,E as NotificationsTypes,R as SortNotification};
@@ -0,0 +1 @@
1
+ import{StatusEnum as e}from"./Feedback.types.js";const s=1048575,t="serviceNowIncident",o="slackPostMessage",r="slackFileUpload",c=".equinor.com",i="There was an error with the request",n=36e5,a={feedbackContent:{title:"",description:"",url:"",urgency:""},serviceNowRequestResponse:{status:e.idle}};export{a as DEFAULT_FEEDBACK_LOCAL_STORAGE,i as DEFAULT_REQUEST_ERROR_MESSAGE,c as EQUINOR_EMAIL_SUFFIX,s as MAX_FILE_SIZE_BYTES,n as ONE_HOUR_IN_MS,t as SERVICE_NOW_QUERY_KEY,r as SLACK_FILE_QUERY_KEY,o as SLACK_POST_QUERY_KEY};
@@ -0,0 +1 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{FeedbackContextProvider as o}from"./providers/FeedbackContextProvider.js";import{FeedbackInner as r}from"./FeedbackInner.js";const t=({field:t,onClose:d,selectedType:i})=>e(o,{field:t,onClose:d,selectedType:i,children:e(r,{})});export{t as Feedback};
@@ -0,0 +1,41 @@
1
+ import{tokens as e}from"../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{spacings as o}from"../../../../atoms/style/spacings.js";import"react/jsx-runtime";import"../../../../molecules/AnimatedCheckmark/AnimatedCheckmark.styles.js";import"../../../../molecules/ApplicationIcon/ApplicationIcon.js";import"../../../../molecules/Badge/Badge.styles.js";import"../../../../molecules/Chip/Chip.js";import"../../../../molecules/ContentMenu/ContentMenu.js";import"../../../../molecules/EquinorLogo/EquinorLogo.js";import"react";import{Typography as i}from"@equinor/eds-core-react";import"@equinor/eds-icons";import"../../../../molecules/FileProgress/CompactFileProgress.styles.js";import"../../../../atoms/utils/auth_environment.js";import"../../../../atoms/types/Errors.js";import"../../../ErrorPage/illustrations/GlitchAnimation.js";import"../../../ErrorPage/illustrations/QuestioningAnimation.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/MenuBar/MenuBar.js";import"../../../../molecules/RichTextEditor/RichTextEditor.styles.js";import"../../../../node_modules/lodash/lodash.js";import"@equinor/subsurface-app-management";import"@tanstack/react-query";import"@microsoft/signalr";import"../../../../atoms/types/Environment.js";import"../../Notifications/NotificationProvider.js";import"../../../../providers/AuthProvider/AuthProvider.js";import"../../../../providers/SideBarProvider.js";import"../../../../providers/SnackbarProvider.js";import"../../../../providers/TableOfContentsProvider.js";import"../../../../providers/TutorialStepsProvider.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/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 t from"styled-components";const{colors:r,shape:s}=e,l=t.div`
2
+ width: 700px;
3
+ height: fit-content;
4
+ padding: 0 ${o.medium} ${o.medium} ${o.medium};
5
+ `,m=t.div`
6
+ display: grid;
7
+ grid-template-columns: 1fr 1fr;
8
+ gap: ${o.medium};
9
+ height: 100%;
10
+ width: 100%;
11
+ `,n=t.div`
12
+ grid-column: 1/3;
13
+ display: flex;
14
+ gap: ${o.small};
15
+ height: fit-content;
16
+ align-self: flex-end;
17
+ align-items: center;
18
+ background-color: ${r.ui.background__info.rgba};
19
+ padding: ${o.medium_small};
20
+ border-radius: ${s.button.borderRadius};
21
+ `,p=t.div`
22
+ grid-column: 1/3;
23
+ display: grid;
24
+ grid-template-columns: 24px 1fr;
25
+ gap: ${o.small};
26
+ height: fit-content;
27
+ align-items: center;
28
+ background-color: ${r.ui.background__warning.rgba};
29
+ padding: ${o.medium_small};
30
+ border-radius: ${s.button.borderRadius};
31
+ `,a=t(i)`
32
+ grid-column: 1/3;
33
+ `,c=t.div`
34
+ grid-column: 1/3;
35
+ display: flex;
36
+ justify-content: space-between;
37
+ > div {
38
+ display: flex;
39
+ gap: ${o.medium};
40
+ }
41
+ `;export{c as Actions,m as Container,l as ContentWrapper,p as LockedFormWarning,a as ReportLocationText,n as UploadInfo};
@@ -0,0 +1 @@
1
+ var e,r,i,n;!function(e){e.NO_IMPACT="I am not impacted",e.IMPEDES="It impedes my progress",e.UNABLE="I am unable to work"}(e||(e={})),function(e){e.BUG="bug",e.SUGGESTION="suggestion"}(r||(r={})),function(e){e.error="error",e.idle="idle",e.pending="pending",e.success="success",e.partial="partial"}(i||(i={})),function(e){e.EDGE="Edge",e.EDGE_SHORT="Edg",e.FIREFOX="Firefox",e.CHROME="Chrome",e.SAFARI="Safari"}(n||(n={}));export{n as Browsers,r as FeedbackType,i as StatusEnum,e as UrgencyOption};
@@ -0,0 +1 @@
1
+ import{ServiceNowUrgency as t}from"@equinor/subsurface-app-management";import{UrgencyOption as e,FeedbackType as r,Browsers as n}from"./Feedback.types.js";import{EnvironmentType as i}from"../../../../atoms/types/Environment.js";import{environment as o}from"../../../../atoms/utils/auth_environment.js";import s from"../../../../atoms/utils/date.js";import"react/jsx-runtime";import"../../../../atoms/types/Errors.js";import"../../../ErrorPage/illustrations/GlitchAnimation.js";import"../../../ErrorPage/illustrations/QuestioningAnimation.js";import"html2canvas";import"proj4";import"../../../../molecules/RichTextEditor/RichTextEditor.types.js";import a from"../../../../atoms/utils/string.js";const{capitalize:p}=a,{formatDate:m}=s,{getAppName:c,getEnvironmentName:u}=o,l=t=>t.urgency===e.NO_IMPACT?":large_yellow_circle:":t.urgency===e.IMPEDES?":large_orange_circle:":":red_circle:",d=t=>{const e=new FileReader;return new Promise(((r,n)=>{e.onerror=()=>{e.abort(),n(new DOMException("Problem parsing input file."))},e.onload=()=>{r(e.result)},e.readAsDataURL(t)}))},g=r=>{switch(r){case e.UNABLE:return t.CRITICAL;case e.IMPEDES:return t.MODERATE;case e.NO_IMPACT:return t.NORMAL}},y=(t,e)=>{const r=`Url location of bug: ${t.url} \n`,n=`Severity of bug: ${t.urgency} \n`,i=`Field: ${p(e??"")} \n`,o=`Browser: ${x()} \n`;return`${t.url?r:""}\n ${t.urgency?n:""}\n ${e?i:""}\n ${o}\n ${t.description} \n \n User agent string: ${navigator.userAgent}`},E=(t,e)=>{const r=e?"selfservice?id=ticket&table=incident&sys_id=":"now/nav/ui/classic/params/target/incident.do%3Fsys_id%3D";return`https://equinor${u(import.meta.env.VITE_ENVIRONMENT_NAME)===i.PRODUCTION?"":"test"}.service-now.com/${r}${t}`},x=()=>{const t=-1!==navigator.userAgent.indexOf(n.EDGE_SHORT)?n.EDGE:-1!==navigator.userAgent.indexOf(n.CHROME)?n.CHROME:-1!==navigator.userAgent.indexOf(n.SAFARI)?n.SAFARI:-1!==navigator.userAgent.indexOf(n.FIREFOX)?n.FIREFOX:void 0;return t?`${t} (${(t=>{let e=t;t===n.EDGE&&(e=n.EDGE_SHORT);const r=new RegExp(`${e}/(\\d+(?:\\.\\d+)+)`);return navigator.userAgent.match(r)?.[1]})(t)})`:"Not found"},f=(t,e,n,i,o)=>{const s=n===r.BUG?":bug: Bug report":":bulb: Suggestion",a=[],u=[];u.push({type:"mrkdwn",text:`*Title* \n ${t.title}`}),a.push({type:"mrkdwn",text:` ${m(new Date,{format:"DD. month YYYY"})}`}),t.url&&a.push({type:"mrkdwn",text:`*<${t.url}|Error URL>*`}),t.urgency&&u.push({type:"mrkdwn",text:`*Severity* \n ${l(t)} ${t.urgency}`});const d=[{type:"header",text:{type:"plain_text",text:s,emoji:!0}},{type:"section",fields:a},{type:"section",fields:u},{type:"section",fields:[{type:"mrkdwn",text:"*Application* \n "+c(import.meta.env.VITE_NAME)},{type:"mrkdwn",text:`*User* \n ${i}`}]},{type:"section",fields:[{type:"mrkdwn",text:"*Browser* \n "+x()},{type:"mrkdwn",text:`*Field* \n ${p(e??"Not found")}`}]},{type:"section",text:{type:"mrkdwn",text:"*Description* \n"+t.description}}];return o&&d.push({type:"section",text:{type:"mrkdwn",text:`*<${E(o)}|:link: Click to open the ticket in Service Now>*`}}),d.push({type:"divider"}),JSON.stringify(d)};export{y as createServiceNowDescription,E as createServiceNowUrl,f as createSlackMessage,x as getBrowserInfo,g as getUrgencyNumber,d as readUploadedFileAsText};
@@ -0,0 +1,9 @@
1
+ import{jsxs as e,jsx as o}from"react/jsx-runtime";import{useMemo as t}from"react";import{tokens as r}from"../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{LockedInputTooltip as i}from"./LockedInputTooltip.js";import{spacings as s}from"../../../../../atoms/style/spacings.js";import"../../../../../molecules/AnimatedCheckmark/AnimatedCheckmark.styles.js";import"../../../../../molecules/ApplicationIcon/ApplicationIcon.js";import"../../../../../molecules/Badge/Badge.styles.js";import"../../../../../molecules/Chip/Chip.js";import"../../../../../molecules/ContentMenu/ContentMenu.js";import"../../../../../molecules/EquinorLogo/EquinorLogo.js";import{Typography as l}from"@equinor/eds-core-react";import"@equinor/eds-icons";import"../../../../../molecules/FileProgress/CompactFileProgress.styles.js";import"../../../../../atoms/utils/auth_environment.js";import"../../../../../atoms/types/Errors.js";import"../../../../ErrorPage/illustrations/GlitchAnimation.js";import"../../../../ErrorPage/illustrations/QuestioningAnimation.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/MenuBar/MenuBar.js";import"../../../../../molecules/RichTextEditor/RichTextEditor.styles.js";import"../../../../../node_modules/lodash/lodash.js";import"@equinor/subsurface-app-management";import"@tanstack/react-query";import"@microsoft/signalr";import"../../../../../atoms/types/Environment.js";import"../../../Notifications/NotificationProvider.js";import"../../../../../providers/AuthProvider/AuthProvider.js";import"../../../../../providers/SideBarProvider.js";import"../../../../../providers/SnackbarProvider.js";import"../../../../../providers/TableOfContentsProvider.js";import"../../../../../providers/TutorialStepsProvider.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/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{TextField as m}from"../../../../../molecules/TextField/TextField.js";import{FeedbackType as n}from"../Feedback.types.js";import{useFeedbackContext as c}from"../hooks/useFeedbackContext.js";import p from"styled-components";const{colors:a}=r,u=p.div`
2
+ grid-column: 1/3;
3
+ display: flex;
4
+ gap: ${s.medium};
5
+ flex-direction: column;
6
+ textarea {
7
+ color: ${a.text.static_icons__default.rgba};
8
+ }
9
+ `,d=()=>{const{serviceNowSuccess:r,feedbackContent:s,selectedType:p,updateFeedback:d}=c(),j=t((()=>r?a.interactive.disabled__text.rgba:a.text.static_icons__default.rgba),[r]);return e(u,{children:[p===n.BUG&&e("div",{children:[o(l,{group:"input",variant:"text",color:j,children:"What is the specific bug?"}),o(l,{group:"input",variant:"text",color:j,children:"What are the expected results?"}),o(l,{group:"input",variant:"text",color:j,children:"How can we reproduce the issue?"}),o(l,{group:"input",variant:"text",color:j,children:"Is there a known workaround?"})]}),o(i,{show:r,children:o(m,{id:"feedback-description",label:"Description",disabled:r,meta:"Required",value:s.description,placeholder:p===n.BUG?"Describe the bug, including expectations, reproductions steps, any workarounds...":"Describe the feature. What would be the value for you?",rows:4,onChange:e=>d("description",e.currentTarget.value),multiline:!0})})]})};export{d as Description};
@@ -0,0 +1 @@
1
+ import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{useMemo as r}from"react";import{Icon as i,Typography as n,Button as s}from"@equinor/eds-core-react";import{info_circle as a}from"@equinor/eds-icons";import{FeedbackType as d}from"../Feedback.types.js";import{useFeedbackContext as l}from"../hooks/useFeedbackContext.js";import{UploadFile as c}from"./UploadFile/UploadFile.js";import{Description as m}from"./Description.js";import{Severity as h}from"./Severity.js";import{Title as p}from"./Title.js";import{Url as f}from"./Url.js";import{ContentWrapper as u,Container as g,UploadInfo as b,ReportLocationText as v,LockedFormWarning as k,Actions as y}from"../Feedback.styles.js";const j=()=>{const{isWrongDomain:j,selectedType:C,resetForm:F,feedbackContent:S,onDialogClose:w,serviceNowSuccess:U,handleSave:q,requestIsLoading:x}=l(),B=r((()=>S.title.length>0&&S.description.length>0&&!j),[S.title.length,S.description.length,j]);return e(u,{children:t(g,{children:[e(p,{}),C===d.BUG&&t(o,{children:[e(h,{}),e(f,{})]}),e(m,{}),t(b,{children:[e(i,{data:a}),e(n,{children:"Please make sure the uploaded files do not contain confidential or personal information"})]}),e(c,{}),e(v,{children:C===d.BUG?"Bug reports are sent to Service Now and to the development team directly":"Feature suggestions are sent to the development team directly"}),U&&t(k,{children:[e(i,{data:a}),e(n,{children:'The report has already been sent to service now, and part of the form is locked, so you can retry sending it to the development team. Otherwise you can reset the form with the "Reset form" button in the bottom left corner.'})]}),t(y,{children:[e(s,{variant:"ghost",onClick:F,"data-testid":"reset-form-button",children:"Reset form"}),t("div",{children:[e(s,{variant:"ghost",onClick:w,children:"Cancel"}),e(s,{onClick:q,disabled:!B||x,"data-testid":"submit-button",children:U?"Send again":"Send"})]})]})]})})};export{j as FeedbackForm};
@@ -0,0 +1,5 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{forwardRef as t,useMemo as o}from"react";import{OptionalTooltip as r}from"../../../../../molecules/OptionalTooltip/OptionalTooltip.js";import i from"styled-components";const n=i(r)`
2
+ white-space: break-spaces;
3
+ text-align: center;
4
+ width: 400px;
5
+ `,s=t((({show:t,children:r},i)=>{const s=o((()=>t?"The report was successfully submitted to ServiceNow. \n This field is locked so you can retry sending it to the development team. \n To reset the form, use the button in the bottom left corner.":""),[t]);return e(n,{title:s,children:e("div",{ref:i,children:r})})}));s.displayName="LockedInputTooltip";export{s as LockedInputTooltip};
@@ -0,0 +1,7 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{Autocomplete as t}from"@equinor/eds-core-react";import{tokens as o}from"../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{UrgencyOption as r}from"../Feedback.types.js";import{LockedInputTooltip as s}from"./LockedInputTooltip.js";import{useFeedbackContext as i}from"../hooks/useFeedbackContext.js";import c from"styled-components";const{colors:d}=o,n=c.div`
2
+ grid-column: 1/2;
3
+ `,a=c.div`
4
+ * {
5
+ color: ${d.text.static_icons__default.rgba};
6
+ }
7
+ `,m=()=>{const{serviceNowSuccess:o,feedbackContent:c,updateFeedback:d}=i();return e(n,{children:e(s,{show:o,children:e(a,{children:e(t,{options:Object.values(r),id:"feedback-severity","data-testid":"feedback-severity-input",label:"Severity",meta:"optional",disabled:o,selectedOptions:[c.urgency],placeholder:"Select error impact",onOptionsChange:e=>d("urgency",e.selectedItems[0]),autoWidth:!0})})})})};export{m as Severity,m as default};
@@ -0,0 +1,3 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{TextField as t}from"../../../../../molecules/TextField/TextField.js";import{LockedInputTooltip as o}from"./LockedInputTooltip.js";import{useFeedbackContext as r}from"../hooks/useFeedbackContext.js";import i from"styled-components";const l=i.div`
2
+ grid-column: 1/3;
3
+ `,c=()=>{const{serviceNowSuccess:i,feedbackContent:c,updateFeedback:d}=r();return e(l,{children:e(o,{show:i,children:e(t,{id:"feedback-title",label:"Title",meta:"Required",disabled:i,value:c.title,placeholder:"Write a title...",onChange:e=>d("title",e.currentTarget.value)})})})};export{c as Title};
@@ -0,0 +1,7 @@
1
+ import{jsxs as e,jsx as r}from"react/jsx-runtime";import{useState as i,useMemo as t,useEffect as o}from"react";import{Icon as n}from"@equinor/eds-core-react";import{error_outlined as l,clear as s}from"@equinor/eds-icons";import{tokens as d}from"../../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{readUploadedFileAsText as a}from"../../Feedback.utils.js";import{FileTooltip as c,Rejection as m,ImageWrapper as p,CloseButton as f}from"./UploadFile.styles.js";import u from"styled-components";const{colors:g}=d,h=u.div`
2
+ border-radius: 4px;
3
+ margin: 10px 0;
4
+ width: 82px;
5
+ height: 82px;
6
+ position: relative;
7
+ `,x=d=>{const[u,x]=i(""),{error:v,onDelete:b}=d,y=t((()=>{if(!v)return;const e=d.errors[0].code;let r=d.errors[0].message;return"file-too-large"===e?r=r.replace(/(\d+ bytes)/,"1MB"):"file-invalid-type"===e&&(r=r.replace(/(\w+\/\w+,)/g,"").replaceAll(",",", ")),`${d.errors[0].code} \n${r}`}),[v,d]),_=t((()=>d.file.name),[v,d]),w=t((()=>v?d.errors.find((e=>e.code.includes("invalid")))?"Invalid file type":d.errors.find((e=>e.code.includes("large")))?"Invalid file size":"Error":""),[v,d]);return o((()=>{v||(async e=>{const r=await a(e);x(r)})(d.file)}),[v,d]),e(h,{children:[r(c,{title:`${_}${v?": "+y:""}`,children:v?e(m,{children:[r(n,{data:l,color:g.interactive.warning__text.rgba}),r("div",{children:w})]}):r(p,{children:r("img",{src:u,alt:`Uploaded file: ${_}`})})}),r(f,{"data-testid":"attachment-delete-button",onClick:b,children:r(n,{color:g.text.static_icons__tertiary.rgba,data:s,size:24})})]})};export{x as ImageFile};
@@ -0,0 +1,5 @@
1
+ import{useState as e,createElement as t}from"react";import{jsxs as i,jsx as n}from"react/jsx-runtime";import{FileUploadArea as o}from"../../../../../../molecules/FileUploadArea/FileUploadArea.js";import{MAX_FILE_SIZE_BYTES as r}from"../../Feedback.const.js";import{ImageFile as l}from"./ImageFile.js";import{Title as a,FileUploadAreaWrapper as m}from"./UploadFile.styles.js";import{useFeedbackContext as s}from"../../hooks/useFeedbackContext.js";import c from"styled-components";const p=c.div`
2
+ grid-column: 1/3;
3
+ display: flex;
4
+ flex-direction: column;
5
+ `;const f=()=>{const{feedbackAttachments:c,setFeedbackAttachments:f}=s(),[g,d]=e([]);return i(p,{children:[n(a,{group:"input",variant:"label",children:"Attachments (.jpg, .jpeg, .png) (max 1 MB)"}),i(m,{children:[n(o,{maxSize:r,onDrop:(e,t)=>{if(e.length>=1){const t=e.filter((e=>!e.name.startsWith(".")));(new FileReader).readAsDataURL(e[0]);const i=[];c&&i.push(...c);const n=function(e,t){if(0===e.length||1===e.length)return e;for(let i=0;i<e.length;i++)for(let n=i+1;n<e.length;n++)t(e[i],e[n])&&e.splice(i,1);return e}([...t,...i],((e,t)=>e.name===t.name&&e.size===t.size));f(n)}d(t)},accept:{"image/jpeg":[".jpeg",".jpg"],"image/png":[".png"]},compact:!0}),c?.map((e=>n(l,{onDelete:()=>(e=>{const t=c?.filter((t=>t.name!==e.name&&t.size!==e.size))??[];f(t)})(e),file:e},e.name+e.size))),g.map((e=>t(l,{...e,key:e.file.name+e.file.size,onDelete:()=>(e=>{d(g?.filter((t=>t.file.name===e.file.name&&t.file.size!==e.file.size))??[])})(e),error:!0})))]})]})};export{p as Container,f as UploadFile};
@@ -0,0 +1,79 @@
1
+ import{Typography as i,Tooltip as r}from"@equinor/eds-core-react";import{tokens as t}from"../../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{spacings as e}from"../../../../../../atoms/style/spacings.js";import o from"styled-components";const{colors:a}=t,s=o(i)`
2
+ margin: ${e.small} ${e.small} 0 ${e.small};
3
+ color: ${a.text.static_icons__tertiary.rgba};
4
+ `,n=o.div`
5
+ display: flex;
6
+ flex-wrap: wrap;
7
+ align-items: start;
8
+ gap: ${e.medium_small};
9
+ height: fit-content;
10
+ position: relative;
11
+ > :first-child {
12
+ margin-top: ${e.medium_small};
13
+ }
14
+ `,d=o.div`
15
+ height: 100%;
16
+ width: 100%;
17
+ overflow: hidden;
18
+ height: 88px;
19
+ width: 88px;
20
+ margin-top: 2px;
21
+ border-radius: 4px;
22
+ border: 1px solid ${a.ui.background__medium.rgba};
23
+ position: relative;
24
+ transition: 0.1s ease-in;
25
+ > img {
26
+ width: 100%;
27
+ overflow: hidden;
28
+ }
29
+ &:hover {
30
+ background-color: ${a.ui.background__semitransparent.rgba};
31
+ }
32
+ `,g=o.div`
33
+ display: grid;
34
+ grid-template-rows: 1fr 1fr 1fr;
35
+ align-items: center;
36
+ justify-content: center;
37
+ height: 88px;
38
+ width: 88px;
39
+ margin-top: 2px;
40
+ font-size: 11px;
41
+ justify-items: center;
42
+ text-align: center;
43
+ border-radius: 4px;
44
+ border: 1px dashed ${a.interactive.warning__text.rgba};
45
+ gap: 0;
46
+ transition: 0.1s ease-in;
47
+ > svg {
48
+ grid-row: 2/3;
49
+ }
50
+ > div {
51
+ grid-row: 3/4;
52
+ color: ${a.interactive.warning__text.rgba};
53
+ }
54
+ &:hover {
55
+ background-color: ${a.interactive.warning__highlight.rgba};
56
+ }
57
+ `,p=o.div`
58
+ background-color: ${a.text.static_icons__tertiary.rgba};
59
+ border-radius: 50%;
60
+ border: 2px solid ${a.ui.background__default.rgba};
61
+ position: absolute;
62
+ width: 18px;
63
+ height: 18px;
64
+ right: -20px;
65
+ top: -8px;
66
+ transition: 0.1s ease-in;
67
+ cursor: pointer;
68
+ > svg {
69
+ width: 18px;
70
+ height: 18px;
71
+ fill: ${a.ui.background__default.rgba};
72
+ }
73
+
74
+ &:hover {
75
+ background-color: ${a.text.static_icons__default.rgba};
76
+ }
77
+ `,l=o(r)`
78
+ white-space: pre;
79
+ `;export{p as CloseButton,l as FileTooltip,n as FileUploadAreaWrapper,d as ImageWrapper,g as Rejection,s as Title};
@@ -0,0 +1,3 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{TextField as r}from"../../../../../molecules/TextField/TextField.js";import{EQUINOR_EMAIL_SUFFIX as o}from"../Feedback.const.js";import{LockedInputTooltip as t}from"./LockedInputTooltip.js";import{useFeedbackContext as n}from"../hooks/useFeedbackContext.js";import a from"styled-components";const l=a.div`
2
+ grid-column: 2/3;
3
+ `,i=()=>{const{serviceNowSuccess:a,feedbackContent:i,updateFeedback:c,isWrongDomain:s,setIsWrongDomain:d}=n();return e(l,{children:e(t,{show:a,children:e(r,{id:"feedback-url",label:"URL",disabled:a,meta:"optional",value:i.url,placeholder:"URL of error location",variant:s?"error":void 0,helperText:s?`The provided URL must be from a ${o} domain`:"",onChange:e=>{c("url",e.currentTarget.value),(""===e.currentTarget.value||s&&e.currentTarget.value.includes(o))&&d(!1)},onBlur:e=>{const r=e.currentTarget.value;r.includes(o)||0===r.length||d(!0)}})})})};export{i as Url};
@@ -0,0 +1 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{FeedbackForm as o}from"./FeedbackForm/FeedbackForm.js";import{useFeedbackContext as r}from"./hooks/useFeedbackContext.js";import{ResponsePage as s}from"./ResponsePage/ResponsePage.js";const t=()=>{const{showResponsePage:t}=r();return e(t?s:o,{})};export{t as FeedbackInner};
@@ -0,0 +1,7 @@
1
+ import{jsx as t}from"react/jsx-runtime";import{useRef as e,useState as r,useEffect as i}from"react";import{spacings as n}from"../../../../../atoms/style/spacings.js";import{motion as o}from"framer-motion";import c from"styled-components";const s=c(o.div)`
2
+ display: flex;
3
+ gap: ${n.large};
4
+ height: auto;
5
+ flex-direction: column;
6
+ min-height: 30px;
7
+ `,m=({children:n})=>{const c=e(null),[m,a]=r("auto");return i((()=>{if(c.current){const t=new ResizeObserver((t=>{const e=t[0].contentRect.height;a(e)}));return t.observe(c.current),()=>{t.disconnect()}}}),[]),t(o.div,{style:{height:m},animate:{height:m},transition:{duration:.3},children:t(s,{ref:c,children:n})})};export{m as AnimateChangeInHeight};
@@ -0,0 +1,4 @@
1
+ import{jsxs as e,jsx as t}from"react/jsx-runtime";import{tokens as s}from"../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{useFeedbackContext as o}from"../hooks/useFeedbackContext.js";import{RequestStatus as r}from"./RequestStatus.js";import{SlackRequestsWrapper as i}from"./ResponsePage.styles.js";import{spacings as m}from"../../../../../atoms/style/spacings.js";import n from"styled-components";const{colors:a}=s,l=n.div`
2
+ padding: ${m.small};
3
+ background-color: ${a.ui.background__light.rgba};
4
+ `,u=({allSlackRequestStatus:s})=>{const{slackRequestResponse:m,slackAttachmentsRequestResponse:n}=o();return e(l,{children:[t(r,{title:"Sending to development team",requestStatus:s}),e(i,{children:[t(r,{title:"Posting text ",requestStatus:m}),n.map((e=>t(r,{title:`Posting ${e.fileName}`,requestStatus:e},e.fileName)))]})]})};export{u as FullSlackResponse};
@@ -0,0 +1,5 @@
1
+ import{jsxs as e,jsx as r}from"react/jsx-runtime";import{useMemo as t}from"react";import{Typography as s,Icon as i}from"@equinor/eds-core-react";import{info_circle as o,check_circle_outlined as a}from"@equinor/eds-icons";import{tokens as n}from"../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{DEFAULT_REQUEST_ERROR_MESSAGE as c}from"../Feedback.const.js";import{StatusEnum as u}from"../Feedback.types.js";import{Status as d}from"./ResponsePage.styles.js";import m from"styled-components";const{colors:l}=n,p=m.div`
2
+ width: 100%;
3
+ display: flex;
4
+ justify-content: space-between;
5
+ `,f=({requestStatus:n,title:m})=>{const f=t((()=>{switch(n.status){case u.partial:return"Partially Failed";case u.idle:case u.pending:return"Sending...";case u.success:return"Success";default:return""}}),[n]),g=n.status===u.partial||n.status===u.error;return e(p,{children:[r(s,{group:"ui",variant:"accordion_header",children:m}),e(d,{children:[r(s,{color:g?l.interactive.warning__text.rgba:"",group:"ui",variant:"snackbar",children:n.status===u.error?n.errorText??c:f}),(g||n.status===u.success)&&r(i,{color:g?l.interactive.warning__text.rgba:l.interactive.success__resting.rgba,data:g?o:a})]})]})};export{f as RequestStatus};
@@ -0,0 +1,9 @@
1
+ import{jsx as e,jsxs as o}from"react/jsx-runtime";import{useState as r,useEffect as t}from"react";import{Button as s}from"@equinor/eds-core-react";import{useFeedbackContext as i}from"../hooks/useFeedbackContext.js";import{AnimateChangeInHeight as m}from"./AnimateChangeInHeight.js";import{ResponseStatus as n}from"./ResponseStatus.js";import{Success as a}from"./Success.js";import{spacings as c}from"../../../../../atoms/style/spacings.js";import{ContentWrapper as l}from"../Feedback.styles.js";import{motion as p}from"framer-motion";import d from"styled-components";const f=d(p.div)`
2
+ display: flex;
3
+ gap: ${c.large};
4
+ height: auto;
5
+ flex-direction: column;
6
+ button {
7
+ align-self: end;
8
+ }
9
+ `,u=()=>{const[c,p]=r(!1),{handleResponsePageOnClose:d,requestIsLoading:u,resetForm:h,requestHasError:g,relevantRequestsHaveBeenSuccess:j}=i();return t((()=>{!c&&j&&setTimeout((()=>{p(!0),h()}),1e3)}),[j,h,c]),e(l,{children:o(f,{children:[e(m,{children:e(c?a:n,{})}),e(s,{disabled:u,onClick:d,children:g?"Retry":"Close"})]})})};export{u as ResponsePage};
@@ -0,0 +1,20 @@
1
+ import{tokens as e}from"../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{spacings as o}from"../../../../../atoms/style/spacings.js";import"react/jsx-runtime";import"../../../../../molecules/AnimatedCheckmark/AnimatedCheckmark.styles.js";import"../../../../../molecules/ApplicationIcon/ApplicationIcon.js";import"../../../../../molecules/Badge/Badge.styles.js";import"../../../../../molecules/Chip/Chip.js";import"../../../../../molecules/ContentMenu/ContentMenu.js";import"../../../../../molecules/EquinorLogo/EquinorLogo.js";import"react";import{Typography as t}from"@equinor/eds-core-react";import"@equinor/eds-icons";import"../../../../../molecules/FileProgress/CompactFileProgress.styles.js";import"../../../../../atoms/utils/auth_environment.js";import"../../../../../atoms/types/Errors.js";import"../../../../ErrorPage/illustrations/GlitchAnimation.js";import"../../../../ErrorPage/illustrations/QuestioningAnimation.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/MenuBar/MenuBar.js";import"../../../../../molecules/RichTextEditor/RichTextEditor.styles.js";import"../../../../../node_modules/lodash/lodash.js";import"@equinor/subsurface-app-management";import"@tanstack/react-query";import"@microsoft/signalr";import"../../../../../atoms/types/Environment.js";import"../../../Notifications/NotificationProvider.js";import"../../../../../providers/AuthProvider/AuthProvider.js";import"../../../../../providers/SideBarProvider.js";import"../../../../../providers/SnackbarProvider.js";import"../../../../../providers/TableOfContentsProvider.js";import"../../../../../providers/TutorialStepsProvider.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/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 i from"styled-components";const{colors:r}=e,s=i.div`
2
+ display: flex;
3
+ align-items: center;
4
+ gap: 10px;
5
+ p {
6
+ font-weight: 500;
7
+ }
8
+ `,l=i.div`
9
+ display: flex;
10
+ flex-direction: column;
11
+ padding-top: ${o.medium};
12
+ gap: ${o.large};
13
+ margin-left: ${o.large};
14
+ `;i(t)`
15
+ align-self: flex-end;
16
+ color: ${r.interactive.warning__text.rgba};
17
+ font-size: 16px;
18
+ font-weight: 500;
19
+ text-align: end;
20
+ `;export{l as SlackRequestsWrapper,s as Status};
@@ -0,0 +1 @@
1
+ import{jsxs as e,Fragment as t,jsx as s}from"react/jsx-runtime";import{FeedbackType as o}from"../Feedback.types.js";import{useFeedbackContext as r}from"../hooks/useFeedbackContext.js";import{FullSlackResponse as a}from"./FullSlackResponse.js";import{RequestStatus as u}from"./RequestStatus.js";const l=()=>{const{serviceNowRequestResponse:l,selectedType:c,showAllSlackRequests:m,allSlackRequestStatus:i}=r();return e(t,{children:[c===o.BUG&&s(u,{title:"Service Now",requestStatus:l}),m?s(a,{allSlackRequestStatus:{status:i}}):s(u,{title:"Development team",requestStatus:{status:i}})]})};export{l as ResponseStatus,l as default};
@@ -0,0 +1,9 @@
1
+ import{jsxs as e,jsx as o}from"react/jsx-runtime";import{tokens as t}from"../../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{FeedbackType as r}from"../Feedback.types.js";import{useFeedbackContext as i}from"../hooks/useFeedbackContext.js";import{spacings as s}from"../../../../../atoms/style/spacings.js";import"../../../../../molecules/AnimatedCheckmark/AnimatedCheckmark.styles.js";import"../../../../../molecules/ApplicationIcon/ApplicationIcon.js";import"../../../../../molecules/Badge/Badge.styles.js";import"../../../../../molecules/Chip/Chip.js";import"../../../../../molecules/ContentMenu/ContentMenu.js";import"../../../../../molecules/EquinorLogo/EquinorLogo.js";import"react";import{Typography as l}from"@equinor/eds-core-react";import"@equinor/eds-icons";import"../../../../../molecules/FileProgress/CompactFileProgress.styles.js";import"../../../../../atoms/utils/auth_environment.js";import"../../../../../atoms/types/Errors.js";import"../../../../ErrorPage/illustrations/GlitchAnimation.js";import"../../../../ErrorPage/illustrations/QuestioningAnimation.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/MenuBar/MenuBar.js";import"../../../../../molecules/RichTextEditor/RichTextEditor.styles.js";import"../../../../../node_modules/lodash/lodash.js";import"@equinor/subsurface-app-management";import"@tanstack/react-query";import"@microsoft/signalr";import"../../../../../atoms/types/Environment.js";import"../../../Notifications/NotificationProvider.js";import"../../../../../providers/AuthProvider/AuthProvider.js";import"../../../../../providers/SideBarProvider.js";import"../../../../../providers/SnackbarProvider.js";import"../../../../../providers/TableOfContentsProvider.js";import"../../../../../providers/TutorialStepsProvider.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/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 m from"styled-components";const{colors:n}=t,p=m.div`
2
+ display: flex;
3
+ align-items: center;
4
+ `,c=m.a`
5
+ color: ${n.interactive.primary__resting.rgba};
6
+ padding-left: ${s.large};
7
+ font-weight: 400;
8
+ font-size: 16px;
9
+ `,a=()=>{const{selectedType:t,serviceNowUrl:s}=i();return e(p,{children:[o(l,{variant:"h3",children:"Thank you, we have received your "+(t===r.BUG?"report!":"suggestion!")}),t===r.BUG&&s.length>0&&o(c,{href:s,children:"See ticket in ServiceNow"})]})};export{c as ServiceNowLink,a as Success};
@@ -0,0 +1 @@
1
+ import{useContext as r}from"react";import{FeedbackContext as e}from"../providers/FeedbackContextProvider.js";function o(){const o=r(e);if(void 0===o)throw new Error('"useFeedbackContext" must be used within provider!');return o}export{o as useFeedbackContext};
@@ -0,0 +1 @@
1
+ import{PortalService as t}from"@equinor/subsurface-app-management";import{useMutation as e}from"@tanstack/react-query";import{SERVICE_NOW_QUERY_KEY as n}from"../Feedback.const.js";function r(r){return e({mutationKey:[n,r],mutationFn:async e=>t.createIncident(e)})}export{r as useServiceNowIncident};
@@ -0,0 +1 @@
1
+ import{PortalService as t}from"@equinor/subsurface-app-management";import{useMutation as o}from"@tanstack/react-query";import{SLACK_FILE_QUERY_KEY as r}from"../Feedback.const.js";function e(e){return o({mutationKey:[r,e],mutationFn:o=>t.fileUpload(o)})}export{e as useSlackFileUpload};
@@ -0,0 +1 @@
1
+ import{PortalService as t}from"@equinor/subsurface-app-management";import{useMutation as e}from"@tanstack/react-query";import{SLACK_POST_QUERY_KEY as o}from"../Feedback.const.js";function r(r){return e({mutationKey:[o,r],mutationFn:e=>t.postmessage(e)})}export{r as useSlackPostMessage};
@@ -0,0 +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{ONE_HOUR_IN_MS as i,DEFAULT_FEEDBACK_LOCAL_STORAGE as n}from"../Feedback.const.js";import{StatusEnum as c,FeedbackType as u}from"../Feedback.types.js";import{createServiceNowUrl as m,createServiceNowDescription as p,getUrgencyNumber as l,createSlackMessage as d}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"@tanstack/react-query";import{environment as j}from"../../../../../atoms/utils/auth_environment.js";import"../../../../../atoms/types/Errors.js";import"../../../../ErrorPage/illustrations/GlitchAnimation.js";import"../../../../ErrorPage/illustrations/QuestioningAnimation.js";import"html2canvas";import"proj4";import"@microsoft/signalr";import"../../../../../atoms/types/Environment.js";import"../../../Notifications/NotificationProvider.js";import{useAuth as k}from"../../../../../providers/AuthProvider/AuthProvider.js";import"../../../../../providers/SideBarProvider.js";import"../../../../../providers/SnackbarProvider.js";import"../../../../../providers/TableOfContentsProvider.js";import"../../../../../providers/TutorialStepsProvider.js";const{getServiceNowConfigurationItem:y}=j,R=s(void 0),w=({children:s,selectedType:j,onClose:w,field:N})=>{const S=y(import.meta.env.VITE_SERVICE_NOW_CONFIGURATION_ITEM)||"117499",{account:I}=k(),T=I?.username,[A,E]=h(j+"-feedbackContentAndRequestStatus",{...n},i),{feedbackContent:P,serviceNowRequestResponse:b}=A,[q,C]=t([]),[F,x]=t({status:c.idle}),[D,O]=t([]),[G,U]=t(!1),[_,B]=t(!1),{mutateAsync:W,isPending:H}=f(P),{mutateAsync:L,status:M}=g(P),{mutateAsync:V,status:K}=v(P),[Q,$]=t(""),[z,J]=t(!1),X=r((()=>"pending"===M||"pending"===K||H),[H,M,K]),Y=r((()=>b.status===c.success),[b.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||b.status===c.error),[b.status,ee]),te=()=>{U((e=>!e))},re=({status:e,response:s,error:t})=>{E({...A,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((()=>{E(n),C([]),x({status:c.idle}),O([])}),[E]);return a((()=>()=>{b.status===c.success&&Z===c.success&&setTimeout((()=>{E(n)}),1100)}),[Z,b.status,E]),a((()=>{D.length!==q.length&&O(q.map((e=>({status:c.idle,fileName:e.name}))))}),[q,D.length]),a((()=>{b.serviceNowId&&0!==b.serviceNowId.length&&$(m(b.serviceNowId,!0))}),[b.serviceNowId]),a((()=>{(j===u.SUGGESTION&&Z===c.success||b.status===c.success&&Z===c.success)&&J(!0)}),[Z,j,b.status]),e(R.Provider,{value:{selectedType:j,showResponsePage:G,feedbackAttachments:q,slackAttachmentsRequestResponse:D,slackRequestResponse:F,updateFeedback:(e,s)=>{E({...A,feedbackContent:{...P,[e]:s}})},feedbackContent:P,serviceNowRequestResponse:b,handleResponsePageOnClose:()=>{z?w():te()},toggleShowResponsePage:te,onDialogClose:w,handleSave:async()=>{te();let e="";if(j===u.BUG&&T&&b.status!==c.success){const s=new FormData;s.append("ConfigurationItem",S),s.append("Title",P.title),s.append("Description",p(P,N)),s.append("CallerEmail",T),P.urgency&&s.append("urgency",l(P.urgency).toString()),q&&q.length>0&&q.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",d(P,N,j,T,e));try{await L(s),ae({status:c.success})}catch(e){ae({status:c.error,error:e})}if(q&&q.length>0)for(const e of q){const s=new FormData;s.append("comment",`Title: ${P.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:_,setIsWrongDomain:B,setFeedbackAttachments:C,requestHasError:se,showAllSlackRequests:ee,allSlackRequestStatus:Z,serviceNowUrl:Q,relevantRequestsHaveBeenSuccess:z},children:s})};export{R as FeedbackContext,w as FeedbackContextProvider};
@@ -0,0 +1 @@
1
+ import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useState as r,useMemo as o}from"react";import{Button as i,Icon as s}from"@equinor/eds-core-react";import{external_link as a,close as l}from"@equinor/eds-icons";import{ReleaseNotesTypes as n}from"../ReleaseNotesTypes/ReleaseNotesTypes.js";import{RELEASENOTETYPES_INFORMATION as m}from"../ReleaseNotesTypes/ReleaseNotesTypes.types.js";import{Wrapper as p,SieveWrapper as c,ButtonContainer as h,ChipWrapper as u}from"./FilterHeader.styles.js";import{EnvironmentType as d}from"../../../../../atoms/types/Environment.js";import{environment as f}from"../../../../../atoms/utils/auth_environment.js";import"../../../../../atoms/types/Errors.js";import"../../../../ErrorPage/illustrations/GlitchAnimation.js";import"../../../../ErrorPage/illustrations/QuestioningAnimation.js";import"html2canvas";import"proj4";import"../../../../../molecules/RichTextEditor/RichTextEditor.types.js";import{Sieve as v}from"../../../../../molecules/Sieve/Sieve.js";import{useReleaseNotes as j}from"../../../../../providers/ReleaseNotesProvider.js";const{getEnvironmentName:y,getAppName:E}=f,N=()=>{const f=E(import.meta.env.VITE_NAME),N=y(import.meta.env.VITE_ENVIRONMENT_NAME),V=N===d.LOCALHOST?d.DEVELOP:N,{setSearch:T,setOpen:O}=j(),[g,R]=r({searchValue:void 0,filterValues:void 0,sortValue:void 0}),b=o((()=>{const e=[];return e.push({label:"Type",options:Object.keys(m).map((e=>({label:e,value:e})))}),e}),[]);return e(p,{children:[e(c,{children:[t(v,{searchPlaceholder:"Search for specific bugs or features, e.g. ´Recall´",sieveValue:g,onUpdate:e=>{R(e),T(e)},filterOptions:b,showChips:!1,minSearchWidth:"70%"}),e(h,{children:[t(i,{variant:"ghost_icon",href:V&&V!==d.PRODUCTION?`https://client-amplify-portal-${V}.radix.equinor.com/releasenotes?applications=%5B"${f}"%5D`:`https://amplify.equinor.com/releasenotes?applications=%5B"${f}"%5D`,children:t(s,{data:a})}),t(i,{variant:"ghost_icon",onClick:()=>{O(!1)},"aria-label":"close modal",children:t(s,{data:l})})]})]}),t("section",{children:t(u,{children:Object.keys(g.filterValues??{}).map((e=>g.filterValues?.[e].map((r=>t(n,{name:r.label,showIcon:!0,onClick:()=>((e,t)=>{let r={...g.filterValues};const o=r[e].findIndex((e=>e.value===t));r[e].splice(o,1),0===Object.keys(r).flatMap((e=>r?.[e])).length&&(r=void 0),R((e=>({...e,filterValues:r}))),T((e=>({...e,filterValues:r})))})(e,r.value)},r.label)))))})})]})};export{N as FilterHeader};
@@ -0,0 +1,42 @@
1
+ import{spacings as e}from"../../../../../atoms/style/spacings.js";import i from"styled-components";const t=i.div`
2
+ display: flex;
3
+ flex-direction: column;
4
+ gap: ${e.medium};
5
+ padding-right: ${e.xxx_large};
6
+ flex-wrap: wrap;
7
+ > section {
8
+ display: flex;
9
+ justify-content: space-between;
10
+ flex-wrap: wrap;
11
+ @media (max-width: 1060px) {
12
+ flex-wrap: nowrap;
13
+ }
14
+ }
15
+ `,a=i.div`
16
+ display: flex;
17
+ flex-direction: row;
18
+ justify-content: space-between;
19
+ gap: ${e.small};
20
+
21
+ .sieve-container {
22
+ flex: 1;
23
+ }
24
+ `,n=i.div`
25
+ display: flex;
26
+ gap: ${e.medium};
27
+ `,l=i.div`
28
+ display: flex;
29
+ flex-direction: row;
30
+ font-family: 'Equionor', sans-serif;
31
+ font-size: 12px;
32
+ align-items: center;
33
+ grid-gap: ${e.small};
34
+ justify-items: start;
35
+ flex-wrap: wrap;
36
+ width: 77%;
37
+ > p {
38
+ line-height: normal;
39
+ height: min-content;
40
+ font-size: 12px;
41
+ }
42
+ `;export{n as ButtonContainer,l as ChipWrapper,a as SieveWrapper,t as Wrapper};
@@ -0,0 +1 @@
1
+ import{jsxs as e,jsx as o}from"react/jsx-runtime";import{CircularProgress as r}from"@equinor/eds-core-react";import{useTokenReleaseNote as s}from"./ReleasePosts/hooks/useTokenReleaseNote.js";import{ReleasePosts as t}from"./ReleasePosts/ReleasePosts.js";import{StyledDialog as i,LoadingWrapper as m,ScrollWrapper as a,Wrapper as n,LeftContainer as p,Content as d}from"./ReleaseNotes.styles.js";import{ReleaseNotesHeader as l}from"./ReleaseNotesHeader.js";import"react";import"../../../../molecules/RichTextEditor/custom-extensions/AmplifyKit.js";import"../../../../molecules/RichTextEditor/RichTextEditor.types.js";import"../../../../node_modules/lodash/lodash.js";import{useReleaseNotesQuery as c}from"../../../../atoms/hooks/useReleaseNotesQuery.js";import"@equinor/subsurface-app-management";import"@microsoft/signalr";import"@tanstack/react-query";import"../../../../atoms/types/Environment.js";import"../../../../atoms/utils/auth_environment.js";import"../../Notifications/NotificationProvider.js";import"../../../../providers/AuthProvider/AuthProvider.js";import"../../../../providers/SideBarProvider.js";import"../../../../providers/SnackbarProvider.js";import{TableOfContentsProvider as j}from"../../../../providers/TableOfContentsProvider.js";import"../../../../providers/TutorialStepsProvider.js";import{TableOfContents as u}from"../../../TableOfContents/TableOfContents.js";import{useReleaseNotes as f}from"../../../../providers/ReleaseNotesProvider.js";const h=({enabled:h})=>{const{releaseNotesYears:v,setOpen:P,open:R}=f(),{isLoading:b,data:N}=c({enabled:h}),{data:T}=s();return e(i,{open:R,onClose:()=>{P(!1)},isDismissable:!0,children:[o(l,{}),b||void 0===T?o(m,{children:o(r,{})}):o(j,{items:v,children:o(a,{children:e(n,{children:[o(p,{children:o(u,{})}),o(d,{children:o(t,{posts:N})})]})})})]})};export{h as ReleaseNotes};
@@ -0,0 +1,43 @@
1
+ import{Dialog as e}from"@equinor/eds-core-react";import{tokens as i}from"../../../../node_modules/@equinor/eds-tokens/dist/esm/base/index.js";import{spacings as t}from"../../../../atoms/style/spacings.js";import o from"styled-components";const{colors:d}=i,l=o(e)`
2
+ background-color: ${d.ui.background__light.rgba};
3
+ width: 85vw;
4
+ height: 85vh;
5
+ display: flex;
6
+ flex-direction: column;
7
+ padding-left: ${t.large}; // Due to where we've put the scroll bar, we will fix the right padding in a different element
8
+ overflow: hidden;
9
+ `,n=o.div`
10
+ min-width: calc(100% - 73px - 48px);
11
+ padding-bottom: 64px;
12
+ display: flex;
13
+ column-gap: ${t.xx_large};
14
+ `,r=o.div`
15
+ top: 0px;
16
+ position: sticky;
17
+ height: fit-content;
18
+ display: flex;
19
+ flex-direction: column;
20
+ align-items: flex-end;
21
+ > div {
22
+ display: flex;
23
+ flex-direction: column;
24
+ min-width: 200px;
25
+ @media (max-width: 1000px) {
26
+ max-width: 150px;
27
+ }
28
+ }
29
+ `,a=o.div`
30
+ display: flex;
31
+ flex-direction: column;
32
+ padding-right: ${t.xx_large};
33
+ width: 100%;
34
+ `,x=o.div`
35
+ height: fit-content;
36
+ overflow-y: auto;
37
+ padding-bottom: ${t.xxx_large};
38
+ `,p=o.div`
39
+ display: flex;
40
+ align-items: center;
41
+ justify-content: center;
42
+ height: 168px;
43
+ `;export{a as Content,r as LeftContainer,p as LoadingWrapper,x as ScrollWrapper,l as StyledDialog,n as Wrapper};
@@ -0,0 +1 @@
1
+ import{jsxs as e,jsx as o}from"react/jsx-runtime";import{FilterHeader as r}from"./FilterHeader/FilterHeader.js";import{HeaderWrapper as t,HeadingContainer as i,FilterContainer as s}from"./ReleaseNotesHeader.styles.js";import"../../../../molecules/AnimatedCheckmark/AnimatedCheckmark.styles.js";import"../../../../molecules/ApplicationIcon/ApplicationIcon.js";import"../../../../molecules/Badge/Badge.styles.js";import"../../../../molecules/Chip/Chip.js";import"../../../../molecules/ContentMenu/ContentMenu.js";import"../../../../molecules/EquinorLogo/EquinorLogo.js";import"react";import{Typography as l}from"@equinor/eds-core-react";import"@equinor/eds-icons";import"../../../../molecules/FileProgress/CompactFileProgress.styles.js";import"../../../../atoms/utils/auth_environment.js";import"../../../../atoms/types/Errors.js";import"../../../ErrorPage/illustrations/GlitchAnimation.js";import"../../../ErrorPage/illustrations/QuestioningAnimation.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/MenuBar/MenuBar.js";import"../../../../molecules/RichTextEditor/RichTextEditor.styles.js";import"../../../../node_modules/lodash/lodash.js";import"@equinor/subsurface-app-management";import"@tanstack/react-query";import"@microsoft/signalr";import"../../../../atoms/types/Environment.js";import"../../Notifications/NotificationProvider.js";import"../../../../providers/AuthProvider/AuthProvider.js";import"../../../../providers/SideBarProvider.js";import"../../../../providers/SnackbarProvider.js";import"../../../../providers/TableOfContentsProvider.js";import"../../../../providers/TutorialStepsProvider.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/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";const m=()=>e(t,{children:[o(i,{className:"release-notes-header-container",children:o(l,{variant:"h4",children:"Release Notes"})}),o(s,{children:o(r,{})})]});export{m as ReleaseNotesHeader};