@corva/ui 3.78.0-0 → 3.78.0-10

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 (592) hide show
  1. package/cjs-bundle/clients/index.js +1 -1
  2. package/cjs-bundle/clients/index.js.map +1 -1
  3. package/cjs-bundle/clients/subscriptions/constants.js +1 -1
  4. package/cjs-bundle/clients/subscriptions/constants.js.map +1 -1
  5. package/cjs-bundle/clients/subscriptions.js +1 -1
  6. package/cjs-bundle/clients/subscriptions.js.map +1 -1
  7. package/cjs-bundle/components/AddComment/Popover.js +1 -1
  8. package/cjs-bundle/components/AddComment/Popover.js.map +1 -1
  9. package/cjs-bundle/components/AddComment/components/Content.js +1 -1
  10. package/cjs-bundle/components/AddComment/components/Content.js.map +1 -1
  11. package/cjs-bundle/components/AssetEditor/effects/index.js +1 -1
  12. package/cjs-bundle/components/AssetEditor/effects/index.js.map +1 -1
  13. package/cjs-bundle/components/AssetEditorV2/effects/index.js +1 -1
  14. package/cjs-bundle/components/AssetEditorV2/effects/index.js.map +1 -1
  15. package/cjs-bundle/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js +1 -1
  16. package/cjs-bundle/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js.map +1 -1
  17. package/cjs-bundle/components/Attachment/index.js +1 -1
  18. package/cjs-bundle/components/Attachment/index.js.map +1 -1
  19. package/cjs-bundle/components/BICOffsetPickerDialog/index.js +1 -1
  20. package/cjs-bundle/components/BICOffsetPickerDialog/index.js.map +1 -1
  21. package/cjs-bundle/components/Casing/CasingTableV2/components/CasingJoints/Editor.js +1 -1
  22. package/cjs-bundle/components/Casing/CasingTableV2/components/CasingJoints/Editor.js.map +1 -1
  23. package/cjs-bundle/components/Casing/CasingTableV2/components/Component.js +1 -1
  24. package/cjs-bundle/components/Casing/CasingTableV2/components/Component.js.map +1 -1
  25. package/cjs-bundle/components/Casing/CasingTableV2/components/DrillPipe/Editor.js +1 -1
  26. package/cjs-bundle/components/Casing/CasingTableV2/components/DrillPipe/Editor.js.map +1 -1
  27. package/cjs-bundle/components/CollapsableSidebar.js +1 -1
  28. package/cjs-bundle/components/CollapsableSidebar.js.map +1 -1
  29. package/cjs-bundle/components/CommentComposer/CommentComposer.js +1 -1
  30. package/cjs-bundle/components/CommentComposer/CommentComposer.js.map +1 -1
  31. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
  32. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
  33. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchButton.js +1 -1
  34. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchButton.js.map +1 -1
  35. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js +1 -1
  36. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js.map +1 -1
  37. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js +1 -1
  38. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js.map +1 -1
  39. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js +1 -1
  40. package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js.map +1 -1
  41. package/cjs-bundle/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js +1 -1
  42. package/cjs-bundle/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js.map +1 -1
  43. package/cjs-bundle/components/DocumentViewer/DocumentViewer.js +1 -1
  44. package/cjs-bundle/components/DocumentViewer/DocumentViewer.js.map +1 -1
  45. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js +1 -1
  46. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js.map +1 -1
  47. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js +1 -1
  48. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js.map +1 -1
  49. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Component.js +1 -1
  50. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Component.js.map +1 -1
  51. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js +1 -1
  52. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js.map +1 -1
  53. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js +1 -1
  54. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js.map +1 -1
  55. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js +1 -1
  56. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js.map +1 -1
  57. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js +1 -1
  58. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js.map +1 -1
  59. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js +1 -1
  60. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js.map +1 -1
  61. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js +1 -1
  62. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js.map +1 -1
  63. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js +1 -1
  64. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js.map +1 -1
  65. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js +1 -1
  66. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js.map +1 -1
  67. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js +1 -1
  68. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js.map +1 -1
  69. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js +1 -1
  70. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js.map +1 -1
  71. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js +1 -1
  72. package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js.map +1 -1
  73. package/cjs-bundle/components/FeedItem/FeedItem.js +1 -1
  74. package/cjs-bundle/components/FeedItem/FeedItem.js.map +1 -1
  75. package/cjs-bundle/components/GradientManager/GradientManager.js +1 -1
  76. package/cjs-bundle/components/GradientManager/GradientManager.js.map +1 -1
  77. package/cjs-bundle/components/GradientManager/GradientSelect.js +1 -1
  78. package/cjs-bundle/components/GradientManager/GradientSelect.js.map +1 -1
  79. package/cjs-bundle/components/IconButton/index.js +1 -1
  80. package/cjs-bundle/components/IconButton/index.js.map +1 -1
  81. package/cjs-bundle/components/OffsetWellPickerV2/OffsetWellPickerDialog.js +1 -1
  82. package/cjs-bundle/components/OffsetWellPickerV2/OffsetWellPickerDialog.js.map +1 -1
  83. package/cjs-bundle/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
  84. package/cjs-bundle/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -1
  85. package/cjs-bundle/components/OffsetWellPickerV2/components/Map/Map.js +1 -1
  86. package/cjs-bundle/components/OffsetWellPickerV2/components/Map/Map.js.map +1 -1
  87. package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
  88. package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -1
  89. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js +1 -1
  90. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js.map +1 -1
  91. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/index.js +1 -1
  92. package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/index.js.map +1 -1
  93. package/cjs-bundle/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js +1 -1
  94. package/cjs-bundle/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js.map +1 -1
  95. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js +1 -1
  96. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js.map +1 -1
  97. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/index.js +1 -1
  98. package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/index.js.map +1 -1
  99. package/cjs-bundle/components/OffsetWellPickerV3/components/WellHubView/index.js +1 -1
  100. package/cjs-bundle/components/OffsetWellPickerV3/components/WellHubView/index.js.map +1 -1
  101. package/cjs-bundle/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js +1 -1
  102. package/cjs-bundle/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js.map +1 -1
  103. package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
  104. package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
  105. package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js +1 -1
  106. package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js.map +1 -1
  107. package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js +1 -1
  108. package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js.map +1 -1
  109. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
  110. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js.map +1 -1
  111. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js +1 -1
  112. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js.map +1 -1
  113. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js +1 -1
  114. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js.map +1 -1
  115. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js +1 -1
  116. package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js.map +1 -1
  117. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js +1 -1
  118. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js.map +1 -1
  119. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js +1 -1
  120. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js.map +1 -1
  121. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js +1 -1
  122. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js.map +1 -1
  123. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js +1 -1
  124. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js.map +1 -1
  125. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js +1 -1
  126. package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js.map +1 -1
  127. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js +1 -1
  128. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js.map +1 -1
  129. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js +1 -1
  130. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js.map +1 -1
  131. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js +1 -1
  132. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js.map +1 -1
  133. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js +1 -1
  134. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js.map +1 -1
  135. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js +1 -1
  136. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js.map +1 -1
  137. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js +1 -1
  138. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js.map +1 -1
  139. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsData.utils.js +1 -1
  140. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsData.utils.js.map +1 -1
  141. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsFetch.js +1 -1
  142. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsFetch.js.map +1 -1
  143. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js +1 -1
  144. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js.map +1 -1
  145. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js +1 -1
  146. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js.map +1 -1
  147. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js +1 -1
  148. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js.map +1 -1
  149. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js +1 -1
  150. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js.map +1 -1
  151. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js +1 -1
  152. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js.map +1 -1
  153. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js +1 -1
  154. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js.map +1 -1
  155. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js +1 -1
  156. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js.map +1 -1
  157. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js +1 -1
  158. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js.map +1 -1
  159. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js +1 -1
  160. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js.map +1 -1
  161. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js +1 -1
  162. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js.map +1 -1
  163. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js +1 -1
  164. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js.map +1 -1
  165. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js +1 -1
  166. package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js.map +1 -1
  167. package/cjs-bundle/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js +1 -1
  168. package/cjs-bundle/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js.map +1 -1
  169. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js +1 -1
  170. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js.map +1 -1
  171. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js +1 -1
  172. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js.map +1 -1
  173. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyProvider.js +1 -1
  174. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyProvider.js.map +1 -1
  175. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useFetchSubjectWell.js +1 -1
  176. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useFetchSubjectWell.js.map +1 -1
  177. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useSearchedWells.js +1 -1
  178. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useSearchedWells.js.map +1 -1
  179. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js +1 -1
  180. package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js.map +1 -1
  181. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.js +1 -1
  182. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.js.map +1 -1
  183. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useCompanies.js +1 -1
  184. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useCompanies.js.map +1 -1
  185. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useExternalOffsets.js +1 -1
  186. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useExternalOffsets.js.map +1 -1
  187. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useIsAdmin.js +1 -1
  188. package/cjs-bundle/components/OffsetWellPickerV5/hooks/useIsAdmin.js.map +1 -1
  189. package/cjs-bundle/components/OffsetWellPickerV5/hooks/usePinnedWells.js +1 -1
  190. package/cjs-bundle/components/OffsetWellPickerV5/hooks/usePinnedWells.js.map +1 -1
  191. package/cjs-bundle/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js +1 -1
  192. package/cjs-bundle/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js.map +1 -1
  193. package/cjs-bundle/components/PadModeSelect/effects/useWellStreamActivityTypeSubscription.js +1 -1
  194. package/cjs-bundle/components/PadModeSelect/effects/useWellStreamActivityTypeSubscription.js.map +1 -1
  195. package/cjs-bundle/components/PadOffsetsPicker/StagesSelector.js +1 -1
  196. package/cjs-bundle/components/PadOffsetsPicker/StagesSelector.js.map +1 -1
  197. package/cjs-bundle/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js +1 -1
  198. package/cjs-bundle/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js.map +1 -1
  199. package/cjs-bundle/components/PinnableFilters/effects/index.js +1 -1
  200. package/cjs-bundle/components/PinnableFilters/effects/index.js.map +1 -1
  201. package/cjs-bundle/components/RealTimeValuesSidebar/SidebarFooter.js +1 -1
  202. package/cjs-bundle/components/RealTimeValuesSidebar/SidebarFooter.js.map +1 -1
  203. package/cjs-bundle/components/StatusBadge/components/DQAlertsTooltip.js +1 -1
  204. package/cjs-bundle/components/StatusBadge/components/DQAlertsTooltip.js.map +1 -1
  205. package/cjs-bundle/components/TruncatedText/index.js +1 -1
  206. package/cjs-bundle/components/TruncatedText/index.js.map +1 -1
  207. package/cjs-bundle/components/index.js +1 -1
  208. package/cjs-bundle/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.js +1 -1
  209. package/cjs-bundle/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.js.map +1 -1
  210. package/cjs-bundle/componentsV2/AppFooter/DqPopover/DqPopover.js +1 -1
  211. package/cjs-bundle/componentsV2/AppFooter/DqPopover/DqPopover.js.map +1 -1
  212. package/cjs-bundle/componentsV2/AppHeader/AppAssets/utils.js +1 -1
  213. package/cjs-bundle/componentsV2/AppHeader/AppAssets/utils.js.map +1 -1
  214. package/cjs-bundle/componentsV2/AppHeader/V3/Actions/Actions.js +1 -1
  215. package/cjs-bundle/componentsV2/AppHeader/V3/Actions/Actions.js.map +1 -1
  216. package/cjs-bundle/componentsV2/AppHeader/V3/AppTitle/AppTitle.js +1 -1
  217. package/cjs-bundle/componentsV2/AppHeader/V3/AppTitle/AppTitle.js.map +1 -1
  218. package/cjs-bundle/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js +1 -1
  219. package/cjs-bundle/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js.map +1 -1
  220. package/cjs-bundle/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js +1 -1
  221. package/cjs-bundle/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js.map +1 -1
  222. package/cjs-bundle/componentsV2/AppPanel/AppPanelDisplay.js +1 -1
  223. package/cjs-bundle/componentsV2/AppPanel/AppPanelDisplay.js.map +1 -1
  224. package/cjs-bundle/componentsV2/Autocomplete/Autocomplete.js +1 -1
  225. package/cjs-bundle/componentsV2/Autocomplete/Autocomplete.js.map +1 -1
  226. package/cjs-bundle/componentsV2/Autocomplete/AutocompleteInput/AutocompleteInput.js +1 -1
  227. package/cjs-bundle/componentsV2/Autocomplete/AutocompleteInput/AutocompleteInput.js.map +1 -1
  228. package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/Map/Map.js +1 -1
  229. package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/Map/Map.js.map +1 -1
  230. package/cjs-bundle/componentsV2/InterventionEventSelector/useInterventionUnitEvents.js +1 -1
  231. package/cjs-bundle/componentsV2/InterventionEventSelector/useInterventionUnitEvents.js.map +1 -1
  232. package/cjs-bundle/componentsV2/PadModeSelect/PadModeSelect.js +1 -1
  233. package/cjs-bundle/componentsV2/PadModeSelect/PadModeSelect.js.map +1 -1
  234. package/cjs-bundle/componentsV2/TemplatesControl/PublishModal/PublishModal.js +1 -1
  235. package/cjs-bundle/componentsV2/TemplatesControl/PublishModal/PublishModal.js.map +1 -1
  236. package/cjs-bundle/componentsV2/TemplatesControl/ShareModal/ShareModal.js +1 -1
  237. package/cjs-bundle/componentsV2/TemplatesControl/ShareModal/ShareModal.js.map +1 -1
  238. package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js +1 -1
  239. package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js.map +1 -1
  240. package/cjs-bundle/componentsV2/TemplatesControl/Store/utils.js +1 -1
  241. package/cjs-bundle/componentsV2/TemplatesControl/Store/utils.js.map +1 -1
  242. package/cjs-bundle/componentsV2/TemplatesControl/Toggle/Toggle.js +1 -1
  243. package/cjs-bundle/componentsV2/TemplatesControl/Toggle/Toggle.js.map +1 -1
  244. package/cjs-bundle/componentsV2/TextInputBase/TextInputBase.js +1 -1
  245. package/cjs-bundle/componentsV2/TextInputBase/TextInputBase.js.map +1 -1
  246. package/cjs-bundle/componentsV2/TextInputNext/TextInputNext.js +1 -1
  247. package/cjs-bundle/componentsV2/TextInputNext/TextInputNext.js.map +1 -1
  248. package/cjs-bundle/config/theme/palette.mjs.js +1 -1
  249. package/cjs-bundle/config/theme/palette.mjs.js.map +1 -1
  250. package/cjs-bundle/effects/index.js +1 -1
  251. package/cjs-bundle/effects/subscriptions/fetchInitialSubscriptionsData.js +2 -0
  252. package/cjs-bundle/effects/subscriptions/fetchInitialSubscriptionsData.js.map +1 -0
  253. package/cjs-bundle/effects/subscriptions/useSubscriptions.v2.js +1 -1
  254. package/cjs-bundle/effects/subscriptions/useSubscriptions.v2.js.map +1 -1
  255. package/cjs-bundle/effects/useGlobalOffsetWellsSync.js +1 -1
  256. package/cjs-bundle/effects/useGlobalOffsetWellsSync.js.map +1 -1
  257. package/cjs-bundle/effects/useSubscriptions.js +1 -1
  258. package/cjs-bundle/effects/useSubscriptions.js.map +1 -1
  259. package/cjs-bundle/effects/useWellnessAlerts.js +1 -1
  260. package/cjs-bundle/effects/useWellnessAlerts.js.map +1 -1
  261. package/cjs-bundle/permissions/constants/index.js +1 -1
  262. package/cjs-bundle/permissions/constants/index.js.map +1 -1
  263. package/cjs-bundle/styles/generatedThemesVariables.global.css.js +1 -1
  264. package/cjs-bundle/testing/AppTestWrapper/AppTestWrapper.js +1 -1
  265. package/cjs-bundle/testing/AppTestWrapper/AppTestWrapper.js.map +1 -1
  266. package/cjs-bundle/utils/index.js +1 -1
  267. package/cjs-bundle/utils/index.js.map +1 -1
  268. package/cjs-bundle/utils/safeTemplate.js +2 -0
  269. package/cjs-bundle/utils/safeTemplate.js.map +1 -0
  270. package/clients/index.d.ts +1 -9
  271. package/clients/index.d.ts.map +1 -1
  272. package/clients/index.js +1 -1
  273. package/clients/index.js.map +1 -1
  274. package/clients/subscriptions/constants.d.ts +0 -1
  275. package/clients/subscriptions/constants.d.ts.map +1 -1
  276. package/clients/subscriptions/constants.js +1 -1
  277. package/clients/subscriptions/constants.js.map +1 -1
  278. package/clients/subscriptions.d.ts.map +1 -1
  279. package/clients/subscriptions.js +1 -1
  280. package/clients/subscriptions.js.map +1 -1
  281. package/components/AddComment/Popover.js +1 -1
  282. package/components/AddComment/Popover.js.map +1 -1
  283. package/components/AddComment/components/Content.js +1 -1
  284. package/components/AddComment/components/Content.js.map +1 -1
  285. package/components/AssetEditor/effects/index.js +1 -1
  286. package/components/AssetEditor/effects/index.js.map +1 -1
  287. package/components/AssetEditorV2/effects/index.js +1 -1
  288. package/components/AssetEditorV2/effects/index.js.map +1 -1
  289. package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js +1 -1
  290. package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js.map +1 -1
  291. package/components/Attachment/index.js +1 -1
  292. package/components/Attachment/index.js.map +1 -1
  293. package/components/BICOffsetPickerDialog/index.js +1 -1
  294. package/components/BICOffsetPickerDialog/index.js.map +1 -1
  295. package/components/Casing/CasingTableV2/components/CasingJoints/Editor.js +1 -1
  296. package/components/Casing/CasingTableV2/components/CasingJoints/Editor.js.map +1 -1
  297. package/components/Casing/CasingTableV2/components/Component.js +1 -1
  298. package/components/Casing/CasingTableV2/components/Component.js.map +1 -1
  299. package/components/Casing/CasingTableV2/components/DrillPipe/Editor.js +1 -1
  300. package/components/Casing/CasingTableV2/components/DrillPipe/Editor.js.map +1 -1
  301. package/components/CollapsableSidebar.js +1 -1
  302. package/components/CollapsableSidebar.js.map +1 -1
  303. package/components/CommentComposer/CommentComposer.js +1 -1
  304. package/components/CommentComposer/CommentComposer.js.map +1 -1
  305. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
  306. package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
  307. package/components/DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchButton.js +1 -1
  308. package/components/DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchButton.js.map +1 -1
  309. package/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js +1 -1
  310. package/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js.map +1 -1
  311. package/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js +1 -1
  312. package/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js.map +1 -1
  313. package/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js +1 -1
  314. package/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js.map +1 -1
  315. package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js +1 -1
  316. package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js.map +1 -1
  317. package/components/DocumentViewer/DocumentViewer.js +1 -1
  318. package/components/DocumentViewer/DocumentViewer.js.map +1 -1
  319. package/components/Drillstring/BHAComponentDetail/constants.d.ts +2 -2
  320. package/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js +1 -1
  321. package/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js.map +1 -1
  322. package/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js +1 -1
  323. package/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js.map +1 -1
  324. package/components/Drillstring/BHAComponentsTable/components/Component.js +1 -1
  325. package/components/Drillstring/BHAComponentsTable/components/Component.js.map +1 -1
  326. package/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js +1 -1
  327. package/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js.map +1 -1
  328. package/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js +1 -1
  329. package/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js.map +1 -1
  330. package/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js +1 -1
  331. package/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js.map +1 -1
  332. package/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js +1 -1
  333. package/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js.map +1 -1
  334. package/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js +1 -1
  335. package/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js.map +1 -1
  336. package/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js +1 -1
  337. package/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js.map +1 -1
  338. package/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js +1 -1
  339. package/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js.map +1 -1
  340. package/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js +1 -1
  341. package/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js.map +1 -1
  342. package/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js +1 -1
  343. package/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js.map +1 -1
  344. package/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js +1 -1
  345. package/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js.map +1 -1
  346. package/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js +1 -1
  347. package/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js.map +1 -1
  348. package/components/FeedItem/FeedItem.js +1 -1
  349. package/components/FeedItem/FeedItem.js.map +1 -1
  350. package/components/GradientManager/GradientManager.js +1 -1
  351. package/components/GradientManager/GradientManager.js.map +1 -1
  352. package/components/GradientManager/GradientSelect.js +1 -1
  353. package/components/GradientManager/GradientSelect.js.map +1 -1
  354. package/components/IconButton/index.d.ts.map +1 -1
  355. package/components/IconButton/index.js +1 -1
  356. package/components/IconButton/index.js.map +1 -1
  357. package/components/OffsetWellPickerV2/OffsetWellPickerDialog.js +1 -1
  358. package/components/OffsetWellPickerV2/OffsetWellPickerDialog.js.map +1 -1
  359. package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
  360. package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -1
  361. package/components/OffsetWellPickerV2/components/Map/Map.js +1 -1
  362. package/components/OffsetWellPickerV2/components/Map/Map.js.map +1 -1
  363. package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
  364. package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -1
  365. package/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js +1 -1
  366. package/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js.map +1 -1
  367. package/components/OffsetWellPickerV3/components/CustomSelectionView/index.js +1 -1
  368. package/components/OffsetWellPickerV3/components/CustomSelectionView/index.js.map +1 -1
  369. package/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js +1 -1
  370. package/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js.map +1 -1
  371. package/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js +1 -1
  372. package/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js.map +1 -1
  373. package/components/OffsetWellPickerV3/components/TabSelection/index.js +1 -1
  374. package/components/OffsetWellPickerV3/components/TabSelection/index.js.map +1 -1
  375. package/components/OffsetWellPickerV3/components/WellHubView/index.js +1 -1
  376. package/components/OffsetWellPickerV3/components/WellHubView/index.js.map +1 -1
  377. package/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js +1 -1
  378. package/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js.map +1 -1
  379. package/components/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
  380. package/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
  381. package/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js +1 -1
  382. package/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js.map +1 -1
  383. package/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js +1 -1
  384. package/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js.map +1 -1
  385. package/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
  386. package/components/OffsetWellPickerV5/components/Filter/Filter.js.map +1 -1
  387. package/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js +1 -1
  388. package/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js.map +1 -1
  389. package/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js +1 -1
  390. package/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js.map +1 -1
  391. package/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js +1 -1
  392. package/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js.map +1 -1
  393. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js +1 -1
  394. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js.map +1 -1
  395. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js +1 -1
  396. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js.map +1 -1
  397. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js +1 -1
  398. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js.map +1 -1
  399. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js +1 -1
  400. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js.map +1 -1
  401. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js +1 -1
  402. package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js.map +1 -1
  403. package/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js +1 -1
  404. package/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js.map +1 -1
  405. package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js +1 -1
  406. package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js.map +1 -1
  407. package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js +1 -1
  408. package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js.map +1 -1
  409. package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js +1 -1
  410. package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js.map +1 -1
  411. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js +1 -1
  412. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js.map +1 -1
  413. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js +1 -1
  414. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js.map +1 -1
  415. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsData.utils.js +1 -1
  416. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsData.utils.js.map +1 -1
  417. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsFetch.js +1 -1
  418. package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsFetch.js.map +1 -1
  419. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js +1 -1
  420. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js.map +1 -1
  421. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js +1 -1
  422. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js.map +1 -1
  423. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js +1 -1
  424. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js.map +1 -1
  425. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js +1 -1
  426. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js.map +1 -1
  427. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js +1 -1
  428. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js.map +1 -1
  429. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js +1 -1
  430. package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js.map +1 -1
  431. package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js +1 -1
  432. package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js.map +1 -1
  433. package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js +1 -1
  434. package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js.map +1 -1
  435. package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js +1 -1
  436. package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js.map +1 -1
  437. package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js +1 -1
  438. package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js.map +1 -1
  439. package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js +1 -1
  440. package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js.map +1 -1
  441. package/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js +1 -1
  442. package/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js.map +1 -1
  443. package/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js +1 -1
  444. package/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js.map +1 -1
  445. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js +1 -1
  446. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js.map +1 -1
  447. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js +1 -1
  448. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js.map +1 -1
  449. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyProvider.js +1 -1
  450. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyProvider.js.map +1 -1
  451. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useFetchSubjectWell.js +1 -1
  452. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useFetchSubjectWell.js.map +1 -1
  453. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useSearchedWells.js +1 -1
  454. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useSearchedWells.js.map +1 -1
  455. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js +1 -1
  456. package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js.map +1 -1
  457. package/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.js +1 -1
  458. package/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.js.map +1 -1
  459. package/components/OffsetWellPickerV5/hooks/useCompanies.js +1 -1
  460. package/components/OffsetWellPickerV5/hooks/useCompanies.js.map +1 -1
  461. package/components/OffsetWellPickerV5/hooks/useExternalOffsets.js +1 -1
  462. package/components/OffsetWellPickerV5/hooks/useExternalOffsets.js.map +1 -1
  463. package/components/OffsetWellPickerV5/hooks/useIsAdmin.js +1 -1
  464. package/components/OffsetWellPickerV5/hooks/useIsAdmin.js.map +1 -1
  465. package/components/OffsetWellPickerV5/hooks/usePinnedWells.js +1 -1
  466. package/components/OffsetWellPickerV5/hooks/usePinnedWells.js.map +1 -1
  467. package/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js +1 -1
  468. package/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js.map +1 -1
  469. package/components/PadModeSelect/effects/useWellStreamActivityTypeSubscription.js +1 -1
  470. package/components/PadModeSelect/effects/useWellStreamActivityTypeSubscription.js.map +1 -1
  471. package/components/PadOffsetsPicker/StagesSelector.js +1 -1
  472. package/components/PadOffsetsPicker/StagesSelector.js.map +1 -1
  473. package/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js +1 -1
  474. package/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js.map +1 -1
  475. package/components/PinnableFilters/effects/index.js +1 -1
  476. package/components/PinnableFilters/effects/index.js.map +1 -1
  477. package/components/RealTimeValuesSidebar/SidebarFooter.js +1 -1
  478. package/components/RealTimeValuesSidebar/SidebarFooter.js.map +1 -1
  479. package/components/StatusBadge/components/DQAlertsTooltip.d.ts.map +1 -1
  480. package/components/StatusBadge/components/DQAlertsTooltip.js +1 -1
  481. package/components/StatusBadge/components/DQAlertsTooltip.js.map +1 -1
  482. package/components/TruncatedText/index.d.ts +1 -1
  483. package/components/TruncatedText/index.d.ts.map +1 -1
  484. package/components/TruncatedText/index.js +1 -1
  485. package/components/TruncatedText/index.js.map +1 -1
  486. package/components/index.js +1 -1
  487. package/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.d.ts.map +1 -1
  488. package/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.js +1 -1
  489. package/componentsV2/AppDqPopover/DqAlertTooltip/DqAlertTooltip.js.map +1 -1
  490. package/componentsV2/AppFooter/DqPopover/DqPopover.js +1 -1
  491. package/componentsV2/AppFooter/DqPopover/DqPopover.js.map +1 -1
  492. package/componentsV2/AppHeader/AppAssets/utils.js +1 -1
  493. package/componentsV2/AppHeader/AppAssets/utils.js.map +1 -1
  494. package/componentsV2/AppHeader/V3/Actions/Actions.js +1 -1
  495. package/componentsV2/AppHeader/V3/Actions/Actions.js.map +1 -1
  496. package/componentsV2/AppHeader/V3/AppTitle/AppTitle.js +1 -1
  497. package/componentsV2/AppHeader/V3/AppTitle/AppTitle.js.map +1 -1
  498. package/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js +1 -1
  499. package/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js.map +1 -1
  500. package/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js +1 -1
  501. package/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js.map +1 -1
  502. package/componentsV2/AppPanel/AppPanelDisplay.js +1 -1
  503. package/componentsV2/AppPanel/AppPanelDisplay.js.map +1 -1
  504. package/componentsV2/Autocomplete/Autocomplete.d.ts.map +1 -1
  505. package/componentsV2/Autocomplete/Autocomplete.js +1 -1
  506. package/componentsV2/Autocomplete/Autocomplete.js.map +1 -1
  507. package/componentsV2/Autocomplete/AutocompleteInput/AutocompleteInput.d.ts.map +1 -1
  508. package/componentsV2/Autocomplete/AutocompleteInput/AutocompleteInput.js +1 -1
  509. package/componentsV2/Autocomplete/AutocompleteInput/AutocompleteInput.js.map +1 -1
  510. package/componentsV2/Autocomplete/AutocompleteNext.stories.d.ts +1 -0
  511. package/componentsV2/Autocomplete/AutocompleteNext.stories.d.ts.map +1 -1
  512. package/componentsV2/CompletionsOffsetWellPicker/Map/Map.js +1 -1
  513. package/componentsV2/CompletionsOffsetWellPicker/Map/Map.js.map +1 -1
  514. package/componentsV2/InterventionEventSelector/useInterventionUnitEvents.js +1 -1
  515. package/componentsV2/InterventionEventSelector/useInterventionUnitEvents.js.map +1 -1
  516. package/componentsV2/PadModeSelect/PadModeSelect.js +1 -1
  517. package/componentsV2/PadModeSelect/PadModeSelect.js.map +1 -1
  518. package/componentsV2/TemplatesControl/PublishModal/PublishModal.js +1 -1
  519. package/componentsV2/TemplatesControl/PublishModal/PublishModal.js.map +1 -1
  520. package/componentsV2/TemplatesControl/ShareModal/ShareModal.js +1 -1
  521. package/componentsV2/TemplatesControl/ShareModal/ShareModal.js.map +1 -1
  522. package/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.d.ts.map +1 -1
  523. package/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js +1 -1
  524. package/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js.map +1 -1
  525. package/componentsV2/TemplatesControl/Store/utils.d.ts +7 -0
  526. package/componentsV2/TemplatesControl/Store/utils.d.ts.map +1 -1
  527. package/componentsV2/TemplatesControl/Store/utils.js +1 -1
  528. package/componentsV2/TemplatesControl/Store/utils.js.map +1 -1
  529. package/componentsV2/TemplatesControl/Toggle/Toggle.js +1 -1
  530. package/componentsV2/TemplatesControl/Toggle/Toggle.js.map +1 -1
  531. package/componentsV2/TextInputBase/TextInputBase.js +1 -1
  532. package/componentsV2/TextInputBase/TextInputBase.js.map +1 -1
  533. package/componentsV2/TextInputNext/TextInputNext.js +1 -1
  534. package/componentsV2/TextInputNext/TextInputNext.js.map +1 -1
  535. package/config/theme/lightThemePalette.d.mts +4 -0
  536. package/config/theme/lightThemePalette.d.mts.map +1 -1
  537. package/config/theme/palette.d.mts +4 -0
  538. package/config/theme/palette.d.mts.map +1 -1
  539. package/config/theme/palette.mjs.js +1 -1
  540. package/config/theme/palette.mjs.js.map +1 -1
  541. package/config/theme/themeVariables.d.mts +12 -0
  542. package/config/theme/themeVariables.d.mts.map +1 -1
  543. package/effects/index.js +1 -1
  544. package/effects/subscriptions/fetchInitialSubscriptionsData.d.ts +23 -0
  545. package/effects/subscriptions/fetchInitialSubscriptionsData.d.ts.map +1 -0
  546. package/effects/subscriptions/fetchInitialSubscriptionsData.js +2 -0
  547. package/effects/subscriptions/fetchInitialSubscriptionsData.js.map +1 -0
  548. package/effects/subscriptions/useSubscriptions.v2.d.ts.map +1 -1
  549. package/effects/subscriptions/useSubscriptions.v2.js +1 -1
  550. package/effects/subscriptions/useSubscriptions.v2.js.map +1 -1
  551. package/effects/useGlobalOffsetWellsSync.js +1 -1
  552. package/effects/useGlobalOffsetWellsSync.js.map +1 -1
  553. package/effects/useSubscriptions.d.ts +1 -2
  554. package/effects/useSubscriptions.d.ts.map +1 -1
  555. package/effects/useSubscriptions.js +1 -1
  556. package/effects/useSubscriptions.js.map +1 -1
  557. package/effects/useWellnessAlerts.js +1 -1
  558. package/effects/useWellnessAlerts.js.map +1 -1
  559. package/mcp-server/server.mjs +1983 -7317
  560. package/package.json +1 -1
  561. package/permissions/constants/index.d.ts +1 -0
  562. package/permissions/constants/index.d.ts.map +1 -1
  563. package/permissions/constants/index.js +1 -1
  564. package/permissions/constants/index.js.map +1 -1
  565. package/styles/common.scss +2 -0
  566. package/styles/generatedThemesVariables.global.css +1 -1
  567. package/styles/generatedThemesVariables.global.css.js +1 -1
  568. package/testing/AppTestWrapper/AppTestWrapper.js +1 -1
  569. package/testing/AppTestWrapper/AppTestWrapper.js.map +1 -1
  570. package/tsconfig.tsbuildinfo +1 -1
  571. package/utils/__tests__/safeTemplate.test.d.ts +2 -0
  572. package/utils/__tests__/safeTemplate.test.d.ts.map +1 -0
  573. package/utils/index.d.ts +1 -0
  574. package/utils/index.d.ts.map +1 -1
  575. package/utils/index.js +1 -1
  576. package/utils/index.js.map +1 -1
  577. package/utils/safeTemplate.d.ts +24 -0
  578. package/utils/safeTemplate.d.ts.map +1 -0
  579. package/utils/safeTemplate.js +2 -0
  580. package/utils/safeTemplate.js.map +1 -0
  581. package/cjs-bundle/clients/subscriptions.v1.js +0 -2
  582. package/cjs-bundle/clients/subscriptions.v1.js.map +0 -1
  583. package/cjs-bundle/effects/subscriptions/useSubscriptions.v1.js +0 -2
  584. package/cjs-bundle/effects/subscriptions/useSubscriptions.v1.js.map +0 -1
  585. package/clients/subscriptions.v1.d.ts +0 -9
  586. package/clients/subscriptions.v1.d.ts.map +0 -1
  587. package/clients/subscriptions.v1.js +0 -2
  588. package/clients/subscriptions.v1.js.map +0 -1
  589. package/effects/subscriptions/useSubscriptions.v1.d.ts +0 -24
  590. package/effects/subscriptions/useSubscriptions.v1.d.ts.map +0 -1
  591. package/effects/subscriptions/useSubscriptions.v1.js +0 -2
  592. package/effects/subscriptions/useSubscriptions.v1.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useWellDataPipeline.js","sources":["../../../../../../src/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.ts"],"sourcesContent":["import { useEffect, useMemo, type Dispatch, type SetStateAction } from 'react';\n\nimport { useViewportStore } from '../../stores/viewport-store';\nimport { areWellMapsEqual } from '../../stores/viewport-store/utils/areWellMapsEqual';\nimport { useCompanySafeguard } from '../../stores/company-safeguard';\nimport type { Company } from '../../stores/company-safeguard/CompanySafeguardContext';\nimport { useFilterStore } from '../../stores/filter-store/useFilterStore';\nimport { usePickerPropsStore } from '../../stores/picker-props-store';\nimport { ALL_SECTION_KEY } from '../../constants';\nimport { isDrillingOnlyWell } from '../../utils/isDrillingOnlyWell';\nimport { isInterventionOnlyWell } from '../../utils/isInterventionOnlyWell';\nimport type { FilterableWell } from '../../utils/doesWellPassFilters';\nimport type {\n OffsetWell,\n OffsetSettingsInput,\n OffsetSettingsOutput,\n} from '../../OffsetWellPickerV5.types';\nimport type { FetchedOffsetWell } from '../../api/shared/types';\nimport { useViewportWells } from '../useViewportWells';\nimport { useTileLoading } from '../useTileLoading';\nimport { usePinnedWells } from '../usePinnedWells';\nimport {\n useExternalOffsets,\n type WellSection,\n type OffsetWellsBySection,\n type TaScore,\n} from '../useExternalOffsets';\nimport { useIdasResyncSync } from '../../stores/idas-resync-store';\nimport { getSegmentConfig } from '../../segment-config';\n\nimport { useSearchedWells } from './useSearchedWells';\nimport { useCompanyProvider } from './useCompanyProvider';\nimport { useFetchSubjectWell } from './useFetchSubjectWell';\nimport { useCompanyMetricKey } from './useCompanyMetricKey';\nimport { useAdvancedWells, type TransformedWell } from './useAdvancedWells';\nimport { computeIsAllWellsLoaded } from './utils/computeIsAllWellsLoaded';\nimport {\n useInterventionEnrichment,\n enrichWellsWithInterventionData,\n} from './useInterventionEnrichment';\nimport { usePadEnrichment, enrichWellsWithPadData } from './usePadEnrichment';\n\nimport { useGlobalOffsetWellsSync } from '~/effects';\n\ntype UseWellDataPipelineParams = {\n subjectWellId: number | null;\n assetCompanyId: number | undefined;\n offsetSettings: OffsetSettingsInput | undefined;\n maxOffsetWellNumber: number;\n isLoadAllWells: boolean;\n open: boolean | undefined;\n onSave:\n | ((offsetSettings: OffsetSettingsOutput, selectedWells?: OffsetWell[]) => void)\n | undefined;\n};\n\ntype UseWellDataPipelineReturn = {\n wells: TransformedWell[] | null;\n subjectWell: TransformedWell | FetchedOffsetWell | null;\n subjectWellCoords: { latitude: number; longitude: number } | null;\n rawWellsWithSubject: FetchedOffsetWell[] | null;\n wellSections: WellSection[] | null;\n externalOffsets: OffsetWellsBySection | null;\n taScores: TaScore[];\n idasWellIds: number[];\n owsWellIds: number[];\n wellhubWellIds: number[];\n loadedAssetId: number | null;\n isWellSectionColumnVisible: boolean;\n metricsKeys: string[];\n setMetricsKeys: Dispatch<SetStateAction<string[]>>;\n loadingWellIds: Set<number>;\n isAllWellsLoaded: boolean;\n areRawWellsLoading: boolean;\n companies: Company[];\n canViewCompanies: boolean;\n companyProvider: string | null;\n pinnedWells: OffsetWell[] | null;\n fetchSearchedWells: (wellIds: number[]) => Promise<OffsetWell[]>;\n resetSafeguard: () => void;\n activeInterventionWellIds: Set<number>;\n};\n\nexport const useWellDataPipeline = ({\n subjectWellId,\n assetCompanyId,\n offsetSettings,\n maxOffsetWellNumber,\n isLoadAllWells,\n open,\n onSave,\n}: UseWellDataPipelineParams): UseWellDataPipelineReturn => {\n const segment = usePickerPropsStore(state => state.segment);\n const isIntervention = segment === 'intervention';\n const viewportWells = useViewportStore(state => state.wells, areWellMapsEqual);\n const viewportBounds = useViewportStore(state => state.bounds);\n const drillingWells = useFilterStore(state => state.filters.drillingWells ?? true);\n const interventionWells = useFilterStore(state => state.filters.interventionWells ?? true);\n\n const [fetchedSubjectWell] = useFetchSubjectWell(subjectWellId);\n\n const subjectWellCoords = useMemo(() => {\n const coords = fetchedSubjectWell?.topHole?.coordinates;\n if (!coords) return null;\n const [latitude, longitude] = coords;\n return { latitude, longitude };\n }, [fetchedSubjectWell]);\n\n useGlobalOffsetWellsSync(offsetSettings, onSave, maxOffsetWellNumber);\n\n const { companies, canViewCompanies, resetSafeguard } = useCompanySafeguard();\n\n useViewportWells(!isLoadAllWells);\n const isTileLoading = useTileLoading();\n\n const rawWells = useMemo(\n () => Array.from(viewportWells.values()) as FetchedOffsetWell[],\n [viewportWells]\n );\n const areRawWellsLoading = isTileLoading || (rawWells.length === 0 && viewportBounds === null);\n\n const [pinnedWells, arePinnedWellsLoading] = usePinnedWells(offsetSettings?.selectedWellIds);\n const [searchedWells, areSearchedWellsLoading, fetchSearchedWells] = useSearchedWells();\n\n const rawWellsWithSubject = useMemo((): FetchedOffsetWell[] | null => {\n if (!rawWells) return null;\n\n const mergeUniqueById = (\n target: FetchedOffsetWell[],\n extras: OffsetWell[] | null\n ): FetchedOffsetWell[] => {\n if (!extras?.length) {\n return target;\n }\n\n const existingIds = new Set(target.map(w => w.id));\n const missing = (extras as unknown as FetchedOffsetWell[]).filter(\n w => !existingIds.has(w.id)\n );\n\n return missing.length > 0 ? target.concat(missing) : target;\n };\n\n let result: FetchedOffsetWell[] = rawWells;\n result = mergeUniqueById(result, pinnedWells);\n result = mergeUniqueById(result, searchedWells);\n\n if (segment === 'drilling' && drillingWells) {\n result = result.filter(w => isDrillingOnlyWell(w as unknown as FilterableWell));\n }\n\n if (segment === 'intervention' && interventionWells) {\n result = result.filter(w => isInterventionOnlyWell(w as unknown as FilterableWell));\n }\n\n // Subject well is prepended AFTER filtering so its full data (BIC, advanced\n // metrics, distance) always loads even when it is not a drilling well.\n if (fetchedSubjectWell && !result.some(w => w.id === fetchedSubjectWell.id)) {\n result = [fetchedSubjectWell].concat(result);\n }\n\n return result;\n }, [\n rawWells,\n fetchedSubjectWell,\n pinnedWells,\n searchedWells,\n drillingWells,\n interventionWells,\n segment,\n ]);\n\n const [companyProvider] = useCompanyProvider(assetCompanyId);\n\n const { offsets, setOffsets, loadExternalOffsets } = useExternalOffsets(\n subjectWellId,\n rawWellsWithSubject\n );\n useIdasResyncSync({ assetId: subjectWellId, loadExternalOffsets });\n const {\n wellSections,\n offsetWellsBySection: externalOffsets,\n taScores,\n idasWellIds,\n owsWellIds,\n wellhubWellIds,\n loadedAssetId,\n } = offsets;\n\n const isWellSectionColumnVisible = useMemo(() => {\n if (!wellSections) return false;\n return wellSections.some(section => section.value !== ALL_SECTION_KEY);\n }, [wellSections]);\n\n useEffect(() => {\n setOffsets(prev => ({ ...prev, wellSections: null, offsetWellsBySection: null }));\n }, [setOffsets, subjectWellId]);\n\n // Pre-fetch synced offset wells that aren't in the local pool yet, so the Reset\n // button visibility (`useSaveResetDerivedState`) can synchronously distinguish\n // \"real well outside map radius\" from \"stale/unresolvable IDAS ID\". Results land\n // in `searchedWells` via `useSearchedWells.wellsCacheRef` and flow into\n // `rawWellsWithSubject` through `mergeUniqueById` above.\n useEffect(() => {\n if (!externalOffsets) return;\n const loaded = new Set(rawWellsWithSubject?.map(w => w.id) ?? []);\n const missing = new Set<number>();\n Object.values(externalOffsets).forEach(sectionIds => {\n (sectionIds ?? []).forEach(id => {\n if (id != null && id !== subjectWellId && !loaded.has(id)) missing.add(id);\n });\n });\n if (missing.size > 0) {\n fetchSearchedWells(Array.from(missing));\n }\n }, [externalOffsets, rawWellsWithSubject, subjectWellId, fetchSearchedWells]);\n\n const { defaultMetricKey } = getSegmentConfig(segment);\n\n const [metricsKeys, setMetricsKeys] = useCompanyMetricKey(\n assetCompanyId as number,\n offsetSettings?.metricsKeys,\n defaultMetricKey\n ) as [string[], Dispatch<SetStateAction<string[]>>];\n\n const [wellsWithMetrics, areAdvancedWellsLoading, transformedWells, loadingWellIds] =\n useAdvancedWells(\n rawWellsWithSubject,\n wellSections,\n externalOffsets,\n subjectWellId,\n metricsKeys,\n open\n );\n\n const {\n wellIdToInterventionNames,\n activeInterventionWellIds,\n isLoading: isInterventionLoading,\n } = useInterventionEnrichment(isIntervention);\n\n const { assetIdToPadName, isLoading: isPadLoading } = usePadEnrichment(isIntervention);\n\n const wellsWithoutCompanyName = wellsWithMetrics || transformedWells;\n\n const wells = useMemo(() => {\n if (!wellsWithoutCompanyName || !companies?.length) return wellsWithoutCompanyName;\n\n const companyMap: Record<number, string> = {};\n companies.forEach(company => {\n companyMap[company.id] = company.name;\n });\n\n let result = wellsWithoutCompanyName.map(well => ({\n ...well,\n companyName: companyMap[Number(well.companyId)] || 'Null',\n }));\n\n if (isIntervention) {\n result = enrichWellsWithInterventionData(result, wellIdToInterventionNames);\n result = enrichWellsWithPadData(result, assetIdToPadName);\n }\n\n return result;\n }, [\n wellsWithoutCompanyName,\n companies,\n isIntervention,\n wellIdToInterventionNames,\n assetIdToPadName,\n ]);\n\n const subjectWell = useMemo(() => {\n if (!fetchedSubjectWell) return null;\n if (!wells) return fetchedSubjectWell;\n return wells.find(w => w.id === fetchedSubjectWell.id) || fetchedSubjectWell;\n }, [fetchedSubjectWell, wells]);\n\n const allWellsLoadProgress = usePickerPropsStore(state => state.allWellsLoadProgress);\n\n const isAllWellsLoaded = computeIsAllWellsLoaded({\n isLoadAllWells,\n allWellsLoadProgress,\n wellsLength: wells?.length ?? 0,\n rawWellsCount: rawWellsWithSubject?.length ?? 0,\n areRawWellsLoading,\n areAdvancedWellsLoading: areAdvancedWellsLoading || isInterventionLoading || isPadLoading,\n arePinnedWellsLoading,\n areSearchedWellsLoading,\n });\n\n return {\n wells,\n subjectWell,\n subjectWellCoords,\n rawWellsWithSubject,\n wellSections,\n externalOffsets,\n taScores,\n idasWellIds,\n owsWellIds,\n wellhubWellIds,\n loadedAssetId,\n isWellSectionColumnVisible,\n metricsKeys,\n setMetricsKeys,\n loadingWellIds,\n isAllWellsLoaded,\n areRawWellsLoading,\n companies,\n canViewCompanies,\n companyProvider,\n pinnedWells,\n fetchSearchedWells,\n resetSafeguard,\n activeInterventionWellIds,\n };\n};\n"],"names":["_ref","_wells$length","_rawWellsWithSubject$2","subjectWellId","assetCompanyId","offsetSettings","maxOffsetWellNumber","isLoadAllWells","open","onSave","segment","usePickerPropsStore","state","isIntervention","viewportWells","useViewportStore","wells","areWellMapsEqual","viewportBounds","bounds","drillingWells","useFilterStore","_state$filters$drilli","filters","interventionWells","_state$filters$interv","useFetchSubjectWell","fetchedSubjectWell","_slicedToArray","_useFetchSubjectWell","subjectWellCoords","useMemo","_fetchedSubjectWell$t","coords","topHole","coordinates","_coords","latitude","longitude","useGlobalOffsetWellsSync","_useCompanySafeguard","useCompanySafeguard","companies","canViewCompanies","resetSafeguard","useViewportWells","isTileLoading","useTileLoading","rawWells","Array","from","values","areRawWellsLoading","length","usePinnedWells","selectedWellIds","_usePinnedWells2","_usePinnedWells","pinnedWells","arePinnedWellsLoading","_useSearchedWells","useSearchedWells","_useSearchedWells2","searchedWells","areSearchedWellsLoading","fetchSearchedWells","rawWellsWithSubject","mergeUniqueById","target","extras","existingIds","Set","map","w","id","missing","filter","has","concat","result","isDrillingOnlyWell","isInterventionOnlyWell","some","useCompanyProvider","companyProvider","_useCompanyProvider","_useExternalOffsets","useExternalOffsets","offsets","setOffsets","loadExternalOffsets","useIdasResyncSync","assetId","wellSections","externalOffsets","offsetWellsBySection","taScores","idasWellIds","owsWellIds","wellhubWellIds","loadedAssetId","isWellSectionColumnVisible","section","value","ALL_SECTION_KEY","useEffect","prev","_objectSpread","_rawWellsWithSubject$","loaded","Object","forEach","sectionIds","add","size","defaultMetricKey","getSegmentConfig","_ref2","useCompanyMetricKey","metricsKeys","_ref3","setMetricsKeys","_useAdvancedWells","useAdvancedWells","_useAdvancedWells2","wellsWithMetrics","areAdvancedWellsLoading","transformedWells","loadingWellIds","useInterventionEnrichment","wellIdToInterventionNames","activeInterventionWellIds","isInterventionLoading","isLoading","usePadEnrichment","assetIdToPadName","isPadLoading","wellsWithoutCompanyName","companyMap","company","name","well","companyName","Number","companyId","enrichWellsWithInterventionData","enrichWellsWithPadData","subjectWell","find","allWellsLoadProgress","isAllWellsLoaded","computeIsAllWellsLoaded","wellsLength","rawWellsCount"],"mappings":"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"}
1
+ {"version":3,"file":"useWellDataPipeline.js","sources":["../../../../../../src/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.ts"],"sourcesContent":["import { useEffect, useMemo, type Dispatch, type SetStateAction } from 'react';\n\nimport { useViewportStore } from '../../stores/viewport-store';\nimport { areWellMapsEqual } from '../../stores/viewport-store/utils/areWellMapsEqual';\nimport { useCompanySafeguard } from '../../stores/company-safeguard';\nimport type { Company } from '../../stores/company-safeguard/CompanySafeguardContext';\nimport { useFilterStore } from '../../stores/filter-store/useFilterStore';\nimport { usePickerPropsStore } from '../../stores/picker-props-store';\nimport { ALL_SECTION_KEY } from '../../constants';\nimport { isDrillingOnlyWell } from '../../utils/isDrillingOnlyWell';\nimport { isInterventionOnlyWell } from '../../utils/isInterventionOnlyWell';\nimport type { FilterableWell } from '../../utils/doesWellPassFilters';\nimport type {\n OffsetWell,\n OffsetSettingsInput,\n OffsetSettingsOutput,\n} from '../../OffsetWellPickerV5.types';\nimport type { FetchedOffsetWell } from '../../api/shared/types';\nimport { useViewportWells } from '../useViewportWells';\nimport { useTileLoading } from '../useTileLoading';\nimport { usePinnedWells } from '../usePinnedWells';\nimport {\n useExternalOffsets,\n type WellSection,\n type OffsetWellsBySection,\n type TaScore,\n} from '../useExternalOffsets';\nimport { useIdasResyncSync } from '../../stores/idas-resync-store';\nimport { getSegmentConfig } from '../../segment-config';\n\nimport { useSearchedWells } from './useSearchedWells';\nimport { useCompanyProvider } from './useCompanyProvider';\nimport { useFetchSubjectWell } from './useFetchSubjectWell';\nimport { useCompanyMetricKey } from './useCompanyMetricKey';\nimport { useAdvancedWells, type TransformedWell } from './useAdvancedWells';\nimport { computeIsAllWellsLoaded } from './utils/computeIsAllWellsLoaded';\nimport {\n useInterventionEnrichment,\n enrichWellsWithInterventionData,\n} from './useInterventionEnrichment';\nimport { usePadEnrichment, enrichWellsWithPadData } from './usePadEnrichment';\n\nimport { useGlobalOffsetWellsSync } from '~/effects';\n\ntype UseWellDataPipelineParams = {\n subjectWellId: number | null;\n assetCompanyId: number | undefined;\n offsetSettings: OffsetSettingsInput | undefined;\n maxOffsetWellNumber: number;\n isLoadAllWells: boolean;\n open: boolean | undefined;\n onSave:\n | ((offsetSettings: OffsetSettingsOutput, selectedWells?: OffsetWell[]) => void)\n | undefined;\n};\n\ntype UseWellDataPipelineReturn = {\n wells: TransformedWell[] | null;\n subjectWell: TransformedWell | FetchedOffsetWell | null;\n subjectWellCoords: { latitude: number; longitude: number } | null;\n rawWellsWithSubject: FetchedOffsetWell[] | null;\n wellSections: WellSection[] | null;\n externalOffsets: OffsetWellsBySection | null;\n taScores: TaScore[];\n idasWellIds: number[];\n owsWellIds: number[];\n wellhubWellIds: number[];\n loadedAssetId: number | null;\n isWellSectionColumnVisible: boolean;\n metricsKeys: string[];\n setMetricsKeys: Dispatch<SetStateAction<string[]>>;\n loadingWellIds: Set<number>;\n isAllWellsLoaded: boolean;\n areRawWellsLoading: boolean;\n companies: Company[];\n canViewCompanies: boolean;\n companyProvider: string | null;\n pinnedWells: OffsetWell[] | null;\n fetchSearchedWells: (wellIds: number[]) => Promise<OffsetWell[]>;\n resetSafeguard: () => void;\n activeInterventionWellIds: Set<number>;\n};\n\nexport const useWellDataPipeline = ({\n subjectWellId,\n assetCompanyId,\n offsetSettings,\n maxOffsetWellNumber,\n isLoadAllWells,\n open,\n onSave,\n}: UseWellDataPipelineParams): UseWellDataPipelineReturn => {\n const segment = usePickerPropsStore(state => state.segment);\n const isIntervention = segment === 'intervention';\n const viewportWells = useViewportStore(state => state.wells, areWellMapsEqual);\n const viewportBounds = useViewportStore(state => state.bounds);\n const drillingWells = useFilterStore(state => state.filters.drillingWells ?? true);\n const interventionWells = useFilterStore(state => state.filters.interventionWells ?? true);\n\n const [fetchedSubjectWell] = useFetchSubjectWell(subjectWellId);\n\n const subjectWellCoords = useMemo(() => {\n const coords = fetchedSubjectWell?.topHole?.coordinates;\n if (!coords) return null;\n const [latitude, longitude] = coords;\n return { latitude, longitude };\n }, [fetchedSubjectWell]);\n\n useGlobalOffsetWellsSync(offsetSettings, onSave, maxOffsetWellNumber);\n\n const { companies, canViewCompanies, resetSafeguard } = useCompanySafeguard();\n\n useViewportWells(!isLoadAllWells);\n const isTileLoading = useTileLoading();\n\n const rawWells = useMemo(\n () => Array.from(viewportWells.values()) as FetchedOffsetWell[],\n [viewportWells]\n );\n const areRawWellsLoading = isTileLoading || (rawWells.length === 0 && viewportBounds === null);\n\n const [pinnedWells, arePinnedWellsLoading] = usePinnedWells(offsetSettings?.selectedWellIds);\n const [searchedWells, areSearchedWellsLoading, fetchSearchedWells] = useSearchedWells();\n\n const rawWellsWithSubject = useMemo((): FetchedOffsetWell[] | null => {\n if (!rawWells) return null;\n\n const mergeUniqueById = (\n target: FetchedOffsetWell[],\n extras: OffsetWell[] | null\n ): FetchedOffsetWell[] => {\n if (!extras?.length) {\n return target;\n }\n\n const existingIds = new Set(target.map(w => w.id));\n const missing = (extras as unknown as FetchedOffsetWell[]).filter(\n w => !existingIds.has(w.id)\n );\n\n return missing.length > 0 ? target.concat(missing) : target;\n };\n\n let result: FetchedOffsetWell[] = rawWells;\n result = mergeUniqueById(result, pinnedWells);\n result = mergeUniqueById(result, searchedWells);\n\n if (segment === 'drilling' && drillingWells) {\n result = result.filter(w => isDrillingOnlyWell(w as unknown as FilterableWell));\n }\n\n if (segment === 'intervention' && interventionWells) {\n result = result.filter(w => isInterventionOnlyWell(w as unknown as FilterableWell));\n }\n\n // Subject well is prepended AFTER filtering so its full data (BIC, advanced\n // metrics, distance) always loads even when it is not a drilling well.\n if (fetchedSubjectWell && !result.some(w => w.id === fetchedSubjectWell.id)) {\n result = [fetchedSubjectWell].concat(result);\n }\n\n return result;\n }, [\n rawWells,\n fetchedSubjectWell,\n pinnedWells,\n searchedWells,\n drillingWells,\n interventionWells,\n segment,\n ]);\n\n const [companyProvider] = useCompanyProvider(assetCompanyId);\n\n const { offsets, setOffsets, loadExternalOffsets } = useExternalOffsets(\n subjectWellId,\n rawWellsWithSubject\n );\n useIdasResyncSync({ assetId: subjectWellId, loadExternalOffsets });\n const {\n wellSections,\n offsetWellsBySection: externalOffsets,\n taScores,\n idasWellIds,\n owsWellIds,\n wellhubWellIds,\n loadedAssetId,\n } = offsets;\n\n const isWellSectionColumnVisible = useMemo(() => {\n if (!wellSections) return false;\n return wellSections.some(section => section.value !== ALL_SECTION_KEY);\n }, [wellSections]);\n\n useEffect(() => {\n setOffsets(prev => ({ ...prev, wellSections: null, offsetWellsBySection: null }));\n }, [setOffsets, subjectWellId]);\n\n // Pre-fetch synced offset wells that aren't in the local pool yet, so the Reset\n // button visibility (`useSaveResetDerivedState`) can synchronously distinguish\n // \"real well outside map radius\" from \"stale/unresolvable IDAS ID\". Results land\n // in `searchedWells` via `useSearchedWells.wellsCacheRef` and flow into\n // `rawWellsWithSubject` through `mergeUniqueById` above.\n useEffect(() => {\n if (!externalOffsets) return;\n const loaded = new Set(rawWellsWithSubject?.map(w => w.id) ?? []);\n const missing = new Set<number>();\n Object.values(externalOffsets).forEach(sectionIds => {\n (sectionIds ?? []).forEach(id => {\n if (id != null && id !== subjectWellId && !loaded.has(id)) missing.add(id);\n });\n });\n if (missing.size > 0) {\n fetchSearchedWells(Array.from(missing));\n }\n }, [externalOffsets, rawWellsWithSubject, subjectWellId, fetchSearchedWells]);\n\n const { defaultMetricKey } = getSegmentConfig(segment);\n\n const [metricsKeys, setMetricsKeys] = useCompanyMetricKey(\n assetCompanyId as number,\n offsetSettings?.metricsKeys,\n defaultMetricKey\n ) as [string[], Dispatch<SetStateAction<string[]>>];\n\n const [wellsWithMetrics, areAdvancedWellsLoading, transformedWells, loadingWellIds] =\n useAdvancedWells(\n rawWellsWithSubject,\n wellSections,\n externalOffsets,\n subjectWellId,\n metricsKeys,\n open\n );\n\n const {\n wellIdToInterventionNames,\n activeInterventionWellIds,\n isLoading: isInterventionLoading,\n } = useInterventionEnrichment(isIntervention);\n\n const { assetIdToPadName, isLoading: isPadLoading } = usePadEnrichment(isIntervention);\n\n const wellsWithoutCompanyName = wellsWithMetrics || transformedWells;\n\n const wells = useMemo(() => {\n if (!wellsWithoutCompanyName || !companies?.length) return wellsWithoutCompanyName;\n\n const companyMap: Record<number, string> = {};\n companies.forEach(company => {\n companyMap[company.id] = company.name;\n });\n\n let result = wellsWithoutCompanyName.map(well => ({\n ...well,\n companyName: companyMap[Number(well.companyId)] || 'Null',\n }));\n\n if (isIntervention) {\n result = enrichWellsWithInterventionData(result, wellIdToInterventionNames);\n result = enrichWellsWithPadData(result, assetIdToPadName);\n }\n\n return result;\n }, [\n wellsWithoutCompanyName,\n companies,\n isIntervention,\n wellIdToInterventionNames,\n assetIdToPadName,\n ]);\n\n const subjectWell = useMemo(() => {\n if (!fetchedSubjectWell) return null;\n if (!wells) return fetchedSubjectWell;\n return wells.find(w => w.id === fetchedSubjectWell.id) || fetchedSubjectWell;\n }, [fetchedSubjectWell, wells]);\n\n const allWellsLoadProgress = usePickerPropsStore(state => state.allWellsLoadProgress);\n\n const isAllWellsLoaded = computeIsAllWellsLoaded({\n isLoadAllWells,\n allWellsLoadProgress,\n wellsLength: wells?.length ?? 0,\n rawWellsCount: rawWellsWithSubject?.length ?? 0,\n areRawWellsLoading,\n areAdvancedWellsLoading: areAdvancedWellsLoading || isInterventionLoading || isPadLoading,\n arePinnedWellsLoading,\n areSearchedWellsLoading,\n });\n\n return {\n wells,\n subjectWell,\n subjectWellCoords,\n rawWellsWithSubject,\n wellSections,\n externalOffsets,\n taScores,\n idasWellIds,\n owsWellIds,\n wellhubWellIds,\n loadedAssetId,\n isWellSectionColumnVisible,\n metricsKeys,\n setMetricsKeys,\n loadingWellIds,\n isAllWellsLoaded,\n areRawWellsLoading,\n companies,\n canViewCompanies,\n companyProvider,\n pinnedWells,\n fetchSearchedWells,\n resetSafeguard,\n activeInterventionWellIds,\n };\n};\n"],"names":["_ref","_wells$length","_rawWellsWithSubject$2","subjectWellId","assetCompanyId","offsetSettings","maxOffsetWellNumber","isLoadAllWells","open","onSave","segment","usePickerPropsStore","state","isIntervention","viewportWells","useViewportStore","wells","areWellMapsEqual","viewportBounds","bounds","drillingWells","useFilterStore","_state$filters$drilli","filters","interventionWells","_state$filters$interv","useFetchSubjectWell","fetchedSubjectWell","_slicedToArray","_useFetchSubjectWell","subjectWellCoords","useMemo","_fetchedSubjectWell$t","coords","topHole","coordinates","_coords","latitude","longitude","useGlobalOffsetWellsSync","_useCompanySafeguard","useCompanySafeguard","companies","canViewCompanies","resetSafeguard","useViewportWells","isTileLoading","useTileLoading","rawWells","Array","from","values","areRawWellsLoading","length","usePinnedWells","selectedWellIds","_usePinnedWells2","_usePinnedWells","pinnedWells","arePinnedWellsLoading","_useSearchedWells","useSearchedWells","_useSearchedWells2","searchedWells","areSearchedWellsLoading","fetchSearchedWells","rawWellsWithSubject","mergeUniqueById","target","extras","existingIds","Set","map","w","id","missing","filter","has","concat","result","isDrillingOnlyWell","isInterventionOnlyWell","some","useCompanyProvider","companyProvider","_useCompanyProvider","_useExternalOffsets","useExternalOffsets","offsets","setOffsets","loadExternalOffsets","useIdasResyncSync","assetId","wellSections","externalOffsets","offsetWellsBySection","taScores","idasWellIds","owsWellIds","wellhubWellIds","loadedAssetId","isWellSectionColumnVisible","section","value","ALL_SECTION_KEY","useEffect","prev","_objectSpread","_rawWellsWithSubject$","loaded","Object","forEach","sectionIds","add","size","defaultMetricKey","getSegmentConfig","_ref2","useCompanyMetricKey","metricsKeys","_ref3","setMetricsKeys","_useAdvancedWells","useAdvancedWells","_useAdvancedWells2","wellsWithMetrics","areAdvancedWellsLoading","transformedWells","loadingWellIds","useInterventionEnrichment","wellIdToInterventionNames","activeInterventionWellIds","isInterventionLoading","isLoading","usePadEnrichment","assetIdToPadName","isPadLoading","wellsWithoutCompanyName","companyMap","company","name","well","companyName","Number","companyId","enrichWellsWithInterventionData","enrichWellsWithPadData","subjectWell","find","allWellsLoadProgress","isAllWellsLoaded","computeIsAllWellsLoaded","wellsLength","rawWellsCount"],"mappings":"4zKAmFmC,SAQyBA,GAAA,IAAAC,EAAAC,EAP1DC,IAAAA,cACAC,IAAAA,eACAC,IAAAA,eACAC,IAAAA,oBACAC,IAAAA,eACAC,IAAAA,KACAC,IAAAA,OAEMC,EAAUC,uBAAoB,SAAAC,GAAK,OAAIA,EAAMF,WAC7CG,EAA6B,iBAAZH,EACjBI,EAAgBC,oBAAiB,SAAAH,GAAK,OAAIA,EAAMI,KAAK,GAAEC,EAAgBA,kBACvEC,EAAiBH,oBAAiB,SAAAH,GAAK,OAAIA,EAAMO,UACjDC,EAAgBC,kBAAe,SAAAT,GAAK,IAAAU,EAAA,eAAAA,EAAIV,EAAMW,QAAQH,iCACtDI,EAAoBH,kBAAe,SAAAT,GAAK,IAAAa,EAAA,eAAAA,EAAIb,EAAMW,QAAQC,qCAEnCE,EAAAA,EAAmBA,oBAACvB,GAA1CwB,EAAwDC,EAAAA,QAAAC,EAAA,GAAtC,GAEnBC,EAAoBC,EAAAA,SAAQ,WAAM,IAAAC,EAChCC,EAASN,SAAA,QAAAA,EAAAA,EAAoBO,eAApB,IAAAF,OAAAL,EAAAK,EAA6BG,YAC5C,IAAKF,EAAQ,OAAO,KACpB,IAAAG,EAAAR,EAAAA,QAA8BK,EAAM,GACpC,MAAO,CAAEI,SADMD,EAAA,GACIE,UADOF,EAAA,GAE5B,GAAG,CAACT,IAEJY,EAAAA,yBAAyBlC,EAAgBI,EAAQH,GAEjD,IAAAkC,EAAwDC,EAAAA,sBAAhDC,IAAAA,UAAWC,IAAAA,iBAAkBC,IAAAA,eAErCC,EAAgBA,kBAAEtC,GAClB,IAAMuC,EAAgBC,EAAAA,iBAEhBC,EAAWjB,EAAAA,SACf,WAAA,OAAMkB,MAAMC,KAAKpC,EAAcqC,SAAS,GACxC,CAACrC,IAEGsC,EAAqBN,GAAsC,IAApBE,EAASK,QAAmC,OAAnBnC,EAEzBoC,EAAAA,EAAAA,eAAejD,aAAAA,EAAAA,EAAgBkD,iBAAgBC,EAAA5B,EAAAA,QAAA6B,EAAA,GAArFC,GAAWF,EAAA,GAAEG,GAAqBH,EAAA,GACzCI,GAAqEC,EAAAA,mBAAkBC,GAAAlC,EAAAA,QAAAgC,GAAA,GAAhFG,GAAaD,GAAA,GAAEE,GAAuBF,GAAA,GAAEG,GAAkBH,GAAA,GAE3DI,GAAsBnC,EAAAA,SAAQ,WAClC,IAAKiB,EAAU,OAAO,KAEtB,IAAMmB,EAAkB,SACtBC,EACAC,GAEA,GAAKA,UAAAA,EAAQhB,OACX,OAAOe,EAGT,IAAME,EAAc,IAAIC,IAAIH,EAAOI,KAAI,SAAAC,GAAC,OAAIA,EAAEC,EAAE,KAC1CC,EAAWN,EAA0CO,QACzD,SAAAH,GAAC,OAAKH,EAAYO,IAAIJ,EAAEC,OAG1B,OAAOC,EAAQtB,OAAS,EAAIe,EAAOU,OAAOH,GAAWP,GAGnDW,EAA8B/B,EAkBlC,OAjBA+B,EAASZ,EAAgBY,EAAQrB,IACjCqB,EAASZ,EAAgBY,EAAQhB,IAEjB,aAAZrD,GAA0BU,IAC5B2D,EAASA,EAAOH,QAAO,SAAAH,GAAC,OAAIO,EAAAA,mBAAmBP,OAGjC,iBAAZ/D,GAA8Bc,IAChCuD,EAASA,EAAOH,QAAO,SAAAH,GAAC,OAAIQ,EAAAA,uBAAuBR,OAKjD9C,IAAuBoD,EAAOG,MAAK,SAAAT,GAAC,OAAIA,EAAEC,KAAO/C,EAAmB+C,EAAE,MACxEK,EAAS,CAACpD,GAAoBmD,OAAOC,IAGhCA,CACT,GAAG,CACD/B,EACArB,EACA+B,GACAK,GACA3C,EACAI,EACAd,IAGwByE,GAAAA,EAAkBA,mBAAC/E,GAAtCgF,GAAqDxD,EAAAA,QAAAyD,GAAA,GAAtC,GAEtBC,GAAqDC,EAAAA,mBACnDpF,EACA+D,IAFMsB,MAAAA,QAASC,MAAAA,WAAYC,MAAAA,oBAI7BC,oBAAkB,CAAEC,QAASzF,EAAeuF,oBAAAA,KAC5C,IACEG,GAOEL,GAPFK,aACsBC,GAMpBN,GANFO,qBACAC,GAKER,GALFQ,SACAC,GAIET,GAJFS,YACAC,GAGEV,GAHFU,WACAC,GAEEX,GAFFW,eACAC,GACEZ,GADFY,cAGIC,GAA6BtE,EAAAA,SAAQ,WACzC,QAAK8D,IACEA,GAAaX,MAAK,SAAAoB,GAAO,OAAIA,EAAQC,QAAUC,oBACxD,GAAG,CAACX,KAEJY,EAAAA,WAAU,WACRhB,IAAW,SAAAiB,GAAI,OAAAC,EAAAA,EAAA,CAAA,EAAUD,GAAI,CAAA,EAAA,CAAEb,aAAc,KAAME,qBAAsB,MAAI,GAC/E,GAAG,CAACN,GAAYtF,IAOhBsG,EAAAA,WAAU,WAAM,IAAAG,EACd,GAAKd,GAAL,CACA,IAAMe,EAAS,IAAItC,IAAuC,UAAnCL,cAAmB,EAAnBA,GAAqBM,KAAI,SAAAC,GAAC,OAAIA,EAAEC,aAAG,IAAAkC,EAAAA,EAAI,IACxDjC,EAAU,IAAIJ,IACpBuC,OAAO3D,OAAO2C,IAAiBiB,SAAQ,SAAAC,IACpCA,QAAAA,EAAc,IAAID,SAAQ,SAAArC,GACf,MAANA,GAAcA,IAAOvE,GAAkB0G,EAAOhC,IAAIH,IAAKC,EAAQsC,IAAIvC,EACzE,GACF,IACIC,EAAQuC,KAAO,GACjBjD,GAAmBhB,MAAMC,KAAKyB,GATV,CAWvB,GAAE,CAACmB,GAAiB5B,GAAqB/D,EAAe8D,KAEzD,IAAQkD,GAAqBC,EAAgBA,iBAAC1G,GAAtCyG,iBAERE,GAAsCC,EAAmBA,oBACvDlH,EACAC,aAAc,EAAdA,EAAgBkH,YAChBJ,IACDK,GAAA5F,EAAAA,QAAAyF,GAAA,GAJME,GAAWC,GAAA,GAAEC,GAAcD,GAAA,GAMlCE,GACEC,EAAgBA,iBACdzD,GACA2B,GACAC,GACA3F,EACAoH,GACA/G,GACDoH,GAAAhG,EAAAA,QAAA8F,GAAA,GARIG,GAAgBD,GAAA,GAAEE,GAAuBF,GAAA,GAAEG,GAAgBH,GAAA,GAAEI,GAAcJ,GAAA,GAc9EK,GAAAA,EAAyBA,0BAACpH,GAH5BqH,MAAAA,0BACAC,MAAAA,0BACWC,MAAXC,UAGoDC,GAAAA,EAAgBA,iBAACzH,GAA/D0H,MAAAA,iBAA6BC,MAAXH,UAEpBI,GAA0BZ,IAAoBE,GAE9C/G,GAAQe,EAAAA,SAAQ,WACpB,IAAK0G,IAA4B/F,UAAAA,EAAWW,OAAQ,OAAOoF,GAE3D,IAAMC,EAAqC,CAAA,EAC3ChG,EAAUqE,SAAQ,SAAA4B,GAChBD,EAAWC,EAAQjE,IAAMiE,EAAQC,IACnC,IAEA,IAAI7D,EAAS0D,GAAwBjE,KAAI,SAAAqE,GAAI,OAAAlC,EAAAA,EAAA,CAAA,EACxCkC,GAAI,CAAA,EAAA,CACPC,YAAaJ,EAAWK,OAAOF,EAAKG,aAAe,QAAM,IAQ3D,OALInI,IACFkE,EAASkE,EAA+BA,gCAAClE,EAAQmD,IACjDnD,EAASmE,EAAsBA,uBAACnE,EAAQwD,KAGnCxD,CACT,GAAG,CACD0D,GACA/F,EACA7B,EACAqH,GACAK,KAGIY,GAAcpH,EAAAA,SAAQ,WAC1B,OAAKJ,EACAX,IACEA,GAAMoI,MAAK,SAAA3E,GAAC,OAAIA,EAAEC,KAAO/C,EAAmB+C,EAAE,KADlC/C,EADa,IAGlC,GAAG,CAACA,EAAoBX,KAElBqI,GAAuB1I,uBAAoB,SAAAC,GAAK,OAAIA,EAAMyI,wBAE1DC,GAAmBC,EAAAA,wBAAwB,CAC/ChJ,eAAAA,EACA8I,qBAAAA,GACAG,YAA0B,QAAfvJ,EAAEe,gBAAAA,GAAOqC,cAAM,IAAApD,EAAAA,EAAI,EAC9BwJ,cAA0C,QAA7BvJ,EAAEgE,gBAAAA,GAAqBb,cAAM,IAAAnD,EAAAA,EAAI,EAC9CkD,mBAAAA,EACA0E,wBAAyBA,IAA2BM,IAAyBI,GAC7E7E,sBAAAA,GACAK,wBAAAA,KAGF,MAAO,CACLhD,MAAAA,GACAmI,YAAAA,GACArH,kBAAAA,EACAoC,oBAAAA,GACA2B,aAAAA,GACAC,gBAAAA,GACAE,SAAAA,GACAC,YAAAA,GACAC,WAAAA,GACAC,eAAAA,GACAC,cAAAA,GACAC,2BAAAA,GACAkB,YAAAA,GACAE,eAAAA,GACAO,eAAAA,GACAsB,iBAAAA,GACAlG,mBAAAA,EACAV,UAAAA,EACAC,iBAAAA,EACAyC,gBAAAA,GACA1B,YAAAA,GACAO,mBAAAA,GACArB,eAAAA,EACAuF,0BAAAA,GAEJ"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/regenerator"),t=require("react"),s=require("zustand"),i=require("../../stores/viewport-store/ViewportStoreContext.js");require("lodash"),require("../../stores/picker-props-store/PickerPropsStoreContext.js"),require("@babel/runtime/helpers/defineProperty"),require("@babel/runtime/helpers/objectWithoutProperties"),require("../../viewport/ViewportProvider.js");var l=require("../../stores/utils/useContextOrThrow.js");require("../../viewport/ViewportContext.js"),require("react/jsx-runtime");var n=require("../../stores/picker-props-store/usePickerPropsStore.js"),u=require("../../stores/filter-store/useFilterStore.js");require("@babel/runtime/helpers/toConsumableArray"),require("uuid"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../../clients/jsonApi/index.js"),require("../../../../clients/subscriptions/constants.js"),require("../../../../clients/subscriptions.v1.js"),require("../../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../../clients/api/apiCore.js"),require("../../../../clients/constants.js"),require("../../../../clients/sso/auth0.js"),require("../../../../clients/sso/oauth2.js"),require("../../../../clients/api/rateLimiter.js");var o=require("../../api/shared/fetchers/getAllAssets.js");require("../../constants.js"),require("../../api/shared/dataFormatter.js"),require("@babel/runtime/helpers/slicedToArray");var a=require("../useAllWellsCache/useAllWellsCache.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var p=c(e),d=c(r);exports.useLoadAllWellsCallback=function(e,r){var c=l.useContextOrThrow(i.ViewportStoreContext),b=s.useStore(c,(function(e){return e.addWellsToTile})),q=n.usePickerPropsStore((function(e){return e.addWellsUsabilityInfo})),f=n.usePickerPropsStore((function(e){return e.setAllWellsLoadProgress})),h=n.usePickerPropsStore((function(e){return e.segment})),j=u.useFilterStore((function(e){var r;return null!==(r=e.filters.companyId)&&void 0!==r?r:null})),v=u.useFilterStore((function(e){var r;return null===(r=e.filters.drillingWells)||void 0===r||r})),m="drilling"===h&&v,C=a.useAllWellsCache(),g=C.getCachedWellIds,x=C.setCachedWellIds,k=C.clearCache;return{loadAllWells:t.useCallback(p.default(d.default.mark((function t(){var s,i,l,n,u,a,p;return d.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(null===(s=e.current)||void 0===s||s.abort(),e.current=new AbortController,i=e.current.signal,t.prev=3,null===(l=g())){t.next=12;break}if(n=c.getState(),(u=l.map((function(e){return n.wells.get(e)})).filter((function(e){return void 0!==e}))).length!==l.length){t.next=12;break}return f({loaded:u.length,isComplete:!0}),r.current=!0,t.abrupt("return");case 12:return f({loaded:0,isComplete:!1}),t.next=15,o.getAllAssets(j,{signal:i,onProgress:f,drillingWells:m});case 15:if(a=t.sent,!i.aborted){t.next=18;break}return t.abrupt("return");case 18:return t.next=20,q(a);case 20:if(p=t.sent,!i.aborted){t.next=23;break}return t.abrupt("return");case 23:b("all-wells",p),x(p.map((function(e){return e.id}))),f({loaded:p.length,isComplete:!0}),r.current=!0,t.next=35;break;case 29:if(t.prev=29,t.t0=t.catch(3),"AbortError"!==(null===t.t0||void 0===t.t0?void 0:t.t0.name)){t.next=33;break}return t.abrupt("return");case 33:console.error("Failed to load all wells:",t.t0),f(null);case 35:case"end":return t.stop()}}),t,null,[[3,29]])}))),[c,e,r,b,q,j,m,g,x,f]),store:c,clearCache:k}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/regenerator"),t=require("react"),s=require("zustand"),l=require("../../stores/viewport-store/ViewportStoreContext.js");require("lodash"),require("../../stores/picker-props-store/PickerPropsStoreContext.js"),require("@babel/runtime/helpers/defineProperty"),require("@babel/runtime/helpers/objectWithoutProperties"),require("../../viewport/ViewportProvider.js");var i=require("../../stores/utils/useContextOrThrow.js");require("../../viewport/ViewportContext.js"),require("react/jsx-runtime");var n=require("../../stores/picker-props-store/usePickerPropsStore.js"),o=require("../../stores/filter-store/useFilterStore.js");require("@babel/runtime/helpers/toConsumableArray"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../../clients/jsonApi/index.js"),require("../../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../../clients/api/apiCore.js"),require("../../../../clients/constants.js"),require("../../../../clients/sso/auth0.js"),require("../../../../clients/sso/oauth2.js"),require("../../../../clients/api/rateLimiter.js");var u=require("../../api/shared/fetchers/getAllAssets.js");require("../../constants.js"),require("../../api/shared/dataFormatter.js"),require("@babel/runtime/helpers/slicedToArray");var a=require("../useAllWellsCache/useAllWellsCache.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=c(e),p=c(r);exports.useLoadAllWellsCallback=function(e,r){var c=i.useContextOrThrow(l.ViewportStoreContext),b=s.useStore(c,(function(e){return e.addWellsToTile})),f=n.usePickerPropsStore((function(e){return e.addWellsUsabilityInfo})),q=n.usePickerPropsStore((function(e){return e.setAllWellsLoadProgress})),h=n.usePickerPropsStore((function(e){return e.segment})),v=o.useFilterStore((function(e){var r;return null!==(r=e.filters.companyId)&&void 0!==r?r:null})),j=o.useFilterStore((function(e){var r;return null===(r=e.filters.drillingWells)||void 0===r||r})),m="drilling"===h&&j,C=a.useAllWellsCache(),g=C.getCachedWellIds,x=C.setCachedWellIds,k=C.clearCache;return{loadAllWells:t.useCallback(d.default(p.default.mark((function t(){var s,l,i,n,o,a,d;return p.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(null===(s=e.current)||void 0===s||s.abort(),e.current=new AbortController,l=e.current.signal,t.prev=3,null===(i=g())){t.next=12;break}if(n=c.getState(),(o=i.map((function(e){return n.wells.get(e)})).filter((function(e){return void 0!==e}))).length!==i.length){t.next=12;break}return q({loaded:o.length,isComplete:!0}),r.current=!0,t.abrupt("return");case 12:return q({loaded:0,isComplete:!1}),t.next=15,u.getAllAssets(v,{signal:l,onProgress:q,drillingWells:m});case 15:if(a=t.sent,!l.aborted){t.next=18;break}return t.abrupt("return");case 18:return t.next=20,f(a);case 20:if(d=t.sent,!l.aborted){t.next=23;break}return t.abrupt("return");case 23:b("all-wells",d),x(d.map((function(e){return e.id}))),q({loaded:d.length,isComplete:!0}),r.current=!0,t.next=35;break;case 29:if(t.prev=29,t.t0=t.catch(3),"AbortError"!==(null===t.t0||void 0===t.t0?void 0:t.t0.name)){t.next=33;break}return t.abrupt("return");case 33:console.error("Failed to load all wells:",t.t0),q(null);case 35:case"end":return t.stop()}}),t,null,[[3,29]])}))),[c,e,r,b,f,v,m,g,x,q]),store:c,clearCache:k}};
2
2
  //# sourceMappingURL=useLoadAllWellsCallback.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLoadAllWellsCallback.js","sources":["../../../../../../src/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.ts"],"sourcesContent":["import { useCallback, type MutableRefObject } from 'react';\nimport { useStore, type StoreApi } from 'zustand';\n\nimport { ViewportStoreContext } from '../../stores/viewport-store/ViewportStoreContext';\nimport { usePickerPropsStore } from '../../stores/picker-props-store';\nimport { useFilterStore } from '../../stores/filter-store/useFilterStore';\nimport { useContextOrThrow } from '../../stores/utils/useContextOrThrow';\nimport { getAllAssets } from '../../api';\nimport { useAllWellsCache } from '../useAllWellsCache';\nimport type { OffsetWell } from '../../OffsetWellPickerV5.types';\nimport type { ViewportStore } from '../../stores/viewport-store/createViewportStore';\n\nconst ALL_WELLS_TILE_KEY = 'all-wells' as `${number}/${number}/${number}`;\n\ntype UseLoadAllWellsCallbackResult = {\n loadAllWells: () => Promise<void>;\n store: StoreApi<ViewportStore>;\n clearCache: () => void;\n};\n\nexport const useLoadAllWellsCallback = (\n abortControllerRef: MutableRefObject<AbortController | null>,\n hasLoadedRef: MutableRefObject<boolean>\n): UseLoadAllWellsCallbackResult => {\n const store = useContextOrThrow(ViewportStoreContext);\n\n const addWellsToTile = useStore(store, state => state.addWellsToTile);\n const addWellsUsabilityInfo = usePickerPropsStore(state => state.addWellsUsabilityInfo);\n const setAllWellsLoadProgress = usePickerPropsStore(state => state.setAllWellsLoadProgress);\n const segment = usePickerPropsStore(state => state.segment);\n const companyIds = useFilterStore(state => state.filters.companyId ?? null);\n const rawDrillingWells = useFilterStore(state => state.filters.drillingWells ?? true);\n const drillingWells = segment === 'drilling' ? rawDrillingWells : false;\n\n const { getCachedWellIds, setCachedWellIds, clearCache } = useAllWellsCache();\n\n const loadAllWells = useCallback(async () => {\n abortControllerRef.current?.abort();\n // eslint-disable-next-line no-param-reassign\n abortControllerRef.current = new AbortController();\n\n const { signal } = abortControllerRef.current;\n\n try {\n const cachedWellIds = getCachedWellIds();\n\n if (cachedWellIds !== null) {\n const storeState = store.getState();\n const cachedWells = cachedWellIds\n .map(id => storeState.wells.get(id))\n .filter((w): w is OffsetWell => w !== undefined);\n\n if (cachedWells.length === cachedWellIds.length) {\n setAllWellsLoadProgress({ loaded: cachedWells.length, isComplete: true });\n // eslint-disable-next-line no-param-reassign\n hasLoadedRef.current = true;\n return;\n }\n }\n\n setAllWellsLoadProgress({ loaded: 0, isComplete: false });\n\n const rawWells = await getAllAssets(companyIds, {\n signal,\n onProgress: setAllWellsLoadProgress,\n drillingWells,\n });\n\n if (signal.aborted) {\n return;\n }\n\n const processedWells = (await addWellsUsabilityInfo(\n rawWells as OffsetWell[]\n )) as OffsetWell[];\n\n if (signal.aborted) {\n return;\n }\n\n addWellsToTile(ALL_WELLS_TILE_KEY, processedWells);\n setCachedWellIds(processedWells.map(w => w.id));\n setAllWellsLoadProgress({ loaded: processedWells.length, isComplete: true });\n // eslint-disable-next-line no-param-reassign\n hasLoadedRef.current = true;\n } catch (error) {\n if ((error as Error)?.name === 'AbortError') {\n return;\n }\n\n console.error('Failed to load all wells:', error);\n setAllWellsLoadProgress(null);\n }\n }, [\n store,\n abortControllerRef,\n hasLoadedRef,\n addWellsToTile,\n addWellsUsabilityInfo,\n companyIds,\n drillingWells,\n getCachedWellIds,\n setCachedWellIds,\n setAllWellsLoadProgress,\n ]);\n\n return { loadAllWells, store, clearCache };\n};\n"],"names":["abortControllerRef","hasLoadedRef","store","useContextOrThrow","ViewportStoreContext","addWellsToTile","useStore","state","addWellsUsabilityInfo","usePickerPropsStore","setAllWellsLoadProgress","segment","companyIds","useFilterStore","_state$filters$compan","filters","companyId","rawDrillingWells","_state$filters$drilli","drillingWells","_useAllWellsCache","useAllWellsCache","getCachedWellIds","setCachedWellIds","clearCache","loadAllWells","useCallback","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_abortControllerRef$c","signal","cachedWellIds","storeState","cachedWells","rawWells","processedWells","wrap","_context","prev","next","current","abort","AbortController","getState","map","id","wells","get","filter","w","undefined","length","loaded","isComplete","abrupt","getAllAssets","onProgress","sent","aborted","t0","name","console","error","stop"],"mappings":"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"}
