@corva/ui 3.20.4 → 3.20.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/cjs-bundle/components/OffsetWellMap/OffsetWellMap.js +1 -1
  2. package/cjs-bundle/components/OffsetWellMap/OffsetWellMap.js.map +1 -1
  3. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.js +1 -1
  4. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.js.map +1 -1
  5. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js +1 -1
  6. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js.map +1 -1
  7. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.js +1 -1
  8. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.js.map +1 -1
  9. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.module.css.js +1 -1
  10. package/cjs-bundle/components/OffsetWellPickerV4/constants.js +1 -1
  11. package/cjs-bundle/components/OffsetWellPickerV4/constants.js.map +1 -1
  12. package/components/OffsetWellMap/OffsetWellMap.d.ts.map +1 -1
  13. package/components/OffsetWellMap/OffsetWellMap.js +1 -1
  14. package/components/OffsetWellMap/OffsetWellMap.js.map +1 -1
  15. package/components/OffsetWellPickerV4/OffsetWellPickerV4.d.ts.map +1 -1
  16. package/components/OffsetWellPickerV4/OffsetWellPickerV4.js +1 -1
  17. package/components/OffsetWellPickerV4/OffsetWellPickerV4.js.map +1 -1
  18. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.d.ts +3 -1
  19. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.d.ts.map +1 -1
  20. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js +1 -1
  21. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js.map +1 -1
  22. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.d.ts +3 -11
  23. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.d.ts.map +1 -1
  24. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.js +1 -1
  25. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.js.map +1 -1
  26. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.module.css.js +1 -1
  27. package/components/OffsetWellPickerV4/constants.js +1 -1
  28. package/components/OffsetWellPickerV4/constants.js.map +1 -1
  29. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"OffsetWellPickerV4.js","sources":["../../../../src/components/OffsetWellPickerV4/OffsetWellPickerV4.js"],"sourcesContent":["import { useState, useEffect, useRef, useCallback, useMemo } from 'react';\nimport classNames from 'classnames';\nimport { isEmpty, uniq, uniqBy, sortBy as sortArray } from 'lodash';\nimport { InfoOutlined, Replay as ReplayIcon } from '@material-ui/icons';\n\nimport {\n useAdvancedWells,\n useBicWells,\n useFilterOptions,\n useCompanyMetricKey,\n useFilteredWells,\n useSortedWells,\n useTableColumns,\n useCompanyProvider,\n} from './effects';\nimport { useFetchWells } from './effects/useFetchWells';\nimport { AppHeader } from './components/AppHeader';\nimport { Toolbar } from './components/Toolbar';\nimport { Filter } from './components/Filter';\nimport { WellsMap } from './components/Map';\nimport { OffsetWellsTable } from './components/OffsetWellsTable';\nimport {\n ALL_SECTION_KEY,\n ColumnType,\n COMPANY_PROVIDERS_FOR_IDAS,\n DEFAULT_BIC_OFFSET_SIZE,\n DEFAULT_LOCAL_OFFSET_SIZE,\n FilterType,\n IOS_DEVICE,\n LEAVE_TOUCH_DELAY,\n MAX_OFFSET_SIZE,\n ROWS_PER_PAGE,\n SMALL_SCREEN_HEIGHT,\n SMALL_SCREEN_WIDTH,\n TOP_GRADIENT_MAP,\n ViewType,\n RESYNC_STATUS,\n} from './constants';\nimport { SEARCH_CATEGORIES } from './components/OffsetWellsTable/AdvancedSearch/constants';\nimport { getCoordinatedWells, getMobileOperatingSystem } from './utils';\n\nimport styles from './OffsetWellPickerV4.module.css';\n\nimport { showInfoNotification } from '~/utils';\nimport { NotificationsContainer } from '~/components/Notifications';\nimport { isMobileDetected, isNativeDetected } from '~/utils/mobileDetect';\nimport { typography } from '~/styles';\nimport { Regular12, Regular14 } from '~/components/Typography';\nimport { Button, Modal, LoadingIndicator, Tooltip } from '~/components';\n\nconst PAGE_NAME = 'OffsetWellPickerV4';\n\n/**\n * @type {React.FC<import('./OffsetWellPickerV4.types').OffsetWellPickerV4Props>}\n */\nconst OffsetWellPickerV4 = ({\n open,\n isWDUser,\n defaultSubjectWell,\n currentUser,\n offsetSettings,\n addWellsUsabilityInfo,\n isViewOnly,\n onClose,\n onSave,\n maxOffsetSize: offsetSize = DEFAULT_BIC_OFFSET_SIZE,\n localMaxOffsetSize = DEFAULT_LOCAL_OFFSET_SIZE,\n syncAutoEnabled,\n isManualWellsEnabled = false,\n}) => {\n const [activeWellId, setActiveWellId] = useState(null);\n const maxOffsetSize = Math.min(offsetSize + 1, localMaxOffsetSize + 1, MAX_OFFSET_SIZE + 1);\n const maxOffsetWellNumber = Math.min(\n Math.max(maxOffsetSize, localMaxOffsetSize + 1),\n MAX_OFFSET_SIZE + 1\n );\n\n const [isFilterExpanded, setIsFilterExpanded] = useState(offsetSettings?.filterExpanded);\n const [isMapHidden, setIsMapHidden] = useState(offsetSettings?.mapHidden);\n const assetCompanyId = +defaultSubjectWell?.companyId || +currentUser?.company_id;\n const subjectWellId = defaultSubjectWell?.asset_id;\n const [filters, setFilters] = useState(offsetSettings?.filters || {});\n const [selectedWellSection, setSelectedWellSection] = useState(\n offsetSettings?.wellSection || ALL_SECTION_KEY\n );\n const initLoading = useRef(true);\n const [selectedWells, setSelectedWells] = useState([]);\n const [subjectWell, setSubjectWell] = useState(null);\n const [isTableLoading, setIsTableLoading] = useState(true);\n const [isWellNameExpand, setIsWellNameExpand] = useState(false);\n const [isAdvancedSearchHidden, setIsAdvancedSearchHidden] = useState(false);\n const contentRef = useRef();\n /** @type {ReturnType<typeof useState<string>>} */\n const [viewType, setViewType] = useState(ViewType.none);\n\n /** @type {ReturnType<typeof useRef<string>>} */\n const prevViewType = useRef();\n const [isTopGradientShow, setIsTopGradientShow] = useState(false);\n const isLimitedOffsetWells = maxOffsetWellNumber <= selectedWells?.length;\n const topGradientTop = TOP_GRADIENT_MAP[viewType];\n\n /** @type {ReturnType<typeof useRef<number[]>>} */\n const prevSelectedWellIds = useRef();\n const [appLoading, setAppLoading] = useState(true);\n\n useEffect(() => {\n if (open && isLimitedOffsetWells) {\n showInfoNotification(\n `App can’t process more than (${maxOffsetWellNumber - 1}) Offset Wells.`\n );\n }\n // NOTE: Refresh when the offset well changes externally\n if (!open) {\n const isNotChanged =\n offsetSettings?.selectedWellIds?.length === prevSelectedWellIds.current?.length &&\n offsetSettings?.selectedWellIds?.every(id => prevSelectedWellIds.current?.includes(id));\n if (!isNotChanged) {\n initLoading.current = true;\n }\n prevSelectedWellIds.current = offsetSettings?.selectedWellIds;\n }\n }, [isLimitedOffsetWells, open, offsetSettings]);\n\n useEffect(() => {\n function handleResize() {\n if (window.innerWidth <= SMALL_SCREEN_WIDTH || isMobileDetected || isNativeDetected) {\n setViewType(ViewType.mobile);\n } else if (window.innerHeight <= SMALL_SCREEN_HEIGHT) {\n setViewType(ViewType.small);\n } else {\n setViewType(ViewType.normal);\n }\n }\n handleResize();\n window.addEventListener('resize', handleResize);\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, [open]);\n\n useEffect(() => {\n if (prevViewType.current && viewType === prevViewType.current) return;\n prevViewType.current = viewType;\n if (viewType === ViewType.small || viewType === ViewType.mobile) {\n setIsMapHidden(true);\n setIsFilterExpanded(false);\n } else {\n setIsFilterExpanded(!isViewOnly && offsetSettings?.filterExpanded);\n setIsMapHidden(!isViewOnly && offsetSettings?.mapHidden);\n }\n setFilters(offsetSettings?.filters || {});\n setSelectedWellSection(offsetSettings?.wellSection || ALL_SECTION_KEY);\n }, [offsetSettings, isViewOnly, viewType]);\n\n // NOTE: Fetch all wells\n const [rawWells, areWellsLoading] = useFetchWells(assetCompanyId, addWellsUsabilityInfo);\n const [companyProvider] = useCompanyProvider(assetCompanyId);\n const [\n wellSections,\n setWellSections,\n bicWells,\n setBicWells,\n resyncStatus,\n setResyncStatus,\n taScores,\n ] = useBicWells(isWDUser, currentUser, subjectWellId, rawWells, isManualWellsEnabled);\n\n useEffect(() => {\n setAppLoading(true);\n setWellSections(null);\n setBicWells(null);\n }, [subjectWellId]);\n\n const [metricsKeys, setMetricsKeys] = useCompanyMetricKey(\n assetCompanyId,\n offsetSettings?.metricsKeys\n );\n\n // NOTE: Calculate wells with coordinates, metrics and well section name\n const wells = useAdvancedWells(\n assetCompanyId,\n rawWells,\n wellSections,\n bicWells,\n subjectWellId,\n metricsKeys,\n open\n );\n\n const isAllWellsLoaded = !areWellsLoading && wells?.length === rawWells?.length;\n\n useEffect(() => {\n if (!isAllWellsLoaded) return;\n const syncOffsetWells = async () => {\n const isSynced = typeof offsetSettings?.isSynced === 'undefined' || offsetSettings?.isSynced;\n let offsetWellsChanged = true;\n if (isSynced) {\n const bicWellIds = bicWells[ALL_SECTION_KEY] || [];\n const isMatched = (offsetSettings?.selectedWellIds || []).every(wellId =>\n bicWellIds.includes(wellId)\n );\n // if well hub or offset selection app be changed\n if (bicWellIds.length !== offsetSettings?.selectedWellIds?.length || !isMatched) {\n const wellsByDistance = await getCoordinatedWells(bicWellIds, subjectWellId);\n let selectedWellIds = wellsByDistance.slice(0, maxOffsetSize + 1).map(well => well.id);\n selectedWellIds = wellsByDistance.slice(0, localMaxOffsetSize + 1).map(well => well.id);\n const newOffsetSetting = {\n ...offsetSettings,\n subjectWellId,\n selectedWellIds,\n offsetWellsLimited: maxOffsetWellNumber <= selectedWellIds.length,\n };\n const offsetWells = wellsByDistance.filter(well => selectedWellIds.includes(well.id));\n onSave(newOffsetSetting, offsetWells);\n } else {\n offsetWellsChanged = false;\n }\n } else {\n offsetWellsChanged = false;\n }\n\n if (!offsetWellsChanged) {\n const offsetWells = await getCoordinatedWells(\n offsetSettings?.selectedWellIds || [],\n subjectWellId\n );\n onSave(offsetSettings, offsetWells);\n }\n };\n\n if (syncAutoEnabled && appLoading && offsetSettings && bicWells) {\n syncOffsetWells();\n setAppLoading(false);\n }\n }, [offsetSettings, bicWells, subjectWellId, maxOffsetWellNumber, syncAutoEnabled]);\n\n const filterOptions = useFilterOptions(wells);\n\n // NOTE: Subject well\n useEffect(() => {\n if (wells && wellSections) {\n const defaultSubjectWell = wells.find(well => well.id === subjectWellId);\n if (defaultSubjectWell) {\n const allSectionNames = wellSections\n .filter(item => item.value !== ALL_SECTION_KEY)\n .map(({ label }) => label);\n const subjectWellWithSection = {\n ...defaultSubjectWell,\n ...(allSectionNames.length > 0 && { [ColumnType.wellSection]: allSectionNames }),\n };\n setSubjectWell(subjectWellWithSection);\n } else {\n setSubjectWell(null);\n }\n }\n }, [wellSections, wells]);\n\n // NOTE: Table columns with metrics\n const columnsWithDict = useTableColumns(metricsKeys);\n\n // NOTE: Filter wells\n const filteredWells = useFilteredWells(wells, filters);\n\n useEffect(() => {\n if (!filteredWells || !isAllWellsLoaded) return;\n\n if (initLoading.current) {\n let data = wells.filter(well => (offsetSettings?.selectedWellIds || []).includes(well.id));\n if (subjectWell) data = data.concat(subjectWell);\n setSelectedWells(uniqBy(data, 'id'));\n initLoading.current = false;\n } else {\n setSelectedWells(prev => {\n let newSelectedWells = (filteredWells || []).filter(\n well => !!prev.find(({ id }) => well.id === id)\n );\n if (subjectWell) newSelectedWells = newSelectedWells.concat(subjectWell);\n return uniqBy(newSelectedWells, 'id');\n });\n }\n }, [wells, filteredWells, offsetSettings?.selectedWellIds, isAllWellsLoaded]);\n\n // NOTE: Sort wells\n const [sortBy, setSortBy, sortDirection, setSortDirection, sortedWells] = useSortedWells(\n subjectWell,\n filteredWells,\n selectedWells,\n setIsTableLoading\n );\n\n // NOTE: Add advanced wells\n const handleAddRemoveAssets = useCallback(\n (isAdding, newAssets, assetType) => {\n let addingWellIds;\n if (assetType === SEARCH_CATEGORIES.well.name) {\n addingWellIds = newAssets;\n } else {\n addingWellIds = newAssets.reduce((acc, assetId) => {\n const rigName = wells.find(well => well.id === assetId)?.rigName;\n const rigWellIds = wells.filter(well => well.rigName === rigName).map(well => well.id);\n return acc.concat(rigWellIds);\n }, []);\n }\n let addingWells = wells.filter(({ id }) => addingWellIds.includes(id));\n if (isAdding) {\n addingWells = addingWells.slice(\n 0,\n Math.min(addingWells.length, maxOffsetWellNumber - selectedWells.length)\n );\n setSelectedWells(selectedWells => uniqBy(selectedWells.concat(addingWells), 'id'));\n } else {\n setSelectedWells(selectedWells =>\n uniq(selectedWells.filter(({ id }) => !addingWells.find(well => well.id === id)))\n );\n }\n },\n [wells, selectedWells]\n );\n\n const handleHideAdvancedSearch = useCallback(() => {\n setIsAdvancedSearchHidden(true);\n }, []);\n\n // NOTE: Change metrics keys\n const handleChangeMetricsKeys = useCallback(newMetricsKeys => {\n setMetricsKeys(newMetricsKeys);\n }, []);\n\n // NOTE: Check and Uncheck one offset well\n const handleChangeOffsetWell = useCallback((well, checked) => {\n if (checked) {\n setSelectedWells(prevWells => [...prevWells, well]);\n } else {\n setSelectedWells(prevWells => prevWells.filter(item => item.id !== well.id));\n }\n }, []);\n\n // NOTE: Select and Unselect All wells\n const handleChangeAllOffsetWells = useCallback(\n checked => {\n if (checked) {\n const data = subjectWell ? filteredWells.concat(subjectWell) : filteredWells;\n const sortedData = sortArray(uniqBy(data, 'id'), 'distance');\n setSelectedWells(sortedData.slice(0, maxOffsetWellNumber));\n } else {\n setSelectedWells(subjectWell ? [subjectWell] : []);\n }\n },\n [filteredWells, subjectWell, maxOffsetWellNumber]\n );\n\n // NOTE: Well Section change filter\n const updateSelectedWellsBySection = section => {\n if (bicWells) {\n const sectionWells = wells?.filter(well => bicWells[section]?.includes(well.id)) || [];\n const limitedWells = sortArray(sectionWells, 'distance');\n setSelectedWells(limitedWells.slice(0, maxOffsetSize));\n } else {\n setSelectedWells(subjectWell ? [subjectWell] : []);\n }\n };\n\n const handleChangeWellSection = useCallback(\n section => {\n setSelectedWellSection(section);\n updateSelectedWellsBySection(section);\n },\n [updateSelectedWellsBySection]\n );\n\n // NOTE: Get Selected wells count\n const selectedWellsCount = useMemo(() => {\n if (selectedWells.find(well => well.id === subjectWellId)) {\n return selectedWells.length - 1;\n }\n return selectedWells.length;\n }, [selectedWells, subjectWellId]);\n\n // NOTE: Save offset setting\n const isSynced = useMemo(() => {\n if (!bicWells) return false;\n const selectedWellIds = selectedWells.map(({ id }) => id);\n let synced;\n const owsWellIds = bicWells[selectedWellSection] || [];\n const owsWellIdsLength = Math.min(owsWellIds.length, maxOffsetSize);\n\n if (owsWellIdsLength !== selectedWellIds.length) {\n synced = false;\n } else {\n synced = selectedWellIds.every(id => owsWellIds.includes(id));\n }\n return synced;\n }, [bicWells, selectedWells, selectedWellSection, maxOffsetSize]);\n\n const isXtoProvider = useMemo(() => {\n return companyProvider ? COMPANY_PROVIDERS_FOR_IDAS.includes(companyProvider) : false;\n }, [companyProvider]);\n\n const offsetLabel = useMemo(() => {\n if (isXtoProvider) {\n return 'IDAS generated offsets.';\n }\n\n return isWDUser ? 'Offset Selection App.' : 'WellHub.';\n }, [isXtoProvider, isWDUser]);\n\n const handleSave = () => {\n onClose();\n\n const newOffsetSetting = {\n ...offsetSettings,\n companyId: assetCompanyId,\n subjectWellId,\n selectedWellIds: selectedWells.map(({ id }) => id),\n filters,\n metricsKeys,\n wellSection: selectedWellSection,\n isSynced,\n mapHidden: isMapHidden,\n filterExpanded: isFilterExpanded,\n offsetWellsLimited: isLimitedOffsetWells,\n };\n onSave(newOffsetSetting, selectedWells);\n };\n\n const handleCancel = () => {\n let data = (wells || []).filter(well =>\n (offsetSettings?.selectedWellIds || []).includes(well.id)\n );\n if (subjectWell) data = data.concat(subjectWell);\n setSelectedWells(uniqBy(data, 'id'));\n\n const newOffsetSetting = {\n ...offsetSettings,\n mapHidden: isMapHidden,\n filterExpanded: isFilterExpanded,\n };\n onSave(newOffsetSetting);\n setFilters(offsetSettings?.filters || {});\n setSelectedWellSection(offsetSettings?.wellSection || ALL_SECTION_KEY);\n onClose();\n };\n\n const isTableFullLoading = isTableLoading || !isAllWellsLoaded;\n\n // NOTE: Reset processing\n const isResetVisible = useMemo(() => {\n if (isTableFullLoading) return false;\n if (!isSynced) return true;\n if (!isEmpty(filters) && filters[FilterType.sideTracks]) return true;\n if (selectedWellSection !== ALL_SECTION_KEY) return true;\n return false;\n }, [isSynced, filters, selectedWellSection, isTableFullLoading]);\n\n const handleReset = () => {\n setFilters({});\n setSelectedWellSection(ALL_SECTION_KEY);\n updateSelectedWellsBySection(ALL_SECTION_KEY);\n };\n\n const isLoading = !wells || !wellSections || !sortedWells || viewType === ViewType.none;\n\n // NOTE: Well Name shadow\n const [isHScrollMoved, setIsHScrollMoved] = useState(false);\n const [tableRowsCount, setTableRowsCount] = useState(ROWS_PER_PAGE);\n const [tableWells, setTableWells] = useState([]);\n\n useEffect(() => {\n if (!sortedWells) return;\n\n const wells = sortedWells.slice(0, tableRowsCount);\n setTableWells(wells);\n }, [sortedWells, tableRowsCount, subjectWell]);\n\n useEffect(() => {\n if (resyncStatus === RESYNC_STATUS.SUCCEEDED) {\n handleReset();\n }\n }, [bicWells]);\n\n const handleScroll = e => {\n if (!e.target) return;\n\n if (isAdvancedSearchHidden) {\n e.target.scrollLeft = 0;\n setIsAdvancedSearchHidden(false);\n }\n\n // Check if H-Scroll is visible\n if (e.target.scrollLeft <= 5 && isHScrollMoved) {\n setIsHScrollMoved(false);\n }\n if (e.target.scrollLeft > 5 && !isHScrollMoved) {\n setIsHScrollMoved(true);\n }\n\n if (e.target.scrollTop <= 5 && isTopGradientShow) {\n setIsTopGradientShow(false);\n }\n if (e.target.scrollTop > 5 && !isTopGradientShow) {\n setIsTopGradientShow(true);\n }\n\n // Check if scroll has reached top or bottom\n if (e.target.scrollHeight === e.target.offsetHeight) return;\n\n const currentScrollBottom = Math.round(e.target.scrollTop + e.target.offsetHeight + 2);\n\n if (currentScrollBottom >= e.target.scrollHeight && tableRowsCount < sortedWells.length) {\n setTableRowsCount(count => count + ROWS_PER_PAGE);\n }\n };\n\n const tooltipContainer = () => {\n return (\n <div>\n <span className={classNames(typography.regular12, typography.colors.t1)}>\n The offset list is being automatically populated by&nbsp;\n </span>\n <span className={classNames(typography.medium12, typography.colors.t1)}>{offsetLabel}</span>\n </div>\n );\n };\n\n return (\n <Modal\n open={open}\n onClose={handleCancel}\n title={\n <AppHeader\n isWDUser={isWDUser}\n viewType={viewType}\n totalCount={wells?.length ?? 0}\n selectedCount={selectedWellsCount}\n isViewOnly={isViewOnly}\n maxOffsetWellNumber={maxOffsetWellNumber}\n />\n }\n isMobile={viewType === ViewType.mobile}\n contentContainerClassName={classNames(styles.offsetWellDialog)}\n contentClassName={classNames(styles.contentContainer, {\n [styles.smallContainer]: viewType === ViewType.small,\n [styles.contentContainerMobile]: viewType === ViewType.mobile,\n })}\n actionsClassName={styles.modalActions}\n actions={\n !isViewOnly && (\n <div className={styles.actionsWrapper}>\n {!isLoading && isResetVisible ? (\n <Tooltip\n placement=\"bottom-start\"\n title={`Reset to Synced Offsets in ${isWDUser ? 'Offset App' : 'Wellhub'}`}\n >\n <div>\n <Button\n data-testid={`${PAGE_NAME}_reset`}\n onClick={handleReset}\n color=\"primary\"\n startIcon={viewType !== ViewType.mobile && <ReplayIcon />}\n classes={viewType === ViewType.mobile && { root: styles.resetButtonMobile }}\n >\n {viewType !== ViewType.mobile ? 'Reset' : <ReplayIcon />}\n </Button>\n </div>\n </Tooltip>\n ) : (\n <div className={viewType === ViewType.mobile && styles.infoIconContainer}>\n {viewType !== ViewType.mobile ? (\n <>\n <span className={classNames(typography.regular12, typography.colors.t6)}>\n The offset list is being automatically populated by&nbsp;\n </span>\n <span className={classNames(typography.medium12, typography.colors.t6)}>\n {offsetLabel}\n </span>\n </>\n ) : (\n <Tooltip\n title={tooltipContainer()}\n enterTouchDelay={0}\n leaveTouchDelay={LEAVE_TOUCH_DELAY}\n >\n <InfoOutlined className={styles.infoIcon} />\n </Tooltip>\n )}\n </div>\n )}\n <div className={styles.buttonGap}>\n <Button data-testid={`${PAGE_NAME}_cancel`} onClick={handleCancel} color=\"primary\">\n Cancel\n </Button>\n <Button\n data-testid={`${PAGE_NAME}_selectedWells`}\n variant=\"contained\"\n color=\"primary\"\n onClick={handleSave}\n >\n Select ({selectedWellsCount})\n </Button>\n </div>\n </div>\n )\n }\n >\n <NotificationsContainer />\n {!isLoading ? (\n <div\n className={classNames(styles.contentWrapper, {\n [styles.contentBlocked]: isTableFullLoading,\n })}\n ref={contentRef}\n >\n {viewType === ViewType.mobile && (\n <div\n className={classNames(styles.countContainer, {\n [styles.countContainerMobile]: viewType === ViewType.mobile,\n })}\n >\n <Regular14 className={styles.totalLabel}>Total:</Regular14>\n <Regular14 data-testid={`${PAGE_NAME}_totalWells`} className={styles.countValue}>\n {wells.length}\n </Regular14>\n <Regular14 className={styles.selectedLabel}>Selected:</Regular14>\n <Regular14 data-testid={`${PAGE_NAME}_selected`} className={styles.countValue}>\n {selectedWellsCount}\n </Regular14>\n <Tooltip\n title={`App can’t process more than (${maxOffsetWellNumber - 1}) Offset Wells.`}\n placement=\"right\"\n >\n <Regular12\n data-testid={`${PAGE_NAME}_maxOffsetSize`}\n className={styles.maxOffsetSize}\n >\n /{maxOffsetWellNumber - 1}\n </Regular12>\n </Tooltip>\n </div>\n )}\n\n {viewType === ViewType.normal && (\n <Toolbar\n isViewOnly={isViewOnly}\n isXtoProvider={isXtoProvider}\n viewType={viewType}\n filters={filters}\n setFilters={setFilters}\n isFilterExpanded={isFilterExpanded}\n setIsFilterExpanded={setIsFilterExpanded}\n isMapHidden={isMapHidden}\n setIsMapHidden={setIsMapHidden}\n resyncStatus={resyncStatus}\n setResyncStatus={setResyncStatus}\n />\n )}\n\n {isTopGradientShow && (\n <div className={styles.topGradient} style={{ top: topGradientTop }} />\n )}\n <div\n className={classNames(styles.content, {\n [styles.contentBlocked]: isTableFullLoading,\n [styles.contentMobile]: viewType === ViewType.mobile,\n [styles.contentiOSMobile]: getMobileOperatingSystem() === IOS_DEVICE,\n })}\n onScroll={e => handleScroll(e)}\n >\n {viewType !== ViewType.normal && (\n <Toolbar\n isViewOnly={isViewOnly}\n isXtoProvider={isXtoProvider}\n viewType={viewType}\n filters={filters}\n setFilters={setFilters}\n isFilterExpanded={isFilterExpanded}\n setIsFilterExpanded={setIsFilterExpanded}\n isMapHidden={isMapHidden}\n setIsMapHidden={setIsMapHidden}\n resyncStatus={resyncStatus}\n setResyncStatus={setResyncStatus}\n />\n )}\n {!isMapHidden && open && (\n <WellsMap\n isViewOnly={isViewOnly}\n mapHidden={isMapHidden}\n subjectWell={subjectWell}\n offsetWellIds={selectedWells.map(({ id }) => id)}\n wells={filteredWells}\n radius={filters[FilterType.radius]}\n handleChangeOffsetWell={handleChangeOffsetWell}\n activeWellId={activeWellId}\n viewType={viewType}\n />\n )}\n <Filter\n isHidden={!isFilterExpanded}\n isWDUser={isWDUser}\n filterOptions={filterOptions}\n filters={filters}\n wellSections={wellSections}\n selectedWellSection={selectedWellSection}\n subjectWell={subjectWell}\n onChangeFilters={value => {\n setIsTableLoading(true);\n setTimeout(() => setFilters(value), 0);\n }}\n onChangeBicWells={handleChangeWellSection}\n />\n <OffsetWellsTable\n open={open}\n isTableLoading={isTableFullLoading}\n companyId={assetCompanyId}\n subjectWellId={subjectWellId}\n sortBy={sortBy}\n setSortBy={setSortBy}\n sortDirection={sortDirection}\n setSortDirection={setSortDirection}\n columnsWithDict={columnsWithDict}\n wells={tableWells}\n metricsKeys={metricsKeys}\n setMetricsKeys={handleChangeMetricsKeys}\n handleChangeOffsetWell={handleChangeOffsetWell}\n handleChangeAllOffsetWells={handleChangeAllOffsetWells}\n handleAddRemoveAssets={handleAddRemoveAssets}\n isWellNameExpand={isWellNameExpand}\n setIsWellNameExpand={setIsWellNameExpand}\n isHScrollMoved={isHScrollMoved}\n onHideAdvancedSearch={handleHideAdvancedSearch}\n isViewOnly={isViewOnly}\n isLastWell={sortedWells.length <= tableRowsCount}\n contentRef={contentRef}\n isLimitedOffsetWells={isLimitedOffsetWells}\n maxOffsetWellNumber={maxOffsetWellNumber}\n wellSections={wellSections}\n setActiveWellId={setActiveWellId}\n viewType={viewType}\n isWDUser={isWDUser}\n taScores={taScores}\n />\n </div>\n {isViewOnly && (\n <div className={styles.viewOnlyInfoContainer}>\n <span className={classNames(typography.regular12, typography.colors.t6)}>\n The offset list is being automatically populated by&nbsp;\n </span>\n <span className={classNames(typography.medium12, typography.colors.t6)}>\n {offsetLabel}\n </span>\n </div>\n )}\n </div>\n ) : (\n <LoadingIndicator fullscreen={false} />\n )}\n </Modal>\n );\n};\n\nexport default OffsetWellPickerV4;\n"],"names":["PAGE_NAME","_ref","_wells$length","_classNames","_classNames4","open","isWDUser","defaultSubjectWell","currentUser","offsetSettings","addWellsUsabilityInfo","isViewOnly","onClose","onSave","_ref$maxOffsetSize","maxOffsetSize","offsetSize","DEFAULT_BIC_OFFSET_SIZE","_ref$localMaxOffsetSi","localMaxOffsetSize","DEFAULT_LOCAL_OFFSET_SIZE","syncAutoEnabled","_ref$isManualWellsEna","isManualWellsEnabled","useState","_useState2","_slicedToArray","_useState","activeWellId","setActiveWellId","Math","min","MAX_OFFSET_SIZE","maxOffsetWellNumber","max","filterExpanded","_useState4","_useState3","isFilterExpanded","setIsFilterExpanded","mapHidden","_useState6","_useState5","isMapHidden","setIsMapHidden","assetCompanyId","companyId","company_id","subjectWellId","asset_id","_useState7","filters","_useState8","setFilters","_useState9","wellSection","ALL_SECTION_KEY","_useState10","selectedWellSection","setSelectedWellSection","initLoading","useRef","_useState12","_useState11","selectedWells","setSelectedWells","_useState14","_useState13","subjectWell","setSubjectWell","_useState16","_useState15","isTableLoading","setIsTableLoading","_useState18","_useState17","isWellNameExpand","setIsWellNameExpand","_useState20","_useState19","isAdvancedSearchHidden","setIsAdvancedSearchHidden","contentRef","_useState21","ViewType","none","_useState22","viewType","setViewType","prevViewType","_useState24","_useState23","isTopGradientShow","setIsTopGradientShow","isLimitedOffsetWells","length","topGradientTop","TOP_GRADIENT_MAP","prevSelectedWellIds","_useState26","_useState25","appLoading","setAppLoading","useEffect","_offsetSettings$selec","_prevSelectedWellIds$","_offsetSettings$selec2","showInfoNotification","selectedWellIds","current","every","id","_prevSelectedWellIds$2","includes","handleResize","window","innerWidth","SMALL_SCREEN_WIDTH","isMobileDetected","isNativeDetected","mobile","innerHeight","SMALL_SCREEN_HEIGHT","small","normal","addEventListener","removeEventListener","_useFetchWells","useFetchWells","_useFetchWells2","rawWells","areWellsLoading","useCompanyProvider","companyProvider","_useCompanyProvider","useBicWells","_useBicWells2","_useBicWells","wellSections","setWellSections","bicWells","setBicWells","resyncStatus","setResyncStatus","taScores","useCompanyMetricKey","metricsKeys","_useCompanyMetricKey2","_useCompanyMetricKey","setMetricsKeys","wells","useAdvancedWells","isAllWellsLoaded","_ref2","syncOffsetWells","_asyncToGenerator","_regeneratorRuntime","mark","_callee","isSynced","offsetWellsChanged","_offsetSettings$selec3","bicWellIds","isMatched","wellsByDistance","newOffsetSetting","offsetWells","_offsetWells","wrap","_context","prev","next","wellId","getCoordinatedWells","sent","slice","map","well","offsetWellsLimited","filter","stop","apply","this","arguments","filterOptions","useFilterOptions","find","allSectionNames","item","value","_ref3","label","subjectWellWithSection","_defineProperty","ColumnType","columnsWithDict","useTableColumns","filteredWells","useFilteredWells","data","concat","uniqBy","newSelectedWells","_ref5","useSortedWells","_useSortedWells2","_useSortedWells","sortBy","setSortBy","sortDirection","setSortDirection","sortedWells","handleAddRemoveAssets","useCallback","isAdding","newAssets","assetType","addingWellIds","SEARCH_CATEGORIES","name","reduce","acc","assetId","_wells$find","rigName","rigWellIds","addingWells","_ref6","uniq","_ref7","handleHideAdvancedSearch","handleChangeMetricsKeys","newMetricsKeys","handleChangeOffsetWell","checked","prevWells","handleChangeAllOffsetWells","sortedData","sortArray","updateSelectedWellsBySection","section","sectionWells","_bicWells$section","limitedWells","handleChangeWellSection","selectedWellsCount","useMemo","_ref8","owsWellIds","isXtoProvider","COMPANY_PROVIDERS_FOR_IDAS","offsetLabel","handleCancel","isTableFullLoading","isResetVisible","isEmpty","FilterType","sideTracks","handleReset","isLoading","_useState28","_useState27","isHScrollMoved","setIsHScrollMoved","ROWS_PER_PAGE","_useState30","_useState29","tableRowsCount","setTableRowsCount","_useState32","_useState31","tableWells","setTableWells","RESYNC_STATUS","SUCCEEDED","_jsxs","Modal","title","_jsx","AppHeader","totalCount","selectedCount","isMobile","contentContainerClassName","classNames","styles","offsetWellDialog","contentClassName","contentContainer","smallContainer","contentContainerMobile","actionsClassName","modalActions","actions","jsxs","className","actionsWrapper","children","Tooltip","placement","jsx","Button","onClick","color","startIcon","ReplayIcon","Replay","classes","root","resetButtonMobile","infoIconContainer","_Fragment","typography","regular12","colors","t6","medium12","t1","enterTouchDelay","leaveTouchDelay","LEAVE_TOUCH_DELAY","InfoOutlined","infoIcon","buttonGap","variant","_ref9","NotificationsContainer","LoadingIndicator","fullscreen","contentWrapper","contentBlocked","ref","countContainer","countContainerMobile","Regular14","totalLabel","countValue","selectedLabel","Regular12","Toolbar","topGradient","style","top","content","contentMobile","contentiOSMobile","getMobileOperatingSystem","IOS_DEVICE","onScroll","e","target","scrollLeft","scrollTop","scrollHeight","offsetHeight","round","count","handleScroll","WellsMap","offsetWellIds","_ref10","radius","Filter","isHidden","onChangeFilters","setTimeout","onChangeBicWells","OffsetWellsTable","onHideAdvancedSearch","isLastWell","viewOnlyInfoContainer"],"mappings":"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"}
