@corva/ui 3.39.0-2 → 3.39.0-4

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 (151) hide show
  1. package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
  2. package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
  3. package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.module.css.js +1 -1
  4. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/OffsetWellMap.js +1 -1
  5. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/OffsetWellMap.module.css.js +1 -1
  6. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/BoxSelectionOverlay/BoxSelectionOverlay.js +2 -0
  7. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/BoxSelectionOverlay/BoxSelectionOverlay.js.map +1 -0
  8. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/BoxSelectionOverlay/BoxSelectionOverlay.module.css.js +2 -0
  9. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/DrawControl/DrawControl.js +1 -1
  10. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js +1 -1
  11. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.js +2 -0
  12. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.js.map +1 -0
  13. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.module.css.js +2 -0
  14. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.module.css.js.map +1 -0
  15. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/CursorIcon.js +2 -0
  16. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/CursorIcon.js.map +1 -0
  17. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/HintItem.js +2 -0
  18. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/HintItem.js.map +1 -0
  19. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/HintItem.module.css.js +2 -0
  20. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/HintItem.module.css.js.map +1 -0
  21. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/KeyboardKey.js +2 -0
  22. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/KeyboardKey.js.map +1 -0
  23. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/KeyboardKey.module.css.js +2 -0
  24. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/KeyboardKey.module.css.js.map +1 -0
  25. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/RadiusInput/RadiusInput.js +1 -1
  26. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/RadiusInput/RadiusInput.module.css.js +1 -1
  27. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js +1 -1
  28. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.module.css.js +2 -0
  29. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.module.css.js.map +1 -0
  30. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/WellTooltip/WellTooltip.module.css.js +1 -1
  31. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/constants.js +1 -1
  32. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useBoxSelection.js +2 -0
  33. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useBoxSelection.js.map +1 -0
  34. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useElementSize.js +2 -0
  35. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useElementSize.js.map +1 -0
  36. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoKeyboardHandlers.js +2 -0
  37. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoKeyboardHandlers.js.map +1 -0
  38. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoSelection.js +1 -1
  39. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useTooltipAnchor.js +2 -0
  40. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useTooltipAnchor.js.map +1 -0
  41. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useWellMarkers.js +1 -1
  42. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/WellsMap.js +1 -1
  43. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.module.css.js +1 -1
  44. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTableHead.module.css.js +1 -1
  45. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTableRow.module.css.js +1 -1
  46. package/cjs-bundle/components/OffsetWellPickerV5/stores/view-store/createViewStore.js +1 -1
  47. package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/hooks/usePads.js +1 -1
  48. package/components/OffsetWellPickerV5/OffsetWellPickerV5.d.ts.map +1 -1
  49. package/components/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
  50. package/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
  51. package/components/OffsetWellPickerV5/OffsetWellPickerV5.module.css.js +1 -1
  52. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/OffsetWellMap.d.ts +3 -0
  53. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/OffsetWellMap.d.ts.map +1 -1
  54. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/OffsetWellMap.js +1 -1
  55. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/OffsetWellMap.module.css.js +1 -1
  56. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/BoxSelectionOverlay/BoxSelectionOverlay.d.ts +14 -0
  57. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/BoxSelectionOverlay/BoxSelectionOverlay.d.ts.map +1 -0
  58. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/BoxSelectionOverlay/BoxSelectionOverlay.js +2 -0
  59. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/BoxSelectionOverlay/BoxSelectionOverlay.js.map +1 -0
  60. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/BoxSelectionOverlay/BoxSelectionOverlay.module.css.js +2 -0
  61. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/BoxSelectionOverlay/index.d.ts +2 -0
  62. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/BoxSelectionOverlay/index.d.ts.map +1 -0
  63. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/DrawControl/DrawControl.d.ts +3 -1
  64. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/DrawControl/DrawControl.d.ts.map +1 -1
  65. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/DrawControl/DrawControl.js +1 -1
  66. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.d.ts.map +1 -1
  67. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js +1 -1
  68. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.d.ts +15 -0
  69. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.d.ts.map +1 -0
  70. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.js +2 -0
  71. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.js.map +1 -0
  72. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.module.css.js +2 -0
  73. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.module.css.js.map +1 -0
  74. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/CursorIcon.d.ts +8 -0
  75. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/CursorIcon.d.ts.map +1 -0
  76. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/CursorIcon.js +2 -0
  77. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/CursorIcon.js.map +1 -0
  78. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/HintItem.d.ts +12 -0
  79. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/HintItem.d.ts.map +1 -0
  80. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/HintItem.js +2 -0
  81. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/HintItem.js.map +1 -0
  82. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/HintItem.module.css.js +2 -0
  83. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/HintItem.module.css.js.map +1 -0
  84. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/KeyboardKey.d.ts +7 -0
  85. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/KeyboardKey.d.ts.map +1 -0
  86. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/KeyboardKey.js +2 -0
  87. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/KeyboardKey.js.map +1 -0
  88. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/KeyboardKey.module.css.js +2 -0
  89. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/KeyboardKey.module.css.js.map +1 -0
  90. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/index.d.ts +4 -0
  91. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/components/index.d.ts.map +1 -0
  92. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/index.d.ts +2 -0
  93. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/{LassoTip → MapHints}/index.d.ts.map +1 -1
  94. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/RadiusInput/RadiusInput.d.ts.map +1 -1
  95. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/RadiusInput/RadiusInput.js +1 -1
  96. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/RadiusInput/RadiusInput.module.css.js +1 -1
  97. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.d.ts +0 -1
  98. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.d.ts.map +1 -1
  99. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js +1 -1
  100. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.module.css.js +2 -0
  101. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.module.css.js.map +1 -0
  102. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/WellTooltip/WellTooltip.module.css.js +1 -1
  103. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/constants.d.ts +12 -0
  104. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/constants.d.ts.map +1 -1
  105. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/constants.js +1 -1
  106. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/index.d.ts +4 -0
  107. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/index.d.ts.map +1 -1
  108. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useBoxSelection.d.ts +28 -0
  109. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useBoxSelection.d.ts.map +1 -0
  110. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useBoxSelection.js +2 -0
  111. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useBoxSelection.js.map +1 -0
  112. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useElementSize.d.ts +8 -0
  113. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useElementSize.d.ts.map +1 -0
  114. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useElementSize.js +2 -0
  115. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useElementSize.js.map +1 -0
  116. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoKeyboardHandlers.d.ts +12 -0
  117. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoKeyboardHandlers.d.ts.map +1 -0
  118. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoKeyboardHandlers.js +2 -0
  119. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoKeyboardHandlers.js.map +1 -0
  120. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoSelection.d.ts +5 -1
  121. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoSelection.d.ts.map +1 -1
  122. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoSelection.js +1 -1
  123. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useTooltipAnchor.d.ts +36 -0
  124. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useTooltipAnchor.d.ts.map +1 -0
  125. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useTooltipAnchor.js +2 -0
  126. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useTooltipAnchor.js.map +1 -0
  127. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useWellMarkers.d.ts.map +1 -1
  128. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useWellMarkers.js +1 -1
  129. package/components/OffsetWellPickerV5/components/Map/WellsMap.d.ts +3 -0
  130. package/components/OffsetWellPickerV5/components/Map/WellsMap.d.ts.map +1 -1
  131. package/components/OffsetWellPickerV5/components/Map/WellsMap.js +1 -1
  132. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.module.css.js +1 -1
  133. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTableHead.module.css.js +1 -1
  134. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTableRow.module.css.js +1 -1
  135. package/components/OffsetWellPickerV5/stores/view-store/createViewStore.d.ts +2 -0
  136. package/components/OffsetWellPickerV5/stores/view-store/createViewStore.d.ts.map +1 -1
  137. package/components/OffsetWellPickerV5/stores/view-store/createViewStore.js +1 -1
  138. package/componentsV2/CompletionsOffsetWellPicker/hooks/usePads.d.ts.map +1 -1
  139. package/componentsV2/CompletionsOffsetWellPicker/hooks/usePads.js +1 -1
  140. package/package.json +1 -1
  141. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LassoTip/LassoTip.js +0 -2
  142. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LassoTip/LassoTip.js.map +0 -1
  143. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LassoTip/LassoTip.module.css.js +0 -2
  144. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LassoTip/LassoTip.d.ts +0 -13
  145. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LassoTip/LassoTip.d.ts.map +0 -1
  146. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LassoTip/LassoTip.js +0 -2
  147. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LassoTip/LassoTip.js.map +0 -1
  148. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LassoTip/LassoTip.module.css.js +0 -2
  149. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LassoTip/index.d.ts +0 -2
  150. /package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/{LassoTip/LassoTip.module.css.js.map → BoxSelectionOverlay/BoxSelectionOverlay.module.css.js.map} +0 -0
  151. /package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/{LassoTip/LassoTip.module.css.js.map → BoxSelectionOverlay/BoxSelectionOverlay.module.css.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});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"),u=require("lodash"),c=require("@material-ui/icons"),l=require("@material-ui/core"),a=require("./effects/useFetchWells.js"),p=require("./effects/useAdvancedWells.js"),d=require("./effects/useBicWells.js"),m=require("./effects/useCompanyMetricKey.js"),q=require("./effects/useFilterOptions.js"),j=require("./effects/useFilteredWells.js"),f=require("./effects/useSortedWells.js");require("./effects/useAssetsData.js");var C=require("./effects/useTableColumns.js"),A=require("./effects/useCompanyProvider.js"),S=require("./effects/useCompanies.js"),v=require("./effects/usePinnedWells.js"),h=require("./effects/useSearchedWells.js"),g=require("./effects/useFetchSubjectWell.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("./api/shared/dataFormatter.js");var I=require("./api/wells/fetchCompanyIdsByWellIds.js"),V=require("./constants.js"),b=require("./components/AppHeader/AppHeader.js"),P=require("./components/Filter/Filter.js"),x=require("./components/Map/WellsMap.js"),T=require("./components/OffsetWellsTable/OffsetWellsTable.js"),y=require("./components/OffsetWellsTable/OffsetWellsTableHead.js"),D=require("./components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.js"),W=require("./components/OffsetWellsTable/AdvancedSearch/constants.js"),F=require("./utils/index.js"),E=require("./utils/getIsImperial.js"),O=require("./stores/picker-props-store/usePickerPropsStore.js"),k=require("./stores/filter-store/useFilterStore.js"),M=require("./stores/view-store/useViewStore.js"),B=require("./OffsetWellPickerV5.module.css.js"),L=require("./components/OffsetWellsTable/OffsetWellsTable.module.css.js");require("../../utils/index.js");var w=require("react/jsx-runtime");require("@material-ui/core/Snackbar"),require("../Notifications/Toast.js"),require("../Notifications/Notifications.scss.js");var H=require("../Notifications/NotificationsContainer.js"),N=require("../../styles/typography/index.js");require("../../styles/counter/counter.module.scss.js"),require("../DevCenter/DevCenterAppContainer/components/IsInsideIsolatedDcAppProvider/IsInsideIsolatedDcAppProvider.js"),require("../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/DcFullscreenElemsCoordinatorProvider.js"),require("../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/IsInsideDcFullscreenElemProvider.js"),require("@icon-park/react/es/all"),require("../../icons/IconParkProvider.js"),require("../../icons/customIcons/icons/AddMessage.js"),require("../../icons/customIcons/icons/Attention.js"),require("../../icons/customIcons/icons/Collapse.js"),require("../../icons/customIcons/icons/Dashboard.js"),require("../../icons/customIcons/icons/Expand.js"),require("../../icons/customIcons/icons/FolderClosed.js"),require("../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../icons/customIcons/icons/FolderOpened.js"),require("../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../icons/customIcons/icons/LessOrEqual.js"),require("../../icons/customIcons/icons/Search.js"),require("../../icons/customIcons/icons/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("../../utils/mobileDetect.js"),require("../IconButton/index.js"),require("../../constants/goals.js"),require("../../constants/segment.js"),require("../../constants/alerts.js"),require("../../constants/apps.js"),require("../../constants/drillstring.js"),require("../../constants/completion.js"),require("../../constants/appPackages.js"),require("../../constants/notifications.js"),require("../../constants/feed.js"),require("../../constants/bha.js"),require("../../constants/corvaCompanyId.js"),require("../GradientManager/configuration/constants.js"),require("../Modal/CorvaModal.css.js"),require("../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/AppContext.js"),require("../DevCenter/DevCenterRouterContext/DevCenterRouterContext.js"),require("../DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("react-router"),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");var R=require("../../componentsV2/Button/Button.js");require("../../componentsV2/ButtonIcon/ButtonIcon.js");var _=require("../../componentsV2/Tooltip/Tooltip.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");var G=require("../../componentsV2/LoaderCircular/LoaderCircular.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");var z=require("../../componentsV2/Modal/Modal.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("../../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 U=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 K=require("../LoadingIndicator/LoadingIndicator.js");require("../Typography.js"),require("../RealTimeValuesSidebar/RealTimeSidebar.js"),require("../CollapsableSidebar.js"),require("../DateTimePicker/index.js"),require("../DatePicker/index.js"),require("../ErrorBoundary/ErrorBoundary.js"),require("../ErrorBoundary/DevCenterAppErrorView/DevCenterAppErrorView.js"),require("../SlateFormattedText/SlateFormattedText.js"),require("../SlateFormattedText/RenderElements.js"),require("slate"),require("../EmptyState/EmptyState.js"),require("../ParameterCharts/ParameterCharts.js"),require("../ParameterCharts/AddEditTrack.js"),require("../ChartActionsList/ChartActionsList.js"),require("../CopyToClipboard/CopyToClipboard.js"),require("../AssetEditor/AssetEditorAutocomplete.js"),require("../AssetEditor/SingleAssetEditor.js"),require("react-color"),require("../SettingEditors/ColorEditor/style.css.js"),require("../SettingEditors/DropdownEditor/index.js"),require("../SwitchControl/index.js"),require("../ColorPicker/ColorPicker.js"),require("../Chart/components/ChartButton.js"),require("../Chart/components/ChartButtons.js"),require("../Chart/components/ChartWrapper.js"),require("../Chart/components/AxisDropdown.js"),require("../Chart/components/ChartSelect.js"),require("../Chart/components/buttons/DragToZoomButton.js"),require("../Chart/components/buttons/ZoomInButton.js"),require("../Chart/components/buttons/ZoomOutButton.js"),require("../Chart/components/buttons/PanButton.js"),require("../Chart/components/buttons/ResetZoomButton.js"),require("../Chart/components/buttons/HideAxesButton.js"),require("../Chart/components/buttons/ChartTypeButton.js"),require("../ColorPicker/PaletteChromePicker/PaletteChromePicker.js"),require("../TruncatedText/index.js"),require("../MiddleTruncatedText/MiddleTruncatedText.js"),require("../RangeSlider/constants.js"),require("../RangeSlider/Input.css.js"),require("../RangeSlider/RangeSlider.css.js"),require("../AdvancedSlider/AdvancedSlider.js"),require("../Breadcrumbs/index.js"),require("../VirtualizedTable/index.js"),require("../EmptyView/EmptyView.js"),require("../EmptyView/EmptyAppView/EmptyAppView.js"),require("../Button/components/Button/index.js"),require("moment-timezone"),require("../Button/components/LiveButton/components/LiveButtonStateIndicator/index.js"),require("../Button/components/LiveButton/styles.js"),require("../ContextMenuItem/index.js"),require("../FolderMenuItem/index.js"),require("../EditableItem/EditableItem/index.js"),require("../EditableItem/EditableItemWithBadge/index.js"),require("../Checkbox/index.js"),require("../FolderMenuItemWithLinks/index.js"),require("../TextField/index.js"),require("../Chip/index.js"),require("../Counter/index.js"),require("../AnchorsList/AnchorsList.js"),require("../Select/index.js"),require("../Select/SelectFilterBy.js"),require("../CustomSelect/index.js"),require("../Tabs/Tabs.js"),require("../Tabs/Tab.js"),require("../ResizableTable/ResizableTable.js"),require("../GradientPicker/GradientPicker.js"),require("../GradientManager/GradientList.js"),require("@material-ui/icons/AddCircle"),require("../GradientManager/GradientPreview/GradientPreview.js"),require("../GradientManager/GradientSelect.styles.js"),require("../GradientManager/GradientManager.styles.js"),require("../Drillstring/BHASchematic.js"),require("../Drillstring/BHATable/index.js"),require("../Drillstring/BHAComponentIcon.js"),require("../Drillstring/BHAComponentDetail/index.js"),require("../Drillstring/BHATileIcon.js"),require("../Drillstring/BHATile/BHATile.js"),require("../Drillstring/BHAList/BHAList.js"),require("../Drillstring/BHAComponentsTable/BHAComponentsTable.js"),require("../Casing/CasingTable/index.js"),require("../Casing/CasingComponentIcon.js"),require("../Casing/CasingTileIcon.js"),require("../Casing/CasingTableV2/CasingTableV2.js"),require("../Casing/CasingTile/CasingTile.js"),require("../DisabledSettingsMessage/DisabledSettingsMessage.js"),require("../WellSummary/WellSummaryItemLabel.js"),require("../WellSummary/WellSummaryItemTitle.js"),require("../WellSummary/WellSummaryItemValue.js"),require("../WellSummary/ActivitySummaryChart.js"),require("../WellSummary/FracWirelineTimeChart.js"),require("../BICOffsetPickerDialog/index.js"),require("../OffsetWellButton/OffsetWellButton.js"),require("../OffsetWellPickerV2/OffsetWellPickerDialog.js"),require("../OffsetWellPickerV3/index.js"),require("../OffsetWellChips/Chip.js"),require("../OffsetWellChips/ChipsContainer.js"),require("./OffsetWellPickerV5WithStore.js"),require("../OffsetWellPickerV4/utils/apiCalls.js"),require("../OffsetWellPickerV4/effects/useAdvancedWells.js"),require("../OffsetWellPickerV4/constants.js"),require("react-virtualized"),require("../OffsetWellPickerV4/effects/useAssetsData.js"),require("../../permissions/PermissionsContext.js"),require("../../permissions/constants/index.js"),require("../../permissions/withPermissionsHOC.js"),require("../../permissions/ProvidePermissions.js"),require("../OffsetWellPickerV4/components/AppHeader/AppHeader.js"),require("../OffsetWellPickerV4/components/Toolbar/Toolbar.js"),require("../OffsetWellPickerV4/components/Filter/Filter.js"),require("../OffsetWellPickerV4/components/Map/WellsMap.js"),require("../OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js"),require("../OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/constants.js"),require("../OffsetWellPickerV4/utils/index.js"),require("../OffsetWellPickerV4/OffsetWellPickerV4.module.css.js"),require("../OffsetWellMap/OffsetWellMap.js"),require("../ConfirmationDialog.js"),require("../TextLink/index.js"),require("../Avatar/index.js"),require("../Template/TemplatePopover/index.js"),require("../Template/TemplateSharingDialog/index.js"),require("../MenuItem/index.js"),require("../MiddleTruncate/MiddleTruncate.js"),require("../PinnableFilters/PinnableFilters.js"),require("../HeaderLayout/HeaderLayout.js"),require("../PadOffsetsPicker/PadOffsetsPicker.js"),require("../PadOffsetsPicker/OffsetAssetChip.js"),require("../PadOffsetsPicker/OffsetAssetsListExpander.js"),require("../PadOffsetsPicker/StagesSelector.js"),require("../PadOffsetsPickerV2/PadOffsetsPickerV2.js"),require("../Table/TableToolbar/TableToolbar.js"),require("../Table/TableContainer/TableContainer.js"),require("../Table/TableCell/TableCell.js"),require("../Table/TablePagination/TablePagination.js"),require("../Table/TablePaginationActions/TablePaginationActions.js"),require("../Tooltip/ScrollableTooltip.js"),require("../PriceInput/PriceInput.js"),require("../LabelsCounter/LabelsCounter.js"),require("../Stepper/Stepper.js"),require("../Stepper/Step/Step.js"),require("../Stepper/StepsWrapper.js"),require("../Comment/CommentIcon/index.js"),require("../FilesLoader/FilesLoader.js"),require("../../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 Y=require("../../utils/notificationToasts.js");function Z(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var X=Z(e),J=Z(r),Q=Z(s),$=Z(t),ee=Z(n),re=Z(o);function se(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 te(e){for(var r=1;r<arguments.length;r++){var s=null!=arguments[r]?arguments[r]:{};r%2?se(Object(s),!0).forEach((function(r){X.default(e,r,s[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):se(Object(s)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(s,r))}))}return e}var ne="OffsetWellPickerV5";exports.OffsetWellPickerV5=function(){var e,r,s,t=O.usePickerPropsStore((function(e){return e.open})),n=O.usePickerPropsStore((function(e){return e.isWDUser})),o=O.usePickerPropsStore((function(e){return e.defaultSubjectWell})),Z=O.usePickerPropsStore((function(e){return e.currentUser})),se=O.usePickerPropsStore((function(e){return e.offsetSettings})),ie=O.usePickerPropsStore((function(e){return e.isViewOnly})),oe=O.usePickerPropsStore((function(e){return e.onClose})),ue=O.usePickerPropsStore((function(e){return e.onSave})),ce=O.usePickerPropsStore((function(e){return e.maxOffsetSize})),le=O.usePickerPropsStore((function(e){return e.localMaxOffsetSize})),ae=O.usePickerPropsStore((function(e){return e.syncAutoEnabled})),pe=i.useState(null),de=$.default(pe,2),me=de[0],qe=de[1],je=Math.min(ce+1,le+1,V.MAX_OFFSET_SIZE+1),fe=Math.min(Math.max(je,le+1),V.MAX_OFFSET_SIZE+1),Ce=null==o?void 0:o.asset_id,Ae=g.useFetchSubjectWell(Ce),Se=$.default(Ae,1)[0];U.useGlobalOffsetWellsSync(se,ue,fe);var ve=M.useViewStore((function(e){return e.isFilterExpanded})),he=M.useViewStore((function(e){return e.isMapHidden})),ge=M.useViewStore((function(e){return e.isHScrollMoved})),Ie=M.useViewStore((function(e){return e.setIsHScrollMoved})),Ve=M.useViewStore((function(e){return e.isAdvancedSearchHidden})),be=M.useViewStore((function(e){return e.setIsAdvancedSearchHidden})),Pe=+(null==o?void 0:o.companyId)||+(null==Z?void 0:Z.company_id),xe=Ce>0,Te=k.useFilterStore((function(e){return e.filters})),ye=k.useFilterStore((function(e){return e.setFilters})),De=k.useFilterStore((function(e){return e.resetFilters})),We=null!==(e=k.useFilterStore((function(e){return e.filters.radius})))&&void 0!==e?e:V.DEFAULT_RADIUS_MILES,Fe=null!==(r=k.useFilterStore((function(e){return e.filters.selectionMode})))&&void 0!==r?r:"radius",Ee=k.useFilterStore((function(e){return e.filters.polygonCoords})),Oe=S.useCompanies({open:t}),ke=Oe.canViewCompanies,Me=Oe.companies,Be=i.useState([]),Le=$.default(Be,2),we=Le[0],He=Le[1],Ne=i.useState([]),Re=$.default(Ne,2),_e=Re[0],Ge=Re[1],ze=i.useRef(new Set),Ue=i.useState([]),Ke=$.default(Ue,2),Ye=Ke[0],Ze=Ke[1],Xe=i.useState(!1),Je=$.default(Xe,2),Qe=Je[0],$e=Je[1],er=i.useMemo((function(){return Te[V.FilterType.company]}),[Te]);i.useEffect((function(){var e=(null==se?void 0:se.selectedWellIds)||[];!t||_e.length>0||0===e.length||Q.default(ee.default.mark((function r(){var s;return ee.default.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,I.fetchCompanyIdsByWellIds(e);case 2:s=r.sent,Ge(s);case 4:case"end":return r.stop()}}),r)})))()}),[t,null==se?void 0:se.selectedWellIds,_e.length]);var rr=i.useMemo((function(){var e=we.map((function(e){return e.companyId})).filter((function(e){return null!=e})),r=_e||[];if(!ke){var s=Pe?[Pe]:[];return J.default(new Set(s.concat(e,r)))}if(void 0===er){var t=Pe?[Pe]:[];return J.default(new Set(t.concat(e,r)))}if(Array.isArray(er)&&0===er.length)return null;var n=new Set(er);return Pe&&n.add(Pe),e.forEach((function(e){return n.add(e)})),r.forEach((function(e){return n.add(e)})),Array.from(n)}),[er,Pe,ke,we,_e]),sr=i.useState((null==se?void 0:se.wellSection)||V.ALL_SECTION_KEY),tr=$.default(sr,2),nr=tr[0],ir=tr[1],or=i.useRef(!0),ur=i.useState(!0),cr=$.default(ur,2),lr=cr[0],ar=cr[1],pr=fe<=(null==we?void 0:we.length),dr=i.useRef(),mr=i.useState(!0),qr=$.default(mr,2),jr=qr[0],fr=qr[1];i.useEffect((function(){if(t&&pr&&Y.showInfoNotification("App can’t process more than (".concat(fe-1,") Offset Wells.")),!t){var e,r,s=new Set(dr.current||[]);(null==se||null===(e=se.selectedWellIds)||void 0===e?void 0:e.length)===(null===(r=dr.current)||void 0===r?void 0:r.length)&&((null==se?void 0:se.selectedWellIds)||[]).every((function(e){return s.has(e)}))||(or.current=!0),dr.current=null==se?void 0:se.selectedWellIds}}),[pr,t,se,fe]);var Cr=a.useFetchWells(rr,Se,We,Fe,Ee),Ar=$.default(Cr,2),Sr=Ar[0],vr=Ar[1],hr=v.usePinnedWells(null==se?void 0:se.selectedWellIds),gr=$.default(hr,2),Ir=gr[0],Vr=gr[1],br=h.useSearchedWells(),Pr=$.default(br,3),xr=Pr[0],Tr=Pr[1],yr=Pr[2],Dr=i.useMemo((function(){if(!Sr)return null;var e=Sr;if(null!=Ir&&Ir.length){var r=new Set(e.map((function(e){return e.id}))),s=Ir.filter((function(e){return!r.has(e.id)}));s.length>0&&(e=e.concat(s))}if(null!=xr&&xr.length){var t=new Set(e.map((function(e){return e.id}))),n=xr.filter((function(e){return!t.has(e.id)}));n.length>0&&(e=e.concat(n))}return Se&&!e.some((function(e){return e.id===Se.id}))&&(e=[Se].concat(e)),e}),[Sr,Se,Ir,xr]),Wr=A.useCompanyProvider(Pe),Fr=$.default(Wr,1)[0],Er=d.useBicWells(Ce,Dr),Or=$.default(Er,7),kr=Or[0],Mr=Or[1],Br=Or[2],Lr=Or[3],wr=Or[4],Hr=Or[5],Nr=Or[6],Rr=i.useMemo((function(){return!!kr&&kr.some((function(e){return e.value!==V.ALL_SECTION_KEY}))}),[kr]);i.useEffect((function(){fr(!0),Mr(null),Lr(null)}),[Lr,Mr,Ce]);var _r=m.useCompanyMetricKey(Pe,null==se?void 0:se.metricsKeys),Gr=$.default(_r,2),zr=Gr[0],Ur=Gr[1],Kr=p.useAdvancedWells(Pe,Dr,kr,Br,Ce,zr,t),Yr=$.default(Kr,2),Zr=Yr[0],Xr=Yr[1],Jr=i.useMemo((function(){if(!Zr||null==Me||!Me.length)return Zr;var e={};return Me.forEach((function(r){e[r.id]=r.name})),Zr.map((function(r){return te(te({},r),{},{companyName:e[r.companyId]||"Null"})}))}),[Zr,Me]),Qr=i.useMemo((function(){return Se?Jr&&Jr.find((function(e){return e.id===Se.id}))||Se:null}),[Se,Jr]),$r=!(vr||Xr||Vr||Tr);i.useEffect((function(){if($r){var e,r=(e=Q.default(ee.default.mark((function e(){var r,s,t,n,i,o,u,c,l,a,p,d;return ee.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=void 0===(null==se?void 0:se.isSynced)||(null==se?void 0:se.isSynced),s=!0,!r){e.next=20;break}if(n=Br[V.ALL_SECTION_KEY]||[],i=new Set(n),o=((null==se?void 0:se.selectedWellIds)||[]).every((function(e){return i.has(e)})),n.length===(null==se||null===(t=se.selectedWellIds)||void 0===t?void 0:t.length)&&o){e.next=17;break}return e.next=9,F.getCoordinatedWells(n,Ce);case 9:u=e.sent,c=u.slice(0,le+1).map((function(e){return e.id})),l=te(te({},se),{},{subjectWellId:Ce,selectedWellIds:c,offsetWellsLimited:fe<=c.length}),a=new Set(c),p=u.filter((function(e){return a.has(e.id)})),ue(l,p),e.next=18;break;case 17:s=!1;case 18:e.next=21;break;case 20:s=!1;case 21:if(s){e.next=26;break}return e.next=24,F.getCoordinatedWells((null==se?void 0:se.selectedWellIds)||[],Ce);case 24:d=e.sent,ue(se,d);case 26:case"end":return e.stop()}}),e)}))),function(){return e.apply(this,arguments)});ae&&jr&&se&&Br&&(r(),fr(!1))}}),[se,Br,Ce,fe,ae,$r,jr,je,le,ue]);var es=q.useFilterOptions(Jr,Me,ke),rs=C.useTableColumns(zr,ke,Rr),ss=j.useFilteredWells(Jr,Te,Ee,We),ts=i.useMemo((function(){return ss?u.uniqBy(we.concat(ss),"id"):ss}),[ss,we]);i.useEffect((function(){if(ss&&$r&&or.current){var e=new Set((null==se?void 0:se.selectedWellIds)||[]),r=Jr.filter((function(r){return e.has(r.id)})),s=new Set(r.map((function(e){return e.id}))),t=we.filter((function(r){return e.has(r.id)&&!s.has(r.id)}));r=r.concat(t),Qr&&(r=r.concat(Qr)),He(u.uniqBy(r,"id")),or.current=!1}}),[Jr,ss,null==se?void 0:se.selectedWellIds,$r,Qr,we]),i.useEffect((function(){if(null!=Jr&&Jr.length&&0!==ze.current.size){var e=ze.current,r=Jr.filter((function(r){return e.has(r.id)}));r.length>0&&(He((function(e){var s=r.slice(0,Math.max(0,fe-e.length));return u.uniqBy(e.concat(s),"id")})),r.forEach((function(r){return e.delete(r.id)})))}}),[Jr,fe]);var ns,is=f.useSortedWells(Qr,ts,we,ar),os=$.default(is,5),us=os[0],cs=os[1],ls=os[2],as=os[3],ps=os[4],ds=i.useCallback((ns=Q.default(ee.default.mark((function e(r,s,t){var n,i,o,c,l,a,p,d;return ee.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t===W.SEARCH_CATEGORIES.well.name?n=s:(i=new Map,o=new Map,Jr.forEach((function(e){i.set(e.id,e.rigName),o.has(e.rigName)||o.set(e.rigName,[]),o.get(e.rigName).push(e.id)})),n=s.flatMap((function(e){var r=i.get(e);return o.get(r)||[]}))),c=new Set(n),l=Jr.filter((function(e){var r=e.id;return c.has(r)})),!(r&&l.length<n.length)){e.next=12;break}if(a=new Set(l.map((function(e){return e.id}))),!((p=n.filter((function(e){return!a.has(e)}))).length>0)){e.next=12;break}return Ze((function(e){return e.concat(p)})),e.next=10,yr(p);case 10:Ze((function(e){return e.filter((function(e){return!p.includes(e)}))})),p.forEach((function(e){return ze.current.add(e)}));case 12:r?(d=l.slice(0,Math.min(l.length,fe-we.length))).length>0&&He((function(e){return u.uniqBy(e.concat(d),"id")})):He((function(e){return u.uniq(e.filter((function(e){var r=e.id;return!l.find((function(e){return e.id===r}))})))}));case 13:case"end":return e.stop()}}),e)}))),function(e,r,s){return ns.apply(this,arguments)}),[Jr,fe,we.length,yr]),ms=i.useCallback((function(){be(!0)}),[be]),qs=i.useCallback((function(e){Ur(e)}),[Ur]),js=i.useCallback((function(e,r){Ur((function(s){return s.map((function(s){return s===e?r:s}))}))}),[Ur]),fs=i.useCallback((function(e,r){cs(e),as(r)}),[cs,as]),Cs=i.useCallback((function(e,r){if(r){var s=(null==Jr?void 0:Jr.find((function(r){return r.id===e.id})))||e;He((function(e){return e.concat(s)}))}else He((function(r){return r.filter((function(r){return r.id!==e.id}))}))}),[Jr]),As=i.useCallback((function(e){if(e){var r=Qr?ss.concat(Qr):ss,s=u.sortBy(u.uniqBy(r,"id"),"distance");He(s.slice(0,fe))}else He(Qr?[Qr]:[])}),[ss,Qr,fe]),Ss=i.useCallback((function(e){if(Br){var r=new Set(Br[e]||[]),s=(null==Jr?void 0:Jr.filter((function(e){return r.has(e.id)})))||[],t=u.sortBy(s,"distance");He(t.slice(0,je))}else He(Qr?[Qr]:[])}),[Br,je,Qr,Jr]),vs=i.useCallback((function(e){ir(e),Ss(e)}),[Ss]),hs=i.useMemo((function(){return we.find((function(e){return e.id===Ce}))?we.length-1:we.length}),[we,Ce]),gs=i.useMemo((function(){if(!Br)return!1;var e=we.map((function(e){return e.id})),r=Br[nr]||[];if(Math.min(r.length,je)!==e.length)return!1;var s=new Set(r);return e.every((function(e){return s.has(e)}))}),[Br,we,nr,je]),Is=i.useMemo((function(){return!!Fr&&V.COMPANY_PROVIDERS_FOR_IDAS.includes(Fr)}),[Fr]),Vs=i.useMemo((function(){return Is?"IDAS generated offsets.":n?"Offset Selection App.":"WellHub."}),[Is,n]),bs=i.useCallback((function(){oe();var e=we.map((function(e){return e.id})),r=te(te({},se),{},{companyId:Pe,subjectWellId:Ce,selectedWellIds:e,filters:Te,metricsKeys:zr,wellSection:nr,isSynced:gs,mapHidden:he,filterExpanded:ve,offsetWellsLimited:pr});ue(r,we)}),[oe,we,se,Pe,Ce,Te,zr,nr,gs,he,ve,pr,ue]);i.useEffect((function(){Qe&&0===ze.current.size&&($e(!1),bs())}),[Qe,we,bs]);var Ps=function(){var e=new Set((null==se?void 0:se.selectedWellIds)||[]),r=(Jr||[]).filter((function(r){return e.has(r.id)}));if(null!=Ir&&Ir.length){var s=new Set(r.map((function(e){return e.id}))),t=Ir.filter((function(r){return e.has(r.id)&&!s.has(r.id)}));r=r.concat(t)}Qr&&(r=r.concat(Qr)),He(u.uniqBy(r,"id"));var n=te(te({},se),{},{mapHidden:he,filterExpanded:ve});ue(n),ye(te({},(null==se?void 0:se.filters)||{})),ir((null==se?void 0:se.wellSection)||V.ALL_SECTION_KEY),oe()},xs=lr||vr,Ts=i.useMemo((function(){return!!xe&&(!xs&&(!gs||(!(u.isEmpty(Te)||!Te[V.FilterType.sideTracks])||nr!==V.ALL_SECTION_KEY)))}),[xe,gs,Te,nr,xs]),ys=i.useCallback((function(){De(),ir(V.ALL_SECTION_KEY),Ss(V.ALL_SECTION_KEY)}),[De,Ss]),Ds=!Jr||!kr||!ps,Ws=i.useState(V.ROWS_PER_PAGE),Fs=$.default(Ws,2),Es=Fs[0],Os=Fs[1],ks=i.useState([]),Ms=$.default(ks,2),Bs=Ms[0],Ls=Ms[1],ws=i.useRef();i.useEffect((function(){if(ps){var e=ps.slice(0,Es);Ls(e)}}),[ps,Es,Qr]),i.useEffect((function(){if(ws.current){var e=ws.current.querySelector(".".concat(L.wellNameFixed));e&&(ge?e.classList.remove(L.noShadow):e.classList.add(L.noShadow))}}),[ge,Bs]);var Hs=i.useMemo((function(){return u.uniqBy(Bs,"id")}),[Bs]),Ns=i.useMemo((function(){var e=Hs.filter((function(e){return e.checked}));return[e,Hs.length!==e.length&&Boolean(e.length)&&!pr,e.length===Hs.length||pr]}),[Hs,pr]),Rs=$.default(Ns,3),_s=Rs[0],Gs=Rs[1],zs=Rs[2],Us=i.useMemo((function(){return E.getIsImperial()}),[]);i.useEffect((function(){wr===V.RESYNC_STATUS.SUCCEEDED&&ys()}),[Br,ys,wr]);return w.jsx(z.Modal,{open:t,onClose:Ps,size:"fullscreen",className:B.modalDialog,title:w.jsx(b.AppHeader,{totalCount:null!==(s=null==Jr?void 0:Jr.length)&&void 0!==s?s:0,selectedCount:hs,maxOffsetWellNumber:fe,isXtoProvider:Is,resyncStatus:wr,setResyncStatus:Hr,metricsKeys:zr,onChangeMetricsKeys:qs}),actions:!ie&&w.jsxs("div",{className:B.actionsWrapper,children:[!Ds&&Ts?w.jsx(_.Tooltip,{placement:"bottom-start",title:"Reset to Synced Offsets in ".concat(n?"Offset App":"Wellhub"),children:w.jsx("div",{children:w.jsx(R.Button,{"data-testid":"".concat(ne,"_reset"),onClick:ys,color:"primary",startIcon:w.jsx(c.Replay,{}),children:"Reset to Defaults"})})}):xe&&w.jsxs("div",{children:[w.jsx("span",{className:re.default(N.regular12,N.colors.t6),children:"The offset list is being automatically populated by "}),w.jsx("span",{className:re.default(N.medium12,N.colors.t6),children:Vs})]}),w.jsxs("div",{className:B.buttonGap,children:[w.jsx(R.Button,{"data-testid":"".concat(ne,"_cancel"),onClick:Ps,color:"primary",children:"Cancel"}),w.jsxs(R.Button,{"data-testid":"".concat(ne,"_selectedWells"),variant:"contained",color:"primary",onClick:function(){ze.current.size>0?$e(!0):bs()},disabled:Qe,prefix:Qe?w.jsx(G.LoaderCircular,{size:16}):void 0,children:["Select (",hs,")"]})]})]}),children:w.jsxs("div",{className:re.default(B.offsetWellDialog),children:[w.jsx(H.NotificationsContainer,{}),Ds?w.jsx(K,{}):w.jsxs("div",{className:re.default(B.contentWrapper,X.default({},B.contentBlocked,xs)),children:[w.jsxs("div",{className:B.columnsContainer,children:[!he&&t&&w.jsx("div",{className:B.leftColumn,children:w.jsx(x.WellsMap,{mapHidden:he,subjectWell:Qr,offsetWellIds:we.map((function(e){return e.id})),wells:ts,handleChangeOffsetWell:Cs,activeWellId:me})}),w.jsxs("div",{className:B.rightColumn,onScroll:function(e){e.target&&(Ve&&(e.target.scrollLeft=0,be(!1)),e.target.scrollLeft<=5&&ge&&Ie(!1),e.target.scrollLeft>5&&!ge&&Ie(!0),e.target.scrollHeight!==e.target.offsetHeight&&Math.round(e.target.scrollTop+e.target.offsetHeight+2)>=e.target.scrollHeight&&Es<ps.length&&Os((function(e){return e+V.ROWS_PER_PAGE})))},children:[w.jsx(P.Filter,{isHidden:!ve,filterOptions:es,wellSections:kr,selectedWellSection:nr,subjectWell:Qr,assetCompanyId:Pe,onChangeBicWells:vs}),w.jsx("div",{className:L.stickyTable,children:w.jsxs(l.Table,{"aria-label":"ows table head",innerRef:ws,children:[w.jsx(l.TableHead,{children:w.jsx(y.OffsetWellsTableHead,{columnsWithDict:rs,metricsKeys:zr,sortBy:us,sortDirection:ls,indeterminate:Gs,isAllWellsSelected:zs,onChangeSort:fs,onUpdateMetricsKey:js,handleChangeAllOffsetWells:As,wellNameStyle:L.wellNameFixed,isImperial:Us,isTaColumnVisible:!!Nr.length,isWellSectionColumnVisible:Rr})}),ie&&w.jsx("div",{className:B.topGradient})]})}),!ie&&w.jsxs("div",{className:re.default(L.searchCellWrapper),children:[w.jsx("div",{className:L.searchCell,children:w.jsx(D.AdvancedSearch,{companyId:Pe,subjectWellId:Ce,onChange:ds,selectedWellIds:_s.map((function(e){return e.id})),onHideAdvancedSearch:ms,loadingAssetIds:Ye})}),w.jsx("div",{className:B.topGradient})]}),w.jsx(T.OffsetWellsTable,{isTableLoading:xs,subjectWellId:Ce,columnsWithDict:rs,wells:Bs,metricsKeys:zr,handleChangeOffsetWell:Cs,isLastWell:ps.length<=Es,isLimitedOffsetWells:pr,maxOffsetWellNumber:fe,wellSections:kr,setActiveWellId:qe,taScores:Nr,isWellSectionColumnVisible:Rr})]})]}),ie&&xe&&w.jsxs("div",{className:B.viewOnlyInfoContainer,children:[w.jsx("span",{className:re.default(N.regular12,N.colors.t6),children:"The offset list is being automatically populated by "}),w.jsx("span",{className:re.default(N.medium12,N.colors.t6),children:Vs})]})]})]})})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});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"),u=require("lodash"),c=require("@material-ui/icons"),l=require("@material-ui/core"),a=require("./effects/useFetchWells.js"),d=require("./effects/useAdvancedWells.js"),p=require("./effects/useBicWells.js"),m=require("./effects/useCompanyMetricKey.js"),q=require("./effects/useFilterOptions.js"),j=require("./effects/useFilteredWells.js"),f=require("./effects/useSortedWells.js");require("./effects/useAssetsData.js");var C=require("./effects/useTableColumns.js"),S=require("./effects/useCompanyProvider.js"),A=require("./effects/useCompanies.js"),v=require("./effects/usePinnedWells.js"),h=require("./effects/useSearchedWells.js"),g=require("./effects/useFetchSubjectWell.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("./api/shared/dataFormatter.js");var I=require("./api/wells/fetchCompanyIdsByWellIds.js"),V=require("./constants.js"),b=require("./components/AppHeader/AppHeader.js"),P=require("./components/Filter/Filter.js"),x=require("./components/Map/WellsMap.js"),T=require("./components/OffsetWellsTable/OffsetWellsTable.js"),y=require("./components/OffsetWellsTable/OffsetWellsTableHead.js"),D=require("./components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.js"),W=require("./components/OffsetWellsTable/AdvancedSearch/constants.js"),F=require("./utils/index.js"),k=require("./utils/getIsImperial.js"),E=require("./stores/picker-props-store/usePickerPropsStore.js"),O=require("./stores/filter-store/useFilterStore.js"),M=require("./stores/view-store/useViewStore.js"),B=require("./OffsetWellPickerV5.module.css.js"),w=require("./components/OffsetWellsTable/OffsetWellsTable.module.css.js");require("../../utils/index.js");var L=require("react/jsx-runtime");require("@material-ui/core/Snackbar"),require("../Notifications/Toast.js"),require("../Notifications/Notifications.scss.js");var H=require("../Notifications/NotificationsContainer.js"),N=require("../../styles/typography/index.js");require("../../styles/counter/counter.module.scss.js"),require("../DevCenter/DevCenterAppContainer/components/IsInsideIsolatedDcAppProvider/IsInsideIsolatedDcAppProvider.js"),require("../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/DcFullscreenElemsCoordinatorProvider.js"),require("../DevCenter/DevCenterAppContainer/components/DcFullscreenElemsCoordinatorProvider/IsInsideDcFullscreenElemProvider.js"),require("@icon-park/react/es/all"),require("../../icons/IconParkProvider.js"),require("../../icons/customIcons/icons/AddMessage.js"),require("../../icons/customIcons/icons/Attention.js"),require("../../icons/customIcons/icons/Collapse.js"),require("../../icons/customIcons/icons/Dashboard.js"),require("../../icons/customIcons/icons/Expand.js"),require("../../icons/customIcons/icons/FolderClosed.js"),require("../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../icons/customIcons/icons/FolderOpened.js"),require("../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../icons/customIcons/icons/LessOrEqual.js"),require("../../icons/customIcons/icons/Search.js"),require("../../icons/customIcons/icons/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("../../utils/mobileDetect.js"),require("../IconButton/index.js"),require("../../constants/goals.js"),require("../../constants/segment.js"),require("../../constants/alerts.js"),require("../../constants/apps.js"),require("../../constants/drillstring.js"),require("../../constants/completion.js"),require("../../constants/appPackages.js"),require("../../constants/notifications.js"),require("../../constants/feed.js"),require("../../constants/bha.js"),require("../../constants/corvaCompanyId.js"),require("../GradientManager/configuration/constants.js"),require("../Modal/CorvaModal.css.js"),require("../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/AppContext.js"),require("../DevCenter/DevCenterRouterContext/DevCenterRouterContext.js"),require("../DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("react-router"),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");var R=require("../../componentsV2/Button/Button.js");require("../../componentsV2/ButtonIcon/ButtonIcon.js");var G=require("../../componentsV2/Tooltip/Tooltip.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");var _=require("../../componentsV2/LoaderCircular/LoaderCircular.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");var z=require("../../componentsV2/Modal/Modal.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("../../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 U=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 K=require("../LoadingIndicator/LoadingIndicator.js");require("../Typography.js"),require("../RealTimeValuesSidebar/RealTimeSidebar.js"),require("../CollapsableSidebar.js"),require("../DateTimePicker/index.js"),require("../DatePicker/index.js"),require("../ErrorBoundary/ErrorBoundary.js"),require("../ErrorBoundary/DevCenterAppErrorView/DevCenterAppErrorView.js"),require("../SlateFormattedText/SlateFormattedText.js"),require("../SlateFormattedText/RenderElements.js"),require("slate"),require("../EmptyState/EmptyState.js"),require("../ParameterCharts/ParameterCharts.js"),require("../ParameterCharts/AddEditTrack.js"),require("../ChartActionsList/ChartActionsList.js"),require("../CopyToClipboard/CopyToClipboard.js"),require("../AssetEditor/AssetEditorAutocomplete.js"),require("../AssetEditor/SingleAssetEditor.js"),require("react-color"),require("../SettingEditors/ColorEditor/style.css.js"),require("../SettingEditors/DropdownEditor/index.js"),require("../SwitchControl/index.js"),require("../ColorPicker/ColorPicker.js"),require("../Chart/components/ChartButton.js"),require("../Chart/components/ChartButtons.js"),require("../Chart/components/ChartWrapper.js"),require("../Chart/components/AxisDropdown.js"),require("../Chart/components/ChartSelect.js"),require("../Chart/components/buttons/DragToZoomButton.js"),require("../Chart/components/buttons/ZoomInButton.js"),require("../Chart/components/buttons/ZoomOutButton.js"),require("../Chart/components/buttons/PanButton.js"),require("../Chart/components/buttons/ResetZoomButton.js"),require("../Chart/components/buttons/HideAxesButton.js"),require("../Chart/components/buttons/ChartTypeButton.js"),require("../ColorPicker/PaletteChromePicker/PaletteChromePicker.js"),require("../TruncatedText/index.js"),require("../MiddleTruncatedText/MiddleTruncatedText.js"),require("../RangeSlider/constants.js"),require("../RangeSlider/Input.css.js"),require("../RangeSlider/RangeSlider.css.js"),require("../AdvancedSlider/AdvancedSlider.js"),require("../Breadcrumbs/index.js"),require("../VirtualizedTable/index.js"),require("../EmptyView/EmptyView.js"),require("../EmptyView/EmptyAppView/EmptyAppView.js"),require("../Button/components/Button/index.js"),require("moment-timezone"),require("../Button/components/LiveButton/components/LiveButtonStateIndicator/index.js"),require("../Button/components/LiveButton/styles.js"),require("../ContextMenuItem/index.js"),require("../FolderMenuItem/index.js"),require("../EditableItem/EditableItem/index.js"),require("../EditableItem/EditableItemWithBadge/index.js"),require("../Checkbox/index.js"),require("../FolderMenuItemWithLinks/index.js"),require("../TextField/index.js"),require("../Chip/index.js"),require("../Counter/index.js"),require("../AnchorsList/AnchorsList.js"),require("../Select/index.js"),require("../Select/SelectFilterBy.js"),require("../CustomSelect/index.js"),require("../Tabs/Tabs.js"),require("../Tabs/Tab.js"),require("../ResizableTable/ResizableTable.js"),require("../GradientPicker/GradientPicker.js"),require("../GradientManager/GradientList.js"),require("@material-ui/icons/AddCircle"),require("../GradientManager/GradientPreview/GradientPreview.js"),require("../GradientManager/GradientSelect.styles.js"),require("../GradientManager/GradientManager.styles.js"),require("../Drillstring/BHASchematic.js"),require("../Drillstring/BHATable/index.js"),require("../Drillstring/BHAComponentIcon.js"),require("../Drillstring/BHAComponentDetail/index.js"),require("../Drillstring/BHATileIcon.js"),require("../Drillstring/BHATile/BHATile.js"),require("../Drillstring/BHAList/BHAList.js"),require("../Drillstring/BHAComponentsTable/BHAComponentsTable.js"),require("../Casing/CasingTable/index.js"),require("../Casing/CasingComponentIcon.js"),require("../Casing/CasingTileIcon.js"),require("../Casing/CasingTableV2/CasingTableV2.js"),require("../Casing/CasingTile/CasingTile.js"),require("../DisabledSettingsMessage/DisabledSettingsMessage.js"),require("../WellSummary/WellSummaryItemLabel.js"),require("../WellSummary/WellSummaryItemTitle.js"),require("../WellSummary/WellSummaryItemValue.js"),require("../WellSummary/ActivitySummaryChart.js"),require("../WellSummary/FracWirelineTimeChart.js"),require("../BICOffsetPickerDialog/index.js"),require("../OffsetWellButton/OffsetWellButton.js"),require("../OffsetWellPickerV2/OffsetWellPickerDialog.js"),require("../OffsetWellPickerV3/index.js"),require("../OffsetWellChips/Chip.js"),require("../OffsetWellChips/ChipsContainer.js"),require("./OffsetWellPickerV5WithStore.js"),require("../OffsetWellPickerV4/utils/apiCalls.js"),require("../OffsetWellPickerV4/effects/useAdvancedWells.js"),require("../OffsetWellPickerV4/constants.js"),require("react-virtualized"),require("../OffsetWellPickerV4/effects/useAssetsData.js"),require("../../permissions/PermissionsContext.js"),require("../../permissions/constants/index.js"),require("../../permissions/withPermissionsHOC.js"),require("../../permissions/ProvidePermissions.js"),require("../OffsetWellPickerV4/components/AppHeader/AppHeader.js"),require("../OffsetWellPickerV4/components/Toolbar/Toolbar.js"),require("../OffsetWellPickerV4/components/Filter/Filter.js"),require("../OffsetWellPickerV4/components/Map/WellsMap.js"),require("../OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js"),require("../OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/constants.js"),require("../OffsetWellPickerV4/utils/index.js"),require("../OffsetWellPickerV4/OffsetWellPickerV4.module.css.js"),require("../OffsetWellMap/OffsetWellMap.js"),require("../ConfirmationDialog.js"),require("../TextLink/index.js"),require("../Avatar/index.js"),require("../Template/TemplatePopover/index.js"),require("../Template/TemplateSharingDialog/index.js"),require("../MenuItem/index.js"),require("../MiddleTruncate/MiddleTruncate.js"),require("../PinnableFilters/PinnableFilters.js"),require("../HeaderLayout/HeaderLayout.js"),require("../PadOffsetsPicker/PadOffsetsPicker.js"),require("../PadOffsetsPicker/OffsetAssetChip.js"),require("../PadOffsetsPicker/OffsetAssetsListExpander.js"),require("../PadOffsetsPicker/StagesSelector.js"),require("../PadOffsetsPickerV2/PadOffsetsPickerV2.js"),require("../Table/TableToolbar/TableToolbar.js"),require("../Table/TableContainer/TableContainer.js"),require("../Table/TableCell/TableCell.js"),require("../Table/TablePagination/TablePagination.js"),require("../Table/TablePaginationActions/TablePaginationActions.js"),require("../Tooltip/ScrollableTooltip.js"),require("../PriceInput/PriceInput.js"),require("../LabelsCounter/LabelsCounter.js"),require("../Stepper/Stepper.js"),require("../Stepper/Step/Step.js"),require("../Stepper/StepsWrapper.js"),require("../Comment/CommentIcon/index.js"),require("../FilesLoader/FilesLoader.js"),require("../../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 Y=require("../../utils/notificationToasts.js");function Z(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var X=Z(e),J=Z(r),Q=Z(s),$=Z(t),ee=Z(n),re=Z(o);function se(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 te(e){for(var r=1;r<arguments.length;r++){var s=null!=arguments[r]?arguments[r]:{};r%2?se(Object(s),!0).forEach((function(r){X.default(e,r,s[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):se(Object(s)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(s,r))}))}return e}var ne="OffsetWellPickerV5";exports.OffsetWellPickerV5=function(){var e,r,s,t=E.usePickerPropsStore((function(e){return e.open})),n=E.usePickerPropsStore((function(e){return e.isWDUser})),o=E.usePickerPropsStore((function(e){return e.defaultSubjectWell})),Z=E.usePickerPropsStore((function(e){return e.currentUser})),se=E.usePickerPropsStore((function(e){return e.offsetSettings})),ie=E.usePickerPropsStore((function(e){return e.isViewOnly})),oe=E.usePickerPropsStore((function(e){return e.onClose})),ue=E.usePickerPropsStore((function(e){return e.onSave})),ce=E.usePickerPropsStore((function(e){return e.maxOffsetSize})),le=E.usePickerPropsStore((function(e){return e.localMaxOffsetSize})),ae=E.usePickerPropsStore((function(e){return e.syncAutoEnabled})),de=i.useState(null),pe=$.default(de,2),me=pe[0],qe=pe[1],je=Math.min(ce+1,le+1,V.MAX_OFFSET_SIZE+1),fe=Math.min(Math.max(je,le+1),V.MAX_OFFSET_SIZE+1),Ce=null==o?void 0:o.asset_id,Se=g.useFetchSubjectWell(Ce),Ae=$.default(Se,1)[0];U.useGlobalOffsetWellsSync(se,ue,fe);var ve=M.useViewStore((function(e){return e.isFilterExpanded})),he=M.useViewStore((function(e){return e.isMapHidden})),ge=M.useViewStore((function(e){return e.isHScrollMoved})),Ie=M.useViewStore((function(e){return e.setIsHScrollMoved})),Ve=M.useViewStore((function(e){return e.isVScrollMoved})),be=M.useViewStore((function(e){return e.setIsVScrollMoved})),Pe=M.useViewStore((function(e){return e.isAdvancedSearchHidden})),xe=M.useViewStore((function(e){return e.setIsAdvancedSearchHidden})),Te=+(null==o?void 0:o.companyId)||+(null==Z?void 0:Z.company_id),ye=Ce>0,De=O.useFilterStore((function(e){return e.filters})),We=O.useFilterStore((function(e){return e.setFilters})),Fe=O.useFilterStore((function(e){return e.resetFilters})),ke=null!==(e=O.useFilterStore((function(e){return e.filters.radius})))&&void 0!==e?e:V.DEFAULT_RADIUS_MILES,Ee=null!==(r=O.useFilterStore((function(e){return e.filters.selectionMode})))&&void 0!==r?r:"radius",Oe=O.useFilterStore((function(e){return e.filters.polygonCoords})),Me=A.useCompanies({open:t}),Be=Me.canViewCompanies,we=Me.companies,Le=i.useState([]),He=$.default(Le,2),Ne=He[0],Re=He[1],Ge=i.useState([]),_e=$.default(Ge,2),ze=_e[0],Ue=_e[1],Ke=i.useRef(new Set),Ye=i.useState([]),Ze=$.default(Ye,2),Xe=Ze[0],Je=Ze[1],Qe=i.useState(!1),$e=$.default(Qe,2),er=$e[0],rr=$e[1],sr=i.useMemo((function(){return De[V.FilterType.company]}),[De]);i.useEffect((function(){var e=(null==se?void 0:se.selectedWellIds)||[];!t||ze.length>0||0===e.length||Q.default(ee.default.mark((function r(){var s;return ee.default.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,I.fetchCompanyIdsByWellIds(e);case 2:s=r.sent,Ue(s);case 4:case"end":return r.stop()}}),r)})))()}),[t,null==se?void 0:se.selectedWellIds,ze.length]);var tr=i.useMemo((function(){var e=Ne.map((function(e){return e.companyId})).filter((function(e){return null!=e})),r=ze||[];if(!Be){var s=Te?[Te]:[];return J.default(new Set(s.concat(e,r)))}if(void 0===sr){var t=Te?[Te]:[];return J.default(new Set(t.concat(e,r)))}if(Array.isArray(sr)&&0===sr.length)return null;var n=new Set(sr);return Te&&n.add(Te),e.forEach((function(e){return n.add(e)})),r.forEach((function(e){return n.add(e)})),Array.from(n)}),[sr,Te,Be,Ne,ze]),nr=i.useState((null==se?void 0:se.wellSection)||V.ALL_SECTION_KEY),ir=$.default(nr,2),or=ir[0],ur=ir[1],cr=i.useRef(!0),lr=i.useState(!0),ar=$.default(lr,2),dr=ar[0],pr=ar[1],mr=fe<=(null==Ne?void 0:Ne.length),qr=i.useRef(),jr=i.useState(!0),fr=$.default(jr,2),Cr=fr[0],Sr=fr[1];i.useEffect((function(){if(t&&mr&&Y.showInfoNotification("App can’t process more than (".concat(fe-1,") Offset Wells.")),!t){var e,r,s=new Set(qr.current||[]);(null==se||null===(e=se.selectedWellIds)||void 0===e?void 0:e.length)===(null===(r=qr.current)||void 0===r?void 0:r.length)&&((null==se?void 0:se.selectedWellIds)||[]).every((function(e){return s.has(e)}))||(cr.current=!0),qr.current=null==se?void 0:se.selectedWellIds}}),[mr,t,se,fe]);var Ar=a.useFetchWells(tr,Ae,ke,Ee,Oe),vr=$.default(Ar,2),hr=vr[0],gr=vr[1],Ir=v.usePinnedWells(null==se?void 0:se.selectedWellIds),Vr=$.default(Ir,2),br=Vr[0],Pr=Vr[1],xr=h.useSearchedWells(),Tr=$.default(xr,3),yr=Tr[0],Dr=Tr[1],Wr=Tr[2],Fr=i.useMemo((function(){if(!hr)return null;var e=hr;if(null!=br&&br.length){var r=new Set(e.map((function(e){return e.id}))),s=br.filter((function(e){return!r.has(e.id)}));s.length>0&&(e=e.concat(s))}if(null!=yr&&yr.length){var t=new Set(e.map((function(e){return e.id}))),n=yr.filter((function(e){return!t.has(e.id)}));n.length>0&&(e=e.concat(n))}return Ae&&!e.some((function(e){return e.id===Ae.id}))&&(e=[Ae].concat(e)),e}),[hr,Ae,br,yr]),kr=S.useCompanyProvider(Te),Er=$.default(kr,1)[0],Or=p.useBicWells(Ce,Fr),Mr=$.default(Or,7),Br=Mr[0],wr=Mr[1],Lr=Mr[2],Hr=Mr[3],Nr=Mr[4],Rr=Mr[5],Gr=Mr[6],_r=i.useMemo((function(){return!!Br&&Br.some((function(e){return e.value!==V.ALL_SECTION_KEY}))}),[Br]);i.useEffect((function(){Sr(!0),wr(null),Hr(null)}),[Hr,wr,Ce]);var zr=m.useCompanyMetricKey(Te,null==se?void 0:se.metricsKeys),Ur=$.default(zr,2),Kr=Ur[0],Yr=Ur[1],Zr=d.useAdvancedWells(Te,Fr,Br,Lr,Ce,Kr,t),Xr=$.default(Zr,2),Jr=Xr[0],Qr=Xr[1],$r=i.useMemo((function(){if(!Jr||null==we||!we.length)return Jr;var e={};return we.forEach((function(r){e[r.id]=r.name})),Jr.map((function(r){return te(te({},r),{},{companyName:e[r.companyId]||"Null"})}))}),[Jr,we]),es=i.useMemo((function(){return Ae?$r&&$r.find((function(e){return e.id===Ae.id}))||Ae:null}),[Ae,$r]),rs=!(gr||Qr||Pr||Dr);i.useEffect((function(){if(rs){var e,r=(e=Q.default(ee.default.mark((function e(){var r,s,t,n,i,o,u,c,l,a,d,p;return ee.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=void 0===(null==se?void 0:se.isSynced)||(null==se?void 0:se.isSynced),s=!0,!r){e.next=20;break}if(n=Lr[V.ALL_SECTION_KEY]||[],i=new Set(n),o=((null==se?void 0:se.selectedWellIds)||[]).every((function(e){return i.has(e)})),n.length===(null==se||null===(t=se.selectedWellIds)||void 0===t?void 0:t.length)&&o){e.next=17;break}return e.next=9,F.getCoordinatedWells(n,Ce);case 9:u=e.sent,c=u.slice(0,le+1).map((function(e){return e.id})),l=te(te({},se),{},{subjectWellId:Ce,selectedWellIds:c,offsetWellsLimited:fe<=c.length}),a=new Set(c),d=u.filter((function(e){return a.has(e.id)})),ue(l,d),e.next=18;break;case 17:s=!1;case 18:e.next=21;break;case 20:s=!1;case 21:if(s){e.next=26;break}return e.next=24,F.getCoordinatedWells((null==se?void 0:se.selectedWellIds)||[],Ce);case 24:p=e.sent,ue(se,p);case 26:case"end":return e.stop()}}),e)}))),function(){return e.apply(this,arguments)});ae&&Cr&&se&&Lr&&(r(),Sr(!1))}}),[se,Lr,Ce,fe,ae,rs,Cr,je,le,ue]);var ss=q.useFilterOptions($r,we,Be),ts=C.useTableColumns(Kr,Be,_r),ns=j.useFilteredWells($r,De,Oe,ke),is=i.useMemo((function(){return ns?u.uniqBy(Ne.concat(ns),"id"):ns}),[ns,Ne]);i.useEffect((function(){if(ns&&rs&&cr.current){var e=new Set((null==se?void 0:se.selectedWellIds)||[]),r=$r.filter((function(r){return e.has(r.id)})),s=new Set(r.map((function(e){return e.id}))),t=Ne.filter((function(r){return e.has(r.id)&&!s.has(r.id)}));r=r.concat(t),es&&(r=r.concat(es)),Re(u.uniqBy(r,"id")),cr.current=!1}}),[$r,ns,null==se?void 0:se.selectedWellIds,rs,es,Ne]),i.useEffect((function(){if(null!=$r&&$r.length&&0!==Ke.current.size){var e=Ke.current,r=$r.filter((function(r){return e.has(r.id)}));if(r.length>0){var s=r.map((function(e){return e.id}));Je((function(e){return e.filter((function(e){return!s.includes(e)}))})),Re((function(e){var s=r.slice(0,Math.max(0,fe-e.length));return u.uniqBy(e.concat(s),"id")})),r.forEach((function(r){return e.delete(r.id)}))}}}),[$r,fe]);var os,us=f.useSortedWells(es,is,Ne,pr),cs=$.default(us,5),ls=cs[0],as=cs[1],ds=cs[2],ps=cs[3],ms=cs[4],qs=i.useCallback((os=Q.default(ee.default.mark((function e(r,s,t){var n,i,o,c,l,a,d,p;return ee.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t===W.SEARCH_CATEGORIES.well.name?n=s:(i=new Map,o=new Map,$r.forEach((function(e){i.set(e.id,e.rigName),o.has(e.rigName)||o.set(e.rigName,[]),o.get(e.rigName).push(e.id)})),n=s.flatMap((function(e){var r=i.get(e);return o.get(r)||[]}))),c=new Set(n),l=$r.filter((function(e){var r=e.id;return c.has(r)})),!(r&&l.length<n.length)){e.next=11;break}if(a=new Set(l.map((function(e){return e.id}))),!((d=n.filter((function(e){return!a.has(e)}))).length>0)){e.next=11;break}return Je((function(e){return e.concat(d)})),e.next=10,Wr(d);case 10:d.forEach((function(e){return Ke.current.add(e)}));case 11:r?(p=l.slice(0,Math.min(l.length,fe-Ne.length))).length>0&&Re((function(e){return u.uniqBy(e.concat(p),"id")})):Re((function(e){return u.uniq(e.filter((function(e){var r=e.id;return!l.find((function(e){return e.id===r}))})))}));case 12:case"end":return e.stop()}}),e)}))),function(e,r,s){return os.apply(this,arguments)}),[$r,fe,Ne.length,Wr]),js=i.useCallback((function(){xe(!0)}),[xe]),fs=i.useCallback((function(e){Yr(e)}),[Yr]),Cs=i.useCallback((function(e,r){Yr((function(s){return s.map((function(s){return s===e?r:s}))}))}),[Yr]),Ss=i.useCallback((function(e,r){as(e),ps(r)}),[as,ps]),As=i.useCallback((function(e,r){if(r){var s=(null==$r?void 0:$r.find((function(r){return r.id===e.id})))||e;Re((function(e){return e.concat(s)}))}else Re((function(r){return r.filter((function(r){return r.id!==e.id}))}))}),[$r]),vs=i.useCallback((function(e){if(e){var r=es?ns.concat(es):ns,s=u.sortBy(u.uniqBy(r,"id"),"distance");Re(s.slice(0,fe))}else Re(es?[es]:[])}),[ns,es,fe]),hs=i.useCallback((function(e){Re((function(r){var s=new Set(r.map((function(e){return e.id}))),t=e.filter((function(e){return!s.has(e.id)}));if(0===t.length)return r;var n=fe-r.length,i=t.slice(0,n).map((function(e){return(null==$r?void 0:$r.find((function(r){return r.id===e.id})))||e}));return u.uniqBy(r.concat(i),"id")}))}),[$r,fe]),gs=i.useCallback((function(e){if(Lr){var r=new Set(Lr[e]||[]),s=(null==$r?void 0:$r.filter((function(e){return r.has(e.id)})))||[],t=u.sortBy(s,"distance");Re(t.slice(0,je))}else Re(es?[es]:[])}),[Lr,je,es,$r]),Is=i.useCallback((function(e){ur(e),gs(e)}),[gs]),Vs=i.useMemo((function(){return Ne.find((function(e){return e.id===Ce}))?Ne.length-1:Ne.length}),[Ne,Ce]),bs=i.useMemo((function(){if(!Lr)return!1;var e=Ne.map((function(e){return e.id})),r=Lr[or]||[];if(Math.min(r.length,je)!==e.length)return!1;var s=new Set(r);return e.every((function(e){return s.has(e)}))}),[Lr,Ne,or,je]),Ps=i.useMemo((function(){return!!Er&&V.COMPANY_PROVIDERS_FOR_IDAS.includes(Er)}),[Er]),xs=i.useMemo((function(){return Ps?"IDAS generated offsets.":n?"Offset Selection App.":"WellHub."}),[Ps,n]),Ts=i.useCallback((function(){oe();var e=Ne.map((function(e){return e.id})),r=te(te({},se),{},{companyId:Te,subjectWellId:Ce,selectedWellIds:e,filters:De,metricsKeys:Kr,wellSection:or,isSynced:bs,mapHidden:he,filterExpanded:ve,offsetWellsLimited:mr});ue(r,Ne)}),[oe,Ne,se,Te,Ce,De,Kr,or,bs,he,ve,mr,ue]);i.useEffect((function(){er&&0===Ke.current.size&&(rr(!1),Ts())}),[er,Ne,Ts]);var ys=function(){var e=new Set((null==se?void 0:se.selectedWellIds)||[]),r=($r||[]).filter((function(r){return e.has(r.id)}));if(null!=br&&br.length){var s=new Set(r.map((function(e){return e.id}))),t=br.filter((function(r){return e.has(r.id)&&!s.has(r.id)}));r=r.concat(t)}es&&(r=r.concat(es)),Re(u.uniqBy(r,"id"));var n=te(te({},se),{},{mapHidden:he,filterExpanded:ve});ue(n),We(te({},(null==se?void 0:se.filters)||{})),ur((null==se?void 0:se.wellSection)||V.ALL_SECTION_KEY),oe()},Ds=dr||gr,Ws=i.useMemo((function(){return!!ye&&(!Ds&&(!bs||(!(u.isEmpty(De)||!De[V.FilterType.sideTracks])||or!==V.ALL_SECTION_KEY)))}),[ye,bs,De,or,Ds]),Fs=i.useCallback((function(){Fe(),ur(V.ALL_SECTION_KEY),gs(V.ALL_SECTION_KEY)}),[Fe,gs]),ks=!$r||!Br||!ms,Es=i.useState(V.ROWS_PER_PAGE),Os=$.default(Es,2),Ms=Os[0],Bs=Os[1],ws=i.useState([]),Ls=$.default(ws,2),Hs=Ls[0],Ns=Ls[1],Rs=i.useRef();i.useEffect((function(){if(ms){var e=ms.slice(0,Ms);Ns(e)}}),[ms,Ms,es]),i.useEffect((function(){if(Rs.current){var e=Rs.current.querySelector(".".concat(w.wellNameFixed));e&&(ge?e.classList.remove(w.noShadow):e.classList.add(w.noShadow))}}),[ge,Hs]);var Gs=i.useMemo((function(){return u.uniqBy(Hs,"id")}),[Hs]),_s=i.useMemo((function(){var e=Gs.filter((function(e){return e.checked}));return[e,Gs.length!==e.length&&Boolean(e.length)&&!mr,e.length===Gs.length||mr]}),[Gs,mr]),zs=$.default(_s,3),Us=zs[0],Ks=zs[1],Ys=zs[2],Zs=i.useMemo((function(){return k.getIsImperial()}),[]);i.useEffect((function(){Nr===V.RESYNC_STATUS.SUCCEEDED&&Fs()}),[Lr,Fs,Nr]);return L.jsx(z.Modal,{open:t,onClose:ys,size:"fullscreen",className:B.modalDialog,title:L.jsx(b.AppHeader,{totalCount:null!==(s=null==$r?void 0:$r.length)&&void 0!==s?s:0,selectedCount:Vs,maxOffsetWellNumber:fe,isXtoProvider:Ps,resyncStatus:Nr,setResyncStatus:Rr,metricsKeys:Kr,onChangeMetricsKeys:fs}),actions:!ie&&L.jsxs("div",{className:B.actionsWrapper,children:[!ks&&Ws?L.jsx(G.Tooltip,{placement:"bottom-start",title:"Reset to Synced Offsets in ".concat(n?"Offset App":"Wellhub"),children:L.jsx("div",{children:L.jsx(R.Button,{"data-testid":"".concat(ne,"_reset"),onClick:Fs,color:"primary",startIcon:L.jsx(c.Replay,{}),children:"Reset to Defaults"})})}):ye&&L.jsxs("div",{children:[L.jsx("span",{className:re.default(N.regular12,N.colors.t6),children:"The offset list is being automatically populated by "}),L.jsx("span",{className:re.default(N.medium12,N.colors.t6),children:xs})]}),L.jsxs("div",{className:B.buttonGap,children:[L.jsx(R.Button,{"data-testid":"".concat(ne,"_cancel"),onClick:ys,color:"primary",children:"Cancel"}),L.jsxs(R.Button,{"data-testid":"".concat(ne,"_selectedWells"),variant:"contained",color:"primary",onClick:function(){Ke.current.size>0?rr(!0):Ts()},disabled:er,prefix:er?L.jsx(_.LoaderCircular,{size:16}):void 0,children:["Select (",Vs,")"]})]})]}),children:L.jsxs("div",{className:re.default(B.offsetWellDialog),children:[L.jsx(H.NotificationsContainer,{}),ks?L.jsx(K,{}):L.jsxs("div",{className:re.default(B.contentWrapper,X.default({},B.contentBlocked,Ds)),children:[L.jsxs("div",{className:B.columnsContainer,children:[!he&&t&&L.jsx("div",{className:B.leftColumn,children:L.jsx(x.WellsMap,{mapHidden:he,subjectWell:es,offsetWellIds:Ne.map((function(e){return e.id})),wells:is,handleChangeOffsetWell:As,onBatchSelectWells:hs,activeWellId:me})}),L.jsxs("div",{className:B.rightColumn,onScroll:function(e){e.target&&(Pe&&(e.target.scrollLeft=0,xe(!1)),e.target.scrollLeft<=5&&ge&&Ie(!1),e.target.scrollLeft>5&&!ge&&Ie(!0),e.target.scrollTop<=0&&Ve&&be(!1),e.target.scrollTop>0&&!Ve&&be(!0),e.target.scrollHeight!==e.target.offsetHeight&&Math.round(e.target.scrollTop+e.target.offsetHeight+2)>=e.target.scrollHeight&&Ms<ms.length&&Bs((function(e){return e+V.ROWS_PER_PAGE})))},children:[L.jsx(P.Filter,{isHidden:!ve,filterOptions:ss,wellSections:Br,selectedWellSection:or,subjectWell:es,assetCompanyId:Te,onChangeBicWells:Is}),L.jsx("div",{className:w.stickyTableWrapper,children:L.jsxs(l.Table,{"aria-label":"ows table head",innerRef:Rs,className:w.stickyTable,children:[L.jsx(l.TableHead,{children:L.jsx(y.OffsetWellsTableHead,{columnsWithDict:ts,metricsKeys:Kr,sortBy:ls,sortDirection:ds,indeterminate:Ks,isAllWellsSelected:Ys,onChangeSort:Ss,onUpdateMetricsKey:Cs,handleChangeAllOffsetWells:vs,wellNameStyle:w.wellNameFixed,isImperial:Zs,isTaColumnVisible:!!Gr.length,isWellSectionColumnVisible:_r})}),ie&&L.jsx("div",{className:re.default(B.topGradient,X.default({},B.topGradientScrolled,Ve))})]})}),!ie&&L.jsxs("div",{className:re.default(w.searchCellWrapper),children:[L.jsx("div",{className:w.searchCell,children:L.jsx(D.AdvancedSearch,{companyId:Te,subjectWellId:Ce,onChange:qs,selectedWellIds:Us.map((function(e){return e.id})),onHideAdvancedSearch:js,loadingAssetIds:Xe})}),L.jsx("div",{className:re.default(B.topGradient,X.default({},B.topGradientScrolled,Ve))})]}),L.jsx(T.OffsetWellsTable,{isTableLoading:Ds,subjectWellId:Ce,columnsWithDict:ts,wells:Hs,metricsKeys:Kr,handleChangeOffsetWell:As,isLastWell:ms.length<=Ms,isLimitedOffsetWells:mr,maxOffsetWellNumber:fe,wellSections:Br,setActiveWellId:qe,taScores:Gr,isWellSectionColumnVisible:_r})]})]}),ie&&ye&&L.jsxs("div",{className:B.viewOnlyInfoContainer,children:[L.jsx("span",{className:re.default(N.regular12,N.colors.t6),children:"The offset list is being automatically populated by "}),L.jsx("span",{className:re.default(N.medium12,N.colors.t6),children:xs})]})]})]})})};