1
+ {"version":3,"file":"useLoadAllWellsCallback.js","sources":["../../../../../../src/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.ts"],"sourcesContent":["import { useCallback, type MutableRefObject } from 'react';\nimport { useStore, type StoreApi } from 'zustand';\n\nimport { ViewportStoreContext } from '../../stores/viewport-store/ViewportStoreContext';\nimport { usePickerPropsStore } from '../../stores/picker-props-store';\nimport { useFilterStore } from '../../stores/filter-store/useFilterStore';\nimport { useContextOrThrow } from '../../stores/utils/useContextOrThrow';\nimport { getAllAssets } from '../../api';\nimport { useAllWellsCache } from '../useAllWellsCache';\nimport type { OffsetWell } from '../../OffsetWellPickerV5.types';\nimport type { ViewportStore } from '../../stores/viewport-store/createViewportStore';\n\nconst ALL_WELLS_TILE_KEY = 'all-wells' as `${number}/${number}/${number}`;\n\ntype UseLoadAllWellsCallbackResult = {\n loadAllWells: () => Promise<void>;\n store: StoreApi<ViewportStore>;\n clearCache: () => void;\n};\n\nexport const useLoadAllWellsCallback = (\n abortControllerRef: MutableRefObject<AbortController | null>,\n hasLoadedRef: MutableRefObject<boolean>\n): UseLoadAllWellsCallbackResult => {\n const store = useContextOrThrow(ViewportStoreContext);\n\n const addWellsToTile = useStore(store, state => state.addWellsToTile);\n const addWellsUsabilityInfo = usePickerPropsStore(state => state.addWellsUsabilityInfo);\n const setAllWellsLoadProgress = usePickerPropsStore(state => state.setAllWellsLoadProgress);\n const segment = usePickerPropsStore(state => state.segment);\n const companyIds = useFilterStore(state => state.filters.companyId ?? null);\n const rawDrillingWells = useFilterStore(state => state.filters.drillingWells ?? true);\n const drillingWells = segment === 'drilling' ? rawDrillingWells : false;\n\n const { getCachedWellIds, setCachedWellIds, clearCache } = useAllWellsCache();\n\n const loadAllWells = useCallback(async () => {\n abortControllerRef.current?.abort();\n // eslint-disable-next-line no-param-reassign\n abortControllerRef.current = new AbortController();\n\n const { signal } = abortControllerRef.current;\n\n try {\n const cachedWellIds = getCachedWellIds();\n\n if (cachedWellIds !== null) {\n const storeState = store.getState();\n const cachedWells = cachedWellIds\n .map(id => storeState.wells.get(id))\n .filter((w): w is OffsetWell => w !== undefined);\n\n if (cachedWells.length === cachedWellIds.length) {\n setAllWellsLoadProgress({ loaded: cachedWells.length, isComplete: true });\n // eslint-disable-next-line no-param-reassign\n hasLoadedRef.current = true;\n return;\n }\n }\n\n setAllWellsLoadProgress({ loaded: 0, isComplete: false });\n\n const rawWells = await getAllAssets(companyIds, {\n signal,\n onProgress: setAllWellsLoadProgress,\n drillingWells,\n });\n\n if (signal.aborted) {\n return;\n }\n\n const processedWells = (await addWellsUsabilityInfo(\n rawWells as OffsetWell[]\n )) as OffsetWell[];\n\n if (signal.aborted) {\n return;\n }\n\n addWellsToTile(ALL_WELLS_TILE_KEY, processedWells);\n setCachedWellIds(processedWells.map(w => w.id));\n setAllWellsLoadProgress({ loaded: processedWells.length, isComplete: true });\n // eslint-disable-next-line no-param-reassign\n hasLoadedRef.current = true;\n } catch (error) {\n if ((error as Error)?.name === 'AbortError') {\n return;\n }\n\n console.error('Failed to load all wells:', error);\n setAllWellsLoadProgress(null);\n }\n }, [\n store,\n abortControllerRef,\n hasLoadedRef,\n addWellsToTile,\n addWellsUsabilityInfo,\n companyIds,\n drillingWells,\n getCachedWellIds,\n setCachedWellIds,\n setAllWellsLoadProgress,\n ]);\n\n return { loadAllWells, store, clearCache };\n};\n"],"names":["abortControllerRef","hasLoadedRef","store","useContextOrThrow","ViewportStoreContext","addWellsToTile","useStore","state","addWellsUsabilityInfo","usePickerPropsStore","setAllWellsLoadProgress","segment","companyIds","useFilterStore","_state$filters$compan","filters","companyId","rawDrillingWells","_state$filters$drilli","drillingWells","_useAllWellsCache","useAllWellsCache","getCachedWellIds","setCachedWellIds","clearCache","loadAllWells","useCallback","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_abortControllerRef$c","signal","cachedWellIds","storeState","cachedWells","rawWells","processedWells","wrap","_context","prev","next","current","abort","AbortController","getState","map","id","wells","get","filter","w","undefined","length","loaded","isComplete","abrupt","getAllAssets","onProgress","sent","aborted","t0","name","console","error","stop"],"mappings":"wlDAoBuC,SACrCA,EACAC,GAEA,IAAMC,EAAQC,oBAAkBC,EAAAA,sBAE1BC,EAAiBC,EAAAA,SAASJ,GAAO,SAAAK,GAAK,OAAIA,EAAMF,kBAChDG,EAAwBC,uBAAoB,SAAAF,GAAK,OAAIA,EAAMC,yBAC3DE,EAA0BD,uBAAoB,SAAAF,GAAK,OAAIA,EAAMG,2BAC7DC,EAAUF,uBAAoB,SAAAF,GAAK,OAAIA,EAAMI,WAC7CC,EAAaC,kBAAe,SAAAN,GAAK,IAAAO,EAAA,eAAAA,EAAIP,EAAMQ,QAAQC,yBAAa,QAChEC,EAAmBJ,kBAAe,SAAAN,GAAK,IAAAW,EAAA,eAAAA,EAAIX,EAAMQ,QAAQI,iCACzDA,EAA4B,aAAZR,GAAyBM,EAE/CG,EAA2DC,EAAAA,mBAAnDC,IAAAA,iBAAkBC,IAAAA,iBAAkBC,IAAAA,WAwE5C,MAAO,CAAEC,aAtEYC,EAAAA,YAAYC,EAAAA,QAAAC,EAAAA,QAAAC,MAAA,SAAAC,IAAA,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAT,UAAAU,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAQW,GAP1C,QAAAV,EAAA/B,EAAmB0C,eAAnB,IAAAX,GAAAA,EAA4BY,QAE5B3C,EAAmB0C,QAAU,IAAIE,gBAEzBZ,EAAWhC,EAAmB0C,QAA9BV,OAAMO,EAAAC,KAAA,EAKU,QAFhBP,EAAgBX,KAEI,CAAAiB,EAAAE,KAAA,GAAA,KAAA,CAI0B,GAH5CP,EAAahC,EAAM2C,YACnBV,EAAcF,EACjBa,KAAI,SAAAC,GAAE,OAAIb,EAAWc,MAAMC,IAAIF,EAAG,IAClCG,QAAO,SAACC,GAAC,YAA4BC,IAAND,MAElBE,SAAWpB,EAAcoB,OAAM,CAAAd,EAAAE,KAAA,GAAA,KAAA,CAGjB,OAF5B/B,EAAwB,CAAE4C,OAAQnB,EAAYkB,OAAQE,YAAY,IAElEtD,EAAayC,SAAU,EAAKH,EAAAiB,OAAA,UAAA,KAAA,GAK0B,OAA1D9C,EAAwB,CAAE4C,OAAQ,EAAGC,YAAY,IAAShB,EAAAE,KAAA,GAEnCgB,EAAAA,aAAa7C,EAAY,CAC9CoB,OAAAA,EACA0B,WAAYhD,EACZS,cAAAA,IACA,KAAA,GAJY,GAARiB,EAAQG,EAAAoB,MAMV3B,EAAO4B,QAAO,CAAArB,EAAAE,KAAA,GAAA,KAAA,CAAA,OAAAF,EAAAiB,OAAA,UAAA,KAAA,GAAA,OAAAjB,EAAAE,KAAA,GAIYjC,EAC5B4B,GACD,KAAA,GAFmB,GAAdC,EAAcE,EAAAoB,MAIhB3B,EAAO4B,QAAO,CAAArB,EAAAE,KAAA,GAAA,KAAA,CAAA,OAAAF,EAAAiB,OAAA,UAAA,KAAA,GAIlBnD,EApEqB,YAoEcgC,GACnCd,EAAiBc,EAAeS,KAAI,SAAAK,GAAC,OAAIA,EAAEJ,EAAE,KAC7CrC,EAAwB,CAAE4C,OAAQjB,EAAegB,OAAQE,YAAY,IAErEtD,EAAayC,SAAU,EAAKH,EAAAE,KAAA,GAAA,MAAA,KAAA,GAAA,GAAAF,EAAAC,KAAA,GAAAD,EAAAsB,GAAAtB,EAAA,MAAA,GAEG,gBAA3B,OAAAA,EAAAsB,SAAA,IAAAtB,EAAAsB,QAAA,EAAAtB,EAAAsB,GAAkBC,MAAqB,CAAAvB,EAAAE,KAAA,GAAA,KAAA,CAAA,OAAAF,EAAAiB,OAAA,UAAA,KAAA,GAI3CO,QAAQC,MAAM,4BAAmCzB,EAAAsB,IACjDnD,EAAwB,MAAM,KAAA,GAAA,IAAA,MAAA,OAAA6B,EAAA0B,OAAA,GAAAnC,EAAA,KAAA,CAAA,CAAA,EAAA,KAEjC,KAAE,CACD5B,EACAF,EACAC,EACAI,EACAG,EACAI,EACAO,EACAG,EACAC,EACAb,IAGqBR,MAAAA,EAAOsB,WAAAA,EAChC"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/helpers/slicedToArray"),i=require("@babel/runtime/regenerator"),s=require("react");require("lodash"),require("@babel/runtime/helpers/toConsumableArray"),require("@babel/runtime/helpers/defineProperty"),require("uuid"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../clients/jsonApi/index.js"),require("../../../clients/subscriptions/constants.js"),require("../../../clients/subscriptions.v1.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js"),require("../../../clients/api/rateLimiter.js");var t=require("../api/companies/fetchCompanies.js");require("../constants.js"),require("../api/shared/dataFormatter.js");var n=require("./useCompanySelectorPermission.js");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=a(e),o=a(r),c=a(i);exports.useCompanies=function(e){var r=e.open,i=s.useState([]),a=o.default(i,2),l=a[0],p=a[1],q=n.useCompanySelectorPermission(),m=q.canViewCompanies,f=q.canViewCompaniesLoading;return s.useEffect((function(){function e(){return(e=u.default(c.default.mark((function e(){var r;return c.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.fetchCompanies();case 2:r=e.sent,p(r);case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}m&&r&&0===l.length&&function(){e.apply(this,arguments)}()}),[m,l.length,r]),{canViewCompanies:m,canViewCompaniesLoading:f,companies:l}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/helpers/slicedToArray"),i=require("@babel/runtime/regenerator"),s=require("react");require("lodash"),require("@babel/runtime/helpers/toConsumableArray"),require("@babel/runtime/helpers/defineProperty"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../clients/jsonApi/index.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js"),require("../../../clients/api/rateLimiter.js");var t=require("../api/companies/fetchCompanies.js");require("../constants.js"),require("../api/shared/dataFormatter.js");var n=require("./useCompanySelectorPermission.js");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=a(e),o=a(r),c=a(i);exports.useCompanies=function(e){var r=e.open,i=s.useState([]),a=o.default(i,2),l=a[0],p=a[1],m=n.useCompanySelectorPermission(),f=m.canViewCompanies,q=m.canViewCompaniesLoading;return s.useEffect((function(){function e(){return(e=u.default(c.default.mark((function e(){var r;return c.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.fetchCompanies();case 2:r=e.sent,p(r);case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}f&&r&&0===l.length&&function(){e.apply(this,arguments)}()}),[f,l.length,r]),{canViewCompanies:f,canViewCompaniesLoading:q,companies:l}};
2
2
  //# sourceMappingURL=useCompanies.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCompanies.js","sources":["../../../../../src/components/OffsetWellPickerV5/hooks/useCompanies.ts"],"sourcesContent":["import { useState, useEffect } from 'react';\n\nimport type { Company } from '../stores/company-safeguard/CompanySafeguardContext';\nimport { fetchCompanies } from '../api';\n\nimport { useCompanySelectorPermission } from './useCompanySelectorPermission';\n\ntype UseCompaniesParams = {\n open: boolean | undefined;\n};\n\ntype UseCompaniesResult = {\n canViewCompanies: boolean;\n canViewCompaniesLoading: boolean;\n companies: Company[];\n};\n\nexport const useCompanies = ({ open }: UseCompaniesParams): UseCompaniesResult => {\n const [companies, setCompanies] = useState<Company[]>([]);\n const { canViewCompanies, canViewCompaniesLoading } = useCompanySelectorPermission();\n\n useEffect(() => {\n async function handleFetchCompanies() {\n const data = await fetchCompanies();\n setCompanies(data);\n }\n\n if (canViewCompanies && open && companies.length === 0) {\n handleFetchCompanies();\n }\n // TODO: Check reference stability\n }, [canViewCompanies, companies.length, open]);\n\n return { canViewCompanies, canViewCompaniesLoading, companies };\n};\n"],"names":["_ref","open","useState","_useState2","_slicedToArray","_useState","companies","setCompanies","_useCompanySelectorPe","useCompanySelectorPermission","canViewCompanies","canViewCompaniesLoading","useEffect","_handleFetchCompanies","_asyncToGenerator","_regeneratorRuntime","mark","_callee","data","wrap","_context","prev","next","fetchCompanies","sent","stop","apply","this","arguments","length","handleFetchCompanies"],"mappings":"6pCAiB4B,SAAsDA,GAAA,IAAnDC,IAAAA,KACKC,EAAAA,EAAQA,SAAY,IAAGC,EAAAC,EAAAA,QAAAC,EAAA,GAAlDC,EAASH,EAAA,GAAEI,EAAYJ,EAAA,GAC9BK,EAAsDC,EAAAA,+BAA9CC,IAAAA,iBAAkBC,IAAAA,wBAc1B,OAZAC,EAAAA,WAAU,WAC2B,SAAAC,IAGlC,OAHkCA,EAAnCC,EAAAA,QAAAC,EAAAA,QAAAC,MAAA,SAAAC,IAAA,IAAAC,EAAA,OAAAH,UAAAI,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,OAAAF,EAAAE,KAAA,EACqBC,EAAcA,iBAAE,KAAA,EAA7BL,EAAIE,EAAAI,KACVjB,EAAaW,GAAM,KAAA,EAAA,IAAA,MAAA,OAAAE,EAAAK,OAAA,GAAAR,EACpB,MAAAS,MAAAC,KAAAC,UAAA,CAEGlB,GAAoBT,GAA6B,IAArBK,EAAUuB,QAN5B,WACqBhB,EAAAa,MAAAC,KAAAC,UAAA,CAMjCE,EAGH,GAAE,CAACpB,EAAkBJ,EAAUuB,OAAQ5B,IAEjC,CAAES,iBAAAA,EAAkBC,wBAAAA,EAAyBL,UAAAA,EACtD"}
1
+ {"version":3,"file":"useCompanies.js","sources":["../../../../../src/components/OffsetWellPickerV5/hooks/useCompanies.ts"],"sourcesContent":["import { useState, useEffect } from 'react';\n\nimport type { Company } from '../stores/company-safeguard/CompanySafeguardContext';\nimport { fetchCompanies } from '../api';\n\nimport { useCompanySelectorPermission } from './useCompanySelectorPermission';\n\ntype UseCompaniesParams = {\n open: boolean | undefined;\n};\n\ntype UseCompaniesResult = {\n canViewCompanies: boolean;\n canViewCompaniesLoading: boolean;\n companies: Company[];\n};\n\nexport const useCompanies = ({ open }: UseCompaniesParams): UseCompaniesResult => {\n const [companies, setCompanies] = useState<Company[]>([]);\n const { canViewCompanies, canViewCompaniesLoading } = useCompanySelectorPermission();\n\n useEffect(() => {\n async function handleFetchCompanies() {\n const data = await fetchCompanies();\n setCompanies(data);\n }\n\n if (canViewCompanies && open && companies.length === 0) {\n handleFetchCompanies();\n }\n // TODO: Check reference stability\n }, [canViewCompanies, companies.length, open]);\n\n return { canViewCompanies, canViewCompaniesLoading, companies };\n};\n"],"names":["_ref","open","useState","_useState2","_slicedToArray","_useState","companies","setCompanies","_useCompanySelectorPe","useCompanySelectorPermission","canViewCompanies","canViewCompaniesLoading","useEffect","_handleFetchCompanies","_asyncToGenerator","_regeneratorRuntime","mark","_callee","data","wrap","_context","prev","next","fetchCompanies","sent","stop","apply","this","arguments","length","handleFetchCompanies"],"mappings":"siCAiB4B,SAAsDA,GAAA,IAAnDC,IAAAA,KACKC,EAAAA,EAAQA,SAAY,IAAGC,EAAAC,EAAAA,QAAAC,EAAA,GAAlDC,EAASH,EAAA,GAAEI,EAAYJ,EAAA,GAC9BK,EAAsDC,EAAAA,+BAA9CC,IAAAA,iBAAkBC,IAAAA,wBAc1B,OAZAC,EAAAA,WAAU,WAC2B,SAAAC,IAGlC,OAHkCA,EAAnCC,EAAAA,QAAAC,EAAAA,QAAAC,MAAA,SAAAC,IAAA,IAAAC,EAAA,OAAAH,UAAAI,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,OAAAF,EAAAE,KAAA,EACqBC,EAAcA,iBAAE,KAAA,EAA7BL,EAAIE,EAAAI,KACVjB,EAAaW,GAAM,KAAA,EAAA,IAAA,MAAA,OAAAE,EAAAK,OAAA,GAAAR,EACpB,MAAAS,MAAAC,KAAAC,UAAA,CAEGlB,GAAoBT,GAA6B,IAArBK,EAAUuB,QAN5B,WACqBhB,EAAAa,MAAAC,KAAAC,UAAA,CAMjCE,EAGH,GAAE,CAACpB,EAAkBJ,EAAUuB,OAAQ5B,IAEjC,CAAES,iBAAAA,EAAkBC,wBAAAA,EAAyBL,UAAAA,EACtD"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/toConsumableArray"),r=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/asyncToGenerator"),s=require("@babel/runtime/helpers/slicedToArray"),l=require("@babel/runtime/regenerator"),n=require("react"),u=require("lodash");require("uuid"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../clients/jsonApi/index.js"),require("../../../clients/subscriptions/constants.js"),require("../../../clients/subscriptions.v1.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js"),require("../../../clients/api/rateLimiter.js");var a=require("../constants.js");require("../api/shared/dataFormatter.js");var i=require("../api/external-offsets/fetchOffsetWellSelectionAppOffsets.js"),o=require("../api/external-offsets/fetchWellhubSettingsOffsets.js");require("zustand"),require("../stores/picker-props-store/PickerPropsStoreContext.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("../viewport/ViewportProvider.js"),require("../viewport/ViewportContext.js"),require("react/jsx-runtime");var c=require("../stores/picker-props-store/usePickerPropsStore.js"),f=require("../utils/classifyBicSourceBuckets.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var p=d(e),b=d(r),S=d(t),v=d(s),O=d(l);function w(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);r&&(s=s.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,s)}return t}function q(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?w(Object(t),!0).forEach((function(r){b.default(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):w(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}var h={wellSections:null,offsetWellsBySection:null,taScores:[],idasWellIds:[],owsWellIds:[],wellhubWellIds:[],loadedAssetId:null};exports.useExternalOffsets=function(e,r){var t=c.usePickerPropsStore((function(e){return e.isWDUser})),s=c.usePickerPropsStore((function(e){return e.isManualWellsEnabled})),l=n.useState(h),d=v.default(l,2),w=d[0],I=d[1],j=n.useCallback(S.default(O.default.mark((function t(){var l,n,o,c,d,S,v,w,j,W,m,y,L,_,E,x,k,A,P,C,B;return O.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e&&r){t.next=2;break}return t.abrupt("return");case 2:return t.prev=2,t.next=5,i.fetchOffsetWellSelectionAppOffsets(e);case 5:if(c=t.sent,d=null!==(l=null===(n=c[0])||void 0===n?void 0:n.data)&&void 0!==l?l:null,S=null!=d&&d.filters?JSON.parse(d.filters):null,v=null!=d&&d.result?JSON.parse(d.result):null,w=s&&null!=d&&d.manual_wells?JSON.parse(d.manual_wells):[],j=s&&null!=d&&d.ta_scores?JSON.parse(d.ta_scores):null,S&&v){t.next=20;break}if(w.length){t.next=15;break}return I(q(q({},h),{},{wellSections:[],offsetWellsBySection:{}})),t.abrupt("return");case 15:return W=u.uniq([e].concat(p.default(w))),m=w.map((function(e,r){var t;return{wellId:e,taScore:null!==(t=null==j?void 0:j[r])&&void 0!==t?t:""}})),y=f.classifyBicSourceBuckets({resultSectionIds:[],manualWellIds:w,assetId:e}),L=y.idasWellIds,_=y.owsWellIds,I({wellSections:[],offsetWellsBySection:b.default({},a.ALL_SECTION_KEY,W),taScores:m,idasWellIds:L,owsWellIds:_,wellhubWellIds:[],loadedAssetId:e}),t.abrupt("return");case 20:E=(null===(o=S.filterTabs)||void 0===o?void 0:o.map((function(e,r){return{value:e.value,label:e.name,color:a.WellSectionColors[r]}})))||[],x=[e],k=E.reduce((function(r,t){var s=t.value,l=v[s]||[],n=u.uniq(l.concat(e));return x=x.concat(n),q(q({},r),{},b.default({},s,n))}),{}),A=[],w.length&&(x=x.concat(w),A=w.map((function(e,r){var t;return{wellId:e,taScore:null!==(t=null==j?void 0:j[r])&&void 0!==t?t:""}}))),k[a.ALL_SECTION_KEY]=u.uniq(x),P=f.classifyBicSourceBuckets({resultSectionIds:E.map((function(e){var r=e.value;return v[r]||[]})),manualWellIds:w,assetId:e}),C=P.idasWellIds,B=P.owsWellIds,I({wellSections:[{value:a.ALL_SECTION_KEY,label:a.ALL_SECTION_LABEL}].concat(p.default(E)),offsetWellsBySection:k,taScores:A,idasWellIds:C,owsWellIds:B,wellhubWellIds:[],loadedAssetId:e}),t.next=34;break;case 30:t.prev=30,t.t0=t.catch(2),console.error("Offset well selection fetch error: ",t.t0),I(q(q({},h),{},{wellSections:[],offsetWellsBySection:{}}));case 34:case"end":return t.stop()}}),t,null,[[2,30]])}))),[e,r,s]),W=n.useCallback(S.default(O.default.mark((function t(){var s,l,n,i;return O.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e&&r){t.next=2;break}return t.abrupt("return");case 2:return t.prev=2,t.next=5,o.fetchWellhubSettingsOffsets(e);case 5:s=t.sent,l=u.get(s[0],"data.offset_wells")||[],n=b.default({},a.ALL_SECTION_KEY,u.uniq(l.map((function(e){return e.id})).concat(e))),i=u.uniq(l.map((function(e){return e.id}))).filter((function(r){return r!==e})),I(q(q({},h),{},{wellSections:[{value:a.ALL_SECTION_KEY,label:a.ALL_SECTION_LABEL}],offsetWellsBySection:n,wellhubWellIds:i,loadedAssetId:e})),t.next=16;break;case 12:t.prev=12,t.t0=t.catch(2),console.error("Wellhub fetch error: ",t.t0),I(q(q({},h),{},{wellSections:[],offsetWellsBySection:{}}));case 16:case"end":return t.stop()}}),t,null,[[2,12]])}))),[e,r]),m=n.useCallback(S.default(O.default.mark((function e(){return O.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t){e.next=5;break}return e.next=3,j();case 3:e.next=7;break;case 5:return e.next=7,W();case 7:case"end":return e.stop()}}),e)}))),[t,j,W]);return n.useEffect((function(){e&&r?m():!e&&r&&I(q(q({},h),{},{wellSections:[{value:a.ALL_SECTION_KEY,label:a.ALL_SECTION_LABEL}],offsetWellsBySection:b.default({},a.ALL_SECTION_KEY,[])}))}),[e,r,m]),{offsets:w,setOffsets:I,loadExternalOffsets:m}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/toConsumableArray"),r=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/asyncToGenerator"),s=require("@babel/runtime/helpers/slicedToArray"),l=require("@babel/runtime/regenerator"),n=require("react"),u=require("lodash");require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../clients/jsonApi/index.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js"),require("../../../clients/api/rateLimiter.js");var a=require("../constants.js");require("../api/shared/dataFormatter.js");var o=require("../api/external-offsets/fetchOffsetWellSelectionAppOffsets.js"),i=require("../api/external-offsets/fetchWellhubSettingsOffsets.js");require("zustand"),require("../stores/picker-props-store/PickerPropsStoreContext.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("../viewport/ViewportProvider.js"),require("../viewport/ViewportContext.js"),require("react/jsx-runtime");var c=require("../stores/picker-props-store/usePickerPropsStore.js"),f=require("../utils/classifyBicSourceBuckets.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var p=d(e),b=d(r),S=d(t),v=d(s),O=d(l);function w(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);r&&(s=s.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,s)}return t}function h(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?w(Object(t),!0).forEach((function(r){b.default(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):w(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}var I={wellSections:null,offsetWellsBySection:null,taScores:[],idasWellIds:[],owsWellIds:[],wellhubWellIds:[],loadedAssetId:null};exports.useExternalOffsets=function(e,r){var t=c.usePickerPropsStore((function(e){return e.isWDUser})),s=c.usePickerPropsStore((function(e){return e.isManualWellsEnabled})),l=n.useState(I),d=v.default(l,2),w=d[0],q=d[1],W=n.useCallback(S.default(O.default.mark((function t(){var l,n,i,c,d,S,v,w,W,j,m,y,L,_,E,x,k,A,P,C,B;return O.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e&&r){t.next=2;break}return t.abrupt("return");case 2:return t.prev=2,t.next=5,o.fetchOffsetWellSelectionAppOffsets(e);case 5:if(c=t.sent,d=null!==(l=null===(n=c[0])||void 0===n?void 0:n.data)&&void 0!==l?l:null,S=null!=d&&d.filters?JSON.parse(d.filters):null,v=null!=d&&d.result?JSON.parse(d.result):null,w=s&&null!=d&&d.manual_wells?JSON.parse(d.manual_wells):[],W=s&&null!=d&&d.ta_scores?JSON.parse(d.ta_scores):null,S&&v){t.next=20;break}if(w.length){t.next=15;break}return q(h(h({},I),{},{wellSections:[],offsetWellsBySection:{}})),t.abrupt("return");case 15:return j=u.uniq([e].concat(p.default(w))),m=w.map((function(e,r){var t;return{wellId:e,taScore:null!==(t=null==W?void 0:W[r])&&void 0!==t?t:""}})),y=f.classifyBicSourceBuckets({resultSectionIds:[],manualWellIds:w,assetId:e}),L=y.idasWellIds,_=y.owsWellIds,q({wellSections:[],offsetWellsBySection:b.default({},a.ALL_SECTION_KEY,j),taScores:m,idasWellIds:L,owsWellIds:_,wellhubWellIds:[],loadedAssetId:e}),t.abrupt("return");case 20:E=(null===(i=S.filterTabs)||void 0===i?void 0:i.map((function(e,r){return{value:e.value,label:e.name,color:a.WellSectionColors[r]}})))||[],x=[e],k=E.reduce((function(r,t){var s=t.value,l=v[s]||[],n=u.uniq(l.concat(e));return x=x.concat(n),h(h({},r),{},b.default({},s,n))}),{}),A=[],w.length&&(x=x.concat(w),A=w.map((function(e,r){var t;return{wellId:e,taScore:null!==(t=null==W?void 0:W[r])&&void 0!==t?t:""}}))),k[a.ALL_SECTION_KEY]=u.uniq(x),P=f.classifyBicSourceBuckets({resultSectionIds:E.map((function(e){var r=e.value;return v[r]||[]})),manualWellIds:w,assetId:e}),C=P.idasWellIds,B=P.owsWellIds,q({wellSections:[{value:a.ALL_SECTION_KEY,label:a.ALL_SECTION_LABEL}].concat(p.default(E)),offsetWellsBySection:k,taScores:A,idasWellIds:C,owsWellIds:B,wellhubWellIds:[],loadedAssetId:e}),t.next=34;break;case 30:t.prev=30,t.t0=t.catch(2),console.error("Offset well selection fetch error: ",t.t0),q(h(h({},I),{},{wellSections:[],offsetWellsBySection:{}}));case 34:case"end":return t.stop()}}),t,null,[[2,30]])}))),[e,r,s]),j=n.useCallback(S.default(O.default.mark((function t(){var s,l,n,o;return O.default.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e&&r){t.next=2;break}return t.abrupt("return");case 2:return t.prev=2,t.next=5,i.fetchWellhubSettingsOffsets(e);case 5:s=t.sent,l=u.get(s[0],"data.offset_wells")||[],n=b.default({},a.ALL_SECTION_KEY,u.uniq(l.map((function(e){return e.id})).concat(e))),o=u.uniq(l.map((function(e){return e.id}))).filter((function(r){return r!==e})),q(h(h({},I),{},{wellSections:[{value:a.ALL_SECTION_KEY,label:a.ALL_SECTION_LABEL}],offsetWellsBySection:n,wellhubWellIds:o,loadedAssetId:e})),t.next=16;break;case 12:t.prev=12,t.t0=t.catch(2),console.error("Wellhub fetch error: ",t.t0),q(h(h({},I),{},{wellSections:[],offsetWellsBySection:{}}));case 16:case"end":return t.stop()}}),t,null,[[2,12]])}))),[e,r]),m=n.useCallback(S.default(O.default.mark((function e(){return O.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t){e.next=5;break}return e.next=3,W();case 3:e.next=7;break;case 5:return e.next=7,j();case 7:case"end":return e.stop()}}),e)}))),[t,W,j]);return n.useEffect((function(){e&&r?m():!e&&r&&q(h(h({},I),{},{wellSections:[{value:a.ALL_SECTION_KEY,label:a.ALL_SECTION_LABEL}],offsetWellsBySection:b.default({},a.ALL_SECTION_KEY,[])}))}),[e,r,m]),{offsets:w,setOffsets:q,loadExternalOffsets:m}};
2
2
  //# sourceMappingURL=useExternalOffsets.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useExternalOffsets.js","sources":["../../../../../src/components/OffsetWellPickerV5/hooks/useExternalOffsets.ts"],"sourcesContent":["import { useCallback, useEffect, useState, type Dispatch, type SetStateAction } from 'react';\nimport { get, uniq } from 'lodash';\n\nimport { fetchOffsetWellSelectionAppOffsets, fetchWellhubSettingsOffsets } from '../api';\nimport { ALL_SECTION_KEY, ALL_SECTION_LABEL, WellSectionColors } from '../constants';\nimport { usePickerPropsStore } from '../stores/picker-props-store';\nimport { classifyBicSourceBuckets } from '../utils/classifyBicSourceBuckets';\n\nexport type WellSection = {\n value: string;\n label: string;\n color?: string;\n};\n\nexport type OffsetWellsBySection = Record<string, number[]>;\n\nexport type TaScore = {\n wellId: number;\n taScore: string | number;\n};\n\nexport type OffsetsState = {\n wellSections: WellSection[] | null;\n offsetWellsBySection: OffsetWellsBySection | null;\n taScores: TaScore[];\n /** Raw IDAS-classified wells from BIC. Subject excluded. Not viewport-filtered. */\n idasWellIds: number[];\n /** Raw Offset Well Selection app wells from BIC. Subject excluded. Not viewport-filtered. */\n owsWellIds: number[];\n /** Raw Wellhub auto wells. Subject excluded. Not viewport-filtered. */\n wellhubWellIds: number[];\n loadedAssetId: number | null;\n};\n\nconst INITIAL_OFFSETS_STATE: OffsetsState = {\n wellSections: null,\n offsetWellsBySection: null,\n taScores: [],\n idasWellIds: [],\n owsWellIds: [],\n wellhubWellIds: [],\n loadedAssetId: null,\n};\n\ntype UseExternalOffsetsReturn = {\n offsets: OffsetsState;\n setOffsets: Dispatch<SetStateAction<OffsetsState>>;\n loadExternalOffsets: () => Promise<void>;\n};\n\nexport const useExternalOffsets = (\n assetId: number | null,\n wells: Array<{ id: number }> | null\n): UseExternalOffsetsReturn => {\n const isWDUser = usePickerPropsStore(state => state.isWDUser);\n const isManualWellsEnabled = usePickerPropsStore(state => state.isManualWellsEnabled);\n\n const [offsets, setOffsets] = useState<OffsetsState>(INITIAL_OFFSETS_STATE);\n\n const loadOffsetWellSelectionAppOffsets = useCallback(async () => {\n if (!assetId || !wells) return;\n\n try {\n const data = await fetchOffsetWellSelectionAppOffsets(assetId);\n const record = data[0]?.data ?? null;\n const filters = record?.filters ? JSON.parse(record.filters) : null;\n const result = record?.result ? JSON.parse(record.result) : null;\n const manualWellIdsFromBIC: number[] =\n isManualWellsEnabled && record?.manual_wells ? JSON.parse(record.manual_wells) : [];\n const parsedTaScores =\n isManualWellsEnabled && record?.ta_scores ? JSON.parse(record.ta_scores) : null;\n\n if (!filters || !result) {\n if (!manualWellIdsFromBIC.length) {\n setOffsets({\n ...INITIAL_OFFSETS_STATE,\n wellSections: [],\n offsetWellsBySection: {},\n });\n return;\n }\n\n // BIC has manual_wells but no filter-driven sections — typical after an\n // IDAS resync on an asset where the picker was never opened. Build a\n // minimal state so the IDAS wells still flow through.\n const allWellIds = uniq([assetId, ...manualWellIdsFromBIC]);\n const taScoresOnly: TaScore[] = manualWellIdsFromBIC.map((wellId, index) => ({\n wellId,\n taScore: parsedTaScores?.[index] ?? '',\n }));\n const { idasWellIds, owsWellIds } = classifyBicSourceBuckets({\n resultSectionIds: [],\n manualWellIds: manualWellIdsFromBIC,\n assetId,\n });\n\n setOffsets({\n wellSections: [],\n offsetWellsBySection: { [ALL_SECTION_KEY]: allWellIds },\n taScores: taScoresOnly,\n idasWellIds,\n owsWellIds,\n wellhubWellIds: [],\n loadedAssetId: assetId,\n });\n return;\n }\n\n const sections: WellSection[] =\n filters.filterTabs?.map((tab: { value: string; name: string }, index: number) => ({\n value: tab.value,\n label: tab.name,\n color: WellSectionColors[index],\n })) || [];\n\n let allWellIds: number[] = [assetId];\n const wellsData: OffsetWellsBySection = sections.reduce<OffsetWellsBySection>(\n (acc, { value }) => {\n const sectionWellIds: number[] = result[value] || [];\n const addedWellIds = uniq(sectionWellIds.concat(assetId));\n allWellIds = allWellIds.concat(addedWellIds);\n return { ...acc, [value]: addedWellIds };\n },\n {}\n );\n\n let nextTaScores: TaScore[] = [];\n if (manualWellIdsFromBIC.length) {\n allWellIds = allWellIds.concat(manualWellIdsFromBIC);\n nextTaScores = manualWellIdsFromBIC.map((wellId: number, index: number) => ({\n wellId,\n taScore: parsedTaScores?.[index] ?? '',\n }));\n }\n\n wellsData[ALL_SECTION_KEY] = uniq(allWellIds);\n\n const { idasWellIds, owsWellIds } = classifyBicSourceBuckets({\n resultSectionIds: sections.map(({ value }) => (result[value] || []) as number[]),\n manualWellIds: manualWellIdsFromBIC,\n assetId,\n });\n\n setOffsets({\n wellSections: [{ value: ALL_SECTION_KEY, label: ALL_SECTION_LABEL }, ...sections],\n offsetWellsBySection: wellsData,\n taScores: nextTaScores,\n idasWellIds,\n owsWellIds,\n wellhubWellIds: [],\n loadedAssetId: assetId,\n });\n } catch (err) {\n console.error('Offset well selection fetch error: ', err);\n setOffsets({\n ...INITIAL_OFFSETS_STATE,\n wellSections: [],\n offsetWellsBySection: {},\n });\n }\n }, [assetId, wells, isManualWellsEnabled]);\n\n const loadWellhubSettingsOffsets = useCallback(async () => {\n if (!assetId || !wells) return;\n\n try {\n const record = await fetchWellhubSettingsOffsets(assetId);\n const offsetWells: Array<{ id: number }> = get(record[0], 'data.offset_wells') || [];\n const wellsData: OffsetWellsBySection = {\n [ALL_SECTION_KEY]: uniq(offsetWells.map(({ id }) => id).concat(assetId)),\n };\n\n const wellhubWellIds = uniq(offsetWells.map(({ id }) => id)).filter(id => id !== assetId);\n\n setOffsets({\n ...INITIAL_OFFSETS_STATE,\n wellSections: [{ value: ALL_SECTION_KEY, label: ALL_SECTION_LABEL }],\n offsetWellsBySection: wellsData,\n wellhubWellIds,\n loadedAssetId: assetId,\n });\n } catch (err) {\n console.error('Wellhub fetch error: ', err);\n setOffsets({\n ...INITIAL_OFFSETS_STATE,\n wellSections: [],\n offsetWellsBySection: {},\n });\n }\n }, [assetId, wells]);\n\n const loadExternalOffsets = useCallback(async () => {\n if (isWDUser) {\n await loadOffsetWellSelectionAppOffsets();\n } else {\n await loadWellhubSettingsOffsets();\n }\n }, [isWDUser, loadOffsetWellSelectionAppOffsets, loadWellhubSettingsOffsets]);\n\n useEffect(() => {\n if (assetId && wells) {\n loadExternalOffsets();\n } else if (!assetId && wells) {\n // No subject well - initialize with defaults to clear loading state\n setOffsets({\n ...INITIAL_OFFSETS_STATE,\n wellSections: [{ value: ALL_SECTION_KEY, label: ALL_SECTION_LABEL }],\n offsetWellsBySection: { [ALL_SECTION_KEY]: [] },\n });\n }\n }, [assetId, wells, loadExternalOffsets]);\n\n return {\n offsets,\n setOffsets,\n loadExternalOffsets,\n };\n};\n"],"names":["INITIAL_OFFSETS_STATE","wellSections","offsetWellsBySection","taScores","idasWellIds","owsWellIds","wellhubWellIds","loadedAssetId","assetId","wells","isWDUser","usePickerPropsStore","state","isManualWellsEnabled","useState","_useState2","_slicedToArray","_useState","offsets","setOffsets","loadOffsetWellSelectionAppOffsets","useCallback","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_data$0$data","_data$","_filters$filterTabs","data","record","filters","result","manualWellIdsFromBIC","parsedTaScores","_allWellIds","taScoresOnly","_classifyBicSourceBuc","_idasWellIds","_owsWellIds","sections","allWellIds","wellsData","nextTaScores","_classifyBicSourceBuc2","wrap","_context","prev","next","abrupt","fetchOffsetWellSelectionAppOffsets","sent","JSON","parse","manual_wells","ta_scores","length","uniq","concat","_toConsumableArray","map","wellId","index","_parsedTaScores$index","taScore","classifyBicSourceBuckets","resultSectionIds","manualWellIds","ALL_SECTION_KEY","filterTabs","tab","value","label","name","color","WellSectionColors","reduce","acc","_ref2","sectionWellIds","addedWellIds","_objectSpread","_defineProperty","_parsedTaScores$index2","_ref3","ALL_SECTION_LABEL","t0","console","error","stop","loadWellhubSettingsOffsets","_callee2","offsetWells","_context2","fetchWellhubSettingsOffsets","get","_ref5","id","_ref6","filter","loadExternalOffsets","_callee3","_context3","useEffect"],"mappings":"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"}
