@corva/ui 3.39.0-5 → 3.39.0-7

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 (180) hide show
  1. package/cjs-bundle/components/AddComment/Popover.js +1 -1
  2. package/cjs-bundle/components/AddComment/Popover.js.map +1 -1
  3. package/cjs-bundle/components/AddComment/components/Content.js +1 -1
  4. package/cjs-bundle/components/AddComment/components/Content.js.map +1 -1
  5. package/cjs-bundle/components/BICOffsetPickerDialog/index.js +1 -1
  6. package/cjs-bundle/components/BICOffsetPickerDialog/index.js.map +1 -1
  7. package/cjs-bundle/components/Casing/CasingTableV2/components/CasingJoints/Editor.js +1 -1
  8. package/cjs-bundle/components/Casing/CasingTableV2/components/CasingJoints/Editor.js.map +1 -1
  9. package/cjs-bundle/components/Casing/CasingTableV2/components/Component.js +1 -1
  10. package/cjs-bundle/components/Casing/CasingTableV2/components/Component.js.map +1 -1
  11. package/cjs-bundle/components/Casing/CasingTableV2/components/DrillPipe/Editor.js +1 -1
  12. package/cjs-bundle/components/Casing/CasingTableV2/components/DrillPipe/Editor.js.map +1 -1
  13. package/cjs-bundle/components/CollapsableSidebar.js +1 -1
  14. package/cjs-bundle/components/CollapsableSidebar.js.map +1 -1
  15. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
  16. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
  17. package/cjs-bundle/components/DocumentViewer/DocumentViewer.js +1 -1
  18. package/cjs-bundle/components/DocumentViewer/DocumentViewer.js.map +1 -1
  19. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js +1 -1
  20. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js.map +1 -1
  21. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js +1 -1
  22. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js.map +1 -1
  23. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Component.js +1 -1
  24. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Component.js.map +1 -1
  25. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js +1 -1
  26. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js.map +1 -1
  27. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js +1 -1
  28. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js.map +1 -1
  29. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js +1 -1
  30. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js.map +1 -1
  31. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js +1 -1
  32. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js.map +1 -1
  33. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js +1 -1
  34. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js.map +1 -1
  35. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js +1 -1
  36. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js.map +1 -1
  37. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js +1 -1
  38. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js.map +1 -1
  39. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js +1 -1
  40. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js.map +1 -1
  41. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js +1 -1
  42. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js.map +1 -1
  43. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js +1 -1
  44. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js.map +1 -1
  45. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js +1 -1
  46. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js.map +1 -1
  47. package/cjs-bundle/components/FeedItem/FeedItem.js +1 -1
  48. package/cjs-bundle/components/FeedItem/FeedItem.js.map +1 -1
  49. package/cjs-bundle/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
  50. package/cjs-bundle/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -1
  51. package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
  52. package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -1
  53. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js +1 -1
  54. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js.map +1 -1
  55. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/index.js +1 -1
  56. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/index.js.map +1 -1
  57. package/cjs-bundle/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js +1 -1
  58. package/cjs-bundle/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js.map +1 -1
  59. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js +1 -1
  60. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js.map +1 -1
  61. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/index.js +1 -1
  62. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/index.js.map +1 -1
  63. package/cjs-bundle/components/OffsetWellPickerV3/components/WellHubView/index.js +1 -1
  64. package/cjs-bundle/components/OffsetWellPickerV3/components/WellHubView/index.js.map +1 -1
  65. package/cjs-bundle/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js +1 -1
  66. package/cjs-bundle/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js.map +1 -1
  67. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.js +1 -1
  68. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.js.map +1 -1
  69. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/Filter.js +1 -1
  70. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/Filter.js.map +1 -1
  71. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSettingMenu.js +1 -1
  72. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSettingMenu.js.map +1 -1
  73. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js +1 -1
  74. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js.map +1 -1
  75. package/cjs-bundle/components/OffsetWellPickerV4/components/Toolbar/Toolbar.js +1 -1
  76. package/cjs-bundle/components/OffsetWellPickerV4/components/Toolbar/Toolbar.js.map +1 -1
  77. package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
  78. package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
  79. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
  80. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js.map +1 -1
  81. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.js +1 -1
  82. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.js.map +1 -1
  83. package/cjs-bundle/components/PadOffsetsPicker/StagesSelector.js +1 -1
  84. package/cjs-bundle/components/PadOffsetsPicker/StagesSelector.js.map +1 -1
  85. package/cjs-bundle/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js +1 -1
  86. package/cjs-bundle/componentsV2/WellArchivedMessage/WellArchivedMessage.js +1 -1
  87. package/cjs-bundle/utils/metrics/metricsConfig.js +1 -1
  88. package/cjs-bundle/utils/metrics/metricsConfig.js.map +1 -1
  89. package/components/AddComment/Popover.js +1 -1
  90. package/components/AddComment/Popover.js.map +1 -1
  91. package/components/AddComment/components/Content.js +1 -1
  92. package/components/AddComment/components/Content.js.map +1 -1
  93. package/components/BICOffsetPickerDialog/index.js +1 -1
  94. package/components/BICOffsetPickerDialog/index.js.map +1 -1
  95. package/components/Casing/CasingTableV2/components/CasingJoints/Editor.js +1 -1
  96. package/components/Casing/CasingTableV2/components/CasingJoints/Editor.js.map +1 -1
  97. package/components/Casing/CasingTableV2/components/Component.js +1 -1
  98. package/components/Casing/CasingTableV2/components/Component.js.map +1 -1
  99. package/components/Casing/CasingTableV2/components/DrillPipe/Editor.js +1 -1
  100. package/components/Casing/CasingTableV2/components/DrillPipe/Editor.js.map +1 -1
  101. package/components/CollapsableSidebar.js +1 -1
  102. package/components/CollapsableSidebar.js.map +1 -1
  103. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.d.ts.map +1 -1
  104. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
  105. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
  106. package/components/DocumentViewer/DocumentViewer.js +1 -1
  107. package/components/DocumentViewer/DocumentViewer.js.map +1 -1
  108. package/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js +1 -1
  109. package/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js.map +1 -1
  110. package/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js +1 -1
  111. package/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js.map +1 -1
  112. package/components/Drillstring/BHAComponentsTable/components/Component.js +1 -1
  113. package/components/Drillstring/BHAComponentsTable/components/Component.js.map +1 -1
  114. package/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js +1 -1
  115. package/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js.map +1 -1
  116. package/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js +1 -1
  117. package/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js.map +1 -1
  118. package/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js +1 -1
  119. package/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js.map +1 -1
  120. package/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js +1 -1
  121. package/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js.map +1 -1
  122. package/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js +1 -1
  123. package/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js.map +1 -1
  124. package/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js +1 -1
  125. package/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js.map +1 -1
  126. package/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js +1 -1
  127. package/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js.map +1 -1
  128. package/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js +1 -1
  129. package/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js.map +1 -1
  130. package/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js +1 -1
  131. package/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js.map +1 -1
  132. package/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js +1 -1
  133. package/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js.map +1 -1
  134. package/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js +1 -1
  135. package/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js.map +1 -1
  136. package/components/FeedItem/FeedItem.js +1 -1
  137. package/components/FeedItem/FeedItem.js.map +1 -1
  138. package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
  139. package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -1
  140. package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
  141. package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -1
  142. package/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js +1 -1
  143. package/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js.map +1 -1
  144. package/components/OffsetWellPickerV3/components/CustomSelectionView/index.js +1 -1
  145. package/components/OffsetWellPickerV3/components/CustomSelectionView/index.js.map +1 -1
  146. package/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js +1 -1
  147. package/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js.map +1 -1
  148. package/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js +1 -1
  149. package/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js.map +1 -1
  150. package/components/OffsetWellPickerV3/components/TabSelection/index.js +1 -1
  151. package/components/OffsetWellPickerV3/components/TabSelection/index.js.map +1 -1
  152. package/components/OffsetWellPickerV3/components/WellHubView/index.js +1 -1
  153. package/components/OffsetWellPickerV3/components/WellHubView/index.js.map +1 -1
  154. package/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js +1 -1
  155. package/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js.map +1 -1
  156. package/components/OffsetWellPickerV4/OffsetWellPickerV4.js +1 -1
  157. package/components/OffsetWellPickerV4/OffsetWellPickerV4.js.map +1 -1
  158. package/components/OffsetWellPickerV4/components/Filter/Filter.js +1 -1
  159. package/components/OffsetWellPickerV4/components/Filter/Filter.js.map +1 -1
  160. package/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSettingMenu.js +1 -1
  161. package/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSettingMenu.js.map +1 -1
  162. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js +1 -1
  163. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js.map +1 -1
  164. package/components/OffsetWellPickerV4/components/Toolbar/Toolbar.js +1 -1
  165. package/components/OffsetWellPickerV4/components/Toolbar/Toolbar.js.map +1 -1
  166. package/components/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
  167. package/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
  168. package/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
  169. package/components/OffsetWellPickerV5/components/Filter/Filter.js.map +1 -1
  170. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.js +1 -1
  171. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.js.map +1 -1
  172. package/components/PadOffsetsPicker/StagesSelector.js +1 -1
  173. package/components/PadOffsetsPicker/StagesSelector.js.map +1 -1
  174. package/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js +1 -1
  175. package/componentsV2/WellArchivedMessage/WellArchivedMessage.js +1 -1
  176. package/package.json +1 -1
  177. package/utils/metrics/metricsConfig.d.ts +668 -612
  178. package/utils/metrics/metricsConfig.d.ts.map +1 -1
  179. package/utils/metrics/metricsConfig.js +1 -1
  180. package/utils/metrics/metricsConfig.js.map +1 -1
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("@babel/runtime/helpers/defineProperty"),r=require("@babel/runtime/helpers/toConsumableArray"),s=require("@babel/runtime/helpers/asyncToGenerator"),t=require("@babel/runtime/helpers/slicedToArray"),n=require("@babel/runtime/regenerator"),i=require("react"),o=require("classnames"),c=require("lodash"),l=require("@material-ui/icons"),u=require("./effects/useFetchWells.js"),a=require("./effects/useAdvancedWells.js"),d=require("./effects/useBicWells.js"),p=require("./effects/useCompanyMetricKey.js"),m=require("./effects/useFilterOptions.js"),q=require("./effects/useFilteredWells.js"),j=require("./effects/useSortedWells.js");require("./effects/useAssetsData.js");var f=require("./effects/useTableColumns.js"),C=require("./effects/useCompanyProvider.js"),A=require("./effects/useCompanies.js"),v=require("./utils/apiCalls.js"),S=require("./components/AppHeader/AppHeader.js"),h=require("./components/Toolbar/Toolbar.js"),I=require("./components/Filter/Filter.js"),g=require("./components/Map/WellsMap.js"),V=require("./components/OffsetWellsTable/OffsetWellsTable.js"),b=require("./constants.js"),T=require("./components/OffsetWellsTable/AdvancedSearch/constants.js"),y=require("./utils/index.js"),x=require("./OffsetWellPickerV4.module.css.js");require("../../utils/index.js");var D=require("react/jsx-runtime");require("@material-ui/core/Snackbar"),require("../Notifications/Toast.js"),require("../Notifications/Notifications.scss.js");var E=require("../Notifications/NotificationsContainer.js"),P=require("../../utils/mobileDetect.js"),F=require("../../styles/typography/index.js");require("../../styles/counter/counter.module.scss.js");var W=require("../Typography.js"),B=require("../Modal/Modal.js");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/core"),require("../DevCenter/AppContext.js"),require("../DevCenter/DevCenterRouterContext/DevCenterRouterContext.js"),require("../DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("react-router"),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("../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/Cell.js"),require("../../componentsV2/Header/Header.scss.js"),require("../../componentsV2/Button/Button.js"),require("../../componentsV2/ButtonIcon/ButtonIcon.js"),require("../DevCenter/DevCenterAppContainer/components/IsInsideIsolatedDcAppProvider/IsInsideIsolatedDcAppProvider.js"),require("../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/IsInsideDcFullscreenElemProvider.js"),require("../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/DcFullscreenElemsCoordinatorProvider.js"),require("uuid"),require("../../componentsV2/Tooltip/Tooltip.scss.js"),require("../../componentsV2/Popover/Popover.js"),require("../../componentsV2/Radio/Radio.js"),require("../../componentsV2/RadioAndCheckboxGroup/RadioAndCheckboxGroup.scss.js"),require("../../componentsV2/Checkbox/Checkbox.js"),require("../../componentsV2/TextInput/TextInput.js"),require("../../componentsV2/Label/Label.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/AvatarGroup/AvatarGroup.js"),require("@material-ui/lab"),require("../../componentsV2/ToggleButtons/ToggleButtons.scss.js"),require("../../componentsV2/Paper/Paper.js"),require("../../componentsV2/ModalWindow/ModalWindow.scss.js"),require("@icon-park/react/es/all"),require("../../icons/IconParkProvider.js"),require("../../icons/customIcons/icons/AddMessage.js"),require("../../icons/customIcons/icons/Attention.js"),require("../../icons/customIcons/icons/Collapse.js"),require("../../icons/customIcons/icons/Dashboard.js"),require("../../icons/customIcons/icons/Expand.js"),require("../../icons/customIcons/icons/FolderClosed.js"),require("../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../icons/customIcons/icons/FolderOpened.js"),require("../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../icons/customIcons/icons/LessOrEqual.js"),require("../../icons/customIcons/icons/Search.js"),require("../../icons/customIcons/icons/SearchOne.js"),require("../../icons/customIcons/icons/Wellhub.js"),require("../../icons/customIcons/icons/MultiRuler.js"),require("../../icons/customIcons/icons/Checkbox.js"),require("../../icons/customIcons/icons/CheckboxChecked.js"),require("../../icons/customIcons/icons/CheckboxIndeterminate.js"),require("../../icons/customIcons/icons/Radio.js"),require("../../icons/customIcons/icons/RadioChecked.js"),require("../../icons/customIcons/icons/SimulFrac.js"),require("../../icons/customIcons/icons/ZipperFrac.js"),require("../../icons/customIcons/icons/CautionFilled.js"),require("../../icons/customIcons/icons/MoreApp.js"),require("../../icons/customIcons/icons/Pad.js"),require("../../icons/customIcons/icons/DrilloutUnit.js"),require("../../icons/customIcons/icons/FracFleet.js"),require("../../icons/customIcons/icons/Global.js"),require("../../icons/customIcons/icons/Program.js"),require("../../icons/customIcons/icons/Rig.js"),require("../../icons/customIcons/icons/Well.js"),require("../../icons/customIcons/icons/Gap.js"),require("../../icons/customIcons/icons/Pin.js"),require("../../icons/customIcons/icons/CloseOneFilled.js"),require("../../icons/customIcons/icons/AttentionFilled.js"),require("../../icons/customIcons/icons/CheckOneFilled.js"),require("../../icons/customIcons/icons/Archive.js"),require("../../icons/customIcons/icons/ArchiveCancel.js"),require("../../icons/customIcons/icons/Unarchive.js"),require("../../icons/customIcons/icons/Archived.js"),require("../../icons/customIcons/icons/InterventionUnit.js"),require("../../icons/customIcons/icons/Lasso.js"),require("../../componentsV2/Modal/Modal.scss.js"),require("../../componentsV2/Menu/Menu.js"),require("../../componentsV2/utils.js"),require("../../componentsV2/Hint/Hint.scss.js"),require("../../componentsV2/Counter/Counter.js"),require("../../componentsV2/BadgeBase/BadgeBase.scss.js"),require("../../componentsV2/BadgeDot/BadgeDot.scss.js"),require("../../componentsV2/LoaderLinear/LoaderLinear.scss.js"),require("../../componentsV2/LoaderLogo/LoaderLogo.constants.js"),require("../../componentsV2/LoaderLogo/LoaderLogo.scss.js"),require("../../componentsV2/Switch/Switch.js"),require("../../componentsV2/Tabs/Tabs.js"),require("../../componentsV2/EmptyState/EmptyState.scss.js"),require("../../componentsV2/FileIcon/FileIcon.js"),require("../../componentsV2/Tag/Tag.js"),require("react-dropzone"),require("../../componentsV2/FilesDropzone/FilesDropzone.scss.js"),require("../../componentsV2/FilesLoader/FilesLoader.scss.js"),require("../../componentsV2/FilesProcessor/FilesProcessor.scss.js"),require("../../componentsV2/Skeleton/Skeleton.scss.js"),require("../../utils/main.js"),require("../../componentsV2/CopyToClipboard/CopyToClipboard.scss.js"),require("../../componentsV2/Stepper/Step/Step.scss.js"),require("../../componentsV2/Stepper/Stepper.scss.js"),require("../../componentsV2/ButtonLive/ButtonLive.js"),require("../../componentsV2/ButtonText/ButtonText.js"),require("../../componentsV2/IndicatorLive/IndicatorLive.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("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");var M=require("../../effects/useGlobalOffsetWellsSync.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("../../utils/getSingleAsset.js"),require("../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorChip/AssetSelectorChip.js"),require("../../componentsV2/AppHeader/V3/AssetSelector/constants.js"),require("../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorSelect/AssetSelectorSelect.scss.js"),require("../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorSelect/loadAssets.js"),require("../../componentsV2/AppHeader/V3/AssetSelector/AssetSelector.scss.js"),require("../../componentsV2/AppHeader/V3/AppTitle/AppTitle.constants.js"),require("../../componentsV2/AppContainer/headerCommon.scss.js"),require("../../componentsV2/AppHeader/V3/AppTitle/AppTitle.scss.js"),require("../../componentsV2/AppHeader/V3/constants.scss.js"),require("@babel/runtime/helpers/typeof"),require("../../componentsV2/AppHeader/V3/SettingsButton/SettingsButton.js"),require("../../componentsV2/AppHeader/V3/SettingsButton/SettingsButton.constants.js"),require("../../componentsV2/AppSettings/AppSettings.js"),require("../../componentsV2/AppSettings/AppSettings.constants.js"),require("../../componentsV2/AppSettings/AppSettingsPinningContext.js"),require("../../componentsV2/AppSizeProvider/AppSizeProvider.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.js"),require("../../componentsV2/Autocomplete/Autocomplete.scss.js"),require("../../componentsV2/Menu/MenuItem/MenuItem.js"),require("../../componentsV2/Autocomplete/AutocompleteListBox.js"),require("../../componentsV2/AppSettingsDivider/AppSettingsDivider.scss.js"),require("../../componentsV2/WellArchivedMessage/WellArchivedMessage.js"),require("../../componentsV2/DatePicker/DatePicker.js"),require("../../componentsV2/DragHandle/DragHandle.js"),require("../../componentsV2/CompletionsOffsetWellPicker/CompletionsOffsetWellPicker.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 O=require("../LoadingIndicator/LoadingIndicator.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");var L=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("../IconButton/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("../OffsetWellPickerV5/OffsetWellPickerV5WithStore.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");var w=require("../Tooltip/Tooltip.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("../../componentsV2/FileIcon/icons/ArchiveFileIcon.js"),require("../../componentsV2/FileIcon/icons/CSVFileIcon.js"),require("../../componentsV2/FileIcon/icons/DocFileIcon.js"),require("../../componentsV2/FileIcon/icons/EDMFileIcon.js"),require("../../componentsV2/FileIcon/icons/ExcelFileIcon.js"),require("../../componentsV2/FileIcon/icons/ImageFileIcon.js"),require("../../componentsV2/FileIcon/icons/JsonFileIcon.js"),require("../../componentsV2/FileIcon/icons/LasFileIcon.js"),require("../../componentsV2/FileIcon/icons/OtherFileIcon.js"),require("../../componentsV2/FileIcon/icons/PdfFileIcon.js"),require("../../componentsV2/FileIcon/icons/PowerPointFileIcon.js"),require("../../componentsV2/FileIcon/icons/TxtFileIcon.js"),require("../../componentsV2/FileIcon/icons/UnknownFileIcon.js"),require("../../componentsV2/FileIcon/icons/VideoFileIcon.js"),require("../../componentsV2/FileIcon/icons/XmlFileIcon.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 k=require("../../utils/notificationToasts.js");function H(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var R=H(e),N=H(r),_=H(s),G=H(t),U=H(n),z=H(o);function K(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 Y(e){for(var r=1;r<arguments.length;r++){var s=null!=arguments[r]?arguments[r]:{};r%2?K(Object(s),!0).forEach((function(r){R.default(e,r,s[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):K(Object(s)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(s,r))}))}return e}var Z="OffsetWellPickerV4";module.exports=function(e){var r,s,t,n=e.open,o=e.isWDUser,H=e.defaultSubjectWell,K=e.currentUser,X=e.offsetSettings,J=e.addWellsUsabilityInfo,Q=e.isViewOnly,$=e.onClose,ee=e.onSave,re=e.maxOffsetSize,se=void 0===re?b.DEFAULT_BIC_OFFSET_SIZE:re,te=e.localMaxOffsetSize,ne=void 0===te?b.DEFAULT_LOCAL_OFFSET_SIZE:te,ie=e.syncAutoEnabled,oe=e.isManualWellsEnabled,ce=void 0!==oe&&oe,le=e.isGlobalMode,ue=void 0!==le&&le,ae=i.useState(null),de=G.default(ae,2),pe=de[0],me=de[1],qe=Math.min(se+1,ne+1,b.MAX_OFFSET_SIZE+1),je=Math.min(Math.max(qe,ne+1),b.MAX_OFFSET_SIZE+1),fe=null==H?void 0:H.asset_id;M.useGlobalOffsetWellsSync(X,ee,je);var Ce=i.useState(null==X?void 0:X.filterExpanded),Ae=G.default(Ce,2),ve=Ae[0],Se=Ae[1],he=i.useState(null==X?void 0:X.mapHidden),Ie=G.default(he,2),ge=Ie[0],Ve=Ie[1],be=+(null==H?void 0:H.companyId)||+(null==K?void 0:K.company_id),Te=fe>0,ye=i.useState((null==X?void 0:X.filters)||{}),xe=G.default(ye,2),De=xe[0],Ee=xe[1],Pe=A.useCompanies({open:n}),Fe=Pe.canViewCompanies,We=Pe.companies,Be=i.useState([]),Me=G.default(Be,2),Oe=Me[0],Le=Me[1],we=i.useState([]),ke=G.default(we,2),He=ke[0],Re=ke[1];i.useEffect((function(){var e=(null==X?void 0:X.selectedWellIds)||[];!n||He.length>0||0===e.length||_.default(U.default.mark((function r(){var s;return U.default.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,v.fetchCompanyIdsByWellIds(e);case 2:s=r.sent,Re(s);case 4:case"end":return r.stop()}}),r)})))()}),[n,null==X?void 0:X.selectedWellIds,He.length]);var Ne=i.useMemo((function(){var e=Oe.map((function(e){return e.companyId})).filter((function(e){return null!=e})),r=He||[];if(!Fe){var s=be?[be]:[];return N.default(new Set([].concat(s,N.default(e),N.default(r))))}var t=De[b.FilterType.company];if(void 0===t){var n=be?[be]:[];return N.default(new Set([].concat(n,N.default(e),N.default(r))))}if(Array.isArray(t)&&0===t.length)return null;var i=N.default(t);return be&&!i.includes(be)&&i.push(be),[].concat(N.default(e),N.default(r)).forEach((function(e){i.includes(e)||i.push(e)})),i}),[De[b.FilterType.company],be,Fe,Oe,He]),_e=i.useState((null==X?void 0:X.wellSection)||b.ALL_SECTION_KEY),Ge=G.default(_e,2),Ue=Ge[0],ze=Ge[1],Ke=i.useRef(!0),Ye=i.useState(null),Ze=G.default(Ye,2),Xe=Ze[0],Je=Ze[1],Qe=i.useState(!0),$e=G.default(Qe,2),er=$e[0],rr=$e[1],sr=i.useRef(!1);i.useEffect((function(){if(!sr.current){var e=(null==X?void 0:X.selectedWellIds)||[];n&&0!==e.length?_.default(U.default.mark((function r(){var s,t;return U.default.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(0!==(s=e.filter((function(e){return!Oe.some((function(r){return r.id===e}))}))).length){r.next=4;break}return sr.current=!0,r.abrupt("return");case 4:return r.next=6,v.fetchWellsByIds(s);case 6:t=r.sent,Le(Xe?function(e){var r=t.find((function(e){return e.id===Xe.id}))?t:t.concat(Xe);return c.uniqBy(e.concat(r),"id")}:function(e){return c.uniqBy(e.concat(t),"id")}),sr.current=!0;case 9:case"end":return r.stop()}}),r)})))():sr.current=!0}}),[n,null==X?void 0:X.selectedWellIds]);var tr=i.useState(!1),nr=G.default(tr,2),ir=nr[0],or=nr[1],cr=i.useState(!1),lr=G.default(cr,2),ur=lr[0],ar=lr[1],dr=i.useRef(),pr=i.useRef(),mr=i.useState(b.ViewType.none),qr=G.default(mr,2),jr=qr[0],fr=qr[1],Cr=i.useRef(),Ar=i.useState(!1),vr=G.default(Ar,2),Sr=vr[0],hr=vr[1],Ir=je<=(null==Oe?void 0:Oe.length),gr=b.TOP_GRADIENT_MAP[jr],Vr=i.useRef(),br=i.useState(!0),Tr=G.default(br,2),yr=Tr[0],xr=Tr[1];i.useEffect((function(){var e,r,s;(n&&Ir&&k.showInfoNotification("App can’t process more than (".concat(je-1,") Offset Wells.")),n)||((null==X||null===(e=X.selectedWellIds)||void 0===e?void 0:e.length)===(null===(r=Vr.current)||void 0===r?void 0:r.length)&&(null==X||null===(s=X.selectedWellIds)||void 0===s?void 0:s.every((function(e){var r;return null===(r=Vr.current)||void 0===r?void 0:r.includes(e)})))||(Ke.current=!0),Vr.current=null==X?void 0:X.selectedWellIds)}),[Ir,n,X]),i.useEffect((function(){function e(){window.innerWidth<=b.SMALL_SCREEN_WIDTH||P.isMobileDetected||P.isNativeDetected?fr(b.ViewType.mobile):window.innerHeight<=b.SMALL_SCREEN_HEIGHT?fr(b.ViewType.small):fr(b.ViewType.normal)}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[n]),i.useEffect((function(){Cr.current&&jr===Cr.current||(Cr.current=jr,jr===b.ViewType.small||jr===b.ViewType.mobile?(Ve(!0),Se(!1)):(Se(!Q&&(null==X?void 0:X.filterExpanded)),Ve(!Q&&(null==X?void 0:X.mapHidden))),Ee((null==X?void 0:X.filters)||{}),ze((null==X?void 0:X.wellSection)||b.ALL_SECTION_KEY))}),[X,Q,jr]);var Dr=u.useFetchWells(Ne,J),Er=G.default(Dr,2),Pr=Er[0],Fr=Er[1],Wr=C.useCompanyProvider(be),Br=G.default(Wr,1)[0],Mr=d.useBicWells(o,K,fe,Pr,ce),Or=G.default(Mr,7),Lr=Or[0],wr=Or[1],kr=Or[2],Hr=Or[3],Rr=Or[4],Nr=Or[5],_r=Or[6];i.useEffect((function(){xr(!0),wr(null),Hr(null)}),[fe]);var Gr=p.useCompanyMetricKey(be,null==X?void 0:X.metricsKeys),Ur=G.default(Gr,2),zr=Ur[0],Kr=Ur[1],Yr=a.useAdvancedWells(be,Pr,Lr,kr,fe,zr,n),Zr=i.useMemo((function(){if(!Yr||null==We||!We.length)return Yr;var e={};return We.forEach((function(r){e[r.id]=r.name})),Yr.map((function(r){return Y(Y({},r),{},{companyName:e[r.companyId]||"Null"})}))}),[Yr,We]),Xr=!Fr&&(null==Zr?void 0:Zr.length)===(null==Pr?void 0:Pr.length);i.useEffect((function(){if(Xr){var e,r=(e=_.default(U.default.mark((function e(){var r,s,t,n,i,o,c,l,u,a;return U.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=void 0===(null==X?void 0:X.isSynced)||(null==X?void 0:X.isSynced),s=!0,!r){e.next=19;break}if(n=kr[b.ALL_SECTION_KEY]||[],i=((null==X?void 0:X.selectedWellIds)||[]).every((function(e){return n.includes(e)})),n.length===(null==X||null===(t=X.selectedWellIds)||void 0===t?void 0:t.length)&&i){e.next=16;break}return e.next=8,y.getCoordinatedWells(n,fe);case 8:o=e.sent,c=o.slice(0,qe+1).map((function(e){return e.id})),c=o.slice(0,ne+1).map((function(e){return e.id})),l=Y(Y({},X),{},{subjectWellId:fe,selectedWellIds:c,offsetWellsLimited:je<=c.length}),u=o.filter((function(e){return c.includes(e.id)})),ee(l,u),e.next=17;break;case 16:s=!1;case 17:e.next=20;break;case 19:s=!1;case 20:if(s){e.next=25;break}return e.next=23,y.getCoordinatedWells((null==X?void 0:X.selectedWellIds)||[],fe);case 23:a=e.sent,ee(X,a);case 25:case"end":return e.stop()}}),e)}))),function(){return e.apply(this,arguments)});ie&&yr&&X&&kr&&(r(),xr(!1))}}),[X,kr,fe,je,ie]);var Jr=m.useFilterOptions(Zr,We,Fe);i.useEffect((function(){if(Zr&&Lr){var e=Zr.find((function(e){return e.id===fe}));if(e){var r=Lr.filter((function(e){return e.value!==b.ALL_SECTION_KEY})).map((function(e){return e.label})),s=Y(Y({},e),r.length>0&&R.default({},b.ColumnType.wellSection,r));Je(s)}else Je(null)}}),[Lr,Zr]);var Qr=f.useTableColumns(zr,Fe),$r=q.useFilteredWells(Zr,De),es=i.useMemo((function(){return $r?c.uniqBy([].concat(N.default(Oe),N.default($r)),"id"):$r}),[$r,Oe]);i.useEffect((function(){if($r&&Xr&&Ke.current){var e=Zr.filter((function(e){return((null==X?void 0:X.selectedWellIds)||[]).includes(e.id)}));Xe&&(e=e.concat(Xe)),Le(c.uniqBy(e,"id")),Ke.current=!1}}),[Zr,$r,null==X?void 0:X.selectedWellIds,Xr]);var rs=j.useSortedWells(Xe,es,Oe,rr),ss=G.default(rs,5),ts=ss[0],ns=ss[1],is=ss[2],os=ss[3],cs=ss[4],ls=i.useCallback((function(e,r,s){var t;t=s===T.SEARCH_CATEGORIES.well.name?r:r.reduce((function(e,r){var s,t=null===(s=Zr.find((function(e){return e.id===r})))||void 0===s?void 0:s.rigName,n=Zr.filter((function(e){return e.rigName===t})).map((function(e){return e.id}));return e.concat(n)}),[]);var n=Zr.filter((function(e){var r=e.id;return t.includes(r)}));e?(n=n.slice(0,Math.min(n.length,je-Oe.length)),Le((function(e){return c.uniqBy(e.concat(n),"id")}))):Le((function(e){return c.uniq(e.filter((function(e){var r=e.id;return!n.find((function(e){return e.id===r}))})))}))}),[Zr,Oe]),us=i.useCallback((function(){ar(!0)}),[]),as=i.useCallback((function(e){Kr(e)}),[]),ds=i.useCallback((function(e,r){Le(r?function(r){return[].concat(N.default(r),[e])}:function(r){return r.filter((function(r){return r.id!==e.id}))})}),[]),ps=i.useCallback((function(e){if(e){var r=Xe?$r.concat(Xe):$r,s=c.sortBy(c.uniqBy(r,"id"),"distance");Le(s.slice(0,je))}else Le(Xe?[Xe]:[])}),[$r,Xe,je]),ms=function(e){if(kr){var r=(null==Zr?void 0:Zr.filter((function(r){var s;return null===(s=kr[e])||void 0===s?void 0:s.includes(r.id)})))||[],s=c.sortBy(r,"distance");Le(s.slice(0,qe))}else Le(Xe?[Xe]:[])},qs=i.useCallback((function(e){ze(e),ms(e)}),[ms]),js=i.useMemo((function(){return Oe.find((function(e){return e.id===fe}))?Oe.length-1:Oe.length}),[Oe,fe]),fs=i.useMemo((function(){if(!kr)return!1;var e=Oe.map((function(e){return e.id})),r=kr[Ue]||[];return Math.min(r.length,qe)===e.length&&e.every((function(e){return r.includes(e)}))}),[kr,Oe,Ue,qe]),Cs=i.useMemo((function(){return!!Br&&b.COMPANY_PROVIDERS_FOR_IDAS.includes(Br)}),[Br]),As=i.useMemo((function(){return Cs?"IDAS generated offsets.":o?"Offset Selection App.":"WellHub."}),[Cs,o]),vs=function(){var e=(Zr||[]).filter((function(e){return((null==X?void 0:X.selectedWellIds)||[]).includes(e.id)}));Xe&&(e=e.concat(Xe)),Le(c.uniqBy(e,"id"));var r=Y(Y({},X),{},{mapHidden:ge,filterExpanded:ve});ee(r),Ee((null==X?void 0:X.filters)||{}),ze((null==X?void 0:X.wellSection)||b.ALL_SECTION_KEY),$()},Ss=er||Fr,hs=i.useMemo((function(){return!!Te&&(!Ss&&(!fs||(!(c.isEmpty(De)||!De[b.FilterType.sideTracks])||Ue!==b.ALL_SECTION_KEY)))}),[Te,fs,De,Ue,Ss]),Is=function(){Ee({}),ze(b.ALL_SECTION_KEY),ms(b.ALL_SECTION_KEY)},gs=!Zr||!Lr||!cs||jr===b.ViewType.none,Vs=i.useState(!1),bs=G.default(Vs,2),Ts=bs[0],ys=bs[1],xs=i.useState(b.ROWS_PER_PAGE),Ds=G.default(xs,2),Es=Ds[0],Ps=Ds[1],Fs=i.useState([]),Ws=G.default(Fs,2),Bs=Ws[0],Ms=Ws[1];i.useEffect((function(){if(cs){var e=cs.slice(0,Es);Ms(e)}}),[cs,Es,Xe]),i.useEffect((function(){Rr===b.RESYNC_STATUS.SUCCEEDED&&Is()}),[kr]);return D.jsxs(B,{open:n,onClose:vs,title:D.jsx(S.AppHeader,{isWDUser:o,viewType:jr,totalCount:null!==(r=null==Zr?void 0:Zr.length)&&void 0!==r?r:0,selectedCount:js,isViewOnly:Q,maxOffsetWellNumber:je,isGlobalMode:ue}),isMobile:jr===b.ViewType.mobile,contentContainerClassName:z.default(x.offsetWellDialog),contentClassName:z.default(x.contentContainer,(s={},R.default(s,x.smallContainer,jr===b.ViewType.small),R.default(s,x.contentContainerMobile,jr===b.ViewType.mobile),s)),actionsClassName:x.modalActions,actions:!Q&&D.jsxs("div",{className:x.actionsWrapper,children:[!gs&&hs?D.jsx(w.Tooltip,{placement:"bottom-start",title:"Reset to Synced Offsets in ".concat(o?"Offset App":"Wellhub"),children:D.jsx("div",{children:D.jsx(L,{"data-testid":"".concat(Z,"_reset"),onClick:Is,color:"primary",startIcon:jr!==b.ViewType.mobile&&D.jsx(l.Replay,{}),classes:jr===b.ViewType.mobile&&{root:x.resetButtonMobile},children:jr!==b.ViewType.mobile?"Reset":D.jsx(l.Replay,{})})})}):Te&&D.jsx("div",{className:jr===b.ViewType.mobile&&x.infoIconContainer,children:jr!==b.ViewType.mobile?D.jsxs(D.Fragment,{children:[D.jsx("span",{className:z.default(F.regular12,F.colors.t6),children:"The offset list is being automatically populated by "}),D.jsx("span",{className:z.default(F.medium12,F.colors.t6),children:As})]}):D.jsx(w.Tooltip,{title:D.jsxs("div",{children:[D.jsx("span",{className:z.default(F.regular12,F.colors.t1),children:"The offset list is being automatically populated by "}),D.jsx("span",{className:z.default(F.medium12,F.colors.t1),children:As})]}),enterTouchDelay:0,leaveTouchDelay:b.LEAVE_TOUCH_DELAY,children:D.jsx(l.InfoOutlined,{className:x.infoIcon})})}),D.jsxs("div",{className:x.buttonGap,children:[D.jsx(L,{"data-testid":"".concat(Z,"_cancel"),onClick:vs,color:"primary",children:"Cancel"}),D.jsxs(L,{"data-testid":"".concat(Z,"_selectedWells"),variant:"contained",color:"primary",onClick:function(){$();var e=Y(Y({},X),{},{companyId:be,subjectWellId:fe,selectedWellIds:Oe.map((function(e){return e.id})),filters:De,metricsKeys:zr,wellSection:Ue,isSynced:fs,mapHidden:ge,filterExpanded:ve,offsetWellsLimited:Ir});ee(e,Oe)},children:["Select (",js,")"]})]})]}),children:[D.jsx(E.NotificationsContainer,{}),gs?D.jsx(O,{fullscreen:!1}):D.jsxs("div",{className:z.default(x.contentWrapper,R.default({},x.contentBlocked,Ss)),ref:dr,children:[jr===b.ViewType.mobile&&D.jsxs("div",{className:z.default(x.countContainer,R.default({},x.countContainerMobile,jr===b.ViewType.mobile)),children:[D.jsx(W.Regular14,{className:x.totalLabel,children:"Total:"}),D.jsx(W.Regular14,{"data-testid":"".concat(Z,"_totalWells"),className:x.countValue,children:Zr.length}),D.jsx(W.Regular14,{className:x.selectedLabel,children:"Selected:"}),D.jsx(W.Regular14,{"data-testid":"".concat(Z,"_selected"),className:x.countValue,children:js}),D.jsx(w.Tooltip,{title:ue?"No global limit. Each app may have its own offset limit.":"App can't process more than (".concat(je-1,") Offset Wells."),placement:"right",children:D.jsx(W.Regular12,{"data-testid":"".concat(Z,"_maxOffsetSize"),className:x.maxOffsetSize,children:ue?"":"/".concat(je-1)})})]}),jr===b.ViewType.normal&&D.jsx(h.Toolbar,{isViewOnly:Q,isXtoProvider:Cs,viewType:jr,filters:De,setFilters:Ee,isFilterExpanded:ve,setIsFilterExpanded:Se,isMapHidden:ge,setIsMapHidden:Ve,resyncStatus:Rr,setResyncStatus:Nr}),Sr&&D.jsx("div",{className:x.topGradient,style:{top:gr}}),D.jsxs("div",{className:z.default(x.content,(t={},R.default(t,x.contentBlocked,Ss),R.default(t,x.contentMobile,jr===b.ViewType.mobile),R.default(t,x.contentiOSMobile,y.getMobileOperatingSystem()===b.IOS_DEVICE),t)),ref:pr,onScroll:function(e){return function(e){e.target&&(ur&&(e.target.scrollLeft=0,ar(!1)),e.target.scrollLeft<=5&&Ts&&ys(!1),e.target.scrollLeft>5&&!Ts&&ys(!0),e.target.scrollTop<=5&&Sr&&hr(!1),e.target.scrollTop>5&&!Sr&&hr(!0),e.target.scrollHeight!==e.target.offsetHeight&&Math.round(e.target.scrollTop+e.target.offsetHeight+2)>=e.target.scrollHeight&&Es<cs.length&&Ps((function(e){return e+b.ROWS_PER_PAGE})))}(e)},children:[jr!==b.ViewType.normal&&D.jsx(h.Toolbar,{isViewOnly:Q,isXtoProvider:Cs,viewType:jr,filters:De,setFilters:Ee,isFilterExpanded:ve,setIsFilterExpanded:Se,isMapHidden:ge,setIsMapHidden:Ve,resyncStatus:Rr,setResyncStatus:Nr}),!ge&&n&&D.jsx(g.WellsMap,{isViewOnly:Q,mapHidden:ge,subjectWell:Xe,offsetWellIds:Oe.map((function(e){return e.id})),wells:es,radius:De[b.FilterType.radius],handleChangeOffsetWell:ds,activeWellId:pe,viewType:jr}),D.jsx(I.Filter,{isHidden:!ve,isWDUser:o,filterOptions:Jr,filters:De,wellSections:Lr,selectedWellSection:Ue,subjectWell:Xe,assetCompanyId:be,onChangeFilters:function(e){rr(!0),setTimeout((function(){return Ee(e)}),0)},onChangeBicWells:qs}),D.jsx(V,{open:n,isTableLoading:Ss,companyId:be,subjectWellId:fe,sortBy:ts,setSortBy:ns,sortDirection:is,setSortDirection:os,columnsWithDict:Qr,wells:Bs,metricsKeys:zr,setMetricsKeys:as,handleChangeOffsetWell:ds,handleChangeAllOffsetWells:ps,handleAddRemoveAssets:ls,isWellNameExpand:ir,setIsWellNameExpand:or,isHScrollMoved:Ts,onHideAdvancedSearch:us,isViewOnly:Q,isLastWell:cs.length<=Es,contentRef:dr,offsetWellsContainerRef:pr,isLimitedOffsetWells:Ir,maxOffsetWellNumber:je,wellSections:Lr,setActiveWellId:me,viewType:jr,isWDUser:o,taScores:_r})]}),Q&&Te&&D.jsxs("div",{className:x.viewOnlyInfoContainer,children:[D.jsx("span",{className:z.default(F.regular12,F.colors.t6),children:"The offset list is being automatically populated by "}),D.jsx("span",{className:z.default(F.medium12,F.colors.t6),children:As})]})]})]})};
1
+ "use strict";var e=require("@babel/runtime/helpers/defineProperty"),r=require("@babel/runtime/helpers/toConsumableArray"),s=require("@babel/runtime/helpers/asyncToGenerator"),t=require("@babel/runtime/helpers/slicedToArray"),n=require("@babel/runtime/regenerator"),i=require("react"),o=require("classnames"),l=require("lodash"),c=require("@material-ui/icons"),u=require("./effects/useFetchWells.js"),a=require("./effects/useAdvancedWells.js"),d=require("./effects/useBicWells.js"),p=require("./effects/useCompanyMetricKey.js"),m=require("./effects/useFilterOptions.js"),q=require("./effects/useFilteredWells.js"),j=require("./effects/useSortedWells.js");require("./effects/useAssetsData.js");var f=require("./effects/useTableColumns.js"),C=require("./effects/useCompanyProvider.js"),A=require("./effects/useCompanies.js"),v=require("./utils/apiCalls.js"),S=require("./components/AppHeader/AppHeader.js"),h=require("./components/Toolbar/Toolbar.js"),g=require("./components/Filter/Filter.js"),I=require("./components/Map/WellsMap.js"),V=require("./components/OffsetWellsTable/OffsetWellsTable.js"),b=require("./constants.js"),T=require("./components/OffsetWellsTable/AdvancedSearch/constants.js"),y=require("./utils/index.js"),x=require("./OffsetWellPickerV4.module.css.js");require("../../utils/index.js");var D=require("react/jsx-runtime");require("@material-ui/core/Snackbar"),require("../Notifications/Toast.js"),require("../Notifications/Notifications.scss.js");var E=require("../Notifications/NotificationsContainer.js"),P=require("../../utils/mobileDetect.js"),F=require("../../styles/typography/index.js");require("../../styles/counter/counter.module.scss.js");var W=require("../Typography.js"),M=require("../Modal/Modal.js");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("../DevCenter/DevCenterAppContainer/DevCenterAppContainer.js"),require("../DevCenter/NavigationBar/NavigationBar.js"),require("../DevCenter/SideBar/SideBar.js"),require("../DevCenter/AppSettingsPopover/AppSettingsPopover.js"),require("../DevCenter/AppFilterPanelLayout/AppFilterPanelLayout.js"),require("../DevCenter/DevCenterRouterContext/DevCenterRouterContext.js"),require("../DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("react-router"),require("../DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js"),require("../DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.js"),require("../DevCenter/AppContext.js"),require("../AssetEditor/index.js"),require("../AssetEditorV2/index.js"),require("../AppVersionsSelect/AppVersionsSelect.js");var O=require("../LoadingIndicator/LoadingIndicator.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("../Annotations/components/AnnotationsList/index.js"),require("../Annotations/components/LastAnnotation/index.js"),require("../Annotations/AnnotationsContext.js"),require("../SlateFormattedText/SlateFormattedText.js"),require("../SlateFormattedText/RenderElements.js"),require("@babel/runtime/helpers/typeof"),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("@material-ui/core"),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/SearchOne.js"),require("../../icons/customIcons/icons/Wellhub.js"),require("../../icons/customIcons/icons/MultiRuler.js"),require("../../icons/customIcons/icons/Checkbox.js"),require("../../icons/customIcons/icons/CheckboxChecked.js"),require("../../icons/customIcons/icons/CheckboxIndeterminate.js"),require("../../icons/customIcons/icons/Radio.js"),require("../../icons/customIcons/icons/RadioChecked.js"),require("../../icons/customIcons/icons/SimulFrac.js"),require("../../icons/customIcons/icons/ZipperFrac.js"),require("../../icons/customIcons/icons/CautionFilled.js"),require("../../icons/customIcons/icons/MoreApp.js"),require("../../icons/customIcons/icons/Pad.js"),require("../../icons/customIcons/icons/DrilloutUnit.js"),require("../../icons/customIcons/icons/FracFleet.js"),require("../../icons/customIcons/icons/Global.js"),require("../../icons/customIcons/icons/Program.js"),require("../../icons/customIcons/icons/Rig.js"),require("../../icons/customIcons/icons/Well.js"),require("../../icons/customIcons/icons/Gap.js"),require("../../icons/customIcons/icons/Pin.js"),require("../../icons/customIcons/icons/CloseOneFilled.js"),require("../../icons/customIcons/icons/AttentionFilled.js"),require("../../icons/customIcons/icons/CheckOneFilled.js"),require("../../icons/customIcons/icons/Archive.js"),require("../../icons/customIcons/icons/ArchiveCancel.js"),require("../../icons/customIcons/icons/Unarchive.js"),require("../../icons/customIcons/icons/Archived.js"),require("../../icons/customIcons/icons/InterventionUnit.js"),require("../../icons/customIcons/icons/Lasso.js"),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("../DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js"),require("../DevCenter/DevCenterAppContainer/components/AppSettingsDialog/components/RemoveAppButton.js"),require("../DevCenter/DevCenterAppContainer/components/AppSettingsDialog/components/SettingsAccordion.js"),require("../Breadcrumbs/index.js"),require("../VirtualizedTable/index.js"),require("../EmptyView/EmptyView.js"),require("../EmptyView/EmptyAppView/EmptyAppView.js");var B=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("../IconButton/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/configuration/constants.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("uuid"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../clients/jsonApi/index.js"),require("../../clients/subscriptions/constants.js"),require("../../clients/subscriptions.v1.js"),require("../../clients/subscriptions/subscriptions-client.factory.js"),require("../../clients/api/apiCore.js"),require("../../clients/constants.js"),require("../../clients/sso/auth0.js"),require("../../clients/sso/oauth2.js"),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("../../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("../BICOffsetPickerDialog/index.js"),require("../OffsetWellButton/OffsetWellButton.js"),require("../OffsetWellPickerV2/OffsetWellPickerDialog.js"),require("../OffsetWellPickerV3/index.js"),require("../OffsetWellChips/Chip.js"),require("../OffsetWellChips/ChipsContainer.js"),require("../OffsetWellPickerV5/OffsetWellPickerV5WithStore.js"),require("querystring"),require("uuid/v1"),require("jsona"),require("../../utils/env.js"),require("../StatusBadge/constants.js"),require("lodash/isEmpty"),require("lodash/sortBy"),require("../../constants/streamSourceType.js"),require("../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js"),require("../../componentsV2/AppCommonsProvider/AppCommonsContext.js");var L=require("../../effects/useGlobalOffsetWellsSync.js");require("../OffsetWellMap/OffsetWellMap.js"),require("../Toaster/Toaster.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("../PadModeSelect/PadModeSelect.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");var w=require("../Tooltip/Tooltip.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("../../componentsV2/FileIcon/icons/ArchiveFileIcon.js"),require("../../componentsV2/FileIcon/icons/CSVFileIcon.js"),require("../../componentsV2/FileIcon/icons/DocFileIcon.js"),require("../../componentsV2/FileIcon/icons/EDMFileIcon.js"),require("../../componentsV2/FileIcon/icons/ExcelFileIcon.js"),require("../../componentsV2/FileIcon/icons/ImageFileIcon.js"),require("../../componentsV2/FileIcon/icons/JsonFileIcon.js"),require("../../componentsV2/FileIcon/icons/LasFileIcon.js"),require("../../componentsV2/FileIcon/icons/OtherFileIcon.js"),require("../../componentsV2/FileIcon/icons/PdfFileIcon.js"),require("../../componentsV2/FileIcon/icons/PowerPointFileIcon.js"),require("../../componentsV2/FileIcon/icons/TxtFileIcon.js"),require("../../componentsV2/FileIcon/icons/UnknownFileIcon.js"),require("../../componentsV2/FileIcon/icons/VideoFileIcon.js"),require("../../componentsV2/FileIcon/icons/XmlFileIcon.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("../HelpCenter/HelpCenterIcon.js"),require("../Autocomplete/Autocomplete.js"),require("../DocumentViewer/DocumentViewer.js"),require("../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/DcFullscreenElemsCoordinatorProvider.js"),require("../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/IsInsideDcFullscreenElemProvider.js"),require("../DevCenter/DevCenterAppContainer/components/AppActions/AppActions.css.js"),require("../DevCenter/DevCenterAppContainer/components/AnnotationsButton/AnnotationsButton.js"),require("../../componentsV2/Text/Text.js"),require("../../componentsV2/Grid/Grid.js"),require("../../componentsV2/Grid/Cell.js"),require("../../componentsV2/Header/Header.scss.js"),require("../../componentsV2/Button/Button.js"),require("../../componentsV2/ButtonIcon/ButtonIcon.js"),require("../DevCenter/DevCenterAppContainer/components/IsInsideIsolatedDcAppProvider/IsInsideIsolatedDcAppProvider.js"),require("../../componentsV2/Tooltip/Tooltip.scss.js"),require("../../componentsV2/Popover/Popover.js"),require("../../componentsV2/Radio/Radio.js"),require("../../componentsV2/RadioAndCheckboxGroup/RadioAndCheckboxGroup.scss.js"),require("../../componentsV2/Checkbox/Checkbox.js"),require("../../componentsV2/TextInput/TextInput.js"),require("../../componentsV2/Label/Label.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/AvatarGroup/AvatarGroup.js"),require("@material-ui/lab"),require("../../componentsV2/ToggleButtons/ToggleButtons.scss.js"),require("../../componentsV2/Paper/Paper.js"),require("../../componentsV2/ModalWindow/ModalWindow.scss.js"),require("../../componentsV2/Modal/Modal.scss.js"),require("../../componentsV2/Menu/Menu.js"),require("../../componentsV2/utils.js"),require("../../componentsV2/Hint/Hint.scss.js"),require("../../componentsV2/Counter/Counter.js"),require("../../componentsV2/BadgeBase/BadgeBase.scss.js"),require("../../componentsV2/BadgeDot/BadgeDot.scss.js"),require("../../componentsV2/LoaderLinear/LoaderLinear.scss.js"),require("../../componentsV2/LoaderLogo/LoaderLogo.constants.js"),require("../../componentsV2/LoaderLogo/LoaderLogo.scss.js"),require("../../componentsV2/Switch/Switch.js"),require("../../componentsV2/Tabs/Tabs.js"),require("../../componentsV2/EmptyState/EmptyState.scss.js"),require("../../componentsV2/FileIcon/FileIcon.js"),require("../../componentsV2/Tag/Tag.js"),require("react-dropzone"),require("../../componentsV2/FilesDropzone/FilesDropzone.scss.js"),require("../../componentsV2/FilesLoader/FilesLoader.scss.js"),require("../../componentsV2/FilesProcessor/FilesProcessor.scss.js"),require("../../componentsV2/Skeleton/Skeleton.scss.js"),require("../../utils/main.js"),require("../../componentsV2/CopyToClipboard/CopyToClipboard.scss.js"),require("../../componentsV2/Stepper/Step/Step.scss.js"),require("../../componentsV2/Stepper/Stepper.scss.js"),require("../../componentsV2/ButtonLive/ButtonLive.js"),require("../../componentsV2/ButtonText/ButtonText.js"),require("../../componentsV2/IndicatorLive/IndicatorLive.js"),require("../../componentsV2/Accordion/Accordion.scss.js"),require("../../componentsV2/Breadcrumbs/Breadcrumbs.scss.js"),require("../../componentsV2/BadgeComment/BadgeComment.js"),require("../../componentsV2/AppContainer/AppContainer.js"),require("../../componentsV2/AppContainer/AppContainer.constants.js"),require("../../componentsV2/AppFooter/AppFooter.js"),require("../../componentsV2/AppHeader/AppHeader.constants.js"),require("../../componentsV2/AppHeader/AppBadge/AppBadge.scss.js"),require("../../componentsV2/AppHeader/AppAssets/utils.js"),require("../../componentsV2/AppHeader/AppAssets/AppAssets.scss.js"),require("../../componentsV2/AppHeader/PadMode/PadMode.scss.js"),require("../../types/shared/Completions.js"),require("../PadModeSelect/types.js"),require("lodash/flatten"),require("lodash/partition"),require("../../componentsV2/PadModeSelect/FracModeLabel/FracModeLabel.js"),require("../../componentsV2/PadModeSelect/FracModeLabel/FracModeLabel.constants.js"),require("../../componentsV2/PadModeSelect/WellStreamActivityStatus/WellStreamActivityStatus.scss.js"),require("../../componentsV2/PadModeSelect/PadModeSelect.constants.js"),require("../../componentsV2/PadModeSelect/PadModeSelect.scss.js"),require("../../componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js"),require("../../componentsV2/UniversalLink/UniversalLink.scss.js"),require("../../componentsV2/AppHeader/V3/AssetChips/AssetChips.scss.js"),require("../../componentsV2/AppHeader/V3/DqStatusIcon/DqStatusIcon.js"),require("../../componentsV2/AppHeader/V3/DqStatusIcon/DqStatusIcon.constants.js"),require("../../componentsV2/AppFooter/DqPopover/DqStatusIcon/DqStatusIcon.js"),require("../../componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.scss.js"),require("../../componentsV2/AppDqPopover/DqAlert/DqAlert.scss.js"),require("../../componentsV2/AppDqPopover/DqAsset/DqAsset.scss.js"),require("../../componentsV2/AppDqPopover/AppDqPopover.scss.js"),require("../../utils/getSingleAsset.js"),require("../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorChip/AssetSelectorChip.js"),require("../../componentsV2/AppHeader/V3/AssetSelector/constants.js"),require("../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorSelect/AssetSelectorSelect.scss.js"),require("../../componentsV2/AppHeader/V3/AssetSelector/AssetSelectorSelect/loadAssets.js"),require("../../componentsV2/AppHeader/V3/AssetSelector/AssetSelector.scss.js"),require("../../componentsV2/AppHeader/V3/AppTitle/AppTitle.constants.js"),require("../../componentsV2/AppContainer/headerCommon.scss.js"),require("../../componentsV2/AppHeader/V3/AppTitle/AppTitle.scss.js"),require("../../componentsV2/AppHeader/V3/constants.scss.js"),require("../../componentsV2/AppHeader/V3/SettingsButton/SettingsButton.js"),require("../../componentsV2/AppHeader/V3/SettingsButton/SettingsButton.constants.js"),require("../../componentsV2/AppSettings/AppSettings.js"),require("../../componentsV2/AppSettings/AppSettings.constants.js"),require("../../componentsV2/AppSettings/AppSettingsPinningContext.js"),require("../../componentsV2/AppSizeProvider/AppSizeProvider.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.js"),require("../../componentsV2/Autocomplete/Autocomplete.scss.js"),require("../../componentsV2/Menu/MenuItem/MenuItem.js"),require("../../componentsV2/Autocomplete/AutocompleteListBox.js"),require("../../componentsV2/AppSettingsDivider/AppSettingsDivider.scss.js"),require("../../componentsV2/WellArchivedMessage/WellArchivedMessage.js"),require("../../componentsV2/DatePicker/DatePicker.js"),require("../../componentsV2/DragHandle/DragHandle.js"),require("../../componentsV2/CompletionsOffsetWellPicker/CompletionsOffsetWellPicker.js"),require("../DevCenter/DevCenterAppContainer/components/FullscreenButton/FullscreenButton.js"),require("../DevCenter/DevCenterAppContainer/components/AppInfoMessage/AppInfoMessage.js"),require("../DevCenter/DevCenterAppContainer/components/DevCenterAppView/DevCenterAppView.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 k=require("../../utils/notificationToasts.js");function H(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var N=H(e),R=H(r),_=H(s),G=H(t),U=H(n),z=H(o);function K(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 Y(e){for(var r=1;r<arguments.length;r++){var s=null!=arguments[r]?arguments[r]:{};r%2?K(Object(s),!0).forEach((function(r){N.default(e,r,s[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):K(Object(s)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(s,r))}))}return e}var Z="OffsetWellPickerV4";module.exports=function(e){var r,s,t,n=e.open,o=e.isWDUser,H=e.defaultSubjectWell,K=e.currentUser,X=e.offsetSettings,J=e.addWellsUsabilityInfo,Q=e.isViewOnly,$=e.onClose,ee=e.onSave,re=e.maxOffsetSize,se=void 0===re?b.DEFAULT_BIC_OFFSET_SIZE:re,te=e.localMaxOffsetSize,ne=void 0===te?b.DEFAULT_LOCAL_OFFSET_SIZE:te,ie=e.syncAutoEnabled,oe=e.isManualWellsEnabled,le=void 0!==oe&&oe,ce=e.isGlobalMode,ue=void 0!==ce&&ce,ae=i.useState(null),de=G.default(ae,2),pe=de[0],me=de[1],qe=Math.min(se+1,ne+1,b.MAX_OFFSET_SIZE+1),je=Math.min(Math.max(qe,ne+1),b.MAX_OFFSET_SIZE+1),fe=null==H?void 0:H.asset_id;L.useGlobalOffsetWellsSync(X,ee,je);var Ce=i.useState(null==X?void 0:X.filterExpanded),Ae=G.default(Ce,2),ve=Ae[0],Se=Ae[1],he=i.useState(null==X?void 0:X.mapHidden),ge=G.default(he,2),Ie=ge[0],Ve=ge[1],be=+(null==H?void 0:H.companyId)||+(null==K?void 0:K.company_id),Te=fe>0,ye=i.useState((null==X?void 0:X.filters)||{}),xe=G.default(ye,2),De=xe[0],Ee=xe[1],Pe=A.useCompanies({open:n}),Fe=Pe.canViewCompanies,We=Pe.companies,Me=i.useState([]),Oe=G.default(Me,2),Be=Oe[0],Le=Oe[1],we=i.useState([]),ke=G.default(we,2),He=ke[0],Ne=ke[1];i.useEffect((function(){var e=(null==X?void 0:X.selectedWellIds)||[];!n||He.length>0||0===e.length||_.default(U.default.mark((function r(){var s;return U.default.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,v.fetchCompanyIdsByWellIds(e);case 2:s=r.sent,Ne(s);case 4:case"end":return r.stop()}}),r)})))()}),[n,null==X?void 0:X.selectedWellIds,He.length]);var Re=i.useMemo((function(){var e=Be.map((function(e){return e.companyId})).filter((function(e){return null!=e})),r=He||[];if(!Fe){var s=be?[be]:[];return R.default(new Set([].concat(s,R.default(e),R.default(r))))}var t=De[b.FilterType.company];if(void 0===t){var n=be?[be]:[];return R.default(new Set([].concat(n,R.default(e),R.default(r))))}if(Array.isArray(t)&&0===t.length)return null;var i=R.default(t);return be&&!i.includes(be)&&i.push(be),[].concat(R.default(e),R.default(r)).forEach((function(e){i.includes(e)||i.push(e)})),i}),[De[b.FilterType.company],be,Fe,Be,He]),_e=i.useState((null==X?void 0:X.wellSection)||b.ALL_SECTION_KEY),Ge=G.default(_e,2),Ue=Ge[0],ze=Ge[1],Ke=i.useRef(!0),Ye=i.useState(null),Ze=G.default(Ye,2),Xe=Ze[0],Je=Ze[1],Qe=i.useState(!0),$e=G.default(Qe,2),er=$e[0],rr=$e[1],sr=i.useRef(!1);i.useEffect((function(){if(!sr.current){var e=(null==X?void 0:X.selectedWellIds)||[];n&&0!==e.length?_.default(U.default.mark((function r(){var s,t;return U.default.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(0!==(s=e.filter((function(e){return!Be.some((function(r){return r.id===e}))}))).length){r.next=4;break}return sr.current=!0,r.abrupt("return");case 4:return r.next=6,v.fetchWellsByIds(s);case 6:t=r.sent,Le(Xe?function(e){var r=t.find((function(e){return e.id===Xe.id}))?t:t.concat(Xe);return l.uniqBy(e.concat(r),"id")}:function(e){return l.uniqBy(e.concat(t),"id")}),sr.current=!0;case 9:case"end":return r.stop()}}),r)})))():sr.current=!0}}),[n,null==X?void 0:X.selectedWellIds]);var tr=i.useState(!1),nr=G.default(tr,2),ir=nr[0],or=nr[1],lr=i.useState(!1),cr=G.default(lr,2),ur=cr[0],ar=cr[1],dr=i.useRef(),pr=i.useRef(),mr=i.useState(b.ViewType.none),qr=G.default(mr,2),jr=qr[0],fr=qr[1],Cr=i.useRef(),Ar=i.useState(!1),vr=G.default(Ar,2),Sr=vr[0],hr=vr[1],gr=je<=(null==Be?void 0:Be.length),Ir=b.TOP_GRADIENT_MAP[jr],Vr=i.useRef(),br=i.useState(!0),Tr=G.default(br,2),yr=Tr[0],xr=Tr[1];i.useEffect((function(){var e,r,s;(n&&gr&&k.showInfoNotification("App can’t process more than (".concat(je-1,") Offset Wells.")),n)||((null==X||null===(e=X.selectedWellIds)||void 0===e?void 0:e.length)===(null===(r=Vr.current)||void 0===r?void 0:r.length)&&(null==X||null===(s=X.selectedWellIds)||void 0===s?void 0:s.every((function(e){var r;return null===(r=Vr.current)||void 0===r?void 0:r.includes(e)})))||(Ke.current=!0),Vr.current=null==X?void 0:X.selectedWellIds)}),[gr,n,X]),i.useEffect((function(){function e(){window.innerWidth<=b.SMALL_SCREEN_WIDTH||P.isMobileDetected||P.isNativeDetected?fr(b.ViewType.mobile):window.innerHeight<=b.SMALL_SCREEN_HEIGHT?fr(b.ViewType.small):fr(b.ViewType.normal)}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[n]),i.useEffect((function(){Cr.current&&jr===Cr.current||(Cr.current=jr,jr===b.ViewType.small||jr===b.ViewType.mobile?(Ve(!0),Se(!1)):(Se(!Q&&(null==X?void 0:X.filterExpanded)),Ve(!Q&&(null==X?void 0:X.mapHidden))),Ee((null==X?void 0:X.filters)||{}),ze((null==X?void 0:X.wellSection)||b.ALL_SECTION_KEY))}),[X,Q,jr]);var Dr=u.useFetchWells(Re,J),Er=G.default(Dr,2),Pr=Er[0],Fr=Er[1],Wr=C.useCompanyProvider(be),Mr=G.default(Wr,1)[0],Or=d.useBicWells(o,K,fe,Pr,le),Br=G.default(Or,7),Lr=Br[0],wr=Br[1],kr=Br[2],Hr=Br[3],Nr=Br[4],Rr=Br[5],_r=Br[6];i.useEffect((function(){xr(!0),wr(null),Hr(null)}),[fe]);var Gr=p.useCompanyMetricKey(be,null==X?void 0:X.metricsKeys),Ur=G.default(Gr,2),zr=Ur[0],Kr=Ur[1],Yr=a.useAdvancedWells(be,Pr,Lr,kr,fe,zr,n),Zr=i.useMemo((function(){if(!Yr||null==We||!We.length)return Yr;var e={};return We.forEach((function(r){e[r.id]=r.name})),Yr.map((function(r){return Y(Y({},r),{},{companyName:e[r.companyId]||"Null"})}))}),[Yr,We]),Xr=!Fr&&(null==Zr?void 0:Zr.length)===(null==Pr?void 0:Pr.length);i.useEffect((function(){if(Xr){var e,r=(e=_.default(U.default.mark((function e(){var r,s,t,n,i,o,l,c,u,a;return U.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=void 0===(null==X?void 0:X.isSynced)||(null==X?void 0:X.isSynced),s=!0,!r){e.next=19;break}if(n=kr[b.ALL_SECTION_KEY]||[],i=((null==X?void 0:X.selectedWellIds)||[]).every((function(e){return n.includes(e)})),n.length===(null==X||null===(t=X.selectedWellIds)||void 0===t?void 0:t.length)&&i){e.next=16;break}return e.next=8,y.getCoordinatedWells(n,fe);case 8:o=e.sent,l=o.slice(0,qe+1).map((function(e){return e.id})),l=o.slice(0,ne+1).map((function(e){return e.id})),c=Y(Y({},X),{},{subjectWellId:fe,selectedWellIds:l,offsetWellsLimited:je<=l.length}),u=o.filter((function(e){return l.includes(e.id)})),ee(c,u),e.next=17;break;case 16:s=!1;case 17:e.next=20;break;case 19:s=!1;case 20:if(s){e.next=25;break}return e.next=23,y.getCoordinatedWells((null==X?void 0:X.selectedWellIds)||[],fe);case 23:a=e.sent,ee(X,a);case 25:case"end":return e.stop()}}),e)}))),function(){return e.apply(this,arguments)});ie&&yr&&X&&kr&&(r(),xr(!1))}}),[X,kr,fe,je,ie]);var Jr=m.useFilterOptions(Zr,We,Fe);i.useEffect((function(){if(Zr&&Lr){var e=Zr.find((function(e){return e.id===fe}));if(e){var r=Lr.filter((function(e){return e.value!==b.ALL_SECTION_KEY})).map((function(e){return e.label})),s=Y(Y({},e),r.length>0&&N.default({},b.ColumnType.wellSection,r));Je(s)}else Je(null)}}),[Lr,Zr]);var Qr=f.useTableColumns(zr,Fe),$r=q.useFilteredWells(Zr,De),es=i.useMemo((function(){return $r?l.uniqBy([].concat(R.default(Be),R.default($r)),"id"):$r}),[$r,Be]);i.useEffect((function(){if($r&&Xr&&Ke.current){var e=Zr.filter((function(e){return((null==X?void 0:X.selectedWellIds)||[]).includes(e.id)}));Xe&&(e=e.concat(Xe)),Le(l.uniqBy(e,"id")),Ke.current=!1}}),[Zr,$r,null==X?void 0:X.selectedWellIds,Xr]);var rs=j.useSortedWells(Xe,es,Be,rr),ss=G.default(rs,5),ts=ss[0],ns=ss[1],is=ss[2],os=ss[3],ls=ss[4],cs=i.useCallback((function(e,r,s){var t;t=s===T.SEARCH_CATEGORIES.well.name?r:r.reduce((function(e,r){var s,t=null===(s=Zr.find((function(e){return e.id===r})))||void 0===s?void 0:s.rigName,n=Zr.filter((function(e){return e.rigName===t})).map((function(e){return e.id}));return e.concat(n)}),[]);var n=Zr.filter((function(e){var r=e.id;return t.includes(r)}));e?(n=n.slice(0,Math.min(n.length,je-Be.length)),Le((function(e){return l.uniqBy(e.concat(n),"id")}))):Le((function(e){return l.uniq(e.filter((function(e){var r=e.id;return!n.find((function(e){return e.id===r}))})))}))}),[Zr,Be]),us=i.useCallback((function(){ar(!0)}),[]),as=i.useCallback((function(e){Kr(e)}),[]),ds=i.useCallback((function(e,r){Le(r?function(r){return[].concat(R.default(r),[e])}:function(r){return r.filter((function(r){return r.id!==e.id}))})}),[]),ps=i.useCallback((function(e){if(e){var r=Xe?$r.concat(Xe):$r,s=l.sortBy(l.uniqBy(r,"id"),"distance");Le(s.slice(0,je))}else Le(Xe?[Xe]:[])}),[$r,Xe,je]),ms=function(e){if(kr){var r=(null==Zr?void 0:Zr.filter((function(r){var s;return null===(s=kr[e])||void 0===s?void 0:s.includes(r.id)})))||[],s=l.sortBy(r,"distance");Le(s.slice(0,qe))}else Le(Xe?[Xe]:[])},qs=i.useCallback((function(e){ze(e),ms(e)}),[ms]),js=i.useMemo((function(){return Be.find((function(e){return e.id===fe}))?Be.length-1:Be.length}),[Be,fe]),fs=i.useMemo((function(){if(!kr)return!1;var e=Be.map((function(e){return e.id})),r=kr[Ue]||[];return Math.min(r.length,qe)===e.length&&e.every((function(e){return r.includes(e)}))}),[kr,Be,Ue,qe]),Cs=i.useMemo((function(){return!!Mr&&b.COMPANY_PROVIDERS_FOR_IDAS.includes(Mr)}),[Mr]),As=i.useMemo((function(){return Cs?"IDAS generated offsets.":o?"Offset Selection App.":"WellHub."}),[Cs,o]),vs=function(){var e=(Zr||[]).filter((function(e){return((null==X?void 0:X.selectedWellIds)||[]).includes(e.id)}));Xe&&(e=e.concat(Xe)),Le(l.uniqBy(e,"id"));var r=Y(Y({},X),{},{mapHidden:Ie,filterExpanded:ve});ee(r),Ee((null==X?void 0:X.filters)||{}),ze((null==X?void 0:X.wellSection)||b.ALL_SECTION_KEY),$()},Ss=er||Fr,hs=i.useMemo((function(){return!!Te&&(!Ss&&(!fs||(!(l.isEmpty(De)||!De[b.FilterType.sideTracks])||Ue!==b.ALL_SECTION_KEY)))}),[Te,fs,De,Ue,Ss]),gs=function(){Ee({}),ze(b.ALL_SECTION_KEY),ms(b.ALL_SECTION_KEY)},Is=!Zr||!Lr||!ls||jr===b.ViewType.none,Vs=i.useState(!1),bs=G.default(Vs,2),Ts=bs[0],ys=bs[1],xs=i.useState(b.ROWS_PER_PAGE),Ds=G.default(xs,2),Es=Ds[0],Ps=Ds[1],Fs=i.useState([]),Ws=G.default(Fs,2),Ms=Ws[0],Os=Ws[1];i.useEffect((function(){if(ls){var e=ls.slice(0,Es);Os(e)}}),[ls,Es,Xe]),i.useEffect((function(){Nr===b.RESYNC_STATUS.SUCCEEDED&&gs()}),[kr]);return D.jsxs(M,{open:n,onClose:vs,title:D.jsx(S.AppHeader,{isWDUser:o,viewType:jr,totalCount:null!==(r=null==Zr?void 0:Zr.length)&&void 0!==r?r:0,selectedCount:js,isViewOnly:Q,maxOffsetWellNumber:je,isGlobalMode:ue}),isMobile:jr===b.ViewType.mobile,contentContainerClassName:z.default(x.offsetWellDialog),contentClassName:z.default(x.contentContainer,(s={},N.default(s,x.smallContainer,jr===b.ViewType.small),N.default(s,x.contentContainerMobile,jr===b.ViewType.mobile),s)),actionsClassName:x.modalActions,actions:!Q&&D.jsxs("div",{className:x.actionsWrapper,children:[!Is&&hs?D.jsx(w.Tooltip,{placement:"bottom-start",title:"Reset to Synced Offsets in ".concat(o?"Offset App":"Wellhub"),children:D.jsx("div",{children:D.jsx(B,{"data-testid":"".concat(Z,"_reset"),onClick:gs,color:"primary",startIcon:jr!==b.ViewType.mobile&&D.jsx(c.Replay,{}),classes:jr===b.ViewType.mobile&&{root:x.resetButtonMobile},children:jr!==b.ViewType.mobile?"Reset":D.jsx(c.Replay,{})})})}):Te&&D.jsx("div",{className:jr===b.ViewType.mobile&&x.infoIconContainer,children:jr!==b.ViewType.mobile?D.jsxs(D.Fragment,{children:[D.jsx("span",{className:z.default(F.regular12,F.colors.t6),children:"The offset list is being automatically populated by "}),D.jsx("span",{className:z.default(F.medium12,F.colors.t6),children:As})]}):D.jsx(w.Tooltip,{title:D.jsxs("div",{children:[D.jsx("span",{className:z.default(F.regular12,F.colors.t1),children:"The offset list is being automatically populated by "}),D.jsx("span",{className:z.default(F.medium12,F.colors.t1),children:As})]}),enterTouchDelay:0,leaveTouchDelay:b.LEAVE_TOUCH_DELAY,children:D.jsx(c.InfoOutlined,{className:x.infoIcon})})}),D.jsxs("div",{className:x.buttonGap,children:[D.jsx(B,{"data-testid":"".concat(Z,"_cancel"),onClick:vs,color:"primary",children:"Cancel"}),D.jsxs(B,{"data-testid":"".concat(Z,"_selectedWells"),variant:"contained",color:"primary",onClick:function(){$();var e=Y(Y({},X),{},{companyId:be,subjectWellId:fe,selectedWellIds:Be.map((function(e){return e.id})),filters:De,metricsKeys:zr,wellSection:Ue,isSynced:fs,mapHidden:Ie,filterExpanded:ve,offsetWellsLimited:gr});ee(e,Be)},children:["Select (",js,")"]})]})]}),children:[D.jsx(E.NotificationsContainer,{}),Is?D.jsx(O,{fullscreen:!1}):D.jsxs("div",{className:z.default(x.contentWrapper,N.default({},x.contentBlocked,Ss)),ref:dr,children:[jr===b.ViewType.mobile&&D.jsxs("div",{className:z.default(x.countContainer,N.default({},x.countContainerMobile,jr===b.ViewType.mobile)),children:[D.jsx(W.Regular14,{className:x.totalLabel,children:"Total:"}),D.jsx(W.Regular14,{"data-testid":"".concat(Z,"_totalWells"),className:x.countValue,children:Zr.length}),D.jsx(W.Regular14,{className:x.selectedLabel,children:"Selected:"}),D.jsx(W.Regular14,{"data-testid":"".concat(Z,"_selected"),className:x.countValue,children:js}),D.jsx(w.Tooltip,{title:ue?"No global limit. Each app may have its own offset limit.":"App can't process more than (".concat(je-1,") Offset Wells."),placement:"right",children:D.jsx(W.Regular12,{"data-testid":"".concat(Z,"_maxOffsetSize"),className:x.maxOffsetSize,children:ue?"":"/".concat(je-1)})})]}),jr===b.ViewType.normal&&D.jsx(h.Toolbar,{isViewOnly:Q,isXtoProvider:Cs,viewType:jr,filters:De,setFilters:Ee,isFilterExpanded:ve,setIsFilterExpanded:Se,isMapHidden:Ie,setIsMapHidden:Ve,resyncStatus:Nr,setResyncStatus:Rr}),Sr&&D.jsx("div",{className:x.topGradient,style:{top:Ir}}),D.jsxs("div",{className:z.default(x.content,(t={},N.default(t,x.contentBlocked,Ss),N.default(t,x.contentMobile,jr===b.ViewType.mobile),N.default(t,x.contentiOSMobile,y.getMobileOperatingSystem()===b.IOS_DEVICE),t)),ref:pr,onScroll:function(e){return function(e){e.target&&(ur&&(e.target.scrollLeft=0,ar(!1)),e.target.scrollLeft<=5&&Ts&&ys(!1),e.target.scrollLeft>5&&!Ts&&ys(!0),e.target.scrollTop<=5&&Sr&&hr(!1),e.target.scrollTop>5&&!Sr&&hr(!0),e.target.scrollHeight!==e.target.offsetHeight&&Math.round(e.target.scrollTop+e.target.offsetHeight+2)>=e.target.scrollHeight&&Es<ls.length&&Ps((function(e){return e+b.ROWS_PER_PAGE})))}(e)},children:[jr!==b.ViewType.normal&&D.jsx(h.Toolbar,{isViewOnly:Q,isXtoProvider:Cs,viewType:jr,filters:De,setFilters:Ee,isFilterExpanded:ve,setIsFilterExpanded:Se,isMapHidden:Ie,setIsMapHidden:Ve,resyncStatus:Nr,setResyncStatus:Rr}),!Ie&&n&&D.jsx(I.WellsMap,{isViewOnly:Q,mapHidden:Ie,subjectWell:Xe,offsetWellIds:Be.map((function(e){return e.id})),wells:es,radius:De[b.FilterType.radius],handleChangeOffsetWell:ds,activeWellId:pe,viewType:jr}),D.jsx(g.Filter,{isHidden:!ve,isWDUser:o,filterOptions:Jr,filters:De,wellSections:Lr,selectedWellSection:Ue,subjectWell:Xe,assetCompanyId:be,onChangeFilters:function(e){rr(!0),setTimeout((function(){return Ee(e)}),0)},onChangeBicWells:qs}),D.jsx(V,{open:n,isTableLoading:Ss,companyId:be,subjectWellId:fe,sortBy:ts,setSortBy:ns,sortDirection:is,setSortDirection:os,columnsWithDict:Qr,wells:Ms,metricsKeys:zr,setMetricsKeys:as,handleChangeOffsetWell:ds,handleChangeAllOffsetWells:ps,handleAddRemoveAssets:cs,isWellNameExpand:ir,setIsWellNameExpand:or,isHScrollMoved:Ts,onHideAdvancedSearch:us,isViewOnly:Q,isLastWell:ls.length<=Es,contentRef:dr,offsetWellsContainerRef:pr,isLimitedOffsetWells:gr,maxOffsetWellNumber:je,wellSections:Lr,setActiveWellId:me,viewType:jr,isWDUser:o,taScores:_r})]}),Q&&Te&&D.jsxs("div",{className:x.viewOnlyInfoContainer,children:[D.jsx("span",{className:z.default(F.regular12,F.colors.t6),children:"The offset list is being automatically populated by "}),D.jsx("span",{className:z.default(F.medium12,F.colors.t6),children:As})]})]})]})};
2
2
  //# sourceMappingURL=OffsetWellPickerV4.js.map