2
2
  //# sourceMappingURL=OffsetWellPickerV5.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OffsetWellPickerV5.js","sources":["../../../../src/components/OffsetWellPickerV5/OffsetWellPickerV5.js"],"sourcesContent":["import { useState, useEffect, useRef, useCallback, useMemo } from 'react';\nimport classNames from 'classnames';\nimport { isEmpty, uniq, uniqBy, sortBy as sortArray } from 'lodash';\nimport { Replay as ReplayIcon } from '@material-ui/icons';\nimport { Table, TableHead } from '@material-ui/core';\n\nimport {\n useAdvancedWells,\n useBicWells,\n useFilterOptions,\n useCompanyMetricKey,\n useFilteredWells,\n useSortedWells,\n useTableColumns,\n useCompanyProvider,\n useCompanies,\n usePinnedWells,\n useSearchedWells,\n} from './effects';\nimport { useFetchWells } from './effects/useFetchWells';\nimport { useFetchSubjectWell } from './effects/useFetchSubjectWell';\nimport { fetchCompanyIdsByWellIds } from './api';\nimport { AppHeader } from './components/AppHeader';\nimport { Filter } from './components/Filter';\nimport { WellsMap } from './components/Map';\nimport { OffsetWellsTable } from './components/OffsetWellsTable';\nimport { OffsetWellsTableHead } from './components/OffsetWellsTable/OffsetWellsTableHead';\nimport { AdvancedSearch } from './components/OffsetWellsTable/AdvancedSearch';\nimport {\n ALL_SECTION_KEY,\n COMPANY_PROVIDERS_FOR_IDAS,\n FilterType,\n MAX_OFFSET_SIZE,\n ROWS_PER_PAGE,\n RESYNC_STATUS,\n DEFAULT_RADIUS_MILES,\n} from './constants';\nimport { SEARCH_CATEGORIES } from './components/OffsetWellsTable/AdvancedSearch/constants';\nimport { getCoordinatedWells } from './utils';\nimport { getIsImperial } from './utils/getIsImperial';\nimport { usePickerPropsStore } from './stores/picker-props-store/usePickerPropsStore';\nimport { useFilterStore } from './stores/filter-store/useFilterStore';\nimport { useViewStore } from './stores/view-store/useViewStore';\n\nimport styles from './OffsetWellPickerV5.module.css';\nimport offsetTableStyles from './components/OffsetWellsTable/OffsetWellsTable.module.css';\n\nimport { showInfoNotification } from '~/utils';\nimport { NotificationsContainer } from '~/components/Notifications';\nimport { typography } from '~/styles';\nimport { LoadingIndicator } from '~/components';\nimport { Button, LoaderCircular, Modal, Tooltip } from '~/componentsV2';\nimport { useGlobalOffsetWellsSync } from '~/effects';\n\nconst PAGE_NAME = 'OffsetWellPickerV5';\n\nexport const OffsetWellPickerV5 = () => {\n const open = usePickerPropsStore(state => state.open);\n const isWDUser = usePickerPropsStore(state => state.isWDUser);\n const defaultSubjectWell = usePickerPropsStore(state => state.defaultSubjectWell);\n const currentUser = usePickerPropsStore(state => state.currentUser);\n const offsetSettings = usePickerPropsStore(state => state.offsetSettings);\n const isViewOnly = usePickerPropsStore(state => state.isViewOnly);\n const onClose = usePickerPropsStore(state => state.onClose);\n const onSave = usePickerPropsStore(state => state.onSave);\n const offsetSize = usePickerPropsStore(state => state.maxOffsetSize);\n const localMaxOffsetSize = usePickerPropsStore(state => state.localMaxOffsetSize);\n const syncAutoEnabled = usePickerPropsStore(state => state.syncAutoEnabled);\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\n // Fetch complete subject well data with coordinates\n const [fetchedSubjectWell] = useFetchSubjectWell(subjectWellId);\n\n useGlobalOffsetWellsSync(offsetSettings, onSave, maxOffsetWellNumber);\n\n const isFilterExpanded = useViewStore(state => state.isFilterExpanded);\n const isMapHidden = useViewStore(state => state.isMapHidden);\n const isHScrollMoved = useViewStore(state => state.isHScrollMoved);\n const setIsHScrollMoved = useViewStore(state => state.setIsHScrollMoved);\n const isAdvancedSearchHidden = useViewStore(state => state.isAdvancedSearchHidden);\n const setIsAdvancedSearchHidden = useViewStore(state => state.setIsAdvancedSearchHidden);\n\n const assetCompanyId = +defaultSubjectWell?.companyId || +currentUser?.company_id;\n const hasValidAssetId = subjectWellId > 0;\n const filters = useFilterStore(state => state.filters);\n const setFilters = useFilterStore(state => state.setFilters);\n const resetFilters = useFilterStore(state => state.resetFilters);\n const radiusFilter = useFilterStore(state => state.filters.radius) ?? DEFAULT_RADIUS_MILES;\n const selectionMode = useFilterStore(state => state.filters.selectionMode) ?? 'radius';\n const polygonCoords = useFilterStore(state => state.filters.polygonCoords);\n const { canViewCompanies, companies } = useCompanies({ open });\n const [selectedWells, setSelectedWells] = useState([]);\n const [preselectedCompanyIds, setPreselectedCompanyIds] = useState([]);\n\n // Track wells being selected via search that need to wait for enrichment\n const pendingSearchSelectionRef = useRef(new Set());\n\n // Track asset IDs currently being fetched (for loading spinner in search dropdown)\n const [loadingAssetIds, setLoadingAssetIds] = useState([]);\n\n // Track if save is waiting for pending wells to be enriched\n const [isSavePending, setIsSavePending] = useState(false);\n\n const companyFilter = useMemo(() => filters[FilterType.company], [filters]);\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\n return [...new Set(baseIds.concat(selectedWellCompanyIds, bootstrapCompanyIds))];\n }\n\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\n return [...new Set(baseIds.concat(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 allIdsSet = new Set(companyFilter);\n if (assetCompanyId) {\n allIdsSet.add(assetCompanyId);\n }\n selectedWellCompanyIds.forEach(id => allIdsSet.add(id));\n bootstrapCompanyIds.forEach(id => allIdsSet.add(id));\n return Array.from(allIdsSet);\n }, [companyFilter, assetCompanyId, canViewCompanies, selectedWells, preselectedCompanyIds]);\n const [selectedWellSection, setSelectedWellSection] = useState(\n offsetSettings?.wellSection || ALL_SECTION_KEY\n );\n const initLoading = useRef(true);\n const [isTableLoading, setIsTableLoading] = useState(true);\n\n const isLimitedOffsetWells = maxOffsetWellNumber <= selectedWells?.length;\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 prevIdsSet = new Set(prevSelectedWellIds.current || []);\n const isNotChanged =\n offsetSettings?.selectedWellIds?.length === prevSelectedWellIds.current?.length &&\n (offsetSettings?.selectedWellIds || []).every(id => prevIdsSet.has(id));\n if (!isNotChanged) {\n initLoading.current = true;\n }\n prevSelectedWellIds.current = offsetSettings?.selectedWellIds;\n }\n // TODO: Check reference stability. Initially had only isLimitedOffsetWells, open, offsetSettings.\n }, [isLimitedOffsetWells, open, offsetSettings, maxOffsetWellNumber]);\n\n // NOTE: Fetch wells based on company filter, coordinate bounds, or polygon if subject well exists\n const [rawWells, areRawWellsLoading] = useFetchWells(\n companyIdsToFetch,\n fetchedSubjectWell,\n radiusFilter,\n selectionMode,\n polygonCoords\n );\n\n // NOTE: Fetch pinned wells independently of radius\n const [pinnedWells, arePinnedWellsLoading] = usePinnedWells(offsetSettings?.selectedWellIds);\n\n // NOTE: Fetch wells selected via search that are outside current bounds\n const [searchedWells, areSearchedWellsLoading, fetchSearchedWells] = useSearchedWells();\n\n // NOTE: Ensure subject well, pinned wells and searched wells are always in rawWells for enrichment pipeline\n const rawWellsWithSubject = useMemo(() => {\n if (!rawWells) {\n return null;\n }\n\n let result = rawWells;\n\n if (pinnedWells?.length) {\n const existingIds = new Set(result.map(w => w.id));\n const missingPinned = pinnedWells.filter(w => !existingIds.has(w.id));\n\n if (missingPinned.length > 0) {\n result = result.concat(missingPinned);\n }\n }\n\n // Merge searched wells (wells added via search that are outside bounds)\n if (searchedWells?.length) {\n const existingIds = new Set(result.map(w => w.id));\n const missingSearched = searchedWells.filter(w => !existingIds.has(w.id));\n\n if (missingSearched.length > 0) {\n result = result.concat(missingSearched);\n }\n }\n\n if (fetchedSubjectWell && !result.some(w => w.id === fetchedSubjectWell.id)) {\n result = [fetchedSubjectWell].concat(result);\n }\n\n return result;\n }, [rawWells, fetchedSubjectWell, pinnedWells, searchedWells]);\n\n const [companyProvider] = useCompanyProvider(assetCompanyId);\n\n const [\n wellSections,\n setWellSections,\n bicWells,\n setBicWells,\n resyncStatus,\n setResyncStatus,\n taScores,\n ] = useBicWells(subjectWellId, rawWellsWithSubject);\n\n const isWellSectionColumnVisible = useMemo(() => {\n if (!wellSections) {\n return false;\n }\n\n return wellSections.some(section => section.value !== ALL_SECTION_KEY);\n }, [wellSections]);\n\n useEffect(() => {\n setAppLoading(true);\n setWellSections(null);\n setBicWells(null);\n // TODO: Check reference stability. Initially had only subjectWellId.\n }, [setBicWells, setWellSections, 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, areAdvancedWellsLoading] = useAdvancedWells(\n assetCompanyId,\n rawWellsWithSubject,\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 // NOTE: Derive enriched subject well from the enrichment pipeline (includes company name)\n const subjectWell = useMemo(() => {\n if (!fetchedSubjectWell) {\n return null;\n }\n\n if (!wells) {\n return fetchedSubjectWell;\n }\n\n const enrichedSubjectWell = wells.find(w => w.id === fetchedSubjectWell.id);\n\n return enrichedSubjectWell || fetchedSubjectWell;\n }, [fetchedSubjectWell, wells]);\n\n const isAllWellsLoaded =\n !areRawWellsLoading &&\n !areAdvancedWellsLoading &&\n !arePinnedWellsLoading &&\n !areSearchedWellsLoading;\n\n useEffect(() => {\n if (!isAllWellsLoaded) {\n return;\n }\n\n const syncOffsetWells = async () => {\n const isSynced = typeof offsetSettings?.isSynced === 'undefined' || offsetSettings?.isSynced;\n\n let offsetWellsChanged = true;\n\n if (isSynced) {\n const bicWellIds = bicWells[ALL_SECTION_KEY] || [];\n const bicWellIdsSet = new Set(bicWellIds);\n const isMatched = (offsetSettings?.selectedWellIds || []).every(wellId =>\n bicWellIdsSet.has(wellId)\n );\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 const selectedWellIds = wellsByDistance\n .slice(0, localMaxOffsetSize + 1)\n .map(well => well.id);\n const newOffsetSetting = {\n ...offsetSettings,\n subjectWellId,\n selectedWellIds,\n offsetWellsLimited: maxOffsetWellNumber <= selectedWellIds.length,\n };\n const selectedWellIdsSet = new Set(selectedWellIds);\n const offsetWells = wellsByDistance.filter(well => selectedWellIdsSet.has(well.id));\n\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 // TODO: Check reference stability. Initially had only offsetSettings, bicWells, subjectWellId, maxOffsetWellNumber, syncAutoEnabled\n }, [\n offsetSettings,\n bicWells,\n subjectWellId,\n maxOffsetWellNumber,\n syncAutoEnabled,\n isAllWellsLoaded,\n appLoading,\n maxOffsetSize,\n localMaxOffsetSize,\n onSave,\n ]);\n\n const filterOptions = useFilterOptions(wells, companies, canViewCompanies);\n\n // NOTE: Table columns with metrics\n const columnsWithDict = useTableColumns(\n metricsKeys,\n canViewCompanies,\n isWellSectionColumnVisible\n );\n // NOTE: Filter wells\n const filteredWells = useFilteredWells(wells, filters, polygonCoords, radiusFilter);\n\n // NOTE: Include selected wells from other companies so they can be deselected\n const wellsToDisplay = useMemo(() => {\n if (!filteredWells) {\n return filteredWells;\n }\n\n // Ensure ALL selected wells are displayed (at top via useSortedWells)\n // regardless of current company filter\n return uniqBy(selectedWells.concat(filteredWells), 'id');\n }, [filteredWells, selectedWells]);\n\n useEffect(() => {\n if (!filteredWells || !isAllWellsLoaded) {\n return;\n }\n\n if (initLoading.current) {\n const selectedIdsSet = new Set(offsetSettings?.selectedWellIds || []);\n\n let data = wells.filter(well => selectedIdsSet.has(well.id));\n\n // Preserve existing selectedWells not in wells array (may have been fetched by usePinnedWells)\n const dataIds = new Set(data.map(w => w.id));\n const preserved = selectedWells.filter(w => selectedIdsSet.has(w.id) && !dataIds.has(w.id));\n\n data = data.concat(preserved);\n\n if (subjectWell) {\n data = data.concat(subjectWell);\n }\n\n setSelectedWells(uniqBy(data, 'id'));\n initLoading.current = false;\n }\n }, [\n wells,\n filteredWells,\n offsetSettings?.selectedWellIds,\n isAllWellsLoaded,\n subjectWell,\n selectedWells,\n ]);\n\n // NOTE: Add pending search selections once wells are enriched\n useEffect(() => {\n if (!wells?.length || pendingSearchSelectionRef.current.size === 0) {\n return;\n }\n\n const pendingIds = pendingSearchSelectionRef.current;\n const enrichedWells = wells.filter(w => pendingIds.has(w.id));\n\n if (enrichedWells.length > 0) {\n setSelectedWells(prev => {\n const limited = enrichedWells.slice(0, Math.max(0, maxOffsetWellNumber - prev.length));\n\n return uniqBy(prev.concat(limited), 'id');\n });\n enrichedWells.forEach(w => pendingIds.delete(w.id));\n }\n }, [wells, maxOffsetWellNumber]);\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 async (isAdding, newAssets, assetType) => {\n let addingWellIds;\n\n if (assetType === SEARCH_CATEGORIES.well.name) {\n addingWellIds = newAssets;\n } else {\n // Build lookup maps once for O(1) access\n const wellIdToRigName = new Map();\n const rigNameToWellIds = new Map();\n wells.forEach(well => {\n wellIdToRigName.set(well.id, well.rigName);\n if (!rigNameToWellIds.has(well.rigName)) {\n rigNameToWellIds.set(well.rigName, []);\n }\n rigNameToWellIds.get(well.rigName).push(well.id);\n });\n\n addingWellIds = newAssets.flatMap(assetId => {\n const rigName = wellIdToRigName.get(assetId);\n\n return rigNameToWellIds.get(rigName) || [];\n });\n }\n\n const addingWellIdsSet = new Set(addingWellIds);\n const addingWells = wells.filter(({ id }) => addingWellIdsSet.has(id));\n\n // Fetch missing wells (outside bounds) when adding via search\n // These will be added to selectedWells via effect once enriched\n if (isAdding && addingWells.length < addingWellIds.length) {\n const foundIds = new Set(addingWells.map(w => w.id));\n const missingIds = addingWellIds.filter(id => !foundIds.has(id));\n\n if (missingIds.length > 0) {\n // Show loading spinner in search dropdown\n setLoadingAssetIds(prev => prev.concat(missingIds));\n\n // Trigger fetch to add wells to enrichment pipeline\n await fetchSearchedWells(missingIds);\n\n // Clear loading state\n setLoadingAssetIds(prev => prev.filter(id => !missingIds.includes(id)));\n\n // Store as pending - effect will add enriched wells to selectedWells\n missingIds.forEach(id => pendingSearchSelectionRef.current.add(id));\n }\n }\n\n if (isAdding) {\n // Only add wells that are already enriched (in wells array)\n const limitedWells = addingWells.slice(\n 0,\n Math.min(addingWells.length, maxOffsetWellNumber - selectedWells.length)\n );\n if (limitedWells.length > 0) {\n setSelectedWells(selectedWells => uniqBy(selectedWells.concat(limitedWells), 'id'));\n }\n } else {\n setSelectedWells(selectedWells =>\n uniq(selectedWells.filter(({ id }) => !addingWells.find(well => well.id === id)))\n );\n }\n },\n // TODO: Check reference stability. Initially had wells, selectedWells\n [wells, maxOffsetWellNumber, selectedWells.length, fetchSearchedWells]\n );\n\n const handleHideAdvancedSearch = useCallback(() => {\n setIsAdvancedSearchHidden(true);\n }, [setIsAdvancedSearchHidden]);\n\n // NOTE: Change metrics keys\n const handleChangeMetricsKeys = useCallback(\n newMetricsKeys => {\n setMetricsKeys(newMetricsKeys);\n },\n [setMetricsKeys]\n );\n\n const handleUpdateMetricsKey = useCallback(\n (key, newValue) => {\n setMetricsKeys(prevKeys => prevKeys.map(item => (item === key ? newValue : item)));\n },\n [setMetricsKeys]\n );\n\n const handleChangeSortBy = useCallback(\n (sortKey, sortDirection) => {\n setSortBy(sortKey);\n setSortDirection(sortDirection);\n },\n [setSortBy, setSortDirection]\n );\n\n // NOTE: Check and Uncheck one offset well\n const handleChangeOffsetWell = useCallback(\n (well, checked) => {\n if (checked) {\n const enrichedWell = wells?.find(w => w.id === well.id) || well;\n setSelectedWells(prevWells => prevWells.concat(enrichedWell));\n } else {\n setSelectedWells(prevWells => prevWells.filter(item => item.id !== well.id));\n }\n },\n [wells]\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 = useCallback(\n section => {\n if (bicWells) {\n const sectionWellIdsSet = new Set(bicWells[section] || []);\n const sectionWells = wells?.filter(well => sectionWellIdsSet.has(well.id)) || [];\n const limitedWells = sortArray(sectionWells, 'distance');\n setSelectedWells(limitedWells.slice(0, maxOffsetSize));\n } else {\n setSelectedWells(subjectWell ? [subjectWell] : []);\n }\n },\n [bicWells, maxOffsetSize, subjectWell, wells]\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 const owsWellIds = bicWells[selectedWellSection] || [];\n const owsWellIdsLength = Math.min(owsWellIds.length, maxOffsetSize);\n\n if (owsWellIdsLength !== selectedWellIds.length) {\n return false;\n }\n const owsWellIdsSet = new Set(owsWellIds);\n return selectedWellIds.every(id => owsWellIdsSet.has(id));\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 performSave = useCallback(() => {\n onClose();\n\n const selectedIds = selectedWells.map(({ id }) => id);\n\n const newOffsetSetting = {\n ...offsetSettings,\n companyId: assetCompanyId,\n subjectWellId,\n selectedWellIds: selectedIds,\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 onClose,\n selectedWells,\n offsetSettings,\n assetCompanyId,\n subjectWellId,\n filters,\n metricsKeys,\n selectedWellSection,\n isSynced,\n isMapHidden,\n isFilterExpanded,\n isLimitedOffsetWells,\n onSave,\n ]);\n\n // NOTE: Complete pending save once all wells are enriched\n useEffect(() => {\n if (!isSavePending) {\n return;\n }\n\n // Check if all pending wells have been enriched (moved to selectedWells)\n if (pendingSearchSelectionRef.current.size === 0) {\n setIsSavePending(false);\n performSave();\n }\n }, [isSavePending, selectedWells, performSave]);\n\n const handleSave = () => {\n if (pendingSearchSelectionRef.current.size > 0) {\n // Wells still pending enrichment - wait for them\n setIsSavePending(true);\n return;\n }\n\n performSave();\n };\n\n const handleCancel = () => {\n const selectedIdsSet = new Set(offsetSettings?.selectedWellIds || []);\n let data = (wells || []).filter(well => selectedIdsSet.has(well.id));\n\n if (pinnedWells?.length) {\n const dataIds = new Set(data.map(w => w.id));\n const preserved = pinnedWells.filter(w => selectedIdsSet.has(w.id) && !dataIds.has(w.id));\n\n data = data.concat(preserved);\n }\n\n if (subjectWell) {\n data = data.concat(subjectWell);\n }\n\n setSelectedWells(uniqBy(data, 'id'));\n\n const newOffsetSetting = {\n ...offsetSettings,\n mapHidden: isMapHidden,\n filterExpanded: isFilterExpanded,\n };\n onSave(newOffsetSetting);\n setFilters({\n ...(offsetSettings?.filters || {}),\n });\n setSelectedWellSection(offsetSettings?.wellSection || ALL_SECTION_KEY);\n onClose();\n };\n\n const isTableFullLoading = isTableLoading || areRawWellsLoading;\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 = useCallback(() => {\n resetFilters();\n setSelectedWellSection(ALL_SECTION_KEY);\n updateSelectedWellsBySection(ALL_SECTION_KEY);\n }, [resetFilters, updateSelectedWellsBySection]);\n\n const isLoading = !wells || !wellSections || !sortedWells;\n\n // NOTE: Well Name shadow\n const [tableRowsCount, setTableRowsCount] = useState(ROWS_PER_PAGE);\n const [tableWells, setTableWells] = useState([]);\n const headTableRef = useRef();\n\n useEffect(() => {\n if (!sortedWells) return;\n\n const wells = sortedWells.slice(0, tableRowsCount);\n setTableWells(wells);\n }, [sortedWells, tableRowsCount, subjectWell]);\n\n // NOTE: Remove shadow from header column\n useEffect(() => {\n if (!headTableRef.current) return;\n const headColumn = headTableRef.current.querySelector(`.${offsetTableStyles.wellNameFixed}`);\n if (!headColumn) return;\n if (!isHScrollMoved) {\n headColumn.classList.add(offsetTableStyles.noShadow);\n } else {\n headColumn.classList.remove(offsetTableStyles.noShadow);\n }\n }, [isHScrollMoved, tableWells]);\n\n // Calculations for table header and search - moved from OffsetWellsTable\n const uniqTableWells = useMemo(() => uniqBy(tableWells, 'id'), [tableWells]);\n\n const [selectedTableWells, indeterminate, isAllWellsSelected] = useMemo(() => {\n const selectedTableWells = uniqTableWells.filter(well => well.checked);\n const indeterminate =\n uniqTableWells.length !== selectedTableWells.length &&\n Boolean(selectedTableWells.length) &&\n !isLimitedOffsetWells;\n const isAllWellsSelected =\n selectedTableWells.length === uniqTableWells.length || isLimitedOffsetWells;\n\n return [selectedTableWells, indeterminate, isAllWellsSelected];\n }, [uniqTableWells, isLimitedOffsetWells]);\n\n const isImperial = useMemo(() => getIsImperial(), []);\n\n useEffect(() => {\n if (resyncStatus === RESYNC_STATUS.SUCCEEDED) {\n handleReset();\n }\n // TODO: Check reference stability. Initially had only bicWells\n }, [bicWells, handleReset, resyncStatus]);\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 // 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 return (\n <Modal\n open={open}\n onClose={handleCancel}\n size=\"fullscreen\"\n className={styles.modalDialog}\n title={\n <AppHeader\n totalCount={wells?.length ?? 0}\n selectedCount={selectedWellsCount}\n maxOffsetWellNumber={maxOffsetWellNumber}\n isXtoProvider={isXtoProvider}\n resyncStatus={resyncStatus}\n setResyncStatus={setResyncStatus}\n metricsKeys={metricsKeys}\n onChangeMetricsKeys={handleChangeMetricsKeys}\n />\n }\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={<ReplayIcon />}\n >\n Reset to Defaults\n </Button>\n </div>\n </Tooltip>\n ) : (\n hasValidAssetId && (\n <div>\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 )}\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 disabled={isSavePending}\n prefix={isSavePending ? <LoaderCircular size={16} /> : undefined}\n >\n Select ({selectedWellsCount})\n </Button>\n </div>\n </div>\n )\n }\n >\n <div className={classNames(styles.offsetWellDialog)}>\n <NotificationsContainer />\n {!isLoading ? (\n <div\n className={classNames(styles.contentWrapper, {\n [styles.contentBlocked]: isTableFullLoading,\n })}\n >\n <div className={styles.columnsContainer}>\n {!isMapHidden && open && (\n <div className={styles.leftColumn}>\n <WellsMap\n mapHidden={isMapHidden}\n subjectWell={subjectWell}\n offsetWellIds={selectedWells.map(({ id }) => id)}\n wells={wellsToDisplay}\n handleChangeOffsetWell={handleChangeOffsetWell}\n activeWellId={activeWellId}\n />\n </div>\n )}\n <div className={styles.rightColumn} onScroll={handleScroll}>\n <Filter\n isHidden={!isFilterExpanded}\n filterOptions={filterOptions}\n wellSections={wellSections}\n selectedWellSection={selectedWellSection}\n subjectWell={subjectWell}\n assetCompanyId={assetCompanyId}\n onChangeBicWells={handleChangeWellSection}\n />\n <div className={offsetTableStyles.stickyTable}>\n <Table aria-label=\"ows table head\" innerRef={headTableRef}>\n <TableHead>\n <OffsetWellsTableHead\n columnsWithDict={columnsWithDict}\n metricsKeys={metricsKeys}\n sortBy={sortBy}\n sortDirection={sortDirection}\n indeterminate={indeterminate}\n isAllWellsSelected={isAllWellsSelected}\n onChangeSort={handleChangeSortBy}\n onUpdateMetricsKey={handleUpdateMetricsKey}\n handleChangeAllOffsetWells={handleChangeAllOffsetWells}\n wellNameStyle={offsetTableStyles.wellNameFixed}\n isImperial={isImperial}\n isTaColumnVisible={!!taScores.length}\n isWellSectionColumnVisible={isWellSectionColumnVisible}\n />\n </TableHead>\n {isViewOnly && <div className={styles.topGradient} />}\n </Table>\n </div>\n\n {!isViewOnly && (\n <div className={classNames(offsetTableStyles.searchCellWrapper)}>\n <div className={offsetTableStyles.searchCell}>\n <AdvancedSearch\n companyId={assetCompanyId}\n subjectWellId={subjectWellId}\n onChange={handleAddRemoveAssets}\n selectedWellIds={selectedTableWells.map(({ id }) => id)}\n onHideAdvancedSearch={handleHideAdvancedSearch}\n loadingAssetIds={loadingAssetIds}\n />\n </div>\n <div className={styles.topGradient} />\n </div>\n )}\n\n <OffsetWellsTable\n isTableLoading={isTableFullLoading}\n subjectWellId={subjectWellId}\n columnsWithDict={columnsWithDict}\n wells={tableWells}\n metricsKeys={metricsKeys}\n handleChangeOffsetWell={handleChangeOffsetWell}\n isLastWell={sortedWells.length <= tableRowsCount}\n isLimitedOffsetWells={isLimitedOffsetWells}\n maxOffsetWellNumber={maxOffsetWellNumber}\n wellSections={wellSections}\n setActiveWellId={setActiveWellId}\n taScores={taScores}\n isWellSectionColumnVisible={isWellSectionColumnVisible}\n />\n </div>\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 />\n )}\n </div>\n </Modal>\n );\n};\n"],"names":["PAGE_NAME","_useFilterStore","_useFilterStore2","_wells$length","open","usePickerPropsStore","state","isWDUser","defaultSubjectWell","currentUser","offsetSettings","isViewOnly","onClose","onSave","offsetSize","maxOffsetSize","localMaxOffsetSize","syncAutoEnabled","useState","_useState2","_slicedToArray","_useState","activeWellId","setActiveWellId","Math","min","MAX_OFFSET_SIZE","maxOffsetWellNumber","max","subjectWellId","asset_id","useFetchSubjectWell","fetchedSubjectWell","_useFetchSubjectWell","useGlobalOffsetWellsSync","isFilterExpanded","useViewStore","isMapHidden","isHScrollMoved","setIsHScrollMoved","isAdvancedSearchHidden","setIsAdvancedSearchHidden","assetCompanyId","companyId","company_id","hasValidAssetId","filters","useFilterStore","setFilters","resetFilters","radiusFilter","radius","DEFAULT_RADIUS_MILES","selectionMode","polygonCoords","_useCompanies","useCompanies","canViewCompanies","companies","_useState4","_useState3","selectedWells","setSelectedWells","_useState6","_useState5","preselectedCompanyIds","setPreselectedCompanyIds","pendingSearchSelectionRef","useRef","Set","_useState8","_useState7","loadingAssetIds","setLoadingAssetIds","_useState10","_useState9","isSavePending","setIsSavePending","companyFilter","useMemo","FilterType","company","useEffect","selectedIds","selectedWellIds","length","_asyncToGenerator","_regeneratorRuntime","mark","_callee","ids","wrap","_context","prev","next","fetchCompanyIdsByWellIds","sent","stop","companyIdsToFetch","selectedWellCompanyIds","map","well","filter","id","bootstrapCompanyIds","baseIds","_toConsumableArray","concat","undefined","Array","isArray","allIdsSet","add","forEach","from","_useState11","wellSection","ALL_SECTION_KEY","_useState12","selectedWellSection","setSelectedWellSection","initLoading","_useState14","_useState13","isTableLoading","setIsTableLoading","isLimitedOffsetWells","prevSelectedWellIds","_useState16","_useState15","appLoading","setAppLoading","showInfoNotification","_offsetSettings$selec","_prevSelectedWellIds$","prevIdsSet","current","every","has","useFetchWells","_useFetchWells2","_useFetchWells","rawWells","areRawWellsLoading","usePinnedWells","_usePinnedWells2","_usePinnedWells","pinnedWells","arePinnedWellsLoading","_useSearchedWells","useSearchedWells","_useSearchedWells2","searchedWells","areSearchedWellsLoading","fetchSearchedWells","rawWellsWithSubject","result","existingIds","w","missingPinned","missingSearched","some","useCompanyProvider","companyProvider","_useCompanyProvider","_useBicWells","useBicWells","_useBicWells2","wellSections","setWellSections","bicWells","setBicWells","resyncStatus","setResyncStatus","taScores","isWellSectionColumnVisible","section","value","useCompanyMetricKey","metricsKeys","_useCompanyMetricKey2","_useCompanyMetricKey","setMetricsKeys","_useAdvancedWells","useAdvancedWells","_useAdvancedWells2","wellsWithoutCompanyName","areAdvancedWellsLoading","wells","companyMap","name","_objectSpread","companyName","subjectWell","find","isAllWellsLoaded","_ref2","syncOffsetWells","_callee2","isSynced","offsetWellsChanged","_offsetSettings$selec2","bicWellIds","bicWellIdsSet","isMatched","wellsByDistance","newOffsetSetting","selectedWellIdsSet","offsetWells","_offsetWells","_context2","wellId","getCoordinatedWells","slice","offsetWellsLimited","apply","this","arguments","filterOptions","useFilterOptions","columnsWithDict","useTableColumns","filteredWells","useFilteredWells","wellsToDisplay","uniqBy","selectedIdsSet","data","dataIds","preserved","size","pendingIds","enrichedWells","limited","delete","_ref3","useSortedWells","_useSortedWells2","_useSortedWells","sortBy","setSortBy","sortDirection","setSortDirection","sortedWells","handleAddRemoveAssets","useCallback","isAdding","newAssets","assetType","addingWellIds","wellIdToRigName","rigNameToWellIds","addingWellIdsSet","addingWells","foundIds","missingIds","limitedWells","_context3","SEARCH_CATEGORIES","Map","set","rigName","get","push","flatMap","assetId","_ref4","includes","uniq","_ref5","_callee3","_x","_x2","_x3","handleHideAdvancedSearch","handleChangeMetricsKeys","newMetricsKeys","handleUpdateMetricsKey","key","newValue","prevKeys","item","handleChangeSortBy","sortKey","handleChangeOffsetWell","checked","enrichedWell","prevWells","handleChangeAllOffsetWells","sortedData","sortArray","updateSelectedWellsBySection","sectionWellIdsSet","sectionWells","handleChangeWellSection","selectedWellsCount","_ref6","owsWellIds","owsWellIdsSet","isXtoProvider","COMPANY_PROVIDERS_FOR_IDAS","offsetLabel","performSave","_ref7","mapHidden","filterExpanded","handleCancel","isTableFullLoading","isResetVisible","isEmpty","sideTracks","handleReset","isLoading","ROWS_PER_PAGE","_useState18","_useState17","tableRowsCount","setTableRowsCount","_useState20","_useState19","tableWells","setTableWells","headTableRef","headColumn","querySelector","offsetTableStyles","wellNameFixed","classList","remove","noShadow","uniqTableWells","selectedTableWells","Boolean","_useMemo2","_useMemo","indeterminate","isAllWellsSelected","isImperial","getIsImperial","RESYNC_STATUS","SUCCEEDED","_jsx","Modal","className","styles","modalDialog","title","AppHeader","totalCount","selectedCount","onChangeMetricsKeys","actions","_jsxs","jsxs","actionsWrapper","children","Tooltip","placement","jsx","Button","onClick","color","startIcon","ReplayIcon","Replay","classNames","typography","regular12","colors","t6","medium12","buttonGap","variant","disabled","prefix","LoaderCircular","offsetWellDialog","NotificationsContainer","LoadingIndicator","contentWrapper","contentBlocked","columnsContainer","leftColumn","WellsMap","offsetWellIds","_ref8","rightColumn","onScroll","e","target","scrollLeft","scrollHeight","offsetHeight","round","scrollTop","count","Filter","isHidden","onChangeBicWells","stickyTable","Table","innerRef","TableHead","OffsetWellsTableHead","onChangeSort","onUpdateMetricsKey","wellNameStyle","isTaColumnVisible","topGradient","searchCellWrapper","searchCell","AdvancedSearch","onChange","_ref9","onHideAdvancedSearch","OffsetWellsTable","isLastWell","viewOnlyInfoContainer"],"mappings":"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"}
