@corva/ui 3.77.0-2 → 3.77.0-21
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.
- package/MCP_README.md +9 -6
- package/README.md +8 -2
- package/cjs-bundle/clients/jsonApi/index.js +1 -1
- package/cjs-bundle/clients/jsonApi/index.js.map +1 -1
- package/cjs-bundle/components/AddComment/Popover.js +1 -1
- package/cjs-bundle/components/AddComment/Popover.js.map +1 -1
- package/cjs-bundle/components/AddComment/components/Content.js +1 -1
- package/cjs-bundle/components/AddComment/components/Content.js.map +1 -1
- package/cjs-bundle/components/Annotations/components/AnnotationsList/components/AddAnnotationForm/index.js +1 -1
- package/cjs-bundle/components/Annotations/components/AnnotationsList/components/AddAnnotationForm/index.js.map +1 -1
- package/cjs-bundle/components/Annotations/components/AnnotationsList/index.js +1 -1
- package/cjs-bundle/components/Annotations/components/AnnotationsList/index.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/MultipleAssetsToggle.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/PrimaryAssetSelect.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/PrimaryAssetSelect.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/PrimaryAssetSelectV2.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/PrimaryAssetSelectV2.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/SecondaryAssetSelect.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/SecondaryAssetSelect.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/SelectItem.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/components/SelectItem.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/constants.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/effects/assetResponse.js +2 -0
- package/cjs-bundle/components/AssetEditorV2/effects/assetResponse.js.map +1 -0
- package/cjs-bundle/components/AssetEditorV2/effects/index.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/effects/index.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/index.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/index.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/utils/index.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/utils/index.js.map +1 -1
- package/cjs-bundle/components/AssetsMultipleSelector/AssetsMultipleSelector.js +1 -1
- package/cjs-bundle/components/AssetsMultipleSelector/AssetsMultipleSelector.js.map +1 -1
- package/cjs-bundle/components/Attachment/index.js +1 -1
- package/cjs-bundle/components/Attachment/index.js.map +1 -1
- package/cjs-bundle/components/AttachmentLightbox/AttachmentDocument.js +1 -1
- package/cjs-bundle/components/AttachmentLightbox/AttachmentDocument.js.map +1 -1
- package/cjs-bundle/components/BICOffsetPickerDialog/components/Map/Map.js +1 -1
- package/cjs-bundle/components/BICOffsetPickerDialog/components/Map/Map.js.map +1 -1
- package/cjs-bundle/components/BICOffsetPickerDialog/components/WellSection/index.js +1 -1
- package/cjs-bundle/components/BICOffsetPickerDialog/components/WellSection/index.js.map +1 -1
- package/cjs-bundle/components/BICOffsetPickerDialog/index.js +1 -1
- package/cjs-bundle/components/BICOffsetPickerDialog/index.js.map +1 -1
- package/cjs-bundle/components/Casing/CasingTableV2/components/CasingJoints/Editor.js +1 -1
- package/cjs-bundle/components/Casing/CasingTableV2/components/CasingJoints/Editor.js.map +1 -1
- package/cjs-bundle/components/Casing/CasingTableV2/components/Component.js +1 -1
- package/cjs-bundle/components/Casing/CasingTableV2/components/Component.js.map +1 -1
- package/cjs-bundle/components/Casing/CasingTableV2/components/DrillPipe/Editor.js +1 -1
- package/cjs-bundle/components/Casing/CasingTableV2/components/DrillPipe/Editor.js.map +1 -1
- package/cjs-bundle/components/CollapsableSidebar.js +1 -1
- package/cjs-bundle/components/CollapsableSidebar.js.map +1 -1
- package/cjs-bundle/components/CommentCard/CommentCard.js +1 -1
- package/cjs-bundle/components/CommentCard/CommentCard.js.map +1 -1
- package/cjs-bundle/components/CommentCard/CommentCard.scss.js +1 -1
- package/cjs-bundle/components/CommentComposer/useAttachmentUpload.js +1 -1
- package/cjs-bundle/components/CommentComposer/useAttachmentUpload.js.map +1 -1
- package/cjs-bundle/components/DevCenter/AppsDataProvider/effects/utils.js +1 -1
- package/cjs-bundle/components/DevCenter/AppsDataProvider/effects/utils.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchButton.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchButton.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/effects/useAppMaximized.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/effects/useAppMaximized.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js.map +1 -1
- package/cjs-bundle/components/DevCenter/IsolatedDevCenterAppContainer/IsolatedPage.js +1 -1
- package/cjs-bundle/components/DevCenter/IsolatedDevCenterAppContainer/IsolatedPage.js.map +1 -1
- package/cjs-bundle/components/DevCenter/IsolatedDevCenterAppContainer/effects/useXProps.js.map +1 -1
- package/cjs-bundle/components/DocumentViewer/DocumentViewer.js +1 -1
- package/cjs-bundle/components/DocumentViewer/DocumentViewer.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Component.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Component.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js.map +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js +1 -1
- package/cjs-bundle/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js.map +1 -1
- package/cjs-bundle/components/EmbeddedApp/EmbeddedApp.js +1 -1
- package/cjs-bundle/components/EmbeddedApp/EmbeddedApp.js.map +1 -1
- package/cjs-bundle/components/FeedItem/FeedItem.js +1 -1
- package/cjs-bundle/components/FeedItem/FeedItem.js.map +1 -1
- package/cjs-bundle/components/FeedItem/FeedItemEditProvider/FeedItemEditProvider.js +1 -1
- package/cjs-bundle/components/FeedItem/FeedItemEditProvider/FeedItemEditProvider.js.map +1 -1
- package/cjs-bundle/components/FeedItem/components/Content.js +1 -1
- package/cjs-bundle/components/FeedItem/components/Content.js.map +1 -1
- package/cjs-bundle/components/FeedItem/feedItemTypes/AppAnnotationFeedItem/index.js +1 -1
- package/cjs-bundle/components/FeedItem/feedItemTypes/AppAnnotationFeedItem/index.js.map +1 -1
- package/cjs-bundle/components/FeedItem/feedItemTypes/WellPlanFeedItem/index.js +1 -1
- package/cjs-bundle/components/FeedItem/feedItemTypes/WellPlanFeedItem/index.js.map +1 -1
- package/cjs-bundle/components/FilesLoaderV2/utils.js +1 -1
- package/cjs-bundle/components/FilesLoaderV2/utils.js.map +1 -1
- package/cjs-bundle/components/GradientManager/GradientManager.js +1 -1
- package/cjs-bundle/components/GradientManager/GradientManager.js.map +1 -1
- package/cjs-bundle/components/GradientManager/GradientSelect.js +1 -1
- package/cjs-bundle/components/GradientManager/GradientSelect.js.map +1 -1
- package/cjs-bundle/components/InfiniteList/index.js +1 -1
- package/cjs-bundle/components/InfiniteList/index.js.map +1 -1
- package/cjs-bundle/components/OffsetWellMap/OffsetWellMap.js +1 -1
- package/cjs-bundle/components/OffsetWellMap/OffsetWellMap.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/OffsetWellPickerDialog.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/OffsetWellPickerDialog.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Map/Map.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Map/Map.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/constants.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/constants.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/effects/index.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/effects/index.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/components/Map/Map.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/components/Map/Map.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/constants.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/constants.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/effects/index.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/effects/index.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/index.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/CustomSelectionView/index.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/index.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/TabSelection/index.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/WellHubView/index.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/WellHubView/index.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/index.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV3/index.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useMapTooltipState.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useMapTooltipState.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useOffsetWellMapState.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useOffsetWellMapState.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useSelectionToolOrchestration.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useSelectionToolOrchestration.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/utils/well-markers-utils.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/utils/well-markers-utils.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/MetricsCells/MetricsCells.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/MetricsCells/MetricsCells.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.module.css.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/OffsetWellsTableRow/OffsetWellsTableRow.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/OffsetWellsTableRow/OffsetWellsTableRow.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/useRowInteractions.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/useRowInteractions.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/constants.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/constants.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/wellTransformations.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/wellTransformations.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useAutoSyncOffsetWells.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useAutoSyncOffsetWells.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useIsAdmin.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useIsAdmin.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useLimitNotification.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useLimitNotification.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/stores/filter-store/types.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/utils/getCoordinatedWells.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/utils/getCoordinatedWells.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/utils/getTimestampByPeriod.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/utils/getTimestampByPeriod.js.map +1 -1
- package/cjs-bundle/components/PadOffsetsPicker/StagesSelector.js +1 -1
- package/cjs-bundle/components/PadOffsetsPicker/StagesSelector.js.map +1 -1
- package/cjs-bundle/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js +1 -1
- package/cjs-bundle/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js.map +1 -1
- package/cjs-bundle/components/RealTimeValuesSidebar/SidebarFooter.js +1 -1
- package/cjs-bundle/components/RealTimeValuesSidebar/SidebarFooter.js.map +1 -1
- package/cjs-bundle/components/Search/Search.js.map +1 -1
- package/cjs-bundle/componentsV2/AppFooter/DqPopover/DqPopover.js +1 -1
- package/cjs-bundle/componentsV2/AppFooter/DqPopover/DqPopover.js.map +1 -1
- package/cjs-bundle/componentsV2/AppHeader/AppAssets/utils.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/AppAssets/utils.js.map +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/Actions/Actions.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/Actions/Actions.js.map +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AppTitle/AppTitle.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AppTitle/AppTitle.js.map +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js.map +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js.map +1 -1
- package/cjs-bundle/componentsV2/AppPanel/AppPanelDisplay.js +1 -1
- package/cjs-bundle/componentsV2/AppPanel/AppPanelDisplay.js.map +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/Map/Map.js +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/Map/Map.js.map +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/PadsTable/PadsTable.js +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/PadsTable/PadsTable.js.map +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/PadsTable/PadsTable.scss.js +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/PadsTable/helpers/columns.js +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/PadsTable/helpers/columns.js.map +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/hooks/useNonActivePads.js +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/hooks/useNonActivePads.js.map +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/hooks/usePadsByRadius.js +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/hooks/usePadsByRadius.js.map +1 -1
- package/cjs-bundle/componentsV2/FilesDropzone/utils.js +1 -1
- package/cjs-bundle/componentsV2/FilesDropzone/utils.js.map +1 -1
- package/cjs-bundle/componentsV2/FilesLoader/utils.js +1 -1
- package/cjs-bundle/componentsV2/FilesLoader/utils.js.map +1 -1
- package/cjs-bundle/componentsV2/IndicatorLive/IndicatorLive.js.map +1 -1
- package/cjs-bundle/componentsV2/PadModeSelect/PadModeSelect.js +1 -1
- package/cjs-bundle/componentsV2/PadModeSelect/PadModeSelect.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/PublishModal/PublishModal.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/PublishModal/PublishModal.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/ShareModal/ShareModal.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/ShareModal/ShareModal.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useCopyTemplate.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useCopyTemplate.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useCreateTemplate.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useCreateTemplate.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useDeleteFolder.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useDeleteFolder.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useDeleteTemplate.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useDeleteTemplate.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useExportTemplate.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useExportTemplate.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useImportTemplate.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useImportTemplate.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useInitialize.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useInitialize.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useMoveToFolder.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useMoveToFolder.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useRevertToOriginal.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useRevertToOriginal.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useShareTemplate.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useShareTemplate.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useUnfollowTemplate.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useUnfollowTemplate.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useUpdateFolderName.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useUpdateFolderName.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useUpdateTemplateName.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/useUpdateTemplateName.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Toggle/Toggle.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Toggle/Toggle.js.map +1 -1
- package/cjs-bundle/componentsV2/TextInputBase/TextInputBase.js +1 -1
- package/cjs-bundle/componentsV2/TextInputBase/TextInputBase.js.map +1 -1
- package/cjs-bundle/componentsV2/TextInputNext/TextInputNext.js +1 -1
- package/cjs-bundle/componentsV2/TextInputNext/TextInputNext.js.map +1 -1
- package/cjs-bundle/componentsV2/WellArchivedMessage/WellArchivedMessage.js +1 -1
- package/cjs-bundle/componentsV2/WellArchivedMessage/WellArchivedMessage.js.map +1 -1
- package/cjs-bundle/config/mapbox/index.js +1 -1
- package/cjs-bundle/config/mapbox/index.js.map +1 -1
- package/cjs-bundle/constants/notifications.js +1 -1
- package/cjs-bundle/constants/notifications.js.map +1 -1
- package/cjs-bundle/effects/useGlobalOffsetWellsSync.js +1 -1
- package/cjs-bundle/effects/useGlobalOffsetWellsSync.js.map +1 -1
- package/cjs-bundle/effects/useSharedDCStore.js +1 -1
- package/cjs-bundle/effects/useSharedDCStore.js.map +1 -1
- package/cjs-bundle/hocs/withAssetEditorLockHOC.js +1 -1
- package/cjs-bundle/hocs/withAssetEditorLockHOC.js.map +1 -1
- package/cjs-bundle/testing/AppTestWrapper/AppTestWrapper.js +1 -1
- package/cjs-bundle/testing/AppTestWrapper/AppTestWrapper.js.map +1 -1
- package/cjs-bundle/utils/DrillstringUtils.js +1 -1
- package/cjs-bundle/utils/DrillstringUtils.js.map +1 -1
- package/cjs-bundle/utils/apps.js +1 -1
- package/cjs-bundle/utils/apps.js.map +1 -1
- package/cjs-bundle/utils/convert.js +1 -1
- package/cjs-bundle/utils/convert.js.map +1 -1
- package/cjs-bundle/utils/devcenter.js +1 -1
- package/cjs-bundle/utils/devcenter.js.map +1 -1
- package/cjs-bundle/utils/index.js +1 -1
- package/cjs-bundle/utils/index.js.map +1 -1
- package/cjs-bundle/utils/lasParser.js +1 -1
- package/cjs-bundle/utils/lasParser.js.map +1 -1
- package/cjs-bundle/utils/time.js.map +1 -1
- package/clients/jsonApi/index.js +1 -1
- package/clients/jsonApi/index.js.map +1 -1
- package/components/AddComment/Popover.js +1 -1
- package/components/AddComment/Popover.js.map +1 -1
- package/components/AddComment/components/Content.js +1 -1
- package/components/AddComment/components/Content.js.map +1 -1
- package/components/Annotations/components/AnnotationsList/components/AddAnnotationForm/index.js +1 -1
- package/components/Annotations/components/AnnotationsList/components/AddAnnotationForm/index.js.map +1 -1
- package/components/Annotations/components/AnnotationsList/index.js +1 -1
- package/components/Annotations/components/AnnotationsList/index.js.map +1 -1
- package/components/AssetEditorV2/__tests__/AssetEditorV2.test.d.ts +2 -0
- package/components/AssetEditorV2/__tests__/AssetEditorV2.test.d.ts.map +1 -0
- package/components/AssetEditorV2/__tests__/consumerTypes.test.d.ts +2 -0
- package/components/AssetEditorV2/__tests__/consumerTypes.test.d.ts.map +1 -0
- package/components/AssetEditorV2/components/MultipleAssetsToggle.d.ts +17 -6
- package/components/AssetEditorV2/components/MultipleAssetsToggle.d.ts.map +1 -1
- package/components/AssetEditorV2/components/MultipleAssetsToggle.js.map +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelect.d.ts +30 -39
- package/components/AssetEditorV2/components/PrimaryAssetSelect.d.ts.map +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelect.js +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelect.js.map +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelectV2.d.ts +4 -41
- package/components/AssetEditorV2/components/PrimaryAssetSelectV2.d.ts.map +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelectV2.js +1 -1
- package/components/AssetEditorV2/components/PrimaryAssetSelectV2.js.map +1 -1
- package/components/AssetEditorV2/components/SecondaryAssetSelect.d.ts +22 -18
- package/components/AssetEditorV2/components/SecondaryAssetSelect.d.ts.map +1 -1
- package/components/AssetEditorV2/components/SecondaryAssetSelect.js +1 -1
- package/components/AssetEditorV2/components/SecondaryAssetSelect.js.map +1 -1
- package/components/AssetEditorV2/components/SelectItem.d.ts +10 -1
- package/components/AssetEditorV2/components/SelectItem.d.ts.map +1 -1
- package/components/AssetEditorV2/components/SelectItem.js +1 -1
- package/components/AssetEditorV2/components/SelectItem.js.map +1 -1
- package/components/AssetEditorV2/components/__tests__/AssetSelectors.test.d.ts +2 -0
- package/components/AssetEditorV2/components/__tests__/AssetSelectors.test.d.ts.map +1 -0
- package/components/AssetEditorV2/components/__tests__/MultipleAssetsToggle.test.d.ts.map +1 -1
- package/components/AssetEditorV2/components/__tests__/SelectItem.test.d.ts.map +1 -1
- package/components/AssetEditorV2/components/index.d.ts.map +1 -1
- package/components/AssetEditorV2/constants.d.ts +2 -9
- package/components/AssetEditorV2/constants.d.ts.map +1 -1
- package/components/AssetEditorV2/constants.js.map +1 -1
- package/components/AssetEditorV2/effects/__tests__/assetResponse.test.d.ts +2 -0
- package/components/AssetEditorV2/effects/__tests__/assetResponse.test.d.ts.map +1 -0
- package/components/AssetEditorV2/effects/__tests__/useLegacyPrimaryAssetSelectData.test.d.ts +2 -0
- package/components/AssetEditorV2/effects/__tests__/useLegacyPrimaryAssetSelectData.test.d.ts.map +1 -0
- package/components/AssetEditorV2/effects/__tests__/usePrimaryAssetSelectData.test.d.ts +2 -0
- package/components/AssetEditorV2/effects/__tests__/usePrimaryAssetSelectData.test.d.ts.map +1 -0
- package/components/AssetEditorV2/effects/assetResponse.d.ts +4 -0
- package/components/AssetEditorV2/effects/assetResponse.d.ts.map +1 -0
- package/components/AssetEditorV2/effects/assetResponse.js +2 -0
- package/components/AssetEditorV2/effects/assetResponse.js.map +1 -0
- package/components/AssetEditorV2/effects/index.d.ts +34 -28
- package/components/AssetEditorV2/effects/index.d.ts.map +1 -1
- package/components/AssetEditorV2/effects/index.js +1 -1
- package/components/AssetEditorV2/effects/index.js.map +1 -1
- package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.d.ts +21 -17
- package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.d.ts.map +1 -1
- package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js +1 -1
- package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js.map +1 -1
- package/components/AssetEditorV2/index.d.ts +36 -67
- package/components/AssetEditorV2/index.d.ts.map +1 -1
- package/components/AssetEditorV2/index.js +1 -1
- package/components/AssetEditorV2/index.js.map +1 -1
- package/components/AssetEditorV2/types.d.ts +82 -0
- package/components/AssetEditorV2/types.d.ts.map +1 -0
- package/components/AssetEditorV2/utils/__tests__/utils.test.d.ts.map +1 -1
- package/components/AssetEditorV2/utils/index.d.ts +23 -19
- package/components/AssetEditorV2/utils/index.d.ts.map +1 -1
- package/components/AssetEditorV2/utils/index.js +1 -1
- package/components/AssetEditorV2/utils/index.js.map +1 -1
- package/components/AssetsMultipleSelector/AssetsMultipleSelector.js +1 -1
- package/components/AssetsMultipleSelector/AssetsMultipleSelector.js.map +1 -1
- package/components/Attachment/index.js +1 -1
- package/components/Attachment/index.js.map +1 -1
- package/components/AttachmentLightbox/AttachmentDocument.d.ts.map +1 -1
- package/components/AttachmentLightbox/AttachmentDocument.js +1 -1
- package/components/AttachmentLightbox/AttachmentDocument.js.map +1 -1
- package/components/BICOffsetPickerDialog/components/Map/Map.js +1 -1
- package/components/BICOffsetPickerDialog/components/Map/Map.js.map +1 -1
- package/components/BICOffsetPickerDialog/components/WellSection/index.js +1 -1
- package/components/BICOffsetPickerDialog/components/WellSection/index.js.map +1 -1
- package/components/BICOffsetPickerDialog/index.js +1 -1
- package/components/BICOffsetPickerDialog/index.js.map +1 -1
- package/components/Casing/CasingTableV2/components/CasingJoints/Editor.js +1 -1
- package/components/Casing/CasingTableV2/components/CasingJoints/Editor.js.map +1 -1
- package/components/Casing/CasingTableV2/components/Component.js +1 -1
- package/components/Casing/CasingTableV2/components/Component.js.map +1 -1
- package/components/Casing/CasingTableV2/components/DrillPipe/Editor.js +1 -1
- package/components/Casing/CasingTableV2/components/DrillPipe/Editor.js.map +1 -1
- package/components/CollapsableSidebar.js +1 -1
- package/components/CollapsableSidebar.js.map +1 -1
- package/components/CommentCard/CommentCard.d.ts.map +1 -1
- package/components/CommentCard/CommentCard.js +1 -1
- package/components/CommentCard/CommentCard.js.map +1 -1
- package/components/CommentCard/CommentCard.scss.js +1 -1
- package/components/CommentCard/CommentCard.types.d.ts +0 -1
- package/components/CommentCard/CommentCard.types.d.ts.map +1 -1
- package/components/CommentComposer/__tests__/useAttachmentUpload.local.test.d.ts +2 -0
- package/components/CommentComposer/__tests__/useAttachmentUpload.local.test.d.ts.map +1 -0
- package/components/CommentComposer/useAttachmentUpload.d.ts.map +1 -1
- package/components/CommentComposer/useAttachmentUpload.js +1 -1
- package/components/CommentComposer/useAttachmentUpload.js.map +1 -1
- package/components/DevCenter/AppsDataProvider/effects/utils.d.ts.map +1 -1
- package/components/DevCenter/AppsDataProvider/effects/utils.js +1 -1
- package/components/DevCenter/AppsDataProvider/effects/utils.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.d.ts.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/AppSettingsDialog/AppSettingsDialog.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchButton.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchButton.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/effects/useAppMaximized.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/effects/useAppMaximized.js.map +1 -1
- package/components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.d.ts.map +1 -1
- package/components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js +1 -1
- package/components/DevCenter/DevCenterRouterContext/UniversalLink/UniversalLink.js.map +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/IsolatedPage.d.ts.map +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/IsolatedPage.js +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/IsolatedPage.js.map +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/effects/useXProps.d.ts.map +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/effects/useXProps.js.map +1 -1
- package/components/DocumentViewer/DocumentViewer.js +1 -1
- package/components/DocumentViewer/DocumentViewer.js.map +1 -1
- package/components/Drillstring/BHAComponentDetail/constants.d.ts +2 -2
- package/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Component.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Component.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js.map +1 -1
- package/components/EmbeddedApp/EmbeddedApp.d.ts.map +1 -1
- package/components/EmbeddedApp/EmbeddedApp.js +1 -1
- package/components/EmbeddedApp/EmbeddedApp.js.map +1 -1
- package/components/FeedItem/FeedItem.js +1 -1
- package/components/FeedItem/FeedItem.js.map +1 -1
- package/components/FeedItem/FeedItemEditProvider/FeedItemEditProvider.js +1 -1
- package/components/FeedItem/FeedItemEditProvider/FeedItemEditProvider.js.map +1 -1
- package/components/FeedItem/components/Content.d.ts.map +1 -1
- package/components/FeedItem/components/Content.js +1 -1
- package/components/FeedItem/components/Content.js.map +1 -1
- package/components/FeedItem/feedItemTypes/AppAnnotationFeedItem/index.d.ts.map +1 -1
- package/components/FeedItem/feedItemTypes/AppAnnotationFeedItem/index.js +1 -1
- package/components/FeedItem/feedItemTypes/AppAnnotationFeedItem/index.js.map +1 -1
- package/components/FeedItem/feedItemTypes/WellPlanFeedItem/index.d.ts.map +1 -1
- package/components/FeedItem/feedItemTypes/WellPlanFeedItem/index.js +1 -1
- package/components/FeedItem/feedItemTypes/WellPlanFeedItem/index.js.map +1 -1
- package/components/FilesLoaderV2/utils.js +1 -1
- package/components/FilesLoaderV2/utils.js.map +1 -1
- package/components/GradientManager/GradientManager.js +1 -1
- package/components/GradientManager/GradientManager.js.map +1 -1
- package/components/GradientManager/GradientSelect.js +1 -1
- package/components/GradientManager/GradientSelect.js.map +1 -1
- package/components/InfiniteList/index.d.ts.map +1 -1
- package/components/InfiniteList/index.js +1 -1
- package/components/InfiniteList/index.js.map +1 -1
- package/components/OffsetWellMap/OffsetWellMap.js +1 -1
- package/components/OffsetWellMap/OffsetWellMap.js.map +1 -1
- package/components/OffsetWellPickerV2/OffsetWellPickerDialog.js +1 -1
- package/components/OffsetWellPickerV2/OffsetWellPickerDialog.js.map +1 -1
- package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
- package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -1
- package/components/OffsetWellPickerV2/components/Map/Map.js +1 -1
- package/components/OffsetWellPickerV2/components/Map/Map.js.map +1 -1
- package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
- package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -1
- package/components/OffsetWellPickerV2/constants.js +1 -1
- package/components/OffsetWellPickerV2/constants.js.map +1 -1
- package/components/OffsetWellPickerV2/effects/index.js +1 -1
- package/components/OffsetWellPickerV2/effects/index.js.map +1 -1
- package/components/OffsetWellPickerV3/components/CustomSelectionView/components/Map/Map.js +1 -1
- package/components/OffsetWellPickerV3/components/CustomSelectionView/components/Map/Map.js.map +1 -1
- package/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js +1 -1
- package/components/OffsetWellPickerV3/components/CustomSelectionView/components/Table/MetricsAddMenu.js.map +1 -1
- package/components/OffsetWellPickerV3/components/CustomSelectionView/constants.js +1 -1
- package/components/OffsetWellPickerV3/components/CustomSelectionView/constants.js.map +1 -1
- package/components/OffsetWellPickerV3/components/CustomSelectionView/effects/index.js +1 -1
- package/components/OffsetWellPickerV3/components/CustomSelectionView/effects/index.js.map +1 -1
- package/components/OffsetWellPickerV3/components/CustomSelectionView/index.js +1 -1
- package/components/OffsetWellPickerV3/components/CustomSelectionView/index.js.map +1 -1
- package/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js +1 -1
- package/components/OffsetWellPickerV3/components/OffsetWellSelectionView/index.js.map +1 -1
- package/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js +1 -1
- package/components/OffsetWellPickerV3/components/TabSelection/ToggleMapButton.js.map +1 -1
- package/components/OffsetWellPickerV3/components/TabSelection/index.js +1 -1
- package/components/OffsetWellPickerV3/components/TabSelection/index.js.map +1 -1
- package/components/OffsetWellPickerV3/components/WellHubView/index.js +1 -1
- package/components/OffsetWellPickerV3/components/WellHubView/index.js.map +1 -1
- package/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js +1 -1
- package/components/OffsetWellPickerV3/components/shared/OffsetWellTableHead.js.map +1 -1
- package/components/OffsetWellPickerV3/index.js +1 -1
- package/components/OffsetWellPickerV3/index.js.map +1 -1
- package/components/OffsetWellPickerV4/effects/__tests__/useCompanyMetricKey.test.d.ts +2 -0
- package/components/OffsetWellPickerV4/effects/__tests__/useCompanyMetricKey.test.d.ts.map +1 -0
- package/components/OffsetWellPickerV4/effects/useCompanyMetricKey.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
- package/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
- package/components/OffsetWellPickerV5/__tests__/constants.test.d.ts +2 -0
- package/components/OffsetWellPickerV5/__tests__/constants.test.d.ts.map +1 -0
- package/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js +1 -1
- package/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js.map +1 -1
- package/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js +1 -1
- package/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/Filter.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useMapTooltipState.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useMapTooltipState.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useOffsetWellMapState.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useOffsetWellMapState.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useSelectionToolOrchestration.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/useSelectionToolOrchestration.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/utils/well-markers-utils.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/hooks/utils/well-markers-utils.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/MetricsCells/MetricsCells.d.ts +2 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/MetricsCells/MetricsCells.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/MetricsCells/MetricsCells.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/MetricsCells/MetricsCells.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.d.ts +3 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.module.css.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/__tests__/MetricCell.test.d.ts +2 -0
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/__tests__/MetricCell.test.d.ts.map +1 -0
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/OffsetWellsTableRow/OffsetWellsTableRow.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/OffsetWellsTableRow/OffsetWellsTableRow.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/OffsetWellsTableRow/OffsetWellsTableRow.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/useRowInteractions.d.ts +0 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/useRowInteractions.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/useRowInteractions.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/useRowInteractions.js.map +1 -1
- package/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js +1 -1
- package/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js.map +1 -1
- package/components/OffsetWellPickerV5/constants.d.ts +26 -3
- package/components/OffsetWellPickerV5/constants.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/constants.js +1 -1
- package/components/OffsetWellPickerV5/constants.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/__tests__/useAdvancedWells.test.d.ts +2 -0
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/__tests__/useAdvancedWells.test.d.ts.map +1 -0
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/__tests__/useCompanyMetricKey.test.d.ts +2 -0
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/__tests__/useCompanyMetricKey.test.d.ts.map +1 -0
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/wellTransformations.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/wellTransformations.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/useAutoSyncOffsetWells.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useAutoSyncOffsetWells.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/useIsAdmin.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useIsAdmin.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/useLimitNotification.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useLimitNotification.js.map +1 -1
- package/components/OffsetWellPickerV5/stores/filter-store/types.d.ts +2 -1
- package/components/OffsetWellPickerV5/stores/filter-store/types.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/stores/filter-store/types.js.map +1 -1
- package/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js +1 -1
- package/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js.map +1 -1
- package/components/OffsetWellPickerV5/utils/__tests__/getTimestampByPeriod.test.d.ts +2 -0
- package/components/OffsetWellPickerV5/utils/__tests__/getTimestampByPeriod.test.d.ts.map +1 -0
- package/components/OffsetWellPickerV5/utils/getCoordinatedWells.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/utils/getCoordinatedWells.js +1 -1
- package/components/OffsetWellPickerV5/utils/getCoordinatedWells.js.map +1 -1
- package/components/OffsetWellPickerV5/utils/getTimestampByPeriod.d.ts +4 -0
- package/components/OffsetWellPickerV5/utils/getTimestampByPeriod.d.ts.map +1 -1
- package/components/OffsetWellPickerV5/utils/getTimestampByPeriod.js +1 -1
- package/components/OffsetWellPickerV5/utils/getTimestampByPeriod.js.map +1 -1
- package/components/PadOffsetsPicker/StagesSelector.js +1 -1
- package/components/PadOffsetsPicker/StagesSelector.js.map +1 -1
- package/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js +1 -1
- package/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js.map +1 -1
- package/components/RealTimeValuesSidebar/SidebarFooter.js +1 -1
- package/components/RealTimeValuesSidebar/SidebarFooter.js.map +1 -1
- package/components/Search/Search.d.ts +6 -3
- package/components/Search/Search.d.ts.map +1 -1
- package/components/Search/Search.js.map +1 -1
- package/components/index.d.ts +1 -0
- package/components/index.d.ts.map +1 -1
- package/componentsV2/AppFooter/DqPopover/DqPopover.js +1 -1
- package/componentsV2/AppFooter/DqPopover/DqPopover.js.map +1 -1
- package/componentsV2/AppHeader/AppAssets/utils.js +1 -1
- package/componentsV2/AppHeader/AppAssets/utils.js.map +1 -1
- package/componentsV2/AppHeader/V3/Actions/Actions.js +1 -1
- package/componentsV2/AppHeader/V3/Actions/Actions.js.map +1 -1
- package/componentsV2/AppHeader/V3/AppTitle/AppTitle.js +1 -1
- package/componentsV2/AppHeader/V3/AppTitle/AppTitle.js.map +1 -1
- package/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js +1 -1
- package/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js.map +1 -1
- package/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js +1 -1
- package/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js.map +1 -1
- package/componentsV2/AppPanel/AppPanelDisplay.js +1 -1
- package/componentsV2/AppPanel/AppPanelDisplay.js.map +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/Map/Map.js +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/Map/Map.js.map +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/PadsTable/PadsTable.js +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/PadsTable/PadsTable.js.map +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/PadsTable/PadsTable.scss.js +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/PadsTable/helpers/columns.d.ts.map +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/PadsTable/helpers/columns.js +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/PadsTable/helpers/columns.js.map +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/hooks/useNonActivePads.js +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/hooks/useNonActivePads.js.map +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/hooks/usePadsByRadius.js +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/hooks/usePadsByRadius.js.map +1 -1
- package/componentsV2/FilesDropzone/utils.js +1 -1
- package/componentsV2/FilesDropzone/utils.js.map +1 -1
- package/componentsV2/FilesLoader/utils.js +1 -1
- package/componentsV2/FilesLoader/utils.js.map +1 -1
- package/componentsV2/IndicatorLive/IndicatorLive.d.ts.map +1 -1
- package/componentsV2/IndicatorLive/IndicatorLive.js.map +1 -1
- package/componentsV2/PadModeSelect/PadModeSelect.js +1 -1
- package/componentsV2/PadModeSelect/PadModeSelect.js.map +1 -1
- package/componentsV2/TemplatesControl/PublishModal/PublishModal.js +1 -1
- package/componentsV2/TemplatesControl/PublishModal/PublishModal.js.map +1 -1
- package/componentsV2/TemplatesControl/ShareModal/ShareModal.js +1 -1
- package/componentsV2/TemplatesControl/ShareModal/ShareModal.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useCopyTemplate.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useCopyTemplate.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useCreateTemplate.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useCreateTemplate.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useDeleteFolder.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useDeleteFolder.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useDeleteTemplate.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useDeleteTemplate.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useExportTemplate.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useExportTemplate.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useImportTemplate.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useImportTemplate.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useInitialize.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useInitialize.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useMoveToFolder.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useMoveToFolder.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useRevertToOriginal.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useRevertToOriginal.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useShareTemplate.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useShareTemplate.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useUnfollowTemplate.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useUnfollowTemplate.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useUpdateFolderName.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useUpdateFolderName.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useUpdateTemplateName.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/useUpdateTemplateName.js.map +1 -1
- package/componentsV2/TemplatesControl/Toggle/Toggle.js +1 -1
- package/componentsV2/TemplatesControl/Toggle/Toggle.js.map +1 -1
- package/componentsV2/TextInputBase/TextInputBase.js +1 -1
- package/componentsV2/TextInputBase/TextInputBase.js.map +1 -1
- package/componentsV2/TextInputNext/TextInputNext.js +1 -1
- package/componentsV2/TextInputNext/TextInputNext.js.map +1 -1
- package/componentsV2/WellArchivedMessage/WellArchivedMessage.js +1 -1
- package/componentsV2/WellArchivedMessage/WellArchivedMessage.js.map +1 -1
- package/config/mapbox/index.d.ts.map +1 -1
- package/config/mapbox/index.js +1 -1
- package/config/mapbox/index.js.map +1 -1
- package/constants/assets.d.ts +40 -1
- package/constants/assets.d.ts.map +1 -1
- package/constants/bha.d.ts +4 -4
- package/constants/notifications.d.ts +5 -2
- package/constants/notifications.d.ts.map +1 -1
- package/constants/notifications.js +1 -1
- package/constants/notifications.js.map +1 -1
- package/effects/useGlobalOffsetWellsSync.js +1 -1
- package/effects/useGlobalOffsetWellsSync.js.map +1 -1
- package/effects/useSharedDCStore.js +1 -1
- package/effects/useSharedDCStore.js.map +1 -1
- package/hocs/__tests__/withAssetEditorLockHOC.test.d.ts +2 -0
- package/hocs/__tests__/withAssetEditorLockHOC.test.d.ts.map +1 -0
- package/hocs/withAssetEditorLockHOC.d.ts +11 -1
- package/hocs/withAssetEditorLockHOC.d.ts.map +1 -1
- package/hocs/withAssetEditorLockHOC.js +1 -1
- package/hocs/withAssetEditorLockHOC.js.map +1 -1
- package/mcp-server/server.mjs +373 -163
- package/mcp-server/setup.mjs +129 -44
- package/package.json +3 -3
- package/testing/AppTestWrapper/AppTestWrapper.js +1 -1
- package/testing/AppTestWrapper/AppTestWrapper.js.map +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/utils/DrillstringUtils.d.ts.map +1 -1
- package/utils/DrillstringUtils.js +1 -1
- package/utils/DrillstringUtils.js.map +1 -1
- package/utils/apps.js +1 -1
- package/utils/apps.js.map +1 -1
- package/utils/convert.d.ts +0 -19
- package/utils/convert.d.ts.map +1 -1
- package/utils/convert.js +1 -1
- package/utils/convert.js.map +1 -1
- package/utils/devcenter.d.ts.map +1 -1
- package/utils/devcenter.js +1 -1
- package/utils/devcenter.js.map +1 -1
- package/utils/index.d.ts +4 -4
- package/utils/index.d.ts.map +1 -1
- package/utils/index.js +1 -1
- package/utils/index.js.map +1 -1
- package/utils/lasParser.d.ts.map +1 -1
- package/utils/lasParser.js +1 -1
- package/utils/lasParser.js.map +1 -1
- package/utils/time.d.ts.map +1 -1
- package/utils/time.js.map +1 -1
- package/utils/HeatmapUtils.d.ts +0 -1
- package/utils/HeatmapUtils.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommentCard.js","sources":["../../../src/components/CommentCard/CommentCard.tsx"],"sourcesContent":["import { forwardRef, ReactElement, useMemo } from 'react';\nimport { Collapse } from '@material-ui/core';\nimport classNames from 'classnames';\n\nimport { FeedCard, FEED_CARD_MAX_HEIGHT_PX } from '../FeedCard';\nimport { StoredAttachment } from '../AttachmentPreview/useStoredAttachment';\nimport { useStoredAttachments } from '../AttachmentPreview/useStoredAttachments';\nimport { useFeedActivity } from '../FeedCard/useFeedActivity';\nimport { AttachmentPreview } from '../AttachmentPreview';\nimport { Avatar } from '../../componentsV2/Avatar';\nimport { Tooltip } from '../../componentsV2/Tooltip';\nimport { LinkedText } from '../LinkedText';\nimport { InfoIcon } from '../../icons';\n\nimport { CommentCardReactions } from './CommentCardReactions';\nimport { CommentCardReplies } from './CommentCardReplies';\nimport { CommentCardProps, CommentContextRow } from './CommentCard.types';\n\nimport styles from './CommentCard.scss';\n\nconst MetadataTooltip = ({ rows }: { rows: CommentContextRow[] }) => (\n <div className={styles.metadataRows}>\n {rows.map(({ label, value, unit }) => (\n <div key={label} className={styles.metadataRow}>\n <span className={styles.metadataLabel}>{label}</span>\n <span className={styles.metadataValue}>{value}</span>\n {unit && <span className={styles.metadataUnit}>{unit}</span>}\n </div>\n ))}\n </div>\n);\n\nexport const CommentCard = forwardRef<HTMLDivElement, CommentCardProps>((props, ref) => {\n const {\n activity,\n variant = 'expanded',\n author,\n timestamp,\n subtitle,\n body,\n contextRows,\n attachment,\n storedAttachments,\n isLiked,\n likesCount,\n commentsCount,\n replies,\n hasMoreReplies,\n moreRepliesCount,\n attachments,\n onAttachmentClick,\n onAttachmentShare,\n attachmentSlot,\n chip,\n chipColor,\n onLike,\n onReplyToggle,\n onForward,\n onShowMoreReplies,\n menuItems,\n isReplyOpen,\n replyInput,\n editForm,\n width,\n onMouseEnter,\n onMouseLeave,\n className,\n testId,\n } = props;\n\n const activityBinding = useFeedActivity(activity, 'comment');\n const cardMenuItems = activityBinding\n ? [...(menuItems ?? []), ...activityBinding.menuItems]\n : menuItems;\n const cardReplyInput = activityBinding ? activityBinding.replyInput : replyInput;\n const cardIsReplyOpen = activityBinding ? activityBinding.isReplyOpen : isReplyOpen;\n const cardReplies = activityBinding ? activityBinding.replies : replies;\n\n const hasMetadata = !!contextRows?.length;\n // The chip takes over the metadata tooltip when present, so the info icon is redundant.\n const showInfoIcon = hasMetadata && !chip;\n\n const hasFooter = !!(\n activityBinding ||\n onLike ||\n onReplyToggle ||\n onForward ||\n cardMenuItems?.length ||\n showInfoIcon\n );\n\n const info = showInfoIcon && (\n <Tooltip\n placement=\"top\"\n className={styles.metadataTooltip}\n title={<MetadataTooltip rows={contextRows} />}\n >\n <span className={styles.infoButton} data-testid=\"comment-card-info\">\n <InfoIcon size={12} strokeWidth={2} />\n </span>\n </Tooltip>\n );\n\n const reactions = (\n <CommentCardReactions\n info={info}\n commentsCount={activityBinding ? activityBinding.commentsCount : commentsCount}\n likesCount={activityBinding ? activityBinding.likesCount : likesCount}\n isLiked={activityBinding ? activityBinding.isLiked : isLiked}\n menuItems={cardMenuItems}\n onLike={activityBinding ? activityBinding.onLike : onLike}\n onReplyToggle={activityBinding ? activityBinding.onReplyToggle : onReplyToggle}\n onForward={onForward}\n />\n );\n\n const bodyRow = (\n <div className={styles.bodyRow}>\n <div className={styles.text}>\n <LinkedText>{body}</LinkedText>\n </div>\n {chip && (\n <Tooltip\n placement=\"top\"\n className={styles.metadataTooltip}\n title={hasMetadata ? <MetadataTooltip rows={contextRows} /> : ''}\n >\n <span\n className={classNames(styles.chip, !!chipColor && styles.chipAccented)}\n style={chipColor ? { borderLeftColor: chipColor } : undefined}\n >\n {chip}\n </span>\n </Tooltip>\n )}\n </div>\n );\n\n const storedList = useMemo(\n () => storedAttachments ?? ([attachment].filter(Boolean) as StoredAttachment[]),\n [storedAttachments, attachment]\n );\n const storedItems = useStoredAttachments(storedList);\n const items = storedItems.length ? storedItems : attachments;\n\n // Undefined is the norm, which lets AttachmentPreview run its own lightbox; a caller that\n // passes the prop is taking the click over.\n const attachmentPreview = items?.length ? (\n <AttachmentPreview items={items} onItemClick={onAttachmentClick} onShare={onAttachmentShare} />\n ) : null;\n\n const surfaceProps = {\n ref,\n width,\n radius: 12,\n onMouseEnter,\n onMouseLeave,\n testId,\n className,\n };\n\n if (activityBinding?.isDeleted) return null;\n const withOverlays = (card: ReactElement) => (\n <>\n {card}\n {activityBinding?.deleteDialog}\n </>\n );\n\n if (variant === 'preview') {\n return withOverlays(\n <FeedCard {...surfaceProps} maxHeight={FEED_CARD_MAX_HEIGHT_PX}>\n <div className={styles.compactBody}>\n <div className={styles.compactTop}>\n <Avatar\n size={24}\n name={author.name}\n imageSrc={author.avatarUrl}\n className={styles.avatar}\n />\n <span className={styles.name}>{author.name}</span>\n <span className={styles.compactTime}>{timestamp}</span>\n </div>\n <div className={styles.scrollBody}>{bodyRow}</div>\n </div>\n {hasFooter && <div className={styles.compactFooter}>{reactions}</div>}\n </FeedCard>\n );\n }\n\n const editing = !!editForm;\n\n const headerEl = (\n <div className={styles.header}>\n <Avatar size={24} name={author.name} imageSrc={author.avatarUrl} className={styles.avatar} />\n <div className={styles.headerText}>\n <div className={styles.nameRow}>\n <span className={styles.name}>{author.name}</span>\n {timestamp && <span className={styles.timestamp}>{timestamp}</span>}\n </div>\n {subtitle && <span className={styles.subtitle}>{subtitle}</span>}\n </div>\n </div>\n );\n\n if (editing) {\n return withOverlays(\n <FeedCard {...surfaceProps}>\n <div className={styles.editHeader}>{headerEl}</div>\n {editForm}\n </FeedCard>\n );\n }\n\n return withOverlays(\n <FeedCard {...surfaceProps}>\n <div className={styles.capped} style={{ maxHeight: FEED_CARD_MAX_HEIGHT_PX }}>\n <div className={styles.bodySurface}>\n {headerEl}\n\n <div className={styles.scrollBody}>\n {bodyRow}\n {(attachmentPreview || attachmentSlot) && (\n <div className={styles.attachment}>\n {attachmentPreview}\n {attachmentSlot}\n </div>\n )}\n </div>\n </div>\n\n {hasFooter && <div className={styles.footer}>{reactions}</div>}\n </div>\n\n {hasFooter && (\n <Collapse in={cardIsReplyOpen} timeout={250} unmountOnExit>\n <div className={styles.repliesSection}>\n <CommentCardReplies\n replies={cardReplies}\n hasMoreReplies={activityBinding ? activityBinding.hasMoreReplies : hasMoreReplies}\n moreRepliesCount={\n activityBinding ? activityBinding.moreRepliesCount : moreRepliesCount\n }\n isReplyOpen={cardIsReplyOpen}\n replyInput={cardReplyInput}\n onShowMoreReplies={\n activityBinding ? activityBinding.onShowMoreReplies : onShowMoreReplies\n }\n />\n </div>\n </Collapse>\n )}\n </FeedCard>\n );\n});\n"],"names":["MetadataTooltip","_ref","rows","_jsx","className","styles","metadataRows","children","map","_ref2","label","value","unit","_jsxs","metadataRow","metadataLabel","metadataValue","metadataUnit","CommentCard","forwardRef","props","ref","activity","_props$variant","variant","author","timestamp","subtitle","body","contextRows","attachment","storedAttachments","isLiked","likesCount","commentsCount","replies","hasMoreReplies","moreRepliesCount","attachments","onAttachmentClick","onAttachmentShare","attachmentSlot","chip","chipColor","onLike","onReplyToggle","onForward","onShowMoreReplies","menuItems","isReplyOpen","replyInput","editForm","width","onMouseEnter","onMouseLeave","testId","activityBinding","useFeedActivity","cardMenuItems","cardReplyInput","cardIsReplyOpen","cardReplies","hasMetadata","length","showInfoIcon","hasFooter","info","Tooltip","placement","metadataTooltip","title","infoButton","InfoIcon","size","strokeWidth","reactions","CommentCardReactions","bodyRow","text","LinkedText","classNames","chipAccented","style","borderLeftColor","undefined","storedList","useMemo","filter","Boolean","storedItems","useStoredAttachments","items","attachmentPreview","AttachmentPreview","onItemClick","onShare","surfaceProps","radius","isDeleted","withOverlays","card","_Fragment","deleteDialog","FeedCard","maxHeight","FEED_CARD_MAX_HEIGHT_PX","compactBody","compactTop","Avatar","name","imageSrc","avatarUrl","avatar","compactTime","scrollBody","compactFooter","editing","headerEl","header","headerText","nameRow","editHeader","capped","bodySurface","footer","Collapse","in","timeout","unmountOnExit","repliesSection","CommentCardReplies"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CommentCard.js","sources":["../../../src/components/CommentCard/CommentCard.tsx"],"sourcesContent":["import { CSSProperties, forwardRef, ReactElement, useMemo } from 'react';\nimport { Collapse } from '@material-ui/core';\nimport classNames from 'classnames';\n\nimport { FeedCard, FEED_CARD_MAX_HEIGHT_PX } from '../FeedCard';\nimport { StoredAttachment } from '../AttachmentPreview/useStoredAttachment';\nimport { useStoredAttachments } from '../AttachmentPreview/useStoredAttachments';\nimport { useFeedActivity } from '../FeedCard/useFeedActivity';\nimport { AttachmentPreview } from '../AttachmentPreview';\nimport { Avatar } from '../../componentsV2/Avatar';\nimport { Tooltip } from '../../componentsV2/Tooltip';\nimport { LinkedText } from '../LinkedText';\nimport { InfoIcon } from '../../icons';\n\nimport { CommentCardReactions } from './CommentCardReactions';\nimport { CommentCardReplies } from './CommentCardReplies';\nimport { CommentCardProps, CommentContextRow } from './CommentCard.types';\n\nimport styles from './CommentCard.scss';\n\nconst MetadataTooltip = ({ rows }: { rows: CommentContextRow[] }) => (\n <div className={styles.metadataRows}>\n {rows.map(({ label, value, unit }) => (\n <div key={label} className={styles.metadataRow}>\n <span className={styles.metadataLabel}>{label}</span>\n <span className={styles.metadataValue}>{value}</span>\n {unit && <span className={styles.metadataUnit}>{unit}</span>}\n </div>\n ))}\n </div>\n);\n\nexport const CommentCard = forwardRef<HTMLDivElement, CommentCardProps>((props, ref) => {\n const {\n activity,\n variant = 'expanded',\n author,\n timestamp,\n subtitle,\n body,\n contextRows,\n attachment,\n storedAttachments,\n isLiked,\n likesCount,\n commentsCount,\n replies,\n hasMoreReplies,\n moreRepliesCount,\n attachments,\n onAttachmentClick,\n onAttachmentShare,\n attachmentSlot,\n chip,\n chipColor,\n onLike,\n onReplyToggle,\n onForward,\n onShowMoreReplies,\n menuItems,\n isReplyOpen,\n replyInput,\n editForm,\n width,\n onMouseEnter,\n onMouseLeave,\n className,\n testId,\n } = props;\n\n const activityBinding = useFeedActivity(activity, 'comment');\n const cardMenuItems = activityBinding\n ? [...(menuItems ?? []), ...activityBinding.menuItems]\n : menuItems;\n const cardReplyInput = activityBinding ? activityBinding.replyInput : replyInput;\n const cardIsReplyOpen = activityBinding ? activityBinding.isReplyOpen : isReplyOpen;\n const cardReplies = activityBinding ? activityBinding.replies : replies;\n\n const hasMetadata = !!contextRows?.length;\n // The chip takes over the metadata tooltip when present, so the info icon is redundant.\n const showInfoIcon = hasMetadata && !chip;\n\n const hasFooter = !!(\n activityBinding ||\n onLike ||\n onReplyToggle ||\n onForward ||\n cardMenuItems?.length ||\n showInfoIcon\n );\n\n const info = showInfoIcon && (\n <Tooltip\n placement=\"top\"\n className={styles.metadataTooltip}\n title={<MetadataTooltip rows={contextRows} />}\n >\n <span className={styles.infoButton} data-testid=\"comment-card-info\">\n <InfoIcon size={12} strokeWidth={2} />\n </span>\n </Tooltip>\n );\n\n const reactions = (\n <CommentCardReactions\n info={info}\n commentsCount={activityBinding ? activityBinding.commentsCount : commentsCount}\n likesCount={activityBinding ? activityBinding.likesCount : likesCount}\n isLiked={activityBinding ? activityBinding.isLiked : isLiked}\n menuItems={cardMenuItems}\n onLike={activityBinding ? activityBinding.onLike : onLike}\n onReplyToggle={activityBinding ? activityBinding.onReplyToggle : onReplyToggle}\n onForward={onForward}\n />\n );\n\n const bodyRow = (\n <div className={styles.text}>\n {chip && (\n <Tooltip\n placement=\"top\"\n className={styles.metadataTooltip}\n title={hasMetadata ? <MetadataTooltip rows={contextRows} /> : ''}\n >\n <span\n className={classNames(styles.chip, !!chipColor && styles.chipAccented)}\n style={chipColor ? ({ '--chip-color': chipColor } as CSSProperties) : undefined}\n >\n {chipColor && <span className={styles.chipDot} />}\n {chip}\n </span>\n </Tooltip>\n )}\n <LinkedText>{body}</LinkedText>\n </div>\n );\n\n const storedList = useMemo(\n () => storedAttachments ?? ([attachment].filter(Boolean) as StoredAttachment[]),\n [storedAttachments, attachment]\n );\n const storedItems = useStoredAttachments(storedList);\n const items = storedItems.length ? storedItems : attachments;\n\n // Undefined is the norm, which lets AttachmentPreview run its own lightbox; a caller that\n // passes the prop is taking the click over.\n const attachmentPreview = items?.length ? (\n <AttachmentPreview items={items} onItemClick={onAttachmentClick} onShare={onAttachmentShare} />\n ) : null;\n\n const surfaceProps = {\n ref,\n width,\n radius: 12,\n onMouseEnter,\n onMouseLeave,\n testId,\n className,\n };\n\n if (activityBinding?.isDeleted) return null;\n const withOverlays = (card: ReactElement) => (\n <>\n {card}\n {activityBinding?.deleteDialog}\n </>\n );\n\n if (variant === 'preview') {\n return withOverlays(\n <FeedCard {...surfaceProps} maxHeight={FEED_CARD_MAX_HEIGHT_PX}>\n <div className={styles.compactBody}>\n <div className={styles.compactTop}>\n <Avatar\n size={24}\n name={author.name}\n imageSrc={author.avatarUrl}\n className={styles.avatar}\n />\n <span className={styles.name}>{author.name}</span>\n <span className={styles.compactTime}>{timestamp}</span>\n </div>\n <div className={styles.scrollBody}>{bodyRow}</div>\n </div>\n {hasFooter && <div className={styles.compactFooter}>{reactions}</div>}\n </FeedCard>\n );\n }\n\n const editing = !!editForm;\n\n const headerEl = (\n <div className={styles.header}>\n <Avatar size={24} name={author.name} imageSrc={author.avatarUrl} className={styles.avatar} />\n <div className={styles.headerText}>\n <div className={styles.nameRow}>\n <span className={styles.name}>{author.name}</span>\n {timestamp && <span className={styles.timestamp}>{timestamp}</span>}\n </div>\n {subtitle && <span className={styles.subtitle}>{subtitle}</span>}\n </div>\n </div>\n );\n\n if (editing) {\n return withOverlays(\n <FeedCard {...surfaceProps}>\n <div className={styles.editHeader}>{headerEl}</div>\n {editForm}\n </FeedCard>\n );\n }\n\n return withOverlays(\n <FeedCard {...surfaceProps}>\n <div className={styles.capped} style={{ maxHeight: FEED_CARD_MAX_HEIGHT_PX }}>\n <div className={styles.bodySurface}>\n {headerEl}\n\n <div className={styles.scrollBody}>\n {bodyRow}\n {(attachmentPreview || attachmentSlot) && (\n <div className={styles.attachment}>\n {attachmentPreview}\n {attachmentSlot}\n </div>\n )}\n </div>\n </div>\n\n {hasFooter && <div className={styles.footer}>{reactions}</div>}\n </div>\n\n {hasFooter && (\n <Collapse in={cardIsReplyOpen} timeout={250} unmountOnExit>\n <div className={styles.repliesSection}>\n <CommentCardReplies\n replies={cardReplies}\n hasMoreReplies={activityBinding ? activityBinding.hasMoreReplies : hasMoreReplies}\n moreRepliesCount={\n activityBinding ? activityBinding.moreRepliesCount : moreRepliesCount\n }\n isReplyOpen={cardIsReplyOpen}\n replyInput={cardReplyInput}\n onShowMoreReplies={\n activityBinding ? activityBinding.onShowMoreReplies : onShowMoreReplies\n }\n />\n </div>\n </Collapse>\n )}\n </FeedCard>\n );\n});\n"],"names":["MetadataTooltip","_ref","rows","_jsx","className","styles","metadataRows","children","map","_ref2","label","value","unit","_jsxs","metadataRow","metadataLabel","metadataValue","metadataUnit","CommentCard","forwardRef","props","ref","activity","_props$variant","variant","author","timestamp","subtitle","body","contextRows","attachment","storedAttachments","isLiked","likesCount","commentsCount","replies","hasMoreReplies","moreRepliesCount","attachments","onAttachmentClick","onAttachmentShare","attachmentSlot","chip","chipColor","onLike","onReplyToggle","onForward","onShowMoreReplies","menuItems","isReplyOpen","replyInput","editForm","width","onMouseEnter","onMouseLeave","testId","activityBinding","useFeedActivity","cardMenuItems","cardReplyInput","cardIsReplyOpen","cardReplies","hasMetadata","length","showInfoIcon","hasFooter","info","Tooltip","placement","metadataTooltip","title","infoButton","InfoIcon","size","strokeWidth","reactions","CommentCardReactions","bodyRow","text","classNames","chipAccented","style","undefined","chipDot","LinkedText","storedList","useMemo","filter","Boolean","storedItems","useStoredAttachments","items","attachmentPreview","AttachmentPreview","onItemClick","onShare","surfaceProps","radius","isDeleted","withOverlays","card","_Fragment","deleteDialog","FeedCard","maxHeight","FEED_CARD_MAX_HEIGHT_PX","compactBody","compactTop","Avatar","name","imageSrc","avatarUrl","avatar","compactTime","scrollBody","compactFooter","editing","headerEl","header","headerText","nameRow","editHeader","capped","bodySurface","footer","Collapse","in","timeout","unmountOnExit","repliesSection","CommentCardReplies"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from'./../../ext-esm/style-inject/dist/style-inject.es.js';var t={spacing:"8",capped:"CommentCard_capped__izWBZ",bodySurface:"CommentCard_bodySurface__scobR",editHeader:"CommentCard_editHeader__8aUBt",scrollBody:"CommentCard_scrollBody__CIun9",footer:"CommentCard_footer__z3-CY",repliesSection:"CommentCard_repliesSection__iE7QO",compactBody:"CommentCard_compactBody__zM10O",compactTop:"CommentCard_compactTop__LpiQi",compactTime:"CommentCard_compactTime__JzVQR",compactFooter:"CommentCard_compactFooter__rgB4D",header:"CommentCard_header__T1SH8",headerText:"CommentCard_headerText__DRsQG",nameRow:"CommentCard_nameRow__Or1c0",timestamp:"CommentCard_timestamp__EbJCO",subtitle:"CommentCard_subtitle__d-XRe",avatar:"CommentCard_avatar__NA2ZA",name:"CommentCard_name__9-e7A",chip:"CommentCard_chip__4NUrf",chipAccented:"CommentCard_chipAccented__Xl8ek",
|
|
1
|
+
import e from'./../../ext-esm/style-inject/dist/style-inject.es.js';var t={spacing:"8",capped:"CommentCard_capped__izWBZ",bodySurface:"CommentCard_bodySurface__scobR",editHeader:"CommentCard_editHeader__8aUBt",scrollBody:"CommentCard_scrollBody__CIun9",footer:"CommentCard_footer__z3-CY",repliesSection:"CommentCard_repliesSection__iE7QO",compactBody:"CommentCard_compactBody__zM10O",compactTop:"CommentCard_compactTop__LpiQi",compactTime:"CommentCard_compactTime__JzVQR",compactFooter:"CommentCard_compactFooter__rgB4D",header:"CommentCard_header__T1SH8",headerText:"CommentCard_headerText__DRsQG",nameRow:"CommentCard_nameRow__Or1c0",timestamp:"CommentCard_timestamp__EbJCO",subtitle:"CommentCard_subtitle__d-XRe",avatar:"CommentCard_avatar__NA2ZA",name:"CommentCard_name__9-e7A",chip:"CommentCard_chip__4NUrf",chipAccented:"CommentCard_chipAccented__Xl8ek",chipDot:"CommentCard_chipDot__P-usA",text:"CommentCard_text__eAIZM",attachment:"CommentCard_attachment__KktIn",infoButton:"CommentCard_infoButton__gqcvK",metadataTooltip:"CommentCard_metadataTooltip__AL0xt",metadataRows:"CommentCard_metadataRows__c-kqf",metadataRow:"CommentCard_metadataRow__BqcII",metadataLabel:"CommentCard_metadataLabel__WRWl7",metadataValue:"CommentCard_metadataValue__Xwf7S",metadataUnit:"CommentCard_metadataUnit__Bxeps",contextLine:"CommentCard_contextLine__Jyoui",contextItem:"CommentCard_contextItem__2Xmql",actionsRow:"CommentCard_actionsRow__1Ftxn",actions:"CommentCard_actions__mUmsV",trailingActions:"CommentCard_trailingActions__uGt-3",action:"CommentCard_action__ZfyBP",count:"CommentCard_count__stfpY",liked:"CommentCard_liked__zsBqe",replies:"CommentCard_replies__nRRYo",reply:"CommentCard_reply__7-U7Q",replyHeader:"CommentCard_replyHeader__sWnLA",replyNameRow:"CommentCard_replyNameRow__bs7h2",replyName:"CommentCard_replyName__C8tst",replyTimestamp:"CommentCard_replyTimestamp__YzuW1",replyText:"CommentCard_replyText__8JPKK"};e(".CommentCard_capped__izWBZ{flex-direction:column}.CommentCard_bodySurface__scobR,.CommentCard_capped__izWBZ{overflow-clip-margin:12px;display:flex;overflow:hidden;overflow:clip}.CommentCard_bodySurface__scobR{flex:1 1 auto;flex-direction:column;gap:8px;min-height:0;padding:8px 12px}.CommentCard_editHeader__8aUBt{padding:8px 12px 0}.CommentCard_scrollBody__CIun9{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;margin:0 -24px;min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 24px}.CommentCard_footer__z3-CY{border-top:1px solid var(--palette-background-b-4);display:flex;flex-direction:column;flex-shrink:0;padding:4px 12px 8px}.CommentCard_repliesSection__iE7QO{padding:8px 12px 12px}.CommentCard_compactBody__zM10O{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;min-height:0;overflow:hidden;padding:8px 12px}.CommentCard_compactTop__LpiQi{align-items:center;display:flex;flex-shrink:0;gap:8px}.CommentCard_compactTime__JzVQR{color:var(--palette-primary-text-7);font-size:12px;line-height:16px;margin-left:auto;white-space:nowrap}.CommentCard_compactFooter__rgB4D{border-top:1px solid var(--palette-background-b-4);flex-shrink:0;padding:4px 12px 8px}.CommentCard_header__T1SH8{align-items:center;display:flex;flex-shrink:0;gap:8px}.CommentCard_headerText__DRsQG{display:flex;flex:1 0 0;flex-direction:column;min-width:0;word-break:break-word}.CommentCard_nameRow__Or1c0{align-items:center;display:flex;gap:8px;width:100%}.CommentCard_nameRow__Or1c0 .CommentCard_timestamp__EbJCO{margin-left:auto}.CommentCard_subtitle__d-XRe{color:var(--palette-primary-main);font-size:12px;line-height:16px}.CommentCard_avatar__NA2ZA{flex-shrink:0}.CommentCard_name__9-e7A{color:var(--palette-primary-text-1);flex:0 1 auto;font-size:14px;line-height:20px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.CommentCard_timestamp__EbJCO{color:var(--palette-primary-text-7);flex-shrink:0;font-size:12px;line-height:16px;white-space:nowrap}.CommentCard_chip__4NUrf{align-items:center;background:rgb(from var(--palette-primary-text-1) r g b/.04);border-radius:8px;box-sizing:border-box;color:var(--palette-primary-text-1);cursor:pointer;display:flex;float:right;font-size:12px;gap:4px;height:24px;line-height:16px;margin:4px 0 0 8px;padding:6px;white-space:nowrap}.CommentCard_chipAccented__Xl8ek{background:linear-gradient(94deg,rgb(from var(--chip-color) r g b/.16) 1%,transparent 35%),rgb(from var(--palette-primary-text-1) r g b/.04);border:.5px solid rgb(from var(--chip-color) r g b/.5)}.CommentCard_chipDot__P-usA{background:var(--chip-color);border-radius:50%;flex-shrink:0;height:6px;width:6px}.CommentCard_text__eAIZM{color:var(--palette-primary-text-1);font-size:12px;line-height:16px;white-space:pre-wrap;word-break:break-word}.CommentCard_text__eAIZM a,.CommentCard_text__eAIZM button{font:inherit;padding:0;vertical-align:baseline}.CommentCard_attachment__KktIn{--attachment-arrow-outset:12px;display:flex;flex-direction:column;gap:8px}.CommentCard_infoButton__gqcvK{align-items:center;color:var(--palette-primary-text-6);cursor:default;display:inline-flex}.CommentCard_infoButton__gqcvK:hover{color:var(--palette-primary-text-1)}.CommentCard_metadataTooltip__AL0xt .MuiTooltip-tooltip{max-width:none!important}.CommentCard_metadataRows__c-kqf{display:flex;flex-direction:column;gap:4px;padding:4px 0}.CommentCard_metadataRow__BqcII{align-items:baseline;display:flex;font-size:14px;gap:4px;line-height:20px;white-space:nowrap}.CommentCard_metadataLabel__WRWl7{color:var(--palette-primary-text-6)}.CommentCard_metadataValue__Xwf7S{color:var(--palette-primary-text-1)}.CommentCard_metadataUnit__Bxeps{color:var(--palette-primary-text-6);font-size:12px}.CommentCard_contextLine__Jyoui{align-items:center;color:var(--palette-primary-text-7);column-gap:16px;display:flex;flex-wrap:wrap;font-size:12px;line-height:16px;row-gap:4px}.CommentCard_contextItem__2Xmql{white-space:nowrap}.CommentCard_actionsRow__1Ftxn{align-items:center;display:flex;justify-content:space-between;width:100%}.CommentCard_actions__mUmsV{align-items:center;display:flex;gap:8px}.CommentCard_trailingActions__uGt-3{align-items:center;display:flex;gap:4px}.CommentCard_action__ZfyBP{align-items:center;display:flex;gap:2px}.CommentCard_count__stfpY{color:var(--palette-primary-text-6);font-size:12px;line-height:16px}.CommentCard_liked__zsBqe svg{color:var(--palette-primary-main)}.CommentCard_replies__nRRYo{display:flex;flex-direction:column;gap:8px}.CommentCard_reply__7-U7Q{display:flex;flex-direction:column;gap:4px}.CommentCard_replyHeader__sWnLA{align-items:center;display:flex;gap:8px}.CommentCard_replyNameRow__bs7h2{align-items:center;display:flex;flex:1 0 0;gap:12px;min-width:0}.CommentCard_replyName__C8tst{color:var(--palette-primary-text-1);font-size:14px;line-height:20px;white-space:nowrap}.CommentCard_replyTimestamp__YzuW1{color:var(--palette-primary-text-7);flex:1 0 0;font-size:12px;line-height:16px;min-width:0}.CommentCard_replyText__8JPKK{color:var(--palette-primary-text-1);font-size:12px;line-height:16px;padding-left:40px;white-space:pre-wrap;word-break:break-word}.CommentCard_replyText__8JPKK a,.CommentCard_replyText__8JPKK button{font:inherit;padding:0;vertical-align:baseline}");export{t as default};
|
|
2
2
|
//# sourceMappingURL=CommentCard.scss.js.map
|
|
@@ -52,7 +52,6 @@ export type CommentCardProps = {
|
|
|
52
52
|
onAttachmentShare?: (item: AttachmentPreviewItem) => void;
|
|
53
53
|
attachmentSlot?: ReactNode;
|
|
54
54
|
chip?: ReactNode;
|
|
55
|
-
/** Colours the chip's leading edge. */
|
|
56
55
|
chipColor?: string;
|
|
57
56
|
onLike?: () => void;
|
|
58
57
|
onReplyToggle?: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommentCard.types.d.ts","sourceRoot":"","sources":["../../../src/components/CommentCard/CommentCard.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAEjF,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,eAAe,EAAE,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IACjC,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAElC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,+CAA+C;IAC/C,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACvC,2CAA2C;IAC3C,UAAU,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,oEAAoE;IACpE,WAAW,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACtC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAC1D,2FAA2F;IAC3F,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAC1D,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,
|
|
1
|
+
{"version":3,"file":"CommentCard.types.d.ts","sourceRoot":"","sources":["../../../src/components/CommentCard/CommentCard.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAttachmentUpload.local.test.d.ts","sourceRoot":"","sources":["../../../../src/components/CommentComposer/__tests__/useAttachmentUpload.local.test.tsx"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAttachmentUpload.d.ts","sourceRoot":"","sources":["../../../src/components/CommentComposer/useAttachmentUpload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAA4C,MAAM,OAAO,CAAC;AAG9E,OAAO,KAAK,EAEV,qBAAqB,EACtB,MAAM,8CAA8C,CAAC;AAQtD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,QAAQ,EAAE,CAAC,WAAW,EAAE,kBAAkB,EAAE,KAAK,IAAI,CAAC;IACtD,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAcF,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAkD1C,eAAO,MAAM,mBAAmB,kEAO7B,0BAA0B;;;;
|
|
1
|
+
{"version":3,"file":"useAttachmentUpload.d.ts","sourceRoot":"","sources":["../../../src/components/CommentComposer/useAttachmentUpload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAA4C,MAAM,OAAO,CAAC;AAG9E,OAAO,KAAK,EAEV,qBAAqB,EACtB,MAAM,8CAA8C,CAAC;AAQtD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,QAAQ,EAAE,CAAC,WAAW,EAAE,kBAAkB,EAAE,KAAK,IAAI,CAAC;IACtD,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAcF,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAkD1C,eAAO,MAAM,mBAAmB,kEAO7B,0BAA0B;;;;8BAgQjB,WAAW,CAAC,gBAAgB,CAAC;sBAtD7B,IAAI,EAAE;0BAnFR,MAAM;4BA8BE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE;2BAuH9C,qBAAqB,CAAC,IAAI,CAAC;sBAW3B,qBAAqB,CAAC,IAAI,CAAC;qCAcnB,qBAAqB,CAAC,IAAI,CAAC,EAAE;;;;;;;CA2H7C,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import r from"@babel/runtime/helpers/toConsumableArray";import e from"@babel/runtime/helpers/asyncToGenerator";import n from"@babel/runtime/helpers/defineProperty";import t from"@babel/runtime/helpers/slicedToArray";import i from"@babel/runtime/regenerator";import{useState as u,useRef as o,useCallback as l,useEffect as c}from"react";import a from"react-s3-uploader/s3upload";import{getAttachmentKind as f}from"../AttachmentPreview/getAttachmentKind.js";import{ACCEPTED_ATTACHMENT_TYPES as s}from"../AttachFileButton/AttachFileButton.js";import{getS3SignedUrl as d}from"../../clients/jsonApi/index.js";import{getUrlFileName as p}from"../../utils/links.js";import{getSignedLink as v,peekSignedLink as m}from"../../utils/signedLinkCache.js";function h(r,e){var n=Object.keys(r);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(r);e&&(t=t.filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.push.apply(n,t)}return n}function g(r){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?h(Object(t),!0).forEach((function(e){n(r,e,t[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):h(Object(t)).forEach((function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(t,e))}))}return r}var b=10,w=function(r){return r.type.startsWith("image/")?"image":r.type.startsWith("video/")?"video":"file"},U=function(r){return(r/1048576).toFixed(1)},y=function(r){return{id:r.url,name:r.name,file:null,previewUrl:"",isUploading:!1,error:null,uploaded:r}},j=0,O=function(){return"attachment-".concat(j+=1)},x=function(n){var h,b,j=n.value,x=n.onChange,k=n.onError,F=n.maxSizeBytes,L=n.maxFiles,P=void 0===L?10:L,z=n.accept,S=void 0===z?s:z,A=u([]),E=t(A,2),R=E[0],B=E[1],C=o(null),D=o(new Map),M=o(new Map),W=o([]),N=o(x),Y=o(k);N.current=x,Y.current=k;var I=o([]),T=l((function(r){var e=r(W.current);W.current=e,B(e),I.current=function(r){return r.map((function(r){return r.uploaded})).filter(Boolean)}(e),N.current(I.current)}),[]),_=l((function(r,e){return T((function(n){return n.map((function(n){return n.id===r?g(g({},n),e):n}))}))}),[T]),G=l((function(r){var e,n;null===(e=D.current.get(r))||void 0===e||e.abortUpload(),D.current.delete(r),M.current.set(r,(null!==(n=M.current.get(r))&&void 0!==n?n:0)+1)}),[]),K=l((function(r){null!=r&&r.previewUrl&&URL.revokeObjectURL(r.previewUrl)}),[]),q=l((function(){var r,e,n;null===(r=Y.current)||void 0===r||r.call(Y,null!==(e=null===(n=W.current.find((function(r){return r.error})))||void 0===n?void 0:n.error)&&void 0!==e?e:null)}),[]);c((function(){return function(){D.current.forEach((function(r){return r.abortUpload()})),D.current.clear(),W.current.forEach((function(r){r.previewUrl&&URL.revokeObjectURL(r.previewUrl)}))}}),[]);var H=l((function(r,n){var t,u=(null!==(t=M.current.get(r))&&void 0!==t?t:0)+1;M.current.set(r,u);var o,l,c=function(){return M.current.get(r)===u},f=function(e){var n;c()&&(_(r,{isUploading:!1,error:e}),null===(n=Y.current)||void 0===n||n.call(Y,e))},s="",p=new a({files:[n],preprocess:function(r,e){return e(r)},onProgress:function(){},getSignedUrl:(l=e(i.mark((function r(e,n){var t;return i.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.prev=0,r.next=3,d(e.name,e.type);case 3:t=r.sent,s=t.file_name,n(g(g({},t),{},{signedUrl:t.signed_url})),r.next=11;break;case 8:r.prev=8,r.t0=r.catch(0),f((null===r.t0||void 0===r.t0?void 0:r.t0.message)||"Failed to upload the file");case 11:case"end":return r.stop()}}),r,null,[[0,8]])}))),function(r,e){return l.apply(this,arguments)}),onFinishS3Put:(o=e(i.mark((function e(){var t;return i.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,v(s);case 3:if(t=e.sent,c()){e.next=6;break}return e.abrupt("return");case 6:D.current.delete(r),_(r,{isUploading:!1,error:null,uploaded:{url:t,name:s,size:n.size}}),q(),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(0),f((null===e.t0||void 0===e.t0?void 0:e.t0.message)||"Failed to upload the file");case 14:case"end":return e.stop()}}),e,null,[[0,11]])}))),function(){return o.apply(this,arguments)}),onError:function(r){return f(r||"Failed to upload the file")}});D.current.set(r,p)}),[_,q]),J=l((function(e){var n,t=p(e);t&&(W.current.length>=P?null===(n=Y.current)||void 0===n||n.call(Y,"You can attach up to ".concat(P," files.")):W.current.some((function(r){var n;return(null===(n=r.uploaded)||void 0===n?void 0:n.url)===e}))||T((function(n){return[].concat(r(n),[{id:O(),name:t,file:null,previewUrl:e,isUploading:!1,error:null,uploaded:{url:e,name:t}}])})))}),[T,P]),Q=l(function(){var n=e(i.mark((function e(n){var t,u,o,l,c,a,f,s,d,p,m;return i.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((o=n.filter((function(r,e,n){return!W.current.some((function(e){var n;return(null===(n=e.uploaded)||void 0===n?void 0:n.name)===r.fileName}))&&n.findIndex((function(e){return e.fileName===r.fileName}))===e}))).length){e.next=3;break}return e.abrupt("return");case 3:if(!((l=P-W.current.length)<=0)){e.next=7;break}return null===(c=Y.current)||void 0===c||c.call(Y,"You can attach up to ".concat(P," files.")),e.abrupt("return");case 7:return a=o.slice(0,l),e.next=10,Promise.all(a.map((function(r){return v(r.fileName).then((function(e){return{url:e,name:r.fileName,size:r.size}})).catch((function(){return null}))})));case 10:f=e.sent,s=f.filter(Boolean),d=0,s.length&&T((function(e){var n=s.slice(0,Math.max(P-e.length,0));return d=n.length,[].concat(r(e),r(n.map((function(r){return g(g({},y(r)),{},{id:O()})}))))})),p=f.length-s.length,m=o.length>a.length||d<s.length,null===(t=Y.current)||void 0===t||t.call(Y,p&&"Could not attach ".concat(1===p?"a file":"".concat(p," files")," from Wellhub.")||m&&"You can attach up to ".concat(P," files.")||(null===(u=W.current.find((function(r){return r.error})))||void 0===u?void 0:u.error)||null);case 17:case"end":return e.stop()}}),e)})));return function(r){return n.apply(this,arguments)}}(),[T,P]),V=l((function(e){var n,t,i,u,o=e.filter((function(r){return function(r,e){return e.split(",").map((function(r){return r.trim().toLowerCase()})).filter(Boolean).some((function(e){if(e.startsWith("."))return r.name.toLowerCase().endsWith(e);if(e.endsWith("/*")){var n=r.type.toLowerCase();return n?n.startsWith(e.slice(0,-1)):f({name:r.name})===e.slice(0,-1)}return r.type.toLowerCase()===e}))}(r,S)})),l=o.length<e.length?1===e.length?"That file type is not supported.":"Some files were skipped — unsupported file type.":null,c="You can attach up to ".concat(P," files."),a=P-W.current.length;if(!o.length||a<=0){var s;null===(s=Y.current)||void 0===s||s.call(Y,o.length?c:l)}else{var d=o.slice(0,a),p=d.map((function(r){var e=w(r),n=!!F&&r.size>F;return{id:O(),name:r.name,file:r,previewUrl:"file"===e?"":URL.createObjectURL(r),isUploading:!n,error:n?"File is too large (".concat(U(r.size)," MB). Maximum size is ").concat(U(F)," MB."):null,uploaded:null}}));T((function(e){return[].concat(r(e),r(p))}));var v=o.length>d.length?c:null;null===(n=Y.current)||void 0===n||n.call(Y,null!==(t=null!==(i=null===(u=W.current.find((function(r){return r.error})))||void 0===u?void 0:u.error)&&void 0!==i?i:l)&&void 0!==t?t:v),p.filter((function(r){return!r.error})).forEach((function(r){return H(r.id,r.file)}))}}),[T,P,F,H,S]),X=l((function(r){var e,n=Array.from(null!==(e=r.target.files)&&void 0!==e?e:[]);C.current&&(C.current.value=""),n.length&&V(n)}),[V]),Z=l((function(){var r;return null===(r=C.current)||void 0===r?void 0:r.click()}),[]),$=l((function(r){var e=String(r);G(e),K(W.current.find((function(r){return r.id===e}))),T((function(r){return r.filter((function(r){return r.id!==e}))})),q()}),[G,K,T,q]),rr=l((function(r){var e=String(r),n=W.current.find((function(r){return r.id===e}));null!=n&&n.file&&(G(e),_(e,{isUploading:!0,error:null}),q(),H(e,n.file))}),[G,_,H,q]),er=l((function(e){return T((function(n){var t=new Map(n.map((function(r){return[r.id,r]}))),i=e.map((function(r){return t.get(String(r))})).filter(Boolean),u=n.filter((function(r){return!e.some((function(e){return String(e)===r.id}))}));return[].concat(r(i),r(u))}))}),[T]),nr=l((function(){var r;W.current.forEach((function(r){G(r.id),K(r)})),T((function(){return[]})),null===(r=Y.current)||void 0===r||r.call(Y,null)}),[G,T,K]);c((function(){var r,e,n;(e=I.current,n=j,e.length===n.length&&e.every((function(r,e){return r.url===n[e].url})))||(W.current.forEach((function(r){G(r.id),r.previewUrl&&URL.revokeObjectURL(r.previewUrl)})),W.current=j.map(y),I.current=j,B(W.current),null===(r=Y.current)||void 0===r||r.call(Y,null))}),[j,G]);var tr=u((function(){return j.reduce((function(r,e){var n=m(e.name,"inline");return n&&(r[e.name]=n),r}),{})})),ir=t(tr,2),ur=ir[0],or=ir[1],lr=o(ur);lr.current=ur;var cr=R.filter((function(r){return!r.file&&!r.previewUrl&&r.uploaded})).map((function(r){return r.uploaded.name})).join("|");return c((function(){var r=cr.split("|").filter((function(r){return r&&!(r in lr.current)}));if(r.length){var e=!0;return Promise.all(r.map((function(r){return v(r,"inline").then((function(e){return[r,e]})).catch((function(e){return console.error('Failed to sign stored attachment "'.concat(r,'"'),e),[r,""]}))}))).then((function(r){e&&or((function(e){return g(g({},e),Object.fromEntries(r))}))})),function(){e=!1}}}),[cr]),{items:R.reduce((function(r,e){var n;if(e.file)return r.push({id:e.id,name:e.name,src:e.previewUrl,kind:w(e.file),size:e.file.size,isUploading:e.isUploading,hideDownload:!0,error:null!==(n=e.error)&&void 0!==n?n:void 0}),r;var t=e.uploaded,i=f(t),u=e.previewUrl||ur[t.name];return"file"===i||u?(r.push({id:e.id,name:t.name,src:u,kind:i,size:t.size,hideDownload:!0}),r):r}),[]),fileInputRef:C,openFileDialog:Z,handleFileSelect:X,addFiles:V,addLinkedImage:J,addStoredFiles:Q,removeAttachment:$,handleRetry:rr,reorderAttachments:er,clearAttachments:nr,isUploading:R.some((function(r){return r.isUploading})),error:null!==(h=null===(b=R.find((function(r){return r.error})))||void 0===b?void 0:b.error)&&void 0!==h?h:null,count:R.length,isFull:R.length>=P,maxFiles:P}};export{b as DEFAULT_MAX_ATTACHMENTS,x as useAttachmentUpload};
|
|
1
|
+
import r from"@babel/runtime/helpers/toConsumableArray";import e from"@babel/runtime/helpers/asyncToGenerator";import n from"@babel/runtime/helpers/defineProperty";import t from"@babel/runtime/helpers/slicedToArray";import i from"@babel/runtime/regenerator";import{useState as u,useRef as o,useCallback as l,useEffect as c}from"react";import a from"react-s3-uploader/s3upload";import{getAttachmentKind as f}from"../AttachmentPreview/getAttachmentKind.js";import{ACCEPTED_ATTACHMENT_TYPES as s}from"../AttachFileButton/AttachFileButton.js";import{getS3SignedUrl as d}from"../../clients/jsonApi/index.js";import{getUrlFileName as p}from"../../utils/links.js";import{getSignedLink as v,peekSignedLink as m}from"../../utils/signedLinkCache.js";function h(r,e){var n=Object.keys(r);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(r);e&&(t=t.filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.push.apply(n,t)}return n}function g(r){for(var e=1;e<arguments.length;e++){var t=null!=arguments[e]?arguments[e]:{};e%2?h(Object(t),!0).forEach((function(e){n(r,e,t[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):h(Object(t)).forEach((function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(t,e))}))}return r}var b=10,w=function(r){return(r/1048576).toFixed(1)},U=function(r){return{id:r.url,name:r.name,file:null,previewUrl:"",isUploading:!1,error:null,uploaded:r}},y=0,j=function(){return"attachment-".concat(y+=1)},O=function(n){var h,b,y=n.value,O=n.onChange,x=n.onError,k=n.maxSizeBytes,F=n.maxFiles,L=void 0===F?10:F,P=n.accept,z=void 0===P?s:P,S=u([]),A=t(S,2),E=A[0],R=A[1],B=o(null),C=o(new Map),D=o(new Map),M=o([]),W=o(O),N=o(x);W.current=O,N.current=x;var Y=o([]),I=l((function(r){var e=r(M.current);M.current=e,R(e),Y.current=function(r){return r.map((function(r){return r.uploaded})).filter(Boolean)}(e),W.current(Y.current)}),[]),T=l((function(r,e){return I((function(n){return n.map((function(n){return n.id===r?g(g({},n),e):n}))}))}),[I]),_=l((function(r){var e,n;null===(e=C.current.get(r))||void 0===e||e.abortUpload(),C.current.delete(r),D.current.set(r,(null!==(n=D.current.get(r))&&void 0!==n?n:0)+1)}),[]),G=l((function(r){null!=r&&r.previewUrl&&URL.revokeObjectURL(r.previewUrl)}),[]),K=l((function(){var r,e,n;null===(r=N.current)||void 0===r||r.call(N,null!==(e=null===(n=M.current.find((function(r){return r.error})))||void 0===n?void 0:n.error)&&void 0!==e?e:null)}),[]);c((function(){return function(){C.current.forEach((function(r){return r.abortUpload()})),C.current.clear(),M.current.forEach((function(r){r.previewUrl&&URL.revokeObjectURL(r.previewUrl)}))}}),[]);var q=l((function(r,n){var t,u=(null!==(t=D.current.get(r))&&void 0!==t?t:0)+1;D.current.set(r,u);var o,l,c=function(){return D.current.get(r)===u},f=function(e){var n;c()&&(T(r,{isUploading:!1,error:e}),null===(n=N.current)||void 0===n||n.call(N,e))},s="",p=new a({files:[n],preprocess:function(r,e){return e(r)},onProgress:function(){},getSignedUrl:(l=e(i.mark((function r(e,n){var t;return i.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.prev=0,r.next=3,d(e.name,e.type);case 3:t=r.sent,s=t.file_name,n(g(g({},t),{},{signedUrl:t.signed_url})),r.next=11;break;case 8:r.prev=8,r.t0=r.catch(0),f((null===r.t0||void 0===r.t0?void 0:r.t0.message)||"Failed to upload the file");case 11:case"end":return r.stop()}}),r,null,[[0,8]])}))),function(r,e){return l.apply(this,arguments)}),onFinishS3Put:(o=e(i.mark((function e(){var t;return i.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,v(s);case 3:if(t=e.sent,c()){e.next=6;break}return e.abrupt("return");case 6:C.current.delete(r),T(r,{isUploading:!1,error:null,uploaded:{url:t,name:s,size:n.size}}),K(),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(0),f((null===e.t0||void 0===e.t0?void 0:e.t0.message)||"Failed to upload the file");case 14:case"end":return e.stop()}}),e,null,[[0,11]])}))),function(){return o.apply(this,arguments)}),onError:function(r){return f(r||"Failed to upload the file")}});C.current.set(r,p)}),[T,K]),H=l((function(e){var n,t=p(e);t&&(M.current.length>=L?null===(n=N.current)||void 0===n||n.call(N,"You can attach up to ".concat(L," files.")):M.current.some((function(r){var n;return(null===(n=r.uploaded)||void 0===n?void 0:n.url)===e}))||I((function(n){return[].concat(r(n),[{id:j(),name:t,file:null,previewUrl:e,isUploading:!1,error:null,uploaded:{url:e,name:t}}])})))}),[I,L]),J=l(function(){var n=e(i.mark((function e(n){var t,u,o,l,c,a,f,s,d,p,m;return i.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((o=n.filter((function(r,e,n){return!M.current.some((function(e){var n;return(null===(n=e.uploaded)||void 0===n?void 0:n.name)===r.fileName}))&&n.findIndex((function(e){return e.fileName===r.fileName}))===e}))).length){e.next=3;break}return e.abrupt("return");case 3:if(!((l=L-M.current.length)<=0)){e.next=7;break}return null===(c=N.current)||void 0===c||c.call(N,"You can attach up to ".concat(L," files.")),e.abrupt("return");case 7:return a=o.slice(0,l),e.next=10,Promise.all(a.map((function(r){return v(r.fileName).then((function(e){return{url:e,name:r.fileName,size:r.size}})).catch((function(){return null}))})));case 10:f=e.sent,s=f.filter(Boolean),d=0,s.length&&I((function(e){var n=s.slice(0,Math.max(L-e.length,0));return d=n.length,[].concat(r(e),r(n.map((function(r){return g(g({},U(r)),{},{id:j()})}))))})),p=f.length-s.length,m=o.length>a.length||d<s.length,null===(t=N.current)||void 0===t||t.call(N,p&&"Could not attach ".concat(1===p?"a file":"".concat(p," files")," from Wellhub.")||m&&"You can attach up to ".concat(L," files.")||(null===(u=M.current.find((function(r){return r.error})))||void 0===u?void 0:u.error)||null);case 17:case"end":return e.stop()}}),e)})));return function(r){return n.apply(this,arguments)}}(),[I,L]),Q=l((function(e){var n,t,i,u,o=e.filter((function(r){return function(r,e){return e.split(",").map((function(r){return r.trim().toLowerCase()})).filter(Boolean).some((function(e){if(e.startsWith("."))return r.name.toLowerCase().endsWith(e);if(e.endsWith("/*")){var n=r.type.toLowerCase();return n?n.startsWith(e.slice(0,-1)):f({name:r.name})===e.slice(0,-1)}return r.type.toLowerCase()===e}))}(r,z)})),l=o.length<e.length?1===e.length?"That file type is not supported.":"Some files were skipped — unsupported file type.":null,c="You can attach up to ".concat(L," files."),a=L-M.current.length;if(!o.length||a<=0){var s;null===(s=N.current)||void 0===s||s.call(N,o.length?c:l)}else{var d=o.slice(0,a),p=d.map((function(r){var e=!!k&&r.size>k;return{id:j(),name:r.name,file:r,previewUrl:URL.createObjectURL(r),isUploading:!e,error:e?"File is too large (".concat(w(r.size)," MB). Maximum size is ").concat(w(k)," MB."):null,uploaded:null}}));I((function(e){return[].concat(r(e),r(p))}));var v=o.length>d.length?c:null;null===(n=N.current)||void 0===n||n.call(N,null!==(t=null!==(i=null===(u=M.current.find((function(r){return r.error})))||void 0===u?void 0:u.error)&&void 0!==i?i:l)&&void 0!==t?t:v),p.filter((function(r){return!r.error})).forEach((function(r){return q(r.id,r.file)}))}}),[I,L,k,q,z]),V=l((function(r){var e,n=Array.from(null!==(e=r.target.files)&&void 0!==e?e:[]);B.current&&(B.current.value=""),n.length&&Q(n)}),[Q]),X=l((function(){var r;return null===(r=B.current)||void 0===r?void 0:r.click()}),[]),Z=l((function(r){var e=String(r);_(e),G(M.current.find((function(r){return r.id===e}))),I((function(r){return r.filter((function(r){return r.id!==e}))})),K()}),[_,G,I,K]),$=l((function(r){var e=String(r),n=M.current.find((function(r){return r.id===e}));null!=n&&n.file&&(_(e),T(e,{isUploading:!0,error:null}),K(),q(e,n.file))}),[_,T,q,K]),rr=l((function(e){return I((function(n){var t=new Map(n.map((function(r){return[r.id,r]}))),i=e.map((function(r){return t.get(String(r))})).filter(Boolean),u=n.filter((function(r){return!e.some((function(e){return String(e)===r.id}))}));return[].concat(r(i),r(u))}))}),[I]),er=l((function(){var r;M.current.forEach((function(r){_(r.id),G(r)})),I((function(){return[]})),null===(r=N.current)||void 0===r||r.call(N,null)}),[_,I,G]);c((function(){var r,e,n;(e=Y.current,n=y,e.length===n.length&&e.every((function(r,e){return r.url===n[e].url})))||(M.current.forEach((function(r){_(r.id),r.previewUrl&&URL.revokeObjectURL(r.previewUrl)})),M.current=y.map(U),Y.current=y,R(M.current),null===(r=N.current)||void 0===r||r.call(N,null))}),[y,_]);var nr=u((function(){return y.reduce((function(r,e){var n=m(e.name,"inline");return n&&(r[e.name]=n),r}),{})})),tr=t(nr,2),ir=tr[0],ur=tr[1],or=o(ir);or.current=ir;var lr=E.filter((function(r){return!r.file&&!r.previewUrl&&r.uploaded})).map((function(r){return r.uploaded.name})).join("|");return c((function(){var r=lr.split("|").filter((function(r){return r&&!(r in or.current)}));if(r.length){var e=!0;return Promise.all(r.map((function(r){return v(r,"inline").then((function(e){return[r,e]})).catch((function(e){return console.error('Failed to sign stored attachment "'.concat(r,'"'),e),[r,""]}))}))).then((function(r){e&&ur((function(e){return g(g({},e),Object.fromEntries(r))}))})),function(){e=!1}}}),[lr]),{items:E.reduce((function(r,e){var n,t;if(e.file)return r.push({id:e.id,name:e.name,src:e.previewUrl,kind:(t=e.file,t.type.startsWith("image/")?"image":t.type.startsWith("video/")?"video":"file"),size:e.file.size,isUploading:e.isUploading,hideDownload:!0,error:null!==(n=e.error)&&void 0!==n?n:void 0}),r;var i=e.uploaded,u=f(i),o=e.previewUrl||ir[i.name];return"file"===u||o?(r.push({id:e.id,name:i.name,src:o,kind:u,size:i.size,hideDownload:!0}),r):r}),[]),fileInputRef:B,openFileDialog:X,handleFileSelect:V,addFiles:Q,addLinkedImage:H,addStoredFiles:J,removeAttachment:Z,handleRetry:$,reorderAttachments:rr,clearAttachments:er,isUploading:E.some((function(r){return r.isUploading})),error:null!==(h=null===(b=E.find((function(r){return r.error})))||void 0===b?void 0:b.error)&&void 0!==h?h:null,count:E.length,isFull:E.length>=L,maxFiles:L}};export{b as DEFAULT_MAX_ATTACHMENTS,O as useAttachmentUpload};
|
|
2
2
|
//# sourceMappingURL=useAttachmentUpload.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAttachmentUpload.js","sources":["../../../src/components/CommentComposer/useAttachmentUpload.ts"],"sourcesContent":["import { ChangeEvent, useCallback, useEffect, useRef, useState } from 'react';\nimport S3Upload from 'react-s3-uploader/s3upload';\n\nimport type {\n AttachmentKind,\n AttachmentPreviewItem,\n} from '../AttachmentPreview/AttachmentPreview.types';\nimport { getAttachmentKind } from '../AttachmentPreview/getAttachmentKind';\nimport { ACCEPTED_ATTACHMENT_TYPES } from '../AttachFileButton';\n\nimport { getS3SignedUrl } from '~/clients/jsonApi';\nimport { getUrlFileName } from '~/utils/links';\nimport { getSignedLink, peekSignedLink } from '~/utils/signedLinkCache';\n\nexport type UploadedAttachment = {\n url: string;\n name: string;\n size?: number;\n};\n\ntype UseAttachmentUploadOptions = {\n value: UploadedAttachment[];\n onChange: (attachments: UploadedAttachment[]) => void;\n onError?: (message: string | null) => void;\n maxSizeBytes?: number;\n maxFiles?: number;\n /** Mirrors the file input's `accept`; also gates drag-and-drop. */\n accept?: string;\n};\n\n/** A picked or already-stored file, in the order the user arranged it. */\ntype Entry = {\n id: string;\n name: string;\n /** Set while the file is local; cleared entries come from `value`. */\n file: File | null;\n previewUrl: string;\n isUploading: boolean;\n error: string | null;\n uploaded: UploadedAttachment | null;\n};\n\nexport const DEFAULT_MAX_ATTACHMENTS = 10;\n\n/** Same rules the file input enforces via `accept`, so drag-and-drop can't smuggle a type past it. */\nconst isAcceptedType = (file: File, accept: string) =>\n accept\n .split(',')\n .map(rule => rule.trim().toLowerCase())\n .filter(Boolean)\n .some(rule => {\n if (rule.startsWith('.')) return file.name.toLowerCase().endsWith(rule);\n if (rule.endsWith('/*')) {\n const type = file.type.toLowerCase();\n if (type) return type.startsWith(rule.slice(0, -1));\n\n return getAttachmentKind({ name: file.name }) === rule.slice(0, -1);\n }\n\n return file.type.toLowerCase() === rule;\n });\n\nconst getFileKind = (file: File): AttachmentKind => {\n if (file.type.startsWith('image/')) return 'image';\n if (file.type.startsWith('video/')) return 'video';\n return 'file';\n};\n\nconst formatMb = (bytes: number) => (bytes / (1024 * 1024)).toFixed(1);\n\nconst getUploaded = (entries: Entry[]) =>\n entries.map(entry => entry.uploaded).filter(Boolean) as UploadedAttachment[];\n\nconst isSameList = (a: UploadedAttachment[], b: UploadedAttachment[]) =>\n a.length === b.length && a.every((item, index) => item.url === b[index].url);\n\nconst toStoredEntry = (attachment: UploadedAttachment): Entry => ({\n id: attachment.url,\n name: attachment.name,\n file: null,\n previewUrl: '',\n isUploading: false,\n error: null,\n uploaded: attachment,\n});\n\nlet entrySeq = 0;\nconst nextEntryId = () => {\n entrySeq += 1;\n return `attachment-${entrySeq}`;\n};\n\nexport const useAttachmentUpload = ({\n value,\n onChange,\n onError,\n maxSizeBytes,\n maxFiles = DEFAULT_MAX_ATTACHMENTS,\n accept = ACCEPTED_ATTACHMENT_TYPES,\n}: UseAttachmentUploadOptions) => {\n const [entries, setEntries] = useState<Entry[]>([]);\n\n const fileInputRef = useRef<HTMLInputElement>(null);\n const uploadersRef = useRef(new Map<string, S3Upload>());\n // Bumped per attempt so a superseded upload can't write state for a restarted entry.\n const sessionsRef = useRef(new Map<string, number>());\n // Mutations are driven from async upload callbacks, so the latest list lives in a ref.\n const entriesRef = useRef<Entry[]>([]);\n const onChangeRef = useRef(onChange);\n const onErrorRef = useRef(onError);\n\n onChangeRef.current = onChange;\n onErrorRef.current = onError;\n\n // What we last handed the parent. A `value` that still matches it is our own change echoing\n // back; anything else is a parent-driven reset we must adopt.\n const emittedRef = useRef<UploadedAttachment[]>([]);\n\n const commit = useCallback((updater: (prev: Entry[]) => Entry[]) => {\n const next = updater(entriesRef.current);\n entriesRef.current = next;\n setEntries(next);\n emittedRef.current = getUploaded(next);\n onChangeRef.current(emittedRef.current);\n }, []);\n\n const patchEntry = useCallback(\n (id: string, patch: Partial<Entry>) =>\n commit(prev => prev.map(entry => (entry.id === id ? { ...entry, ...patch } : entry))),\n [commit]\n );\n\n const abortUpload = useCallback((id: string) => {\n uploadersRef.current.get(id)?.abortUpload();\n uploadersRef.current.delete(id);\n // Bump, never delete: deleting would let the next attempt reuse session 1, so a callback\n // still in flight from the aborted attempt would pass `isCurrent` and clobber it.\n sessionsRef.current.set(id, (sessionsRef.current.get(id) ?? 0) + 1);\n }, []);\n\n const releasePreview = useCallback((entry?: Entry) => {\n if (entry?.previewUrl) URL.revokeObjectURL(entry.previewUrl);\n }, []);\n\n // The banner is shared by every tile, so recompute it rather than clear it — one file\n // succeeding must not hide a sibling that is still failing.\n const syncError = useCallback(() => {\n onErrorRef.current?.(entriesRef.current.find(entry => entry.error)?.error ?? null);\n }, []);\n\n useEffect(\n () => () => {\n uploadersRef.current.forEach(uploader => uploader.abortUpload());\n uploadersRef.current.clear();\n entriesRef.current.forEach(entry => {\n if (entry.previewUrl) URL.revokeObjectURL(entry.previewUrl);\n });\n },\n []\n );\n\n const startUpload = useCallback(\n (id: string, file: File) => {\n const session = (sessionsRef.current.get(id) ?? 0) + 1;\n sessionsRef.current.set(id, session);\n // A superseded upload must not write state for an entry that is gone or restarted.\n const isCurrent = () => sessionsRef.current.get(id) === session;\n\n const fail = (message: string) => {\n if (!isCurrent()) return;\n patchEntry(id, { isUploading: false, error: message });\n onErrorRef.current?.(message);\n };\n\n let storedKey = '';\n\n const uploader = new S3Upload({\n files: [file],\n preprocess: (target: File, next: (file: File) => void) => next(target),\n onProgress: () => {},\n getSignedUrl: async (\n target: File,\n callback: (data: { signedUrl: string; [key: string]: unknown }) => void\n ) => {\n try {\n const data = await getS3SignedUrl(target.name, target.type);\n storedKey = data.file_name;\n callback({ ...data, signedUrl: data.signed_url });\n } catch (e) {\n fail((e as Error)?.message || 'Failed to upload the file');\n }\n },\n onFinishS3Put: async () => {\n try {\n const url = await getSignedLink(storedKey);\n if (!isCurrent()) return;\n\n uploadersRef.current.delete(id);\n patchEntry(id, {\n isUploading: false,\n error: null,\n uploaded: { url, name: storedKey, size: file.size },\n });\n syncError();\n } catch (e) {\n fail((e as Error)?.message || 'Failed to upload the file');\n }\n },\n onError: (message: string) => fail(message || 'Failed to upload the file'),\n });\n\n uploadersRef.current.set(id, uploader);\n },\n [patchEntry, syncError]\n );\n\n /** Nothing is uploaded: a comment attachment is a url, so the link itself is the attachment. */\n const addLinkedImage = useCallback(\n (url: string) => {\n const name = getUrlFileName(url);\n\n if (!name) return;\n if (entriesRef.current.length >= maxFiles) {\n onErrorRef.current?.(`You can attach up to ${maxFiles} files.`);\n\n return;\n }\n\n if (entriesRef.current.some(entry => entry.uploaded?.url === url)) return;\n\n commit(prev => [\n ...prev,\n {\n id: nextEntryId(),\n name,\n file: null,\n previewUrl: url,\n isUploading: false,\n error: null,\n uploaded: { url, name },\n },\n ]);\n },\n [commit, maxFiles]\n );\n\n /** Attaches files already in S3 (e.g. Wellhub picks): nothing to upload, the key is signed. */\n const addStoredFiles = useCallback(\n async (files: { fileName: string; size?: number }[]) => {\n const fresh = files.filter(\n (file, index, list) =>\n !entriesRef.current.some(entry => entry.uploaded?.name === file.fileName) &&\n list.findIndex(other => other.fileName === file.fileName) === index\n );\n if (!fresh.length) return;\n\n const room = maxFiles - entriesRef.current.length;\n if (room <= 0) {\n onErrorRef.current?.(`You can attach up to ${maxFiles} files.`);\n\n return;\n }\n\n const accepted = fresh.slice(0, room);\n const signed = await Promise.all(\n accepted.map(file =>\n getSignedLink(file.fileName)\n .then(url => ({ url, name: file.fileName, size: file.size }))\n .catch(() => null)\n )\n );\n const attachments = signed.filter(Boolean) as UploadedAttachment[];\n\n // Files may have been dropped in while the keys were signing, so re-check the room.\n let added = 0;\n if (attachments.length) {\n commit(prev => {\n const fitting = attachments.slice(0, Math.max(maxFiles - prev.length, 0));\n added = fitting.length;\n\n return [\n ...prev,\n ...fitting.map(attachment => ({ ...toStoredEntry(attachment), id: nextEntryId() })),\n ];\n });\n }\n\n const failed = signed.length - attachments.length;\n const overflow = fresh.length > accepted.length || added < attachments.length;\n onErrorRef.current?.(\n (failed &&\n `Could not attach ${failed === 1 ? 'a file' : `${failed} files`} from Wellhub.`) ||\n (overflow && `You can attach up to ${maxFiles} files.`) ||\n entriesRef.current.find(entry => entry.error)?.error ||\n null\n );\n },\n [commit, maxFiles]\n );\n\n const addFiles = useCallback(\n (files: File[]) => {\n const supported = files.filter(file => isAcceptedType(file, accept));\n const skipped = supported.length < files.length;\n // One banner, one message: report the most actionable reason once, at the end. Reporting\n // as we go would let a later call overwrite an earlier warning on a mixed drop.\n const unsupported = skipped\n ? (files.length === 1 && 'That file type is not supported.') ||\n 'Some files were skipped — unsupported file type.'\n : null;\n const tooMany = `You can attach up to ${maxFiles} files.`;\n\n const room = maxFiles - entriesRef.current.length;\n if (!supported.length || room <= 0) {\n onErrorRef.current?.(supported.length ? tooMany : unsupported);\n return;\n }\n\n const accepted = supported.slice(0, room);\n const added: Entry[] = accepted.map(file => {\n const kind = getFileKind(file);\n const isTooLarge = !!maxSizeBytes && file.size > maxSizeBytes;\n\n return {\n id: nextEntryId(),\n name: file.name,\n file,\n previewUrl: kind === 'file' ? '' : URL.createObjectURL(file),\n isUploading: !isTooLarge,\n error: isTooLarge\n ? `File is too large (${formatMb(file.size)} MB). Maximum size is ${formatMb(\n maxSizeBytes as number\n )} MB.`\n : null,\n uploaded: null,\n };\n });\n\n commit(prev => [...prev, ...added]);\n\n const overflow = supported.length > accepted.length ? tooMany : null;\n onErrorRef.current?.(\n entriesRef.current.find(entry => entry.error)?.error ?? unsupported ?? overflow\n );\n\n added\n .filter(entry => !entry.error)\n .forEach(entry => startUpload(entry.id, entry.file as File));\n },\n [commit, maxFiles, maxSizeBytes, startUpload, accept]\n );\n\n const handleFileSelect = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n const files = Array.from(event.target.files ?? []);\n // Reset the input so re-picking the same file still fires a change event.\n if (fileInputRef.current) fileInputRef.current.value = '';\n if (files.length) addFiles(files);\n },\n [addFiles]\n );\n\n const openFileDialog = useCallback(() => fileInputRef.current?.click(), []);\n\n const removeAttachment = useCallback(\n (id: AttachmentPreviewItem['id']) => {\n const key = String(id);\n abortUpload(key);\n releasePreview(entriesRef.current.find(entry => entry.id === key));\n commit(prev => prev.filter(entry => entry.id !== key));\n syncError();\n },\n [abortUpload, releasePreview, commit, syncError]\n );\n\n const handleRetry = useCallback(\n (id: AttachmentPreviewItem['id']) => {\n const key = String(id);\n const entry = entriesRef.current.find(item => item.id === key);\n if (!entry?.file) return;\n\n abortUpload(key);\n patchEntry(key, { isUploading: true, error: null });\n syncError();\n startUpload(key, entry.file);\n },\n [abortUpload, patchEntry, startUpload, syncError]\n );\n\n const reorderAttachments = useCallback(\n (orderedIds: AttachmentPreviewItem['id'][]) =>\n commit(prev => {\n const byId = new Map(prev.map(entry => [entry.id, entry]));\n const reordered = orderedIds.map(id => byId.get(String(id))).filter(Boolean) as Entry[];\n // Unlisted ids (a race with a removal) keep their place at the end.\n const missing = prev.filter(entry => !orderedIds.some(id => String(id) === entry.id));\n return [...reordered, ...missing];\n }),\n [commit]\n );\n\n const clearAttachments = useCallback(() => {\n entriesRef.current.forEach(entry => {\n abortUpload(entry.id);\n releasePreview(entry);\n });\n commit(() => []);\n onErrorRef.current?.(null);\n }, [abortUpload, commit, releasePreview]);\n\n // Adopt a value we didn't produce — an edit form's initial attachments, or a parent-side reset.\n // Compared against what we emitted, not against the current entries: a failed-only or\n // mid-upload list emits `[]` too, and treating that as \"in sync\" would strand those tiles\n // on screen and let a late upload write itself back into freshly reset parent state.\n useEffect(() => {\n if (isSameList(emittedRef.current, value)) return;\n\n entriesRef.current.forEach(entry => {\n abortUpload(entry.id);\n if (entry.previewUrl) URL.revokeObjectURL(entry.previewUrl);\n });\n entriesRef.current = value.map(toStoredEntry);\n emittedRef.current = value;\n setEntries(entriesRef.current);\n onErrorRef.current?.(null);\n }, [value, abortUpload]);\n\n // A stored url has expired by now, so re-sign it for the preview.\n const [storedSrcs, setStoredSrcs] = useState<Record<string, string>>(() =>\n value.reduce<Record<string, string>>((acc, attachment) => {\n const src = peekSignedLink(attachment.name, 'inline');\n if (src) acc[attachment.name] = src;\n\n return acc;\n }, {})\n );\n const storedSrcsRef = useRef(storedSrcs);\n storedSrcsRef.current = storedSrcs;\n\n const storedNames = entries\n // A linked image carries its own url, so there is no key of ours to sign.\n .filter(entry => !entry.file && !entry.previewUrl && entry.uploaded)\n .map(entry => (entry.uploaded as UploadedAttachment).name)\n .join('|');\n\n useEffect(() => {\n const pending = storedNames.split('|').filter(name => name && !(name in storedSrcsRef.current));\n if (!pending.length) return undefined;\n\n let isActive = true;\n Promise.all(\n pending.map(name =>\n getSignedLink(name, 'inline')\n .then(url => [name, url] as const)\n .catch(error => {\n console.error(`Failed to sign stored attachment \"${name}\"`, error);\n\n return [name, ''] as const;\n })\n )\n ).then(resolved => {\n if (isActive) setStoredSrcs(prev => ({ ...prev, ...Object.fromEntries(resolved) }));\n });\n\n return () => {\n isActive = false;\n };\n }, [storedNames]);\n\n const items = entries.reduce<AttachmentPreviewItem[]>((acc, entry) => {\n if (entry.file) {\n acc.push({\n id: entry.id,\n name: entry.name,\n src: entry.previewUrl,\n kind: getFileKind(entry.file),\n size: entry.file.size,\n isUploading: entry.isUploading,\n hideDownload: true,\n error: entry.error ?? undefined,\n });\n return acc;\n }\n\n const stored = entry.uploaded as UploadedAttachment;\n const kind = getAttachmentKind(stored);\n // A linked image is already a url; only one of ours has an S3 key worth signing.\n const src = entry.previewUrl || storedSrcs[stored.name];\n // A thumbnail without its signed url would paint as a broken image, so hold it back.\n if (kind !== 'file' && !src) return acc;\n\n acc.push({ id: entry.id, name: stored.name, src, kind, size: stored.size, hideDownload: true });\n return acc;\n }, []);\n\n return {\n items,\n fileInputRef,\n openFileDialog,\n handleFileSelect,\n addFiles,\n addLinkedImage,\n addStoredFiles,\n removeAttachment,\n handleRetry,\n reorderAttachments,\n clearAttachments,\n isUploading: entries.some(entry => entry.isUploading),\n error: entries.find(entry => entry.error)?.error ?? null,\n count: entries.length,\n isFull: entries.length >= maxFiles,\n maxFiles,\n };\n};\n"],"names":["DEFAULT_MAX_ATTACHMENTS","getFileKind","file","type","startsWith","formatMb","bytes","toFixed","toStoredEntry","attachment","id","url","name","previewUrl","isUploading","error","uploaded","entrySeq","nextEntryId","concat","useAttachmentUpload","_ref","_entries$find$error","_entries$find","value","onChange","onError","maxSizeBytes","_ref$maxFiles","maxFiles","_ref$accept","accept","ACCEPTED_ATTACHMENT_TYPES","useState","_useState2","_slicedToArray","_useState","entries","setEntries","fileInputRef","useRef","uploadersRef","Map","sessionsRef","entriesRef","onChangeRef","onErrorRef","current","emittedRef","commit","useCallback","updater","next","map","entry","filter","Boolean","getUploaded","patchEntry","patch","prev","abortUpload","_uploadersRef$current","_sessionsRef$current$","get","delete","set","releasePreview","URL","revokeObjectURL","syncError","_onErrorRef$current","_entriesRef$current$f","_entriesRef$current$f2","find","useEffect","forEach","uploader","clear","startUpload","_sessionsRef$current$2","session","_onFinishS3Put","_getSignedUrl","isCurrent","fail","message","_onErrorRef$current2","storedKey","S3Upload","files","preprocess","target","onProgress","getSignedUrl","_asyncToGenerator","_regeneratorRuntime","mark","_callee","callback","_data","wrap","_context","getS3SignedUrl","data","sent","file_name","signedUrl","signed_url","t0","stop","_x","_x2","apply","this","arguments","onFinishS3Put","_callee2","_context2","getSignedLink","abrupt","size","addLinkedImage","_onErrorRef$current3","getUrlFileName","length","some","_entry$uploaded","_toConsumableArray","addStoredFiles","_ref2","_onErrorRef$current5","_entriesRef$current$f3","fresh","room","_onErrorRef$current4","accepted","signed","attachments","added","failed","overflow","_context3","index","list","_entry$uploaded2","fileName","findIndex","other","slice","Promise","all","then","catch","fitting","Math","max","_callee3","_x3","addFiles","_onErrorRef$current7","_ref3","_entriesRef$current$f4","_entriesRef$current$f5","supported","split","rule","trim","toLowerCase","endsWith","getAttachmentKind","isAcceptedType","unsupported","tooMany","_onErrorRef$current6","kind","isTooLarge","createObjectURL","handleFileSelect","event","_event$target$files","Array","from","openFileDialog","_fileInputRef$current","click","removeAttachment","key","String","handleRetry","item","reorderAttachments","orderedIds","byId","reordered","missing","clearAttachments","_onErrorRef$current8","_onErrorRef$current9","a","b","every","_useState3","reduce","acc","src","peekSignedLink","_useState4","storedSrcs","setStoredSrcs","storedSrcsRef","storedNames","join","pending","isActive","console","resolved","_objectSpread","Object","fromEntries","items","_entry$error","push","hideDownload","undefined","stored","count","isFull"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useAttachmentUpload.js","sources":["../../../src/components/CommentComposer/useAttachmentUpload.ts"],"sourcesContent":["import { ChangeEvent, useCallback, useEffect, useRef, useState } from 'react';\nimport S3Upload from 'react-s3-uploader/s3upload';\n\nimport type {\n AttachmentKind,\n AttachmentPreviewItem,\n} from '../AttachmentPreview/AttachmentPreview.types';\nimport { getAttachmentKind } from '../AttachmentPreview/getAttachmentKind';\nimport { ACCEPTED_ATTACHMENT_TYPES } from '../AttachFileButton';\n\nimport { getS3SignedUrl } from '~/clients/jsonApi';\nimport { getUrlFileName } from '~/utils/links';\nimport { getSignedLink, peekSignedLink } from '~/utils/signedLinkCache';\n\nexport type UploadedAttachment = {\n url: string;\n name: string;\n size?: number;\n};\n\ntype UseAttachmentUploadOptions = {\n value: UploadedAttachment[];\n onChange: (attachments: UploadedAttachment[]) => void;\n onError?: (message: string | null) => void;\n maxSizeBytes?: number;\n maxFiles?: number;\n /** Mirrors the file input's `accept`; also gates drag-and-drop. */\n accept?: string;\n};\n\n/** A picked or already-stored file, in the order the user arranged it. */\ntype Entry = {\n id: string;\n name: string;\n /** Set while the file is local; cleared entries come from `value`. */\n file: File | null;\n previewUrl: string;\n isUploading: boolean;\n error: string | null;\n uploaded: UploadedAttachment | null;\n};\n\nexport const DEFAULT_MAX_ATTACHMENTS = 10;\n\n/** Same rules the file input enforces via `accept`, so drag-and-drop can't smuggle a type past it. */\nconst isAcceptedType = (file: File, accept: string) =>\n accept\n .split(',')\n .map(rule => rule.trim().toLowerCase())\n .filter(Boolean)\n .some(rule => {\n if (rule.startsWith('.')) return file.name.toLowerCase().endsWith(rule);\n if (rule.endsWith('/*')) {\n const type = file.type.toLowerCase();\n if (type) return type.startsWith(rule.slice(0, -1));\n\n return getAttachmentKind({ name: file.name }) === rule.slice(0, -1);\n }\n\n return file.type.toLowerCase() === rule;\n });\n\nconst getFileKind = (file: File): AttachmentKind => {\n if (file.type.startsWith('image/')) return 'image';\n if (file.type.startsWith('video/')) return 'video';\n return 'file';\n};\n\nconst formatMb = (bytes: number) => (bytes / (1024 * 1024)).toFixed(1);\n\nconst getUploaded = (entries: Entry[]) =>\n entries.map(entry => entry.uploaded).filter(Boolean) as UploadedAttachment[];\n\nconst isSameList = (a: UploadedAttachment[], b: UploadedAttachment[]) =>\n a.length === b.length && a.every((item, index) => item.url === b[index].url);\n\nconst toStoredEntry = (attachment: UploadedAttachment): Entry => ({\n id: attachment.url,\n name: attachment.name,\n file: null,\n previewUrl: '',\n isUploading: false,\n error: null,\n uploaded: attachment,\n});\n\nlet entrySeq = 0;\nconst nextEntryId = () => {\n entrySeq += 1;\n return `attachment-${entrySeq}`;\n};\n\nexport const useAttachmentUpload = ({\n value,\n onChange,\n onError,\n maxSizeBytes,\n maxFiles = DEFAULT_MAX_ATTACHMENTS,\n accept = ACCEPTED_ATTACHMENT_TYPES,\n}: UseAttachmentUploadOptions) => {\n const [entries, setEntries] = useState<Entry[]>([]);\n\n const fileInputRef = useRef<HTMLInputElement>(null);\n const uploadersRef = useRef(new Map<string, S3Upload>());\n // Bumped per attempt so a superseded upload can't write state for a restarted entry.\n const sessionsRef = useRef(new Map<string, number>());\n // Mutations are driven from async upload callbacks, so the latest list lives in a ref.\n const entriesRef = useRef<Entry[]>([]);\n const onChangeRef = useRef(onChange);\n const onErrorRef = useRef(onError);\n\n onChangeRef.current = onChange;\n onErrorRef.current = onError;\n\n // What we last handed the parent. A `value` that still matches it is our own change echoing\n // back; anything else is a parent-driven reset we must adopt.\n const emittedRef = useRef<UploadedAttachment[]>([]);\n\n const commit = useCallback((updater: (prev: Entry[]) => Entry[]) => {\n const next = updater(entriesRef.current);\n entriesRef.current = next;\n setEntries(next);\n emittedRef.current = getUploaded(next);\n onChangeRef.current(emittedRef.current);\n }, []);\n\n const patchEntry = useCallback(\n (id: string, patch: Partial<Entry>) =>\n commit(prev => prev.map(entry => (entry.id === id ? { ...entry, ...patch } : entry))),\n [commit]\n );\n\n const abortUpload = useCallback((id: string) => {\n uploadersRef.current.get(id)?.abortUpload();\n uploadersRef.current.delete(id);\n // Bump, never delete: deleting would let the next attempt reuse session 1, so a callback\n // still in flight from the aborted attempt would pass `isCurrent` and clobber it.\n sessionsRef.current.set(id, (sessionsRef.current.get(id) ?? 0) + 1);\n }, []);\n\n const releasePreview = useCallback((entry?: Entry) => {\n if (entry?.previewUrl) URL.revokeObjectURL(entry.previewUrl);\n }, []);\n\n // The banner is shared by every tile, so recompute it rather than clear it — one file\n // succeeding must not hide a sibling that is still failing.\n const syncError = useCallback(() => {\n onErrorRef.current?.(entriesRef.current.find(entry => entry.error)?.error ?? null);\n }, []);\n\n useEffect(\n () => () => {\n uploadersRef.current.forEach(uploader => uploader.abortUpload());\n uploadersRef.current.clear();\n entriesRef.current.forEach(entry => {\n if (entry.previewUrl) URL.revokeObjectURL(entry.previewUrl);\n });\n },\n []\n );\n\n const startUpload = useCallback(\n (id: string, file: File) => {\n const session = (sessionsRef.current.get(id) ?? 0) + 1;\n sessionsRef.current.set(id, session);\n // A superseded upload must not write state for an entry that is gone or restarted.\n const isCurrent = () => sessionsRef.current.get(id) === session;\n\n const fail = (message: string) => {\n if (!isCurrent()) return;\n patchEntry(id, { isUploading: false, error: message });\n onErrorRef.current?.(message);\n };\n\n let storedKey = '';\n\n const uploader = new S3Upload({\n files: [file],\n preprocess: (target: File, next: (file: File) => void) => next(target),\n onProgress: () => {},\n getSignedUrl: async (\n target: File,\n callback: (data: { signedUrl: string; [key: string]: unknown }) => void\n ) => {\n try {\n const data = await getS3SignedUrl(target.name, target.type);\n storedKey = data.file_name;\n callback({ ...data, signedUrl: data.signed_url });\n } catch (e) {\n fail((e as Error)?.message || 'Failed to upload the file');\n }\n },\n onFinishS3Put: async () => {\n try {\n const url = await getSignedLink(storedKey);\n if (!isCurrent()) return;\n\n uploadersRef.current.delete(id);\n patchEntry(id, {\n isUploading: false,\n error: null,\n uploaded: { url, name: storedKey, size: file.size },\n });\n syncError();\n } catch (e) {\n fail((e as Error)?.message || 'Failed to upload the file');\n }\n },\n onError: (message: string) => fail(message || 'Failed to upload the file'),\n });\n\n uploadersRef.current.set(id, uploader);\n },\n [patchEntry, syncError]\n );\n\n /** Nothing is uploaded: a comment attachment is a url, so the link itself is the attachment. */\n const addLinkedImage = useCallback(\n (url: string) => {\n const name = getUrlFileName(url);\n\n if (!name) return;\n if (entriesRef.current.length >= maxFiles) {\n onErrorRef.current?.(`You can attach up to ${maxFiles} files.`);\n\n return;\n }\n\n if (entriesRef.current.some(entry => entry.uploaded?.url === url)) return;\n\n commit(prev => [\n ...prev,\n {\n id: nextEntryId(),\n name,\n file: null,\n previewUrl: url,\n isUploading: false,\n error: null,\n uploaded: { url, name },\n },\n ]);\n },\n [commit, maxFiles]\n );\n\n /** Attaches files already in S3 (e.g. Wellhub picks): nothing to upload, the key is signed. */\n const addStoredFiles = useCallback(\n async (files: { fileName: string; size?: number }[]) => {\n const fresh = files.filter(\n (file, index, list) =>\n !entriesRef.current.some(entry => entry.uploaded?.name === file.fileName) &&\n list.findIndex(other => other.fileName === file.fileName) === index\n );\n if (!fresh.length) return;\n\n const room = maxFiles - entriesRef.current.length;\n if (room <= 0) {\n onErrorRef.current?.(`You can attach up to ${maxFiles} files.`);\n\n return;\n }\n\n const accepted = fresh.slice(0, room);\n const signed = await Promise.all(\n accepted.map(file =>\n getSignedLink(file.fileName)\n .then(url => ({ url, name: file.fileName, size: file.size }))\n .catch(() => null)\n )\n );\n const attachments = signed.filter(Boolean) as UploadedAttachment[];\n\n // Files may have been dropped in while the keys were signing, so re-check the room.\n let added = 0;\n if (attachments.length) {\n commit(prev => {\n const fitting = attachments.slice(0, Math.max(maxFiles - prev.length, 0));\n added = fitting.length;\n\n return [\n ...prev,\n ...fitting.map(attachment => ({ ...toStoredEntry(attachment), id: nextEntryId() })),\n ];\n });\n }\n\n const failed = signed.length - attachments.length;\n const overflow = fresh.length > accepted.length || added < attachments.length;\n onErrorRef.current?.(\n (failed &&\n `Could not attach ${failed === 1 ? 'a file' : `${failed} files`} from Wellhub.`) ||\n (overflow && `You can attach up to ${maxFiles} files.`) ||\n entriesRef.current.find(entry => entry.error)?.error ||\n null\n );\n },\n [commit, maxFiles]\n );\n\n const addFiles = useCallback(\n (files: File[]) => {\n const supported = files.filter(file => isAcceptedType(file, accept));\n const skipped = supported.length < files.length;\n // One banner, one message: report the most actionable reason once, at the end. Reporting\n // as we go would let a later call overwrite an earlier warning on a mixed drop.\n const unsupported = skipped\n ? (files.length === 1 && 'That file type is not supported.') ||\n 'Some files were skipped — unsupported file type.'\n : null;\n const tooMany = `You can attach up to ${maxFiles} files.`;\n\n const room = maxFiles - entriesRef.current.length;\n if (!supported.length || room <= 0) {\n onErrorRef.current?.(supported.length ? tooMany : unsupported);\n return;\n }\n\n const accepted = supported.slice(0, room);\n const added: Entry[] = accepted.map(file => {\n const isTooLarge = !!maxSizeBytes && file.size > maxSizeBytes;\n\n return {\n id: nextEntryId(),\n name: file.name,\n file,\n // Every kind gets an object url: media paints its thumbnail from it, and the\n // lightbox's document viewers read a draft pdf/csv/text through it — without one\n // the preview reports the file as unopenable until the comment is sent.\n previewUrl: URL.createObjectURL(file),\n isUploading: !isTooLarge,\n error: isTooLarge\n ? `File is too large (${formatMb(file.size)} MB). Maximum size is ${formatMb(\n maxSizeBytes as number\n )} MB.`\n : null,\n uploaded: null,\n };\n });\n\n commit(prev => [...prev, ...added]);\n\n const overflow = supported.length > accepted.length ? tooMany : null;\n onErrorRef.current?.(\n entriesRef.current.find(entry => entry.error)?.error ?? unsupported ?? overflow\n );\n\n added\n .filter(entry => !entry.error)\n .forEach(entry => startUpload(entry.id, entry.file as File));\n },\n [commit, maxFiles, maxSizeBytes, startUpload, accept]\n );\n\n const handleFileSelect = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n const files = Array.from(event.target.files ?? []);\n // Reset the input so re-picking the same file still fires a change event.\n if (fileInputRef.current) fileInputRef.current.value = '';\n if (files.length) addFiles(files);\n },\n [addFiles]\n );\n\n const openFileDialog = useCallback(() => fileInputRef.current?.click(), []);\n\n const removeAttachment = useCallback(\n (id: AttachmentPreviewItem['id']) => {\n const key = String(id);\n abortUpload(key);\n releasePreview(entriesRef.current.find(entry => entry.id === key));\n commit(prev => prev.filter(entry => entry.id !== key));\n syncError();\n },\n [abortUpload, releasePreview, commit, syncError]\n );\n\n const handleRetry = useCallback(\n (id: AttachmentPreviewItem['id']) => {\n const key = String(id);\n const entry = entriesRef.current.find(item => item.id === key);\n if (!entry?.file) return;\n\n abortUpload(key);\n patchEntry(key, { isUploading: true, error: null });\n syncError();\n startUpload(key, entry.file);\n },\n [abortUpload, patchEntry, startUpload, syncError]\n );\n\n const reorderAttachments = useCallback(\n (orderedIds: AttachmentPreviewItem['id'][]) =>\n commit(prev => {\n const byId = new Map(prev.map(entry => [entry.id, entry]));\n const reordered = orderedIds.map(id => byId.get(String(id))).filter(Boolean) as Entry[];\n // Unlisted ids (a race with a removal) keep their place at the end.\n const missing = prev.filter(entry => !orderedIds.some(id => String(id) === entry.id));\n return [...reordered, ...missing];\n }),\n [commit]\n );\n\n const clearAttachments = useCallback(() => {\n entriesRef.current.forEach(entry => {\n abortUpload(entry.id);\n releasePreview(entry);\n });\n commit(() => []);\n onErrorRef.current?.(null);\n }, [abortUpload, commit, releasePreview]);\n\n // Adopt a value we didn't produce — an edit form's initial attachments, or a parent-side reset.\n // Compared against what we emitted, not against the current entries: a failed-only or\n // mid-upload list emits `[]` too, and treating that as \"in sync\" would strand those tiles\n // on screen and let a late upload write itself back into freshly reset parent state.\n useEffect(() => {\n if (isSameList(emittedRef.current, value)) return;\n\n entriesRef.current.forEach(entry => {\n abortUpload(entry.id);\n if (entry.previewUrl) URL.revokeObjectURL(entry.previewUrl);\n });\n entriesRef.current = value.map(toStoredEntry);\n emittedRef.current = value;\n setEntries(entriesRef.current);\n onErrorRef.current?.(null);\n }, [value, abortUpload]);\n\n // A stored url has expired by now, so re-sign it for the preview.\n const [storedSrcs, setStoredSrcs] = useState<Record<string, string>>(() =>\n value.reduce<Record<string, string>>((acc, attachment) => {\n const src = peekSignedLink(attachment.name, 'inline');\n if (src) acc[attachment.name] = src;\n\n return acc;\n }, {})\n );\n const storedSrcsRef = useRef(storedSrcs);\n storedSrcsRef.current = storedSrcs;\n\n const storedNames = entries\n // A linked image carries its own url, so there is no key of ours to sign.\n .filter(entry => !entry.file && !entry.previewUrl && entry.uploaded)\n .map(entry => (entry.uploaded as UploadedAttachment).name)\n .join('|');\n\n useEffect(() => {\n const pending = storedNames.split('|').filter(name => name && !(name in storedSrcsRef.current));\n if (!pending.length) return undefined;\n\n let isActive = true;\n Promise.all(\n pending.map(name =>\n getSignedLink(name, 'inline')\n .then(url => [name, url] as const)\n .catch(error => {\n console.error(`Failed to sign stored attachment \"${name}\"`, error);\n\n return [name, ''] as const;\n })\n )\n ).then(resolved => {\n if (isActive) setStoredSrcs(prev => ({ ...prev, ...Object.fromEntries(resolved) }));\n });\n\n return () => {\n isActive = false;\n };\n }, [storedNames]);\n\n const items = entries.reduce<AttachmentPreviewItem[]>((acc, entry) => {\n if (entry.file) {\n acc.push({\n id: entry.id,\n name: entry.name,\n src: entry.previewUrl,\n kind: getFileKind(entry.file),\n size: entry.file.size,\n isUploading: entry.isUploading,\n hideDownload: true,\n error: entry.error ?? undefined,\n });\n return acc;\n }\n\n const stored = entry.uploaded as UploadedAttachment;\n const kind = getAttachmentKind(stored);\n // A linked image is already a url; only one of ours has an S3 key worth signing.\n const src = entry.previewUrl || storedSrcs[stored.name];\n // A thumbnail without its signed url would paint as a broken image, so hold it back.\n if (kind !== 'file' && !src) return acc;\n\n acc.push({ id: entry.id, name: stored.name, src, kind, size: stored.size, hideDownload: true });\n return acc;\n }, []);\n\n return {\n items,\n fileInputRef,\n openFileDialog,\n handleFileSelect,\n addFiles,\n addLinkedImage,\n addStoredFiles,\n removeAttachment,\n handleRetry,\n reorderAttachments,\n clearAttachments,\n isUploading: entries.some(entry => entry.isUploading),\n error: entries.find(entry => entry.error)?.error ?? null,\n count: entries.length,\n isFull: entries.length >= maxFiles,\n maxFiles,\n };\n};\n"],"names":["DEFAULT_MAX_ATTACHMENTS","formatMb","bytes","toFixed","toStoredEntry","attachment","id","url","name","file","previewUrl","isUploading","error","uploaded","entrySeq","nextEntryId","concat","useAttachmentUpload","_ref","_entries$find$error","_entries$find","value","onChange","onError","maxSizeBytes","_ref$maxFiles","maxFiles","_ref$accept","accept","ACCEPTED_ATTACHMENT_TYPES","useState","_useState2","_slicedToArray","_useState","entries","setEntries","fileInputRef","useRef","uploadersRef","Map","sessionsRef","entriesRef","onChangeRef","onErrorRef","current","emittedRef","commit","useCallback","updater","next","map","entry","filter","Boolean","getUploaded","patchEntry","patch","prev","abortUpload","_uploadersRef$current","_sessionsRef$current$","get","delete","set","releasePreview","URL","revokeObjectURL","syncError","_onErrorRef$current","_entriesRef$current$f","_entriesRef$current$f2","find","useEffect","forEach","uploader","clear","startUpload","_sessionsRef$current$2","session","_onFinishS3Put","_getSignedUrl","isCurrent","fail","message","_onErrorRef$current2","storedKey","S3Upload","files","preprocess","target","onProgress","getSignedUrl","_asyncToGenerator","_regeneratorRuntime","mark","_callee","callback","_data","wrap","_context","getS3SignedUrl","type","data","sent","file_name","signedUrl","signed_url","t0","stop","_x","_x2","apply","this","arguments","onFinishS3Put","_callee2","_context2","getSignedLink","abrupt","size","addLinkedImage","_onErrorRef$current3","getUrlFileName","length","some","_entry$uploaded","_toConsumableArray","addStoredFiles","_ref2","_onErrorRef$current5","_entriesRef$current$f3","fresh","room","_onErrorRef$current4","accepted","signed","attachments","added","failed","overflow","_context3","index","list","_entry$uploaded2","fileName","findIndex","other","slice","Promise","all","then","catch","fitting","Math","max","_callee3","_x3","addFiles","_onErrorRef$current7","_ref3","_entriesRef$current$f4","_entriesRef$current$f5","supported","split","rule","trim","toLowerCase","startsWith","endsWith","getAttachmentKind","isAcceptedType","unsupported","tooMany","_onErrorRef$current6","isTooLarge","createObjectURL","handleFileSelect","event","_event$target$files","Array","from","openFileDialog","_fileInputRef$current","click","removeAttachment","key","String","handleRetry","item","reorderAttachments","orderedIds","byId","reordered","missing","clearAttachments","_onErrorRef$current8","_onErrorRef$current9","a","b","every","_useState3","reduce","acc","src","peekSignedLink","_useState4","storedSrcs","setStoredSrcs","storedSrcsRef","storedNames","join","pending","isActive","console","resolved","_objectSpread","Object","fromEntries","items","_entry$error","push","kind","hideDownload","undefined","stored","count","isFull"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/components/DevCenter/AppsDataProvider/effects/utils.js"],"names":[],"mappings":"AAkBA,eAAO,MAAM,yBAAyB,mCAAmD,CAAC;AAE1F,eAAO,MAAM,eAAe,+CAKzB,CAAC;AAEJ,wBAAsB,UAAU,CAAC,GAAG,KAAA,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/components/DevCenter/AppsDataProvider/effects/utils.js"],"names":[],"mappings":"AAkBA,eAAO,MAAM,yBAAyB,mCAAmD,CAAC;AAE1F,eAAO,MAAM,eAAe,+CAKzB,CAAC;AAEJ,wBAAsB,UAAU,CAAC,GAAG,KAAA,gBAgCnC;AAED,wBAAsB,SAAS,CAAC,GAAG,KAAA,gBA4BlC;AAED,wBAAsB,4BAA4B,CAAC,QAAQ,KAAA,gBAW1D;AAwCD,eAAO,MAAM,kBAAkB,2CAW9B,CAAC;AAEF,eAAO,MAAM,iBAAiB,yCAS7B,CAAC;AAEF,eAAO,MAAM,gBAAgB,gEAkB5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,6CAY7B,CAAC;AAEF,eAAO,MAAM,8BAA8B,qGAsB1C,CAAC;AAEF,wBAAsB,eAAe,CAAC,GAAG,KAAA,6GAqBxC;AAED,wBAAsB,sBAAsB,CAAC,GAAG,KAAA,gBAY/C;AAED,wBAAsB,mBAAmB,CAAC,SAAS,KAAA,EAAE,IAAI,KAAA,gBAwBxD;AAED,wBAAsB,aAAa,CAAC,UAAU,KAAA,EAAE,IAAI,KAAA,gBAwBnD;AAED,eAAO,MAAM,UAAU,sBAUV,CAAC;AAEd,eAAO,MAAM,iBAAiB,uBAO3B,CAAC;AAEJ,eAAO,MAAM,iBAAiB;IAC5B,EAAE;IACF,GAAG;IACH,IAAI;IACJ,SAAS;IACT,gBAAgB;IAChB,OAAO;QACL,EAAE;QACF,IAAI;;IAEN,kBAAkB;QAChB,SAAS;YACP,EAAE;YACF,IAAI;;QAEN,GAAG;YACD,EAAE;YACF,IAAI;;;IAGR,KAAK;IACL,SAAS;IACT,OAAO;CACP,CAAC;AAEH,eAAO,MAAM,uBAAuB,oBAOjC,CAAC;AAEJ,eAAO,MAAM,uCAAuC,2BAInD,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;CA+DlC,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"@babel/runtime/helpers/defineProperty";import r from"@babel/runtime/helpers/asyncToGenerator";import t from"@babel/runtime/helpers/slicedToArray";import n from"@babel/runtime/regenerator";import i from"jsona";import{get as a,uniq as u,isEmpty as l,keyBy as s}from"lodash";import{getWells as c,getRigs as o,getFracFleets as p,getInterventionUnits as d,getFracFleetWells as f,getPadWells as m,getResolvedAssets as v}from"../../../../clients/jsonApi/index.js";import{DEV_CENTER_CLI_APP_ID as w}from"../../../../constants/devcenter.js";import"../../../../constants/goals.js";import"../../../../constants/segment.js";import"../../../../constants/alerts.js";import"../../../../constants/apps.js";import"../../../../constants/drillstring.js";import"../../../../constants/completion.js";import"../../../../constants/appPackages.js";import"../../../../constants/notifications.js";import"../../../../constants/feed.js";import"../../../../constants/bha.js";import{ASSET_TYPES as b}from"../../../../constants/assetTypes.js";import"../../../../constants/corvaCompanyId.js";import"../../../GradientManager/configuration/constants.js";import{getAppSegment as h}from"../../../../utils/devcenter.js";function g(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function _(r){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?g(Object(n),!0).forEach((function(t){e(r,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach((function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(n,e))}))}return r}var y=new i,j=function(e,r){return+a(e,["settings",r])},x=function(e,r){return u(e.map((function(e){var r=t(e,2);return r[0],r[1]})).filter((function(e){return Number.isFinite(e)&&!r.includes(String(e))})))};function k(e){return I.apply(this,arguments)}function I(){return(I=r(n.mark((function e(r){return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,c({ids:r,fields:["well.name","well.settings","well.company","well.asset_id","well.last_active_at","well.program","well.pad","well.frac_fleet","well.id","well.rig","rig.name","rig.asset_id","company.id","well.status","well.archivation","well.lon_lat"],include_arhivation_data:!0});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function O(e){return F.apply(this,arguments)}function F(){return(F=r(n.mark((function e(r){return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,o({ids:r,fields:["rig.name","rig.settings","rig.asset_id","rig.active_well","rig.last_active_well","well.name","well.settings","well.company","rig.program","well.asset_id","well.last_active_at","well.id","well.company.id","well.lon_lat"]});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function P(e){return B.apply(this,arguments)}function B(){return(B=r(n.mark((function e(r){return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,v({assets:r});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}var U=function(e,r,t){return _(_({well:e&&_(_({},e.attributes),{},{id:e.id,companyId:a(e,"relationships.company.data.id")}),rig:{name:a(r,"attributes.name"),id:a(r,"id"),asset_id:a(r,"attributes.asset_id")},program:{id:a(r,"program.id")||null,name:a(r,"program.attributes.name")||null}},t&&{interventionUnit:{id:+t.id,name:t.name,active_well:t.active_well}}),{},{completionWellInfo:{pad:{id:a(e,"pad.id")||null,name:a(e,"pad.attributes.name")||null},fracFleet:{id:a(e,"fracFleet.id")||null,name:a(e,"fracFleet.attributes.name")||null}}})},W=function(e,r){return!r||l(r)?{}:e.reduce((function(e,n){var i=t(n,2),a=i[0],u=i[1],l=r[u];return l?(e[a]=U(l,l.rig),e):e}),{})},q=function(e,r){return!r||l(r)?{}:e.reduce((function(e,n){var i=t(n,2),a=i[0],u=i[1],l=r[u];return e[a]=U(null==l?void 0:l.well,l),e}),{})},D=function(e,r,n){return r||n?e.reduce((function(e,i){var a,u,l=t(i,2),s=l[0],c=l[1],o=null==r?void 0:r[c],p=null==n?void 0:n[s];return e[s]={fracFleet:o,wells:p,program:{id:(null==o||null===(a=o.program)||void 0===a?void 0:a.id)||null,name:(null==o||null===(u=o.program)||void 0===u?void 0:u.name)||null}},e}),{}):{}},T=function(e,r){return e||r?e.reduce((function(e,n){var i=t(n,2),a=i[0];i[1];var u=null==r?void 0:r[a];return e[a]={wells:u},e}),{}):{}},z=function(e,r,n,i){return!r||l(r)?{}:e.reduce((function(e,a){var u,l=t(a,2),s=l[0],c=l[1],o=r[c],p=null===(u=n.find((function(e){return e[0]===s})))||void 0===u?void 0:u[1],d=i[p]||o.well;return e[s]=U(d,null==d?void 0:d.rig,_(_({},o),o.well&&{active_well:_({id:o.well.id},o.well.attributes)})),e}),{})};function A(e){return E.apply(this,arguments)}function E(){return(E=r(n.mark((function e(r){var t;return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,p({ids:r,fields:["frac_fleet.name","frac_fleet.pads","frac_fleet.program","frac_fleet.current_pad_id","frac_fleet.pad_frac_fleets","frac_fleet.pad_frac_fleet.frac_fleet_lines"]});case 5:return t=e.sent,e.abrupt("return",t?y.deserialize(t):[]);case 9:return e.prev=9,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",[]);case 13:case"end":return e.stop()}}),e,null,[[2,9]])})))).apply(this,arguments)}function S(e){return G.apply(this,arguments)}function G(){return(G=r(n.mark((function e(r){return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,d({ids:r,fields:["intervention_unit.name","intervention_unit.type","intervention_unit.active_well"]});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function R(e,r){return C.apply(this,arguments)}function C(){return C=r(n.mark((function e(i,u){var l,c,o;return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return l=s(u,"id"),c=i.map(function(){var e=r(n.mark((function e(r){var i,u,s,c,o,p;return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=t(r,2),u=i[0],s=i[1],c={fields:"all",frac_fleet_id:s},o=l[u],u===w?c.app_key=a(o,["app","app_key"]):c.app_id=a(o,["app","id"]),e.prev=4,e.next=7,f(c);case 7:return p=e.sent,e.abrupt("return",p?y.deserialize(p):[]);case 11:return e.prev=11,e.t0=e.catch(4),console.error(e.t0),e.abrupt("return",[]);case 15:case"end":return e.stop()}}),e,null,[[4,11]])})));return function(r){return e.apply(this,arguments)}}()),e.next=4,Promise.all(c);case 4:return o=e.sent,e.abrupt("return",o.reduce((function(e,r,t){return e[i[t][0]]=r,e}),{}));case 6:case"end":return e.stop()}}),e)}))),C.apply(this,arguments)}function H(e,r){return L.apply(this,arguments)}function L(){return L=r(n.mark((function e(i,u){var l,c,o;return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return l=s(u,"id"),c=i.map(function(){var e=r(n.mark((function e(r){var i,u,s,c,o,p;return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=t(r,2),u=i[0],s=i[1],c={fields:"all"},o=l[u],u===w?c.app_key=a(o,["app","app_key"]):c.app_id=a(o,["app","id"]),e.prev=4,e.next=7,m(s,c);case 7:return p=e.sent,e.abrupt("return",p?y.deserialize(p):[]);case 11:return e.prev=11,e.t0=e.catch(4),console.error(e.t0),e.abrupt("return",[]);case 15:case"end":return e.stop()}}),e,null,[[4,11]])})));return function(r){return e.apply(this,arguments)}}()),e.next=4,Promise.all(c);case 4:return o=e.sent,e.abrupt("return",o.reduce((function(e,r,t){return e[i[t][0]]=r,e}),{}));case 6:case"end":return e.stop()}}),e)}))),L.apply(this,arguments)}var M=function(e){return[e.id,j(e,b.well.id),j(e,b.rig.id),j(e,b.frac_fleet.id),j(e,b.pad.id),j(e,b.intervention_unit.id),j(e,"deprecatedAssetId"),h(e)].join("-")},N=function(e){return Boolean(j(e,b.well.id)||j(e,b.rig.id)||j(e,b.frac_fleet.id)||j(e,b.pad.id)||j(e,b.intervention_unit.id))},J=function(e){return{id:e.id,rig:null,well:null,fracFleet:null,interventionUnit:null,program:{id:null,name:null},completionWellInfo:{fracFleet:{id:null,name:null},pad:{id:null,name:null}},wells:null,isLoading:!0,appHash:M(e)}},K=function(r){return r.reduce((function(r,t){return _(_({},r),{},e({},t.id,J(t)))}),{})},Q=function(e){var r=j(e,b.intervention_unit.id),t=j(e,b.well.id);return r&&!t},V=function(e,r){var t=[],n=[],i=[],a=[],u=[],l=[],s=[];e.forEach((function(e){var r=j(e,b.well.id),c=j(e,b.rig.id),o=j(e,b.frac_fleet.id),p=j(e,b.pad.id),d=j(e,b.intervention_unit.id),f=e.id;s.push([f]),d?(a.push([f,d]),r&&t.push([f,r])):r?t.push([f,r]):c?n.push([f,c]):o&&(i.push([f,o]),p?l.push([f,p]):u.push([f,o]))}));var c=r.current,o=c.rigsById,p=c.wellsById,d=c.fracFleetsById,f=c.interventionUnitsById,m=x(t,Object.keys(p)),v=x(n,Object.keys(o)),w=x(i,Object.keys(d)),h=x(a,Object.keys(f));return{appsWellIds:t,appsRigIds:n,appsFracFleetIds:i,appsPadIds:l,appIds:s,appsFracFleetToFetchWellsIds:u,appsInterventionUnitIds:a,uniqueWellIds:m,uniqueRigIds:v,uniqueFFIds:w,uniqueInterventionUnitIds:h}};export{P as fetchAssetEntitiesByAssetIds,R as fetchFracFleetWells,A as fetchFracFleets,S as fetchInterventionUnits,H as fetchPadWells,O as fetchRigs,k as fetchWells,j as getAppAssetSpecificTypeId,M as getAppHash,D as getAppsDataByFFs,z as getAppsDataByInterventionUnits,T as getAppsDataByPads,q as getAppsDataByRigs,W as getAppsDataByWells,J as getInitialAppData,K as getInitialAppsDataState,x as getUniqAssetIds,Q as isAppNeedingInterventionUnitWellRefresh,N as isAppWithSettings,V as prepareDataForResolver};
|
|
1
|
+
import e from"@babel/runtime/helpers/defineProperty";import r from"@babel/runtime/helpers/asyncToGenerator";import t from"@babel/runtime/helpers/slicedToArray";import n from"@babel/runtime/regenerator";import i from"jsona";import{get as a,uniq as u,isEmpty as l,keyBy as s}from"lodash";import{getWells as o,getRigs as c,getFracFleets as p,getInterventionUnits as d,getFracFleetWells as f,getPadWells as m,getResolvedAssets as v}from"../../../../clients/jsonApi/index.js";import{DEV_CENTER_CLI_APP_ID as w}from"../../../../constants/devcenter.js";import"../../../../constants/goals.js";import"../../../../constants/segment.js";import"../../../../constants/alerts.js";import"../../../../constants/apps.js";import"../../../../constants/drillstring.js";import"../../../../constants/completion.js";import"../../../../constants/appPackages.js";import"../../../../constants/notifications.js";import"../../../../constants/feed.js";import"../../../../constants/bha.js";import{ASSET_TYPES as b}from"../../../../constants/assetTypes.js";import"../../../../constants/corvaCompanyId.js";import"../../../GradientManager/configuration/constants.js";import{getAppSegment as h}from"../../../../utils/devcenter.js";function _(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function g(r){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?_(Object(n),!0).forEach((function(t){e(r,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(n)):_(Object(n)).forEach((function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(n,e))}))}return r}var y=new i,j=function(e,r){return+a(e,["settings",r])},x=function(e,r){return u(e.map((function(e){var r=t(e,2);return r[0],r[1]})).filter((function(e){return Number.isFinite(e)&&!r.includes(String(e))})))};function k(e){return I.apply(this,arguments)}function I(){return(I=r(n.mark((function e(r){return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,o({ids:r,fields:["well.name","well.settings","well.custom_properties","well.company","well.asset_id","well.last_active_at","well.program","well.pad","well.frac_fleet","well.id","well.rig","rig.name","rig.asset_id","company.id","well.status","well.archivation","well.lon_lat"],include_arhivation_data:!0});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function O(e){return F.apply(this,arguments)}function F(){return(F=r(n.mark((function e(r){return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,c({ids:r,fields:["rig.name","rig.settings","rig.asset_id","rig.active_well","rig.last_active_well","well.name","well.settings","well.custom_properties","well.company","rig.program","well.asset_id","well.last_active_at","well.id","well.company.id","well.lon_lat"]});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function P(e){return B.apply(this,arguments)}function B(){return(B=r(n.mark((function e(r){return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,v({assets:r});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}var U=function(e,r,t){return g(g({well:e&&g(g({},e.attributes),{},{id:e.id,companyId:a(e,"relationships.company.data.id")}),rig:{name:a(r,"attributes.name"),id:a(r,"id"),asset_id:a(r,"attributes.asset_id")},program:{id:a(r,"program.id")||null,name:a(r,"program.attributes.name")||null}},t&&{interventionUnit:{id:+t.id,name:t.name,active_well:t.active_well}}),{},{completionWellInfo:{pad:{id:a(e,"pad.id")||null,name:a(e,"pad.attributes.name")||null},fracFleet:{id:a(e,"fracFleet.id")||null,name:a(e,"fracFleet.attributes.name")||null}}})},W=function(e,r){return!r||l(r)?{}:e.reduce((function(e,n){var i=t(n,2),a=i[0],u=i[1],l=r[u];return l?(e[a]=U(l,l.rig),e):e}),{})},q=function(e,r){return!r||l(r)?{}:e.reduce((function(e,n){var i=t(n,2),a=i[0],u=i[1],l=r[u];return e[a]=U(null==l?void 0:l.well,l),e}),{})},D=function(e,r,n){return r||n?e.reduce((function(e,i){var a,u,l=t(i,2),s=l[0],o=l[1],c=null==r?void 0:r[o],p=null==n?void 0:n[s];return e[s]={fracFleet:c,wells:p,program:{id:(null==c||null===(a=c.program)||void 0===a?void 0:a.id)||null,name:(null==c||null===(u=c.program)||void 0===u?void 0:u.name)||null}},e}),{}):{}},T=function(e,r){return e||r?e.reduce((function(e,n){var i=t(n,2),a=i[0];i[1];var u=null==r?void 0:r[a];return e[a]={wells:u},e}),{}):{}},z=function(e,r,n,i){return!r||l(r)?{}:e.reduce((function(e,a){var u,l=t(a,2),s=l[0],o=l[1],c=r[o],p=null===(u=n.find((function(e){return e[0]===s})))||void 0===u?void 0:u[1],d=i[p]||c.well;return e[s]=U(d,null==d?void 0:d.rig,g(g({},c),c.well&&{active_well:g({id:c.well.id},c.well.attributes)})),e}),{})};function A(e){return E.apply(this,arguments)}function E(){return(E=r(n.mark((function e(r){var t;return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,p({ids:r,fields:["frac_fleet.name","frac_fleet.pads","frac_fleet.program","frac_fleet.current_pad_id","frac_fleet.pad_frac_fleets","frac_fleet.pad_frac_fleet.frac_fleet_lines"]});case 5:return t=e.sent,e.abrupt("return",t?y.deserialize(t):[]);case 9:return e.prev=9,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",[]);case 13:case"end":return e.stop()}}),e,null,[[2,9]])})))).apply(this,arguments)}function S(e){return G.apply(this,arguments)}function G(){return(G=r(n.mark((function e(r){return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r.length){e.next=2;break}return e.abrupt("return",null);case 2:return e.prev=2,e.next=5,d({ids:r,fields:["intervention_unit.name","intervention_unit.type","intervention_unit.active_well"]});case 5:return e.abrupt("return",e.sent);case 8:return e.prev=8,e.t0=e.catch(2),console.error(e.t0),e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})))).apply(this,arguments)}function R(e,r){return C.apply(this,arguments)}function C(){return C=r(n.mark((function e(i,u){var l,o,c;return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return l=s(u,"id"),o=i.map(function(){var e=r(n.mark((function e(r){var i,u,s,o,c,p;return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=t(r,2),u=i[0],s=i[1],o={fields:"all",frac_fleet_id:s},c=l[u],u===w?o.app_key=a(c,["app","app_key"]):o.app_id=a(c,["app","id"]),e.prev=4,e.next=7,f(o);case 7:return p=e.sent,e.abrupt("return",p?y.deserialize(p):[]);case 11:return e.prev=11,e.t0=e.catch(4),console.error(e.t0),e.abrupt("return",[]);case 15:case"end":return e.stop()}}),e,null,[[4,11]])})));return function(r){return e.apply(this,arguments)}}()),e.next=4,Promise.all(o);case 4:return c=e.sent,e.abrupt("return",c.reduce((function(e,r,t){return e[i[t][0]]=r,e}),{}));case 6:case"end":return e.stop()}}),e)}))),C.apply(this,arguments)}function H(e,r){return L.apply(this,arguments)}function L(){return L=r(n.mark((function e(i,u){var l,o,c;return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return l=s(u,"id"),o=i.map(function(){var e=r(n.mark((function e(r){var i,u,s,o,c,p;return n.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=t(r,2),u=i[0],s=i[1],o={fields:"all"},c=l[u],u===w?o.app_key=a(c,["app","app_key"]):o.app_id=a(c,["app","id"]),e.prev=4,e.next=7,m(s,o);case 7:return p=e.sent,e.abrupt("return",p?y.deserialize(p):[]);case 11:return e.prev=11,e.t0=e.catch(4),console.error(e.t0),e.abrupt("return",[]);case 15:case"end":return e.stop()}}),e,null,[[4,11]])})));return function(r){return e.apply(this,arguments)}}()),e.next=4,Promise.all(o);case 4:return c=e.sent,e.abrupt("return",c.reduce((function(e,r,t){return e[i[t][0]]=r,e}),{}));case 6:case"end":return e.stop()}}),e)}))),L.apply(this,arguments)}var M=function(e){return[e.id,j(e,b.well.id),j(e,b.rig.id),j(e,b.frac_fleet.id),j(e,b.pad.id),j(e,b.intervention_unit.id),j(e,"deprecatedAssetId"),h(e)].join("-")},N=function(e){return Boolean(j(e,b.well.id)||j(e,b.rig.id)||j(e,b.frac_fleet.id)||j(e,b.pad.id)||j(e,b.intervention_unit.id))},J=function(e){return{id:e.id,rig:null,well:null,fracFleet:null,interventionUnit:null,program:{id:null,name:null},completionWellInfo:{fracFleet:{id:null,name:null},pad:{id:null,name:null}},wells:null,isLoading:!0,appHash:M(e)}},K=function(r){return r.reduce((function(r,t){return g(g({},r),{},e({},t.id,J(t)))}),{})},Q=function(e){var r=j(e,b.intervention_unit.id),t=j(e,b.well.id);return r&&!t},V=function(e,r){var t=[],n=[],i=[],a=[],u=[],l=[],s=[];e.forEach((function(e){var r=j(e,b.well.id),o=j(e,b.rig.id),c=j(e,b.frac_fleet.id),p=j(e,b.pad.id),d=j(e,b.intervention_unit.id),f=e.id;s.push([f]),d?(a.push([f,d]),r&&t.push([f,r])):r?t.push([f,r]):o?n.push([f,o]):c&&(i.push([f,c]),p?l.push([f,p]):u.push([f,c]))}));var o=r.current,c=o.rigsById,p=o.wellsById,d=o.fracFleetsById,f=o.interventionUnitsById,m=x(t,Object.keys(p)),v=x(n,Object.keys(c)),w=x(i,Object.keys(d)),h=x(a,Object.keys(f));return{appsWellIds:t,appsRigIds:n,appsFracFleetIds:i,appsPadIds:l,appIds:s,appsFracFleetToFetchWellsIds:u,appsInterventionUnitIds:a,uniqueWellIds:m,uniqueRigIds:v,uniqueFFIds:w,uniqueInterventionUnitIds:h}};export{P as fetchAssetEntitiesByAssetIds,R as fetchFracFleetWells,A as fetchFracFleets,S as fetchInterventionUnits,H as fetchPadWells,O as fetchRigs,k as fetchWells,j as getAppAssetSpecificTypeId,M as getAppHash,D as getAppsDataByFFs,z as getAppsDataByInterventionUnits,T as getAppsDataByPads,q as getAppsDataByRigs,W as getAppsDataByWells,J as getInitialAppData,K as getInitialAppsDataState,x as getUniqAssetIds,Q as isAppNeedingInterventionUnitWellRefresh,N as isAppWithSettings,V as prepareDataForResolver};
|
|
2
2
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../../../src/components/DevCenter/AppsDataProvider/effects/utils.js"],"sourcesContent":["import Jsona from 'jsona';\nimport { get, isEmpty, keyBy, uniq } from 'lodash';\n\nimport {\n getFracFleets,\n getFracFleetWells,\n getInterventionUnits,\n getPadWells,\n getResolvedAssets,\n getRigs,\n getWells,\n} from '~/clients/jsonApi';\nimport { DEV_CENTER_CLI_APP_ID } from '~constants';\nimport { ASSET_TYPES } from '~/constants/assetTypes';\nimport { getAppSegment } from '~/utils/devcenter';\n\nconst dataFormatter = new Jsona();\n\nexport const getAppAssetSpecificTypeId = (app, typeId) => +get(app, ['settings', typeId]);\n\nexport const getUniqAssetIds = (assetIds, cachedAssetIds) =>\n uniq(\n assetIds\n .map(([_appId, assetId]) => assetId)\n .filter(assetId => Number.isFinite(assetId) && !cachedAssetIds.includes(String(assetId)))\n );\n\nexport async function fetchWells(ids) {\n if (!ids.length) return null;\n\n try {\n // eslint-disable-next-line no-return-await\n return await getWells({\n ids,\n fields: [\n 'well.name',\n 'well.settings',\n 'well.company',\n 'well.asset_id',\n 'well.last_active_at',\n 'well.program',\n 'well.pad',\n 'well.frac_fleet',\n 'well.id',\n 'well.rig',\n 'rig.name',\n 'rig.asset_id',\n 'company.id',\n 'well.status',\n 'well.archivation',\n 'well.lon_lat',\n ],\n include_arhivation_data: true,\n });\n } catch (e) {\n console.error(e);\n return null;\n }\n}\n\nexport async function fetchRigs(ids) {\n if (!ids.length) return null;\n\n try {\n return await getRigs({\n ids,\n fields: [\n 'rig.name',\n 'rig.settings',\n 'rig.asset_id',\n 'rig.active_well',\n 'rig.last_active_well',\n 'well.name',\n 'well.settings',\n 'well.company',\n 'rig.program',\n 'well.asset_id',\n 'well.last_active_at',\n 'well.id',\n 'well.company.id',\n 'well.lon_lat',\n ],\n });\n } catch (e) {\n console.error(e);\n return null;\n }\n}\n\nexport async function fetchAssetEntitiesByAssetIds(assetIds) {\n if (!assetIds.length) return null;\n\n try {\n return await getResolvedAssets({\n assets: assetIds,\n });\n } catch (e) {\n console.error(e);\n return null;\n }\n}\n\nconst getWellObjectFromWellData = (well, rig, interventionUnit) => {\n return {\n well: well && {\n ...well.attributes,\n id: well.id,\n // NOTE: API doesn't return active child company id\n companyId: get(well, 'relationships.company.data.id'),\n },\n rig: {\n name: get(rig, 'attributes.name'),\n id: get(rig, 'id'),\n asset_id: get(rig, 'attributes.asset_id'),\n },\n program: {\n id: get(rig, 'program.id') || null,\n name: get(rig, 'program.attributes.name') || null,\n },\n ...(interventionUnit && {\n interventionUnit: {\n id: +interventionUnit.id,\n name: interventionUnit.name,\n active_well: interventionUnit.active_well,\n },\n }),\n // NOTE: Support ff/pad in mixpanel for Asset Dashboards\n completionWellInfo: {\n pad: {\n id: get(well, 'pad.id') || null,\n name: get(well, 'pad.attributes.name') || null,\n },\n fracFleet: {\n id: get(well, 'fracFleet.id') || null,\n name: get(well, 'fracFleet.attributes.name') || null,\n },\n },\n };\n};\n\nexport const getAppsDataByWells = (appsWellIds, wellsById) => {\n if (!wellsById || isEmpty(wellsById)) return {};\n\n return appsWellIds.reduce((acc, [appId, wellId]) => {\n const well = wellsById[wellId];\n if (!well) return acc;\n\n acc[appId] = getWellObjectFromWellData(well, well.rig);\n\n return acc;\n }, {});\n};\n\nexport const getAppsDataByRigs = (appsRigIds, rigsById) => {\n if (!rigsById || isEmpty(rigsById)) return {};\n\n return appsRigIds.reduce((acc, [appId, rigId]) => {\n const rig = rigsById[rigId];\n acc[appId] = getWellObjectFromWellData(rig?.well, rig);\n\n return acc;\n }, {});\n};\n\nexport const getAppsDataByFFs = (appsFracFleetIds, ffsById, ffWellsData) => {\n if (!ffsById && !ffWellsData) return {};\n\n return appsFracFleetIds.reduce((acc, [appId, ffId]) => {\n const fracFleet = ffsById?.[ffId];\n const wells = ffWellsData?.[appId];\n\n acc[appId] = {\n fracFleet,\n wells,\n program: {\n id: fracFleet?.program?.id || null,\n name: fracFleet?.program?.name || null,\n },\n };\n\n return acc;\n }, {});\n};\n\nexport const getAppsDataByPads = (appsPadIds, padWellsData) => {\n if (!appsPadIds && !padWellsData) return {};\n\n return appsPadIds.reduce((acc, [appId, _padId]) => {\n const wells = padWellsData?.[appId];\n\n acc[appId] = {\n wells,\n };\n\n return acc;\n }, {});\n};\n\nexport const getAppsDataByInterventionUnits = (\n appsInterventionUnitIds,\n interventionUnitsById,\n appsWellIds,\n wellsById\n) => {\n if (!interventionUnitsById || isEmpty(interventionUnitsById)) return {};\n\n return appsInterventionUnitIds.reduce((acc, [appId, interventionUnitId]) => {\n const interventionUnit = interventionUnitsById[interventionUnitId];\n const appWellId = appsWellIds.find(appWellId => appWellId[0] === appId)?.[1];\n const well = wellsById[appWellId] || interventionUnit.well;\n\n acc[appId] = getWellObjectFromWellData(well, well?.rig, {\n ...interventionUnit,\n ...(interventionUnit.well && {\n active_well: { id: interventionUnit.well.id, ...interventionUnit.well.attributes },\n }),\n });\n\n return acc;\n }, {});\n};\n\nexport async function fetchFracFleets(ids) {\n if (!ids.length) return null;\n\n try {\n const response = await getFracFleets({\n ids,\n fields: [\n 'frac_fleet.name',\n 'frac_fleet.pads',\n 'frac_fleet.program',\n 'frac_fleet.current_pad_id',\n 'frac_fleet.pad_frac_fleets',\n 'frac_fleet.pad_frac_fleet.frac_fleet_lines',\n ],\n });\n\n return response ? dataFormatter.deserialize(response) : [];\n } catch (e) {\n console.error(e);\n return [];\n }\n}\n\nexport async function fetchInterventionUnits(ids) {\n if (!ids.length) return null;\n\n try {\n return await getInterventionUnits({\n ids,\n fields: ['intervention_unit.name', 'intervention_unit.type', 'intervention_unit.active_well'],\n });\n } catch (e) {\n console.error(e);\n return null;\n }\n}\n\nexport async function fetchFracFleetWells(appsFFIds, apps) {\n const appsById = keyBy(apps, 'id');\n const requests = appsFFIds.map(async ([appId, fracFleetId]) => {\n const options = { fields: 'all', frac_fleet_id: fracFleetId };\n\n const app = appsById[appId];\n\n if (appId === DEV_CENTER_CLI_APP_ID) options.app_key = get(app, ['app', 'app_key']);\n else options.app_id = get(app, ['app', 'id']);\n try {\n const response = await getFracFleetWells(options);\n return response ? dataFormatter.deserialize(response) : [];\n } catch (e) {\n console.error(e);\n return [];\n }\n });\n\n const responses = await Promise.all(requests);\n\n return responses.reduce((acc, currFFWells, i) => {\n acc[appsFFIds[i][0]] = currFFWells;\n return acc;\n }, {});\n}\n\nexport async function fetchPadWells(appsPadIds, apps) {\n const appsById = keyBy(apps, 'id');\n const requests = appsPadIds.map(async ([appId, padId]) => {\n const options = { fields: 'all' };\n\n const app = appsById[appId];\n\n if (appId === DEV_CENTER_CLI_APP_ID) options.app_key = get(app, ['app', 'app_key']);\n else options.app_id = get(app, ['app', 'id']);\n try {\n const response = await getPadWells(padId, options);\n return response ? dataFormatter.deserialize(response) : [];\n } catch (e) {\n console.error(e);\n return [];\n }\n });\n\n const responses = await Promise.all(requests);\n\n return responses.reduce((acc, currFFWells, i) => {\n acc[appsPadIds[i][0]] = currFFWells;\n return acc;\n }, {});\n}\n\nexport const getAppHash = app =>\n [\n app.id,\n getAppAssetSpecificTypeId(app, ASSET_TYPES.well.id),\n getAppAssetSpecificTypeId(app, ASSET_TYPES.rig.id),\n getAppAssetSpecificTypeId(app, ASSET_TYPES.frac_fleet.id),\n getAppAssetSpecificTypeId(app, ASSET_TYPES.pad.id),\n getAppAssetSpecificTypeId(app, ASSET_TYPES.intervention_unit.id),\n getAppAssetSpecificTypeId(app, 'deprecatedAssetId'),\n getAppSegment(app),\n ].join('-');\n\nexport const isAppWithSettings = app =>\n Boolean(\n getAppAssetSpecificTypeId(app, ASSET_TYPES.well.id) ||\n getAppAssetSpecificTypeId(app, ASSET_TYPES.rig.id) ||\n getAppAssetSpecificTypeId(app, ASSET_TYPES.frac_fleet.id) ||\n getAppAssetSpecificTypeId(app, ASSET_TYPES.pad.id) ||\n getAppAssetSpecificTypeId(app, ASSET_TYPES.intervention_unit.id)\n );\n\nexport const getInitialAppData = app => ({\n id: app.id,\n rig: null,\n well: null,\n fracFleet: null,\n interventionUnit: null,\n program: {\n id: null,\n name: null,\n },\n completionWellInfo: {\n fracFleet: {\n id: null,\n name: null,\n },\n pad: {\n id: null,\n name: null,\n },\n },\n wells: null,\n isLoading: true,\n appHash: getAppHash(app),\n});\n\nexport const getInitialAppsDataState = apps =>\n apps.reduce(\n (acc, app) => ({\n ...acc,\n [app.id]: getInitialAppData(app),\n }),\n {}\n );\n\nexport const isAppNeedingInterventionUnitWellRefresh = app => {\n const interventionUnitId = getAppAssetSpecificTypeId(app, ASSET_TYPES.intervention_unit.id);\n const wellId = getAppAssetSpecificTypeId(app, ASSET_TYPES.well.id);\n return interventionUnitId && !wellId;\n};\n\nexport const prepareDataForResolver = (apps, cache) => {\n const appsWellIds = [];\n const appsRigIds = [];\n const appsFracFleetIds = [];\n const appsInterventionUnitIds = [];\n const appsFracFleetToFetchWellsIds = [];\n const appsPadIds = [];\n const appIds = [];\n\n apps.forEach(app => {\n const appWellId = getAppAssetSpecificTypeId(app, ASSET_TYPES.well.id);\n const appRigId = getAppAssetSpecificTypeId(app, ASSET_TYPES.rig.id);\n const appFracFleetId = getAppAssetSpecificTypeId(app, ASSET_TYPES.frac_fleet.id);\n const appPadId = getAppAssetSpecificTypeId(app, ASSET_TYPES.pad.id);\n const appInterventionUnitId = getAppAssetSpecificTypeId(app, ASSET_TYPES.intervention_unit.id);\n\n const appId = app.id;\n appIds.push([appId]);\n\n if (appInterventionUnitId) {\n appsInterventionUnitIds.push([appId, appInterventionUnitId]);\n // NOTE: we need to fetch well for intervention unit as there is no well in intervention unit\n if (appWellId) {\n appsWellIds.push([appId, appWellId]);\n }\n } else if (appWellId) {\n appsWellIds.push([appId, appWellId]);\n } else if (appRigId) {\n appsRigIds.push([appId, appRigId]);\n } else if (appFracFleetId) {\n appsFracFleetIds.push([appId, appFracFleetId]);\n if (appPadId) {\n appsPadIds.push([appId, appPadId]);\n } else {\n appsFracFleetToFetchWellsIds.push([appId, appFracFleetId]);\n }\n }\n });\n\n const { rigsById, wellsById, fracFleetsById, interventionUnitsById } = cache.current;\n\n const uniqueWellIds = getUniqAssetIds(appsWellIds, Object.keys(wellsById));\n const uniqueRigIds = getUniqAssetIds(appsRigIds, Object.keys(rigsById));\n const uniqueFFIds = getUniqAssetIds(appsFracFleetIds, Object.keys(fracFleetsById));\n const uniqueInterventionUnitIds = getUniqAssetIds(\n appsInterventionUnitIds,\n Object.keys(interventionUnitsById)\n );\n\n return {\n appsWellIds,\n appsRigIds,\n appsFracFleetIds,\n appsPadIds,\n appIds,\n appsFracFleetToFetchWellsIds,\n appsInterventionUnitIds,\n\n uniqueWellIds,\n uniqueRigIds,\n uniqueFFIds,\n uniqueInterventionUnitIds,\n };\n};\n"],"names":["dataFormatter","Jsona","getAppAssetSpecificTypeId","app","typeId","get","getUniqAssetIds","assetIds","cachedAssetIds","uniq","map","_ref","_ref2","_slicedToArray","filter","assetId","Number","isFinite","includes","String","fetchWells","_x","_fetchWells","apply","this","arguments","_asyncToGenerator","_regeneratorRuntime","mark","ids","wrap","_context","prev","next","length","abrupt","getWells","fields","include_arhivation_data","sent","t0","console","error","stop","_callee","fetchRigs","_x2","_fetchRigs","_context2","getRigs","_callee2","fetchAssetEntitiesByAssetIds","_x3","_fetchAssetEntitiesByAssetIds","_context3","getResolvedAssets","assets","_callee3","getWellObjectFromWellData","well","rig","interventionUnit","_objectSpread","attributes","id","companyId","name","asset_id","program","active_well","completionWellInfo","pad","fracFleet","getAppsDataByWells","appsWellIds","wellsById","isEmpty","reduce","acc","_ref3","_ref4","appId","wellId","getAppsDataByRigs","appsRigIds","rigsById","_ref5","_ref6","rigId","getAppsDataByFFs","appsFracFleetIds","ffsById","ffWellsData","_ref7","_fracFleet$program","_fracFleet$program2","_ref8","ffId","wells","getAppsDataByPads","appsPadIds","padWellsData","_ref9","_ref10","getAppsDataByInterventionUnits","appsInterventionUnitIds","interventionUnitsById","_ref11","_appsWellIds$find","_ref12","interventionUnitId","appWellId","find","fetchFracFleets","_x4","_fetchFracFleets","response","_context4","getFracFleets","deserialize","_callee4","fetchInterventionUnits","_x5","_fetchInterventionUnits","_context5","getInterventionUnits","_callee5","fetchFracFleetWells","_x6","_x7","_fetchFracFleetWells","_callee7","appsFFIds","apps","appsById","requests","responses","_context7","keyBy","_ref14","_callee6","_ref13","_ref15","fracFleetId","options","_context6","frac_fleet_id","DEV_CENTER_CLI_APP_ID","app_key","app_id","getFracFleetWells","_x10","Promise","all","currFFWells","i","fetchPadWells","_x8","_x9","_fetchPadWells","_callee9","_context9","_ref17","_callee8","_ref16","_ref18","padId","_context8","getPadWells","_x11","getAppHash","ASSET_TYPES","frac_fleet","intervention_unit","getAppSegment","join","isAppWithSettings","Boolean","getInitialAppData","isLoading","appHash","getInitialAppsDataState","isAppNeedingInterventionUnitWellRefresh","prepareDataForResolver","cache","appsFracFleetToFetchWellsIds","appIds","forEach","appRigId","appFracFleetId","appPadId","appInterventionUnitId","push","current","fracFleetsById","uniqueWellIds","Object","keys","uniqueRigIds","uniqueFFIds","uniqueInterventionUnitIds"],"mappings":"4uDAgBA,IAAMA,EAAgB,IAAIC,EAEbC,EAA4B,SAACC,EAAKC,GAAM,OAAMC,EAAIF,EAAK,CAAC,WAAYC,GAAQ,EAE5EE,EAAkB,SAACC,EAAUC,GAAc,OACtDC,EACEF,EACGG,KAAI,SAAAC,GAAA,IAAAC,EAAAC,EAAAF,EAAA,GAAiB,OAATC,EAAA,GAASA,EAAA,EAAa,IAClCE,QAAO,SAAAC,GAAO,OAAIC,OAAOC,SAASF,KAAaP,EAAeU,SAASC,OAAOJ,GAAS,IAC3F,EAEH,SAAsBK,EAAUC,GAAA,OAAAC,EAAAC,MAAAC,KAAAC,UAAA,CA+B/B,SAAAH,IAAA,OAAAA,EAAAI,EAAAC,EAAAC,MA/BM,WAA0BC,GAAG,OAAAF,EAAAG,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,GAC7BJ,EAAIK,OAAM,CAAAH,EAAAE,KAAA,EAAA,KAAA,CAAA,OAAAF,EAAAI,OAAA,SAAS,MAAI,KAAA,EAAA,OAAAJ,EAAAC,KAAA,EAAAD,EAAAE,KAAA,EAIbG,EAAS,CACpBP,IAAAA,EACAQ,OAAQ,CACN,YACA,gBACA,eACA,gBACA,sBACA,eACA,WACA,kBACA,UACA,WACA,WACA,eACA,aACA,cACA,mBACA,gBAEFC,yBAAyB,IACzB,KAAA,EAAA,OAAAP,EAAAI,OAAA,SAAAJ,EAAAQ,MAAA,KAAA,EAEe,OAFfR,EAAAC,KAAA,EAAAD,EAAAS,GAAAT,EAAA,MAAA,GAEFU,QAAQC,MAAQX,EAAAS,IAACT,EAAAI,OAAA,SACV,MAAI,KAAA,GAAA,IAAA,MAAA,OAAAJ,EAAAY,OAAA,GAAAC,EAAA,KAAA,CAAA,CAAA,EAAA,IAEd,MAAArB,MAAAC,KAAAC,UAAA,CAED,SAAsBoB,EAASC,GAAA,OAAAC,EAAAxB,MAAAC,KAAAC,UAAA,CA2B9B,SAAAsB,IAAA,OAAAA,EAAArB,EAAAC,EAAAC,MA3BM,WAAyBC,GAAG,OAAAF,EAAAG,MAAA,SAAAkB,GAAA,OAAA,OAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,KAAA,EAAA,GAC5BJ,EAAIK,OAAM,CAAAc,EAAAf,KAAA,EAAA,KAAA,CAAA,OAAAe,EAAAb,OAAA,SAAS,MAAI,KAAA,EAAA,OAAAa,EAAAhB,KAAA,EAAAgB,EAAAf,KAAA,EAGbgB,EAAQ,CACnBpB,IAAAA,EACAQ,OAAQ,CACN,WACA,eACA,eACA,kBACA,uBACA,YACA,gBACA,eACA,cACA,gBACA,sBACA,UACA,kBACA,kBAEF,KAAA,EAAA,OAAAW,EAAAb,OAAA,SAAAa,EAAAT,MAAA,KAAA,EAEe,OAFfS,EAAAhB,KAAA,EAAAgB,EAAAR,GAAAQ,EAAA,MAAA,GAEFP,QAAQC,MAAQM,EAAAR,IAACQ,EAAAb,OAAA,SACV,MAAI,KAAA,GAAA,IAAA,MAAA,OAAAa,EAAAL,OAAA,GAAAO,EAAA,KAAA,CAAA,CAAA,EAAA,IAEd,MAAA3B,MAAAC,KAAAC,UAAA,CAED,SAAsB0B,EAA4BC,GAAA,OAAAC,EAAA9B,MAAAC,KAAAC,UAAA,CAWjD,SAAA4B,IAAA,OAAAA,EAAA3B,EAAAC,EAAAC,MAXM,WAA4CrB,GAAQ,OAAAoB,EAAAG,MAAA,SAAAwB,GAAA,OAAA,OAAAA,EAAAtB,KAAAsB,EAAArB,MAAA,KAAA,EAAA,GACpD1B,EAAS2B,OAAM,CAAAoB,EAAArB,KAAA,EAAA,KAAA,CAAA,OAAAqB,EAAAnB,OAAA,SAAS,MAAI,KAAA,EAAA,OAAAmB,EAAAtB,KAAA,EAAAsB,EAAArB,KAAA,EAGlBsB,EAAkB,CAC7BC,OAAQjD,IACR,KAAA,EAAA,OAAA+C,EAAAnB,OAAA,SAAAmB,EAAAf,MAAA,KAAA,EAEe,OAFfe,EAAAtB,KAAA,EAAAsB,EAAAd,GAAAc,EAAA,MAAA,GAEFb,QAAQC,MAAQY,EAAAd,IAACc,EAAAnB,OAAA,SACV,MAAI,KAAA,GAAA,IAAA,MAAA,OAAAmB,EAAAX,OAAA,GAAAc,EAAA,KAAA,CAAA,CAAA,EAAA,IAEd,MAAAlC,MAAAC,KAAAC,UAAA,CAED,IAAMiC,EAA4B,SAACC,EAAMC,EAAKC,GAC5C,OAAAC,EAAAA,EAAA,CACEH,KAAMA,GACDA,EAAAA,EAAAA,CAAAA,EAAAA,EAAKI,YAAU,GAAA,CAClBC,GAAIL,EAAKK,GAETC,UAAW5D,EAAIsD,EAAM,mCAEvBC,IAAK,CACHM,KAAM7D,EAAIuD,EAAK,mBACfI,GAAI3D,EAAIuD,EAAK,MACbO,SAAU9D,EAAIuD,EAAK,wBAErBQ,QAAS,CACPJ,GAAI3D,EAAIuD,EAAK,eAAiB,KAC9BM,KAAM7D,EAAIuD,EAAK,4BAA8B,OAE3CC,GAAoB,CACtBA,iBAAkB,CAChBG,IAAKH,EAAiBG,GACtBE,KAAML,EAAiBK,KACvBG,YAAaR,EAAiBQ,eAEjC,CAAA,EAAA,CAEDC,mBAAoB,CAClBC,IAAK,CACHP,GAAI3D,EAAIsD,EAAM,WAAa,KAC3BO,KAAM7D,EAAIsD,EAAM,wBAA0B,MAE5Ca,UAAW,CACTR,GAAI3D,EAAIsD,EAAM,iBAAmB,KACjCO,KAAM7D,EAAIsD,EAAM,8BAAgC,QAIxD,EAEac,EAAqB,SAACC,EAAaC,GAC9C,OAAKA,GAAaC,EAAQD,GAAmB,CAAA,EAEtCD,EAAYG,QAAO,SAACC,EAAyBC,GAAA,IAAAC,EAAAnE,EAAAkE,EAAA,GAAnBE,EAAKD,EAAA,GAAEE,EAAMF,EAAA,GACtCrB,EAAOgB,EAAUO,GACvB,OAAKvB,GAELmB,EAAIG,GAASvB,EAA0BC,EAAMA,EAAKC,KAE3CkB,GAJWA,CAKnB,GAAE,CAAE,EACP,EAEaK,EAAoB,SAACC,EAAYC,GAC5C,OAAKA,GAAYT,EAAQS,GAAkB,CAAA,EAEpCD,EAAWP,QAAO,SAACC,EAAwBQ,GAAA,IAAAC,EAAA1E,EAAAyE,EAAA,GAAlBL,EAAKM,EAAA,GAAEC,EAAKD,EAAA,GACpC3B,EAAMyB,EAASG,GAGrB,OAFAV,EAAIG,GAASvB,EAA0BE,eAAAA,EAAKD,KAAMC,GAE3CkB,CACR,GAAE,CAAE,EACP,EAEaW,EAAmB,SAACC,EAAkBC,EAASC,GAC1D,OAAKD,GAAYC,EAEVF,EAAiBb,QAAO,SAACC,EAAuBe,GAAA,IAAAC,EAAAC,EAAAC,EAAAnF,EAAAgF,EAAA,GAAjBZ,EAAKe,EAAA,GAAEC,EAAID,EAAA,GACzCxB,EAAYmB,aAAAA,EAAAA,EAAUM,GACtBC,EAAQN,aAAAA,EAAAA,EAAcX,GAW5B,OATAH,EAAIG,GAAS,CACXT,UAAAA,EACA0B,MAAAA,EACA9B,QAAS,CACPJ,IAAIQ,SAAkB,QAATsB,EAATtB,EAAWJ,eAAO,IAAA0B,OAAT,EAATA,EAAoB9B,KAAM,KAC9BE,MAAMM,SAAkB,QAATuB,EAATvB,EAAWJ,eAAO,IAAA2B,OAAT,EAATA,EAAoB7B,OAAQ,OAI/BY,CACR,GAAE,CAAE,GAhBgC,CAAA,CAiBvC,EAEaqB,EAAoB,SAACC,EAAYC,GAC5C,OAAKD,GAAeC,EAEbD,EAAWvB,QAAO,SAACC,EAAyBwB,GAAA,IAAAC,EAAA1F,EAAAyF,EAAA,GAAnBrB,EAAKsB,EAAA,GAAQA,EAAA,GAC3C,IAAML,EAAQG,aAAAA,EAAAA,EAAepB,GAM7B,OAJAH,EAAIG,GAAS,CACXiB,MAAAA,GAGKpB,CACR,GAAE,CAAE,GAVoC,CAAA,CAW3C,EAEa0B,EAAiC,SAC5CC,EACAC,EACAhC,EACAC,GAEA,OAAK+B,GAAyB9B,EAAQ8B,GAA+B,CAAA,EAE9DD,EAAwB5B,QAAO,SAACC,EAAqC6B,GAAA,IAAAC,EAAAC,EAAAhG,EAAA8F,EAAA,GAA/B1B,EAAK4B,EAAA,GAAEC,EAAkBD,EAAA,GAC9DhD,EAAmB6C,EAAsBI,GACzCC,EAAiE,QAArDrC,EAAAA,EAAYsC,MAAK,SAAAD,GAAS,OAAIA,EAAU,KAAO9B,YAAM,IAAA2B,OAAA,EAArDA,EAAwD,GACpEjD,EAAOgB,EAAUoC,IAAclD,EAAiBF,KAStD,OAPAmB,EAAIG,GAASvB,EAA0BC,EAAMA,aAAAA,EAAAA,EAAMC,IAAGE,EAAAA,EAAA,CAAA,EACjDD,GACCA,EAAiBF,MAAQ,CAC3BU,YAAWP,EAAA,CAAIE,GAAIH,EAAiBF,KAAKK,IAAOH,EAAiBF,KAAKI,eAInEe,CACR,GAAE,CAAE,EACP,EAEA,SAAsBmC,EAAeC,GAAA,OAAAC,EAAA5F,MAAAC,KAAAC,UAAA,CAqBpC,SAAA0F,IAAA,OAAAA,EAAAzF,EAAAC,EAAAC,MArBM,WAA+BC,GAAG,IAAAuF,EAAA,OAAAzF,EAAAG,MAAA,SAAAuF,GAAA,OAAA,OAAAA,EAAArF,KAAAqF,EAAApF,MAAA,KAAA,EAAA,GAClCJ,EAAIK,OAAM,CAAAmF,EAAApF,KAAA,EAAA,KAAA,CAAA,OAAAoF,EAAAlF,OAAA,SAAS,MAAI,KAAA,EAAA,OAAAkF,EAAArF,KAAA,EAAAqF,EAAApF,KAAA,EAGHqF,EAAc,CACnCzF,IAAAA,EACAQ,OAAQ,CACN,kBACA,kBACA,qBACA,4BACA,6BACA,gDAEF,KAAA,EAVY,OAAR+E,EAAQC,EAAA9E,KAYP6E,EAAAA,OAAAA,SAAAA,EAAWpH,EAAcuH,YAAYH,GAAY,IAAE,KAAA,EAEzC,OAFyCC,EAAArF,KAAA,EAAAqF,EAAA7E,GAAA6E,EAAA,MAAA,GAE1D5E,QAAQC,MAAQ2E,EAAA7E,IAAC6E,EAAAlF,OAAA,SACV,IAAE,KAAA,GAAA,IAAA,MAAA,OAAAkF,EAAA1E,OAAA,GAAA6E,EAAA,KAAA,CAAA,CAAA,EAAA,IAEZ,MAAAjG,MAAAC,KAAAC,UAAA,CAED,SAAsBgG,EAAsBC,GAAA,OAAAC,EAAApG,MAAAC,KAAAC,UAAA,CAY3C,SAAAkG,IAAA,OAAAA,EAAAjG,EAAAC,EAAAC,MAZM,WAAsCC,GAAG,OAAAF,EAAAG,MAAA,SAAA8F,GAAA,OAAA,OAAAA,EAAA5F,KAAA4F,EAAA3F,MAAA,KAAA,EAAA,GACzCJ,EAAIK,OAAM,CAAA0F,EAAA3F,KAAA,EAAA,KAAA,CAAA,OAAA2F,EAAAzF,OAAA,SAAS,MAAI,KAAA,EAAA,OAAAyF,EAAA5F,KAAA,EAAA4F,EAAA3F,KAAA,EAGb4F,EAAqB,CAChChG,IAAAA,EACAQ,OAAQ,CAAC,yBAA0B,yBAA0B,mCAC7D,KAAA,EAAA,OAAAuF,EAAAzF,OAAA,SAAAyF,EAAArF,MAAA,KAAA,EAEe,OAFfqF,EAAA5F,KAAA,EAAA4F,EAAApF,GAAAoF,EAAA,MAAA,GAEFnF,QAAQC,MAAQkF,EAAApF,IAACoF,EAAAzF,OAAA,SACV,MAAI,KAAA,GAAA,IAAA,MAAA,OAAAyF,EAAAjF,OAAA,GAAAmF,EAAA,KAAA,CAAA,CAAA,EAAA,IAEd,MAAAvG,MAAAC,KAAAC,UAAA,CAED,SAAsBsG,EAAmBC,EAAAC,GAAA,OAAAC,EAAA3G,MAAAC,KAAAC,UAAA,CAwBxC,SAAAyG,IAAA,OAAAA,EAxBMxG,EAAAC,EAAAC,MAAA,SAAAuG,EAAmCC,EAAWC,GAAI,IAAAC,EAAAC,EAAAC,EAAA,OAAA7G,EAAAG,MAAA,SAAA2G,GAAA,OAAA,OAAAA,EAAAzG,KAAAyG,EAAAxG,MAAA,KAAA,EAgBrD,OAfIqG,EAAWI,EAAML,EAAM,MACvBE,EAAWH,EAAU1H,IAAG,WAAA,IAACiI,EAAAjH,EAAAC,EAAAC,MAAA,SAAAgH,EAAAC,GAAA,IAAAC,EAAA7D,EAAA8D,EAAAC,EAAA7I,EAAAiH,EAAA,OAAAzF,EAAAG,MAAA,SAAAmH,GAAA,OAAA,OAAAA,EAAAjH,KAAAiH,EAAAhH,MAAA,KAAA,EAMiB,OANjB6G,EAAQ7D,EAAAA,EAAAA,GAAAA,OAAO8D,EAAWD,EAAA,GACjDE,EAAU,CAAE3G,OAAQ,MAAO6G,cAAeH,GAE1C5I,EAAMmI,EAASrD,GAEjBA,IAAUkE,EAAuBH,EAAQI,QAAU/I,EAAIF,EAAK,CAAC,MAAO,YACnE6I,EAAQK,OAAShJ,EAAIF,EAAK,CAAC,MAAO,OAAO8I,EAAAjH,KAAA,EAAAiH,EAAAhH,KAAA,EAErBqH,EAAkBN,GAAQ,KAAA,EAAnC,OAAR5B,EAAQ6B,EAAA1G,KACP6E,EAAAA,OAAAA,SAAAA,EAAWpH,EAAcuH,YAAYH,GAAY,IAAE,KAAA,GAEzC,OAFyC6B,EAAAjH,KAAA,GAAAiH,EAAAzG,GAAAyG,EAAA,MAAA,GAE1DxG,QAAQC,MAAQuG,EAAAzG,IAACyG,EAAA9G,OAAA,SACV,IAAE,KAAA,GAAA,IAAA,MAAA,OAAA8G,EAAAtG,OAAA,GAAAiG,EAAA,KAAA,CAAA,CAAA,EAAA,KAEZ,KAAA,OAAA,SAAAW,GAAA,OAAAZ,EAAApH,MAAAC,KAAAC,UAAA,CAAC,CAd4B,IAc5BgH,EAAAxG,KAAA,EAEsBuH,QAAQC,IAAIlB,GAAS,KAAA,EAA9B,OAATC,EAASC,EAAAlG,KAERiG,EAAAA,OAAAA,SAAAA,EAAU3D,QAAO,SAACC,EAAK4E,EAAaC,GAEzC,OADA7E,EAAIsD,EAAUuB,GAAG,IAAMD,EAChB5E,IACN,CAAA,IAAG,KAAA,EAAA,IAAA,MAAA,OAAA2D,EAAA9F,OAAA,GAAAwF,EACP,KAAAD,EAAA3G,MAAAC,KAAAC,UAAA,CAED,SAAsBmI,EAAaC,EAAAC,GAAA,OAAAC,EAAAxI,MAAAC,KAAAC,UAAA,CAwBlC,SAAAsI,IAAA,OAAAA,EAxBMrI,EAAAC,EAAAC,MAAA,SAAAoI,EAA6B5D,EAAYiC,GAAI,IAAAC,EAAAC,EAAAC,EAAA,OAAA7G,EAAAG,MAAA,SAAAmI,GAAA,OAAA,OAAAA,EAAAjI,KAAAiI,EAAAhI,MAAA,KAAA,EAgBhD,OAfIqG,EAAWI,EAAML,EAAM,MACvBE,EAAWnC,EAAW1F,IAAG,WAAA,IAACwJ,EAAAxI,EAAAC,EAAAC,MAAA,SAAAuI,EAAAC,GAAA,IAAAC,EAAApF,EAAAqF,EAAAtB,EAAA7I,EAAAiH,EAAA,OAAAzF,EAAAG,MAAA,SAAAyI,GAAA,OAAA,OAAAA,EAAAvI,KAAAuI,EAAAtI,MAAA,KAAA,EAMgB,OANhBoI,EAAQpF,EAAAA,EAAAA,GAAAA,OAAOqF,EAAKD,EAAA,GAC5CrB,EAAU,CAAE3G,OAAQ,OAEpBlC,EAAMmI,EAASrD,GAEjBA,IAAUkE,EAAuBH,EAAQI,QAAU/I,EAAIF,EAAK,CAAC,MAAO,YACnE6I,EAAQK,OAAShJ,EAAIF,EAAK,CAAC,MAAO,OAAOoK,EAAAvI,KAAA,EAAAuI,EAAAtI,KAAA,EAErBuI,EAAYF,EAAOtB,GAAQ,KAAA,EAApC,OAAR5B,EAAQmD,EAAAhI,KACP6E,EAAAA,OAAAA,SAAAA,EAAWpH,EAAcuH,YAAYH,GAAY,IAAE,KAAA,GAEzC,OAFyCmD,EAAAvI,KAAA,GAAAuI,EAAA/H,GAAA+H,EAAA,MAAA,GAE1D9H,QAAQC,MAAQ6H,EAAA/H,IAAC+H,EAAApI,OAAA,SACV,IAAE,KAAA,GAAA,IAAA,MAAA,OAAAoI,EAAA5H,OAAA,GAAAwH,EAAA,KAAA,CAAA,CAAA,EAAA,KAEZ,KAAA,OAAA,SAAAM,GAAA,OAAAP,EAAA3I,MAAAC,KAAAC,UAAA,CAAC,CAd6B,IAc7BwI,EAAAhI,KAAA,EAEsBuH,QAAQC,IAAIlB,GAAS,KAAA,EAA9B,OAATC,EAASyB,EAAA1H,KAERiG,EAAAA,OAAAA,SAAAA,EAAU3D,QAAO,SAACC,EAAK4E,EAAaC,GAEzC,OADA7E,EAAIsB,EAAWuD,GAAG,IAAMD,EACjB5E,IACN,CAAA,IAAG,KAAA,EAAA,IAAA,MAAA,OAAAmF,EAAAtH,OAAA,GAAAqH,EACP,KAAAD,EAAAxI,MAAAC,KAAAC,UAAA,KAEYiJ,EAAa,SAAAvK,GAAG,MAC3B,CACEA,EAAI6D,GACJ9D,EAA0BC,EAAKwK,EAAYhH,KAAKK,IAChD9D,EAA0BC,EAAKwK,EAAY/G,IAAII,IAC/C9D,EAA0BC,EAAKwK,EAAYC,WAAW5G,IACtD9D,EAA0BC,EAAKwK,EAAYpG,IAAIP,IAC/C9D,EAA0BC,EAAKwK,EAAYE,kBAAkB7G,IAC7D9D,EAA0BC,EAAK,qBAC/B2K,EAAc3K,IACd4K,KAAK,IAAI,EAEAC,EAAoB,SAAA7K,GAAG,OAClC8K,QACE/K,EAA0BC,EAAKwK,EAAYhH,KAAKK,KAC9C9D,EAA0BC,EAAKwK,EAAY/G,IAAII,KAC/C9D,EAA0BC,EAAKwK,EAAYC,WAAW5G,KACtD9D,EAA0BC,EAAKwK,EAAYpG,IAAIP,KAC/C9D,EAA0BC,EAAKwK,EAAYE,kBAAkB7G,IAChE,EAEUkH,EAAoB,SAAA/K,GAAG,MAAK,CACvC6D,GAAI7D,EAAI6D,GACRJ,IAAK,KACLD,KAAM,KACNa,UAAW,KACXX,iBAAkB,KAClBO,QAAS,CACPJ,GAAI,KACJE,KAAM,MAERI,mBAAoB,CAClBE,UAAW,CACTR,GAAI,KACJE,KAAM,MAERK,IAAK,CACHP,GAAI,KACJE,KAAM,OAGVgC,MAAO,KACPiF,WAAW,EACXC,QAASV,EAAWvK,GACrB,EAEYkL,EAA0B,SAAAhD,GAAI,OACzCA,EAAKxD,QACH,SAACC,EAAK3E,GAAG,OACJ2E,EAAAA,EAAAA,CAAAA,EAAAA,WACF3E,EAAI6D,GAAKkH,EAAkB/K,IAC5B,GACF,CAAE,EACH,EAEUmL,EAA0C,SAAAnL,GACrD,IAAM2G,EAAqB5G,EAA0BC,EAAKwK,EAAYE,kBAAkB7G,IAClFkB,EAAShF,EAA0BC,EAAKwK,EAAYhH,KAAKK,IAC/D,OAAO8C,IAAuB5B,CAChC,EAEaqG,EAAyB,SAAClD,EAAMmD,GAC3C,IAAM9G,EAAc,GACdU,EAAa,GACbM,EAAmB,GACnBe,EAA0B,GAC1BgF,EAA+B,GAC/BrF,EAAa,GACbsF,EAAS,GAEfrD,EAAKsD,SAAQ,SAAAxL,GACX,IAAM4G,EAAY7G,EAA0BC,EAAKwK,EAAYhH,KAAKK,IAC5D4H,EAAW1L,EAA0BC,EAAKwK,EAAY/G,IAAII,IAC1D6H,EAAiB3L,EAA0BC,EAAKwK,EAAYC,WAAW5G,IACvE8H,EAAW5L,EAA0BC,EAAKwK,EAAYpG,IAAIP,IAC1D+H,EAAwB7L,EAA0BC,EAAKwK,EAAYE,kBAAkB7G,IAErFiB,EAAQ9E,EAAI6D,GAClB0H,EAAOM,KAAK,CAAC/G,IAET8G,GACFtF,EAAwBuF,KAAK,CAAC/G,EAAO8G,IAEjChF,GACFrC,EAAYsH,KAAK,CAAC/G,EAAO8B,KAElBA,EACTrC,EAAYsH,KAAK,CAAC/G,EAAO8B,IAChB6E,EACTxG,EAAW4G,KAAK,CAAC/G,EAAO2G,IACfC,IACTnG,EAAiBsG,KAAK,CAAC/G,EAAO4G,IAC1BC,EACF1F,EAAW4F,KAAK,CAAC/G,EAAO6G,IAExBL,EAA6BO,KAAK,CAAC/G,EAAO4G,IAGhD,IAEA,IAAuEL,EAAAA,EAAMS,QAArE5G,IAAAA,SAAUV,IAAAA,UAAWuH,IAAAA,eAAgBxF,IAAAA,sBAEvCyF,EAAgB7L,EAAgBoE,EAAa0H,OAAOC,KAAK1H,IACzD2H,EAAehM,EAAgB8E,EAAYgH,OAAOC,KAAKhH,IACvDkH,EAAcjM,EAAgBoF,EAAkB0G,OAAOC,KAAKH,IAC5DM,EAA4BlM,EAChCmG,EACA2F,OAAOC,KAAK3F,IAGd,MAAO,CACLhC,YAAAA,EACAU,WAAAA,EACAM,iBAAAA,EACAU,WAAAA,EACAsF,OAAAA,EACAD,6BAAAA,EACAhF,wBAAAA,EAEA0F,cAAAA,EACAG,aAAAA,EACAC,YAAAA,EACAC,0BAAAA,EAEJ"}
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../../src/components/DevCenter/AppsDataProvider/effects/utils.js"],"sourcesContent":["import Jsona from 'jsona';\nimport { get, isEmpty, keyBy, uniq } from 'lodash';\n\nimport {\n getFracFleets,\n getFracFleetWells,\n getInterventionUnits,\n getPadWells,\n getResolvedAssets,\n getRigs,\n getWells,\n} from '~/clients/jsonApi';\nimport { DEV_CENTER_CLI_APP_ID } from '~constants';\nimport { ASSET_TYPES } from '~/constants/assetTypes';\nimport { getAppSegment } from '~/utils/devcenter';\n\nconst dataFormatter = new Jsona();\n\nexport const getAppAssetSpecificTypeId = (app, typeId) => +get(app, ['settings', typeId]);\n\nexport const getUniqAssetIds = (assetIds, cachedAssetIds) =>\n uniq(\n assetIds\n .map(([_appId, assetId]) => assetId)\n .filter(assetId => Number.isFinite(assetId) && !cachedAssetIds.includes(String(assetId)))\n );\n\nexport async function fetchWells(ids) {\n if (!ids.length) return null;\n\n try {\n // eslint-disable-next-line no-return-await\n return await getWells({\n ids,\n fields: [\n 'well.name',\n 'well.settings',\n 'well.custom_properties',\n 'well.company',\n 'well.asset_id',\n 'well.last_active_at',\n 'well.program',\n 'well.pad',\n 'well.frac_fleet',\n 'well.id',\n 'well.rig',\n 'rig.name',\n 'rig.asset_id',\n 'company.id',\n 'well.status',\n 'well.archivation',\n 'well.lon_lat',\n ],\n include_arhivation_data: true,\n });\n } catch (e) {\n console.error(e);\n return null;\n }\n}\n\nexport async function fetchRigs(ids) {\n if (!ids.length) return null;\n\n try {\n return await getRigs({\n ids,\n fields: [\n 'rig.name',\n 'rig.settings',\n 'rig.asset_id',\n 'rig.active_well',\n 'rig.last_active_well',\n 'well.name',\n 'well.settings',\n 'well.custom_properties',\n 'well.company',\n 'rig.program',\n 'well.asset_id',\n 'well.last_active_at',\n 'well.id',\n 'well.company.id',\n 'well.lon_lat',\n ],\n });\n } catch (e) {\n console.error(e);\n return null;\n }\n}\n\nexport async function fetchAssetEntitiesByAssetIds(assetIds) {\n if (!assetIds.length) return null;\n\n try {\n return await getResolvedAssets({\n assets: assetIds,\n });\n } catch (e) {\n console.error(e);\n return null;\n }\n}\n\nconst getWellObjectFromWellData = (well, rig, interventionUnit) => {\n return {\n well: well && {\n ...well.attributes,\n id: well.id,\n // NOTE: API doesn't return active child company id\n companyId: get(well, 'relationships.company.data.id'),\n },\n rig: {\n name: get(rig, 'attributes.name'),\n id: get(rig, 'id'),\n asset_id: get(rig, 'attributes.asset_id'),\n },\n program: {\n id: get(rig, 'program.id') || null,\n name: get(rig, 'program.attributes.name') || null,\n },\n ...(interventionUnit && {\n interventionUnit: {\n id: +interventionUnit.id,\n name: interventionUnit.name,\n active_well: interventionUnit.active_well,\n },\n }),\n // NOTE: Support ff/pad in mixpanel for Asset Dashboards\n completionWellInfo: {\n pad: {\n id: get(well, 'pad.id') || null,\n name: get(well, 'pad.attributes.name') || null,\n },\n fracFleet: {\n id: get(well, 'fracFleet.id') || null,\n name: get(well, 'fracFleet.attributes.name') || null,\n },\n },\n };\n};\n\nexport const getAppsDataByWells = (appsWellIds, wellsById) => {\n if (!wellsById || isEmpty(wellsById)) return {};\n\n return appsWellIds.reduce((acc, [appId, wellId]) => {\n const well = wellsById[wellId];\n if (!well) return acc;\n\n acc[appId] = getWellObjectFromWellData(well, well.rig);\n\n return acc;\n }, {});\n};\n\nexport const getAppsDataByRigs = (appsRigIds, rigsById) => {\n if (!rigsById || isEmpty(rigsById)) return {};\n\n return appsRigIds.reduce((acc, [appId, rigId]) => {\n const rig = rigsById[rigId];\n acc[appId] = getWellObjectFromWellData(rig?.well, rig);\n\n return acc;\n }, {});\n};\n\nexport const getAppsDataByFFs = (appsFracFleetIds, ffsById, ffWellsData) => {\n if (!ffsById && !ffWellsData) return {};\n\n return appsFracFleetIds.reduce((acc, [appId, ffId]) => {\n const fracFleet = ffsById?.[ffId];\n const wells = ffWellsData?.[appId];\n\n acc[appId] = {\n fracFleet,\n wells,\n program: {\n id: fracFleet?.program?.id || null,\n name: fracFleet?.program?.name || null,\n },\n };\n\n return acc;\n }, {});\n};\n\nexport const getAppsDataByPads = (appsPadIds, padWellsData) => {\n if (!appsPadIds && !padWellsData) return {};\n\n return appsPadIds.reduce((acc, [appId, _padId]) => {\n const wells = padWellsData?.[appId];\n\n acc[appId] = {\n wells,\n };\n\n return acc;\n }, {});\n};\n\nexport const getAppsDataByInterventionUnits = (\n appsInterventionUnitIds,\n interventionUnitsById,\n appsWellIds,\n wellsById\n) => {\n if (!interventionUnitsById || isEmpty(interventionUnitsById)) return {};\n\n return appsInterventionUnitIds.reduce((acc, [appId, interventionUnitId]) => {\n const interventionUnit = interventionUnitsById[interventionUnitId];\n const appWellId = appsWellIds.find(appWellId => appWellId[0] === appId)?.[1];\n const well = wellsById[appWellId] || interventionUnit.well;\n\n acc[appId] = getWellObjectFromWellData(well, well?.rig, {\n ...interventionUnit,\n ...(interventionUnit.well && {\n active_well: { id: interventionUnit.well.id, ...interventionUnit.well.attributes },\n }),\n });\n\n return acc;\n }, {});\n};\n\nexport async function fetchFracFleets(ids) {\n if (!ids.length) return null;\n\n try {\n const response = await getFracFleets({\n ids,\n fields: [\n 'frac_fleet.name',\n 'frac_fleet.pads',\n 'frac_fleet.program',\n 'frac_fleet.current_pad_id',\n 'frac_fleet.pad_frac_fleets',\n 'frac_fleet.pad_frac_fleet.frac_fleet_lines',\n ],\n });\n\n return response ? dataFormatter.deserialize(response) : [];\n } catch (e) {\n console.error(e);\n return [];\n }\n}\n\nexport async function fetchInterventionUnits(ids) {\n if (!ids.length) return null;\n\n try {\n return await getInterventionUnits({\n ids,\n fields: ['intervention_unit.name', 'intervention_unit.type', 'intervention_unit.active_well'],\n });\n } catch (e) {\n console.error(e);\n return null;\n }\n}\n\nexport async function fetchFracFleetWells(appsFFIds, apps) {\n const appsById = keyBy(apps, 'id');\n const requests = appsFFIds.map(async ([appId, fracFleetId]) => {\n const options = { fields: 'all', frac_fleet_id: fracFleetId };\n\n const app = appsById[appId];\n\n if (appId === DEV_CENTER_CLI_APP_ID) options.app_key = get(app, ['app', 'app_key']);\n else options.app_id = get(app, ['app', 'id']);\n try {\n const response = await getFracFleetWells(options);\n return response ? dataFormatter.deserialize(response) : [];\n } catch (e) {\n console.error(e);\n return [];\n }\n });\n\n const responses = await Promise.all(requests);\n\n return responses.reduce((acc, currFFWells, i) => {\n acc[appsFFIds[i][0]] = currFFWells;\n return acc;\n }, {});\n}\n\nexport async function fetchPadWells(appsPadIds, apps) {\n const appsById = keyBy(apps, 'id');\n const requests = appsPadIds.map(async ([appId, padId]) => {\n const options = { fields: 'all' };\n\n const app = appsById[appId];\n\n if (appId === DEV_CENTER_CLI_APP_ID) options.app_key = get(app, ['app', 'app_key']);\n else options.app_id = get(app, ['app', 'id']);\n try {\n const response = await getPadWells(padId, options);\n return response ? dataFormatter.deserialize(response) : [];\n } catch (e) {\n console.error(e);\n return [];\n }\n });\n\n const responses = await Promise.all(requests);\n\n return responses.reduce((acc, currFFWells, i) => {\n acc[appsPadIds[i][0]] = currFFWells;\n return acc;\n }, {});\n}\n\nexport const getAppHash = app =>\n [\n app.id,\n getAppAssetSpecificTypeId(app, ASSET_TYPES.well.id),\n getAppAssetSpecificTypeId(app, ASSET_TYPES.rig.id),\n getAppAssetSpecificTypeId(app, ASSET_TYPES.frac_fleet.id),\n getAppAssetSpecificTypeId(app, ASSET_TYPES.pad.id),\n getAppAssetSpecificTypeId(app, ASSET_TYPES.intervention_unit.id),\n getAppAssetSpecificTypeId(app, 'deprecatedAssetId'),\n getAppSegment(app),\n ].join('-');\n\nexport const isAppWithSettings = app =>\n Boolean(\n getAppAssetSpecificTypeId(app, ASSET_TYPES.well.id) ||\n getAppAssetSpecificTypeId(app, ASSET_TYPES.rig.id) ||\n getAppAssetSpecificTypeId(app, ASSET_TYPES.frac_fleet.id) ||\n getAppAssetSpecificTypeId(app, ASSET_TYPES.pad.id) ||\n getAppAssetSpecificTypeId(app, ASSET_TYPES.intervention_unit.id)\n );\n\nexport const getInitialAppData = app => ({\n id: app.id,\n rig: null,\n well: null,\n fracFleet: null,\n interventionUnit: null,\n program: {\n id: null,\n name: null,\n },\n completionWellInfo: {\n fracFleet: {\n id: null,\n name: null,\n },\n pad: {\n id: null,\n name: null,\n },\n },\n wells: null,\n isLoading: true,\n appHash: getAppHash(app),\n});\n\nexport const getInitialAppsDataState = apps =>\n apps.reduce(\n (acc, app) => ({\n ...acc,\n [app.id]: getInitialAppData(app),\n }),\n {}\n );\n\nexport const isAppNeedingInterventionUnitWellRefresh = app => {\n const interventionUnitId = getAppAssetSpecificTypeId(app, ASSET_TYPES.intervention_unit.id);\n const wellId = getAppAssetSpecificTypeId(app, ASSET_TYPES.well.id);\n return interventionUnitId && !wellId;\n};\n\nexport const prepareDataForResolver = (apps, cache) => {\n const appsWellIds = [];\n const appsRigIds = [];\n const appsFracFleetIds = [];\n const appsInterventionUnitIds = [];\n const appsFracFleetToFetchWellsIds = [];\n const appsPadIds = [];\n const appIds = [];\n\n apps.forEach(app => {\n const appWellId = getAppAssetSpecificTypeId(app, ASSET_TYPES.well.id);\n const appRigId = getAppAssetSpecificTypeId(app, ASSET_TYPES.rig.id);\n const appFracFleetId = getAppAssetSpecificTypeId(app, ASSET_TYPES.frac_fleet.id);\n const appPadId = getAppAssetSpecificTypeId(app, ASSET_TYPES.pad.id);\n const appInterventionUnitId = getAppAssetSpecificTypeId(app, ASSET_TYPES.intervention_unit.id);\n\n const appId = app.id;\n appIds.push([appId]);\n\n if (appInterventionUnitId) {\n appsInterventionUnitIds.push([appId, appInterventionUnitId]);\n // NOTE: we need to fetch well for intervention unit as there is no well in intervention unit\n if (appWellId) {\n appsWellIds.push([appId, appWellId]);\n }\n } else if (appWellId) {\n appsWellIds.push([appId, appWellId]);\n } else if (appRigId) {\n appsRigIds.push([appId, appRigId]);\n } else if (appFracFleetId) {\n appsFracFleetIds.push([appId, appFracFleetId]);\n if (appPadId) {\n appsPadIds.push([appId, appPadId]);\n } else {\n appsFracFleetToFetchWellsIds.push([appId, appFracFleetId]);\n }\n }\n });\n\n const { rigsById, wellsById, fracFleetsById, interventionUnitsById } = cache.current;\n\n const uniqueWellIds = getUniqAssetIds(appsWellIds, Object.keys(wellsById));\n const uniqueRigIds = getUniqAssetIds(appsRigIds, Object.keys(rigsById));\n const uniqueFFIds = getUniqAssetIds(appsFracFleetIds, Object.keys(fracFleetsById));\n const uniqueInterventionUnitIds = getUniqAssetIds(\n appsInterventionUnitIds,\n Object.keys(interventionUnitsById)\n );\n\n return {\n appsWellIds,\n appsRigIds,\n appsFracFleetIds,\n appsPadIds,\n appIds,\n appsFracFleetToFetchWellsIds,\n appsInterventionUnitIds,\n\n uniqueWellIds,\n uniqueRigIds,\n uniqueFFIds,\n uniqueInterventionUnitIds,\n };\n};\n"],"names":["dataFormatter","Jsona","getAppAssetSpecificTypeId","app","typeId","get","getUniqAssetIds","assetIds","cachedAssetIds","uniq","map","_ref","_ref2","_slicedToArray","filter","assetId","Number","isFinite","includes","String","fetchWells","_x","_fetchWells","apply","this","arguments","_asyncToGenerator","_regeneratorRuntime","mark","ids","wrap","_context","prev","next","length","abrupt","getWells","fields","include_arhivation_data","sent","t0","console","error","stop","_callee","fetchRigs","_x2","_fetchRigs","_context2","getRigs","_callee2","fetchAssetEntitiesByAssetIds","_x3","_fetchAssetEntitiesByAssetIds","_context3","getResolvedAssets","assets","_callee3","getWellObjectFromWellData","well","rig","interventionUnit","_objectSpread","attributes","id","companyId","name","asset_id","program","active_well","completionWellInfo","pad","fracFleet","getAppsDataByWells","appsWellIds","wellsById","isEmpty","reduce","acc","_ref3","_ref4","appId","wellId","getAppsDataByRigs","appsRigIds","rigsById","_ref5","_ref6","rigId","getAppsDataByFFs","appsFracFleetIds","ffsById","ffWellsData","_ref7","_fracFleet$program","_fracFleet$program2","_ref8","ffId","wells","getAppsDataByPads","appsPadIds","padWellsData","_ref9","_ref10","getAppsDataByInterventionUnits","appsInterventionUnitIds","interventionUnitsById","_ref11","_appsWellIds$find","_ref12","interventionUnitId","appWellId","find","fetchFracFleets","_x4","_fetchFracFleets","response","_context4","getFracFleets","deserialize","_callee4","fetchInterventionUnits","_x5","_fetchInterventionUnits","_context5","getInterventionUnits","_callee5","fetchFracFleetWells","_x6","_x7","_fetchFracFleetWells","_callee7","appsFFIds","apps","appsById","requests","responses","_context7","keyBy","_ref14","_callee6","_ref13","_ref15","fracFleetId","options","_context6","frac_fleet_id","DEV_CENTER_CLI_APP_ID","app_key","app_id","getFracFleetWells","_x10","Promise","all","currFFWells","i","fetchPadWells","_x8","_x9","_fetchPadWells","_callee9","_context9","_ref17","_callee8","_ref16","_ref18","padId","_context8","getPadWells","_x11","getAppHash","ASSET_TYPES","frac_fleet","intervention_unit","getAppSegment","join","isAppWithSettings","Boolean","getInitialAppData","isLoading","appHash","getInitialAppsDataState","isAppNeedingInterventionUnitWellRefresh","prepareDataForResolver","cache","appsFracFleetToFetchWellsIds","appIds","forEach","appRigId","appFracFleetId","appPadId","appInterventionUnitId","push","current","fracFleetsById","uniqueWellIds","Object","keys","uniqueRigIds","uniqueFFIds","uniqueInterventionUnitIds"],"mappings":"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"}
|