@@ -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 useCompanies,\n} from './effects';\nimport { useFetchWells } from './effects/useFetchWells';\nimport { fetchCompanyIdsByWellIds, fetchWellsByIds } from './utils/apiCalls';\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';\nimport { useGlobalOffsetWellsSync } from '~/effects';\n\nconst PAGE_NAME = 'OffsetWellPickerV4';\nconst GLOBAL_MODE_LIMIT_TEXT = 'No global limit. Each app may have its own offset limit.';\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 isGlobalMode = 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 subjectWellId = defaultSubjectWell?.asset_id;\n useGlobalOffsetWellsSync(offsetSettings, onSave, maxOffsetWellNumber, subjectWellId);\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 hasValidAssetId = subjectWellId > 0;\n const [filters, setFilters] = useState(offsetSettings?.filters || {});\n const { canViewCompanies, companies } = useCompanies({ open });\n const [selectedWells, setSelectedWells] = useState([]);\n const [preselectedCompanyIds, setPreselectedCompanyIds] = useState([]);\n\n // Bootstrap: ensure companies of pre-selected wells (from settings) are fetched after refresh\n useEffect(() => {\n const selectedIds = offsetSettings?.selectedWellIds || [];\n if (!open || preselectedCompanyIds.length > 0 || selectedIds.length === 0) return;\n (async () => {\n const ids = await fetchCompanyIdsByWellIds(selectedIds);\n setPreselectedCompanyIds(ids);\n })();\n }, [open, offsetSettings?.selectedWellIds, preselectedCompanyIds.length]);\n\n // Compute which companies to fetch wells from\n const companyIdsToFetch = useMemo(() => {\n // Always include companies of selected wells so they remain visible\n const selectedWellCompanyIds = selectedWells\n .map(well => well.companyId)\n .filter(id => id != null);\n const bootstrapCompanyIds = preselectedCompanyIds || [];\n\n // If user can't view companies, use default behavior (fetch from user's company only)\n if (!canViewCompanies) {\n const baseIds = assetCompanyId ? [assetCompanyId] : [];\n return [...new Set([...baseIds, ...selectedWellCompanyIds, ...bootstrapCompanyIds])];\n }\n\n const companyFilter = filters[FilterType.company];\n // If no company filter set at all, default to subject well's company (initial state)\n if (companyFilter === undefined) {\n const baseIds = assetCompanyId ? [assetCompanyId] : [];\n return [...new Set([...baseIds, ...selectedWellCompanyIds, ...bootstrapCompanyIds])];\n }\n // If company filter is empty array, user cleared it = fetch all companies\n if (Array.isArray(companyFilter) && companyFilter.length === 0) {\n return null; // null means fetch from all companies\n }\n // If company filter has values, always include subject well's company + selected wells' companies\n const allIds = [...companyFilter];\n if (assetCompanyId && !allIds.includes(assetCompanyId)) {\n allIds.push(assetCompanyId);\n }\n [...selectedWellCompanyIds, ...bootstrapCompanyIds].forEach(id => {\n if (!allIds.includes(id)) {\n allIds.push(id);\n }\n });\n return allIds;\n }, [\n filters[FilterType.company],\n assetCompanyId,\n canViewCompanies,\n selectedWells,\n preselectedCompanyIds,\n ]);\n const [selectedWellSection, setSelectedWellSection] = useState(\n offsetSettings?.wellSection || ALL_SECTION_KEY\n );\n const initLoading = useRef(true);\n const [subjectWell, setSubjectWell] = useState(null);\n const [isTableLoading, setIsTableLoading] = useState(true);\n const hasBootstrappedSelectedWells = useRef(false);\n\n // Bootstrap: ensure selected wells are populated even if not yet in `wells`\n useEffect(() => {\n if (hasBootstrappedSelectedWells.current) return;\n const selectedIds = offsetSettings?.selectedWellIds || [];\n if (!open || selectedIds.length === 0) {\n hasBootstrappedSelectedWells.current = true;\n return;\n }\n (async () => {\n const missingIds = selectedIds.filter(id => !selectedWells.some(w => w.id === id));\n if (missingIds.length === 0) {\n hasBootstrappedSelectedWells.current = true;\n return;\n }\n const fetched = await fetchWellsByIds(missingIds);\n if (subjectWell) {\n setSelectedWells(prev => {\n const withSubject = fetched.find(w => w.id === subjectWell.id)\n ? fetched\n : fetched.concat(subjectWell);\n return uniqBy(prev.concat(withSubject), 'id');\n });\n } else {\n setSelectedWells(prev => uniqBy(prev.concat(fetched), 'id'));\n }\n hasBootstrappedSelectedWells.current = true;\n })();\n }, [open, offsetSettings?.selectedWellIds]);\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\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 wells based on company filter\n const [rawWells, areWellsLoading] = useFetchWells(companyIdsToFetch, addWellsUsabilityInfo);\n const [companyProvider] = useCompanyProvider(assetCompanyId);\n\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 wellsWithoutCompanyName = useAdvancedWells(\n assetCompanyId,\n rawWells,\n wellSections,\n bicWells,\n subjectWellId,\n metricsKeys,\n open\n );\n\n // NOTE: Add company names to wells for display\n const wells = useMemo(() => {\n if (!wellsWithoutCompanyName || !companies?.length) return wellsWithoutCompanyName;\n\n const companyMap = {};\n companies.forEach(company => {\n companyMap[company.id] = company.name;\n });\n\n return wellsWithoutCompanyName.map(well => ({\n ...well,\n companyName: companyMap[well.companyId] || 'Null',\n }));\n }, [wellsWithoutCompanyName, companies]);\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, companies, canViewCompanies);\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, canViewCompanies);\n // NOTE: Filter wells\n const filteredWells = useFilteredWells(wells, filters);\n\n // NOTE: Include selected wells from other companies so they can be deselected\n const wellsToDisplay = useMemo(() => {\n if (!filteredWells) return filteredWells;\n // Ensure ALL selected wells are displayed (at top via useSortedWells)\n // regardless of current company filter\n return uniqBy([...selectedWells, ...filteredWells], 'id');\n }, [filteredWells, selectedWells]);\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 }\n // Don't automatically deselect wells when filters change - let user manually deselect them\n }, [wells, filteredWells, offsetSettings?.selectedWellIds, isAllWellsLoaded]);\n\n // NOTE: Sort wells\n const [sortBy, setSortBy, sortDirection, setSortDirection, sortedWells] = useSortedWells(\n subjectWell,\n wellsToDisplay,\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 || areWellsLoading;\n\n // NOTE: Reset processing\n const isResetVisible = useMemo(() => {\n if (!hasValidAssetId) return false;\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 }, [hasValidAssetId, 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 isGlobalMode={isGlobalMode}\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 hasValidAssetId && (\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 )}\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={\n isGlobalMode\n ? GLOBAL_MODE_LIMIT_TEXT\n : `App can't process more than (${maxOffsetWellNumber - 1}) Offset Wells.`\n }\n placement=\"right\"\n >\n <Regular12\n data-testid={`${PAGE_NAME}_maxOffsetSize`}\n className={styles.maxOffsetSize}\n >\n {isGlobalMode ? '' : `/${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={wellsToDisplay}\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 assetCompanyId={assetCompanyId}\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 && hasValidAssetId && (\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","_ref$isGlobalMode","isGlobalMode","useState","_useState2","_slicedToArray","_useState","activeWellId","setActiveWellId","Math","min","MAX_OFFSET_SIZE","maxOffsetWellNumber","max","subjectWellId","asset_id","useGlobalOffsetWellsSync","filterExpanded","_useState4","_useState3","isFilterExpanded","setIsFilterExpanded","mapHidden","_useState6","_useState5","isMapHidden","setIsMapHidden","assetCompanyId","companyId","company_id","hasValidAssetId","_useState7","filters","_useState8","setFilters","_useCompanies","useCompanies","canViewCompanies","companies","_useState10","_useState9","selectedWells","setSelectedWells","_useState12","_useState11","preselectedCompanyIds","setPreselectedCompanyIds","useEffect","selectedIds","selectedWellIds","length","_asyncToGenerator","_regeneratorRuntime","mark","_callee","ids","wrap","_context","prev","next","fetchCompanyIdsByWellIds","sent","stop","companyIdsToFetch","useMemo","selectedWellCompanyIds","map","well","filter","id","bootstrapCompanyIds","baseIds","_toConsumableArray","Set","companyFilter","FilterType","company","undefined","Array","isArray","allIds","includes","push","forEach","_useState13","wellSection","ALL_SECTION_KEY","_useState14","selectedWellSection","setSelectedWellSection","initLoading","useRef","_useState16","_useState15","subjectWell","setSubjectWell","_useState18","_useState17","isTableLoading","setIsTableLoading","hasBootstrappedSelectedWells","current","_callee2","missingIds","fetched","_context2","some","w","abrupt","fetchWellsByIds","withSubject","find","concat","uniqBy","_useState20","_useState19","isWellNameExpand","setIsWellNameExpand","_useState22","_useState21","isAdvancedSearchHidden","setIsAdvancedSearchHidden","contentRef","offsetWellsContainerRef","_useState23","ViewType","none","_useState24","viewType","setViewType","prevViewType","_useState26","_useState25","isTopGradientShow","setIsTopGradientShow","isLimitedOffsetWells","topGradientTop","TOP_GRADIENT_MAP","prevSelectedWellIds","_useState28","_useState27","appLoading","setAppLoading","_offsetSettings$selec","_prevSelectedWellIds$","_offsetSettings$selec2","showInfoNotification","every","_prevSelectedWellIds$2","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","wellsWithoutCompanyName","useAdvancedWells","wells","companyMap","name","_objectSpread","companyName","isAllWellsLoaded","_ref4","syncOffsetWells","_callee3","isSynced","offsetWellsChanged","_offsetSettings$selec3","bicWellIds","isMatched","wellsByDistance","newOffsetSetting","offsetWells","_offsetWells","_context3","wellId","getCoordinatedWells","slice","offsetWellsLimited","apply","this","arguments","filterOptions","useFilterOptions","allSectionNames","item","value","_ref5","label","subjectWellWithSection","_defineProperty","ColumnType","columnsWithDict","useTableColumns","filteredWells","useFilteredWells","wellsToDisplay","data","useSortedWells","_useSortedWells2","_useSortedWells","sortBy","setSortBy","sortDirection","setSortDirection","sortedWells","handleAddRemoveAssets","useCallback","isAdding","newAssets","assetType","addingWellIds","SEARCH_CATEGORIES","reduce","acc","assetId","_wells$find","rigName","rigWellIds","addingWells","_ref7","uniq","_ref8","handleHideAdvancedSearch","handleChangeMetricsKeys","newMetricsKeys","handleChangeOffsetWell","checked","prevWells","handleChangeAllOffsetWells","sortedData","sortArray","updateSelectedWellsBySection","section","sectionWells","_bicWells$section","limitedWells","handleChangeWellSection","selectedWellsCount","_ref9","owsWellIds","isXtoProvider","COMPANY_PROVIDERS_FOR_IDAS","offsetLabel","handleCancel","isTableFullLoading","isResetVisible","isEmpty","sideTracks","handleReset","isLoading","_useState30","_useState29","isHScrollMoved","setIsHScrollMoved","ROWS_PER_PAGE","_useState32","_useState31","tableRowsCount","setTableRowsCount","_useState34","_useState33","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","_ref10","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","_ref11","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 useCompanies,\n} from './effects';\nimport { useFetchWells } from './effects/useFetchWells';\nimport { fetchCompanyIdsByWellIds, fetchWellsByIds } from './utils/apiCalls';\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';\nimport { useGlobalOffsetWellsSync } from '~/effects';\n\nconst PAGE_NAME = 'OffsetWellPickerV4';\nconst GLOBAL_MODE_LIMIT_TEXT = 'No global limit. Each app may have its own offset limit.';\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 isGlobalMode = 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 subjectWellId = defaultSubjectWell?.asset_id;\n useGlobalOffsetWellsSync(offsetSettings, onSave, maxOffsetWellNumber, subjectWellId);\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 hasValidAssetId = subjectWellId > 0;\n const [filters, setFilters] = useState(offsetSettings?.filters || {});\n const { canViewCompanies, companies } = useCompanies({ open });\n const [selectedWells, setSelectedWells] = useState([]);\n const [preselectedCompanyIds, setPreselectedCompanyIds] = useState([]);\n\n // Bootstrap: ensure companies of pre-selected wells (from settings) are fetched after refresh\n useEffect(() => {\n const selectedIds = offsetSettings?.selectedWellIds || [];\n if (!open || preselectedCompanyIds.length > 0 || selectedIds.length === 0) return;\n (async () => {\n const ids = await fetchCompanyIdsByWellIds(selectedIds);\n setPreselectedCompanyIds(ids);\n })();\n }, [open, offsetSettings?.selectedWellIds, preselectedCompanyIds.length]);\n\n // Compute which companies to fetch wells from\n const companyIdsToFetch = useMemo(() => {\n // Always include companies of selected wells so they remain visible\n const selectedWellCompanyIds = selectedWells\n .map(well => well.companyId)\n .filter(id => id != null);\n const bootstrapCompanyIds = preselectedCompanyIds || [];\n\n // If user can't view companies, use default behavior (fetch from user's company only)\n if (!canViewCompanies) {\n const baseIds = assetCompanyId ? [assetCompanyId] : [];\n return [...new Set([...baseIds, ...selectedWellCompanyIds, ...bootstrapCompanyIds])];\n }\n\n const companyFilter = filters[FilterType.company];\n // If no company filter set at all, default to subject well's company (initial state)\n if (companyFilter === undefined) {\n const baseIds = assetCompanyId ? [assetCompanyId] : [];\n return [...new Set([...baseIds, ...selectedWellCompanyIds, ...bootstrapCompanyIds])];\n }\n // If company filter is empty array, user cleared it = fetch all companies\n if (Array.isArray(companyFilter) && companyFilter.length === 0) {\n return null; // null means fetch from all companies\n }\n // If company filter has values, always include subject well's company + selected wells' companies\n const allIds = [...companyFilter];\n if (assetCompanyId && !allIds.includes(assetCompanyId)) {\n allIds.push(assetCompanyId);\n }\n [...selectedWellCompanyIds, ...bootstrapCompanyIds].forEach(id => {\n if (!allIds.includes(id)) {\n allIds.push(id);\n }\n });\n return allIds;\n }, [\n filters[FilterType.company],\n assetCompanyId,\n canViewCompanies,\n selectedWells,\n preselectedCompanyIds,\n ]);\n const [selectedWellSection, setSelectedWellSection] = useState(\n offsetSettings?.wellSection || ALL_SECTION_KEY\n );\n const initLoading = useRef(true);\n const [subjectWell, setSubjectWell] = useState(null);\n const [isTableLoading, setIsTableLoading] = useState(true);\n const hasBootstrappedSelectedWells = useRef(false);\n\n // Bootstrap: ensure selected wells are populated even if not yet in `wells`\n useEffect(() => {\n if (hasBootstrappedSelectedWells.current) return;\n const selectedIds = offsetSettings?.selectedWellIds || [];\n if (!open || selectedIds.length === 0) {\n hasBootstrappedSelectedWells.current = true;\n return;\n }\n (async () => {\n const missingIds = selectedIds.filter(id => !selectedWells.some(w => w.id === id));\n if (missingIds.length === 0) {\n hasBootstrappedSelectedWells.current = true;\n return;\n }\n const fetched = await fetchWellsByIds(missingIds);\n if (subjectWell) {\n setSelectedWells(prev => {\n const withSubject = fetched.find(w => w.id === subjectWell.id)\n ? fetched\n : fetched.concat(subjectWell);\n return uniqBy(prev.concat(withSubject), 'id');\n });\n } else {\n setSelectedWells(prev => uniqBy(prev.concat(fetched), 'id'));\n }\n hasBootstrappedSelectedWells.current = true;\n })();\n }, [open, offsetSettings?.selectedWellIds]);\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\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 wells based on company filter\n const [rawWells, areWellsLoading] = useFetchWells(companyIdsToFetch, addWellsUsabilityInfo);\n const [companyProvider] = useCompanyProvider(assetCompanyId);\n\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 wellsWithoutCompanyName = useAdvancedWells(\n assetCompanyId,\n rawWells,\n wellSections,\n bicWells,\n subjectWellId,\n metricsKeys,\n open\n );\n\n // NOTE: Add company names to wells for display\n const wells = useMemo(() => {\n if (!wellsWithoutCompanyName || !companies?.length) return wellsWithoutCompanyName;\n\n const companyMap = {};\n companies.forEach(company => {\n companyMap[company.id] = company.name;\n });\n\n return wellsWithoutCompanyName.map(well => ({\n ...well,\n companyName: companyMap[well.companyId] || 'Null',\n }));\n }, [wellsWithoutCompanyName, companies]);\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, companies, canViewCompanies);\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, canViewCompanies);\n // NOTE: Filter wells\n const filteredWells = useFilteredWells(wells, filters);\n\n // NOTE: Include selected wells from other companies so they can be deselected\n const wellsToDisplay = useMemo(() => {\n if (!filteredWells) return filteredWells;\n // Ensure ALL selected wells are displayed (at top via useSortedWells)\n // regardless of current company filter\n return uniqBy([...selectedWells, ...filteredWells], 'id');\n }, [filteredWells, selectedWells]);\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 }\n // Don't automatically deselect wells when filters change - let user manually deselect them\n }, [wells, filteredWells, offsetSettings?.selectedWellIds, isAllWellsLoaded]);\n\n // NOTE: Sort wells\n const [sortBy, setSortBy, sortDirection, setSortDirection, sortedWells] = useSortedWells(\n subjectWell,\n wellsToDisplay,\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 || areWellsLoading;\n\n // NOTE: Reset processing\n const isResetVisible = useMemo(() => {\n if (!hasValidAssetId) return false;\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 }, [hasValidAssetId, 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 isGlobalMode={isGlobalMode}\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 hasValidAssetId && (\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 )}\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={\n isGlobalMode\n ? GLOBAL_MODE_LIMIT_TEXT\n : `App can't process more than (${maxOffsetWellNumber - 1}) Offset Wells.`\n }\n placement=\"right\"\n >\n <Regular12\n data-testid={`${PAGE_NAME}_maxOffsetSize`}\n className={styles.maxOffsetSize}\n >\n {isGlobalMode ? '' : `/${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={wellsToDisplay}\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 assetCompanyId={assetCompanyId}\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 && hasValidAssetId && (\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","_ref$isGlobalMode","isGlobalMode","useState","_useState2","_slicedToArray","_useState","activeWellId","setActiveWellId","Math","min","MAX_OFFSET_SIZE","maxOffsetWellNumber","max","subjectWellId","asset_id","useGlobalOffsetWellsSync","filterExpanded","_useState4","_useState3","isFilterExpanded","setIsFilterExpanded","mapHidden","_useState6","_useState5","isMapHidden","setIsMapHidden","assetCompanyId","companyId","company_id","hasValidAssetId","_useState7","filters","_useState8","setFilters","_useCompanies","useCompanies","canViewCompanies","companies","_useState10","_useState9","selectedWells","setSelectedWells","_useState12","_useState11","preselectedCompanyIds","setPreselectedCompanyIds","useEffect","selectedIds","selectedWellIds","length","_asyncToGenerator","_regeneratorRuntime","mark","_callee","ids","wrap","_context","prev","next","fetchCompanyIdsByWellIds","sent","stop","companyIdsToFetch","useMemo","selectedWellCompanyIds","map","well","filter","id","bootstrapCompanyIds","baseIds","_toConsumableArray","Set","companyFilter","FilterType","company","undefined","Array","isArray","allIds","includes","push","forEach","_useState13","wellSection","ALL_SECTION_KEY","_useState14","selectedWellSection","setSelectedWellSection","initLoading","useRef","_useState16","_useState15","subjectWell","setSubjectWell","_useState18","_useState17","isTableLoading","setIsTableLoading","hasBootstrappedSelectedWells","current","_callee2","missingIds","fetched","_context2","some","w","abrupt","fetchWellsByIds","withSubject","find","concat","uniqBy","_useState20","_useState19","isWellNameExpand","setIsWellNameExpand","_useState22","_useState21","isAdvancedSearchHidden","setIsAdvancedSearchHidden","contentRef","offsetWellsContainerRef","_useState23","ViewType","none","_useState24","viewType","setViewType","prevViewType","_useState26","_useState25","isTopGradientShow","setIsTopGradientShow","isLimitedOffsetWells","topGradientTop","TOP_GRADIENT_MAP","prevSelectedWellIds","_useState28","_useState27","appLoading","setAppLoading","_offsetSettings$selec","_prevSelectedWellIds$","_offsetSettings$selec2","showInfoNotification","every","_prevSelectedWellIds$2","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","wellsWithoutCompanyName","useAdvancedWells","wells","companyMap","name","_objectSpread","companyName","isAllWellsLoaded","_ref4","syncOffsetWells","_callee3","isSynced","offsetWellsChanged","_offsetSettings$selec3","bicWellIds","isMatched","wellsByDistance","newOffsetSetting","offsetWells","_offsetWells","_context3","wellId","getCoordinatedWells","slice","offsetWellsLimited","apply","this","arguments","filterOptions","useFilterOptions","allSectionNames","item","value","_ref5","label","subjectWellWithSection","_defineProperty","ColumnType","columnsWithDict","useTableColumns","filteredWells","useFilteredWells","wellsToDisplay","data","useSortedWells","_useSortedWells2","_useSortedWells","sortBy","setSortBy","sortDirection","setSortDirection","sortedWells","handleAddRemoveAssets","useCallback","isAdding","newAssets","assetType","addingWellIds","SEARCH_CATEGORIES","reduce","acc","assetId","_wells$find","rigName","rigWellIds","addingWells","_ref7","uniq","_ref8","handleHideAdvancedSearch","handleChangeMetricsKeys","newMetricsKeys","handleChangeOffsetWell","checked","prevWells","handleChangeAllOffsetWells","sortedData","sortArray","updateSelectedWellsBySection","section","sectionWells","_bicWells$section","limitedWells","handleChangeWellSection","selectedWellsCount","_ref9","owsWellIds","isXtoProvider","COMPANY_PROVIDERS_FOR_IDAS","offsetLabel","handleCancel","isTableFullLoading","isResetVisible","isEmpty","sideTracks","handleReset","isLoading","_useState30","_useState29","isHScrollMoved","setIsHScrollMoved","ROWS_PER_PAGE","_useState32","_useState31","tableRowsCount","setTableRowsCount","_useState34","_useState33","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","_ref10","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","_ref11","radius","Filter","isHidden","onChangeFilters","setTimeout","onChangeBicWells","OffsetWellsTable","onHideAdvancedSearch","isLastWell","viewOnlyInfoContainer"],"mappings":"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"}