@corva/ui 3.77.0-5 → 3.77.0-7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/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/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/DevCenterAppContainer.js.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/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/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/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
- package/components/OffsetWellPickerV5/OffsetWellPickerV5.js.map +1 -1
- 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/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/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/PickerModalActions/PickerModalActions.js +1 -1
- package/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js.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/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/idas-resync-store/createIdasResyncController.js +1 -1
- package/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js.map +1 -1
- 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/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/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/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/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/mcp-server/server.mjs +49 -91
- package/package.json +1 -2
- 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":"index.js","sources":["../../../../../../../../src/components/Annotations/components/AnnotationsList/components/AddAnnotationForm/index.js"],"sourcesContent":["import { memo, useState, useRef } from 'react';\nimport { number, shape, string } from 'prop-types';\nimport classNames from 'classnames';\nimport { get, flowRight } from 'lodash';\nimport moment from 'moment';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Paper, Fade, Typography } from '@material-ui/core';\n\nimport { useAnnotationsDispatch } from '../../../../AnnotationsContext';\nimport { ADD_ANNOTATION } from '../../../../constants';\nimport AnnotationInput from '../AnnotationInput';\n\nimport styles from './style.css';\n\nimport Avatar from '~components/Avatar';\nimport useOutsideClick from '~effects/useOutsideClick';\nimport { showSuccessNotification, showErrorNotification } from '~/utils';\nimport { postAnnotation } from '~/clients/jsonApi';\nimport { withUniversalLocationHOC } from '~/components/DevCenter/DevCenterRouterContext';\n\nconst PAGE_NAME = 'AppAnnotationsPo';\n\nconst ANNOTATION_PLACEHOLDER = 'Type annotation here';\n\nconst muiStyles = theme => ({\n inputLabel: {\n color: theme.palette.grey[700],\n fontWeight: 200,\n width: '100%',\n },\n});\n\nconst AddAnnotationForm = ({\n appId,\n assetId,\n assetCompanyId,\n appSettings,\n currentUser = DEFAULT_ADD_ANNOTATION_FORM_CURRENT_USER,\n classes,\n location,\n dashboardType = null,\n}) => {\n const dispatch = useAnnotationsDispatch();\n\n const [inputIsOpen, setInputIsOpen] = useState(false);\n\n const containerRef = useRef(null);\n useOutsideClick(containerRef, () => {\n setInputIsOpen(false);\n });\n\n const handlePost = async (body, period, attachment) => {\n try {\n const annotation = {\n app_id: appId,\n asset_id: assetId,\n body,\n active_until: period,\n attachment: {\n file_name: attachment && attachment.attachmentName,\n s3_link: attachment && attachment.attachmentUrl,\n },\n settings: appSettings,\n };\n const options = {};\n if (dashboardType) options.dashboard_type = dashboardType;\n\n const queryTime = get(location, 'query.time');\n if (queryTime) annotation.data_timestamp = moment(queryTime).format();\n\n const newAnnotation = await postAnnotation(annotation, options);\n dispatch({ type: ADD_ANNOTATION, annotation: newAnnotation });\n } catch (e) {\n showErrorNotification('Error during annotation creation');\n console.error(e);\n return;\n }\n\n showSuccessNotification('Annotation has been added');\n setInputIsOpen(false);\n };\n\n return (\n <div className={styles.cAddAnnotationFormInput}>\n <Avatar\n displayName={`${currentUser.first_name} ${currentUser.last_name}`}\n imgSrc={currentUser.profile_photo}\n size={36}\n />\n <div\n className={classNames(styles.cAddAnnotationFormInputPaper, {\n [styles.cAddAnnotationFormInputPaperOpened]: inputIsOpen,\n [styles.cAddAnnotationFormInputPaperClosed]: !inputIsOpen,\n })}\n >\n <Fade in={!inputIsOpen} timeout={500}>\n <Paper className={styles.cAddAnnotationFormInputPaperLabel}>\n <Typography\n variant=\"body2\"\n data-testid={`${PAGE_NAME}_collapsedInput`}\n className={classes.inputLabel}\n onClick={() => setInputIsOpen(true)}\n >\n {ANNOTATION_PLACEHOLDER}\n </Typography>\n </Paper>\n </Fade>\n <Fade in={inputIsOpen} timeout={100}>\n <div className={styles.cAddAnnotationFormInputPaperAddAnnotation}>\n {inputIsOpen && (\n <AnnotationInput\n onSend={handlePost}\n assetCompanyId={assetCompanyId}\n currentUser={currentUser}\n />\n )}\n </div>\n </Fade>\n </div>\n </div>\n );\n};\n\nAddAnnotationForm.propTypes = {\n appId: number.isRequired,\n assetId: number.isRequired,\n assetCompanyId: number.isRequired,\n appSettings: shape().isRequired,\n currentUser: shape({}),\n classes: shape().isRequired,\n location: shape().isRequired,\n dashboardType: string,\n};\n\nconst DEFAULT_ADD_ANNOTATION_FORM_CURRENT_USER = {};\n\nexport default flowRight([withStyles(muiStyles), withUniversalLocationHOC])(\n memo(AddAnnotationForm)\n);\n"],"names":["AddAnnotationForm","_ref","_classNames","appId","assetId","assetCompanyId","appSettings","_ref$currentUser","currentUser","DEFAULT_ADD_ANNOTATION_FORM_CURRENT_USER","classes","location","_ref$dashboardType","dashboardType","dispatch","useAnnotationsDispatch","useState","_useState2","_slicedToArray","_useState","inputIsOpen","setInputIsOpen","containerRef","useRef","useOutsideClick","_ref2","handlePost","_asyncToGenerator","_regeneratorRuntime","mark","body","period","attachment","annotation","options","queryTime","newAnnotation","wrap","_context","prev","next","app_id","asset_id","active_until","file_name","attachmentName","s3_link","attachmentUrl","settings","dashboard_type","get","data_timestamp","moment","format","postAnnotation","sent","type","ADD_ANNOTATION","t0","showErrorNotification","console","error","abrupt","showSuccessNotification","stop","_callee","_x","_x2","_x3","apply","this","arguments","_jsxs","className","styles","cAddAnnotationFormInput","children","_jsx","Avatar","displayName","concat","first_name","last_name","imgSrc","profile_photo","size","jsxs","classNames","cAddAnnotationFormInputPaper","cAddAnnotationFormInputPaperOpened","cAddAnnotationFormInputPaperClosed","Fade","in","timeout","Paper","cAddAnnotationFormInputPaperLabel","Typography","variant","inputLabel","onClick","jsx","cAddAnnotationFormInputPaperAddAnnotation","AnnotationInput","onSend","propTypes","number","isRequired","shape","string","AddAnnotationForm$1","flowRight","withStyles","theme","color","palette","grey","fontWeight","width","withUniversalLocationHOC","memo"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../../../src/components/Annotations/components/AnnotationsList/components/AddAnnotationForm/index.js"],"sourcesContent":["import { memo, useState, useRef } from 'react';\nimport { number, shape, string } from 'prop-types';\nimport classNames from 'classnames';\nimport { get, flowRight } from 'lodash';\nimport moment from 'moment';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Paper, Fade, Typography } from '@material-ui/core';\n\nimport { useAnnotationsDispatch } from '../../../../AnnotationsContext';\nimport { ADD_ANNOTATION } from '../../../../constants';\nimport AnnotationInput from '../AnnotationInput';\n\nimport styles from './style.css';\n\nimport Avatar from '~components/Avatar';\nimport useOutsideClick from '~effects/useOutsideClick';\nimport { showSuccessNotification, showErrorNotification } from '~/utils';\nimport { postAnnotation } from '~/clients/jsonApi';\nimport { withUniversalLocationHOC } from '~/components/DevCenter/DevCenterRouterContext';\n\nconst PAGE_NAME = 'AppAnnotationsPo';\n\nconst ANNOTATION_PLACEHOLDER = 'Type annotation here';\n\nconst muiStyles = theme => ({\n inputLabel: {\n color: theme.palette.grey[700],\n fontWeight: 200,\n width: '100%',\n },\n});\n\nconst AddAnnotationForm = ({\n appId,\n assetId,\n assetCompanyId,\n appSettings,\n currentUser = DEFAULT_ADD_ANNOTATION_FORM_CURRENT_USER,\n classes,\n location,\n dashboardType = null,\n}) => {\n const dispatch = useAnnotationsDispatch();\n\n const [inputIsOpen, setInputIsOpen] = useState(false);\n\n const containerRef = useRef(null);\n useOutsideClick(containerRef, () => {\n setInputIsOpen(false);\n });\n\n const handlePost = async (body, period, attachment) => {\n try {\n const annotation = {\n app_id: appId,\n asset_id: assetId,\n body,\n active_until: period,\n attachment: {\n file_name: attachment && attachment.attachmentName,\n s3_link: attachment && attachment.attachmentUrl,\n },\n settings: appSettings,\n };\n const options = {};\n if (dashboardType) options.dashboard_type = dashboardType;\n\n const queryTime = get(location, 'query.time');\n if (queryTime) annotation.data_timestamp = moment(queryTime).format();\n\n const newAnnotation = await postAnnotation(annotation, options);\n dispatch({ type: ADD_ANNOTATION, annotation: newAnnotation });\n } catch (e) {\n showErrorNotification('Error during annotation creation');\n console.error(e);\n return;\n }\n\n showSuccessNotification('Annotation has been added');\n setInputIsOpen(false);\n };\n\n return (\n <div className={styles.cAddAnnotationFormInput}>\n <Avatar\n displayName={`${currentUser.first_name} ${currentUser.last_name}`}\n imgSrc={currentUser.profile_photo}\n size={36}\n />\n <div\n className={classNames(styles.cAddAnnotationFormInputPaper, {\n [styles.cAddAnnotationFormInputPaperOpened]: inputIsOpen,\n [styles.cAddAnnotationFormInputPaperClosed]: !inputIsOpen,\n })}\n >\n <Fade in={!inputIsOpen} timeout={500}>\n <Paper className={styles.cAddAnnotationFormInputPaperLabel}>\n <Typography\n variant=\"body2\"\n data-testid={`${PAGE_NAME}_collapsedInput`}\n className={classes.inputLabel}\n onClick={() => setInputIsOpen(true)}\n >\n {ANNOTATION_PLACEHOLDER}\n </Typography>\n </Paper>\n </Fade>\n <Fade in={inputIsOpen} timeout={100}>\n <div className={styles.cAddAnnotationFormInputPaperAddAnnotation}>\n {inputIsOpen && (\n <AnnotationInput\n onSend={handlePost}\n assetCompanyId={assetCompanyId}\n currentUser={currentUser}\n />\n )}\n </div>\n </Fade>\n </div>\n </div>\n );\n};\n\nAddAnnotationForm.propTypes = {\n appId: number.isRequired,\n assetId: number.isRequired,\n assetCompanyId: number.isRequired,\n appSettings: shape().isRequired,\n currentUser: shape({}),\n classes: shape().isRequired,\n location: shape().isRequired,\n dashboardType: string,\n};\n\nconst DEFAULT_ADD_ANNOTATION_FORM_CURRENT_USER = {};\n\nexport default flowRight([withStyles(muiStyles), withUniversalLocationHOC])(\n memo(AddAnnotationForm)\n);\n"],"names":["AddAnnotationForm","_ref","_classNames","appId","assetId","assetCompanyId","appSettings","_ref$currentUser","currentUser","DEFAULT_ADD_ANNOTATION_FORM_CURRENT_USER","classes","location","_ref$dashboardType","dashboardType","dispatch","useAnnotationsDispatch","useState","_useState2","_slicedToArray","_useState","inputIsOpen","setInputIsOpen","containerRef","useRef","useOutsideClick","_ref2","handlePost","_asyncToGenerator","_regeneratorRuntime","mark","body","period","attachment","annotation","options","queryTime","newAnnotation","wrap","_context","prev","next","app_id","asset_id","active_until","file_name","attachmentName","s3_link","attachmentUrl","settings","dashboard_type","get","data_timestamp","moment","format","postAnnotation","sent","type","ADD_ANNOTATION","t0","showErrorNotification","console","error","abrupt","showSuccessNotification","stop","_callee","_x","_x2","_x3","apply","this","arguments","_jsxs","className","styles","cAddAnnotationFormInput","children","_jsx","Avatar","displayName","concat","first_name","last_name","imgSrc","profile_photo","size","jsxs","classNames","cAddAnnotationFormInputPaper","cAddAnnotationFormInputPaperOpened","cAddAnnotationFormInputPaperClosed","Fade","in","timeout","Paper","cAddAnnotationFormInputPaperLabel","Typography","variant","inputLabel","onClick","jsx","cAddAnnotationFormInputPaperAddAnnotation","AnnotationInput","onSend","propTypes","number","isRequired","shape","string","AddAnnotationForm$1","flowRight","withStyles","theme","color","palette","grey","fontWeight","width","withUniversalLocationHOC","memo"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/asyncToGenerator"),
|
|
1
|
+
"use strict";var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/helpers/slicedToArray"),s=require("@babel/runtime/regenerator"),n=require("react"),i=require("prop-types"),a=require("classnames"),o=require("@material-ui/core/styles"),u=require("@material-ui/core"),c=require("@material-ui/icons/ChevronLeft"),l=require("../../../../clients/jsonApi/index.js"),d=require("../../AnnotationsContext.js"),p=require("../../constants.js"),q=require("./components/AddAnnotationForm/index.js"),m=require("./components/Annotation/index.js"),h=require("./style.css.js");require("../../../UserMention/utils/index.js"),require("../../../../utils/convert.js"),require("../../../../constants/completion.js"),require("moment"),require("../../../../constants/alerts.js"),require("../../../../utils/casing/validation.js"),require("lodash/mean"),require("lodash"),require("../../../../constants/streamSourceType.js"),require("lodash/get"),require("file-saver"),require("query-string"),require("../../../../constants/goals.js"),require("../../../../constants/segment.js"),require("../../../../constants/apps.js"),require("../../../../constants/drillstring.js"),require("../../../../constants/appPackages.js"),require("../../../../constants/notifications.js"),require("../../../../constants/feed.js"),require("../../../../constants/bha.js"),require("../../../../constants/corvaCompanyId.js"),require("../../../GradientManager/configuration/constants.js"),require("../../../../utils/drillstring/conversion.js"),require("lodash/set"),require("lodash/cloneDeep"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/isNumber"),require("lodash/has"),require("../../../../utils/ga.js"),require("../../../../utils/goalsConfig/goalsConfig.js"),require("../../../../utils/lasParser.js"),require("../../../../utils/main.js"),require("../../../../utils/metrics/metricsConfig.js");var j=require("../../../../utils/mobileDetect.js");require("../../../../utils/feed.js"),require("../../../../utils/reports.js"),require("moment-timezone");var f=require("../../../../utils/notificationToasts.js");require("@babel/runtime/helpers/typeof"),require("../../../../utils/dashboardReports.js"),require("../../../../utils/env.js"),require("file-extension"),require("image-extensions"),require("video-extensions"),require("../../../../utils/jsonaDataFormatter.js"),require("../../../../utils/bha.js"),require("jsona"),require("@babel/runtime/helpers/objectWithoutProperties"),require("../../../../utils/charts/Styles.scss.js"),require("../../../../utils/getSingleAsset.js");var g=require("../../../InfiniteList/index.js"),b=require("../../../../effects/useOutsideClick.js"),y=require("react/jsx-runtime");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var x=v(e),A=v(t),T=v(r),N=v(s),C=v(a),I=v(c),S="AppAnnotationsPo",R=function(e){var t,r=e.appId,s=e.appTitle,i=e.assetId,a=e.assetCompanyId,o=e.appSettings,c=void 0===o?_:o,j=e.currentUser,v=e.onClose,R=e.isNative,L=void 0===R?k:R,w=e.classes,P=e.dashboardType,O=void 0===P?null:P,D=d.useAnnotationsState().annotations,F=d.useAnnotationsDispatch(),U=n.useRef(),E=n.useRef();b(U,v);var H=n.useState(!1),W=T.default(H,2),B=W[0],M=W[1],G=n.useState(!0),z=T.default(G,2),J=z[0],K=z[1],Q=n.useState(!0),V=T.default(Q,2),X=V[0],Y=V[1],Z=n.useState(1),$=T.default(Z,2),ee=$[0],te=$[1];function re(){return(re=A.default(N.default.mark((function e(){var t,s,n;return N.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r&&i){e.next=2;break}return e.abrupt("return");case 2:return K(!0),e.prev=3,s={page:ee,per_page:4,sort:"created_at",order:"desc"},O&&(s.dashboard_type=O),e.next=8,l.getAnnotations(r,i,s);case 8:t=e.sent,F({type:1===ee?p.SET_ANNOTATIONS:p.APPEND_ANNOTATIONS,annotations:t}),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(3),console.error(e.t0);case 15:n=t&&t.data.length<4,te(ee+1),Y(!n),K(!1);case 19:case"end":return e.stop()}}),e,null,[[3,12]])})))).apply(this,arguments)}return n.useEffect((function(){M(!0)}),[]),y.jsx(u.RootRef,{rootRef:U,children:y.jsxs(u.Paper,{className:C.default(h.cAnnotationsList,(t={},x.default(t,h.cAnnotationsListOpen,B),x.default(t,h.cAnnotationsListOpenNative,L),t)),children:[y.jsx(g,{infiniteClassName:h.cAnnotationsListContentContainer,headerComponent:y.jsxs(y.Fragment,{children:[y.jsx(u.Typography,{"data-testid":"".concat(S,"_appTitle"),variant:"body1",className:w.title,children:s}),y.jsx("div",{className:h.cAnnotationsListContentTop,children:y.jsxs(u.Typography,{"data-testid":"".concat(S,"_annotationsTitle"),variant:"caption",className:w.secondaryTitle,children:["Annotations (",D.data?D.data.length:0,")"]})}),y.jsx(q,{appId:r,assetId:i,assetCompanyId:a,appSettings:c,currentUser:j,dashboardType:O})]}),useWindow:L,items:D.data||[],showNoItemsFound:!(D.data&&0!==D.data.length||J),noItemsFoundLabel:y.jsx(u.Typography,{variant:"body2","data-testid":"".concat(S,"_noAnnotations"),className:w.noAnnotations,children:"No Annotations yet"}),threshold:50,infiniteContainerHeight:U.current&&E.current?U.current.clientHeight-E.current.clientHeight:null,moreItemsMayExist:X,pathToCreatedAt:["attributes","created_at"],renderItem:function(e){return y.jsx(m,{isNative:L,annotation:e,assetCompanyId:a,included:D.included,currentUser:j,showSuccessNotification:f.showSuccessNotification},e.id)},loadItems:function(){return re.apply(this,arguments)}}),y.jsx("div",{className:h.cAnnotationsListActions,ref:E,children:y.jsx(u.Tooltip,{title:"Hide",placement:"bottom",children:y.jsx(u.IconButton,{"data-testid":"".concat(S,"_hideButton"),onClick:v,className:w.backIcon,children:y.jsx(I.default,{})})})})]})})};R.propTypes={appId:i.number.isRequired,appTitle:i.string.isRequired,assetId:i.number.isRequired,assetCompanyId:i.number.isRequired,appSettings:i.shape(),classes:i.shape().isRequired,onClose:i.func.isRequired,currentUser:i.shape({}).isRequired,isNative:i.bool,dashboardType:i.string};var _={},k=j.isNativeDetected,L=o.withStyles((function(e){return{title:{fontWeight:200,marginBottom:20},secondaryTitle:{fontWeight:200,textTransform:"uppercase",color:e.palette.grey[600]},annotateIcon:{padding:0,"&:hover":{backgroundColor:"transparent",boxShadow:"none"}},noAnnotations:{marginTop:16},backIcon:{cursor:"pointer",color:e.palette.grey[600],padding:5}}}))(n.memo(R));module.exports=L;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/components/Annotations/components/AnnotationsList/index.js"],"sourcesContent":["import { memo, useState, useEffect, useRef } from 'react';\nimport { func, bool, shape, number, string } from 'prop-types';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Paper, Typography, IconButton, Tooltip, RootRef } from '@material-ui/core';\nimport BackIcon from '@material-ui/icons/ChevronLeft';\n\nimport { getAnnotations } from '../../../../clients/jsonApi';\nimport { useAnnotationsState, useAnnotationsDispatch } from '../../AnnotationsContext';\nimport { SET_ANNOTATIONS, APPEND_ANNOTATIONS } from '../../constants';\n\nimport AddAnnotationForm from './components/AddAnnotationForm';\nimport Annotation from './components/Annotation';\n\nimport styles from './style.css';\n\nimport { showSuccessNotification } from '~/utils';\nimport { isNativeDetected } from '~/utils/mobileDetect';\nimport InfiniteList from '~components/InfiniteList';\nimport useOutsideClick from '~effects/useOutsideClick';\n\nconst PAGE_NAME = 'AppAnnotationsPo';\n\nconst muiStyles = theme => ({\n title: { fontWeight: 200, marginBottom: 20 },\n secondaryTitle: {\n fontWeight: 200,\n textTransform: 'uppercase',\n color: theme.palette.grey[600],\n },\n annotateIcon: {\n padding: 0,\n '&:hover': {\n backgroundColor: 'transparent',\n boxShadow: 'none',\n },\n },\n noAnnotations: { marginTop: 16 },\n backIcon: { cursor: 'pointer', color: theme.palette.grey[600], padding: 5 },\n});\n\nconst PER_PAGE = 4;\n\nconst AnnotationsList = ({\n appId,\n appTitle,\n assetId,\n assetCompanyId,\n appSettings = DEFAULT_ANNOTATIONS_LIST_APP_SETTINGS,\n currentUser,\n onClose,\n isNative = DEFAULT_ANNOTATIONS_LIST_IS_NATIVE,\n classes,\n dashboardType = null,\n}) => {\n const { annotations } = useAnnotationsState();\n const dispatch = useAnnotationsDispatch();\n\n const rootRef = useRef();\n const footerRef = useRef();\n\n const infiniteContainerHeight = () => {\n if (rootRef.current && footerRef.current)\n return rootRef.current.clientHeight - footerRef.current.clientHeight;\n return null;\n };\n\n useOutsideClick(rootRef, onClose);\n\n const [isOpen, setIsOpen] = useState(false);\n const [isInfiniteLoading, setIsInfiniteLoading] = useState(true);\n const [moreItemsMayExist, setMoreItemsMayExist] = useState(true);\n const [page, setPage] = useState(1);\n\n async function handleFetchAnnotations() {\n if (!(appId && assetId)) return;\n setIsInfiniteLoading(true);\n\n let response;\n try {\n const options = {\n page,\n per_page: PER_PAGE,\n sort: 'created_at',\n order: 'desc',\n };\n if (dashboardType) options.dashboard_type = dashboardType;\n\n response = await getAnnotations(appId, assetId, options);\n dispatch({\n type: page === 1 ? SET_ANNOTATIONS : APPEND_ANNOTATIONS,\n annotations: response,\n });\n } catch (e) {\n console.error(e);\n }\n\n const lessThanPerPage = response && response.data.length < PER_PAGE;\n\n setPage(page + 1);\n setMoreItemsMayExist(!lessThanPerPage);\n setIsInfiniteLoading(false);\n }\n\n useEffect(() => {\n setIsOpen(true); // NOTE: Opens here because of for the sliding effect on open\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n return (\n <RootRef rootRef={rootRef}>\n <Paper\n className={classNames(styles.cAnnotationsList, {\n [styles.cAnnotationsListOpen]: isOpen,\n [styles.cAnnotationsListOpenNative]: isNative,\n })}\n >\n <InfiniteList\n infiniteClassName={styles.cAnnotationsListContentContainer}\n headerComponent={\n <>\n <Typography\n data-testid={`${PAGE_NAME}_appTitle`}\n variant=\"body1\"\n className={classes.title}\n >\n {appTitle}\n </Typography>\n\n <div className={styles.cAnnotationsListContentTop}>\n <Typography\n data-testid={`${PAGE_NAME}_annotationsTitle`}\n variant=\"caption\"\n className={classes.secondaryTitle}\n >\n Annotations ({annotations.data ? annotations.data.length : 0})\n </Typography>\n </div>\n\n <AddAnnotationForm\n appId={appId}\n assetId={assetId}\n assetCompanyId={assetCompanyId}\n appSettings={appSettings}\n currentUser={currentUser}\n dashboardType={dashboardType}\n />\n </>\n }\n useWindow={isNative}\n items={annotations.data || []}\n showNoItemsFound={\n (!annotations.data || annotations.data.length === 0) && !isInfiniteLoading\n }\n noItemsFoundLabel={\n <Typography\n variant=\"body2\"\n data-testid={`${PAGE_NAME}_noAnnotations`}\n className={classes.noAnnotations}\n >\n No Annotations yet\n </Typography>\n }\n threshold={50}\n infiniteContainerHeight={infiniteContainerHeight()}\n moreItemsMayExist={moreItemsMayExist}\n pathToCreatedAt={['attributes', 'created_at']}\n renderItem={item => (\n <Annotation\n key={item.id}\n isNative={isNative}\n annotation={item}\n assetCompanyId={assetCompanyId}\n included={annotations.included}\n currentUser={currentUser}\n showSuccessNotification={showSuccessNotification}\n />\n )}\n loadItems={handleFetchAnnotations}\n />\n <div className={styles.cAnnotationsListActions} ref={footerRef}>\n <Tooltip title=\"Hide\" placement=\"bottom\">\n <IconButton\n data-testid={`${PAGE_NAME}_hideButton`}\n onClick={onClose}\n className={classes.backIcon}\n >\n <BackIcon />\n </IconButton>\n </Tooltip>\n </div>\n </Paper>\n </RootRef>\n );\n};\n\nAnnotationsList.propTypes = {\n appId: number.isRequired,\n appTitle: string.isRequired,\n assetId: number.isRequired,\n assetCompanyId: number.isRequired,\n appSettings: shape(),\n classes: shape().isRequired,\n onClose: func.isRequired,\n currentUser: shape({}).isRequired,\n isNative: bool,\n dashboardType: string,\n};\n\nconst DEFAULT_ANNOTATIONS_LIST_APP_SETTINGS = {};\nconst DEFAULT_ANNOTATIONS_LIST_IS_NATIVE = isNativeDetected;\n\nexport default withStyles(muiStyles)(memo(AnnotationsList));\n"],"names":["PAGE_NAME","AnnotationsList","_ref","_classNames","appId","appTitle","assetId","assetCompanyId","_ref$appSettings","appSettings","DEFAULT_ANNOTATIONS_LIST_APP_SETTINGS","currentUser","onClose","_ref$isNative","isNative","DEFAULT_ANNOTATIONS_LIST_IS_NATIVE","classes","_ref$dashboardType","dashboardType","annotations","useAnnotationsState","dispatch","useAnnotationsDispatch","rootRef","useRef","footerRef","useOutsideClick","useState","_useState2","_slicedToArray","_useState","isOpen","setIsOpen","_useState4","_useState3","isInfiniteLoading","setIsInfiniteLoading","_useState6","_useState5","moreItemsMayExist","setMoreItemsMayExist","_useState8","_useState7","page","setPage","_handleFetchAnnotations","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","options","lessThanPerPage","wrap","_context","prev","next","abrupt","per_page","sort","order","dashboard_type","getAnnotations","sent","type","SET_ANNOTATIONS","APPEND_ANNOTATIONS","t0","console","error","data","length","stop","apply","this","arguments","useEffect","_jsx","RootRef","children","_jsxs","Paper","className","classNames","styles","cAnnotationsList","cAnnotationsListOpen","cAnnotationsListOpenNative","InfiniteList","infiniteClassName","cAnnotationsListContentContainer","headerComponent","jsxs","_Fragment","Typography","concat","variant","title","jsx","cAnnotationsListContentTop","secondaryTitle","AddAnnotationForm","useWindow","items","showNoItemsFound","noItemsFoundLabel","noAnnotations","threshold","infiniteContainerHeight","current","clientHeight","pathToCreatedAt","renderItem","item","Annotation","annotation","included","showSuccessNotification","id","loadItems","cAnnotationsListActions","ref","Tooltip","placement","IconButton","onClick","backIcon","BackIcon","propTypes","number","isRequired","string","shape","func","bool","isNativeDetected","withStyles","theme","fontWeight","marginBottom","textTransform","color","palette","grey","annotateIcon","padding","backgroundColor","boxShadow","marginTop","cursor","memo"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/components/Annotations/components/AnnotationsList/index.js"],"sourcesContent":["import { memo, useState, useEffect, useRef } from 'react';\nimport { func, bool, shape, number, string } from 'prop-types';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Paper, Typography, IconButton, Tooltip, RootRef } from '@material-ui/core';\nimport BackIcon from '@material-ui/icons/ChevronLeft';\n\nimport { getAnnotations } from '../../../../clients/jsonApi';\nimport { useAnnotationsState, useAnnotationsDispatch } from '../../AnnotationsContext';\nimport { SET_ANNOTATIONS, APPEND_ANNOTATIONS } from '../../constants';\n\nimport AddAnnotationForm from './components/AddAnnotationForm';\nimport Annotation from './components/Annotation';\n\nimport styles from './style.css';\n\nimport { showSuccessNotification } from '~/utils';\nimport { isNativeDetected } from '~/utils/mobileDetect';\nimport InfiniteList from '~components/InfiniteList';\nimport useOutsideClick from '~effects/useOutsideClick';\n\nconst PAGE_NAME = 'AppAnnotationsPo';\n\nconst muiStyles = theme => ({\n title: { fontWeight: 200, marginBottom: 20 },\n secondaryTitle: {\n fontWeight: 200,\n textTransform: 'uppercase',\n color: theme.palette.grey[600],\n },\n annotateIcon: {\n padding: 0,\n '&:hover': {\n backgroundColor: 'transparent',\n boxShadow: 'none',\n },\n },\n noAnnotations: { marginTop: 16 },\n backIcon: { cursor: 'pointer', color: theme.palette.grey[600], padding: 5 },\n});\n\nconst PER_PAGE = 4;\n\nconst AnnotationsList = ({\n appId,\n appTitle,\n assetId,\n assetCompanyId,\n appSettings = DEFAULT_ANNOTATIONS_LIST_APP_SETTINGS,\n currentUser,\n onClose,\n isNative = DEFAULT_ANNOTATIONS_LIST_IS_NATIVE,\n classes,\n dashboardType = null,\n}) => {\n const { annotations } = useAnnotationsState();\n const dispatch = useAnnotationsDispatch();\n\n const rootRef = useRef();\n const footerRef = useRef();\n\n const infiniteContainerHeight = () => {\n if (rootRef.current && footerRef.current)\n return rootRef.current.clientHeight - footerRef.current.clientHeight;\n return null;\n };\n\n useOutsideClick(rootRef, onClose);\n\n const [isOpen, setIsOpen] = useState(false);\n const [isInfiniteLoading, setIsInfiniteLoading] = useState(true);\n const [moreItemsMayExist, setMoreItemsMayExist] = useState(true);\n const [page, setPage] = useState(1);\n\n async function handleFetchAnnotations() {\n if (!(appId && assetId)) return;\n setIsInfiniteLoading(true);\n\n let response;\n try {\n const options = {\n page,\n per_page: PER_PAGE,\n sort: 'created_at',\n order: 'desc',\n };\n if (dashboardType) options.dashboard_type = dashboardType;\n\n response = await getAnnotations(appId, assetId, options);\n dispatch({\n type: page === 1 ? SET_ANNOTATIONS : APPEND_ANNOTATIONS,\n annotations: response,\n });\n } catch (e) {\n console.error(e);\n }\n\n const lessThanPerPage = response && response.data.length < PER_PAGE;\n\n setPage(page + 1);\n setMoreItemsMayExist(!lessThanPerPage);\n setIsInfiniteLoading(false);\n }\n\n useEffect(() => {\n setIsOpen(true); // NOTE: Opens here because of for the sliding effect on open\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n return (\n <RootRef rootRef={rootRef}>\n <Paper\n className={classNames(styles.cAnnotationsList, {\n [styles.cAnnotationsListOpen]: isOpen,\n [styles.cAnnotationsListOpenNative]: isNative,\n })}\n >\n <InfiniteList\n infiniteClassName={styles.cAnnotationsListContentContainer}\n headerComponent={\n <>\n <Typography\n data-testid={`${PAGE_NAME}_appTitle`}\n variant=\"body1\"\n className={classes.title}\n >\n {appTitle}\n </Typography>\n\n <div className={styles.cAnnotationsListContentTop}>\n <Typography\n data-testid={`${PAGE_NAME}_annotationsTitle`}\n variant=\"caption\"\n className={classes.secondaryTitle}\n >\n Annotations ({annotations.data ? annotations.data.length : 0})\n </Typography>\n </div>\n\n <AddAnnotationForm\n appId={appId}\n assetId={assetId}\n assetCompanyId={assetCompanyId}\n appSettings={appSettings}\n currentUser={currentUser}\n dashboardType={dashboardType}\n />\n </>\n }\n useWindow={isNative}\n items={annotations.data || []}\n showNoItemsFound={\n (!annotations.data || annotations.data.length === 0) && !isInfiniteLoading\n }\n noItemsFoundLabel={\n <Typography\n variant=\"body2\"\n data-testid={`${PAGE_NAME}_noAnnotations`}\n className={classes.noAnnotations}\n >\n No Annotations yet\n </Typography>\n }\n threshold={50}\n infiniteContainerHeight={infiniteContainerHeight()}\n moreItemsMayExist={moreItemsMayExist}\n pathToCreatedAt={['attributes', 'created_at']}\n renderItem={item => (\n <Annotation\n key={item.id}\n isNative={isNative}\n annotation={item}\n assetCompanyId={assetCompanyId}\n included={annotations.included}\n currentUser={currentUser}\n showSuccessNotification={showSuccessNotification}\n />\n )}\n loadItems={handleFetchAnnotations}\n />\n <div className={styles.cAnnotationsListActions} ref={footerRef}>\n <Tooltip title=\"Hide\" placement=\"bottom\">\n <IconButton\n data-testid={`${PAGE_NAME}_hideButton`}\n onClick={onClose}\n className={classes.backIcon}\n >\n <BackIcon />\n </IconButton>\n </Tooltip>\n </div>\n </Paper>\n </RootRef>\n );\n};\n\nAnnotationsList.propTypes = {\n appId: number.isRequired,\n appTitle: string.isRequired,\n assetId: number.isRequired,\n assetCompanyId: number.isRequired,\n appSettings: shape(),\n classes: shape().isRequired,\n onClose: func.isRequired,\n currentUser: shape({}).isRequired,\n isNative: bool,\n dashboardType: string,\n};\n\nconst DEFAULT_ANNOTATIONS_LIST_APP_SETTINGS = {};\nconst DEFAULT_ANNOTATIONS_LIST_IS_NATIVE = isNativeDetected;\n\nexport default withStyles(muiStyles)(memo(AnnotationsList));\n"],"names":["PAGE_NAME","AnnotationsList","_ref","_classNames","appId","appTitle","assetId","assetCompanyId","_ref$appSettings","appSettings","DEFAULT_ANNOTATIONS_LIST_APP_SETTINGS","currentUser","onClose","_ref$isNative","isNative","DEFAULT_ANNOTATIONS_LIST_IS_NATIVE","classes","_ref$dashboardType","dashboardType","annotations","useAnnotationsState","dispatch","useAnnotationsDispatch","rootRef","useRef","footerRef","useOutsideClick","useState","_useState2","_slicedToArray","_useState","isOpen","setIsOpen","_useState4","_useState3","isInfiniteLoading","setIsInfiniteLoading","_useState6","_useState5","moreItemsMayExist","setMoreItemsMayExist","_useState8","_useState7","page","setPage","_handleFetchAnnotations","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","options","lessThanPerPage","wrap","_context","prev","next","abrupt","per_page","sort","order","dashboard_type","getAnnotations","sent","type","SET_ANNOTATIONS","APPEND_ANNOTATIONS","t0","console","error","data","length","stop","apply","this","arguments","useEffect","_jsx","RootRef","children","_jsxs","Paper","className","classNames","styles","cAnnotationsList","cAnnotationsListOpen","cAnnotationsListOpenNative","InfiniteList","infiniteClassName","cAnnotationsListContentContainer","headerComponent","jsxs","_Fragment","Typography","concat","variant","title","jsx","cAnnotationsListContentTop","secondaryTitle","AddAnnotationForm","useWindow","items","showNoItemsFound","noItemsFoundLabel","noAnnotations","threshold","infiniteContainerHeight","current","clientHeight","pathToCreatedAt","renderItem","item","Annotation","annotation","included","showSuccessNotification","id","loadItems","cAnnotationsListActions","ref","Tooltip","placement","IconButton","onClick","backIcon","BackIcon","propTypes","number","isRequired","string","shape","func","bool","isNativeDetected","withStyles","theme","fontWeight","marginBottom","textTransform","color","palette","grey","annotateIcon","padding","backgroundColor","boxShadow","marginTop","cursor","memo"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@babel/runtime/helpers/objectWithoutProperties"),
|
|
1
|
+
"use strict";var e=require("@babel/runtime/helpers/objectWithoutProperties"),r=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/slicedToArray"),i=require("react"),s=require("classnames"),a=require("@material-ui/core"),n=require("lodash"),o=require("../Search/Search.js"),u=require("../../clients/jsonApi/index.js");require("../UserMention/utils/index.js"),require("../../utils/convert.js"),require("../../constants/completion.js"),require("moment"),require("../../constants/alerts.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../utils/casing/validation.js"),require("lodash/mean"),require("../../constants/streamSourceType.js"),require("lodash/get"),require("file-saver"),require("query-string"),require("../../constants/goals.js"),require("../../constants/segment.js"),require("../../constants/apps.js"),require("../../constants/drillstring.js"),require("../../constants/appPackages.js"),require("../../constants/notifications.js"),require("../../constants/feed.js"),require("../../constants/bha.js"),require("../../constants/corvaCompanyId.js"),require("../GradientManager/configuration/constants.js"),require("../../utils/drillstring/conversion.js"),require("lodash/set"),require("lodash/cloneDeep"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/isNumber"),require("lodash/has"),require("../../utils/ga.js"),require("../../utils/goalsConfig/goalsConfig.js"),require("../../utils/lasParser.js"),require("../../utils/main.js"),require("../../utils/metrics/metricsConfig.js"),require("../../utils/mobileDetect.js"),require("../../utils/feed.js"),require("../../utils/reports.js"),require("moment-timezone"),require("@babel/runtime/helpers/typeof"),require("../../utils/dashboardReports.js"),require("../../utils/env.js"),require("file-extension"),require("image-extensions"),require("video-extensions");var l=require("../../utils/jsonaDataFormatter.js");require("../../utils/bha.js"),require("jsona"),require("../../utils/charts/Styles.scss.js"),require("../../utils/getSingleAsset.js");var c=require("../../effects/useLoadedData.js"),d=require("react/jsx-runtime");function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var f=p(e),q=p(r),m=p(t),j=p(s),b=["listbox","paper"];function g(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);r&&(i=i.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,i)}return t}function h(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?g(Object(t),!0).forEach((function(r){q.default(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):g(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}var v=a.makeStyles((function(e){return{listbox:{maxHeight:360},paper:{width:364},footer:{fontSize:12,color:e.palette.primary.text6,lineHeight:"16.872px",padding:"8px 16px"}}})),y=function(e){var r;return{data:l.jsonaDataFormatter.deserialize(e.data),total:Number(null===(r=e.headers)||void 0===r?void 0:r.get("total"))||0}},O=[],x={},P={data:[],total:0},S=i.memo((function(e){var r=e.selectedAssets,t=void 0===r?O:r,s=e.onChange,a=e.label,l=e.className,p=e.type,q=e.customRequestQueryParams,g=e.classes,S=void 0===g?{}:g,D=v(),C=c({loadFn:u.mapAssetGetRequest(p,!0),initialData:P,getDataFromResponseFn:y,isCacheEnabled:!0}),w=C.isLoading,A=C.setIsLoading,F=C.data,k=C.loadData,E=null!=F?F:P,I=E.data,M=E.total,N=i.useState(""),R=m.default(N,2),z=R[0],T=R[1];i.useEffect((function(){L("",q)}),[]);var G=i.useMemo((function(){return t.map((function(e){return h(h({},e),{},{id:e.id,label:e.name})}))}),[t]),H=i.useMemo((function(){var e={};return(G.length?I.concat(G):I).forEach((function(r){e[r.id]=h(h({},r),{},{id:r.id,label:r.name})})),Object.values(n.sortBy(e,"label"))}),[I,t,z]),L=i.useCallback((function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=h(h(h({},x),{},{per_page:50},r),{},{fields:["".concat(p,".name")].concat((null==r?void 0:r.fields)||[])});k(h({search:e},t))}),[]),B=function(){T(""),L("",q)},Q=i.useMemo((function(){var e,r=0===(e=M-(null==I?void 0:I.length))?null:e;return r&&!w&&z?d.jsxs("div",{className:D.footer,children:[r," additional items not displayed. Continue typing for more refined results."]}):null}),[I,w,!!z,M]),U=S.listbox,W=S.paper,_=f.default(S,b);return d.jsx(o.Search,{"data-testid":"offsetPadDropdown",value:G,onChange:function(e,r,t){if("reset"!==t){var i=r.map((function(e){return h(h({},e),{},{name:e.label})}));s(i)}},TextFieldProps:{label:a},className:l,classes:h({listbox:j.default(D.listbox,U),paper:j.default(D.paper,W)},_),loading:w,options:H,placeholder:"",multiple:!0,filterSelectedOptions:!1,AutocompleteProps:{forcePopupIcon:!0},isHiddenAllOption:!0,onInputChangeCallback:function(e,r){"reset"!==r&&""!==e?e.trimStart()!==z&&(T(e.trimStart()),A(!0),L(e.trimStart(),q)):B()},onInputReset:B,paperFooter:Q,getOptionSelected:function(e,r){return+e.id==+r.id},isPrioritizedSelectedOptions:!0})}));module.exports=S;
|
|
2
2
|
//# sourceMappingURL=AssetsMultipleSelector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssetsMultipleSelector.js","sources":["../../../../src/components/AssetsMultipleSelector/AssetsMultipleSelector.tsx"],"sourcesContent":["import { memo, useCallback, useEffect, useMemo, useState } from 'react';\nimport classnames from 'classnames';\nimport { makeStyles } from '@material-ui/core';\nimport { sortBy } from 'lodash';\n\nimport { Search } from '../Search';\n\nimport { mapAssetGetRequest } from '~/clients/jsonApi';\nimport { jsonaDataFormatter } from '~/utils';\nimport useLoadedData from '~/effects/useLoadedData';\n\nconst useStyles = makeStyles(theme => ({\n listbox: {\n maxHeight: 360,\n },\n paper: {\n width: 364,\n },\n footer: {\n fontSize: 12,\n color: theme.palette.primary.text6,\n lineHeight: '16.872px',\n padding: '8px 16px',\n },\n}));\n\nconst getDataFromResponseFn = (response: {\n data: unknown;\n headers?: { get(name: string): string | null };\n}) => {\n return {\n data: jsonaDataFormatter.deserialize(response.data as string) as Asset[],\n total: Number(response.headers?.get('total')) || 0,\n };\n};\nconst initialSelectedAssets: Asset[] = [];\nconst defaultQueryParams = {};\nconst DEFAULT_ASSETS_PER_PAGE = 50;\nconst initialData: { data: Asset[]; total: number } = { data: [], total: 0 };\n\ntype Asset = { id: string; name: string } & Record<string, unknown>;\nexport type AssetsMultipleSelectorProps = {\n /**\n array of asset objects with required id and name fields.\n */\n selectedAssets: [] | Asset[];\n /**\n callback fires on asset selection with array of all selected assets.\n */\n onChange: (assets: Asset[] | []) => void;\n /**\n label for autocomplete input.\n */\n label: string;\n /**\n type of asset.\n */\n type: 'program' | 'rig' | 'well' | 'frac_fleet' | 'drillout_unit' | 'pad' | 'assets';\n /**\n css for root component.\n */\n className?: string;\n /**\n custom query params for assets request like fields, per_page.\n */\n customRequestQueryParams?: Record<string, unknown> & {\n fields?: string[];\n per_page?: number | string;\n };\n /**\n material ui autocomplete classes.\n */\n classes?: any;\n};\n\nconst AssetsMultipleSelector = memo(\n ({\n selectedAssets = initialSelectedAssets,\n onChange,\n label,\n className,\n type,\n customRequestQueryParams,\n classes = {},\n }: AssetsMultipleSelectorProps) => {\n const styles = useStyles();\n\n const { isLoading, setIsLoading, data, loadData } = useLoadedData({\n loadFn: mapAssetGetRequest(type, true),\n initialData: initialData as any,\n getDataFromResponseFn,\n isCacheEnabled: true,\n });\n const { data: assetsData, total } = data ?? initialData;\n const [searchValue, setSearchValue] = useState('');\n\n useEffect(() => {\n loadAssets('', customRequestQueryParams);\n }, []);\n\n const selectedOptions: AssetsMultipleSelectorProps['selectedAssets'] & {} = useMemo(\n () =>\n selectedAssets.map(asset => ({\n ...asset,\n id: asset.id,\n label: asset.name,\n })),\n [selectedAssets]\n );\n\n const options: (Asset & { label: string })[] = useMemo(() => {\n const optionsMap: Record<string, Asset & { label: string }> = {};\n const allOptions = selectedOptions.length ? assetsData.concat(selectedOptions) : assetsData;\n allOptions.forEach((asset: Asset) => {\n optionsMap[asset.id] = {\n ...asset,\n id: asset.id,\n label: asset.name,\n };\n });\n\n return Object.values(sortBy(optionsMap, 'label'));\n }, [assetsData, selectedAssets, searchValue]);\n\n const loadAssets = useCallback(\n (\n search: string,\n customRequestQueryParams: AssetsMultipleSelectorProps['customRequestQueryParams'] = {}\n ) => {\n const params = {\n ...defaultQueryParams,\n per_page: DEFAULT_ASSETS_PER_PAGE,\n ...customRequestQueryParams,\n fields: [`${type}.name`].concat(customRequestQueryParams?.fields || []),\n };\n\n loadData({\n search,\n ...params,\n });\n },\n []\n );\n\n const handleChange = (_event: unknown, visibleSelectedOptions: Asset[], reason?: string) => {\n if (reason === 'reset') return;\n\n const newAssets = visibleSelectedOptions.map(option => {\n return {\n ...option,\n name: option.label as string,\n };\n });\n\n onChange(newAssets);\n };\n\n const onInputReset = () => {\n setSearchValue('');\n loadAssets('', customRequestQueryParams);\n };\n\n const handleInputChange = (value: string, reason: string) => {\n if (reason === 'reset' || value === '') {\n onInputReset();\n return;\n }\n\n if (value.trimStart() !== searchValue) {\n setSearchValue(value.trimStart());\n setIsLoading(true);\n loadAssets(value.trimStart(), customRequestQueryParams);\n }\n };\n\n const countNotShowedAssets = () => {\n const optionsCount = total - assetsData?.length;\n if (optionsCount === 0) return null;\n\n return optionsCount;\n };\n\n const paperFooter = useMemo(() => {\n const notShowedAssetsQuantity = countNotShowedAssets();\n return notShowedAssetsQuantity && !isLoading && searchValue ? (\n <div className={styles.footer}>\n {notShowedAssetsQuantity} additional items not displayed. Continue typing for more refined\n results.\n </div>\n ) : null;\n }, [assetsData, isLoading, !!searchValue, total]);\n\n const { listbox, paper, ...restClasses } = classes;\n\n return (\n <Search\n data-testid=\"offsetPadDropdown\"\n value={selectedOptions}\n onChange={handleChange}\n TextFieldProps={{ label }}\n // @ts-ignore\n className={className}\n classes={{\n listbox: classnames(styles.listbox, listbox),\n paper: classnames(styles.paper, paper),\n ...restClasses,\n }}\n loading={isLoading}\n options={options}\n placeholder=\"\"\n multiple\n filterSelectedOptions={false}\n AutocompleteProps={{ forcePopupIcon: true }}\n isHiddenAllOption\n onInputChangeCallback={handleInputChange}\n onInputReset={onInputReset}\n paperFooter={paperFooter}\n getOptionSelected={(option, value) => +option.id === +value.id}\n isPrioritizedSelectedOptions\n />\n );\n }\n);\n\nexport default AssetsMultipleSelector;\n"],"names":["useStyles","makeStyles","theme","listbox","maxHeight","paper","width","footer","fontSize","color","palette","primary","text6","lineHeight","padding","getDataFromResponseFn","response","_response$headers","data","jsonaDataFormatter","deserialize","total","Number","headers","get","initialSelectedAssets","defaultQueryParams","initialData","AssetsMultipleSelector","memo","_ref","_ref$selectedAssets","selectedAssets","onChange","label","className","type","customRequestQueryParams","_ref$classes","classes","styles","_useLoadedData","useLoadedData","loadFn","mapAssetGetRequest","isCacheEnabled","isLoading","setIsLoading","loadData","_ref2","assetsData","useState","_useState2","_slicedToArray","_useState","searchValue","setSearchValue","useEffect","loadAssets","selectedOptions","useMemo","map","asset","_objectSpread","id","name","options","optionsMap","length","concat","forEach","Object","values","sortBy","useCallback","search","arguments","undefined","params","per_page","fields","onInputReset","paperFooter","optionsCount","notShowedAssetsQuantity","_jsxs","children","restClasses","_excluded","_jsx","Search","value","_event","visibleSelectedOptions","reason","newAssets","option","TextFieldProps","classnames","loading","placeholder","multiple","filterSelectedOptions","AutocompleteProps","forcePopupIcon","isHiddenAllOption","onInputChangeCallback","trimStart","getOptionSelected","isPrioritizedSelectedOptions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AssetsMultipleSelector.js","sources":["../../../../src/components/AssetsMultipleSelector/AssetsMultipleSelector.tsx"],"sourcesContent":["import { memo, useCallback, useEffect, useMemo, useState } from 'react';\nimport classnames from 'classnames';\nimport { makeStyles } from '@material-ui/core';\nimport { sortBy } from 'lodash';\n\nimport { Search } from '../Search';\n\nimport { mapAssetGetRequest } from '~/clients/jsonApi';\nimport { jsonaDataFormatter } from '~/utils';\nimport useLoadedData from '~/effects/useLoadedData';\n\nconst useStyles = makeStyles(theme => ({\n listbox: {\n maxHeight: 360,\n },\n paper: {\n width: 364,\n },\n footer: {\n fontSize: 12,\n color: theme.palette.primary.text6,\n lineHeight: '16.872px',\n padding: '8px 16px',\n },\n}));\n\nconst getDataFromResponseFn = (response: {\n data: unknown;\n headers?: { get(name: string): string | null };\n}) => {\n return {\n data: jsonaDataFormatter.deserialize(response.data as string) as Asset[],\n total: Number(response.headers?.get('total')) || 0,\n };\n};\nconst initialSelectedAssets: Asset[] = [];\nconst defaultQueryParams = {};\nconst DEFAULT_ASSETS_PER_PAGE = 50;\nconst initialData: { data: Asset[]; total: number } = { data: [], total: 0 };\n\ntype Asset = { id: string; name: string } & Record<string, unknown>;\nexport type AssetsMultipleSelectorProps = {\n /**\n array of asset objects with required id and name fields.\n */\n selectedAssets: [] | Asset[];\n /**\n callback fires on asset selection with array of all selected assets.\n */\n onChange: (assets: Asset[] | []) => void;\n /**\n label for autocomplete input.\n */\n label: string;\n /**\n type of asset.\n */\n type: 'program' | 'rig' | 'well' | 'frac_fleet' | 'drillout_unit' | 'pad' | 'assets';\n /**\n css for root component.\n */\n className?: string;\n /**\n custom query params for assets request like fields, per_page.\n */\n customRequestQueryParams?: Record<string, unknown> & {\n fields?: string[];\n per_page?: number | string;\n };\n /**\n material ui autocomplete classes.\n */\n classes?: any;\n};\n\nconst AssetsMultipleSelector = memo(\n ({\n selectedAssets = initialSelectedAssets,\n onChange,\n label,\n className,\n type,\n customRequestQueryParams,\n classes = {},\n }: AssetsMultipleSelectorProps) => {\n const styles = useStyles();\n\n const { isLoading, setIsLoading, data, loadData } = useLoadedData({\n loadFn: mapAssetGetRequest(type, true),\n initialData: initialData as any,\n getDataFromResponseFn,\n isCacheEnabled: true,\n });\n const { data: assetsData, total } = data ?? initialData;\n const [searchValue, setSearchValue] = useState('');\n\n useEffect(() => {\n loadAssets('', customRequestQueryParams);\n }, []);\n\n const selectedOptions: AssetsMultipleSelectorProps['selectedAssets'] & {} = useMemo(\n () =>\n selectedAssets.map(asset => ({\n ...asset,\n id: asset.id,\n label: asset.name,\n })),\n [selectedAssets]\n );\n\n const options: (Asset & { label: string })[] = useMemo(() => {\n const optionsMap: Record<string, Asset & { label: string }> = {};\n const allOptions = selectedOptions.length ? assetsData.concat(selectedOptions) : assetsData;\n allOptions.forEach((asset: Asset) => {\n optionsMap[asset.id] = {\n ...asset,\n id: asset.id,\n label: asset.name,\n };\n });\n\n return Object.values(sortBy(optionsMap, 'label'));\n }, [assetsData, selectedAssets, searchValue]);\n\n const loadAssets = useCallback(\n (\n search: string,\n customRequestQueryParams: AssetsMultipleSelectorProps['customRequestQueryParams'] = {}\n ) => {\n const params = {\n ...defaultQueryParams,\n per_page: DEFAULT_ASSETS_PER_PAGE,\n ...customRequestQueryParams,\n fields: [`${type}.name`].concat(customRequestQueryParams?.fields || []),\n };\n\n loadData({\n search,\n ...params,\n });\n },\n []\n );\n\n const handleChange = (_event: unknown, visibleSelectedOptions: Asset[], reason?: string) => {\n if (reason === 'reset') return;\n\n const newAssets = visibleSelectedOptions.map(option => {\n return {\n ...option,\n name: option.label as string,\n };\n });\n\n onChange(newAssets);\n };\n\n const onInputReset = () => {\n setSearchValue('');\n loadAssets('', customRequestQueryParams);\n };\n\n const handleInputChange = (value: string, reason: string) => {\n if (reason === 'reset' || value === '') {\n onInputReset();\n return;\n }\n\n if (value.trimStart() !== searchValue) {\n setSearchValue(value.trimStart());\n setIsLoading(true);\n loadAssets(value.trimStart(), customRequestQueryParams);\n }\n };\n\n const countNotShowedAssets = () => {\n const optionsCount = total - assetsData?.length;\n if (optionsCount === 0) return null;\n\n return optionsCount;\n };\n\n const paperFooter = useMemo(() => {\n const notShowedAssetsQuantity = countNotShowedAssets();\n return notShowedAssetsQuantity && !isLoading && searchValue ? (\n <div className={styles.footer}>\n {notShowedAssetsQuantity} additional items not displayed. Continue typing for more refined\n results.\n </div>\n ) : null;\n }, [assetsData, isLoading, !!searchValue, total]);\n\n const { listbox, paper, ...restClasses } = classes;\n\n return (\n <Search\n data-testid=\"offsetPadDropdown\"\n value={selectedOptions}\n onChange={handleChange}\n TextFieldProps={{ label }}\n // @ts-ignore\n className={className}\n classes={{\n listbox: classnames(styles.listbox, listbox),\n paper: classnames(styles.paper, paper),\n ...restClasses,\n }}\n loading={isLoading}\n options={options}\n placeholder=\"\"\n multiple\n filterSelectedOptions={false}\n AutocompleteProps={{ forcePopupIcon: true }}\n isHiddenAllOption\n onInputChangeCallback={handleInputChange}\n onInputReset={onInputReset}\n paperFooter={paperFooter}\n getOptionSelected={(option, value) => +option.id === +value.id}\n isPrioritizedSelectedOptions\n />\n );\n }\n);\n\nexport default AssetsMultipleSelector;\n"],"names":["useStyles","makeStyles","theme","listbox","maxHeight","paper","width","footer","fontSize","color","palette","primary","text6","lineHeight","padding","getDataFromResponseFn","response","_response$headers","data","jsonaDataFormatter","deserialize","total","Number","headers","get","initialSelectedAssets","defaultQueryParams","initialData","AssetsMultipleSelector","memo","_ref","_ref$selectedAssets","selectedAssets","onChange","label","className","type","customRequestQueryParams","_ref$classes","classes","styles","_useLoadedData","useLoadedData","loadFn","mapAssetGetRequest","isCacheEnabled","isLoading","setIsLoading","loadData","_ref2","assetsData","useState","_useState2","_slicedToArray","_useState","searchValue","setSearchValue","useEffect","loadAssets","selectedOptions","useMemo","map","asset","_objectSpread","id","name","options","optionsMap","length","concat","forEach","Object","values","sortBy","useCallback","search","arguments","undefined","params","per_page","fields","onInputReset","paperFooter","optionsCount","notShowedAssetsQuantity","_jsxs","children","restClasses","_excluded","_jsx","Search","value","_event","visibleSelectedOptions","reason","newAssets","option","TextFieldProps","classnames","loading","placeholder","multiple","filterSelectedOptions","AutocompleteProps","forcePopupIcon","isHiddenAllOption","onInputChangeCallback","trimStart","getOptionSelected","isPrioritizedSelectedOptions"],"mappings":"40FAWA,IAAMA,EAAYC,EAAAA,YAAW,SAAAC,GAAK,MAAK,CACrCC,QAAS,CACPC,UAAW,KAEbC,MAAO,CACLC,MAAO,KAETC,OAAQ,CACNC,SAAU,GACVC,MAAOP,EAAMQ,QAAQC,QAAQC,MAC7BC,WAAY,WACZC,QAAS,YAEZ,IAEKC,EAAwB,SAACC,GAGzB,IAAAC,EACJ,MAAO,CACLC,KAAMC,EAAkBA,mBAACC,YAAYJ,EAASE,MAC9CG,MAAOC,OAAO,QAAAN,EAAAA,EAASO,eAAT,IAAAN,OAAA,EAAAA,EAAkBO,IAAI,WAAa,EAErD,EACMC,EAAiC,GACjCC,EAAqB,CAAA,EAErBC,EAAgD,CAAET,KAAM,GAAIG,MAAO,GAqCnEO,EAAyBC,EAAAA,MAC7B,SAQmCC,GAAA,IAAAC,EAAAD,EAPjCE,eAAAA,aAAiBP,EAAqBM,EACtCE,IAAAA,SACAC,IAAAA,MACAC,IAAAA,UACAC,IAAAA,KACAC,IAAAA,yBAAwBC,EAAAR,EACxBS,QAAAA,OAAO,IAAAD,EAAG,CAAA,EAAEA,EAENE,EAASxC,IAEfyC,EAAoDC,EAAc,CAChEC,OAAQC,EAAAA,mBAAmBR,GAAM,GACjCT,YAAaA,EACbZ,sBAAAA,EACA8B,gBAAgB,IAJVC,IAAAA,UAAWC,IAAAA,aAAc7B,IAAAA,KAAM8B,IAAAA,SAMvCC,EAAoC/B,QAAAA,EAAQS,EAA9BuB,IAANhC,KAAkBG,IAAAA,MACY8B,EAAAA,EAAQA,SAAC,IAAGC,EAAAC,EAAAA,QAAAC,EAAA,GAA3CC,EAAWH,EAAA,GAAEI,EAAcJ,EAAA,GAElCK,EAAAA,WAAU,WACRC,EAAW,GAAIrB,EAChB,GAAE,IAEH,IAAMsB,EAAsEC,EAAAA,SAC1E,WAAA,OACE5B,EAAe6B,KAAI,SAAAC,GAAK,OAAAC,EAAAA,EAAA,CAAA,EACnBD,GAAK,CAAA,EAAA,CACRE,GAAIF,EAAME,GACV9B,MAAO4B,EAAMG,MAAI,MAErB,CAACjC,IAGGkC,EAAyCN,EAAAA,SAAQ,WACrD,IAAMO,EAAwD,CAAA,EAU9D,OATmBR,EAAgBS,OAASlB,EAAWmB,OAAOV,GAAmBT,GACtEoB,SAAQ,SAACR,GAClBK,EAAWL,EAAME,WACZF,GAAK,GAAA,CACRE,GAAIF,EAAME,GACV9B,MAAO4B,EAAMG,MAEjB,IAEOM,OAAOC,OAAOC,EAAAA,OAAON,EAAY,SACzC,GAAE,CAACjB,EAAYlB,EAAgBuB,IAE1BG,EAAagB,eACjB,SACEC,GAEG,IADHtC,EAAoFuC,UAAAR,OAAA,QAAAS,IAAAD,UAAA,GAAAA,UAAA,GAAA,CAAA,EAE9EE,WACDpD,GAAkB,GAAA,CACrBqD,SA9FsB,IA+FnB1C,GAAwB,GAAA,CAC3B2C,OAAQ,CAAI5C,GAAAA,OAAAA,EAAY,UAACiC,QAAOhC,aAAAA,EAAAA,EAA0B2C,SAAU,MAGtEhC,EAAQe,EAAA,CACNY,OAAAA,GACGG,GAEN,GACD,IAgBIG,EAAe,WACnBzB,EAAe,IACfE,EAAW,GAAIrB,IAuBX6C,EAActB,EAAAA,SAAQ,WAC1B,IAPMuB,EAOAC,EANe,KADfD,EAAe9D,GAAQ6B,aAAU,EAAVA,EAAYkB,SACV,KAExBe,EAKP,OAAOC,IAA4BtC,GAAaS,EAC9C8B,EAAAA,KAAA,MAAA,CAAKlD,UAAWK,EAAOjC,OAAO+E,SAAA,CAC3BF,EAAuB,gFAGxB,IACN,GAAG,CAAClC,EAAYJ,IAAaS,EAAalC,IAElClB,EAAmCoC,EAAnCpC,QAASE,EAA0BkC,EAA1BlC,MAAUkF,YAAgBhD,EAAOiD,GAElD,OACEC,EAAAA,IAACC,EAAAA,OAAM,CACL,cAAY,oBACZC,MAAOhC,EACP1B,SAtDiB,SAAC2D,EAAiBC,EAAiCC,GACtE,GAAe,UAAXA,EAAJ,CAEA,IAAMC,EAAYF,EAAuBhC,KAAI,SAAAmC,GAC3C,OAAAjC,EAAAA,EAAA,CAAA,EACKiC,GAAM,CAAA,EAAA,CACT/B,KAAM+B,EAAO9D,OAEjB,IAEAD,EAAS8D,EATe,GAsDtBE,eAAgB,CAAE/D,MAAAA,GAElBC,UAAWA,EACXI,QAAOwB,EAAA,CACL5D,QAAS+F,EAAU,QAAC1D,EAAOrC,QAASA,GACpCE,MAAO6F,EAAU,QAAC1D,EAAOnC,MAAOA,IAC7BkF,GAELY,QAASrD,EACToB,QAASA,EACTkC,YAAY,GACZC,UAAQ,EACRC,uBAAuB,EACvBC,kBAAmB,CAAEC,gBAAgB,GACrCC,mBAAiB,EACjBC,sBApDsB,SAACf,EAAeG,GACzB,UAAXA,GAAgC,KAAVH,EAKtBA,EAAMgB,cAAgBpD,IACxBC,EAAemC,EAAMgB,aACrB5D,GAAa,GACbW,EAAWiC,EAAMgB,YAAatE,IAP9B4C,KAmDAA,aAAcA,EACdC,YAAaA,EACb0B,kBAAmB,SAACZ,EAAQL,GAAK,OAAMK,EAAOhC,KAAQ2B,EAAM3B,EAAG,EAC/D6C,8BAA4B,GAGlC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@babel/runtime/helpers/slicedToArray"),s=require("@babel/runtime/helpers/defineProperty"),i=require("@babel/runtime/helpers/objectWithoutProperties"),o=require("react"),n=require("prop-types"),t=require("react-player"),r=require("classnames"),c=require("@material-ui/core/styles"),a=require("@material-ui/core"),l=require("@material-ui/icons/Image"),u=require("@material-ui/icons/Fullscreen"),m=require("@material-ui/core/colors/grey"),d=require("../NewDocumentViewer/NewDocumentViewer.js"),p=require("../NewDocumentViewer/icons/UnavailableFileIcon.js"),j=require("../../componentsV2/ImageViewer/ImageViewer.js"),h=require("./styles.css.js"),q=require("../FileTypeIcon.js"),I=require("../IconButton/index.js"),g=require("../../utils/mobileDetect.js"),f=require("../../utils/fileExtension.js"),v=require("../../utils/filePreview.js"),b=require("../../icons/iconParkIcons.js");require("../../icons/customIcons/icons/AddMessage.js"),require("../../icons/customIcons/icons/DragOne.js"),require("../../icons/customIcons/icons/Attention.js"),require("../../icons/customIcons/icons/Collapse.js"),require("../../icons/customIcons/icons/Dashboard.js"),require("../../icons/customIcons/icons/Expand.js"),require("../../icons/customIcons/icons/FolderClosed.js"),require("../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../icons/customIcons/icons/FolderOpened.js"),require("../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../icons/customIcons/icons/LessOrEqual.js"),require("../../icons/customIcons/icons/Search.js"),require("../../icons/customIcons/icons/SearchOne.js"),require("../../icons/customIcons/icons/Wellhub.js"),require("../../icons/customIcons/icons/MultiRuler.js"),require("../../icons/customIcons/icons/Checkbox.js"),require("../../icons/customIcons/icons/CheckboxChecked.js"),require("../../icons/customIcons/icons/CheckboxIndeterminate.js"),require("../../icons/customIcons/icons/Radio.js"),require("../../icons/customIcons/icons/RadioChecked.js"),require("../../icons/customIcons/icons/SimulFrac.js"),require("../../icons/customIcons/icons/ZipperFrac.js"),require("../../icons/customIcons/icons/CautionFilled.js"),require("../../icons/customIcons/icons/InfoRounded.js"),require("../../icons/customIcons/icons/FlameFilled.js"),require("../../icons/customIcons/icons/MoreApp.js"),require("../../icons/customIcons/icons/Pad.js"),require("../../icons/customIcons/icons/DrilloutUnit.js"),require("../../icons/customIcons/icons/FracFleet.js"),require("../../icons/customIcons/icons/Global.js"),require("../../icons/customIcons/icons/Program.js"),require("../../icons/customIcons/icons/Rig.js"),require("../../icons/customIcons/icons/Well.js"),require("../../icons/customIcons/icons/Gap.js"),require("../../icons/customIcons/icons/Pin.js"),require("../../icons/customIcons/icons/PinOne.js"),require("../../icons/customIcons/icons/PinOneCrossed.js"),require("../../icons/customIcons/icons/CloseOneFilled.js"),require("../../icons/customIcons/icons/AttentionFilled.js"),require("../../icons/customIcons/icons/CheckOneFilled.js"),require("../../icons/customIcons/icons/Archive.js"),require("../../icons/customIcons/icons/ArchiveCancel.js"),require("../../icons/customIcons/icons/Unarchive.js"),require("../../icons/customIcons/icons/Archived.js"),require("../../icons/customIcons/icons/InterventionUnit.js"),require("../../icons/customIcons/icons/CloudDelete.js"),require("../../icons/customIcons/icons/Lasso.js"),require("../../icons/customIcons/icons/Radius.js"),require("../../icons/customIcons/icons/ErrorOps.js"),require("../../icons/customIcons/icons/DataTypeOps.js"),require("../../icons/customIcons/icons/FalsePositiveOps.js"),require("../../icons/customIcons/icons/CalibrationOps.js"),require("../../icons/customIcons/icons/CriticalOps.js"),require("../../icons/customIcons/icons/Company.js"),require("../../icons/customIcons/icons/ArchiveOne.js"),require("../../icons/customIcons/icons/ParseBotFusion.js"),require("../../icons/customIcons/icons/Connect.js"),require("../../icons/customIcons/icons/PuzzleOne.js"),require("../../icons/customIcons/icons/Feed.js"),require("../../icons/customIcons/icons/Prompt.js"),require("../../icons/customIcons/icons/Companies.js"),require("../../icons/customIcons/icons/ClipboardAi.js"),require("../../icons/customIcons/icons/Key.js"),require("../../icons/customIcons/icons/AtSignCrossed.js"),require("../../icons/customIcons/icons/MappingManual.js"),require("../../icons/customIcons/icons/Mapping.js"),require("../../icons/customIcons/icons/Metrics.js"),require("../../icons/customIcons/icons/Drops.js"),require("../../icons/customIcons/icons/ClipboardSearch.js"),require("../../icons/customIcons/icons/Template.js"),require("../../icons/customIcons/icons/ClipboardMetrics.js"),require("../../icons/customIcons/icons/ClipboardBuilder.js"),require("../../icons/customIcons/icons/UnitConversion.js"),require("../../icons/customIcons/icons/NPT.js"),require("../../icons/customIcons/icons/GuidedFrac.js"),require("../../clients/subscriptions/constants.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("querystring"),require("uuid/v1"),require("lodash"),require("../../clients/subscriptions.v1.js"),require("../../clients/jsonApi/index.js"),require("../../clients/subscriptions/subscriptions-client.factory.js"),require("immutable"),require("query-string"),require("../../constants/goals.js"),require("../../constants/segment.js"),require("../../constants/alerts.js"),require("../../constants/apps.js"),require("../../constants/drillstring.js"),require("../../constants/completion.js"),require("../../constants/appPackages.js"),require("../../constants/notifications.js"),require("../../constants/feed.js"),require("../../constants/bha.js"),require("../../constants/corvaCompanyId.js"),require("../GradientManager/configuration/constants.js");var x=require("../../effects/useSignedURL.js");require("../../utils/index.js"),require("uuid"),require("jsona"),require("../../utils/env.js"),require("../StatusBadge/constants.js"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/set"),require("lodash/get"),require("lodash/unset"),require("moment"),require("../../clients/api/apiCore.js"),require("../../clients/constants.js"),require("../../clients/sso/auth0.js"),require("../../clients/sso/oauth2.js"),require("../../clients/api/rateLimiter.js"),require("lodash/isEmpty"),require("lodash/sortBy"),require("../../constants/streamSourceType.js"),require("../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js"),require("../../componentsV2/AppCommonsProvider/AppCommonsProvider.js"),require("../../componentsV2/AppCommonsProvider/AppCommonsContext.js"),require("../../componentsV2/AppPanel/AppPanelsContext.js");var C=require("../../utils/main.js"),w=require("react/jsx-runtime");function y(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var N=y(e),P=y(s),F=y(i),O=y(n),A=y(t),D=y(r),S=y(l),z=y(u),k=y(m),W=["displayName","fileName","attachmentSize","size","small"];function U(e,s){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);s&&(o=o.filter((function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable}))),i.push.apply(i,o)}return i}function R(e){for(var s=1;s<arguments.length;s++){var i=null!=arguments[s]?arguments[s]:{};s%2?U(Object(i),!0).forEach((function(s){P.default(e,s,i[s])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):U(Object(i)).forEach((function(s){Object.defineProperty(e,s,Object.getOwnPropertyDescriptor(i,s))}))}return e}var L=k.default[200],E=k.default[400],T={label:"small",value:135},V={label:"medium",value:300},M={fileImage:function(e,s){return{maxWidth:"100%",borderRadius:4,overflow:"hidden",maxHeight:s===T.label?T.value:V.value,display:e?"initial":"none",cursor:"pointer"}},fileDownloadWrapper:{padding:"10px 10px 10px 5px",border:"1px solid #616161",borderRadius:3,maxWidth:500,width:"75%"},imagePlaceholder:{position:"relative",backgroundColor:L,borderRadius:3,marginTop:10,height:135,width:135}},B=function(e){var s,i,o=x(e.attachmentFileName)||e.attachmentUrl;return w.jsxs(w.Fragment,{children:[w.jsxs("div",{onClick:e.openLightbox,className:h.cAttachmentImg,children:[w.jsx("img",{"data-testid":"".concat("Attachment","_image"),src:o,style:M.fileImage(!!e.imageDimensions,e.size),alt:"Attachment",onLoad:e.onImageLoaded}),w.jsx("div",{"data-testid":"".concat("Attachment","_button"),className:h.cAttachmentImgPreviwBtn,children:w.jsx(z.default,{})})]}),!e.imageDimensions&&w.jsx("div",{style:M.imagePlaceholder,children:w.jsx(S.default,{"data-testid":"".concat("Attachment","_placeholder"),className:e.classes.imageIconRoot,htmlColor:E,fontSize:"large"})}),e.lightboxIsOpen&&w.jsx(j.ImageViewer,{src:o,onClose:e.handleLightboxClose,onOpen:e.handleLightboxOpen,width:null===(s=e.imageDimensions)||void 0===s?void 0:s.width,height:null===(i=e.imageDimensions)||void 0===i?void 0:i.height})]})},G=function(e){var s=C.default.getFileNameWithExtensionFromPath(e.displayName||e.attachmentUrl),i=x(e.attachmentFileName,"inline"),o=x(e.attachmentFileName,"attachment"),n=v.getIsPreviewUnavailable(s);return w.jsxs("div",{className:h.cAttachmentFileWrapper,children:[w.jsxs("div",{className:D.default(h.cAttachmentFileDownloadWrapper,n&&e.classes.disabledPreview),style:M.fileDownloadWrapper,onClick:function(){n||e.openPreview()},children:[n?w.jsx(p.UnavailableFileIcon,{className:e.classes.unavailableFileIcon}):w.jsx(q,{fileName:e.displayName||e.attachmentUrl,className:h.cAttachmentFileDownloadWrapperFileIcon,size:e.small?25:50}),w.jsxs("div",{className:e.classes.titleContainer,children:[n&&w.jsx("div",{className:e.classes.caption,children:"Preview unavailable"}),w.jsx("div",{"data-testid":"".concat("Attachment","_name"),className:D.default(h.cAttachmentFileDownloadWrapperFileName,n&&e.classes.fileName),children:w.jsx(a.Typography,{variant:"subtitle2",noWrap:!0,className:e.classes.unavailableFileName,children:s})})]}),w.jsx(d,{fileUrl:i,classes:{root:e.classes.dialogRoot,paper:g.isNativeDetected?e.classes.nativeDialog:e.classes.dialog},fileName:s,fileSize:e.attachmentSize,onClose:e.closePreview,open:e.previewIsOpen})]}),w.jsx("a",{download:e.displayName,href:o,className:h.cAttachmentFileDownloadWrapperForm,children:w.jsx(I,{"data-testid":"".concat("Attachment","_downloadButton"),className:e.classes.downloadIcon,type:"submit",children:w.jsx(b.DownloadIcon,{size:24,className:e.classes.downloadIcon})})})]})};function _(e){var s=e.displayName,i=void 0===s?null:s,n=e.fileName,t=void 0===n?null:n,r=e.attachmentSize,c=void 0===r?void 0:r,a=e.size,l=void 0===a?V.label:a,u=e.small,m=void 0!==u&&u,d=R(R({},F.default(e,W)),{},{displayName:i,fileName:t,attachmentSize:c,size:l,small:m}),p=o.useState(void 0),j=N.default(p,2),q=j[0],I=j[1],v=o.useState(!1),b=N.default(v,2),C=b[0],y=b[1],P=o.useState(!1),O=N.default(P,2),D=O[0],S=O[1],z=d.displayName||d.attachmentUrl||d.fileName,k=f.getIsImage(z),U=f.getIsVideo(z),L=x(!d.attachmentUrl&&d.fileName),E=d.attachmentUrl||L,M=o.useCallback((function(e){return e.preventDefault()}),[]),_=o.useCallback((function(){g.isNativeDetected&&document.documentElement.addEventListener("touchmove",M,{passive:!1})}),[M]),H=o.useCallback((function(){g.isNativeDetected&&document.documentElement.removeEventListener("touchmove",M),y(!1)}),[M]),K=o.useCallback((function(){return y(!0)}),[]),Z=o.useCallback((function(e){var s=e.currentTarget,i=s.naturalWidth,o=s.naturalHeight;I({width:i,height:o})}),[]),J=o.useCallback((function(){return S(!0)}),[]),Q=o.useCallback((function(e){e.stopPropagation(),S(!1)}),[]);return k?w.jsx("div",{className:h.cAttachment,children:w.jsx(B,{size:d.size,openLightbox:K,attachmentFileName:d.fileName,attachmentUrl:d.attachmentUrl,onImageLoaded:Z,imageDimensions:q,lightboxIsOpen:C,handleLightboxOpen:_,handleLightboxClose:H,classes:d.classes})}):U&&A.default.canPlay(E)?w.jsx("div",{className:h.cAttachment,children:w.jsx(A.default,{"data-testid":"".concat("Attachment","_player"),className:h.cAttachmentReactPlayer,url:E,config:{file:{attributes:{preload:"metadata"}}},controls:!0,height:d.size===T.label?T.value:V.value,width:null})}):w.jsx("div",{className:h.cAttachment,children:w.jsx(G,{attachmentUrl:E,attachmentFileName:d.fileName,attachmentSize:d.attachmentSize,displayName:d.displayName,openPreview:J,closePreview:Q,previewIsOpen:D,classes:d.classes,small:d.small})})}_.propTypes={attachmentUrl:O.default.string.isRequired,attachmentSize:O.default.number,displayName:O.default.string,fileName:O.default.string,size:O.default.oneOf([T.label,V.label]),classes:O.default.shape({}).isRequired,small:O.default.bool};var H=c.withStyles((function(e){return{imageIconRoot:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)"},dialog:{width:"95%",height:"95%",maxWidth:"100%",position:"relative"},nativeDialog:{width:"100%",height:"100%",maxWidth:"100%",maxHeight:"100%",margin:0},dialogRoot:{backgroundColor:"rgba(0, 0, 0, 0.85)"},fileName:{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",fontWeight:400},downloadIcon:{color:e.palette.primary.text3},disabledPreview:{backgroundColor:e.palette.primary.text9},unavailableFileIcon:{marginRight:12,minWidth:32},titleContainer:{display:"flex",flexDirection:"column",width:"100%"},caption:{fontSize:12,fontWeight:400,width:"fit-content"},unavailableFileName:{fontSize:12,fontWeight:400}}}))(_);module.exports=H;
|
|
1
|
+
"use strict";var e=require("@babel/runtime/helpers/slicedToArray"),s=require("@babel/runtime/helpers/defineProperty"),i=require("@babel/runtime/helpers/objectWithoutProperties"),o=require("react"),r=require("prop-types"),n=require("react-player"),t=require("classnames"),c=require("@material-ui/core/styles"),a=require("@material-ui/core"),l=require("@material-ui/icons/Image"),u=require("@material-ui/icons/Fullscreen"),m=require("@material-ui/core/colors/grey"),d=require("../NewDocumentViewer/NewDocumentViewer.js"),p=require("../NewDocumentViewer/icons/UnavailableFileIcon.js"),j=require("../../componentsV2/ImageViewer/ImageViewer.js"),q=require("./styles.css.js"),h=require("../FileTypeIcon.js"),I=require("../IconButton/index.js"),g=require("../../utils/mobileDetect.js"),f=require("../../utils/fileExtension.js"),v=require("../../utils/filePreview.js"),b=require("../../icons/iconParkIcons.js");require("../../icons/customIcons/icons/AddMessage.js"),require("../../icons/customIcons/icons/DragOne.js"),require("../../icons/customIcons/icons/Attention.js"),require("../../icons/customIcons/icons/Collapse.js"),require("../../icons/customIcons/icons/Dashboard.js"),require("../../icons/customIcons/icons/Expand.js"),require("../../icons/customIcons/icons/FolderClosed.js"),require("../../icons/customIcons/icons/FolderClosedFilled.js"),require("../../icons/customIcons/icons/FolderOpened.js"),require("../../icons/customIcons/icons/GreaterOrEqual.js"),require("../../icons/customIcons/icons/LessOrEqual.js"),require("../../icons/customIcons/icons/Search.js"),require("../../icons/customIcons/icons/SearchOne.js"),require("../../icons/customIcons/icons/Wellhub.js"),require("../../icons/customIcons/icons/MultiRuler.js"),require("../../icons/customIcons/icons/Checkbox.js"),require("../../icons/customIcons/icons/CheckboxChecked.js"),require("../../icons/customIcons/icons/CheckboxIndeterminate.js"),require("../../icons/customIcons/icons/Radio.js"),require("../../icons/customIcons/icons/RadioChecked.js"),require("../../icons/customIcons/icons/SimulFrac.js"),require("../../icons/customIcons/icons/ZipperFrac.js"),require("../../icons/customIcons/icons/CautionFilled.js"),require("../../icons/customIcons/icons/InfoRounded.js"),require("../../icons/customIcons/icons/FlameFilled.js"),require("../../icons/customIcons/icons/MoreApp.js"),require("../../icons/customIcons/icons/Pad.js"),require("../../icons/customIcons/icons/DrilloutUnit.js"),require("../../icons/customIcons/icons/FracFleet.js"),require("../../icons/customIcons/icons/Global.js"),require("../../icons/customIcons/icons/Program.js"),require("../../icons/customIcons/icons/Rig.js"),require("../../icons/customIcons/icons/Well.js"),require("../../icons/customIcons/icons/Gap.js"),require("../../icons/customIcons/icons/Pin.js"),require("../../icons/customIcons/icons/PinOne.js"),require("../../icons/customIcons/icons/PinOneCrossed.js"),require("../../icons/customIcons/icons/CloseOneFilled.js"),require("../../icons/customIcons/icons/AttentionFilled.js"),require("../../icons/customIcons/icons/CheckOneFilled.js"),require("../../icons/customIcons/icons/Archive.js"),require("../../icons/customIcons/icons/ArchiveCancel.js"),require("../../icons/customIcons/icons/Unarchive.js"),require("../../icons/customIcons/icons/Archived.js"),require("../../icons/customIcons/icons/InterventionUnit.js"),require("../../icons/customIcons/icons/CloudDelete.js"),require("../../icons/customIcons/icons/Lasso.js"),require("../../icons/customIcons/icons/Radius.js"),require("../../icons/customIcons/icons/ErrorOps.js"),require("../../icons/customIcons/icons/DataTypeOps.js"),require("../../icons/customIcons/icons/FalsePositiveOps.js"),require("../../icons/customIcons/icons/CalibrationOps.js"),require("../../icons/customIcons/icons/CriticalOps.js"),require("../../icons/customIcons/icons/Company.js"),require("../../icons/customIcons/icons/ArchiveOne.js"),require("../../icons/customIcons/icons/ParseBotFusion.js"),require("../../icons/customIcons/icons/Connect.js"),require("../../icons/customIcons/icons/PuzzleOne.js"),require("../../icons/customIcons/icons/Feed.js"),require("../../icons/customIcons/icons/Prompt.js"),require("../../icons/customIcons/icons/Companies.js"),require("../../icons/customIcons/icons/ClipboardAi.js"),require("../../icons/customIcons/icons/Key.js"),require("../../icons/customIcons/icons/AtSignCrossed.js"),require("../../icons/customIcons/icons/MappingManual.js"),require("../../icons/customIcons/icons/Mapping.js"),require("../../icons/customIcons/icons/Metrics.js"),require("../../icons/customIcons/icons/Drops.js"),require("../../icons/customIcons/icons/ClipboardSearch.js"),require("../../icons/customIcons/icons/Template.js"),require("../../icons/customIcons/icons/ClipboardMetrics.js"),require("../../icons/customIcons/icons/ClipboardBuilder.js"),require("../../icons/customIcons/icons/UnitConversion.js"),require("../../icons/customIcons/icons/NPT.js"),require("../../icons/customIcons/icons/GuidedFrac.js"),require("../../clients/subscriptions/constants.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("querystring"),require("uuid/v1"),require("lodash"),require("../../clients/subscriptions.v1.js"),require("../../clients/jsonApi/index.js"),require("../../clients/subscriptions/subscriptions-client.factory.js"),require("query-string"),require("../../constants/goals.js"),require("../../constants/segment.js"),require("../../constants/alerts.js"),require("../../constants/apps.js"),require("../../constants/drillstring.js"),require("../../constants/completion.js"),require("../../constants/appPackages.js"),require("../../constants/notifications.js"),require("../../constants/feed.js"),require("../../constants/bha.js"),require("../../constants/corvaCompanyId.js"),require("../GradientManager/configuration/constants.js");var x=require("../../effects/useSignedURL.js");require("../UserMention/utils/index.js"),require("../../utils/convert.js"),require("moment"),require("../../utils/casing/validation.js"),require("lodash/mean"),require("../../constants/streamSourceType.js"),require("lodash/get"),require("file-saver"),require("../../utils/drillstring/conversion.js"),require("lodash/set"),require("lodash/cloneDeep"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/isNumber"),require("lodash/has"),require("../../utils/ga.js"),require("../../utils/goalsConfig/goalsConfig.js"),require("../../utils/lasParser.js");var C=require("../../utils/main.js");require("../../utils/metrics/metricsConfig.js"),require("../../utils/feed.js"),require("../../utils/reports.js"),require("moment-timezone"),require("@babel/runtime/helpers/typeof"),require("../../utils/dashboardReports.js"),require("../../utils/env.js"),require("../../utils/jsonaDataFormatter.js"),require("../../utils/bha.js"),require("jsona"),require("../../utils/charts/Styles.scss.js"),require("../../utils/getSingleAsset.js"),require("uuid"),require("../StatusBadge/constants.js"),require("lodash/unset"),require("../../clients/api/apiCore.js"),require("../../clients/constants.js"),require("../../clients/sso/auth0.js"),require("../../clients/sso/oauth2.js"),require("../../clients/api/rateLimiter.js"),require("lodash/isEmpty"),require("lodash/sortBy"),require("../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js"),require("../../componentsV2/AppCommonsProvider/AppCommonsProvider.js"),require("../../componentsV2/AppCommonsProvider/AppCommonsContext.js"),require("../../componentsV2/AppPanel/AppPanelsContext.js");var y=require("react/jsx-runtime");function w(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var N=w(e),P=w(s),F=w(i),O=w(r),A=w(n),D=w(t),S=w(l),z=w(u),k=w(m),W=["displayName","fileName","attachmentSize","size","small"];function U(e,s){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);s&&(o=o.filter((function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable}))),i.push.apply(i,o)}return i}function R(e){for(var s=1;s<arguments.length;s++){var i=null!=arguments[s]?arguments[s]:{};s%2?U(Object(i),!0).forEach((function(s){P.default(e,s,i[s])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):U(Object(i)).forEach((function(s){Object.defineProperty(e,s,Object.getOwnPropertyDescriptor(i,s))}))}return e}var L=k.default[200],E=k.default[400],T={label:"small",value:135},V={label:"medium",value:300},M={fileImage:function(e,s){return{maxWidth:"100%",borderRadius:4,overflow:"hidden",maxHeight:s===T.label?T.value:V.value,display:e?"initial":"none",cursor:"pointer"}},fileDownloadWrapper:{padding:"10px 10px 10px 5px",border:"1px solid #616161",borderRadius:3,maxWidth:500,width:"75%"},imagePlaceholder:{position:"relative",backgroundColor:L,borderRadius:3,marginTop:10,height:135,width:135}},B=function(e){var s,i,o=x(e.attachmentFileName)||e.attachmentUrl;return y.jsxs(y.Fragment,{children:[y.jsxs("div",{onClick:e.openLightbox,className:q.cAttachmentImg,children:[y.jsx("img",{"data-testid":"".concat("Attachment","_image"),src:o,style:M.fileImage(!!e.imageDimensions,e.size),alt:"Attachment",onLoad:e.onImageLoaded}),y.jsx("div",{"data-testid":"".concat("Attachment","_button"),className:q.cAttachmentImgPreviwBtn,children:y.jsx(z.default,{})})]}),!e.imageDimensions&&y.jsx("div",{style:M.imagePlaceholder,children:y.jsx(S.default,{"data-testid":"".concat("Attachment","_placeholder"),className:e.classes.imageIconRoot,htmlColor:E,fontSize:"large"})}),e.lightboxIsOpen&&y.jsx(j.ImageViewer,{src:o,onClose:e.handleLightboxClose,onOpen:e.handleLightboxOpen,width:null===(s=e.imageDimensions)||void 0===s?void 0:s.width,height:null===(i=e.imageDimensions)||void 0===i?void 0:i.height})]})},G=function(e){var s=C.default.getFileNameWithExtensionFromPath(e.displayName||e.attachmentUrl),i=x(e.attachmentFileName,"inline"),o=x(e.attachmentFileName,"attachment"),r=v.getIsPreviewUnavailable(s);return y.jsxs("div",{className:q.cAttachmentFileWrapper,children:[y.jsxs("div",{className:D.default(q.cAttachmentFileDownloadWrapper,r&&e.classes.disabledPreview),style:M.fileDownloadWrapper,onClick:function(){r||e.openPreview()},children:[r?y.jsx(p.UnavailableFileIcon,{className:e.classes.unavailableFileIcon}):y.jsx(h,{fileName:e.displayName||e.attachmentUrl,className:q.cAttachmentFileDownloadWrapperFileIcon,size:e.small?25:50}),y.jsxs("div",{className:e.classes.titleContainer,children:[r&&y.jsx("div",{className:e.classes.caption,children:"Preview unavailable"}),y.jsx("div",{"data-testid":"".concat("Attachment","_name"),className:D.default(q.cAttachmentFileDownloadWrapperFileName,r&&e.classes.fileName),children:y.jsx(a.Typography,{variant:"subtitle2",noWrap:!0,className:e.classes.unavailableFileName,children:s})})]}),y.jsx(d,{fileUrl:i,classes:{root:e.classes.dialogRoot,paper:g.isNativeDetected?e.classes.nativeDialog:e.classes.dialog},fileName:s,fileSize:e.attachmentSize,onClose:e.closePreview,open:e.previewIsOpen})]}),y.jsx("a",{download:e.displayName,href:o,className:q.cAttachmentFileDownloadWrapperForm,children:y.jsx(I,{"data-testid":"".concat("Attachment","_downloadButton"),className:e.classes.downloadIcon,type:"submit",children:y.jsx(b.DownloadIcon,{size:24,className:e.classes.downloadIcon})})})]})};function _(e){var s=e.displayName,i=void 0===s?null:s,r=e.fileName,n=void 0===r?null:r,t=e.attachmentSize,c=void 0===t?void 0:t,a=e.size,l=void 0===a?V.label:a,u=e.small,m=void 0!==u&&u,d=R(R({},F.default(e,W)),{},{displayName:i,fileName:n,attachmentSize:c,size:l,small:m}),p=o.useState(void 0),j=N.default(p,2),h=j[0],I=j[1],v=o.useState(!1),b=N.default(v,2),C=b[0],w=b[1],P=o.useState(!1),O=N.default(P,2),D=O[0],S=O[1],z=d.displayName||d.attachmentUrl||d.fileName,k=f.getIsImage(z),U=f.getIsVideo(z),L=x(!d.attachmentUrl&&d.fileName),E=d.attachmentUrl||L,M=o.useCallback((function(e){return e.preventDefault()}),[]),_=o.useCallback((function(){g.isNativeDetected&&document.documentElement.addEventListener("touchmove",M,{passive:!1})}),[M]),H=o.useCallback((function(){g.isNativeDetected&&document.documentElement.removeEventListener("touchmove",M),w(!1)}),[M]),K=o.useCallback((function(){return w(!0)}),[]),Z=o.useCallback((function(e){var s=e.currentTarget,i=s.naturalWidth,o=s.naturalHeight;I({width:i,height:o})}),[]),J=o.useCallback((function(){return S(!0)}),[]),Q=o.useCallback((function(e){e.stopPropagation(),S(!1)}),[]);return k?y.jsx("div",{className:q.cAttachment,children:y.jsx(B,{size:d.size,openLightbox:K,attachmentFileName:d.fileName,attachmentUrl:d.attachmentUrl,onImageLoaded:Z,imageDimensions:h,lightboxIsOpen:C,handleLightboxOpen:_,handleLightboxClose:H,classes:d.classes})}):U&&A.default.canPlay(E)?y.jsx("div",{className:q.cAttachment,children:y.jsx(A.default,{"data-testid":"".concat("Attachment","_player"),className:q.cAttachmentReactPlayer,url:E,config:{file:{attributes:{preload:"metadata"}}},controls:!0,height:d.size===T.label?T.value:V.value,width:null})}):y.jsx("div",{className:q.cAttachment,children:y.jsx(G,{attachmentUrl:E,attachmentFileName:d.fileName,attachmentSize:d.attachmentSize,displayName:d.displayName,openPreview:J,closePreview:Q,previewIsOpen:D,classes:d.classes,small:d.small})})}_.propTypes={attachmentUrl:O.default.string.isRequired,attachmentSize:O.default.number,displayName:O.default.string,fileName:O.default.string,size:O.default.oneOf([T.label,V.label]),classes:O.default.shape({}).isRequired,small:O.default.bool};var H=c.withStyles((function(e){return{imageIconRoot:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)"},dialog:{width:"95%",height:"95%",maxWidth:"100%",position:"relative"},nativeDialog:{width:"100%",height:"100%",maxWidth:"100%",maxHeight:"100%",margin:0},dialogRoot:{backgroundColor:"rgba(0, 0, 0, 0.85)"},fileName:{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",fontWeight:400},downloadIcon:{color:e.palette.primary.text3},disabledPreview:{backgroundColor:e.palette.primary.text9},unavailableFileIcon:{marginRight:12,minWidth:32},titleContainer:{display:"flex",flexDirection:"column",width:"100%"},caption:{fontSize:12,fontWeight:400,width:"fit-content"},unavailableFileName:{fontSize:12,fontWeight:400}}}))(_);module.exports=H;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/Attachment/index.js"],"sourcesContent":["import { useCallback, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactPlayer from 'react-player';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Typography } from '@material-ui/core';\nimport ImageIcon from '@material-ui/icons/Image';\nimport FullSizeIcon from '@material-ui/icons/Fullscreen';\nimport grey from '@material-ui/core/colors/grey';\n\nimport { NewDocumentViewer } from '../NewDocumentViewer';\nimport { UnavailableFileIcon } from '../NewDocumentViewer/icons/UnavailableFileIcon';\nimport { ImageViewer } from '../../componentsV2/ImageViewer';\n\nimport styles from './styles.css';\n\nimport FileTypeIcon from '~components/FileTypeIcon';\nimport IconButton from '~components/IconButton';\nimport { isNativeDetected } from '~/utils/mobileDetect';\nimport { getIsImage, getIsVideo } from '~/utils/fileExtension';\nimport { getIsPreviewUnavailable } from '~/utils/filePreview';\nimport { DownloadIcon } from '~/icons';\nimport { useSignedURL } from '~/effects';\nimport utils from '~utils/main';\n\nconst PAGE_NAME = 'Attachment';\n\nconst grey200 = grey[200];\nconst grey400 = grey[400];\n\nconst SIZES = {\n small: { label: 'small', value: 135 },\n medium: { label: 'medium', value: 300 },\n};\n\nconst style = {\n fileImage: (imageIsLoaded, size) => ({\n maxWidth: '100%',\n borderRadius: 4,\n overflow: 'hidden',\n // NOTE: Makes one-line comment with image fits into comments container. Equals to\n // imagePlaceholder height\n maxHeight: size === SIZES.small.label ? SIZES.small.value : SIZES.medium.value,\n display: imageIsLoaded ? 'initial' : 'none',\n cursor: 'pointer',\n }),\n fileDownloadWrapper: {\n padding: '10px 10px 10px 5px',\n border: `1px solid #616161`,\n borderRadius: 3,\n maxWidth: 500, // NOTE: Corresponds to react-player max width\n width: '75%',\n },\n imagePlaceholder: {\n position: 'relative',\n backgroundColor: grey200,\n borderRadius: 3,\n marginTop: 10,\n height: 135,\n width: 135,\n },\n};\n\nconst muiStyles = theme => ({\n imageIconRoot: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n },\n dialog: {\n width: '95%',\n height: '95%',\n maxWidth: '100%',\n position: 'relative',\n },\n nativeDialog: {\n width: '100%',\n height: '100%',\n maxWidth: '100%',\n maxHeight: '100%',\n margin: 0,\n },\n dialogRoot: {\n // NOTE: Make background color similar to lightbox\n backgroundColor: 'rgba(0, 0, 0, 0.85)',\n },\n fileName: {\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n fontWeight: 400,\n },\n downloadIcon: {\n color: theme.palette.primary.text3,\n },\n disabledPreview: {\n backgroundColor: theme.palette.primary.text9,\n },\n unavailableFileIcon: {\n marginRight: 12,\n minWidth: 32,\n },\n titleContainer: {\n display: 'flex',\n flexDirection: 'column',\n width: '100%',\n },\n caption: {\n fontSize: 12,\n fontWeight: 400,\n width: 'fit-content',\n },\n unavailableFileName: {\n fontSize: 12,\n fontWeight: 400,\n },\n});\n\n/* eslint-disable react/prop-types */\nconst ImageAttachment = props => {\n const downloadLink = useSignedURL(props.attachmentFileName) || props.attachmentUrl;\n\n return (\n <>\n <div onClick={props.openLightbox} className={styles.cAttachmentImg}>\n <img\n data-testid={`${PAGE_NAME}_image`}\n src={downloadLink}\n style={style.fileImage(!!props.imageDimensions, props.size)}\n alt=\"Attachment\"\n onLoad={props.onImageLoaded}\n />\n <div data-testid={`${PAGE_NAME}_button`} className={styles.cAttachmentImgPreviwBtn}>\n <FullSizeIcon />\n </div>\n </div>\n\n {!props.imageDimensions && (\n <div style={style.imagePlaceholder}>\n <ImageIcon\n data-testid={`${PAGE_NAME}_placeholder`}\n className={props.classes.imageIconRoot}\n htmlColor={grey400}\n fontSize=\"large\"\n />\n </div>\n )}\n\n {props.lightboxIsOpen && (\n <ImageViewer\n src={downloadLink}\n onClose={props.handleLightboxClose}\n onOpen={props.handleLightboxOpen}\n width={props.imageDimensions?.width}\n height={props.imageDimensions?.height}\n />\n )}\n </>\n );\n};\n\nconst FileAttachment = props => {\n const fileName = utils.getFileNameWithExtensionFromPath(props.displayName || props.attachmentUrl);\n\n const previewUrl = useSignedURL(props.attachmentFileName, 'inline');\n const downloadUrl = useSignedURL(props.attachmentFileName, 'attachment');\n\n const isPreviewUnavailable = getIsPreviewUnavailable(fileName);\n\n const handleFilePreviewOpen = () => {\n if (isPreviewUnavailable) return;\n props.openPreview();\n };\n\n return (\n <div className={styles.cAttachmentFileWrapper}>\n <div\n className={classNames(\n styles.cAttachmentFileDownloadWrapper,\n isPreviewUnavailable && props.classes.disabledPreview\n )}\n style={style.fileDownloadWrapper}\n onClick={handleFilePreviewOpen}\n >\n {isPreviewUnavailable ? (\n <UnavailableFileIcon className={props.classes.unavailableFileIcon} />\n ) : (\n <FileTypeIcon\n fileName={props.displayName || props.attachmentUrl}\n className={styles.cAttachmentFileDownloadWrapperFileIcon}\n size={props.small ? 25 : 50}\n />\n )}\n <div className={props.classes.titleContainer}>\n {isPreviewUnavailable && <div className={props.classes.caption}>Preview unavailable</div>}\n <div\n data-testid={`${PAGE_NAME}_name`}\n className={classNames(\n styles.cAttachmentFileDownloadWrapperFileName,\n isPreviewUnavailable && props.classes.fileName\n )}\n >\n <Typography variant=\"subtitle2\" noWrap className={props.classes.unavailableFileName}>\n {fileName}\n </Typography>\n </div>\n </div>\n <NewDocumentViewer\n fileUrl={previewUrl}\n classes={{\n root: props.classes.dialogRoot,\n paper: isNativeDetected ? props.classes.nativeDialog : props.classes.dialog,\n }}\n fileName={fileName}\n fileSize={props.attachmentSize}\n onClose={props.closePreview}\n open={props.previewIsOpen}\n />\n </div>\n <a\n download={props.displayName}\n href={downloadUrl}\n className={styles.cAttachmentFileDownloadWrapperForm}\n >\n <IconButton\n data-testid={`${PAGE_NAME}_downloadButton`}\n className={props.classes.downloadIcon}\n type=\"submit\"\n >\n <DownloadIcon size={24} className={props.classes.downloadIcon} />\n </IconButton>\n </a>\n </div>\n );\n};\n\n/* eslint-enable react/prop-types */\n\nfunction Attachment(rawProps) {\n const {\n displayName = null,\n fileName: attachmentFileName = null,\n attachmentSize = undefined,\n size = SIZES.medium.label,\n small = false,\n ...otherProps\n } = rawProps;\n const props = {\n ...otherProps,\n displayName,\n fileName: attachmentFileName,\n attachmentSize,\n size,\n small,\n };\n\n const [imageDimensions, setImageDimensions] = useState(undefined);\n const [isLightboxOpen, setIsLightboxOpen] = useState(false);\n const [isPreviewOpen, setIsPreviewOpen] = useState(false);\n\n const fileName = props.displayName || props.attachmentUrl || props.fileName;\n const isImage = getIsImage(fileName);\n const isVideo = getIsVideo(fileName);\n\n // Don't fetch download link if attachmentUrl is provided\n const downloadLink = useSignedURL(!props.attachmentUrl && props.fileName);\n const attachmentUrl = props.attachmentUrl || downloadLink;\n const preventIOSScroll = useCallback(e => e.preventDefault(), []);\n\n // NOTE: iOS WebView has a bug when background content of React Modal is scrollable\n // Source: https://github.com/reactjs/react-modal/issues/369\n const handleLightboxOpen = useCallback(() => {\n if (isNativeDetected) {\n // document.documentElement.style.overflowY = 'hidden';\n document.documentElement.addEventListener('touchmove', preventIOSScroll, {\n passive: false,\n });\n }\n }, [preventIOSScroll]);\n\n const handleLightboxClose = useCallback(() => {\n if (isNativeDetected) {\n // document.documentElement.style.overflowY = 'visible';\n document.documentElement.removeEventListener('touchmove', preventIOSScroll);\n }\n setIsLightboxOpen(false);\n }, [preventIOSScroll]);\n\n const openLightbox = useCallback(() => setIsLightboxOpen(true), []);\n const onImageLoaded = useCallback(e => {\n const { naturalWidth, naturalHeight } = e.currentTarget;\n setImageDimensions({ width: naturalWidth, height: naturalHeight });\n }, []);\n const openPreview = useCallback(() => setIsPreviewOpen(true), []);\n const closePreview = useCallback(e => {\n e.stopPropagation();\n setIsPreviewOpen(false);\n }, []);\n\n if (isImage)\n return (\n <div className={styles.cAttachment}>\n <ImageAttachment\n size={props.size}\n openLightbox={openLightbox}\n attachmentFileName={props.fileName}\n attachmentUrl={props.attachmentUrl}\n onImageLoaded={onImageLoaded}\n imageDimensions={imageDimensions}\n lightboxIsOpen={isLightboxOpen}\n handleLightboxOpen={handleLightboxOpen}\n handleLightboxClose={handleLightboxClose}\n classes={props.classes}\n />\n </div>\n );\n\n if (isVideo && ReactPlayer.canPlay(attachmentUrl))\n return (\n <div className={styles.cAttachment}>\n <ReactPlayer\n data-testid={`${PAGE_NAME}_player`}\n className={styles.cAttachmentReactPlayer}\n url={attachmentUrl}\n config={{ file: { attributes: { preload: 'metadata' } } }}\n controls\n height={props.size === SIZES.small.label ? SIZES.small.value : SIZES.medium.value}\n width={null}\n />\n </div>\n );\n\n return (\n <div className={styles.cAttachment}>\n <FileAttachment\n attachmentUrl={attachmentUrl}\n attachmentFileName={props.fileName}\n attachmentSize={props.attachmentSize}\n displayName={props.displayName}\n openPreview={openPreview}\n closePreview={closePreview}\n previewIsOpen={isPreviewOpen}\n classes={props.classes}\n small={props.small}\n />\n </div>\n );\n}\n\nAttachment.propTypes = {\n attachmentUrl: PropTypes.string.isRequired,\n attachmentSize: PropTypes.number,\n displayName: PropTypes.string,\n fileName: PropTypes.string,\n size: PropTypes.oneOf([SIZES.small.label, SIZES.medium.label]),\n classes: PropTypes.shape({}).isRequired,\n small: PropTypes.bool,\n};\n\nexport default withStyles(muiStyles)(Attachment);\n"],"names":["grey200","grey","grey400","SIZES","label","value","style","fileImage","imageIsLoaded","size","maxWidth","borderRadius","overflow","maxHeight","display","cursor","fileDownloadWrapper","padding","border","width","imagePlaceholder","position","backgroundColor","marginTop","height","ImageAttachment","props","_props$imageDimension","_props$imageDimension2","downloadLink","useSignedURL","attachmentFileName","attachmentUrl","_jsxs","_Fragment","children","jsxs","onClick","openLightbox","className","styles","cAttachmentImg","_jsx","jsx","concat","src","imageDimensions","alt","onLoad","onImageLoaded","cAttachmentImgPreviwBtn","FullSizeIcon","ImageIcon","classes","imageIconRoot","htmlColor","fontSize","lightboxIsOpen","ImageViewer","onClose","handleLightboxClose","onOpen","handleLightboxOpen","FileAttachment","fileName","utils","getFileNameWithExtensionFromPath","displayName","previewUrl","downloadUrl","isPreviewUnavailable","getIsPreviewUnavailable","cAttachmentFileWrapper","classNames","cAttachmentFileDownloadWrapper","disabledPreview","openPreview","UnavailableFileIcon","unavailableFileIcon","FileTypeIcon","cAttachmentFileDownloadWrapperFileIcon","small","titleContainer","caption","cAttachmentFileDownloadWrapperFileName","Typography","variant","noWrap","unavailableFileName","NewDocumentViewer","fileUrl","root","dialogRoot","paper","isNativeDetected","nativeDialog","dialog","fileSize","attachmentSize","closePreview","open","previewIsOpen","download","href","cAttachmentFileDownloadWrapperForm","IconButton","downloadIcon","type","DownloadIcon","Attachment","rawProps","_rawProps$displayName","_rawProps$fileName","_rawProps$attachmentS","undefined","_rawProps$size","_rawProps$small","_excluded","useState","_useState2","_slicedToArray","_useState","setImageDimensions","_useState4","_useState3","isLightboxOpen","setIsLightboxOpen","_useState6","_useState5","isPreviewOpen","setIsPreviewOpen","isImage","getIsImage","isVideo","getIsVideo","preventIOSScroll","useCallback","e","preventDefault","document","documentElement","addEventListener","passive","removeEventListener","currentTarget","naturalWidth","naturalHeight","stopPropagation","cAttachment","ReactPlayer","canPlay","cAttachmentReactPlayer","url","config","file","attributes","preload","controls","propTypes","PropTypes","string","isRequired","number","oneOf","shape","bool","Attachment$1","withStyles","theme","top","left","transform","margin","whiteSpace","textOverflow","fontWeight","color","palette","primary","text3","text9","marginRight","minWidth","flexDirection"],"mappings":"w+OAyBA,IAEMA,EAAUC,EAAAA,QAAK,KACfC,EAAUD,EAAAA,QAAK,KAEfE,EACG,CAAEC,MAAO,QAASC,MAAO,KAD5BF,EAEI,CAAEC,MAAO,SAAUC,MAAO,KAG9BC,EAAQ,CACZC,UAAW,SAACC,EAAeC,GAAI,MAAM,CACnCC,SAAU,OACVC,aAAc,EACdC,SAAU,SAGVC,UAAWJ,IAASN,EAAYC,MAAQD,EAAYE,MAAQF,EAAaE,MACzES,QAASN,EAAgB,UAAY,OACrCO,OAAQ,UACR,EACFC,oBAAqB,CACnBC,QAAS,qBACTC,OAA2B,oBAC3BP,aAAc,EACdD,SAAU,IACVS,MAAO,OAETC,iBAAkB,CAChBC,SAAU,WACVC,gBAAiBtB,EACjBW,aAAc,EACdY,UAAW,GACXC,OAAQ,IACRL,MAAO,MA6DLM,EAAkB,SAAAC,GAAS,IAAAC,EAAAC,EACzBC,EAAeC,EAAaJ,EAAMK,qBAAuBL,EAAMM,cAErE,OACEC,EAAAA,KAAAC,EAAAA,SAAA,CAAAC,SACE,CAAAF,EAAAG,KAAA,MAAA,CAAKC,QAASX,EAAMY,aAAcC,UAAWC,EAAOC,eAAeN,SACjE,CAAAO,EAAAC,IAAA,MAAA,CACE,cAAA,GAAAC,OAtGQ,aAsG0B,UAClCC,IAAKhB,EACLvB,MAAOA,EAAMC,YAAYmB,EAAMoB,gBAAiBpB,EAAMjB,MACtDsC,IAAI,aACJC,OAAQtB,EAAMuB,gBAEhBP,EAAAC,IAAA,MAAA,CAAK,cAAA,GAAAC,OA5GK,aA4G8B,WAACL,UAAWC,EAAOU,wBAAwBf,SACjFO,EAAAA,IAACS,EAAY,QAAA,UAIfzB,EAAMoB,iBACNJ,EAAAA,IAAA,MAAA,CAAKpC,MAAOA,EAAMc,iBAAiBe,SACjCO,MAACU,UAAS,CACR,cAAA,GAAAR,OApHM,aAoHkC,gBACxCL,UAAWb,EAAM2B,QAAQC,cACzBC,UAAWrD,EACXsD,SAAS,YAKd9B,EAAM+B,gBACLf,EAAAA,IAACgB,EAAAA,YAAW,CACVb,IAAKhB,EACL8B,QAASjC,EAAMkC,oBACfC,OAAQnC,EAAMoC,mBACd3C,MAA4B,UAArBO,EAAMoB,uBAAe,IAAAnB,OAAA,EAArBA,EAAuBR,MAC9BK,eAAQE,EAAAA,EAAMoB,oCAANlB,EAAuBJ,WAKzC,EAEMuC,EAAiB,SAAArC,GACrB,IAAMsC,EAAWC,EAAAA,QAAMC,iCAAiCxC,EAAMyC,aAAezC,EAAMM,eAE7EoC,EAAatC,EAAaJ,EAAMK,mBAAoB,UACpDsC,EAAcvC,EAAaJ,EAAMK,mBAAoB,cAErDuC,EAAuBC,0BAAwBP,GAOrD,OACE/B,EAAAA,KAAA,MAAA,CAAKM,UAAWC,EAAOgC,uBAAuBrC,SAC5C,CAAAF,EAAAG,KAAA,MAAA,CACEG,UAAWkC,EAAU,QACnBjC,EAAOkC,+BACPJ,GAAwB5C,EAAM2B,QAAQsB,iBAExCrE,MAAOA,EAAMU,oBACbqB,QAbwB,WACxBiC,GACJ5C,EAAMkD,eAW6BzC,SAE9BmC,CAAAA,EACC5B,EAAAC,IAACkC,sBAAmB,CAACtC,UAAWb,EAAM2B,QAAQyB,sBAE9CpC,MAACqC,EAAY,CACXf,SAAUtC,EAAMyC,aAAezC,EAAMM,cACrCO,UAAWC,EAAOwC,uCAClBvE,KAAMiB,EAAMuD,MAAQ,GAAK,KAG7BhD,EAAAG,KAAA,MAAA,CAAKG,UAAWb,EAAM2B,QAAQ6B,eAAe/C,SAAA,CAC1CmC,GAAwB5B,EAAAC,IAAA,MAAA,CAAKJ,UAAWb,EAAM2B,QAAQ8B,QAAQhD,SAAA,wBAC/DO,EAAAC,IAAA,MAAA,CACE,cAAA,GAAAC,OA5KM,aA4K2B,SACjCL,UAAWkC,EAAU,QACnBjC,EAAO4C,uCACPd,GAAwB5C,EAAM2B,QAAQW,UACtC7B,SAEFO,MAAC2C,aAAU,CAACC,QAAQ,YAAYC,QAAM,EAAChD,UAAWb,EAAM2B,QAAQmC,oBAAoBrD,SACjF6B,SAIPtB,MAAC+C,EAAiB,CAChBC,QAAStB,EACTf,QAAS,CACPsC,KAAMjE,EAAM2B,QAAQuC,WACpBC,MAAOC,EAAgBA,iBAAGpE,EAAM2B,QAAQ0C,aAAerE,EAAM2B,QAAQ2C,QAEvEhC,SAAUA,EACViC,SAAUvE,EAAMwE,eAChBvC,QAASjC,EAAMyE,aACfC,KAAM1E,EAAM2E,mBAGhB3D,EAAAC,IAAA,IAAA,CACE2D,SAAU5E,EAAMyC,YAChBoC,KAAMlC,EACN9B,UAAWC,EAAOgE,mCAAmCrE,SAErDO,MAAC+D,EAAU,CACT,cAAA,GAAA7D,OAzMQ,aAyMmC,mBAC3CL,UAAWb,EAAM2B,QAAQqD,aACzBC,KAAK,SAAQxE,SAEbO,MAACkE,eAAY,CAACnG,KAAM,GAAI8B,UAAWb,EAAM2B,QAAQqD,qBAK3D,EAIA,SAASG,EAAWC,GAClB,IAOIA,EAAAA,EANF3C,YAAAA,aAAc,KAAI4C,EAAAC,EAMhBF,EALF9C,SAAUjC,aAAqB,KAAIiF,EAAAC,EAKjCH,EAJFZ,eAAAA,kBAAiBgB,EAASD,EAAAE,EAIxBL,EAHFrG,KAAAA,OAAON,IAAAA,EAAAA,EAAaC,MAAK+G,EAAAC,EAGvBN,EAFF7B,MAAAA,cAAamC,EAGT1F,mBADFoF,EAAQO,IAEG,GAAA,CACblD,YAAAA,EACAH,SAAUjC,EACVmE,eAAAA,EACAzF,KAAAA,EACAwE,MAAAA,IAG4CqC,EAAAA,EAAQA,cAACJ,GAAUK,EAAAC,EAAAA,QAAAC,EAAA,GAA1D3E,EAAeyE,EAAA,GAAEG,EAAkBH,EAAA,GACED,EAAAA,EAAQA,UAAC,GAAMK,EAAAH,EAAAA,QAAAI,EAAA,GAApDC,EAAcF,EAAA,GAAEG,EAAiBH,EAAA,GACEL,EAAAA,EAAQA,UAAC,GAAMS,EAAAP,EAAAA,QAAAQ,EAAA,GAAlDC,EAAaF,EAAA,GAAEG,EAAgBH,EAAA,GAEhC/D,EAAWtC,EAAMyC,aAAezC,EAAMM,eAAiBN,EAAMsC,SAC7DmE,EAAUC,aAAWpE,GACrBqE,EAAUC,aAAWtE,GAGrBnC,EAAeC,GAAcJ,EAAMM,eAAiBN,EAAMsC,UAC1DhC,EAAgBN,EAAMM,eAAiBH,EACvC0G,EAAmBC,eAAY,SAAAC,GAAC,OAAIA,EAAEC,gBAAgB,GAAE,IAIxD5E,EAAqB0E,EAAAA,aAAY,WACjC1C,oBAEF6C,SAASC,gBAAgBC,iBAAiB,YAAaN,EAAkB,CACvEO,SAAS,GAGf,GAAG,CAACP,IAEE3E,EAAsB4E,EAAAA,aAAY,WAClC1C,oBAEF6C,SAASC,gBAAgBG,oBAAoB,YAAaR,GAE5DT,GAAkB,EACpB,GAAG,CAACS,IAEEjG,EAAekG,EAAAA,aAAY,WAAA,OAAMV,GAAkB,EAAK,GAAE,IAC1D7E,EAAgBuF,eAAY,SAAAC,GAChC,IAAwCA,EAAAA,EAAEO,cAAlCC,IAAAA,aAAcC,IAAAA,cACtBxB,EAAmB,CAAEvG,MAAO8H,EAAczH,OAAQ0H,GACnD,GAAE,IACGtE,EAAc4D,EAAAA,aAAY,WAAA,OAAMN,GAAiB,EAAK,GAAE,IACxD/B,EAAeqC,eAAY,SAAAC,GAC/BA,EAAEU,kBACFjB,GAAiB,EAClB,GAAE,IAEH,OAAIC,EAEAzF,EAAAC,IAAA,MAAA,CAAKJ,UAAWC,EAAO4G,YAAYjH,SACjCO,MAACjB,EAAe,CACdhB,KAAMiB,EAAMjB,KACZ6B,aAAcA,EACdP,mBAAoBL,EAAMsC,SAC1BhC,cAAeN,EAAMM,cACrBiB,cAAeA,EACfH,gBAAiBA,EACjBW,eAAgBoE,EAChB/D,mBAAoBA,EACpBF,oBAAqBA,EACrBP,QAAS3B,EAAM2B,YAKnBgF,GAAWgB,EAAAA,QAAYC,QAAQtH,GAE/BU,EAAAC,IAAA,MAAA,CAAKJ,UAAWC,EAAO4G,YAAYjH,SACjCO,MAAC2G,UAAW,CACV,cAAA,GAAAzG,OAzSQ,aAyS2B,WACnCL,UAAWC,EAAO+G,uBAClBC,IAAKxH,EACLyH,OAAQ,CAAEC,KAAM,CAAEC,WAAY,CAAEC,QAAS,cACzCC,UAAQ,EACRrI,OAAQE,EAAMjB,OAASN,EAAYC,MAAQD,EAAYE,MAAQF,EAAaE,MAC5Ec,MAAO,SAMbuB,EAAAA,IAAA,MAAA,CAAKH,UAAWC,EAAO4G,YAAYjH,SACjCO,MAACqB,EAAc,CACb/B,cAAeA,EACfD,mBAAoBL,EAAMsC,SAC1BkC,eAAgBxE,EAAMwE,eACtB/B,YAAazC,EAAMyC,YACnBS,YAAaA,EACbuB,aAAcA,EACdE,cAAe4B,EACf5E,QAAS3B,EAAM2B,QACf4B,MAAOvD,EAAMuD,SAIrB,CAEA4B,EAAWiD,UAAY,CACrB9H,cAAe+H,EAAAA,QAAUC,OAAOC,WAChC/D,eAAgB6D,EAAS,QAACG,OAC1B/F,YAAa4F,EAAS,QAACC,OACvBhG,SAAU+F,EAAS,QAACC,OACpBvJ,KAAMsJ,EAAAA,QAAUI,MAAM,CAAChK,EAAYC,MAAOD,EAAaC,QACvDiD,QAAS0G,EAAS,QAACK,MAAM,CAAA,GAAIH,WAC7BhF,MAAO8E,EAAS,QAACM,MAGnB,IAAAC,EAAeC,cAzSG,SAAAC,GAAK,MAAK,CAC1BlH,cAAe,CACbjC,SAAU,WACVoJ,IAAK,MACLC,KAAM,MACNC,UAAW,yBAEb3E,OAAQ,CACN7E,MAAO,MACPK,OAAQ,MACRd,SAAU,OACVW,SAAU,YAEZ0E,aAAc,CACZ5E,MAAO,OACPK,OAAQ,OACRd,SAAU,OACVG,UAAW,OACX+J,OAAQ,GAEVhF,WAAY,CAEVtE,gBAAiB,uBAEnB0C,SAAU,CACRpD,SAAU,SACViK,WAAY,SACZC,aAAc,WACdC,WAAY,KAEdrE,aAAc,CACZsE,MAAOR,EAAMS,QAAQC,QAAQC,OAE/BxG,gBAAiB,CACfrD,gBAAiBkJ,EAAMS,QAAQC,QAAQE,OAEzCtG,oBAAqB,CACnBuG,YAAa,GACbC,SAAU,IAEZpG,eAAgB,CACdpE,QAAS,OACTyK,cAAe,SACfpK,MAAO,QAETgE,QAAS,CACP3B,SAAU,GACVuH,WAAY,IACZ5J,MAAO,eAETqE,oBAAqB,CACnBhC,SAAU,GACVuH,WAAY,KAEf,GAmPcR,CAAsB1D"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/Attachment/index.js"],"sourcesContent":["import { useCallback, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactPlayer from 'react-player';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Typography } from '@material-ui/core';\nimport ImageIcon from '@material-ui/icons/Image';\nimport FullSizeIcon from '@material-ui/icons/Fullscreen';\nimport grey from '@material-ui/core/colors/grey';\n\nimport { NewDocumentViewer } from '../NewDocumentViewer';\nimport { UnavailableFileIcon } from '../NewDocumentViewer/icons/UnavailableFileIcon';\nimport { ImageViewer } from '../../componentsV2/ImageViewer';\n\nimport styles from './styles.css';\n\nimport FileTypeIcon from '~components/FileTypeIcon';\nimport IconButton from '~components/IconButton';\nimport { isNativeDetected } from '~/utils/mobileDetect';\nimport { getIsImage, getIsVideo } from '~/utils/fileExtension';\nimport { getIsPreviewUnavailable } from '~/utils/filePreview';\nimport { DownloadIcon } from '~/icons';\nimport { useSignedURL } from '~/effects';\nimport utils from '~utils/main';\n\nconst PAGE_NAME = 'Attachment';\n\nconst grey200 = grey[200];\nconst grey400 = grey[400];\n\nconst SIZES = {\n small: { label: 'small', value: 135 },\n medium: { label: 'medium', value: 300 },\n};\n\nconst style = {\n fileImage: (imageIsLoaded, size) => ({\n maxWidth: '100%',\n borderRadius: 4,\n overflow: 'hidden',\n // NOTE: Makes one-line comment with image fits into comments container. Equals to\n // imagePlaceholder height\n maxHeight: size === SIZES.small.label ? SIZES.small.value : SIZES.medium.value,\n display: imageIsLoaded ? 'initial' : 'none',\n cursor: 'pointer',\n }),\n fileDownloadWrapper: {\n padding: '10px 10px 10px 5px',\n border: `1px solid #616161`,\n borderRadius: 3,\n maxWidth: 500, // NOTE: Corresponds to react-player max width\n width: '75%',\n },\n imagePlaceholder: {\n position: 'relative',\n backgroundColor: grey200,\n borderRadius: 3,\n marginTop: 10,\n height: 135,\n width: 135,\n },\n};\n\nconst muiStyles = theme => ({\n imageIconRoot: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n },\n dialog: {\n width: '95%',\n height: '95%',\n maxWidth: '100%',\n position: 'relative',\n },\n nativeDialog: {\n width: '100%',\n height: '100%',\n maxWidth: '100%',\n maxHeight: '100%',\n margin: 0,\n },\n dialogRoot: {\n // NOTE: Make background color similar to lightbox\n backgroundColor: 'rgba(0, 0, 0, 0.85)',\n },\n fileName: {\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n fontWeight: 400,\n },\n downloadIcon: {\n color: theme.palette.primary.text3,\n },\n disabledPreview: {\n backgroundColor: theme.palette.primary.text9,\n },\n unavailableFileIcon: {\n marginRight: 12,\n minWidth: 32,\n },\n titleContainer: {\n display: 'flex',\n flexDirection: 'column',\n width: '100%',\n },\n caption: {\n fontSize: 12,\n fontWeight: 400,\n width: 'fit-content',\n },\n unavailableFileName: {\n fontSize: 12,\n fontWeight: 400,\n },\n});\n\n/* eslint-disable react/prop-types */\nconst ImageAttachment = props => {\n const downloadLink = useSignedURL(props.attachmentFileName) || props.attachmentUrl;\n\n return (\n <>\n <div onClick={props.openLightbox} className={styles.cAttachmentImg}>\n <img\n data-testid={`${PAGE_NAME}_image`}\n src={downloadLink}\n style={style.fileImage(!!props.imageDimensions, props.size)}\n alt=\"Attachment\"\n onLoad={props.onImageLoaded}\n />\n <div data-testid={`${PAGE_NAME}_button`} className={styles.cAttachmentImgPreviwBtn}>\n <FullSizeIcon />\n </div>\n </div>\n\n {!props.imageDimensions && (\n <div style={style.imagePlaceholder}>\n <ImageIcon\n data-testid={`${PAGE_NAME}_placeholder`}\n className={props.classes.imageIconRoot}\n htmlColor={grey400}\n fontSize=\"large\"\n />\n </div>\n )}\n\n {props.lightboxIsOpen && (\n <ImageViewer\n src={downloadLink}\n onClose={props.handleLightboxClose}\n onOpen={props.handleLightboxOpen}\n width={props.imageDimensions?.width}\n height={props.imageDimensions?.height}\n />\n )}\n </>\n );\n};\n\nconst FileAttachment = props => {\n const fileName = utils.getFileNameWithExtensionFromPath(props.displayName || props.attachmentUrl);\n\n const previewUrl = useSignedURL(props.attachmentFileName, 'inline');\n const downloadUrl = useSignedURL(props.attachmentFileName, 'attachment');\n\n const isPreviewUnavailable = getIsPreviewUnavailable(fileName);\n\n const handleFilePreviewOpen = () => {\n if (isPreviewUnavailable) return;\n props.openPreview();\n };\n\n return (\n <div className={styles.cAttachmentFileWrapper}>\n <div\n className={classNames(\n styles.cAttachmentFileDownloadWrapper,\n isPreviewUnavailable && props.classes.disabledPreview\n )}\n style={style.fileDownloadWrapper}\n onClick={handleFilePreviewOpen}\n >\n {isPreviewUnavailable ? (\n <UnavailableFileIcon className={props.classes.unavailableFileIcon} />\n ) : (\n <FileTypeIcon\n fileName={props.displayName || props.attachmentUrl}\n className={styles.cAttachmentFileDownloadWrapperFileIcon}\n size={props.small ? 25 : 50}\n />\n )}\n <div className={props.classes.titleContainer}>\n {isPreviewUnavailable && <div className={props.classes.caption}>Preview unavailable</div>}\n <div\n data-testid={`${PAGE_NAME}_name`}\n className={classNames(\n styles.cAttachmentFileDownloadWrapperFileName,\n isPreviewUnavailable && props.classes.fileName\n )}\n >\n <Typography variant=\"subtitle2\" noWrap className={props.classes.unavailableFileName}>\n {fileName}\n </Typography>\n </div>\n </div>\n <NewDocumentViewer\n fileUrl={previewUrl}\n classes={{\n root: props.classes.dialogRoot,\n paper: isNativeDetected ? props.classes.nativeDialog : props.classes.dialog,\n }}\n fileName={fileName}\n fileSize={props.attachmentSize}\n onClose={props.closePreview}\n open={props.previewIsOpen}\n />\n </div>\n <a\n download={props.displayName}\n href={downloadUrl}\n className={styles.cAttachmentFileDownloadWrapperForm}\n >\n <IconButton\n data-testid={`${PAGE_NAME}_downloadButton`}\n className={props.classes.downloadIcon}\n type=\"submit\"\n >\n <DownloadIcon size={24} className={props.classes.downloadIcon} />\n </IconButton>\n </a>\n </div>\n );\n};\n\n/* eslint-enable react/prop-types */\n\nfunction Attachment(rawProps) {\n const {\n displayName = null,\n fileName: attachmentFileName = null,\n attachmentSize = undefined,\n size = SIZES.medium.label,\n small = false,\n ...otherProps\n } = rawProps;\n const props = {\n ...otherProps,\n displayName,\n fileName: attachmentFileName,\n attachmentSize,\n size,\n small,\n };\n\n const [imageDimensions, setImageDimensions] = useState(undefined);\n const [isLightboxOpen, setIsLightboxOpen] = useState(false);\n const [isPreviewOpen, setIsPreviewOpen] = useState(false);\n\n const fileName = props.displayName || props.attachmentUrl || props.fileName;\n const isImage = getIsImage(fileName);\n const isVideo = getIsVideo(fileName);\n\n // Don't fetch download link if attachmentUrl is provided\n const downloadLink = useSignedURL(!props.attachmentUrl && props.fileName);\n const attachmentUrl = props.attachmentUrl || downloadLink;\n const preventIOSScroll = useCallback(e => e.preventDefault(), []);\n\n // NOTE: iOS WebView has a bug when background content of React Modal is scrollable\n // Source: https://github.com/reactjs/react-modal/issues/369\n const handleLightboxOpen = useCallback(() => {\n if (isNativeDetected) {\n // document.documentElement.style.overflowY = 'hidden';\n document.documentElement.addEventListener('touchmove', preventIOSScroll, {\n passive: false,\n });\n }\n }, [preventIOSScroll]);\n\n const handleLightboxClose = useCallback(() => {\n if (isNativeDetected) {\n // document.documentElement.style.overflowY = 'visible';\n document.documentElement.removeEventListener('touchmove', preventIOSScroll);\n }\n setIsLightboxOpen(false);\n }, [preventIOSScroll]);\n\n const openLightbox = useCallback(() => setIsLightboxOpen(true), []);\n const onImageLoaded = useCallback(e => {\n const { naturalWidth, naturalHeight } = e.currentTarget;\n setImageDimensions({ width: naturalWidth, height: naturalHeight });\n }, []);\n const openPreview = useCallback(() => setIsPreviewOpen(true), []);\n const closePreview = useCallback(e => {\n e.stopPropagation();\n setIsPreviewOpen(false);\n }, []);\n\n if (isImage)\n return (\n <div className={styles.cAttachment}>\n <ImageAttachment\n size={props.size}\n openLightbox={openLightbox}\n attachmentFileName={props.fileName}\n attachmentUrl={props.attachmentUrl}\n onImageLoaded={onImageLoaded}\n imageDimensions={imageDimensions}\n lightboxIsOpen={isLightboxOpen}\n handleLightboxOpen={handleLightboxOpen}\n handleLightboxClose={handleLightboxClose}\n classes={props.classes}\n />\n </div>\n );\n\n if (isVideo && ReactPlayer.canPlay(attachmentUrl))\n return (\n <div className={styles.cAttachment}>\n <ReactPlayer\n data-testid={`${PAGE_NAME}_player`}\n className={styles.cAttachmentReactPlayer}\n url={attachmentUrl}\n config={{ file: { attributes: { preload: 'metadata' } } }}\n controls\n height={props.size === SIZES.small.label ? SIZES.small.value : SIZES.medium.value}\n width={null}\n />\n </div>\n );\n\n return (\n <div className={styles.cAttachment}>\n <FileAttachment\n attachmentUrl={attachmentUrl}\n attachmentFileName={props.fileName}\n attachmentSize={props.attachmentSize}\n displayName={props.displayName}\n openPreview={openPreview}\n closePreview={closePreview}\n previewIsOpen={isPreviewOpen}\n classes={props.classes}\n small={props.small}\n />\n </div>\n );\n}\n\nAttachment.propTypes = {\n attachmentUrl: PropTypes.string.isRequired,\n attachmentSize: PropTypes.number,\n displayName: PropTypes.string,\n fileName: PropTypes.string,\n size: PropTypes.oneOf([SIZES.small.label, SIZES.medium.label]),\n classes: PropTypes.shape({}).isRequired,\n small: PropTypes.bool,\n};\n\nexport default withStyles(muiStyles)(Attachment);\n"],"names":["grey200","grey","grey400","SIZES","label","value","style","fileImage","imageIsLoaded","size","maxWidth","borderRadius","overflow","maxHeight","display","cursor","fileDownloadWrapper","padding","border","width","imagePlaceholder","position","backgroundColor","marginTop","height","ImageAttachment","props","_props$imageDimension","_props$imageDimension2","downloadLink","useSignedURL","attachmentFileName","attachmentUrl","_jsxs","_Fragment","children","jsxs","onClick","openLightbox","className","styles","cAttachmentImg","_jsx","jsx","concat","src","imageDimensions","alt","onLoad","onImageLoaded","cAttachmentImgPreviwBtn","FullSizeIcon","ImageIcon","classes","imageIconRoot","htmlColor","fontSize","lightboxIsOpen","ImageViewer","onClose","handleLightboxClose","onOpen","handleLightboxOpen","FileAttachment","fileName","utils","getFileNameWithExtensionFromPath","displayName","previewUrl","downloadUrl","isPreviewUnavailable","getIsPreviewUnavailable","cAttachmentFileWrapper","classNames","cAttachmentFileDownloadWrapper","disabledPreview","openPreview","UnavailableFileIcon","unavailableFileIcon","FileTypeIcon","cAttachmentFileDownloadWrapperFileIcon","small","titleContainer","caption","cAttachmentFileDownloadWrapperFileName","Typography","variant","noWrap","unavailableFileName","NewDocumentViewer","fileUrl","root","dialogRoot","paper","isNativeDetected","nativeDialog","dialog","fileSize","attachmentSize","closePreview","open","previewIsOpen","download","href","cAttachmentFileDownloadWrapperForm","IconButton","downloadIcon","type","DownloadIcon","Attachment","rawProps","_rawProps$displayName","_rawProps$fileName","_rawProps$attachmentS","undefined","_rawProps$size","_rawProps$small","_excluded","useState","_useState2","_slicedToArray","_useState","setImageDimensions","_useState4","_useState3","isLightboxOpen","setIsLightboxOpen","_useState6","_useState5","isPreviewOpen","setIsPreviewOpen","isImage","getIsImage","isVideo","getIsVideo","preventIOSScroll","useCallback","e","preventDefault","document","documentElement","addEventListener","passive","removeEventListener","currentTarget","naturalWidth","naturalHeight","stopPropagation","cAttachment","ReactPlayer","canPlay","cAttachmentReactPlayer","url","config","file","attributes","preload","controls","propTypes","PropTypes","string","isRequired","number","oneOf","shape","bool","Attachment$1","withStyles","theme","top","left","transform","margin","whiteSpace","textOverflow","fontWeight","color","palette","primary","text3","text9","marginRight","minWidth","flexDirection"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("@babel/runtime/helpers/slicedToArray"),r=require("react"),t=require("prop-types"),u=require("lodash"),
|
|
1
|
+
"use strict";var e=require("@babel/runtime/helpers/slicedToArray"),r=require("react"),t=require("prop-types"),u=require("lodash"),s=require("./Map.css.js");require("../../../UserMention/utils/index.js"),require("@babel/runtime/helpers/defineProperty"),require("../../../../utils/convert.js"),require("../../../../constants/completion.js"),require("moment"),require("../../../../constants/alerts.js"),require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/regenerator"),require("../../../../utils/casing/validation.js"),require("lodash/mean"),require("../../../../constants/streamSourceType.js"),require("lodash/get"),require("file-saver"),require("query-string"),require("../../../../constants/goals.js"),require("../../../../constants/segment.js"),require("../../../../constants/apps.js"),require("../../../../constants/drillstring.js"),require("../../../../constants/appPackages.js"),require("../../../../constants/notifications.js"),require("../../../../constants/feed.js"),require("../../../../constants/bha.js"),require("../../../../constants/corvaCompanyId.js"),require("../../../GradientManager/configuration/constants.js"),require("../../../../utils/drillstring/conversion.js"),require("lodash/set"),require("lodash/cloneDeep"),require("@babel/runtime/helpers/toConsumableArray"),require("lodash/isNumber"),require("lodash/has"),require("../../../../utils/ga.js"),require("../../../../utils/goalsConfig/goalsConfig.js"),require("../../../../utils/lasParser.js"),require("../../../../utils/main.js");var i=require("../../../../utils/mapbox.js");require("../../../../utils/metrics/metricsConfig.js"),require("../../../../utils/mobileDetect.js"),require("../../../../utils/feed.js"),require("../../../../utils/reports.js"),require("moment-timezone"),require("@babel/runtime/helpers/typeof"),require("../../../../utils/dashboardReports.js"),require("../../../../utils/env.js"),require("file-extension"),require("image-extensions"),require("video-extensions"),require("../../../../utils/jsonaDataFormatter.js"),require("../../../../utils/bha.js"),require("jsona"),require("../../../../clients/jsonApi/index.js"),require("@babel/runtime/helpers/objectWithoutProperties"),require("classnames"),require("../../../../utils/charts/Styles.scss.js"),require("../../../../utils/getSingleAsset.js");var n=require("../../../../utils/createAdaptiveRoot.js");require("../../../../config/mapboxGl/index.js");var a=require("../../../../config/mapbox/index.js");require("mapbox-gl/dist/mapbox-gl.css");var o=require("react/jsx-runtime"),l=require("mapbox-gl");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=c(e),f=c(t),p=c(l),m=[29.749907,-95.358421],q="wells-highlight",g={type:"FeatureCollection",features:[]},v=function(e){var r=d.default(e,2),t=r[0];return[r[1],t]};function j(e){var t=e.subjectWell,l=void 0===t?null:t,c=e.wells,f=e.offsetWells,j=void 0===f?null:f,b=e.radius,x=e.subjectWellMarkerSize,w=void 0===x?y:x,S=e.wellMarkerSize,C=void 0===S?h:S,M=e.coordsDataPath,D=void 0===M?"settings.top_hole.coordinates":M,P=r.useRef(null),R=r.useRef(null),F=r.useRef(null),A=r.useRef(null),E=r.useRef(null),L=r.useRef(null),W=r.useRef(),k=r.useState(!1),z=d.default(k,2),B=z[0],I=z[1],T=r.useMemo((function(){return l&&u.get(l,D)}),[l,D]);r.useEffect((function(){if(a.IS_MAPBOX_ENABLED){R.current=new p.default.Map({container:P.current,style:"mapbox://styles/mapbox/dark-v9",center:v(m),zoom:1,attributionControl:!1,scrollZoom:!1}),R.current.addControl(new p.default.NavigationControl({showCompass:!1}),"bottom-right"),R.current.on("load",(function(){R.current.addSource("radius-circle",{type:"geojson",data:g}),R.current.addLayer({id:"radius-circle",type:"fill",source:"radius-circle",paint:{"fill-color":"#03BCD4","fill-opacity":.2}}),R.current.addSource("wells",{type:"geojson",data:g}),R.current.addLayer({id:"wells",type:"circle",source:"wells",paint:{"circle-radius":["get","radius"],"circle-color":"#FFC107","circle-opacity":["get","opacity"]}}),R.current.addSource(q,{type:"geojson",data:g}),R.current.addLayer({id:q,type:"circle",source:q,paint:{"circle-radius":["get","radius"],"circle-color":"#FFC107","circle-opacity":.2}}),I(!0)}));var e=R.current;return function(){var r;null===(r=E.current)||void 0===r||r.unmount(),E.current=null,L.current=null,e.remove(),R.current=null,F.current=null}}}),[]),r.useEffect((function(){if(R.current&&B)if(T){var e=function(e,r){for(var t=d.default(e,2),u=t[0],s=t[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:64,n=[],a=r/(111320*Math.cos(u*Math.PI/180)),o=r/110574,l=0;l<=i;l+=1){var c=l/i*(2*Math.PI);n.push([s+a*Math.cos(c),u+o*Math.sin(c)])}return n}(T,1609.34*b);R.current.getSource("radius-circle").setData({type:"Feature",geometry:{type:"Polygon",coordinates:[e]}})}else R.current.getSource("radius-circle").setData(g)}),[b,T,B]);return r.useEffect((function(){var e;if(R.current&&B){var t=W.current;W.current=c,null===(e=A.current)||void 0===e||e.remove(),R.current.getSource(q).setData(g);var s=j.map((function(e){return e.id})),a=[],d={},f=new p.default.LngLatBounds;c.forEach((function(e){var r=u.get(e,D);if(r&&i.isValidCoordinates(r)){var t=l&&l.id===e.id,n=s.includes(e.id),o=t?w:C,c=t||n?1:.3;d[e.id]=e,f.extend(v(r)),a.push({type:"Feature",geometry:{type:"Point",coordinates:v(r)},properties:{wellId:e.id,radius:o,opacity:c}})}})),R.current.getSource("wells").setData({type:"FeatureCollection",features:a}),F.current=a.length?f:null;var m=R.current,y=null,h=function(e){m.getCanvas().style.cursor="pointer";var t=d[e.features[0].properties.wellId];if(t&&t.id!==y){y=t.id;var s=u.get(t,D);L.current||(L.current=document.createElement("div"),E.current=n.createAdaptiveRoot(L.current)),E.current.render(r.createElement((function(e){var r=e.well;return o.jsx("div",{style:{color:"#fff",background:"##414141"},children:o.jsx("span",{style:{fontSize:"11px",lineHeight:"16px"},children:u.get(r,"name")})})}),{well:t})),A.current||(A.current=new p.default.Popup({closeButton:!1,maxWidth:"none"})),A.current.setLngLat(v(s)).setDOMContent(L.current).addTo(m),function(e,r){R.current.getSource(q).setData({type:"Feature",geometry:{type:"Point",coordinates:v(e)},properties:{radius:3*r}})}(s,e.features[0].properties.radius)}},b=function(){var e;y=null,m.getCanvas().style.cursor="",m.getSource(q).setData(g),null===(e=A.current)||void 0===e||e.remove()},x=function(e){null!=e&&e.point&&m.queryRenderedFeatures(e.point,{layers:[q]}).length||b()};return m.on("mousemove","wells",h),m.on("mouseleave","wells",x),m.on("mouseleave",q,b),setTimeout((function(){R.current&&F.current&&c!==t&&R.current.fitBounds(F.current)}),500),function(){m.off("mousemove","wells",h),m.off("mouseleave","wells",x),m.off("mouseleave",q,b)}}}),[l,c,j,B]),o.jsx("div",{className:s.map,children:o.jsx("div",{className:s.mapMain,ref:P})})}j.propTypes={subjectWell:f.default.shape({id:f.default.number,formation:f.default.string}),wells:f.default.arrayOf(f.default.shape({})).isRequired,offsetWells:f.default.arrayOf(f.default.shape({})),radius:f.default.number.isRequired,subjectWellMarkerSize:f.default.number,wellMarkerSize:f.default.number,coordsDataPath:f.default.string};var y=8,h=5,b=r.memo(j);module.exports=b;
|
|
2
2
|
//# sourceMappingURL=Map.js.map
|