@corva/ui 3.41.0-1 → 3.41.0-3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (435) hide show
  1. package/cjs-bundle/components/AddComment/Popover.js +1 -1
  2. package/cjs-bundle/components/AddComment/Popover.js.map +1 -1
  3. package/cjs-bundle/components/AddComment/components/Content.js +1 -1
  4. package/cjs-bundle/components/AddComment/components/Content.js.map +1 -1
  5. package/cjs-bundle/components/BICOffsetPickerDialog/index.js +1 -1
  6. package/cjs-bundle/components/BICOffsetPickerDialog/index.js.map +1 -1
  7. package/cjs-bundle/components/Casing/CasingTableV2/components/CasingJoints/Editor.js +1 -1
  8. package/cjs-bundle/components/Casing/CasingTableV2/components/CasingJoints/Editor.js.map +1 -1
  9. package/cjs-bundle/components/Casing/CasingTableV2/components/Component.js +1 -1
  10. package/cjs-bundle/components/Casing/CasingTableV2/components/Component.js.map +1 -1
  11. package/cjs-bundle/components/Casing/CasingTableV2/components/DrillPipe/Editor.js +1 -1
  12. package/cjs-bundle/components/Casing/CasingTableV2/components/DrillPipe/Editor.js.map +1 -1
  13. package/cjs-bundle/components/DocumentViewer/DocumentViewer.js +1 -1
  14. package/cjs-bundle/components/DocumentViewer/DocumentViewer.js.map +1 -1
  15. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js +1 -1
  16. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js.map +1 -1
  17. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js +1 -1
  18. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js.map +1 -1
  19. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Component.js +1 -1
  20. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Component.js.map +1 -1
  21. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js +1 -1
  22. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js.map +1 -1
  23. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js +1 -1
  24. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js.map +1 -1
  25. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js +1 -1
  26. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js.map +1 -1
  27. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js +1 -1
  28. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js.map +1 -1
  29. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js +1 -1
  30. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js.map +1 -1
  31. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js +1 -1
  32. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js.map +1 -1
  33. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js +1 -1
  34. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js.map +1 -1
  35. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js +1 -1
  36. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js.map +1 -1
  37. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js +1 -1
  38. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js.map +1 -1
  39. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js +1 -1
  40. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js.map +1 -1
  41. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js +1 -1
  42. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js.map +1 -1
  43. package/cjs-bundle/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
  44. package/cjs-bundle/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -1
  45. package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
  46. package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -1
  47. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js +1 -1
  48. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js.map +1 -1
  49. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/index.js +1 -1
  50. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/index.js.map +1 -1
  51. package/cjs-bundle/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js +1 -1
  52. package/cjs-bundle/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js.map +1 -1
  53. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js +1 -1
  54. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js.map +1 -1
  55. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/index.js +1 -1
  56. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/index.js.map +1 -1
  57. package/cjs-bundle/components/OffsetWellPickerV3/components/WellHubView/index.js +1 -1
  58. package/cjs-bundle/components/OffsetWellPickerV3/components/WellHubView/index.js.map +1 -1
  59. package/cjs-bundle/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js +1 -1
  60. package/cjs-bundle/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js.map +1 -1
  61. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.js +2 -0
  62. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.js.map +1 -0
  63. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.module.css.js +2 -0
  64. package/cjs-bundle/components/OffsetWellPickerV4/OffsetWellPickerV4.module.css.js.map +1 -0
  65. package/cjs-bundle/components/OffsetWellPickerV4/components/AppHeader/AppHeader.js +2 -0
  66. package/cjs-bundle/components/OffsetWellPickerV4/components/AppHeader/AppHeader.js.map +1 -0
  67. package/cjs-bundle/components/OffsetWellPickerV4/components/AppHeader/AppHeader.module.css.js +2 -0
  68. package/cjs-bundle/components/OffsetWellPickerV4/components/AppHeader/AppHeader.module.css.js.map +1 -0
  69. package/cjs-bundle/components/OffsetWellPickerV4/components/CustomInfoIcon/CustomInfoIcon.js +2 -0
  70. package/cjs-bundle/components/OffsetWellPickerV4/components/CustomInfoIcon/CustomInfoIcon.js.map +1 -0
  71. package/cjs-bundle/components/OffsetWellPickerV4/components/CustomInfoIcon/CustomInfoIcon.module.css.js +2 -0
  72. package/cjs-bundle/components/OffsetWellPickerV4/components/CustomInfoIcon/CustomInfoIcon.module.css.js.map +1 -0
  73. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/Filter.js +2 -0
  74. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/Filter.js.map +1 -0
  75. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/Filter.module.css.js +2 -0
  76. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/Filter.module.css.js.map +1 -0
  77. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/MultiSelect.js +2 -0
  78. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/MultiSelect.js.map +1 -0
  79. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/PeriodSelect.js +2 -0
  80. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/PeriodSelect.js.map +1 -0
  81. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/RadiusInput.js +2 -0
  82. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/RadiusInput.js.map +1 -0
  83. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/SingleSelect.js +2 -0
  84. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/SingleSelect.js.map +1 -0
  85. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/WellSection.js +2 -0
  86. package/cjs-bundle/components/OffsetWellPickerV4/components/Filter/WellSection.js.map +1 -0
  87. package/cjs-bundle/components/OffsetWellPickerV4/components/Map/WellsMap.js +2 -0
  88. package/cjs-bundle/components/OffsetWellPickerV4/components/Map/WellsMap.js.map +1 -0
  89. package/cjs-bundle/components/OffsetWellPickerV4/components/Map/WellsMap.module.css.js +2 -0
  90. package/cjs-bundle/components/OffsetWellPickerV4/components/Map/WellsMap.module.css.js.map +1 -0
  91. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.js +2 -0
  92. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.js.map +1 -0
  93. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.module.css.js +2 -0
  94. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.module.css.js.map +1 -0
  95. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AssetResultSection.js +2 -0
  96. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AssetResultSection.js.map +1 -0
  97. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AssetTypesSection.js +2 -0
  98. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AssetTypesSection.js.map +1 -0
  99. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js +2 -0
  100. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js.map +1 -0
  101. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/constants.js +2 -0
  102. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/constants.js.map +1 -0
  103. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSelect.js +2 -0
  104. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSelect.js.map +1 -0
  105. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSettingMenu.js +2 -0
  106. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSettingMenu.js.map +1 -0
  107. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js +2 -0
  108. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js.map +1 -0
  109. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.module.css.js +2 -0
  110. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.module.css.js.map +1 -0
  111. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableHead.js +2 -0
  112. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableHead.js.map +1 -0
  113. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableHead.module.css.js +2 -0
  114. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableHead.module.css.js.map +1 -0
  115. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.js +2 -0
  116. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.js.map +1 -0
  117. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.module.css.js +2 -0
  118. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.module.css.js.map +1 -0
  119. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/SubjectWellMark.js +2 -0
  120. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/SubjectWellMark.js.map +1 -0
  121. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/ViewWellSectionsName.js +2 -0
  122. package/cjs-bundle/components/OffsetWellPickerV4/components/OffsetWellsTable/ViewWellSectionsName.js.map +1 -0
  123. package/cjs-bundle/components/OffsetWellPickerV4/components/Toolbar/Toolbar.js +2 -0
  124. package/cjs-bundle/components/OffsetWellPickerV4/components/Toolbar/Toolbar.js.map +1 -0
  125. package/cjs-bundle/components/OffsetWellPickerV4/components/Toolbar/Toolbar.module.css.js +2 -0
  126. package/cjs-bundle/components/OffsetWellPickerV4/components/Toolbar/Toolbar.module.css.js.map +1 -0
  127. package/cjs-bundle/components/OffsetWellPickerV4/constants.js +2 -0
  128. package/cjs-bundle/components/OffsetWellPickerV4/constants.js.map +1 -0
  129. package/cjs-bundle/components/OffsetWellPickerV4/effects/useAdvancedWells.js +2 -0
  130. package/cjs-bundle/components/OffsetWellPickerV4/effects/useAdvancedWells.js.map +1 -0
  131. package/cjs-bundle/components/OffsetWellPickerV4/effects/useAssetsData.js +2 -0
  132. package/cjs-bundle/components/OffsetWellPickerV4/effects/useAssetsData.js.map +1 -0
  133. package/cjs-bundle/components/OffsetWellPickerV4/effects/useBicWells.js +2 -0
  134. package/cjs-bundle/components/OffsetWellPickerV4/effects/useBicWells.js.map +1 -0
  135. package/cjs-bundle/components/OffsetWellPickerV4/effects/useCompanies.js +2 -0
  136. package/cjs-bundle/components/OffsetWellPickerV4/effects/useCompanies.js.map +1 -0
  137. package/cjs-bundle/components/OffsetWellPickerV4/effects/useCompanyMetricKey.js +2 -0
  138. package/cjs-bundle/components/OffsetWellPickerV4/effects/useCompanyMetricKey.js.map +1 -0
  139. package/cjs-bundle/components/OffsetWellPickerV4/effects/useCompanyProvider.js +2 -0
  140. package/cjs-bundle/components/OffsetWellPickerV4/effects/useCompanyProvider.js.map +1 -0
  141. package/cjs-bundle/components/OffsetWellPickerV4/effects/useFetchWells.js +2 -0
  142. package/cjs-bundle/components/OffsetWellPickerV4/effects/useFetchWells.js.map +1 -0
  143. package/cjs-bundle/components/OffsetWellPickerV4/effects/useFilterOptions.js +2 -0
  144. package/cjs-bundle/components/OffsetWellPickerV4/effects/useFilterOptions.js.map +1 -0
  145. package/cjs-bundle/components/OffsetWellPickerV4/effects/useFilteredWells.js +2 -0
  146. package/cjs-bundle/components/OffsetWellPickerV4/effects/useFilteredWells.js.map +1 -0
  147. package/cjs-bundle/components/OffsetWellPickerV4/effects/useSortedWells.js +2 -0
  148. package/cjs-bundle/components/OffsetWellPickerV4/effects/useSortedWells.js.map +1 -0
  149. package/cjs-bundle/components/OffsetWellPickerV4/effects/useTableColumns.js +2 -0
  150. package/cjs-bundle/components/OffsetWellPickerV4/effects/useTableColumns.js.map +1 -0
  151. package/cjs-bundle/components/OffsetWellPickerV4/index.js +1 -1
  152. package/cjs-bundle/components/OffsetWellPickerV4/index.js.map +1 -1
  153. package/cjs-bundle/components/OffsetWellPickerV4/utils/apiCalls.js +2 -0
  154. package/cjs-bundle/components/OffsetWellPickerV4/utils/apiCalls.js.map +1 -0
  155. package/cjs-bundle/components/OffsetWellPickerV4/utils/index.js +2 -0
  156. package/cjs-bundle/components/OffsetWellPickerV4/utils/index.js.map +1 -0
  157. package/cjs-bundle/components/OffsetWellPickerV4/utils/timePeriod.js +2 -0
  158. package/cjs-bundle/components/OffsetWellPickerV4/utils/timePeriod.js.map +1 -0
  159. package/cjs-bundle/components/OffsetWellPickerV4/utils/unitSystem.js +2 -0
  160. package/cjs-bundle/components/OffsetWellPickerV4/utils/unitSystem.js.map +1 -0
  161. package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
  162. package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
  163. package/cjs-bundle/components/OffsetWellPickerV5/api/assets/fetchAssetWells.js +1 -1
  164. package/cjs-bundle/components/OffsetWellPickerV5/api/assets/fetchRigs.js +1 -1
  165. package/cjs-bundle/components/OffsetWellPickerV5/api/shared/constants.js +1 -1
  166. package/cjs-bundle/components/OffsetWellPickerV5/api/shared/fetchers/getAllWellAssetIds.js +1 -1
  167. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
  168. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js.map +1 -1
  169. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/OffsetWellMap.js +1 -1
  170. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/DrawControl/DrawControl.js +1 -1
  171. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.js +1 -1
  172. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js +1 -1
  173. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/constants.js +1 -1
  174. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoSelection.js +1 -1
  175. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/WellsMap.js +1 -1
  176. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.js +1 -1
  177. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.js.map +1 -1
  178. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js +1 -1
  179. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js.map +1 -1
  180. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.js +1 -1
  181. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.js.map +1 -1
  182. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTableRow.js +1 -1
  183. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTableRow.js.map +1 -1
  184. package/cjs-bundle/components/OffsetWellPickerV5/effects/useAssetsData.js.map +1 -1
  185. package/cjs-bundle/components/OffsetWellPickerV5/effects/useBicWells.js +1 -1
  186. package/cjs-bundle/components/OffsetWellPickerV5/effects/useBicWells.js.map +1 -1
  187. package/cjs-bundle/components/OffsetWellPickerV5/utils/index.js +1 -1
  188. package/cjs-bundle/components/OffsetWellPickerV5/utils/index.js.map +1 -1
  189. package/cjs-bundle/components/PadOffsetsPicker/StagesSelector.js +1 -1
  190. package/cjs-bundle/components/PadOffsetsPicker/StagesSelector.js.map +1 -1
  191. package/cjs-bundle/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js +1 -1
  192. package/cjs-bundle/components/Search/Search.js +1 -1
  193. package/components/AddComment/Popover.js +1 -1
  194. package/components/AddComment/Popover.js.map +1 -1
  195. package/components/AddComment/components/Content.js +1 -1
  196. package/components/AddComment/components/Content.js.map +1 -1
  197. package/components/BICOffsetPickerDialog/index.js +1 -1
  198. package/components/BICOffsetPickerDialog/index.js.map +1 -1
  199. package/components/Casing/CasingTableV2/components/CasingJoints/Editor.js +1 -1
  200. package/components/Casing/CasingTableV2/components/CasingJoints/Editor.js.map +1 -1
  201. package/components/Casing/CasingTableV2/components/Component.js +1 -1
  202. package/components/Casing/CasingTableV2/components/Component.js.map +1 -1
  203. package/components/Casing/CasingTableV2/components/DrillPipe/Editor.js +1 -1
  204. package/components/Casing/CasingTableV2/components/DrillPipe/Editor.js.map +1 -1
  205. package/components/DocumentViewer/DocumentViewer.js +1 -1
  206. package/components/DocumentViewer/DocumentViewer.js.map +1 -1
  207. package/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js +1 -1
  208. package/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js.map +1 -1
  209. package/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js +1 -1
  210. package/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js.map +1 -1
  211. package/components/Drillstring/BHAComponentsTable/components/Component.js +1 -1
  212. package/components/Drillstring/BHAComponentsTable/components/Component.js.map +1 -1
  213. package/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js +1 -1
  214. package/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js.map +1 -1
  215. package/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js +1 -1
  216. package/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js.map +1 -1
  217. package/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js +1 -1
  218. package/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js.map +1 -1
  219. package/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js +1 -1
  220. package/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js.map +1 -1
  221. package/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js +1 -1
  222. package/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js.map +1 -1
  223. package/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js +1 -1
  224. package/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js.map +1 -1
  225. package/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js +1 -1
  226. package/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js.map +1 -1
  227. package/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js +1 -1
  228. package/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js.map +1 -1
  229. package/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js +1 -1
  230. package/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js.map +1 -1
  231. package/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js +1 -1
  232. package/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js.map +1 -1
  233. package/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js +1 -1
  234. package/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js.map +1 -1
  235. package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
  236. package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -1
  237. package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
  238. package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -1
  239. package/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js +1 -1
  240. package/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js.map +1 -1
  241. package/components/OffsetWellPickerV3/components/CustomSelectionView/index.js +1 -1
  242. package/components/OffsetWellPickerV3/components/CustomSelectionView/index.js.map +1 -1
  243. package/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js +1 -1
  244. package/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js.map +1 -1
  245. package/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js +1 -1
  246. package/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js.map +1 -1
  247. package/components/OffsetWellPickerV3/components/TabSelection/index.js +1 -1
  248. package/components/OffsetWellPickerV3/components/TabSelection/index.js.map +1 -1
  249. package/components/OffsetWellPickerV3/components/WellHubView/index.js +1 -1
  250. package/components/OffsetWellPickerV3/components/WellHubView/index.js.map +1 -1
  251. package/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js +1 -1
  252. package/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js.map +1 -1
  253. package/components/OffsetWellPickerV4/OffsetWellPickerV4.js +2 -0
  254. package/components/OffsetWellPickerV4/OffsetWellPickerV4.js.map +1 -0
  255. package/components/OffsetWellPickerV4/OffsetWellPickerV4.module.css.js +2 -0
  256. package/components/OffsetWellPickerV4/OffsetWellPickerV4.module.css.js.map +1 -0
  257. package/components/OffsetWellPickerV4/components/AppHeader/AppHeader.js +2 -0
  258. package/components/OffsetWellPickerV4/components/AppHeader/AppHeader.js.map +1 -0
  259. package/components/OffsetWellPickerV4/components/AppHeader/AppHeader.module.css.js +2 -0
  260. package/components/OffsetWellPickerV4/components/AppHeader/AppHeader.module.css.js.map +1 -0
  261. package/components/OffsetWellPickerV4/components/CustomInfoIcon/CustomInfoIcon.js +2 -0
  262. package/components/OffsetWellPickerV4/components/CustomInfoIcon/CustomInfoIcon.js.map +1 -0
  263. package/components/OffsetWellPickerV4/components/CustomInfoIcon/CustomInfoIcon.module.css.js +2 -0
  264. package/components/OffsetWellPickerV4/components/CustomInfoIcon/CustomInfoIcon.module.css.js.map +1 -0
  265. package/components/OffsetWellPickerV4/components/Filter/Filter.js +2 -0
  266. package/components/OffsetWellPickerV4/components/Filter/Filter.js.map +1 -0
  267. package/components/OffsetWellPickerV4/components/Filter/Filter.module.css.js +2 -0
  268. package/components/OffsetWellPickerV4/components/Filter/Filter.module.css.js.map +1 -0
  269. package/components/OffsetWellPickerV4/components/Filter/MultiSelect.js +2 -0
  270. package/components/OffsetWellPickerV4/components/Filter/MultiSelect.js.map +1 -0
  271. package/components/OffsetWellPickerV4/components/Filter/PeriodSelect.js +2 -0
  272. package/components/OffsetWellPickerV4/components/Filter/PeriodSelect.js.map +1 -0
  273. package/components/OffsetWellPickerV4/components/Filter/RadiusInput.js +2 -0
  274. package/components/OffsetWellPickerV4/components/Filter/RadiusInput.js.map +1 -0
  275. package/components/OffsetWellPickerV4/components/Filter/SingleSelect.js +2 -0
  276. package/components/OffsetWellPickerV4/components/Filter/SingleSelect.js.map +1 -0
  277. package/components/OffsetWellPickerV4/components/Filter/WellSection.js +2 -0
  278. package/components/OffsetWellPickerV4/components/Filter/WellSection.js.map +1 -0
  279. package/components/OffsetWellPickerV4/components/Map/WellsMap.js +2 -0
  280. package/components/OffsetWellPickerV4/components/Map/WellsMap.js.map +1 -0
  281. package/components/OffsetWellPickerV4/components/Map/WellsMap.module.css.js +2 -0
  282. package/components/OffsetWellPickerV4/components/Map/WellsMap.module.css.js.map +1 -0
  283. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.js +2 -0
  284. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.js.map +1 -0
  285. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.module.css.js +2 -0
  286. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.module.css.js.map +1 -0
  287. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AssetResultSection.js +2 -0
  288. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AssetResultSection.js.map +1 -0
  289. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AssetTypesSection.js +2 -0
  290. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AssetTypesSection.js.map +1 -0
  291. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js +2 -0
  292. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js.map +1 -0
  293. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/constants.js +2 -0
  294. package/components/OffsetWellPickerV4/components/OffsetWellsTable/AdvancedSearch/constants.js.map +1 -0
  295. package/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSelect.js +2 -0
  296. package/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSelect.js.map +1 -0
  297. package/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSettingMenu.js +2 -0
  298. package/components/OffsetWellPickerV4/components/OffsetWellsTable/MetricsSettingMenu.js.map +1 -0
  299. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js +2 -0
  300. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.js.map +1 -0
  301. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.module.css.js +2 -0
  302. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTable.module.css.js.map +1 -0
  303. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableHead.js +2 -0
  304. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableHead.js.map +1 -0
  305. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableHead.module.css.js +2 -0
  306. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableHead.module.css.js.map +1 -0
  307. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.js +2 -0
  308. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.js.map +1 -0
  309. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.module.css.js +2 -0
  310. package/components/OffsetWellPickerV4/components/OffsetWellsTable/OffsetWellsTableRow.module.css.js.map +1 -0
  311. package/components/OffsetWellPickerV4/components/OffsetWellsTable/SubjectWellMark.js +2 -0
  312. package/components/OffsetWellPickerV4/components/OffsetWellsTable/SubjectWellMark.js.map +1 -0
  313. package/components/OffsetWellPickerV4/components/OffsetWellsTable/ViewWellSectionsName.js +2 -0
  314. package/components/OffsetWellPickerV4/components/OffsetWellsTable/ViewWellSectionsName.js.map +1 -0
  315. package/components/OffsetWellPickerV4/components/Toolbar/Toolbar.js +2 -0
  316. package/components/OffsetWellPickerV4/components/Toolbar/Toolbar.js.map +1 -0
  317. package/components/OffsetWellPickerV4/components/Toolbar/Toolbar.module.css.js +2 -0
  318. package/components/OffsetWellPickerV4/components/Toolbar/Toolbar.module.css.js.map +1 -0
  319. package/components/OffsetWellPickerV4/constants.js +2 -0
  320. package/components/OffsetWellPickerV4/constants.js.map +1 -0
  321. package/components/OffsetWellPickerV4/effects/useAdvancedWells.js +2 -0
  322. package/components/OffsetWellPickerV4/effects/useAdvancedWells.js.map +1 -0
  323. package/components/OffsetWellPickerV4/effects/useAssetsData.js +2 -0
  324. package/components/OffsetWellPickerV4/effects/useAssetsData.js.map +1 -0
  325. package/components/OffsetWellPickerV4/effects/useBicWells.js +2 -0
  326. package/components/OffsetWellPickerV4/effects/useBicWells.js.map +1 -0
  327. package/components/OffsetWellPickerV4/effects/useCompanies.js +2 -0
  328. package/components/OffsetWellPickerV4/effects/useCompanies.js.map +1 -0
  329. package/components/OffsetWellPickerV4/effects/useCompanyMetricKey.js +2 -0
  330. package/components/OffsetWellPickerV4/effects/useCompanyMetricKey.js.map +1 -0
  331. package/components/OffsetWellPickerV4/effects/useCompanyProvider.js +2 -0
  332. package/components/OffsetWellPickerV4/effects/useCompanyProvider.js.map +1 -0
  333. package/components/OffsetWellPickerV4/effects/useFetchWells.js +2 -0
  334. package/components/OffsetWellPickerV4/effects/useFetchWells.js.map +1 -0
  335. package/components/OffsetWellPickerV4/effects/useFilterOptions.js +2 -0
  336. package/components/OffsetWellPickerV4/effects/useFilterOptions.js.map +1 -0
  337. package/components/OffsetWellPickerV4/effects/useFilteredWells.js +2 -0
  338. package/components/OffsetWellPickerV4/effects/useFilteredWells.js.map +1 -0
  339. package/components/OffsetWellPickerV4/effects/useSortedWells.js +2 -0
  340. package/components/OffsetWellPickerV4/effects/useSortedWells.js.map +1 -0
  341. package/components/OffsetWellPickerV4/effects/useTableColumns.js +2 -0
  342. package/components/OffsetWellPickerV4/effects/useTableColumns.js.map +1 -0
  343. package/components/OffsetWellPickerV4/index.d.ts +1 -1
  344. package/components/OffsetWellPickerV4/index.d.ts.map +1 -1
  345. package/components/OffsetWellPickerV4/index.js +1 -1
  346. package/components/OffsetWellPickerV4/index.js.map +1 -1
  347. package/components/OffsetWellPickerV4/utils/apiCalls.js +2 -0
  348. package/components/OffsetWellPickerV4/utils/apiCalls.js.map +1 -0
  349. package/components/OffsetWellPickerV4/utils/index.js +2 -0
  350. package/components/OffsetWellPickerV4/utils/index.js.map +1 -0
  351. package/components/OffsetWellPickerV4/utils/timePeriod.js +2 -0
  352. package/components/OffsetWellPickerV4/utils/timePeriod.js.map +1 -0
  353. package/components/OffsetWellPickerV4/utils/unitSystem.js +2 -0
  354. package/components/OffsetWellPickerV4/utils/unitSystem.js.map +1 -0
  355. package/components/OffsetWellPickerV5/OffsetWellPickerV5.d.ts.map +1 -1
  356. package/components/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
  357. package/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
  358. package/components/OffsetWellPickerV5/api/assets/fetchAllAssets.d.ts +1 -1
  359. package/components/OffsetWellPickerV5/api/assets/fetchAllAssets.d.ts.map +1 -1
  360. package/components/OffsetWellPickerV5/api/assets/fetchAssetWells.d.ts +1 -1
  361. package/components/OffsetWellPickerV5/api/assets/fetchAssetWells.d.ts.map +1 -1
  362. package/components/OffsetWellPickerV5/api/assets/fetchAssetWells.js +1 -1
  363. package/components/OffsetWellPickerV5/api/assets/fetchRigs.d.ts +1 -1
  364. package/components/OffsetWellPickerV5/api/assets/fetchRigs.d.ts.map +1 -1
  365. package/components/OffsetWellPickerV5/api/assets/fetchRigs.js +1 -1
  366. package/components/OffsetWellPickerV5/api/shared/constants.d.ts +0 -1
  367. package/components/OffsetWellPickerV5/api/shared/constants.d.ts.map +1 -1
  368. package/components/OffsetWellPickerV5/api/shared/constants.js +1 -1
  369. package/components/OffsetWellPickerV5/api/shared/fetchers/getAllWellAssetIds.d.ts.map +1 -1
  370. package/components/OffsetWellPickerV5/api/shared/fetchers/getAllWellAssetIds.js +1 -1
  371. package/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
  372. package/components/OffsetWellPickerV5/components/Filter/Filter.js.map +1 -1
  373. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/OffsetWellMap.d.ts +4 -2
  374. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/OffsetWellMap.d.ts.map +1 -1
  375. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/OffsetWellMap.js +1 -1
  376. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/DrawControl/DrawControl.d.ts.map +1 -1
  377. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/DrawControl/DrawControl.js +1 -1
  378. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHints.js +1 -1
  379. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js +1 -1
  380. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/constants.d.ts +19 -0
  381. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/constants.d.ts.map +1 -1
  382. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/constants.js +1 -1
  383. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useBoxSelection.d.ts +1 -1
  384. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useBoxSelection.d.ts.map +1 -1
  385. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoSelection.d.ts +1 -1
  386. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoSelection.d.ts.map +1 -1
  387. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useLassoSelection.js +1 -1
  388. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useMapBounds.d.ts +1 -1
  389. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useMapBounds.d.ts.map +1 -1
  390. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useMapViewState.d.ts +1 -1
  391. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useMapViewState.d.ts.map +1 -1
  392. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useRadiusResize.d.ts +1 -1
  393. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useRadiusResize.d.ts.map +1 -1
  394. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useTooltipAnchor.d.ts +1 -1
  395. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useTooltipAnchor.d.ts.map +1 -1
  396. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/index.d.ts +1 -1
  397. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/index.d.ts.map +1 -1
  398. package/components/OffsetWellPickerV5/components/Map/WellsMap.d.ts +2 -3
  399. package/components/OffsetWellPickerV5/components/Map/WellsMap.d.ts.map +1 -1
  400. package/components/OffsetWellPickerV5/components/Map/WellsMap.js +1 -1
  401. package/components/OffsetWellPickerV5/components/Map/index.d.ts +1 -0
  402. package/components/OffsetWellPickerV5/components/Map/index.d.ts.map +1 -1
  403. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.d.ts +5 -3
  404. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.d.ts.map +1 -1
  405. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.js +1 -1
  406. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AdvancedSearch.js.map +1 -1
  407. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.d.ts +5 -3
  408. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.d.ts.map +1 -1
  409. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js +1 -1
  410. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/AutoCompleteAssetSearch.js.map +1 -1
  411. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.d.ts +3 -1
  412. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.d.ts.map +1 -1
  413. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.js +1 -1
  414. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTable.js.map +1 -1
  415. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTableRow.d.ts +3 -3
  416. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTableRow.d.ts.map +1 -1
  417. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTableRow.js +1 -1
  418. package/components/OffsetWellPickerV5/components/OffsetWellsTable/OffsetWellsTableRow.js.map +1 -1
  419. package/components/OffsetWellPickerV5/effects/useAssetsData.d.ts +1 -1
  420. package/components/OffsetWellPickerV5/effects/useAssetsData.d.ts.map +1 -1
  421. package/components/OffsetWellPickerV5/effects/useAssetsData.js.map +1 -1
  422. package/components/OffsetWellPickerV5/effects/useBicWells.d.ts.map +1 -1
  423. package/components/OffsetWellPickerV5/effects/useBicWells.js +1 -1
  424. package/components/OffsetWellPickerV5/effects/useBicWells.js.map +1 -1
  425. package/components/OffsetWellPickerV5/utils/index.d.ts.map +1 -1
  426. package/components/OffsetWellPickerV5/utils/index.js +1 -1
  427. package/components/OffsetWellPickerV5/utils/index.js.map +1 -1
  428. package/components/PadOffsetsPicker/StagesSelector.js +1 -1
  429. package/components/PadOffsetsPicker/StagesSelector.js.map +1 -1
  430. package/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js +1 -1
  431. package/components/Search/Search.d.ts +2 -1
  432. package/components/Search/Search.d.ts.map +1 -1
  433. package/components/Search/Search.js +1 -1
  434. package/components/Template/TemplateSharingDialog/ChipSelector.d.ts +2 -2
  435. package/package.json +2 -2