1
+ {"version":3,"file":"useExternalOffsets.js","sources":["../../../../../src/components/OffsetWellPickerV5/hooks/useExternalOffsets.ts"],"sourcesContent":["import { useCallback, useEffect, useState, type Dispatch, type SetStateAction } from 'react';\nimport { get, uniq } from 'lodash';\n\nimport { fetchOffsetWellSelectionAppOffsets, fetchWellhubSettingsOffsets } from '../api';\nimport { ALL_SECTION_KEY, ALL_SECTION_LABEL, WellSectionColors } from '../constants';\nimport { usePickerPropsStore } from '../stores/picker-props-store';\nimport { classifyBicSourceBuckets } from '../utils/classifyBicSourceBuckets';\n\nexport type WellSection = {\n value: string;\n label: string;\n color?: string;\n};\n\nexport type OffsetWellsBySection = Record<string, number[]>;\n\nexport type TaScore = {\n wellId: number;\n taScore: string | number;\n};\n\nexport type OffsetsState = {\n wellSections: WellSection[] | null;\n offsetWellsBySection: OffsetWellsBySection | null;\n taScores: TaScore[];\n /** Raw IDAS-classified wells from BIC. Subject excluded. Not viewport-filtered. */\n idasWellIds: number[];\n /** Raw Offset Well Selection app wells from BIC. Subject excluded. Not viewport-filtered. */\n owsWellIds: number[];\n /** Raw Wellhub auto wells. Subject excluded. Not viewport-filtered. */\n wellhubWellIds: number[];\n loadedAssetId: number | null;\n};\n\nconst INITIAL_OFFSETS_STATE: OffsetsState = {\n wellSections: null,\n offsetWellsBySection: null,\n taScores: [],\n idasWellIds: [],\n owsWellIds: [],\n wellhubWellIds: [],\n loadedAssetId: null,\n};\n\ntype UseExternalOffsetsReturn = {\n offsets: OffsetsState;\n setOffsets: Dispatch<SetStateAction<OffsetsState>>;\n loadExternalOffsets: () => Promise<void>;\n};\n\nexport const useExternalOffsets = (\n assetId: number | null,\n wells: Array<{ id: number }> | null\n): UseExternalOffsetsReturn => {\n const isWDUser = usePickerPropsStore(state => state.isWDUser);\n const isManualWellsEnabled = usePickerPropsStore(state => state.isManualWellsEnabled);\n\n const [offsets, setOffsets] = useState<OffsetsState>(INITIAL_OFFSETS_STATE);\n\n const loadOffsetWellSelectionAppOffsets = useCallback(async () => {\n if (!assetId || !wells) return;\n\n try {\n const data = await fetchOffsetWellSelectionAppOffsets(assetId);\n const record = data[0]?.data ?? null;\n const filters = record?.filters ? JSON.parse(record.filters) : null;\n const result = record?.result ? JSON.parse(record.result) : null;\n const manualWellIdsFromBIC: number[] =\n isManualWellsEnabled && record?.manual_wells ? JSON.parse(record.manual_wells) : [];\n const parsedTaScores =\n isManualWellsEnabled && record?.ta_scores ? JSON.parse(record.ta_scores) : null;\n\n if (!filters || !result) {\n if (!manualWellIdsFromBIC.length) {\n setOffsets({\n ...INITIAL_OFFSETS_STATE,\n wellSections: [],\n offsetWellsBySection: {},\n });\n return;\n }\n\n // BIC has manual_wells but no filter-driven sections — typical after an\n // IDAS resync on an asset where the picker was never opened. Build a\n // minimal state so the IDAS wells still flow through.\n const allWellIds = uniq([assetId, ...manualWellIdsFromBIC]);\n const taScoresOnly: TaScore[] = manualWellIdsFromBIC.map((wellId, index) => ({\n wellId,\n taScore: parsedTaScores?.[index] ?? '',\n }));\n const { idasWellIds, owsWellIds } = classifyBicSourceBuckets({\n resultSectionIds: [],\n manualWellIds: manualWellIdsFromBIC,\n assetId,\n });\n\n setOffsets({\n wellSections: [],\n offsetWellsBySection: { [ALL_SECTION_KEY]: allWellIds },\n taScores: taScoresOnly,\n idasWellIds,\n owsWellIds,\n wellhubWellIds: [],\n loadedAssetId: assetId,\n });\n return;\n }\n\n const sections: WellSection[] =\n filters.filterTabs?.map((tab: { value: string; name: string }, index: number) => ({\n value: tab.value,\n label: tab.name,\n color: WellSectionColors[index],\n })) || [];\n\n let allWellIds: number[] = [assetId];\n const wellsData: OffsetWellsBySection = sections.reduce<OffsetWellsBySection>(\n (acc, { value }) => {\n const sectionWellIds: number[] = result[value] || [];\n const addedWellIds = uniq(sectionWellIds.concat(assetId));\n allWellIds = allWellIds.concat(addedWellIds);\n return { ...acc, [value]: addedWellIds };\n },\n {}\n );\n\n let nextTaScores: TaScore[] = [];\n if (manualWellIdsFromBIC.length) {\n allWellIds = allWellIds.concat(manualWellIdsFromBIC);\n nextTaScores = manualWellIdsFromBIC.map((wellId: number, index: number) => ({\n wellId,\n taScore: parsedTaScores?.[index] ?? '',\n }));\n }\n\n wellsData[ALL_SECTION_KEY] = uniq(allWellIds);\n\n const { idasWellIds, owsWellIds } = classifyBicSourceBuckets({\n resultSectionIds: sections.map(({ value }) => (result[value] || []) as number[]),\n manualWellIds: manualWellIdsFromBIC,\n assetId,\n });\n\n setOffsets({\n wellSections: [{ value: ALL_SECTION_KEY, label: ALL_SECTION_LABEL }, ...sections],\n offsetWellsBySection: wellsData,\n taScores: nextTaScores,\n idasWellIds,\n owsWellIds,\n wellhubWellIds: [],\n loadedAssetId: assetId,\n });\n } catch (err) {\n console.error('Offset well selection fetch error: ', err);\n setOffsets({\n ...INITIAL_OFFSETS_STATE,\n wellSections: [],\n offsetWellsBySection: {},\n });\n }\n }, [assetId, wells, isManualWellsEnabled]);\n\n const loadWellhubSettingsOffsets = useCallback(async () => {\n if (!assetId || !wells) return;\n\n try {\n const record = await fetchWellhubSettingsOffsets(assetId);\n const offsetWells: Array<{ id: number }> = get(record[0], 'data.offset_wells') || [];\n const wellsData: OffsetWellsBySection = {\n [ALL_SECTION_KEY]: uniq(offsetWells.map(({ id }) => id).concat(assetId)),\n };\n\n const wellhubWellIds = uniq(offsetWells.map(({ id }) => id)).filter(id => id !== assetId);\n\n setOffsets({\n ...INITIAL_OFFSETS_STATE,\n wellSections: [{ value: ALL_SECTION_KEY, label: ALL_SECTION_LABEL }],\n offsetWellsBySection: wellsData,\n wellhubWellIds,\n loadedAssetId: assetId,\n });\n } catch (err) {\n console.error('Wellhub fetch error: ', err);\n setOffsets({\n ...INITIAL_OFFSETS_STATE,\n wellSections: [],\n offsetWellsBySection: {},\n });\n }\n }, [assetId, wells]);\n\n const loadExternalOffsets = useCallback(async () => {\n if (isWDUser) {\n await loadOffsetWellSelectionAppOffsets();\n } else {\n await loadWellhubSettingsOffsets();\n }\n }, [isWDUser, loadOffsetWellSelectionAppOffsets, loadWellhubSettingsOffsets]);\n\n useEffect(() => {\n if (assetId && wells) {\n loadExternalOffsets();\n } else if (!assetId && wells) {\n // No subject well - initialize with defaults to clear loading state\n setOffsets({\n ...INITIAL_OFFSETS_STATE,\n wellSections: [{ value: ALL_SECTION_KEY, label: ALL_SECTION_LABEL }],\n offsetWellsBySection: { [ALL_SECTION_KEY]: [] },\n });\n }\n }, [assetId, wells, loadExternalOffsets]);\n\n return {\n offsets,\n setOffsets,\n loadExternalOffsets,\n };\n};\n"],"names":["INITIAL_OFFSETS_STATE","wellSections","offsetWellsBySection","taScores","idasWellIds","owsWellIds","wellhubWellIds","loadedAssetId","assetId","wells","isWDUser","usePickerPropsStore","state","isManualWellsEnabled","useState","_useState2","_slicedToArray","_useState","offsets","setOffsets","loadOffsetWellSelectionAppOffsets","useCallback","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_data$0$data","_data$","_filters$filterTabs","data","record","filters","result","manualWellIdsFromBIC","parsedTaScores","_allWellIds","taScoresOnly","_classifyBicSourceBuc","_idasWellIds","_owsWellIds","sections","allWellIds","wellsData","nextTaScores","_classifyBicSourceBuc2","wrap","_context","prev","next","abrupt","fetchOffsetWellSelectionAppOffsets","sent","JSON","parse","manual_wells","ta_scores","length","uniq","concat","_toConsumableArray","map","wellId","index","_parsedTaScores$index","taScore","classifyBicSourceBuckets","resultSectionIds","manualWellIds","ALL_SECTION_KEY","filterTabs","tab","value","label","name","color","WellSectionColors","reduce","acc","_ref2","sectionWellIds","addedWellIds","_objectSpread","_defineProperty","_parsedTaScores$index2","_ref3","ALL_SECTION_LABEL","t0","console","error","stop","loadWellhubSettingsOffsets","_callee2","offsetWells","_context2","fetchWellhubSettingsOffsets","get","_ref5","id","_ref6","filter","loadExternalOffsets","_callee3","_context3","useEffect"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../utils/checkIsUserAdmin.js"),r=require("../stores/picker-props-store/usePickerPropsStore.js");require("../../../clients/subscriptions/constants.js"),require("@babel/runtime/helpers/slicedToArray"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/helpers/defineProperty"),require("@babel/runtime/regenerator"),require("querystring"),require("react"),require("uuid/v1"),require("lodash"),require("../../../clients/subscriptions.v1.js"),require("../../../clients/jsonApi/index.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js"),require("query-string"),require("../../../constants/goals.js"),require("../../../constants/segment.js"),require("../../../constants/alerts.js"),require("../../../constants/apps.js"),require("../../../constants/drillstring.js"),require("../../../constants/completion.js"),require("../../../constants/appPackages.js"),require("../../../constants/notifications.js"),require("../../../constants/feed.js"),require("../../../constants/bha.js"),require("../../../constants/corvaCompanyId.js"),require("../../GradientManager/configuration/constants.js"),require("../../UserMention/utils/index.js"),require("../../../utils/convert.js"),require("moment"),require("../../../utils/casing/validation.js"),require("lodash/mean"),require("../../../constants/streamSourceType.js"),require("lodash/get"),require("file-saver"),require("../../../utils/drillstring/conversion.js"),require("lodash/set"),require("lodash/cloneDeep"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/isNumber"),require("lodash/has"),require("../../../utils/ga.js"),require("../../../utils/goalsConfig/goalsConfig.js"),require("../../../utils/lasParser.js"),require("../../../utils/main.js"),require("../../../utils/metrics/metricsConfig.js"),require("../../../utils/mobileDetect.js"),require("../../../utils/feed.js"),require("../../../utils/reports.js"),require("moment-timezone"),require("@babel/runtime/helpers/typeof"),require("../../../utils/dashboardReports.js"),require("../../../utils/env.js"),require("file-extension"),require("image-extensions"),require("video-extensions"),require("../../../utils/jsonaDataFormatter.js"),require("../../../utils/bha.js"),require("jsona"),require("@babel/runtime/helpers/objectWithoutProperties"),require("classnames"),require("../../../utils/charts/Styles.scss.js"),require("../../../utils/getSingleAsset.js"),require("uuid"),require("../../StatusBadge/constants.js"),require("lodash/unset"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js"),require("../../../clients/api/rateLimiter.js"),require("lodash/isEmpty"),require("lodash/sortBy"),require("../../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js"),require("../../../componentsV2/AppCommonsProvider/AppCommonsProvider.js");var s=require("../../../componentsV2/AppCommonsProvider/AppCommonsContext.js");require("../../../componentsV2/AppPanel/AppPanelsContext.js");exports.useIsAdmin=function(){var i,t=null===(i=s.useAppCommons())||void 0===i?void 0:i.currentUser,n=r.usePickerPropsStore((function(e){return e.currentUser}));return e.checkIsUserAdmin(null!=t?t:n)};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../utils/checkIsUserAdmin.js"),r=require("../stores/picker-props-store/usePickerPropsStore.js");require("@babel/runtime/helpers/defineProperty"),require("@babel/runtime/helpers/slicedToArray"),require("querystring"),require("react"),require("lodash"),require("../../../clients/subscriptions/subscriptions-client.factory.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../../clients/jsonApi/index.js"),require("query-string"),require("../../../constants/goals.js"),require("../../../constants/segment.js"),require("../../../constants/alerts.js"),require("../../../constants/apps.js"),require("../../../constants/drillstring.js"),require("../../../constants/completion.js"),require("../../../constants/appPackages.js"),require("../../../constants/notifications.js"),require("../../../constants/feed.js"),require("../../../constants/bha.js"),require("../../../constants/corvaCompanyId.js"),require("../../GradientManager/configuration/constants.js"),require("../../UserMention/utils/index.js"),require("../../../utils/convert.js"),require("moment"),require("../../../utils/casing/validation.js"),require("lodash/mean"),require("../../../constants/streamSourceType.js"),require("lodash/get"),require("file-saver"),require("../../../utils/drillstring/conversion.js"),require("lodash/set"),require("lodash/cloneDeep"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/isNumber"),require("lodash/has"),require("../../../utils/ga.js"),require("../../../utils/goalsConfig/goalsConfig.js"),require("../../../utils/lasParser.js"),require("../../../utils/main.js"),require("../../../utils/metrics/metricsConfig.js"),require("../../../utils/mobileDetect.js"),require("../../../utils/feed.js"),require("../../../utils/reports.js"),require("moment-timezone"),require("@babel/runtime/helpers/typeof"),require("../../../utils/dashboardReports.js"),require("../../../utils/env.js"),require("file-extension"),require("image-extensions"),require("video-extensions"),require("../../../utils/jsonaDataFormatter.js"),require("../../../utils/bha.js"),require("jsona"),require("@babel/runtime/helpers/objectWithoutProperties"),require("classnames"),require("../../../utils/charts/Styles.scss.js"),require("../../../utils/getSingleAsset.js"),require("uuid"),require("../../StatusBadge/constants.js"),require("lodash/unset"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js"),require("../../../clients/api/rateLimiter.js"),require("lodash/isEmpty"),require("lodash/sortBy"),require("../../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js"),require("../../../componentsV2/AppCommonsProvider/AppCommonsProvider.js");var s=require("../../../componentsV2/AppCommonsProvider/AppCommonsContext.js");require("../../../componentsV2/AppPanel/AppPanelsContext.js");exports.useIsAdmin=function(){var i,t=null===(i=s.useAppCommons())||void 0===i?void 0:i.currentUser,n=r.usePickerPropsStore((function(e){return e.currentUser}));return e.checkIsUserAdmin(null!=t?t:n)};
2
2
  //# sourceMappingURL=useIsAdmin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useIsAdmin.js","sources":["../../../../../src/components/OffsetWellPickerV5/hooks/useIsAdmin.ts"],"sourcesContent":["import { checkIsUserAdmin } from '../utils/checkIsUserAdmin';\nimport { usePickerPropsStore } from '../stores/picker-props-store/usePickerPropsStore';\n\nimport { useAppCommons } from '~/effects';\n\nexport const useIsAdmin = (): boolean => {\n const appCommonsUser = useAppCommons()?.currentUser;\n const pickerPropsUser = usePickerPropsStore(state => state.currentUser);\n\n return checkIsUserAdmin(appCommonsUser ?? pickerPropsUser);\n};\n"],"names":["_useAppCommons","appCommonsUser","useAppCommons","currentUser","pickerPropsUser","usePickerPropsStore","state","checkIsUserAdmin"],"mappings":"0mGAK0B,WAAe,IAAAA,EACjCC,EAAgC,QAAfC,EAAAA,EAAAA,uBAAe,IAAAF,OAAA,EAAfA,EAAiBG,YAClCC,EAAkBC,uBAAoB,SAAAC,GAAK,OAAIA,EAAMH,eAE3D,OAAOI,EAAgBA,iBAACN,QAAAA,EAAkBG,EAC5C"}
1
+ {"version":3,"file":"useIsAdmin.js","sources":["../../../../../src/components/OffsetWellPickerV5/hooks/useIsAdmin.ts"],"sourcesContent":["import { checkIsUserAdmin } from '../utils/checkIsUserAdmin';\nimport { usePickerPropsStore } from '../stores/picker-props-store/usePickerPropsStore';\n\nimport { useAppCommons } from '~/effects';\n\nexport const useIsAdmin = (): boolean => {\n const appCommonsUser = useAppCommons()?.currentUser;\n const pickerPropsUser = usePickerPropsStore(state => state.currentUser);\n\n return checkIsUserAdmin(appCommonsUser ?? pickerPropsUser);\n};\n"],"names":["_useAppCommons","appCommonsUser","useAppCommons","currentUser","pickerPropsUser","usePickerPropsStore","state","checkIsUserAdmin"],"mappings":"g/FAK0B,WAAe,IAAAA,EACjCC,EAAgC,QAAfC,EAAAA,EAAAA,uBAAe,IAAAF,OAAA,EAAfA,EAAiBG,YAClCC,EAAkBC,uBAAoB,SAAAC,GAAK,OAAIA,EAAMH,eAE3D,OAAOI,EAAgBA,iBAACN,QAAAA,EAAkBG,EAC5C"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/helpers/slicedToArray"),t=require("@babel/runtime/regenerator"),n=require("react"),s=require("../api/wells/fetchWellsByIds.js");require("lodash"),require("@babel/runtime/helpers/toConsumableArray"),require("@babel/runtime/helpers/defineProperty"),require("uuid"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../clients/jsonApi/index.js"),require("../../../clients/subscriptions/constants.js"),require("../../../clients/subscriptions.v1.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js"),require("../../../clients/api/rateLimiter.js"),require("../constants.js"),require("../api/shared/dataFormatter.js");var u=require("../stores/picker-props-store/usePickerPropsStore.js");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=i(e),c=i(r),o=i(t);exports.usePinnedWells=function(e){var r=u.usePickerPropsStore((function(e){return e.addWellsUsabilityInfo})),t=n.useState(null),i=c.default(t,2),l=i[0],f=i[1],p=n.useState(!1),d=c.default(p,2),b=d[0],q=d[1],h=n.useRef(new Map),j=n.useCallback(function(){var e=a.default(o.default.mark((function e(t){var n,u,i,a,c;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(0!==t.length){e.next=3;break}return f([]),e.abrupt("return");case 3:if(0!==(n=t.filter((function(e){return!h.current.has(e)}))).length){e.next=8;break}return u=t.map((function(e){return h.current.get(e)})).filter((function(e){return void 0!==e})),f(u),e.abrupt("return");case 8:return q(!0),e.prev=9,e.next=12,s.fetchWellsByIds(n);case 12:if(i=e.sent,"function"!=typeof r){e.next=19;break}return e.next=16,r(i);case 16:e.t0=e.sent,e.next=20;break;case 19:e.t0=i;case 20:e.t0.forEach((function(e){h.current.set(e.id,e)})),a=t.map((function(e){return h.current.get(e)})).filter((function(e){return void 0!==e})),f(a),e.next=31;break;case 26:e.prev=26,e.t1=e.catch(9),console.error("Error fetching pinned wells:",e.t1),c=t.map((function(e){return h.current.get(e)})).filter((function(e){return void 0!==e})),f(c.length>0?c:null);case 31:return e.prev=31,q(!1),e.finish(31);case 34:case"end":return e.stop()}}),e,null,[[9,26,31,34]])})));return function(r){return e.apply(this,arguments)}}(),[r]);return n.useEffect((function(){j(e||[])}),[e,j]),[l,b]};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/helpers/slicedToArray"),t=require("@babel/runtime/regenerator"),n=require("react"),u=require("../api/wells/fetchWellsByIds.js");require("lodash"),require("@babel/runtime/helpers/toConsumableArray"),require("@babel/runtime/helpers/defineProperty"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../clients/jsonApi/index.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js"),require("../../../clients/api/rateLimiter.js"),require("../constants.js"),require("../api/shared/dataFormatter.js");var s=require("../stores/picker-props-store/usePickerPropsStore.js");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=i(e),c=i(r),o=i(t);exports.usePinnedWells=function(e){var r=s.usePickerPropsStore((function(e){return e.addWellsUsabilityInfo})),t=n.useState(null),i=c.default(t,2),l=i[0],f=i[1],p=n.useState(!1),d=c.default(p,2),b=d[0],h=d[1],q=n.useRef(new Map),j=n.useCallback(function(){var e=a.default(o.default.mark((function e(t){var n,s,i,a,c;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(0!==t.length){e.next=3;break}return f([]),e.abrupt("return");case 3:if(0!==(n=t.filter((function(e){return!q.current.has(e)}))).length){e.next=8;break}return s=t.map((function(e){return q.current.get(e)})).filter((function(e){return void 0!==e})),f(s),e.abrupt("return");case 8:return h(!0),e.prev=9,e.next=12,u.fetchWellsByIds(n);case 12:if(i=e.sent,"function"!=typeof r){e.next=19;break}return e.next=16,r(i);case 16:e.t0=e.sent,e.next=20;break;case 19:e.t0=i;case 20:e.t0.forEach((function(e){q.current.set(e.id,e)})),a=t.map((function(e){return q.current.get(e)})).filter((function(e){return void 0!==e})),f(a),e.next=31;break;case 26:e.prev=26,e.t1=e.catch(9),console.error("Error fetching pinned wells:",e.t1),c=t.map((function(e){return q.current.get(e)})).filter((function(e){return void 0!==e})),f(c.length>0?c:null);case 31:return e.prev=31,h(!1),e.finish(31);case 34:case"end":return e.stop()}}),e,null,[[9,26,31,34]])})));return function(r){return e.apply(this,arguments)}}(),[r]);return n.useEffect((function(){j(e||[])}),[e,j]),[l,b]};
2
2
  //# sourceMappingURL=usePinnedWells.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"usePinnedWells.js","sources":["../../../../../src/components/OffsetWellPickerV5/hooks/usePinnedWells.ts"],"sourcesContent":["import { useState, useEffect, useRef, useCallback } from 'react';\n\nimport { fetchWellsByIds } from '../api';\nimport type { OffsetWell } from '../OffsetWellPickerV5.types';\nimport { usePickerPropsStore } from '../stores/picker-props-store/usePickerPropsStore';\n\n/**\n * Hook to fetch and maintain \"pinned\" wells that should always be displayed\n * regardless of radius/shape selection. These wells are fetched by ID independently\n * of the main radius-based fetch.\n *\n * @param selectedWellIds - Array of well IDs that should always be available\n * @returns Tuple of [pinnedWells, isLoading]\n */\nexport const usePinnedWells = (\n selectedWellIds: number[] | undefined\n): [OffsetWell[] | null, boolean] => {\n const addWellsUsabilityInfo = usePickerPropsStore(state => state.addWellsUsabilityInfo);\n\n const [pinnedWells, setPinnedWells] = useState<OffsetWell[] | null>(null);\n const [isLoading, setIsLoading] = useState(false);\n\n // Cache of already fetched wells to avoid re-fetching\n const wellsCacheRef = useRef<Map<number, OffsetWell>>(new Map());\n\n const fetchAndCacheWells = useCallback(\n async (ids: number[]): Promise<void> => {\n if (ids.length === 0) {\n setPinnedWells([]);\n return;\n }\n\n const missingIds = ids.filter(id => !wellsCacheRef.current.has(id));\n\n if (missingIds.length === 0) {\n const cached = ids\n .map(id => wellsCacheRef.current.get(id))\n .filter((w): w is OffsetWell => w !== undefined);\n setPinnedWells(cached);\n return;\n }\n\n setIsLoading(true);\n\n try {\n const fetched = await fetchWellsByIds(missingIds);\n\n const processed =\n typeof addWellsUsabilityInfo === 'function'\n ? await addWellsUsabilityInfo(fetched as unknown as OffsetWell[])\n : (fetched as unknown as OffsetWell[]);\n\n processed.forEach(well => {\n wellsCacheRef.current.set(well.id, well);\n });\n\n const result = ids\n .map(id => wellsCacheRef.current.get(id))\n .filter((w): w is OffsetWell => w !== undefined);\n\n setPinnedWells(result);\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Error fetching pinned wells:', error);\n\n const cached = ids\n .map(id => wellsCacheRef.current.get(id))\n .filter((w): w is OffsetWell => w !== undefined);\n setPinnedWells(cached.length > 0 ? cached : null);\n } finally {\n setIsLoading(false);\n }\n },\n [addWellsUsabilityInfo]\n );\n\n useEffect(() => {\n const ids = selectedWellIds || [];\n\n fetchAndCacheWells(ids);\n }, [selectedWellIds, fetchAndCacheWells]);\n\n return [pinnedWells, isLoading];\n};\n"],"names":["selectedWellIds","addWellsUsabilityInfo","usePickerPropsStore","state","useState","_useState2","_slicedToArray","_useState","pinnedWells","setPinnedWells","_useState4","_useState3","isLoading","setIsLoading","wellsCacheRef","useRef","Map","fetchAndCacheWells","useCallback","_ref","_asyncToGenerator","_regeneratorRuntime","mark","ids","missingIds","cached","fetched","result","_cached","wrap","_context","prev","next","length","abrupt","filter","id","current","has","map","get","w","undefined","fetchWellsByIds","sent","t0","forEach","well","set","t1","console","error","finish","stop","_callee","_x","apply","this","arguments","useEffect"],"mappings":"0qCAc8B,SAC5BA,GAEA,IAAMC,EAAwBC,uBAAoB,SAAAC,GAAK,OAAIA,EAAMF,yBAE3BG,EAAAA,EAAQA,SAAsB,MAAKC,EAAAC,EAAAA,QAAAC,EAAA,GAAlEC,EAAWH,EAAA,GAAEI,EAAcJ,EAAA,GACAD,EAAAA,EAAQA,UAAC,GAAMM,EAAAJ,EAAAA,QAAAK,EAAA,GAA1CC,EAASF,EAAA,GAAEG,EAAYH,EAAA,GAGxBI,EAAgBC,EAAAA,OAAgC,IAAIC,KAEpDC,EAAqBC,EAAAA,YAAW,WAAA,IAAAC,EAAAC,EAAAA,QAAAC,EAAAA,QAAAC,MACpC,WAAOC,GAAa,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAP,UAAAQ,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,GACC,IAAfT,EAAIU,OAAY,CAAAH,EAAAE,KAAA,EAAA,KAAA,CACC,OAAnBvB,EAAe,IAAIqB,EAAAI,OAAA,UAAA,KAAA,EAI8C,GAEzC,KAFpBV,EAAaD,EAAIY,QAAO,SAAAC,GAAE,OAAKtB,EAAcuB,QAAQC,IAAIF,OAEhDH,OAAY,CAAAH,EAAAE,KAAA,EAAA,KAAA,CAIF,OAHjBP,EAASF,EACZgB,KAAI,SAAAH,GAAE,OAAItB,EAAcuB,QAAQG,IAAIJ,EAAG,IACvCD,QAAO,SAACM,GAAC,YAA4BC,IAAND,KAClChC,EAAegB,GAAQK,EAAAI,OAAA,UAAA,KAAA,EAIN,OAAnBrB,GAAa,GAAMiB,EAAAC,KAAA,EAAAD,EAAAE,KAAA,GAGKW,EAAAA,gBAAgBnB,GAAW,KAAA,GAApC,GAAPE,EAAOI,EAAAc,KAGsB,mBAA1B3C,EAAoC,CAAA6B,EAAAE,KAAA,GAAA,KAAA,CAAA,OAAAF,EAAAE,KAAA,GACjC/B,EAAsByB,GAAmC,KAAA,GAAAI,EAAAe,GAAAf,EAAAc,KAAAd,EAAAE,KAAA,GAAA,MAAA,KAAA,GAAAF,EAAAe,GAC9DnB,EAAO,KAAA,GAHCI,EAAAe,GAKLC,SAAQ,SAAAC,GAChBjC,EAAcuB,QAAQW,IAAID,EAAKX,GAAIW,EACrC,IAEMpB,EAASJ,EACZgB,KAAI,SAAAH,GAAE,OAAItB,EAAcuB,QAAQG,IAAIJ,EAAG,IACvCD,QAAO,SAACM,GAAC,YAA4BC,IAAND,KAElChC,EAAekB,GAAQG,EAAAE,KAAA,GAAA,MAAA,KAAA,GAAAF,EAAAC,KAAA,GAAAD,EAAAmB,GAAAnB,EAAA,MAAA,GAGvBoB,QAAQC,MAAM,+BAAsCrB,EAAAmB,IAE9CxB,EAASF,EACZgB,KAAI,SAAAH,GAAE,OAAItB,EAAcuB,QAAQG,IAAIJ,EAAG,IACvCD,QAAO,SAACM,GAAC,YAA4BC,IAAND,KAClChC,EAAegB,EAAOQ,OAAS,EAAIR,EAAS,MAAM,KAAA,GAE9B,OAF8BK,EAAAC,KAAA,GAElDlB,GAAa,GAAOiB,EAAAsB,OAAA,IAAA,KAAA,GAAA,IAAA,MAAA,OAAAtB,EAAAuB,OAAA,GAAAC,EAAA,KAAA,CAAA,CAAA,EAAA,GAAA,GAAA,KAEvB,KAAA,OAAA,SAAAC,GAAA,OAAApC,EAAAqC,MAAAC,KAAAC,UAAA,EA/CmC,GAgDpC,CAACzD,IASH,OANA0D,EAAAA,WAAU,WAGR1C,EAFYjB,GAAmB,GAGjC,GAAG,CAACA,EAAiBiB,IAEd,CAACT,EAAaI,EACvB"}