1
+ {"version":3,"file":"OffsetWellPickerV5.js","sources":["../../../../src/components/OffsetWellPickerV5/OffsetWellPickerV5.js"],"sourcesContent":["import { useState, useEffect, useRef, useCallback, useMemo } from 'react';\nimport classNames from 'classnames';\nimport { isEmpty, uniq, uniqBy, sortBy as sortArray } from 'lodash';\nimport { Replay as ReplayIcon } from '@material-ui/icons';\nimport { Table, TableHead } from '@material-ui/core';\n\nimport {\n useAdvancedWells,\n useBicWells,\n useFilterOptions,\n useCompanyMetricKey,\n useFilteredWells,\n useSortedWells,\n useTableColumns,\n useCompanyProvider,\n useCompanies,\n usePinnedWells,\n useSearchedWells,\n} from './effects';\nimport { useFetchWells } from './effects/useFetchWells';\nimport { useFetchSubjectWell } from './effects/useFetchSubjectWell';\nimport { fetchCompanyIdsByWellIds } from './api';\nimport { AppHeader } from './components/AppHeader';\nimport { Filter } from './components/Filter';\nimport { WellsMap } from './components/Map';\nimport { OffsetWellsTable } from './components/OffsetWellsTable';\nimport { OffsetWellsTableHead } from './components/OffsetWellsTable/OffsetWellsTableHead';\nimport { AdvancedSearch } from './components/OffsetWellsTable/AdvancedSearch';\nimport {\n ALL_SECTION_KEY,\n COMPANY_PROVIDERS_FOR_IDAS,\n FilterType,\n MAX_OFFSET_SIZE,\n ROWS_PER_PAGE,\n RESYNC_STATUS,\n DEFAULT_RADIUS_MILES,\n} from './constants';\nimport { SEARCH_CATEGORIES } from './components/OffsetWellsTable/AdvancedSearch/constants';\nimport { getCoordinatedWells } from './utils';\nimport { getIsImperial } from './utils/getIsImperial';\nimport { usePickerPropsStore } from './stores/picker-props-store/usePickerPropsStore';\nimport { useFilterStore } from './stores/filter-store/useFilterStore';\nimport { useViewStore } from './stores/view-store/useViewStore';\n\nimport styles from './OffsetWellPickerV5.module.css';\nimport offsetTableStyles from './components/OffsetWellsTable/OffsetWellsTable.module.css';\n\nimport { showInfoNotification } from '~/utils';\nimport { NotificationsContainer } from '~/components/Notifications';\nimport { typography } from '~/styles';\nimport { LoadingIndicator } from '~/components';\nimport { Button, LoaderCircular, Modal, Tooltip } from '~/componentsV2';\nimport { useGlobalOffsetWellsSync } from '~/effects';\n\nconst PAGE_NAME = 'OffsetWellPickerV5';\n\nexport const OffsetWellPickerV5 = () => {\n const open = usePickerPropsStore(state => state.open);\n const isWDUser = usePickerPropsStore(state => state.isWDUser);\n const defaultSubjectWell = usePickerPropsStore(state => state.defaultSubjectWell);\n const currentUser = usePickerPropsStore(state => state.currentUser);\n const offsetSettings = usePickerPropsStore(state => state.offsetSettings);\n const isViewOnly = usePickerPropsStore(state => state.isViewOnly);\n const onClose = usePickerPropsStore(state => state.onClose);\n const onSave = usePickerPropsStore(state => state.onSave);\n const offsetSize = usePickerPropsStore(state => state.maxOffsetSize);\n const localMaxOffsetSize = usePickerPropsStore(state => state.localMaxOffsetSize);\n const syncAutoEnabled = usePickerPropsStore(state => state.syncAutoEnabled);\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\n // Fetch complete subject well data with coordinates\n const [fetchedSubjectWell] = useFetchSubjectWell(subjectWellId);\n\n useGlobalOffsetWellsSync(offsetSettings, onSave, maxOffsetWellNumber);\n\n const isFilterExpanded = useViewStore(state => state.isFilterExpanded);\n const isMapHidden = useViewStore(state => state.isMapHidden);\n const isHScrollMoved = useViewStore(state => state.isHScrollMoved);\n const setIsHScrollMoved = useViewStore(state => state.setIsHScrollMoved);\n const isVScrollMoved = useViewStore(state => state.isVScrollMoved);\n const setIsVScrollMoved = useViewStore(state => state.setIsVScrollMoved);\n const isAdvancedSearchHidden = useViewStore(state => state.isAdvancedSearchHidden);\n const setIsAdvancedSearchHidden = useViewStore(state => state.setIsAdvancedSearchHidden);\n\n const assetCompanyId = +defaultSubjectWell?.companyId || +currentUser?.company_id;\n const hasValidAssetId = subjectWellId > 0;\n const filters = useFilterStore(state => state.filters);\n const setFilters = useFilterStore(state => state.setFilters);\n const resetFilters = useFilterStore(state => state.resetFilters);\n const radiusFilter = useFilterStore(state => state.filters.radius) ?? DEFAULT_RADIUS_MILES;\n const selectionMode = useFilterStore(state => state.filters.selectionMode) ?? 'radius';\n const polygonCoords = useFilterStore(state => state.filters.polygonCoords);\n const { canViewCompanies, companies } = useCompanies({ open });\n const [selectedWells, setSelectedWells] = useState([]);\n const [preselectedCompanyIds, setPreselectedCompanyIds] = useState([]);\n\n // Track wells being selected via search that need to wait for enrichment\n const pendingSearchSelectionRef = useRef(new Set());\n\n // Track asset IDs currently being fetched (for loading spinner in search dropdown)\n const [loadingAssetIds, setLoadingAssetIds] = useState([]);\n\n // Track if save is waiting for pending wells to be enriched\n const [isSavePending, setIsSavePending] = useState(false);\n\n const companyFilter = useMemo(() => filters[FilterType.company], [filters]);\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\n return [...new Set(baseIds.concat(selectedWellCompanyIds, bootstrapCompanyIds))];\n }\n\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\n return [...new Set(baseIds.concat(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 allIdsSet = new Set(companyFilter);\n if (assetCompanyId) {\n allIdsSet.add(assetCompanyId);\n }\n selectedWellCompanyIds.forEach(id => allIdsSet.add(id));\n bootstrapCompanyIds.forEach(id => allIdsSet.add(id));\n return Array.from(allIdsSet);\n }, [companyFilter, assetCompanyId, canViewCompanies, selectedWells, preselectedCompanyIds]);\n const [selectedWellSection, setSelectedWellSection] = useState(\n offsetSettings?.wellSection || ALL_SECTION_KEY\n );\n const initLoading = useRef(true);\n const [isTableLoading, setIsTableLoading] = useState(true);\n\n const isLimitedOffsetWells = maxOffsetWellNumber <= selectedWells?.length;\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 prevIdsSet = new Set(prevSelectedWellIds.current || []);\n const isNotChanged =\n offsetSettings?.selectedWellIds?.length === prevSelectedWellIds.current?.length &&\n (offsetSettings?.selectedWellIds || []).every(id => prevIdsSet.has(id));\n if (!isNotChanged) {\n initLoading.current = true;\n }\n prevSelectedWellIds.current = offsetSettings?.selectedWellIds;\n }\n // TODO: Check reference stability. Initially had only isLimitedOffsetWells, open, offsetSettings.\n }, [isLimitedOffsetWells, open, offsetSettings, maxOffsetWellNumber]);\n\n // NOTE: Fetch wells based on company filter, coordinate bounds, or polygon if subject well exists\n const [rawWells, areRawWellsLoading] = useFetchWells(\n companyIdsToFetch,\n fetchedSubjectWell,\n radiusFilter,\n selectionMode,\n polygonCoords\n );\n\n // NOTE: Fetch pinned wells independently of radius\n const [pinnedWells, arePinnedWellsLoading] = usePinnedWells(offsetSettings?.selectedWellIds);\n\n // NOTE: Fetch wells selected via search that are outside current bounds\n const [searchedWells, areSearchedWellsLoading, fetchSearchedWells] = useSearchedWells();\n\n // NOTE: Ensure subject well, pinned wells and searched wells are always in rawWells for enrichment pipeline\n const rawWellsWithSubject = useMemo(() => {\n if (!rawWells) {\n return null;\n }\n\n let result = rawWells;\n\n if (pinnedWells?.length) {\n const existingIds = new Set(result.map(w => w.id));\n const missingPinned = pinnedWells.filter(w => !existingIds.has(w.id));\n\n if (missingPinned.length > 0) {\n result = result.concat(missingPinned);\n }\n }\n\n // Merge searched wells (wells added via search that are outside bounds)\n if (searchedWells?.length) {\n const existingIds = new Set(result.map(w => w.id));\n const missingSearched = searchedWells.filter(w => !existingIds.has(w.id));\n\n if (missingSearched.length > 0) {\n result = result.concat(missingSearched);\n }\n }\n\n if (fetchedSubjectWell && !result.some(w => w.id === fetchedSubjectWell.id)) {\n result = [fetchedSubjectWell].concat(result);\n }\n\n return result;\n }, [rawWells, fetchedSubjectWell, pinnedWells, searchedWells]);\n\n const [companyProvider] = useCompanyProvider(assetCompanyId);\n\n const [\n wellSections,\n setWellSections,\n bicWells,\n setBicWells,\n resyncStatus,\n setResyncStatus,\n taScores,\n ] = useBicWells(subjectWellId, rawWellsWithSubject);\n\n const isWellSectionColumnVisible = useMemo(() => {\n if (!wellSections) {\n return false;\n }\n\n return wellSections.some(section => section.value !== ALL_SECTION_KEY);\n }, [wellSections]);\n\n useEffect(() => {\n setAppLoading(true);\n setWellSections(null);\n setBicWells(null);\n // TODO: Check reference stability. Initially had only subjectWellId.\n }, [setBicWells, setWellSections, 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, areAdvancedWellsLoading] = useAdvancedWells(\n assetCompanyId,\n rawWellsWithSubject,\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 // NOTE: Derive enriched subject well from the enrichment pipeline (includes company name)\n const subjectWell = useMemo(() => {\n if (!fetchedSubjectWell) {\n return null;\n }\n\n if (!wells) {\n return fetchedSubjectWell;\n }\n\n const enrichedSubjectWell = wells.find(w => w.id === fetchedSubjectWell.id);\n\n return enrichedSubjectWell || fetchedSubjectWell;\n }, [fetchedSubjectWell, wells]);\n\n const isAllWellsLoaded =\n !areRawWellsLoading &&\n !areAdvancedWellsLoading &&\n !arePinnedWellsLoading &&\n !areSearchedWellsLoading;\n\n useEffect(() => {\n if (!isAllWellsLoaded) {\n return;\n }\n\n const syncOffsetWells = async () => {\n const isSynced = typeof offsetSettings?.isSynced === 'undefined' || offsetSettings?.isSynced;\n\n let offsetWellsChanged = true;\n\n if (isSynced) {\n const bicWellIds = bicWells[ALL_SECTION_KEY] || [];\n const bicWellIdsSet = new Set(bicWellIds);\n const isMatched = (offsetSettings?.selectedWellIds || []).every(wellId =>\n bicWellIdsSet.has(wellId)\n );\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 const selectedWellIds = wellsByDistance\n .slice(0, localMaxOffsetSize + 1)\n .map(well => well.id);\n const newOffsetSetting = {\n ...offsetSettings,\n subjectWellId,\n selectedWellIds,\n offsetWellsLimited: maxOffsetWellNumber <= selectedWellIds.length,\n };\n const selectedWellIdsSet = new Set(selectedWellIds);\n const offsetWells = wellsByDistance.filter(well => selectedWellIdsSet.has(well.id));\n\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 // TODO: Check reference stability. Initially had only offsetSettings, bicWells, subjectWellId, maxOffsetWellNumber, syncAutoEnabled\n }, [\n offsetSettings,\n bicWells,\n subjectWellId,\n maxOffsetWellNumber,\n syncAutoEnabled,\n isAllWellsLoaded,\n appLoading,\n maxOffsetSize,\n localMaxOffsetSize,\n onSave,\n ]);\n\n const filterOptions = useFilterOptions(wells, companies, canViewCompanies);\n\n // NOTE: Table columns with metrics\n const columnsWithDict = useTableColumns(\n metricsKeys,\n canViewCompanies,\n isWellSectionColumnVisible\n );\n // NOTE: Filter wells\n const filteredWells = useFilteredWells(wells, filters, polygonCoords, radiusFilter);\n\n // NOTE: Include selected wells from other companies so they can be deselected\n const wellsToDisplay = useMemo(() => {\n if (!filteredWells) {\n return filteredWells;\n }\n\n // Ensure ALL selected wells are displayed (at top via useSortedWells)\n // regardless of current company filter\n return uniqBy(selectedWells.concat(filteredWells), 'id');\n }, [filteredWells, selectedWells]);\n\n useEffect(() => {\n if (!filteredWells || !isAllWellsLoaded) {\n return;\n }\n\n if (initLoading.current) {\n const selectedIdsSet = new Set(offsetSettings?.selectedWellIds || []);\n\n let data = wells.filter(well => selectedIdsSet.has(well.id));\n\n // Preserve existing selectedWells not in wells array (may have been fetched by usePinnedWells)\n const dataIds = new Set(data.map(w => w.id));\n const preserved = selectedWells.filter(w => selectedIdsSet.has(w.id) && !dataIds.has(w.id));\n\n data = data.concat(preserved);\n\n if (subjectWell) {\n data = data.concat(subjectWell);\n }\n\n setSelectedWells(uniqBy(data, 'id'));\n initLoading.current = false;\n }\n }, [\n wells,\n filteredWells,\n offsetSettings?.selectedWellIds,\n isAllWellsLoaded,\n subjectWell,\n selectedWells,\n ]);\n\n // NOTE: Add pending search selections once wells are enriched\n useEffect(() => {\n if (!wells?.length || pendingSearchSelectionRef.current.size === 0) {\n return;\n }\n\n const pendingIds = pendingSearchSelectionRef.current;\n const enrichedWells = wells.filter(w => pendingIds.has(w.id));\n\n if (enrichedWells.length > 0) {\n // Clear loading state for wells being added (spinner → checked checkbox)\n const enrichedIds = enrichedWells.map(w => w.id);\n setLoadingAssetIds(prev => prev.filter(id => !enrichedIds.includes(id)));\n\n setSelectedWells(prev => {\n const limited = enrichedWells.slice(0, Math.max(0, maxOffsetWellNumber - prev.length));\n\n return uniqBy(prev.concat(limited), 'id');\n });\n enrichedWells.forEach(w => pendingIds.delete(w.id));\n }\n }, [wells, maxOffsetWellNumber]);\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 async (isAdding, newAssets, assetType) => {\n let addingWellIds;\n\n if (assetType === SEARCH_CATEGORIES.well.name) {\n addingWellIds = newAssets;\n } else {\n // Build lookup maps once for O(1) access\n const wellIdToRigName = new Map();\n const rigNameToWellIds = new Map();\n wells.forEach(well => {\n wellIdToRigName.set(well.id, well.rigName);\n if (!rigNameToWellIds.has(well.rigName)) {\n rigNameToWellIds.set(well.rigName, []);\n }\n rigNameToWellIds.get(well.rigName).push(well.id);\n });\n\n addingWellIds = newAssets.flatMap(assetId => {\n const rigName = wellIdToRigName.get(assetId);\n\n return rigNameToWellIds.get(rigName) || [];\n });\n }\n\n const addingWellIdsSet = new Set(addingWellIds);\n const addingWells = wells.filter(({ id }) => addingWellIdsSet.has(id));\n\n // Fetch missing wells (outside bounds) when adding via search\n // These will be added to selectedWells via effect once enriched\n if (isAdding && addingWells.length < addingWellIds.length) {\n const foundIds = new Set(addingWells.map(w => w.id));\n const missingIds = addingWellIds.filter(id => !foundIds.has(id));\n\n if (missingIds.length > 0) {\n // Show loading spinner in search dropdown\n setLoadingAssetIds(prev => prev.concat(missingIds));\n\n // Trigger fetch to add wells to enrichment pipeline\n await fetchSearchedWells(missingIds);\n\n // Store as pending - effect will add enriched wells to selectedWells\n // NOTE: loadingAssetIds is cleared in the effect when wells are actually selected\n missingIds.forEach(id => pendingSearchSelectionRef.current.add(id));\n }\n }\n\n if (isAdding) {\n // Only add wells that are already enriched (in wells array)\n const limitedWells = addingWells.slice(\n 0,\n Math.min(addingWells.length, maxOffsetWellNumber - selectedWells.length)\n );\n if (limitedWells.length > 0) {\n setSelectedWells(selectedWells => uniqBy(selectedWells.concat(limitedWells), 'id'));\n }\n } else {\n setSelectedWells(selectedWells =>\n uniq(selectedWells.filter(({ id }) => !addingWells.find(well => well.id === id)))\n );\n }\n },\n // TODO: Check reference stability. Initially had wells, selectedWells\n [wells, maxOffsetWellNumber, selectedWells.length, fetchSearchedWells]\n );\n\n const handleHideAdvancedSearch = useCallback(() => {\n setIsAdvancedSearchHidden(true);\n }, [setIsAdvancedSearchHidden]);\n\n // NOTE: Change metrics keys\n const handleChangeMetricsKeys = useCallback(\n newMetricsKeys => {\n setMetricsKeys(newMetricsKeys);\n },\n [setMetricsKeys]\n );\n\n const handleUpdateMetricsKey = useCallback(\n (key, newValue) => {\n setMetricsKeys(prevKeys => prevKeys.map(item => (item === key ? newValue : item)));\n },\n [setMetricsKeys]\n );\n\n const handleChangeSortBy = useCallback(\n (sortKey, sortDirection) => {\n setSortBy(sortKey);\n setSortDirection(sortDirection);\n },\n [setSortBy, setSortDirection]\n );\n\n // NOTE: Check and Uncheck one offset well\n const handleChangeOffsetWell = useCallback(\n (well, checked) => {\n if (checked) {\n const enrichedWell = wells?.find(w => w.id === well.id) || well;\n setSelectedWells(prevWells => prevWells.concat(enrichedWell));\n } else {\n setSelectedWells(prevWells => prevWells.filter(item => item.id !== well.id));\n }\n },\n [wells]\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: Batch select wells (from map box selection)\n const handleBatchSelectWells = useCallback(\n wellsToSelect => {\n setSelectedWells(prevWells => {\n const currentIds = new Set(prevWells.map(w => w.id));\n const newWells = wellsToSelect.filter(w => !currentIds.has(w.id));\n\n if (newWells.length === 0) {\n return prevWells;\n }\n\n const availableSlots = maxOffsetWellNumber - prevWells.length;\n const limitedWells = newWells.slice(0, availableSlots);\n\n const enrichedWells = limitedWells.map(w => wells?.find(fw => fw.id === w.id) || w);\n\n return uniqBy(prevWells.concat(enrichedWells), 'id');\n });\n },\n [wells, maxOffsetWellNumber]\n );\n\n // NOTE: Well Section change filter\n const updateSelectedWellsBySection = useCallback(\n section => {\n if (bicWells) {\n const sectionWellIdsSet = new Set(bicWells[section] || []);\n const sectionWells = wells?.filter(well => sectionWellIdsSet.has(well.id)) || [];\n const limitedWells = sortArray(sectionWells, 'distance');\n setSelectedWells(limitedWells.slice(0, maxOffsetSize));\n } else {\n setSelectedWells(subjectWell ? [subjectWell] : []);\n }\n },\n [bicWells, maxOffsetSize, subjectWell, wells]\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 const owsWellIds = bicWells[selectedWellSection] || [];\n const owsWellIdsLength = Math.min(owsWellIds.length, maxOffsetSize);\n\n if (owsWellIdsLength !== selectedWellIds.length) {\n return false;\n }\n const owsWellIdsSet = new Set(owsWellIds);\n return selectedWellIds.every(id => owsWellIdsSet.has(id));\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 performSave = useCallback(() => {\n onClose();\n\n const selectedIds = selectedWells.map(({ id }) => id);\n\n const newOffsetSetting = {\n ...offsetSettings,\n companyId: assetCompanyId,\n subjectWellId,\n selectedWellIds: selectedIds,\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 onClose,\n selectedWells,\n offsetSettings,\n assetCompanyId,\n subjectWellId,\n filters,\n metricsKeys,\n selectedWellSection,\n isSynced,\n isMapHidden,\n isFilterExpanded,\n isLimitedOffsetWells,\n onSave,\n ]);\n\n // NOTE: Complete pending save once all wells are enriched\n useEffect(() => {\n if (!isSavePending) {\n return;\n }\n\n // Check if all pending wells have been enriched (moved to selectedWells)\n if (pendingSearchSelectionRef.current.size === 0) {\n setIsSavePending(false);\n performSave();\n }\n }, [isSavePending, selectedWells, performSave]);\n\n const handleSave = () => {\n if (pendingSearchSelectionRef.current.size > 0) {\n // Wells still pending enrichment - wait for them\n setIsSavePending(true);\n return;\n }\n\n performSave();\n };\n\n const handleCancel = () => {\n const selectedIdsSet = new Set(offsetSettings?.selectedWellIds || []);\n let data = (wells || []).filter(well => selectedIdsSet.has(well.id));\n\n if (pinnedWells?.length) {\n const dataIds = new Set(data.map(w => w.id));\n const preserved = pinnedWells.filter(w => selectedIdsSet.has(w.id) && !dataIds.has(w.id));\n\n data = data.concat(preserved);\n }\n\n if (subjectWell) {\n data = data.concat(subjectWell);\n }\n\n setSelectedWells(uniqBy(data, 'id'));\n\n const newOffsetSetting = {\n ...offsetSettings,\n mapHidden: isMapHidden,\n filterExpanded: isFilterExpanded,\n };\n onSave(newOffsetSetting);\n setFilters({\n ...(offsetSettings?.filters || {}),\n });\n setSelectedWellSection(offsetSettings?.wellSection || ALL_SECTION_KEY);\n onClose();\n };\n\n const isTableFullLoading = isTableLoading || areRawWellsLoading;\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 = useCallback(() => {\n resetFilters();\n setSelectedWellSection(ALL_SECTION_KEY);\n updateSelectedWellsBySection(ALL_SECTION_KEY);\n }, [resetFilters, updateSelectedWellsBySection]);\n\n const isLoading = !wells || !wellSections || !sortedWells;\n\n // NOTE: Well Name shadow\n const [tableRowsCount, setTableRowsCount] = useState(ROWS_PER_PAGE);\n const [tableWells, setTableWells] = useState([]);\n const headTableRef = useRef();\n\n useEffect(() => {\n if (!sortedWells) return;\n\n const wells = sortedWells.slice(0, tableRowsCount);\n setTableWells(wells);\n }, [sortedWells, tableRowsCount, subjectWell]);\n\n // NOTE: Remove shadow from header column\n useEffect(() => {\n if (!headTableRef.current) return;\n const headColumn = headTableRef.current.querySelector(`.${offsetTableStyles.wellNameFixed}`);\n if (!headColumn) return;\n if (!isHScrollMoved) {\n headColumn.classList.add(offsetTableStyles.noShadow);\n } else {\n headColumn.classList.remove(offsetTableStyles.noShadow);\n }\n }, [isHScrollMoved, tableWells]);\n\n // Calculations for table header and search - moved from OffsetWellsTable\n const uniqTableWells = useMemo(() => uniqBy(tableWells, 'id'), [tableWells]);\n\n const [selectedTableWells, indeterminate, isAllWellsSelected] = useMemo(() => {\n const selectedTableWells = uniqTableWells.filter(well => well.checked);\n const indeterminate =\n uniqTableWells.length !== selectedTableWells.length &&\n Boolean(selectedTableWells.length) &&\n !isLimitedOffsetWells;\n const isAllWellsSelected =\n selectedTableWells.length === uniqTableWells.length || isLimitedOffsetWells;\n\n return [selectedTableWells, indeterminate, isAllWellsSelected];\n }, [uniqTableWells, isLimitedOffsetWells]);\n\n const isImperial = useMemo(() => getIsImperial(), []);\n\n useEffect(() => {\n if (resyncStatus === RESYNC_STATUS.SUCCEEDED) {\n handleReset();\n }\n // TODO: Check reference stability. Initially had only bicWells\n }, [bicWells, handleReset, resyncStatus]);\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 // Check if V-Scroll is visible\n if (e.target.scrollTop <= 0 && isVScrollMoved) {\n setIsVScrollMoved(false);\n }\n if (e.target.scrollTop > 0 && !isVScrollMoved) {\n setIsVScrollMoved(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 return (\n <Modal\n open={open}\n onClose={handleCancel}\n size=\"fullscreen\"\n className={styles.modalDialog}\n title={\n <AppHeader\n totalCount={wells?.length ?? 0}\n selectedCount={selectedWellsCount}\n maxOffsetWellNumber={maxOffsetWellNumber}\n isXtoProvider={isXtoProvider}\n resyncStatus={resyncStatus}\n setResyncStatus={setResyncStatus}\n metricsKeys={metricsKeys}\n onChangeMetricsKeys={handleChangeMetricsKeys}\n />\n }\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={<ReplayIcon />}\n >\n Reset to Defaults\n </Button>\n </div>\n </Tooltip>\n ) : (\n hasValidAssetId && (\n <div>\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 )}\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 disabled={isSavePending}\n prefix={isSavePending ? <LoaderCircular size={16} /> : undefined}\n >\n Select ({selectedWellsCount})\n </Button>\n </div>\n </div>\n )\n }\n >\n <div className={classNames(styles.offsetWellDialog)}>\n <NotificationsContainer />\n {!isLoading ? (\n <div\n className={classNames(styles.contentWrapper, {\n [styles.contentBlocked]: isTableFullLoading,\n })}\n >\n <div className={styles.columnsContainer}>\n {!isMapHidden && open && (\n <div className={styles.leftColumn}>\n <WellsMap\n mapHidden={isMapHidden}\n subjectWell={subjectWell}\n offsetWellIds={selectedWells.map(({ id }) => id)}\n wells={wellsToDisplay}\n handleChangeOffsetWell={handleChangeOffsetWell}\n onBatchSelectWells={handleBatchSelectWells}\n activeWellId={activeWellId}\n />\n </div>\n )}\n <div className={styles.rightColumn} onScroll={handleScroll}>\n <Filter\n isHidden={!isFilterExpanded}\n filterOptions={filterOptions}\n wellSections={wellSections}\n selectedWellSection={selectedWellSection}\n subjectWell={subjectWell}\n assetCompanyId={assetCompanyId}\n onChangeBicWells={handleChangeWellSection}\n />\n <div className={offsetTableStyles.stickyTableWrapper}>\n <Table\n aria-label=\"ows table head\"\n innerRef={headTableRef}\n className={offsetTableStyles.stickyTable}\n >\n <TableHead>\n <OffsetWellsTableHead\n columnsWithDict={columnsWithDict}\n metricsKeys={metricsKeys}\n sortBy={sortBy}\n sortDirection={sortDirection}\n indeterminate={indeterminate}\n isAllWellsSelected={isAllWellsSelected}\n onChangeSort={handleChangeSortBy}\n onUpdateMetricsKey={handleUpdateMetricsKey}\n handleChangeAllOffsetWells={handleChangeAllOffsetWells}\n wellNameStyle={offsetTableStyles.wellNameFixed}\n isImperial={isImperial}\n isTaColumnVisible={!!taScores.length}\n isWellSectionColumnVisible={isWellSectionColumnVisible}\n />\n </TableHead>\n {isViewOnly && (\n <div\n className={classNames(styles.topGradient, {\n [styles.topGradientScrolled]: isVScrollMoved,\n })}\n />\n )}\n </Table>\n </div>\n\n {!isViewOnly && (\n <div className={classNames(offsetTableStyles.searchCellWrapper)}>\n <div className={offsetTableStyles.searchCell}>\n <AdvancedSearch\n companyId={assetCompanyId}\n subjectWellId={subjectWellId}\n onChange={handleAddRemoveAssets}\n selectedWellIds={selectedTableWells.map(({ id }) => id)}\n onHideAdvancedSearch={handleHideAdvancedSearch}\n loadingAssetIds={loadingAssetIds}\n />\n </div>\n <div\n className={classNames(styles.topGradient, {\n [styles.topGradientScrolled]: isVScrollMoved,\n })}\n />\n </div>\n )}\n\n <OffsetWellsTable\n isTableLoading={isTableFullLoading}\n subjectWellId={subjectWellId}\n columnsWithDict={columnsWithDict}\n wells={tableWells}\n metricsKeys={metricsKeys}\n handleChangeOffsetWell={handleChangeOffsetWell}\n isLastWell={sortedWells.length <= tableRowsCount}\n isLimitedOffsetWells={isLimitedOffsetWells}\n maxOffsetWellNumber={maxOffsetWellNumber}\n wellSections={wellSections}\n setActiveWellId={setActiveWellId}\n taScores={taScores}\n isWellSectionColumnVisible={isWellSectionColumnVisible}\n />\n </div>\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 />\n )}\n </div>\n </Modal>\n );\n};\n"],"names":["PAGE_NAME","_useFilterStore","_useFilterStore2","_wells$length","open","usePickerPropsStore","state","isWDUser","defaultSubjectWell","currentUser","offsetSettings","isViewOnly","onClose","onSave","offsetSize","maxOffsetSize","localMaxOffsetSize","syncAutoEnabled","useState","_useState2","_slicedToArray","_useState","activeWellId","setActiveWellId","Math","min","MAX_OFFSET_SIZE","maxOffsetWellNumber","max","subjectWellId","asset_id","useFetchSubjectWell","fetchedSubjectWell","_useFetchSubjectWell","useGlobalOffsetWellsSync","isFilterExpanded","useViewStore","isMapHidden","isHScrollMoved","setIsHScrollMoved","isVScrollMoved","setIsVScrollMoved","isAdvancedSearchHidden","setIsAdvancedSearchHidden","assetCompanyId","companyId","company_id","hasValidAssetId","filters","useFilterStore","setFilters","resetFilters","radiusFilter","radius","DEFAULT_RADIUS_MILES","selectionMode","polygonCoords","_useCompanies","useCompanies","canViewCompanies","companies","_useState4","_useState3","selectedWells","setSelectedWells","_useState6","_useState5","preselectedCompanyIds","setPreselectedCompanyIds","pendingSearchSelectionRef","useRef","Set","_useState8","_useState7","loadingAssetIds","setLoadingAssetIds","_useState10","_useState9","isSavePending","setIsSavePending","companyFilter","useMemo","FilterType","company","useEffect","selectedIds","selectedWellIds","length","_asyncToGenerator","_regeneratorRuntime","mark","_callee","ids","wrap","_context","prev","next","fetchCompanyIdsByWellIds","sent","stop","companyIdsToFetch","selectedWellCompanyIds","map","well","filter","id","bootstrapCompanyIds","baseIds","_toConsumableArray","concat","undefined","Array","isArray","allIdsSet","add","forEach","from","_useState11","wellSection","ALL_SECTION_KEY","_useState12","selectedWellSection","setSelectedWellSection","initLoading","_useState14","_useState13","isTableLoading","setIsTableLoading","isLimitedOffsetWells","prevSelectedWellIds","_useState16","_useState15","appLoading","setAppLoading","showInfoNotification","_offsetSettings$selec","_prevSelectedWellIds$","prevIdsSet","current","every","has","useFetchWells","_useFetchWells2","_useFetchWells","rawWells","areRawWellsLoading","usePinnedWells","_usePinnedWells2","_usePinnedWells","pinnedWells","arePinnedWellsLoading","_useSearchedWells","useSearchedWells","_useSearchedWells2","searchedWells","areSearchedWellsLoading","fetchSearchedWells","rawWellsWithSubject","result","existingIds","w","missingPinned","missingSearched","some","useCompanyProvider","companyProvider","_useCompanyProvider","_useBicWells","useBicWells","_useBicWells2","wellSections","setWellSections","bicWells","setBicWells","resyncStatus","setResyncStatus","taScores","isWellSectionColumnVisible","section","value","useCompanyMetricKey","metricsKeys","_useCompanyMetricKey2","_useCompanyMetricKey","setMetricsKeys","_useAdvancedWells","useAdvancedWells","_useAdvancedWells2","wellsWithoutCompanyName","areAdvancedWellsLoading","wells","companyMap","name","_objectSpread","companyName","subjectWell","find","isAllWellsLoaded","_ref2","syncOffsetWells","_callee2","isSynced","offsetWellsChanged","_offsetSettings$selec2","bicWellIds","bicWellIdsSet","isMatched","wellsByDistance","newOffsetSetting","selectedWellIdsSet","offsetWells","_offsetWells","_context2","wellId","getCoordinatedWells","slice","offsetWellsLimited","apply","this","arguments","filterOptions","useFilterOptions","columnsWithDict","useTableColumns","filteredWells","useFilteredWells","wellsToDisplay","uniqBy","selectedIdsSet","data","dataIds","preserved","size","pendingIds","enrichedWells","enrichedIds","includes","limited","delete","_ref3","useSortedWells","_useSortedWells2","_useSortedWells","sortBy","setSortBy","sortDirection","setSortDirection","sortedWells","handleAddRemoveAssets","useCallback","isAdding","newAssets","assetType","addingWellIds","wellIdToRigName","rigNameToWellIds","addingWellIdsSet","addingWells","foundIds","missingIds","limitedWells","_context3","SEARCH_CATEGORIES","Map","set","rigName","get","push","flatMap","assetId","_ref4","uniq","_ref5","_callee3","_x","_x2","_x3","handleHideAdvancedSearch","handleChangeMetricsKeys","newMetricsKeys","handleUpdateMetricsKey","key","newValue","prevKeys","item","handleChangeSortBy","sortKey","handleChangeOffsetWell","checked","enrichedWell","prevWells","handleChangeAllOffsetWells","sortedData","sortArray","handleBatchSelectWells","wellsToSelect","currentIds","newWells","availableSlots","fw","updateSelectedWellsBySection","sectionWellIdsSet","sectionWells","handleChangeWellSection","selectedWellsCount","_ref6","owsWellIds","owsWellIdsSet","isXtoProvider","COMPANY_PROVIDERS_FOR_IDAS","offsetLabel","performSave","_ref7","mapHidden","filterExpanded","handleCancel","isTableFullLoading","isResetVisible","isEmpty","sideTracks","handleReset","isLoading","ROWS_PER_PAGE","_useState18","_useState17","tableRowsCount","setTableRowsCount","_useState20","_useState19","tableWells","setTableWells","headTableRef","headColumn","querySelector","offsetTableStyles","wellNameFixed","classList","remove","noShadow","uniqTableWells","selectedTableWells","Boolean","_useMemo2","_useMemo","indeterminate","isAllWellsSelected","isImperial","getIsImperial","RESYNC_STATUS","SUCCEEDED","_jsx","Modal","className","styles","modalDialog","title","AppHeader","totalCount","selectedCount","onChangeMetricsKeys","actions","_jsxs","jsxs","actionsWrapper","children","Tooltip","placement","jsx","Button","onClick","color","startIcon","ReplayIcon","Replay","classNames","typography","regular12","colors","t6","medium12","buttonGap","variant","disabled","prefix","LoaderCircular","offsetWellDialog","NotificationsContainer","LoadingIndicator","contentWrapper","contentBlocked","columnsContainer","leftColumn","WellsMap","offsetWellIds","_ref8","onBatchSelectWells","rightColumn","onScroll","e","target","scrollLeft","scrollTop","scrollHeight","offsetHeight","round","count","Filter","isHidden","onChangeBicWells","stickyTableWrapper","Table","innerRef","stickyTable","TableHead","OffsetWellsTableHead","onChangeSort","onUpdateMetricsKey","wellNameStyle","isTaColumnVisible","topGradient","_defineProperty","topGradientScrolled","searchCellWrapper","searchCell","AdvancedSearch","onChange","_ref9","onHideAdvancedSearch","OffsetWellsTable","isLastWell","viewOnlyInfoContainer"],"mappings":"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"}