@corva/ui 3.62.0-1 → 3.62.0-10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/MCP_README.md +35 -5
- package/cjs-bundle/components/DevCenter/AppHeader/AppHeader.js +1 -1
- package/cjs-bundle/components/DevCenter/AppHeader/AppHeader.js.map +1 -1
- package/cjs-bundle/components/DevCenter/AppsDataProvider/effects/constants.js +1 -1
- package/cjs-bundle/components/DevCenter/AppsDataProvider/effects/constants.js.map +1 -1
- package/cjs-bundle/components/DevCenter/AppsDataProvider/effects/dataResolvers.js +1 -1
- package/cjs-bundle/components/DevCenter/AppsDataProvider/effects/dataResolvers.js.map +1 -1
- package/cjs-bundle/components/DevCenter/AppsDataProvider/effects/useAppsData.js +1 -1
- package/cjs-bundle/components/DevCenter/AppsDataProvider/effects/useAppsData.js.map +1 -1
- package/cjs-bundle/components/DevCenter/AppsDataProvider/effects/utils.js +1 -1
- package/cjs-bundle/components/DevCenter/AppsDataProvider/effects/utils.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricsSettingMenu/MetricsSettingMenu.module.scss.js +1 -1
- package/cjs-bundle/componentsV2/AppCommonsProvider/utils.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/AppHeader.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AppHeaderV3.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AppTitle/AppTitle.js +1 -1
- package/cjs-bundle/permissions/constants/index.js +1 -1
- package/cjs-bundle/testing/AppTestWrapper/AppTestWrapper.js +1 -1
- package/components/DevCenter/AppHeader/AppHeader.d.ts.map +1 -1
- package/components/DevCenter/AppHeader/AppHeader.js +1 -1
- package/components/DevCenter/AppHeader/AppHeader.js.map +1 -1
- package/components/DevCenter/AppsDataProvider/effects/constants.d.ts +2 -0
- package/components/DevCenter/AppsDataProvider/effects/constants.js +1 -1
- package/components/DevCenter/AppsDataProvider/effects/constants.js.map +1 -1
- package/components/DevCenter/AppsDataProvider/effects/dataResolvers.d.ts +1 -1
- package/components/DevCenter/AppsDataProvider/effects/dataResolvers.d.ts.map +1 -1
- package/components/DevCenter/AppsDataProvider/effects/dataResolvers.js +1 -1
- package/components/DevCenter/AppsDataProvider/effects/dataResolvers.js.map +1 -1
- package/components/DevCenter/AppsDataProvider/effects/useAppsData.d.ts.map +1 -1
- package/components/DevCenter/AppsDataProvider/effects/useAppsData.js +1 -1
- package/components/DevCenter/AppsDataProvider/effects/useAppsData.js.map +1 -1
- package/components/DevCenter/AppsDataProvider/effects/utils.d.ts +1 -0
- package/components/DevCenter/AppsDataProvider/effects/utils.d.ts.map +1 -1
- package/components/DevCenter/AppsDataProvider/effects/utils.js +1 -1
- package/components/DevCenter/AppsDataProvider/effects/utils.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.d.ts +2 -1
- package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.d.ts.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.d.ts +4 -1
- package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.d.ts.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricsSettingMenu/MetricsSettingMenu.module.scss.js +1 -1
- package/componentsV2/AppCommonsProvider/AppCommonsContext.d.ts +1 -0
- package/componentsV2/AppCommonsProvider/AppCommonsContext.d.ts.map +1 -1
- package/componentsV2/AppCommonsProvider/utils.d.ts +2 -1
- package/componentsV2/AppCommonsProvider/utils.d.ts.map +1 -1
- package/componentsV2/AppCommonsProvider/utils.js +1 -1
- package/componentsV2/AppHeader/AppHeader.d.ts.map +1 -1
- package/componentsV2/AppHeader/AppHeader.js +1 -1
- package/componentsV2/AppHeader/V3/AppHeaderV3.d.ts.map +1 -1
- package/componentsV2/AppHeader/V3/AppHeaderV3.js +1 -1
- package/componentsV2/AppHeader/V3/AppTitle/AppTitle.d.ts.map +1 -1
- package/componentsV2/AppHeader/V3/AppTitle/AppTitle.js +1 -1
- package/componentsV2/AppHeader/__tests__/AppHeader.test.d.ts +2 -0
- package/componentsV2/AppHeader/__tests__/AppHeader.test.d.ts.map +1 -0
- package/mcp-server/server.mjs +497 -25
- package/package.json +1 -1
- package/permissions/constants/index.d.ts +1 -0
- package/permissions/constants/index.d.ts.map +1 -1
- package/permissions/constants/index.js +1 -1
- package/testing/AppTestWrapper/AppTestWrapper.d.ts +1 -1
- package/testing/AppTestWrapper/AppTestWrapper.d.ts.map +1 -1
- package/testing/AppTestWrapper/AppTestWrapper.js +1 -1
- package/tsconfig.tsbuildinfo +1 -1
package/MCP_README.md
CHANGED
|
@@ -32,6 +32,8 @@ supports Claude Code, Cursor, and Codex CLI.
|
|
|
32
32
|
- `get_constants_docs` - Get constants documentation (values, namespaces, usage)
|
|
33
33
|
- `get_client_docs` - Get API client documentation (methods, endpoints)
|
|
34
34
|
- `get_diagnostics` - Get MCP server health metrics (memory, uptime, request stats, telemetry status)
|
|
35
|
+
- `submit_feedback` - Send feedback about `@corva/ui` or this MCP server to the maintainers (docs gaps, wrong/missing
|
|
36
|
+
props, search misses). The assistant can also call this on its own when it hits a gap.
|
|
35
37
|
|
|
36
38
|
### Usage
|
|
37
39
|
|
|
@@ -76,6 +78,29 @@ your client.
|
|
|
76
78
|
**Scope:** primarily consumer mode — app repos that depend on `@corva/ui` and import from its entry points. Authoring
|
|
77
79
|
mode (inside the `@corva/ui` repo itself) is auto-detected from `package.json` and adjusts output conventions.
|
|
78
80
|
|
|
81
|
+
- `feedback` — Send feedback about `@corva/ui` or this MCP server to the maintainers. The prompt collects your message
|
|
82
|
+
(and an optional sentiment / which component the feedback is about) and submits it via the `submit_feedback` tool.
|
|
83
|
+
|
|
84
|
+
**Argument** (optional; the assistant asks if missing):
|
|
85
|
+
|
|
86
|
+
- `input` — Your feedback. Optionally mention a sentiment (positive / negative / neutral) and which component, hook, or
|
|
87
|
+
tool it is about.
|
|
88
|
+
|
|
89
|
+
**Example invocation** (Claude Code):
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
/mcp__corva-ui__feedback the Button docs are missing the `variant` prop
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
- `healthcheck` — Check the health of this MCP server: uptime, memory usage, request statistics, telemetry status, and
|
|
96
|
+
project identity. Runs the `get_diagnostics` tool and presents the report. **Takes no arguments.**
|
|
97
|
+
|
|
98
|
+
**Example invocation** (Claude Code):
|
|
99
|
+
|
|
100
|
+
```
|
|
101
|
+
/mcp__corva-ui__healthcheck
|
|
102
|
+
```
|
|
103
|
+
|
|
79
104
|
## Setup
|
|
80
105
|
|
|
81
106
|
> **Just generated a fresh project with the latest `create-corva-app`?** MCP is already configured for Claude Code,
|
|
@@ -524,12 +549,15 @@ users should use the [Native Windows (nvm-windows)](#native-windows-nvm-windows)
|
|
|
524
549
|
Ask your AI agent a question about a `@corva/ui` component (e.g., "How do I use the Button component from @corva/ui?") —
|
|
525
550
|
it should call one of the MCP tools and return real documentation.
|
|
526
551
|
|
|
527
|
-
For server health (uptime, memory, request stats, telemetry status),
|
|
552
|
+
For server health (uptime, memory, request stats, telemetry status), run the healthcheck slash command in Claude Code:
|
|
528
553
|
|
|
529
554
|
```
|
|
530
|
-
|
|
555
|
+
/mcp__corva-ui__healthcheck
|
|
531
556
|
```
|
|
532
557
|
|
|
558
|
+
This runs the `get_diagnostics` tool under the hood. Clients without slash-command support can call the
|
|
559
|
+
`get_diagnostics` tool directly instead.
|
|
560
|
+
|
|
533
561
|
If the AI doesn't pick up the MCP tools, restart your IDE / reload MCP servers, and confirm the config file is at the
|
|
534
562
|
location listed in the [Local Setup](#local-setup-recommended) table for your IDE.
|
|
535
563
|
|
|
@@ -541,10 +569,12 @@ direct machine/user identifiers are collected.
|
|
|
541
569
|
|
|
542
570
|
**Tool arguments and results are exported in full, without redaction or truncation.** Span payloads may therefore
|
|
543
571
|
contain content from your queries (file paths, source snippets, component names, or other text you sent to the tool)
|
|
544
|
-
alongside the documentation responses.
|
|
572
|
+
alongside the documentation responses. This includes anything you send via the `feedback` prompt / `submit_feedback`
|
|
573
|
+
tool — the free-text message is recorded verbatim and is intended for the `@corva/ui` maintainers.
|
|
545
574
|
|
|
546
|
-
To check whether telemetry is currently active for your install,
|
|
547
|
-
resolved telemetry status. Telemetry is fully disabled when no valid
|
|
575
|
+
To check whether telemetry is currently active for your install, run `/mcp__corva-ui__healthcheck` (or call the
|
|
576
|
+
`get_diagnostics` tool directly) — it reports the resolved telemetry status. Telemetry is fully disabled when no valid
|
|
577
|
+
endpoint is configured.
|
|
548
578
|
|
|
549
579
|
## FAQ
|
|
550
580
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/slicedToArray"),a=require("react"),s=require("lodash"),n=require("prop-types"),i=require("classnames"),r=require("@material-ui/core"),l=require("../../AssetNameLabel/SecondaryAssetNameLabel.js"),d=require("../../AssetNameLabel/AssetNameLabel.js"),o=require("./VersionBadge.js"),u=require("./PadMode.js"),p=require("./utils.js"),c=require("./PadIcon.js"),m=require("./AppHeaderStyles.js"),f=require("./AppHeader.css.js"),g=require("../../Annotations/components/LastAnnotation/index.js"),v=require("../../../constants/segment.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/slicedToArray"),a=require("react"),s=require("lodash"),n=require("prop-types"),i=require("classnames"),r=require("@material-ui/core"),l=require("../../AssetNameLabel/SecondaryAssetNameLabel.js"),d=require("../../AssetNameLabel/AssetNameLabel.js"),o=require("./VersionBadge.js"),u=require("./PadMode.js"),p=require("./utils.js"),c=require("./PadIcon.js"),m=require("./AppHeaderStyles.js"),f=require("./AppHeader.css.js"),g=require("../../Annotations/components/LastAnnotation/index.js"),v=require("../../../constants/segment.js"),A=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");var h=require("../../../utils/devcenter.js");require("../../../componentsV2/AppCommonsProvider/AppCommonsProvider.js");var j=require("../../../componentsV2/AppCommonsProvider/AppCommonsContext.js"),b=require("../../../componentsV2/HideInNativeApp/index.js"),y=require("react/jsx-runtime");function S(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var x=S(e),N=S(t),P=S(n),q=S(i);function L(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,s)}return a}function _(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?L(Object(a),!0).forEach((function(t){x.default(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):L(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}var C="DevCenter_AppHeader",I=function(e){return(null==e?void 0:e.asset_id)&&"/assets/".concat(null==e?void 0:e.asset_id)};function O(e){var t,n,i,u,S,x,P,L,O,M,w,E,T,W=e.app,k=e.appLastAnnotation,D=e.appSettings,B=e.badge,F=e.children,H=e.classes,V=e.coordinates,R=e.currentUser,U=e.fracFleet,G=e.isMaximized,z=e.logoSrc,Y=e.onSettingChange,Z=e.openAnnotationsList,J=e.primaryAssetStatusBadge,K=e.rig,Q=e.showLastAnnotation,X=e.updateCurrentDashboardAppLastAnnotation,$=e.well,ee=e.wells,te=e.PadModeComponent,ae=e.activeWellName,se=e.rightSideContent,ne=j.useAppCommons()||{},ie=ne.dashboardMeta,re=ne.disableAppAssetSelection,le=!(ie&&ie.v3&&!ie.isChiplessDashboard&&!ie.isMultiAsset&&!ie.isMultiWell)&&!re,de=a.useState(!1),oe=N.default(de,2),ue=oe[0],pe=oe[1],ce=a.useRef(null),me=null==V?void 0:V.pixelWidth;a.useEffect((function(){var e,t;pe((null===(e=ce.current)||void 0===e?void 0:e.scrollWidth)>(null===(t=ce.current)||void 0===t?void 0:t.offsetWidth))}),[null===(t=ce.current)||void 0===t?void 0:t.offsetWidth,me]);var fe=p.getAppDimension(me),ge=h.getAppName(W),ve=h.getAppSegment(W),Ae=ve===v.SEGMENTS.COMPLETION,he=function(e){var t,a=e.appSettings,s=void 0===a?{}:a,n=e.well,i=e.rig,r=e.fracFleet,l=e.segment,d=l===v.SEGMENTS.DRILLING,o=l===v.SEGMENTS.COMPLETION,u=s.wellId,p=s.rigId,c=s.fracFleetId,m=s.padId,f=null==r||null===(t=r.pad_frac_fleets.find((function(e){return e.pad.id===(m||r.current_pad_id)})))||void 0===t?void 0:t.pad,g=d?u&&(null==n?void 0:n.name):null==f?void 0:f.name,A="/assets/types/pad/".concat(m||(null==r?void 0:r.current_pad_id)),h=d?null==i?void 0:i.name:null==r?void 0:r.name,j=!!(u||p||c),b=!1,y=d?h&&I(n):A;return o&&!j&&null!=n&&n.id&&null!=n&&n.name&&(b=!0,j=!0,y=I(n),h=n.name),{isPrimaryAssetStatusVisible:b,isPrimaryNameVisible:j,primaryAssetLink:y,primaryAssetName:h,secondaryAssetLink:d?I(n):"/assets/types/pad/".concat(m||(null==r?void 0:r.current_pad_id)),secondaryAssetName:g}}({appSettings:null==W?void 0:W.settings,well:$,rig:K,fracFleet:U,segment:ve}),je=he.isPrimaryAssetStatusVisible,be=he.isPrimaryNameVisible,ye=he.primaryAssetLink,Se=he.primaryAssetName,xe=he.secondaryAssetLink,Ne=he.secondaryAssetName,Pe=[p.APP_LAYOUT_SIZES.MEDIUM,p.APP_LAYOUT_SIZES.SMALL].includes(fe),qe=W&&W.id===A.DEV_CENTER_CLI_APP_ID,Le={fracFleet:U,wells:ee,well:$,onSettingChange:Y,appSettings:D,disableActiveWellsInPadSelect:null==W||null===(n=W.package)||void 0===n||null===(i=n.manifest)||void 0===i||null===(u=i.application)||void 0===u||null===(S=u.ui)||void 0===S?void 0:S.disableActiveWellsInPadSelect,enableSimulFracInPadSelect:null==W||null===(x=W.package)||void 0===x||null===(P=x.manifest)||void 0===P||null===(L=P.application)||void 0===L||null===(O=L.ui)||void 0===O?void 0:O.enableSimulFracInPadSelect,completionAppType:null==W||null===(M=W.package)||void 0===M||null===(w=M.manifest)||void 0===w||null===(E=w.application)||void 0===E||null===(T=E.ui)||void 0===T?void 0:T.completionAppType},_e=m.useStyles({isMobileSize:Pe});return y.jsxs("div",{className:q.default(_e.appHeaderWrapper,H.appHeader),children:[y.jsxs("div",{className:_e.appHeaderContainer,children:[y.jsx("div",{className:q.default(_e.titleBlock,H.titleBlock),children:y.jsxs("div",{className:H.appHeaderTitleWrapper,ref:ce,children:[y.jsxs("div",{className:_e.titleWrapper,children:[z&&y.jsxs(y.Fragment,{children:[y.jsx("img",{className:_e.logo,src:z,alt:"company logo"}),y.jsx("div",{className:_e.separateLine})]}),y.jsx(r.Tooltip,{title:ue?ge:"",placement:"bottom",children:y.jsx("h6",{"data-testid":"".concat(C,"_name"),className:_e.title,children:ge})}),y.jsx(o.VersionBadge,{appPackage:null==W?void 0:W.package})]}),B]})}),y.jsxs("div",{className:_e.rightBlock,children:[W&&V&&y.jsxs("div",{className:q.default(f.controlsContainer,G&&f.appMaximized),children:[!Pe&&y.jsxs(y.Fragment,{children:[!re&&Ae&&ae&&y.jsx(r.Typography,{variant:"caption",children:ae}),!re&&Ae&&y.jsx(te,_({},Le)),F]}),le&&y.jsx(b.HideInNativeApp,{children:y.jsxs("div",{className:f.assetLabels,children:[Ne&&y.jsx(l.SecondaryAssetNameLabel,{assetName:Ne,coordinatesPixelWidth:me,dataTestId:"".concat(C,"_secondaryAsset"),href:!qe&&xe,icon:Ae&&y.jsx(c.PadIcon,{}),isColored:!Ae||W.settings.padId&&W.settings.padId!==U.current_pad_id}),be&&y.jsx(d.AssetNameLabel,{assetName:Se,coordinatesPixelWidth:me,dataTestId:"".concat(C,"_primaryAsset"),href:!qe&&ye,statusBadge:je&&J})]})})]}),Q&&k&&y.jsx(g,{annotation:k,appId:s.get(W,["app","id"]),currentUser:R,dashboardAppId:W.id,openAnnotationsList:Z,updateCurrentDashboardAppLastAnnotation:X}),se&&y.jsx("div",{className:f.rightSideContent,children:se})]})]}),Pe&&y.jsxs(r.Box,{display:"flex",alignItems:"center",mt:1,children:[!re&&Ae&&!$&&(ee||U)&&y.jsx("div",{className:f.padModeSelect,children:y.jsx(te,_({},Le))}),F]})]})}O.propTypes={app:P.default.object.isRequired,badge:P.default.node,classes:P.default.shape({appHeader:P.default.string,titleBlock:P.default.string,appHeaderTitleWrapper:P.default.string}),showLastAnnotation:P.default.bool,currentUser:P.default.shape({}),appLastAnnotation:P.default.shape({}),updateCurrentDashboardAppLastAnnotation:P.default.func,openAnnotationsList:P.default.func,rig:P.default.shape({name:P.default.string,asset_id:P.default.number}),well:P.default.shape({name:P.default.string,asset_id:P.default.number}),fracFleet:P.default.shape({name:P.default.string,current_pad_id:P.default.number,pad_frac_fleets:P.default.arrayOf(P.default.shape({pad:P.default.shape({id:P.default.number.isRequired,name:P.default.string}).isRequired})).isRequired}),wells:P.default.arrayOf(P.default.shape({})),coordinates:P.default.shape({pixelWidth:P.default.number.isRequired}),isMaximized:P.default.bool,appSettings:P.default.shape({}),onSettingChange:P.default.func,children:P.default.node,logoSrc:P.default.string,primaryAssetStatusBadge:P.default.node,PadModeComponent:P.default.elementType,activeWellName:P.default.string,rightSideContent:P.default.node},O.defaultProps={appLastAnnotation:null,appSettings:null,badge:null,children:null,classes:{},coordinates:void 0,currentUser:void 0,fracFleet:null,isMaximized:!1,logoSrc:null,onSettingChange:void 0,openAnnotationsList:void 0,rig:null,showLastAnnotation:!0,updateCurrentDashboardAppLastAnnotation:function(){},well:null,wells:null,primaryAssetStatusBadge:null,PadModeComponent:u,activeWellName:null,rightSideContent:null},exports.PAGE_NAME=C,exports.default=O;
|
|
2
2
|
//# sourceMappingURL=AppHeader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppHeader.js","sources":["../../../../../src/components/DevCenter/AppHeader/AppHeader.js"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport { get } from 'lodash';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { Box, Tooltip, Typography } from '@material-ui/core';\n\nimport { SecondaryAssetNameLabel } from '../../AssetNameLabel/SecondaryAssetNameLabel';\nimport { AssetNameLabel } from '../../AssetNameLabel/AssetNameLabel';\n\nimport { VersionBadge } from './VersionBadge';\nimport PadMode from './PadMode';\nimport { APP_LAYOUT_SIZES, getAppDimension } from './utils';\nimport { PadIcon } from './PadIcon';\nimport { useStyles } from './AppHeaderStyles';\n\nimport styles from './AppHeader.css';\n\nimport LastAnnotation from '~/components/Annotations/components/LastAnnotation';\nimport { SEGMENTS } from '~/constants/segment';\nimport { DEV_CENTER_CLI_APP_ID } from '~/constants';\nimport { getAppName, getAppSegment } from '~/utils/devcenter';\nimport { useAppCommons } from '~/componentsV2/AppCommonsProvider';\nimport { HideInNativeApp } from '~/componentsV2/HideInNativeApp';\n\nexport const PAGE_NAME = 'DevCenter_AppHeader';\n\nconst getLinkFromWell = well => well?.asset_id && `/assets/${well?.asset_id}`;\n\nconst getAssetLabels = ({ appSettings = {}, well, rig, fracFleet, segment }) => {\n const isDrilling = segment === SEGMENTS.DRILLING;\n const isCompletion = segment === SEGMENTS.COMPLETION;\n\n const { wellId, rigId, fracFleetId, padId } = appSettings;\n const pad = fracFleet?.pad_frac_fleets.find(\n ({ pad }) => pad.id === (padId || fracFleet.current_pad_id)\n )?.pad;\n const secondaryAssetName = isDrilling ? wellId && well?.name : pad?.name;\n const currentPadLink = `/assets/types/pad/${padId || fracFleet?.current_pad_id}`;\n\n let primaryAssetName = isDrilling ? rig?.name : fracFleet?.name;\n let isPrimaryNameVisible = !!(wellId || rigId || fracFleetId);\n let isPrimaryAssetStatusVisible = false;\n\n let primaryAssetLink =\n // we need to use assetId till platform is using old API for assets.\n isDrilling ? primaryAssetName && getLinkFromWell(well) : currentPadLink;\n\n if (isCompletion && !isPrimaryNameVisible && well?.id && well?.name) {\n isPrimaryAssetStatusVisible = true;\n isPrimaryNameVisible = true;\n primaryAssetLink = getLinkFromWell(well);\n primaryAssetName = well.name;\n }\n\n const secondaryAssetLink = isDrilling\n ? getLinkFromWell(well)\n : `/assets/types/pad/${padId || fracFleet?.current_pad_id}`;\n\n return {\n isPrimaryAssetStatusVisible,\n isPrimaryNameVisible,\n primaryAssetLink,\n primaryAssetName,\n secondaryAssetLink,\n secondaryAssetName,\n };\n};\n\nfunction AppHeader({\n app,\n appLastAnnotation,\n appSettings,\n badge,\n children,\n classes,\n coordinates,\n currentUser,\n fracFleet,\n isMaximized,\n logoSrc,\n onSettingChange,\n openAnnotationsList,\n primaryAssetStatusBadge,\n rig,\n showLastAnnotation,\n updateCurrentDashboardAppLastAnnotation,\n well,\n wells,\n PadModeComponent,\n activeWellName,\n rightSideContent,\n}) {\n const { dashboardMeta } = useAppCommons() || {};\n const isSingleAssetDashboard =\n dashboardMeta &&\n dashboardMeta.v3 &&\n !dashboardMeta.isChiplessDashboard &&\n !dashboardMeta.isMultiAsset &&\n !dashboardMeta.isMultiWell;\n\n const [isAppNameTooltipShown, setIsAppNameTooltipShown] = useState(false);\n const titleRef = useRef(null);\n\n const appCoordinatesWidth = coordinates?.pixelWidth;\n\n useEffect(() => {\n setIsAppNameTooltipShown(titleRef.current?.scrollWidth > titleRef.current?.offsetWidth);\n }, [titleRef.current?.offsetWidth, appCoordinatesWidth]);\n\n const appDimension = getAppDimension(appCoordinatesWidth);\n const appName = getAppName(app);\n const segment = getAppSegment(app);\n const isCompletion = segment === SEGMENTS.COMPLETION;\n\n const {\n isPrimaryAssetStatusVisible,\n isPrimaryNameVisible,\n primaryAssetLink,\n primaryAssetName,\n secondaryAssetLink,\n secondaryAssetName,\n } = getAssetLabels({ appSettings: app?.settings, well, rig, fracFleet, segment });\n const isMobileSize = [APP_LAYOUT_SIZES.MEDIUM, APP_LAYOUT_SIZES.SMALL].includes(appDimension);\n const isCLIApp = app && app.id === DEV_CENTER_CLI_APP_ID;\n const padModeProps = {\n fracFleet,\n wells,\n well,\n onSettingChange,\n appSettings,\n disableActiveWellsInPadSelect:\n app?.package?.manifest?.application?.ui?.disableActiveWellsInPadSelect,\n enableSimulFracInPadSelect: app?.package?.manifest?.application?.ui?.enableSimulFracInPadSelect,\n completionAppType: app?.package?.manifest?.application?.ui?.completionAppType,\n };\n\n const jsStyles = useStyles({ isMobileSize });\n\n return (\n <div className={classNames(jsStyles.appHeaderWrapper, classes.appHeader)}>\n <div className={jsStyles.appHeaderContainer}>\n <div className={classNames(jsStyles.titleBlock, classes.titleBlock)}>\n <div className={classes.appHeaderTitleWrapper} ref={titleRef}>\n <div className={jsStyles.titleWrapper}>\n {logoSrc && (\n <>\n <img className={jsStyles.logo} src={logoSrc} alt=\"company logo\" />\n <div className={jsStyles.separateLine} />\n </>\n )}\n <Tooltip title={isAppNameTooltipShown ? appName : ''} placement=\"bottom\">\n <h6 data-testid={`${PAGE_NAME}_name`} className={jsStyles.title}>\n {appName}\n </h6>\n </Tooltip>\n <VersionBadge appPackage={app?.package} />\n </div>\n {badge}\n </div>\n </div>\n\n <div className={jsStyles.rightBlock}>\n {app && coordinates && (\n <div\n className={classNames(styles.controlsContainer, isMaximized && styles.appMaximized)}\n >\n {!isMobileSize && (\n <>\n {isCompletion && activeWellName && (\n <Typography variant=\"caption\">{activeWellName}</Typography>\n )}\n {isCompletion && <PadModeComponent {...padModeProps} />}\n {children}\n </>\n )}\n {!isSingleAssetDashboard && (\n <HideInNativeApp>\n <div className={styles.assetLabels}>\n {secondaryAssetName && (\n <SecondaryAssetNameLabel\n assetName={secondaryAssetName}\n coordinatesPixelWidth={appCoordinatesWidth}\n dataTestId={`${PAGE_NAME}_secondaryAsset`}\n href={!isCLIApp && secondaryAssetLink}\n icon={isCompletion && <PadIcon />}\n isColored={\n !isCompletion ||\n (app.settings.padId && app.settings.padId !== fracFleet.current_pad_id)\n }\n />\n )}\n {isPrimaryNameVisible && (\n <AssetNameLabel\n assetName={primaryAssetName}\n coordinatesPixelWidth={appCoordinatesWidth}\n dataTestId={`${PAGE_NAME}_primaryAsset`}\n href={!isCLIApp && primaryAssetLink}\n statusBadge={isPrimaryAssetStatusVisible && primaryAssetStatusBadge}\n />\n )}\n </div>\n </HideInNativeApp>\n )}\n </div>\n )}\n\n {showLastAnnotation && appLastAnnotation && (\n <LastAnnotation\n annotation={appLastAnnotation}\n appId={get(app, ['app', 'id'])}\n currentUser={currentUser}\n dashboardAppId={app.id}\n openAnnotationsList={openAnnotationsList}\n updateCurrentDashboardAppLastAnnotation={updateCurrentDashboardAppLastAnnotation}\n />\n )}\n\n {rightSideContent && <div className={styles.rightSideContent}>{rightSideContent}</div>}\n </div>\n </div>\n\n {isMobileSize && (\n <Box display=\"flex\" alignItems=\"center\" mt={1}>\n {isCompletion && !well && (wells || fracFleet) && (\n <div className={styles.padModeSelect}>\n <PadModeComponent {...padModeProps} />\n </div>\n )}\n {children}\n </Box>\n )}\n </div>\n );\n}\n\nAppHeader.propTypes = {\n app: PropTypes.object.isRequired, // eslint-disable-line react/forbid-prop-types\n badge: PropTypes.node,\n classes: PropTypes.shape({\n appHeader: PropTypes.string,\n titleBlock: PropTypes.string,\n appHeaderTitleWrapper: PropTypes.string,\n }),\n showLastAnnotation: PropTypes.bool,\n currentUser: PropTypes.shape({}),\n appLastAnnotation: PropTypes.shape({}),\n updateCurrentDashboardAppLastAnnotation: PropTypes.func,\n openAnnotationsList: PropTypes.func,\n rig: PropTypes.shape({\n name: PropTypes.string,\n asset_id: PropTypes.number,\n }),\n well: PropTypes.shape({\n name: PropTypes.string,\n asset_id: PropTypes.number,\n }),\n fracFleet: PropTypes.shape({\n name: PropTypes.string,\n current_pad_id: PropTypes.number,\n pad_frac_fleets: PropTypes.arrayOf(\n PropTypes.shape({\n pad: PropTypes.shape({\n id: PropTypes.number.isRequired,\n name: PropTypes.string,\n }).isRequired,\n })\n ).isRequired,\n }),\n wells: PropTypes.arrayOf(PropTypes.shape({})),\n coordinates: PropTypes.shape({ pixelWidth: PropTypes.number.isRequired }),\n isMaximized: PropTypes.bool,\n appSettings: PropTypes.shape({}),\n onSettingChange: PropTypes.func,\n children: PropTypes.node,\n logoSrc: PropTypes.string,\n primaryAssetStatusBadge: PropTypes.node,\n PadModeComponent: PropTypes.elementType,\n activeWellName: PropTypes.string,\n rightSideContent: PropTypes.node,\n};\n\nAppHeader.defaultProps = {\n appLastAnnotation: null,\n appSettings: null,\n badge: null,\n children: null,\n classes: {},\n coordinates: undefined,\n currentUser: undefined,\n fracFleet: null,\n isMaximized: false,\n logoSrc: null,\n onSettingChange: undefined,\n openAnnotationsList: undefined,\n rig: null,\n showLastAnnotation: true,\n updateCurrentDashboardAppLastAnnotation: () => {},\n well: null,\n wells: null,\n primaryAssetStatusBadge: null,\n PadModeComponent: PadMode,\n activeWellName: null,\n rightSideContent: null,\n};\n\nexport default AppHeader;\n"],"names":["PAGE_NAME","getLinkFromWell","well","asset_id","AppHeader","_ref3","_titleRef$current3","_app$package","_app$package$manifest","_app$package$manifest2","_app$package$manifest3","_app$package2","_app$package2$manifes","_app$package2$manifes2","_app$package2$manifes3","_app$package3","_app$package3$manifes","_app$package3$manifes2","_app$package3$manifes3","app","appLastAnnotation","appSettings","badge","children","classes","coordinates","currentUser","fracFleet","isMaximized","logoSrc","onSettingChange","openAnnotationsList","primaryAssetStatusBadge","rig","showLastAnnotation","updateCurrentDashboardAppLastAnnotation","wells","PadModeComponent","activeWellName","rightSideContent","dashboardMeta","useAppCommons","isSingleAssetDashboard","v3","isChiplessDashboard","isMultiAsset","isMultiWell","useState","_useState2","_slicedToArray","_useState","isAppNameTooltipShown","setIsAppNameTooltipShown","titleRef","useRef","appCoordinatesWidth","pixelWidth","useEffect","_titleRef$current","_titleRef$current2","current","scrollWidth","offsetWidth","appDimension","getAppDimension","appName","getAppName","segment","getAppSegment","isCompletion","SEGMENTS","COMPLETION","_getAssetLabels","_ref","_fracFleet$pad_frac_f","_ref$appSettings","isDrilling","DRILLING","wellId","rigId","fracFleetId","padId","pad","pad_frac_fleets","find","_ref2","id","current_pad_id","secondaryAssetName","name","currentPadLink","primaryAssetName","isPrimaryNameVisible","isPrimaryAssetStatusVisible","primaryAssetLink","secondaryAssetLink","concat","getAssetLabels","settings","isMobileSize","APP_LAYOUT_SIZES","MEDIUM","SMALL","includes","isCLIApp","DEV_CENTER_CLI_APP_ID","padModeProps","disableActiveWellsInPadSelect","package","manifest","application","ui","enableSimulFracInPadSelect","completionAppType","jsStyles","useStyles","_jsxs","className","classNames","appHeaderWrapper","appHeader","jsxs","appHeaderContainer","_jsx","jsx","titleBlock","appHeaderTitleWrapper","ref","titleWrapper","_Fragment","logo","src","alt","separateLine","Tooltip","title","placement","VersionBadge","appPackage","rightBlock","styles","controlsContainer","appMaximized","Typography","variant","HideInNativeApp","assetLabels","SecondaryAssetNameLabel","assetName","coordinatesPixelWidth","dataTestId","href","icon","PadIcon","isColored","AssetNameLabel","statusBadge","LastAnnotation","annotation","appId","get","dashboardAppId","Box","display","alignItems","mt","padModeSelect","_objectSpread","propTypes","PropTypes","object","isRequired","node","shape","string","bool","func","number","arrayOf","elementType","defaultProps","undefined","PadMode"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AppHeader.js","sources":["../../../../../src/components/DevCenter/AppHeader/AppHeader.js"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport { get } from 'lodash';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { Box, Tooltip, Typography } from '@material-ui/core';\n\nimport { SecondaryAssetNameLabel } from '../../AssetNameLabel/SecondaryAssetNameLabel';\nimport { AssetNameLabel } from '../../AssetNameLabel/AssetNameLabel';\n\nimport { VersionBadge } from './VersionBadge';\nimport PadMode from './PadMode';\nimport { APP_LAYOUT_SIZES, getAppDimension } from './utils';\nimport { PadIcon } from './PadIcon';\nimport { useStyles } from './AppHeaderStyles';\n\nimport styles from './AppHeader.css';\n\nimport LastAnnotation from '~/components/Annotations/components/LastAnnotation';\nimport { SEGMENTS } from '~/constants/segment';\nimport { DEV_CENTER_CLI_APP_ID } from '~/constants';\nimport { getAppName, getAppSegment } from '~/utils/devcenter';\nimport { useAppCommons } from '~/componentsV2/AppCommonsProvider';\nimport { HideInNativeApp } from '~/componentsV2/HideInNativeApp';\n\nexport const PAGE_NAME = 'DevCenter_AppHeader';\n\nconst getLinkFromWell = well => well?.asset_id && `/assets/${well?.asset_id}`;\n\nconst getAssetLabels = ({ appSettings = {}, well, rig, fracFleet, segment }) => {\n const isDrilling = segment === SEGMENTS.DRILLING;\n const isCompletion = segment === SEGMENTS.COMPLETION;\n\n const { wellId, rigId, fracFleetId, padId } = appSettings;\n const pad = fracFleet?.pad_frac_fleets.find(\n ({ pad }) => pad.id === (padId || fracFleet.current_pad_id)\n )?.pad;\n const secondaryAssetName = isDrilling ? wellId && well?.name : pad?.name;\n const currentPadLink = `/assets/types/pad/${padId || fracFleet?.current_pad_id}`;\n\n let primaryAssetName = isDrilling ? rig?.name : fracFleet?.name;\n let isPrimaryNameVisible = !!(wellId || rigId || fracFleetId);\n let isPrimaryAssetStatusVisible = false;\n\n let primaryAssetLink =\n // we need to use assetId till platform is using old API for assets.\n isDrilling ? primaryAssetName && getLinkFromWell(well) : currentPadLink;\n\n if (isCompletion && !isPrimaryNameVisible && well?.id && well?.name) {\n isPrimaryAssetStatusVisible = true;\n isPrimaryNameVisible = true;\n primaryAssetLink = getLinkFromWell(well);\n primaryAssetName = well.name;\n }\n\n const secondaryAssetLink = isDrilling\n ? getLinkFromWell(well)\n : `/assets/types/pad/${padId || fracFleet?.current_pad_id}`;\n\n return {\n isPrimaryAssetStatusVisible,\n isPrimaryNameVisible,\n primaryAssetLink,\n primaryAssetName,\n secondaryAssetLink,\n secondaryAssetName,\n };\n};\n\nfunction AppHeader({\n app,\n appLastAnnotation,\n appSettings,\n badge,\n children,\n classes,\n coordinates,\n currentUser,\n fracFleet,\n isMaximized,\n logoSrc,\n onSettingChange,\n openAnnotationsList,\n primaryAssetStatusBadge,\n rig,\n showLastAnnotation,\n updateCurrentDashboardAppLastAnnotation,\n well,\n wells,\n PadModeComponent,\n activeWellName,\n rightSideContent,\n}) {\n const { dashboardMeta, disableAppAssetSelection } = useAppCommons() || {};\n const isSingleAssetDashboard =\n dashboardMeta &&\n dashboardMeta.v3 &&\n !dashboardMeta.isChiplessDashboard &&\n !dashboardMeta.isMultiAsset &&\n !dashboardMeta.isMultiWell;\n const showAssetChips = !isSingleAssetDashboard && !disableAppAssetSelection;\n\n const [isAppNameTooltipShown, setIsAppNameTooltipShown] = useState(false);\n const titleRef = useRef(null);\n\n const appCoordinatesWidth = coordinates?.pixelWidth;\n\n useEffect(() => {\n setIsAppNameTooltipShown(titleRef.current?.scrollWidth > titleRef.current?.offsetWidth);\n }, [titleRef.current?.offsetWidth, appCoordinatesWidth]);\n\n const appDimension = getAppDimension(appCoordinatesWidth);\n const appName = getAppName(app);\n const segment = getAppSegment(app);\n const isCompletion = segment === SEGMENTS.COMPLETION;\n\n const {\n isPrimaryAssetStatusVisible,\n isPrimaryNameVisible,\n primaryAssetLink,\n primaryAssetName,\n secondaryAssetLink,\n secondaryAssetName,\n } = getAssetLabels({ appSettings: app?.settings, well, rig, fracFleet, segment });\n const isMobileSize = [APP_LAYOUT_SIZES.MEDIUM, APP_LAYOUT_SIZES.SMALL].includes(appDimension);\n const isCLIApp = app && app.id === DEV_CENTER_CLI_APP_ID;\n const padModeProps = {\n fracFleet,\n wells,\n well,\n onSettingChange,\n appSettings,\n disableActiveWellsInPadSelect:\n app?.package?.manifest?.application?.ui?.disableActiveWellsInPadSelect,\n enableSimulFracInPadSelect: app?.package?.manifest?.application?.ui?.enableSimulFracInPadSelect,\n completionAppType: app?.package?.manifest?.application?.ui?.completionAppType,\n };\n\n const jsStyles = useStyles({ isMobileSize });\n\n return (\n <div className={classNames(jsStyles.appHeaderWrapper, classes.appHeader)}>\n <div className={jsStyles.appHeaderContainer}>\n <div className={classNames(jsStyles.titleBlock, classes.titleBlock)}>\n <div className={classes.appHeaderTitleWrapper} ref={titleRef}>\n <div className={jsStyles.titleWrapper}>\n {logoSrc && (\n <>\n <img className={jsStyles.logo} src={logoSrc} alt=\"company logo\" />\n <div className={jsStyles.separateLine} />\n </>\n )}\n <Tooltip title={isAppNameTooltipShown ? appName : ''} placement=\"bottom\">\n <h6 data-testid={`${PAGE_NAME}_name`} className={jsStyles.title}>\n {appName}\n </h6>\n </Tooltip>\n <VersionBadge appPackage={app?.package} />\n </div>\n {badge}\n </div>\n </div>\n\n <div className={jsStyles.rightBlock}>\n {app && coordinates && (\n <div\n className={classNames(styles.controlsContainer, isMaximized && styles.appMaximized)}\n >\n {!isMobileSize && (\n <>\n {!disableAppAssetSelection && isCompletion && activeWellName && (\n <Typography variant=\"caption\">{activeWellName}</Typography>\n )}\n {!disableAppAssetSelection && isCompletion && (\n <PadModeComponent {...padModeProps} />\n )}\n {children}\n </>\n )}\n {showAssetChips && (\n <HideInNativeApp>\n <div className={styles.assetLabels}>\n {secondaryAssetName && (\n <SecondaryAssetNameLabel\n assetName={secondaryAssetName}\n coordinatesPixelWidth={appCoordinatesWidth}\n dataTestId={`${PAGE_NAME}_secondaryAsset`}\n href={!isCLIApp && secondaryAssetLink}\n icon={isCompletion && <PadIcon />}\n isColored={\n !isCompletion ||\n (app.settings.padId && app.settings.padId !== fracFleet.current_pad_id)\n }\n />\n )}\n {isPrimaryNameVisible && (\n <AssetNameLabel\n assetName={primaryAssetName}\n coordinatesPixelWidth={appCoordinatesWidth}\n dataTestId={`${PAGE_NAME}_primaryAsset`}\n href={!isCLIApp && primaryAssetLink}\n statusBadge={isPrimaryAssetStatusVisible && primaryAssetStatusBadge}\n />\n )}\n </div>\n </HideInNativeApp>\n )}\n </div>\n )}\n\n {showLastAnnotation && appLastAnnotation && (\n <LastAnnotation\n annotation={appLastAnnotation}\n appId={get(app, ['app', 'id'])}\n currentUser={currentUser}\n dashboardAppId={app.id}\n openAnnotationsList={openAnnotationsList}\n updateCurrentDashboardAppLastAnnotation={updateCurrentDashboardAppLastAnnotation}\n />\n )}\n\n {rightSideContent && <div className={styles.rightSideContent}>{rightSideContent}</div>}\n </div>\n </div>\n\n {isMobileSize && (\n <Box display=\"flex\" alignItems=\"center\" mt={1}>\n {!disableAppAssetSelection && isCompletion && !well && (wells || fracFleet) && (\n <div className={styles.padModeSelect}>\n <PadModeComponent {...padModeProps} />\n </div>\n )}\n {children}\n </Box>\n )}\n </div>\n );\n}\n\nAppHeader.propTypes = {\n app: PropTypes.object.isRequired, // eslint-disable-line react/forbid-prop-types\n badge: PropTypes.node,\n classes: PropTypes.shape({\n appHeader: PropTypes.string,\n titleBlock: PropTypes.string,\n appHeaderTitleWrapper: PropTypes.string,\n }),\n showLastAnnotation: PropTypes.bool,\n currentUser: PropTypes.shape({}),\n appLastAnnotation: PropTypes.shape({}),\n updateCurrentDashboardAppLastAnnotation: PropTypes.func,\n openAnnotationsList: PropTypes.func,\n rig: PropTypes.shape({\n name: PropTypes.string,\n asset_id: PropTypes.number,\n }),\n well: PropTypes.shape({\n name: PropTypes.string,\n asset_id: PropTypes.number,\n }),\n fracFleet: PropTypes.shape({\n name: PropTypes.string,\n current_pad_id: PropTypes.number,\n pad_frac_fleets: PropTypes.arrayOf(\n PropTypes.shape({\n pad: PropTypes.shape({\n id: PropTypes.number.isRequired,\n name: PropTypes.string,\n }).isRequired,\n })\n ).isRequired,\n }),\n wells: PropTypes.arrayOf(PropTypes.shape({})),\n coordinates: PropTypes.shape({ pixelWidth: PropTypes.number.isRequired }),\n isMaximized: PropTypes.bool,\n appSettings: PropTypes.shape({}),\n onSettingChange: PropTypes.func,\n children: PropTypes.node,\n logoSrc: PropTypes.string,\n primaryAssetStatusBadge: PropTypes.node,\n PadModeComponent: PropTypes.elementType,\n activeWellName: PropTypes.string,\n rightSideContent: PropTypes.node,\n};\n\nAppHeader.defaultProps = {\n appLastAnnotation: null,\n appSettings: null,\n badge: null,\n children: null,\n classes: {},\n coordinates: undefined,\n currentUser: undefined,\n fracFleet: null,\n isMaximized: false,\n logoSrc: null,\n onSettingChange: undefined,\n openAnnotationsList: undefined,\n rig: null,\n showLastAnnotation: true,\n updateCurrentDashboardAppLastAnnotation: () => {},\n well: null,\n wells: null,\n primaryAssetStatusBadge: null,\n PadModeComponent: PadMode,\n activeWellName: null,\n rightSideContent: null,\n};\n\nexport default AppHeader;\n"],"names":["PAGE_NAME","getLinkFromWell","well","asset_id","AppHeader","_ref3","_titleRef$current3","_app$package","_app$package$manifest","_app$package$manifest2","_app$package$manifest3","_app$package2","_app$package2$manifes","_app$package2$manifes2","_app$package2$manifes3","_app$package3","_app$package3$manifes","_app$package3$manifes2","_app$package3$manifes3","app","appLastAnnotation","appSettings","badge","children","classes","coordinates","currentUser","fracFleet","isMaximized","logoSrc","onSettingChange","openAnnotationsList","primaryAssetStatusBadge","rig","showLastAnnotation","updateCurrentDashboardAppLastAnnotation","wells","PadModeComponent","activeWellName","rightSideContent","_ref4","useAppCommons","dashboardMeta","disableAppAssetSelection","showAssetChips","v3","isChiplessDashboard","isMultiAsset","isMultiWell","useState","_useState2","_slicedToArray","_useState","isAppNameTooltipShown","setIsAppNameTooltipShown","titleRef","useRef","appCoordinatesWidth","pixelWidth","useEffect","_titleRef$current","_titleRef$current2","current","scrollWidth","offsetWidth","appDimension","getAppDimension","appName","getAppName","segment","getAppSegment","isCompletion","SEGMENTS","COMPLETION","_getAssetLabels","_ref","_fracFleet$pad_frac_f","_ref$appSettings","isDrilling","DRILLING","wellId","rigId","fracFleetId","padId","pad","pad_frac_fleets","find","_ref2","id","current_pad_id","secondaryAssetName","name","currentPadLink","primaryAssetName","isPrimaryNameVisible","isPrimaryAssetStatusVisible","primaryAssetLink","secondaryAssetLink","concat","getAssetLabels","settings","isMobileSize","APP_LAYOUT_SIZES","MEDIUM","SMALL","includes","isCLIApp","DEV_CENTER_CLI_APP_ID","padModeProps","disableActiveWellsInPadSelect","package","manifest","application","ui","enableSimulFracInPadSelect","completionAppType","jsStyles","useStyles","_jsxs","className","classNames","appHeaderWrapper","appHeader","jsxs","appHeaderContainer","_jsx","jsx","titleBlock","appHeaderTitleWrapper","ref","titleWrapper","_Fragment","logo","src","alt","separateLine","Tooltip","title","placement","VersionBadge","appPackage","rightBlock","styles","controlsContainer","appMaximized","Typography","variant","HideInNativeApp","assetLabels","SecondaryAssetNameLabel","assetName","coordinatesPixelWidth","dataTestId","href","icon","PadIcon","isColored","AssetNameLabel","statusBadge","LastAnnotation","annotation","appId","get","dashboardAppId","Box","display","alignItems","mt","padModeSelect","_objectSpread","propTypes","PropTypes","object","isRequired","node","shape","string","bool","func","number","arrayOf","elementType","defaultProps","undefined","PadMode"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.APPS_DATA_REQUESTS={WELLS:"WELLS",RIGS:"RIGS",FRAC_FLEETS:"FRAC_FLEETS",FRAC_FLEET_WELLS:"FRAC_FLEET_WELLS",PAD_WELLS:"PAD_WELLS"};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.APPS_DATA_REQUESTS={WELLS:"WELLS",RIGS:"RIGS",FRAC_FLEETS:"FRAC_FLEETS",FRAC_FLEET_WELLS:"FRAC_FLEET_WELLS",PAD_WELLS:"PAD_WELLS",INTERVENTION_UNITS:"INTERVENTION_UNITS",INTERVENTION_UNIT_WELLS:"INTERVENTION_UNIT_WELLS"};
|
|
2
2
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["../../../../../../src/components/DevCenter/AppsDataProvider/effects/constants.js"],"sourcesContent":["export const APPS_DATA_REQUESTS = {\n WELLS: 'WELLS',\n RIGS: 'RIGS',\n FRAC_FLEETS: 'FRAC_FLEETS',\n FRAC_FLEET_WELLS: 'FRAC_FLEET_WELLS',\n PAD_WELLS: 'PAD_WELLS',\n};\n"],"names":["WELLS","RIGS","FRAC_FLEETS","FRAC_FLEET_WELLS","PAD_WELLS"],"mappings":"+FAAkC,CAChCA,MAAO,QACPC,KAAM,OACNC,YAAa,cACbC,iBAAkB,mBAClBC,UAAW"}
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../../../../src/components/DevCenter/AppsDataProvider/effects/constants.js"],"sourcesContent":["export const APPS_DATA_REQUESTS = {\n WELLS: 'WELLS',\n RIGS: 'RIGS',\n FRAC_FLEETS: 'FRAC_FLEETS',\n FRAC_FLEET_WELLS: 'FRAC_FLEET_WELLS',\n PAD_WELLS: 'PAD_WELLS',\n INTERVENTION_UNITS: 'INTERVENTION_UNITS',\n INTERVENTION_UNIT_WELLS: 'INTERVENTION_UNIT_WELLS',\n};\n"],"names":["WELLS","RIGS","FRAC_FLEETS","FRAC_FLEET_WELLS","PAD_WELLS","INTERVENTION_UNITS","INTERVENTION_UNIT_WELLS"],"mappings":"+FAAkC,CAChCA,MAAO,QACPC,KAAM,OACNC,YAAa,cACbC,iBAAkB,mBAClBC,UAAW,YACXC,mBAAoB,qBACpBC,wBAAyB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/slicedToArray"),t=require("@babel/runtime/helpers/defineProperty"),r=require("@babel/runtime/helpers/asyncToGenerator"),n=require("@babel/runtime/helpers/toConsumableArray"),a=require("@babel/runtime/regenerator"),i=require("lodash"),s=require("./utils.js"),u=require("./constants.js"),d=require("../../../../constants/assetTypes.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var p=c(e),l=c(t),o=c(r),f=c(n),A=c(a);function S(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?S(Object(r),!0).forEach((function(t){l.default(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):S(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/slicedToArray"),t=require("@babel/runtime/helpers/defineProperty"),r=require("@babel/runtime/helpers/asyncToGenerator"),n=require("@babel/runtime/helpers/toConsumableArray"),a=require("@babel/runtime/regenerator"),i=require("lodash"),s=require("./utils.js"),u=require("./constants.js"),d=require("../../../../constants/assetTypes.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var p=c(e),l=c(t),o=c(r),f=c(n),A=c(a);function S(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?S(Object(r),!0).forEach((function(t){l.default(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):S(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var E=[u.APPS_DATA_REQUESTS.WELLS,u.APPS_DATA_REQUESTS.RIGS,u.APPS_DATA_REQUESTS.FRAC_FLEETS,u.APPS_DATA_REQUESTS.FRAC_FLEET_WELLS,u.APPS_DATA_REQUESTS.PAD_WELLS,u.APPS_DATA_REQUESTS.INTERVENTION_UNITS],T=function(e,t){var r=e.reduce((function(e,r){if(s.isAppWithSettings(r))return e;var n=s.getAppAssetSpecificTypeId(r,"deprecatedAssetId");return e.add(n||t),e}),new Set);return f.default(r)};function _(e,t){return g.apply(this,arguments)}function g(){return(g=o.default(A.default.mark((function e(t,r){var n,a,i,u,c,p,o;return A.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.current.deprecatedAssetData,a=Object.keys(n),(i=t.filter((function(e){return!a.includes(String(e))}))).length){e.next=5;break}return e.abrupt("return",n);case 5:return e.next=7,s.fetchAssetEntitiesByAssetIds(i);case 7:if(u=e.sent){e.next=10;break}return e.abrupt("return",n);case 10:return c={rig:d.ASSET_TYPES.rig.id,well:d.ASSET_TYPES.well.id},p=Object.values(u).flat().reduce((function(e,t){var r=t.data;return e[r.attributes.asset_id]=l.default({},c[r.type],r.id),e}),{}),o=y(y({},n),p),r.current.cachedDeprecatedAssetData=o,e.abrupt("return",o);case 15:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function I(e,t,r){return P.apply(this,arguments)}function P(){return(P=o.default(A.default.mark((function e(t,r,n){var a;return A.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_(T(t,r),n);case 2:return a=e.sent,e.abrupt("return",t.map((function(e){if(s.isAppWithSettings(e))return e;var t=s.getAppAssetSpecificTypeId(e,"deprecatedAssetId");return y(y({},e),{},{settings:a[t||r]})})));case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function h(){return(h=o.default(A.default.mark((function e(t){var r,n,a,d,c,l,o,f,S,T,_,g,P,h,b,v,D,R,m,U,w,F,O,B,L,j,W,N,q,x,Q,k,C,V,G,Y,M;return A.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.apps,n=t.dashboardAssetId,a=t.cache,d=t.updateCache,c=t.requests,l=void 0===c?E:c,e.next=3,I(r,n,a);case 3:return o=e.sent,f=s.prepareDataForResolver(o,a),S=f.appsWellIds,T=f.appsRigIds,_=f.appsFracFleetIds,g=f.appsInterventionUnitIds,P=f.appsFracFleetToFetchWellsIds,h=f.appsPadIds,b=f.uniqueWellIds,v=f.uniqueRigIds,D=f.uniqueFFIds,R=f.uniqueInterventionUnitIds,m=s.getUniqAssetIds(g,[]),U=l.includes(u.APPS_DATA_REQUESTS.INTERVENTION_UNIT_WELLS)?m:R,e.next=9,Promise.all([l.includes(u.APPS_DATA_REQUESTS.WELLS)&&s.fetchWells(b),l.includes(u.APPS_DATA_REQUESTS.RIGS)&&s.fetchRigs(v),l.includes(u.APPS_DATA_REQUESTS.FRAC_FLEETS)&&s.fetchFracFleets(D),l.includes(u.APPS_DATA_REQUESTS.FRAC_FLEET_WELLS)&&s.fetchFracFleetWells(P,r),l.includes(u.APPS_DATA_REQUESTS.PAD_WELLS)&&s.fetchPadWells(h,r),(l.includes(u.APPS_DATA_REQUESTS.INTERVENTION_UNITS)||l.includes(u.APPS_DATA_REQUESTS.INTERVENTION_UNIT_WELLS))&&s.fetchInterventionUnits(U)]);case 9:return w=e.sent,F=p.default(w,6),O=F[0],B=F[1],L=F[2],j=F[3],W=F[4],N=F[5],q=(null==O?void 0:O.data)&&i.keyBy(O.data.map((function(e){var t=i.get(e,"relationships.rig.data.id"),r=i.get(e,"relationships.program.data.id"),n=i.get(e,"relationships.frac_fleet.data.id"),a=i.get(e,"relationships.pad.data.id"),s=O.included.find((function(e){return"rig"===e.type&&e.id===t})),u=O.included.find((function(e){return"program"===e.type&&e.id===r})),d=O.included.find((function(e){return"frac_fleet"===e.type&&e.id===n})),c=O.included.find((function(e){return"pad"===e.type&&e.id===a}));return y(y({},e),{},{rig:y(y({},s),{},{program:u}),fracFleet:d,pad:c})})),"id"),x=(null==B?void 0:B.data)&&i.keyBy(B.data.map((function(e){var t=i.get(e,"relationships.active_well.data.id")||i.get(e,"relationships.last_active_well.data.id"),r=i.get(e,"relationships.program.data.id"),n=B.included.find((function(e){return"well"===e.type&&e.id===t})),a=B.included.find((function(e){return"program"===e.type&&e.id===r}));return y(y({},e),{},{well:n,program:a})})),"id"),Q=L&&i.keyBy(L,"id"),k=(null==N?void 0:N.data)&&i.keyBy(N.data.map((function(e){var t=i.get(e,"relationships.active_well.data.id"),r=N.included.find((function(e){return"well"===e.type&&e.id===t}));return y(y({},e),{},{name:e.attributes.name,well:r})})),"id"),d({wellsById:q||{},rigsById:x||{},fracFleetsById:Q||{},interventionUnitsById:k||{}}),C=s.getAppsDataByWells(S,a.current.wellsById),V=s.getAppsDataByRigs(T,a.current.rigsById),G=s.getAppsDataByFFs(_,a.current.fracFleetsById,j),Y=s.getAppsDataByPads(h,W),M=s.getAppsDataByInterventionUnits(g,a.current.interventionUnitsById,S,a.current.wellsById),e.abrupt("return",i.merge(C,V,G,Y,M));case 28:case"end":return e.stop()}}),e)})))).apply(this,arguments)}exports.getAppSettingsByDeprecatedAssetId=_,exports.getAppsWithUnifiedSettings=I,exports.getDeprecatedAssetIds=T,exports.resolveAppsData=function(e){return h.apply(this,arguments)};
|
|
2
2
|
//# sourceMappingURL=dataResolvers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataResolvers.js","sources":["../../../../../../src/components/DevCenter/AppsDataProvider/effects/dataResolvers.js"],"sourcesContent":["import { get, keyBy, merge } from 'lodash';\n\nimport {\n fetchAssetEntitiesByAssetIds,\n fetchRigs,\n fetchWells,\n fetchFracFleets,\n fetchFracFleetWells,\n fetchPadWells,\n getAppsDataByWells,\n getAppsDataByRigs,\n getAppsDataByFFs,\n getAppsDataByPads,\n prepareDataForResolver,\n getAppAssetSpecificTypeId,\n isAppWithSettings,\n fetchInterventionUnits,\n getAppsDataByInterventionUnits,\n} from './utils';\nimport { APPS_DATA_REQUESTS } from './constants';\n\nimport { ASSET_TYPES } from '~/constants/assetTypes';\n\nconst DEFAULT_REQUESTS = [\n APPS_DATA_REQUESTS.WELLS,\n APPS_DATA_REQUESTS.RIGS,\n APPS_DATA_REQUESTS.FRAC_FLEETS,\n APPS_DATA_REQUESTS.FRAC_FLEET_WELLS,\n APPS_DATA_REQUESTS.PAD_WELLS,\n APPS_DATA_REQUESTS.INTERVENTION_UNITS,\n];\n\nexport const getDeprecatedAssetIds = (apps, dashboardAssetId) => {\n const uniqueIds = apps.reduce((acc, app) => {\n if (isAppWithSettings(app)) return acc;\n\n const deprecatedAssetId = getAppAssetSpecificTypeId(app, 'deprecatedAssetId');\n acc.add(deprecatedAssetId || dashboardAssetId);\n\n return acc;\n }, new Set());\n\n return [...uniqueIds];\n};\n\nexport async function getAppSettingsByDeprecatedAssetId(deprecatedAssetIds, cache) {\n const { deprecatedAssetData: cachedDeprecatedAssetData } = cache.current;\n const cachedDeprecatedAssetIds = Object.keys(cachedDeprecatedAssetData);\n const notResolvedDeprecatedAssetIds = deprecatedAssetIds.filter(\n deprecatedAssetId => !cachedDeprecatedAssetIds.includes(String(deprecatedAssetId))\n );\n\n if (!notResolvedDeprecatedAssetIds.length) return cachedDeprecatedAssetData;\n\n const assetsData = await fetchAssetEntitiesByAssetIds(notResolvedDeprecatedAssetIds);\n\n if (!assetsData) return cachedDeprecatedAssetData;\n\n const MAP_DEPRECATED_ASSET_TYPE_TO_APP_SETTINGS = {\n rig: ASSET_TYPES.rig.id,\n well: ASSET_TYPES.well.id,\n };\n\n const dataByDeprecatedAssetId = Object.values(assetsData)\n .flat()\n .reduce((acc, { data }) => {\n acc[data.attributes.asset_id] = {\n [MAP_DEPRECATED_ASSET_TYPE_TO_APP_SETTINGS[data.type]]: data.id,\n };\n return acc;\n }, {});\n\n const updatedCachedDeprecatedAssetData = {\n ...cachedDeprecatedAssetData,\n ...dataByDeprecatedAssetId,\n };\n // eslint-disable-next-line no-param-reassign\n cache.current.cachedDeprecatedAssetData = updatedCachedDeprecatedAssetData;\n\n return updatedCachedDeprecatedAssetData;\n}\n\n// NOTE: converts feed page apps and asset page apps deprecated asset ids to regular rigId/wellId in app settings\nexport async function getAppsWithUnifiedSettings(apps, dashboardAssetId, cache) {\n const appSettingsByDeprecatedAssetId = await getAppSettingsByDeprecatedAssetId(\n getDeprecatedAssetIds(apps, dashboardAssetId),\n cache\n );\n\n return apps.map(app => {\n if (isAppWithSettings(app)) return app;\n\n const appDeprecatedAssetId = getAppAssetSpecificTypeId(app, 'deprecatedAssetId');\n\n return {\n ...app,\n settings: appSettingsByDeprecatedAssetId[appDeprecatedAssetId || dashboardAssetId],\n };\n });\n}\n\nexport async function resolveAppsData({\n apps,\n dashboardAssetId,\n cache,\n updateCache,\n requests = DEFAULT_REQUESTS,\n}) {\n const unifiedApps = await getAppsWithUnifiedSettings(apps, dashboardAssetId, cache);\n const {\n appsWellIds,\n appsRigIds,\n appsFracFleetIds,\n appsInterventionUnitIds,\n appsFracFleetToFetchWellsIds,\n appsPadIds,\n uniqueWellIds,\n uniqueRigIds,\n uniqueFFIds,\n uniqueInterventionUnitIds,\n } = prepareDataForResolver(unifiedApps, cache);\n\n const [\n wellsResponse,\n rigsResponse,\n ffsResponse,\n ffWellsData,\n padWellsData,\n interventionUnitsResponse,\n ] = await Promise.all([\n requests.includes(APPS_DATA_REQUESTS.WELLS) && fetchWells(uniqueWellIds),\n requests.includes(APPS_DATA_REQUESTS.RIGS) && fetchRigs(uniqueRigIds),\n requests.includes(APPS_DATA_REQUESTS.FRAC_FLEETS) && fetchFracFleets(uniqueFFIds),\n requests.includes(APPS_DATA_REQUESTS.FRAC_FLEET_WELLS) &&\n fetchFracFleetWells(appsFracFleetToFetchWellsIds, apps),\n requests.includes(APPS_DATA_REQUESTS.PAD_WELLS) && fetchPadWells(appsPadIds, apps),\n requests.includes(APPS_DATA_REQUESTS.INTERVENTION_UNITS) &&\n fetchInterventionUnits(uniqueInterventionUnitIds),\n ]);\n\n const fetchedWellsById =\n wellsResponse?.data &&\n keyBy(\n wellsResponse.data.map(well => {\n const rigId = get(well, 'relationships.rig.data.id');\n const programId = get(well, 'relationships.program.data.id');\n const fracFleetId = get(well, 'relationships.frac_fleet.data.id');\n const padId = get(well, 'relationships.pad.data.id');\n\n const rig = wellsResponse.included.find(item => item.type === 'rig' && item.id === rigId);\n const program = wellsResponse.included.find(\n item => item.type === 'program' && item.id === programId\n );\n const fracFleet = wellsResponse.included.find(\n item => item.type === 'frac_fleet' && item.id === fracFleetId\n );\n const pad = wellsResponse.included.find(item => item.type === 'pad' && item.id === padId);\n\n return { ...well, rig: { ...rig, program }, fracFleet, pad };\n }),\n 'id'\n );\n const fetchedRigsById =\n rigsResponse?.data &&\n keyBy(\n rigsResponse.data.map(rig => {\n const wellId =\n get(rig, 'relationships.active_well.data.id') ||\n get(rig, 'relationships.last_active_well.data.id');\n const programId = get(rig, 'relationships.program.data.id');\n const well = rigsResponse.included.find(item => item.type === 'well' && item.id === wellId);\n const program = rigsResponse.included.find(\n item => item.type === 'program' && item.id === programId\n );\n return { ...rig, well, program };\n }),\n 'id'\n );\n const fetchedFFsById = ffsResponse && keyBy(ffsResponse, 'id');\n const fetchedInterventionUnitsById =\n interventionUnitsResponse?.data &&\n keyBy(\n interventionUnitsResponse.data.map(interventionUnit => {\n const wellId = get(interventionUnit, 'relationships.active_well.data.id');\n const well = interventionUnitsResponse.included.find(\n item => item.type === 'well' && item.id === wellId\n );\n\n return {\n ...interventionUnit,\n name: interventionUnit.attributes.name,\n well,\n };\n }),\n 'id'\n );\n\n updateCache({\n wellsById: fetchedWellsById || {},\n rigsById: fetchedRigsById || {},\n fracFleetsById: fetchedFFsById || {},\n interventionUnitsById: fetchedInterventionUnitsById || {},\n });\n\n const appsDataByWells = getAppsDataByWells(appsWellIds, cache.current.wellsById);\n const appsDataByRigs = getAppsDataByRigs(appsRigIds, cache.current.rigsById);\n\n const appsDataByFFs = getAppsDataByFFs(\n appsFracFleetIds,\n cache.current.fracFleetsById,\n ffWellsData\n );\n const appsDataByPads = getAppsDataByPads(appsPadIds, padWellsData);\n const appsDataByInterventionUnits = getAppsDataByInterventionUnits(\n appsInterventionUnitIds,\n cache.current.interventionUnitsById,\n appsWellIds,\n cache.current.wellsById\n );\n\n return merge(\n appsDataByWells,\n appsDataByRigs,\n appsDataByFFs,\n appsDataByPads,\n appsDataByInterventionUnits\n );\n}\n"],"names":["DEFAULT_REQUESTS","APPS_DATA_REQUESTS","WELLS","RIGS","FRAC_FLEETS","FRAC_FLEET_WELLS","PAD_WELLS","INTERVENTION_UNITS","getDeprecatedAssetIds","apps","dashboardAssetId","uniqueIds","reduce","acc","app","isAppWithSettings","deprecatedAssetId","getAppAssetSpecificTypeId","add","Set","_toConsumableArray","getAppSettingsByDeprecatedAssetId","_x","_x2","_getAppSettingsByDeprecatedAssetId","apply","this","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","deprecatedAssetIds","cache","cachedDeprecatedAssetData","cachedDeprecatedAssetIds","notResolvedDeprecatedAssetIds","assetsData","MAP_DEPRECATED_ASSET_TYPE_TO_APP_SETTINGS","dataByDeprecatedAssetId","updatedCachedDeprecatedAssetData","wrap","_context","prev","next","current","deprecatedAssetData","Object","keys","filter","includes","String","length","abrupt","fetchAssetEntitiesByAssetIds","sent","rig","ASSET_TYPES","id","well","values","flat","_ref2","data","attributes","asset_id","type","stop","getAppsWithUnifiedSettings","_x3","_x4","_x5","_getAppsWithUnifiedSettings","appSettingsByDeprecatedAssetId","_context2","map","appDeprecatedAssetId","_objectSpread","settings","_callee2","_resolveAppsData","_callee3","_ref","updateCache","_ref$requests","requests","unifiedApps","_prepareDataForResolv","appsWellIds","appsRigIds","appsFracFleetIds","appsInterventionUnitIds","appsFracFleetToFetchWellsIds","appsPadIds","uniqueWellIds","uniqueRigIds","uniqueFFIds","uniqueInterventionUnitIds","_yield$Promise$all","_yield$Promise$all2","wellsResponse","rigsResponse","ffsResponse","ffWellsData","padWellsData","interventionUnitsResponse","fetchedWellsById","fetchedRigsById","fetchedFFsById","fetchedInterventionUnitsById","appsDataByWells","appsDataByRigs","appsDataByFFs","appsDataByPads","appsDataByInterventionUnits","_context3","prepareDataForResolver","Promise","all","fetchWells","fetchRigs","fetchFracFleets","fetchFracFleetWells","fetchPadWells","fetchInterventionUnits","_slicedToArray","keyBy","rigId","get","programId","fracFleetId","padId","included","find","item","program","fracFleet","pad","wellId","interventionUnit","name","wellsById","rigsById","fracFleetsById","interventionUnitsById","getAppsDataByWells","getAppsDataByRigs","getAppsDataByFFs","getAppsDataByPads","getAppsDataByInterventionUnits","merge","_x6"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dataResolvers.js","sources":["../../../../../../src/components/DevCenter/AppsDataProvider/effects/dataResolvers.js"],"sourcesContent":["import { get, keyBy, merge } from 'lodash';\n\nimport {\n fetchAssetEntitiesByAssetIds,\n fetchRigs,\n fetchWells,\n fetchFracFleets,\n fetchFracFleetWells,\n fetchPadWells,\n getAppsDataByWells,\n getAppsDataByRigs,\n getAppsDataByFFs,\n getAppsDataByPads,\n prepareDataForResolver,\n getAppAssetSpecificTypeId,\n isAppWithSettings,\n fetchInterventionUnits,\n getAppsDataByInterventionUnits,\n getUniqAssetIds,\n} from './utils';\nimport { APPS_DATA_REQUESTS } from './constants';\n\nimport { ASSET_TYPES } from '~/constants/assetTypes';\n\nconst DEFAULT_REQUESTS = [\n APPS_DATA_REQUESTS.WELLS,\n APPS_DATA_REQUESTS.RIGS,\n APPS_DATA_REQUESTS.FRAC_FLEETS,\n APPS_DATA_REQUESTS.FRAC_FLEET_WELLS,\n APPS_DATA_REQUESTS.PAD_WELLS,\n APPS_DATA_REQUESTS.INTERVENTION_UNITS,\n];\n\nexport const getDeprecatedAssetIds = (apps, dashboardAssetId) => {\n const uniqueIds = apps.reduce((acc, app) => {\n if (isAppWithSettings(app)) return acc;\n\n const deprecatedAssetId = getAppAssetSpecificTypeId(app, 'deprecatedAssetId');\n acc.add(deprecatedAssetId || dashboardAssetId);\n\n return acc;\n }, new Set());\n\n return [...uniqueIds];\n};\n\nexport async function getAppSettingsByDeprecatedAssetId(deprecatedAssetIds, cache) {\n const { deprecatedAssetData: cachedDeprecatedAssetData } = cache.current;\n const cachedDeprecatedAssetIds = Object.keys(cachedDeprecatedAssetData);\n const notResolvedDeprecatedAssetIds = deprecatedAssetIds.filter(\n deprecatedAssetId => !cachedDeprecatedAssetIds.includes(String(deprecatedAssetId))\n );\n\n if (!notResolvedDeprecatedAssetIds.length) return cachedDeprecatedAssetData;\n\n const assetsData = await fetchAssetEntitiesByAssetIds(notResolvedDeprecatedAssetIds);\n\n if (!assetsData) return cachedDeprecatedAssetData;\n\n const MAP_DEPRECATED_ASSET_TYPE_TO_APP_SETTINGS = {\n rig: ASSET_TYPES.rig.id,\n well: ASSET_TYPES.well.id,\n };\n\n const dataByDeprecatedAssetId = Object.values(assetsData)\n .flat()\n .reduce((acc, { data }) => {\n acc[data.attributes.asset_id] = {\n [MAP_DEPRECATED_ASSET_TYPE_TO_APP_SETTINGS[data.type]]: data.id,\n };\n return acc;\n }, {});\n\n const updatedCachedDeprecatedAssetData = {\n ...cachedDeprecatedAssetData,\n ...dataByDeprecatedAssetId,\n };\n // eslint-disable-next-line no-param-reassign\n cache.current.cachedDeprecatedAssetData = updatedCachedDeprecatedAssetData;\n\n return updatedCachedDeprecatedAssetData;\n}\n\n// NOTE: converts feed page apps and asset page apps deprecated asset ids to regular rigId/wellId in app settings\nexport async function getAppsWithUnifiedSettings(apps, dashboardAssetId, cache) {\n const appSettingsByDeprecatedAssetId = await getAppSettingsByDeprecatedAssetId(\n getDeprecatedAssetIds(apps, dashboardAssetId),\n cache\n );\n\n return apps.map(app => {\n if (isAppWithSettings(app)) return app;\n\n const appDeprecatedAssetId = getAppAssetSpecificTypeId(app, 'deprecatedAssetId');\n\n return {\n ...app,\n settings: appSettingsByDeprecatedAssetId[appDeprecatedAssetId || dashboardAssetId],\n };\n });\n}\n\nexport async function resolveAppsData({\n apps,\n dashboardAssetId,\n cache,\n updateCache,\n requests = DEFAULT_REQUESTS,\n}) {\n const unifiedApps = await getAppsWithUnifiedSettings(apps, dashboardAssetId, cache);\n const {\n appsWellIds,\n appsRigIds,\n appsFracFleetIds,\n appsInterventionUnitIds,\n appsFracFleetToFetchWellsIds,\n appsPadIds,\n uniqueWellIds,\n uniqueRigIds,\n uniqueFFIds,\n uniqueInterventionUnitIds,\n } = prepareDataForResolver(unifiedApps, cache);\n\n // NOTE: Non-cache-filtered IDs for intervention unit wells refresh\n const allInterventionUnitIds = getUniqAssetIds(appsInterventionUnitIds, []);\n const interventionUnitIdsToFetch = requests.includes(APPS_DATA_REQUESTS.INTERVENTION_UNIT_WELLS)\n ? allInterventionUnitIds\n : uniqueInterventionUnitIds;\n\n const [\n wellsResponse,\n rigsResponse,\n ffsResponse,\n ffWellsData,\n padWellsData,\n interventionUnitsResponse,\n ] = await Promise.all([\n requests.includes(APPS_DATA_REQUESTS.WELLS) && fetchWells(uniqueWellIds),\n requests.includes(APPS_DATA_REQUESTS.RIGS) && fetchRigs(uniqueRigIds),\n requests.includes(APPS_DATA_REQUESTS.FRAC_FLEETS) && fetchFracFleets(uniqueFFIds),\n requests.includes(APPS_DATA_REQUESTS.FRAC_FLEET_WELLS) &&\n fetchFracFleetWells(appsFracFleetToFetchWellsIds, apps),\n requests.includes(APPS_DATA_REQUESTS.PAD_WELLS) && fetchPadWells(appsPadIds, apps),\n (requests.includes(APPS_DATA_REQUESTS.INTERVENTION_UNITS) ||\n requests.includes(APPS_DATA_REQUESTS.INTERVENTION_UNIT_WELLS)) &&\n fetchInterventionUnits(interventionUnitIdsToFetch),\n ]);\n\n const fetchedWellsById =\n wellsResponse?.data &&\n keyBy(\n wellsResponse.data.map(well => {\n const rigId = get(well, 'relationships.rig.data.id');\n const programId = get(well, 'relationships.program.data.id');\n const fracFleetId = get(well, 'relationships.frac_fleet.data.id');\n const padId = get(well, 'relationships.pad.data.id');\n\n const rig = wellsResponse.included.find(item => item.type === 'rig' && item.id === rigId);\n const program = wellsResponse.included.find(\n item => item.type === 'program' && item.id === programId\n );\n const fracFleet = wellsResponse.included.find(\n item => item.type === 'frac_fleet' && item.id === fracFleetId\n );\n const pad = wellsResponse.included.find(item => item.type === 'pad' && item.id === padId);\n\n return { ...well, rig: { ...rig, program }, fracFleet, pad };\n }),\n 'id'\n );\n const fetchedRigsById =\n rigsResponse?.data &&\n keyBy(\n rigsResponse.data.map(rig => {\n const wellId =\n get(rig, 'relationships.active_well.data.id') ||\n get(rig, 'relationships.last_active_well.data.id');\n const programId = get(rig, 'relationships.program.data.id');\n const well = rigsResponse.included.find(item => item.type === 'well' && item.id === wellId);\n const program = rigsResponse.included.find(\n item => item.type === 'program' && item.id === programId\n );\n return { ...rig, well, program };\n }),\n 'id'\n );\n const fetchedFFsById = ffsResponse && keyBy(ffsResponse, 'id');\n const fetchedInterventionUnitsById =\n interventionUnitsResponse?.data &&\n keyBy(\n interventionUnitsResponse.data.map(interventionUnit => {\n const wellId = get(interventionUnit, 'relationships.active_well.data.id');\n const well = interventionUnitsResponse.included.find(\n item => item.type === 'well' && item.id === wellId\n );\n\n return {\n ...interventionUnit,\n name: interventionUnit.attributes.name,\n well,\n };\n }),\n 'id'\n );\n\n updateCache({\n wellsById: fetchedWellsById || {},\n rigsById: fetchedRigsById || {},\n fracFleetsById: fetchedFFsById || {},\n interventionUnitsById: fetchedInterventionUnitsById || {},\n });\n\n const appsDataByWells = getAppsDataByWells(appsWellIds, cache.current.wellsById);\n const appsDataByRigs = getAppsDataByRigs(appsRigIds, cache.current.rigsById);\n\n const appsDataByFFs = getAppsDataByFFs(\n appsFracFleetIds,\n cache.current.fracFleetsById,\n ffWellsData\n );\n const appsDataByPads = getAppsDataByPads(appsPadIds, padWellsData);\n const appsDataByInterventionUnits = getAppsDataByInterventionUnits(\n appsInterventionUnitIds,\n cache.current.interventionUnitsById,\n appsWellIds,\n cache.current.wellsById\n );\n\n return merge(\n appsDataByWells,\n appsDataByRigs,\n appsDataByFFs,\n appsDataByPads,\n appsDataByInterventionUnits\n );\n}\n"],"names":["DEFAULT_REQUESTS","APPS_DATA_REQUESTS","WELLS","RIGS","FRAC_FLEETS","FRAC_FLEET_WELLS","PAD_WELLS","INTERVENTION_UNITS","getDeprecatedAssetIds","apps","dashboardAssetId","uniqueIds","reduce","acc","app","isAppWithSettings","deprecatedAssetId","getAppAssetSpecificTypeId","add","Set","_toConsumableArray","getAppSettingsByDeprecatedAssetId","_x","_x2","_getAppSettingsByDeprecatedAssetId","apply","this","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","deprecatedAssetIds","cache","cachedDeprecatedAssetData","cachedDeprecatedAssetIds","notResolvedDeprecatedAssetIds","assetsData","MAP_DEPRECATED_ASSET_TYPE_TO_APP_SETTINGS","dataByDeprecatedAssetId","updatedCachedDeprecatedAssetData","wrap","_context","prev","next","current","deprecatedAssetData","Object","keys","filter","includes","String","length","abrupt","fetchAssetEntitiesByAssetIds","sent","rig","ASSET_TYPES","id","well","values","flat","_ref2","data","attributes","asset_id","type","stop","getAppsWithUnifiedSettings","_x3","_x4","_x5","_getAppsWithUnifiedSettings","appSettingsByDeprecatedAssetId","_context2","map","appDeprecatedAssetId","_objectSpread","settings","_callee2","_resolveAppsData","_callee3","_ref","updateCache","_ref$requests","requests","unifiedApps","_prepareDataForResolv","appsWellIds","appsRigIds","appsFracFleetIds","appsInterventionUnitIds","appsFracFleetToFetchWellsIds","appsPadIds","uniqueWellIds","uniqueRigIds","uniqueFFIds","uniqueInterventionUnitIds","allInterventionUnitIds","interventionUnitIdsToFetch","_yield$Promise$all","_yield$Promise$all2","wellsResponse","rigsResponse","ffsResponse","ffWellsData","padWellsData","interventionUnitsResponse","fetchedWellsById","fetchedRigsById","fetchedFFsById","fetchedInterventionUnitsById","appsDataByWells","appsDataByRigs","appsDataByFFs","appsDataByPads","appsDataByInterventionUnits","_context3","prepareDataForResolver","getUniqAssetIds","INTERVENTION_UNIT_WELLS","Promise","all","fetchWells","fetchRigs","fetchFracFleets","fetchFracFleetWells","fetchPadWells","fetchInterventionUnits","_slicedToArray","keyBy","rigId","get","programId","fracFleetId","padId","included","find","item","program","fracFleet","pad","wellId","interventionUnit","name","wellsById","rigsById","fracFleetsById","interventionUnitsById","getAppsDataByWells","getAppsDataByRigs","getAppsDataByFFs","getAppsDataByPads","getAppsDataByInterventionUnits","merge","_x6"],"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"),
|
|
1
|
+
"use strict";var e=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/slicedToArray"),n=require("@babel/runtime/regenerator"),u=require("react"),i=require("lodash"),a=require("./utils.js"),s=require("./dataResolvers.js"),c=require("../../../../utils/devcenter.js"),o=require("./constants.js");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var f=l(e),p=l(r),d=l(t),v=l(n);function h(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function b(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?h(Object(t),!0).forEach((function(r){p.default(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):h(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}module.exports=function(e){var r=e.apps,t=e.dashboardAssetId,n=u.useState({}),l=d.default(n,2),p=l[0],h=l[1],g=u.useRef(),A=u.useRef(),y=u.useRef({}),O=u.useRef({wellsById:{},rigsById:{},fracFleetsById:{},interventionUnitsById:{},deprecatedAssetData:{}}),j=r.reduce((function(e,r){var t=i.get(r,["app","ui_settings","multi_rig"]);return c.isDevCenterApp(r)&&!t&&e.push(b(b({},r),{},{appHash:a.getAppHash(r)})),e}),[]),E=function(e){return h((function(r){return i.mapValues(r,(function(r){var t=e[r.id]||{};return b(b(b({},r),t),{},{isLoading:!1})}))}))},S=function(e){O.current=i.merge(O.current,e)};u.useEffect((function(){var e=Object.values(p);if(j.length||e.length)if(j.length<e.length){var r=i.keyBy(j,"id"),n=e.find((function(e){return!r[e.id]})).id;h((function(e){return i.omit(e,n)}))}else{var u=j.filter((function(e){return!p[e.id]||p[e.id].appHash!==e.appHash}));h((function(e){return b(b({},e),a.getInitialAppsDataState(u))})),s.resolveAppsData({apps:j,dashboardAssetId:t,cache:O,updateCache:S}).then(E)}}),[String(j.map((function(e){return e.appHash}))),t]),y.current={apps:j,dashboardAssetId:t,cache:O,updateCache:S},u.useEffect((function(){return g.current=setInterval((function(){s.resolveAppsData(b(b({},y.current),{},{requests:[o.APPS_DATA_REQUESTS.FRAC_FLEET_WELLS,o.APPS_DATA_REQUESTS.PAD_WELLS]})).then(E)}),3e5),function(){return clearInterval(g.current)}}),[]);var m=j.some(a.isAppNeedingInterventionUnitWellRefresh);return u.useEffect((function(){if(m)return A.current=setInterval(f.default(v.default.mark((function e(){var r,t,n;return v.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=y.current.apps,t=new Set(r.filter(a.isAppNeedingInterventionUnitWellRefresh).map((function(e){return e.id}))),e.next=4,s.resolveAppsData(b(b({},y.current),{},{requests:[o.APPS_DATA_REQUESTS.INTERVENTION_UNIT_WELLS]}));case 4:n=e.sent,h((function(e){var r=Object.entries(e);return r.some((function(e){var r,u,i=d.default(e,2),a=i[0],s=i[1];if(!t.has(a))return!1;var c=n[a];return!!c&&(null===(r=c.well)||void 0===r?void 0:r.id)!==(null===(u=s.well)||void 0===u?void 0:u.id)}))?r.reduce((function(e,r){var u,i,a=d.default(r,2),s=a[0],c=a[1];if(!t.has(s))return e[s]=c,e;var o=n[s];return o&&(null===(u=o.well)||void 0===u?void 0:u.id)!==(null===(i=c.well)||void 0===i?void 0:i.id)?(e[s]=b(b(b({},c),o),{},{isLoading:!1}),e):(e[s]=c,e)}),{}):e}));case 6:case"end":return e.stop()}}),e)}))),3e5),function(){return clearInterval(A.current)}}),[m]),p};
|
|
2
2
|
//# sourceMappingURL=useAppsData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAppsData.js","sources":["../../../../../../src/components/DevCenter/AppsDataProvider/effects/useAppsData.js"],"sourcesContent":["import { useState, useEffect, useRef } from 'react';\nimport { mapValues, get, keyBy, omit, merge } from 'lodash';\n\nimport {
|
|
1
|
+
{"version":3,"file":"useAppsData.js","sources":["../../../../../../src/components/DevCenter/AppsDataProvider/effects/useAppsData.js"],"sourcesContent":["import { useState, useEffect, useRef } from 'react';\nimport { mapValues, get, keyBy, omit, merge } from 'lodash';\n\nimport {\n getInitialAppsDataState,\n getAppHash,\n isAppNeedingInterventionUnitWellRefresh,\n} from './utils';\nimport { resolveAppsData } from './dataResolvers';\n\nimport { isDevCenterApp } from '~/utils/devcenter';\nimport { APPS_DATA_REQUESTS } from '~/components/DevCenter/AppsDataProvider/effects/constants';\n\nconst MINUTE = 60_000;\nconst FRAC_FLEETS_REFRESH_INTERVAL = 5 * MINUTE;\nconst INTERVENTION_UNITS_REFRESH_INTERVAL = 5 * MINUTE;\n\nfunction useAppsData({ apps: allApps, dashboardAssetId }) {\n const [appsData, setAppsData] = useState({});\n const refreshFracFleetsInterval = useRef();\n const refreshInterventionUnitsInterval = useRef();\n const resolveAppsDataParamsRef = useRef({});\n\n const cache = useRef({\n wellsById: {},\n rigsById: {},\n fracFleetsById: {},\n interventionUnitsById: {},\n deprecatedAssetData: {},\n });\n\n const apps = allApps.reduce((acc, app) => {\n const isMultiRig = get(app, ['app', 'ui_settings', 'multi_rig']);\n\n if (isDevCenterApp(app) && !isMultiRig) acc.push({ ...app, appHash: getAppHash(app) });\n return acc;\n }, []);\n\n const handleResolvedAppsData = resolvedAppsData =>\n setAppsData(prevAppsData =>\n mapValues(prevAppsData, prevAppData => {\n const appData = resolvedAppsData[prevAppData.id] || {};\n\n return {\n ...prevAppData,\n ...appData,\n isLoading: false,\n };\n })\n );\n\n const updateCache = updates => {\n cache.current = merge(cache.current, updates);\n };\n\n useEffect(() => {\n const appsDataValues = Object.values(appsData);\n\n // NOTE: empty dashboard\n if (!apps.length && !appsDataValues.length) {\n return;\n }\n\n // NOTE: app was removed from db\n if (apps.length < appsDataValues.length) {\n const appsById = keyBy(apps, 'id');\n const removedAppId = appsDataValues.find(appData => !appsById[appData.id]).id;\n setAppsData(prevAppsData => omit(prevAppsData, removedAppId));\n return;\n }\n\n const changedApps = apps.filter(\n app => !appsData[app.id] || appsData[app.id].appHash !== app.appHash\n );\n setAppsData(prevAppsData => ({ ...prevAppsData, ...getInitialAppsDataState(changedApps) }));\n resolveAppsData({ apps, dashboardAssetId, cache, updateCache }).then(handleResolvedAppsData);\n }, [String(apps.map(({ appHash }) => appHash)), dashboardAssetId]);\n\n // NOTE: Keep this data in ref to avoid closure in setInterval\n resolveAppsDataParamsRef.current = { apps, dashboardAssetId, cache, updateCache };\n\n useEffect(() => {\n // NOTE: Refresh fracfleet wells and pad wells every 5 minutes\n refreshFracFleetsInterval.current = setInterval(() => {\n resolveAppsData({\n ...resolveAppsDataParamsRef.current,\n requests: [APPS_DATA_REQUESTS.FRAC_FLEET_WELLS, APPS_DATA_REQUESTS.PAD_WELLS],\n }).then(handleResolvedAppsData);\n }, FRAC_FLEETS_REFRESH_INTERVAL);\n\n return () => clearInterval(refreshFracFleetsInterval.current);\n }, []);\n\n const hasAppsNeedingInterventionUnitRefresh = apps.some(isAppNeedingInterventionUnitWellRefresh);\n\n useEffect(() => {\n if (!hasAppsNeedingInterventionUnitRefresh) return;\n\n refreshInterventionUnitsInterval.current = setInterval(async () => {\n const currentApps = resolveAppsDataParamsRef.current.apps;\n const interventionUnitAppIds = new Set(\n currentApps.filter(isAppNeedingInterventionUnitWellRefresh).map(app => app.id)\n );\n\n const resolvedAppsData = await resolveAppsData({\n ...resolveAppsDataParamsRef.current,\n requests: [APPS_DATA_REQUESTS.INTERVENTION_UNIT_WELLS],\n });\n\n setAppsData(prevAppsData => {\n const entries = Object.entries(prevAppsData);\n const hasChanges = entries.some(([appId, prevAppData]) => {\n if (!interventionUnitAppIds.has(appId)) return false;\n const newData = resolvedAppsData[appId];\n if (!newData) return false;\n return newData.well?.id !== prevAppData.well?.id;\n });\n\n if (!hasChanges) return prevAppsData;\n\n return entries.reduce((acc, [appId, prevAppData]) => {\n if (!interventionUnitAppIds.has(appId)) {\n acc[appId] = prevAppData;\n return acc;\n }\n\n const newData = resolvedAppsData[appId];\n if (!newData || newData.well?.id === prevAppData.well?.id) {\n acc[appId] = prevAppData;\n return acc;\n }\n\n acc[appId] = { ...prevAppData, ...newData, isLoading: false };\n return acc;\n }, {});\n });\n }, INTERVENTION_UNITS_REFRESH_INTERVAL);\n\n // eslint-disable-next-line consistent-return\n return () => clearInterval(refreshInterventionUnitsInterval.current);\n }, [hasAppsNeedingInterventionUnitRefresh]);\n\n return appsData;\n}\n\nexport default useAppsData;\n"],"names":["_ref","allApps","apps","dashboardAssetId","_useState","useState","_useState2","_slicedToArray","appsData","setAppsData","refreshFracFleetsInterval","useRef","refreshInterventionUnitsInterval","resolveAppsDataParamsRef","cache","wellsById","rigsById","fracFleetsById","interventionUnitsById","deprecatedAssetData","reduce","acc","app","isMultiRig","get","isDevCenterApp","push","_objectSpread","appHash","getAppHash","handleResolvedAppsData","resolvedAppsData","prevAppsData","mapValues","prevAppData","appData","id","isLoading","updateCache","updates","current","merge","useEffect","appsDataValues","Object","values","length","appsById","keyBy","removedAppId","find","omit","changedApps","filter","getInitialAppsDataState","resolveAppsData","then","String","map","_ref2","setInterval","requests","APPS_DATA_REQUESTS","FRAC_FLEET_WELLS","PAD_WELLS","clearInterval","hasAppsNeedingInterventionUnitRefresh","some","isAppNeedingInterventionUnitWellRefresh","_asyncToGenerator","_regeneratorRuntime","mark","_callee","currentApps","interventionUnitAppIds","wrap","_context","prev","next","Set","INTERVENTION_UNIT_WELLS","sent","entries","_ref4","_newData$well","_prevAppData$well","_ref5","appId","has","newData","well","_ref6","_newData$well2","_prevAppData$well2","_ref7","stop"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/helpers/slicedToArray"),n=require("@babel/runtime/regenerator"),a=require("jsona"),u=require("lodash"),i=require("../../../../clients/jsonApi/index.js"),l=require("../../../../constants/devcenter.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");var s=require("../../../../constants/assetTypes.js");require("../../../../constants/corvaCompanyId.js"),require("../../../GradientManager/configuration/constants.js");var c=require("../../../../utils/devcenter.js");function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=p(e),d=p(t),f=p(r),g=p(n);function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function _(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?v(Object(r),!0).forEach((function(t){o.default(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):v(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var h=new(p(a).default),m=function(e,t){return+u.get(e,["settings",t])},y=function(e,t){return u.uniq(e.map((function(e){var t=f.default(e,2);return t[0],t[1]})).filter((function(e){return Number.isFinite(e)&&!t.includes(String(e))})))};function w(){return(w=d.default(g.default.mark((function e(t){return g.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,i.getWells({ids:t,fields:["well.name","well.settings","well.company","well.asset_id","well.last_active_at","well.program","well.pad","well.frac_fleet","well.id","well.rig","rig.name","rig.asset_id","company.id","well.status","well.archivation","well.lon_lat"],include_arhivation_data:!0});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function b(){return(b=d.default(g.default.mark((function e(t){return g.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,i.getRigs({ids:t,fields:["rig.name","rig.settings","rig.asset_id","rig.active_well","rig.last_active_well","well.name","well.settings","well.company","rig.program","well.asset_id","well.last_active_at","well.id","well.company.id","well.lon_lat"]});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function S(){return(S=d.default(g.default.mark((function e(t){return g.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,i.getResolvedAssets({assets:t});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}var x=function(e,t,r){return _(_({well:e&&_(_({},e.attributes),{},{id:e.id,companyId:u.get(e,"relationships.company.data.id")}),rig:{name:u.get(t,"attributes.name"),id:u.get(t,"id"),asset_id:u.get(t,"attributes.asset_id")},program:{id:u.get(t,"program.id")||null,name:u.get(t,"program.attributes.name")||null}},r&&{interventionUnit:{id:+r.id,name:r.name,active_well:r.active_well}}),{},{completionWellInfo:{pad:{id:u.get(e,"pad.id")||null,name:u.get(e,"pad.attributes.name")||null},fracFleet:{id:u.get(e,"fracFleet.id")||null,name:u.get(e,"fracFleet.attributes.name")||null}}})};function E(){return(E=d.default(g.default.mark((function e(t){var r;return g.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,i.getFracFleets({ids:t,fields:["frac_fleet.name","frac_fleet.pads","frac_fleet.program","frac_fleet.current_pad_id","frac_fleet.pad_frac_fleets","frac_fleet.pad_frac_fleet.frac_fleet_lines"]});case 5:return r=e.sent,e.abrupt("return",r?h.deserialize(r):[]);case 9:return e.prev=9,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",[]);case 13:case"end":return e.stop()}}),e,null,[[2,9]])})))).apply(this,arguments)}function T(){return(T=d.default(g.default.mark((function e(t){return g.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,i.getInterventionUnits({ids:t,fields:["intervention_unit.name","intervention_unit.type","intervention_unit.active_well"]});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function j(){return j=d.default(g.default.mark((function e(t,r){var n,a,s;return g.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=u.keyBy(r,"id"),a=t.map(function(){var e=d.default(g.default.mark((function e(t){var r,a,s,c,p,o;return g.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=f.default(t,2),a=r[0],s=r[1],c={fields:"all",frac_fleet_id:s},p=n[a],a===l.DEV_CENTER_CLI_APP_ID?c.app_key=u.get(p,["app","app_key"]):c.app_id=u.get(p,["app","id"]),e.prev=4,e.next=7,i.getFracFleetWells(c);case 7:return o=e.sent,e.abrupt("return",o?h.deserialize(o):[]);case 11:return e.prev=11,e.t0=e.catch(4),console.error(e.t0),e.abrupt("return",[]);case 15:case"end":return e.stop()}}),e,null,[[4,11]])})));return function(t){return e.apply(this,arguments)}}()),e.next=4,Promise.all(a);case 4:return s=e.sent,e.abrupt("return",s.reduce((function(e,r,n){return e[t[n][0]]=r,e}),{}));case 6:case"end":return e.stop()}}),e)}))),j.apply(this,arguments)}function A(){return A=d.default(g.default.mark((function e(t,r){var n,a,s;return g.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=u.keyBy(r,"id"),a=t.map(function(){var e=d.default(g.default.mark((function e(t){var r,a,s,c,p,o;return g.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=f.default(t,2),a=r[0],s=r[1],c={fields:"all"},p=n[a],a===l.DEV_CENTER_CLI_APP_ID?c.app_key=u.get(p,["app","app_key"]):c.app_id=u.get(p,["app","id"]),e.prev=4,e.next=7,i.getPadWells(s,c);case 7:return o=e.sent,e.abrupt("return",o?h.deserialize(o):[]);case 11:return e.prev=11,e.t0=e.catch(4),console.error(e.t0),e.abrupt("return",[]);case 15:case"end":return e.stop()}}),e,null,[[4,11]])})));return function(t){return e.apply(this,arguments)}}()),e.next=4,Promise.all(a);case 4:return s=e.sent,e.abrupt("return",s.reduce((function(e,r,n){return e[t[n][0]]=r,e}),{}));case 6:case"end":return e.stop()}}),e)}))),A.apply(this,arguments)}var P=function(e){return[e.id,m(e,s.ASSET_TYPES.well.id),m(e,s.ASSET_TYPES.rig.id),m(e,s.ASSET_TYPES.frac_fleet.id),m(e,s.ASSET_TYPES.pad.id),m(e,s.ASSET_TYPES.intervention_unit.id),m(e,"deprecatedAssetId"),c.getAppSegment(e)].join("-")},I=function(e){return{id:e.id,rig:null,well:null,fracFleet:null,interventionUnit:null,program:{id:null,name:null},completionWellInfo:{fracFleet:{id:null,name:null},pad:{id:null,name:null}},wells:null,isLoading:!0,appHash:P(e)}};exports.fetchAssetEntitiesByAssetIds=function(e){return S.apply(this,arguments)},exports.fetchFracFleetWells=function(e,t){return j.apply(this,arguments)},exports.fetchFracFleets=function(e){return E.apply(this,arguments)},exports.fetchInterventionUnits=function(e){return T.apply(this,arguments)},exports.fetchPadWells=function(e,t){return A.apply(this,arguments)},exports.fetchRigs=function(e){return b.apply(this,arguments)},exports.fetchWells=function(e){return w.apply(this,arguments)},exports.getAppAssetSpecificTypeId=m,exports.getAppHash=P,exports.getAppsDataByFFs=function(e,t,r){return t||r?e.reduce((function(e,n){var a,u,i=f.default(n,2),l=i[0],s=i[1],c=null==t?void 0:t[s],p=null==r?void 0:r[l];return e[l]={fracFleet:c,wells:p,program:{id:(null==c||null===(a=c.program)||void 0===a?void 0:a.id)||null,name:(null==c||null===(u=c.program)||void 0===u?void 0:u.name)||null}},e}),{}):{}},exports.getAppsDataByInterventionUnits=function(e,t,r,n){return!t||u.isEmpty(t)?{}:e.reduce((function(e,a){var u,i=f.default(a,2),l=i[0],s=i[1],c=t[s],p=null===(u=r.find((function(e){return e[0]===l})))||void 0===u?void 0:u[1],o=n[p]||c.well;return e[l]=x(o,null==o?void 0:o.rig,_(_({},c),c.well&&{active_well:_({id:c.well.id},c.well.attributes)})),e}),{})},exports.getAppsDataByPads=function(e,t){return e||t?e.reduce((function(e,r){var n=f.default(r,2),a=n[0];n[1];var u=null==t?void 0:t[a];return e[a]={wells:u},e}),{}):{}},exports.getAppsDataByRigs=function(e,t){return!t||u.isEmpty(t)?{}:e.reduce((function(e,r){var n=f.default(r,2),a=n[0],u=n[1],i=t[u];return e[a]=x(null==i?void 0:i.well,i),e}),{})},exports.getAppsDataByWells=function(e,t){return!t||u.isEmpty(t)?{}:e.reduce((function(e,r){var n=f.default(r,2),a=n[0],u=n[1],i=t[u];return i?(e[a]=x(i,i.rig),e):e}),{})},exports.getInitialAppData=I,exports.getInitialAppsDataState=function(e){return e.reduce((function(e,t){return _(_({},e),{},o.default({},t.id,I(t)))}),{})},exports.getUniqAssetIds=y,exports.isAppWithSettings=function(e){return Boolean(m(e,s.ASSET_TYPES.well.id)||m(e,s.ASSET_TYPES.rig.id)||m(e,s.ASSET_TYPES.frac_fleet.id)||m(e,s.ASSET_TYPES.pad.id)||m(e,s.ASSET_TYPES.intervention_unit.id))},exports.prepareDataForResolver=function(e,t){var r=[],n=[],a=[],u=[],i=[],l=[],c=[];e.forEach((function(e){var t=m(e,s.ASSET_TYPES.well.id),p=m(e,s.ASSET_TYPES.rig.id),o=m(e,s.ASSET_TYPES.frac_fleet.id),d=m(e,s.ASSET_TYPES.pad.id),f=m(e,s.ASSET_TYPES.intervention_unit.id),g=e.id;c.push([g]),f?(u.push([g,f]),t&&r.push([g,t])):t?r.push([g,t]):p?n.push([g,p]):o&&(a.push([g,o]),d?l.push([g,d]):i.push([g,o]))}));var p=t.current,o=p.rigsById,d=p.wellsById,f=p.fracFleetsById,g=p.interventionUnitsById,v=y(r,Object.keys(d)),_=y(n,Object.keys(o)),h=y(a,Object.keys(f)),w=y(u,Object.keys(g));return{appsWellIds:r,appsRigIds:n,appsFracFleetIds:a,appsPadIds:l,appIds:c,appsFracFleetToFetchWellsIds:i,appsInterventionUnitIds:u,uniqueWellIds:v,uniqueRigIds:_,uniqueFFIds:h,uniqueInterventionUnitIds:w}};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/helpers/slicedToArray"),n=require("@babel/runtime/regenerator"),a=require("jsona"),u=require("lodash"),i=require("../../../../clients/jsonApi/index.js"),l=require("../../../../constants/devcenter.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");var s=require("../../../../constants/assetTypes.js");require("../../../../constants/corvaCompanyId.js"),require("../../../GradientManager/configuration/constants.js");var c=require("../../../../utils/devcenter.js");function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=p(e),d=p(t),f=p(r),v=p(n);function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function _(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){o.default(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var h=new(p(a).default),m=function(e,t){return+u.get(e,["settings",t])},w=function(e,t){return u.uniq(e.map((function(e){var t=f.default(e,2);return t[0],t[1]})).filter((function(e){return Number.isFinite(e)&&!t.includes(String(e))})))};function y(){return(y=d.default(v.default.mark((function e(t){return v.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,i.getWells({ids:t,fields:["well.name","well.settings","well.company","well.asset_id","well.last_active_at","well.program","well.pad","well.frac_fleet","well.id","well.rig","rig.name","rig.asset_id","company.id","well.status","well.archivation","well.lon_lat"],include_arhivation_data:!0});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function b(){return(b=d.default(v.default.mark((function e(t){return v.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,i.getRigs({ids:t,fields:["rig.name","rig.settings","rig.asset_id","rig.active_well","rig.last_active_well","well.name","well.settings","well.company","rig.program","well.asset_id","well.last_active_at","well.id","well.company.id","well.lon_lat"]});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function S(){return(S=d.default(v.default.mark((function e(t){return v.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,i.getResolvedAssets({assets:t});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}var E=function(e,t,r){return _(_({well:e&&_(_({},e.attributes),{},{id:e.id,companyId:u.get(e,"relationships.company.data.id")}),rig:{name:u.get(t,"attributes.name"),id:u.get(t,"id"),asset_id:u.get(t,"attributes.asset_id")},program:{id:u.get(t,"program.id")||null,name:u.get(t,"program.attributes.name")||null}},r&&{interventionUnit:{id:+r.id,name:r.name,active_well:r.active_well}}),{},{completionWellInfo:{pad:{id:u.get(e,"pad.id")||null,name:u.get(e,"pad.attributes.name")||null},fracFleet:{id:u.get(e,"fracFleet.id")||null,name:u.get(e,"fracFleet.attributes.name")||null}}})};function x(){return(x=d.default(v.default.mark((function e(t){var r;return v.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,i.getFracFleets({ids:t,fields:["frac_fleet.name","frac_fleet.pads","frac_fleet.program","frac_fleet.current_pad_id","frac_fleet.pad_frac_fleets","frac_fleet.pad_frac_fleet.frac_fleet_lines"]});case 5:return r=e.sent,e.abrupt("return",r?h.deserialize(r):[]);case 9:return e.prev=9,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",[]);case 13:case"end":return e.stop()}}),e,null,[[2,9]])})))).apply(this,arguments)}function T(){return(T=d.default(v.default.mark((function e(t){return v.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,i.getInterventionUnits({ids:t,fields:["intervention_unit.name","intervention_unit.type","intervention_unit.active_well"]});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function A(){return A=d.default(v.default.mark((function e(t,r){var n,a,s;return v.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=u.keyBy(r,"id"),a=t.map(function(){var e=d.default(v.default.mark((function e(t){var r,a,s,c,p,o;return v.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=f.default(t,2),a=r[0],s=r[1],c={fields:"all",frac_fleet_id:s},p=n[a],a===l.DEV_CENTER_CLI_APP_ID?c.app_key=u.get(p,["app","app_key"]):c.app_id=u.get(p,["app","id"]),e.prev=4,e.next=7,i.getFracFleetWells(c);case 7:return o=e.sent,e.abrupt("return",o?h.deserialize(o):[]);case 11:return e.prev=11,e.t0=e.catch(4),console.error(e.t0),e.abrupt("return",[]);case 15:case"end":return e.stop()}}),e,null,[[4,11]])})));return function(t){return e.apply(this,arguments)}}()),e.next=4,Promise.all(a);case 4:return s=e.sent,e.abrupt("return",s.reduce((function(e,r,n){return e[t[n][0]]=r,e}),{}));case 6:case"end":return e.stop()}}),e)}))),A.apply(this,arguments)}function P(){return P=d.default(v.default.mark((function e(t,r){var n,a,s;return v.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=u.keyBy(r,"id"),a=t.map(function(){var e=d.default(v.default.mark((function e(t){var r,a,s,c,p,o;return v.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=f.default(t,2),a=r[0],s=r[1],c={fields:"all"},p=n[a],a===l.DEV_CENTER_CLI_APP_ID?c.app_key=u.get(p,["app","app_key"]):c.app_id=u.get(p,["app","id"]),e.prev=4,e.next=7,i.getPadWells(s,c);case 7:return o=e.sent,e.abrupt("return",o?h.deserialize(o):[]);case 11:return e.prev=11,e.t0=e.catch(4),console.error(e.t0),e.abrupt("return",[]);case 15:case"end":return e.stop()}}),e,null,[[4,11]])})));return function(t){return e.apply(this,arguments)}}()),e.next=4,Promise.all(a);case 4:return s=e.sent,e.abrupt("return",s.reduce((function(e,r,n){return e[t[n][0]]=r,e}),{}));case 6:case"end":return e.stop()}}),e)}))),P.apply(this,arguments)}var j=function(e){return[e.id,m(e,s.ASSET_TYPES.well.id),m(e,s.ASSET_TYPES.rig.id),m(e,s.ASSET_TYPES.frac_fleet.id),m(e,s.ASSET_TYPES.pad.id),m(e,s.ASSET_TYPES.intervention_unit.id),m(e,"deprecatedAssetId"),c.getAppSegment(e)].join("-")},I=function(e){return{id:e.id,rig:null,well:null,fracFleet:null,interventionUnit:null,program:{id:null,name:null},completionWellInfo:{fracFleet:{id:null,name:null},pad:{id:null,name:null}},wells:null,isLoading:!0,appHash:j(e)}};exports.fetchAssetEntitiesByAssetIds=function(e){return S.apply(this,arguments)},exports.fetchFracFleetWells=function(e,t){return A.apply(this,arguments)},exports.fetchFracFleets=function(e){return x.apply(this,arguments)},exports.fetchInterventionUnits=function(e){return T.apply(this,arguments)},exports.fetchPadWells=function(e,t){return P.apply(this,arguments)},exports.fetchRigs=function(e){return b.apply(this,arguments)},exports.fetchWells=function(e){return y.apply(this,arguments)},exports.getAppAssetSpecificTypeId=m,exports.getAppHash=j,exports.getAppsDataByFFs=function(e,t,r){return t||r?e.reduce((function(e,n){var a,u,i=f.default(n,2),l=i[0],s=i[1],c=null==t?void 0:t[s],p=null==r?void 0:r[l];return e[l]={fracFleet:c,wells:p,program:{id:(null==c||null===(a=c.program)||void 0===a?void 0:a.id)||null,name:(null==c||null===(u=c.program)||void 0===u?void 0:u.name)||null}},e}),{}):{}},exports.getAppsDataByInterventionUnits=function(e,t,r,n){return!t||u.isEmpty(t)?{}:e.reduce((function(e,a){var u,i=f.default(a,2),l=i[0],s=i[1],c=t[s],p=null===(u=r.find((function(e){return e[0]===l})))||void 0===u?void 0:u[1],o=n[p]||c.well;return e[l]=E(o,null==o?void 0:o.rig,_(_({},c),c.well&&{active_well:_({id:c.well.id},c.well.attributes)})),e}),{})},exports.getAppsDataByPads=function(e,t){return e||t?e.reduce((function(e,r){var n=f.default(r,2),a=n[0];n[1];var u=null==t?void 0:t[a];return e[a]={wells:u},e}),{}):{}},exports.getAppsDataByRigs=function(e,t){return!t||u.isEmpty(t)?{}:e.reduce((function(e,r){var n=f.default(r,2),a=n[0],u=n[1],i=t[u];return e[a]=E(null==i?void 0:i.well,i),e}),{})},exports.getAppsDataByWells=function(e,t){return!t||u.isEmpty(t)?{}:e.reduce((function(e,r){var n=f.default(r,2),a=n[0],u=n[1],i=t[u];return i?(e[a]=E(i,i.rig),e):e}),{})},exports.getInitialAppData=I,exports.getInitialAppsDataState=function(e){return e.reduce((function(e,t){return _(_({},e),{},o.default({},t.id,I(t)))}),{})},exports.getUniqAssetIds=w,exports.isAppNeedingInterventionUnitWellRefresh=function(e){var t=m(e,s.ASSET_TYPES.intervention_unit.id),r=m(e,s.ASSET_TYPES.well.id);return t&&!r},exports.isAppWithSettings=function(e){return Boolean(m(e,s.ASSET_TYPES.well.id)||m(e,s.ASSET_TYPES.rig.id)||m(e,s.ASSET_TYPES.frac_fleet.id)||m(e,s.ASSET_TYPES.pad.id)||m(e,s.ASSET_TYPES.intervention_unit.id))},exports.prepareDataForResolver=function(e,t){var r=[],n=[],a=[],u=[],i=[],l=[],c=[];e.forEach((function(e){var t=m(e,s.ASSET_TYPES.well.id),p=m(e,s.ASSET_TYPES.rig.id),o=m(e,s.ASSET_TYPES.frac_fleet.id),d=m(e,s.ASSET_TYPES.pad.id),f=m(e,s.ASSET_TYPES.intervention_unit.id),v=e.id;c.push([v]),f?(u.push([v,f]),t&&r.push([v,t])):t?r.push([v,t]):p?n.push([v,p]):o&&(a.push([v,o]),d?l.push([v,d]):i.push([v,o]))}));var p=t.current,o=p.rigsById,d=p.wellsById,f=p.fracFleetsById,v=p.interventionUnitsById,g=w(r,Object.keys(d)),_=w(n,Object.keys(o)),h=w(a,Object.keys(f)),y=w(u,Object.keys(v));return{appsWellIds:r,appsRigIds:n,appsFracFleetIds:a,appsPadIds:l,appIds:c,appsFracFleetToFetchWellsIds:i,appsInterventionUnitIds:u,uniqueWellIds:g,uniqueRigIds:_,uniqueFFIds:h,uniqueInterventionUnitIds:y}};
|
|
2
2
|
//# sourceMappingURL=utils.js.map
|