1
+ {"version":3,"file":"OffsetWellPickerV4.js","sources":["../../../../src/components/OffsetWellPickerV4/OffsetWellPickerV4.js"],"sourcesContent":["import { useState, useEffect, useRef, useCallback, useMemo } from 'react';\nimport classNames from 'classnames';\nimport { isEmpty, uniq, uniqBy, sortBy as sortArray } from 'lodash';\nimport { InfoOutlined, Replay as ReplayIcon } from '@material-ui/icons';\n\nimport {\n useAdvancedWells,\n useBicWells,\n useFilterOptions,\n useCompanyMetricKey,\n useFilteredWells,\n useSortedWells,\n useTableColumns,\n useCompanyProvider,\n} from './effects';\nimport { useFetchWells } from './effects/useFetchWells';\nimport { AppHeader } from './components/AppHeader';\nimport { Toolbar } from './components/Toolbar';\nimport { Filter } from './components/Filter';\nimport { WellsMap } from './components/Map';\nimport { OffsetWellsTable } from './components/OffsetWellsTable';\nimport {\n ALL_SECTION_KEY,\n ColumnType,\n COMPANY_PROVIDERS_FOR_IDAS,\n DEFAULT_BIC_OFFSET_SIZE,\n DEFAULT_LOCAL_OFFSET_SIZE,\n FilterType,\n IOS_DEVICE,\n LEAVE_TOUCH_DELAY,\n MAX_OFFSET_SIZE,\n ROWS_PER_PAGE,\n SMALL_SCREEN_HEIGHT,\n SMALL_SCREEN_WIDTH,\n TOP_GRADIENT_MAP,\n ViewType,\n RESYNC_STATUS,\n} from './constants';\nimport { SEARCH_CATEGORIES } from './components/OffsetWellsTable/AdvancedSearch/constants';\nimport { getCoordinatedWells, getMobileOperatingSystem } from './utils';\n\nimport styles from './OffsetWellPickerV4.module.css';\n\nimport { showInfoNotification } from '~/utils';\nimport { NotificationsContainer } from '~/components/Notifications';\nimport { isMobileDetected, isNativeDetected } from '~/utils/mobileDetect';\nimport { typography } from '~/styles';\nimport { Regular12, Regular14 } from '~/components/Typography';\nimport { Button, Modal, LoadingIndicator, Tooltip } from '~/components';\n\nconst PAGE_NAME = 'OffsetWellPickerV4';\n\n/**\n * @type {React.FC<import('./OffsetWellPickerV4.types').OffsetWellPickerV4Props>}\n */\nconst OffsetWellPickerV4 = ({\n open,\n isWDUser,\n defaultSubjectWell,\n currentUser,\n offsetSettings,\n addWellsUsabilityInfo,\n isViewOnly,\n onClose,\n onSave,\n maxOffsetSize: offsetSize = DEFAULT_BIC_OFFSET_SIZE,\n localMaxOffsetSize = DEFAULT_LOCAL_OFFSET_SIZE,\n syncAutoEnabled,\n isManualWellsEnabled = false,\n}) => {\n const [activeWellId, setActiveWellId] = useState(null);\n const maxOffsetSize = Math.min(offsetSize + 1, localMaxOffsetSize + 1, MAX_OFFSET_SIZE + 1);\n const maxOffsetWellNumber = Math.min(\n Math.max(maxOffsetSize, localMaxOffsetSize + 1),\n MAX_OFFSET_SIZE + 1\n );\n\n const [isFilterExpanded, setIsFilterExpanded] = useState(offsetSettings?.filterExpanded);\n const [isMapHidden, setIsMapHidden] = useState(offsetSettings?.mapHidden);\n const assetCompanyId = +defaultSubjectWell?.companyId || +currentUser?.company_id;\n const subjectWellId = defaultSubjectWell?.asset_id;\n const [filters, setFilters] = useState(offsetSettings?.filters || {});\n const [selectedWellSection, setSelectedWellSection] = useState(\n offsetSettings?.wellSection || ALL_SECTION_KEY\n );\n const initLoading = useRef(true);\n const [selectedWells, setSelectedWells] = useState([]);\n const [subjectWell, setSubjectWell] = useState(null);\n const [isTableLoading, setIsTableLoading] = useState(true);\n const [isWellNameExpand, setIsWellNameExpand] = useState(false);\n const [isAdvancedSearchHidden, setIsAdvancedSearchHidden] = useState(false);\n const contentRef = useRef();\n const offsetWellsContainerRef = useRef();\n /** @type {ReturnType<typeof useState<string>>} */\n const [viewType, setViewType] = useState(ViewType.none);\n\n /** @type {ReturnType<typeof useRef<string>>} */\n const prevViewType = useRef();\n const [isTopGradientShow, setIsTopGradientShow] = useState(false);\n const isLimitedOffsetWells = maxOffsetWellNumber <= selectedWells?.length;\n const topGradientTop = TOP_GRADIENT_MAP[viewType];\n\n /** @type {ReturnType<typeof useRef<number[]>>} */\n const prevSelectedWellIds = useRef();\n const [appLoading, setAppLoading] = useState(true);\n\n useEffect(() => {\n if (open && isLimitedOffsetWells) {\n showInfoNotification(\n `App can’t process more than (${maxOffsetWellNumber - 1}) Offset Wells.`\n );\n }\n // NOTE: Refresh when the offset well changes externally\n if (!open) {\n const isNotChanged =\n offsetSettings?.selectedWellIds?.length === prevSelectedWellIds.current?.length &&\n offsetSettings?.selectedWellIds?.every(id => prevSelectedWellIds.current?.includes(id));\n if (!isNotChanged) {\n initLoading.current = true;\n }\n prevSelectedWellIds.current = offsetSettings?.selectedWellIds;\n }\n }, [isLimitedOffsetWells, open, offsetSettings]);\n\n useEffect(() => {\n function handleResize() {\n if (window.innerWidth <= SMALL_SCREEN_WIDTH || isMobileDetected || isNativeDetected) {\n setViewType(ViewType.mobile);\n } else if (window.innerHeight <= SMALL_SCREEN_HEIGHT) {\n setViewType(ViewType.small);\n } else {\n setViewType(ViewType.normal);\n }\n }\n handleResize();\n window.addEventListener('resize', handleResize);\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, [open]);\n\n useEffect(() => {\n if (prevViewType.current && viewType === prevViewType.current) return;\n prevViewType.current = viewType;\n if (viewType === ViewType.small || viewType === ViewType.mobile) {\n setIsMapHidden(true);\n setIsFilterExpanded(false);\n } else {\n setIsFilterExpanded(!isViewOnly && offsetSettings?.filterExpanded);\n setIsMapHidden(!isViewOnly && offsetSettings?.mapHidden);\n }\n setFilters(offsetSettings?.filters || {});\n setSelectedWellSection(offsetSettings?.wellSection || ALL_SECTION_KEY);\n }, [offsetSettings, isViewOnly, viewType]);\n\n // NOTE: Fetch all wells\n const [rawWells, areWellsLoading] = useFetchWells(assetCompanyId, addWellsUsabilityInfo);\n const [companyProvider] = useCompanyProvider(assetCompanyId);\n const [\n wellSections,\n setWellSections,\n bicWells,\n setBicWells,\n resyncStatus,\n setResyncStatus,\n taScores,\n ] = useBicWells(isWDUser, currentUser, subjectWellId, rawWells, isManualWellsEnabled);\n\n useEffect(() => {\n setAppLoading(true);\n setWellSections(null);\n setBicWells(null);\n }, [subjectWellId]);\n\n const [metricsKeys, setMetricsKeys] = useCompanyMetricKey(\n assetCompanyId,\n offsetSettings?.metricsKeys\n );\n\n // NOTE: Calculate wells with coordinates, metrics and well section name\n const wells = useAdvancedWells(\n assetCompanyId,\n rawWells,\n wellSections,\n bicWells,\n subjectWellId,\n metricsKeys,\n open\n );\n\n const isAllWellsLoaded = !areWellsLoading && wells?.length === rawWells?.length;\n\n useEffect(() => {\n if (!isAllWellsLoaded) return;\n const syncOffsetWells = async () => {\n const isSynced = typeof offsetSettings?.isSynced === 'undefined' || offsetSettings?.isSynced;\n let offsetWellsChanged = true;\n if (isSynced) {\n const bicWellIds = bicWells[ALL_SECTION_KEY] || [];\n const isMatched = (offsetSettings?.selectedWellIds || []).every(wellId =>\n bicWellIds.includes(wellId)\n );\n // if well hub or offset selection app be changed\n if (bicWellIds.length !== offsetSettings?.selectedWellIds?.length || !isMatched) {\n const wellsByDistance = await getCoordinatedWells(bicWellIds, subjectWellId);\n let selectedWellIds = wellsByDistance.slice(0, maxOffsetSize + 1).map(well => well.id);\n selectedWellIds = wellsByDistance.slice(0, localMaxOffsetSize + 1).map(well => well.id);\n const newOffsetSetting = {\n ...offsetSettings,\n subjectWellId,\n selectedWellIds,\n offsetWellsLimited: maxOffsetWellNumber <= selectedWellIds.length,\n };\n const offsetWells = wellsByDistance.filter(well => selectedWellIds.includes(well.id));\n onSave(newOffsetSetting, offsetWells);\n } else {\n offsetWellsChanged = false;\n }\n } else {\n offsetWellsChanged = false;\n }\n\n if (!offsetWellsChanged) {\n const offsetWells = await getCoordinatedWells(\n offsetSettings?.selectedWellIds || [],\n subjectWellId\n );\n onSave(offsetSettings, offsetWells);\n }\n };\n\n if (syncAutoEnabled && appLoading && offsetSettings && bicWells) {\n syncOffsetWells();\n setAppLoading(false);\n }\n }, [offsetSettings, bicWells, subjectWellId, maxOffsetWellNumber, syncAutoEnabled]);\n\n const filterOptions = useFilterOptions(wells);\n\n // NOTE: Subject well\n useEffect(() => {\n if (wells && wellSections) {\n const defaultSubjectWell = wells.find(well => well.id === subjectWellId);\n if (defaultSubjectWell) {\n const allSectionNames = wellSections\n .filter(item => item.value !== ALL_SECTION_KEY)\n .map(({ label }) => label);\n const subjectWellWithSection = {\n ...defaultSubjectWell,\n ...(allSectionNames.length > 0 && { [ColumnType.wellSection]: allSectionNames }),\n };\n setSubjectWell(subjectWellWithSection);\n } else {\n setSubjectWell(null);\n }\n }\n }, [wellSections, wells]);\n\n // NOTE: Table columns with metrics\n const columnsWithDict = useTableColumns(metricsKeys);\n\n // NOTE: Filter wells\n const filteredWells = useFilteredWells(wells, filters);\n\n useEffect(() => {\n if (!filteredWells || !isAllWellsLoaded) return;\n\n if (initLoading.current) {\n let data = wells.filter(well => (offsetSettings?.selectedWellIds || []).includes(well.id));\n if (subjectWell) data = data.concat(subjectWell);\n setSelectedWells(uniqBy(data, 'id'));\n initLoading.current = false;\n } else {\n setSelectedWells(prev => {\n let newSelectedWells = (filteredWells || []).filter(\n well => !!prev.find(({ id }) => well.id === id)\n );\n if (subjectWell) newSelectedWells = newSelectedWells.concat(subjectWell);\n return uniqBy(newSelectedWells, 'id');\n });\n }\n }, [wells, filteredWells, offsetSettings?.selectedWellIds, isAllWellsLoaded]);\n\n // NOTE: Sort wells\n const [sortBy, setSortBy, sortDirection, setSortDirection, sortedWells] = useSortedWells(\n subjectWell,\n filteredWells,\n selectedWells,\n setIsTableLoading\n );\n\n // NOTE: Add advanced wells\n const handleAddRemoveAssets = useCallback(\n (isAdding, newAssets, assetType) => {\n let addingWellIds;\n if (assetType === SEARCH_CATEGORIES.well.name) {\n addingWellIds = newAssets;\n } else {\n addingWellIds = newAssets.reduce((acc, assetId) => {\n const rigName = wells.find(well => well.id === assetId)?.rigName;\n const rigWellIds = wells.filter(well => well.rigName === rigName).map(well => well.id);\n return acc.concat(rigWellIds);\n }, []);\n }\n let addingWells = wells.filter(({ id }) => addingWellIds.includes(id));\n if (isAdding) {\n addingWells = addingWells.slice(\n 0,\n Math.min(addingWells.length, maxOffsetWellNumber - selectedWells.length)\n );\n setSelectedWells(selectedWells => uniqBy(selectedWells.concat(addingWells), 'id'));\n } else {\n setSelectedWells(selectedWells =>\n uniq(selectedWells.filter(({ id }) => !addingWells.find(well => well.id === id)))\n );\n }\n },\n [wells, selectedWells]\n );\n\n const handleHideAdvancedSearch = useCallback(() => {\n setIsAdvancedSearchHidden(true);\n }, []);\n\n // NOTE: Change metrics keys\n const handleChangeMetricsKeys = useCallback(newMetricsKeys => {\n setMetricsKeys(newMetricsKeys);\n }, []);\n\n // NOTE: Check and Uncheck one offset well\n const handleChangeOffsetWell = useCallback((well, checked) => {\n if (checked) {\n setSelectedWells(prevWells => [...prevWells, well]);\n } else {\n setSelectedWells(prevWells => prevWells.filter(item => item.id !== well.id));\n }\n }, []);\n\n // NOTE: Select and Unselect All wells\n const handleChangeAllOffsetWells = useCallback(\n checked => {\n if (checked) {\n const data = subjectWell ? filteredWells.concat(subjectWell) : filteredWells;\n const sortedData = sortArray(uniqBy(data, 'id'), 'distance');\n setSelectedWells(sortedData.slice(0, maxOffsetWellNumber));\n } else {\n setSelectedWells(subjectWell ? [subjectWell] : []);\n }\n },\n [filteredWells, subjectWell, maxOffsetWellNumber]\n );\n\n // NOTE: Well Section change filter\n const updateSelectedWellsBySection = section => {\n if (bicWells) {\n const sectionWells = wells?.filter(well => bicWells[section]?.includes(well.id)) || [];\n const limitedWells = sortArray(sectionWells, 'distance');\n setSelectedWells(limitedWells.slice(0, maxOffsetSize));\n } else {\n setSelectedWells(subjectWell ? [subjectWell] : []);\n }\n };\n\n const handleChangeWellSection = useCallback(\n section => {\n setSelectedWellSection(section);\n updateSelectedWellsBySection(section);\n },\n [updateSelectedWellsBySection]\n );\n\n // NOTE: Get Selected wells count\n const selectedWellsCount = useMemo(() => {\n if (selectedWells.find(well => well.id === subjectWellId)) {\n return selectedWells.length - 1;\n }\n return selectedWells.length;\n }, [selectedWells, subjectWellId]);\n\n // NOTE: Save offset setting\n const isSynced = useMemo(() => {\n if (!bicWells) return false;\n const selectedWellIds = selectedWells.map(({ id }) => id);\n let synced;\n const owsWellIds = bicWells[selectedWellSection] || [];\n const owsWellIdsLength = Math.min(owsWellIds.length, maxOffsetSize);\n\n if (owsWellIdsLength !== selectedWellIds.length) {\n synced = false;\n } else {\n synced = selectedWellIds.every(id => owsWellIds.includes(id));\n }\n return synced;\n }, [bicWells, selectedWells, selectedWellSection, maxOffsetSize]);\n\n const isXtoProvider = useMemo(() => {\n return companyProvider ? COMPANY_PROVIDERS_FOR_IDAS.includes(companyProvider) : false;\n }, [companyProvider]);\n\n const offsetLabel = useMemo(() => {\n if (isXtoProvider) {\n return 'IDAS generated offsets.';\n }\n\n return isWDUser ? 'Offset Selection App.' : 'WellHub.';\n }, [isXtoProvider, isWDUser]);\n\n const handleSave = () => {\n onClose();\n\n const newOffsetSetting = {\n ...offsetSettings,\n companyId: assetCompanyId,\n subjectWellId,\n selectedWellIds: selectedWells.map(({ id }) => id),\n filters,\n metricsKeys,\n wellSection: selectedWellSection,\n isSynced,\n mapHidden: isMapHidden,\n filterExpanded: isFilterExpanded,\n offsetWellsLimited: isLimitedOffsetWells,\n };\n onSave(newOffsetSetting, selectedWells);\n };\n\n const handleCancel = () => {\n let data = (wells || []).filter(well =>\n (offsetSettings?.selectedWellIds || []).includes(well.id)\n );\n if (subjectWell) data = data.concat(subjectWell);\n setSelectedWells(uniqBy(data, 'id'));\n\n const newOffsetSetting = {\n ...offsetSettings,\n mapHidden: isMapHidden,\n filterExpanded: isFilterExpanded,\n };\n onSave(newOffsetSetting);\n setFilters(offsetSettings?.filters || {});\n setSelectedWellSection(offsetSettings?.wellSection || ALL_SECTION_KEY);\n onClose();\n };\n\n const isTableFullLoading = isTableLoading || !isAllWellsLoaded;\n\n // NOTE: Reset processing\n const isResetVisible = useMemo(() => {\n if (isTableFullLoading) return false;\n if (!isSynced) return true;\n if (!isEmpty(filters) && filters[FilterType.sideTracks]) return true;\n if (selectedWellSection !== ALL_SECTION_KEY) return true;\n return false;\n }, [isSynced, filters, selectedWellSection, isTableFullLoading]);\n\n const handleReset = () => {\n setFilters({});\n setSelectedWellSection(ALL_SECTION_KEY);\n updateSelectedWellsBySection(ALL_SECTION_KEY);\n };\n\n const isLoading = !wells || !wellSections || !sortedWells || viewType === ViewType.none;\n\n // NOTE: Well Name shadow\n const [isHScrollMoved, setIsHScrollMoved] = useState(false);\n const [tableRowsCount, setTableRowsCount] = useState(ROWS_PER_PAGE);\n const [tableWells, setTableWells] = useState([]);\n\n useEffect(() => {\n if (!sortedWells) return;\n\n const wells = sortedWells.slice(0, tableRowsCount);\n setTableWells(wells);\n }, [sortedWells, tableRowsCount, subjectWell]);\n\n useEffect(() => {\n if (resyncStatus === RESYNC_STATUS.SUCCEEDED) {\n handleReset();\n }\n }, [bicWells]);\n\n const handleScroll = e => {\n if (!e.target) return;\n\n if (isAdvancedSearchHidden) {\n e.target.scrollLeft = 0;\n setIsAdvancedSearchHidden(false);\n }\n\n // Check if H-Scroll is visible\n if (e.target.scrollLeft <= 5 && isHScrollMoved) {\n setIsHScrollMoved(false);\n }\n if (e.target.scrollLeft > 5 && !isHScrollMoved) {\n setIsHScrollMoved(true);\n }\n\n if (e.target.scrollTop <= 5 && isTopGradientShow) {\n setIsTopGradientShow(false);\n }\n if (e.target.scrollTop > 5 && !isTopGradientShow) {\n setIsTopGradientShow(true);\n }\n\n // Check if scroll has reached top or bottom\n if (e.target.scrollHeight === e.target.offsetHeight) return;\n\n const currentScrollBottom = Math.round(e.target.scrollTop + e.target.offsetHeight + 2);\n\n if (currentScrollBottom >= e.target.scrollHeight && tableRowsCount < sortedWells.length) {\n setTableRowsCount(count => count + ROWS_PER_PAGE);\n }\n };\n\n const tooltipContainer = () => {\n return (\n <div>\n <span className={classNames(typography.regular12, typography.colors.t1)}>\n The offset list is being automatically populated by&nbsp;\n </span>\n <span className={classNames(typography.medium12, typography.colors.t1)}>{offsetLabel}</span>\n </div>\n );\n };\n\n return (\n <Modal\n open={open}\n onClose={handleCancel}\n title={\n <AppHeader\n isWDUser={isWDUser}\n viewType={viewType}\n totalCount={wells?.length ?? 0}\n selectedCount={selectedWellsCount}\n isViewOnly={isViewOnly}\n maxOffsetWellNumber={maxOffsetWellNumber}\n />\n }\n isMobile={viewType === ViewType.mobile}\n contentContainerClassName={classNames(styles.offsetWellDialog)}\n contentClassName={classNames(styles.contentContainer, {\n [styles.smallContainer]: viewType === ViewType.small,\n [styles.contentContainerMobile]: viewType === ViewType.mobile,\n })}\n actionsClassName={styles.modalActions}\n actions={\n !isViewOnly && (\n <div className={styles.actionsWrapper}>\n {!isLoading && isResetVisible ? (\n <Tooltip\n placement=\"bottom-start\"\n title={`Reset to Synced Offsets in ${isWDUser ? 'Offset App' : 'Wellhub'}`}\n >\n <div>\n <Button\n data-testid={`${PAGE_NAME}_reset`}\n onClick={handleReset}\n color=\"primary\"\n startIcon={viewType !== ViewType.mobile && <ReplayIcon />}\n classes={viewType === ViewType.mobile && { root: styles.resetButtonMobile }}\n >\n {viewType !== ViewType.mobile ? 'Reset' : <ReplayIcon />}\n </Button>\n </div>\n </Tooltip>\n ) : (\n <div className={viewType === ViewType.mobile && styles.infoIconContainer}>\n {viewType !== ViewType.mobile ? (\n <>\n <span className={classNames(typography.regular12, typography.colors.t6)}>\n The offset list is being automatically populated by&nbsp;\n </span>\n <span className={classNames(typography.medium12, typography.colors.t6)}>\n {offsetLabel}\n </span>\n </>\n ) : (\n <Tooltip\n title={tooltipContainer()}\n enterTouchDelay={0}\n leaveTouchDelay={LEAVE_TOUCH_DELAY}\n >\n <InfoOutlined className={styles.infoIcon} />\n </Tooltip>\n )}\n </div>\n )}\n <div className={styles.buttonGap}>\n <Button data-testid={`${PAGE_NAME}_cancel`} onClick={handleCancel} color=\"primary\">\n Cancel\n </Button>\n <Button\n data-testid={`${PAGE_NAME}_selectedWells`}\n variant=\"contained\"\n color=\"primary\"\n onClick={handleSave}\n >\n Select ({selectedWellsCount})\n </Button>\n </div>\n </div>\n )\n }\n >\n <NotificationsContainer />\n {!isLoading ? (\n <div\n className={classNames(styles.contentWrapper, {\n [styles.contentBlocked]: isTableFullLoading,\n })}\n ref={contentRef}\n >\n {viewType === ViewType.mobile && (\n <div\n className={classNames(styles.countContainer, {\n [styles.countContainerMobile]: viewType === ViewType.mobile,\n })}\n >\n <Regular14 className={styles.totalLabel}>Total:</Regular14>\n <Regular14 data-testid={`${PAGE_NAME}_totalWells`} className={styles.countValue}>\n {wells.length}\n </Regular14>\n <Regular14 className={styles.selectedLabel}>Selected:</Regular14>\n <Regular14 data-testid={`${PAGE_NAME}_selected`} className={styles.countValue}>\n {selectedWellsCount}\n </Regular14>\n <Tooltip\n title={`App can’t process more than (${maxOffsetWellNumber - 1}) Offset Wells.`}\n placement=\"right\"\n >\n <Regular12\n data-testid={`${PAGE_NAME}_maxOffsetSize`}\n className={styles.maxOffsetSize}\n >\n /{maxOffsetWellNumber - 1}\n </Regular12>\n </Tooltip>\n </div>\n )}\n\n {viewType === ViewType.normal && (\n <Toolbar\n isViewOnly={isViewOnly}\n isXtoProvider={isXtoProvider}\n viewType={viewType}\n filters={filters}\n setFilters={setFilters}\n isFilterExpanded={isFilterExpanded}\n setIsFilterExpanded={setIsFilterExpanded}\n isMapHidden={isMapHidden}\n setIsMapHidden={setIsMapHidden}\n resyncStatus={resyncStatus}\n setResyncStatus={setResyncStatus}\n />\n )}\n\n {isTopGradientShow && (\n <div className={styles.topGradient} style={{ top: topGradientTop }} />\n )}\n <div\n className={classNames(styles.content, {\n [styles.contentBlocked]: isTableFullLoading,\n [styles.contentMobile]: viewType === ViewType.mobile,\n [styles.contentiOSMobile]: getMobileOperatingSystem() === IOS_DEVICE,\n })}\n ref={offsetWellsContainerRef}\n onScroll={e => handleScroll(e)}\n >\n {viewType !== ViewType.normal && (\n <Toolbar\n isViewOnly={isViewOnly}\n isXtoProvider={isXtoProvider}\n viewType={viewType}\n filters={filters}\n setFilters={setFilters}\n isFilterExpanded={isFilterExpanded}\n setIsFilterExpanded={setIsFilterExpanded}\n isMapHidden={isMapHidden}\n setIsMapHidden={setIsMapHidden}\n resyncStatus={resyncStatus}\n setResyncStatus={setResyncStatus}\n />\n )}\n {!isMapHidden && open && (\n <WellsMap\n isViewOnly={isViewOnly}\n mapHidden={isMapHidden}\n subjectWell={subjectWell}\n offsetWellIds={selectedWells.map(({ id }) => id)}\n wells={filteredWells}\n radius={filters[FilterType.radius]}\n handleChangeOffsetWell={handleChangeOffsetWell}\n activeWellId={activeWellId}\n viewType={viewType}\n />\n )}\n <Filter\n isHidden={!isFilterExpanded}\n isWDUser={isWDUser}\n filterOptions={filterOptions}\n filters={filters}\n wellSections={wellSections}\n selectedWellSection={selectedWellSection}\n subjectWell={subjectWell}\n onChangeFilters={value => {\n setIsTableLoading(true);\n setTimeout(() => setFilters(value), 0);\n }}\n onChangeBicWells={handleChangeWellSection}\n />\n <OffsetWellsTable\n open={open}\n isTableLoading={isTableFullLoading}\n companyId={assetCompanyId}\n subjectWellId={subjectWellId}\n sortBy={sortBy}\n setSortBy={setSortBy}\n sortDirection={sortDirection}\n setSortDirection={setSortDirection}\n columnsWithDict={columnsWithDict}\n wells={tableWells}\n metricsKeys={metricsKeys}\n setMetricsKeys={handleChangeMetricsKeys}\n handleChangeOffsetWell={handleChangeOffsetWell}\n handleChangeAllOffsetWells={handleChangeAllOffsetWells}\n handleAddRemoveAssets={handleAddRemoveAssets}\n isWellNameExpand={isWellNameExpand}\n setIsWellNameExpand={setIsWellNameExpand}\n isHScrollMoved={isHScrollMoved}\n onHideAdvancedSearch={handleHideAdvancedSearch}\n isViewOnly={isViewOnly}\n isLastWell={sortedWells.length <= tableRowsCount}\n contentRef={contentRef}\n offsetWellsContainerRef={offsetWellsContainerRef}\n isLimitedOffsetWells={isLimitedOffsetWells}\n maxOffsetWellNumber={maxOffsetWellNumber}\n wellSections={wellSections}\n setActiveWellId={setActiveWellId}\n viewType={viewType}\n isWDUser={isWDUser}\n taScores={taScores}\n />\n </div>\n {isViewOnly && (\n <div className={styles.viewOnlyInfoContainer}>\n <span className={classNames(typography.regular12, typography.colors.t6)}>\n The offset list is being automatically populated by&nbsp;\n </span>\n <span className={classNames(typography.medium12, typography.colors.t6)}>\n {offsetLabel}\n </span>\n </div>\n )}\n </div>\n ) : (\n <LoadingIndicator fullscreen={false} />\n )}\n </Modal>\n );\n};\n\nexport default OffsetWellPickerV4;\n"],"names":["PAGE_NAME","_ref","_wells$length","_classNames","_classNames4","open","isWDUser","defaultSubjectWell","currentUser","offsetSettings","addWellsUsabilityInfo","isViewOnly","onClose","onSave","_ref$maxOffsetSize","maxOffsetSize","offsetSize","DEFAULT_BIC_OFFSET_SIZE","_ref$localMaxOffsetSi","localMaxOffsetSize","DEFAULT_LOCAL_OFFSET_SIZE","syncAutoEnabled","_ref$isManualWellsEna","isManualWellsEnabled","useState","_useState2","_slicedToArray","_useState","activeWellId","setActiveWellId","Math","min","MAX_OFFSET_SIZE","maxOffsetWellNumber","max","filterExpanded","_useState4","_useState3","isFilterExpanded","setIsFilterExpanded","mapHidden","_useState6","_useState5","isMapHidden","setIsMapHidden","assetCompanyId","companyId","company_id","subjectWellId","asset_id","_useState7","filters","_useState8","setFilters","_useState9","wellSection","ALL_SECTION_KEY","_useState10","selectedWellSection","setSelectedWellSection","initLoading","useRef","_useState12","_useState11","selectedWells","setSelectedWells","_useState14","_useState13","subjectWell","setSubjectWell","_useState16","_useState15","isTableLoading","setIsTableLoading","_useState18","_useState17","isWellNameExpand","setIsWellNameExpand","_useState20","_useState19","isAdvancedSearchHidden","setIsAdvancedSearchHidden","contentRef","offsetWellsContainerRef","_useState21","ViewType","none","_useState22","viewType","setViewType","prevViewType","_useState24","_useState23","isTopGradientShow","setIsTopGradientShow","isLimitedOffsetWells","length","topGradientTop","TOP_GRADIENT_MAP","prevSelectedWellIds","_useState26","_useState25","appLoading","setAppLoading","useEffect","_offsetSettings$selec","_prevSelectedWellIds$","_offsetSettings$selec2","showInfoNotification","selectedWellIds","current","every","id","_prevSelectedWellIds$2","includes","handleResize","window","innerWidth","SMALL_SCREEN_WIDTH","isMobileDetected","isNativeDetected","mobile","innerHeight","SMALL_SCREEN_HEIGHT","small","normal","addEventListener","removeEventListener","_useFetchWells","useFetchWells","_useFetchWells2","rawWells","areWellsLoading","useCompanyProvider","companyProvider","_useCompanyProvider","useBicWells","_useBicWells2","_useBicWells","wellSections","setWellSections","bicWells","setBicWells","resyncStatus","setResyncStatus","taScores","useCompanyMetricKey","metricsKeys","_useCompanyMetricKey2","_useCompanyMetricKey","setMetricsKeys","wells","useAdvancedWells","isAllWellsLoaded","_ref2","syncOffsetWells","_asyncToGenerator","_regeneratorRuntime","mark","_callee","isSynced","offsetWellsChanged","_offsetSettings$selec3","bicWellIds","isMatched","wellsByDistance","newOffsetSetting","offsetWells","_offsetWells","wrap","_context","prev","next","wellId","getCoordinatedWells","sent","slice","map","well","offsetWellsLimited","filter","stop","apply","this","arguments","filterOptions","useFilterOptions","find","allSectionNames","item","value","_ref3","label","subjectWellWithSection","_defineProperty","ColumnType","columnsWithDict","useTableColumns","filteredWells","useFilteredWells","data","concat","uniqBy","newSelectedWells","_ref5","useSortedWells","_useSortedWells2","_useSortedWells","sortBy","setSortBy","sortDirection","setSortDirection","sortedWells","handleAddRemoveAssets","useCallback","isAdding","newAssets","assetType","addingWellIds","SEARCH_CATEGORIES","name","reduce","acc","assetId","_wells$find","rigName","rigWellIds","addingWells","_ref6","uniq","_ref7","handleHideAdvancedSearch","handleChangeMetricsKeys","newMetricsKeys","handleChangeOffsetWell","checked","prevWells","handleChangeAllOffsetWells","sortedData","sortArray","updateSelectedWellsBySection","section","sectionWells","_bicWells$section","limitedWells","handleChangeWellSection","selectedWellsCount","useMemo","_ref8","owsWellIds","isXtoProvider","COMPANY_PROVIDERS_FOR_IDAS","offsetLabel","handleCancel","isTableFullLoading","isResetVisible","isEmpty","FilterType","sideTracks","handleReset","isLoading","_useState28","_useState27","isHScrollMoved","setIsHScrollMoved","ROWS_PER_PAGE","_useState30","_useState29","tableRowsCount","setTableRowsCount","_useState32","_useState31","tableWells","setTableWells","RESYNC_STATUS","SUCCEEDED","_jsxs","Modal","title","_jsx","AppHeader","totalCount","selectedCount","isMobile","contentContainerClassName","classNames","styles","offsetWellDialog","contentClassName","contentContainer","smallContainer","contentContainerMobile","actionsClassName","modalActions","actions","jsxs","className","actionsWrapper","children","Tooltip","placement","jsx","Button","onClick","color","startIcon","ReplayIcon","Replay","classes","root","resetButtonMobile","infoIconContainer","_Fragment","typography","regular12","colors","t6","medium12","t1","enterTouchDelay","leaveTouchDelay","LEAVE_TOUCH_DELAY","InfoOutlined","infoIcon","buttonGap","variant","_ref9","NotificationsContainer","LoadingIndicator","fullscreen","contentWrapper","contentBlocked","ref","countContainer","countContainerMobile","Regular14","totalLabel","countValue","selectedLabel","Regular12","Toolbar","topGradient","style","top","content","contentMobile","contentiOSMobile","getMobileOperatingSystem","IOS_DEVICE","onScroll","e","target","scrollLeft","scrollTop","scrollHeight","offsetHeight","round","count","handleScroll","WellsMap","offsetWellIds","_ref10","radius","Filter","isHidden","onChangeFilters","setTimeout","onChangeBicWells","OffsetWellsTable","onHideAdvancedSearch","isLastWell","viewOnlyInfoContainer"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("@babel/runtime/helpers/slicedToArray"),r=require("@babel/runtime/helpers/defineProperty"),s=require("react"),t=require("classnames"),i=require("prop-types"),n=require("lodash"),o=require("@material-ui/core"),u=require("../../constants.js"),a=require("../../utils/unitSystem.js"),c=require("./AdvancedSearch/AdvancedSearch.js"),l=require("./OffsetWellsTableHead.js"),p=require("./OffsetWellsTableRow.js"),d=require("./OffsetWellsTable.module.css.js"),q=require("react/jsx-runtime");require("../../../DevCenter/DevCenterAppContainer/components/IsInsideIsolatedDcAppProvider/IsInsideIsolatedDcAppProvider.js"),require("../../../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/DcFullscreenElemsCoordinatorProvider.js"),require("../../../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/IsInsideDcFullscreenElemProvider.js"),require("@icon-park/react/es/all"),require("../../../../icons/IconParkProvider.js"),require("../../../../icons/customIcons/icons/AddMessage.js"),require("../../../../icons/customIcons/icons/Attention.js"),require("../../../../icons/customIcons/icons/Collapse.js"),require("../../../../icons/customIcons/icons/Dashboard.js"),require("../../../../icons/customIcons/icons/Expand.js"),require("../../../../icons/customIcons/icons/FolderClosed.js"),require("../../../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../../../icons/customIcons/icons/FolderOpened.js"),require("../../../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../../../icons/customIcons/icons/LessOrEqual.js"),require("../../../../icons/customIcons/icons/Search.js"),require("../../../../icons/customIcons/icons/Wellhub.js"),require("../../../../icons/customIcons/icons/MultiRuler.js"),require("../../../../icons/customIcons/icons/Checkbox.js"),require("../../../../icons/customIcons/icons/CheckboxChecked.js"),require("../../../../icons/customIcons/icons/CheckboxIndeterminate.js"),require("../../../../icons/customIcons/icons/Radio.js"),require("../../../../icons/customIcons/icons/RadioChecked.js"),require("../../../../icons/customIcons/icons/SimulFrac.js"),require("../../../../icons/customIcons/icons/ZipperFrac.js"),require("../../../../icons/customIcons/icons/CautionFilled.js"),require("../../../../icons/customIcons/icons/MoreApp.js"),require("../../../../icons/customIcons/icons/Pad.js"),require("../../../../icons/customIcons/icons/DrilloutUnit.js"),require("../../../../icons/customIcons/icons/FracFleet.js"),require("../../../../icons/customIcons/icons/Program.js"),require("../../../../icons/customIcons/icons/Rig.js"),require("../../../../icons/customIcons/icons/Well.js"),require("../../../../icons/customIcons/icons/Gap.js"),require("../../../../icons/customIcons/icons/Pin.js"),require("../../../../icons/customIcons/icons/CloseOneFilled.js"),require("../../../../icons/customIcons/icons/AttentionFilled.js"),require("../../../../icons/customIcons/icons/CheckOneFilled.js"),require("../../../../icons/customIcons/icons/Archive.js"),require("../../../../icons/customIcons/icons/ArchiveCancel.js"),require("../../../../icons/customIcons/icons/Unarchive.js"),require("../../../../icons/customIcons/icons/Archived.js"),require("../../../../utils/mobileDetect.js"),require("../../../IconButton/index.js"),require("../../../../constants/goals.js"),require("../../../../constants/segment.js"),require("../../../../constants/alerts.js"),require("../../../../constants/apps.js"),require("../../../../constants/drillstring.js"),require("../../../../constants/completion.js"),require("../../../../constants/appPackages.js"),require("../../../../constants/notifications.js"),require("../../../../constants/feed.js"),require("../../../../constants/bha.js"),require("../../../../constants/corvaCompanyId.js"),require("../../../GradientManager/configuration/constants.js"),require("../../../Modal/CorvaModal.css.js"),require("uuid"),require("../../../IconMenu/index.js"),require("../../../StyledMenuItem/index.js"),require("../../../AppIcon/AppIcon.js"),require("../../../DevCenter/AppHeader/AppHeader.js"),require("../../../DevCenter/AppSideBar/AppSideBar.js"),require("../../../DevCenter/AppsDataProvider/AppsDataProvider.js"),require("@material-ui/icons"),require("../../../DevCenter/AppContext.js"),require("../../../DevCenter/DevCenterRouterContext/DevCenterRouterContext.js"),require("../../../DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("react-router"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../../../utils/index.js"),require("../../../DevCenter/DevCenterAppContainer/components/AppActions/AppActions.css.js"),require("../../../DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js"),require("../../../DevCenter/DevCenterAppContainer/components/AppSettingsDialog/components/RemoveAppButton.js"),require("../../../DevCenter/DevCenterAppContainer/components/AppSettingsDialog/components/SettingsAccordion.js"),require("../../../DevCenter/DevCenterAppContainer/components/AnnotationsButton/AnnotationsButton.js"),require("../../../../componentsV2/Text/Text.js"),require("../../../../componentsV2/Grid/Grid.js"),require("../../../../componentsV2/Grid/Grid.scss.js"),require("../../../../componentsV2/Header/Header.scss.js"),require("../../../../componentsV2/Button/Button.js"),require("../../../../componentsV2/ButtonIcon/ButtonIcon.js"),require("../../../../componentsV2/Tooltip/Tooltip.scss.js"),require("../../../../componentsV2/Paper/Paper.js"),require("../../../../componentsV2/Popover/Popover.scss.js"),require("../../../../componentsV2/Radio/Radio.js"),require("../../../../componentsV2/RadioAndCheckboxGroup/RadioAndCheckboxGroup.scss.js"),require("../../../../componentsV2/Checkbox/Checkbox.js"),require("../../../../componentsV2/TextInput/TextInput.js"),require("../../../../componentsV2/TextEndTruncated/TextEndTruncated.scss.js"),require("../../../../componentsV2/TextMiddleTruncated/TextMiddleTruncated.constants.js"),require("../../../../componentsV2/TextMiddleTruncated/TextMiddleTruncated.scss.js"),require("../../../../componentsV2/TextLink/TextLink.js"),require("../../../../componentsV2/Chip/Chip.js"),require("../../../../componentsV2/ChipAlert/ChipAlert.js"),require("../../../../componentsV2/ChipIndicator/ChipIndicator.js"),require("../../../../componentsV2/Avatar/Avatar.js"),require("../../../../componentsV2/Avatar/constants.js"),require("../../../../componentsV2/AvatarGroup/AvatarGroup.scss.js"),require("@material-ui/lab"),require("../../../../componentsV2/ToggleButtons/ToggleButtons.scss.js"),require("../../../../componentsV2/ModalWindow/ModalWindow.scss.js"),require("../../../../componentsV2/Modal/Modal.scss.js"),require("../../../../componentsV2/Menu/Menu.js"),require("../../../../componentsV2/Counter/Counter.js"),require("../../../../componentsV2/BadgeBase/BadgeBase.scss.js"),require("../../../../componentsV2/BadgeDot/BadgeDot.scss.js"),require("../../../../componentsV2/LoaderLinear/LoaderLinear.scss.js"),require("../../../../componentsV2/LoaderLogo/LoaderLogo.constants.js"),require("../../../../componentsV2/LoaderLogo/LoaderLogo.scss.js"),require("../../../../componentsV2/Switch/Switch.js"),require("../../../../componentsV2/Tabs/Tabs.js"),require("../../../../componentsV2/EmptyState/EmptyState.scss.js"),require("../../../../componentsV2/FileIcon/FileIcon.js"),require("react-dropzone"),require("../../../../componentsV2/FilesDropzone/FilesDropzone.scss.js"),require("../../../../componentsV2/FilesLoader/FilesLoader.scss.js"),require("../../../../componentsV2/FilesProcessor/FilesProcessor.scss.js"),require("../../../../componentsV2/Skeleton/Skeleton.scss.js"),require("../../../../utils/main.js"),require("../../../../componentsV2/CopyToClipboard/CopyToClipboard.scss.js"),require("../../../../componentsV2/Stepper/Step/Step.scss.js"),require("../../../../componentsV2/Stepper/Stepper.scss.js"),require("../../../../componentsV2/ButtonLive/ButtonLive.js"),require("../../../../componentsV2/ButtonText/ButtonText.js"),require("../../../../componentsV2/LiveDotIndicator/LiveDotIndicator.scss.js"),require("../../../../componentsV2/IndicatorLive/IndicatorLive.scss.js"),require("../../../../componentsV2/Accordion/Accordion.scss.js"),require("../../../../componentsV2/Breadcrumbs/Breadcrumbs.scss.js"),require("../../../../componentsV2/BadgeComment/BadgeComment.js"),require("../../../../componentsV2/AppContainer/AppContainer.js"),require("../../../../componentsV2/AppContainer/AppContainer.constants.js"),require("../../../../componentsV2/AppFooter/AppFooter.js"),require("../../../../componentsV2/AppCommonsProvider/AppCommonsContext.js"),require("../../../../componentsV2/AppHeader/AppHeader.constants.js"),require("../../../../componentsV2/AppHeader/AppBadge/AppBadge.scss.js"),require("../../../../componentsV2/AppHeader/AppAssets/utils.js"),require("../../../../componentsV2/AppHeader/AppAssets/AppAssets.scss.js"),require("../../../PadModeSelect/PadModeSelect.js"),require("../../../../componentsV2/AppHeader/PadMode/PadMode.scss.js"),require("../../../../constants/streamSourceType.js"),require("../../../../types/shared/Completions.js"),require("../../../PadModeSelect/types.js"),require("lodash/flatten"),require("lodash/partition"),require("../../../../componentsV2/PadModeSelect/FracModeLabel/FracModeLabel.js"),require("../../../../componentsV2/PadModeSelect/FracModeLabel/FracModeLabel.constants.js"),require("../../../../clients/jsonApi/index.js"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),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"),require("../../../../componentsV2/PadModeSelect/WellStreamActivityStatus/WellStreamActivityStatus.scss.js"),require("../../../../componentsV2/PadModeSelect/PadModeSelect.constants.js"),require("../../../../componentsV2/PadModeSelect/PadModeSelect.scss.js"),require("querystring"),require("uuid/v1"),require("jsona"),require("../../../../utils/env.js"),require("../../../StatusBadge/constants.js"),require("lodash/isEmpty"),require("lodash/sortBy"),require("../../../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js"),require("../../../../componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js"),require("../../../../componentsV2/UniversalLink/UniversalLink.scss.js"),require("../../../../componentsV2/AppHeader/V3/AssetChips/AssetChips.scss.js"),require("../../../../componentsV2/AppHeader/V3/DqStatusIcon/DqStatusIcon.js"),require("../../../../componentsV2/AppHeader/V3/DqStatusIcon/DqStatusIcon.constants.js"),require("../../../../componentsV2/AppFooter/DqPopover/DqStatusIcon/DqStatusIcon.js"),require("../../../../componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.scss.js"),require("../../../../componentsV2/AppDqPopover/DqAlert/DqAlert.scss.js"),require("../../../../componentsV2/AppDqPopover/DqAsset/DqAsset.scss.js"),require("../../../../componentsV2/AppDqPopover/AppDqPopover.scss.js"),require("../../../../componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js"),require("../../../../componentsV2/AppHeader/V3/AssetSelector/constants.js"),require("../../../../componentsV2/AppHeader/V3/AppTitle/AppTitle.constants.js"),require("../../../../componentsV2/AppContainer/headerCommon.scss.js"),require("../../../../componentsV2/AppHeader/V3/AppTitle/AppTitle.scss.js"),require("../../../../componentsV2/AppHeader/V3/constants.scss.js"),require("@babel/runtime/helpers/typeof"),require("../../../../componentsV2/AppSizeProvider/AppSizeProvider.js"),require("../../../../componentsV2/AppSettings/AppSettings.js"),require("../../../../componentsV2/AppSettings/AppSettings.constants.js"),require("../../../../componentsV2/AppSettings/AppSettingsPinningContext.js"),require("../../../../componentsV2/AppHeader/V3/SettingsPopover/SettingsPopover.constants.js"),require("../../../../componentsV2/AppHeader/V3/SettingsPopover/SettingsPopover.scss.js"),require("../../../../componentsV2/AppHeader/V3/Actions/Actions.constants.js"),require("../../../../componentsV2/AppHeader/V3/Actions/Actions.scss.js"),require("../../../../componentsV2/AppHeader/V3/AppHeaderV3.scss.js"),require("../../../../componentsV2/AppHeader/AppHeader.scss.js"),require("../../../../componentsV2/OffsetWellsButton/OffsetWellsButton.scss.js"),require("../../../../componentsV2/Autocomplete/Autocomplete.scss.js"),require("../../../../componentsV2/Menu/MenuItem/MenuItem.scss.js"),require("../../../../componentsV2/AppSettingsDivider/AppSettingsDivider.scss.js"),require("../../../DevCenter/DevCenterAppContainer/components/FullscreenButton/FullscreenButton.js"),require("../../../DevCenter/DevCenterAppContainer/components/AppInfoMessage/AppInfoMessage.js"),require("../../../DevCenter/DevCenterAppContainer/components/DevCenterAppView/DevCenterAppView.js"),require("../../../DevCenter/DevCenterAppContainer/components/RestoreAppSizeButton/index.js"),require("rollbar"),require("@rollbar/react"),require("../../../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchButton.scss.js"),require("../../../DevCenter/DevCenterAppContainer/DevCenterAppContainer.css.js"),require("../../../Icons/AnnotationIcon.js"),require("../../../Annotations/components/AnnotationsList/index.js"),require("../../../Annotations/components/LastAnnotation/index.js"),require("../../../Annotations/AnnotationsContext.js"),require("../../../Toaster/Toaster.js"),require("../../../HelpCenter/HelpCenterIcon.js"),require("../../../DevCenter/NavigationBar/NavigationBar.js"),require("../../../DevCenter/SideBar/SideBar.js"),require("../../../DevCenter/AppSettingsPopover/AppSettingsPopover.js"),require("../../../DevCenter/AppFilterPanelLayout/AppFilterPanelLayout.js"),require("../../../DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js"),require("../../../DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.js"),require("../../../AssetEditor/index.js"),require("../../../AssetEditorV2/index.js"),require("../../../AppVersionsSelect/AppVersionsSelect.js");var m=require("../../../LoadingIndicator/LoadingIndicator.js");function j(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("../../../Typography.js"),require("../../../RealTimeValuesSidebar/RealTimeSidebar.js"),require("../../../CollapsableSidebar.js"),require("../../../DateTimePicker/index.js"),require("../../../DatePicker/index.js"),require("../../../ErrorBoundary/ErrorBoundary.js"),require("../../../ErrorBoundary/DevCenterAppErrorView/DevCenterAppErrorView.js"),require("../../../SlateFormattedText/SlateFormattedText.js"),require("../../../SlateFormattedText/RenderElements.js"),require("slate"),require("../../../EmptyState/EmptyState.js"),require("../../../ParameterCharts/ParameterCharts.js"),require("../../../ParameterCharts/AddEditTrack.js"),require("../../../ChartActionsList/ChartActionsList.js"),require("../../../CopyToClipboard/CopyToClipboard.js"),require("../../../AssetEditor/AssetEditorAutocomplete.js"),require("../../../AssetEditor/SingleAssetEditor.js"),require("react-color"),require("../../../SettingEditors/ColorEditor/style.css.js"),require("../../../SettingEditors/DropdownEditor/index.js"),require("../../../SwitchControl/index.js"),require("../../../ColorPicker/ColorPicker.js"),require("../../../Chart/components/ChartButton.js"),require("../../../Chart/components/ChartButtons.js"),require("../../../Chart/components/ChartWrapper.js"),require("../../../Chart/components/AxisDropdown.js"),require("../../../Chart/components/ChartSelect.js"),require("../../../Chart/components/buttons/DragToZoomButton.js"),require("../../../Chart/components/buttons/ZoomInButton.js"),require("../../../Chart/components/buttons/ZoomOutButton.js"),require("../../../Chart/components/buttons/PanButton.js"),require("../../../Chart/components/buttons/ResetZoomButton.js"),require("../../../Chart/components/buttons/HideAxesButton.js"),require("../../../Chart/components/buttons/ChartTypeButton.js"),require("../../../ColorPicker/PaletteChromePicker/PaletteChromePicker.js"),require("../../../TruncatedText/index.js"),require("../../../MiddleTruncatedText/MiddleTruncatedText.js"),require("../../../RangeSlider/constants.js"),require("../../../RangeSlider/Input.css.js"),require("../../../RangeSlider/RangeSlider.css.js"),require("../../../AdvancedSlider/AdvancedSlider.js"),require("../../../Breadcrumbs/index.js"),require("../../../VirtualizedTable/index.js"),require("../../../EmptyView/EmptyView.js"),require("../../../EmptyView/EmptyAppView/EmptyAppView.js"),require("../../../Button/components/Button/index.js"),require("moment-timezone"),require("../../../Button/components/LiveButton/components/LiveButtonStateIndicator/index.js"),require("../../../Button/components/LiveButton/styles.js"),require("../../../ContextMenuItem/index.js"),require("../../../FolderMenuItem/index.js"),require("../../../EditableItem/EditableItem/index.js"),require("../../../EditableItem/EditableItemWithBadge/index.js"),require("../../../Checkbox/index.js"),require("../../../FolderMenuItemWithLinks/index.js"),require("../../../TextField/index.js"),require("../../../Chip/index.js"),require("../../../Counter/index.js"),require("../../../AnchorsList/AnchorsList.js"),require("../../../Select/index.js"),require("../../../Select/SelectFilterBy.js"),require("../../../CustomSelect/index.js"),require("../../../Tabs/Tabs.js"),require("../../../Tabs/Tab.js"),require("../../../ResizableTable/ResizableTable.js"),require("../../../GradientPicker/GradientPicker.js"),require("../../../GradientManager/GradientList.js"),require("@material-ui/icons/AddCircle"),require("../../../GradientManager/GradientPreview/GradientPreview.js"),require("../../../GradientManager/GradientSelect.styles.js"),require("../../../GradientManager/GradientManager.styles.js"),require("../../../Drillstring/BHASchematic.js"),require("../../../Drillstring/BHATable/index.js"),require("../../../Drillstring/BHAComponentIcon.js"),require("../../../Drillstring/BHAComponentDetail/index.js"),require("../../../Drillstring/BHATileIcon.js"),require("../../../Drillstring/BHATile/BHATile.js"),require("../../../Drillstring/BHAList/BHAList.js"),require("../../../Drillstring/BHAComponentsTable/BHAComponentsTable.js"),require("../../../Casing/CasingTable/index.js"),require("../../../Casing/CasingComponentIcon.js"),require("../../../Casing/CasingTileIcon.js"),require("../../../Casing/CasingTableV2/CasingTableV2.js"),require("../../../Casing/CasingTile/CasingTile.js"),require("../../../DisabledSettingsMessage/DisabledSettingsMessage.js"),require("../../../WellSummary/WellSummaryItemLabel.js"),require("../../../WellSummary/WellSummaryItemTitle.js"),require("../../../WellSummary/WellSummaryItemValue.js"),require("../../../WellSummary/ActivitySummaryChart.js"),require("../../../WellSummary/FracWirelineTimeChart.js"),require("../../../BICOffsetPickerDialog/index.js"),require("../../../OffsetWellButton/OffsetWellButton.js"),require("../../../OffsetWellPickerV2/OffsetWellPickerDialog.js"),require("../../../OffsetWellPickerV3/index.js"),require("../../../OffsetWellChips/Chip.js"),require("../../../OffsetWellChips/ChipsContainer.js"),require("../../utils/apiCalls.js"),require("../../effects/useAdvancedWells.js"),require("react-virtualized"),require("../../effects/useAssetsData.js"),require("../AppHeader/AppHeader.js"),require("../Toolbar/Toolbar.js"),require("../Filter/Filter.js"),require("../Map/WellsMap.js"),require("./AdvancedSearch/constants.js"),require("../../utils/index.js"),require("../../OffsetWellPickerV4.module.css.js"),require("@material-ui/core/Snackbar"),require("../../../Notifications/Toast.js"),require("../../../../styles/typography/index.js"),require("../../../../styles/counter/counter.module.scss.js"),require("../../../OffsetWellMap/OffsetWellMap.js"),require("../../../ConfirmationDialog.js"),require("../../../TextLink/index.js"),require("../../../Avatar/index.js"),require("../../../Template/TemplatePopover/index.js"),require("../../../Template/TemplateSharingDialog/index.js"),require("../../../MenuItem/index.js"),require("../../../MiddleTruncate/MiddleTruncate.js"),require("../../../PinnableFilters/PinnableFilters.js"),require("../../../HeaderLayout/HeaderLayout.js"),require("../../../PadOffsetsPicker/PadOffsetsPicker.js"),require("../../../PadOffsetsPicker/OffsetAssetChip.js"),require("../../../PadOffsetsPicker/OffsetAssetsListExpander.js"),require("../../../PadOffsetsPicker/StagesSelector.js"),require("../../../PadOffsetsPickerV2/PadOffsetsPickerV2.js"),require("../../../Table/TableToolbar/TableToolbar.js"),require("../../../Table/TableContainer/TableContainer.js"),require("../../../Table/TableCell/TableCell.js"),require("../../../Table/TablePagination/TablePagination.js"),require("../../../Table/TablePaginationActions/TablePaginationActions.js"),require("../../../Tooltip/ScrollableTooltip.js"),require("../../../PriceInput/PriceInput.js"),require("../../../LabelsCounter/LabelsCounter.js"),require("../../../Stepper/Stepper.js"),require("../../../Stepper/Step/Step.js"),require("../../../Stepper/StepsWrapper.js"),require("../../../Comment/CommentIcon/index.js"),require("../../../FilesLoader/FilesLoader.js"),require("../../../SearchInput/index.js"),require("../../../FeedItem/FeedItem.js"),require("../../../FeedItem/FeedItemEditProvider/FeedItemEditProvider.js"),require("../../../PostInput/PostInput.js"),require("../../../KeyboardDateTimePicker.js"),require("../../../AddComment/Popover.js"),require("../../../AddComment/Popup.js"),require("../../../StageDesignVActual/ComparisonBar/ComparisonBar.js"),require("../../../StageDesignVActual/ElementsComparison/ElementsComparison.js"),require("../../../StageDesignVActual/ComparisonHeader.js"),require("../../../StageDesignVActual/ComparisonRow.js"),require("../../../EmbeddedApp/DevCenterEmbeddedApp.js"),require("../../../EmbeddedApp/EmbeddedApp.js"),require("../../../Autocomplete/Autocomplete.js"),require("../../../DocumentViewer/DocumentViewer.js"),require("../../../ColorPickerPalette/ColorPickerPalette.js"),require("../../../Search/Search.js"),require("../../../Search/components/Listbox.js"),require("../../../Search/components/Paper.js"),require("../../../Search/components/RecentSearches.js"),require("../../../Search/components/Groups.js"),require("../../../Search/components/SelectAllListItem.js"),require("../../../StatusBadge/index.js"),require("../../../Attachment/index.js"),require("../../../EmojiIconButton.js"),require("../../../FileUploadIconButton.js"),require("../../../FilePreview/index.js"),require("../../../FailedFileUploading.js"),require("../../../UserMention/index.js"),require("../../../CommentsInfo/index.js"),require("../../../CommentInput/index.js"),require("../../../Comment/index.js"),require("../../../CommentLoader.js"),require("../../../AssetNameLabel/AssetStatusBadge.js"),require("../../../AssetEditorV2/components/PrimaryAssetSelect.js"),require("../../../AssetEditorV2/components/SecondaryAssetSelect.js"),require("../../../AssetEditorV2/components/SelectItem.js"),require("../../../AssetEditorV2/components/MultipleAssetsToggle.js"),require("../../../AssetEditorV2/components/PrimaryAssetSelectV2.js"),require("../../../EChartsWrapper/EChartsWrapper.js"),require("../../../AssetsMultipleSelector/AssetsMultipleSelector.js"),require("@material-ui/icons/Close"),require("@material-ui/icons/GetApp"),require("../../../GoogleDocsViewer/index.js"),require("../../../NewDocumentViewer/effects/useFileContent.js"),require("../../../NewDocumentViewer/styles.js"),require("../../../FilesLoaderV2/styles.js"),require("../../../FilesDropzone/styles.js"),require("../../../FilesProcessor/styles.js"),require("../../../Hint/styles.js"),require("@babel/runtime/helpers/taggedTemplateLiteral"),require("fparser"),require("../../../Formula/useFormulaStyles.js"),require("../../../Formula/RootXIcon.js"),require("../../../Formula/FormulaTextEditor.js"),require("../../../Formula/CloseSuggestion.js"),require("../../../Formula/SuggestionsMenu.js");var C=j(e),A=j(r),f=j(t),h=j(i);function S(e,r){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);r&&(t=t.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),s.push.apply(s,t)}return s}function v(e){for(var r=1;r<arguments.length;r++){var s=null!=arguments[r]?arguments[r]:{};r%2?S(Object(s),!0).forEach((function(r){A.default(e,r,s[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):S(Object(s)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(s,r))}))}return e}var b=function(e){var r=e.open,t=e.isTableLoading,i=e.companyId,j=e.subjectWellId,h=e.sortBy,S=e.setSortBy,b=e.sortDirection,g=e.setSortDirection,T=e.columnsWithDict,V=e.wells,D=e.metricsKeys,I=e.setMetricsKeys,x=e.handleChangeOffsetWell,y=e.handleChangeAllOffsetWells,P=e.handleAddRemoveAssets,B=e.isWellNameExpand,W=e.setIsWellNameExpand,E=e.isHScrollMoved,M=e.onHideAdvancedSearch,L=e.isViewOnly,w=e.isLastWell,F=e.contentRef,R=e.isLimitedOffsetWells,O=e.maxOffsetWellNumber,H=e.wellSections,k=e.setActiveWellId,N=e.viewType,G=e.isWDUser,U=e.taScores,z=s.useState([]),_=C.default(z,2),K=_[0],Z=_[1],X=s.useState(null),J=C.default(X,2),Q=J[0],Y=J[1],$=s.useState(0),ee=C.default($,2),re=ee[0],se=ee[1],te=s.useState(0),ie=C.default(te,2),ne=ie[0],oe=ie[1],ue=s.useRef(),ae=s.useRef(),ce=s.useRef();s.useEffect((function(){var e=n.uniqBy(K,"id"),r=n.uniqBy(V,"id");if(!Q)return Z(r),void oe(0);var s=function(e,r,s,t){var i,n=e.findIndex((function(e){return r===e.id})),o=s.findIndex((function(e){return r===e.id}));-1===o&&(o=s.length);var a=Math.round(((null===(i=t.current)||void 0===i?void 0:i.clientHeight)-145)/u.ROW_HEIGHT+1),c=o-n;Math.abs(c)>a&&(o=n+a*Math.sign(c));var l=o-n;return[n,o,l,200*(.4*Math.abs(l)+2),Math.min(n,o),(Math.abs(l)+1)*u.ROW_HEIGHT]}(e,Q,r,F),t=C.default(s,6),i=t[0],o=t[1],a=t[2],c=t[3],l=t[4],p=t[5];if(ce.current=c,o===i)Z(r);else{se(l),oe(p);var d=function(e,r,s,t){return e.map((function(e,i){var n=s<i&&i<=t||t<=i&&i<s;return i===s?v(v({},e),{},{moveTo:r}):n?v(v({},e),{},{moveTo:s<t?-1:1,delayTime:Math.abs(i-s)}):e}))}(e,a,i,o);Z(d),setTimeout((function(){Z(r),oe(0),Y(null)}),c)}}),[V,V.length]);var le=s.useMemo((function(){return n.uniqBy(K,"id")}),[K]),pe=s.useMemo((function(){var e=le.filter((function(e){return e.checked}));return[e,le.length!==e.length&&e.length&&!R,e.length===le.length||R]}),[le,R]),de=C.default(pe,3),qe=de[0],me=de[1],je=de[2],Ce=s.useMemo((function(){return a.getIsImperial()}),[]),Ae=s.useMemo((function(){return(D||[]).reduce((function(e,r){return e.concat(u.METRICS_LIST.filter((function(e){return e.key===r})))}),[])}),[D]),fe=s.useMemo((function(){return B?u.EXPANDED_WELL_NAME_WIDTH-58:u.TableColumns[0].width[D.length]-58}),[B,null==D?void 0:D.length]),he=s.useMemo((function(){var e=B?u.SEARCH_CELL_EXPAND_WIDTH:u.SEARCH_CELL_DEFAULT_WIDTH;return U.length&&(e+=function(e,r){var s=e.find((function(e){return e.key===r}));return(null==s?void 0:s.width)||0}(T,u.ColumnType.taScore)),"".concat(e,"px")}),[B,U]);s.useEffect((function(){if(N!==u.ViewType.mobile&&ue.current&&ae.current){var e=ue.current.querySelector(".".concat(d.wellNameFixed));E?e.classList.remove(d.noShadow):e.classList.add(d.noShadow);var r=ae.current.querySelectorAll(".".concat(d.wellNameFixed));E?r.forEach((function(e){return e.classList.remove(d.noShadow)})):r.forEach((function(e){return e.classList.add(d.noShadow)}))}}),[E,ae.current,ue.current,K]);var Se=s.useCallback((function(e,r){S(e),g(r)}),[]),ve=s.useCallback((function(e){I(e)}),[]),be=s.useCallback((function(e,r){I((function(s){return s.map((function(s){return s===e?r:s}))}))}),[]);return T&&le?q.jsxs("div",{className:d.offsetWellsTable,children:[q.jsx("div",{className:d.stickyTable,children:q.jsx(o.Table,{"aria-label":"ows table head",innerRef:ue,children:q.jsx(o.TableHead,{children:q.jsx(l,{open:r,columnsWithDict:T,metricsKeys:D,sortBy:h,sortDirection:b,indeterminate:me,isAllWellsSelected:je,onChangeSort:Se,onChangeMetricsKeys:ve,onUpdateMetricsKey:be,isWellNameExpand:B,setIsWellNameExpand:W,handleChangeAllOffsetWells:y,wellNameStyle:d.wellNameFixed,isViewOnly:L,isImperial:Ce,contentRef:F,viewType:N,isTaColumnVisible:!!U.length})})})}),!L&&q.jsxs("div",{className:f.default(d.searchCellWrapper,A.default({},d.searchCellWrapperExpanded,B)),style:{"--dynamic-search-wrapper-width":he},children:[q.jsx("div",{className:d.searchCell,children:q.jsx(c.AdvancedSearch,{companyId:i,subjectWellId:j,onChange:P,selectedWellIds:qe.map((function(e){return e.id})),onHideAdvancedSearch:M})}),!!B&&q.jsx("div",{className:d.searchCellEmpty})]}),q.jsx(o.Table,{"aria-label":"ows table body",innerRef:ae,className:d.bodyTable,children:q.jsxs(o.TableBody,{children:[q.jsx(o.TableRow,{children:q.jsx(o.TableCell,{className:f.default(d.topShadow,A.default({},d.viewOnlyShadow,L))})}),le.map((function(e,r){return q.jsxs(s.Fragment,{children:[q.jsx(o.TableRow,{children:Q&&ne>0&&r===re&&q.jsx(o.TableCell,{style:{height:ne}})}),q.jsx(p,{columnsWithDict:T,subjectWellId:j,data:e,metricsKeys:D,metricsColumns:Ae,handleChangeOffsetWell:x,isWellNameExpand:B,wellNameStyle:d.wellNameFixed,wellNameWidth:fe,isViewOnly:L,isImperial:Ce,isLimitedOffsetWells:R,maxOffsetWellNumber:O,wellSections:H,setActiveWellId:k,viewType:N,newCheckedWellId:null!=e&&e.moveTo?Q:0,setNewCheckedWellId:Y,index:null!=e&&e.moveTo?r:0,flyDuration:null!=e&&e.moveTo?ce.current:0,isWDUser:G,taScores:U})]},e.id)})),!w&&q.jsx(o.TableRow,{children:q.jsx(o.TableCell,{className:d.loadingCell,children:q.jsx("span",{children:"Loading..."})})}),q.jsx(o.TableRow,{children:q.jsx(o.TableCell,{className:d.bottomShadow})})]})}),t&&q.jsx("div",{className:d.loadingContainer,children:q.jsx(m,{fullscreen:!1,className:d.loadingIndicator})})]}):null};b.propTypes={open:h.default.bool.isRequired,isTableLoading:h.default.bool.isRequired,companyId:h.default.number.isRequired,subjectWellId:h.default.number.isRequired,sortBy:h.default.string.isRequired,setSortBy:h.default.func.isRequired,sortDirection:h.default.string.isRequired,setSortDirection:h.default.func.isRequired,columnsWithDict:h.default.arrayOf(h.default.shape({})).isRequired,wells:h.default.arrayOf(h.default.shape({})).isRequired,metricsKeys:h.default.arrayOf(h.default.string).isRequired,setMetricsKeys:h.default.func.isRequired,handleChangeOffsetWell:h.default.func.isRequired,handleChangeAllOffsetWells:h.default.func.isRequired,handleAddRemoveAssets:h.default.func.isRequired,setIsWellNameExpand:h.default.func.isRequired,isWellNameExpand:h.default.bool.isRequired,isHScrollMoved:h.default.bool.isRequired,onHideAdvancedSearch:h.default.func.isRequired,isViewOnly:h.default.bool.isRequired,isLastWell:h.default.bool.isRequired,isLimitedOffsetWells:h.default.bool.isRequired,maxOffsetWellNumber:h.default.number.isRequired,contentRef:h.default.shape({}).isRequired,wellSections:h.default.arrayOf(h.default.shape({})).isRequired,setActiveWellId:h.default.func.isRequired,viewType:h.default.string.isRequired,isWDUser:h.default.bool.isRequired,taScores:h.default.arrayOf(h.default.shape({})).isRequired};var g=s.memo(b);module.exports=g;
1
+ "use strict";var e=require("@babel/runtime/helpers/defineProperty"),r=require("@babel/runtime/helpers/slicedToArray"),s=require("react"),t=require("classnames"),i=require("prop-types"),n=require("lodash"),o=require("@material-ui/core"),u=require("../../constants.js"),a=require("../../utils/unitSystem.js"),c=require("./AdvancedSearch/AdvancedSearch.js"),l=require("./OffsetWellsTableHead.js"),p=require("./OffsetWellsTableRow.js"),d=require("./OffsetWellsTable.module.css.js"),q=require("react/jsx-runtime");require("../../../DevCenter/DevCenterAppContainer/components/IsInsideIsolatedDcAppProvider/IsInsideIsolatedDcAppProvider.js"),require("../../../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/DcFullscreenElemsCoordinatorProvider.js"),require("../../../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/IsInsideDcFullscreenElemProvider.js"),require("@icon-park/react/es/all"),require("../../../../icons/IconParkProvider.js"),require("../../../../icons/customIcons/icons/AddMessage.js"),require("../../../../icons/customIcons/icons/Attention.js"),require("../../../../icons/customIcons/icons/Collapse.js"),require("../../../../icons/customIcons/icons/Dashboard.js"),require("../../../../icons/customIcons/icons/Expand.js"),require("../../../../icons/customIcons/icons/FolderClosed.js"),require("../../../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../../../icons/customIcons/icons/FolderOpened.js"),require("../../../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../../../icons/customIcons/icons/LessOrEqual.js"),require("../../../../icons/customIcons/icons/Search.js"),require("../../../../icons/customIcons/icons/Wellhub.js"),require("../../../../icons/customIcons/icons/MultiRuler.js"),require("../../../../icons/customIcons/icons/Checkbox.js"),require("../../../../icons/customIcons/icons/CheckboxChecked.js"),require("../../../../icons/customIcons/icons/CheckboxIndeterminate.js"),require("../../../../icons/customIcons/icons/Radio.js"),require("../../../../icons/customIcons/icons/RadioChecked.js"),require("../../../../icons/customIcons/icons/SimulFrac.js"),require("../../../../icons/customIcons/icons/ZipperFrac.js"),require("../../../../icons/customIcons/icons/CautionFilled.js"),require("../../../../icons/customIcons/icons/MoreApp.js"),require("../../../../icons/customIcons/icons/Pad.js"),require("../../../../icons/customIcons/icons/DrilloutUnit.js"),require("../../../../icons/customIcons/icons/FracFleet.js"),require("../../../../icons/customIcons/icons/Program.js"),require("../../../../icons/customIcons/icons/Rig.js"),require("../../../../icons/customIcons/icons/Well.js"),require("../../../../icons/customIcons/icons/Gap.js"),require("../../../../icons/customIcons/icons/Pin.js"),require("../../../../icons/customIcons/icons/CloseOneFilled.js"),require("../../../../icons/customIcons/icons/AttentionFilled.js"),require("../../../../icons/customIcons/icons/CheckOneFilled.js"),require("../../../../icons/customIcons/icons/Archive.js"),require("../../../../icons/customIcons/icons/ArchiveCancel.js"),require("../../../../icons/customIcons/icons/Unarchive.js"),require("../../../../icons/customIcons/icons/Archived.js"),require("../../../../utils/mobileDetect.js"),require("../../../IconButton/index.js"),require("../../../../constants/goals.js"),require("../../../../constants/segment.js"),require("../../../../constants/alerts.js"),require("../../../../constants/apps.js"),require("../../../../constants/drillstring.js"),require("../../../../constants/completion.js"),require("../../../../constants/appPackages.js"),require("../../../../constants/notifications.js"),require("../../../../constants/feed.js"),require("../../../../constants/bha.js"),require("../../../../constants/corvaCompanyId.js"),require("../../../GradientManager/configuration/constants.js"),require("../../../Modal/CorvaModal.css.js"),require("uuid"),require("../../../IconMenu/index.js"),require("../../../StyledMenuItem/index.js"),require("../../../AppIcon/AppIcon.js"),require("../../../DevCenter/AppHeader/AppHeader.js"),require("../../../DevCenter/AppSideBar/AppSideBar.js"),require("../../../DevCenter/AppsDataProvider/AppsDataProvider.js"),require("@material-ui/icons"),require("../../../DevCenter/AppContext.js"),require("../../../DevCenter/DevCenterRouterContext/DevCenterRouterContext.js"),require("../../../DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("react-router"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../../../utils/index.js"),require("../../../DevCenter/DevCenterAppContainer/components/AppActions/AppActions.css.js"),require("../../../DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js"),require("../../../DevCenter/DevCenterAppContainer/components/AppSettingsDialog/components/RemoveAppButton.js"),require("../../../DevCenter/DevCenterAppContainer/components/AppSettingsDialog/components/SettingsAccordion.js"),require("../../../DevCenter/DevCenterAppContainer/components/AnnotationsButton/AnnotationsButton.js"),require("../../../../componentsV2/Text/Text.js"),require("../../../../componentsV2/Grid/Grid.js"),require("../../../../componentsV2/Grid/Grid.scss.js"),require("../../../../componentsV2/Header/Header.scss.js"),require("../../../../componentsV2/Button/Button.js"),require("../../../../componentsV2/ButtonIcon/ButtonIcon.js"),require("../../../../componentsV2/Tooltip/Tooltip.scss.js"),require("../../../../componentsV2/Paper/Paper.js"),require("../../../../componentsV2/Popover/Popover.scss.js"),require("../../../../componentsV2/Radio/Radio.js"),require("../../../../componentsV2/RadioAndCheckboxGroup/RadioAndCheckboxGroup.scss.js"),require("../../../../componentsV2/Checkbox/Checkbox.js"),require("../../../../componentsV2/TextInput/TextInput.js"),require("../../../../componentsV2/TextEndTruncated/TextEndTruncated.scss.js"),require("../../../../componentsV2/TextMiddleTruncated/TextMiddleTruncated.constants.js"),require("../../../../componentsV2/TextMiddleTruncated/TextMiddleTruncated.scss.js"),require("../../../../componentsV2/TextLink/TextLink.js"),require("../../../../componentsV2/Chip/Chip.js"),require("../../../../componentsV2/ChipAlert/ChipAlert.js"),require("../../../../componentsV2/ChipIndicator/ChipIndicator.js"),require("../../../../componentsV2/Avatar/Avatar.js"),require("../../../../componentsV2/Avatar/constants.js"),require("../../../../componentsV2/AvatarGroup/AvatarGroup.scss.js"),require("@material-ui/lab"),require("../../../../componentsV2/ToggleButtons/ToggleButtons.scss.js"),require("../../../../componentsV2/ModalWindow/ModalWindow.scss.js"),require("../../../../componentsV2/Modal/Modal.scss.js"),require("../../../../componentsV2/Menu/Menu.js"),require("../../../../componentsV2/Counter/Counter.js"),require("../../../../componentsV2/BadgeBase/BadgeBase.scss.js"),require("../../../../componentsV2/BadgeDot/BadgeDot.scss.js"),require("../../../../componentsV2/LoaderLinear/LoaderLinear.scss.js"),require("../../../../componentsV2/LoaderLogo/LoaderLogo.constants.js"),require("../../../../componentsV2/LoaderLogo/LoaderLogo.scss.js"),require("../../../../componentsV2/Switch/Switch.js"),require("../../../../componentsV2/Tabs/Tabs.js"),require("../../../../componentsV2/EmptyState/EmptyState.scss.js"),require("../../../../componentsV2/FileIcon/FileIcon.js"),require("react-dropzone"),require("../../../../componentsV2/FilesDropzone/FilesDropzone.scss.js"),require("../../../../componentsV2/FilesLoader/FilesLoader.scss.js"),require("../../../../componentsV2/FilesProcessor/FilesProcessor.scss.js"),require("../../../../componentsV2/Skeleton/Skeleton.scss.js"),require("../../../../utils/main.js"),require("../../../../componentsV2/CopyToClipboard/CopyToClipboard.scss.js"),require("../../../../componentsV2/Stepper/Step/Step.scss.js"),require("../../../../componentsV2/Stepper/Stepper.scss.js"),require("../../../../componentsV2/ButtonLive/ButtonLive.js"),require("../../../../componentsV2/ButtonText/ButtonText.js"),require("../../../../componentsV2/LiveDotIndicator/LiveDotIndicator.scss.js"),require("../../../../componentsV2/IndicatorLive/IndicatorLive.scss.js"),require("../../../../componentsV2/Accordion/Accordion.scss.js"),require("../../../../componentsV2/Breadcrumbs/Breadcrumbs.scss.js"),require("../../../../componentsV2/BadgeComment/BadgeComment.js"),require("../../../../componentsV2/AppContainer/AppContainer.js"),require("../../../../componentsV2/AppContainer/AppContainer.constants.js"),require("../../../../componentsV2/AppFooter/AppFooter.js"),require("../../../../componentsV2/AppCommonsProvider/AppCommonsContext.js"),require("../../../../componentsV2/AppHeader/AppHeader.constants.js"),require("../../../../componentsV2/AppHeader/AppBadge/AppBadge.scss.js"),require("../../../../componentsV2/AppHeader/AppAssets/utils.js"),require("../../../../componentsV2/AppHeader/AppAssets/AppAssets.scss.js"),require("../../../PadModeSelect/PadModeSelect.js"),require("../../../../componentsV2/AppHeader/PadMode/PadMode.scss.js"),require("../../../../constants/streamSourceType.js"),require("../../../../types/shared/Completions.js"),require("../../../PadModeSelect/types.js"),require("lodash/flatten"),require("lodash/partition"),require("../../../../componentsV2/PadModeSelect/FracModeLabel/FracModeLabel.js"),require("../../../../componentsV2/PadModeSelect/FracModeLabel/FracModeLabel.constants.js"),require("../../../../clients/jsonApi/index.js"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),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"),require("../../../../componentsV2/PadModeSelect/WellStreamActivityStatus/WellStreamActivityStatus.scss.js"),require("../../../../componentsV2/PadModeSelect/PadModeSelect.constants.js"),require("../../../../componentsV2/PadModeSelect/PadModeSelect.scss.js"),require("querystring"),require("uuid/v1"),require("jsona"),require("../../../../utils/env.js"),require("../../../StatusBadge/constants.js"),require("lodash/isEmpty"),require("lodash/sortBy"),require("../../../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js"),require("../../../../componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js"),require("../../../../componentsV2/UniversalLink/UniversalLink.scss.js"),require("../../../../componentsV2/AppHeader/V3/AssetChips/AssetChips.scss.js"),require("../../../../componentsV2/AppHeader/V3/DqStatusIcon/DqStatusIcon.js"),require("../../../../componentsV2/AppHeader/V3/DqStatusIcon/DqStatusIcon.constants.js"),require("../../../../componentsV2/AppFooter/DqPopover/DqStatusIcon/DqStatusIcon.js"),require("../../../../componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.scss.js"),require("../../../../componentsV2/AppDqPopover/DqAlert/DqAlert.scss.js"),require("../../../../componentsV2/AppDqPopover/DqAsset/DqAsset.scss.js"),require("../../../../componentsV2/AppDqPopover/AppDqPopover.scss.js"),require("../../../../componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js"),require("../../../../componentsV2/AppHeader/V3/AssetSelector/constants.js"),require("../../../../componentsV2/AppHeader/V3/AppTitle/AppTitle.constants.js"),require("../../../../componentsV2/AppContainer/headerCommon.scss.js"),require("../../../../componentsV2/AppHeader/V3/AppTitle/AppTitle.scss.js"),require("../../../../componentsV2/AppHeader/V3/constants.scss.js"),require("@babel/runtime/helpers/typeof"),require("../../../../componentsV2/AppSizeProvider/AppSizeProvider.js"),require("../../../../componentsV2/AppSettings/AppSettings.js"),require("../../../../componentsV2/AppSettings/AppSettings.constants.js"),require("../../../../componentsV2/AppSettings/AppSettingsPinningContext.js"),require("../../../../componentsV2/AppHeader/V3/SettingsPopover/SettingsPopover.constants.js"),require("../../../../componentsV2/AppHeader/V3/SettingsPopover/SettingsPopover.scss.js"),require("../../../../componentsV2/AppHeader/V3/Actions/Actions.constants.js"),require("../../../../componentsV2/AppHeader/V3/Actions/Actions.scss.js"),require("../../../../componentsV2/AppHeader/V3/AppHeaderV3.scss.js"),require("../../../../componentsV2/AppHeader/AppHeader.scss.js"),require("../../../../componentsV2/OffsetWellsButton/OffsetWellsButton.scss.js"),require("../../../../componentsV2/Autocomplete/Autocomplete.scss.js"),require("../../../../componentsV2/Menu/MenuItem/MenuItem.scss.js"),require("../../../../componentsV2/AppSettingsDivider/AppSettingsDivider.scss.js"),require("../../../DevCenter/DevCenterAppContainer/components/FullscreenButton/FullscreenButton.js"),require("../../../DevCenter/DevCenterAppContainer/components/AppInfoMessage/AppInfoMessage.js"),require("../../../DevCenter/DevCenterAppContainer/components/DevCenterAppView/DevCenterAppView.js"),require("../../../DevCenter/DevCenterAppContainer/components/RestoreAppSizeButton/index.js"),require("rollbar"),require("@rollbar/react"),require("../../../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchButton.scss.js"),require("../../../DevCenter/DevCenterAppContainer/DevCenterAppContainer.css.js"),require("../../../Icons/AnnotationIcon.js"),require("../../../Annotations/components/AnnotationsList/index.js"),require("../../../Annotations/components/LastAnnotation/index.js"),require("../../../Annotations/AnnotationsContext.js"),require("../../../Toaster/Toaster.js"),require("../../../HelpCenter/HelpCenterIcon.js"),require("../../../DevCenter/NavigationBar/NavigationBar.js"),require("../../../DevCenter/SideBar/SideBar.js"),require("../../../DevCenter/AppSettingsPopover/AppSettingsPopover.js"),require("../../../DevCenter/AppFilterPanelLayout/AppFilterPanelLayout.js"),require("../../../DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js"),require("../../../DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.js"),require("../../../AssetEditor/index.js"),require("../../../AssetEditorV2/index.js"),require("../../../AppVersionsSelect/AppVersionsSelect.js");var m=require("../../../LoadingIndicator/LoadingIndicator.js");function j(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("../../../Typography.js"),require("../../../RealTimeValuesSidebar/RealTimeSidebar.js"),require("../../../CollapsableSidebar.js"),require("../../../DateTimePicker/index.js"),require("../../../DatePicker/index.js"),require("../../../ErrorBoundary/ErrorBoundary.js"),require("../../../ErrorBoundary/DevCenterAppErrorView/DevCenterAppErrorView.js"),require("../../../SlateFormattedText/SlateFormattedText.js"),require("../../../SlateFormattedText/RenderElements.js"),require("slate"),require("../../../EmptyState/EmptyState.js"),require("../../../ParameterCharts/ParameterCharts.js"),require("../../../ParameterCharts/AddEditTrack.js"),require("../../../ChartActionsList/ChartActionsList.js"),require("../../../CopyToClipboard/CopyToClipboard.js"),require("../../../AssetEditor/AssetEditorAutocomplete.js"),require("../../../AssetEditor/SingleAssetEditor.js"),require("react-color"),require("../../../SettingEditors/ColorEditor/style.css.js"),require("../../../SettingEditors/DropdownEditor/index.js"),require("../../../SwitchControl/index.js"),require("../../../ColorPicker/ColorPicker.js"),require("../../../Chart/components/ChartButton.js"),require("../../../Chart/components/ChartButtons.js"),require("../../../Chart/components/ChartWrapper.js"),require("../../../Chart/components/AxisDropdown.js"),require("../../../Chart/components/ChartSelect.js"),require("../../../Chart/components/buttons/DragToZoomButton.js"),require("../../../Chart/components/buttons/ZoomInButton.js"),require("../../../Chart/components/buttons/ZoomOutButton.js"),require("../../../Chart/components/buttons/PanButton.js"),require("../../../Chart/components/buttons/ResetZoomButton.js"),require("../../../Chart/components/buttons/HideAxesButton.js"),require("../../../Chart/components/buttons/ChartTypeButton.js"),require("../../../ColorPicker/PaletteChromePicker/PaletteChromePicker.js"),require("../../../TruncatedText/index.js"),require("../../../MiddleTruncatedText/MiddleTruncatedText.js"),require("../../../RangeSlider/constants.js"),require("../../../RangeSlider/Input.css.js"),require("../../../RangeSlider/RangeSlider.css.js"),require("../../../AdvancedSlider/AdvancedSlider.js"),require("../../../Breadcrumbs/index.js"),require("../../../VirtualizedTable/index.js"),require("../../../EmptyView/EmptyView.js"),require("../../../EmptyView/EmptyAppView/EmptyAppView.js"),require("../../../Button/components/Button/index.js"),require("moment-timezone"),require("../../../Button/components/LiveButton/components/LiveButtonStateIndicator/index.js"),require("../../../Button/components/LiveButton/styles.js"),require("../../../ContextMenuItem/index.js"),require("../../../FolderMenuItem/index.js"),require("../../../EditableItem/EditableItem/index.js"),require("../../../EditableItem/EditableItemWithBadge/index.js"),require("../../../Checkbox/index.js"),require("../../../FolderMenuItemWithLinks/index.js"),require("../../../TextField/index.js"),require("../../../Chip/index.js"),require("../../../Counter/index.js"),require("../../../AnchorsList/AnchorsList.js"),require("../../../Select/index.js"),require("../../../Select/SelectFilterBy.js"),require("../../../CustomSelect/index.js"),require("../../../Tabs/Tabs.js"),require("../../../Tabs/Tab.js"),require("../../../ResizableTable/ResizableTable.js"),require("../../../GradientPicker/GradientPicker.js"),require("../../../GradientManager/GradientList.js"),require("@material-ui/icons/AddCircle"),require("../../../GradientManager/GradientPreview/GradientPreview.js"),require("../../../GradientManager/GradientSelect.styles.js"),require("../../../GradientManager/GradientManager.styles.js"),require("../../../Drillstring/BHASchematic.js"),require("../../../Drillstring/BHATable/index.js"),require("../../../Drillstring/BHAComponentIcon.js"),require("../../../Drillstring/BHAComponentDetail/index.js"),require("../../../Drillstring/BHATileIcon.js"),require("../../../Drillstring/BHATile/BHATile.js"),require("../../../Drillstring/BHAList/BHAList.js"),require("../../../Drillstring/BHAComponentsTable/BHAComponentsTable.js"),require("../../../Casing/CasingTable/index.js"),require("../../../Casing/CasingComponentIcon.js"),require("../../../Casing/CasingTileIcon.js"),require("../../../Casing/CasingTableV2/CasingTableV2.js"),require("../../../Casing/CasingTile/CasingTile.js"),require("../../../DisabledSettingsMessage/DisabledSettingsMessage.js"),require("../../../WellSummary/WellSummaryItemLabel.js"),require("../../../WellSummary/WellSummaryItemTitle.js"),require("../../../WellSummary/WellSummaryItemValue.js"),require("../../../WellSummary/ActivitySummaryChart.js"),require("../../../WellSummary/FracWirelineTimeChart.js"),require("../../../BICOffsetPickerDialog/index.js"),require("../../../OffsetWellButton/OffsetWellButton.js"),require("../../../OffsetWellPickerV2/OffsetWellPickerDialog.js"),require("../../../OffsetWellPickerV3/index.js"),require("../../../OffsetWellChips/Chip.js"),require("../../../OffsetWellChips/ChipsContainer.js"),require("../../utils/apiCalls.js"),require("../../effects/useAdvancedWells.js"),require("react-virtualized"),require("../../effects/useAssetsData.js"),require("../AppHeader/AppHeader.js"),require("../Toolbar/Toolbar.js"),require("../Filter/Filter.js"),require("../Map/WellsMap.js"),require("./AdvancedSearch/constants.js"),require("../../utils/index.js"),require("../../OffsetWellPickerV4.module.css.js"),require("@material-ui/core/Snackbar"),require("../../../Notifications/Toast.js"),require("../../../../styles/typography/index.js"),require("../../../../styles/counter/counter.module.scss.js"),require("../../../OffsetWellMap/OffsetWellMap.js"),require("../../../ConfirmationDialog.js"),require("../../../TextLink/index.js"),require("../../../Avatar/index.js"),require("../../../Template/TemplatePopover/index.js"),require("../../../Template/TemplateSharingDialog/index.js"),require("../../../MenuItem/index.js"),require("../../../MiddleTruncate/MiddleTruncate.js"),require("../../../PinnableFilters/PinnableFilters.js"),require("../../../HeaderLayout/HeaderLayout.js"),require("../../../PadOffsetsPicker/PadOffsetsPicker.js"),require("../../../PadOffsetsPicker/OffsetAssetChip.js"),require("../../../PadOffsetsPicker/OffsetAssetsListExpander.js"),require("../../../PadOffsetsPicker/StagesSelector.js"),require("../../../PadOffsetsPickerV2/PadOffsetsPickerV2.js"),require("../../../Table/TableToolbar/TableToolbar.js"),require("../../../Table/TableContainer/TableContainer.js"),require("../../../Table/TableCell/TableCell.js"),require("../../../Table/TablePagination/TablePagination.js"),require("../../../Table/TablePaginationActions/TablePaginationActions.js"),require("../../../Tooltip/ScrollableTooltip.js"),require("../../../PriceInput/PriceInput.js"),require("../../../LabelsCounter/LabelsCounter.js"),require("../../../Stepper/Stepper.js"),require("../../../Stepper/Step/Step.js"),require("../../../Stepper/StepsWrapper.js"),require("../../../Comment/CommentIcon/index.js"),require("../../../FilesLoader/FilesLoader.js"),require("../../../SearchInput/index.js"),require("../../../FeedItem/FeedItem.js"),require("../../../FeedItem/FeedItemEditProvider/FeedItemEditProvider.js"),require("../../../PostInput/PostInput.js"),require("../../../KeyboardDateTimePicker.js"),require("../../../AddComment/Popover.js"),require("../../../AddComment/Popup.js"),require("../../../StageDesignVActual/ComparisonBar/ComparisonBar.js"),require("../../../StageDesignVActual/ElementsComparison/ElementsComparison.js"),require("../../../StageDesignVActual/ComparisonHeader.js"),require("../../../StageDesignVActual/ComparisonRow.js"),require("../../../EmbeddedApp/DevCenterEmbeddedApp.js"),require("../../../EmbeddedApp/EmbeddedApp.js"),require("../../../Autocomplete/Autocomplete.js"),require("../../../DocumentViewer/DocumentViewer.js"),require("../../../ColorPickerPalette/ColorPickerPalette.js"),require("../../../Search/Search.js"),require("../../../Search/components/Listbox.js"),require("../../../Search/components/Paper.js"),require("../../../Search/components/RecentSearches.js"),require("../../../Search/components/Groups.js"),require("../../../Search/components/SelectAllListItem.js"),require("../../../StatusBadge/index.js"),require("../../../Attachment/index.js"),require("../../../EmojiIconButton.js"),require("../../../FileUploadIconButton.js"),require("../../../FilePreview/index.js"),require("../../../FailedFileUploading.js"),require("../../../UserMention/index.js"),require("../../../CommentsInfo/index.js"),require("../../../CommentInput/index.js"),require("../../../Comment/index.js"),require("../../../CommentLoader.js"),require("../../../AssetNameLabel/AssetStatusBadge.js"),require("../../../AssetEditorV2/components/PrimaryAssetSelect.js"),require("../../../AssetEditorV2/components/SecondaryAssetSelect.js"),require("../../../AssetEditorV2/components/SelectItem.js"),require("../../../AssetEditorV2/components/MultipleAssetsToggle.js"),require("../../../AssetEditorV2/components/PrimaryAssetSelectV2.js"),require("../../../EChartsWrapper/EChartsWrapper.js"),require("../../../AssetsMultipleSelector/AssetsMultipleSelector.js"),require("@material-ui/icons/Close"),require("@material-ui/icons/GetApp"),require("../../../GoogleDocsViewer/index.js"),require("../../../NewDocumentViewer/effects/useFileContent.js"),require("../../../NewDocumentViewer/styles.js"),require("../../../FilesLoaderV2/styles.js"),require("../../../FilesDropzone/styles.js"),require("../../../FilesProcessor/styles.js"),require("../../../Hint/styles.js"),require("@babel/runtime/helpers/taggedTemplateLiteral"),require("fparser"),require("../../../Formula/useFormulaStyles.js"),require("../../../Formula/RootXIcon.js"),require("../../../Formula/FormulaTextEditor.js"),require("../../../Formula/CloseSuggestion.js"),require("../../../Formula/SuggestionsMenu.js");var C=j(e),A=j(r),f=j(t),S=j(i);var h=function(e){var r=e.open,t=e.isTableLoading,i=e.companyId,j=e.subjectWellId,S=e.sortBy,h=e.setSortBy,v=e.sortDirection,b=e.setSortDirection,g=e.columnsWithDict,V=e.wells,D=e.metricsKeys,I=e.setMetricsKeys,T=e.handleChangeOffsetWell,x=e.handleChangeAllOffsetWells,y=e.handleAddRemoveAssets,P=e.isWellNameExpand,B=e.setIsWellNameExpand,W=e.isHScrollMoved,L=e.onHideAdvancedSearch,E=e.isViewOnly,M=e.isLastWell,R=e.contentRef,F=e.offsetWellsContainerRef,w=e.isLimitedOffsetWells,H=e.maxOffsetWellNumber,k=e.wellSections,O=e.setActiveWellId,N=e.viewType,G=e.isWDUser,U=e.taScores,z=s.useState([]),_=A.default(z,2),K=_[0],Z=_[1],X=s.useRef(),J=s.useRef();s.useEffect((function(){var e=n.uniqBy(V,"id");Z(e)}),[V,V.length]);var Q=s.useMemo((function(){return n.uniqBy(K,"id")}),[K]),Y=s.useMemo((function(){var e=Q.filter((function(e){return e.checked}));return[e,Q.length!==e.length&&e.length&&!w,e.length===Q.length||w]}),[Q,w]),$=A.default(Y,3),ee=$[0],re=$[1],se=$[2],te=s.useMemo((function(){return a.getIsImperial()}),[]),ie=s.useMemo((function(){return(D||[]).reduce((function(e,r){return e.concat(u.METRICS_LIST.filter((function(e){return e.key===r})))}),[])}),[D]),ne=s.useMemo((function(){return P?u.EXPANDED_WELL_NAME_WIDTH-58:u.TableColumns[0].width[D.length]-58}),[P,null==D?void 0:D.length]),oe=s.useMemo((function(){var e=P?u.SEARCH_CELL_EXPAND_WIDTH:u.SEARCH_CELL_DEFAULT_WIDTH;return U.length&&(e+=function(e,r){var s=e.find((function(e){return e.key===r}));return(null==s?void 0:s.width)||0}(g,u.ColumnType.taScore)),"".concat(e,"px")}),[P,U]);s.useEffect((function(){if(N!==u.ViewType.mobile&&X.current&&J.current){var e=X.current.querySelector(".".concat(d.wellNameFixed));W?e.classList.remove(d.noShadow):e.classList.add(d.noShadow);var r=J.current.querySelectorAll(".".concat(d.wellNameFixed));W?r.forEach((function(e){return e.classList.remove(d.noShadow)})):r.forEach((function(e){return e.classList.add(d.noShadow)}))}}),[W,J.current,X.current,K]);var ue=s.useCallback((function(e,r){h(e),b(r)}),[]),ae=s.useCallback((function(e){I(e)}),[]),ce=s.useCallback((function(e,r){I((function(s){return s.map((function(s){return s===e?r:s}))}))}),[]);return g&&Q?q.jsxs("div",{className:d.offsetWellsTable,children:[q.jsx("div",{className:d.stickyTable,children:q.jsx(o.Table,{"aria-label":"ows table head",innerRef:X,children:q.jsx(o.TableHead,{children:q.jsx(l,{open:r,columnsWithDict:g,metricsKeys:D,sortBy:S,sortDirection:v,indeterminate:re,isAllWellsSelected:se,onChangeSort:ue,onChangeMetricsKeys:ae,onUpdateMetricsKey:ce,isWellNameExpand:P,setIsWellNameExpand:B,handleChangeAllOffsetWells:x,wellNameStyle:d.wellNameFixed,isViewOnly:E,isImperial:te,contentRef:R,viewType:N,isTaColumnVisible:!!U.length})})})}),!E&&q.jsxs("div",{className:f.default(d.searchCellWrapper,C.default({},d.searchCellWrapperExpanded,P)),style:{"--dynamic-search-wrapper-width":oe},children:[q.jsx("div",{className:d.searchCell,children:q.jsx(c.AdvancedSearch,{companyId:i,subjectWellId:j,onChange:y,selectedWellIds:ee.map((function(e){return e.id})),onHideAdvancedSearch:L})}),!!P&&q.jsx("div",{className:d.searchCellEmpty})]}),q.jsx(o.Table,{"aria-label":"ows table body",innerRef:J,className:d.bodyTable,children:q.jsxs(o.TableBody,{children:[q.jsx(o.TableRow,{children:q.jsx(o.TableCell,{className:f.default(d.topShadow,C.default({},d.viewOnlyShadow,E))})}),Q.map((function(e){return q.jsx(p,{columnsWithDict:g,subjectWellId:j,data:e,metricsKeys:D,metricsColumns:ie,handleChangeOffsetWell:T,isWellNameExpand:P,wellNameStyle:d.wellNameFixed,wellNameWidth:ne,isViewOnly:E,isImperial:te,isLimitedOffsetWells:w,maxOffsetWellNumber:H,wellSections:k,setActiveWellId:O,viewType:N,isWDUser:G,taScores:U,offsetWellsContainerRef:F},e.id)})),!M&&q.jsx(o.TableRow,{children:q.jsx(o.TableCell,{className:d.loadingCell,children:q.jsx("span",{children:"Loading..."})})}),q.jsx(o.TableRow,{children:q.jsx(o.TableCell,{className:d.bottomShadow})})]})}),t&&q.jsx("div",{className:d.loadingContainer,children:q.jsx(m,{fullscreen:!1,className:d.loadingIndicator})})]}):null};h.propTypes={open:S.default.bool.isRequired,isTableLoading:S.default.bool.isRequired,companyId:S.default.number.isRequired,subjectWellId:S.default.number.isRequired,sortBy:S.default.string.isRequired,setSortBy:S.default.func.isRequired,sortDirection:S.default.string.isRequired,setSortDirection:S.default.func.isRequired,columnsWithDict:S.default.arrayOf(S.default.shape({})).isRequired,wells:S.default.arrayOf(S.default.shape({})).isRequired,metricsKeys:S.default.arrayOf(S.default.string).isRequired,setMetricsKeys:S.default.func.isRequired,handleChangeOffsetWell:S.default.func.isRequired,handleChangeAllOffsetWells:S.default.func.isRequired,handleAddRemoveAssets:S.default.func.isRequired,setIsWellNameExpand:S.default.func.isRequired,isWellNameExpand:S.default.bool.isRequired,isHScrollMoved:S.default.bool.isRequired,onHideAdvancedSearch:S.default.func.isRequired,isViewOnly:S.default.bool.isRequired,isLastWell:S.default.bool.isRequired,isLimitedOffsetWells:S.default.bool.isRequired,maxOffsetWellNumber:S.default.number.isRequired,contentRef:S.default.shape({}).isRequired,offsetWellsContainerRef:S.default.shape({}).isRequired,wellSections:S.default.arrayOf(S.default.shape({})).isRequired,setActiveWellId:S.default.func.isRequired,viewType:S.default.string.isRequired,isWDUser:S.default.bool.isRequired,taScores:S.default.arrayOf(S.default.shape({})).isRequired};var v=s.memo(h);module.exports=v;
2
2
  //# sourceMappingURL=OffsetWellsTable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OffsetWellsTable.js","sources":["../../../../../../src/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js"],"sourcesContent":["import { useState, memo, useCallback, useEffect, useMemo, useRef, Fragment } from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport { uniqBy } from 'lodash';\nimport { Table, TableBody, TableCell, TableHead, TableRow } from '@material-ui/core';\n\nimport {\n ColumnType,\n EXPANDED_WELL_NAME_WIDTH,\n SEARCH_CELL_DEFAULT_WIDTH,\n SEARCH_CELL_EXPAND_WIDTH,\n METRICS_LIST,\n ROW_HEIGHT,\n TableColumns,\n ViewType,\n} from '../../constants';\nimport { getIsImperial } from '../../utils/unitSystem';\n\nimport { AdvancedSearch } from './AdvancedSearch';\nimport OffsetWellsTableHead from './OffsetWellsTableHead';\nimport OffsetWellsTableRow from './OffsetWellsTableRow';\n\nimport styles from './OffsetWellsTable.module.css';\n\nimport { LoadingIndicator } from '~/components';\n\nconst FLYING_DURATION = 200;\nconst DIFF_WELL_NAME_WIDTH = 58;\n\nconst getWellsForAnimation = (wells, moveRowCount, oldPosition, newPosition) => {\n const newWells = wells.map((well, index) => {\n const isMoveRow =\n (oldPosition < index && index <= newPosition) ||\n (newPosition <= index && index < oldPosition);\n\n if (index === oldPosition) {\n return { ...well, moveTo: moveRowCount };\n } else if (isMoveRow) {\n return {\n ...well,\n moveTo: oldPosition < newPosition ? -1 : 1,\n delayTime: Math.abs(index - oldPosition),\n };\n }\n return well;\n });\n return newWells;\n};\n\nconst getParametersForAnimation = (wells, newCheckedWellId, updatedWells, contentRef) => {\n const oldPosition = wells.findIndex(well => newCheckedWellId === well.id);\n let newPosition = updatedWells.findIndex(well => newCheckedWellId === well.id);\n if (newPosition === -1) newPosition = updatedWells.length;\n const showRowNumber = Math.round((contentRef.current?.clientHeight - 145) / ROW_HEIGHT + 1);\n const diffPosition = newPosition - oldPosition;\n if (Math.abs(diffPosition) > showRowNumber) {\n newPosition = oldPosition + showRowNumber * Math.sign(diffPosition);\n }\n\n const moveRowCount = newPosition - oldPosition;\n const newFlyDuration = (Math.abs(moveRowCount) * 0.4 + 2) * FLYING_DURATION;\n const newEmptyRowIndex = Math.min(oldPosition, newPosition);\n const newEmptyRowSize = (Math.abs(moveRowCount) + 1) * ROW_HEIGHT;\n\n return [\n oldPosition,\n newPosition,\n moveRowCount,\n newFlyDuration,\n newEmptyRowIndex,\n newEmptyRowSize,\n ];\n};\n\nfunction getCellWidth(columnsWithDict, key) {\n const cell = columnsWithDict.find(item => item.key === key);\n return cell?.width || 0;\n}\n\nconst OffsetWellsTable = ({\n open,\n isTableLoading,\n companyId,\n subjectWellId,\n sortBy,\n setSortBy,\n sortDirection,\n setSortDirection,\n columnsWithDict,\n wells: updatedWells,\n metricsKeys,\n setMetricsKeys,\n handleChangeOffsetWell,\n handleChangeAllOffsetWells,\n handleAddRemoveAssets,\n isWellNameExpand,\n setIsWellNameExpand,\n isHScrollMoved,\n onHideAdvancedSearch,\n isViewOnly,\n isLastWell,\n contentRef,\n isLimitedOffsetWells,\n maxOffsetWellNumber,\n wellSections,\n setActiveWellId,\n viewType,\n isWDUser,\n taScores,\n}) => {\n const [wells, setWells] = useState([]);\n const [newCheckedWellId, setNewCheckedWellId] = useState(null);\n const [emptyRowIndex, setEmptyRowIndex] = useState(0);\n const [emptyRowSize, setEmptyRowSize] = useState(0);\n /** @type {ReturnType<typeof useRef<HTMLElement>>} */\n const headTableRef = useRef();\n /** @type {ReturnType<typeof useRef<HTMLElement>>} */\n const bodyTableRef = useRef();\n const flyDurationRef = useRef();\n\n useEffect(() => {\n const uniqOldWells = uniqBy(wells, 'id');\n const uniqUpdatedWells = uniqBy(updatedWells, 'id');\n\n if (!newCheckedWellId) {\n setWells(uniqUpdatedWells);\n setEmptyRowSize(0);\n return;\n }\n\n const [\n oldPosition,\n newPosition,\n moveRowCount,\n newFlyDuration,\n newEmptyRowIndex,\n newEmptyRowSize,\n ] = getParametersForAnimation(uniqOldWells, newCheckedWellId, uniqUpdatedWells, contentRef);\n\n flyDurationRef.current = newFlyDuration;\n\n if (newPosition === oldPosition) {\n setWells(uniqUpdatedWells);\n } else {\n setEmptyRowIndex(newEmptyRowIndex);\n setEmptyRowSize(newEmptyRowSize);\n const newWells = getWellsForAnimation(uniqOldWells, moveRowCount, oldPosition, newPosition);\n setWells(newWells);\n\n setTimeout(() => {\n setWells(uniqUpdatedWells);\n setEmptyRowSize(0);\n setNewCheckedWellId(null);\n }, newFlyDuration);\n }\n }, [updatedWells, updatedWells.length]);\n\n const uniqWells = useMemo(() => uniqBy(wells, 'id'), [wells]);\n\n const [selectedWells, indeterminate, isAllWellsSelected] = useMemo(() => {\n const selectedWells = uniqWells.filter(well => well.checked);\n const indeterminate =\n uniqWells.length !== selectedWells.length && selectedWells.length && !isLimitedOffsetWells;\n const isAllWellsSelected = selectedWells.length === uniqWells.length || isLimitedOffsetWells;\n\n return [selectedWells, indeterminate, isAllWellsSelected];\n }, [uniqWells, isLimitedOffsetWells]);\n\n const isImperial = useMemo(() => getIsImperial(), []);\n\n const metricsColumns = useMemo(() => {\n // NOTE: Pay attention to the order of metrics and duplication\n return (metricsKeys || []).reduce(\n (result, key) => result.concat(METRICS_LIST.filter(item => item.key === key)),\n []\n );\n }, [metricsKeys]);\n\n const wellNameWidth = useMemo(() => {\n if (isWellNameExpand) return EXPANDED_WELL_NAME_WIDTH - DIFF_WELL_NAME_WIDTH;\n return TableColumns[0].width[metricsKeys.length] - DIFF_WELL_NAME_WIDTH;\n }, [isWellNameExpand, metricsKeys?.length]);\n\n const searchWrapperWidth = useMemo(() => {\n let initialWidth = isWellNameExpand ? SEARCH_CELL_EXPAND_WIDTH : SEARCH_CELL_DEFAULT_WIDTH;\n if (taScores.length) {\n initialWidth += getCellWidth(columnsWithDict, ColumnType.taScore);\n }\n return `${initialWidth}px`;\n }, [isWellNameExpand, taScores]);\n\n // NOTE: Remove shadow from column\n useEffect(() => {\n if (viewType === ViewType.mobile || !headTableRef.current || !bodyTableRef.current) return;\n // Head table\n const headColumn = headTableRef.current.querySelector(`.${styles.wellNameFixed}`);\n if (!isHScrollMoved) {\n headColumn.classList.add(styles.noShadow);\n } else {\n headColumn.classList.remove(styles.noShadow);\n }\n\n // Body table\n const bodyColumns = bodyTableRef.current.querySelectorAll(`.${styles.wellNameFixed}`);\n if (!isHScrollMoved) {\n bodyColumns.forEach(th => th.classList.add(styles.noShadow));\n } else {\n bodyColumns.forEach(th => th.classList.remove(styles.noShadow));\n }\n }, [isHScrollMoved, bodyTableRef.current, headTableRef.current, wells]);\n\n const handleChangeSortBy = useCallback((sortKey, sortDirection) => {\n setSortBy(sortKey);\n setSortDirection(sortDirection);\n }, []);\n\n const handleChangeMetricsKeys = useCallback(newMetricsKeys => {\n setMetricsKeys(newMetricsKeys);\n }, []);\n\n const handleUpdateMetricsKey = useCallback((key, newValue) => {\n setMetricsKeys(prevKeys => prevKeys.map(item => (item === key ? newValue : item)));\n }, []);\n\n if (!columnsWithDict || !uniqWells) return null;\n\n return (\n <div className={styles.offsetWellsTable}>\n <div className={styles.stickyTable}>\n <Table aria-label=\"ows table head\" innerRef={headTableRef}>\n <TableHead>\n <OffsetWellsTableHead\n open={open}\n columnsWithDict={columnsWithDict}\n metricsKeys={metricsKeys}\n sortBy={sortBy}\n sortDirection={sortDirection}\n indeterminate={indeterminate}\n isAllWellsSelected={isAllWellsSelected}\n onChangeSort={handleChangeSortBy}\n onChangeMetricsKeys={handleChangeMetricsKeys}\n onUpdateMetricsKey={handleUpdateMetricsKey}\n isWellNameExpand={isWellNameExpand}\n setIsWellNameExpand={setIsWellNameExpand}\n handleChangeAllOffsetWells={handleChangeAllOffsetWells}\n wellNameStyle={styles.wellNameFixed}\n isViewOnly={isViewOnly}\n isImperial={isImperial}\n contentRef={contentRef}\n viewType={viewType}\n isTaColumnVisible={!!taScores.length}\n />\n </TableHead>\n </Table>\n </div>\n\n {!isViewOnly && (\n <div\n className={classNames(styles.searchCellWrapper, {\n [styles.searchCellWrapperExpanded]: isWellNameExpand,\n })}\n style={{ '--dynamic-search-wrapper-width': searchWrapperWidth }}\n >\n <div className={styles.searchCell}>\n <AdvancedSearch\n companyId={companyId}\n subjectWellId={subjectWellId}\n onChange={handleAddRemoveAssets}\n selectedWellIds={selectedWells.map(({ id }) => id)}\n onHideAdvancedSearch={onHideAdvancedSearch}\n />\n </div>\n {!!isWellNameExpand && <div className={styles.searchCellEmpty} />}\n </div>\n )}\n\n <Table aria-label=\"ows table body\" innerRef={bodyTableRef} className={styles.bodyTable}>\n <TableBody>\n <TableRow>\n <TableCell\n className={classNames(styles.topShadow, { [styles.viewOnlyShadow]: isViewOnly })}\n />\n </TableRow>\n {uniqWells.map((well, index) => (\n <Fragment key={well.id}>\n <TableRow>\n {newCheckedWellId && emptyRowSize > 0 && index === emptyRowIndex && (\n <TableCell style={{ height: emptyRowSize }} />\n )}\n </TableRow>\n <OffsetWellsTableRow\n columnsWithDict={columnsWithDict}\n subjectWellId={subjectWellId}\n data={well}\n metricsKeys={metricsKeys}\n metricsColumns={metricsColumns}\n handleChangeOffsetWell={handleChangeOffsetWell}\n isWellNameExpand={isWellNameExpand}\n wellNameStyle={styles.wellNameFixed}\n wellNameWidth={wellNameWidth}\n isViewOnly={isViewOnly}\n isImperial={isImperial}\n isLimitedOffsetWells={isLimitedOffsetWells}\n maxOffsetWellNumber={maxOffsetWellNumber}\n wellSections={wellSections}\n setActiveWellId={setActiveWellId}\n viewType={viewType}\n newCheckedWellId={well?.moveTo ? newCheckedWellId : 0}\n setNewCheckedWellId={setNewCheckedWellId}\n index={well?.moveTo ? index : 0}\n flyDuration={well?.moveTo ? flyDurationRef.current : 0}\n isWDUser={isWDUser}\n taScores={taScores}\n />\n </Fragment>\n ))}\n {!isLastWell && (\n <TableRow>\n <TableCell className={styles.loadingCell}>\n <span>Loading...</span>\n </TableCell>\n </TableRow>\n )}\n <TableRow>\n <TableCell className={styles.bottomShadow} />\n </TableRow>\n </TableBody>\n </Table>\n\n {isTableLoading && (\n <div className={styles.loadingContainer}>\n <LoadingIndicator fullscreen={false} className={styles.loadingIndicator} />\n </div>\n )}\n </div>\n );\n};\n\nOffsetWellsTable.propTypes = {\n open: PropTypes.bool.isRequired,\n isTableLoading: PropTypes.bool.isRequired,\n companyId: PropTypes.number.isRequired,\n subjectWellId: PropTypes.number.isRequired,\n sortBy: PropTypes.string.isRequired,\n setSortBy: PropTypes.func.isRequired,\n sortDirection: PropTypes.string.isRequired,\n setSortDirection: PropTypes.func.isRequired,\n columnsWithDict: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\n wells: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\n metricsKeys: PropTypes.arrayOf(PropTypes.string).isRequired,\n setMetricsKeys: PropTypes.func.isRequired,\n handleChangeOffsetWell: PropTypes.func.isRequired,\n handleChangeAllOffsetWells: PropTypes.func.isRequired,\n handleAddRemoveAssets: PropTypes.func.isRequired,\n setIsWellNameExpand: PropTypes.func.isRequired,\n isWellNameExpand: PropTypes.bool.isRequired,\n isHScrollMoved: PropTypes.bool.isRequired,\n onHideAdvancedSearch: PropTypes.func.isRequired,\n isViewOnly: PropTypes.bool.isRequired,\n isLastWell: PropTypes.bool.isRequired,\n isLimitedOffsetWells: PropTypes.bool.isRequired,\n maxOffsetWellNumber: PropTypes.number.isRequired,\n contentRef: PropTypes.shape({}).isRequired,\n wellSections: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\n setActiveWellId: PropTypes.func.isRequired,\n viewType: PropTypes.string.isRequired,\n isWDUser: PropTypes.bool.isRequired,\n taScores: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\n};\n\nexport default memo(OffsetWellsTable);\n"],"names":["OffsetWellsTable","_ref","open","isTableLoading","companyId","subjectWellId","sortBy","setSortBy","sortDirection","setSortDirection","columnsWithDict","updatedWells","wells","metricsKeys","setMetricsKeys","handleChangeOffsetWell","handleChangeAllOffsetWells","handleAddRemoveAssets","isWellNameExpand","setIsWellNameExpand","isHScrollMoved","onHideAdvancedSearch","isViewOnly","isLastWell","contentRef","isLimitedOffsetWells","maxOffsetWellNumber","wellSections","setActiveWellId","viewType","isWDUser","taScores","useState","_useState2","_slicedToArray","_useState","setWells","_useState4","_useState3","newCheckedWellId","setNewCheckedWellId","_useState6","_useState5","emptyRowIndex","setEmptyRowIndex","_useState8","_useState7","emptyRowSize","setEmptyRowSize","headTableRef","useRef","bodyTableRef","flyDurationRef","useEffect","uniqOldWells","uniqBy","uniqUpdatedWells","getParametersForAnimation","_contentRef$current","oldPosition","findIndex","well","id","newPosition","length","showRowNumber","Math","round","current","clientHeight","ROW_HEIGHT","diffPosition","abs","sign","moveRowCount","min","_getParametersForAnim2","_getParametersForAnim","newFlyDuration","newEmptyRowIndex","newEmptyRowSize","newWells","map","index","isMoveRow","_objectSpread","moveTo","delayTime","getWellsForAnimation","setTimeout","uniqWells","useMemo","selectedWells","filter","checked","_useMemo2","_useMemo","indeterminate","isAllWellsSelected","isImperial","getIsImperial","metricsColumns","reduce","result","key","concat","METRICS_LIST","item","wellNameWidth","EXPANDED_WELL_NAME_WIDTH","TableColumns","width","searchWrapperWidth","initialWidth","SEARCH_CELL_EXPAND_WIDTH","SEARCH_CELL_DEFAULT_WIDTH","cell","find","getCellWidth","ColumnType","taScore","ViewType","mobile","headColumn","querySelector","styles","wellNameFixed","classList","remove","noShadow","add","bodyColumns","querySelectorAll","forEach","th","handleChangeSortBy","useCallback","sortKey","handleChangeMetricsKeys","newMetricsKeys","handleUpdateMetricsKey","newValue","prevKeys","_jsxs","className","offsetWellsTable","children","_jsx","jsx","stickyTable","Table","innerRef","TableHead","OffsetWellsTableHead","onChangeSort","onChangeMetricsKeys","onUpdateMetricsKey","wellNameStyle","isTaColumnVisible","jsxs","classNames","searchCellWrapper","searchCellWrapperExpanded","style","searchCell","AdvancedSearch","onChange","selectedWellIds","_ref2","searchCellEmpty","bodyTable","TableBody","TableRow","TableCell","topShadow","_defineProperty","viewOnlyShadow","Fragment","height","OffsetWellsTableRow","data","flyDuration","loadingCell","bottomShadow","loadingContainer","LoadingIndicator","fullscreen","loadingIndicator","propTypes","PropTypes","bool","isRequired","number","string","func","arrayOf","shape","memo"],"mappings":"s/wBA+EA,IAAMA,EAAmB,SA8BnBC,GAAA,IA7BJC,IAAAA,KACAC,IAAAA,eACAC,IAAAA,UACAC,IAAAA,cACAC,IAAAA,OACAC,IAAAA,UACAC,IAAAA,cACAC,IAAAA,iBACAC,IAAAA,gBACOC,IAAPC,MACAC,IAAAA,YACAC,IAAAA,eACAC,IAAAA,uBACAC,IAAAA,2BACAC,IAAAA,sBACAC,IAAAA,iBACAC,IAAAA,oBACAC,IAAAA,eACAC,IAAAA,qBACAC,IAAAA,WACAC,IAAAA,WACAC,IAAAA,WACAC,IAAAA,qBACAC,IAAAA,oBACAC,IAAAA,aACAC,IAAAA,gBACAC,IAAAA,SACAC,IAAAA,SACAC,IAAAA,SAE0BC,EAAAA,EAAQA,SAAC,IAAGC,EAAAC,EAAAA,QAAAC,EAAA,GAA/BvB,EAAKqB,EAAA,GAAEG,EAAQH,EAAA,GAC0BD,EAAAA,EAAQA,SAAC,MAAKK,EAAAH,EAAAA,QAAAI,EAAA,GAAvDC,EAAgBF,EAAA,GAAEG,EAAmBH,EAAA,GACFL,EAAAA,EAAQA,SAAC,GAAES,GAAAP,EAAAA,QAAAQ,EAAA,GAA9CC,GAAaF,GAAA,GAAEG,GAAgBH,GAAA,GACET,GAAAA,EAAQA,SAAC,GAAEa,GAAAX,EAAAA,QAAAY,GAAA,GAA5CC,GAAYF,GAAA,GAAEG,GAAeH,GAAA,GAE9BI,GAAeC,EAAAA,SAEfC,GAAeD,EAAAA,SACfE,GAAiBF,EAAAA,SAEvBG,EAAAA,WAAU,WACR,IAAMC,EAAeC,EAAAA,OAAO3C,EAAO,MAC7B4C,EAAmBD,EAAAA,OAAO5C,EAAc,MAE9C,IAAK4B,EAGH,OAFAH,EAASoB,QACTR,GAAgB,GAIlB,IAOIS,EAxF0B,SAAC7C,EAAO2B,EAAkB5B,EAAca,GAAe,IAAAkC,EACjFC,EAAc/C,EAAMgD,WAAU,SAAAC,GAAI,OAAItB,IAAqBsB,EAAKC,MAClEC,EAAcpD,EAAaiD,WAAU,SAAAC,GAAI,OAAItB,IAAqBsB,EAAKC,OACtD,IAAjBC,IAAoBA,EAAcpD,EAAaqD,QACnD,IAAMC,EAAgBC,KAAKC,QAAO,UAAA3C,EAAW4C,eAAX,IAAAV,OAAA,EAAAA,EAAoBW,cAAe,KAAOC,EAAAA,WAAa,GACnFC,EAAeR,EAAcJ,EAC/BO,KAAKM,IAAID,GAAgBN,IAC3BF,EAAcJ,EAAcM,EAAgBC,KAAKO,KAAKF,IAGxD,IAAMG,EAAeX,EAAcJ,EAKnC,MAAO,CACLA,EACAI,EACAW,EAzCoB,KAkC2B,GAAzBR,KAAKM,IAAIE,GAAsB,GAC9BR,KAAKS,IAAIhB,EAAaI,IACtBG,KAAKM,IAAIE,GAAgB,GAAKJ,aAUzD,CAiEQb,CAA0BH,EAAcf,EAAkBiB,EAAkBhC,GAAWoD,EAAA1C,EAAAA,QAAA2C,EAAA,GANzFlB,EAAWiB,EAAA,GACXb,EAAWa,EAAA,GACXF,EAAYE,EAAA,GACZE,EAAcF,EAAA,GACdG,EAAgBH,EAAA,GAChBI,EAAeJ,EAAA,GAKjB,GAFAxB,GAAegB,QAAUU,EAErBf,IAAgBJ,EAClBvB,EAASoB,OACJ,CACLZ,GAAiBmC,GACjB/B,GAAgBgC,GAChB,IAAMC,EArHiB,SAACrE,EAAO8D,EAAcf,EAAaI,GAiB9D,OAhBiBnD,EAAMsE,KAAI,SAACrB,EAAMsB,GAChC,IAAMC,EACHzB,EAAcwB,GAASA,GAASpB,GAChCA,GAAeoB,GAASA,EAAQxB,EAEnC,OAAIwB,IAAUxB,EACZ0B,EAAAA,EAAA,CAAA,EAAYxB,GAAI,CAAA,EAAA,CAAEyB,OAAQZ,IACjBU,EACTC,EAAAA,EAAA,CAAA,EACKxB,GAAI,CAAA,EAAA,CACPyB,OAAQ3B,EAAcI,GAAe,EAAI,EACzCwB,UAAWrB,KAAKM,IAAIW,EAAQxB,KAGzBE,CACT,GAEF,CAmGuB2B,CAAqBlC,EAAcoB,EAAcf,EAAaI,GAC/E3B,EAAS6C,GAETQ,YAAW,WACTrD,EAASoB,GACTR,GAAgB,GAChBR,EAAoB,KACrB,GAAEsC,EACL,CACD,GAAE,CAACnE,EAAcA,EAAaqD,SAE/B,IAAM0B,GAAYC,EAAAA,SAAQ,WAAA,OAAMpC,EAAMA,OAAC3C,EAAO,QAAO,CAACA,IAEK+E,GAAAA,EAAAA,SAAQ,WACjE,IAAMC,EAAgBF,GAAUG,QAAO,SAAAhC,GAAI,OAAIA,EAAKiC,WAKpD,MAAO,CAACF,EAHNF,GAAU1B,SAAW4B,EAAc5B,QAAU4B,EAAc5B,SAAWvC,EAC7CmE,EAAc5B,SAAW0B,GAAU1B,QAAUvC,EAG1E,GAAG,CAACiE,GAAWjE,IAAsBsE,GAAA7D,EAAAA,QAAA8D,GAAA,GAP9BJ,GAAaG,GAAA,GAAEE,GAAaF,GAAA,GAAEG,GAAkBH,GAAA,GASjDI,GAAaR,EAAAA,SAAQ,WAAA,OAAMS,EAAaA,eAAE,GAAE,IAE5CC,GAAiBV,EAAAA,SAAQ,WAE7B,OAAQ9E,GAAe,IAAIyF,QACzB,SAACC,EAAQC,GAAG,OAAKD,EAAOE,OAAOC,EAAYA,aAACb,QAAO,SAAAc,GAAI,OAAIA,EAAKH,MAAQA,CAAG,IAAE,GAC7E,GAEJ,GAAG,CAAC3F,IAEE+F,GAAgBjB,EAAAA,SAAQ,WAC5B,OAAIzE,EAAyB2F,EAAwBA,yBAxJ5B,GAyJlBC,EAAAA,aAAa,GAAGC,MAAMlG,EAAYmD,QAzJhB,EA0J1B,GAAE,CAAC9C,EAAkBL,aAAW,EAAXA,EAAamD,SAE7BgD,GAAqBrB,EAAAA,SAAQ,WACjC,IAAIsB,EAAe/F,EAAmBgG,EAAwBA,yBAAGC,4BAIjE,OAHIpF,EAASiC,SACXiD,GAhHN,SAAsBvG,EAAiB8F,GACrC,IAAMY,EAAO1G,EAAgB2G,MAAK,SAAAV,GAAI,OAAIA,EAAKH,MAAQA,KACvD,OAAOY,eAAAA,EAAML,QAAS,CACxB,CA6GsBO,CAAa5G,EAAiB6G,EAAUA,WAACC,UAE3D,GAAAf,OAAUQ,EAAY,KACxB,GAAG,CAAC/F,EAAkBa,IAGtBsB,EAAAA,WAAU,WACR,GAAIxB,IAAa4F,EAAQA,SAACC,QAAWzE,GAAamB,SAAYjB,GAAaiB,QAA3E,CAEA,IAAMuD,EAAa1E,GAAamB,QAAQwD,cAAkBC,IAAAA,OAAAA,EAAOC,gBAC5D1G,EAGHuG,EAAWI,UAAUC,OAAOH,EAAOI,UAFnCN,EAAWI,UAAUG,IAAIL,EAAOI,UAMlC,IAAME,EAAchF,GAAaiB,QAAQgE,iBAAqBP,IAAAA,OAAAA,EAAOC,gBAChE1G,EAGH+G,EAAYE,SAAQ,SAAAC,GAAE,OAAIA,EAAGP,UAAUC,OAAOH,EAAOI,aAFrDE,EAAYE,SAAQ,SAAAC,GAAE,OAAIA,EAAGP,UAAUG,IAAIL,EAAOI,YAZgC,CAgBtF,GAAG,CAAC7G,EAAgB+B,GAAaiB,QAASnB,GAAamB,QAASxD,IAEhE,IAAM2H,GAAqBC,EAAAA,aAAY,SAACC,EAASjI,GAC/CD,EAAUkI,GACVhI,EAAiBD,EAClB,GAAE,IAEGkI,GAA0BF,eAAY,SAAAG,GAC1C7H,EAAe6H,EAChB,GAAE,IAEGC,GAAyBJ,EAAAA,aAAY,SAAChC,EAAKqC,GAC/C/H,GAAe,SAAAgI,GAAQ,OAAIA,EAAS5D,KAAI,SAAAyB,GAAI,OAAKA,IAASH,EAAMqC,EAAWlC,CAAI,MAChF,GAAE,IAEH,OAAKjG,GAAoBgF,GAGvBqD,EAAAA,KAAA,MAAA,CAAKC,UAAWnB,EAAOoB,iBAAiBC,SACtC,CAAAC,EAAAC,IAAA,MAAA,CAAKJ,UAAWnB,EAAOwB,YAAYH,SACjCC,MAACG,QAAK,CAAC,aAAW,iBAAiBC,SAAUtG,GAAaiG,SACxDC,MAACK,YAAS,CAAAN,SACRC,MAACM,EAAoB,CACnBvJ,KAAMA,EACNQ,gBAAiBA,EACjBG,YAAaA,EACbP,OAAQA,EACRE,cAAeA,EACfyF,cAAeA,GACfC,mBAAoBA,GACpBwD,aAAcnB,GACdoB,oBAAqBjB,GACrBkB,mBAAoBhB,GACpB1H,iBAAkBA,EAClBC,oBAAqBA,EACrBH,2BAA4BA,EAC5B6I,cAAehC,EAAOC,cACtBxG,WAAYA,EACZ6E,WAAYA,GACZ3E,WAAYA,EACZK,SAAUA,EACViI,oBAAqB/H,EAASiC,gBAMpC1C,GACAyH,EAAAgB,KAAA,MAAA,CACEf,UAAWgB,EAAAA,QAAWnC,EAAOoC,kBAC1BpC,EAAAA,QAAAA,CAAAA,EAAAA,EAAOqC,0BAA4BhJ,IAEtCiJ,MAAO,CAAE,iCAAkCnD,IAAqBkC,SAEhE,CAAAC,EAAAC,IAAA,MAAA,CAAKJ,UAAWnB,EAAOuC,WAAWlB,SAChCC,MAACkB,iBAAc,CACbjK,UAAWA,EACXC,cAAeA,EACfiK,SAAUrJ,EACVsJ,gBAAiB3E,GAAcV,KAAI,SAAAsF,GAAK,SAAF1G,MACtCzC,qBAAsBA,QAGvBH,GAAoBiI,EAAAA,IAAA,MAAA,CAAKH,UAAWnB,EAAO4C,qBAIlDtB,MAACG,QAAK,CAAC,aAAW,iBAAiBC,SAAUpG,GAAc6F,UAAWnB,EAAO6C,UAAUxB,SACrFH,OAAC4B,YAAS,CAAAzB,SAAA,CACRC,MAACyB,WAAQ,CAAA1B,SACPC,MAAC0B,YAAS,CACR7B,UAAWgB,EAAAA,QAAWnC,EAAOiD,UAASC,EAAAA,QAAA,CAAA,EAAKlD,EAAOmD,eAAiB1J,QAGtEoE,GAAUR,KAAI,SAACrB,EAAMsB,GAAK,OACzB4D,EAAAA,KAACkC,EAAAA,SAAQ,CAAA/B,SAAA,CACPC,MAACyB,WAAQ,CAAA1B,SACN3G,GAAoBQ,GAAe,GAAKoC,IAAUxC,IACjDwG,EAAAC,IAACyB,YAAS,CAACV,MAAO,CAAEe,OAAQnI,QAGhCoG,MAACgC,EAAmB,CAClBzK,gBAAiBA,EACjBL,cAAeA,EACf+K,KAAMvH,EACNhD,YAAaA,EACbwF,eAAgBA,GAChBtF,uBAAwBA,EACxBG,iBAAkBA,EAClB2I,cAAehC,EAAOC,cACtBlB,cAAeA,GACftF,WAAYA,EACZ6E,WAAYA,GACZ1E,qBAAsBA,EACtBC,oBAAqBA,EACrBC,aAAcA,EACdC,gBAAiBA,EACjBC,SAAUA,EACVU,iBAAkBsB,SAAAA,EAAMyB,OAAS/C,EAAmB,EACpDC,oBAAqBA,EACrB2C,MAAOtB,SAAAA,EAAMyB,OAASH,EAAQ,EAC9BkG,YAAaxH,SAAAA,EAAMyB,OAASlC,GAAegB,QAAU,EACrDtC,SAAUA,EACVC,SAAUA,MA5BC8B,EAAKC,GA+BrB,KACCvC,GACA4H,MAACyB,WAAQ,CAAA1B,SACPC,MAAC0B,YAAS,CAAC7B,UAAWnB,EAAOyD,YAAYpC,SACvCC,EAAAC,IAAA,OAAA,CAAAF,SAAA,mBAINC,MAACyB,WAAQ,CAAA1B,SACPC,MAAC0B,YAAS,CAAC7B,UAAWnB,EAAO0D,sBAKlCpL,GACCgJ,EAAAC,IAAA,MAAA,CAAKJ,UAAWnB,EAAO2D,iBAAiBtC,SACtCC,MAACsC,EAAgB,CAACC,YAAY,EAAO1C,UAAWnB,EAAO8D,wBA3GpB,IAgH7C,EAEA3L,EAAiB4L,UAAY,CAC3B1L,KAAM2L,EAAAA,QAAUC,KAAKC,WACrB5L,eAAgB0L,EAAAA,QAAUC,KAAKC,WAC/B3L,UAAWyL,EAAAA,QAAUG,OAAOD,WAC5B1L,cAAewL,EAAAA,QAAUG,OAAOD,WAChCzL,OAAQuL,EAAAA,QAAUI,OAAOF,WACzBxL,UAAWsL,EAAAA,QAAUK,KAAKH,WAC1BvL,cAAeqL,EAAAA,QAAUI,OAAOF,WAChCtL,iBAAkBoL,EAAAA,QAAUK,KAAKH,WACjCrL,gBAAiBmL,EAAS,QAACM,QAAQN,EAAAA,QAAUO,MAAM,CAAA,IAAKL,WACxDnL,MAAOiL,EAAS,QAACM,QAAQN,EAAAA,QAAUO,MAAM,CAAA,IAAKL,WAC9ClL,YAAagL,EAAAA,QAAUM,QAAQN,EAAAA,QAAUI,QAAQF,WACjDjL,eAAgB+K,EAAAA,QAAUK,KAAKH,WAC/BhL,uBAAwB8K,EAAAA,QAAUK,KAAKH,WACvC/K,2BAA4B6K,EAAAA,QAAUK,KAAKH,WAC3C9K,sBAAuB4K,EAAAA,QAAUK,KAAKH,WACtC5K,oBAAqB0K,EAAAA,QAAUK,KAAKH,WACpC7K,iBAAkB2K,EAAAA,QAAUC,KAAKC,WACjC3K,eAAgByK,EAAAA,QAAUC,KAAKC,WAC/B1K,qBAAsBwK,EAAAA,QAAUK,KAAKH,WACrCzK,WAAYuK,EAAAA,QAAUC,KAAKC,WAC3BxK,WAAYsK,EAAAA,QAAUC,KAAKC,WAC3BtK,qBAAsBoK,EAAAA,QAAUC,KAAKC,WACrCrK,oBAAqBmK,EAAAA,QAAUG,OAAOD,WACtCvK,WAAYqK,EAAS,QAACO,MAAM,CAAA,GAAIL,WAChCpK,aAAckK,EAAS,QAACM,QAAQN,EAAAA,QAAUO,MAAM,CAAA,IAAKL,WACrDnK,gBAAiBiK,EAAAA,QAAUK,KAAKH,WAChClK,SAAUgK,EAAAA,QAAUI,OAAOF,WAC3BjK,SAAU+J,EAAAA,QAAUC,KAAKC,WACzBhK,SAAU8J,EAAS,QAACM,QAAQN,EAAAA,QAAUO,MAAM,CAAA,IAAKL,YAGnD,IAAeM,EAAAA,EAAAA,KAAKrM"}
1
+ {"version":3,"file":"OffsetWellsTable.js","sources":["../../../../../../src/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js"],"sourcesContent":["import { useState, memo, useCallback, useEffect, useMemo, useRef } from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport { uniqBy } from 'lodash';\nimport { Table, TableBody, TableCell, TableHead, TableRow } from '@material-ui/core';\n\nimport {\n ColumnType,\n EXPANDED_WELL_NAME_WIDTH,\n SEARCH_CELL_DEFAULT_WIDTH,\n SEARCH_CELL_EXPAND_WIDTH,\n METRICS_LIST,\n TableColumns,\n ViewType,\n} from '../../constants';\nimport { getIsImperial } from '../../utils/unitSystem';\n\nimport { AdvancedSearch } from './AdvancedSearch';\nimport OffsetWellsTableHead from './OffsetWellsTableHead';\nimport OffsetWellsTableRow from './OffsetWellsTableRow';\n\nimport styles from './OffsetWellsTable.module.css';\n\nimport { LoadingIndicator } from '~/components';\n\nconst DIFF_WELL_NAME_WIDTH = 58;\n\nfunction getCellWidth(columnsWithDict, key) {\n const cell = columnsWithDict.find(item => item.key === key);\n return cell?.width || 0;\n}\n\nconst OffsetWellsTable = ({\n open,\n isTableLoading,\n companyId,\n subjectWellId,\n sortBy,\n setSortBy,\n sortDirection,\n setSortDirection,\n columnsWithDict,\n wells: updatedWells,\n metricsKeys,\n setMetricsKeys,\n handleChangeOffsetWell,\n handleChangeAllOffsetWells,\n handleAddRemoveAssets,\n isWellNameExpand,\n setIsWellNameExpand,\n isHScrollMoved,\n onHideAdvancedSearch,\n isViewOnly,\n isLastWell,\n contentRef,\n offsetWellsContainerRef,\n isLimitedOffsetWells,\n maxOffsetWellNumber,\n wellSections,\n setActiveWellId,\n viewType,\n isWDUser,\n taScores,\n}) => {\n const [wells, setWells] = useState([]);\n /** @type {ReturnType<typeof useRef<HTMLElement>>} */\n const headTableRef = useRef();\n /** @type {ReturnType<typeof useRef<HTMLElement>>} */\n const bodyTableRef = useRef();\n\n useEffect(() => {\n const uniqUpdatedWells = uniqBy(updatedWells, 'id');\n setWells(uniqUpdatedWells);\n }, [updatedWells, updatedWells.length]);\n\n const uniqWells = useMemo(() => uniqBy(wells, 'id'), [wells]);\n\n const [selectedWells, indeterminate, isAllWellsSelected] = useMemo(() => {\n const selectedWells = uniqWells.filter(well => well.checked);\n const indeterminate =\n uniqWells.length !== selectedWells.length && selectedWells.length && !isLimitedOffsetWells;\n const isAllWellsSelected = selectedWells.length === uniqWells.length || isLimitedOffsetWells;\n\n return [selectedWells, indeterminate, isAllWellsSelected];\n }, [uniqWells, isLimitedOffsetWells]);\n\n const isImperial = useMemo(() => getIsImperial(), []);\n\n const metricsColumns = useMemo(() => {\n // NOTE: Pay attention to the order of metrics and duplication\n return (metricsKeys || []).reduce(\n (result, key) => result.concat(METRICS_LIST.filter(item => item.key === key)),\n []\n );\n }, [metricsKeys]);\n\n const wellNameWidth = useMemo(() => {\n if (isWellNameExpand) return EXPANDED_WELL_NAME_WIDTH - DIFF_WELL_NAME_WIDTH;\n return TableColumns[0].width[metricsKeys.length] - DIFF_WELL_NAME_WIDTH;\n }, [isWellNameExpand, metricsKeys?.length]);\n\n const searchWrapperWidth = useMemo(() => {\n let initialWidth = isWellNameExpand ? SEARCH_CELL_EXPAND_WIDTH : SEARCH_CELL_DEFAULT_WIDTH;\n if (taScores.length) {\n initialWidth += getCellWidth(columnsWithDict, ColumnType.taScore);\n }\n return `${initialWidth}px`;\n }, [isWellNameExpand, taScores]);\n\n // NOTE: Remove shadow from column\n useEffect(() => {\n if (viewType === ViewType.mobile || !headTableRef.current || !bodyTableRef.current) return;\n // Head table\n const headColumn = headTableRef.current.querySelector(`.${styles.wellNameFixed}`);\n if (!isHScrollMoved) {\n headColumn.classList.add(styles.noShadow);\n } else {\n headColumn.classList.remove(styles.noShadow);\n }\n\n // Body table\n const bodyColumns = bodyTableRef.current.querySelectorAll(`.${styles.wellNameFixed}`);\n if (!isHScrollMoved) {\n bodyColumns.forEach(th => th.classList.add(styles.noShadow));\n } else {\n bodyColumns.forEach(th => th.classList.remove(styles.noShadow));\n }\n }, [isHScrollMoved, bodyTableRef.current, headTableRef.current, wells]);\n\n const handleChangeSortBy = useCallback((sortKey, sortDirection) => {\n setSortBy(sortKey);\n setSortDirection(sortDirection);\n }, []);\n\n const handleChangeMetricsKeys = useCallback(newMetricsKeys => {\n setMetricsKeys(newMetricsKeys);\n }, []);\n\n const handleUpdateMetricsKey = useCallback((key, newValue) => {\n setMetricsKeys(prevKeys => prevKeys.map(item => (item === key ? newValue : item)));\n }, []);\n\n if (!columnsWithDict || !uniqWells) return null;\n\n return (\n <div className={styles.offsetWellsTable}>\n <div className={styles.stickyTable}>\n <Table aria-label=\"ows table head\" innerRef={headTableRef}>\n <TableHead>\n <OffsetWellsTableHead\n open={open}\n columnsWithDict={columnsWithDict}\n metricsKeys={metricsKeys}\n sortBy={sortBy}\n sortDirection={sortDirection}\n indeterminate={indeterminate}\n isAllWellsSelected={isAllWellsSelected}\n onChangeSort={handleChangeSortBy}\n onChangeMetricsKeys={handleChangeMetricsKeys}\n onUpdateMetricsKey={handleUpdateMetricsKey}\n isWellNameExpand={isWellNameExpand}\n setIsWellNameExpand={setIsWellNameExpand}\n handleChangeAllOffsetWells={handleChangeAllOffsetWells}\n wellNameStyle={styles.wellNameFixed}\n isViewOnly={isViewOnly}\n isImperial={isImperial}\n contentRef={contentRef}\n viewType={viewType}\n isTaColumnVisible={!!taScores.length}\n />\n </TableHead>\n </Table>\n </div>\n\n {!isViewOnly && (\n <div\n className={classNames(styles.searchCellWrapper, {\n [styles.searchCellWrapperExpanded]: isWellNameExpand,\n })}\n style={{ '--dynamic-search-wrapper-width': searchWrapperWidth }}\n >\n <div className={styles.searchCell}>\n <AdvancedSearch\n companyId={companyId}\n subjectWellId={subjectWellId}\n onChange={handleAddRemoveAssets}\n selectedWellIds={selectedWells.map(({ id }) => id)}\n onHideAdvancedSearch={onHideAdvancedSearch}\n />\n </div>\n {!!isWellNameExpand && <div className={styles.searchCellEmpty} />}\n </div>\n )}\n\n <Table aria-label=\"ows table body\" innerRef={bodyTableRef} className={styles.bodyTable}>\n <TableBody>\n <TableRow>\n <TableCell\n className={classNames(styles.topShadow, { [styles.viewOnlyShadow]: isViewOnly })}\n />\n </TableRow>\n {uniqWells.map(well => (\n <OffsetWellsTableRow\n key={well.id}\n columnsWithDict={columnsWithDict}\n subjectWellId={subjectWellId}\n data={well}\n metricsKeys={metricsKeys}\n metricsColumns={metricsColumns}\n handleChangeOffsetWell={handleChangeOffsetWell}\n isWellNameExpand={isWellNameExpand}\n wellNameStyle={styles.wellNameFixed}\n wellNameWidth={wellNameWidth}\n isViewOnly={isViewOnly}\n isImperial={isImperial}\n isLimitedOffsetWells={isLimitedOffsetWells}\n maxOffsetWellNumber={maxOffsetWellNumber}\n wellSections={wellSections}\n setActiveWellId={setActiveWellId}\n viewType={viewType}\n isWDUser={isWDUser}\n taScores={taScores}\n offsetWellsContainerRef={offsetWellsContainerRef}\n />\n ))}\n {!isLastWell && (\n <TableRow>\n <TableCell className={styles.loadingCell}>\n <span>Loading...</span>\n </TableCell>\n </TableRow>\n )}\n <TableRow>\n <TableCell className={styles.bottomShadow} />\n </TableRow>\n </TableBody>\n </Table>\n\n {isTableLoading && (\n <div className={styles.loadingContainer}>\n <LoadingIndicator fullscreen={false} className={styles.loadingIndicator} />\n </div>\n )}\n </div>\n );\n};\n\nOffsetWellsTable.propTypes = {\n open: PropTypes.bool.isRequired,\n isTableLoading: PropTypes.bool.isRequired,\n companyId: PropTypes.number.isRequired,\n subjectWellId: PropTypes.number.isRequired,\n sortBy: PropTypes.string.isRequired,\n setSortBy: PropTypes.func.isRequired,\n sortDirection: PropTypes.string.isRequired,\n setSortDirection: PropTypes.func.isRequired,\n columnsWithDict: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\n wells: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\n metricsKeys: PropTypes.arrayOf(PropTypes.string).isRequired,\n setMetricsKeys: PropTypes.func.isRequired,\n handleChangeOffsetWell: PropTypes.func.isRequired,\n handleChangeAllOffsetWells: PropTypes.func.isRequired,\n handleAddRemoveAssets: PropTypes.func.isRequired,\n setIsWellNameExpand: PropTypes.func.isRequired,\n isWellNameExpand: PropTypes.bool.isRequired,\n isHScrollMoved: PropTypes.bool.isRequired,\n onHideAdvancedSearch: PropTypes.func.isRequired,\n isViewOnly: PropTypes.bool.isRequired,\n isLastWell: PropTypes.bool.isRequired,\n isLimitedOffsetWells: PropTypes.bool.isRequired,\n maxOffsetWellNumber: PropTypes.number.isRequired,\n contentRef: PropTypes.shape({}).isRequired,\n offsetWellsContainerRef: PropTypes.shape({}).isRequired,\n wellSections: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\n setActiveWellId: PropTypes.func.isRequired,\n viewType: PropTypes.string.isRequired,\n isWDUser: PropTypes.bool.isRequired,\n taScores: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\n};\n\nexport default memo(OffsetWellsTable);\n"],"names":["OffsetWellsTable","_ref","open","isTableLoading","companyId","subjectWellId","sortBy","setSortBy","sortDirection","setSortDirection","columnsWithDict","updatedWells","wells","metricsKeys","setMetricsKeys","handleChangeOffsetWell","handleChangeAllOffsetWells","handleAddRemoveAssets","isWellNameExpand","setIsWellNameExpand","isHScrollMoved","onHideAdvancedSearch","isViewOnly","isLastWell","contentRef","offsetWellsContainerRef","isLimitedOffsetWells","maxOffsetWellNumber","wellSections","setActiveWellId","viewType","isWDUser","taScores","useState","_useState2","_slicedToArray","_useState","setWells","headTableRef","useRef","bodyTableRef","useEffect","uniqUpdatedWells","uniqBy","length","uniqWells","useMemo","selectedWells","filter","well","checked","_useMemo2","_useMemo","indeterminate","isAllWellsSelected","isImperial","getIsImperial","metricsColumns","reduce","result","key","concat","METRICS_LIST","item","wellNameWidth","EXPANDED_WELL_NAME_WIDTH","TableColumns","width","searchWrapperWidth","initialWidth","SEARCH_CELL_EXPAND_WIDTH","SEARCH_CELL_DEFAULT_WIDTH","cell","find","getCellWidth","ColumnType","taScore","ViewType","mobile","current","headColumn","querySelector","styles","wellNameFixed","classList","remove","noShadow","add","bodyColumns","querySelectorAll","forEach","th","handleChangeSortBy","useCallback","sortKey","handleChangeMetricsKeys","newMetricsKeys","handleUpdateMetricsKey","newValue","prevKeys","map","_jsxs","className","offsetWellsTable","children","_jsx","jsx","stickyTable","Table","innerRef","TableHead","OffsetWellsTableHead","onChangeSort","onChangeMetricsKeys","onUpdateMetricsKey","wellNameStyle","isTaColumnVisible","jsxs","classNames","searchCellWrapper","searchCellWrapperExpanded","style","searchCell","AdvancedSearch","onChange","selectedWellIds","_ref2","id","searchCellEmpty","bodyTable","TableBody","TableRow","TableCell","topShadow","_defineProperty","viewOnlyShadow","OffsetWellsTableRow","data","loadingCell","bottomShadow","loadingContainer","LoadingIndicator","fullscreen","loadingIndicator","propTypes","PropTypes","bool","isRequired","number","string","func","arrayOf","shape","memo"],"mappings":"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"}