@corva/ui 3.31.0-3 → 3.31.0-5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
  2. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
  3. package/cjs-bundle/components/OffsetWellPickerV2/OffsetWellPickerDialog.js +1 -1
  4. package/cjs-bundle/components/OffsetWellPickerV2/OffsetWellPickerDialog.js.map +1 -1
  5. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.js +1 -1
  6. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.js.map +1 -1
  7. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.module.css.js +1 -1
  8. package/cjs-bundle/components/OffsetWellPickerV4/components/AppHeader/AppHeader.js +1 -1
  9. package/cjs-bundle/components/OffsetWellPickerV4/components/AppHeader/AppHeader.js.map +1 -1
  10. package/cjs-bundle/components/OffsetWellPickerV4/components/AppHeader/AppHeader.module.css.js +1 -1
  11. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js +1 -1
  12. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js.map +1 -1
  13. package/cjs-bundle/componentsV2/AppCommonsProvider/utils.js +1 -1
  14. package/cjs-bundle/effects/index.js +1 -1
  15. package/cjs-bundle/effects/useGlobalOffsetWellsSync.js +2 -0
  16. package/cjs-bundle/effects/useGlobalOffsetWellsSync.js.map +1 -0
  17. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.d.ts.map +1 -1
  18. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
  19. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
  20. package/components/OffsetWellPickerV2/OffsetWellPickerDialog.d.ts +4 -1
  21. package/components/OffsetWellPickerV2/OffsetWellPickerDialog.d.ts.map +1 -1
  22. package/components/OffsetWellPickerV2/OffsetWellPickerDialog.js +1 -1
  23. package/components/OffsetWellPickerV2/OffsetWellPickerDialog.js.map +1 -1
  24. package/components/OffsetWellPickerV4/OffsetWellPickerV4.d.ts.map +1 -1
  25. package/components/OffsetWellPickerV4/OffsetWellPickerV4.js +1 -1
  26. package/components/OffsetWellPickerV4/OffsetWellPickerV4.js.map +1 -1
  27. package/components/OffsetWellPickerV4/OffsetWellPickerV4.module.css.js +1 -1
  28. package/components/OffsetWellPickerV4/components/AppHeader/AppHeader.d.ts +2 -1
  29. package/components/OffsetWellPickerV4/components/AppHeader/AppHeader.d.ts.map +1 -1
  30. package/components/OffsetWellPickerV4/components/AppHeader/AppHeader.js +1 -1
  31. package/components/OffsetWellPickerV4/components/AppHeader/AppHeader.js.map +1 -1
  32. package/components/OffsetWellPickerV4/components/AppHeader/AppHeader.module.css.js +1 -1
  33. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js +1 -1
  34. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js.map +1 -1
  35. package/components/OffsetWellPickerV4/effects/index.d.ts +0 -1
  36. package/componentsV2/AppCommonsProvider/AppCommonsContext.d.ts +1 -0
  37. package/componentsV2/AppCommonsProvider/AppCommonsContext.d.ts.map +1 -1
  38. package/componentsV2/AppCommonsProvider/utils.d.ts +2 -1
  39. package/componentsV2/AppCommonsProvider/utils.d.ts.map +1 -1
  40. package/componentsV2/AppCommonsProvider/utils.js +1 -1
  41. package/effects/index.d.ts +1 -0
  42. package/effects/index.d.ts.map +1 -1
  43. package/effects/index.js +1 -1
  44. package/effects/useGlobalOffsetWellsSync.d.ts +2 -0
  45. package/effects/useGlobalOffsetWellsSync.d.ts.map +1 -0
  46. package/effects/useGlobalOffsetWellsSync.js +2 -0
  47. package/effects/useGlobalOffsetWellsSync.js.map +1 -0
  48. package/package.json +1 -1
  49. package/cjs-bundle/components/OffsetWellPickerV4/effects/useGlobalOffsetWellsSync.js +0 -2
  50. package/cjs-bundle/components/OffsetWellPickerV4/effects/useGlobalOffsetWellsSync.js.map +0 -1
  51. package/components/OffsetWellPickerV4/effects/useGlobalOffsetWellsSync.d.ts +0 -2
  52. package/components/OffsetWellPickerV4/effects/useGlobalOffsetWellsSync.d.ts.map +0 -1
  53. package/components/OffsetWellPickerV4/effects/useGlobalOffsetWellsSync.js +0 -2
  54. package/components/OffsetWellPickerV4/effects/useGlobalOffsetWellsSync.js.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("@babel/runtime/helpers/defineProperty"),s=require("@babel/runtime/helpers/slicedToArray"),o=require("react"),n=require("classnames"),t=require("lodash"),r=require("@material-ui/core"),i=require("@material-ui/icons"),c=require("../AppContext.js"),p=require("../DevCenterRouterContext/DevCenterRouterContext.js");require("../DevCenterRouterContext/UniversalLink/UniversalLink.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("react-router");var a=require("react/jsx-runtime"),u=require("./effects/useAppSettings.js"),l=require("./effects/useAnnotationsList.js"),d=require("./effects/useAnnotationsData.js"),m=require("./effects/useAppMaximized.js"),q=require("./components/AppActions/AppActions.js"),j=require("./components/AppSettingsDialog/AppSettingsDialog.js");require("./components/AppSettingsDialog/components/RemoveAppButton.js"),require("./components/AppSettingsDialog/components/SettingsAccordion.js"),require("./components/AnnotationsButton/AnnotationsButton.js");var A=require("./components/NonPriorityMenus/NonPriorityMenus.js"),g=require("./components/FullscreenButton/FullscreenButton.js");require("./components/AppInfoMessage/AppInfoMessage.js");var v=require("./components/DevCenterAppView/DevCenterAppView.js"),C=require("./components/DcFullscreenElemsCoordinatorProvider/DcFullscreenElemsCoordinatorProvider.js");require("./components/DcFullscreenElemsCoordinatorProvider/IsInsideDcFullscreenElemProvider.js"),require("./components/IsInsideIsolatedDcAppProvider/IsInsideIsolatedDcAppProvider.js");var V=require("./components/RestoreAppSizeButton/index.js"),I=require("./utils.js"),S=require("./components/PriorityMenus/PriorityMenus.js"),h=require("./components/RollbarWrapper/RollbarWrapper.js"),b=require("./components/CommentsSwitch/CommentsSwitchProvider.js"),D=require("./components/CommentsSwitch/CommentsSwitchButton.js"),x=require("./DevCenterAppContainer.css.js"),M=require("../../../utils/mobileDetect.js"),P=require("../../Icons/AnnotationIcon.js"),f=require("../../Annotations/components/AnnotationsList/index.js");require("../../Annotations/components/LastAnnotation/index.js");var y=require("../../Annotations/AnnotationsContext.js");require("../../Toaster/Toaster.js");var L=require("../../Toaster/ToastContainer.js");require("../../../clients/subscriptions/constants.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("querystring"),require("uuid/v1"),require("../../../clients/subscriptions.v1.js"),require("../../../clients/jsonApi/index.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js");var T=require("../../../effects/useDevCenterApp.js");require("../../../utils/index.js"),require("uuid"),require("jsona"),require("../../../constants/segment.js"),require("../../../utils/env.js");var k=require("../../../constants/devcenter.js");require("../../../constants/goals.js"),require("../../../constants/alerts.js"),require("../../../constants/apps.js"),require("../../../constants/drillstring.js"),require("../../../constants/completion.js"),require("../../../constants/appPackages.js"),require("../../../constants/notifications.js"),require("../../../constants/feed.js"),require("../../../constants/bha.js"),require("../../../constants/corvaCompanyId.js"),require("../../GradientManager/configuration/constants.js"),require("../../StatusBadge/constants.js"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js"),require("lodash/isEmpty"),require("lodash/sortBy"),require("../../../constants/streamSourceType.js"),require("./components/CommentsSwitch/CommentsSwitchContext.js");var B=require("../../../componentsV2/AppCommonsProvider/AppCommonsProvider.js");require("../../../componentsV2/AppCommonsProvider/AppCommonsContext.js");var F=require("../../../utils/devcenter.js"),H=require("../../HelpCenter/HelpCenterIcon.js");require("../../../componentsV2/Text/Text.js"),require("../../../componentsV2/Grid/Grid.js"),require("../../../componentsV2/Grid/Grid.scss.js"),require("../../../componentsV2/Header/Header.scss.js"),require("../../../componentsV2/Button/Button.js");var w=require("../../../componentsV2/ButtonIcon/ButtonIcon.js"),R=require("../../../componentsV2/Tooltip/Tooltip.js");require("../../../componentsV2/Popover/Popover.js"),require("../../../componentsV2/Radio/Radio.js"),require("../../../componentsV2/RadioAndCheckboxGroup/RadioAndCheckboxGroup.scss.js"),require("../../../componentsV2/Checkbox/Checkbox.js"),require("../../../componentsV2/TextInput/TextInput.js"),require("../../../componentsV2/TextEndTruncated/TextEndTruncated.scss.js"),require("../../../componentsV2/TextMiddleTruncated/TextMiddleTruncated.constants.js"),require("../../../componentsV2/TextMiddleTruncated/TextMiddleTruncated.scss.js"),require("../../../componentsV2/TextLink/TextLink.js"),require("../../../componentsV2/Chip/Chip.js"),require("../../../componentsV2/ChipAlert/ChipAlert.js"),require("../../../componentsV2/ChipIndicator/ChipIndicator.js"),require("../../../componentsV2/Avatar/Avatar.js"),require("../../../componentsV2/Avatar/constants.js"),require("../../../componentsV2/AvatarGroup/AvatarGroup.scss.js"),require("@material-ui/lab"),require("../../../componentsV2/ToggleButtons/ToggleButtons.scss.js"),require("../../../componentsV2/Paper/Paper.js"),require("../../../componentsV2/ModalWindow/ModalWindow.scss.js"),require("@icon-park/react/es/all"),require("../../../icons/IconParkProvider.js"),require("../../../icons/customIcons/icons/AddMessage.js"),require("../../../icons/customIcons/icons/Attention.js"),require("../../../icons/customIcons/icons/Collapse.js"),require("../../../icons/customIcons/icons/Dashboard.js"),require("../../../icons/customIcons/icons/Expand.js"),require("../../../icons/customIcons/icons/FolderClosed.js"),require("../../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../../icons/customIcons/icons/FolderOpened.js"),require("../../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../../icons/customIcons/icons/LessOrEqual.js"),require("../../../icons/customIcons/icons/Search.js"),require("../../../icons/customIcons/icons/Wellhub.js"),require("../../../icons/customIcons/icons/MultiRuler.js"),require("../../../icons/customIcons/icons/Checkbox.js"),require("../../../icons/customIcons/icons/CheckboxChecked.js"),require("../../../icons/customIcons/icons/CheckboxIndeterminate.js"),require("../../../icons/customIcons/icons/Radio.js"),require("../../../icons/customIcons/icons/RadioChecked.js"),require("../../../icons/customIcons/icons/SimulFrac.js"),require("../../../icons/customIcons/icons/ZipperFrac.js"),require("../../../icons/customIcons/icons/CautionFilled.js"),require("../../../icons/customIcons/icons/MoreApp.js"),require("../../../icons/customIcons/icons/Pad.js"),require("../../../icons/customIcons/icons/DrilloutUnit.js"),require("../../../icons/customIcons/icons/FracFleet.js"),require("../../../icons/customIcons/icons/Global.js"),require("../../../icons/customIcons/icons/Program.js"),require("../../../icons/customIcons/icons/Rig.js"),require("../../../icons/customIcons/icons/Well.js"),require("../../../icons/customIcons/icons/Gap.js"),require("../../../icons/customIcons/icons/Pin.js"),require("../../../icons/customIcons/icons/CloseOneFilled.js"),require("../../../icons/customIcons/icons/AttentionFilled.js"),require("../../../icons/customIcons/icons/CheckOneFilled.js"),require("../../../icons/customIcons/icons/Archive.js"),require("../../../icons/customIcons/icons/ArchiveCancel.js"),require("../../../icons/customIcons/icons/Unarchive.js"),require("../../../icons/customIcons/icons/Archived.js"),require("../../../componentsV2/Modal/Modal.scss.js"),require("../../../componentsV2/Menu/Menu.js"),require("../../../componentsV2/Counter/Counter.js"),require("../../../componentsV2/BadgeBase/BadgeBase.scss.js"),require("../../../componentsV2/BadgeDot/BadgeDot.scss.js"),require("../../../componentsV2/LoaderLinear/LoaderLinear.scss.js"),require("../../../componentsV2/LoaderLogo/LoaderLogo.constants.js"),require("../../../componentsV2/LoaderLogo/LoaderLogo.scss.js"),require("../../../componentsV2/Switch/Switch.js"),require("../../../componentsV2/Tabs/Tabs.js"),require("../../../componentsV2/EmptyState/EmptyState.scss.js"),require("../../../componentsV2/FileIcon/FileIcon.js"),require("../../../componentsV2/Tag/Tag.js"),require("react-dropzone"),require("../../../componentsV2/FilesDropzone/FilesDropzone.scss.js"),require("../../../componentsV2/FilesLoader/FilesLoader.scss.js"),require("../../../componentsV2/FilesProcessor/FilesProcessor.scss.js"),require("../../../componentsV2/Skeleton/Skeleton.scss.js"),require("../../../utils/main.js"),require("../../../componentsV2/CopyToClipboard/CopyToClipboard.scss.js"),require("../../../componentsV2/Stepper/Step/Step.scss.js"),require("../../../componentsV2/Stepper/Stepper.scss.js"),require("../../../componentsV2/ButtonLive/ButtonLive.js"),require("../../../componentsV2/ButtonText/ButtonText.js"),require("../../../componentsV2/LiveDotIndicator/LiveDotIndicator.scss.js"),require("../../../componentsV2/IndicatorLive/IndicatorLive.scss.js"),require("../../../componentsV2/Accordion/Accordion.scss.js"),require("../../../componentsV2/Breadcrumbs/Breadcrumbs.scss.js"),require("../../../componentsV2/BadgeComment/BadgeComment.js"),require("../../../componentsV2/AppContainer/AppContainer.js"),require("../../../componentsV2/AppContainer/AppContainer.constants.js"),require("../../../componentsV2/AppFooter/AppFooter.js"),require("../../../componentsV2/AppHeader/AppHeader.constants.js"),require("../../../componentsV2/AppHeader/AppBadge/AppBadge.scss.js"),require("../../../componentsV2/AppHeader/AppAssets/utils.js"),require("../../../componentsV2/AppHeader/AppAssets/AppAssets.scss.js"),require("../../PadModeSelect/PadModeSelect.js"),require("../../../componentsV2/AppHeader/PadMode/PadMode.scss.js"),require("../../../types/shared/Completions.js"),require("../../PadModeSelect/types.js"),require("lodash/flatten"),require("lodash/partition"),require("../../../componentsV2/PadModeSelect/FracModeLabel/FracModeLabel.js"),require("../../../componentsV2/PadModeSelect/FracModeLabel/FracModeLabel.constants.js"),require("../../../componentsV2/PadModeSelect/WellStreamActivityStatus/WellStreamActivityStatus.scss.js"),require("../../../componentsV2/PadModeSelect/PadModeSelect.constants.js"),require("../../../componentsV2/PadModeSelect/PadModeSelect.scss.js"),require("../../../componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js"),require("../../../componentsV2/UniversalLink/UniversalLink.scss.js"),require("../../../componentsV2/AppHeader/V3/AssetChips/AssetChips.scss.js"),require("../../../componentsV2/AppHeader/V3/DqStatusIcon/DqStatusIcon.js"),require("../../../componentsV2/AppHeader/V3/DqStatusIcon/DqStatusIcon.constants.js"),require("../../../componentsV2/AppFooter/DqPopover/DqStatusIcon/DqStatusIcon.js"),require("../../../componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.scss.js"),require("../../../componentsV2/AppDqPopover/DqAlert/DqAlert.scss.js"),require("../../../componentsV2/AppDqPopover/DqAsset/DqAsset.scss.js"),require("../../../componentsV2/AppDqPopover/AppDqPopover.scss.js"),require("../../AppIcon/AppIcon.js"),require("../../../utils/getSingleAsset.js"),require("../../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorChip/AssetSelectorChip.js"),require("../../../componentsV2/AppHeader/V3/AssetSelector/constants.js"),require("../../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorSelect/AssetSelectorSelect.scss.js"),require("../../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorSelect/loadAssets.js"),require("../../../componentsV2/AppHeader/V3/AssetSelector/AssetSelector.scss.js"),require("../../../componentsV2/AppHeader/V3/AppTitle/AppTitle.constants.js"),require("../../../componentsV2/AppContainer/headerCommon.scss.js"),require("../../../componentsV2/AppHeader/V3/AppTitle/AppTitle.scss.js"),require("../../../componentsV2/AppHeader/V3/constants.scss.js"),require("@babel/runtime/helpers/typeof"),require("../../../componentsV2/AppSizeProvider/AppSizeProvider.js"),require("../../../componentsV2/AppSettings/AppSettings.js"),require("../../../componentsV2/AppSettings/AppSettings.constants.js"),require("../../../componentsV2/AppSettings/AppSettingsPinningContext.js"),require("../../../componentsV2/AppHeader/V3/SettingsPopover/SettingsPopover.constants.js"),require("../../../componentsV2/AppHeader/V3/SettingsPopover/SettingsPopover.scss.js"),require("../../../componentsV2/AppHeader/V3/Actions/Actions.constants.js"),require("../../../componentsV2/AppHeader/V3/Actions/Actions.scss.js"),require("../../../componentsV2/AppHeader/V3/AppHeaderV3.scss.js"),require("../../../componentsV2/AppHeader/AppHeader.scss.js"),require("../../../componentsV2/OffsetWellsButton/OffsetWellsButton.scss.js"),require("../../../componentsV2/Autocomplete/Autocomplete.scss.js"),require("../../../componentsV2/Menu/MenuItem/MenuItem.scss.js"),require("../../../componentsV2/Autocomplete/AutocompleteListBox.js"),require("../../../componentsV2/AppSettingsDivider/AppSettingsDivider.scss.js"),require("../../../componentsV2/WellArchivedMessage/WellArchivedMessage.js"),require("../../../componentsV2/DatePicker/CalendarControls/CalendarControls.scss.js"),require("../../../componentsV2/DatePicker/TimePicker/TimePicker.js"),require("../../../componentsV2/DatePicker/Input/Input.js"),require("../../../componentsV2/DatePicker/CalendarGrid/CalendarGrid.scss.js"),require("../../../componentsV2/DatePicker/DatePicker.scss.js"),require("../../../componentsV2/DragHandle/DragHandle.js");var O=require("../../../utils/notificationToasts.js");function E(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var z=E(e),_=E(s),N=E(n);function W(e,s){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);s&&(n=n.filter((function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable}))),o.push.apply(o,n)}return o}function G(e){for(var s=1;s<arguments.length;s++){var o=null!=arguments[s]?arguments[s]:{};s%2?W(Object(o),!0).forEach((function(s){z.default(e,s,o[s])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):W(Object(o)).forEach((function(s){Object.defineProperty(e,s,Object.getOwnPropertyDescriptor(o,s))}))}return e}var U=M.isNativeDetected||M.isMobileDetected,K="DevCenter_AppContainer";module.exports=function(e){var s,n,E,z,W,Q,Z,J,X,Y,$,ee,se,oe,ne,te,re,ie,ce,pe,ae=e.CLIAppComponent,ue=e.CLIAppSettings,le=e.app,de=e.appId,me=e.className,qe=e.coordinates,je=e.currentDashboardAppsLastAnnotations,Ae=e.currentUser,ge=e.devCenterRouter,ve=e.isActionsDisabled,Ce=e.isSettingsDialogHidden,Ve=e.layoutEnvironment,Ie=e.onAppContainerClick,Se=void 0===Ie?t.noop:Ie,he=e.onAppRemove,be=e.onReportBugClick,De=e.onCloneDashboard,xe=e.onHelpCenterClick,Me=e.onIsMaximizedChange,Pe=e.onSettingChange,fe=e.onSettingsChange,ye=e.openIntercom,Le=void 0===ye?t.noop:ye,Te=e.setIsFullscreenModalMode,ke=void 0===Te?t.noop:Te,Be=e.timestamp,Fe=e.updateCurrentDashboardAppLastAnnotation,He=e.dashboardMeta,we=o.useContext(c),Re=r.useTheme(),Oe=o.useState([]),Ee=_.default(Oe,2),ze=Ee[0],_e=Ee[1],Ne=o.useState([]),We=_.default(Ne,2),Ge=We[0],Ue=We[1],Ke=null!==(s=null==we?void 0:we[de||le.id])&&void 0!==s?s:{isLoading:!0},Qe=null===(n=le.package)||void 0===n||null===(E=n.manifest)||void 0===E?void 0:E.application,Ze=F.getAppSegment(le),Je=!(null==Qe||null===(z=Qe.ui)||void 0===z||!z.multi_rig),Xe=!(null==Qe||null===(W=Qe.ui)||void 0===W||!W.enable_comments),Ye=F.getAppName(le),$e=m({onIsMaximizedChange:Me,devCenterRouter:ge,appId:de}),es=$e.isMaximized,ss=$e.setIsMaximized,os=Be||F.getTimestampFromQuery(null===(Q=ge.location.query)||void 0===Q?void 0:Q.query),ns=le.id===k.DEV_CENTER_CLI_APP_ID,ts=ns&&U?G(G({},qe),{},{w:12}):qe,rs=I.getAppVersion(le),is=T({CLIAppComponent:ae,CLIAppSettings:ue,app:le,version:rs}),cs=is.isLoading,ps=is.AppSettings,as=is.AppComponent,us=u({setIsFullscreenModalMode:ke}),ls=us.isAppSettingsDialogOpened,ds=us.toggleAppSettingsDialog,ms=l(),qs=ms.isAnnotationsListOpened,js=ms.toggleAnnotationsList,As=cs||!Ae||!Je&&Ke.isLoading,gs=d({app:le,appData:Ke,currentDashboardAppsLastAnnotations:je}),vs=gs.appLastAnnotation,Cs=gs.assetCompanyId,Vs=gs.assetIdForAnnotation,Is=gs.isAppSupportsAnnotations,Ss=t.pickBy(t.pick(Ke,["well","rig","fracFleet","wells","interventionUnit"]),Boolean),hs=o.useMemo((function(){return null==Ge?void 0:Ge.map((function(e){return G(G({},e),{},{onClick:function(){var s;null===(s=e.onClick)||void 0===s||s.call(e),e.to&&ge.push(e.to)}})}))}),[Ge,ge]),bs=!(null==le||null===(Z=le.package)||void 0===Z||null===(J=Z.manifest)||void 0===J||null===(X=J.application)||void 0===X||null===(Y=X.ui)||void 0===Y||!Y.use_app_header_v3),Ds=!(null==(ie=ge)||null===(ce=ie.location)||void 0===ce||null===(pe=ce.pathname)||void 0===pe||!pe.startsWith("/home")),xs=o.useState(!1),Ms=_.default(xs,2),Ps=Ms[0],fs=Ms[1],ys=o.useCallback((function(){fs(!0)}));return a.jsx(h.RollbarWrapper,{companyId:null==le||null===($=le.app)||void 0===$?void 0:$.company_id,appKey:null==Qe?void 0:Qe.key,isCLIApp:ns,rollbarManifestConfig:null==le||null===(ee=le.package)||void 0===ee||null===(se=ee.manifest)||void 0===se||null===(oe=se.settings)||void 0===oe?void 0:oe.rollbar,version:rs,children:a.jsx(p.DevCenterRouterContext.Provider,{value:ge,children:a.jsx(C.DcFullscreenElemsCoordinatorProvider,{setIsFullscreenModalMode:ke,children:a.jsx(B.AppCommonsProvider,G(G({maximized:es,setMaximized:ss,appId:null==le||null===(ne=le.app)||void 0===ne?void 0:ne.id,app:le,appSettings:le.settings,onSettingChange:Pe,onSettingsChange:fe,appHeadersV3Enabled:bs,currentUser:Ae,appData:Ke,layoutEnvironment:Ve,appSettingsComponent:ps,dashboardMeta:He,toggleAnnotationsList:Is?js:void 0,onHelpCenterClick:xe,secondaryMenuItems:hs,onAppRemove:he,isInsideNewMobileApp:M.isInsideNewMobileApp,globalOffsetWells:null==He?void 0:He.globalOffsetWells},Ss),{},{children:a.jsx(b.CommentsSwitchProvider,{children:a.jsxs("div",{className:N.default("dc-app-container",M.isInsideNewMobileApp&&"dc-app-container--inside-new-mobile-app",Ds&&"dc-app-container--inside-home-page",me,es&&"dc-app-container__maximized",Re.isLightTheme&&"dc-app-container__light-theme",x.container),"data-testid":"".concat(K,"_").concat(Ye),onClick:function(){return Se()},children:[a.jsx(L.ToastContainer,{}),a.jsx("div",{className:x.containerContent,children:a.jsx(v.default,{AppComponent:as,app:le,appData:Ss,isAppLoading:cs,availability:I.getAppAvailability(le.availability,Ae.company.with_subscription),isCLIApp:ns,isLoading:As,isMultiRig:Je,layoutEnvironment:Ve,openIntercom:Le,segment:Ze,toggleAppSettingsDialog:ds,onError:ys,appProps:{coordinates:ts,currentUser:Ae,devCenterRouter:ge,onSettingChange:Pe,onSettingsChange:fe,segment:Ze,setIsFullscreenModalMode:ke,setIsMaximized:ss,setMainMenuItems:_e,setSecondaryMenuItems:Ue,toggleAppSettingsDialog:ds,appHeaderProps:G({app:le,appLastAnnotation:vs,appSettings:le.settings,coordinates:ts,currentUser:Ae,isMaximized:es,layoutEnvironment:Ve,onSettingChange:Pe,toggleAnnotationsList:js,updateCurrentDashboardAppLastAnnotation:Fe},Ss),isNative:M.isNativeDetected,layoutEnvironment:Ve,timestamp:os}})}),ls&&a.jsx(j.default,{AppSettingsComponent:ps,app:le,appData:Ke,appName:Ye,currentUser:Ae,isMultiRig:Je,isSettingsDialogHidden:Ce,layoutEnvironment:Ve,onAppRemove:he,onCloneDashboard:De,onSettingChange:Pe,onSettingsChange:fe,openIntercom:Le,rigId:null!==(te=null===(re=Ke.rig)||void 0===re?void 0:re.id)&&void 0!==te?te:null,timestamp:os,toggleAppSettingsDialog:ds}),qs&&a.jsx(y.AnnotationsProvider,{children:a.jsx(f,{appId:le.app.id,appSettings:le.settings,appTitle:Ye,assetCompanyId:Cs,assetId:Vs,currentUser:Ae,onClose:js,showSuccessNotification:O.showSuccessNotification})}),es&&!bs&&a.jsx(V,{setIsMaximized:ss}),!ve&&(!bs||As||Ps)&&a.jsxs(q,{children:[Xe&&a.jsx(D.CommentsSwitchButton,{currentUser:Ae}),Is&&a.jsx(R.Tooltip,{title:"Add Annotation",placement:"top",disabled:!!U,children:a.jsx(w.ButtonIcon,{size:"small",type:"tertiaryBg",onClick:js,testId:"".concat(K,"_addAnnotation"),children:a.jsx(P,{})})}),be&&!ns&&a.jsx(R.Tooltip,{title:"Report A Bug",placement:"top",disabled:!!U,children:a.jsx(w.ButtonIcon,{size:"small",type:"tertiaryBg",onClick:function(){return be()},children:a.jsx(i.BugReport,{})})}),a.jsx(R.Tooltip,{placement:"top",disabled:!!U||ns,title:"Help Center",children:a.jsx(w.ButtonIcon,{testId:"".concat(K,"_helpContent"),onClick:function(){return xe()},disabled:ns,size:"small",type:"tertiaryBg",children:a.jsx(H.HelpCenterIcon,{appId:le.app.id,helpContentUpdatedAt:le.help_content_updated_at})})}),!U||es||M.isInsideNewMobileApp?a.jsxs(a.Fragment,{children:[a.jsx(S,{menuItems:ze,devCenterRouter:ge,isMobileView:U}),a.jsx(A.NonPriorityMenus,{devCenterRouter:ge,isMaximized:es,isMobileView:U,menuItems:Ge,setIsFullscreenModalMode:ke,setIsMaximized:ss,toggleAppSettingsDialog:ds})]}):a.jsx(g,{setIsMaximized:ss})]})]})})}))})})})};
1
+ "use strict";var e=require("@babel/runtime/helpers/defineProperty"),s=require("@babel/runtime/helpers/slicedToArray"),o=require("react"),n=require("classnames"),t=require("lodash"),r=require("@material-ui/core"),i=require("@material-ui/icons"),c=require("../AppContext.js"),p=require("../DevCenterRouterContext/DevCenterRouterContext.js");require("../DevCenterRouterContext/UniversalLink/UniversalLink.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("react-router");var a=require("react/jsx-runtime"),u=require("./effects/useAppSettings.js"),l=require("./effects/useAnnotationsList.js"),d=require("./effects/useAnnotationsData.js"),m=require("./effects/useAppMaximized.js"),q=require("./components/AppActions/AppActions.js"),j=require("./components/AppSettingsDialog/AppSettingsDialog.js");require("./components/AppSettingsDialog/components/RemoveAppButton.js"),require("./components/AppSettingsDialog/components/SettingsAccordion.js"),require("./components/AnnotationsButton/AnnotationsButton.js");var A=require("./components/NonPriorityMenus/NonPriorityMenus.js"),g=require("./components/FullscreenButton/FullscreenButton.js");require("./components/AppInfoMessage/AppInfoMessage.js");var v=require("./components/DevCenterAppView/DevCenterAppView.js"),C=require("./components/DcFullscreenElemsCoordinatorProvider/DcFullscreenElemsCoordinatorProvider.js");require("./components/DcFullscreenElemsCoordinatorProvider/IsInsideDcFullscreenElemProvider.js"),require("./components/IsInsideIsolatedDcAppProvider/IsInsideIsolatedDcAppProvider.js");var V=require("./components/RestoreAppSizeButton/index.js"),I=require("./utils.js"),S=require("./components/PriorityMenus/PriorityMenus.js"),h=require("./components/RollbarWrapper/RollbarWrapper.js"),b=require("./components/CommentsSwitch/CommentsSwitchProvider.js"),D=require("./components/CommentsSwitch/CommentsSwitchButton.js"),x=require("./DevCenterAppContainer.css.js"),M=require("../../../utils/mobileDetect.js"),P=require("../../Icons/AnnotationIcon.js"),f=require("../../Annotations/components/AnnotationsList/index.js");require("../../Annotations/components/LastAnnotation/index.js");var y=require("../../Annotations/AnnotationsContext.js");require("../../Toaster/Toaster.js");var L=require("../../Toaster/ToastContainer.js");require("../../../clients/subscriptions/constants.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("querystring"),require("uuid/v1"),require("../../../clients/subscriptions.v1.js"),require("../../../clients/jsonApi/index.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js");var T=require("../../../effects/useDevCenterApp.js");require("../../../utils/index.js"),require("uuid"),require("jsona"),require("../../../constants/segment.js"),require("../../../utils/env.js");var k=require("../../../constants/devcenter.js");require("../../../constants/goals.js"),require("../../../constants/alerts.js"),require("../../../constants/apps.js"),require("../../../constants/drillstring.js"),require("../../../constants/completion.js"),require("../../../constants/appPackages.js"),require("../../../constants/notifications.js"),require("../../../constants/feed.js"),require("../../../constants/bha.js"),require("../../../constants/corvaCompanyId.js"),require("../../GradientManager/configuration/constants.js"),require("../../StatusBadge/constants.js"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js"),require("lodash/isEmpty"),require("lodash/sortBy"),require("../../../constants/streamSourceType.js"),require("./components/CommentsSwitch/CommentsSwitchContext.js");var B=require("../../../componentsV2/AppCommonsProvider/AppCommonsProvider.js");require("../../../componentsV2/AppCommonsProvider/AppCommonsContext.js");var F=require("../../../utils/devcenter.js"),H=require("../../HelpCenter/HelpCenterIcon.js");require("../../../componentsV2/Text/Text.js"),require("../../../componentsV2/Grid/Grid.js"),require("../../../componentsV2/Grid/Grid.scss.js"),require("../../../componentsV2/Header/Header.scss.js"),require("../../../componentsV2/Button/Button.js");var w=require("../../../componentsV2/ButtonIcon/ButtonIcon.js"),R=require("../../../componentsV2/Tooltip/Tooltip.js");require("../../../componentsV2/Popover/Popover.js"),require("../../../componentsV2/Radio/Radio.js"),require("../../../componentsV2/RadioAndCheckboxGroup/RadioAndCheckboxGroup.scss.js"),require("../../../componentsV2/Checkbox/Checkbox.js"),require("../../../componentsV2/TextInput/TextInput.js"),require("../../../componentsV2/TextEndTruncated/TextEndTruncated.scss.js"),require("../../../componentsV2/TextMiddleTruncated/TextMiddleTruncated.constants.js"),require("../../../componentsV2/TextMiddleTruncated/TextMiddleTruncated.scss.js"),require("../../../componentsV2/TextLink/TextLink.js"),require("../../../componentsV2/Chip/Chip.js"),require("../../../componentsV2/ChipAlert/ChipAlert.js"),require("../../../componentsV2/ChipIndicator/ChipIndicator.js"),require("../../../componentsV2/Avatar/Avatar.js"),require("../../../componentsV2/Avatar/constants.js"),require("../../../componentsV2/AvatarGroup/AvatarGroup.scss.js"),require("@material-ui/lab"),require("../../../componentsV2/ToggleButtons/ToggleButtons.scss.js"),require("../../../componentsV2/Paper/Paper.js"),require("../../../componentsV2/ModalWindow/ModalWindow.scss.js"),require("@icon-park/react/es/all"),require("../../../icons/IconParkProvider.js"),require("../../../icons/customIcons/icons/AddMessage.js"),require("../../../icons/customIcons/icons/Attention.js"),require("../../../icons/customIcons/icons/Collapse.js"),require("../../../icons/customIcons/icons/Dashboard.js"),require("../../../icons/customIcons/icons/Expand.js"),require("../../../icons/customIcons/icons/FolderClosed.js"),require("../../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../../icons/customIcons/icons/FolderOpened.js"),require("../../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../../icons/customIcons/icons/LessOrEqual.js"),require("../../../icons/customIcons/icons/Search.js"),require("../../../icons/customIcons/icons/Wellhub.js"),require("../../../icons/customIcons/icons/MultiRuler.js"),require("../../../icons/customIcons/icons/Checkbox.js"),require("../../../icons/customIcons/icons/CheckboxChecked.js"),require("../../../icons/customIcons/icons/CheckboxIndeterminate.js"),require("../../../icons/customIcons/icons/Radio.js"),require("../../../icons/customIcons/icons/RadioChecked.js"),require("../../../icons/customIcons/icons/SimulFrac.js"),require("../../../icons/customIcons/icons/ZipperFrac.js"),require("../../../icons/customIcons/icons/CautionFilled.js"),require("../../../icons/customIcons/icons/MoreApp.js"),require("../../../icons/customIcons/icons/Pad.js"),require("../../../icons/customIcons/icons/DrilloutUnit.js"),require("../../../icons/customIcons/icons/FracFleet.js"),require("../../../icons/customIcons/icons/Global.js"),require("../../../icons/customIcons/icons/Program.js"),require("../../../icons/customIcons/icons/Rig.js"),require("../../../icons/customIcons/icons/Well.js"),require("../../../icons/customIcons/icons/Gap.js"),require("../../../icons/customIcons/icons/Pin.js"),require("../../../icons/customIcons/icons/CloseOneFilled.js"),require("../../../icons/customIcons/icons/AttentionFilled.js"),require("../../../icons/customIcons/icons/CheckOneFilled.js"),require("../../../icons/customIcons/icons/Archive.js"),require("../../../icons/customIcons/icons/ArchiveCancel.js"),require("../../../icons/customIcons/icons/Unarchive.js"),require("../../../icons/customIcons/icons/Archived.js"),require("../../../componentsV2/Modal/Modal.scss.js"),require("../../../componentsV2/Menu/Menu.js"),require("../../../componentsV2/Counter/Counter.js"),require("../../../componentsV2/BadgeBase/BadgeBase.scss.js"),require("../../../componentsV2/BadgeDot/BadgeDot.scss.js"),require("../../../componentsV2/LoaderLinear/LoaderLinear.scss.js"),require("../../../componentsV2/LoaderLogo/LoaderLogo.constants.js"),require("../../../componentsV2/LoaderLogo/LoaderLogo.scss.js"),require("../../../componentsV2/Switch/Switch.js"),require("../../../componentsV2/Tabs/Tabs.js"),require("../../../componentsV2/EmptyState/EmptyState.scss.js"),require("../../../componentsV2/FileIcon/FileIcon.js"),require("../../../componentsV2/Tag/Tag.js"),require("react-dropzone"),require("../../../componentsV2/FilesDropzone/FilesDropzone.scss.js"),require("../../../componentsV2/FilesLoader/FilesLoader.scss.js"),require("../../../componentsV2/FilesProcessor/FilesProcessor.scss.js"),require("../../../componentsV2/Skeleton/Skeleton.scss.js"),require("../../../utils/main.js"),require("../../../componentsV2/CopyToClipboard/CopyToClipboard.scss.js"),require("../../../componentsV2/Stepper/Step/Step.scss.js"),require("../../../componentsV2/Stepper/Stepper.scss.js"),require("../../../componentsV2/ButtonLive/ButtonLive.js"),require("../../../componentsV2/ButtonText/ButtonText.js"),require("../../../componentsV2/LiveDotIndicator/LiveDotIndicator.scss.js"),require("../../../componentsV2/IndicatorLive/IndicatorLive.scss.js"),require("../../../componentsV2/Accordion/Accordion.scss.js"),require("../../../componentsV2/Breadcrumbs/Breadcrumbs.scss.js"),require("../../../componentsV2/BadgeComment/BadgeComment.js"),require("../../../componentsV2/AppContainer/AppContainer.js"),require("../../../componentsV2/AppContainer/AppContainer.constants.js"),require("../../../componentsV2/AppFooter/AppFooter.js"),require("../../../componentsV2/AppHeader/AppHeader.constants.js"),require("../../../componentsV2/AppHeader/AppBadge/AppBadge.scss.js"),require("../../../componentsV2/AppHeader/AppAssets/utils.js"),require("../../../componentsV2/AppHeader/AppAssets/AppAssets.scss.js"),require("../../PadModeSelect/PadModeSelect.js"),require("../../../componentsV2/AppHeader/PadMode/PadMode.scss.js"),require("../../../types/shared/Completions.js"),require("../../PadModeSelect/types.js"),require("lodash/flatten"),require("lodash/partition"),require("../../../componentsV2/PadModeSelect/FracModeLabel/FracModeLabel.js"),require("../../../componentsV2/PadModeSelect/FracModeLabel/FracModeLabel.constants.js"),require("../../../componentsV2/PadModeSelect/WellStreamActivityStatus/WellStreamActivityStatus.scss.js"),require("../../../componentsV2/PadModeSelect/PadModeSelect.constants.js"),require("../../../componentsV2/PadModeSelect/PadModeSelect.scss.js"),require("../../../componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js"),require("../../../componentsV2/UniversalLink/UniversalLink.scss.js"),require("../../../componentsV2/AppHeader/V3/AssetChips/AssetChips.scss.js"),require("../../../componentsV2/AppHeader/V3/DqStatusIcon/DqStatusIcon.js"),require("../../../componentsV2/AppHeader/V3/DqStatusIcon/DqStatusIcon.constants.js"),require("../../../componentsV2/AppFooter/DqPopover/DqStatusIcon/DqStatusIcon.js"),require("../../../componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.scss.js"),require("../../../componentsV2/AppDqPopover/DqAlert/DqAlert.scss.js"),require("../../../componentsV2/AppDqPopover/DqAsset/DqAsset.scss.js"),require("../../../componentsV2/AppDqPopover/AppDqPopover.scss.js"),require("../../AppIcon/AppIcon.js"),require("../../../utils/getSingleAsset.js"),require("../../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorChip/AssetSelectorChip.js"),require("../../../componentsV2/AppHeader/V3/AssetSelector/constants.js"),require("../../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorSelect/AssetSelectorSelect.scss.js"),require("../../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorSelect/loadAssets.js"),require("../../../componentsV2/AppHeader/V3/AssetSelector/AssetSelector.scss.js"),require("../../../componentsV2/AppHeader/V3/AppTitle/AppTitle.constants.js"),require("../../../componentsV2/AppContainer/headerCommon.scss.js"),require("../../../componentsV2/AppHeader/V3/AppTitle/AppTitle.scss.js"),require("../../../componentsV2/AppHeader/V3/constants.scss.js"),require("@babel/runtime/helpers/typeof"),require("../../../componentsV2/AppSizeProvider/AppSizeProvider.js"),require("../../../componentsV2/AppSettings/AppSettings.js"),require("../../../componentsV2/AppSettings/AppSettings.constants.js"),require("../../../componentsV2/AppSettings/AppSettingsPinningContext.js"),require("../../../componentsV2/AppHeader/V3/SettingsPopover/SettingsPopover.constants.js"),require("../../../componentsV2/AppHeader/V3/SettingsPopover/SettingsPopover.scss.js"),require("../../../componentsV2/AppHeader/V3/Actions/Actions.constants.js"),require("../../../componentsV2/AppHeader/V3/Actions/Actions.scss.js"),require("../../../componentsV2/AppHeader/V3/AppHeaderV3.scss.js"),require("../../../componentsV2/AppHeader/AppHeader.scss.js"),require("../../../componentsV2/OffsetWellsButton/OffsetWellsButton.scss.js"),require("../../../componentsV2/Autocomplete/Autocomplete.scss.js"),require("../../../componentsV2/Menu/MenuItem/MenuItem.scss.js"),require("../../../componentsV2/Autocomplete/AutocompleteListBox.js"),require("../../../componentsV2/AppSettingsDivider/AppSettingsDivider.scss.js"),require("../../../componentsV2/WellArchivedMessage/WellArchivedMessage.js"),require("../../../componentsV2/DatePicker/CalendarControls/CalendarControls.scss.js"),require("../../../componentsV2/DatePicker/TimePicker/TimePicker.js"),require("../../../componentsV2/DatePicker/Input/Input.js"),require("../../../componentsV2/DatePicker/CalendarGrid/CalendarGrid.scss.js"),require("../../../componentsV2/DatePicker/DatePicker.scss.js"),require("../../../componentsV2/DragHandle/DragHandle.js");var O=require("../../../utils/notificationToasts.js");function E(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var z=E(e),_=E(s),W=E(n);function N(e,s){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);s&&(n=n.filter((function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable}))),o.push.apply(o,n)}return o}function G(e){for(var s=1;s<arguments.length;s++){var o=null!=arguments[s]?arguments[s]:{};s%2?N(Object(o),!0).forEach((function(s){z.default(e,s,o[s])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):N(Object(o)).forEach((function(s){Object.defineProperty(e,s,Object.getOwnPropertyDescriptor(o,s))}))}return e}var U=M.isNativeDetected||M.isMobileDetected,K="DevCenter_AppContainer";module.exports=function(e){var s,n,E,z,N,Q,Z,J,X,Y,$,ee,se,oe,ne,te,re,ie,ce,pe,ae=e.CLIAppComponent,ue=e.CLIAppSettings,le=e.app,de=e.appId,me=e.className,qe=e.coordinates,je=e.currentDashboardAppsLastAnnotations,Ae=e.currentUser,ge=e.devCenterRouter,ve=e.isActionsDisabled,Ce=e.isSettingsDialogHidden,Ve=e.layoutEnvironment,Ie=e.onAppContainerClick,Se=void 0===Ie?t.noop:Ie,he=e.onAppRemove,be=e.onReportBugClick,De=e.onCloneDashboard,xe=e.onHelpCenterClick,Me=e.onIsMaximizedChange,Pe=e.onSettingChange,fe=e.onSettingsChange,ye=e.openIntercom,Le=void 0===ye?t.noop:ye,Te=e.setIsFullscreenModalMode,ke=void 0===Te?t.noop:Te,Be=e.timestamp,Fe=e.updateCurrentDashboardAppLastAnnotation,He=e.dashboardMeta,we=o.useContext(c),Re=r.useTheme(),Oe=o.useState([]),Ee=_.default(Oe,2),ze=Ee[0],_e=Ee[1],We=o.useState([]),Ne=_.default(We,2),Ge=Ne[0],Ue=Ne[1],Ke=null!==(s=null==we?void 0:we[de||le.id])&&void 0!==s?s:{isLoading:!0},Qe=null===(n=le.package)||void 0===n||null===(E=n.manifest)||void 0===E?void 0:E.application,Ze=F.getAppSegment(le),Je=!(null==Qe||null===(z=Qe.ui)||void 0===z||!z.multi_rig),Xe=!(null==Qe||null===(N=Qe.ui)||void 0===N||!N.enable_comments),Ye=F.getAppName(le),$e=m({onIsMaximizedChange:Me,devCenterRouter:ge,appId:de}),es=$e.isMaximized,ss=$e.setIsMaximized,os=Be||F.getTimestampFromQuery(null===(Q=ge.location.query)||void 0===Q?void 0:Q.query),ns=le.id===k.DEV_CENTER_CLI_APP_ID,ts=ns&&U?G(G({},qe),{},{w:12}):qe,rs=I.getAppVersion(le),is=T({CLIAppComponent:ae,CLIAppSettings:ue,app:le,version:rs}),cs=is.isLoading,ps=is.AppSettings,as=is.AppComponent,us=u({setIsFullscreenModalMode:ke}),ls=us.isAppSettingsDialogOpened,ds=us.toggleAppSettingsDialog,ms=l(),qs=ms.isAnnotationsListOpened,js=ms.toggleAnnotationsList,As=cs||!Ae||!Je&&Ke.isLoading,gs=d({app:le,appData:Ke,currentDashboardAppsLastAnnotations:je}),vs=gs.appLastAnnotation,Cs=gs.assetCompanyId,Vs=gs.assetIdForAnnotation,Is=gs.isAppSupportsAnnotations,Ss=t.pickBy(t.pick(Ke,["well","rig","fracFleet","wells","interventionUnit"]),Boolean),hs=o.useMemo((function(){return null==Ge?void 0:Ge.map((function(e){return G(G({},e),{},{onClick:function(){var s;null===(s=e.onClick)||void 0===s||s.call(e),e.to&&ge.push(e.to)}})}))}),[Ge,ge]),bs=!(null==le||null===(Z=le.package)||void 0===Z||null===(J=Z.manifest)||void 0===J||null===(X=J.application)||void 0===X||null===(Y=X.ui)||void 0===Y||!Y.use_app_header_v3),Ds=!(null==(ie=ge)||null===(ce=ie.location)||void 0===ce||null===(pe=ce.pathname)||void 0===pe||!pe.startsWith("/home")),xs=o.useState(!1),Ms=_.default(xs,2),Ps=Ms[0],fs=Ms[1],ys=o.useCallback((function(){fs(!0)}));return a.jsx(h.RollbarWrapper,{companyId:null==le||null===($=le.app)||void 0===$?void 0:$.company_id,appKey:null==Qe?void 0:Qe.key,isCLIApp:ns,rollbarManifestConfig:null==le||null===(ee=le.package)||void 0===ee||null===(se=ee.manifest)||void 0===se||null===(oe=se.settings)||void 0===oe?void 0:oe.rollbar,version:rs,children:a.jsx(p.DevCenterRouterContext.Provider,{value:ge,children:a.jsx(C.DcFullscreenElemsCoordinatorProvider,{setIsFullscreenModalMode:ke,children:a.jsx(B.AppCommonsProvider,G(G({maximized:es,setMaximized:ss,appId:null==le||null===(ne=le.app)||void 0===ne?void 0:ne.id,app:le,appSettings:le.settings,onSettingChange:Pe,onSettingsChange:fe,appHeadersV3Enabled:bs,currentUser:Ae,appData:Ke,layoutEnvironment:Ve,appSettingsComponent:ps,dashboardMeta:He,toggleAnnotationsList:Is?js:void 0,onHelpCenterClick:xe,secondaryMenuItems:hs,onAppRemove:he,isInsideNewMobileApp:M.isInsideNewMobileApp,globalOffsetWells:null==He?void 0:He.globalOffsetWells,globalOffsetWellsVersion:null==He?void 0:He.globalOffsetWellsVersion},Ss),{},{children:a.jsx(b.CommentsSwitchProvider,{children:a.jsxs("div",{className:W.default("dc-app-container",M.isInsideNewMobileApp&&"dc-app-container--inside-new-mobile-app",Ds&&"dc-app-container--inside-home-page",me,es&&"dc-app-container__maximized",Re.isLightTheme&&"dc-app-container__light-theme",x.container),"data-testid":"".concat(K,"_").concat(Ye),onClick:function(){return Se()},children:[a.jsx(L.ToastContainer,{}),a.jsx("div",{className:x.containerContent,children:a.jsx(v.default,{AppComponent:as,app:le,appData:Ss,isAppLoading:cs,availability:I.getAppAvailability(le.availability,Ae.company.with_subscription),isCLIApp:ns,isLoading:As,isMultiRig:Je,layoutEnvironment:Ve,openIntercom:Le,segment:Ze,toggleAppSettingsDialog:ds,onError:ys,appProps:{coordinates:ts,currentUser:Ae,devCenterRouter:ge,onSettingChange:Pe,onSettingsChange:fe,segment:Ze,setIsFullscreenModalMode:ke,setIsMaximized:ss,setMainMenuItems:_e,setSecondaryMenuItems:Ue,toggleAppSettingsDialog:ds,appHeaderProps:G({app:le,appLastAnnotation:vs,appSettings:le.settings,coordinates:ts,currentUser:Ae,isMaximized:es,layoutEnvironment:Ve,onSettingChange:Pe,toggleAnnotationsList:js,updateCurrentDashboardAppLastAnnotation:Fe},Ss),isNative:M.isNativeDetected,layoutEnvironment:Ve,timestamp:os}})}),ls&&a.jsx(j.default,{AppSettingsComponent:ps,app:le,appData:Ke,appName:Ye,currentUser:Ae,isMultiRig:Je,isSettingsDialogHidden:Ce,layoutEnvironment:Ve,onAppRemove:he,onCloneDashboard:De,onSettingChange:Pe,onSettingsChange:fe,openIntercom:Le,rigId:null!==(te=null===(re=Ke.rig)||void 0===re?void 0:re.id)&&void 0!==te?te:null,timestamp:os,toggleAppSettingsDialog:ds}),qs&&a.jsx(y.AnnotationsProvider,{children:a.jsx(f,{appId:le.app.id,appSettings:le.settings,appTitle:Ye,assetCompanyId:Cs,assetId:Vs,currentUser:Ae,onClose:js,showSuccessNotification:O.showSuccessNotification})}),es&&!bs&&a.jsx(V,{setIsMaximized:ss}),!ve&&(!bs||As||Ps)&&a.jsxs(q,{children:[Xe&&a.jsx(D.CommentsSwitchButton,{currentUser:Ae}),Is&&a.jsx(R.Tooltip,{title:"Add Annotation",placement:"top",disabled:!!U,children:a.jsx(w.ButtonIcon,{size:"small",type:"tertiaryBg",onClick:js,testId:"".concat(K,"_addAnnotation"),children:a.jsx(P,{})})}),be&&!ns&&a.jsx(R.Tooltip,{title:"Report A Bug",placement:"top",disabled:!!U,children:a.jsx(w.ButtonIcon,{size:"small",type:"tertiaryBg",onClick:function(){return be()},children:a.jsx(i.BugReport,{})})}),a.jsx(R.Tooltip,{placement:"top",disabled:!!U||ns,title:"Help Center",children:a.jsx(w.ButtonIcon,{testId:"".concat(K,"_helpContent"),onClick:function(){return xe()},disabled:ns,size:"small",type:"tertiaryBg",children:a.jsx(H.HelpCenterIcon,{appId:le.app.id,helpContentUpdatedAt:le.help_content_updated_at})})}),!U||es||M.isInsideNewMobileApp?a.jsxs(a.Fragment,{children:[a.jsx(S,{menuItems:ze,devCenterRouter:ge,isMobileView:U}),a.jsx(A.NonPriorityMenus,{devCenterRouter:ge,isMaximized:es,isMobileView:U,menuItems:Ge,setIsFullscreenModalMode:ke,setIsMaximized:ss,toggleAppSettingsDialog:ds})]}):a.jsx(g,{setIsMaximized:ss})]})]})})}))})})})};
2
2
  //# sourceMappingURL=DevCenterAppContainer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DevCenterAppContainer.js","sources":["../../../../../src/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js"],"sourcesContent":["/* eslint-disable react/prop-types */\nimport { useCallback, useContext, useMemo, useState } from 'react';\nimport classNames from 'classnames';\nimport { noop, pick, pickBy } from 'lodash';\nimport { useTheme } from '@material-ui/core';\nimport { BugReport as BugReportIcon } from '@material-ui/icons';\n\nimport AppContext from '../AppContext';\nimport { DevCenterRouterContext } from '../DevCenterRouterContext';\n\nimport { useAnnotationsData, useAnnotationsList, useAppMaximized, useAppSettings } from './effects';\nimport {\n AppActions,\n AppSettingsDialog,\n DcFullscreenElemsCoordinatorProvider,\n DevCenterAppView,\n FullscreenButton,\n NonPriorityMenus,\n} from './components';\nimport RestoreAppSizeButton from './components/RestoreAppSizeButton';\nimport { getAppAvailability, getAppVersion } from './utils';\nimport PriorityMenus from './components/PriorityMenus';\nimport { RollbarWrapper } from './components/RollbarWrapper/RollbarWrapper';\nimport { CommentsSwitchButton, CommentsSwitchProvider } from './components/CommentsSwitch';\n\nimport styles from './DevCenterAppContainer.css';\n\nimport { isInsideNewMobileApp, isMobileDetected, isNativeDetected } from '~/utils/mobileDetect';\nimport AnnotationIcon from '~components/Icons/AnnotationIcon';\nimport { AnnotationsList, AnnotationsProvider } from '~/components/Annotations';\nimport { ToastContainer } from '~/components/Toaster';\nimport { useDevCenterApp } from '~/effects';\nimport { DEV_CENTER_CLI_APP_ID } from '~/constants';\nimport { getAppName, getAppSegment, getTimestampFromQuery } from '~/utils/devcenter';\nimport { showSuccessNotification } from '~/utils';\nimport { HelpCenterIcon } from '~/components/HelpCenter';\nimport { ButtonIcon, Tooltip } from '~/componentsV2';\nimport { AppCommonsProvider } from '~/componentsV2/AppCommonsProvider';\n\nconst isMobileView = isNativeDetected || isMobileDetected;\nconst PAGE_NAME = 'DevCenter_AppContainer';\n\nconst isHomePage = router => !!router?.location?.pathname?.startsWith('/home');\n\nfunction DevCenterAppContainer({\n CLIAppComponent,\n CLIAppSettings,\n app,\n appId,\n className,\n coordinates,\n currentDashboardAppsLastAnnotations,\n currentUser,\n devCenterRouter,\n isActionsDisabled,\n isSettingsDialogHidden,\n layoutEnvironment,\n onAppContainerClick = noop,\n onAppRemove,\n onReportBugClick,\n onCloneDashboard,\n onHelpCenterClick,\n onIsMaximizedChange,\n onSettingChange,\n onSettingsChange,\n openIntercom = noop,\n setIsFullscreenModalMode = noop,\n timestamp,\n updateCurrentDashboardAppLastAnnotation,\n dashboardMeta,\n}) {\n const appsData = useContext(AppContext);\n const theme = useTheme();\n const [mainMenuItems, setMainMenuItems] = useState([]);\n const [secondaryMenuItems, setSecondaryMenuItems] = useState([]);\n const appData = appsData?.[appId || app.id] ?? {\n isLoading: true,\n };\n const application = app.package?.manifest?.application;\n const segment = getAppSegment(app);\n const isMultiRig = !!application?.ui?.multi_rig;\n const areCommentsEnabled = !!application?.ui?.enable_comments;\n const appName = getAppName(app);\n const { isMaximized, setIsMaximized } = useAppMaximized({\n onIsMaximizedChange,\n devCenterRouter,\n appId,\n });\n\n // Note: we need to pass timestamp directly for apps that are embedded in isolated apps\n const appTimestamp = timestamp || getTimestampFromQuery(devCenterRouter.location.query?.query);\n const isCLIApp = app.id === DEV_CENTER_CLI_APP_ID;\n const updatedCoordinates = isCLIApp && isMobileView ? { ...coordinates, w: 12 } : coordinates;\n const version = getAppVersion(app);\n\n const {\n isLoading: isAppLoading,\n AppSettings,\n AppComponent,\n } = useDevCenterApp({\n CLIAppComponent,\n CLIAppSettings,\n app,\n version,\n });\n\n const { isAppSettingsDialogOpened, toggleAppSettingsDialog } = useAppSettings({\n setIsFullscreenModalMode,\n });\n const { isAnnotationsListOpened, toggleAnnotationsList } = useAnnotationsList();\n\n const isLoading = isAppLoading || !currentUser || (!isMultiRig && appData.isLoading);\n\n const { appLastAnnotation, assetCompanyId, assetIdForAnnotation, isAppSupportsAnnotations } =\n useAnnotationsData({\n app,\n appData,\n currentDashboardAppsLastAnnotations,\n });\n\n const filteredAppData = pickBy(\n pick(appData, ['well', 'rig', 'fracFleet', 'wells', 'interventionUnit']),\n Boolean\n );\n\n const simplifiedSecondaryMenuItems = useMemo(\n () =>\n secondaryMenuItems?.map(item => ({\n ...item,\n onClick: () => {\n item.onClick?.();\n if (item.to) {\n devCenterRouter.push(item.to);\n }\n },\n })),\n [secondaryMenuItems, devCenterRouter]\n );\n\n const appHeadersV3Enabled = !!app?.package?.manifest?.application?.ui?.use_app_header_v3;\n const isInsideHomePage = isHomePage(devCenterRouter);\n\n const [hasAppCrashed, setHasAppCrashed] = useState(false);\n const onError = useCallback(() => {\n setHasAppCrashed(true);\n });\n\n // ⚠️⚠️⚠️ When adding/changing providers, also add them to/change /src/testing/AppTestWrapper\n return (\n <RollbarWrapper\n companyId={app?.app?.company_id}\n appKey={application?.key}\n isCLIApp={isCLIApp}\n rollbarManifestConfig={app?.package?.manifest?.settings?.rollbar}\n version={version}\n >\n <DevCenterRouterContext.Provider value={devCenterRouter}>\n <DcFullscreenElemsCoordinatorProvider setIsFullscreenModalMode={setIsFullscreenModalMode}>\n <AppCommonsProvider\n maximized={isMaximized}\n setMaximized={setIsMaximized}\n appId={app?.app?.id}\n app={app}\n appSettings={app.settings}\n onSettingChange={onSettingChange}\n onSettingsChange={onSettingsChange}\n appHeadersV3Enabled={appHeadersV3Enabled}\n currentUser={currentUser}\n appData={appData}\n layoutEnvironment={layoutEnvironment}\n appSettingsComponent={AppSettings}\n dashboardMeta={dashboardMeta}\n toggleAnnotationsList={isAppSupportsAnnotations ? toggleAnnotationsList : undefined}\n onHelpCenterClick={onHelpCenterClick}\n secondaryMenuItems={simplifiedSecondaryMenuItems}\n onAppRemove={onAppRemove}\n isInsideNewMobileApp={isInsideNewMobileApp}\n globalOffsetWells={dashboardMeta?.globalOffsetWells}\n {...filteredAppData}\n >\n <CommentsSwitchProvider>\n <div\n className={classNames(\n 'dc-app-container',\n isInsideNewMobileApp && 'dc-app-container--inside-new-mobile-app',\n isInsideHomePage && 'dc-app-container--inside-home-page',\n className,\n // This class is applied so that DC apps developers can style their content\n // when an app is in fullscreen\n isMaximized && 'dc-app-container__maximized',\n theme.isLightTheme && 'dc-app-container__light-theme',\n styles.container\n )}\n data-testid={`${PAGE_NAME}_${appName}`}\n // It's important to call it without native event because it's passed through iframe\n onClick={() => onAppContainerClick()}\n >\n <ToastContainer />\n <div className={styles.containerContent}>\n <DevCenterAppView\n AppComponent={AppComponent}\n app={app}\n appData={filteredAppData}\n isAppLoading={isAppLoading}\n availability={getAppAvailability(\n app.availability,\n currentUser.company.with_subscription\n )}\n isCLIApp={isCLIApp}\n isLoading={isLoading}\n isMultiRig={isMultiRig}\n layoutEnvironment={layoutEnvironment}\n openIntercom={openIntercom}\n segment={segment}\n toggleAppSettingsDialog={toggleAppSettingsDialog}\n onError={onError}\n appProps={{\n coordinates: updatedCoordinates,\n currentUser,\n devCenterRouter,\n onSettingChange,\n onSettingsChange,\n segment,\n setIsFullscreenModalMode,\n setIsMaximized,\n setMainMenuItems,\n setSecondaryMenuItems,\n toggleAppSettingsDialog,\n // TODO remove when componentsV2 AppHeader is used everywhere\n appHeaderProps: {\n app,\n appLastAnnotation,\n appSettings: app.settings,\n coordinates: updatedCoordinates,\n currentUser,\n isMaximized,\n layoutEnvironment,\n onSettingChange,\n toggleAnnotationsList,\n updateCurrentDashboardAppLastAnnotation,\n ...filteredAppData,\n },\n isNative: isNativeDetected,\n layoutEnvironment,\n timestamp: appTimestamp,\n }}\n />\n </div>\n {isAppSettingsDialogOpened && (\n <AppSettingsDialog\n AppSettingsComponent={AppSettings}\n app={app}\n appData={appData}\n appName={appName}\n currentUser={currentUser}\n isMultiRig={isMultiRig}\n isSettingsDialogHidden={isSettingsDialogHidden}\n layoutEnvironment={layoutEnvironment}\n onAppRemove={onAppRemove}\n onCloneDashboard={onCloneDashboard}\n onSettingChange={onSettingChange}\n onSettingsChange={onSettingsChange}\n openIntercom={openIntercom}\n rigId={appData.rig?.id ?? null}\n timestamp={appTimestamp}\n toggleAppSettingsDialog={toggleAppSettingsDialog}\n />\n )}\n {isAnnotationsListOpened && (\n <AnnotationsProvider>\n <AnnotationsList\n appId={app.app.id}\n appSettings={app.settings}\n appTitle={appName}\n assetCompanyId={assetCompanyId}\n assetId={assetIdForAnnotation}\n currentUser={currentUser}\n onClose={toggleAnnotationsList}\n showSuccessNotification={showSuccessNotification}\n />\n </AnnotationsProvider>\n )}\n {isMaximized && !appHeadersV3Enabled && (\n <RestoreAppSizeButton setIsMaximized={setIsMaximized} />\n )}\n\n {!isActionsDisabled && (!appHeadersV3Enabled || isLoading || hasAppCrashed) && (\n <AppActions>\n {areCommentsEnabled && <CommentsSwitchButton currentUser={currentUser} />}\n\n {isAppSupportsAnnotations && (\n <Tooltip title=\"Add Annotation\" placement=\"top\" disabled={!!isMobileView}>\n <ButtonIcon\n size=\"small\"\n type=\"tertiaryBg\"\n onClick={toggleAnnotationsList}\n testId={`${PAGE_NAME}_addAnnotation`}\n >\n <AnnotationIcon />\n </ButtonIcon>\n </Tooltip>\n )}\n\n {onReportBugClick && !isCLIApp && (\n <Tooltip title=\"Report A Bug\" placement=\"top\" disabled={!!isMobileView}>\n <ButtonIcon\n size=\"small\"\n type=\"tertiaryBg\"\n onClick={() => onReportBugClick()}\n >\n <BugReportIcon />\n </ButtonIcon>\n </Tooltip>\n )}\n\n <Tooltip\n placement=\"top\"\n disabled={!!isMobileView || isCLIApp}\n title=\"Help Center\"\n >\n <ButtonIcon\n testId={`${PAGE_NAME}_helpContent`}\n onClick={() => onHelpCenterClick()}\n disabled={isCLIApp}\n size=\"small\"\n type=\"tertiaryBg\"\n >\n <HelpCenterIcon\n appId={app.app.id}\n helpContentUpdatedAt={app.help_content_updated_at}\n />\n </ButtonIcon>\n </Tooltip>\n\n {isMobileView && !isMaximized && !isInsideNewMobileApp ? (\n <FullscreenButton setIsMaximized={setIsMaximized} />\n ) : (\n <>\n <PriorityMenus\n menuItems={mainMenuItems}\n devCenterRouter={devCenterRouter}\n isMobileView={isMobileView}\n />\n <NonPriorityMenus\n devCenterRouter={devCenterRouter}\n isMaximized={isMaximized}\n isMobileView={isMobileView}\n menuItems={secondaryMenuItems}\n setIsFullscreenModalMode={setIsFullscreenModalMode}\n setIsMaximized={setIsMaximized}\n toggleAppSettingsDialog={toggleAppSettingsDialog}\n />\n </>\n )}\n </AppActions>\n )}\n </div>\n </CommentsSwitchProvider>\n </AppCommonsProvider>\n </DcFullscreenElemsCoordinatorProvider>\n </DevCenterRouterContext.Provider>\n </RollbarWrapper>\n );\n}\n\nexport default DevCenterAppContainer;\n"],"names":["isMobileView","isNativeDetected","isMobileDetected","PAGE_NAME","_ref","_appsData","_app$package","_app$package$manifest","_application$ui","_application$ui2","_devCenterRouter$loca","_app$package2","_app$package2$manifes","_app$package2$manifes2","_app$package2$manifes3","_app$app","_app$package3","_app$package3$manifes","_app$package3$manifes2","_app$app2","_appData$rig$id","_appData$rig","router","_router$location","_router$location$path","CLIAppComponent","CLIAppSettings","app","appId","className","coordinates","currentDashboardAppsLastAnnotations","currentUser","devCenterRouter","isActionsDisabled","isSettingsDialogHidden","layoutEnvironment","_ref$onAppContainerCl","onAppContainerClick","noop","onAppRemove","onReportBugClick","onCloneDashboard","onHelpCenterClick","onIsMaximizedChange","onSettingChange","onSettingsChange","_ref$openIntercom","openIntercom","_ref$setIsFullscreenM","setIsFullscreenModalMode","timestamp","updateCurrentDashboardAppLastAnnotation","dashboardMeta","appsData","useContext","AppContext","theme","useTheme","useState","_useState2","_slicedToArray","_useState","mainMenuItems","setMainMenuItems","_useState4","_useState3","secondaryMenuItems","setSecondaryMenuItems","appData","id","isLoading","application","package","manifest","segment","getAppSegment","isMultiRig","ui","multi_rig","areCommentsEnabled","enable_comments","appName","getAppName","_useAppMaximized","useAppMaximized","isMaximized","setIsMaximized","appTimestamp","getTimestampFromQuery","location","query","isCLIApp","DEV_CENTER_CLI_APP_ID","updatedCoordinates","w","version","getAppVersion","_useDevCenterApp","useDevCenterApp","isAppLoading","AppSettings","AppComponent","_useAppSettings","useAppSettings","isAppSettingsDialogOpened","toggleAppSettingsDialog","_useAnnotationsList","useAnnotationsList","isAnnotationsListOpened","toggleAnnotationsList","_useAnnotationsData","useAnnotationsData","appLastAnnotation","assetCompanyId","assetIdForAnnotation","isAppSupportsAnnotations","filteredAppData","pickBy","pick","Boolean","simplifiedSecondaryMenuItems","useMemo","map","item","_objectSpread","onClick","_item$onClick","call","to","push","appHeadersV3Enabled","use_app_header_v3","isInsideHomePage","pathname","startsWith","_useState6","_useState5","hasAppCrashed","setHasAppCrashed","onError","useCallback","_jsx","RollbarWrapper","companyId","company_id","appKey","key","rollbarManifestConfig","settings","rollbar","children","DevCenterRouterContext","Provider","value","DcFullscreenElemsCoordinatorProvider","AppCommonsProvider","maximized","setMaximized","appSettings","appSettingsComponent","undefined","isInsideNewMobileApp","globalOffsetWells","CommentsSwitchProvider","_jsxs","jsxs","classNames","isLightTheme","styles","container","ToastContainer","jsx","containerContent","DevCenterAppView","availability","getAppAvailability","company","with_subscription","appProps","appHeaderProps","isNative","AppSettingsDialog","AppSettingsComponent","rigId","rig","AnnotationsProvider","AnnotationsList","appTitle","assetId","onClose","showSuccessNotification","RestoreAppSizeButton","AppActions","CommentsSwitchButton","Tooltip","title","placement","disabled","ButtonIcon","size","type","testId","concat","AnnotationIcon","BugReportIcon","BugReport","HelpCenterIcon","helpContentUpdatedAt","help_content_updated_at","_Fragment","PriorityMenus","menuItems","NonPriorityMenus","FullscreenButton"],"mappings":"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"}
1
+ {"version":3,"file":"DevCenterAppContainer.js","sources":["../../../../../src/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js"],"sourcesContent":["/* eslint-disable react/prop-types */\nimport { useCallback, useContext, useMemo, useState } from 'react';\nimport classNames from 'classnames';\nimport { noop, pick, pickBy } from 'lodash';\nimport { useTheme } from '@material-ui/core';\nimport { BugReport as BugReportIcon } from '@material-ui/icons';\n\nimport AppContext from '../AppContext';\nimport { DevCenterRouterContext } from '../DevCenterRouterContext';\n\nimport { useAnnotationsData, useAnnotationsList, useAppMaximized, useAppSettings } from './effects';\nimport {\n AppActions,\n AppSettingsDialog,\n DcFullscreenElemsCoordinatorProvider,\n DevCenterAppView,\n FullscreenButton,\n NonPriorityMenus,\n} from './components';\nimport RestoreAppSizeButton from './components/RestoreAppSizeButton';\nimport { getAppAvailability, getAppVersion } from './utils';\nimport PriorityMenus from './components/PriorityMenus';\nimport { RollbarWrapper } from './components/RollbarWrapper/RollbarWrapper';\nimport { CommentsSwitchButton, CommentsSwitchProvider } from './components/CommentsSwitch';\n\nimport styles from './DevCenterAppContainer.css';\n\nimport { isInsideNewMobileApp, isMobileDetected, isNativeDetected } from '~/utils/mobileDetect';\nimport AnnotationIcon from '~components/Icons/AnnotationIcon';\nimport { AnnotationsList, AnnotationsProvider } from '~/components/Annotations';\nimport { ToastContainer } from '~/components/Toaster';\nimport { useDevCenterApp } from '~/effects';\nimport { DEV_CENTER_CLI_APP_ID } from '~/constants';\nimport { getAppName, getAppSegment, getTimestampFromQuery } from '~/utils/devcenter';\nimport { showSuccessNotification } from '~/utils';\nimport { HelpCenterIcon } from '~/components/HelpCenter';\nimport { ButtonIcon, Tooltip } from '~/componentsV2';\nimport { AppCommonsProvider } from '~/componentsV2/AppCommonsProvider';\n\nconst isMobileView = isNativeDetected || isMobileDetected;\nconst PAGE_NAME = 'DevCenter_AppContainer';\n\nconst isHomePage = router => !!router?.location?.pathname?.startsWith('/home');\n\nfunction DevCenterAppContainer({\n CLIAppComponent,\n CLIAppSettings,\n app,\n appId,\n className,\n coordinates,\n currentDashboardAppsLastAnnotations,\n currentUser,\n devCenterRouter,\n isActionsDisabled,\n isSettingsDialogHidden,\n layoutEnvironment,\n onAppContainerClick = noop,\n onAppRemove,\n onReportBugClick,\n onCloneDashboard,\n onHelpCenterClick,\n onIsMaximizedChange,\n onSettingChange,\n onSettingsChange,\n openIntercom = noop,\n setIsFullscreenModalMode = noop,\n timestamp,\n updateCurrentDashboardAppLastAnnotation,\n dashboardMeta,\n}) {\n const appsData = useContext(AppContext);\n const theme = useTheme();\n const [mainMenuItems, setMainMenuItems] = useState([]);\n const [secondaryMenuItems, setSecondaryMenuItems] = useState([]);\n const appData = appsData?.[appId || app.id] ?? {\n isLoading: true,\n };\n const application = app.package?.manifest?.application;\n const segment = getAppSegment(app);\n const isMultiRig = !!application?.ui?.multi_rig;\n const areCommentsEnabled = !!application?.ui?.enable_comments;\n const appName = getAppName(app);\n const { isMaximized, setIsMaximized } = useAppMaximized({\n onIsMaximizedChange,\n devCenterRouter,\n appId,\n });\n\n // Note: we need to pass timestamp directly for apps that are embedded in isolated apps\n const appTimestamp = timestamp || getTimestampFromQuery(devCenterRouter.location.query?.query);\n const isCLIApp = app.id === DEV_CENTER_CLI_APP_ID;\n const updatedCoordinates = isCLIApp && isMobileView ? { ...coordinates, w: 12 } : coordinates;\n const version = getAppVersion(app);\n\n const {\n isLoading: isAppLoading,\n AppSettings,\n AppComponent,\n } = useDevCenterApp({\n CLIAppComponent,\n CLIAppSettings,\n app,\n version,\n });\n\n const { isAppSettingsDialogOpened, toggleAppSettingsDialog } = useAppSettings({\n setIsFullscreenModalMode,\n });\n const { isAnnotationsListOpened, toggleAnnotationsList } = useAnnotationsList();\n\n const isLoading = isAppLoading || !currentUser || (!isMultiRig && appData.isLoading);\n\n const { appLastAnnotation, assetCompanyId, assetIdForAnnotation, isAppSupportsAnnotations } =\n useAnnotationsData({\n app,\n appData,\n currentDashboardAppsLastAnnotations,\n });\n\n const filteredAppData = pickBy(\n pick(appData, ['well', 'rig', 'fracFleet', 'wells', 'interventionUnit']),\n Boolean\n );\n\n const simplifiedSecondaryMenuItems = useMemo(\n () =>\n secondaryMenuItems?.map(item => ({\n ...item,\n onClick: () => {\n item.onClick?.();\n if (item.to) {\n devCenterRouter.push(item.to);\n }\n },\n })),\n [secondaryMenuItems, devCenterRouter]\n );\n\n const appHeadersV3Enabled = !!app?.package?.manifest?.application?.ui?.use_app_header_v3;\n const isInsideHomePage = isHomePage(devCenterRouter);\n\n const [hasAppCrashed, setHasAppCrashed] = useState(false);\n const onError = useCallback(() => {\n setHasAppCrashed(true);\n });\n\n // ⚠️⚠️⚠️ When adding/changing providers, also add them to/change /src/testing/AppTestWrapper\n return (\n <RollbarWrapper\n companyId={app?.app?.company_id}\n appKey={application?.key}\n isCLIApp={isCLIApp}\n rollbarManifestConfig={app?.package?.manifest?.settings?.rollbar}\n version={version}\n >\n <DevCenterRouterContext.Provider value={devCenterRouter}>\n <DcFullscreenElemsCoordinatorProvider setIsFullscreenModalMode={setIsFullscreenModalMode}>\n <AppCommonsProvider\n maximized={isMaximized}\n setMaximized={setIsMaximized}\n appId={app?.app?.id}\n app={app}\n appSettings={app.settings}\n onSettingChange={onSettingChange}\n onSettingsChange={onSettingsChange}\n appHeadersV3Enabled={appHeadersV3Enabled}\n currentUser={currentUser}\n appData={appData}\n layoutEnvironment={layoutEnvironment}\n appSettingsComponent={AppSettings}\n dashboardMeta={dashboardMeta}\n toggleAnnotationsList={isAppSupportsAnnotations ? toggleAnnotationsList : undefined}\n onHelpCenterClick={onHelpCenterClick}\n secondaryMenuItems={simplifiedSecondaryMenuItems}\n onAppRemove={onAppRemove}\n isInsideNewMobileApp={isInsideNewMobileApp}\n globalOffsetWells={dashboardMeta?.globalOffsetWells}\n globalOffsetWellsVersion={dashboardMeta?.globalOffsetWellsVersion}\n {...filteredAppData}\n >\n <CommentsSwitchProvider>\n <div\n className={classNames(\n 'dc-app-container',\n isInsideNewMobileApp && 'dc-app-container--inside-new-mobile-app',\n isInsideHomePage && 'dc-app-container--inside-home-page',\n className,\n // This class is applied so that DC apps developers can style their content\n // when an app is in fullscreen\n isMaximized && 'dc-app-container__maximized',\n theme.isLightTheme && 'dc-app-container__light-theme',\n styles.container\n )}\n data-testid={`${PAGE_NAME}_${appName}`}\n // It's important to call it without native event because it's passed through iframe\n onClick={() => onAppContainerClick()}\n >\n <ToastContainer />\n <div className={styles.containerContent}>\n <DevCenterAppView\n AppComponent={AppComponent}\n app={app}\n appData={filteredAppData}\n isAppLoading={isAppLoading}\n availability={getAppAvailability(\n app.availability,\n currentUser.company.with_subscription\n )}\n isCLIApp={isCLIApp}\n isLoading={isLoading}\n isMultiRig={isMultiRig}\n layoutEnvironment={layoutEnvironment}\n openIntercom={openIntercom}\n segment={segment}\n toggleAppSettingsDialog={toggleAppSettingsDialog}\n onError={onError}\n appProps={{\n coordinates: updatedCoordinates,\n currentUser,\n devCenterRouter,\n onSettingChange,\n onSettingsChange,\n segment,\n setIsFullscreenModalMode,\n setIsMaximized,\n setMainMenuItems,\n setSecondaryMenuItems,\n toggleAppSettingsDialog,\n // TODO remove when componentsV2 AppHeader is used everywhere\n appHeaderProps: {\n app,\n appLastAnnotation,\n appSettings: app.settings,\n coordinates: updatedCoordinates,\n currentUser,\n isMaximized,\n layoutEnvironment,\n onSettingChange,\n toggleAnnotationsList,\n updateCurrentDashboardAppLastAnnotation,\n ...filteredAppData,\n },\n isNative: isNativeDetected,\n layoutEnvironment,\n timestamp: appTimestamp,\n }}\n />\n </div>\n {isAppSettingsDialogOpened && (\n <AppSettingsDialog\n AppSettingsComponent={AppSettings}\n app={app}\n appData={appData}\n appName={appName}\n currentUser={currentUser}\n isMultiRig={isMultiRig}\n isSettingsDialogHidden={isSettingsDialogHidden}\n layoutEnvironment={layoutEnvironment}\n onAppRemove={onAppRemove}\n onCloneDashboard={onCloneDashboard}\n onSettingChange={onSettingChange}\n onSettingsChange={onSettingsChange}\n openIntercom={openIntercom}\n rigId={appData.rig?.id ?? null}\n timestamp={appTimestamp}\n toggleAppSettingsDialog={toggleAppSettingsDialog}\n />\n )}\n {isAnnotationsListOpened && (\n <AnnotationsProvider>\n <AnnotationsList\n appId={app.app.id}\n appSettings={app.settings}\n appTitle={appName}\n assetCompanyId={assetCompanyId}\n assetId={assetIdForAnnotation}\n currentUser={currentUser}\n onClose={toggleAnnotationsList}\n showSuccessNotification={showSuccessNotification}\n />\n </AnnotationsProvider>\n )}\n {isMaximized && !appHeadersV3Enabled && (\n <RestoreAppSizeButton setIsMaximized={setIsMaximized} />\n )}\n\n {!isActionsDisabled && (!appHeadersV3Enabled || isLoading || hasAppCrashed) && (\n <AppActions>\n {areCommentsEnabled && <CommentsSwitchButton currentUser={currentUser} />}\n\n {isAppSupportsAnnotations && (\n <Tooltip title=\"Add Annotation\" placement=\"top\" disabled={!!isMobileView}>\n <ButtonIcon\n size=\"small\"\n type=\"tertiaryBg\"\n onClick={toggleAnnotationsList}\n testId={`${PAGE_NAME}_addAnnotation`}\n >\n <AnnotationIcon />\n </ButtonIcon>\n </Tooltip>\n )}\n\n {onReportBugClick && !isCLIApp && (\n <Tooltip title=\"Report A Bug\" placement=\"top\" disabled={!!isMobileView}>\n <ButtonIcon\n size=\"small\"\n type=\"tertiaryBg\"\n onClick={() => onReportBugClick()}\n >\n <BugReportIcon />\n </ButtonIcon>\n </Tooltip>\n )}\n\n <Tooltip\n placement=\"top\"\n disabled={!!isMobileView || isCLIApp}\n title=\"Help Center\"\n >\n <ButtonIcon\n testId={`${PAGE_NAME}_helpContent`}\n onClick={() => onHelpCenterClick()}\n disabled={isCLIApp}\n size=\"small\"\n type=\"tertiaryBg\"\n >\n <HelpCenterIcon\n appId={app.app.id}\n helpContentUpdatedAt={app.help_content_updated_at}\n />\n </ButtonIcon>\n </Tooltip>\n\n {isMobileView && !isMaximized && !isInsideNewMobileApp ? (\n <FullscreenButton setIsMaximized={setIsMaximized} />\n ) : (\n <>\n <PriorityMenus\n menuItems={mainMenuItems}\n devCenterRouter={devCenterRouter}\n isMobileView={isMobileView}\n />\n <NonPriorityMenus\n devCenterRouter={devCenterRouter}\n isMaximized={isMaximized}\n isMobileView={isMobileView}\n menuItems={secondaryMenuItems}\n setIsFullscreenModalMode={setIsFullscreenModalMode}\n setIsMaximized={setIsMaximized}\n toggleAppSettingsDialog={toggleAppSettingsDialog}\n />\n </>\n )}\n </AppActions>\n )}\n </div>\n </CommentsSwitchProvider>\n </AppCommonsProvider>\n </DcFullscreenElemsCoordinatorProvider>\n </DevCenterRouterContext.Provider>\n </RollbarWrapper>\n );\n}\n\nexport default DevCenterAppContainer;\n"],"names":["isMobileView","isNativeDetected","isMobileDetected","PAGE_NAME","_ref","_appsData","_app$package","_app$package$manifest","_application$ui","_application$ui2","_devCenterRouter$loca","_app$package2","_app$package2$manifes","_app$package2$manifes2","_app$package2$manifes3","_app$app","_app$package3","_app$package3$manifes","_app$package3$manifes2","_app$app2","_appData$rig$id","_appData$rig","router","_router$location","_router$location$path","CLIAppComponent","CLIAppSettings","app","appId","className","coordinates","currentDashboardAppsLastAnnotations","currentUser","devCenterRouter","isActionsDisabled","isSettingsDialogHidden","layoutEnvironment","_ref$onAppContainerCl","onAppContainerClick","noop","onAppRemove","onReportBugClick","onCloneDashboard","onHelpCenterClick","onIsMaximizedChange","onSettingChange","onSettingsChange","_ref$openIntercom","openIntercom","_ref$setIsFullscreenM","setIsFullscreenModalMode","timestamp","updateCurrentDashboardAppLastAnnotation","dashboardMeta","appsData","useContext","AppContext","theme","useTheme","useState","_useState2","_slicedToArray","_useState","mainMenuItems","setMainMenuItems","_useState4","_useState3","secondaryMenuItems","setSecondaryMenuItems","appData","id","isLoading","application","package","manifest","segment","getAppSegment","isMultiRig","ui","multi_rig","areCommentsEnabled","enable_comments","appName","getAppName","_useAppMaximized","useAppMaximized","isMaximized","setIsMaximized","appTimestamp","getTimestampFromQuery","location","query","isCLIApp","DEV_CENTER_CLI_APP_ID","updatedCoordinates","w","version","getAppVersion","_useDevCenterApp","useDevCenterApp","isAppLoading","AppSettings","AppComponent","_useAppSettings","useAppSettings","isAppSettingsDialogOpened","toggleAppSettingsDialog","_useAnnotationsList","useAnnotationsList","isAnnotationsListOpened","toggleAnnotationsList","_useAnnotationsData","useAnnotationsData","appLastAnnotation","assetCompanyId","assetIdForAnnotation","isAppSupportsAnnotations","filteredAppData","pickBy","pick","Boolean","simplifiedSecondaryMenuItems","useMemo","map","item","_objectSpread","onClick","_item$onClick","call","to","push","appHeadersV3Enabled","use_app_header_v3","isInsideHomePage","pathname","startsWith","_useState6","_useState5","hasAppCrashed","setHasAppCrashed","onError","useCallback","_jsx","RollbarWrapper","companyId","company_id","appKey","key","rollbarManifestConfig","settings","rollbar","children","DevCenterRouterContext","Provider","value","DcFullscreenElemsCoordinatorProvider","AppCommonsProvider","maximized","setMaximized","appSettings","appSettingsComponent","undefined","isInsideNewMobileApp","globalOffsetWells","globalOffsetWellsVersion","CommentsSwitchProvider","_jsxs","jsxs","classNames","isLightTheme","styles","container","ToastContainer","jsx","containerContent","DevCenterAppView","availability","getAppAvailability","company","with_subscription","appProps","appHeaderProps","isNative","AppSettingsDialog","AppSettingsComponent","rigId","rig","AnnotationsProvider","AnnotationsList","appTitle","assetId","onClose","showSuccessNotification","RestoreAppSizeButton","AppActions","CommentsSwitchButton","Tooltip","title","placement","disabled","ButtonIcon","size","type","testId","concat","AnnotationIcon","BugReportIcon","BugReport","HelpCenterIcon","helpContentUpdatedAt","help_content_updated_at","_Fragment","PriorityMenus","menuItems","NonPriorityMenus","FullscreenButton"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/slicedToArray"),n=require("react"),l=require("prop-types"),s=require("lodash"),i=require("@material-ui/core"),r=require("@material-ui/icons/Close"),a=require("@material-ui/core/styles"),o=require("@material-ui/core/useMediaQuery"),c=require("classnames"),u=require("./components/Filter/index.js"),d=require("./components/Map/index.js"),f=require("./components/Table/index.js"),p=require("./effects/index.js"),m=require("./utils/index.js"),b=require("./constants.js"),g=require("../LoadingIndicator/LoadingIndicator.js"),y=require("../../permissions/usePermissions.js"),j=require("../../permissions/constants/index.js");require("../../permissions/withPermissionsHOC.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../clients/jsonApi/index.js"),require("../../permissions/ProvidePermissions.js"),require("../../permissions/PermissionsContext.js");var h=require("react/jsx-runtime"),S=require("./effects/biDirectionalFiltering.js");function x(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var C=x(e),W=x(t),T=x(l),I=x(r),k=x(o),v=x(c);function q(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function N(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?q(Object(n),!0).forEach((function(t){C.default(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):q(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var O=i.makeStyles((function(e){return{dialogTitles:{display:"flex",justifyContent:"space-between",alignItems:"center"},title:{fontSize:20},subTitle:{fontSize:14,color:"#03BCD4","&:hover":{cursor:"pointer",textDecoration:"underline"}},subTitleSpace:{fontSize:14,color:"#03BCD4"},titleArea:{display:"flex",alignItems:"center"},closeIconButton:{fontSize:20,padding:4,"&:hover $closeIcon":{color:"#fff"}},closeIcon:{color:"#BDBDBD"},dialogActions:{justifyContent:"space-between",paddingTop:8,paddingBottom:8},bottomShadow:{width:"100%",height:"16px",backgroundImage:"linear-gradient(180deg, rgba(65, 65, 65, 0) 0%, ".concat(e.palette.background.b9,")"),position:"absolute",bottom:"52px",zIndex:2},dialogActionsSmallScreen:{paddingRight:"100px"},dialogContent:{display:"flex",flexDirection:"column"},tabs:{background:"#414141"},selectedWells:{display:"flex",alignItems:"center"},selected:{fontSize:16},selectedLabel:{fontSize:12,marginLeft:14,color:"rgba(255, 255, 255, 0.54)"},selectedNumber:{fontSize:12,margin:4,color:"rgba(255, 255, 255, 0.8)"}}})),A=function(e){var t=e.isOpen,l=e.defaultSubjectWellId,r=e.companyId,o=e.offsetSetting,c=e.currentUser,x=e.addWellsUsabilityInfo,T=e.unusableWellAlarm,q=e.isAdvancedSearch,A=e.bestCount,D=e.onClose,E=e.onSave,w=O(),P=a.useTheme(),B=k.default(P.breakpoints.down("sm")),M=y([j.PERMISSIONS.companySelectorView]),F=W.default(M,1)[0].active,L=n.useState(r||s.get(o,"companyId")||+s.get(c,"company_id")),R=W.default(L,2),U=R[0],_=R[1],z=n.useState(s.get(o,"subjectWellId")||l),G=W.default(z,2),K=G[0],H=G[1],V=n.useState(s.get(o,"filters")||b.DEFAULT_SETTINGS.filters),Q=W.default(V,2),$=Q[0],J=Q[1],X=n.useState(s.get(o,"radius")||b.DEFAULT_SETTINGS.radius),Y=W.default(X,2),Z=Y[0],ee=Y[1],te=n.useState(s.get(o,"excludeSideTrack")||!1),ne=W.default(te,2),le=ne[0],se=ne[1],ie=n.useState(s.get(o,"includeNonEngineeredWells")||!1),re=W.default(ie,2),ae=re[0],oe=re[1],ce=n.useState([]),ue=W.default(ce,2),de=ue[0],fe=ue[1],pe=n.useState(b.DEFAULT_SETTINGS.sortInfo),me=W.default(pe,2),be=me[0],ge=me[1],ye=n.useState(!1),je=W.default(ye,2),he=je[0],Se=je[1],xe=n.useState([]),Ce=W.default(xe,2),We=Ce[0],Te=Ce[1];n.useEffect((function(){t&&(Te(s.get(o,"selectedWellIds")||[]),_(r||s.get(o,"companyId")||+s.get(c,"company_id")),H(s.get(o,"subjectWellId")||l))}),[t,o]);var Ie=n.useMemo((function(){return!!K}),[K]),ke=p.useCompanies(F,q&&l,U),ve=p.useWells(U,x),qe=p.useCompanyMetricKey(U);n.useEffect((function(){fe((function(e){return qe?[qe]:e}))}),[qe]);var Ne=S($,ve),Oe=n.useMemo((function(){return m.getFilteredWells($,le,ve)}),[$,le,ve]),Ae=n.useMemo((function(){return m.getFilteredWellsByNonEngineered(Oe,ae)}),[Oe,ae]),De=n.useMemo((function(){return Ae&&K?Ae.find((function(e){return e.id===K})):null}),[Ae,K]),Ee=p.useWellsWithCoords(Oe,De),we=n.useMemo((function(){return m.getFilteredWellsByNonEngineered(Ee,!1)}),[Ee]),Pe=ae?Ee:we,Be=Ee&&Ee.length!==we.length;p.useRadiusWells(Z,Ee,Te);var Me=p.useOffsetWells(Z,ve,We),Fe=p.useMetricsData(U,Pe),Le=W.default(Fe,2),Re=Le[0],Ue=Le[1],_e=n.useMemo((function(){return Ue?s.orderBy(Ue,be.key,1===be.direction?"asc":"desc"):Ue}),[be,Ue]),ze=n.useCallback((function(e){_(e),H(null),Te([]),J(b.DEFAULT_SETTINGS.filters)}),[]),Ge=n.useCallback((function(e){var t=Ae.find((function(t){return t.id===e}));t&&t.is_usable&&Te(s.uniq(We.concat(e)))}),[We,Ae]),Ke=n.useCallback((function(e){Te(s.uniq(We.filter((function(t){return t!==e}))))}),[We]),He=n.useCallback((function(){Te(Ae.filter((function(e){return e.is_usable})).map((function(e){return e.id})))}),[Ae]),Ve=n.useCallback((function(){Te([])}),[]),Qe=n.useCallback((function(e){Te([]),H(e)}),[ve]),$e=n.useCallback((function(){Te([]),H(null)}),[]),Je=n.useCallback((function(e){ee(e)}),[]),Xe=n.useCallback((function(e){se(e)}),[]),Ye=n.useCallback((function(e){e||Te((function(e){return e.filter((function(e){return we.map((function(e){return e.id})).includes(e)}))})),oe(e)}),[we]),Ze=n.useCallback((function(e,t){J((function(n){return N(N({},n),{},C.default({},e,t))})),Te([])}),[]),et=n.useCallback((function(){J(N({},b.DEFAULT_SETTINGS.filters)),Te([])}),[]),tt=n.useCallback((function(){Se((function(e){return!e}))}),[]),nt=n.useCallback((function(e){fe(e)}),[]),lt=n.useCallback((function(e){ge((function(t){return t.key===e?N(N({},t),{},{direction:-1*t.direction}):{key:e,direction:1}}))}),[]),st=function(){D()},it=!(ve&&Ae&&Pe&&Ue&&Me&&_e);return h.jsxs(i.Dialog,{onBackdropClick:D,onEscapeKeyDown:D,maxWidth:"lg",fullWidth:!0,fullScreen:B,open:t,children:[h.jsx(i.DialogTitle,{children:h.jsxs("div",{className:w.dialogTitles,children:[q?h.jsxs("div",{className:w.titleArea,children:[h.jsx(i.Typography,{className:w.subTitle,onClick:st,children:"Select Offset Wells"}),h.jsx(i.Typography,{className:w.subTitleSpace,children:" / "}),h.jsx(i.Typography,{className:w.title,children:"Advanced Search"})]}):h.jsx(i.Typography,{className:w.title,children:"Select Offset Wells"}),h.jsx(i.Tooltip,{title:"Close",children:h.jsx(i.IconButton,{"data-not-migrated-muiiconbutton":!0,"aria-label":"close",className:w.closeIconButton,onClick:D,children:h.jsx(I.default,{className:w.closeIcon})})})]})}),h.jsx(i.DialogContent,{className:w.dialogContent,children:it?h.jsx(g,{fullscreen:!1}):h.jsxs(h.Fragment,{children:[h.jsx(u,{companyId:U,companies:ke,canViewCompanies:F,radius:Z,excludeSideTrack:le,includeNonEngineeredWells:ae,wells:Ae,subjectWell:De,filters:$,filtersOptions:Ne,mapHidden:he,isRadiusEditable:Ie,isExistNonEngineeredWells:Be,onChangeCompany:ze,onSetSubjectWell:Qe,onChangeRadius:Je,onChangeSidetrack:Xe,onChangeNonEngineeredWells:Ye,onChangeFilters:Ze,onClearFilters:et,onToggleMap:tt}),h.jsx(d,{subjectWell:De,wells:Ae,offsetWells:Me,radius:Z,mapHidden:he,onSetSubjectWell:Qe,onRemoveSubjectWell:$e,onAddOffsetWell:Ge,onDeleteOffsetWell:Ke}),h.jsx(f.default,{subjectWell:De,wells:_e,offsetWells:Me,metricsKeys:de,sortInfo:be,isMetricsLoading:Re,unusableWellAlarm:T,onChangeMetricsKeys:nt,onSorting:lt,onAddOffsetWell:Ge,onDeleteOffsetWell:Ke,onAddAllOffsetWells:He,onDeleteAllOffsetWells:Ve})]})}),h.jsx("div",{className:w.bottomShadow}),h.jsxs(i.DialogActions,{className:v.default(w.dialogActions,C.default({},w.dialogActionsSmallScreen,B)),children:[q?h.jsxs("div",{className:w.selectedWells,children:[h.jsx(i.Typography,{className:w.selected,children:"Selected:"}),h.jsx(i.Typography,{className:w.selectedLabel,children:"Best:"}),h.jsx(i.Typography,{className:w.selectedNumber,children:A}),h.jsx(i.Typography,{className:w.selectedLabel,children:"Advanced Search:"}),h.jsx(i.Typography,{className:w.selectedNumber,children:(null==Me?void 0:Me.length)||0})]}):h.jsx("div",{}),h.jsxs("div",{children:[h.jsx(i.Button,{"data-testid":"".concat("OffsetsPickerDialog","_cancel"),onClick:st,color:"primary",style:{marginRight:16},children:"CANCEL"}),h.jsxs(i.Button,{"data-testid":"".concat("OffsetsPickerDialog","_add"),variant:"contained",color:"primary",onClick:function(){var e=N(N({},o),{},{companyId:U,subjectWellId:K,radius:Z,excludeSideTrack:le,includeNonEngineeredWells:ae,filters:$,selectedWellIds:s.uniq(Me.map((function(e){return e.id})))});E(e,Me)},children:["ADD (",(null==Me?void 0:Me.length)||0,")"]})]})]})]})};A.propTypes={isOpen:T.default.bool.isRequired,defaultSubjectWellId:T.default.number,companyId:T.default.number,offsetSetting:T.default.shape({}).isRequired,currentUser:T.default.shape({}).isRequired,addWellsUsabilityInfo:T.default.func,unusableWellAlarm:T.default.string,isAdvancedSearch:T.default.bool,bestCount:T.default.number,onSave:T.default.func.isRequired,onClose:T.default.func.isRequired},A.defaultProps={defaultSubjectWellId:null,companyId:null,addWellsUsabilityInfo:null,unusableWellAlarm:"Unable to add",isAdvancedSearch:!1,bestCount:0};var D=n.memo(A);module.exports=D;
1
+ "use strict";var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/slicedToArray"),s=require("react"),n=require("prop-types"),r=require("lodash"),i=require("@material-ui/core"),l=require("@material-ui/icons/Close"),a=require("@material-ui/core/styles"),o=require("@material-ui/core/useMediaQuery"),u=require("classnames"),c=require("./components/Filter/index.js"),d=require("./components/Map/index.js"),f=require("./components/Table/index.js"),p=require("./effects/index.js"),m=require("./utils/index.js"),b=require("./constants.js"),g=require("../LoadingIndicator/LoadingIndicator.js"),j=require("../../permissions/usePermissions.js"),h=require("../../permissions/constants/index.js");require("../../permissions/withPermissionsHOC.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../clients/jsonApi/index.js"),require("../../permissions/ProvidePermissions.js"),require("../../permissions/PermissionsContext.js"),require("../../clients/subscriptions/constants.js"),require("querystring"),require("uuid/v1"),require("../../clients/subscriptions.v1.js"),require("../../clients/subscriptions/subscriptions-client.factory.js"),require("../../constants/goals.js"),require("../../constants/segment.js"),require("../../constants/alerts.js"),require("../../constants/apps.js"),require("../../constants/drillstring.js"),require("../../constants/completion.js"),require("../../constants/appPackages.js"),require("../../constants/notifications.js"),require("../../constants/feed.js"),require("../../constants/bha.js"),require("../../constants/corvaCompanyId.js"),require("../GradientManager/configuration/constants.js"),require("../../utils/index.js"),require("uuid"),require("jsona"),require("../../utils/env.js"),require("../StatusBadge/constants.js"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../clients/api/apiCore.js"),require("../../clients/constants.js"),require("../../clients/sso/auth0.js"),require("../../clients/sso/oauth2.js"),require("lodash/isEmpty"),require("lodash/sortBy"),require("../../constants/streamSourceType.js"),require("../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js");var y=require("react/jsx-runtime");require("../../componentsV2/AppCommonsProvider/AppCommonsContext.js");var S=require("../../effects/useGlobalOffsetWellsSync.js"),q=require("./effects/biDirectionalFiltering.js");function C(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var x=C(e),W=C(t),v=C(n),T=C(l),I=C(o),O=C(u);function k(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),s.push.apply(s,n)}return s}function A(e){for(var t=1;t<arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?k(Object(s),!0).forEach((function(t){x.default(e,t,s[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):k(Object(s)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))}))}return e}var N=i.makeStyles((function(e){return{dialogTitles:{display:"flex",justifyContent:"space-between",alignItems:"center"},title:{fontSize:20},subTitle:{fontSize:14,color:"#03BCD4","&:hover":{cursor:"pointer",textDecoration:"underline"}},subTitleSpace:{fontSize:14,color:"#03BCD4"},titleArea:{display:"flex",alignItems:"center"},closeIconButton:{fontSize:20,padding:4,"&:hover $closeIcon":{color:"#fff"}},closeIcon:{color:"#BDBDBD"},dialogActions:{justifyContent:"space-between",paddingTop:8,paddingBottom:8},bottomShadow:{width:"100%",height:"16px",backgroundImage:"linear-gradient(180deg, rgba(65, 65, 65, 0) 0%, ".concat(e.palette.background.b9,")"),position:"absolute",bottom:"52px",zIndex:2},dialogActionsSmallScreen:{paddingRight:"100px"},dialogContent:{display:"flex",flexDirection:"column"},tabs:{background:"#414141"},selectedWells:{display:"flex",alignItems:"center"},selected:{fontSize:16},selectedLabel:{fontSize:12,marginLeft:14,color:"rgba(255, 255, 255, 0.54)"},selectedNumber:{fontSize:12,margin:4,color:"rgba(255, 255, 255, 0.8)"}}})),D=function(e){var t=e.isOpen,n=e.defaultSubjectWellId,l=e.companyId,o=e.offsetSetting,u=e.currentUser,C=e.addWellsUsabilityInfo,v=e.unusableWellAlarm,k=e.isAdvancedSearch,D=e.bestCount,E=e.maxOffsetSize,w=e.onClose,P=e.onSave,B=N(),M=a.useTheme(),F=I.default(M.breakpoints.down("sm")),L=j([h.PERMISSIONS.companySelectorView]),R=W.default(L,1)[0].active,z=s.useState(l||r.get(o,"companyId")||+r.get(u,"company_id")),U=W.default(z,2),_=U[0],G=U[1],K=s.useState(r.get(o,"subjectWellId")||n),H=W.default(K,2),V=H[0],Q=H[1];S.useGlobalOffsetWellsSync(o,P,E,V);var $=s.useState(r.get(o,"filters")||b.DEFAULT_SETTINGS.filters),J=W.default($,2),X=J[0],Y=J[1],Z=s.useState(r.get(o,"radius")||b.DEFAULT_SETTINGS.radius),ee=W.default(Z,2),te=ee[0],se=ee[1],ne=s.useState(r.get(o,"excludeSideTrack")||!1),re=W.default(ne,2),ie=re[0],le=re[1],ae=s.useState(r.get(o,"includeNonEngineeredWells")||!1),oe=W.default(ae,2),ue=oe[0],ce=oe[1],de=s.useState([]),fe=W.default(de,2),pe=fe[0],me=fe[1],be=s.useState(b.DEFAULT_SETTINGS.sortInfo),ge=W.default(be,2),je=ge[0],he=ge[1],ye=s.useState(!1),Se=W.default(ye,2),qe=Se[0],Ce=Se[1],xe=s.useState([]),We=W.default(xe,2),ve=We[0],Te=We[1];s.useEffect((function(){t&&(Te(r.get(o,"selectedWellIds")||[]),G(l||r.get(o,"companyId")||+r.get(u,"company_id")),Q(r.get(o,"subjectWellId")||n))}),[t,o]);var Ie=s.useMemo((function(){return!!V}),[V]),Oe=p.useCompanies(R,k&&n,_),ke=p.useWells(_,C),Ae=p.useCompanyMetricKey(_);s.useEffect((function(){me((function(e){return Ae?[Ae]:e}))}),[Ae]);var Ne=q(X,ke),De=s.useMemo((function(){return m.getFilteredWells(X,ie,ke)}),[X,ie,ke]),Ee=s.useMemo((function(){return m.getFilteredWellsByNonEngineered(De,ue)}),[De,ue]),we=s.useMemo((function(){return Ee&&V?Ee.find((function(e){return e.id===V})):null}),[Ee,V]),Pe=p.useWellsWithCoords(De,we),Be=s.useMemo((function(){return m.getFilteredWellsByNonEngineered(Pe,!1)}),[Pe]),Me=ue?Pe:Be,Fe=Pe&&Pe.length!==Be.length;p.useRadiusWells(te,Pe,Te);var Le=p.useOffsetWells(te,ke,ve),Re=p.useMetricsData(_,Me),ze=W.default(Re,2),Ue=ze[0],_e=ze[1],Ge=s.useMemo((function(){return _e?r.orderBy(_e,je.key,1===je.direction?"asc":"desc"):_e}),[je,_e]),Ke=s.useCallback((function(e){G(e),Q(null),Te([]),Y(b.DEFAULT_SETTINGS.filters)}),[]),He=s.useCallback((function(e){var t=Ee.find((function(t){return t.id===e}));t&&t.is_usable&&Te(r.uniq(ve.concat(e)))}),[ve,Ee]),Ve=s.useCallback((function(e){Te(r.uniq(ve.filter((function(t){return t!==e}))))}),[ve]),Qe=s.useCallback((function(){Te(Ee.filter((function(e){return e.is_usable})).map((function(e){return e.id})))}),[Ee]),$e=s.useCallback((function(){Te([])}),[]),Je=s.useCallback((function(e){Te([]),Q(e)}),[ke]),Xe=s.useCallback((function(){Te([]),Q(null)}),[]),Ye=s.useCallback((function(e){se(e)}),[]),Ze=s.useCallback((function(e){le(e)}),[]),et=s.useCallback((function(e){e||Te((function(e){return e.filter((function(e){return Be.map((function(e){return e.id})).includes(e)}))})),ce(e)}),[Be]),tt=s.useCallback((function(e,t){Y((function(s){return A(A({},s),{},x.default({},e,t))})),Te([])}),[]),st=s.useCallback((function(){Y(A({},b.DEFAULT_SETTINGS.filters)),Te([])}),[]),nt=s.useCallback((function(){Ce((function(e){return!e}))}),[]),rt=s.useCallback((function(e){me(e)}),[]),it=s.useCallback((function(e){he((function(t){return t.key===e?A(A({},t),{},{direction:-1*t.direction}):{key:e,direction:1}}))}),[]),lt=function(){w()},at=!(ke&&Ee&&Me&&_e&&Le&&Ge);return y.jsxs(i.Dialog,{onBackdropClick:w,onEscapeKeyDown:w,maxWidth:"lg",fullWidth:!0,fullScreen:F,open:t,children:[y.jsx(i.DialogTitle,{children:y.jsxs("div",{className:B.dialogTitles,children:[k?y.jsxs("div",{className:B.titleArea,children:[y.jsx(i.Typography,{className:B.subTitle,onClick:lt,children:"Select Offset Wells"}),y.jsx(i.Typography,{className:B.subTitleSpace,children:" / "}),y.jsx(i.Typography,{className:B.title,children:"Advanced Search"})]}):y.jsx(i.Typography,{className:B.title,children:"Select Offset Wells"}),y.jsx(i.Tooltip,{title:"Close",children:y.jsx(i.IconButton,{"data-not-migrated-muiiconbutton":!0,"aria-label":"close",className:B.closeIconButton,onClick:w,children:y.jsx(T.default,{className:B.closeIcon})})})]})}),y.jsx(i.DialogContent,{className:B.dialogContent,children:at?y.jsx(g,{fullscreen:!1}):y.jsxs(y.Fragment,{children:[y.jsx(c,{companyId:_,companies:Oe,canViewCompanies:R,radius:te,excludeSideTrack:ie,includeNonEngineeredWells:ue,wells:Ee,subjectWell:we,filters:X,filtersOptions:Ne,mapHidden:qe,isRadiusEditable:Ie,isExistNonEngineeredWells:Fe,onChangeCompany:Ke,onSetSubjectWell:Je,onChangeRadius:Ye,onChangeSidetrack:Ze,onChangeNonEngineeredWells:et,onChangeFilters:tt,onClearFilters:st,onToggleMap:nt}),y.jsx(d,{subjectWell:we,wells:Ee,offsetWells:Le,radius:te,mapHidden:qe,onSetSubjectWell:Je,onRemoveSubjectWell:Xe,onAddOffsetWell:He,onDeleteOffsetWell:Ve}),y.jsx(f.default,{subjectWell:we,wells:Ge,offsetWells:Le,metricsKeys:pe,sortInfo:je,isMetricsLoading:Ue,unusableWellAlarm:v,onChangeMetricsKeys:rt,onSorting:it,onAddOffsetWell:He,onDeleteOffsetWell:Ve,onAddAllOffsetWells:Qe,onDeleteAllOffsetWells:$e})]})}),y.jsx("div",{className:B.bottomShadow}),y.jsxs(i.DialogActions,{className:O.default(B.dialogActions,x.default({},B.dialogActionsSmallScreen,F)),children:[k?y.jsxs("div",{className:B.selectedWells,children:[y.jsx(i.Typography,{className:B.selected,children:"Selected:"}),y.jsx(i.Typography,{className:B.selectedLabel,children:"Best:"}),y.jsx(i.Typography,{className:B.selectedNumber,children:D}),y.jsx(i.Typography,{className:B.selectedLabel,children:"Advanced Search:"}),y.jsx(i.Typography,{className:B.selectedNumber,children:(null==Le?void 0:Le.length)||0})]}):y.jsx("div",{}),y.jsxs("div",{children:[y.jsx(i.Button,{"data-testid":"".concat("OffsetsPickerDialog","_cancel"),onClick:lt,color:"primary",style:{marginRight:16},children:"CANCEL"}),y.jsxs(i.Button,{"data-testid":"".concat("OffsetsPickerDialog","_add"),variant:"contained",color:"primary",onClick:function(){var e=A(A({},o),{},{companyId:_,subjectWellId:V,radius:te,excludeSideTrack:ie,includeNonEngineeredWells:ue,filters:X,selectedWellIds:r.uniq(Le.map((function(e){return e.id})))});P(e,Le)},children:["ADD (",(null==Le?void 0:Le.length)||0,")"]})]})]})]})};D.propTypes={isOpen:v.default.bool.isRequired,defaultSubjectWellId:v.default.number,companyId:v.default.number,offsetSetting:v.default.shape({}).isRequired,currentUser:v.default.shape({}).isRequired,addWellsUsabilityInfo:v.default.func,unusableWellAlarm:v.default.string,isAdvancedSearch:v.default.bool,bestCount:v.default.number,maxOffsetSize:v.default.number,onSave:v.default.func.isRequired,onClose:v.default.func.isRequired},D.defaultProps={defaultSubjectWellId:null,companyId:null,addWellsUsabilityInfo:null,unusableWellAlarm:"Unable to add",isAdvancedSearch:!1,bestCount:0,maxOffsetSize:1e3};var E=s.memo(D);module.exports=E;
2
2
  //# sourceMappingURL=OffsetWellPickerDialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OffsetWellPickerDialog.js","sources":["../../../../src/components/OffsetWellPickerV2/OffsetWellPickerDialog.js"],"sourcesContent":["import { memo, useState, useCallback, useEffect, useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport { uniq, orderBy, get } from 'lodash';\nimport {\n Button,\n IconButton,\n Typography,\n Dialog,\n DialogContent,\n DialogTitle,\n DialogActions,\n Tooltip,\n makeStyles,\n} from '@material-ui/core';\nimport CloseIcon from '@material-ui/icons/Close';\nimport { useTheme } from '@material-ui/core/styles';\nimport useMediaQuery from '@material-ui/core/useMediaQuery';\nimport classnames from 'classnames';\n\nimport Filter from './components/Filter';\nimport WellsMap from './components/Map';\nimport WellsTable from './components/Table';\nimport {\n useCompanies,\n useCompanyMetricKey,\n useWells,\n useWellsWithCoords,\n useOffsetWells,\n useBidirectionalFiltering,\n useMetricsData,\n useRadiusWells,\n} from './effects';\nimport { getFilteredWells, getFilteredWellsByNonEngineered } from './utils';\nimport { DEFAULT_SETTINGS } from './constants';\n\nimport LoadingIndicator from '~components/LoadingIndicator';\nimport { usePermissions, PERMISSIONS } from '~/permissions';\n\nconst PAGE_NAME = 'OffsetsPickerDialog';\n\nconst useStyles = makeStyles(theme => ({\n dialogTitles: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n title: {\n fontSize: 20,\n },\n subTitle: {\n fontSize: 14,\n color: '#03BCD4',\n '&:hover': {\n cursor: 'pointer',\n textDecoration: 'underline',\n },\n },\n subTitleSpace: {\n fontSize: 14,\n color: '#03BCD4',\n },\n titleArea: {\n display: 'flex',\n alignItems: 'center',\n },\n closeIconButton: {\n fontSize: 20,\n padding: 4,\n '&:hover $closeIcon': {\n color: '#fff',\n },\n },\n closeIcon: {\n color: '#BDBDBD',\n },\n dialogActions: {\n justifyContent: 'space-between',\n paddingTop: 8,\n paddingBottom: 8,\n },\n bottomShadow: {\n width: '100%',\n height: '16px',\n backgroundImage: `linear-gradient(180deg, rgba(65, 65, 65, 0) 0%, ${theme.palette.background.b9})`,\n position: 'absolute',\n bottom: '52px',\n zIndex: 2,\n },\n dialogActionsSmallScreen: {\n paddingRight: '100px', // Intercom\n },\n dialogContent: {\n display: 'flex',\n flexDirection: 'column',\n },\n tabs: {\n background: '#414141',\n },\n selectedWells: {\n display: 'flex',\n alignItems: 'center',\n },\n selected: {\n fontSize: 16,\n },\n selectedLabel: {\n fontSize: 12,\n marginLeft: 14,\n color: 'rgba(255, 255, 255, 0.54)',\n },\n selectedNumber: {\n fontSize: 12,\n margin: 4,\n color: 'rgba(255, 255, 255, 0.8)',\n },\n}));\n\nconst OffsetsPickerDialog = ({\n isOpen,\n defaultSubjectWellId,\n companyId,\n offsetSetting,\n currentUser,\n addWellsUsabilityInfo,\n unusableWellAlarm,\n isAdvancedSearch,\n bestCount,\n onClose,\n onSave,\n}) => {\n const classes = useStyles();\n const theme = useTheme();\n const isFullScreen = useMediaQuery(theme.breakpoints.down('sm'));\n\n const [{ active: canViewCompanies }] = usePermissions([PERMISSIONS.companySelectorView]);\n\n const [assetCompanyId, setAssetCompanyId] = useState(\n companyId || get(offsetSetting, 'companyId') || +get(currentUser, 'company_id')\n );\n const [subjectWellId, setSubjectWellId] = useState(\n get(offsetSetting, 'subjectWellId') || defaultSubjectWellId\n );\n const [filters, setFilters] = useState(get(offsetSetting, 'filters') || DEFAULT_SETTINGS.filters);\n const [radius, setRadius] = useState(get(offsetSetting, 'radius') || DEFAULT_SETTINGS.radius);\n const [excludeSideTrack, setExcludeSideTrack] = useState(\n get(offsetSetting, 'excludeSideTrack') || false\n );\n const [includeNonEngineeredWells, setIncludeNonEngineeredWells] = useState(\n get(offsetSetting, 'includeNonEngineeredWells') || false\n );\n const [metricsKeys, setMetricsKeys] = useState([]);\n const [sortInfo, setSortInfo] = useState(DEFAULT_SETTINGS.sortInfo);\n const [mapHidden, setMapHidden] = useState(false);\n const [selectedWellIds, setSelectedWellIds] = useState([]);\n\n useEffect(() => {\n if (isOpen) {\n setSelectedWellIds(get(offsetSetting, 'selectedWellIds') || []);\n setAssetCompanyId(\n companyId || get(offsetSetting, 'companyId') || +get(currentUser, 'company_id')\n );\n setSubjectWellId(get(offsetSetting, 'subjectWellId') || defaultSubjectWellId);\n }\n }, [isOpen, offsetSetting]);\n\n const isRadiusEditable = useMemo(() => {\n return !!subjectWellId;\n }, [subjectWellId]);\n\n // NOTE: Fetch all companies\n const companies = useCompanies(\n canViewCompanies,\n isAdvancedSearch && defaultSubjectWellId,\n assetCompanyId\n );\n\n // NOTE: fetch all wells for the currently selected company\n const wells = useWells(assetCompanyId, addWellsUsabilityInfo);\n\n // Note: fetch company metric key\n const companyMetricKey = useCompanyMetricKey(assetCompanyId);\n\n useEffect(() => {\n setMetricsKeys(prev => {\n return companyMetricKey ? [companyMetricKey] : prev;\n });\n }, [companyMetricKey]);\n\n // NOTE: Get available options for every filters\n const filtersOptions = useBidirectionalFiltering(filters, wells);\n\n // NOTE: Filter wells by target formation, string design, program, basin, county, area\n const initialFilteredWells = useMemo(\n () => getFilteredWells(filters, excludeSideTrack, wells),\n [filters, excludeSideTrack, wells]\n );\n\n const filteredWells = useMemo(\n () => getFilteredWellsByNonEngineered(initialFilteredWells, includeNonEngineeredWells),\n [initialFilteredWells, includeNonEngineeredWells]\n );\n\n // NOTE: get subject well from id\n const subjectWell = useMemo(() => {\n return filteredWells && subjectWellId\n ? filteredWells.find(well => well.id === subjectWellId)\n : null;\n }, [filteredWells, subjectWellId]);\n\n // NOTE: All matched wells regardless of is_usable field\n const filteredWellsWithCoords = useWellsWithCoords(initialFilteredWells, subjectWell);\n\n const engineeredWells = useMemo(\n () => getFilteredWellsByNonEngineered(filteredWellsWithCoords, false),\n [filteredWellsWithCoords]\n );\n const filteredWellsByNonEngineered = includeNonEngineeredWells\n ? filteredWellsWithCoords\n : engineeredWells;\n const isExistNonEngineeredWells =\n filteredWellsWithCoords && filteredWellsWithCoords.length !== engineeredWells.length;\n\n // NOTE: Update selectedWellIds by radius\n useRadiusWells(radius, filteredWellsWithCoords, setSelectedWellIds);\n\n // NOTE: Get offset wells (only usable wells)\n const offsetWells = useOffsetWells(radius, wells, selectedWellIds);\n\n // NOTE: Fetch metrics for all filtered wells\n const [isMetricsLoading, filteredWellsWithMetric] = useMetricsData(\n assetCompanyId,\n filteredWellsByNonEngineered\n );\n\n // NOTE: Sort wells by focused metric\n const sortedFilteredWells = useMemo(() => {\n if (!filteredWellsWithMetric) {\n return filteredWellsWithMetric;\n }\n\n return orderBy(\n filteredWellsWithMetric,\n sortInfo.key,\n sortInfo.direction === 1 ? 'asc' : 'desc'\n );\n }, [sortInfo, filteredWellsWithMetric]);\n\n const handleChangeCompany = useCallback(newCompanyId => {\n setAssetCompanyId(newCompanyId);\n setSubjectWellId(null);\n setSelectedWellIds([]);\n setFilters(DEFAULT_SETTINGS.filters);\n }, []);\n\n const handleAddOffsetWell = useCallback(\n targetId => {\n // Do not allow to add unusuable wells\n const currentWell = filteredWells.find(well => well.id === targetId);\n if (!currentWell || !currentWell.is_usable) {\n return;\n }\n\n setSelectedWellIds(uniq(selectedWellIds.concat(targetId)));\n },\n [selectedWellIds, filteredWells]\n );\n\n const handleDeleteOffsetWell = useCallback(\n targetId => {\n setSelectedWellIds(uniq(selectedWellIds.filter(wellId => wellId !== targetId)));\n },\n [selectedWellIds]\n );\n\n const handleAddAllOffsetWells = useCallback(() => {\n setSelectedWellIds(filteredWells.filter(well => well.is_usable).map(well => well.id));\n }, [filteredWells]);\n\n const handleDeleteAllOffsetWells = useCallback(() => {\n setSelectedWellIds([]);\n }, []);\n\n const handleSetSubjectWell = useCallback(\n targetId => {\n setSelectedWellIds([]);\n setSubjectWellId(targetId);\n },\n [wells]\n );\n\n const handleRemoveSubjectWell = useCallback(() => {\n setSelectedWellIds([]);\n setSubjectWellId(null);\n }, []);\n\n const handleChangeRadius = useCallback(newRadius => {\n setRadius(newRadius);\n }, []);\n\n const handleChangeSidetrack = useCallback(checked => {\n setExcludeSideTrack(checked);\n }, []);\n\n const handleChangeNonEngineeredWells = useCallback(\n checked => {\n if (!checked)\n setSelectedWellIds(prev =>\n prev.filter(item => engineeredWells.map(well => well.id).includes(item))\n );\n setIncludeNonEngineeredWells(checked);\n },\n [engineeredWells]\n );\n\n const handleChangeFilters = useCallback((key, newValues) => {\n setFilters(prev => ({ ...prev, [key]: newValues }));\n setSelectedWellIds([]);\n }, []);\n\n const handleClearFilters = useCallback(() => {\n setFilters({ ...DEFAULT_SETTINGS.filters });\n setSelectedWellIds([]);\n }, []);\n\n const handleToggleMap = useCallback(() => {\n setMapHidden(value => !value);\n }, []);\n\n const handleChangeMetricsKeys = useCallback(newMetricsKeys => {\n setMetricsKeys(newMetricsKeys);\n }, []);\n\n // NOTE: Use column index to determine which metric is used for sorting\n const handleSorting = useCallback(newKey => {\n setSortInfo(prevInfo => {\n return prevInfo.key === newKey\n ? {\n ...prevInfo,\n direction: prevInfo.direction * -1,\n }\n : {\n key: newKey,\n direction: 1,\n };\n });\n }, []);\n\n const handleClose = () => {\n onClose();\n };\n\n const handleSave = () => {\n const setting = {\n ...offsetSetting,\n companyId: assetCompanyId,\n subjectWellId,\n radius,\n excludeSideTrack,\n includeNonEngineeredWells,\n filters,\n selectedWellIds: uniq(offsetWells.map(offsetWell => offsetWell.id)),\n };\n\n onSave(setting, offsetWells);\n };\n\n const isLoading =\n !wells ||\n !filteredWells ||\n !filteredWellsByNonEngineered ||\n !filteredWellsWithMetric ||\n !offsetWells ||\n !sortedFilteredWells;\n\n return (\n <Dialog\n onBackdropClick={onClose}\n onEscapeKeyDown={onClose}\n maxWidth=\"lg\"\n fullWidth\n fullScreen={isFullScreen}\n open={isOpen}\n >\n <DialogTitle>\n <div className={classes.dialogTitles}>\n {!isAdvancedSearch ? (\n <Typography className={classes.title}>Select Offset Wells</Typography>\n ) : (\n <div className={classes.titleArea}>\n <Typography className={classes.subTitle} onClick={handleClose}>\n Select Offset Wells\n </Typography>\n <Typography className={classes.subTitleSpace}>&nbsp;/&nbsp;</Typography>\n <Typography className={classes.title}>Advanced Search</Typography>\n </div>\n )}\n <Tooltip title=\"Close\">\n <IconButton\n data-not-migrated-muiiconbutton\n aria-label=\"close\"\n className={classes.closeIconButton}\n onClick={onClose}\n >\n <CloseIcon className={classes.closeIcon} />\n </IconButton>\n </Tooltip>\n </div>\n </DialogTitle>\n <DialogContent className={classes.dialogContent}>\n {!isLoading ? (\n <>\n <Filter\n companyId={assetCompanyId}\n companies={companies}\n canViewCompanies={canViewCompanies}\n radius={radius}\n excludeSideTrack={excludeSideTrack}\n includeNonEngineeredWells={includeNonEngineeredWells}\n wells={filteredWells}\n subjectWell={subjectWell}\n filters={filters}\n filtersOptions={filtersOptions}\n mapHidden={mapHidden}\n isRadiusEditable={isRadiusEditable}\n isExistNonEngineeredWells={isExistNonEngineeredWells}\n onChangeCompany={handleChangeCompany}\n onSetSubjectWell={handleSetSubjectWell}\n onChangeRadius={handleChangeRadius}\n onChangeSidetrack={handleChangeSidetrack}\n onChangeNonEngineeredWells={handleChangeNonEngineeredWells}\n onChangeFilters={handleChangeFilters}\n onClearFilters={handleClearFilters}\n onToggleMap={handleToggleMap}\n />\n <WellsMap\n subjectWell={subjectWell}\n wells={filteredWells}\n offsetWells={offsetWells}\n radius={radius}\n mapHidden={mapHidden}\n onSetSubjectWell={handleSetSubjectWell}\n onRemoveSubjectWell={handleRemoveSubjectWell}\n onAddOffsetWell={handleAddOffsetWell}\n onDeleteOffsetWell={handleDeleteOffsetWell}\n />\n\n <WellsTable\n subjectWell={subjectWell}\n wells={sortedFilteredWells}\n offsetWells={offsetWells}\n metricsKeys={metricsKeys}\n sortInfo={sortInfo}\n isMetricsLoading={isMetricsLoading}\n unusableWellAlarm={unusableWellAlarm}\n onChangeMetricsKeys={handleChangeMetricsKeys}\n onSorting={handleSorting}\n onAddOffsetWell={handleAddOffsetWell}\n onDeleteOffsetWell={handleDeleteOffsetWell}\n onAddAllOffsetWells={handleAddAllOffsetWells}\n onDeleteAllOffsetWells={handleDeleteAllOffsetWells}\n />\n </>\n ) : (\n <LoadingIndicator fullscreen={false} />\n )}\n </DialogContent>\n <div className={classes.bottomShadow} />\n <DialogActions\n className={classnames(classes.dialogActions, {\n [classes.dialogActionsSmallScreen]: isFullScreen,\n })}\n >\n {isAdvancedSearch ? (\n <div className={classes.selectedWells}>\n <Typography className={classes.selected}>Selected:</Typography>\n <Typography className={classes.selectedLabel}>Best:</Typography>\n <Typography className={classes.selectedNumber}>{bestCount}</Typography>\n <Typography className={classes.selectedLabel}>Advanced Search:</Typography>\n <Typography className={classes.selectedNumber}>{offsetWells?.length || 0}</Typography>\n </div>\n ) : (\n <div />\n )}\n <div>\n <Button\n data-testid={`${PAGE_NAME}_cancel`}\n onClick={handleClose}\n color=\"primary\"\n style={{ marginRight: 16 }}\n >\n CANCEL\n </Button>\n <Button\n data-testid={`${PAGE_NAME}_add`}\n variant=\"contained\"\n color=\"primary\"\n onClick={handleSave}\n >\n ADD ({offsetWells?.length || 0})\n </Button>\n </div>\n </DialogActions>\n </Dialog>\n );\n};\n\nOffsetsPickerDialog.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n defaultSubjectWellId: PropTypes.number,\n companyId: PropTypes.number,\n offsetSetting: PropTypes.shape({}).isRequired,\n currentUser: PropTypes.shape({}).isRequired,\n addWellsUsabilityInfo: PropTypes.func, // update offset wells usability info in specific apps (\"is_usable\" field)\n unusableWellAlarm: PropTypes.string,\n isAdvancedSearch: PropTypes.bool,\n bestCount: PropTypes.number,\n onSave: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n};\n\nOffsetsPickerDialog.defaultProps = {\n defaultSubjectWellId: null,\n companyId: null,\n addWellsUsabilityInfo: null,\n unusableWellAlarm: 'Unable to add',\n isAdvancedSearch: false,\n bestCount: 0,\n};\n\nexport default memo(OffsetsPickerDialog);\n"],"names":["useStyles","makeStyles","theme","dialogTitles","display","justifyContent","alignItems","title","fontSize","subTitle","color","cursor","textDecoration","subTitleSpace","titleArea","closeIconButton","padding","closeIcon","dialogActions","paddingTop","paddingBottom","bottomShadow","width","height","backgroundImage","concat","palette","background","b9","position","bottom","zIndex","dialogActionsSmallScreen","paddingRight","dialogContent","flexDirection","tabs","selectedWells","selected","selectedLabel","marginLeft","selectedNumber","margin","OffsetsPickerDialog","_ref","isOpen","defaultSubjectWellId","companyId","offsetSetting","currentUser","addWellsUsabilityInfo","unusableWellAlarm","isAdvancedSearch","bestCount","onClose","onSave","classes","useTheme","isFullScreen","useMediaQuery","breakpoints","down","_usePermissions","usePermissions","PERMISSIONS","companySelectorView","canViewCompanies","_slicedToArray","active","_useState","useState","get","_useState2","assetCompanyId","setAssetCompanyId","_useState4","_useState3","subjectWellId","setSubjectWellId","_useState5","DEFAULT_SETTINGS","filters","_useState6","setFilters","_useState7","radius","_useState8","setRadius","_useState10","_useState9","excludeSideTrack","setExcludeSideTrack","_useState12","_useState11","includeNonEngineeredWells","setIncludeNonEngineeredWells","_useState14","_useState13","metricsKeys","setMetricsKeys","_useState15","sortInfo","_useState16","setSortInfo","_useState18","_useState17","mapHidden","setMapHidden","_useState20","_useState19","selectedWellIds","setSelectedWellIds","useEffect","isRadiusEditable","useMemo","companies","useCompanies","wells","useWells","companyMetricKey","useCompanyMetricKey","prev","filtersOptions","useBidirectionalFiltering","initialFilteredWells","getFilteredWells","filteredWells","getFilteredWellsByNonEngineered","subjectWell","find","well","id","filteredWellsWithCoords","useWellsWithCoords","engineeredWells","filteredWellsByNonEngineered","isExistNonEngineeredWells","length","useRadiusWells","offsetWells","useOffsetWells","_useMetricsData","useMetricsData","_useMetricsData2","isMetricsLoading","filteredWellsWithMetric","sortedFilteredWells","orderBy","key","direction","handleChangeCompany","useCallback","newCompanyId","handleAddOffsetWell","targetId","currentWell","is_usable","uniq","handleDeleteOffsetWell","filter","wellId","handleAddAllOffsetWells","map","handleDeleteAllOffsetWells","handleSetSubjectWell","handleRemoveSubjectWell","handleChangeRadius","newRadius","handleChangeSidetrack","checked","handleChangeNonEngineeredWells","item","includes","handleChangeFilters","newValues","_objectSpread","_defineProperty","handleClearFilters","handleToggleMap","value","handleChangeMetricsKeys","newMetricsKeys","handleSorting","newKey","prevInfo","handleClose","isLoading","_jsxs","Dialog","onBackdropClick","onEscapeKeyDown","maxWidth","fullWidth","fullScreen","open","children","_jsx","DialogTitle","jsxs","className","Typography","onClick","Tooltip","IconButton","CloseIcon","DialogContent","LoadingIndicator","fullscreen","_Fragment","Filter","onChangeCompany","onSetSubjectWell","onChangeRadius","onChangeSidetrack","onChangeNonEngineeredWells","onChangeFilters","onClearFilters","onToggleMap","WellsMap","onRemoveSubjectWell","onAddOffsetWell","onDeleteOffsetWell","WellsTable","onChangeMetricsKeys","onSorting","onAddAllOffsetWells","onDeleteAllOffsetWells","jsx","DialogActions","classnames","Button","style","marginRight","variant","setting","offsetWell","propTypes","PropTypes","bool","isRequired","number","shape","func","string","defaultProps","memo"],"mappings":"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"}
1
+ {"version":3,"file":"OffsetWellPickerDialog.js","sources":["../../../../src/components/OffsetWellPickerV2/OffsetWellPickerDialog.js"],"sourcesContent":["import { memo, useState, useCallback, useEffect, useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport { uniq, orderBy, get } from 'lodash';\nimport {\n Button,\n IconButton,\n Typography,\n Dialog,\n DialogContent,\n DialogTitle,\n DialogActions,\n Tooltip,\n makeStyles,\n} from '@material-ui/core';\nimport CloseIcon from '@material-ui/icons/Close';\nimport { useTheme } from '@material-ui/core/styles';\nimport useMediaQuery from '@material-ui/core/useMediaQuery';\nimport classnames from 'classnames';\n\nimport Filter from './components/Filter';\nimport WellsMap from './components/Map';\nimport WellsTable from './components/Table';\nimport {\n useCompanies,\n useCompanyMetricKey,\n useWells,\n useWellsWithCoords,\n useOffsetWells,\n useBidirectionalFiltering,\n useMetricsData,\n useRadiusWells,\n} from './effects';\nimport { getFilteredWells, getFilteredWellsByNonEngineered } from './utils';\nimport { DEFAULT_SETTINGS } from './constants';\n\nimport LoadingIndicator from '~components/LoadingIndicator';\nimport { usePermissions, PERMISSIONS } from '~/permissions';\nimport { useGlobalOffsetWellsSync } from '~/effects';\n\nconst PAGE_NAME = 'OffsetsPickerDialog';\n\nconst useStyles = makeStyles(theme => ({\n dialogTitles: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n title: {\n fontSize: 20,\n },\n subTitle: {\n fontSize: 14,\n color: '#03BCD4',\n '&:hover': {\n cursor: 'pointer',\n textDecoration: 'underline',\n },\n },\n subTitleSpace: {\n fontSize: 14,\n color: '#03BCD4',\n },\n titleArea: {\n display: 'flex',\n alignItems: 'center',\n },\n closeIconButton: {\n fontSize: 20,\n padding: 4,\n '&:hover $closeIcon': {\n color: '#fff',\n },\n },\n closeIcon: {\n color: '#BDBDBD',\n },\n dialogActions: {\n justifyContent: 'space-between',\n paddingTop: 8,\n paddingBottom: 8,\n },\n bottomShadow: {\n width: '100%',\n height: '16px',\n backgroundImage: `linear-gradient(180deg, rgba(65, 65, 65, 0) 0%, ${theme.palette.background.b9})`,\n position: 'absolute',\n bottom: '52px',\n zIndex: 2,\n },\n dialogActionsSmallScreen: {\n paddingRight: '100px', // Intercom\n },\n dialogContent: {\n display: 'flex',\n flexDirection: 'column',\n },\n tabs: {\n background: '#414141',\n },\n selectedWells: {\n display: 'flex',\n alignItems: 'center',\n },\n selected: {\n fontSize: 16,\n },\n selectedLabel: {\n fontSize: 12,\n marginLeft: 14,\n color: 'rgba(255, 255, 255, 0.54)',\n },\n selectedNumber: {\n fontSize: 12,\n margin: 4,\n color: 'rgba(255, 255, 255, 0.8)',\n },\n}));\n\nconst OffsetsPickerDialog = ({\n isOpen,\n defaultSubjectWellId,\n companyId,\n offsetSetting,\n currentUser,\n addWellsUsabilityInfo,\n unusableWellAlarm,\n isAdvancedSearch,\n bestCount,\n maxOffsetSize,\n onClose,\n onSave,\n}) => {\n const classes = useStyles();\n const theme = useTheme();\n const isFullScreen = useMediaQuery(theme.breakpoints.down('sm'));\n const [{ active: canViewCompanies }] = usePermissions([PERMISSIONS.companySelectorView]);\n\n const [assetCompanyId, setAssetCompanyId] = useState(\n companyId || get(offsetSetting, 'companyId') || +get(currentUser, 'company_id')\n );\n const [subjectWellId, setSubjectWellId] = useState(\n get(offsetSetting, 'subjectWellId') || defaultSubjectWellId\n );\n\n useGlobalOffsetWellsSync(offsetSetting, onSave, maxOffsetSize, subjectWellId);\n const [filters, setFilters] = useState(get(offsetSetting, 'filters') || DEFAULT_SETTINGS.filters);\n const [radius, setRadius] = useState(get(offsetSetting, 'radius') || DEFAULT_SETTINGS.radius);\n const [excludeSideTrack, setExcludeSideTrack] = useState(\n get(offsetSetting, 'excludeSideTrack') || false\n );\n const [includeNonEngineeredWells, setIncludeNonEngineeredWells] = useState(\n get(offsetSetting, 'includeNonEngineeredWells') || false\n );\n const [metricsKeys, setMetricsKeys] = useState([]);\n const [sortInfo, setSortInfo] = useState(DEFAULT_SETTINGS.sortInfo);\n const [mapHidden, setMapHidden] = useState(false);\n const [selectedWellIds, setSelectedWellIds] = useState([]);\n\n useEffect(() => {\n if (isOpen) {\n setSelectedWellIds(get(offsetSetting, 'selectedWellIds') || []);\n setAssetCompanyId(\n companyId || get(offsetSetting, 'companyId') || +get(currentUser, 'company_id')\n );\n setSubjectWellId(get(offsetSetting, 'subjectWellId') || defaultSubjectWellId);\n }\n }, [isOpen, offsetSetting]);\n\n const isRadiusEditable = useMemo(() => {\n return !!subjectWellId;\n }, [subjectWellId]);\n\n // NOTE: Fetch all companies\n const companies = useCompanies(\n canViewCompanies,\n isAdvancedSearch && defaultSubjectWellId,\n assetCompanyId\n );\n\n // NOTE: fetch all wells for the currently selected company\n const wells = useWells(assetCompanyId, addWellsUsabilityInfo);\n\n // Note: fetch company metric key\n const companyMetricKey = useCompanyMetricKey(assetCompanyId);\n\n useEffect(() => {\n setMetricsKeys(prev => {\n return companyMetricKey ? [companyMetricKey] : prev;\n });\n }, [companyMetricKey]);\n\n // NOTE: Get available options for every filters\n const filtersOptions = useBidirectionalFiltering(filters, wells);\n\n // NOTE: Filter wells by target formation, string design, program, basin, county, area\n const initialFilteredWells = useMemo(\n () => getFilteredWells(filters, excludeSideTrack, wells),\n [filters, excludeSideTrack, wells]\n );\n\n const filteredWells = useMemo(\n () => getFilteredWellsByNonEngineered(initialFilteredWells, includeNonEngineeredWells),\n [initialFilteredWells, includeNonEngineeredWells]\n );\n\n // NOTE: get subject well from id\n const subjectWell = useMemo(() => {\n return filteredWells && subjectWellId\n ? filteredWells.find(well => well.id === subjectWellId)\n : null;\n }, [filteredWells, subjectWellId]);\n\n // NOTE: All matched wells regardless of is_usable field\n const filteredWellsWithCoords = useWellsWithCoords(initialFilteredWells, subjectWell);\n\n const engineeredWells = useMemo(\n () => getFilteredWellsByNonEngineered(filteredWellsWithCoords, false),\n [filteredWellsWithCoords]\n );\n const filteredWellsByNonEngineered = includeNonEngineeredWells\n ? filteredWellsWithCoords\n : engineeredWells;\n const isExistNonEngineeredWells =\n filteredWellsWithCoords && filteredWellsWithCoords.length !== engineeredWells.length;\n\n // NOTE: Update selectedWellIds by radius\n useRadiusWells(radius, filteredWellsWithCoords, setSelectedWellIds);\n\n // NOTE: Get offset wells (only usable wells)\n const offsetWells = useOffsetWells(radius, wells, selectedWellIds);\n\n // NOTE: Fetch metrics for all filtered wells\n const [isMetricsLoading, filteredWellsWithMetric] = useMetricsData(\n assetCompanyId,\n filteredWellsByNonEngineered\n );\n\n // NOTE: Sort wells by focused metric\n const sortedFilteredWells = useMemo(() => {\n if (!filteredWellsWithMetric) {\n return filteredWellsWithMetric;\n }\n\n return orderBy(\n filteredWellsWithMetric,\n sortInfo.key,\n sortInfo.direction === 1 ? 'asc' : 'desc'\n );\n }, [sortInfo, filteredWellsWithMetric]);\n\n const handleChangeCompany = useCallback(newCompanyId => {\n setAssetCompanyId(newCompanyId);\n setSubjectWellId(null);\n setSelectedWellIds([]);\n setFilters(DEFAULT_SETTINGS.filters);\n }, []);\n\n const handleAddOffsetWell = useCallback(\n targetId => {\n // Do not allow to add unusuable wells\n const currentWell = filteredWells.find(well => well.id === targetId);\n if (!currentWell || !currentWell.is_usable) {\n return;\n }\n\n setSelectedWellIds(uniq(selectedWellIds.concat(targetId)));\n },\n [selectedWellIds, filteredWells]\n );\n\n const handleDeleteOffsetWell = useCallback(\n targetId => {\n setSelectedWellIds(uniq(selectedWellIds.filter(wellId => wellId !== targetId)));\n },\n [selectedWellIds]\n );\n\n const handleAddAllOffsetWells = useCallback(() => {\n setSelectedWellIds(filteredWells.filter(well => well.is_usable).map(well => well.id));\n }, [filteredWells]);\n\n const handleDeleteAllOffsetWells = useCallback(() => {\n setSelectedWellIds([]);\n }, []);\n\n const handleSetSubjectWell = useCallback(\n targetId => {\n setSelectedWellIds([]);\n setSubjectWellId(targetId);\n },\n [wells]\n );\n\n const handleRemoveSubjectWell = useCallback(() => {\n setSelectedWellIds([]);\n setSubjectWellId(null);\n }, []);\n\n const handleChangeRadius = useCallback(newRadius => {\n setRadius(newRadius);\n }, []);\n\n const handleChangeSidetrack = useCallback(checked => {\n setExcludeSideTrack(checked);\n }, []);\n\n const handleChangeNonEngineeredWells = useCallback(\n checked => {\n if (!checked)\n setSelectedWellIds(prev =>\n prev.filter(item => engineeredWells.map(well => well.id).includes(item))\n );\n setIncludeNonEngineeredWells(checked);\n },\n [engineeredWells]\n );\n\n const handleChangeFilters = useCallback((key, newValues) => {\n setFilters(prev => ({ ...prev, [key]: newValues }));\n setSelectedWellIds([]);\n }, []);\n\n const handleClearFilters = useCallback(() => {\n setFilters({ ...DEFAULT_SETTINGS.filters });\n setSelectedWellIds([]);\n }, []);\n\n const handleToggleMap = useCallback(() => {\n setMapHidden(value => !value);\n }, []);\n\n const handleChangeMetricsKeys = useCallback(newMetricsKeys => {\n setMetricsKeys(newMetricsKeys);\n }, []);\n\n // NOTE: Use column index to determine which metric is used for sorting\n const handleSorting = useCallback(newKey => {\n setSortInfo(prevInfo => {\n return prevInfo.key === newKey\n ? {\n ...prevInfo,\n direction: prevInfo.direction * -1,\n }\n : {\n key: newKey,\n direction: 1,\n };\n });\n }, []);\n\n const handleClose = () => {\n onClose();\n };\n\n const handleSave = () => {\n const setting = {\n ...offsetSetting,\n companyId: assetCompanyId,\n subjectWellId,\n radius,\n excludeSideTrack,\n includeNonEngineeredWells,\n filters,\n selectedWellIds: uniq(offsetWells.map(offsetWell => offsetWell.id)),\n };\n\n onSave(setting, offsetWells);\n };\n\n const isLoading =\n !wells ||\n !filteredWells ||\n !filteredWellsByNonEngineered ||\n !filteredWellsWithMetric ||\n !offsetWells ||\n !sortedFilteredWells;\n\n return (\n <Dialog\n onBackdropClick={onClose}\n onEscapeKeyDown={onClose}\n maxWidth=\"lg\"\n fullWidth\n fullScreen={isFullScreen}\n open={isOpen}\n >\n <DialogTitle>\n <div className={classes.dialogTitles}>\n {!isAdvancedSearch ? (\n <Typography className={classes.title}>Select Offset Wells</Typography>\n ) : (\n <div className={classes.titleArea}>\n <Typography className={classes.subTitle} onClick={handleClose}>\n Select Offset Wells\n </Typography>\n <Typography className={classes.subTitleSpace}>&nbsp;/&nbsp;</Typography>\n <Typography className={classes.title}>Advanced Search</Typography>\n </div>\n )}\n <Tooltip title=\"Close\">\n <IconButton\n data-not-migrated-muiiconbutton\n aria-label=\"close\"\n className={classes.closeIconButton}\n onClick={onClose}\n >\n <CloseIcon className={classes.closeIcon} />\n </IconButton>\n </Tooltip>\n </div>\n </DialogTitle>\n <DialogContent className={classes.dialogContent}>\n {!isLoading ? (\n <>\n <Filter\n companyId={assetCompanyId}\n companies={companies}\n canViewCompanies={canViewCompanies}\n radius={radius}\n excludeSideTrack={excludeSideTrack}\n includeNonEngineeredWells={includeNonEngineeredWells}\n wells={filteredWells}\n subjectWell={subjectWell}\n filters={filters}\n filtersOptions={filtersOptions}\n mapHidden={mapHidden}\n isRadiusEditable={isRadiusEditable}\n isExistNonEngineeredWells={isExistNonEngineeredWells}\n onChangeCompany={handleChangeCompany}\n onSetSubjectWell={handleSetSubjectWell}\n onChangeRadius={handleChangeRadius}\n onChangeSidetrack={handleChangeSidetrack}\n onChangeNonEngineeredWells={handleChangeNonEngineeredWells}\n onChangeFilters={handleChangeFilters}\n onClearFilters={handleClearFilters}\n onToggleMap={handleToggleMap}\n />\n <WellsMap\n subjectWell={subjectWell}\n wells={filteredWells}\n offsetWells={offsetWells}\n radius={radius}\n mapHidden={mapHidden}\n onSetSubjectWell={handleSetSubjectWell}\n onRemoveSubjectWell={handleRemoveSubjectWell}\n onAddOffsetWell={handleAddOffsetWell}\n onDeleteOffsetWell={handleDeleteOffsetWell}\n />\n\n <WellsTable\n subjectWell={subjectWell}\n wells={sortedFilteredWells}\n offsetWells={offsetWells}\n metricsKeys={metricsKeys}\n sortInfo={sortInfo}\n isMetricsLoading={isMetricsLoading}\n unusableWellAlarm={unusableWellAlarm}\n onChangeMetricsKeys={handleChangeMetricsKeys}\n onSorting={handleSorting}\n onAddOffsetWell={handleAddOffsetWell}\n onDeleteOffsetWell={handleDeleteOffsetWell}\n onAddAllOffsetWells={handleAddAllOffsetWells}\n onDeleteAllOffsetWells={handleDeleteAllOffsetWells}\n />\n </>\n ) : (\n <LoadingIndicator fullscreen={false} />\n )}\n </DialogContent>\n <div className={classes.bottomShadow} />\n <DialogActions\n className={classnames(classes.dialogActions, {\n [classes.dialogActionsSmallScreen]: isFullScreen,\n })}\n >\n {isAdvancedSearch ? (\n <div className={classes.selectedWells}>\n <Typography className={classes.selected}>Selected:</Typography>\n <Typography className={classes.selectedLabel}>Best:</Typography>\n <Typography className={classes.selectedNumber}>{bestCount}</Typography>\n <Typography className={classes.selectedLabel}>Advanced Search:</Typography>\n <Typography className={classes.selectedNumber}>{offsetWells?.length || 0}</Typography>\n </div>\n ) : (\n <div />\n )}\n <div>\n <Button\n data-testid={`${PAGE_NAME}_cancel`}\n onClick={handleClose}\n color=\"primary\"\n style={{ marginRight: 16 }}\n >\n CANCEL\n </Button>\n <Button\n data-testid={`${PAGE_NAME}_add`}\n variant=\"contained\"\n color=\"primary\"\n onClick={handleSave}\n >\n ADD ({offsetWells?.length || 0})\n </Button>\n </div>\n </DialogActions>\n </Dialog>\n );\n};\n\nOffsetsPickerDialog.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n defaultSubjectWellId: PropTypes.number,\n companyId: PropTypes.number,\n offsetSetting: PropTypes.shape({}).isRequired,\n currentUser: PropTypes.shape({}).isRequired,\n addWellsUsabilityInfo: PropTypes.func,\n unusableWellAlarm: PropTypes.string,\n isAdvancedSearch: PropTypes.bool,\n bestCount: PropTypes.number,\n maxOffsetSize: PropTypes.number,\n onSave: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n};\n\nOffsetsPickerDialog.defaultProps = {\n defaultSubjectWellId: null,\n companyId: null,\n addWellsUsabilityInfo: null,\n unusableWellAlarm: 'Unable to add',\n isAdvancedSearch: false,\n bestCount: 0,\n maxOffsetSize: 1000, // infinite\n};\n\nexport default memo(OffsetsPickerDialog);\n"],"names":["useStyles","makeStyles","theme","dialogTitles","display","justifyContent","alignItems","title","fontSize","subTitle","color","cursor","textDecoration","subTitleSpace","titleArea","closeIconButton","padding","closeIcon","dialogActions","paddingTop","paddingBottom","bottomShadow","width","height","backgroundImage","concat","palette","background","b9","position","bottom","zIndex","dialogActionsSmallScreen","paddingRight","dialogContent","flexDirection","tabs","selectedWells","selected","selectedLabel","marginLeft","selectedNumber","margin","OffsetsPickerDialog","_ref","isOpen","defaultSubjectWellId","companyId","offsetSetting","currentUser","addWellsUsabilityInfo","unusableWellAlarm","isAdvancedSearch","bestCount","maxOffsetSize","onClose","onSave","classes","useTheme","isFullScreen","useMediaQuery","breakpoints","down","_usePermissions","usePermissions","PERMISSIONS","companySelectorView","canViewCompanies","_slicedToArray","active","_useState","useState","get","_useState2","assetCompanyId","setAssetCompanyId","_useState4","_useState3","subjectWellId","setSubjectWellId","useGlobalOffsetWellsSync","_useState5","DEFAULT_SETTINGS","filters","_useState6","setFilters","_useState7","radius","_useState8","setRadius","_useState10","_useState9","excludeSideTrack","setExcludeSideTrack","_useState12","_useState11","includeNonEngineeredWells","setIncludeNonEngineeredWells","_useState14","_useState13","metricsKeys","setMetricsKeys","_useState15","sortInfo","_useState16","setSortInfo","_useState18","_useState17","mapHidden","setMapHidden","_useState20","_useState19","selectedWellIds","setSelectedWellIds","useEffect","isRadiusEditable","useMemo","companies","useCompanies","wells","useWells","companyMetricKey","useCompanyMetricKey","prev","filtersOptions","useBidirectionalFiltering","initialFilteredWells","getFilteredWells","filteredWells","getFilteredWellsByNonEngineered","subjectWell","find","well","id","filteredWellsWithCoords","useWellsWithCoords","engineeredWells","filteredWellsByNonEngineered","isExistNonEngineeredWells","length","useRadiusWells","offsetWells","useOffsetWells","_useMetricsData","useMetricsData","_useMetricsData2","isMetricsLoading","filteredWellsWithMetric","sortedFilteredWells","orderBy","key","direction","handleChangeCompany","useCallback","newCompanyId","handleAddOffsetWell","targetId","currentWell","is_usable","uniq","handleDeleteOffsetWell","filter","wellId","handleAddAllOffsetWells","map","handleDeleteAllOffsetWells","handleSetSubjectWell","handleRemoveSubjectWell","handleChangeRadius","newRadius","handleChangeSidetrack","checked","handleChangeNonEngineeredWells","item","includes","handleChangeFilters","newValues","_objectSpread","_defineProperty","handleClearFilters","handleToggleMap","value","handleChangeMetricsKeys","newMetricsKeys","handleSorting","newKey","prevInfo","handleClose","isLoading","_jsxs","Dialog","onBackdropClick","onEscapeKeyDown","maxWidth","fullWidth","fullScreen","open","children","_jsx","DialogTitle","jsxs","className","Typography","onClick","Tooltip","IconButton","CloseIcon","DialogContent","LoadingIndicator","fullscreen","_Fragment","Filter","onChangeCompany","onSetSubjectWell","onChangeRadius","onChangeSidetrack","onChangeNonEngineeredWells","onChangeFilters","onClearFilters","onToggleMap","WellsMap","onRemoveSubjectWell","onAddOffsetWell","onDeleteOffsetWell","WellsTable","onChangeMetricsKeys","onSorting","onAddAllOffsetWells","onDeleteAllOffsetWells","jsx","DialogActions","classnames","Button","style","marginRight","variant","setting","offsetWell","propTypes","PropTypes","bool","isRequired","number","shape","func","string","defaultProps","memo"],"mappings":"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"}