@corva/ui 3.24.0-1 → 3.24.0-3
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/PrimaryAssetSelect.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/PrimaryAssetSelect.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/PrimaryAssetSelectV2.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/PrimaryAssetSelectV2.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/SecondaryAssetSelect.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/SecondaryAssetSelect.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/constants.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/constants.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/index.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/index.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/utils/index.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/utils/index.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/constants/segment.js +1 -1
- package/cjs-bundle/constants/segment.js.map +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelect.d.ts.map +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelect.js +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelect.js.map +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelectV2.d.ts.map +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelectV2.js +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelectV2.js.map +1 -1
- package/components/AssetEditorV2/components/SecondaryAssetSelect.d.ts.map +1 -1
- package/components/AssetEditorV2/components/SecondaryAssetSelect.js +1 -1
- package/components/AssetEditorV2/components/SecondaryAssetSelect.js.map +1 -1
- package/components/AssetEditorV2/constants.d.ts +3 -0
- package/components/AssetEditorV2/constants.d.ts.map +1 -1
- package/components/AssetEditorV2/constants.js +1 -1
- package/components/AssetEditorV2/constants.js.map +1 -1
- package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.d.ts.map +1 -1
- package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js +1 -1
- package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js.map +1 -1
- package/components/AssetEditorV2/index.d.ts.map +1 -1
- package/components/AssetEditorV2/index.js +1 -1
- package/components/AssetEditorV2/index.js.map +1 -1
- package/components/AssetEditorV2/utils/index.d.ts +2 -1
- package/components/AssetEditorV2/utils/index.d.ts.map +1 -1
- package/components/AssetEditorV2/utils/index.js +1 -1
- package/components/AssetEditorV2/utils/index.js.map +1 -1
- package/components/DevCenter/AppsDataProvider/effects/utils.js +1 -1
- package/components/DevCenter/AppsDataProvider/effects/utils.js.map +1 -1
- package/constants/segment.d.ts +1 -1
- package/constants/segment.d.ts.map +1 -1
- package/constants/segment.js +1 -1
- package/constants/segment.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@babel/runtime/helpers/slicedToArray"),t=require("
|
|
1
|
+
"use strict";var e=require("@babel/runtime/helpers/slicedToArray"),t=require("prop-types"),r=require("react"),a=require("lodash"),s=require("@material-ui/core"),n=require("../../Search/Search.js");require("../../Search/components/Listbox.js"),require("../../Search/components/Paper.js"),require("../../Search/components/RecentSearches.js");var o=require("../../Search/components/InputAdornmentLeft.js"),i=require("../../Search/components/Groups.js");require("../../Search/components/SelectAllListItem.js");var u=require("../effects/index.js"),l=require("../constants.js"),p=require("../utils/index.js"),c=require("./SelectItem.js"),d=require("react/jsx-runtime");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=h(e),g=h(t),f=s.makeStyles({paper:{boxShadow:"0px 3px 10px 0px #00000066"},listbox:{maxHeight:210,"& .MuiAutocomplete-option":{padding:"0px 0px 0px 16px"}},option:{padding:"6px 0","&:hover":{backgroundColor:"initial"}},groupChip:{height:32,padding:0},activeChip:{fontWeight:500,backgroundColor:"#75DB29",color:"#212121",fontSize:10,cursor:"pointer",height:12,textTransform:"uppercase",marginRight:12,letterSpacing:1}}),C=function(e){var t=e["data-testid"],h=e.appKey,g=e.assetFields,C=e.assetType,x=e.company,A=e.currentOption,b=e.currentValue,S=e.defaultValue,q=e.disableClearable,v=e.disabled,I=e.groups,j=e.isNullable,y=e.isRequiredAssetId,T=e.label,R=e.multiple,G=e.onActiveAssetIdChange,P=e.onChange,O=e.onGroupChange,V=e.onGroupReset,F=e.onInputReset,N=e.placeholder,k=e.selectedGroup,L=e.setCurrentOption,_=r.useState(""),E=m.default(_,2),D=E[0],H=E[1],K=p.getSearchPlaceholder(C),M=f(),U=u.usePrimaryAssetSelectData({appKey:h,assetType:C,company:x,groups:I,isRequiredAssetId:y,assetFields:g,selectedGroup:k,currentValue:b,setCurrentOption:L,onActiveAssetIdChange:G}),w=U.assets,z=U.loading,B=r.useCallback(a.debounce((function(e){H(e)}),200),[]);return d.jsx(n.Search,{classes:{paper:M.paper,listbox:M.listbox,groupChip:M.groupChip},defaultValue:S,disableClearable:q,disabled:v,isNullable:j,loading:z,onGroupChange:O,onGroupReset:V,placeholder:N||K,selectedGroup:k,onChange:function(e,t){P(t)},"data-testid":t,multiple:R,onInputChange:B,onInputReset:function(){F(),L(null)},TextFieldProps:{label:T,value:D,endAdornment:(null==A?void 0:A.status)===l.ACTIVE_STATUS&&d.jsx(s.Chip,{"data-not-migrated-muichip":!0,className:M.activeChip,label:"Active"})},isHiddenAllOption:!0,value:A,options:w,renderCustomOption:function(e,r){var a=e.status,s=e.name,n=e.id,o=r.selected;return d.jsx(c,{className:M.option,assetName:s,multiple:R,selected:o,value:n,status:a&&l.ACTIVE_STATUS,"data-testid":"".concat(t,"_option_").concat(s,"MenuItem")},n)},getOptionLabel:function(e){return e.name||""},GroupsComponent:i,groups:I,InputProps:{startAdornment:d.jsx(o,{})}})};C.propTypes={assetFields:g.default.array,"data-testid":g.default.string,onInputReset:g.default.func,onActiveAssetIdChange:g.default.func,placeholder:g.default.string},C.defaultProps={assetFields:[],"data-testid":"PrimaryAssetEditorAutocomplete",onInputReset:function(){},onActiveAssetIdChange:function(){},placeholder:null},module.exports=C;
|
|
2
2
|
//# sourceMappingURL=PrimaryAssetSelect.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrimaryAssetSelect.js","sources":["../../../../../src/components/AssetEditorV2/components/PrimaryAssetSelect.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { useCallback, useState } from 'react';\nimport { debounce } from 'lodash';\nimport { Chip, makeStyles } from '@material-ui/core';\n\nimport Search from '../../Search/Search';\nimport { Groups, InputAdornmentLeft } from '../../Search/components';\nimport { usePrimaryAssetSelectData } from '../effects';\nimport { ACTIVE_STATUS } from '../constants';\
|
|
1
|
+
{"version":3,"file":"PrimaryAssetSelect.js","sources":["../../../../../src/components/AssetEditorV2/components/PrimaryAssetSelect.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { useCallback, useState } from 'react';\nimport { debounce } from 'lodash';\nimport { Chip, makeStyles } from '@material-ui/core';\n\nimport Search from '../../Search/Search';\nimport { Groups, InputAdornmentLeft } from '../../Search/components';\nimport { usePrimaryAssetSelectData } from '../effects';\nimport { ACTIVE_STATUS } from '../constants';\nimport { getSearchPlaceholder } from '../utils';\n\nimport SelectItem from './SelectItem';\n\nconst useStyles = makeStyles({\n paper: {\n boxShadow: '0px 3px 10px 0px #00000066',\n },\n listbox: {\n maxHeight: 210,\n '& .MuiAutocomplete-option': {\n padding: '0px 0px 0px 16px',\n },\n },\n option: {\n padding: '6px 0',\n '&:hover': {\n backgroundColor: 'initial',\n },\n },\n groupChip: {\n height: 32,\n padding: 0,\n },\n activeChip: {\n fontWeight: 500,\n backgroundColor: '#75DB29',\n color: '#212121',\n fontSize: 10,\n cursor: 'pointer',\n height: 12,\n textTransform: 'uppercase',\n marginRight: 12,\n letterSpacing: 1,\n },\n});\n\nconst PrimaryAssetSelect = ({\n 'data-testid': PAGE_NAME,\n appKey,\n assetFields,\n assetType,\n company,\n currentOption,\n currentValue,\n defaultValue,\n disableClearable,\n disabled,\n groups,\n isNullable,\n isRequiredAssetId,\n label,\n multiple,\n onActiveAssetIdChange,\n onChange,\n onGroupChange,\n onGroupReset,\n onInputReset,\n placeholder,\n selectedGroup,\n setCurrentOption,\n}) => {\n const [searchValue, setSearchValue] = useState('');\n\n const searchPlaceholder = getSearchPlaceholder(assetType);\n const styles = useStyles();\n\n const { assets, loading: isLoading } = usePrimaryAssetSelectData({\n appKey,\n assetType,\n company,\n groups,\n isRequiredAssetId,\n assetFields,\n selectedGroup,\n currentValue,\n setCurrentOption,\n onActiveAssetIdChange,\n });\n\n const onInputChange = useCallback(\n debounce(value => {\n setSearchValue(value);\n }, 200),\n []\n );\n\n const renderOption = ({ status, name, id }, { selected }) => {\n return (\n <SelectItem\n className={styles.option}\n assetName={name}\n key={id}\n multiple={multiple}\n selected={selected}\n value={id}\n status={status && ACTIVE_STATUS}\n data-testid={`${PAGE_NAME}_option_${name}MenuItem`}\n />\n );\n };\n\n return (\n <Search\n classes={{\n paper: styles.paper,\n listbox: styles.listbox,\n groupChip: styles.groupChip,\n }}\n defaultValue={defaultValue}\n disableClearable={disableClearable}\n disabled={disabled}\n isNullable={isNullable}\n loading={isLoading}\n onGroupChange={onGroupChange}\n onGroupReset={onGroupReset}\n placeholder={placeholder || searchPlaceholder}\n selectedGroup={selectedGroup}\n onChange={(event, selected) => {\n onChange(selected);\n }}\n data-testid={PAGE_NAME}\n multiple={multiple}\n onInputChange={onInputChange}\n onInputReset={() => {\n onInputReset();\n setCurrentOption(null);\n }}\n TextFieldProps={{\n label,\n value: searchValue,\n endAdornment: currentOption?.status === ACTIVE_STATUS && (\n <Chip data-not-migrated-muichip className={styles.activeChip} label=\"Active\" />\n ),\n }}\n isHiddenAllOption\n value={currentOption}\n options={assets}\n renderCustomOption={renderOption}\n getOptionLabel={option => option.name || ''}\n GroupsComponent={Groups}\n groups={groups}\n InputProps={{\n startAdornment: <InputAdornmentLeft />,\n }}\n />\n );\n};\n\nPrimaryAssetSelect.propTypes = {\n assetFields: PropTypes.array,\n 'data-testid': PropTypes.string,\n onInputReset: PropTypes.func,\n onActiveAssetIdChange: PropTypes.func,\n placeholder: PropTypes.string,\n};\n\nPrimaryAssetSelect.defaultProps = {\n assetFields: [],\n 'data-testid': 'PrimaryAssetEditorAutocomplete',\n onInputReset: () => {},\n onActiveAssetIdChange: () => {},\n placeholder: null,\n};\n\nexport default PrimaryAssetSelect;\n"],"names":["useStyles","makeStyles","paper","boxShadow","listbox","maxHeight","padding","option","backgroundColor","groupChip","height","activeChip","fontWeight","color","fontSize","cursor","textTransform","marginRight","letterSpacing","PrimaryAssetSelect","_ref","PAGE_NAME","appKey","assetFields","assetType","company","currentOption","currentValue","defaultValue","disableClearable","disabled","groups","isNullable","isRequiredAssetId","label","multiple","onActiveAssetIdChange","onChange","onGroupChange","onGroupReset","onInputReset","placeholder","selectedGroup","setCurrentOption","useState","_useState2","_slicedToArray","_useState","searchValue","setSearchValue","searchPlaceholder","getSearchPlaceholder","styles","_usePrimaryAssetSelec","usePrimaryAssetSelectData","assets","isLoading","loading","onInputChange","useCallback","debounce","value","_jsx","Search","classes","event","selected","TextFieldProps","endAdornment","status","ACTIVE_STATUS","Chip","className","isHiddenAllOption","options","renderCustomOption","_ref2","_ref3","name","id","SelectItem","assetName","getOptionLabel","GroupsComponent","Groups","InputProps","startAdornment","InputAdornmentLeft","propTypes","PropTypes","array","string","func","defaultProps"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@babel/runtime/helpers/slicedToArray"),t=require("prop-types"),r=require("react"),
|
|
1
|
+
"use strict";var e=require("@babel/runtime/helpers/slicedToArray"),t=require("prop-types"),r=require("react"),a=require("lodash"),s=require("@material-ui/core"),n=require("../../Search/Search.js");require("../../Search/components/Listbox.js"),require("../../Search/components/Paper.js"),require("../../Search/components/RecentSearches.js");var o=require("../../Search/components/InputAdornmentLeft.js"),i=require("../../Search/components/Groups.js");require("../../Search/components/SelectAllListItem.js");var u=require("../effects/usePrimaryAssetSelectData.js"),l=require("../constants.js"),p=require("../utils/index.js"),c=require("./SelectItem.js"),d=require("../../AssetEditor/constants.js"),h=require("react/jsx-runtime");function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var f=m(e),g=m(t),A=s.makeStyles({paper:{boxShadow:"0px 3px 10px 0px #00000066"},listbox:{maxHeight:210,"& .MuiAutocomplete-option":{padding:"0px 0px 0px 16px"}},option:{padding:"6px 0","&:hover":{backgroundColor:"initial"}},groupChip:{height:32,padding:0},activeChip:{fontWeight:500,backgroundColor:"#75DB29",color:"#212121",fontSize:10,cursor:"pointer",height:12,textTransform:"uppercase",marginRight:12,letterSpacing:1}}),S=function(e){var t=e.placeholder,m=e.label,g=e["data-testid"],S=e.appKey,b=e.assetFields,C=e.assetType,x=e.company,v=e.currentOption,q=e.currentValue,j=e.defaultValue,I=e.disableClearable,y=e.disabled,P=e.groups,T=e.isDrillingPlatformApp,R=e.isNullable,G=e.isRequiredAssetId,E=e.multiple,V=e.onActiveAssetIdChange,O=e.onChange,D=e.onGroupChange,F=e.onGroupReset,L=e.onInputReset,N=e.selectedGroup,_=e.setCurrentOption,k=r.useState(""),H=f.default(k,2),M=H[0],K=H[1],U=r.useState(1),w=f.default(U,2),z=w[0],B=w[1],W=r.useState(!0),J=f.default(W,2),Q=J[0],X=J[1],Y=p.getSearchPlaceholder(C),Z=A(),$=u.usePrimaryAssetSelectData({isDrillingPlatformApp:T,searchValue:M,scrollPage:z,appKey:S,assetType:C,company:x,groups:P,isRequiredAssetId:G,assetFields:b,selectedGroup:N,currentValue:q,setCurrentOption:_,onActiveAssetIdChange:V}),ee=$.assets,te=$.loading;r.useEffect((function(){var e=ee.length>=d.PER_PAGE*z;X(e)}),[ee,z]);var re=r.useMemo((function(){return a.debounce((function(e,t){"input"===t&&(B(1),K(e))}),200)}),[]),ae=r.useMemo((function(){return a.debounce((function(){return B((function(e){return e+1}))}),250)}),[]);return h.jsx(n.Search,{classes:{paper:Z.paper,listbox:Z.listbox,groupChip:Z.groupChip},defaultValue:j,disableClearable:I||y,disabled:y,isNullable:R,loading:te,onGroupChange:D,placeholder:t||Y,selectedGroup:N,onGroupReset:F,onChange:function(e,t){O(t)},"data-testid":g,multiple:E,onInputChangeCallback:re,onInputReset:function(){L(),_(null)},TextFieldProps:{label:m,value:M,endAdornment:(null==v?void 0:v.status)===l.ACTIVE_STATUS&&h.jsx(s.Chip,{"data-not-migrated-muichip":!0,className:Z.activeChip,label:"Active"})},ListboxProps:{onScroll:function(e){if(Q&&!te){var t=e.currentTarget;t.scrollTop+t.clientHeight>t.scrollHeight-800&&ae()}}},isHiddenAllOption:!0,value:v,options:ee,renderCustomOption:function(e,t){var r=e.status,a=e.name,s=e.id,n=t.selected;return h.jsx(c,{className:Z.option,assetName:a,multiple:E,selected:n,value:s,status:r&&l.ACTIVE_STATUS,"data-testid":"".concat(g,"_option_").concat(a,"MenuItem")},s)},getOptionLabel:function(e){return e.name||""},GroupsComponent:i,groups:P,InputProps:{startAdornment:h.jsx(o,{})}})};S.propTypes={assetFields:g.default.array,"data-testid":g.default.string,onInputReset:g.default.func,onActiveAssetIdChange:g.default.func,placeholder:g.default.string},S.defaultProps={assetFields:[],"data-testid":"PrimaryAssetEditorAutocomplete",onInputReset:function(){},onActiveAssetIdChange:function(){},placeholder:null},module.exports=S;
|
|
2
2
|
//# sourceMappingURL=PrimaryAssetSelectV2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrimaryAssetSelectV2.js","sources":["../../../../../src/components/AssetEditorV2/components/PrimaryAssetSelectV2.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { useEffect, useMemo, useState } from 'react';\nimport { debounce } from 'lodash';\nimport { Chip, makeStyles } from '@material-ui/core';\n\nimport Search from '../../Search/Search';\nimport { Groups, InputAdornmentLeft } from '../../Search/components';\nimport { usePrimaryAssetSelectData } from '../effects/usePrimaryAssetSelectData';\nimport { ACTIVE_STATUS } from '../constants';\
|
|
1
|
+
{"version":3,"file":"PrimaryAssetSelectV2.js","sources":["../../../../../src/components/AssetEditorV2/components/PrimaryAssetSelectV2.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { useEffect, useMemo, useState } from 'react';\nimport { debounce } from 'lodash';\nimport { Chip, makeStyles } from '@material-ui/core';\n\nimport Search from '../../Search/Search';\nimport { Groups, InputAdornmentLeft } from '../../Search/components';\nimport { usePrimaryAssetSelectData } from '../effects/usePrimaryAssetSelectData';\nimport { ACTIVE_STATUS } from '../constants';\nimport { getSearchPlaceholder } from '../utils';\n\nimport SelectItem from './SelectItem';\n\nimport { PER_PAGE } from '~/components/AssetEditor/constants';\n\nconst useStyles = makeStyles({\n paper: {\n boxShadow: '0px 3px 10px 0px #00000066',\n },\n listbox: {\n maxHeight: 210,\n '& .MuiAutocomplete-option': {\n padding: '0px 0px 0px 16px',\n },\n },\n option: {\n padding: '6px 0',\n '&:hover': {\n backgroundColor: 'initial',\n },\n },\n groupChip: {\n height: 32,\n padding: 0,\n },\n activeChip: {\n fontWeight: 500,\n backgroundColor: '#75DB29',\n color: '#212121',\n fontSize: 10,\n cursor: 'pointer',\n height: 12,\n textTransform: 'uppercase',\n marginRight: 12,\n letterSpacing: 1,\n },\n});\n\nconst PrimaryAssetSelect = ({\n placeholder,\n label,\n 'data-testid': PAGE_NAME,\n appKey,\n assetFields,\n assetType,\n company,\n currentOption,\n currentValue,\n defaultValue,\n disableClearable,\n disabled,\n groups,\n isDrillingPlatformApp,\n isNullable,\n isRequiredAssetId,\n multiple,\n onActiveAssetIdChange,\n onChange,\n onGroupChange,\n onGroupReset,\n onInputReset,\n selectedGroup,\n setCurrentOption,\n}) => {\n const [searchValue, setSearchValue] = useState('');\n const [scrollPage, setScrollPage] = useState(1);\n const [hasMore, setHasMore] = useState(true);\n const searchPlaceholder = getSearchPlaceholder(assetType);\n const styles = useStyles();\n\n const { assets, loading: isLoading } = usePrimaryAssetSelectData({\n isDrillingPlatformApp,\n searchValue,\n scrollPage,\n appKey,\n assetType,\n company,\n groups,\n isRequiredAssetId,\n assetFields,\n selectedGroup,\n currentValue,\n setCurrentOption,\n onActiveAssetIdChange,\n });\n\n useEffect(() => {\n const hasMoreAssets = assets.length >= PER_PAGE * scrollPage;\n setHasMore(hasMoreAssets);\n }, [assets, scrollPage]);\n\n const onInputChange = useMemo(\n () =>\n debounce((value, reason) => {\n if (reason === 'input') {\n setScrollPage(1);\n setSearchValue(value);\n }\n }, 200),\n []\n );\n\n const handleFetchNext = useMemo(\n () => debounce(() => setScrollPage(prevScrollPage => prevScrollPage + 1), 250),\n []\n );\n\n const onScrollListbox = event => {\n if (!hasMore || isLoading) return;\n const listboxNode = event.currentTarget;\n if (listboxNode.scrollTop + listboxNode.clientHeight > listboxNode.scrollHeight - 800) {\n handleFetchNext();\n }\n };\n\n const renderOption = ({ status, name, id }, { selected }) => {\n return (\n <SelectItem\n className={styles.option}\n assetName={name}\n key={id}\n multiple={multiple}\n selected={selected}\n value={id}\n status={status && ACTIVE_STATUS}\n data-testid={`${PAGE_NAME}_option_${name}MenuItem`}\n />\n );\n };\n\n return (\n <Search\n classes={{\n paper: styles.paper,\n listbox: styles.listbox,\n groupChip: styles.groupChip,\n }}\n defaultValue={defaultValue}\n disableClearable={disableClearable || disabled}\n disabled={disabled}\n isNullable={isNullable}\n loading={isLoading}\n onGroupChange={onGroupChange}\n placeholder={placeholder || searchPlaceholder}\n selectedGroup={selectedGroup}\n onGroupReset={onGroupReset}\n onChange={(event, selected) => {\n onChange(selected);\n }}\n data-testid={PAGE_NAME}\n multiple={multiple}\n onInputChangeCallback={onInputChange}\n onInputReset={() => {\n onInputReset();\n setCurrentOption(null);\n }}\n TextFieldProps={{\n label,\n value: searchValue,\n endAdornment: currentOption?.status === ACTIVE_STATUS && (\n <Chip data-not-migrated-muichip className={styles.activeChip} label=\"Active\" />\n ),\n }}\n ListboxProps={{\n onScroll: onScrollListbox,\n }}\n isHiddenAllOption\n value={currentOption}\n options={assets}\n renderCustomOption={renderOption}\n getOptionLabel={option => option.name || ''}\n GroupsComponent={Groups}\n groups={groups}\n InputProps={{\n startAdornment: <InputAdornmentLeft />,\n }}\n />\n );\n};\n\nPrimaryAssetSelect.propTypes = {\n assetFields: PropTypes.array,\n 'data-testid': PropTypes.string,\n onInputReset: PropTypes.func,\n onActiveAssetIdChange: PropTypes.func,\n placeholder: PropTypes.string,\n};\n\nPrimaryAssetSelect.defaultProps = {\n assetFields: [],\n 'data-testid': 'PrimaryAssetEditorAutocomplete',\n onInputReset: () => {},\n onActiveAssetIdChange: () => {},\n placeholder: null,\n};\n\nexport default PrimaryAssetSelect;\n"],"names":["useStyles","makeStyles","paper","boxShadow","listbox","maxHeight","padding","option","backgroundColor","groupChip","height","activeChip","fontWeight","color","fontSize","cursor","textTransform","marginRight","letterSpacing","PrimaryAssetSelect","_ref","placeholder","label","PAGE_NAME","appKey","assetFields","assetType","company","currentOption","currentValue","defaultValue","disableClearable","disabled","groups","isDrillingPlatformApp","isNullable","isRequiredAssetId","multiple","onActiveAssetIdChange","onChange","onGroupChange","onGroupReset","onInputReset","selectedGroup","setCurrentOption","useState","_useState2","_slicedToArray","_useState","searchValue","setSearchValue","_useState4","_useState3","scrollPage","setScrollPage","_useState6","_useState5","hasMore","setHasMore","searchPlaceholder","getSearchPlaceholder","styles","_usePrimaryAssetSelec","usePrimaryAssetSelectData","assets","isLoading","loading","useEffect","hasMoreAssets","length","PER_PAGE","onInputChange","useMemo","debounce","value","reason","handleFetchNext","prevScrollPage","_jsx","Search","classes","event","selected","onInputChangeCallback","TextFieldProps","endAdornment","status","ACTIVE_STATUS","Chip","className","ListboxProps","onScroll","listboxNode","currentTarget","scrollTop","clientHeight","scrollHeight","isHiddenAllOption","options","renderCustomOption","_ref2","_ref3","name","id","SelectItem","assetName","getOptionLabel","GroupsComponent","Groups","InputProps","startAdornment","InputAdornmentLeft","propTypes","PropTypes","array","string","func","defaultProps"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/toConsumableArray"),t=require("prop-types"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/toConsumableArray"),t=require("prop-types"),s=require("lodash"),a=require("@material-ui/core"),r=require("../effects/index.js"),n=require("../constants.js"),i=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 o=require("../../../constants/assetTypes.js");require("../../../constants/corvaCompanyId.js"),require("../../GradientManager/configuration/constants.js");var u=require("react/jsx-runtime");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=l(e),c=l(t),p="DC_SingleAssetEditor",f=a.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"}}})),m=function(e){var t=e.appKey,l=e.primaryAssetLabel,c=e.isRequiredAssetId,m=e.secondaryAssetLabel,A=e.company,T=e.currentValue,v=e.defaultValue,y=e.onChange,g=e.disabled,b=e.parentAssetId,I=e.assetType,S=e.parentAssetType,j=e.assetFields,E=e.activeWellId,x=e.isDrillingPlatformApp,_=r.useSecondaryAssetSelectData({appKey:t,assetId:T,assetType:x?n.DEFAULT_ASSET_TYPE:I,company:A,parentAssetId:b,parentAssetType:S,isRequiredAssetId:c,assetFields:j,activeWellId:E}),q=_.assets,C=_.loading,h=f({disabled:g}),V=T||v,N=q.some((function(e){return e.status===n.ACTIVE_STATUS}));S===o.ASSET_TYPES.intervention_unit.type&&(N=q.some((function(e){return Number(e.id)===Number(E)})));var D=s.capitalize(I),P=[{name:"Active ".concat(D),id:n.ACTIVE_ASSET_ID}].concat(d.default(q));return u.jsxs("div",{className:h.container,children:[u.jsxs(a.FormControl,{className:h.formControl,disabled:C,children:[u.jsx(a.InputLabel,{shrink:!!V,children:m}),u.jsx(a.Select,{"data-testid":e["data-testid"],classes:{select:h.select},value:V,disabled:g,onChange:function(e){var t=e.target,s=t.value===n.ACTIVE_ASSET_ID?{id:n.ACTIVE_ASSET_ID}:null==q?void 0:q.find((function(e){return e.id===t.value}));y(s)},fullWidth:!0,renderValue:function(e){if(e===n.ACTIVE_ASSETS_ID)return u.jsx("span",{className:h.activeAssets,children:"Active ".concat(D,"s")});if(e===n.ACTIVE_ASSET_ID&&!N)return u.jsx("span",{className:h.noActiveAsset,children:"".concat(l," has No Active ").concat(m," activeWellId: (").concat(E,")")});if(e===n.ACTIVE_ASSET_ID&&N){var t=S===o.ASSET_TYPES.intervention_unit.type?q.find((function(e){return Number(e.id)===Number(E)})):q.find((function(e){return e.status===n.ACTIVE_STATUS}));return u.jsx(i,{className:h.selectValue,assetName:t.name,status:t.status})}var s=q.find((function(t){return t.id===e}));return u.jsx(i,{className:h.selectValue,assetName:null==s?void 0:s.name,status:null==s?void 0:s.status})},children:P.map((function(e){var t=e.id,s=e.name,a=e.status,r="".concat(s," (").concat(t,") ").concat(a)||"";return u.jsx(i,{className:h.option,assetName:r,"data-testid":"".concat(p,"_option_").concat(r,"MenuItem"),value:t,status:a},t)}))})]}),C&&u.jsx(a.CircularProgress,{"data-testid":"".concat(p,"_CircularProgress"),size:20,className:h.progress})]})};m.propTypes={appType:c.default.shape({constants:c.default.shape({})}),currentValue:c.default.oneOfType([c.default.number,c.default.string]),defaultValue:c.default.any,onChange:c.default.func.isRequired,parentAssetId:c.default.number,parentAssetType:c.default.string,assetType:c.default.string.isRequired,"data-testid":c.default.string,appKey:c.default.string,assetFields:c.default.array},m.defaultProps={currentValue:"",defaultValue:"",appType:void 0,parentAssetId:void 0,parentAssetType:void 0,"data-testid":"".concat(p,"_autoComplete"),appKey:null,assetFields:[]},exports.PAGE_NAME=p,exports.default=m;
|
|
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 { 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\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 { assets, loading } = useSecondaryAssetSelectData({\n appKey,\n assetId: currentValue,\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 value = currentValue || defaultValue;\n const hasActiveAsset = assets.some(asset => asset.status === ACTIVE_STATUS);\n const capitalizedAssetType = capitalize(assetType);\n\n const options = [{ name: `Active ${capitalizedAssetType}`, id: ACTIVE_ASSET_ID }, ...assets];\n\n const handleSelectChange = ({ target }) => {\n const nextValue =\n target.value === ACTIVE_ASSET_ID\n ? { id: ACTIVE_ASSET_ID }\n : assets?.find(asset => asset.id === target.value);\n onChange(nextValue);\n };\n\n const renderSelectValue = assetId => {\n if (assetId === ACTIVE_ASSETS_ID) {\n return <span className={styles.activeAssets}>{`Active ${capitalizedAssetType}s`}</span>;\n }\n if (assetId === ACTIVE_ASSET_ID && !hasActiveAsset) {\n return (\n <span className={styles.noActiveAsset}>\n {`${primaryAssetLabel} has No Active ${secondaryAssetLabel}`}\n </span>\n );\n }\n if (assetId === ACTIVE_ASSET_ID && hasActiveAsset) {\n const activeAsset = assets.find(asset => asset.status === ACTIVE_STATUS);\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\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","_useSecondaryAssetSel","useSecondaryAssetSelectData","assetId","DEFAULT_ASSET_TYPE","assets","loading","styles","value","hasActiveAsset","some","asset","status","ACTIVE_STATUS","capitalizedAssetType","capitalize","options","name","concat","id","ACTIVE_ASSET_ID","_toConsumableArray","_jsxs","className","children","FormControl","_jsx","InputLabel","shrink","Select","classes","_ref3","target","nextValue","find","fullWidth","renderValue","ACTIVE_ASSETS_ID","activeAsset","SelectItem","assetName","selectedAsset","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 { 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 { assets, loading } = useSecondaryAssetSelectData({\n appKey,\n assetId: currentValue,\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 value = currentValue || defaultValue;\n let hasActiveAsset = assets.some(asset => asset.status === ACTIVE_STATUS);\n if (parentAssetType === ASSET_TYPES.intervention_unit.type) {\n hasActiveAsset = assets.some(asset => Number(asset.id) === Number(activeWellId));\n }\n const capitalizedAssetType = capitalize(assetType);\n\n const options = [{ name: `Active ${capitalizedAssetType}`, id: ACTIVE_ASSET_ID }, ...assets];\n\n const handleSelectChange = ({ target }) => {\n const nextValue =\n target.value === ACTIVE_ASSET_ID\n ? { id: ACTIVE_ASSET_ID }\n : assets?.find(asset => asset.id === target.value);\n onChange(nextValue);\n };\n\n const renderSelectValue = assetId => {\n if (assetId === ACTIVE_ASSETS_ID) {\n return <span className={styles.activeAssets}>{`Active ${capitalizedAssetType}s`}</span>;\n }\n if (assetId === ACTIVE_ASSET_ID && !hasActiveAsset) {\n return (\n <span className={styles.noActiveAsset}>\n {`${primaryAssetLabel} has No Active ${secondaryAssetLabel} activeWellId: (${activeWellId})`}\n </span>\n );\n }\n if (assetId === ACTIVE_ASSET_ID && hasActiveAsset) {\n const activeAsset =\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 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\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} (${id}) ${status}` || '';\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","_useSecondaryAssetSel","useSecondaryAssetSelectData","assetId","DEFAULT_ASSET_TYPE","assets","loading","styles","value","hasActiveAsset","some","asset","status","ACTIVE_STATUS","ASSET_TYPES","intervention_unit","type","Number","id","capitalizedAssetType","capitalize","options","name","concat","ACTIVE_ASSET_ID","_toConsumableArray","_jsxs","className","children","FormControl","_jsx","InputLabel","shrink","Select","classes","_ref3","target","nextValue","find","fullWidth","renderValue","ACTIVE_ASSETS_ID","activeAsset","SelectItem","assetName","selectedAsset","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
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.ACTIVE_ASSETS_ID="activeAssets",exports.ACTIVE_ASSET_ID="activeAsset",exports.ACTIVE_STATUS="active",exports.DEFAULT_ASSET_TYPE="asset";
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty");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 t=require("../../constants/assetTypes.js");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("../../constants/corvaCompanyId.js"),require("lodash"),require("../GradientManager/configuration/constants.js");var r,n=s(e),a=(r={},n.default(r,t.ASSET_TYPES.intervention_unit.type,"Search Intervention Unit..."),n.default(r,t.ASSET_TYPES.rig.type,"Search Rig..."),n.default(r,t.ASSET_TYPES.frac_fleet.type,"Search Pad / Frac Fleet..."),r);exports.ACTIVE_ASSETS_ID="activeAssets",exports.ACTIVE_ASSET_ID="activeAsset",exports.ACTIVE_STATUS="active",exports.ASSET_TYPE_SEARCH_PLACEHOLDERS=a,exports.DEFAULT_ASSET_TYPE="asset";
|
|
2
2
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["../../../../src/components/AssetEditorV2/constants.js"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../../src/components/AssetEditorV2/constants.js"],"sourcesContent":["import { ASSET_TYPES } from '~/constants';\n\nexport const PER_PAGE = 200;\n\n// The distance in pixels before the end of the items that will trigger a call to loadMore.\nexport const SCROLL_THRESHOLD = 400;\n\nexport const ACTIVE_STATUS = 'active';\n\nexport const ACTIVE_ASSET_ID = 'activeAsset';\n\nexport const ACTIVE_ASSETS_ID = 'activeAssets';\n\nexport const DEFAULT_ASSET_TYPE = 'asset';\n\nexport const ASSET_TYPE_SEARCH_PLACEHOLDERS = {\n [ASSET_TYPES.intervention_unit.type]: 'Search Intervention Unit...',\n [ASSET_TYPES.rig.type]: 'Search Rig...',\n [ASSET_TYPES.frac_fleet.type]: 'Search Pad / Frac Fleet...',\n};\n"],"names":["ASSET_TYPE_SEARCH_PLACEHOLDERS","_ASSET_TYPE_SEARCH_PL","_defineProperty","ASSET_TYPES","intervention_unit","type","rig","frac_fleet"],"mappings":"uvBAeaA,GAA8BC,EAAA,GAAAC,EAAAA,QAAAD,EACxCE,cAAYC,kBAAkBC,KAAO,+BAA6BH,UAAAD,EAClEE,EAAWA,YAACG,IAAID,KAAO,iBACvBF,EAAAA,QAAAA,EAAAA,EAAAA,YAAYI,WAAWF,KAAO,8BAChCJ,4BAR+B,uCAFD,oCAFF,6EAMK"}
|
|
@@ -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/toConsumableArray"),s=require("@babel/runtime/helpers/slicedToArray"),n=require("@babel/runtime/regenerator"),
|
|
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/toConsumableArray"),s=require("@babel/runtime/helpers/slicedToArray"),n=require("@babel/runtime/regenerator"),i=require("react"),a=require("lodash"),u=require("../utils/index.js");require("uuid"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment");var o=require("../../../clients/jsonApi/index.js");require("../../../clients/subscriptions/constants.js"),require("../../../clients/subscriptions.v1.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js");var c=require("../../../utils/jsonaDataFormatter.js"),l=require("../../AssetEditor/constants.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 p=require("../../../constants/assetTypes.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("../../../constants/corvaCompanyId.js"),require("../../GradientManager/configuration/constants.js");var f=d(e),q=d(t),j=d(r),y=d(s),b=d(n);function m(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,s)}return r}function v(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?m(Object(r),!0).forEach((function(t){f.default(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):m(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}exports.usePrimaryAssetSelectData=function(e){var t,r,s=e.appKey,n=e.assetType,d=e.company,f=e.groups,m=e.isRequiredAssetId,g=e.parentAssetId,A=e.parentAssetType,h=e.searchValue,P=e.assetFields,O=e.currentValue,E=e.setCurrentOption,S=e.scrollPage,_=e.onActiveAssetIdChange,x=e.isDrillingPlatformApp,D=i.useState([]),T=y.default(D,2),w=T[0],R=T[1],I=i.useState(!1),k=y.default(I,2),C=k[0],G=k[1],F=i.useRef(null),Y=n===p.ASSET_TYPES.pad.type?[].concat(j.default(P),["pad.active","pad.parent_frac_fleet_id"]):P,z=(t=q.default(b.default.mark((function e(t){var r,i,p,f,q,y;return b.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,r=(null==t?void 0:t.type)||n,G(!0),i={per_page:l.PER_PAGE,page:S},A&&g&&(i[A]=g),d&&"all"!==d&&(i.company=d),h&&(i.search=h),s&&(i.app_key=s),F.current=d,p=o.mapAssetGetRequest(r)(v(v({},u.getRequestOptions(r,Y)),i)),e.next=12,p;case 12:f=e.sent,q=c.jsonaDataFormatter.deserialize(f),y=a.map(q,(function(e){return u.formatAsset({asset:e,group:null==t?void 0:t.name,isRequiredAssetId:m,isPrimaryAsset:!0,isDrillingPlatformApp:x})})).sort(u.sortAsset),F.current===d&&R((function(e){return a.uniqBy([].concat(j.default(e),j.default(y)),"id")})),e.next=21;break;case 18:e.prev=18,e.t0=e.catch(0),console.error(e.t0);case 21:return e.prev=21,G(!1),e.finish(21);case 24:case"end":return e.stop()}}),e,null,[[0,18,21,24]])}))),function(e){return t.apply(this,arguments)}),M=(r=q.default(b.default.mark((function e(){var t,r,s,i,l,d,f,q;return b.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.mapAssetGetRequest(n)(v(v({},u.getRequestOptions(n,Y)),{},{ids:O}));case 2:if(t=e.sent,!a.isEmpty(t.data)){e.next=7;break}return e.next=6,o.getAssets(v(v({},u.getRequestOptions(n,Y)),{},{ids:O}));case 6:t=e.sent;case 7:r=c.jsonaDataFormatter.deserialize(t),s=u.formatAsset({asset:r[0],isPrimaryAsset:!0,isRequiredAssetId:m,isDrillingPlatformApp:x}),E(s),n===p.ASSET_TYPES.rig.type?(f=x?Number(null===(i=t)||void 0===i||null===(l=i.included)||void 0===l||null===(d=l[0])||void 0===d?void 0:d.id):(null==s?void 0:s.activeWellId)||null,_(f)):n===p.ASSET_TYPES.intervention_unit.type&&(q=(null==s?void 0:s.activeWellId)||null,_(q));case 11:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)});return i.useEffect((function(){d&&R([])}),[d]),i.useEffect((function(){f?f.forEach((function(e){z(e)})):z()}),[n,A,g,d,s,null==f?void 0:f.length,h,S]),i.useEffect((function(){O&&M()}),[]),{assets:w,loading:C}};
|
|
2
2
|
//# sourceMappingURL=usePrimaryAssetSelectData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePrimaryAssetSelectData.js","sources":["../../../../../src/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport { isEmpty, map, uniqBy } from 'lodash';\n\nimport { formatAsset, getRequestOptions, sortAsset } from '../utils';\n\nimport { jsonApi } from '~/clients';\nimport { jsonaDataFormatter } from '~/utils/jsonaDataFormatter';\nimport { PER_PAGE } from '~/components/AssetEditor/constants';\nimport { ASSET_TYPES } from '~/constants';\n\nexport function usePrimaryAssetSelectData({\n appKey,\n assetType,\n company,\n groups,\n isRequiredAssetId,\n parentAssetId,\n parentAssetType,\n searchValue,\n assetFields,\n currentValue,\n setCurrentOption,\n scrollPage,\n onActiveAssetIdChange,\n isDrillingPlatformApp,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(false);\n const prevCompany = useRef(null);\n\n const assetFieldsByAssetType =\n assetType === ASSET_TYPES.pad.type\n ? [...assetFields, 'pad.active', 'pad.parent_frac_fleet_id']\n : assetFields;\n\n const loadAssets = async group => {\n try {\n const currentAssetType = group?.type || assetType;\n setLoading(true);\n const requestParams = { per_page: PER_PAGE, page: scrollPage };\n if (parentAssetType && parentAssetId) requestParams[parentAssetType] = parentAssetId;\n if (company && company !== 'all') requestParams.company = company;\n if (searchValue) requestParams.search = searchValue;\n if (appKey) requestParams.app_key = appKey;\n\n prevCompany.current = company;\n const requestPromise = jsonApi.mapAssetGetRequest(currentAssetType)({\n ...getRequestOptions(currentAssetType, assetFieldsByAssetType),\n ...requestParams,\n });\n\n const response = await requestPromise;\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n const responseAssets = map(deserializedResponse, asset =>\n formatAsset({\n asset,\n group: group?.name,\n isRequiredAssetId,\n isPrimaryAsset: true,\n isDrillingPlatformApp,\n })\n ).sort(sortAsset);\n\n if (prevCompany.current === company) {\n setAssets(prevState => uniqBy([...prevState, ...responseAssets], 'id'));\n }\n } catch (e) {\n console.error(e);\n } finally {\n setLoading(false);\n }\n };\n\n const loadCurrentOption = async () => {\n let response = await jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType, assetFieldsByAssetType),\n ids: currentValue,\n });\n if (isEmpty(response.data)) {\n // NOTE: Try fetch current option from v2/assets\n response = await jsonApi.getAssets({\n ...getRequestOptions(assetType, assetFieldsByAssetType),\n ids: currentValue,\n });\n }\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n const formattedAsset = formatAsset({\n asset: deserializedResponse[0],\n isPrimaryAsset: true,\n isRequiredAssetId,\n isDrillingPlatformApp,\n });\n\n setCurrentOption(formattedAsset);\n if (assetType === ASSET_TYPES.rig.type) {\n const activeWellId = isDrillingPlatformApp\n ? Number(response?.included?.[0]?.id)\n : formattedAsset?.activeWellId || null;\n onActiveAssetIdChange(activeWellId);\n }\n };\n\n useEffect(() => {\n if (company) {\n setAssets([]);\n }\n }, [company]);\n\n useEffect(() => {\n if (groups) {\n groups.forEach(group => {\n loadAssets(group);\n });\n return;\n }\n loadAssets();\n }, [\n assetType,\n parentAssetType,\n parentAssetId,\n company,\n appKey,\n groups?.length,\n searchValue,\n scrollPage,\n ]);\n\n useEffect(() => {\n if (currentValue) {\n loadCurrentOption();\n }\n }, []);\n\n return { assets, loading };\n}\n"],"names":["_ref","_ref2","_ref3","appKey","assetType","company","groups","isRequiredAssetId","parentAssetId","parentAssetType","searchValue","assetFields","currentValue","setCurrentOption","scrollPage","onActiveAssetIdChange","isDrillingPlatformApp","useState","_useState2","_slicedToArray","_useState","assets","setAssets","_useState4","_useState3","loading","setLoading","prevCompany","useRef","assetFieldsByAssetType","ASSET_TYPES","pad","type","concat","_toConsumableArray","loadAssets","_asyncToGenerator","_regeneratorRuntime","mark","group","currentAssetType","requestParams","requestPromise","response","deserializedResponse","responseAssets","wrap","_context","prev","next","per_page","PER_PAGE","page","search","app_key","current","jsonApi","_objectSpread","getRequestOptions","sent","jsonaDataFormatter","deserialize","map","asset","formatAsset","name","isPrimaryAsset","sort","sortAsset","prevState","uniqBy","t0","console","error","finish","stop","_callee","_x","apply","this","arguments","loadCurrentOption","_callee2","formattedAsset","_response","_response$included","_response$included$","activeWellId","_context2","ids","isEmpty","data","getAssets","rig","Number","included","id","useEffect","forEach","length"],"mappings":"6uEAUO,SAeJA,GAAA,IAUeC,EAuCUC,EA/D1BC,IAAAA,OACAC,IAAAA,UACAC,IAAAA,QACAC,IAAAA,OACAC,IAAAA,kBACAC,IAAAA,cACAC,IAAAA,gBACAC,IAAAA,YACAC,IAAAA,YACAC,IAAAA,aACAC,IAAAA,iBACAC,IAAAA,WACAC,IAAAA,sBACAC,IAAAA,sBAE4BC,EAAAA,EAAQA,SAAC,IAAGC,EAAAC,EAAAA,QAAAC,EAAA,GAAjCC,EAAMH,EAAA,GAAEI,EAASJ,EAAA,GACMD,EAAAA,EAAQA,UAAC,GAAMM,EAAAJ,EAAAA,QAAAK,EAAA,GAAtCC,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GACpBI,EAAcC,SAAO,MAErBC,EACJzB,IAAc0B,EAAAA,YAAYC,IAAIC,KAAI,GAAAC,OAAAC,EAAAA,QAC1BvB,GAAa,CAAA,aAAc,6BAC/BA,EAEAwB,GAAUlC,EAAAmC,EAAAA,QAAAC,EAAAA,QAAAC,MAAG,WAAMC,GAAK,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAR,UAAAS,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAcxB,OAdwBF,EAAAC,KAAA,EAEpBR,GAAmBD,eAAAA,EAAOP,OAAQ5B,EACxCsB,GAAW,GACLe,EAAgB,CAAES,SAAUC,EAAQA,SAAEC,KAAMtC,GAC9CL,GAAmBD,IAAeiC,EAAchC,GAAmBD,GACnEH,GAAuB,QAAZA,IAAmBoC,EAAcpC,QAAUA,GACtDK,IAAa+B,EAAcY,OAAS3C,GACpCP,IAAQsC,EAAca,QAAUnD,GAEpCwB,EAAY4B,QAAUlD,EAChBqC,EAAiBc,EAAAA,mBAA2BhB,EAA3BgB,CAA4CC,EAAAA,EAAA,CAAA,EAC9DC,EAAiBA,kBAAClB,EAAkBX,IACpCY,IACHM,EAAAE,KAAA,GAEqBP,EAAc,KAAA,GAA/BC,EAAQI,EAAAY,KACRf,EAAuBgB,EAAkBA,mBAACC,YAAYlB,GAEtDE,EAAiBiB,EAAGA,IAAClB,GAAsB,SAAAmB,GAAK,OACpDC,cAAY,CACVD,MAAAA,EACAxB,MAAOA,aAAAA,EAAAA,EAAO0B,KACd1D,kBAAAA,EACA2D,gBAAgB,EAChBlD,sBAAAA,GACA,IACFmD,KAAKC,EAAAA,WAEHzC,EAAY4B,UAAYlD,GAC1BiB,GAAU,SAAA+C,GAAS,OAAIC,SAAWD,GAAAA,OAAAA,UAAAA,aAAcxB,IAAiB,SAClEE,EAAAE,KAAA,GAAA,MAAA,KAAA,GAAAF,EAAAC,KAAA,GAAAD,EAAAwB,GAAAxB,EAAA,MAAA,GAEDyB,QAAQC,MAAQ1B,EAAAwB,IAAC,KAAA,GAEC,OAFDxB,EAAAC,KAAA,GAEjBtB,GAAW,GAAOqB,EAAA2B,OAAA,IAAA,KAAA,GAAA,IAAA,MAAA,OAAA3B,EAAA4B,OAAA,GAAAC,EAAA,KAAA,CAAA,CAAA,EAAA,GAAA,GAAA,KAErB,KAAA,SArCeC,GAAA,OAAA5E,EAAA6E,MAAAC,KAAAC,UAAA,GAuCVC,GAAoB/E,EAAAkC,EAAA,QAAAC,EAAA,QAAAC,MAAA,SAAA4C,IAAA,IAAAvC,EAAAC,EAAAuC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,
|
|
1
|
+
{"version":3,"file":"usePrimaryAssetSelectData.js","sources":["../../../../../src/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport { isEmpty, map, uniqBy } from 'lodash';\n\nimport { formatAsset, getRequestOptions, sortAsset } from '../utils';\n\nimport { jsonApi } from '~/clients';\nimport { jsonaDataFormatter } from '~/utils/jsonaDataFormatter';\nimport { PER_PAGE } from '~/components/AssetEditor/constants';\nimport { ASSET_TYPES } from '~/constants';\n\nexport function usePrimaryAssetSelectData({\n appKey,\n assetType,\n company,\n groups,\n isRequiredAssetId,\n parentAssetId,\n parentAssetType,\n searchValue,\n assetFields,\n currentValue,\n setCurrentOption,\n scrollPage,\n onActiveAssetIdChange,\n isDrillingPlatformApp,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(false);\n const prevCompany = useRef(null);\n\n const assetFieldsByAssetType =\n assetType === ASSET_TYPES.pad.type\n ? [...assetFields, 'pad.active', 'pad.parent_frac_fleet_id']\n : assetFields;\n\n const loadAssets = async group => {\n try {\n const currentAssetType = group?.type || assetType;\n setLoading(true);\n const requestParams = { per_page: PER_PAGE, page: scrollPage };\n if (parentAssetType && parentAssetId) requestParams[parentAssetType] = parentAssetId;\n if (company && company !== 'all') requestParams.company = company;\n if (searchValue) requestParams.search = searchValue;\n if (appKey) requestParams.app_key = appKey;\n\n prevCompany.current = company;\n const requestPromise = jsonApi.mapAssetGetRequest(currentAssetType)({\n ...getRequestOptions(currentAssetType, assetFieldsByAssetType),\n ...requestParams,\n });\n\n const response = await requestPromise;\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n const responseAssets = map(deserializedResponse, asset =>\n formatAsset({\n asset,\n group: group?.name,\n isRequiredAssetId,\n isPrimaryAsset: true,\n isDrillingPlatformApp,\n })\n ).sort(sortAsset);\n\n if (prevCompany.current === company) {\n setAssets(prevState => uniqBy([...prevState, ...responseAssets], 'id'));\n }\n } catch (e) {\n console.error(e);\n } finally {\n setLoading(false);\n }\n };\n\n const loadCurrentOption = async () => {\n let response = await jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType, assetFieldsByAssetType),\n ids: currentValue,\n });\n if (isEmpty(response.data)) {\n // NOTE: Try fetch current option from v2/assets\n response = await jsonApi.getAssets({\n ...getRequestOptions(assetType, assetFieldsByAssetType),\n ids: currentValue,\n });\n }\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n const formattedAsset = formatAsset({\n asset: deserializedResponse[0],\n isPrimaryAsset: true,\n isRequiredAssetId,\n isDrillingPlatformApp,\n });\n\n setCurrentOption(formattedAsset);\n if (assetType === ASSET_TYPES.rig.type) {\n const activeWellId = isDrillingPlatformApp\n ? Number(response?.included?.[0]?.id)\n : formattedAsset?.activeWellId || null;\n onActiveAssetIdChange(activeWellId);\n } else if (assetType === ASSET_TYPES.intervention_unit.type) {\n const activeWellId = formattedAsset?.activeWellId || null;\n onActiveAssetIdChange(activeWellId);\n }\n };\n\n useEffect(() => {\n if (company) {\n setAssets([]);\n }\n }, [company]);\n\n useEffect(() => {\n if (groups) {\n groups.forEach(group => {\n loadAssets(group);\n });\n return;\n }\n loadAssets();\n }, [\n assetType,\n parentAssetType,\n parentAssetId,\n company,\n appKey,\n groups?.length,\n searchValue,\n scrollPage,\n ]);\n\n useEffect(() => {\n if (currentValue) {\n loadCurrentOption();\n }\n }, []);\n\n return { assets, loading };\n}\n"],"names":["_ref","_ref2","_ref3","appKey","assetType","company","groups","isRequiredAssetId","parentAssetId","parentAssetType","searchValue","assetFields","currentValue","setCurrentOption","scrollPage","onActiveAssetIdChange","isDrillingPlatformApp","useState","_useState2","_slicedToArray","_useState","assets","setAssets","_useState4","_useState3","loading","setLoading","prevCompany","useRef","assetFieldsByAssetType","ASSET_TYPES","pad","type","concat","_toConsumableArray","loadAssets","_asyncToGenerator","_regeneratorRuntime","mark","group","currentAssetType","requestParams","requestPromise","response","deserializedResponse","responseAssets","wrap","_context","prev","next","per_page","PER_PAGE","page","search","app_key","current","jsonApi","_objectSpread","getRequestOptions","sent","jsonaDataFormatter","deserialize","map","asset","formatAsset","name","isPrimaryAsset","sort","sortAsset","prevState","uniqBy","t0","console","error","finish","stop","_callee","_x","apply","this","arguments","loadCurrentOption","_callee2","formattedAsset","_response","_response$included","_response$included$","activeWellId","_activeWellId","_context2","ids","isEmpty","data","getAssets","rig","Number","included","id","intervention_unit","useEffect","forEach","length"],"mappings":"6uEAUO,SAeJA,GAAA,IAUeC,EAuCUC,EA/D1BC,IAAAA,OACAC,IAAAA,UACAC,IAAAA,QACAC,IAAAA,OACAC,IAAAA,kBACAC,IAAAA,cACAC,IAAAA,gBACAC,IAAAA,YACAC,IAAAA,YACAC,IAAAA,aACAC,IAAAA,iBACAC,IAAAA,WACAC,IAAAA,sBACAC,IAAAA,sBAE4BC,EAAAA,EAAQA,SAAC,IAAGC,EAAAC,EAAAA,QAAAC,EAAA,GAAjCC,EAAMH,EAAA,GAAEI,EAASJ,EAAA,GACMD,EAAAA,EAAQA,UAAC,GAAMM,EAAAJ,EAAAA,QAAAK,EAAA,GAAtCC,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GACpBI,EAAcC,SAAO,MAErBC,EACJzB,IAAc0B,EAAAA,YAAYC,IAAIC,KAAI,GAAAC,OAAAC,EAAAA,QAC1BvB,GAAa,CAAA,aAAc,6BAC/BA,EAEAwB,GAAUlC,EAAAmC,EAAAA,QAAAC,EAAAA,QAAAC,MAAG,WAAMC,GAAK,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAR,UAAAS,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAcxB,OAdwBF,EAAAC,KAAA,EAEpBR,GAAmBD,eAAAA,EAAOP,OAAQ5B,EACxCsB,GAAW,GACLe,EAAgB,CAAES,SAAUC,EAAQA,SAAEC,KAAMtC,GAC9CL,GAAmBD,IAAeiC,EAAchC,GAAmBD,GACnEH,GAAuB,QAAZA,IAAmBoC,EAAcpC,QAAUA,GACtDK,IAAa+B,EAAcY,OAAS3C,GACpCP,IAAQsC,EAAca,QAAUnD,GAEpCwB,EAAY4B,QAAUlD,EAChBqC,EAAiBc,EAAAA,mBAA2BhB,EAA3BgB,CAA4CC,EAAAA,EAAA,CAAA,EAC9DC,EAAiBA,kBAAClB,EAAkBX,IACpCY,IACHM,EAAAE,KAAA,GAEqBP,EAAc,KAAA,GAA/BC,EAAQI,EAAAY,KACRf,EAAuBgB,EAAkBA,mBAACC,YAAYlB,GAEtDE,EAAiBiB,EAAGA,IAAClB,GAAsB,SAAAmB,GAAK,OACpDC,cAAY,CACVD,MAAAA,EACAxB,MAAOA,aAAAA,EAAAA,EAAO0B,KACd1D,kBAAAA,EACA2D,gBAAgB,EAChBlD,sBAAAA,GACA,IACFmD,KAAKC,EAAAA,WAEHzC,EAAY4B,UAAYlD,GAC1BiB,GAAU,SAAA+C,GAAS,OAAIC,SAAWD,GAAAA,OAAAA,UAAAA,aAAcxB,IAAiB,SAClEE,EAAAE,KAAA,GAAA,MAAA,KAAA,GAAAF,EAAAC,KAAA,GAAAD,EAAAwB,GAAAxB,EAAA,MAAA,GAEDyB,QAAQC,MAAQ1B,EAAAwB,IAAC,KAAA,GAEC,OAFDxB,EAAAC,KAAA,GAEjBtB,GAAW,GAAOqB,EAAA2B,OAAA,IAAA,KAAA,GAAA,IAAA,MAAA,OAAA3B,EAAA4B,OAAA,GAAAC,EAAA,KAAA,CAAA,CAAA,EAAA,GAAA,GAAA,KAErB,KAAA,SArCeC,GAAA,OAAA5E,EAAA6E,MAAAC,KAAAC,UAAA,GAuCVC,GAAoB/E,EAAAkC,EAAA,QAAAC,EAAA,QAAAC,MAAA,SAAA4C,IAAA,IAAAvC,EAAAC,EAAAuC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAnD,UAAAS,MAAA,SAAA2C,GAAA,OAAA,OAAAA,EAAAzC,KAAAyC,EAAAxC,MAAA,KAAA,EAAA,OAAAwC,EAAAxC,KAAA,EACHO,qBAA2BpD,EAA3BoD,CAChBE,EAAAA,EAAAA,GAAAA,EAAAA,kBAAkBtD,EAAWyB,IAAuB,CAAA,EAAA,CACvD6D,IAAK9E,KACL,KAAA,EAHU,GAAR+B,EAAQ8C,EAAA9B,MAIRgC,EAAOA,QAAChD,EAASiD,MAAK,CAAAH,EAAAxC,KAAA,EAAA,KAAA,CAAA,OAAAwC,EAAAxC,KAAA,EAEPO,EAAiBqC,UAAApC,EAAAA,EAAA,CAAA,EAC7BC,EAAiBA,kBAACtD,EAAWyB,IAAuB,GAAA,CACvD6D,IAAK9E,KACL,KAAA,EAHF+B,EAAQ8C,EAAA9B,KAAA,KAAA,EAKJf,EAAuBgB,EAAkBA,mBAACC,YAAYlB,GAEtDwC,EAAiBnB,EAAAA,YAAY,CACjCD,MAAOnB,EAAqB,GAC5BsB,gBAAgB,EAChB3D,kBAAAA,EACAS,sBAAAA,IAGFH,EAAiBsE,GACb/E,IAAc0B,EAAAA,YAAYgE,IAAI9D,MAC1BuD,EAAevE,EACjB+E,OAAe,QAATX,EAACzC,SAAQ,IAAAyC,GAAR,QAAQC,EAARD,EAAUY,gBAAV,IAAAX,GAAA,QAAAC,EAAAD,EAAqB,UAArB,IAAAC,OAAQ,EAARA,EAAyBW,KAChCd,aAAc,EAAdA,EAAgBI,eAAgB,KACpCxE,EAAsBwE,IACbnF,IAAc0B,cAAYoE,kBAAkBlE,OAC/CuD,GAAeJ,eAAAA,EAAgBI,eAAgB,KACrDxE,EAAsBwE,IACvB,KAAA,GAAA,IAAA,MAAA,OAAAE,EAAAd,OAAA,GAAAO,EACF,KAAA,WA/BsB,OAAAhF,EAAA4E,MAAAC,KAAAC,UAAA,GAgEvB,OA/BAmB,EAAAA,WAAU,WACJ9F,GACFiB,EAAU,GAEd,GAAG,CAACjB,IAEJ8F,EAAAA,WAAU,WACJ7F,EACFA,EAAO8F,SAAQ,SAAA7D,GACbJ,EAAWI,EACb,IAGFJ,MACC,CACD/B,EACAK,EACAD,EACAH,EACAF,EACAG,aAAAA,EAAAA,EAAQ+F,OACR3F,EACAI,IAGFqF,EAAAA,WAAU,WACJvF,GACFqE,GAEH,GAAE,IAEI,CAAE5D,OAAAA,EAAQI,QAAAA,EACnB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@babel/runtime/helpers/toConsumableArray"),t=require("@babel/runtime/helpers/defineProperty"),s=require("@babel/runtime/helpers/slicedToArray"),a=require("react"),r=require("prop-types"),l=require("lodash"),n=require("classnames"),i=require("@material-ui/core"),u=require("./components/PrimaryAssetSelect.js"),d=require("./components/SecondaryAssetSelect.js");require("./components/SelectItem.js");var o=require("./components/MultipleAssetsToggle.js"),c=require("./components/PrimaryAssetSelectV2.js"),p=require("./constants.js"),f=require("./utils/index.js");require("../../constants/goals.js");var y=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 A=require("../../constants/assetTypes.js");require("../../constants/corvaCompanyId.js"),require("../GradientManager/configuration/constants.js");var m=require("react/jsx-runtime");function g(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var S=g(e),b=g(t),v=g(s),T=g(r),h=g(n);function j(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),s.push.apply(s,a)}return s}function q(e){for(var t=1;t<arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?j(Object(s),!0).forEach((function(t){b.default(e,t,s[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):j(Object(s)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))}))}return e}var I=i.makeStyles({title:{fontWeight:400,fontSize:20,margin:"24px 0 16px"}}),E=function(e){var t=e.appKey,s=e.appType,r=e.className,n=e.company,i=e.defaultValue,g=e.secondaryDefaultValue,T=e.disabled,j=e.isHiddenTitle,E=e.isNullable,P=e.label,
|
|
1
|
+
"use strict";var e=require("@babel/runtime/helpers/toConsumableArray"),t=require("@babel/runtime/helpers/defineProperty"),s=require("@babel/runtime/helpers/slicedToArray"),a=require("react"),r=require("prop-types"),l=require("lodash"),n=require("classnames"),i=require("@material-ui/core"),u=require("./components/PrimaryAssetSelect.js"),d=require("./components/SecondaryAssetSelect.js");require("./components/SelectItem.js");var o=require("./components/MultipleAssetsToggle.js"),c=require("./components/PrimaryAssetSelectV2.js"),p=require("./constants.js"),f=require("./utils/index.js");require("../../constants/goals.js");var y=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 A=require("../../constants/assetTypes.js");require("../../constants/corvaCompanyId.js"),require("../GradientManager/configuration/constants.js");var m=require("react/jsx-runtime");function g(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var S=g(e),b=g(t),v=g(s),T=g(r),h=g(n);function j(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),s.push.apply(s,a)}return s}function q(e){for(var t=1;t<arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?j(Object(s),!0).forEach((function(t){b.default(e,t,s[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):j(Object(s)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))}))}return e}var I=i.makeStyles({title:{fontWeight:400,fontSize:20,margin:"24px 0 16px"}}),E=function(e){var t=e.appKey,s=e.appType,r=e.className,n=e.company,i=e.defaultValue,g=e.secondaryDefaultValue,T=e.disabled,j=e.isHiddenTitle,E=e.isNullable,P=e.label,_=e.onSettingsChange,C=e.primaryAssetFields,O=e.secondaryAssetFields,D=e.isExtendedSelect,F=e.isRequiredAssetId,N=e.settings,V=e.isVisibleMultipleAssetsToggle,x=e.assetsLimit,R=e.isDisabledSecondaryAssetSelect,w=e.isDrillingPlatformApp,G=e.secondaryAssetHelpText,L=e.onChange,Y=e.elementsClassNames,k=l.get(s,["primaryAsset","assetType","type"]),H=l.get(s,["primaryAsset","assetType","id"]),K=l.get(s,["primaryAsset","assetType","label"]),M=l.get(s,["primaryAsset","groups"]),U=l.get(s,["secondaryAsset","assetType","type"]),W=l.get(s,["secondaryAsset","assetType","id"]),z=l.get(s,["secondaryAsset","assetType","label"]),B=l.get(N,H),J=B?Number(B):null,Q=l.get(N,W)?Number(l.get(N,W)):g||null,X=a.useState({id:J||i}),Z=v.default(X,2),$=Z[0],ee=Z[1],te=a.useState(Q),se=v.default(te,2),ae=se[0],re=se[1],le=a.useState(!1),ne=v.default(le,2),ie=ne[0],ue=ne[1],de=a.useState(),oe=v.default(de,2),ce=oe[0],pe=oe[1],fe=a.useState(!1),ye=v.default(fe,2),Ae=ye[0],me=ye[1],ge=a.useRef(!1),Se=function(){for(var e=arguments.length,t=new Array(e),s=0;s<e;s++)t[s]=arguments[s];_.apply(void 0,t.concat([ge.current]))},be=I(),ve=k===A.ASSET_TYPES.rig.type||k===A.ASSET_TYPES.intervention_unit.type?c:u,Te=w&&null!=$&&$.assetId?null==$?void 0:$.assetId:null==$?void 0:$.id,he=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};ee(t),re(null),ue(!1);var s=(e={},b.default(e,H,null),b.default(e,W,null),b.default(e,"assets",null),e);Se(s)},je=Ae?Boolean($.length)&&!ie:(null==$?void 0:$.id)&&!ie;return a.useEffect((function(){l.isEmpty(N)&&he(Ae&&[])}),[N]),m.jsxs("div",{className:h.default(be.main,r),children:[!j&&m.jsx("div",{className:h.default(be.title,Y.title),children:"Asset"}),V&&m.jsx(o,{onChange:function(e){var t=e.target;ge.current=!!t.checked,me(t.checked),he(t.checked&&[])},className:Y.multiAssetSwitch}),m.jsx("div",{className:Y.primaryAssetSelect,children:m.jsx(ve,{appKey:t,assetType:k,company:n,currentOption:$,currentValue:null==$?void 0:$.id,"data-testid":"".concat("DC_AppSettingsAssetEditor","_primaryAssetEditorAutocomplete"),defaultValue:i,disableClearable:!E,disabled:T,isNullable:E,isRequiredAssetId:F,label:P,multiple:Ae,onChange:function(e){if(L({primary:e}),Ae)!function(e){var t,s;if(!(e.length>x)){var a=(null===(t=e[0])||void 0===t?void 0:t.group)===y.PAD_GROUP.name,r=(null===(s=e[0])||void 0===s?void 0:s.group)===y.FRAC_FLEET_GROUP.name,l=1===e.length&&a,n=1===e.length&&r;if(l?(ue(!0),pe(y.PAD_GROUP)):n&&pe(y.FRAC_FLEET_GROUP),a){ee(e);var i=null==e?void 0:e.reduce((function(e,t){var s=t.parentFracFleetId,a=t.id,r={fracFleetId:s,padId:a};return D&&(r.assetId=s,r.replacedPadId=a),s?[].concat(S.default(e),[r]):e}),[]);Se({assets:i})}else{ee(e);var u=e.reduce((function(e,t){var s=b.default({},"".concat(t.type,"Id"),t.id);return F&&(s.assetId=t.assetId),D&&(s.assetId=t.assetId||t.id),[].concat(S.default(e),[s])}),[]);Se({assets:u})}}}(e);else{var t=e.id,s=e.type,a=e.parentFracFleetId;if(t)if(s!==A.ASSET_TYPES.pad.type){ee(e),re(null);var r=b.default({},H,t);F&&(r.assetId=e.assetId),W&&(r[W]=null),Se(r),ue(!1)}else{var l;ee(e),ue(!0),re(t);var n=(l={},b.default(l,A.ASSET_TYPES.frac_fleet.id,Number(a)),b.default(l,A.ASSET_TYPES.pad.id,t),l);Se(n)}}},setCurrentOption:ee,selectedGroup:ce,onGroupChange:function(e){pe(e),he(Ae&&[])},onGroupReset:function(){pe(null),he(Ae&&[])},groups:M,onInputReset:he,onActiveAssetIdChange:function(e){ee((function(t){return q(q({},t),{},{activeWellId:e})}))},isDrillingPlatformApp:w,assetFields:f.getPrimaryAssetFields(k,C,w)})}),je&&m.jsxs("div",{className:Y.secondaryAssetSelect,children:[G,m.jsx(d.default,{assetFields:U===A.ASSET_TYPES.pad.type?[].concat(S.default(O),["pad.active","pad.current"]):O,activeWellId:null==$?void 0:$.activeWellId,appKey:t,assetType:U,company:n,currentValue:ae,"data-testid":"".concat("DC_AppSettingsAssetEditor","_secondaryAutoComplete"),defaultValue:Ae?p.ACTIVE_ASSETS_ID:p.ACTIVE_ASSET_ID,disabled:Ae||R||T,isDrillingPlatformApp:w,isNullable:E,isRequiredAssetId:F,onChange:function(e){var t=e.id,s=e.assetId,a=e.name;L({secondary:{name:a}}),re(t);var r=t===p.ACTIVE_ASSET_ID?null:t,l=b.default({},W,r);F&&U===A.ASSET_TYPES.well.type?Se(q(q({},l),{},{replacedAssetId:w?r:s})):Se(l)},parentAssetId:Te,parentAssetType:w?"parent_asset_id":k,primaryAssetLabel:K,secondaryAssetLabel:z})]})]})};E.defaultProps={assetsLimit:null,label:"Choose An Asset",isNullable:!1,defaultValue:void 0,secondaryDefaultValue:void 0,isHiddenTitle:!1,appKey:null,isVisibleMultipleAssetsToggle:!1,isDisabledSecondaryAssetSelect:!1,primaryAssetFields:[],secondaryAssetFields:[],secondaryAssetHelpText:null,onChange:l.noop,elementsClassNames:{}},E.propTypes={assetsLimit:T.default.number,settings:T.default.shape({}).isRequired,appType:T.default.shape({}).isRequired,defaultValue:T.default.any,secondaryDefaultValue:T.default.any,onSettingsChange:T.default.func.isRequired,label:T.default.string,isNullable:T.default.bool,isHiddenTitle:T.default.bool,appKey:T.default.string,isVisibleMultipleAssetsToggle:T.default.bool,isDisabledSecondaryAssetSelect:T.default.bool,primaryAssetFields:T.default.arrayOf(T.default.shape({})),secondaryAssetFields:T.default.arrayOf(T.default.shape({})),secondaryAssetHelpText:T.default.oneOfType([T.default.element,T.default.string]),onChange:T.default.func,elementsClassNames:T.default.shape({title:T.default.string,multiAssetSwitch:T.default.string,primaryAssetSelect:T.default.string,secondaryAssetSelect:T.default.string})},module.exports=E;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/AssetEditorV2/index.js"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { get, isEmpty, noop } from 'lodash';\nimport classNames from 'classnames';\nimport { makeStyles } from '@material-ui/core';\n\nimport { PrimaryAssetSelect, PrimaryAssetSelectV2, SecondaryAssetSelect } from './components';\nimport { ACTIVE_ASSET_ID, ACTIVE_ASSETS_ID } from './constants';\nimport MultipleAssetsToggle from './components/MultipleAssetsToggle';\nimport { getPrimaryAssetFields } from './utils';\n\nimport { ASSET_TYPES } from '~/constants';\nimport { FRAC_FLEET_GROUP, PAD_GROUP } from '~/constants/segment';\n\nconst useStyles = makeStyles({\n title: { fontWeight: 400, fontSize: 20, margin: '24px 0 16px' },\n});\n\nconst PAGE_NAME = 'DC_AppSettingsAssetEditor';\nconst PARENT_ASSET_ID = 'parent_asset_id';\n\nconst AppSettingsAssetEditor = ({\n appKey,\n appType,\n className,\n company,\n defaultValue,\n secondaryDefaultValue,\n disabled,\n isHiddenTitle,\n isNullable,\n label,\n onSettingsChange: propsOnSettingsChange,\n primaryAssetFields,\n secondaryAssetFields,\n isExtendedSelect,\n isRequiredAssetId,\n settings,\n isVisibleMultipleAssetsToggle,\n assetsLimit,\n isDisabledSecondaryAssetSelect,\n isDrillingPlatformApp,\n secondaryAssetHelpText,\n onChange,\n elementsClassNames,\n}) => {\n const primaryAssetType = get(appType, ['primaryAsset', 'assetType', 'type']);\n const primaryAssetIdType = get(appType, ['primaryAsset', 'assetType', 'id']);\n const primaryAssetLabel = get(appType, ['primaryAsset', 'assetType', 'label']);\n const primaryAssetSelectGroups = get(appType, ['primaryAsset', 'groups']);\n\n const secondaryAssetType = get(appType, ['secondaryAsset', 'assetType', 'type']);\n const secondaryAssetIdType = get(appType, ['secondaryAsset', 'assetType', 'id']);\n const secondaryAssetLabel = get(appType, ['secondaryAsset', 'assetType', 'label']);\n\n const currentValue = get(settings, primaryAssetIdType);\n const initialPrimaryAssetId = currentValue ? Number(currentValue) : null;\n const initialSecondaryAssetId = get(settings, secondaryAssetIdType)\n ? Number(get(settings, secondaryAssetIdType))\n : secondaryDefaultValue || null;\n const [primaryAsset, setPrimaryAsset] = useState({ id: initialPrimaryAssetId || defaultValue });\n\n const [secondaryAssetId, setSecondaryAssetId] = useState(initialSecondaryAssetId);\n const [isPadSelectedAsPrimaryAsset, setIsPadSelectedAsPrimaryAsset] = useState(false);\n const [selectedGroup, setSelectedGroup] = useState();\n const [isMultipleAssets, setIsMultipleAssets] = useState(false);\n const isMultipleAssetsRef = useRef(false);\n const onSettingsChange = (...args) => {\n propsOnSettingsChange(...args, isMultipleAssetsRef.current);\n };\n\n const styles = useStyles();\n\n const PrimaryAssetSelectComponent =\n primaryAssetType === ASSET_TYPES.rig.type ? PrimaryAssetSelectV2 : PrimaryAssetSelect;\n\n const parentAssetId =\n isDrillingPlatformApp && primaryAsset?.assetId ? primaryAsset?.assetId : primaryAsset?.id;\n\n const onSecondaryAssetChange = ({ id, assetId, name }) => {\n onChange({ secondary: { name } });\n setSecondaryAssetId(id);\n const secondaryAssetId = id === ACTIVE_ASSET_ID ? null : id;\n const assetSettings = { [secondaryAssetIdType]: secondaryAssetId };\n\n if (isRequiredAssetId && secondaryAssetType === ASSET_TYPES.well.type) {\n onSettingsChange({\n ...assetSettings,\n replacedAssetId: isDrillingPlatformApp ? secondaryAssetId : assetId,\n });\n return;\n }\n\n onSettingsChange(assetSettings);\n };\n\n const onMultipleAssetChange = selected => {\n if (selected.length > assetsLimit) return;\n\n const isPadSelected = selected[0]?.group === PAD_GROUP.name;\n const isFracFleetSelected = selected[0]?.group === FRAC_FLEET_GROUP.name;\n const isFirstPadSelected = selected.length === 1 && isPadSelected;\n const isFirstFracFleetSelected = selected.length === 1 && isFracFleetSelected;\n\n if (isFirstPadSelected) {\n setIsPadSelectedAsPrimaryAsset(true);\n setSelectedGroup(PAD_GROUP);\n } else if (isFirstFracFleetSelected) {\n setSelectedGroup(FRAC_FLEET_GROUP);\n }\n\n if (isPadSelected) {\n setPrimaryAsset(selected);\n const assetsSetting = selected?.reduce((acc, { parentFracFleetId, id }) => {\n const settings = {\n fracFleetId: parentFracFleetId,\n padId: id,\n };\n\n if (isExtendedSelect) {\n settings.assetId = parentFracFleetId;\n settings.replacedPadId = id;\n }\n return parentFracFleetId ? [...acc, settings] : acc;\n }, []);\n\n onSettingsChange({\n assets: assetsSetting,\n });\n return;\n }\n\n setPrimaryAsset(selected);\n const assetsSetting = selected.reduce((acc, asset) => {\n const settings = { [`${asset.type}Id`]: asset.id };\n if (isRequiredAssetId) {\n settings.assetId = asset.assetId;\n }\n if (isExtendedSelect) {\n settings.assetId = asset.assetId || asset.id;\n }\n return [...acc, settings];\n }, []);\n onSettingsChange({\n assets: assetsSetting,\n });\n };\n\n const onPrimaryAssetChange = selected => {\n onChange({ primary: selected });\n if (isMultipleAssets) {\n onMultipleAssetChange(selected);\n return;\n }\n const { id, type, parentFracFleetId } = selected;\n if (!id) return;\n if (type === ASSET_TYPES.pad.type) {\n setPrimaryAsset(selected);\n setIsPadSelectedAsPrimaryAsset(true);\n setSecondaryAssetId(id);\n const assetSetting = {\n [ASSET_TYPES.frac_fleet.id]: Number(parentFracFleetId),\n [ASSET_TYPES.pad.id]: id,\n };\n onSettingsChange(assetSetting);\n return;\n }\n\n setPrimaryAsset(selected);\n setSecondaryAssetId(null);\n const assetSetting = { [primaryAssetIdType]: id };\n if (isRequiredAssetId) assetSetting.assetId = selected.assetId;\n if (secondaryAssetIdType) assetSetting[secondaryAssetIdType] = null;\n onSettingsChange(assetSetting);\n setIsPadSelectedAsPrimaryAsset(false);\n };\n\n const handlePrimaryAssetReset = (defaultValue = {}) => {\n setPrimaryAsset(defaultValue);\n setSecondaryAssetId(null);\n\n setIsPadSelectedAsPrimaryAsset(false);\n const assetSetting = {\n [primaryAssetIdType]: null,\n [secondaryAssetIdType]: null,\n assets: null,\n };\n onSettingsChange(assetSetting);\n };\n\n const handleMultipleAssetsChange = ({ target }) => {\n isMultipleAssetsRef.current = !!target.checked;\n setIsMultipleAssets(target.checked);\n handlePrimaryAssetReset(target.checked && []);\n };\n\n const handleGroupChange = newGroup => {\n setSelectedGroup(newGroup);\n handlePrimaryAssetReset(isMultipleAssets && []);\n };\n\n const handleGroupReset = () => {\n setSelectedGroup(null);\n handlePrimaryAssetReset(isMultipleAssets && []);\n };\n\n const secondaryAssetSelectIsVisible = isMultipleAssets\n ? Boolean(primaryAsset.length) && !isPadSelectedAsPrimaryAsset\n : primaryAsset?.id && !isPadSelectedAsPrimaryAsset;\n\n useEffect(() => {\n if (isEmpty(settings)) {\n handlePrimaryAssetReset(isMultipleAssets && []);\n }\n }, [settings]);\n\n return (\n <div className={classNames(styles.main, className)}>\n {!isHiddenTitle && (\n <div className={classNames(styles.title, elementsClassNames.title)}>Asset</div>\n )}\n {isVisibleMultipleAssetsToggle && (\n <MultipleAssetsToggle\n onChange={handleMultipleAssetsChange}\n className={elementsClassNames.multiAssetSwitch}\n />\n )}\n <div className={elementsClassNames.primaryAssetSelect}>\n <PrimaryAssetSelectComponent\n appKey={appKey}\n assetType={primaryAssetType}\n company={company}\n currentOption={primaryAsset}\n currentValue={primaryAsset?.id}\n data-testid={`${PAGE_NAME}_primaryAssetEditorAutocomplete`}\n defaultValue={defaultValue}\n disableClearable={!isNullable}\n disabled={disabled}\n isNullable={isNullable}\n isRequiredAssetId={isRequiredAssetId}\n label={label}\n multiple={isMultipleAssets}\n onChange={onPrimaryAssetChange}\n setCurrentOption={setPrimaryAsset}\n selectedGroup={selectedGroup}\n onGroupChange={handleGroupChange}\n onGroupReset={handleGroupReset}\n groups={primaryAssetSelectGroups}\n onInputReset={handlePrimaryAssetReset}\n onActiveAssetIdChange={activeAssetId => {\n setPrimaryAsset(primaryAsset => ({ ...primaryAsset, activeWellId: activeAssetId }));\n }}\n isDrillingPlatformApp={isDrillingPlatformApp}\n assetFields={getPrimaryAssetFields(\n primaryAssetType,\n primaryAssetFields,\n isDrillingPlatformApp\n )}\n />\n </div>\n {secondaryAssetSelectIsVisible && (\n <div className={elementsClassNames.secondaryAssetSelect}>\n {secondaryAssetHelpText}\n <SecondaryAssetSelect\n assetFields={\n secondaryAssetType === ASSET_TYPES.pad.type\n ? [...secondaryAssetFields, 'pad.active', 'pad.current']\n : secondaryAssetFields\n }\n activeWellId={primaryAsset?.activeWellId}\n appKey={appKey}\n assetType={secondaryAssetType}\n company={company}\n currentValue={secondaryAssetId}\n data-testid={`${PAGE_NAME}_secondaryAutoComplete`}\n defaultValue={isMultipleAssets ? ACTIVE_ASSETS_ID : ACTIVE_ASSET_ID}\n disabled={isMultipleAssets || isDisabledSecondaryAssetSelect || disabled}\n isDrillingPlatformApp={isDrillingPlatformApp}\n isNullable={isNullable}\n isRequiredAssetId={isRequiredAssetId}\n onChange={onSecondaryAssetChange}\n parentAssetId={parentAssetId}\n parentAssetType={isDrillingPlatformApp ? PARENT_ASSET_ID : primaryAssetType}\n primaryAssetLabel={primaryAssetLabel}\n secondaryAssetLabel={secondaryAssetLabel}\n />\n </div>\n )}\n </div>\n );\n};\n\nAppSettingsAssetEditor.defaultProps = {\n assetsLimit: null,\n label: 'Choose An Asset',\n isNullable: false,\n defaultValue: undefined,\n secondaryDefaultValue: undefined,\n isHiddenTitle: false,\n appKey: null,\n isVisibleMultipleAssetsToggle: false,\n isDisabledSecondaryAssetSelect: false,\n primaryAssetFields: [],\n secondaryAssetFields: [],\n secondaryAssetHelpText: null,\n onChange: noop,\n elementsClassNames: {},\n};\n\nAppSettingsAssetEditor.propTypes = {\n assetsLimit: PropTypes.number,\n settings: PropTypes.shape({}).isRequired,\n appType: PropTypes.shape({}).isRequired,\n defaultValue: PropTypes.any, // eslint-disable-line react/forbid-prop-types\n secondaryDefaultValue: PropTypes.any, // eslint-disable-line react/forbid-prop-types\n onSettingsChange: PropTypes.func.isRequired,\n label: PropTypes.string,\n isNullable: PropTypes.bool,\n isHiddenTitle: PropTypes.bool,\n appKey: PropTypes.string,\n isVisibleMultipleAssetsToggle: PropTypes.bool,\n isDisabledSecondaryAssetSelect: PropTypes.bool,\n primaryAssetFields: PropTypes.arrayOf(PropTypes.shape({})),\n secondaryAssetFields: PropTypes.arrayOf(PropTypes.shape({})),\n secondaryAssetHelpText: PropTypes.oneOfType([PropTypes.element, PropTypes.string]),\n onChange: PropTypes.func,\n elementsClassNames: PropTypes.shape({\n title: PropTypes.string,\n multiAssetSwitch: PropTypes.string,\n primaryAssetSelect: PropTypes.string,\n secondaryAssetSelect: PropTypes.string,\n }),\n};\n\nexport default AppSettingsAssetEditor;\n"],"names":["useStyles","makeStyles","title","fontWeight","fontSize","margin","AppSettingsAssetEditor","_ref","appKey","appType","className","company","defaultValue","secondaryDefaultValue","disabled","isHiddenTitle","isNullable","label","propsOnSettingsChange","onSettingsChange","primaryAssetFields","secondaryAssetFields","isExtendedSelect","isRequiredAssetId","settings","isVisibleMultipleAssetsToggle","assetsLimit","isDisabledSecondaryAssetSelect","isDrillingPlatformApp","secondaryAssetHelpText","onChange","elementsClassNames","primaryAssetType","get","primaryAssetIdType","primaryAssetLabel","primaryAssetSelectGroups","secondaryAssetType","secondaryAssetIdType","secondaryAssetLabel","currentValue","initialPrimaryAssetId","Number","initialSecondaryAssetId","_useState","useState","id","_useState2","_slicedToArray","primaryAsset","setPrimaryAsset","_useState4","_useState3","secondaryAssetId","setSecondaryAssetId","_useState6","_useState5","isPadSelectedAsPrimaryAsset","setIsPadSelectedAsPrimaryAsset","_useState7","_useState8","selectedGroup","setSelectedGroup","_useState10","_useState9","isMultipleAssets","setIsMultipleAssets","isMultipleAssetsRef","useRef","_len","arguments","length","args","Array","_key","concat","current","styles","PrimaryAssetSelectComponent","ASSET_TYPES","rig","type","PrimaryAssetSelectV2","PrimaryAssetSelect","parentAssetId","assetId","handlePrimaryAssetReset","_assetSetting4","undefined","assetSetting","_defineProperty","secondaryAssetSelectIsVisible","Boolean","useEffect","isEmpty","_jsxs","classNames","main","children","_jsx","jsx","MultipleAssetsToggle","_ref4","target","checked","multiAssetSwitch","primaryAssetSelect","assetType","currentOption","disableClearable","multiple","selected","primary","_selected$","_selected$2","isPadSelected","group","PAD_GROUP","name","isFracFleetSelected","FRAC_FLEET_GROUP","isFirstPadSelected","isFirstFracFleetSelected","assetsSetting","reduce","acc","_ref3","parentFracFleetId","fracFleetId","padId","replacedPadId","assets","asset","onMultipleAssetChange","pad","_assetSetting2","frac_fleet","setCurrentOption","onGroupChange","newGroup","onGroupReset","groups","onInputReset","onActiveAssetIdChange","activeAssetId","_objectSpread","activeWellId","assetFields","getPrimaryAssetFields","jsxs","secondaryAssetSelect","SecondaryAssetSelect","_toConsumableArray","ACTIVE_ASSETS_ID","ACTIVE_ASSET_ID","_ref2","secondary","assetSettings","well","replacedAssetId","parentAssetType","defaultProps","noop","propTypes","PropTypes","number","shape","isRequired","any","func","string","bool","arrayOf","oneOfType","element"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/AssetEditorV2/index.js"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { get, isEmpty, noop } from 'lodash';\nimport classNames from 'classnames';\nimport { makeStyles } from '@material-ui/core';\n\nimport { PrimaryAssetSelect, PrimaryAssetSelectV2, SecondaryAssetSelect } from './components';\nimport { ACTIVE_ASSET_ID, ACTIVE_ASSETS_ID } from './constants';\nimport MultipleAssetsToggle from './components/MultipleAssetsToggle';\nimport { getPrimaryAssetFields } from './utils';\n\nimport { ASSET_TYPES } from '~/constants';\nimport { FRAC_FLEET_GROUP, PAD_GROUP } from '~/constants/segment';\n\nconst useStyles = makeStyles({\n title: { fontWeight: 400, fontSize: 20, margin: '24px 0 16px' },\n});\n\nconst PAGE_NAME = 'DC_AppSettingsAssetEditor';\nconst PARENT_ASSET_ID = 'parent_asset_id';\n\nconst AppSettingsAssetEditor = ({\n appKey,\n appType,\n className,\n company,\n defaultValue,\n secondaryDefaultValue,\n disabled,\n isHiddenTitle,\n isNullable,\n label,\n onSettingsChange: propsOnSettingsChange,\n primaryAssetFields,\n secondaryAssetFields,\n isExtendedSelect,\n isRequiredAssetId,\n settings,\n isVisibleMultipleAssetsToggle,\n assetsLimit,\n isDisabledSecondaryAssetSelect,\n isDrillingPlatformApp,\n secondaryAssetHelpText,\n onChange,\n elementsClassNames,\n}) => {\n const primaryAssetType = get(appType, ['primaryAsset', 'assetType', 'type']);\n const primaryAssetIdType = get(appType, ['primaryAsset', 'assetType', 'id']);\n const primaryAssetLabel = get(appType, ['primaryAsset', 'assetType', 'label']);\n const primaryAssetSelectGroups = get(appType, ['primaryAsset', 'groups']);\n\n const secondaryAssetType = get(appType, ['secondaryAsset', 'assetType', 'type']);\n const secondaryAssetIdType = get(appType, ['secondaryAsset', 'assetType', 'id']);\n const secondaryAssetLabel = get(appType, ['secondaryAsset', 'assetType', 'label']);\n\n const currentValue = get(settings, primaryAssetIdType);\n const initialPrimaryAssetId = currentValue ? Number(currentValue) : null;\n const initialSecondaryAssetId = get(settings, secondaryAssetIdType)\n ? Number(get(settings, secondaryAssetIdType))\n : secondaryDefaultValue || null;\n const [primaryAsset, setPrimaryAsset] = useState({ id: initialPrimaryAssetId || defaultValue });\n\n const [secondaryAssetId, setSecondaryAssetId] = useState(initialSecondaryAssetId);\n const [isPadSelectedAsPrimaryAsset, setIsPadSelectedAsPrimaryAsset] = useState(false);\n const [selectedGroup, setSelectedGroup] = useState();\n const [isMultipleAssets, setIsMultipleAssets] = useState(false);\n const isMultipleAssetsRef = useRef(false);\n const onSettingsChange = (...args) => {\n propsOnSettingsChange(...args, isMultipleAssetsRef.current);\n };\n\n const styles = useStyles();\n\n const PrimaryAssetSelectComponent =\n primaryAssetType === ASSET_TYPES.rig.type ||\n primaryAssetType === ASSET_TYPES.intervention_unit.type\n ? PrimaryAssetSelectV2\n : PrimaryAssetSelect;\n\n const parentAssetId =\n isDrillingPlatformApp && primaryAsset?.assetId ? primaryAsset?.assetId : primaryAsset?.id;\n\n const onSecondaryAssetChange = ({ id, assetId, name }) => {\n onChange({ secondary: { name } });\n setSecondaryAssetId(id);\n const secondaryAssetId = id === ACTIVE_ASSET_ID ? null : id;\n const assetSettings = { [secondaryAssetIdType]: secondaryAssetId };\n\n if (isRequiredAssetId && secondaryAssetType === ASSET_TYPES.well.type) {\n onSettingsChange({\n ...assetSettings,\n replacedAssetId: isDrillingPlatformApp ? secondaryAssetId : assetId,\n });\n return;\n }\n\n onSettingsChange(assetSettings);\n };\n\n const onMultipleAssetChange = selected => {\n if (selected.length > assetsLimit) return;\n\n const isPadSelected = selected[0]?.group === PAD_GROUP.name;\n const isFracFleetSelected = selected[0]?.group === FRAC_FLEET_GROUP.name;\n const isFirstPadSelected = selected.length === 1 && isPadSelected;\n const isFirstFracFleetSelected = selected.length === 1 && isFracFleetSelected;\n\n if (isFirstPadSelected) {\n setIsPadSelectedAsPrimaryAsset(true);\n setSelectedGroup(PAD_GROUP);\n } else if (isFirstFracFleetSelected) {\n setSelectedGroup(FRAC_FLEET_GROUP);\n }\n\n if (isPadSelected) {\n setPrimaryAsset(selected);\n const assetsSetting = selected?.reduce((acc, { parentFracFleetId, id }) => {\n const settings = {\n fracFleetId: parentFracFleetId,\n padId: id,\n };\n\n if (isExtendedSelect) {\n settings.assetId = parentFracFleetId;\n settings.replacedPadId = id;\n }\n return parentFracFleetId ? [...acc, settings] : acc;\n }, []);\n\n onSettingsChange({\n assets: assetsSetting,\n });\n return;\n }\n\n setPrimaryAsset(selected);\n const assetsSetting = selected.reduce((acc, asset) => {\n const settings = { [`${asset.type}Id`]: asset.id };\n if (isRequiredAssetId) {\n settings.assetId = asset.assetId;\n }\n if (isExtendedSelect) {\n settings.assetId = asset.assetId || asset.id;\n }\n return [...acc, settings];\n }, []);\n onSettingsChange({\n assets: assetsSetting,\n });\n };\n\n const onPrimaryAssetChange = selected => {\n onChange({ primary: selected });\n if (isMultipleAssets) {\n onMultipleAssetChange(selected);\n return;\n }\n const { id, type, parentFracFleetId } = selected;\n if (!id) return;\n if (type === ASSET_TYPES.pad.type) {\n setPrimaryAsset(selected);\n setIsPadSelectedAsPrimaryAsset(true);\n setSecondaryAssetId(id);\n const assetSetting = {\n [ASSET_TYPES.frac_fleet.id]: Number(parentFracFleetId),\n [ASSET_TYPES.pad.id]: id,\n };\n onSettingsChange(assetSetting);\n return;\n }\n\n setPrimaryAsset(selected);\n setSecondaryAssetId(null);\n const assetSetting = { [primaryAssetIdType]: id };\n if (isRequiredAssetId) assetSetting.assetId = selected.assetId;\n if (secondaryAssetIdType) assetSetting[secondaryAssetIdType] = null;\n onSettingsChange(assetSetting);\n setIsPadSelectedAsPrimaryAsset(false);\n };\n\n const handlePrimaryAssetReset = (defaultValue = {}) => {\n setPrimaryAsset(defaultValue);\n setSecondaryAssetId(null);\n\n setIsPadSelectedAsPrimaryAsset(false);\n const assetSetting = {\n [primaryAssetIdType]: null,\n [secondaryAssetIdType]: null,\n assets: null,\n };\n onSettingsChange(assetSetting);\n };\n\n const handleMultipleAssetsChange = ({ target }) => {\n isMultipleAssetsRef.current = !!target.checked;\n setIsMultipleAssets(target.checked);\n handlePrimaryAssetReset(target.checked && []);\n };\n\n const handleGroupChange = newGroup => {\n setSelectedGroup(newGroup);\n handlePrimaryAssetReset(isMultipleAssets && []);\n };\n\n const handleGroupReset = () => {\n setSelectedGroup(null);\n handlePrimaryAssetReset(isMultipleAssets && []);\n };\n\n const secondaryAssetSelectIsVisible = isMultipleAssets\n ? Boolean(primaryAsset.length) && !isPadSelectedAsPrimaryAsset\n : primaryAsset?.id && !isPadSelectedAsPrimaryAsset;\n\n useEffect(() => {\n if (isEmpty(settings)) {\n handlePrimaryAssetReset(isMultipleAssets && []);\n }\n }, [settings]);\n\n return (\n <div className={classNames(styles.main, className)}>\n {!isHiddenTitle && (\n <div className={classNames(styles.title, elementsClassNames.title)}>Asset</div>\n )}\n {isVisibleMultipleAssetsToggle && (\n <MultipleAssetsToggle\n onChange={handleMultipleAssetsChange}\n className={elementsClassNames.multiAssetSwitch}\n />\n )}\n <div className={elementsClassNames.primaryAssetSelect}>\n <PrimaryAssetSelectComponent\n appKey={appKey}\n assetType={primaryAssetType}\n company={company}\n currentOption={primaryAsset}\n currentValue={primaryAsset?.id}\n data-testid={`${PAGE_NAME}_primaryAssetEditorAutocomplete`}\n defaultValue={defaultValue}\n disableClearable={!isNullable}\n disabled={disabled}\n isNullable={isNullable}\n isRequiredAssetId={isRequiredAssetId}\n label={label}\n multiple={isMultipleAssets}\n onChange={onPrimaryAssetChange}\n setCurrentOption={setPrimaryAsset}\n selectedGroup={selectedGroup}\n onGroupChange={handleGroupChange}\n onGroupReset={handleGroupReset}\n groups={primaryAssetSelectGroups}\n onInputReset={handlePrimaryAssetReset}\n onActiveAssetIdChange={activeAssetId => {\n setPrimaryAsset(primaryAsset => ({ ...primaryAsset, activeWellId: activeAssetId }));\n }}\n isDrillingPlatformApp={isDrillingPlatformApp}\n assetFields={getPrimaryAssetFields(\n primaryAssetType,\n primaryAssetFields,\n isDrillingPlatformApp\n )}\n />\n </div>\n {secondaryAssetSelectIsVisible && (\n <div className={elementsClassNames.secondaryAssetSelect}>\n {secondaryAssetHelpText}\n <SecondaryAssetSelect\n assetFields={\n secondaryAssetType === ASSET_TYPES.pad.type\n ? [...secondaryAssetFields, 'pad.active', 'pad.current']\n : secondaryAssetFields\n }\n activeWellId={primaryAsset?.activeWellId}\n appKey={appKey}\n assetType={secondaryAssetType}\n company={company}\n currentValue={secondaryAssetId}\n data-testid={`${PAGE_NAME}_secondaryAutoComplete`}\n defaultValue={isMultipleAssets ? ACTIVE_ASSETS_ID : ACTIVE_ASSET_ID}\n disabled={isMultipleAssets || isDisabledSecondaryAssetSelect || disabled}\n isDrillingPlatformApp={isDrillingPlatformApp}\n isNullable={isNullable}\n isRequiredAssetId={isRequiredAssetId}\n onChange={onSecondaryAssetChange}\n parentAssetId={parentAssetId}\n parentAssetType={isDrillingPlatformApp ? PARENT_ASSET_ID : primaryAssetType}\n primaryAssetLabel={primaryAssetLabel}\n secondaryAssetLabel={secondaryAssetLabel}\n />\n </div>\n )}\n </div>\n );\n};\n\nAppSettingsAssetEditor.defaultProps = {\n assetsLimit: null,\n label: 'Choose An Asset',\n isNullable: false,\n defaultValue: undefined,\n secondaryDefaultValue: undefined,\n isHiddenTitle: false,\n appKey: null,\n isVisibleMultipleAssetsToggle: false,\n isDisabledSecondaryAssetSelect: false,\n primaryAssetFields: [],\n secondaryAssetFields: [],\n secondaryAssetHelpText: null,\n onChange: noop,\n elementsClassNames: {},\n};\n\nAppSettingsAssetEditor.propTypes = {\n assetsLimit: PropTypes.number,\n settings: PropTypes.shape({}).isRequired,\n appType: PropTypes.shape({}).isRequired,\n defaultValue: PropTypes.any, // eslint-disable-line react/forbid-prop-types\n secondaryDefaultValue: PropTypes.any, // eslint-disable-line react/forbid-prop-types\n onSettingsChange: PropTypes.func.isRequired,\n label: PropTypes.string,\n isNullable: PropTypes.bool,\n isHiddenTitle: PropTypes.bool,\n appKey: PropTypes.string,\n isVisibleMultipleAssetsToggle: PropTypes.bool,\n isDisabledSecondaryAssetSelect: PropTypes.bool,\n primaryAssetFields: PropTypes.arrayOf(PropTypes.shape({})),\n secondaryAssetFields: PropTypes.arrayOf(PropTypes.shape({})),\n secondaryAssetHelpText: PropTypes.oneOfType([PropTypes.element, PropTypes.string]),\n onChange: PropTypes.func,\n elementsClassNames: PropTypes.shape({\n title: PropTypes.string,\n multiAssetSwitch: PropTypes.string,\n primaryAssetSelect: PropTypes.string,\n secondaryAssetSelect: PropTypes.string,\n }),\n};\n\nexport default AppSettingsAssetEditor;\n"],"names":["useStyles","makeStyles","title","fontWeight","fontSize","margin","AppSettingsAssetEditor","_ref","appKey","appType","className","company","defaultValue","secondaryDefaultValue","disabled","isHiddenTitle","isNullable","label","propsOnSettingsChange","onSettingsChange","primaryAssetFields","secondaryAssetFields","isExtendedSelect","isRequiredAssetId","settings","isVisibleMultipleAssetsToggle","assetsLimit","isDisabledSecondaryAssetSelect","isDrillingPlatformApp","secondaryAssetHelpText","onChange","elementsClassNames","primaryAssetType","get","primaryAssetIdType","primaryAssetLabel","primaryAssetSelectGroups","secondaryAssetType","secondaryAssetIdType","secondaryAssetLabel","currentValue","initialPrimaryAssetId","Number","initialSecondaryAssetId","_useState","useState","id","_useState2","_slicedToArray","primaryAsset","setPrimaryAsset","_useState4","_useState3","secondaryAssetId","setSecondaryAssetId","_useState6","_useState5","isPadSelectedAsPrimaryAsset","setIsPadSelectedAsPrimaryAsset","_useState7","_useState8","selectedGroup","setSelectedGroup","_useState10","_useState9","isMultipleAssets","setIsMultipleAssets","isMultipleAssetsRef","useRef","_len","arguments","length","args","Array","_key","concat","current","styles","PrimaryAssetSelectComponent","ASSET_TYPES","rig","type","intervention_unit","PrimaryAssetSelectV2","PrimaryAssetSelect","parentAssetId","assetId","handlePrimaryAssetReset","_assetSetting4","undefined","assetSetting","_defineProperty","secondaryAssetSelectIsVisible","Boolean","useEffect","isEmpty","_jsxs","classNames","main","children","_jsx","jsx","MultipleAssetsToggle","_ref4","target","checked","multiAssetSwitch","primaryAssetSelect","assetType","currentOption","disableClearable","multiple","selected","primary","_selected$","_selected$2","isPadSelected","group","PAD_GROUP","name","isFracFleetSelected","FRAC_FLEET_GROUP","isFirstPadSelected","isFirstFracFleetSelected","assetsSetting","reduce","acc","_ref3","parentFracFleetId","fracFleetId","padId","replacedPadId","assets","asset","onMultipleAssetChange","pad","_assetSetting2","frac_fleet","setCurrentOption","onGroupChange","newGroup","onGroupReset","groups","onInputReset","onActiveAssetIdChange","activeAssetId","_objectSpread","activeWellId","assetFields","getPrimaryAssetFields","jsxs","secondaryAssetSelect","SecondaryAssetSelect","_toConsumableArray","ACTIVE_ASSETS_ID","ACTIVE_ASSET_ID","_ref2","secondary","assetSettings","well","replacedAssetId","parentAssetType","defaultProps","noop","propTypes","PropTypes","number","shape","isRequired","any","func","string","bool","arrayOf","oneOfType","element"],"mappings":"g0DAcA,IAAMA,EAAYC,EAAAA,WAAW,CAC3BC,MAAO,CAAEC,WAAY,IAAKC,SAAU,GAAIC,OAAQ,iBAM5CC,EAAyB,SAwBzBC,GAAA,IAvBJC,IAAAA,OACAC,IAAAA,QACAC,IAAAA,UACAC,IAAAA,QACAC,IAAAA,aACAC,IAAAA,sBACAC,IAAAA,SACAC,IAAAA,cACAC,IAAAA,WACAC,IAAAA,MACkBC,IAAlBC,iBACAC,IAAAA,mBACAC,IAAAA,qBACAC,IAAAA,iBACAC,IAAAA,kBACAC,IAAAA,SACAC,IAAAA,8BACAC,IAAAA,YACAC,IAAAA,+BACAC,IAAAA,sBACAC,IAAAA,uBACAC,IAAAA,SACAC,IAAAA,mBAEMC,EAAmBC,EAAAA,IAAIxB,EAAS,CAAC,eAAgB,YAAa,SAC9DyB,EAAqBD,EAAAA,IAAIxB,EAAS,CAAC,eAAgB,YAAa,OAChE0B,EAAoBF,EAAAA,IAAIxB,EAAS,CAAC,eAAgB,YAAa,UAC/D2B,EAA2BH,EAAAA,IAAIxB,EAAS,CAAC,eAAgB,WAEzD4B,EAAqBJ,EAAAA,IAAIxB,EAAS,CAAC,iBAAkB,YAAa,SAClE6B,EAAuBL,EAAAA,IAAIxB,EAAS,CAAC,iBAAkB,YAAa,OACpE8B,EAAsBN,EAAAA,IAAIxB,EAAS,CAAC,iBAAkB,YAAa,UAEnE+B,EAAeP,EAAAA,IAAIT,EAAUU,GAC7BO,EAAwBD,EAAeE,OAAOF,GAAgB,KAC9DG,EAA0BV,EAAAA,IAAIT,EAAUc,GAC1CI,OAAOT,EAAGA,IAACT,EAAUc,IACrBzB,GAAyB,KAC7B+B,EAAwCC,EAAAA,SAAS,CAAEC,GAAIL,GAAyB7B,IAAemC,EAAAC,EAAAA,QAAAJ,EAAA,GAAxFK,EAAYF,EAAA,GAAEG,GAAeH,EAAA,GAEYF,GAAAA,EAAQA,SAACF,GAAwBQ,GAAAH,EAAAA,QAAAI,GAAA,GAA1EC,GAAgBF,GAAA,GAAEG,GAAmBH,GAAA,GAC0BN,GAAAA,EAAQA,UAAC,GAAMU,GAAAP,EAAAA,QAAAQ,GAAA,GAA9EC,GAA2BF,GAAA,GAAEG,GAA8BH,GAAA,GAClEI,GAA0Cd,EAAAA,WAAUe,GAAAZ,EAAAA,QAAAW,GAAA,GAA7CE,GAAaD,GAAA,GAAEE,GAAgBF,GAAA,GACUf,GAAAA,EAAQA,UAAC,GAAMkB,GAAAf,EAAAA,QAAAgB,GAAA,GAAxDC,GAAgBF,GAAA,GAAEG,GAAmBH,GAAA,GACtCI,GAAsBC,UAAO,GAC7BjD,GAAmB,WAAa,IAAA,IAAAkD,EAAAC,UAAAC,OAATC,EAAI,IAAAC,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAAJF,EAAIE,GAAAJ,UAAAI,GAC/BxD,eAAyBsD,EAAIG,OAAA,CAAER,GAAoBS,YAG/CC,GAAS7E,IAET8E,GACJ9C,IAAqB+C,EAAWA,YAACC,IAAIC,MACrCjD,IAAqB+C,EAAAA,YAAYG,kBAAkBD,KAC/CE,EACAC,EAEAC,GACJzD,SAAyBqB,GAAAA,EAAcqC,QAAUrC,aAAY,EAAZA,EAAcqC,QAAUrC,aAAY,EAAZA,EAAcH,GAoGnFyC,GAA0B,WAAuB,IAAAC,EAAtB5E,EAAe0D,UAAAC,OAAA,QAAAkB,IAAAnB,UAAA,GAAAA,UAAA,GAAA,CAAA,EAC9CpB,GAAgBtC,GAChB0C,GAAoB,MAEpBI,IAA+B,GAC/B,IAAMgC,GACHxD,EAAAA,GAAAA,EAAAA,QAAAA,EAAAA,EAAqB,MACrBI,EAAAA,QAAAA,EAAAA,EAAuB,MAChBqD,UAAAH,EAAA,SAAA,MACTA,GACDrE,GAAiBuE,IAmBbE,GAAgC3B,GAClC4B,QAAQ5C,EAAasB,UAAYd,IACjCR,aAAY,EAAZA,EAAcH,MAAOW,GAQzB,OANAqC,EAAAA,WAAU,WACJC,EAAAA,QAAQvE,IACV+D,GAAwBtB,IAAoB,GAEhD,GAAG,CAACzC,IAGFwE,EAAAA,KAAA,MAAA,CAAKtF,UAAWuF,EAAU,QAACpB,GAAOqB,KAAMxF,GAAWyF,SAChD,EAACpF,GACAqF,EAAAA,IAAA,MAAA,CAAK1F,UAAWuF,EAAAA,QAAWpB,GAAO3E,MAAO6B,EAAmB7B,OAAOiG,SAAA,UAEpE1E,GACC2E,EAAAC,IAACC,EAAoB,CACnBxE,SAjC2B,SAAgByE,GAAA,IAAbC,IAAAA,OACpCrC,GAAoBS,UAAY4B,EAAOC,QACvCvC,GAAoBsC,EAAOC,SAC3BlB,GAAwBiB,EAAOC,SAAW,KA+BpC/F,UAAWqB,EAAmB2E,mBAGlCN,EAAAC,IAAA,MAAA,CAAK3F,UAAWqB,EAAmB4E,mBAAmBR,SACpDC,MAACtB,GAA2B,CAC1BtE,OAAQA,EACRoG,UAAW5E,EACXrB,QAASA,EACTkG,cAAe5D,EACfT,aAAcS,aAAAA,EAAAA,EAAcH,GAC5B,cAAA,GAAA6B,OA3NQ,4BA2NmD,mCAC3D/D,aAAcA,EACdkG,kBAAmB9F,EACnBF,SAAUA,EACVE,WAAYA,EACZO,kBAAmBA,EACnBN,MAAOA,EACP8F,SAAU9C,GACVnC,SA9FqB,SAAAkF,GAE3B,GADAlF,EAAS,CAAEmF,QAASD,IAChB/C,IAtDwB,SAAA+C,GAAY,IAAAE,EAAAC,EACxC,KAAIH,EAASzC,OAAS7C,GAAtB,CAEA,IAAM0F,GAA2B,QAAXJ,EAAAA,EAAS,UAAE,IAAAE,OAAA,EAAXA,EAAaG,SAAUC,EAASA,UAACC,KACjDC,GAAiC,QAAXR,EAAAA,EAAS,UAAE,IAAAG,OAAA,EAAXA,EAAaE,SAAUI,EAAgBA,iBAACF,KAC9DG,EAAyC,IAApBV,EAASzC,QAAgB6C,EAC9CO,EAA+C,IAApBX,EAASzC,QAAgBiD,EAS1D,GAPIE,GACFhE,IAA+B,GAC/BI,GAAiBwD,EAASA,YACjBK,GACT7D,GAAiB2D,EAAgBA,kBAG/BL,EAAJ,CACElE,GAAgB8D,GAChB,IAAMY,EAAgBZ,aAAQ,EAARA,EAAUa,QAAO,SAACC,EAAmCC,GAAA,IAA5BC,IAAAA,kBAAmBlF,IAAAA,GAC1DtB,EAAW,CACfyG,YAAaD,EACbE,MAAOpF,GAOT,OAJIxB,IACFE,EAAS8D,QAAU0C,EACnBxG,EAAS2G,cAAgBrF,GAEpBkF,EAAwBF,GAAAA,OAAAA,EAAAA,QAAAA,GAAKtG,CAAAA,IAAYsG,CACjD,GAAE,IAEH3G,GAAiB,CACfiH,OAAQR,GAGZ,KAnBA,CAqBA1E,GAAgB8D,GAChB,IAAMY,EAAgBZ,EAASa,QAAO,SAACC,EAAKO,GAC1C,IAAM7G,yBAAiB6G,EAAMpD,KAAWoD,MAAAA,EAAMvF,IAO9C,OANIvB,IACFC,EAAS8D,QAAU+C,EAAM/C,SAEvBhE,IACFE,EAAS8D,QAAU+C,EAAM/C,SAAW+C,EAAMvF,IAEjCgF,GAAAA,OAAAA,EAAAA,QAAAA,IAAKtG,GACjB,GAAE,IACHL,GAAiB,CACfiH,OAAQR,GAdV,CAjCmC,EAsDjCU,CAAsBtB,OADxB,CAIA,IAAQlE,EAAgCkE,EAAhClE,GAAImC,EAA4B+B,EAA5B/B,KAAM+C,EAAsBhB,EAAtBgB,kBAClB,GAAKlF,EACL,GAAImC,IAASF,EAAAA,YAAYwD,IAAItD,KAA7B,CAYA/B,GAAgB8D,GAChB1D,GAAoB,MACpB,IAAMoC,EAAYC,EAAA,QAAA,CAAA,EAAMzD,EAAqBY,GACzCvB,IAAmBmE,EAAaJ,QAAU0B,EAAS1B,SACnDhD,IAAsBoD,EAAapD,GAAwB,MAC/DnB,GAAiBuE,GACjBhC,IAA+B,EAR/B,KAVA,CAAmC,IAAA8E,EACjCtF,GAAgB8D,GAChBtD,IAA+B,GAC/BJ,GAAoBR,GACpB,IAAM4C,oBACHX,EAAWA,YAAC0D,WAAW3F,GAAKJ,OAAOsF,IAAkBrC,EAAAA,QAAA6C,EACrDzD,EAAWA,YAACwD,IAAIzF,GAAKA,GACvB0F,GACDrH,GAAiBuE,EAEnB,CAbA,GA0FMgD,iBAAkBxF,GAClBW,cAAeA,GACf8E,cAjDkB,SAAAC,GACxB9E,GAAiB8E,GACjBrD,GAAwBtB,IAAoB,KAgDtC4E,aA7CiB,WACvB/E,GAAiB,MACjByB,GAAwBtB,IAAoB,KA4CtC6E,OAAQ1G,EACR2G,aAAcxD,GACdyD,sBAAuB,SAAAC,GACrB/F,IAAgB,SAAAD,GAAY,OAAAiG,EAAAA,EAAA,CAAA,EAAUjG,GAAY,CAAA,EAAA,CAAEkG,aAAcF,GAAa,GAC/E,EACFrH,sBAAuBA,EACvBwH,YAAaC,EAAqBA,sBAChCrH,EACAZ,EACAQ,OAILgE,IACCI,EAAAsD,KAAA,MAAA,CAAK5I,UAAWqB,EAAmBwH,qBAAqBpD,SACrDtE,CAAAA,EACDuE,EAAAC,IAACmD,UAAoB,CACnBJ,YACE/G,IAAuB0C,EAAAA,YAAYwD,IAAItD,KAAI,GAAAN,OAAA8E,EAAA,QACnCpI,GAAsB,CAAA,aAAc,gBACxCA,EAEN8H,aAAclG,aAAAA,EAAAA,EAAckG,aAC5B3I,OAAQA,EACRoG,UAAWvE,EACX1B,QAASA,EACT6B,aAAca,GACd,cAAA,GAAAsB,OAnQM,4BAmQ4C,0BAClD/D,aAAcqD,GAAmByF,EAAAA,iBAAmBC,EAAgBA,gBACpE7I,SAAUmD,IAAoBtC,GAAkCb,EAChEc,sBAAuBA,EACvBZ,WAAYA,EACZO,kBAAmBA,EACnBO,SAzMqB,SAA2B8H,GAAA,IAAxB9G,IAAAA,GAAIwC,IAAAA,QAASiC,IAAAA,KAC7CzF,EAAS,CAAE+H,UAAW,CAAEtC,KAAAA,KACxBjE,GAAoBR,GACpB,IAAMO,EAAmBP,IAAO6G,kBAAkB,KAAO7G,EACnDgH,EAAanE,EAAA,QAAA,CAAA,EAAMrD,EAAuBe,GAE5C9B,GAAqBc,IAAuB0C,cAAYgF,KAAK9E,KAC/D9D,UACK2I,GAAa,CAAA,EAAA,CAChBE,gBAAiBpI,EAAwByB,EAAmBiC,KAKhEnE,GAAiB2I,IA4LTzE,cAAeA,GACf4E,gBAAiBrI,EA1QL,kBA0Q+CI,EAC3DG,kBAAmBA,EACnBI,oBAAqBA,SAMjC,EAEAjC,EAAuB4J,aAAe,CACpCxI,YAAa,KACbT,MAAO,kBACPD,YAAY,EACZJ,kBAAc6E,EACd5E,2BAAuB4E,EACvB1E,eAAe,EACfP,OAAQ,KACRiB,+BAA+B,EAC/BE,gCAAgC,EAChCP,mBAAoB,GACpBC,qBAAsB,GACtBQ,uBAAwB,KACxBC,SAAUqI,EAAIA,KACdpI,mBAAoB,CAAC,GAGvBzB,EAAuB8J,UAAY,CACjC1I,YAAa2I,EAAS,QAACC,OACvB9I,SAAU6I,EAAS,QAACE,MAAM,CAAA,GAAIC,WAC9B/J,QAAS4J,EAAS,QAACE,MAAM,CAAA,GAAIC,WAC7B5J,aAAcyJ,EAAS,QAACI,IACxB5J,sBAAuBwJ,EAAS,QAACI,IACjCtJ,iBAAkBkJ,EAAAA,QAAUK,KAAKF,WACjCvJ,MAAOoJ,EAAS,QAACM,OACjB3J,WAAYqJ,EAAS,QAACO,KACtB7J,cAAesJ,EAAS,QAACO,KACzBpK,OAAQ6J,EAAS,QAACM,OAClBlJ,8BAA+B4I,EAAS,QAACO,KACzCjJ,+BAAgC0I,EAAS,QAACO,KAC1CxJ,mBAAoBiJ,EAAS,QAACQ,QAAQR,EAAS,QAACE,MAAM,CAAE,IACxDlJ,qBAAsBgJ,EAAS,QAACQ,QAAQR,EAAS,QAACE,MAAM,CAAE,IAC1D1I,uBAAwBwI,EAAS,QAACS,UAAU,CAACT,EAAS,QAACU,QAASV,EAAAA,QAAUM,SAC1E7I,SAAUuI,EAAS,QAACK,KACpB3I,mBAAoBsI,EAAS,QAACE,MAAM,CAClCrK,MAAOmK,EAAS,QAACM,OACjBjE,iBAAkB2D,EAAS,QAACM,OAC5BhE,mBAAoB0D,EAAS,QAACM,OAC9BpB,qBAAsBc,EAAS,QAACM"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/toConsumableArray");require("lodash");var t=require("../constants.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
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/toConsumableArray");require("lodash");var t=require("../constants.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 r=require("../../../constants/assetTypes.js");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("../../../constants/corvaCompanyId.js"),require("../../GradientManager/configuration/constants.js");var n=s(e);exports.formatAsset=function(e){var s=e.asset,n=e.group,a=void 0===n?null:n,i=e.activeWellId,l=void 0===i?null:i,u=e.isRequiredAssetId,o=e.isPrimaryAsset,c=e.isDrillingPlatformApp;if(!s)return null;var d,p,v,S={id:+s.assetId||+s.id,type:s.type,name:s.name};(u&&(S.id=+s.id,S.assetId=+s.assetId),a&&(S.group=a),s.type===r.ASSET_TYPES.rig.type)&&(S.activeWellId=Number(null===(d=s.activeWell)||void 0===d?void 0:d.id)||null,c&&(S.activeWellId=Number(null===(p=s.activeWell)||void 0===p?void 0:p.assetId)||null));"interventionUnit"===s.type&&(S.activeWellId=Number(null===(v=s.activeWell)||void 0===v?void 0:v.id)||null);return s.type!==r.ASSET_TYPES.well.type&&s.type!==t.DEFAULT_ASSET_TYPE||(S.status=Number(s.id)===l?t.ACTIVE_STATUS:null),s.type===r.ASSET_TYPES.pad.type&&(S.parentFracFleetId=s.parentFracFleetId,S.status=s.active&&s.current?t.ACTIVE_STATUS:null,o&&!s.parentFracFleetId&&(S.status=null)),S},exports.getPrimaryAssetFields=function(e,t,s){var a=n.default(t);return e!==r.ASSET_TYPES.rig.type&&e!==r.ASSET_TYPES.intervention_unit.type||a.push("".concat(e,".active_well")),s?[].concat(n.default(a),["rig.active_child"]):a},exports.getRequestOptions=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return{sort:"name",order:"asc",fields:["".concat(e,".name"),"".concat(e,".status")].concat(n.default(t))}},exports.getSearchPlaceholder=function(e){return t.ASSET_TYPE_SEARCH_PLACEHOLDERS[e]||"Search..."},exports.sortAsset=function(e){return e.status===t.ACTIVE_STATUS?-1:1};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/AssetEditorV2/utils/index.js"],"sourcesContent":["import { isEmpty } from 'lodash';\n\nimport { ACTIVE_STATUS, DEFAULT_ASSET_TYPE } from '../constants';\n\nimport { ASSET_TYPES } from '~/constants';\n\nexport const mapAssetIdPath = assetType => {\n switch (assetType) {\n case 'rig':\n case 'well':\n return ['attributes', 'asset_id'];\n case 'frac_fleet':\n case 'pad':\n default:\n return ['id'];\n }\n};\n\nexport const getPadFracFleetId = (fracFleets = []) => {\n const currentFracFleet = fracFleets.find(fracFleet => fracFleet === fracFleet.current)?.id;\n const lastCurrentFracFleet = fracFleets.reduce((a, b) => {\n return new Date(a.lastCurrentAt) > new Date(b.lastCurrentAt) ? a : b;\n }, {});\n\n if (!isEmpty(currentFracFleet)) {\n return currentFracFleet.fracFleet?.id;\n }\n return lastCurrentFracFleet.fracFleet?.id;\n};\n\nexport const getRequestOptions = (assetType, assetFields = []) => ({\n sort: 'name',\n order: 'asc',\n fields: [`${assetType}.name`, `${assetType}.status`, ...assetFields],\n});\n\nexport const formatAsset = ({\n asset,\n group = null,\n activeWellId = null,\n isRequiredAssetId,\n isPrimaryAsset,\n isDrillingPlatformApp,\n}) => {\n if (!asset) return null;\n\n const formattedAsset = {\n id: +asset.assetId || +asset.id,\n type: asset.type,\n name: asset.name,\n };\n\n if (isRequiredAssetId) {\n formattedAsset.id = +asset.id;\n formattedAsset.assetId = +asset.assetId;\n }\n\n if (group) {\n formattedAsset.group = group;\n }\n if (asset.type === ASSET_TYPES.rig.type) {\n formattedAsset.activeWellId = Number(asset.activeWell?.id) || null;\n if (isDrillingPlatformApp) {\n formattedAsset.activeWellId = Number(asset.activeWell?.assetId) || null;\n }\n }\n if (asset.type === ASSET_TYPES.well.type || asset.type === DEFAULT_ASSET_TYPE) {\n formattedAsset.status = Number(asset.id) === activeWellId ? ACTIVE_STATUS : null;\n }\n if (asset.type === ASSET_TYPES.pad.type) {\n formattedAsset.parentFracFleetId = asset.parentFracFleetId;\n\n formattedAsset.status = asset.active && asset.current ? ACTIVE_STATUS : null;\n\n if (isPrimaryAsset && !asset.parentFracFleetId) {\n formattedAsset.status = null;\n }\n }\n return formattedAsset;\n};\n\nexport const sortAsset = curr => (curr.status === ACTIVE_STATUS ? -1 : 1);\n\nexport const getPrimaryAssetFields = (primaryAssetType, assetFields, isDrillingPlatformApp) => {\n const customAssetFields
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/components/AssetEditorV2/utils/index.js"],"sourcesContent":["import { isEmpty } from 'lodash';\n\nimport { ACTIVE_STATUS, ASSET_TYPE_SEARCH_PLACEHOLDERS, DEFAULT_ASSET_TYPE } from '../constants';\n\nimport { ASSET_TYPES } from '~/constants';\n\nexport const mapAssetIdPath = assetType => {\n switch (assetType) {\n case 'rig':\n case 'well':\n return ['attributes', 'asset_id'];\n case 'frac_fleet':\n case 'pad':\n default:\n return ['id'];\n }\n};\n\nexport const getPadFracFleetId = (fracFleets = []) => {\n const currentFracFleet = fracFleets.find(fracFleet => fracFleet === fracFleet.current)?.id;\n const lastCurrentFracFleet = fracFleets.reduce((a, b) => {\n return new Date(a.lastCurrentAt) > new Date(b.lastCurrentAt) ? a : b;\n }, {});\n\n if (!isEmpty(currentFracFleet)) {\n return currentFracFleet.fracFleet?.id;\n }\n return lastCurrentFracFleet.fracFleet?.id;\n};\n\nexport const getRequestOptions = (assetType, assetFields = []) => ({\n sort: 'name',\n order: 'asc',\n fields: [`${assetType}.name`, `${assetType}.status`, ...assetFields],\n});\n\nexport const formatAsset = ({\n asset,\n group = null,\n activeWellId = null,\n isRequiredAssetId,\n isPrimaryAsset,\n isDrillingPlatformApp,\n}) => {\n if (!asset) return null;\n\n const formattedAsset = {\n id: +asset.assetId || +asset.id,\n type: asset.type,\n name: asset.name,\n };\n\n if (isRequiredAssetId) {\n formattedAsset.id = +asset.id;\n formattedAsset.assetId = +asset.assetId;\n }\n\n if (group) {\n formattedAsset.group = group;\n }\n if (asset.type === ASSET_TYPES.rig.type) {\n formattedAsset.activeWellId = Number(asset.activeWell?.id) || null;\n if (isDrillingPlatformApp) {\n formattedAsset.activeWellId = Number(asset.activeWell?.assetId) || null;\n }\n }\n // NOTE: we use deserializer which transform keys and values to camelCase\n if (asset.type === 'interventionUnit') {\n formattedAsset.activeWellId = Number(asset.activeWell?.id) || null;\n }\n if (asset.type === ASSET_TYPES.well.type || asset.type === DEFAULT_ASSET_TYPE) {\n formattedAsset.status = Number(asset.id) === activeWellId ? ACTIVE_STATUS : null;\n }\n if (asset.type === ASSET_TYPES.pad.type) {\n formattedAsset.parentFracFleetId = asset.parentFracFleetId;\n\n formattedAsset.status = asset.active && asset.current ? ACTIVE_STATUS : null;\n\n if (isPrimaryAsset && !asset.parentFracFleetId) {\n formattedAsset.status = null;\n }\n }\n return formattedAsset;\n};\n\nexport const sortAsset = curr => (curr.status === ACTIVE_STATUS ? -1 : 1);\n\nexport const getPrimaryAssetFields = (primaryAssetType, assetFields, isDrillingPlatformApp) => {\n const customAssetFields = [...assetFields];\n if (\n primaryAssetType === ASSET_TYPES.rig.type ||\n primaryAssetType === ASSET_TYPES.intervention_unit.type\n ) {\n customAssetFields.push(`${primaryAssetType}.active_well`);\n }\n\n if (isDrillingPlatformApp) return [...customAssetFields, 'rig.active_child'];\n\n return customAssetFields;\n};\n\nexport const getSearchPlaceholder = assetType => {\n return ASSET_TYPE_SEARCH_PLACEHOLDERS[assetType] || 'Search...';\n};\n"],"names":["_ref","asset","_ref$group","group","_ref$activeWellId","activeWellId","isRequiredAssetId","isPrimaryAsset","isDrillingPlatformApp","_asset$activeWell","_asset$activeWell2","_asset$activeWell3","formattedAsset","id","assetId","type","name","ASSET_TYPES","rig","Number","activeWell","well","DEFAULT_ASSET_TYPE","status","ACTIVE_STATUS","pad","parentFracFleetId","active","current","primaryAssetType","assetFields","customAssetFields","intervention_unit","push","assetType","sort","order","fields","ASSET_TYPE_SEARCH_PLACEHOLDERS","curr"],"mappings":"o1BAoC2B,SAOrBA,GAAA,IANJC,IAAAA,MAAKC,EAAAF,EACLG,MAAAA,aAAQ,KAAID,EAAAE,EAAAJ,EACZK,aAAAA,aAAe,KAAID,EACnBE,IAAAA,kBACAC,IAAAA,eACAC,IAAAA,sBAEA,IAAKP,EAAO,OAAO,KAEnB,IAcyCQ,EAEZC,EAKUC,EArBjCC,EAAiB,CACrBC,IAAKZ,EAAMa,UAAYb,EAAMY,GAC7BE,KAAMd,EAAMc,KACZC,KAAMf,EAAMe,OAGVV,IACFM,EAAeC,IAAMZ,EAAMY,GAC3BD,EAAeE,SAAWb,EAAMa,SAG9BX,IACFS,EAAeT,MAAQA,GAErBF,EAAMc,OAASE,cAAYC,IAAIH,QACjCH,EAAeP,aAAec,OAAO,QAAAlB,EAAAA,EAAMmB,kBAAN,IAAAX,OAAA,EAAAA,EAAkBI,KAAO,KAC1DL,IACFI,EAAeP,aAAec,OAAO,QAAAlB,EAAAA,EAAMmB,kBAAN,IAAAV,OAAA,EAAAA,EAAkBI,UAAY,OAIpD,qBAAfb,EAAMc,OACRH,EAAeP,aAAec,OAAO,QAAAlB,EAAAA,EAAMmB,kBAAN,IAAAT,OAAA,EAAAA,EAAkBE,KAAO,MAchE,OAZIZ,EAAMc,OAASE,cAAYI,KAAKN,MAAQd,EAAMc,OAASO,uBACzDV,EAAeW,OAASJ,OAAOlB,EAAMY,MAAQR,EAAemB,EAAaA,cAAG,MAE1EvB,EAAMc,OAASE,cAAYQ,IAAIV,OACjCH,EAAec,kBAAoBzB,EAAMyB,kBAEzCd,EAAeW,OAAStB,EAAM0B,QAAU1B,EAAM2B,QAAUJ,EAAaA,cAAG,KAEpEjB,IAAmBN,EAAMyB,oBAC3Bd,EAAeW,OAAS,OAGrBX,CACT,gCAIqC,SAACiB,EAAkBC,EAAatB,GACnE,IAAMuB,EAAwBD,UAAAA,GAQ9B,OANED,IAAqBZ,EAAWA,YAACC,IAAIH,MACrCc,IAAqBZ,EAAWA,YAACe,kBAAkBjB,MAEnDgB,EAAkBE,KAAQJ,GAAAA,OAAAA,EAA+B,iBAGvDrB,EAAkCuB,GAAAA,OAAAA,EAAAA,QAAAA,IAAmB,qBAElDA,CACT,4BArEiC,SAACG,GAAS,IAAEJ,yDAAc,GAAE,MAAM,CACjEK,KAAM,OACNC,MAAO,MACPC,OAAYH,CAAAA,GAAAA,OAAAA,EAAqBA,SAAAA,GAAAA,OAAAA,+BAAuBJ,IACzD,+BAmEmC,SAAAI,GAClC,OAAOI,EAA8BA,+BAACJ,IAAc,WACtD,oBAlByB,SAAAK,GAAI,OAAKA,EAAKhB,SAAWC,EAAaA,eAAI,EAAI,CAAC"}
|