1
+ {"version":3,"file":"usePinnedWells.js","sources":["../../../../../src/components/OffsetWellPickerV5/hooks/usePinnedWells.ts"],"sourcesContent":["import { useState, useEffect, useRef, useCallback } from 'react';\n\nimport { fetchWellsByIds } from '../api';\nimport type { OffsetWell } from '../OffsetWellPickerV5.types';\nimport { usePickerPropsStore } from '../stores/picker-props-store/usePickerPropsStore';\n\n/**\n * Hook to fetch and maintain \"pinned\" wells that should always be displayed\n * regardless of radius/shape selection. These wells are fetched by ID independently\n * of the main radius-based fetch.\n *\n * @param selectedWellIds - Array of well IDs that should always be available\n * @returns Tuple of [pinnedWells, isLoading]\n */\nexport const usePinnedWells = (\n selectedWellIds: number[] | undefined\n): [OffsetWell[] | null, boolean] => {\n const addWellsUsabilityInfo = usePickerPropsStore(state => state.addWellsUsabilityInfo);\n\n const [pinnedWells, setPinnedWells] = useState<OffsetWell[] | null>(null);\n const [isLoading, setIsLoading] = useState(false);\n\n // Cache of already fetched wells to avoid re-fetching\n const wellsCacheRef = useRef<Map<number, OffsetWell>>(new Map());\n\n const fetchAndCacheWells = useCallback(\n async (ids: number[]): Promise<void> => {\n if (ids.length === 0) {\n setPinnedWells([]);\n return;\n }\n\n const missingIds = ids.filter(id => !wellsCacheRef.current.has(id));\n\n if (missingIds.length === 0) {\n const cached = ids\n .map(id => wellsCacheRef.current.get(id))\n .filter((w): w is OffsetWell => w !== undefined);\n setPinnedWells(cached);\n return;\n }\n\n setIsLoading(true);\n\n try {\n const fetched = await fetchWellsByIds(missingIds);\n\n const processed =\n typeof addWellsUsabilityInfo === 'function'\n ? await addWellsUsabilityInfo(fetched as unknown as OffsetWell[])\n : (fetched as unknown as OffsetWell[]);\n\n processed.forEach(well => {\n wellsCacheRef.current.set(well.id, well);\n });\n\n const result = ids\n .map(id => wellsCacheRef.current.get(id))\n .filter((w): w is OffsetWell => w !== undefined);\n\n setPinnedWells(result);\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Error fetching pinned wells:', error);\n\n const cached = ids\n .map(id => wellsCacheRef.current.get(id))\n .filter((w): w is OffsetWell => w !== undefined);\n setPinnedWells(cached.length > 0 ? cached : null);\n } finally {\n setIsLoading(false);\n }\n },\n [addWellsUsabilityInfo]\n );\n\n useEffect(() => {\n const ids = selectedWellIds || [];\n\n fetchAndCacheWells(ids);\n }, [selectedWellIds, fetchAndCacheWells]);\n\n return [pinnedWells, isLoading];\n};\n"],"names":["selectedWellIds","addWellsUsabilityInfo","usePickerPropsStore","state","useState","_useState2","_slicedToArray","_useState","pinnedWells","setPinnedWells","_useState4","_useState3","isLoading","setIsLoading","wellsCacheRef","useRef","Map","fetchAndCacheWells","useCallback","_ref","_asyncToGenerator","_regeneratorRuntime","mark","ids","missingIds","cached","fetched","result","_cached","wrap","_context","prev","next","length","abrupt","filter","id","current","has","map","get","w","undefined","fetchWellsByIds","sent","t0","forEach","well","set","t1","console","error","finish","stop","_callee","_x","apply","this","arguments","useEffect"],"mappings":"mjCAc8B,SAC5BA,GAEA,IAAMC,EAAwBC,uBAAoB,SAAAC,GAAK,OAAIA,EAAMF,yBAE3BG,EAAAA,EAAQA,SAAsB,MAAKC,EAAAC,EAAAA,QAAAC,EAAA,GAAlEC,EAAWH,EAAA,GAAEI,EAAcJ,EAAA,GACAD,EAAAA,EAAQA,UAAC,GAAMM,EAAAJ,EAAAA,QAAAK,EAAA,GAA1CC,EAASF,EAAA,GAAEG,EAAYH,EAAA,GAGxBI,EAAgBC,EAAAA,OAAgC,IAAIC,KAEpDC,EAAqBC,EAAAA,YAAW,WAAA,IAAAC,EAAAC,EAAAA,QAAAC,EAAAA,QAAAC,MACpC,WAAOC,GAAa,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAP,UAAAQ,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,GACC,IAAfT,EAAIU,OAAY,CAAAH,EAAAE,KAAA,EAAA,KAAA,CACC,OAAnBvB,EAAe,IAAIqB,EAAAI,OAAA,UAAA,KAAA,EAI8C,GAEzC,KAFpBV,EAAaD,EAAIY,QAAO,SAAAC,GAAE,OAAKtB,EAAcuB,QAAQC,IAAIF,OAEhDH,OAAY,CAAAH,EAAAE,KAAA,EAAA,KAAA,CAIF,OAHjBP,EAASF,EACZgB,KAAI,SAAAH,GAAE,OAAItB,EAAcuB,QAAQG,IAAIJ,EAAG,IACvCD,QAAO,SAACM,GAAC,YAA4BC,IAAND,KAClChC,EAAegB,GAAQK,EAAAI,OAAA,UAAA,KAAA,EAIN,OAAnBrB,GAAa,GAAMiB,EAAAC,KAAA,EAAAD,EAAAE,KAAA,GAGKW,EAAAA,gBAAgBnB,GAAW,KAAA,GAApC,GAAPE,EAAOI,EAAAc,KAGsB,mBAA1B3C,EAAoC,CAAA6B,EAAAE,KAAA,GAAA,KAAA,CAAA,OAAAF,EAAAE,KAAA,GACjC/B,EAAsByB,GAAmC,KAAA,GAAAI,EAAAe,GAAAf,EAAAc,KAAAd,EAAAE,KAAA,GAAA,MAAA,KAAA,GAAAF,EAAAe,GAC9DnB,EAAO,KAAA,GAHCI,EAAAe,GAKLC,SAAQ,SAAAC,GAChBjC,EAAcuB,QAAQW,IAAID,EAAKX,GAAIW,EACrC,IAEMpB,EAASJ,EACZgB,KAAI,SAAAH,GAAE,OAAItB,EAAcuB,QAAQG,IAAIJ,EAAG,IACvCD,QAAO,SAACM,GAAC,YAA4BC,IAAND,KAElChC,EAAekB,GAAQG,EAAAE,KAAA,GAAA,MAAA,KAAA,GAAAF,EAAAC,KAAA,GAAAD,EAAAmB,GAAAnB,EAAA,MAAA,GAGvBoB,QAAQC,MAAM,+BAAsCrB,EAAAmB,IAE9CxB,EAASF,EACZgB,KAAI,SAAAH,GAAE,OAAItB,EAAcuB,QAAQG,IAAIJ,EAAG,IACvCD,QAAO,SAACM,GAAC,YAA4BC,IAAND,KAClChC,EAAegB,EAAOQ,OAAS,EAAIR,EAAS,MAAM,KAAA,GAE9B,OAF8BK,EAAAC,KAAA,GAElDlB,GAAa,GAAOiB,EAAAsB,OAAA,IAAA,KAAA,GAAA,IAAA,MAAA,OAAAtB,EAAAuB,OAAA,GAAAC,EAAA,KAAA,CAAA,CAAA,EAAA,GAAA,GAAA,KAEvB,KAAA,OAAA,SAAAC,GAAA,OAAApC,EAAAqC,MAAAC,KAAAC,UAAA,EA/CmC,GAgDpC,CAACzD,IASH,OANA0D,EAAAA,WAAU,WAGR1C,EAFYjB,GAAmB,GAGjC,GAAG,CAACA,EAAiBiB,IAEd,CAACT,EAAaI,EACvB"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/regenerator");require("lodash"),require("@babel/runtime/helpers/toConsumableArray"),require("@babel/runtime/helpers/defineProperty"),require("uuid"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../../clients/jsonApi/index.js"),require("../../../../clients/subscriptions/constants.js"),require("../../../../clients/subscriptions.v1.js"),require("../../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../../clients/api/apiCore.js"),require("../../../../clients/constants.js"),require("../../../../clients/sso/auth0.js"),require("../../../../clients/sso/oauth2.js"),require("../../../../clients/api/rateLimiter.js"),require("../../constants.js"),require("../../api/shared/dataFormatter.js"),require("@babel/runtime/helpers/slicedToArray");var s=require("../../api/external-offsets/resyncIdasWells.js"),t=require("./idas-resync.types.js"),n=require("./idasResyncChannel.js"),i=require("./subscribeToIdasResync.js");require("../../../UserMention/utils/index.js"),require("../../../../utils/convert.js"),require("../../../../constants/completion.js"),require("../../../../constants/alerts.js"),require("../../../../utils/casing/validation.js"),require("lodash/mean"),require("../../../../constants/streamSourceType.js"),require("file-saver"),require("query-string"),require("../../../../constants/goals.js"),require("../../../../constants/segment.js"),require("../../../../constants/apps.js"),require("../../../../constants/drillstring.js"),require("../../../../constants/appPackages.js"),require("../../../../constants/notifications.js"),require("../../../../constants/feed.js"),require("../../../../constants/bha.js"),require("../../../../constants/corvaCompanyId.js"),require("../../../GradientManager/configuration/constants.js"),require("../../../../utils/drillstring/conversion.js"),require("lodash/cloneDeep"),require("lodash/isNumber"),require("lodash/has"),require("../../../../utils/ga.js"),require("../../../../utils/goalsConfig/goalsConfig.js"),require("../../../../utils/lasParser.js"),require("../../../../utils/main.js"),require("../../../../utils/metrics/metricsConfig.js"),require("../../../../utils/mobileDetect.js"),require("../../../../utils/feed.js"),require("../../../../utils/reports.js"),require("moment-timezone");var u=require("../../../../utils/notificationToasts.js");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("@babel/runtime/helpers/typeof"),require("../../../../utils/dashboardReports.js"),require("../../../../utils/env.js"),require("file-extension"),require("image-extensions"),require("video-extensions"),require("../../../../utils/jsonaDataFormatter.js"),require("../../../../utils/bha.js"),require("jsona"),require("@babel/runtime/helpers/objectWithoutProperties"),require("classnames"),require("../../../../utils/charts/Styles.scss.js"),require("../../../../utils/getSingleAsset.js");var o=a(e),l=a(r),c={multiline:!0,autoHideDuration:1e4},d=function(){};exports.createIdasResyncController=function(e){var r,a=null,f=null,q=!1,p={assetId:null,currentUser:void 0,loadExternalOffsets:(r=o.default(l.default.mark((function e(){return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",void 0);case 1:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)})},j=function(r){var s;e.setState({status:r,isResyncInFlight:(s=r,s===t.IdasResyncStatus.TRIGGERED||s===t.IdasResyncStatus.RUNNING)})},v=function(){var e;null===(e=f)||void 0===e||e(),f=null},h=function(){a=null},m=function(){v(),h()},y=function(e){q&&(u.showErrorNotification(e,c),j(t.IdasResyncStatus.FAILED))},b=function(e,r){q&&e===a&&(h(),u.showSuccessNotification(r,c),j(t.IdasResyncStatus.SUCCEEDED))},g=function(){var e=o.default(l.default.mark((function e(r,s){return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,p.loadExternalOffsets();case 3:return e.prev=3,b(r,s),e.finish(3);case 6:case"end":return e.stop()}}),e,null,[[0,,3,6]])})));return function(r,s){return e.apply(this,arguments)}}(),I=function(e,r){e===a&&(m(),y(r||"Re-sync wells from IDAS failed"))},R=function(){var e=o.default(l.default.mark((function e(r){var t,n;return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=(t=p.currentUser)&&t.id){e.next=4;break}return I(r,void 0),e.abrupt("return");case 4:return e.prev=4,e.next=7,s.resyncIdasWells(t,r);case 7:"failed"===(null==(n=e.sent)?void 0:n.state)&&I(r,n.fail_reason),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(4),I(r,e.t0 instanceof Error?e.t0.message:void 0);case 14:case"end":return e.stop()}}),e,null,[[4,11]])})));return function(r){return e.apply(this,arguments)}}(),x=function(){var e=p,r=e.assetId,s=e.currentUser;if(r&&null!=s&&s.id&&null===a){var u=r;a=u;var o=n.getIdasResyncChannel(u);f=i.subscribeToIdasResync(o,(function(e){return function(e,r){q&&e===a&&(v(),"success"===(null==r?void 0:r.status)?g(e,r.message):(h(),y((null==r?void 0:r.message)||"Re-sync wells from IDAS failed")))}(u,e)})),j(t.IdasResyncStatus.RUNNING),R(u)}};return{activate:function(){q=!0,e.setState({triggerResync:x})},deactivate:function(){q=!1,m(),e.setState({triggerResync:d})},update:function(r){null!==a&&r.assetId!==a&&e.getState().isResyncInFlight&&(m(),j(t.IdasResyncStatus.INITIAL)),p=r}}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/regenerator");require("lodash"),require("@babel/runtime/helpers/toConsumableArray"),require("@babel/runtime/helpers/defineProperty"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../../clients/jsonApi/index.js"),require("../../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../../clients/api/apiCore.js"),require("../../../../clients/constants.js"),require("../../../../clients/sso/auth0.js"),require("../../../../clients/sso/oauth2.js"),require("../../../../clients/api/rateLimiter.js"),require("../../constants.js"),require("../../api/shared/dataFormatter.js"),require("@babel/runtime/helpers/slicedToArray");var s=require("../../api/external-offsets/resyncIdasWells.js"),t=require("./idas-resync.types.js"),n=require("./idasResyncChannel.js"),i=require("./subscribeToIdasResync.js");require("../../../UserMention/utils/index.js"),require("../../../../utils/convert.js"),require("../../../../constants/completion.js"),require("../../../../constants/alerts.js"),require("../../../../utils/casing/validation.js"),require("lodash/mean"),require("../../../../constants/streamSourceType.js"),require("file-saver"),require("query-string"),require("../../../../constants/goals.js"),require("../../../../constants/segment.js"),require("../../../../constants/apps.js"),require("../../../../constants/drillstring.js"),require("../../../../constants/appPackages.js"),require("../../../../constants/notifications.js"),require("../../../../constants/feed.js"),require("../../../../constants/bha.js"),require("../../../../constants/corvaCompanyId.js"),require("../../../GradientManager/configuration/constants.js"),require("../../../../utils/drillstring/conversion.js"),require("lodash/cloneDeep"),require("lodash/isNumber"),require("lodash/has"),require("../../../../utils/ga.js"),require("../../../../utils/goalsConfig/goalsConfig.js"),require("../../../../utils/lasParser.js"),require("../../../../utils/main.js"),require("../../../../utils/metrics/metricsConfig.js"),require("../../../../utils/mobileDetect.js"),require("../../../../utils/feed.js"),require("../../../../utils/reports.js"),require("moment-timezone");var u=require("../../../../utils/notificationToasts.js");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("@babel/runtime/helpers/typeof"),require("../../../../utils/dashboardReports.js"),require("../../../../utils/env.js"),require("file-extension"),require("image-extensions"),require("video-extensions"),require("../../../../utils/jsonaDataFormatter.js"),require("../../../../utils/bha.js"),require("jsona"),require("@babel/runtime/helpers/objectWithoutProperties"),require("classnames"),require("../../../../utils/charts/Styles.scss.js"),require("../../../../utils/getSingleAsset.js");var o=a(e),l=a(r),c={multiline:!0,autoHideDuration:1e4},d=function(){};exports.createIdasResyncController=function(e){var r,a=null,f=null,q=!1,p={assetId:null,currentUser:void 0,loadExternalOffsets:(r=o.default(l.default.mark((function e(){return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",void 0);case 1:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)})},j=function(r){var s;e.setState({status:r,isResyncInFlight:(s=r,s===t.IdasResyncStatus.TRIGGERED||s===t.IdasResyncStatus.RUNNING)})},v=function(){var e;null===(e=f)||void 0===e||e(),f=null},h=function(){a=null},m=function(){v(),h()},y=function(e){q&&(u.showErrorNotification(e,c),j(t.IdasResyncStatus.FAILED))},b=function(e,r){q&&e===a&&(h(),u.showSuccessNotification(r,c),j(t.IdasResyncStatus.SUCCEEDED))},g=function(){var e=o.default(l.default.mark((function e(r,s){return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,p.loadExternalOffsets();case 3:return e.prev=3,b(r,s),e.finish(3);case 6:case"end":return e.stop()}}),e,null,[[0,,3,6]])})));return function(r,s){return e.apply(this,arguments)}}(),I=function(e,r){e===a&&(m(),y(r||"Re-sync wells from IDAS failed"))},R=function(){var e=o.default(l.default.mark((function e(r){var t,n;return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=(t=p.currentUser)&&t.id){e.next=4;break}return I(r,void 0),e.abrupt("return");case 4:return e.prev=4,e.next=7,s.resyncIdasWells(t,r);case 7:"failed"===(null==(n=e.sent)?void 0:n.state)&&I(r,n.fail_reason),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(4),I(r,e.t0 instanceof Error?e.t0.message:void 0);case 14:case"end":return e.stop()}}),e,null,[[4,11]])})));return function(r){return e.apply(this,arguments)}}(),x=function(){var e=p,r=e.assetId,s=e.currentUser;if(r&&null!=s&&s.id&&null===a){var u=r;a=u;var o=n.getIdasResyncChannel(u);f=i.subscribeToIdasResync(o,(function(e){return function(e,r){q&&e===a&&(v(),"success"===(null==r?void 0:r.status)?g(e,r.message):(h(),y((null==r?void 0:r.message)||"Re-sync wells from IDAS failed")))}(u,e)})),j(t.IdasResyncStatus.RUNNING),R(u)}};return{activate:function(){q=!0,e.setState({triggerResync:x})},deactivate:function(){q=!1,m(),e.setState({triggerResync:d})},update:function(r){null!==a&&r.assetId!==a&&e.getState().isResyncInFlight&&(m(),j(t.IdasResyncStatus.INITIAL)),p=r}}};
2
2
  //# sourceMappingURL=createIdasResyncController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createIdasResyncController.js","sources":["../../../../../../src/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.ts"],"sourcesContent":["import { resyncIdasWells } from '../../api';\nimport type { PickerPropsStore } from '../picker-props-store';\n\nimport type { IdasResyncStoreApi } from './createIdasResyncStore';\nimport {\n IdasResyncStatus,\n type IdasResyncStatusValue,\n type IdasSubscriptionPayload,\n} from './idas-resync.types';\nimport { getIdasResyncChannel } from './idasResyncChannel';\nimport { subscribeToIdasResync } from './subscribeToIdasResync';\n\nimport { showErrorNotification, showSuccessNotification } from '~/utils';\n\ntype ControllerUser = PickerPropsStore['currentUser'];\n\nexport type IdasResyncControllerInputs = {\n assetId: number | null;\n currentUser: ControllerUser;\n loadExternalOffsets: () => Promise<void>;\n};\n\nexport type IdasResyncController = {\n activate: () => void;\n deactivate: () => void;\n update: (inputs: IdasResyncControllerInputs) => void;\n};\n\nconst RESYNC_FAILED_FALLBACK = 'Re-sync wells from IDAS failed';\n\nconst TOAST_OPTIONS = { multiline: true, autoHideDuration: 10_000 };\n\nconst noop = (): void => undefined;\n\nconst isInFlightStatus = (status: IdasResyncStatusValue): boolean =>\n status === IdasResyncStatus.TRIGGERED || status === IdasResyncStatus.RUNNING;\n\n/**\n * Drives the IDAS re-sync state machine for a subject asset and writes its\n * state into `IdasResyncStore`. Consumers (e.g. `HeaderActions`,\n * `PickerModalActions`, `OffsetWellPickerV5`) subscribe via\n * `useIdasResyncStore` instead of having props drilled through the tree.\n *\n * Flow: subscribe → POST task → resolve via subscription event\n * ({ status, message }). The task-app response is used only for dual-track\n * failure detection (state === 'failed'); the underlying app's outcome is\n * carried by the subscription message.\n *\n * The socket is wired manually via `subscribeToIdasResync` rather than\n * `useSubscriptionsV2` because we want no historical fetch and explicit\n * single-shot teardown. See `subscribeToIdasResync.ts` for the rationale.\n *\n * We do NOT gate the POST on a socket ack: the upstream `_emit`\n * mis-routes the ack callback so it would never fire. The theoretical\n * race window (local listener attached but channel not yet registered\n * server-side) is dwarfed by worker latency.\n *\n * KNOWN LIMITATION: the subscription payload has no correlation/request id,\n * so a delayed event from a previous same-asset run — or another user's\n * same-asset run — could resolve the current run with the wrong outcome.\n * Tracked separately; backend needs to attach a request_id to the payload.\n *\n * Construction is side-effect-free. `activate()` installs `triggerResync`\n * into the store and arms the controller; `deactivate()` aborts any in-flight\n * resync and resets the store's `triggerResync` back to a noop. The pair is\n * idempotent so it survives React 18 StrictMode setup→cleanup→setup replay.\n */\nexport const createIdasResyncController = (storeApi: IdasResyncStoreApi): IdasResyncController => {\n let triggeredAssetId: number | null = null;\n let unsubscribe: (() => void) | null = null;\n let mounted = false;\n let inputs: IdasResyncControllerInputs = {\n assetId: null,\n currentUser: undefined,\n loadExternalOffsets: async () => undefined,\n };\n\n const setStatus = (next: IdasResyncStatusValue): void => {\n storeApi.setState({ status: next, isResyncInFlight: isInFlightStatus(next) });\n };\n\n const stopSubscription = (): void => {\n unsubscribe?.();\n unsubscribe = null;\n };\n\n const clearActive = (): void => {\n triggeredAssetId = null;\n };\n\n const abort = (): void => {\n stopSubscription();\n clearActive();\n };\n\n const showError = (message: string): void => {\n if (!mounted) {\n return;\n }\n\n showErrorNotification(message, TOAST_OPTIONS);\n setStatus(IdasResyncStatus.FAILED);\n };\n\n const finalizeSuccessIfCurrent = (capturedAssetId: number, message: string): void => {\n if (!mounted) {\n return;\n }\n\n if (capturedAssetId !== triggeredAssetId) {\n return;\n }\n\n clearActive();\n showSuccessNotification(message, TOAST_OPTIONS);\n setStatus(IdasResyncStatus.SUCCEEDED);\n };\n\n const finishSuccess = async (capturedAssetId: number, message: string): Promise<void> => {\n try {\n await inputs.loadExternalOffsets();\n } finally {\n finalizeSuccessIfCurrent(capturedAssetId, message);\n }\n };\n\n const handleSubscriptionMessage = (\n capturedAssetId: number,\n payload: IdasSubscriptionPayload\n ): void => {\n if (!mounted) {\n return;\n }\n\n if (capturedAssetId !== triggeredAssetId) {\n return;\n }\n\n stopSubscription();\n\n if (payload?.status === 'success') {\n finishSuccess(capturedAssetId, payload.message);\n } else {\n clearActive();\n showError(payload?.message || RESYNC_FAILED_FALLBACK);\n }\n };\n\n const handleTaskAppFailure = (capturedAssetId: number, reason: string | undefined): void => {\n if (capturedAssetId !== triggeredAssetId) {\n return;\n }\n\n abort();\n showError(reason || RESYNC_FAILED_FALLBACK);\n };\n\n const postResyncTask = async (capturedAssetId: number): Promise<void> => {\n const user = inputs.currentUser;\n\n if (!user?.id) {\n handleTaskAppFailure(capturedAssetId, undefined);\n return;\n }\n\n try {\n const response = await resyncIdasWells(user, capturedAssetId);\n\n if (response?.state === 'failed') {\n handleTaskAppFailure(capturedAssetId, response.fail_reason);\n }\n } catch (err) {\n handleTaskAppFailure(capturedAssetId, err instanceof Error ? err.message : undefined);\n }\n };\n\n const triggerResync = (): void => {\n const { assetId, currentUser } = inputs;\n\n if (!assetId || !currentUser?.id) {\n return;\n }\n\n // Ref-based in-flight guard so two synchronous calls (e.g. double-click\n // before React commits state) collapse to one subscribe.\n if (triggeredAssetId !== null) {\n return;\n }\n\n const capturedAssetId = assetId;\n triggeredAssetId = capturedAssetId;\n\n const channel = getIdasResyncChannel(capturedAssetId);\n\n unsubscribe = subscribeToIdasResync(channel, payload =>\n handleSubscriptionMessage(capturedAssetId, payload)\n );\n\n // We deliberately skip socket-ack gating and fire the POST immediately:\n // the upstream `SubscriptionsClientV2._emit` mis-uses `emitWithAck`, so\n // any ack we register never fires. Worker latency dwarfs the\n // listener-vs-channel-registration window, so the race is harmless in\n // practice.\n setStatus(IdasResyncStatus.RUNNING);\n postResyncTask(capturedAssetId);\n };\n\n return {\n activate: () => {\n mounted = true;\n storeApi.setState({ triggerResync });\n },\n deactivate: () => {\n mounted = false;\n abort();\n storeApi.setState({ triggerResync: noop });\n },\n update: next => {\n if (\n triggeredAssetId !== null &&\n next.assetId !== triggeredAssetId &&\n storeApi.getState().isResyncInFlight\n ) {\n abort();\n setStatus(IdasResyncStatus.INITIAL);\n }\n inputs = next;\n },\n };\n};\n"],"names":["TOAST_OPTIONS","multiline","autoHideDuration","noop","storeApi","_loadExternalOffsets","triggeredAssetId","unsubscribe","mounted","inputs","assetId","currentUser","undefined","loadExternalOffsets","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","abrupt","stop","apply","this","arguments","setStatus","status","setState","isResyncInFlight","IdasResyncStatus","TRIGGERED","RUNNING","stopSubscription","_unsubscribe","clearActive","abort","showError","message","showErrorNotification","FAILED","finalizeSuccessIfCurrent","capturedAssetId","showSuccessNotification","SUCCEEDED","finishSuccess","_ref","_callee2","_context2","finish","_x","_x2","handleTaskAppFailure","reason","postResyncTask","_ref2","user","response","_context3","id","resyncIdasWells","sent","state","fail_reason","t0","Error","_callee3","_x3","triggerResync","_inputs","channel","getIdasResyncChannel","subscribeToIdasResync","payload","handleSubscriptionMessage","activate","deactivate","update","getState","INITIAL"],"mappings":"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"}