@@ -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';\nimport { normalizeFilters } from './stores/filter-store/utils/normalizeFilters';\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 or empty array = fetch all companies\n if (\n companyFilter === undefined ||\n (Array.isArray(companyFilter) && companyFilter.length === 0)\n ) {\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 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 // Create map of fresh well data from wells (includes ALL enriched wells:\n // - Wells in geo area from useFetchWells\n // - Pinned wells outside geo area from usePinnedWells\n // - Searched wells outside geo area from useSearchedWells)\n const wellsMap = new Map(wells?.map(w => [w.id, w]) || []);\n\n // For selected wells, use fresh data from wells when available\n // This ensures metrics are up-to-date for ALL selected wells including those outside radius\n const selectedWithFreshData = selectedWells.map(w => wellsMap.get(w.id) || w);\n\n // Ensure ALL selected wells are displayed (at top via useSortedWells)\n // regardless of current company filter\n return uniqBy(selectedWithFreshData.concat(filteredWells), 'id');\n }, [wells, 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\n // Reset filters to current prop values (discards unsaved changes like polygon drawings)\n // Use normalizeFilters to handle lasso mode without valid polygon\n const normalizedFilters = normalizeFilters(offsetSettings?.filters);\n\n setFilters({\n ...normalizedFilters,\n radius: normalizedFilters?.radius ?? DEFAULT_RADIUS_MILES,\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 isLoading={areRawWellsLoading}\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 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","_state$filters","radius","DEFAULT_RADIUS_MILES","selectionMode","_state$filters2","polygonCoords","_state$filters3","_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","wellsMap","Map","selectedWithFreshData","get","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","set","rigName","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","_normalizedFilters$ra","normalizedFilters","normalizeFilters","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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"}
1
+ {"version":3,"file":"OffsetWellPickerV5.js","sources":["../../../../src/components/OffsetWellPickerV5/OffsetWellPickerV5.js"],"sourcesContent":["import { useState, useEffect, useLayoutEffect, 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';\nimport { normalizeFilters } from './stores/filter-store/utils/normalizeFilters';\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 wellsMapRef = useRef(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 or empty array = fetch all companies\n if (\n companyFilter === undefined ||\n (Array.isArray(companyFilter) && companyFilter.length === 0)\n ) {\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 rawBicWells,\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 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 // Create map of fresh well data from wells (includes ALL enriched wells:\n // - Wells in geo area from useFetchWells\n // - Pinned wells outside geo area from usePinnedWells\n // - Searched wells outside geo area from useSearchedWells)\n const wellsMap = new Map(wells?.map(w => [w.id, w]) || []);\n\n // For selected wells, use fresh data from wells when available\n // This ensures metrics are up-to-date for ALL selected wells including those outside radius\n const selectedWithFreshData = selectedWells.map(w => wellsMap.get(w.id) || w);\n\n // Include BIC wells so they remain visible after reset even when unselected\n const bicWellIds = rawBicWells?.[selectedWellSection] || [];\n const bicWellsToShow = bicWellIds.map(id => wellsMap.get(id)).filter(w => w !== undefined);\n\n // Ensure ALL selected wells and BIC wells are displayed\n // regardless of current company filter or radius\n return uniqBy(selectedWithFreshData.concat(bicWellsToShow).concat(filteredWells), 'id');\n }, [wells, filteredWells, selectedWells, rawBicWells, selectedWellSection]);\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 setSelectedWells(prevWells => {\n if (prevWells.length >= maxOffsetWellNumber) {\n return prevWells;\n }\n\n const enrichedWell = wells?.find(w => w.id === well.id) || well;\n\n return prevWells.concat(enrichedWell);\n });\n } else {\n setSelectedWells(prevWells => prevWells.filter(item => item.id !== well.id));\n }\n },\n [wells, maxOffsetWellNumber]\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 async section => {\n if (rawBicWells) {\n const rawWellIds = rawBicWells[section] || [];\n\n // Build wells map from current data (radius-fetched + pinned + searched)\n const wellsMap = new Map(rawWellsWithSubject?.map(w => [w.id, w]) || []);\n\n // Find wells not in current data (outside current radius)\n const missingWellIds = rawWellIds.filter(id => !wellsMap.has(id));\n\n // Fetch missing wells - returns fetched wells directly\n let fetchedWells = [];\n\n if (missingWellIds.length > 0) {\n fetchedWells = await fetchSearchedWells(missingWellIds);\n }\n\n // Merge fetched wells into map\n fetchedWells.forEach(w => wellsMap.set(w.id, w));\n\n // Build section wells from merged map\n const sectionWells = rawWellIds.map(id => wellsMap.get(id)).filter(w => w !== undefined);\n\n const limitedWells = sortArray(sectionWells, 'distance');\n setSelectedWells(limitedWells.slice(0, maxOffsetSize));\n } else {\n setSelectedWells(subjectWell ? [subjectWell] : []);\n }\n },\n [rawBicWells, rawWellsWithSubject, fetchSearchedWells, maxOffsetSize, subjectWell]\n );\n\n const handleChangeWellSection = useCallback(\n async section => {\n setSelectedWellSection(section);\n await 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: normalizeFilters(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\n // Reset filters to current prop values (discards unsaved changes like polygon drawings)\n // Use normalizeFilters to handle lasso mode without valid polygon\n const normalizedFilters = normalizeFilters(offsetSettings?.filters);\n\n setFilters({\n ...normalizedFilters,\n radius: normalizedFilters?.radius ?? DEFAULT_RADIUS_MILES,\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(async () => {\n resetFilters();\n setSelectedWellSection(ALL_SECTION_KEY);\n await 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 const rightColumnRef = useRef();\n const scrollPositionRef = useRef(0);\n\n useEffect(() => {\n if (!sortedWells) return;\n\n const wells = sortedWells.slice(0, tableRowsCount);\n setTableWells(wells);\n }, [sortedWells, tableRowsCount, subjectWell]);\n\n // Restore scroll position after tableWells update\n useLayoutEffect(() => {\n if (rightColumnRef.current && scrollPositionRef.current > 0) {\n rightColumnRef.current.scrollTop = scrollPositionRef.current;\n }\n }, [tableWells]);\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 // Track scroll position for preservation during re-renders\n scrollPositionRef.current = e.target.scrollTop;\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 ref={wellsMapRef}\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 isLoading={areRawWellsLoading}\n />\n </div>\n )}\n <div className={styles.rightColumn} ref={rightColumnRef} onScroll={handleScroll}>\n <Filter\n isHidden={!isFilterExpanded}\n filterOptions={filterOptions}\n wellSections={wellSections}\n selectedWellSection={selectedWellSection}\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 companyIds={companyIdsToFetch}\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 onRowClick={wellId => wellsMapRef.current?.flyToWell(wellId)}\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","wellsMapRef","useRef","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","_state$filters","radius","DEFAULT_RADIUS_MILES","selectionMode","_state$filters2","polygonCoords","_state$filters3","_useCompanies","useCompanies","canViewCompanies","companies","_useState4","_useState3","selectedWells","setSelectedWells","_useState6","_useState5","preselectedCompanyIds","setPreselectedCompanyIds","pendingSearchSelectionRef","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","rawBicWells","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","wellsMap","Map","selectedWithFreshData","get","bicWellsToShow","uniqBy","selectedIdsSet","data","dataIds","preserved","size","pendingIds","enrichedWells","enrichedIds","includes","limited","delete","_ref3","_ref6","_ref7","useSortedWells","_useSortedWells2","_useSortedWells","sortBy","setSortBy","sortDirection","setSortDirection","sortedWells","handleAddRemoveAssets","useCallback","isAdding","newAssets","assetType","addingWellIds","wellIdToRigName","rigNameToWellIds","addingWellIdsSet","addingWells","foundIds","missingIds","limitedWells","_context3","SEARCH_CATEGORIES","set","rigName","push","flatMap","assetId","_ref4","uniq","_ref5","_callee3","_x","_x2","_x3","handleHideAdvancedSearch","handleChangeMetricsKeys","newMetricsKeys","handleUpdateMetricsKey","key","newValue","prevKeys","item","handleChangeSortBy","sortKey","handleChangeOffsetWell","checked","prevWells","enrichedWell","handleChangeAllOffsetWells","sortedData","sortArray","handleBatchSelectWells","wellsToSelect","currentIds","newWells","availableSlots","fw","updateSelectedWellsBySection","rawWellIds","missingWellIds","fetchedWells","sectionWells","_context4","_callee4","_x4","handleChangeWellSection","_context5","_callee5","_x5","selectedWellsCount","_ref8","owsWellIds","owsWellIdsSet","isXtoProvider","COMPANY_PROVIDERS_FOR_IDAS","offsetLabel","performSave","_ref9","normalizeFilters","mapHidden","filterExpanded","handleCancel","_normalizedFilters$ra","normalizedFilters","isTableFullLoading","isResetVisible","isEmpty","sideTracks","handleReset","_callee6","_context6","isLoading","ROWS_PER_PAGE","_useState18","_useState17","tableRowsCount","setTableRowsCount","_useState20","_useState19","tableWells","setTableWells","headTableRef","rightColumnRef","scrollPositionRef","useLayoutEffect","scrollTop","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","ref","offsetWellIds","_ref11","onBatchSelectWells","rightColumn","onScroll","e","target","scrollLeft","scrollHeight","offsetHeight","round","count","Filter","isHidden","onChangeBicWells","stickyTableWrapper","Table","innerRef","stickyTable","TableHead","OffsetWellsTableHead","onChangeSort","onUpdateMetricsKey","wellNameStyle","isTaColumnVisible","topGradient","_defineProperty","topGradientScrolled","searchCellWrapper","searchCell","AdvancedSearch","companyIds","onChange","_ref12","onHideAdvancedSearch","OffsetWellsTable","isLastWell","onRowClick","_wellsMapRef$current","flyToWell","viewOnlyInfoContainer"],"mappings":"iy0BAuDA,IAAMA,GAAY,gDAEgB,WAAM,IAAAC,EAAAC,EAAAC,EAChCC,EAAOC,uBAAoB,SAAAC,GAAK,OAAIA,EAAMF,QAC1CG,EAAWF,uBAAoB,SAAAC,GAAK,OAAIA,EAAMC,YAC9CC,EAAqBH,uBAAoB,SAAAC,GAAK,OAAIA,EAAME,sBACxDC,EAAcJ,uBAAoB,SAAAC,GAAK,OAAIA,EAAMG,eACjDC,GAAiBL,uBAAoB,SAAAC,GAAK,OAAIA,EAAMI,kBACpDC,GAAaN,uBAAoB,SAAAC,GAAK,OAAIA,EAAMK,cAChDC,GAAUP,uBAAoB,SAAAC,GAAK,OAAIA,EAAMM,WAC7CC,GAASR,uBAAoB,SAAAC,GAAK,OAAIA,EAAMO,UAC5CC,GAAaT,uBAAoB,SAAAC,GAAK,OAAIA,EAAMS,iBAChDC,GAAqBX,uBAAoB,SAAAC,GAAK,OAAIA,EAAMU,sBACxDC,GAAkBZ,uBAAoB,SAAAC,GAAK,OAAIA,EAAMW,mBAEnBC,GAAAA,EAAQA,SAAC,MAAKC,GAAAC,GAAAA,QAAAC,GAAA,GAA/CC,GAAYH,GAAA,GAAEI,GAAeJ,GAAA,GAC9BK,GAAcC,SAAO,MACrBV,GAAgBW,KAAKC,IAAIb,GAAa,EAAGE,GAAqB,EAAGY,kBAAkB,GACnFC,GAAsBH,KAAKC,IAC/BD,KAAKI,IAAIf,GAAeC,GAAqB,GAC7CY,EAAeA,gBAAG,GAGdG,GAAgBvB,aAAAA,EAAAA,EAAoBwB,SAGbC,GAAAA,EAAmBA,oBAACF,IAA1CG,GAAwDd,GAAAA,QAAAe,GAAA,GAAtC,GAEzBC,EAAAA,yBAAyB1B,GAAgBG,GAAQgB,IAEjD,IAAMQ,GAAmBC,gBAAa,SAAAhC,GAAK,OAAIA,EAAM+B,oBAC/CE,GAAcD,gBAAa,SAAAhC,GAAK,OAAIA,EAAMiC,eAC1CC,GAAiBF,gBAAa,SAAAhC,GAAK,OAAIA,EAAMkC,kBAC7CC,GAAoBH,gBAAa,SAAAhC,GAAK,OAAIA,EAAMmC,qBAChDC,GAAiBJ,gBAAa,SAAAhC,GAAK,OAAIA,EAAMoC,kBAC7CC,GAAoBL,gBAAa,SAAAhC,GAAK,OAAIA,EAAMqC,qBAChDC,GAAyBN,gBAAa,SAAAhC,GAAK,OAAIA,EAAMsC,0BACrDC,GAA4BP,gBAAa,SAAAhC,GAAK,OAAIA,EAAMuC,6BAExDC,KAAkBtC,eAAAA,EAAoBuC,cAActC,aAAAA,EAAAA,EAAauC,YACjEC,GAAkBlB,GAAgB,EAClCmB,GAAUC,kBAAe,SAAA7C,GAAK,OAAIA,EAAM4C,WACxCE,GAAaD,kBAAe,SAAA7C,GAAK,OAAIA,EAAM8C,cAC3CC,GAAeF,kBAAe,SAAA7C,GAAK,OAAIA,EAAM+C,gBAC7CC,WAAYrD,EAAGkD,EAAcA,gBAAC,SAAA7C,GAAK,IAAAiD,EAAA,OAAiB,QAAjBA,EAAIjD,EAAM4C,eAAO,IAAAK,OAAA,EAAbA,EAAeC,MAAM,mBAAKC,EAAAA,qBACjEC,WAAaxD,EAAGiD,EAAcA,gBAAC,SAAA7C,GAAK,IAAAqD,EAAA,OAAiB,QAAjBA,EAAIrD,EAAM4C,eAAO,IAAAS,OAAA,EAAbA,EAAeD,aAAa,mBAAK,SACzEE,GAAgBT,kBAAe,SAAA7C,GAAK,IAAAuD,EAAA,OAAiB,QAAjBA,EAAIvD,EAAM4C,eAAO,IAAAW,OAAA,EAAbA,EAAeD,iBAC7DE,GAAwCC,EAAAA,aAAa,CAAE3D,KAAAA,IAA/C4D,MAAAA,iBAAkBC,MAAAA,UACgB/C,GAAAA,EAAQA,SAAC,IAAGgD,GAAA9C,GAAAA,QAAA+C,GAAA,GAA/CC,GAAaF,GAAA,GAAEG,GAAgBH,GAAA,GACoBhD,GAAAA,EAAQA,SAAC,IAAGoD,GAAAlD,GAAAA,QAAAmD,GAAA,GAA/DC,GAAqBF,GAAA,GAAEG,GAAwBH,GAAA,GAGhDI,GAA4BjD,EAAAA,OAAO,IAAIkD,KAGCzD,GAAAA,EAAQA,SAAC,IAAG0D,GAAAxD,GAAAA,QAAAyD,GAAA,GAAnDC,GAAeF,GAAA,GAAEG,GAAkBH,GAAA,GAGA1D,GAAAA,EAAQA,UAAC,GAAM8D,GAAA5D,GAAAA,QAAA6D,GAAA,GAAlDC,GAAaF,GAAA,GAAEG,GAAgBH,GAAA,GAEhCI,GAAgBC,EAAAA,SAAQ,WAAA,OAAMnC,cAAO,EAAPA,GAAUoC,aAAWC,WAAU,CAACrC,KAGpEsC,EAAAA,WAAU,WACR,IAAMC,GAAc/E,cAAc,EAAdA,GAAgBgF,kBAAmB,IAClDtF,GAAQoE,GAAsBmB,OAAS,GAA4B,IAAvBF,EAAYE,QAC7DC,EAAAA,QAACC,GAAA,QAAAC,MAAA,SAAAC,IAAA,IAAAC,EAAA,OAAAH,WAAAI,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,OAAAF,EAAAE,KAAA,EACmBC,EAAAA,yBAAyBZ,GAAY,KAAA,EAAjDO,EAAGE,EAAAI,KACT7B,GAAyBuB,GAAK,KAAA,EAAA,IAAA,MAAA,OAAAE,EAAAK,OAAA,GAAAR,EAC/B,IAHDH,EAID,GAAE,CAACxF,EAAMM,cAAc,EAAdA,GAAgBgF,gBAAiBlB,GAAsBmB,SAGjE,IAAMa,GAAoBnB,EAAAA,SAAQ,WAEhC,IAAMoB,EAAyBrC,GAC5BsC,KAAI,SAAAC,GAAI,OAAIA,EAAK5D,SAAS,IAC1B6D,QAAO,SAAAC,GAAE,OAAU,MAANA,KACVC,EAAsBtC,IAAyB,GAGrD,IAAKR,GAAkB,CACrB,IAAM+C,EAAUjE,GAAiB,CAACA,IAAkB,GAEpD,OAAWkE,EAAA,QAAA,IAAIrC,IAAIoC,EAAQE,OAAOR,EAAwBK,IAC5D,CAGA,QACoBI,IAAlB9B,IACC+B,MAAMC,QAAQhC,KAA2C,IAAzBA,GAAcO,OAE/C,OAAO,KAGT,IAAM0B,EAAY,IAAI1C,IAAIS,IAM1B,OALItC,IACFuE,EAAUC,IAAIxE,IAEhB2D,EAAuBc,SAAQ,SAAAV,GAAE,OAAIQ,EAAUC,IAAIT,MACnDC,EAAoBS,SAAQ,SAAAV,GAAE,OAAIQ,EAAUC,IAAIT,MACzCM,MAAMK,KAAKH,EACpB,GAAG,CAACjC,GAAetC,GAAgBkB,GAAkBI,GAAeI,KACpEiD,GAAsDvG,EAAAA,UACpDR,cAAAA,EAAAA,GAAgBgH,cAAeC,EAAAA,iBAChCC,GAAAxG,GAAAA,QAAAqG,GAAA,GAFMI,GAAmBD,GAAA,GAAEE,GAAsBF,GAAA,GAG5CG,GAActG,UAAO,GACiBP,GAAAA,EAAQA,UAAC,GAAK8G,GAAA5G,GAAAA,QAAA6G,GAAA,GAAnDC,GAAcF,GAAA,GAAEG,GAAiBH,GAAA,GAElCI,GAAuBvG,KAAuBuC,cAAa,EAAbA,GAAeuB,QAG7D0C,GAAsB5G,EAAAA,SACQP,GAAAA,EAAQA,UAAC,GAAKoH,GAAAlH,GAAAA,QAAAmH,GAAA,GAA3CC,GAAUF,GAAA,GAAEG,GAAaH,GAAA,GAEhC9C,EAAAA,WAAU,WAOR,GANIpF,GAAQgI,IACVM,EAAoBA,qBACc7G,gCAAAA,OAAAA,GAAsB,EACvD,qBAGEzB,EAAM,CAAA,IAAAuI,EAAAC,EACHC,EAAa,IAAIlE,IAAI0D,GAAoBS,SAAW,KAExDpI,kBAAAA,EAAAA,GAAgBgF,kCAAhBhF,EAAAiI,EAAiChD,WAAsC,QAA3B0C,EAAAA,GAAoBS,eAAO,IAAAF,OAAA,EAA3BA,EAA6BjD,WACxEjF,cAAAA,EAAAA,GAAgBgF,kBAAmB,IAAIqD,OAAM,SAAAlC,GAAE,OAAIgC,EAAWG,IAAInC,QAEnEkB,GAAYe,SAAU,GAExBT,GAAoBS,QAAUpI,cAAc,EAAdA,GAAgBgF,eAChD,CAED,GAAE,CAAC0C,GAAsBhI,EAAMM,GAAgBmB,KAGhD,IAAuCoH,GAAAA,EAAAA,cACrCzC,GACAtE,GACAoB,GACAI,GACAE,IACDsF,GAAA9H,GAAAA,QAAA+H,GAAA,GANMC,GAAQF,GAAA,GAAEG,GAAkBH,GAAA,GASUI,GAAAA,EAAAA,eAAe5I,cAAAA,EAAAA,GAAgBgF,iBAAgB6D,GAAAnI,GAAAA,QAAAoI,GAAA,GAArFC,GAAWF,GAAA,GAAEG,GAAqBH,GAAA,GAGzCI,GAAqEC,EAAAA,mBAAkBC,GAAAzI,GAAAA,QAAAuI,GAAA,GAAhFG,GAAaD,GAAA,GAAEE,GAAuBF,GAAA,GAAEG,GAAkBH,GAAA,GAG3DI,GAAsB5E,EAAAA,SAAQ,WAClC,IAAK+D,GACH,OAAO,KAGT,IAAIc,EAASd,GAEb,GAAIK,UAAAA,GAAa9D,OAAQ,CACvB,IAAMwE,EAAc,IAAIxF,IAAIuF,EAAOxD,KAAI,SAAA0D,GAAC,OAAIA,EAAEvD,EAAE,KAC1CwD,EAAgBZ,GAAY7C,QAAO,SAAAwD,GAAC,OAAKD,EAAYnB,IAAIoB,EAAEvD,OAE7DwD,EAAc1E,OAAS,IACzBuE,EAASA,EAAOjD,OAAOoD,GAE3B,CAGA,GAAIP,UAAAA,GAAenE,OAAQ,CACzB,IAAMwE,EAAc,IAAIxF,IAAIuF,EAAOxD,KAAI,SAAA0D,GAAC,OAAIA,EAAEvD,EAAE,KAC1CyD,EAAkBR,GAAclD,QAAO,SAAAwD,GAAC,OAAKD,EAAYnB,IAAIoB,EAAEvD,OAEjEyD,EAAgB3E,OAAS,IAC3BuE,EAASA,EAAOjD,OAAOqD,GAE3B,CAMA,OAJIpI,KAAuBgI,EAAOK,MAAK,SAAAH,GAAC,OAAIA,EAAEvD,KAAO3E,GAAmB2E,EAAE,MACxEqD,EAAS,CAAChI,IAAoB+E,OAAOiD,IAGhCA,CACR,GAAE,CAACd,GAAUlH,GAAoBuH,GAAaK,KAErBU,GAAAA,EAAkBA,mBAAC1H,IAAtC2H,GAAqDrJ,GAAAA,QAAAsJ,GAAA,GAAtC,GAEtBC,GASIC,EAAAA,YAAY7I,GAAekI,IAAoBY,GAAAzJ,GAAAA,QAAAuJ,GAAA,GARjDG,GAAYD,GAAA,GACZE,GAAeF,GAAA,GACfG,GAAQH,GAAA,GACRI,GAAWJ,GAAA,GACXK,GAAYL,GAAA,GACZM,GAAeN,GAAA,GACfO,GAAQP,GAAA,GACRQ,GAAWR,GAAA,GAGPS,GAA6BjG,EAAAA,SAAQ,WACzC,QAAKyF,IAIEA,GAAaP,MAAK,SAAAgB,GAAO,OAAIA,EAAQC,QAAU7D,oBACxD,GAAG,CAACmD,KAEJtF,EAAAA,WAAU,WACRiD,IAAc,GACdsC,GAAgB,MAChBE,GAAY,KAEb,GAAE,CAACA,GAAaF,GAAiBhJ,KAElC,IAAsC0J,GAAAA,EAAAA,oBACpC3I,GACApC,cAAAA,EAAAA,GAAgBgL,aACjBC,GAAAvK,GAAAA,QAAAwK,GAAA,GAHMF,GAAWC,GAAA,GAAEE,GAAcF,GAAA,GAMlCG,GAA2DC,EAAgBA,iBACzE9B,GACAa,GACAE,GACAjJ,GACA2J,GACAtL,GACD4L,GAAA5K,GAAAA,QAAA0K,GAAA,GAPMG,GAAuBD,GAAA,GAAEE,GAAuBF,GAAA,GAUjDG,GAAQ9G,EAAAA,SAAQ,WACpB,IAAK4G,IAA4BhI,WAAAA,GAAW0B,OAAQ,OAAOsG,GAE3D,IAAMG,EAAa,CAAA,EAKnB,OAJAnI,GAAUsD,SAAQ,SAAAhC,GAChB6G,EAAW7G,EAAQsB,IAAMtB,EAAQ8G,IACnC,IAEOJ,GAAwBvF,KAAI,SAAAC,GAAI,OAAA2F,GAAAA,GAAA,CAAA,EAClC3F,GAAI,CAAA,EAAA,CACP4F,YAAaH,EAAWzF,EAAK5D,YAAc,QAAM,GAErD,GAAG,CAACkJ,GAAyBhI,KAGvBuI,GAAcnH,EAAAA,SAAQ,WAC1B,OAAKnD,GAIAiK,IAIuBA,GAAMM,MAAK,SAAArC,GAAC,OAAIA,EAAEvD,KAAO3E,GAAmB2E,OAH/D3E,GAJA,IAUX,GAAG,CAACA,GAAoBiK,KAElBO,KACHrD,IACA6C,IACAxC,IACAK,IAEHvE,EAAAA,WAAU,WACR,GAAKkH,GAAL,CAIA,IAAwBC,EAAlBC,GAAkBD,EAAA/G,EAAA,QAAAC,GAAA,QAAAC,MAAA,SAAA+G,IAAA,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA1H,EAAA2H,EAAAC,EAAAC,EAAAC,EAAA,OAAA3H,WAAAI,MAAA,SAAAwH,GAAA,OAAA,OAAAA,EAAAtH,KAAAsH,EAAArH,MAAA,KAAA,EAGO,GAFvB0G,OAA+C,KAA7BpM,cAAc,EAAdA,GAAgBoM,YAA4BpM,cAAAA,EAAAA,GAAgBoM,UAEhFC,GAAqB,GAErBD,EAAQ,CAAAW,EAAArH,KAAA,GAAA,KAAA,CAOV,GANM6G,EAAajC,GAASrD,oBAAoB,GAC1CuF,EAAgB,IAAIvI,IAAIsI,GACxBE,IAAazM,cAAAA,EAAAA,GAAgBgF,kBAAmB,IAAIqD,OAAM,SAAA2E,GAAM,OACpER,EAAclE,IAAI0E,EAAO,IAIvBT,EAAWtH,UAAWjF,UAAA,QAAcsM,EAAdtM,GAAgBgF,uBAAhB,IAAAsH,OAAc,EAAdA,EAAiCrH,SAAWwH,EAAS,CAAAM,EAAArH,KAAA,GAAA,KAAA,CAAA,OAAAqH,EAAArH,KAAA,EAC/CuH,EAAmBA,oBAACV,EAAYlL,IAAc,KAAA,EAAtEqL,EAAeK,EAAAnH,KACfZ,EAAkB0H,EACrBQ,MAAM,EAAG5M,GAAqB,GAC9B0F,KAAI,SAAAC,GAAI,OAAIA,EAAKE,MACdwG,WACD3M,IAAc,CAAA,EAAA,CACjBqB,cAAAA,GACA2D,gBAAAA,EACAmI,mBAAoBhM,IAAuB6D,EAAgBC,SAEvD2H,EAAqB,IAAI3I,IAAIe,GAC7B6H,EAAcH,EAAgBxG,QAAO,SAAAD,GAAI,OAAI2G,EAAmBtE,IAAIrC,EAAKE,OAE/EhG,GAAOwM,EAAkBE,GAAaE,EAAArH,KAAA,GAAA,MAAA,KAAA,GAEtC2G,GAAqB,EAAM,KAAA,GAAAU,EAAArH,KAAA,GAAA,MAAA,KAAA,GAG7B2G,GAAqB,EAAM,KAAA,GAAA,GAGxBA,EAAkB,CAAAU,EAAArH,KAAA,GAAA,KAAA,CAAA,OAAAqH,EAAArH,KAAA,GACKuH,EAAmBA,qBAC3CjN,cAAc,EAAdA,GAAgBgF,kBAAmB,GACnC3D,IACD,KAAA,GAHKwL,EAAWE,EAAAnH,KAIjBzF,GAAOH,GAAgB6M,GAAa,KAAA,GAAA,IAAA,MAAA,OAAAE,EAAAlH,OAAA,GAAAsG,EAEvC,KAAA,WA1CoB,OAAAF,EAAAmB,MAAAC,KAAAC,UAAA,GA4CjB/M,IAAmBuH,IAAc9H,IAAkBsK,KACrD4B,IACAnE,IAAc,GAhDhB,CAmDD,GAAE,CACD/H,GACAsK,GACAjJ,GACAF,GACAZ,GACAyL,GACAlE,GACAzH,GACAC,GACAH,KAGF,IAAMoN,GAAgBC,EAAgBA,iBAAC/B,GAAOlI,GAAWD,IAGnDmK,GAAkBC,EAAeA,gBACrC1C,GACA1H,GACAsH,IAGI+C,GAAgBC,EAAAA,iBAAiBnC,GAAOjJ,GAASU,GAAeN,IAGhEiL,GAAiBlJ,EAAAA,SAAQ,WAC7B,IAAKgJ,GACH,OAAOA,GAOT,IAAMG,EAAW,IAAIC,KAAItC,gBAAAA,GAAOzF,KAAI,SAAA0D,GAAC,MAAI,CAACA,EAAEvD,GAAIuD,QAAO,IAIjDsE,EAAwBtK,GAAcsC,KAAI,SAAA0D,GAAC,OAAIoE,EAASG,IAAIvE,EAAEvD,KAAOuD,KAIrEwE,IADavD,cAAAA,EAAAA,GAAcxD,MAAwB,IACvBnB,KAAI,SAAAG,GAAE,OAAI2H,EAASG,IAAI9H,EAAG,IAAED,QAAO,SAAAwD,GAAC,YAAUlD,IAANkD,KAI1E,OAAOyE,EAAMA,OAACH,EAAsBzH,OAAO2H,GAAgB3H,OAAOoH,IAAgB,KACpF,GAAG,CAAClC,GAAOkC,GAAejK,GAAeiH,GAAaxD,KAEtDrC,EAAAA,WAAU,WACR,GAAK6I,IAAkB3B,IAInB3E,GAAYe,QAAS,CACvB,IAAMgG,EAAiB,IAAInK,KAAIjE,gBAAAA,GAAgBgF,kBAAmB,IAE9DqJ,EAAO5C,GAAMvF,QAAO,SAAAD,GAAI,OAAImI,EAAe9F,IAAIrC,EAAKE,OAGlDmI,EAAU,IAAIrK,IAAIoK,EAAKrI,KAAI,SAAA0D,GAAC,OAAIA,EAAEvD,EAAE,KACpCoI,EAAY7K,GAAcwC,QAAO,SAAAwD,GAAC,OAAI0E,EAAe9F,IAAIoB,EAAEvD,MAAQmI,EAAQhG,IAAIoB,EAAEvD,OAEvFkI,EAAOA,EAAK9H,OAAOgI,GAEfzC,KACFuC,EAAOA,EAAK9H,OAAOuF,KAGrBnI,GAAiBwK,EAAMA,OAACE,EAAM,OAC9BhH,GAAYe,SAAU,CACxB,IACC,CACDqD,GACAkC,GACA3N,cAAc,EAAdA,GAAgBgF,gBAChBgH,GACAF,GACApI,KAIFoB,EAAAA,WAAU,WACR,GAAK2G,UAAAA,GAAOxG,QAAqD,IAA3CjB,GAA0BoE,QAAQoG,KAAxD,CAIA,IAAMC,EAAazK,GAA0BoE,QACvCsG,EAAgBjD,GAAMvF,QAAO,SAAAwD,GAAC,OAAI+E,EAAWnG,IAAIoB,EAAEvD,OAEzD,GAAIuI,EAAczJ,OAAS,EAAG,CAE5B,IAAM0J,EAAcD,EAAc1I,KAAI,SAAA0D,GAAC,OAAIA,EAAEvD,MAC7C9B,IAAmB,SAAAoB,GAAI,OAAIA,EAAKS,QAAO,SAAAC,GAAE,OAAKwI,EAAYC,SAASzI,SAEnExC,IAAiB,SAAA8B,GACf,IAAMoJ,EAAUH,EAAcxB,MAAM,EAAGlM,KAAKI,IAAI,EAAGD,GAAsBsE,EAAKR,SAE9E,OAAOkJ,EAAAA,OAAO1I,EAAKc,OAAOsI,GAAU,KACtC,IACAH,EAAc7H,SAAQ,SAAA6C,GAAC,OAAI+E,EAAWK,OAAOpF,EAAEvD,MACjD,CAhBA,CAiBF,GAAG,CAACsF,GAAOtK,KAGX,IAQyC4N,GAsJOC,GAiCLC,GA/L+BC,GAAAA,EAAAA,eACxEpD,GACA+B,GACAnK,GACA+D,IACD0H,GAAAzO,GAAAA,QAAA0O,GAAA,GALMC,GAAMF,GAAA,GAAEG,GAASH,GAAA,GAAEI,GAAaJ,GAAA,GAAEK,GAAgBL,GAAA,GAAEM,GAAWN,GAAA,GAQhEO,GAAwBC,EAAAA,aAAWZ,GAAA7J,EAAA,QAAAC,WAAAC,MACvC,SAAOwK,EAAAA,EAAUC,EAAWC,GAAS,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAnL,WAAAI,MAAA,SAAAgL,GAAA,OAAA,OAAAA,EAAA9K,KAAA8K,EAAA7K,MAAA,KAAA,EA4BnC,GAzBIoK,IAAcU,EAAAA,kBAAkBvK,KAAK0F,KACvCoE,EAAgBF,GAGVG,EAAkB,IAAIjC,IACtBkC,EAAmB,IAAIlC,IAC7BtC,GAAM5E,SAAQ,SAAAZ,GACZ+J,EAAgBS,IAAIxK,EAAKE,GAAIF,EAAKyK,SAC7BT,EAAiB3H,IAAIrC,EAAKyK,UAC7BT,EAAiBQ,IAAIxK,EAAKyK,QAAS,IAErCT,EAAiBhC,IAAIhI,EAAKyK,SAASC,KAAK1K,EAAKE,GAC/C,IAEA4J,EAAgBF,EAAUe,SAAQ,SAAAC,GAChC,IAAMH,EAAUV,EAAgB/B,IAAI4C,GAEpC,OAAOZ,EAAiBhC,IAAIyC,IAAY,EAC1C,KAGIR,EAAmB,IAAIjM,IAAI8L,GAC3BI,EAAc1E,GAAMvF,QAAO,SAAA4K,GAAA,IAAG3K,IAAAA,GAAE,OAAO+J,EAAiB5H,IAAInC,EAAG,MAIjEyJ,GAAYO,EAAYlL,OAAS8K,EAAc9K,QAAM,CAAAsL,EAAA7K,KAAA,GAAA,KAAA,CAES,GAD1D0K,EAAW,IAAInM,IAAIkM,EAAYnK,KAAI,SAAA0D,GAAC,OAAIA,EAAEvD,EAAE,QAC5CkK,EAAaN,EAAc7J,QAAO,SAAAC,GAAE,OAAKiK,EAAS9H,IAAInC,OAE7ClB,OAAS,GAAC,CAAAsL,EAAA7K,KAAA,GAAA,KAAA,CAIvB,OAFArB,IAAmB,SAAAoB,GAAI,OAAIA,EAAKc,OAAO8J,MAEvCE,EAAA7K,KAAA,GACM4D,GAAmB+G,GAAW,KAAA,GAIpCA,EAAWxJ,SAAQ,SAAAV,GAAE,OAAInC,GAA0BoE,QAAQxB,IAAIT,MAAK,KAAA,GAIpEyJ,GAEIU,EAAeH,EAAYjD,MAC/B,EACAlM,KAAKC,IAAIkP,EAAYlL,OAAQ9D,GAAsBuC,GAAcuB,UAElDA,OAAS,GACxBtB,IAAiB,SAAAD,GAAa,OAAIyK,EAAAA,OAAOzK,EAAc6C,OAAO+J,GAAe,SAG/E3M,IAAiB,SAAAD,GAAa,OAC5BqN,OAAKrN,EAAcwC,QAAO,SAAA8K,GAAA,IAAG7K,IAAAA,GAAE,OAAQgK,EAAYpE,MAAK,SAAA9F,GAAI,OAAIA,EAAKE,KAAOA,IAAG,QAElF,KAAA,GAAA,IAAA,MAAA,OAAAoK,EAAA1K,OAAA,GAAAoL,EACF,KAAA,SAAAC,EAAAC,EAAAC,GAAA,OAAArC,GAAA3B,MAAAC,KAAAC,UAAA,GAED,CAAC7B,GAAOtK,GAAqBuC,GAAcuB,OAAQqE,KAG/C+H,GAA2B1B,EAAAA,aAAY,WAC3CxN,IAA0B,EAC5B,GAAG,CAACA,KAGEmP,GAA0B3B,eAC9B,SAAA4B,GACEpG,GAAeoG,EACjB,GACA,CAACpG,KAGGqG,GAAyB7B,EAAAA,aAC7B,SAAC8B,EAAKC,GACJvG,IAAe,SAAAwG,GAAQ,OAAIA,EAAS3L,KAAI,SAAA4L,GAAI,OAAKA,IAASH,EAAMC,EAAWE,CAAI,MACjF,GACA,CAACzG,KAGG0G,GAAqBlC,EAAAA,aACzB,SAACmC,EAASvC,GACRD,GAAUwC,GACVtC,GAAiBD,EACnB,GACA,CAACD,GAAWE,KAIRuC,GAAyBpC,EAAAA,aAC7B,SAAC1J,EAAM+L,GAEHrO,GADEqO,EACe,SAAAC,GACf,GAAIA,EAAUhN,QAAU9D,GACtB,OAAO8Q,EAGT,IAAMC,GAAezG,cAAAA,EAAAA,GAAOM,MAAK,SAAArC,GAAC,OAAIA,EAAEvD,KAAOF,EAAKE,EAAE,MAAKF,EAE3D,OAAOgM,EAAU1L,OAAO2L,EAC1B,EAEiB,SAAAD,GAAS,OAAIA,EAAU/L,QAAO,SAAA0L,GAAI,OAAIA,EAAKzL,KAAOF,EAAKE,OAE5E,GACA,CAACsF,GAAOtK,KAIJgR,GAA6BxC,eACjC,SAAAqC,GACE,GAAIA,EAAS,CACX,IAAM3D,EAAOvC,GAAc6B,GAAcpH,OAAOuF,IAAe6B,GACzDyE,EAAaC,EAAAA,OAAUlE,EAAMA,OAACE,EAAM,MAAO,YACjD1K,GAAiByO,EAAWlF,MAAM,EAAG/L,IACvC,MACEwC,GAAiBmI,GAAc,CAACA,IAAe,GAElD,GACD,CAAC6B,GAAe7B,GAAa3K,KAIzBmR,GAAyB3C,eAC7B,SAAA4C,GACE5O,IAAiB,SAAAsO,GACf,IAAMO,EAAa,IAAIvO,IAAIgO,EAAUjM,KAAI,SAAA0D,GAAC,OAAIA,EAAEvD,EAAE,KAC5CsM,EAAWF,EAAcrM,QAAO,SAAAwD,GAAC,OAAK8I,EAAWlK,IAAIoB,EAAEvD,OAE7D,GAAwB,IAApBsM,EAASxN,OACX,OAAOgN,EAGT,IAAMS,EAAiBvR,GAAsB8Q,EAAUhN,OAGjDyJ,EAFe+D,EAASvF,MAAM,EAAGwF,GAEJ1M,KAAI,SAAA0D,GAAC,OAAI+B,cAAK,EAALA,GAAOM,MAAK,SAAA4G,GAAE,OAAIA,EAAGxM,KAAOuD,EAAEvD,EAAE,MAAKuD,KAEjF,OAAOyE,EAAAA,OAAO8D,EAAU1L,OAAOmI,GAAgB,KACjD,GACF,GACA,CAACjD,GAAOtK,KAIJyR,GAA+BjD,EAAAA,aAAWX,GAAA9J,EAAAA,QAAAC,GAAAA,QAAAC,MAC9C,WAAMyF,GAAO,IAAAgI,EAAA/E,EAAAgF,EAAAC,EAAAC,EAAA1C,EAAA,OAAAnL,WAAAI,MAAA,SAAA0N,GAAA,OAAA,OAAAA,EAAAxN,KAAAwN,EAAAvN,MAAA,KAAA,EAAA,IACPiF,GAAW,CAAAsI,EAAAvN,KAAA,GAAA,KAAA,CAUQ,GATfmN,EAAalI,GAAYE,IAAY,GAGrCiD,EAAW,IAAIC,KAAIxE,cAAmB,EAAnBA,GAAqBvD,KAAI,SAAA0D,GAAC,MAAI,CAACA,EAAEvD,GAAIuD,QAAO,IAG/DoJ,EAAiBD,EAAW3M,QAAO,SAAAC,GAAE,OAAK2H,EAASxF,IAAInC,EAAG,IAG5D4M,EAAe,KAEfD,EAAe7N,OAAS,GAAC,CAAAgO,EAAAvN,KAAA,EAAA,KAAA,CAAA,OAAAuN,EAAAvN,KAAA,EACN4D,GAAmBwJ,GAAe,KAAA,EAAvDC,EAAYE,EAAArN,KAAA,KAAA,EAIdmN,EAAalM,SAAQ,SAAA6C,GAAC,OAAIoE,EAAS2C,IAAI/G,EAAEvD,GAAIuD,MAGvCsJ,EAAeH,EAAW7M,KAAI,SAAAG,GAAE,OAAI2H,EAASG,IAAI9H,EAAG,IAAED,QAAO,SAAAwD,GAAC,YAAUlD,IAANkD,KAElE4G,EAAe+B,EAAShD,OAAC2D,EAAc,YAC7CrP,GAAiB2M,EAAapD,MAAM,EAAG7M,KAAgB4S,EAAAvN,KAAA,GAAA,MAAA,KAAA,GAEvD/B,GAAiBmI,GAAc,CAACA,IAAe,IAAI,KAAA,GAAA,IAAA,MAAA,OAAAmH,EAAApN,OAAA,GAAAqN,EAEtD,KAAA,SAAAC,GAAA,OAAAnE,GAAA5B,MAAAC,KAAAC,UAAA,GACD,CAAC3C,GAAapB,GAAqBD,GAAoBjJ,GAAeyL,KAGlEsH,GAA0BzD,EAAAA,aAAWV,GAAA/J,EAAAA,QAAAC,GAAAA,QAAAC,MACzC,WAAMyF,GAAO,OAAA1F,WAAAI,MAAA,SAAA8N,GAAA,OAAA,OAAAA,EAAA5N,KAAA4N,EAAA3N,MAAA,KAAA,EACqB,OAAhC0B,GAAuByD,GAASwI,EAAA3N,KAAA,EAC1BkN,GAA6B/H,GAAQ,KAAA,EAAA,IAAA,MAAA,OAAAwI,EAAAxN,OAAA,GAAAyN,EAC5C,KAAA,SAAAC,GAAA,OAAAtE,GAAA7B,MAAAC,KAAAC,UAAA,GACD,CAACsF,KAIGY,GAAqB7O,EAAAA,SAAQ,WACjC,OAAIjB,GAAcqI,MAAK,SAAA9F,GAAI,OAAIA,EAAKE,KAAO9E,EAAa,IAC/CqC,GAAcuB,OAAS,EAEzBvB,GAAcuB,MACvB,GAAG,CAACvB,GAAerC,KAGb+K,GAAWzH,EAAAA,SAAQ,WACvB,IAAK2F,GAAU,OAAO,EACtB,IAAMtF,EAAkBtB,GAAcsC,KAAI,SAAAyN,GAAK,SAAFtN,MACvCuN,EAAapJ,GAASnD,KAAwB,GAGpD,GAFyBnG,KAAKC,IAAIyS,EAAWzO,OAAQ5E,MAE5B2E,EAAgBC,OACvC,OAAO,EAET,IAAM0O,EAAgB,IAAI1P,IAAIyP,GAC9B,OAAO1O,EAAgBqD,OAAM,SAAAlC,GAAE,OAAIwN,EAAcrL,IAAInC,KACtD,GAAE,CAACmE,GAAU5G,GAAeyD,GAAqB9G,KAE5CuT,GAAgBjP,EAAAA,SAAQ,WAC5B,QAAOoF,IAAkB8J,EAA0BA,2BAACjF,SAAS7E,GAC/D,GAAG,CAACA,KAEE+J,GAAcnP,EAAAA,SAAQ,WAC1B,OAAIiP,GACK,0BAGF/T,EAAW,wBAA0B,UAC9C,GAAG,CAAC+T,GAAe/T,IAEbkU,GAAcpE,EAAAA,aAAY,WAC9BzP,KAEA,IAAM6E,EAAcrB,GAAcsC,KAAI,SAAAgO,GAAK,SAAF7N,MAEnCwG,WACD3M,IAAc,GAAA,CACjBqC,UAAWD,GACXf,cAAAA,GACA2D,gBAAiBD,EACjBvC,QAASyR,EAAgBA,iBAACzR,IAC1BwI,YAAAA,GACAhE,YAAaG,GACbiF,SAAAA,GACA8H,UAAWrS,GACXsS,eAAgBxS,GAChBwL,mBAAoBzF,KAEtBvH,GAAOwM,EAAkBjJ,GAC3B,GAAG,CACDxD,GACAwD,GACA1D,GACAoC,GACAf,GACAmB,GACAwI,GACA7D,GACAiF,GACAvK,GACAF,GACA+F,GACAvH,KAIF2E,EAAAA,WAAU,WACHN,IAK0C,IAA3CR,GAA0BoE,QAAQoG,OACpC/J,IAAiB,GACjBsP,KAEH,GAAE,CAACvP,GAAed,GAAeqQ,KAElC,IAUMK,GAAe,WAAM,IAAAC,EACnBjG,EAAiB,IAAInK,KAAIjE,gBAAAA,GAAgBgF,kBAAmB,IAC9DqJ,GAAQ5C,IAAS,IAAIvF,QAAO,SAAAD,GAAI,OAAImI,EAAe9F,IAAIrC,EAAKE,OAEhE,GAAI4C,UAAAA,GAAa9D,OAAQ,CACvB,IAAMqJ,EAAU,IAAIrK,IAAIoK,EAAKrI,KAAI,SAAA0D,GAAC,OAAIA,EAAEvD,EAAE,KACpCoI,EAAYxF,GAAY7C,QAAO,SAAAwD,GAAC,OAAI0E,EAAe9F,IAAIoB,EAAEvD,MAAQmI,EAAQhG,IAAIoB,EAAEvD,OAErFkI,EAAOA,EAAK9H,OAAOgI,EACrB,CAEIzC,KACFuC,EAAOA,EAAK9H,OAAOuF,KAGrBnI,GAAiBwK,EAAMA,OAACE,EAAM,OAE9B,IAAM1B,WACD3M,IAAc,GAAA,CACjBkU,UAAWrS,GACXsS,eAAgBxS,KAElBxB,GAAOwM,GAIP,IAAM2H,EAAoBL,EAAAA,iBAAiBjU,cAAAA,EAAAA,GAAgBwC,SAE3DE,YACK4R,GAAiB,CAAA,EAAA,CACpBxR,OAAqCC,QAA/BsR,EAAEC,eAAAA,EAAmBxR,cAAUC,IAAAA,EAAAA,EAAAA,EAAAA,wBAEvCqE,IAAuBpH,cAAAA,EAAAA,GAAgBgH,cAAeC,EAAeA,iBACrE/G,MAGIqU,GAAqB/M,IAAkBmB,GAGvC6L,GAAiB7P,EAAAA,SAAQ,WAC7B,QAAKpC,MACDgS,MACCnI,OACAqI,EAAAA,QAAQjS,MAAYA,GAAQoC,EAAAA,WAAW8P,cACxCvN,KAAwBF,oBAE9B,GAAG,CAAC1E,GAAiB6J,GAAU5J,GAAS2E,GAAqBoN,KAEvDI,GAAchF,EAAAA,YAAYzK,EAAAA,QAAAC,GAAAA,QAAAC,MAAA,SAAAwP,IAAA,OAAAzP,WAAAI,MAAA,SAAAsP,GAAA,OAAA,OAAAA,EAAApP,KAAAoP,EAAAnP,MAAA,KAAA,EAEU,OADxC/C,KACAyE,GAAuBH,EAAeA,iBAAE4N,EAAAnP,KAAA,EAClCkN,GAA6B3L,EAAAA,iBAAgB,KAAA,EAAA,IAAA,MAAA,OAAA4N,EAAAhP,OAAA,GAAA+O,EACpD,KAAE,CAACjS,GAAciQ,KAEZkC,IAAarJ,KAAUrB,KAAiBqF,GAGFjP,GAAAA,EAAQA,SAACuU,iBAAcC,GAAAtU,GAAAA,QAAAuU,GAAA,GAA5DC,GAAcF,GAAA,GAAEG,GAAiBH,GAAA,GACJxU,GAAAA,EAAQA,SAAC,IAAG4U,GAAA1U,GAAAA,QAAA2U,GAAA,GAAzCC,GAAUF,GAAA,GAAEG,GAAaH,GAAA,GAC1BI,GAAezU,EAAAA,SACf0U,GAAiB1U,EAAAA,SACjB2U,GAAoB3U,SAAO,GAEjC+D,EAAAA,WAAU,WACR,GAAK2K,GAAL,CAEA,IAAMhE,EAAQgE,GAAYvC,MAAM,EAAGgI,IACnCK,GAAc9J,EAHI,CAInB,GAAE,CAACgE,GAAayF,GAAgBpJ,KAGjC6J,EAAAA,iBAAgB,WACVF,GAAerN,SAAWsN,GAAkBtN,QAAU,IACxDqN,GAAerN,QAAQwN,UAAYF,GAAkBtN,QAEzD,GAAG,CAACkN,KAGJxQ,EAAAA,WAAU,WACR,GAAK0Q,GAAapN,QAAlB,CACA,IAAMyN,EAAaL,GAAapN,QAAQ0N,cAAkBC,IAAAA,OAAAA,EAAkBC,gBACvEH,IACA/T,GAGH+T,EAAWI,UAAUC,OAAOH,EAAkBI,UAF9CN,EAAWI,UAAUrP,IAAImP,EAAkBI,UAJlB,CAQ7B,GAAG,CAACrU,GAAgBwT,KAGpB,IAAMc,GAAiBzR,EAAAA,SAAQ,WAAA,OAAMwJ,EAAMA,OAACmH,GAAY,QAAO,CAACA,KAEA3Q,GAAAA,EAAAA,SAAQ,WACtE,IAAM0R,EAAqBD,GAAelQ,QAAO,SAAAD,GAAI,OAAIA,EAAK+L,WAQ9D,MAAO,CAACqE,EANND,GAAenR,SAAWoR,EAAmBpR,QAC7CqR,QAAQD,EAAmBpR,UAC1ByC,GAED2O,EAAmBpR,SAAWmR,GAAenR,QAAUyC,GAG3D,GAAG,CAAC0O,GAAgB1O,KAAsB6O,GAAA7V,GAAAA,QAAA8V,GAAA,GAVnCH,GAAkBE,GAAA,GAAEE,GAAaF,GAAA,GAAEG,GAAkBH,GAAA,GAYtDI,GAAahS,EAAAA,SAAQ,WAAA,OAAMiS,EAAaA,eAAE,GAAE,IAElD9R,EAAAA,WAAU,WACJ0F,KAAiBqM,EAAaA,cAACC,WACjCnC,IAGH,GAAE,CAACrK,GAAUqK,GAAanK,KAuC3B,OACEuM,EAAAA,IAACC,EAAAA,MAAK,CACJtX,KAAMA,EACNQ,QAASkU,GACT5F,KAAK,aACLyI,UAAWC,EAAOC,YAClBC,MACEL,MAACM,YAAS,CACRC,WAAyB,QAAf7X,EAAEgM,gBAAAA,GAAOxG,cAAM,IAAAxF,EAAAA,EAAI,EAC7B8X,cAAe/D,GACfrS,oBAAqBA,GACrByS,cAAeA,GACfpJ,aAAcA,GACdC,gBAAiBA,GACjBO,YAAaA,GACbwM,oBAAqBlG,KAGzBmG,SACGxX,IACCyX,EAAAC,KAAA,MAAA,CAAKV,UAAWC,EAAOU,eAAeC,SAAA,EAClC/C,IAAaN,GACbuC,EAAAA,IAACe,EAAAA,QAAO,CACNC,UAAU,eACVX,2CAAqCvX,EAAW,aAAe,WAAYgY,SAE3Ed,EAAAiB,IAAA,MAAA,CAAAH,SACEd,MAACkB,SAAM,CACL,cAAA,GAAA1R,OAAgBjH,GAAkB,UAClC4Y,QAASvD,GACTwD,MAAM,UACNC,UAAWrB,EAAAA,IAACsB,EAAUC,OAAI,IAAAT,SAAA,0BAOhCtV,IACEmV,EAAAC,KAAA,MAAA,CAAAE,SACE,CAAAd,EAAAiB,IAAA,OAAA,CAAMf,UAAWsB,GAAU,QAACC,EAAWC,UAAWD,EAAWE,OAAOC,IAAId,SAAA,yDAGxEd,EAAAiB,IAAA,OAAA,CAAMf,UAAWsB,GAAU,QAACC,EAAWI,SAAUJ,EAAWE,OAAOC,IAAId,SACpE/D,QAKT4D,EAAAC,KAAA,MAAA,CAAKV,UAAWC,EAAO2B,UAAUhB,SAAA,CAC/Bd,MAACkB,SAAM,CAAC,cAAA,GAAA1R,OAAgBjH,GAAmB,WAAC4Y,QAAS9D,GAAc+D,MAAM,UAASN,SAAA,WAGlFH,OAACO,SAAM,CACL,cAAA,GAAA1R,OAAgBjH,GAA0B,kBAC1CwZ,QAAQ,YACRX,MAAM,UACND,QAzNK,WACblU,GAA0BoE,QAAQoG,KAAO,EAE3C/J,IAAiB,GAInBsP,MAmNYgF,SAAUvU,GACVwU,OAAQxU,GAAgBuS,EAAAiB,IAACiB,iBAAc,CAACzK,KAAM,UAAShI,EAAUqR,SAAA,CAAA,WAExDrE,GAAkB,aAKpCqE,SAEDH,EAAAC,KAAA,MAAA,CAAKV,UAAWsB,GAAAA,QAAWrB,EAAOgC,kBAAkBrB,SAAA,CAClDd,MAACoC,yBAAsB,CAAA,GACrBrE,GAiHAiC,EAACiB,IAAAoB,EACF,CAAA,GAjHC1B,EAAAC,KAAA,MAAA,CACEV,UAAWsB,GAAAA,QAAWrB,EAAOmC,eAC1BnC,EAAAA,QAAAA,CAAAA,EAAAA,EAAOoC,eAAiB/E,KACxBsD,SAEH,CAAAH,EAAAC,KAAA,MAAA,CAAKV,UAAWC,EAAOqC,iBAAiB1B,SAAA,EACpChW,IAAenC,GACfqX,EAAAA,IAAA,MAAA,CAAKE,UAAWC,EAAOsC,WAAW3B,SAChCd,MAAC0C,WAAQ,CACPC,IAAK5Y,GACLoT,UAAWrS,GACXiK,YAAaA,GACb6N,cAAejW,GAAcsC,KAAI,SAAA4T,GAAK,SAAFzT,MACpCsF,MAAOoC,GACPkE,uBAAwBA,GACxB8H,mBAAoBvH,GACpB1R,aAAcA,GACdkU,UAAWnM,OAIjB+O,EAAAC,KAAA,MAAA,CAAKV,UAAWC,EAAO4C,YAAaJ,IAAKjE,GAAgBsE,SAjIhD,SAAAC,GACdA,EAAEC,SAGPvE,GAAkBtN,QAAU4R,EAAEC,OAAOrE,UAEjC1T,KACF8X,EAAEC,OAAOC,WAAa,EACtB/X,IAA0B,IAIxB6X,EAAEC,OAAOC,YAAc,GAAKpY,IAC9BC,IAAkB,GAEhBiY,EAAEC,OAAOC,WAAa,IAAMpY,IAC9BC,IAAkB,GAIhBiY,EAAEC,OAAOrE,WAAa,GAAK5T,IAC7BC,IAAkB,GAEhB+X,EAAEC,OAAOrE,UAAY,IAAM5T,IAC7BC,IAAkB,GAIhB+X,EAAEC,OAAOE,eAAiBH,EAAEC,OAAOG,cAEXpZ,KAAKqZ,MAAML,EAAEC,OAAOrE,UAAYoE,EAAEC,OAAOG,aAAe,IAEzDJ,EAAEC,OAAOE,cAAgBjF,GAAiBzF,GAAYxK,QAC/EkQ,IAAkB,SAAAmF,GAAK,OAAIA,EAAQvF,EAAAA,mBAgGqD8C,SAAA,CAC9Ed,MAACwD,SAAM,CACLC,UAAW7Y,GACX4L,cAAeA,GACfnD,aAAcA,GACdjD,oBAAqBA,GACrBsT,iBAAkBrH,KAEpB2D,EAAAiB,IAAA,MAAA,CAAKf,UAAWlB,EAAkB2E,mBAAmB7C,SACnDH,OAACiD,QAAK,CACJ,aAAW,iBACXC,SAAUpF,GACVyB,UAAWlB,EAAkB8E,YAAYhD,SAAA,CAEzCd,MAAC+D,YAAS,CAAAjD,SACRd,MAACgE,uBAAoB,CACnBtN,gBAAiBA,GACjBzC,YAAaA,GACbqE,OAAQA,GACRE,cAAeA,GACfkH,cAAeA,GACfC,mBAAoBA,GACpBsE,aAAcnJ,GACdoJ,mBAAoBzJ,GACpBW,2BAA4BA,GAC5B+I,cAAenF,EAAkBC,cACjCW,WAAYA,GACZwE,oBAAqBzQ,GAASzF,OAC9B2F,2BAA4BA,OAG/B3K,IACC8W,EAAAiB,IAAA,MAAA,CACEf,UAAWsB,GAAAA,QAAWrB,EAAOkE,YAAWC,EAAAA,QAAA,CAAA,EACrCnE,EAAOoE,oBAAsBtZ,aAOtC/B,IACAyX,EAAAC,KAAA,MAAA,CAAKV,UAAWsB,GAAAA,QAAWxC,EAAkBwF,mBAAmB1D,SAC9D,CAAAd,EAAAiB,IAAA,MAAA,CAAKf,UAAWlB,EAAkByF,WAAW3D,SAC3Cd,MAAC0E,iBAAc,CACbC,WAAY5V,GACZzE,cAAeA,GACfsa,SAAUjM,GACV1K,gBAAiBqR,GAAmBrQ,KAAI,SAAA4V,GAAK,SAAFzV,MAC3C0V,qBAAsBxK,GACtBjN,gBAAiBA,OAGrB2S,EAAAiB,IAAA,MAAA,CACEf,UAAWsB,GAAAA,QAAWrB,EAAOkE,YAAWC,EAAAA,QAAA,CAAA,EACrCnE,EAAOoE,oBAAsBtZ,UAMtC+U,MAAC+E,mBAAgB,CACftU,eAAgB+M,GAChBlT,cAAeA,GACfoM,gBAAiBA,GACjBhC,MAAO6J,GACPtK,YAAaA,GACb+G,uBAAwBA,GACxBgK,WAAYtM,GAAYxK,QAAUiQ,GAClCxN,qBAAsBA,GACtBvG,oBAAqBA,GACrBiJ,aAAcA,GACdvJ,gBAAiBA,GACjBmb,WAAY,SAAAhP,GAAM,IAAAiP,EAAA,OAAuB,QAAnBnb,EAAAA,GAAYsH,eAAO,IAAA6T,OAAA,EAAnBA,EAAqBC,UAAUlP,EAAQ,EAC7DtC,SAAUA,GACVE,2BAA4BA,WAIjC3K,IAAcsC,IACbmV,EAAAA,KAAA,MAAA,CAAKT,UAAWC,EAAOiF,sBAAsBtE,SAC3C,CAAAd,EAAAiB,IAAA,OAAA,CAAMf,UAAWsB,GAAU,QAACC,EAAWC,UAAWD,EAAWE,OAAOC,IAAId,SAAA,yDAGxEd,EAAAiB,IAAA,OAAA,CAAMf,UAAWsB,GAAU,QAACC,EAAWI,SAAUJ,EAAWE,OAAOC,IAAId,SACpE/D,eAWnB"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require('./../../../../ext-esm/tslib/tslib.es6.js'),t=require("../../constants.js"),s=require("../shared/dataFormatter.js"),r=require("../shared/transformers/transformToApiCoordinateBounds.js"),a=require("../../../../clients/jsonApi/index.js");exports.fetchAssetWells=function(i,n,l,o){return e.__awaiter(void 0,void 0,void 0,(function(){var d,u,_,c,m;return e.__generator(this,(function(e){switch(e.label){case 0:d=["well.name","well.asset_id","well.settings","well.status","well.rigName","well.visibility"],u={company:l,search:i,per_page:t.ROWS_PER_PAGE,page:n,fields:d,sort:"name"},(_=r.transformToApiCoordinateBounds(o))&&(u.lat_start=_.lat_start,u.lat_end=_.lat_end,u.long_start=_.long_start,u.long_end=_.long_end),e.label=1;case 1:return e.trys.push([1,3,,4]),[4,a.getWells(u)];case 2:return c=e.sent(),[3,4];case 3:return m=e.sent(),console.error(m),c=[],[3,4];case 4:return[2,s.dataFormatter.deserialize(c).map((function(e){return{redirectAssetId:e.asset_id,apiNumber:e.settings.api_number,name:e.name,asset_id:e.asset_id,status:e.status,rigName:e.rigName,visibility:e.visibility,type:"well"}}))]}}))}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require('./../../../../ext-esm/tslib/tslib.es6.js'),t=require("../../constants.js"),s=require("../shared/dataFormatter.js"),r=require("../shared/transformers/transformToApiCoordinateBounds.js"),a=require("../../../../clients/jsonApi/index.js");exports.fetchAssetWells=function(i,n,l,o){return e.__awaiter(void 0,void 0,void 0,(function(){var d,u,_,c,m;return e.__generator(this,(function(e){switch(e.label){case 0:d=["well.name","well.asset_id","well.settings","well.status","well.rigName","well.visibility"],u={company:l&&l.length>0?l:void 0,search:i,per_page:t.ROWS_PER_PAGE,page:n,fields:d,sort:"name"},(_=r.transformToApiCoordinateBounds(o))&&(u.lat_start=_.lat_start,u.lat_end=_.lat_end,u.long_start=_.long_start,u.long_end=_.long_end),e.label=1;case 1:return e.trys.push([1,3,,4]),[4,a.getWells(u)];case 2:return c=e.sent(),[3,4];case 3:return m=e.sent(),console.error(m),c=[],[3,4];case 4:return[2,s.dataFormatter.deserialize(c).map((function(e){return{redirectAssetId:e.asset_id,apiNumber:e.settings.api_number,name:e.name,asset_id:e.asset_id,status:e.status,rigName:e.rigName,visibility:e.visibility,type:"well"}}))]}}))}))};
2
2
  //# sourceMappingURL=fetchAssetWells.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require('./../../../../ext-esm/tslib/tslib.es6.js'),r=require("lodash"),s=require("../../constants.js"),t=require("../shared/dataFormatter.js"),i=require("../../../../clients/jsonApi/index.js");exports.fetchRigs=function(a,n,o){return e.__awaiter(void 0,void 0,void 0,(function(){var u,c,l,d;return e.__generator(this,(function(_){switch(_.label){case 0:u=["rig.name","rig.active_well","rig.asset_id"],c={company:o,search:a,per_page:s.ROWS_PER_PAGE,page:n,fields:u,sort:"name"},_.label=1;case 1:return _.trys.push([1,3,,4]),[4,i.getRigs(c)];case 2:return l=_.sent(),[3,4];case 3:return d=_.sent(),console.error(d),l=[],[3,4];case 4:return[2,t.dataFormatter.deserialize(l).map((function(s){return e.__assign({redirectAssetId:r.get(s,["active_well","asset_id"])||null},s)}))]}}))}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require('./../../../../ext-esm/tslib/tslib.es6.js'),r=require("lodash"),t=require("../../constants.js"),s=require("../shared/dataFormatter.js"),i=require("../../../../clients/jsonApi/index.js");exports.fetchRigs=function(a,n,o){return e.__awaiter(void 0,void 0,void 0,(function(){var u,c,l,d;return e.__generator(this,(function(_){switch(_.label){case 0:u=["rig.name","rig.active_well","rig.asset_id"],c={company:o&&o.length>0?o:void 0,search:a,per_page:t.ROWS_PER_PAGE,page:n,fields:u,sort:"name"},_.label=1;case 1:return _.trys.push([1,3,,4]),[4,i.getRigs(c)];case 2:return l=_.sent(),[3,4];case 3:return d=_.sent(),console.error(d),l=[],[3,4];case 4:return[2,s.dataFormatter.deserialize(l).map((function(t){return e.__assign({redirectAssetId:r.get(t,["active_well","asset_id"])||null},t)}))]}}))}))};
2
2
  //# sourceMappingURL=fetchRigs.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.ASSET_FIELDS=["asset.name","asset.company_id","asset.parent_asset_id","asset.parent_asset_name","asset.status","asset.stats","asset.target_formation","asset.string_design","asset.root_asset_name","asset.basin","asset.county","asset.area","asset.visibility","asset.top_hole","asset.settings","asset.last_active_at"],exports.CHUNK_SIZE=1e3,exports.ID_CHUNK_SIZE=100,exports.MAX_WELLS_FETCH_LIMIT=2e4,exports.MAX_WELL_NUMBER=200;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.ASSET_FIELDS=["asset.name","asset.company_id","asset.parent_asset_id","asset.parent_asset_name","asset.status","asset.stats","asset.target_formation","asset.string_design","asset.root_asset_name","asset.basin","asset.county","asset.area","asset.visibility","asset.top_hole","asset.settings","asset.last_active_at"],exports.CHUNK_SIZE=1e3,exports.ID_CHUNK_SIZE=100,exports.MAX_WELL_NUMBER=200;
2
2
  //# sourceMappingURL=constants.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require('./../../../../../ext-esm/tslib/tslib.es6.js'),t=require("../../../utils/fetchDataByChunks.js"),n=require("../constants.js"),r=require("./wellsFetcher.js");exports.getAllWellAssetIds=function(o,s,l){return e.__awaiter(void 0,void 0,void 0,(function(){var a,i,u;return e.__generator(this,(function(e){switch(e.label){case 0:a={company:o&&o.length>0?o:void 0,fields:["well.name","well.asset_id"],sort:"name"},(null==s?void 0:s.polygonCoords)&&s.polygonCoords.length>=3?(d=s.polygonCoords,c=new URLSearchParams,d.forEach((function(e){c.append("polygon_coords[][latitude]",e.latitude.toString()),c.append("polygon_coords[][longitude]",e.longitude.toString())})),i=c.toString()):(null==s?void 0:s.bounds)&&(a.lat_start=s.bounds.lat_start,a.lat_end=s.bounds.lat_end,a.long_start=s.bounds.long_start,a.long_end=s.bounds.long_end),e.label=1;case 1:return e.trys.push([1,3,,4]),[4,t.fetchDataByChunks({path:"/v2/wells",queryParams:a,chunkSize:n.CHUNK_SIZE,fetchLimit:n.MAX_WELLS_FETCH_LIMIT,paginationStyle:"page",fetcher:r.wellsFetcher,signal:l,rawQueryString:i})];case 2:return[2,e.sent().map((function(e){return Number(e.asset_id)})).filter((function(e){return Number.isFinite(e)}))];case 3:if("AbortError"===(null==(u=e.sent())?void 0:u.name))throw u;return console.error(u),[2,[]];case 4:return[2]}var d,c}))}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require('./../../../../../ext-esm/tslib/tslib.es6.js'),t=require("../../../utils/fetchDataByChunks.js"),n=require("../constants.js"),r=require("./wellsFetcher.js");exports.getAllWellAssetIds=function(o,s,l){return e.__awaiter(void 0,void 0,void 0,(function(){var a,i,u;return e.__generator(this,(function(e){switch(e.label){case 0:a={company:o&&o.length>0?o:void 0,fields:["well.name","well.asset_id"],sort:"name"},(null==s?void 0:s.polygonCoords)&&s.polygonCoords.length>=3?(d=s.polygonCoords,c=new URLSearchParams,d.forEach((function(e){c.append("polygon_coords[][latitude]",e.latitude.toString()),c.append("polygon_coords[][longitude]",e.longitude.toString())})),i=c.toString()):(null==s?void 0:s.bounds)&&(a.lat_start=s.bounds.lat_start,a.lat_end=s.bounds.lat_end,a.long_start=s.bounds.long_start,a.long_end=s.bounds.long_end),e.label=1;case 1:return e.trys.push([1,3,,4]),[4,t.fetchDataByChunks({path:"/v2/wells",queryParams:a,chunkSize:n.CHUNK_SIZE,paginationStyle:"page",fetcher:r.wellsFetcher,signal:l,rawQueryString:i})];case 2:return[2,e.sent().map((function(e){return Number(e.asset_id)})).filter((function(e){return Number.isFinite(e)}))];case 3:if("AbortError"===(null==(u=e.sent())?void 0:u.name))throw u;return console.error(u),[2,[]];case 4:return[2]}var d,c}))}))};
2
2
  //# sourceMappingURL=getAllWellAssetIds.js.map