@corva/ui 3.42.0-8 → 3.42.0-9
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/cjs-bundle/components/AssetEditorV2/components/SecondaryAssetSelect.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/SecondaryAssetSelect.js.map +1 -1
- package/components/AssetEditorV2/components/SecondaryAssetSelect.js +1 -1
- package/components/AssetEditorV2/components/SecondaryAssetSelect.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/toConsumableArray"),t=require("prop-types"),s=require("react"),a=require("lodash"),r=require("@material-ui/core"),n=require("../effects/index.js"),i=require("../constants.js"),o=require("./SelectItem.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 u=require("../../../constants/assetTypes.js");require("../../../constants/corvaCompanyId.js"),require("../../GradientManager/configuration/constants.js");var l=require("react/jsx-runtime");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=d(e),p=d(t),f="DC_SingleAssetEditor",m=r.makeStyles((function(e){return{container:{position:"relative"},select:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:0,paddingTop:0},formControl:{marginTop:16,width:"100%","& .MuiInput-underline.Mui-disabled, & .MuiFilledInput-underline.Mui-disabled":{"&::before":{borderBottom:"1px solid #808080"}}},selectValue:function(t){return{cursor:"pointer",padding:0,color:t.disabled?e.palette.primary.text7:e.palette.primary.contrastText,"&:hover":{backgroundColor:"initial"}}},option:function(t){return{cursor:"pointer",padding:"0px 0px 0px 16px",color:t.disabled?e.palette.primary.text7:e.palette.primary.contrastText,"&:hover":{backgroundColor:"rgba(255, 255, 255, 0.16)"}}},activeAssets:{color:"#9E9E9E",padding:"8px 0 6px"},progress:{position:"absolute",right:20,bottom:4},noActiveAsset:{color:"#9E9E9E",padding:"8px 0 6px"}}})),A=function(e){var t=e.appKey,d=e.primaryAssetLabel,p=e.isRequiredAssetId,A=e.secondaryAssetLabel,v=e.company,y=e.currentValue,T=e.defaultValue,g=e.onChange,b=e.disabled,j=e.parentAssetId,x=e.assetType,E=e.parentAssetType,I=e.assetFields,q=e.activeWellId,S=e.isDrillingPlatformApp,_=s.useRef(),C=n.useSecondaryAssetSelectData({appKey:t,assetType:S?i.DEFAULT_ASSET_TYPE:x,company:v,parentAssetId:j,parentAssetType:E,isRequiredAssetId:p,assetFields:I,activeWellId:q}),h=C.assets,V=C.loading,N=m({disabled:b}),D=s.useMemo((function(){return E===u.ASSET_TYPES.intervention_unit.type?h.find((function(e){return Number(e.id)===Number(q)})):h.find((function(e){return e.status===i.ACTIVE_STATUS}))}),[h,E,q]),M=y||T;s.useEffect((function(){var e;(!y||y===(null===(e=_.current)||void 0===e?void 0:e.id))&&D&&(g(D),_.current=D)}),[D,y
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/toConsumableArray"),t=require("prop-types"),s=require("react"),a=require("lodash"),r=require("@material-ui/core"),n=require("../effects/index.js"),i=require("../constants.js"),o=require("./SelectItem.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 u=require("../../../constants/assetTypes.js");require("../../../constants/corvaCompanyId.js"),require("../../GradientManager/configuration/constants.js");var l=require("react/jsx-runtime");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=d(e),p=d(t),f="DC_SingleAssetEditor",m=r.makeStyles((function(e){return{container:{position:"relative"},select:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:0,paddingTop:0},formControl:{marginTop:16,width:"100%","& .MuiInput-underline.Mui-disabled, & .MuiFilledInput-underline.Mui-disabled":{"&::before":{borderBottom:"1px solid #808080"}}},selectValue:function(t){return{cursor:"pointer",padding:0,color:t.disabled?e.palette.primary.text7:e.palette.primary.contrastText,"&:hover":{backgroundColor:"initial"}}},option:function(t){return{cursor:"pointer",padding:"0px 0px 0px 16px",color:t.disabled?e.palette.primary.text7:e.palette.primary.contrastText,"&:hover":{backgroundColor:"rgba(255, 255, 255, 0.16)"}}},activeAssets:{color:"#9E9E9E",padding:"8px 0 6px"},progress:{position:"absolute",right:20,bottom:4},noActiveAsset:{color:"#9E9E9E",padding:"8px 0 6px"}}})),A=function(e){var t=e.appKey,d=e.primaryAssetLabel,p=e.isRequiredAssetId,A=e.secondaryAssetLabel,v=e.company,y=e.currentValue,T=e.defaultValue,g=e.onChange,b=e.disabled,j=e.parentAssetId,x=e.assetType,E=e.parentAssetType,I=e.assetFields,q=e.activeWellId,S=e.isDrillingPlatformApp,_=s.useRef(),C=n.useSecondaryAssetSelectData({appKey:t,assetType:S?i.DEFAULT_ASSET_TYPE:x,company:v,parentAssetId:j,parentAssetType:E,isRequiredAssetId:p,assetFields:I,activeWellId:q}),h=C.assets,V=C.loading,N=m({disabled:b}),D=s.useMemo((function(){return E===u.ASSET_TYPES.intervention_unit.type?h.find((function(e){return Number(e.id)===Number(q)})):h.find((function(e){return e.status===i.ACTIVE_STATUS}))}),[h,E,q]),M=y||T;s.useEffect((function(){var e;(!y||y===(null===(e=_.current)||void 0===e?void 0:e.id))&&D&&(g(D),_.current=D)}),[D,y]);var P=a.capitalize(x),F=s.useMemo((function(){return[{name:"Active ".concat(P),id:i.ACTIVE_ASSET_ID}].concat(c.default(h))}),[P,h]),k=s.useCallback((function(e){if(e===i.ACTIVE_ASSETS_ID)return l.jsx("span",{className:N.activeAssets,children:"Active ".concat(P,"s")});if(e===i.ACTIVE_ASSET_ID&&!D)return l.jsx("span",{className:N.noActiveAsset,children:"".concat(d," has No Active ").concat(A)});if(e===i.ACTIVE_ASSET_ID&&D)return l.jsx(o,{className:N.selectValue,assetName:D.name,status:D.status});var t=h.find((function(t){return t.id===e}));return l.jsx(o,{className:N.selectValue,assetName:null==t?void 0:t.name,status:null==t?void 0:t.status})}),[P,D,h,d,A,N]);return l.jsxs("div",{className:N.container,children:[l.jsxs(r.FormControl,{className:N.formControl,disabled:V,children:[l.jsx(r.InputLabel,{shrink:!!M,children:A}),l.jsx(r.Select,{"data-testid":e["data-testid"],classes:{select:N.select},value:M,disabled:b,onChange:function(e){var t=e.target,s=t.value===i.ACTIVE_ASSET_ID?D||{id:i.ACTIVE_ASSET_ID}:null==h?void 0:h.find((function(e){return e.id===t.value}));g(s)},fullWidth:!0,renderValue:k,children:F.map((function(e){var t=e.id,s=e.name,a=e.status,r=s||"";return l.jsx(o,{className:N.option,assetName:r,"data-testid":"".concat(f,"_option_").concat(r,"MenuItem"),value:t,status:a},t)}))})]}),V&&l.jsx(r.CircularProgress,{"data-testid":"".concat(f,"_CircularProgress"),size:20,className:N.progress})]})};A.propTypes={appType:p.default.shape({constants:p.default.shape({})}),currentValue:p.default.oneOfType([p.default.number,p.default.string]),defaultValue:p.default.any,onChange:p.default.func.isRequired,parentAssetId:p.default.number,parentAssetType:p.default.string,assetType:p.default.string.isRequired,"data-testid":p.default.string,appKey:p.default.string,assetFields:p.default.array},A.defaultProps={currentValue:"",defaultValue:"",appType:void 0,parentAssetId:void 0,parentAssetType:void 0,"data-testid":"".concat(f,"_autoComplete"),appKey:null,assetFields:[]},exports.PAGE_NAME=f,exports.default=A;
|
|
2
2
|
//# sourceMappingURL=SecondaryAssetSelect.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecondaryAssetSelect.js","sources":["../../../../../src/components/AssetEditorV2/components/SecondaryAssetSelect.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { useMemo, useCallback, useEffect, useRef } from 'react';\nimport { capitalize } from 'lodash';\nimport { CircularProgress, Select, FormControl, InputLabel, makeStyles } from '@material-ui/core';\n\nimport { useSecondaryAssetSelectData } from '../effects';\nimport { ACTIVE_ASSETS_ID, ACTIVE_ASSET_ID, ACTIVE_STATUS, DEFAULT_ASSET_TYPE } from '../constants';\n\nimport SelectItem from './SelectItem';\n\nimport { ASSET_TYPES } from '~/constants';\n\nexport const PAGE_NAME = 'DC_SingleAssetEditor';\n\nconst useStyles = makeStyles(theme => ({\n container: {\n position: 'relative',\n },\n select: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n paddingBottom: 0,\n paddingTop: 0,\n },\n formControl: {\n marginTop: 16,\n width: '100%',\n '& .MuiInput-underline.Mui-disabled, & .MuiFilledInput-underline.Mui-disabled': {\n '&::before': {\n borderBottom: `1px solid #808080`,\n },\n },\n },\n selectValue: ({ disabled }) => ({\n cursor: 'pointer',\n padding: 0,\n color: disabled ? theme.palette.primary.text7 : theme.palette.primary.contrastText,\n '&:hover': {\n backgroundColor: 'initial',\n },\n }),\n option: ({ disabled }) => ({\n cursor: 'pointer',\n padding: '0px 0px 0px 16px',\n color: disabled ? theme.palette.primary.text7 : theme.palette.primary.contrastText,\n '&:hover': {\n backgroundColor: 'rgba(255, 255, 255, 0.16)',\n },\n }),\n activeAssets: {\n color: '#9E9E9E',\n padding: '8px 0 6px',\n },\n progress: {\n position: 'absolute',\n right: 20,\n bottom: 4,\n },\n noActiveAsset: {\n color: '#9E9E9E',\n padding: '8px 0 6px',\n },\n}));\n\nconst SecondaryAssetSelect = props => {\n const {\n appKey,\n primaryAssetLabel,\n isRequiredAssetId,\n secondaryAssetLabel,\n company,\n currentValue,\n defaultValue,\n onChange,\n disabled,\n parentAssetId,\n assetType,\n parentAssetType,\n assetFields,\n activeWellId,\n isDrillingPlatformApp,\n } = props;\n\n const prevActiveAssetRef = useRef();\n\n const { assets, loading } = useSecondaryAssetSelectData({\n appKey,\n assetType: isDrillingPlatformApp ? DEFAULT_ASSET_TYPE : assetType,\n company,\n parentAssetId,\n parentAssetType,\n isRequiredAssetId,\n assetFields,\n activeWellId,\n });\n const styles = useStyles({ disabled });\n\n const activeAsset = useMemo(\n () =>\n parentAssetType === ASSET_TYPES.intervention_unit.type\n ? assets.find(asset => Number(asset.id) === Number(activeWellId))\n : assets.find(asset => asset.status === ACTIVE_STATUS),\n [assets, parentAssetType, activeWellId]\n );\n\n const value = currentValue || defaultValue;\n\n useEffect(() => {\n // force active asset preselection when assets are reset\n const isTrackingActiveAsset = !currentValue || currentValue === prevActiveAssetRef.current?.id;\n\n if (isTrackingActiveAsset && activeAsset) {\n onChange(activeAsset);\n prevActiveAssetRef.current = activeAsset;\n }\n }, [activeAsset, currentValue, onChange]);\n\n const capitalizedAssetType = capitalize(assetType);\n\n const options = useMemo(\n () => [{ name: `Active ${capitalizedAssetType}`, id: ACTIVE_ASSET_ID }, ...assets],\n [capitalizedAssetType, assets]\n );\n\n const handleSelectChange = ({ target }) => {\n const nextValue =\n target.value === ACTIVE_ASSET_ID\n ? activeAsset || { id: ACTIVE_ASSET_ID }\n : assets?.find(asset => asset.id === target.value);\n onChange(nextValue);\n };\n\n const renderSelectValue = useCallback(\n assetId => {\n if (assetId === ACTIVE_ASSETS_ID) {\n return <span className={styles.activeAssets}>{`Active ${capitalizedAssetType}s`}</span>;\n }\n if (assetId === ACTIVE_ASSET_ID && !activeAsset) {\n return (\n <span className={styles.noActiveAsset}>\n {`${primaryAssetLabel} has No Active ${secondaryAssetLabel}`}\n </span>\n );\n }\n if (assetId === ACTIVE_ASSET_ID && !!activeAsset) {\n return (\n <SelectItem\n className={styles.selectValue}\n assetName={activeAsset.name}\n status={activeAsset.status}\n />\n );\n }\n const selectedAsset = assets.find(asset => asset.id === assetId);\n return (\n <SelectItem\n className={styles.selectValue}\n assetName={selectedAsset?.name}\n status={selectedAsset?.status}\n />\n );\n },\n [capitalizedAssetType, activeAsset, assets, primaryAssetLabel, secondaryAssetLabel, styles]\n );\n\n return (\n <div className={styles.container}>\n <FormControl className={styles.formControl} disabled={loading}>\n <InputLabel shrink={!!value}>{secondaryAssetLabel}</InputLabel>\n <Select\n data-testid={props['data-testid']}\n classes={{ select: styles.select }}\n value={value}\n disabled={disabled}\n onChange={handleSelectChange}\n fullWidth\n renderValue={renderSelectValue}\n >\n {options.map(({ id, name, status }) => {\n const assetName = name || '';\n return (\n <SelectItem\n className={styles.option}\n assetName={assetName}\n data-testid={`${PAGE_NAME}_option_${assetName}MenuItem`}\n key={id}\n value={id}\n status={status}\n />\n );\n })}\n </Select>\n </FormControl>\n {loading && (\n <CircularProgress\n data-testid={`${PAGE_NAME}_CircularProgress`}\n size={20}\n className={styles.progress}\n />\n )}\n </div>\n );\n};\n\nSecondaryAssetSelect.propTypes = {\n appType: PropTypes.shape({\n constants: PropTypes.shape({}),\n }),\n currentValue: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n defaultValue: PropTypes.any, // eslint-disable-line react/forbid-prop-types\n onChange: PropTypes.func.isRequired,\n parentAssetId: PropTypes.number,\n parentAssetType: PropTypes.string,\n assetType: PropTypes.string.isRequired,\n 'data-testid': PropTypes.string,\n appKey: PropTypes.string,\n assetFields: PropTypes.array,\n};\n\nSecondaryAssetSelect.defaultProps = {\n currentValue: '', // NOTE: If 'undefined' <SelectField /> displays 'label'\n defaultValue: '',\n appType: undefined,\n parentAssetId: undefined,\n parentAssetType: undefined,\n 'data-testid': `${PAGE_NAME}_autoComplete`,\n appKey: null,\n assetFields: [],\n};\n\nexport default SecondaryAssetSelect;\n"],"names":["PAGE_NAME","useStyles","makeStyles","theme","container","position","select","display","alignItems","justifyContent","paddingBottom","paddingTop","formControl","marginTop","width","borderBottom","selectValue","_ref","cursor","padding","color","disabled","palette","primary","text7","contrastText","backgroundColor","option","_ref2","activeAssets","progress","right","bottom","noActiveAsset","SecondaryAssetSelect","props","appKey","primaryAssetLabel","isRequiredAssetId","secondaryAssetLabel","company","currentValue","defaultValue","onChange","parentAssetId","assetType","parentAssetType","assetFields","activeWellId","isDrillingPlatformApp","prevActiveAssetRef","useRef","_useSecondaryAssetSel","useSecondaryAssetSelectData","DEFAULT_ASSET_TYPE","assets","loading","styles","activeAsset","useMemo","ASSET_TYPES","intervention_unit","type","find","asset","Number","id","status","ACTIVE_STATUS","value","useEffect","_prevActiveAssetRef$c","current","capitalizedAssetType","capitalize","options","name","concat","ACTIVE_ASSET_ID","renderSelectValue","useCallback","assetId","ACTIVE_ASSETS_ID","_jsx","className","children","SelectItem","assetName","selectedAsset","_jsxs","FormControl","InputLabel","shrink","Select","classes","_ref3","target","nextValue","fullWidth","renderValue","map","_ref4","jsx","CircularProgress","size","propTypes","appType","PropTypes","shape","constants","oneOfType","number","string","any","func","isRequired","array","defaultProps","undefined"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SecondaryAssetSelect.js","sources":["../../../../../src/components/AssetEditorV2/components/SecondaryAssetSelect.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { useMemo, useCallback, useEffect, useRef } from 'react';\nimport { capitalize } from 'lodash';\nimport { CircularProgress, Select, FormControl, InputLabel, makeStyles } from '@material-ui/core';\n\nimport { useSecondaryAssetSelectData } from '../effects';\nimport { ACTIVE_ASSETS_ID, ACTIVE_ASSET_ID, ACTIVE_STATUS, DEFAULT_ASSET_TYPE } from '../constants';\n\nimport SelectItem from './SelectItem';\n\nimport { ASSET_TYPES } from '~/constants';\n\nexport const PAGE_NAME = 'DC_SingleAssetEditor';\n\nconst useStyles = makeStyles(theme => ({\n container: {\n position: 'relative',\n },\n select: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n paddingBottom: 0,\n paddingTop: 0,\n },\n formControl: {\n marginTop: 16,\n width: '100%',\n '& .MuiInput-underline.Mui-disabled, & .MuiFilledInput-underline.Mui-disabled': {\n '&::before': {\n borderBottom: `1px solid #808080`,\n },\n },\n },\n selectValue: ({ disabled }) => ({\n cursor: 'pointer',\n padding: 0,\n color: disabled ? theme.palette.primary.text7 : theme.palette.primary.contrastText,\n '&:hover': {\n backgroundColor: 'initial',\n },\n }),\n option: ({ disabled }) => ({\n cursor: 'pointer',\n padding: '0px 0px 0px 16px',\n color: disabled ? theme.palette.primary.text7 : theme.palette.primary.contrastText,\n '&:hover': {\n backgroundColor: 'rgba(255, 255, 255, 0.16)',\n },\n }),\n activeAssets: {\n color: '#9E9E9E',\n padding: '8px 0 6px',\n },\n progress: {\n position: 'absolute',\n right: 20,\n bottom: 4,\n },\n noActiveAsset: {\n color: '#9E9E9E',\n padding: '8px 0 6px',\n },\n}));\n\nconst SecondaryAssetSelect = props => {\n const {\n appKey,\n primaryAssetLabel,\n isRequiredAssetId,\n secondaryAssetLabel,\n company,\n currentValue,\n defaultValue,\n onChange,\n disabled,\n parentAssetId,\n assetType,\n parentAssetType,\n assetFields,\n activeWellId,\n isDrillingPlatformApp,\n } = props;\n\n const prevActiveAssetRef = useRef();\n\n const { assets, loading } = useSecondaryAssetSelectData({\n appKey,\n assetType: isDrillingPlatformApp ? DEFAULT_ASSET_TYPE : assetType,\n company,\n parentAssetId,\n parentAssetType,\n isRequiredAssetId,\n assetFields,\n activeWellId,\n });\n const styles = useStyles({ disabled });\n\n const activeAsset = useMemo(\n () =>\n parentAssetType === ASSET_TYPES.intervention_unit.type\n ? assets.find(asset => Number(asset.id) === Number(activeWellId))\n : assets.find(asset => asset.status === ACTIVE_STATUS),\n [assets, parentAssetType, activeWellId]\n );\n\n const value = currentValue || defaultValue;\n\n useEffect(() => {\n // force active asset preselection when assets are reset\n const isTrackingActiveAsset = !currentValue || currentValue === prevActiveAssetRef.current?.id;\n\n if (isTrackingActiveAsset && activeAsset) {\n onChange(activeAsset);\n prevActiveAssetRef.current = activeAsset;\n }\n }, [activeAsset, currentValue]);\n\n const capitalizedAssetType = capitalize(assetType);\n\n const options = useMemo(\n () => [{ name: `Active ${capitalizedAssetType}`, id: ACTIVE_ASSET_ID }, ...assets],\n [capitalizedAssetType, assets]\n );\n\n const handleSelectChange = ({ target }) => {\n const nextValue =\n target.value === ACTIVE_ASSET_ID\n ? activeAsset || { id: ACTIVE_ASSET_ID }\n : assets?.find(asset => asset.id === target.value);\n onChange(nextValue);\n };\n\n const renderSelectValue = useCallback(\n assetId => {\n if (assetId === ACTIVE_ASSETS_ID) {\n return <span className={styles.activeAssets}>{`Active ${capitalizedAssetType}s`}</span>;\n }\n if (assetId === ACTIVE_ASSET_ID && !activeAsset) {\n return (\n <span className={styles.noActiveAsset}>\n {`${primaryAssetLabel} has No Active ${secondaryAssetLabel}`}\n </span>\n );\n }\n if (assetId === ACTIVE_ASSET_ID && !!activeAsset) {\n return (\n <SelectItem\n className={styles.selectValue}\n assetName={activeAsset.name}\n status={activeAsset.status}\n />\n );\n }\n const selectedAsset = assets.find(asset => asset.id === assetId);\n return (\n <SelectItem\n className={styles.selectValue}\n assetName={selectedAsset?.name}\n status={selectedAsset?.status}\n />\n );\n },\n [capitalizedAssetType, activeAsset, assets, primaryAssetLabel, secondaryAssetLabel, styles]\n );\n\n return (\n <div className={styles.container}>\n <FormControl className={styles.formControl} disabled={loading}>\n <InputLabel shrink={!!value}>{secondaryAssetLabel}</InputLabel>\n <Select\n data-testid={props['data-testid']}\n classes={{ select: styles.select }}\n value={value}\n disabled={disabled}\n onChange={handleSelectChange}\n fullWidth\n renderValue={renderSelectValue}\n >\n {options.map(({ id, name, status }) => {\n const assetName = name || '';\n return (\n <SelectItem\n className={styles.option}\n assetName={assetName}\n data-testid={`${PAGE_NAME}_option_${assetName}MenuItem`}\n key={id}\n value={id}\n status={status}\n />\n );\n })}\n </Select>\n </FormControl>\n {loading && (\n <CircularProgress\n data-testid={`${PAGE_NAME}_CircularProgress`}\n size={20}\n className={styles.progress}\n />\n )}\n </div>\n );\n};\n\nSecondaryAssetSelect.propTypes = {\n appType: PropTypes.shape({\n constants: PropTypes.shape({}),\n }),\n currentValue: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n defaultValue: PropTypes.any, // eslint-disable-line react/forbid-prop-types\n onChange: PropTypes.func.isRequired,\n parentAssetId: PropTypes.number,\n parentAssetType: PropTypes.string,\n assetType: PropTypes.string.isRequired,\n 'data-testid': PropTypes.string,\n appKey: PropTypes.string,\n assetFields: PropTypes.array,\n};\n\nSecondaryAssetSelect.defaultProps = {\n currentValue: '', // NOTE: If 'undefined' <SelectField /> displays 'label'\n defaultValue: '',\n appType: undefined,\n parentAssetId: undefined,\n parentAssetType: undefined,\n 'data-testid': `${PAGE_NAME}_autoComplete`,\n appKey: null,\n assetFields: [],\n};\n\nexport default SecondaryAssetSelect;\n"],"names":["PAGE_NAME","useStyles","makeStyles","theme","container","position","select","display","alignItems","justifyContent","paddingBottom","paddingTop","formControl","marginTop","width","borderBottom","selectValue","_ref","cursor","padding","color","disabled","palette","primary","text7","contrastText","backgroundColor","option","_ref2","activeAssets","progress","right","bottom","noActiveAsset","SecondaryAssetSelect","props","appKey","primaryAssetLabel","isRequiredAssetId","secondaryAssetLabel","company","currentValue","defaultValue","onChange","parentAssetId","assetType","parentAssetType","assetFields","activeWellId","isDrillingPlatformApp","prevActiveAssetRef","useRef","_useSecondaryAssetSel","useSecondaryAssetSelectData","DEFAULT_ASSET_TYPE","assets","loading","styles","activeAsset","useMemo","ASSET_TYPES","intervention_unit","type","find","asset","Number","id","status","ACTIVE_STATUS","value","useEffect","_prevActiveAssetRef$c","current","capitalizedAssetType","capitalize","options","name","concat","ACTIVE_ASSET_ID","renderSelectValue","useCallback","assetId","ACTIVE_ASSETS_ID","_jsx","className","children","SelectItem","assetName","selectedAsset","_jsxs","FormControl","InputLabel","shrink","Select","classes","_ref3","target","nextValue","fullWidth","renderValue","map","_ref4","jsx","CircularProgress","size","propTypes","appType","PropTypes","shape","constants","oneOfType","number","string","any","func","isRequired","array","defaultProps","undefined"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import t from"@babel/runtime/helpers/toConsumableArray";import e from"prop-types";import{useRef as s,useMemo as a,useEffect as n,useCallback as r}from"react";import{capitalize as i}from"lodash";import{makeStyles as o,FormControl as p,InputLabel as c,Select as l,CircularProgress as d}from"@material-ui/core";import{useSecondaryAssetSelectData as u}from"../effects/index.js";import{ACTIVE_STATUS as m,ACTIVE_ASSET_ID as f,ACTIVE_ASSETS_ID as v,DEFAULT_ASSET_TYPE as g}from"../constants.js";import y from"./SelectItem.js";import"../../../constants/goals.js";import"../../../constants/segment.js";import"../../../constants/alerts.js";import"../../../constants/apps.js";import"../../../constants/drillstring.js";import"../../../constants/completion.js";import"../../../constants/appPackages.js";import"../../../constants/notifications.js";import"../../../constants/feed.js";import"../../../constants/bha.js";import{ASSET_TYPES as b}from"../../../constants/assetTypes.js";import"../../../constants/corvaCompanyId.js";import"../../GradientManager/configuration/constants.js";import{jsx as A,jsxs as h}from"react/jsx-runtime";var j="DC_SingleAssetEditor",x=o((function(t){return{container:{position:"relative"},select:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:0,paddingTop:0},formControl:{marginTop:16,width:"100%","& .MuiInput-underline.Mui-disabled, & .MuiFilledInput-underline.Mui-disabled":{"&::before":{borderBottom:"1px solid #808080"}}},selectValue:function(e){return{cursor:"pointer",padding:0,color:e.disabled?t.palette.primary.text7:t.palette.primary.contrastText,"&:hover":{backgroundColor:"initial"}}},option:function(e){return{cursor:"pointer",padding:"0px 0px 0px 16px",color:e.disabled?t.palette.primary.text7:t.palette.primary.contrastText,"&:hover":{backgroundColor:"rgba(255, 255, 255, 0.16)"}}},activeAssets:{color:"#9E9E9E",padding:"8px 0 6px"},progress:{position:"absolute",right:20,bottom:4},noActiveAsset:{color:"#9E9E9E",padding:"8px 0 6px"}}})),T=function(e){var o=e.appKey,T=e.primaryAssetLabel,I=e.isRequiredAssetId,N=e.secondaryAssetLabel,C=e.company,V=e.currentValue,E=e.defaultValue,M=e.onChange,_=e.disabled,F=e.parentAssetId,k=e.assetType,q=e.parentAssetType,K=e.assetFields,P=e.activeWellId,R=e.isDrillingPlatformApp,W=s(),w=u({appKey:o,assetType:R?g:k,company:C,parentAssetId:F,parentAssetType:q,isRequiredAssetId:I,assetFields:K,activeWellId:P}),B=w.assets,D=w.loading,L=x({disabled:_}),S=a((function(){return q===b.intervention_unit.type?B.find((function(t){return Number(t.id)===Number(P)})):B.find((function(t){return t.status===m}))}),[B,q,P]),z=V||E;n((function(){var t;(!V||V===(null===(t=W.current)||void 0===t?void 0:t.id))&&S&&(M(S),W.current=S)}),[S,V
|
|
1
|
+
import t from"@babel/runtime/helpers/toConsumableArray";import e from"prop-types";import{useRef as s,useMemo as a,useEffect as n,useCallback as r}from"react";import{capitalize as i}from"lodash";import{makeStyles as o,FormControl as p,InputLabel as c,Select as l,CircularProgress as d}from"@material-ui/core";import{useSecondaryAssetSelectData as u}from"../effects/index.js";import{ACTIVE_STATUS as m,ACTIVE_ASSET_ID as f,ACTIVE_ASSETS_ID as v,DEFAULT_ASSET_TYPE as g}from"../constants.js";import y from"./SelectItem.js";import"../../../constants/goals.js";import"../../../constants/segment.js";import"../../../constants/alerts.js";import"../../../constants/apps.js";import"../../../constants/drillstring.js";import"../../../constants/completion.js";import"../../../constants/appPackages.js";import"../../../constants/notifications.js";import"../../../constants/feed.js";import"../../../constants/bha.js";import{ASSET_TYPES as b}from"../../../constants/assetTypes.js";import"../../../constants/corvaCompanyId.js";import"../../GradientManager/configuration/constants.js";import{jsx as A,jsxs as h}from"react/jsx-runtime";var j="DC_SingleAssetEditor",x=o((function(t){return{container:{position:"relative"},select:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:0,paddingTop:0},formControl:{marginTop:16,width:"100%","& .MuiInput-underline.Mui-disabled, & .MuiFilledInput-underline.Mui-disabled":{"&::before":{borderBottom:"1px solid #808080"}}},selectValue:function(e){return{cursor:"pointer",padding:0,color:e.disabled?t.palette.primary.text7:t.palette.primary.contrastText,"&:hover":{backgroundColor:"initial"}}},option:function(e){return{cursor:"pointer",padding:"0px 0px 0px 16px",color:e.disabled?t.palette.primary.text7:t.palette.primary.contrastText,"&:hover":{backgroundColor:"rgba(255, 255, 255, 0.16)"}}},activeAssets:{color:"#9E9E9E",padding:"8px 0 6px"},progress:{position:"absolute",right:20,bottom:4},noActiveAsset:{color:"#9E9E9E",padding:"8px 0 6px"}}})),T=function(e){var o=e.appKey,T=e.primaryAssetLabel,I=e.isRequiredAssetId,N=e.secondaryAssetLabel,C=e.company,V=e.currentValue,E=e.defaultValue,M=e.onChange,_=e.disabled,F=e.parentAssetId,k=e.assetType,q=e.parentAssetType,K=e.assetFields,P=e.activeWellId,R=e.isDrillingPlatformApp,W=s(),w=u({appKey:o,assetType:R?g:k,company:C,parentAssetId:F,parentAssetType:q,isRequiredAssetId:I,assetFields:K,activeWellId:P}),B=w.assets,D=w.loading,L=x({disabled:_}),S=a((function(){return q===b.intervention_unit.type?B.find((function(t){return Number(t.id)===Number(P)})):B.find((function(t){return t.status===m}))}),[B,q,P]),z=V||E;n((function(){var t;(!V||V===(null===(t=W.current)||void 0===t?void 0:t.id))&&S&&(M(S),W.current=S)}),[S,V]);var G=i(k),O=a((function(){return[{name:"Active ".concat(G),id:f}].concat(t(B))}),[G,B]),H=r((function(t){if(t===v)return A("span",{className:L.activeAssets,children:"Active ".concat(G,"s")});if(t===f&&!S)return A("span",{className:L.noActiveAsset,children:"".concat(T," has No Active ").concat(N)});if(t===f&&S)return A(y,{className:L.selectValue,assetName:S.name,status:S.status});var e=B.find((function(e){return e.id===t}));return A(y,{className:L.selectValue,assetName:null==e?void 0:e.name,status:null==e?void 0:e.status})}),[G,S,B,T,N,L]);return h("div",{className:L.container,children:[h(p,{className:L.formControl,disabled:D,children:[A(c,{shrink:!!z,children:N}),A(l,{"data-testid":e["data-testid"],classes:{select:L.select},value:z,disabled:_,onChange:function(t){var e=t.target,s=e.value===f?S||{id:f}:null==B?void 0:B.find((function(t){return t.id===e.value}));M(s)},fullWidth:!0,renderValue:H,children:O.map((function(t){var e=t.id,s=t.name,a=t.status,n=s||"";return A(y,{className:L.option,assetName:n,"data-testid":"".concat(j,"_option_").concat(n,"MenuItem"),value:e,status:a},e)}))})]}),D&&A(d,{"data-testid":"".concat(j,"_CircularProgress"),size:20,className:L.progress})]})};T.propTypes={appType:e.shape({constants:e.shape({})}),currentValue:e.oneOfType([e.number,e.string]),defaultValue:e.any,onChange:e.func.isRequired,parentAssetId:e.number,parentAssetType:e.string,assetType:e.string.isRequired,"data-testid":e.string,appKey:e.string,assetFields:e.array},T.defaultProps={currentValue:"",defaultValue:"",appType:void 0,parentAssetId:void 0,parentAssetType:void 0,"data-testid":"".concat(j,"_autoComplete"),appKey:null,assetFields:[]};export{j as PAGE_NAME,T as default};
|
|
2
2
|
//# sourceMappingURL=SecondaryAssetSelect.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecondaryAssetSelect.js","sources":["../../../../src/components/AssetEditorV2/components/SecondaryAssetSelect.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { useMemo, useCallback, useEffect, useRef } from 'react';\nimport { capitalize } from 'lodash';\nimport { CircularProgress, Select, FormControl, InputLabel, makeStyles } from '@material-ui/core';\n\nimport { useSecondaryAssetSelectData } from '../effects';\nimport { ACTIVE_ASSETS_ID, ACTIVE_ASSET_ID, ACTIVE_STATUS, DEFAULT_ASSET_TYPE } from '../constants';\n\nimport SelectItem from './SelectItem';\n\nimport { ASSET_TYPES } from '~/constants';\n\nexport const PAGE_NAME = 'DC_SingleAssetEditor';\n\nconst useStyles = makeStyles(theme => ({\n container: {\n position: 'relative',\n },\n select: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n paddingBottom: 0,\n paddingTop: 0,\n },\n formControl: {\n marginTop: 16,\n width: '100%',\n '& .MuiInput-underline.Mui-disabled, & .MuiFilledInput-underline.Mui-disabled': {\n '&::before': {\n borderBottom: `1px solid #808080`,\n },\n },\n },\n selectValue: ({ disabled }) => ({\n cursor: 'pointer',\n padding: 0,\n color: disabled ? theme.palette.primary.text7 : theme.palette.primary.contrastText,\n '&:hover': {\n backgroundColor: 'initial',\n },\n }),\n option: ({ disabled }) => ({\n cursor: 'pointer',\n padding: '0px 0px 0px 16px',\n color: disabled ? theme.palette.primary.text7 : theme.palette.primary.contrastText,\n '&:hover': {\n backgroundColor: 'rgba(255, 255, 255, 0.16)',\n },\n }),\n activeAssets: {\n color: '#9E9E9E',\n padding: '8px 0 6px',\n },\n progress: {\n position: 'absolute',\n right: 20,\n bottom: 4,\n },\n noActiveAsset: {\n color: '#9E9E9E',\n padding: '8px 0 6px',\n },\n}));\n\nconst SecondaryAssetSelect = props => {\n const {\n appKey,\n primaryAssetLabel,\n isRequiredAssetId,\n secondaryAssetLabel,\n company,\n currentValue,\n defaultValue,\n onChange,\n disabled,\n parentAssetId,\n assetType,\n parentAssetType,\n assetFields,\n activeWellId,\n isDrillingPlatformApp,\n } = props;\n\n const prevActiveAssetRef = useRef();\n\n const { assets, loading } = useSecondaryAssetSelectData({\n appKey,\n assetType: isDrillingPlatformApp ? DEFAULT_ASSET_TYPE : assetType,\n company,\n parentAssetId,\n parentAssetType,\n isRequiredAssetId,\n assetFields,\n activeWellId,\n });\n const styles = useStyles({ disabled });\n\n const activeAsset = useMemo(\n () =>\n parentAssetType === ASSET_TYPES.intervention_unit.type\n ? assets.find(asset => Number(asset.id) === Number(activeWellId))\n : assets.find(asset => asset.status === ACTIVE_STATUS),\n [assets, parentAssetType, activeWellId]\n );\n\n const value = currentValue || defaultValue;\n\n useEffect(() => {\n // force active asset preselection when assets are reset\n const isTrackingActiveAsset = !currentValue || currentValue === prevActiveAssetRef.current?.id;\n\n if (isTrackingActiveAsset && activeAsset) {\n onChange(activeAsset);\n prevActiveAssetRef.current = activeAsset;\n }\n }, [activeAsset, currentValue, onChange]);\n\n const capitalizedAssetType = capitalize(assetType);\n\n const options = useMemo(\n () => [{ name: `Active ${capitalizedAssetType}`, id: ACTIVE_ASSET_ID }, ...assets],\n [capitalizedAssetType, assets]\n );\n\n const handleSelectChange = ({ target }) => {\n const nextValue =\n target.value === ACTIVE_ASSET_ID\n ? activeAsset || { id: ACTIVE_ASSET_ID }\n : assets?.find(asset => asset.id === target.value);\n onChange(nextValue);\n };\n\n const renderSelectValue = useCallback(\n assetId => {\n if (assetId === ACTIVE_ASSETS_ID) {\n return <span className={styles.activeAssets}>{`Active ${capitalizedAssetType}s`}</span>;\n }\n if (assetId === ACTIVE_ASSET_ID && !activeAsset) {\n return (\n <span className={styles.noActiveAsset}>\n {`${primaryAssetLabel} has No Active ${secondaryAssetLabel}`}\n </span>\n );\n }\n if (assetId === ACTIVE_ASSET_ID && !!activeAsset) {\n return (\n <SelectItem\n className={styles.selectValue}\n assetName={activeAsset.name}\n status={activeAsset.status}\n />\n );\n }\n const selectedAsset = assets.find(asset => asset.id === assetId);\n return (\n <SelectItem\n className={styles.selectValue}\n assetName={selectedAsset?.name}\n status={selectedAsset?.status}\n />\n );\n },\n [capitalizedAssetType, activeAsset, assets, primaryAssetLabel, secondaryAssetLabel, styles]\n );\n\n return (\n <div className={styles.container}>\n <FormControl className={styles.formControl} disabled={loading}>\n <InputLabel shrink={!!value}>{secondaryAssetLabel}</InputLabel>\n <Select\n data-testid={props['data-testid']}\n classes={{ select: styles.select }}\n value={value}\n disabled={disabled}\n onChange={handleSelectChange}\n fullWidth\n renderValue={renderSelectValue}\n >\n {options.map(({ id, name, status }) => {\n const assetName = name || '';\n return (\n <SelectItem\n className={styles.option}\n assetName={assetName}\n data-testid={`${PAGE_NAME}_option_${assetName}MenuItem`}\n key={id}\n value={id}\n status={status}\n />\n );\n })}\n </Select>\n </FormControl>\n {loading && (\n <CircularProgress\n data-testid={`${PAGE_NAME}_CircularProgress`}\n size={20}\n className={styles.progress}\n />\n )}\n </div>\n );\n};\n\nSecondaryAssetSelect.propTypes = {\n appType: PropTypes.shape({\n constants: PropTypes.shape({}),\n }),\n currentValue: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n defaultValue: PropTypes.any, // eslint-disable-line react/forbid-prop-types\n onChange: PropTypes.func.isRequired,\n parentAssetId: PropTypes.number,\n parentAssetType: PropTypes.string,\n assetType: PropTypes.string.isRequired,\n 'data-testid': PropTypes.string,\n appKey: PropTypes.string,\n assetFields: PropTypes.array,\n};\n\nSecondaryAssetSelect.defaultProps = {\n currentValue: '', // NOTE: If 'undefined' <SelectField /> displays 'label'\n defaultValue: '',\n appType: undefined,\n parentAssetId: undefined,\n parentAssetType: undefined,\n 'data-testid': `${PAGE_NAME}_autoComplete`,\n appKey: null,\n assetFields: [],\n};\n\nexport default SecondaryAssetSelect;\n"],"names":["PAGE_NAME","useStyles","makeStyles","theme","container","position","select","display","alignItems","justifyContent","paddingBottom","paddingTop","formControl","marginTop","width","borderBottom","selectValue","_ref","cursor","padding","color","disabled","palette","primary","text7","contrastText","backgroundColor","option","_ref2","activeAssets","progress","right","bottom","noActiveAsset","SecondaryAssetSelect","props","appKey","primaryAssetLabel","isRequiredAssetId","secondaryAssetLabel","company","currentValue","defaultValue","onChange","parentAssetId","assetType","parentAssetType","assetFields","activeWellId","isDrillingPlatformApp","prevActiveAssetRef","useRef","_useSecondaryAssetSel","useSecondaryAssetSelectData","DEFAULT_ASSET_TYPE","assets","loading","styles","activeAsset","useMemo","ASSET_TYPES","intervention_unit","type","find","asset","Number","id","status","ACTIVE_STATUS","value","useEffect","_prevActiveAssetRef$c","current","capitalizedAssetType","capitalize","options","name","concat","ACTIVE_ASSET_ID","renderSelectValue","useCallback","assetId","ACTIVE_ASSETS_ID","_jsx","className","children","SelectItem","assetName","selectedAsset","_jsxs","FormControl","InputLabel","shrink","Select","classes","_ref3","target","nextValue","fullWidth","renderValue","map","_ref4","CircularProgress","size","propTypes","appType","PropTypes","shape","constants","oneOfType","number","string","any","func","isRequired","array","defaultProps","undefined"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SecondaryAssetSelect.js","sources":["../../../../src/components/AssetEditorV2/components/SecondaryAssetSelect.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { useMemo, useCallback, useEffect, useRef } from 'react';\nimport { capitalize } from 'lodash';\nimport { CircularProgress, Select, FormControl, InputLabel, makeStyles } from '@material-ui/core';\n\nimport { useSecondaryAssetSelectData } from '../effects';\nimport { ACTIVE_ASSETS_ID, ACTIVE_ASSET_ID, ACTIVE_STATUS, DEFAULT_ASSET_TYPE } from '../constants';\n\nimport SelectItem from './SelectItem';\n\nimport { ASSET_TYPES } from '~/constants';\n\nexport const PAGE_NAME = 'DC_SingleAssetEditor';\n\nconst useStyles = makeStyles(theme => ({\n container: {\n position: 'relative',\n },\n select: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n paddingBottom: 0,\n paddingTop: 0,\n },\n formControl: {\n marginTop: 16,\n width: '100%',\n '& .MuiInput-underline.Mui-disabled, & .MuiFilledInput-underline.Mui-disabled': {\n '&::before': {\n borderBottom: `1px solid #808080`,\n },\n },\n },\n selectValue: ({ disabled }) => ({\n cursor: 'pointer',\n padding: 0,\n color: disabled ? theme.palette.primary.text7 : theme.palette.primary.contrastText,\n '&:hover': {\n backgroundColor: 'initial',\n },\n }),\n option: ({ disabled }) => ({\n cursor: 'pointer',\n padding: '0px 0px 0px 16px',\n color: disabled ? theme.palette.primary.text7 : theme.palette.primary.contrastText,\n '&:hover': {\n backgroundColor: 'rgba(255, 255, 255, 0.16)',\n },\n }),\n activeAssets: {\n color: '#9E9E9E',\n padding: '8px 0 6px',\n },\n progress: {\n position: 'absolute',\n right: 20,\n bottom: 4,\n },\n noActiveAsset: {\n color: '#9E9E9E',\n padding: '8px 0 6px',\n },\n}));\n\nconst SecondaryAssetSelect = props => {\n const {\n appKey,\n primaryAssetLabel,\n isRequiredAssetId,\n secondaryAssetLabel,\n company,\n currentValue,\n defaultValue,\n onChange,\n disabled,\n parentAssetId,\n assetType,\n parentAssetType,\n assetFields,\n activeWellId,\n isDrillingPlatformApp,\n } = props;\n\n const prevActiveAssetRef = useRef();\n\n const { assets, loading } = useSecondaryAssetSelectData({\n appKey,\n assetType: isDrillingPlatformApp ? DEFAULT_ASSET_TYPE : assetType,\n company,\n parentAssetId,\n parentAssetType,\n isRequiredAssetId,\n assetFields,\n activeWellId,\n });\n const styles = useStyles({ disabled });\n\n const activeAsset = useMemo(\n () =>\n parentAssetType === ASSET_TYPES.intervention_unit.type\n ? assets.find(asset => Number(asset.id) === Number(activeWellId))\n : assets.find(asset => asset.status === ACTIVE_STATUS),\n [assets, parentAssetType, activeWellId]\n );\n\n const value = currentValue || defaultValue;\n\n useEffect(() => {\n // force active asset preselection when assets are reset\n const isTrackingActiveAsset = !currentValue || currentValue === prevActiveAssetRef.current?.id;\n\n if (isTrackingActiveAsset && activeAsset) {\n onChange(activeAsset);\n prevActiveAssetRef.current = activeAsset;\n }\n }, [activeAsset, currentValue]);\n\n const capitalizedAssetType = capitalize(assetType);\n\n const options = useMemo(\n () => [{ name: `Active ${capitalizedAssetType}`, id: ACTIVE_ASSET_ID }, ...assets],\n [capitalizedAssetType, assets]\n );\n\n const handleSelectChange = ({ target }) => {\n const nextValue =\n target.value === ACTIVE_ASSET_ID\n ? activeAsset || { id: ACTIVE_ASSET_ID }\n : assets?.find(asset => asset.id === target.value);\n onChange(nextValue);\n };\n\n const renderSelectValue = useCallback(\n assetId => {\n if (assetId === ACTIVE_ASSETS_ID) {\n return <span className={styles.activeAssets}>{`Active ${capitalizedAssetType}s`}</span>;\n }\n if (assetId === ACTIVE_ASSET_ID && !activeAsset) {\n return (\n <span className={styles.noActiveAsset}>\n {`${primaryAssetLabel} has No Active ${secondaryAssetLabel}`}\n </span>\n );\n }\n if (assetId === ACTIVE_ASSET_ID && !!activeAsset) {\n return (\n <SelectItem\n className={styles.selectValue}\n assetName={activeAsset.name}\n status={activeAsset.status}\n />\n );\n }\n const selectedAsset = assets.find(asset => asset.id === assetId);\n return (\n <SelectItem\n className={styles.selectValue}\n assetName={selectedAsset?.name}\n status={selectedAsset?.status}\n />\n );\n },\n [capitalizedAssetType, activeAsset, assets, primaryAssetLabel, secondaryAssetLabel, styles]\n );\n\n return (\n <div className={styles.container}>\n <FormControl className={styles.formControl} disabled={loading}>\n <InputLabel shrink={!!value}>{secondaryAssetLabel}</InputLabel>\n <Select\n data-testid={props['data-testid']}\n classes={{ select: styles.select }}\n value={value}\n disabled={disabled}\n onChange={handleSelectChange}\n fullWidth\n renderValue={renderSelectValue}\n >\n {options.map(({ id, name, status }) => {\n const assetName = name || '';\n return (\n <SelectItem\n className={styles.option}\n assetName={assetName}\n data-testid={`${PAGE_NAME}_option_${assetName}MenuItem`}\n key={id}\n value={id}\n status={status}\n />\n );\n })}\n </Select>\n </FormControl>\n {loading && (\n <CircularProgress\n data-testid={`${PAGE_NAME}_CircularProgress`}\n size={20}\n className={styles.progress}\n />\n )}\n </div>\n );\n};\n\nSecondaryAssetSelect.propTypes = {\n appType: PropTypes.shape({\n constants: PropTypes.shape({}),\n }),\n currentValue: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n defaultValue: PropTypes.any, // eslint-disable-line react/forbid-prop-types\n onChange: PropTypes.func.isRequired,\n parentAssetId: PropTypes.number,\n parentAssetType: PropTypes.string,\n assetType: PropTypes.string.isRequired,\n 'data-testid': PropTypes.string,\n appKey: PropTypes.string,\n assetFields: PropTypes.array,\n};\n\nSecondaryAssetSelect.defaultProps = {\n currentValue: '', // NOTE: If 'undefined' <SelectField /> displays 'label'\n defaultValue: '',\n appType: undefined,\n parentAssetId: undefined,\n parentAssetType: undefined,\n 'data-testid': `${PAGE_NAME}_autoComplete`,\n appKey: null,\n assetFields: [],\n};\n\nexport default SecondaryAssetSelect;\n"],"names":["PAGE_NAME","useStyles","makeStyles","theme","container","position","select","display","alignItems","justifyContent","paddingBottom","paddingTop","formControl","marginTop","width","borderBottom","selectValue","_ref","cursor","padding","color","disabled","palette","primary","text7","contrastText","backgroundColor","option","_ref2","activeAssets","progress","right","bottom","noActiveAsset","SecondaryAssetSelect","props","appKey","primaryAssetLabel","isRequiredAssetId","secondaryAssetLabel","company","currentValue","defaultValue","onChange","parentAssetId","assetType","parentAssetType","assetFields","activeWellId","isDrillingPlatformApp","prevActiveAssetRef","useRef","_useSecondaryAssetSel","useSecondaryAssetSelectData","DEFAULT_ASSET_TYPE","assets","loading","styles","activeAsset","useMemo","ASSET_TYPES","intervention_unit","type","find","asset","Number","id","status","ACTIVE_STATUS","value","useEffect","_prevActiveAssetRef$c","current","capitalizedAssetType","capitalize","options","name","concat","ACTIVE_ASSET_ID","renderSelectValue","useCallback","assetId","ACTIVE_ASSETS_ID","_jsx","className","children","SelectItem","assetName","selectedAsset","_jsxs","FormControl","InputLabel","shrink","Select","classes","_ref3","target","nextValue","fullWidth","renderValue","map","_ref4","CircularProgress","size","propTypes","appType","PropTypes","shape","constants","oneOfType","number","string","any","func","isRequired","array","defaultProps","undefined"],"mappings":"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"}
|