1
+ {"version":3,"file":"createIdasResyncController.js","sources":["../../../../../../src/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.ts"],"sourcesContent":["import { resyncIdasWells } from '../../api';\nimport type { PickerPropsStore } from '../picker-props-store';\n\nimport type { IdasResyncStoreApi } from './createIdasResyncStore';\nimport {\n IdasResyncStatus,\n type IdasResyncStatusValue,\n type IdasSubscriptionPayload,\n} from './idas-resync.types';\nimport { getIdasResyncChannel } from './idasResyncChannel';\nimport { subscribeToIdasResync } from './subscribeToIdasResync';\n\nimport { showErrorNotification, showSuccessNotification } from '~/utils';\n\ntype ControllerUser = PickerPropsStore['currentUser'];\n\nexport type IdasResyncControllerInputs = {\n assetId: number | null;\n currentUser: ControllerUser;\n loadExternalOffsets: () => Promise<void>;\n};\n\nexport type IdasResyncController = {\n activate: () => void;\n deactivate: () => void;\n update: (inputs: IdasResyncControllerInputs) => void;\n};\n\nconst RESYNC_FAILED_FALLBACK = 'Re-sync wells from IDAS failed';\n\nconst TOAST_OPTIONS = { multiline: true, autoHideDuration: 10_000 };\n\nconst noop = (): void => undefined;\n\nconst isInFlightStatus = (status: IdasResyncStatusValue): boolean =>\n status === IdasResyncStatus.TRIGGERED || status === IdasResyncStatus.RUNNING;\n\n/**\n * Drives the IDAS re-sync state machine for a subject asset and writes its\n * state into `IdasResyncStore`. Consumers (e.g. `HeaderActions`,\n * `PickerModalActions`, `OffsetWellPickerV5`) subscribe via\n * `useIdasResyncStore` instead of having props drilled through the tree.\n *\n * Flow: subscribe → POST task → resolve via subscription event\n * ({ status, message }). The task-app response is used only for dual-track\n * failure detection (state === 'failed'); the underlying app's outcome is\n * carried by the subscription message.\n *\n * The socket is wired manually via `subscribeToIdasResync` rather than\n * `useSubscriptionsV2` because we want no historical fetch and explicit\n * single-shot teardown. See `subscribeToIdasResync.ts` for the rationale.\n *\n * We do NOT gate the POST on a socket ack: the upstream `_emit`\n * mis-routes the ack callback so it would never fire. The theoretical\n * race window (local listener attached but channel not yet registered\n * server-side) is dwarfed by worker latency.\n *\n * KNOWN LIMITATION: the subscription payload has no correlation/request id,\n * so a delayed event from a previous same-asset run — or another user's\n * same-asset run — could resolve the current run with the wrong outcome.\n * Tracked separately; backend needs to attach a request_id to the payload.\n *\n * Construction is side-effect-free. `activate()` installs `triggerResync`\n * into the store and arms the controller; `deactivate()` aborts any in-flight\n * resync and resets the store's `triggerResync` back to a noop. The pair is\n * idempotent so it survives React 18 StrictMode setup→cleanup→setup replay.\n */\nexport const createIdasResyncController = (storeApi: IdasResyncStoreApi): IdasResyncController => {\n let triggeredAssetId: number | null = null;\n let unsubscribe: (() => void) | null = null;\n let mounted = false;\n let inputs: IdasResyncControllerInputs = {\n assetId: null,\n currentUser: undefined,\n loadExternalOffsets: async () => undefined,\n };\n\n const setStatus = (next: IdasResyncStatusValue): void => {\n storeApi.setState({ status: next, isResyncInFlight: isInFlightStatus(next) });\n };\n\n const stopSubscription = (): void => {\n unsubscribe?.();\n unsubscribe = null;\n };\n\n const clearActive = (): void => {\n triggeredAssetId = null;\n };\n\n const abort = (): void => {\n stopSubscription();\n clearActive();\n };\n\n const showError = (message: string): void => {\n if (!mounted) {\n return;\n }\n\n showErrorNotification(message, TOAST_OPTIONS);\n setStatus(IdasResyncStatus.FAILED);\n };\n\n const finalizeSuccessIfCurrent = (capturedAssetId: number, message: string): void => {\n if (!mounted) {\n return;\n }\n\n if (capturedAssetId !== triggeredAssetId) {\n return;\n }\n\n clearActive();\n showSuccessNotification(message, TOAST_OPTIONS);\n setStatus(IdasResyncStatus.SUCCEEDED);\n };\n\n const finishSuccess = async (capturedAssetId: number, message: string): Promise<void> => {\n try {\n await inputs.loadExternalOffsets();\n } finally {\n finalizeSuccessIfCurrent(capturedAssetId, message);\n }\n };\n\n const handleSubscriptionMessage = (\n capturedAssetId: number,\n payload: IdasSubscriptionPayload\n ): void => {\n if (!mounted) {\n return;\n }\n\n if (capturedAssetId !== triggeredAssetId) {\n return;\n }\n\n stopSubscription();\n\n if (payload?.status === 'success') {\n finishSuccess(capturedAssetId, payload.message);\n } else {\n clearActive();\n showError(payload?.message || RESYNC_FAILED_FALLBACK);\n }\n };\n\n const handleTaskAppFailure = (capturedAssetId: number, reason: string | undefined): void => {\n if (capturedAssetId !== triggeredAssetId) {\n return;\n }\n\n abort();\n showError(reason || RESYNC_FAILED_FALLBACK);\n };\n\n const postResyncTask = async (capturedAssetId: number): Promise<void> => {\n const user = inputs.currentUser;\n\n if (!user?.id) {\n handleTaskAppFailure(capturedAssetId, undefined);\n return;\n }\n\n try {\n const response = await resyncIdasWells(user, capturedAssetId);\n\n if (response?.state === 'failed') {\n handleTaskAppFailure(capturedAssetId, response.fail_reason);\n }\n } catch (err) {\n handleTaskAppFailure(capturedAssetId, err instanceof Error ? err.message : undefined);\n }\n };\n\n const triggerResync = (): void => {\n const { assetId, currentUser } = inputs;\n\n if (!assetId || !currentUser?.id) {\n return;\n }\n\n // Ref-based in-flight guard so two synchronous calls (e.g. double-click\n // before React commits state) collapse to one subscribe.\n if (triggeredAssetId !== null) {\n return;\n }\n\n const capturedAssetId = assetId;\n triggeredAssetId = capturedAssetId;\n\n const channel = getIdasResyncChannel(capturedAssetId);\n\n unsubscribe = subscribeToIdasResync(channel, payload =>\n handleSubscriptionMessage(capturedAssetId, payload)\n );\n\n // We deliberately skip socket-ack gating and fire the POST immediately:\n // the upstream `SubscriptionsClientV2._emit` mis-uses `emitWithAck`, so\n // any ack we register never fires. Worker latency dwarfs the\n // listener-vs-channel-registration window, so the race is harmless in\n // practice.\n setStatus(IdasResyncStatus.RUNNING);\n postResyncTask(capturedAssetId);\n };\n\n return {\n activate: () => {\n mounted = true;\n storeApi.setState({ triggerResync });\n },\n deactivate: () => {\n mounted = false;\n abort();\n storeApi.setState({ triggerResync: noop });\n },\n update: next => {\n if (\n triggeredAssetId !== null &&\n next.assetId !== triggeredAssetId &&\n storeApi.getState().isResyncInFlight\n ) {\n abort();\n setStatus(IdasResyncStatus.INITIAL);\n }\n inputs = next;\n },\n };\n};\n"],"names":["TOAST_OPTIONS","multiline","autoHideDuration","noop","storeApi","_loadExternalOffsets","triggeredAssetId","unsubscribe","mounted","inputs","assetId","currentUser","undefined","loadExternalOffsets","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","abrupt","stop","apply","this","arguments","setStatus","status","setState","isResyncInFlight","IdasResyncStatus","TRIGGERED","RUNNING","stopSubscription","_unsubscribe","clearActive","abort","showError","message","showErrorNotification","FAILED","finalizeSuccessIfCurrent","capturedAssetId","showSuccessNotification","SUCCEEDED","finishSuccess","_ref","_callee2","_context2","finish","_x","_x2","handleTaskAppFailure","reason","postResyncTask","_ref2","user","response","_context3","id","resyncIdasWells","sent","state","fail_reason","t0","Error","_callee3","_x3","triggerResync","_inputs","channel","getIdasResyncChannel","subscribeToIdasResync","payload","handleSubscriptionMessage","activate","deactivate","update","getState","INITIAL"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/slicedToArray"),r=require("react"),i=require("../utils/initialDataFetcher.js"),a=require("./useWellStreamsData.js"),n=require("../../../clients/index.js");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=o(e),s=o(t);function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?u(Object(r),!0).forEach((function(t){c.default(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):u(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var p={provider:"corva",collection:"completion.wits",event:"",params:{fields:"timestamp,collection,asset_id",limit:1,sort:"{ timestamp: -1 }"}},m={provider:"corva",collection:"wireline.wits",event:"",params:{fields:"timestamp,collection,asset_id,data.state",limit:1,sort:"{ timestamp: -1 }"}};exports.useWellStreamActivityTypeSubscription=function(e){var t=e.currentWellId,o=e.isStatusShown,c=e.withSubscription,u=r.useState({timestamp:0}),f=s.default(u,2),d=f[0],b=f[1],v=r.useState({timestamp:0}),y=s.default(v,2),O=y[0],h=y[1],j=r.useRef([]),w=a({isStatusShown:o,currentWellId:t,wirelineData:d,fracData:O}),S=function(e){var t=e.data[0]||{},r=t.collection,i=t.timestamp,a=t.data,n=t.stage_number;if(!i)return b({timestamp:0}),void h({timestamp:0});r===m.collection?b((function(e){return l(l({},e),{},{timestamp:i,stageNumber:n,data:a})})):r===p.collection&&h((function(e){return l(l({},e),{},{timestamp:i})}))},D=function(e,t){var r={provider:t.provider,collection:t.collection,event:t.event,params:t.params,assetId:e},i=n.socketClient.subscribe(r,{onDataReceive:S});j.current.push(i)};return r.useLayoutEffect((function(){if(t){var e=i.initialDataFetcher(p),r=i.initialDataFetcher(m),a=[e(t),r(t)];return c&&(D(t,p),D(t,m)),Promise.all(a).then((function(e){e.forEach((function(e){e&&S({data:e})}))})),function(){j.current.forEach((function(e){return e()})),j.current=[],b({timestamp:0}),h({timestamp:0})}}}),[t]),w};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/slicedToArray"),r=require("react"),i=require("../utils/initialDataFetcher.js"),s=require("./useWellStreamsData.js");require("@babel/runtime/helpers/toConsumableArray"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../../clients/jsonApi/index.js"),require("../../../clients/subscriptions/subscriptions-client.factory.js"),require("../../../clients/api/apiCore.js"),require("../../../clients/constants.js"),require("../../../clients/sso/auth0.js"),require("../../../clients/sso/oauth2.js");var n=require("../../../clients/subscriptions/socket-client.v2.js");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("../../../clients/api/rateLimiter.js");var o=a(e),c=a(t);function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?u(Object(r),!0).forEach((function(t){o.default(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):u(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var p={provider:"corva",collection:"completion.wits",event:"",params:{fields:"timestamp,collection,asset_id",limit:1,sort:"{ timestamp: -1 }"}},m={provider:"corva",collection:"wireline.wits",event:"",params:{fields:"timestamp,collection,asset_id,data.state",limit:1,sort:"{ timestamp: -1 }"}};exports.useWellStreamActivityTypeSubscription=function(e){var t=e.currentWellId,a=e.isStatusShown,o=e.withSubscription,u=r.useState({timestamp:0}),f=c.default(u,2),b=f[0],d=f[1],v=r.useState({timestamp:0}),j=c.default(v,2),h=j[0],y=j[1],q=r.useRef([]),O=s({isStatusShown:a,currentWellId:t,wirelineData:b,fracData:h}),w=function(e){var t=e.data[0]||{},r=t.collection,i=t.timestamp,s=t.data,n=t.stage_number;if(!i)return d({timestamp:0}),void y({timestamp:0});r===m.collection?d((function(e){return l(l({},e),{},{timestamp:i,stageNumber:n,data:s})})):r===p.collection&&y((function(e){return l(l({},e),{},{timestamp:i})}))},S=function(e,t){var r={provider:t.provider,collection:t.collection,event:t.event,params:t.params,assetId:e},i=n.socketClientV2.subscribe(r,{onDataReceive:w});q.current.push(i)};return r.useLayoutEffect((function(){if(t){var e=i.initialDataFetcher(p),r=i.initialDataFetcher(m),s=[e(t),r(t)];return o&&(S(t,p),S(t,m)),Promise.all(s).then((function(e){e.forEach((function(e){e&&w({data:e})}))})),function(){q.current.forEach((function(e){return e()})),q.current=[],d({timestamp:0}),y({timestamp:0})}}}),[t]),O};
2
2
  //# sourceMappingURL=useWellStreamActivityTypeSubscription.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useWellStreamActivityTypeSubscription.js","sources":["../../../../../src/components/PadModeSelect/effects/useWellStreamActivityTypeSubscription.ts"],"sourcesContent":["import { useState, useRef, useLayoutEffect } from 'react';\n\nimport {\n AssetStreamStatus,\n StreamDataItem,\n CompletionWitsRecord,\n WirelineWitsRecord,\n} from '../types';\nimport { initialDataFetcher } from '../utils/initialDataFetcher';\n\nimport useWellStreamsData from './useWellStreamsData';\n\nimport { socketClient } from '~/clients';\n\ntype WitsRecord = CompletionWitsRecord | WirelineWitsRecord;\n\nconst FRAC_SUBSCRIPTION = {\n provider: 'corva',\n collection: 'completion.wits',\n event: '' as const,\n params: {\n fields: 'timestamp,collection,asset_id',\n limit: 1,\n sort: '{ timestamp: -1 }',\n },\n};\n\nconst WIRELINE_SUBSCRIPTION = {\n provider: 'corva',\n collection: 'wireline.wits',\n event: '' as const,\n params: {\n fields: 'timestamp,collection,asset_id,data.state',\n limit: 1,\n sort: '{ timestamp: -1 }',\n },\n};\n\ntype StreamSubscriptionProps = {\n isStatusShown: boolean;\n currentWellId?: number;\n withSubscription?: boolean;\n};\n\n// subscribe for completion.wits and wireline.wits live data\nexport function useWellStreamActivityTypeSubscription({\n currentWellId,\n isStatusShown,\n withSubscription,\n}: StreamSubscriptionProps): AssetStreamStatus {\n const [wirelineData, setWirelineData] = useState<StreamDataItem>({ timestamp: 0 });\n const [fracData, setFracData] = useState<StreamDataItem>({ timestamp: 0 });\n\n const unsubscribeFunctions = useRef<(() => void)[]>([]);\n\n const wellStreams = useWellStreamsData({\n isStatusShown,\n currentWellId,\n wirelineData,\n fracData,\n });\n\n const onDataReceive = ({ data: response }: { data: WitsRecord[] }) => {\n const { collection, timestamp, data, stage_number: stageNumber } = response[0] || {};\n if (!timestamp) {\n setWirelineData({ timestamp: 0 });\n setFracData({ timestamp: 0 });\n return;\n }\n\n if (collection === WIRELINE_SUBSCRIPTION.collection) {\n setWirelineData(previousData => ({\n ...previousData,\n timestamp,\n stageNumber,\n data,\n }));\n } else if (collection === FRAC_SUBSCRIPTION.collection) {\n setFracData(previousData => ({ ...previousData, timestamp }));\n }\n };\n\n const subscribe = (assetId: number, subscriptionInfo: typeof FRAC_SUBSCRIPTION) => {\n const { provider, collection, event, params } = subscriptionInfo;\n const subscription = { provider, collection, event, params, assetId };\n const unsubscribe = socketClient.subscribe(subscription, { onDataReceive });\n unsubscribeFunctions.current.push(unsubscribe);\n };\n\n useLayoutEffect(() => {\n if (!currentWellId) {\n return undefined;\n }\n\n const fetchInitialFrac = initialDataFetcher(FRAC_SUBSCRIPTION);\n const fetchInitialWireline = initialDataFetcher(WIRELINE_SUBSCRIPTION);\n\n const wellRequests = [fetchInitialFrac(currentWellId), fetchInitialWireline(currentWellId)];\n\n if (withSubscription) {\n subscribe(currentWellId, FRAC_SUBSCRIPTION);\n subscribe(currentWellId, WIRELINE_SUBSCRIPTION);\n }\n\n Promise.all(wellRequests).then(response => {\n response.forEach(data => {\n if (data) {\n onDataReceive({ data });\n }\n });\n });\n\n // cleanup subscriptions for pad mode open/close\n return () => {\n unsubscribeFunctions.current.forEach(unsubscribe => unsubscribe());\n unsubscribeFunctions.current = [];\n setWirelineData({ timestamp: 0 });\n setFracData({ timestamp: 0 });\n };\n }, [currentWellId]);\n return wellStreams;\n}\n"],"names":["FRAC_SUBSCRIPTION","provider","collection","event","params","fields","limit","sort","WIRELINE_SUBSCRIPTION","_ref","currentWellId","isStatusShown","withSubscription","_useState","useState","timestamp","_useState2","_slicedToArray","wirelineData","setWirelineData","_useState3","_useState4","fracData","setFracData","unsubscribeFunctions","useRef","wellStreams","useWellStreamsData","onDataReceive","_ref2","_ref3","data","stageNumber","stage_number","previousData","_objectSpread","subscribe","assetId","subscriptionInfo","subscription","unsubscribe","socketClient","current","push","useLayoutEffect","fetchInitialFrac","initialDataFetcher","fetchInitialWireline","wellRequests","Promise","all","then","response","forEach"],"mappings":"y9BAgBA,IAAMA,EAAoB,CACxBC,SAAU,QACVC,WAAY,kBACZC,MAAO,GACPC,OAAQ,CACNC,OAAQ,gCACRC,MAAO,EACPC,KAAM,sBAIJC,EAAwB,CAC5BP,SAAU,QACVC,WAAY,gBACZC,MAAO,GACPC,OAAQ,CACNC,OAAQ,2CACRC,MAAO,EACPC,KAAM,oEAWH,SAIwCE,GAAA,IAH7CC,IAAAA,cACAC,IAAAA,cACAC,IAAAA,iBAEAC,EAAwCC,EAAAA,SAAyB,CAAEC,UAAW,IAAIC,EAAAC,EAAAA,QAAAJ,EAAA,GAA3EK,EAAYF,EAAA,GAAEG,EAAeH,EAAA,GACpCI,EAAgCN,EAAAA,SAAyB,CAAEC,UAAW,IAAIM,EAAAJ,EAAAA,QAAAG,EAAA,GAAnEE,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAEtBG,EAAuBC,SAAuB,IAE9CC,EAAcC,EAAmB,CACrChB,cAAAA,EACAD,cAAAA,EACAQ,aAAAA,EACAI,SAAAA,IAGIM,EAAgB,SAAgDC,GAAA,IACpEC,IADuBC,KACqD,IAAM,CAAE,EAA5E7B,IAAAA,WAAYa,IAAAA,UAAWgB,IAAAA,KAAoBC,IAAdC,aACrC,IAAKlB,EAGH,OAFAI,EAAgB,CAAEJ,UAAW,SAC7BQ,EAAY,CAAER,UAAW,IAIvBb,IAAeM,EAAsBN,WACvCiB,GAAgB,SAAAe,GAAY,OAAAC,EAAAA,EAAA,CAAA,EACvBD,GAAY,CAAA,EAAA,CACfnB,UAAAA,EACAiB,YAAAA,EACAD,KAAAA,GAAI,IAEG7B,IAAeF,EAAkBE,YAC1CqB,GAAY,SAAAW,GAAY,OAAAC,EAAAA,EAAA,CAAA,EAAUD,GAAY,CAAA,EAAA,CAAEnB,UAAAA,GAAS,KAIvDqB,EAAY,SAACC,EAAiBC,GAClC,IACMC,EAAe,CAAEtC,SADyBqC,EAAxCrC,SACyBC,WADeoC,EAA9BpC,WAC2BC,MADGmC,EAAlBnC,MACsBC,OADJkC,EAAXlC,OACuBiC,QAAAA,GACtDG,EAAcC,EAAAA,aAAaL,UAAUG,EAAc,CAAEX,cAAAA,IAC3DJ,EAAqBkB,QAAQC,KAAKH,IAkCpC,OA/BAI,EAAAA,iBAAgB,WACd,GAAKlC,EAAL,CAIA,IAAMmC,EAAmBC,qBAAmB9C,GACtC+C,EAAuBD,qBAAmBtC,GAE1CwC,EAAe,CAACH,EAAiBnC,GAAgBqC,EAAqBrC,IAgB5E,OAdIE,IACFwB,EAAU1B,EAAeV,GACzBoC,EAAU1B,EAAeF,IAG3ByC,QAAQC,IAAIF,GAAcG,MAAK,SAAAC,GAC7BA,EAASC,SAAQ,SAAAtB,GACXA,GACFH,EAAc,CAAEG,KAAAA,GAEpB,GACF,IAGO,WACLP,EAAqBkB,QAAQW,SAAQ,SAAAb,GAAW,OAAIA,OACpDhB,EAAqBkB,QAAU,GAC/BvB,EAAgB,CAAEJ,UAAW,IAC7BQ,EAAY,CAAER,UAAW,IAzB3B,CA2BF,GAAG,CAACL,IACGgB,CACT"}
1
+ {"version":3,"file":"useWellStreamActivityTypeSubscription.js","sources":["../../../../../src/components/PadModeSelect/effects/useWellStreamActivityTypeSubscription.ts"],"sourcesContent":["import { useState, useRef, useLayoutEffect } from 'react';\n\nimport {\n AssetStreamStatus,\n StreamDataItem,\n CompletionWitsRecord,\n WirelineWitsRecord,\n} from '../types';\nimport { initialDataFetcher } from '../utils/initialDataFetcher';\n\nimport useWellStreamsData from './useWellStreamsData';\n\nimport { socketClient } from '~/clients';\n\ntype WitsRecord = CompletionWitsRecord | WirelineWitsRecord;\n\nconst FRAC_SUBSCRIPTION = {\n provider: 'corva',\n collection: 'completion.wits',\n event: '' as const,\n params: {\n fields: 'timestamp,collection,asset_id',\n limit: 1,\n sort: '{ timestamp: -1 }',\n },\n};\n\nconst WIRELINE_SUBSCRIPTION = {\n provider: 'corva',\n collection: 'wireline.wits',\n event: '' as const,\n params: {\n fields: 'timestamp,collection,asset_id,data.state',\n limit: 1,\n sort: '{ timestamp: -1 }',\n },\n};\n\ntype StreamSubscriptionProps = {\n isStatusShown: boolean;\n currentWellId?: number;\n withSubscription?: boolean;\n};\n\n// subscribe for completion.wits and wireline.wits live data\nexport function useWellStreamActivityTypeSubscription({\n currentWellId,\n isStatusShown,\n withSubscription,\n}: StreamSubscriptionProps): AssetStreamStatus {\n const [wirelineData, setWirelineData] = useState<StreamDataItem>({ timestamp: 0 });\n const [fracData, setFracData] = useState<StreamDataItem>({ timestamp: 0 });\n\n const unsubscribeFunctions = useRef<(() => void)[]>([]);\n\n const wellStreams = useWellStreamsData({\n isStatusShown,\n currentWellId,\n wirelineData,\n fracData,\n });\n\n const onDataReceive = ({ data: response }: { data: WitsRecord[] }) => {\n const { collection, timestamp, data, stage_number: stageNumber } = response[0] || {};\n if (!timestamp) {\n setWirelineData({ timestamp: 0 });\n setFracData({ timestamp: 0 });\n return;\n }\n\n if (collection === WIRELINE_SUBSCRIPTION.collection) {\n setWirelineData(previousData => ({\n ...previousData,\n timestamp,\n stageNumber,\n data,\n }));\n } else if (collection === FRAC_SUBSCRIPTION.collection) {\n setFracData(previousData => ({ ...previousData, timestamp }));\n }\n };\n\n const subscribe = (assetId: number, subscriptionInfo: typeof FRAC_SUBSCRIPTION) => {\n const { provider, collection, event, params } = subscriptionInfo;\n const subscription = { provider, collection, event, params, assetId };\n const unsubscribe = socketClient.subscribe(subscription, { onDataReceive });\n unsubscribeFunctions.current.push(unsubscribe);\n };\n\n useLayoutEffect(() => {\n if (!currentWellId) {\n return undefined;\n }\n\n const fetchInitialFrac = initialDataFetcher(FRAC_SUBSCRIPTION);\n const fetchInitialWireline = initialDataFetcher(WIRELINE_SUBSCRIPTION);\n\n const wellRequests = [fetchInitialFrac(currentWellId), fetchInitialWireline(currentWellId)];\n\n if (withSubscription) {\n subscribe(currentWellId, FRAC_SUBSCRIPTION);\n subscribe(currentWellId, WIRELINE_SUBSCRIPTION);\n }\n\n Promise.all(wellRequests).then(response => {\n response.forEach(data => {\n if (data) {\n onDataReceive({ data });\n }\n });\n });\n\n // cleanup subscriptions for pad mode open/close\n return () => {\n unsubscribeFunctions.current.forEach(unsubscribe => unsubscribe());\n unsubscribeFunctions.current = [];\n setWirelineData({ timestamp: 0 });\n setFracData({ timestamp: 0 });\n };\n }, [currentWellId]);\n return wellStreams;\n}\n"],"names":["FRAC_SUBSCRIPTION","provider","collection","event","params","fields","limit","sort","WIRELINE_SUBSCRIPTION","_ref","currentWellId","isStatusShown","withSubscription","_useState","useState","timestamp","_useState2","_slicedToArray","wirelineData","setWirelineData","_useState3","_useState4","fracData","setFracData","unsubscribeFunctions","useRef","wellStreams","useWellStreamsData","onDataReceive","_ref2","_ref3","data","stageNumber","stage_number","previousData","_objectSpread","subscribe","assetId","subscriptionInfo","subscription","unsubscribe","socketClient","current","push","useLayoutEffect","fetchInitialFrac","initialDataFetcher","fetchInitialWireline","wellRequests","Promise","all","then","response","forEach"],"mappings":"68CAgBA,IAAMA,EAAoB,CACxBC,SAAU,QACVC,WAAY,kBACZC,MAAO,GACPC,OAAQ,CACNC,OAAQ,gCACRC,MAAO,EACPC,KAAM,sBAIJC,EAAwB,CAC5BP,SAAU,QACVC,WAAY,gBACZC,MAAO,GACPC,OAAQ,CACNC,OAAQ,2CACRC,MAAO,EACPC,KAAM,oEAWH,SAIwCE,GAAA,IAH7CC,IAAAA,cACAC,IAAAA,cACAC,IAAAA,iBAEAC,EAAwCC,EAAAA,SAAyB,CAAEC,UAAW,IAAIC,EAAAC,EAAAA,QAAAJ,EAAA,GAA3EK,EAAYF,EAAA,GAAEG,EAAeH,EAAA,GACpCI,EAAgCN,EAAAA,SAAyB,CAAEC,UAAW,IAAIM,EAAAJ,EAAAA,QAAAG,EAAA,GAAnEE,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAEtBG,EAAuBC,SAAuB,IAE9CC,EAAcC,EAAmB,CACrChB,cAAAA,EACAD,cAAAA,EACAQ,aAAAA,EACAI,SAAAA,IAGIM,EAAgB,SAAgDC,GAAA,IACpEC,IADuBC,KACqD,IAAM,CAAE,EAA5E7B,IAAAA,WAAYa,IAAAA,UAAWgB,IAAAA,KAAoBC,IAAdC,aACrC,IAAKlB,EAGH,OAFAI,EAAgB,CAAEJ,UAAW,SAC7BQ,EAAY,CAAER,UAAW,IAIvBb,IAAeM,EAAsBN,WACvCiB,GAAgB,SAAAe,GAAY,OAAAC,EAAAA,EAAA,CAAA,EACvBD,GAAY,CAAA,EAAA,CACfnB,UAAAA,EACAiB,YAAAA,EACAD,KAAAA,GAAI,IAEG7B,IAAeF,EAAkBE,YAC1CqB,GAAY,SAAAW,GAAY,OAAAC,EAAAA,EAAA,CAAA,EAAUD,GAAY,CAAA,EAAA,CAAEnB,UAAAA,GAAS,KAIvDqB,EAAY,SAACC,EAAiBC,GAClC,IACMC,EAAe,CAAEtC,SADyBqC,EAAxCrC,SACyBC,WADeoC,EAA9BpC,WAC2BC,MADGmC,EAAlBnC,MACsBC,OADJkC,EAAXlC,OACuBiC,QAAAA,GACtDG,EAAcC,EAAAA,eAAaL,UAAUG,EAAc,CAAEX,cAAAA,IAC3DJ,EAAqBkB,QAAQC,KAAKH,IAkCpC,OA/BAI,EAAAA,iBAAgB,WACd,GAAKlC,EAAL,CAIA,IAAMmC,EAAmBC,qBAAmB9C,GACtC+C,EAAuBD,qBAAmBtC,GAE1CwC,EAAe,CAACH,EAAiBnC,GAAgBqC,EAAqBrC,IAgB5E,OAdIE,IACFwB,EAAU1B,EAAeV,GACzBoC,EAAU1B,EAAeF,IAG3ByC,QAAQC,IAAIF,GAAcG,MAAK,SAAAC,GAC7BA,EAASC,SAAQ,SAAAtB,GACXA,GACFH,EAAc,CAAEG,KAAAA,GAEpB,GACF,IAGO,WACLP,EAAqBkB,QAAQW,SAAQ,SAAAb,GAAW,OAAIA,OACpDhB,EAAqBkB,QAAU,GAC/BvB,EAAgB,CAAEJ,UAAW,IAC7BQ,EAAY,CAAER,UAAW,IAzB3B,CA2BF,GAAG,CAACL,IACGgB,CACT"}