@corva/ui 3.57.0-0 → 3.57.0-2
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/cjs-bundle/clients/api/constants.js +1 -1
- package/cjs-bundle/clients/api/rateLimiter.js +1 -1
- package/cjs-bundle/clients/index.js +1 -1
- package/cjs-bundle/clients/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/AssetEditor/effects/index.js +1 -1
- package/cjs-bundle/components/AssetEditor/effects/index.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/effects/index.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/effects/index.js.map +1 -1
- package/cjs-bundle/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js +1 -1
- package/cjs-bundle/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js.map +1 -1
- package/cjs-bundle/components/Attachment/index.js +1 -1
- package/cjs-bundle/components/Attachment/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/CommentsSwitch/CommentsSwitchButton.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus/NonPriorityMenus.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/PriorityMenus/PriorityMenus.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/PriorityMenus/PriorityMenus.js.map +1 -1
- package/cjs-bundle/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.js +1 -1
- package/cjs-bundle/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.js.map +1 -1
- package/cjs-bundle/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js +1 -1
- package/cjs-bundle/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.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/FeedItem/FeedItem.js +1 -1
- package/cjs-bundle/components/FeedItem/FeedItem.js.map +1 -1
- package/cjs-bundle/components/FeedItem/components/FeedComments.js +1 -1
- package/cjs-bundle/components/FeedItem/components/FeedComments.js.map +1 -1
- package/cjs-bundle/components/ImageViewer/index.js +1 -1
- package/cjs-bundle/components/ImageViewer/index.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/Table/MetricsAddMenu.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.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/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/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js +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/LayerSwitcher/LayerSwitcher.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js +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/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsData.utils.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsFetch.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricsSettingMenu/MetricsSettingMenu.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyProvider.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useFetchSubjectWell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useSearchedWells.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useBicWells.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useCompanies.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useIsAdmin.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/usePinnedWells.js +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/Popover/Popover.js +1 -1
- package/cjs-bundle/components/Popper/Popper.js +1 -1
- package/cjs-bundle/components/RealTimeValuesSidebar/SidebarFooter.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/AppAssets/utils.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/Actions/Actions.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js +1 -1
- package/cjs-bundle/componentsV2/Autocomplete/Autocomplete.js +1 -1
- package/cjs-bundle/componentsV2/Autocomplete/AutocompleteInput/AutocompleteInput.js +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/Map/Map.js +1 -1
- package/cjs-bundle/componentsV2/PadModeSelect/PadModeSelect.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/PublishModal/PublishModal.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/ShareModal/ShareModal.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Toggle/Toggle.js +1 -1
- package/cjs-bundle/componentsV2/TextInputNext/TextInputNext.js +1 -1
- package/cjs-bundle/componentsV2/WellArchivedMessage/WellArchivedMessage.js +1 -1
- package/cjs-bundle/effects/useGlobalOffsetWellsSync.js +1 -1
- package/cjs-bundle/effects/useGlobalOffsetWellsSync.js.map +1 -1
- package/cjs-bundle/testing/AppTestWrapper/AppTestWrapper.js +1 -1
- package/clients/api/constants.d.ts +11 -0
- package/clients/api/constants.d.ts.map +1 -1
- package/clients/api/constants.js +1 -1
- package/clients/api/rateLimiter.d.ts +1 -0
- package/clients/api/rateLimiter.d.ts.map +1 -1
- package/clients/api/rateLimiter.js +1 -1
- package/clients/index.d.ts +1 -0
- package/clients/index.d.ts.map +1 -1
- package/clients/index.js +1 -1
- package/clients/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/AssetEditor/effects/index.js +1 -1
- package/components/AssetEditor/effects/index.js.map +1 -1
- package/components/AssetEditorV2/effects/index.js +1 -1
- package/components/AssetEditorV2/effects/index.js.map +1 -1
- package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js +1 -1
- package/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js.map +1 -1
- package/components/Attachment/index.js +1 -1
- package/components/Attachment/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/CommentsSwitch/CommentsSwitchButton.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus/NonPriorityMenus.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/PriorityMenus/PriorityMenus.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/PriorityMenus/PriorityMenus.js.map +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.d.ts.map +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.js +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedApp.js.map +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.d.ts.map +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.js +1 -1
- package/components/DevCenter/IsolatedDevCenterAppContainer/DevCenterIsolatedAppPage.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/FeedItem/FeedItem.js +1 -1
- package/components/FeedItem/FeedItem.js.map +1 -1
- package/components/FeedItem/components/FeedComments.js +1 -1
- package/components/FeedItem/components/FeedComments.js.map +1 -1
- package/components/ImageViewer/index.js +1 -1
- package/components/ImageViewer/index.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/Table/MetricsAddMenu.js +1 -1
- package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.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/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/OffsetWellPickerV5/OffsetWellPickerV5.js +1 -1
- package/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js +1 -1
- package/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsData.utils.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsFetch.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricsSettingMenu/MetricsSettingMenu.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js +1 -1
- package/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyProvider.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useFetchSubjectWell.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useSearchedWells.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useBicWells.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useCompanies.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useIsAdmin.js +1 -1
- package/components/OffsetWellPickerV5/hooks/usePinnedWells.js +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/Popover/Popover.js +1 -1
- package/components/Popper/Popper.js +1 -1
- package/components/RealTimeValuesSidebar/SidebarFooter.js +1 -1
- package/componentsV2/AppHeader/AppAssets/utils.js +1 -1
- package/componentsV2/AppHeader/V3/Actions/Actions.js +1 -1
- package/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js +1 -1
- package/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js +1 -1
- package/componentsV2/Autocomplete/Autocomplete.d.ts.map +1 -1
- package/componentsV2/Autocomplete/Autocomplete.js +1 -1
- package/componentsV2/Autocomplete/AutocompleteInput/AutocompleteInput.d.ts.map +1 -1
- package/componentsV2/Autocomplete/AutocompleteInput/AutocompleteInput.js +1 -1
- package/componentsV2/Autocomplete/AutocompleteNext.stories.d.ts.map +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/Map/Map.js +1 -1
- package/componentsV2/PadModeSelect/PadModeSelect.js +1 -1
- package/componentsV2/TemplatesControl/PublishModal/PublishModal.js +1 -1
- package/componentsV2/TemplatesControl/ShareModal/ShareModal.js +1 -1
- package/componentsV2/TemplatesControl/Toggle/Toggle.js +1 -1
- package/componentsV2/TextInputNext/TextInputNext.js +1 -1
- package/componentsV2/WellArchivedMessage/WellArchivedMessage.js +1 -1
- package/effects/useGlobalOffsetWellsSync.js +1 -1
- package/effects/useGlobalOffsetWellsSync.js.map +1 -1
- package/mcp-server/server.mjs +1 -1
- package/package.json +1 -1
- package/testing/AppTestWrapper/AppTestWrapper.js +1 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/AssetEditor/effects/index.js"],"sourcesContent":["import { useEffect, useState, useRef } from 'react';\nimport { isEmpty } from 'lodash';\n\nimport { PER_PAGE } from '../constants';\n\nimport { jsonApi } from '~/clients';\n\nconst getRequestOptions = (assetType, assetFields = []) => ({\n sort: 'name',\n order: 'asc',\n fields: [`${assetType}.name`, `${assetType}.asset_id`, ...assetFields],\n});\n\nconst deserializeAsset = asset => ({\n ...asset.attributes,\n id: +asset.id,\n programId: +asset.relationships?.program?.data?.id,\n});\n\nexport function useAssetSelectData({\n appKey,\n assetType,\n assetId,\n parentAssetType,\n parentAssetId,\n queryParams = null,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(true);\n useEffect(() => {\n setLoading(true);\n async function loadAssets() {\n const response = await jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType),\n per_page: 10000,\n [parentAssetType]: parentAssetId,\n ...(appKey && { app_key: appKey }),\n ...queryParams,\n });\n\n setAssets(response.data.map(deserializeAsset));\n setLoading(false);\n }\n loadAssets();\n }, [assetType, assetId, parentAssetType, parentAssetId, appKey]);\n\n return { assets, loading };\n}\n\nexport function useAssetAutoCompleteSelectData({\n appKey,\n assetType,\n companyId,\n currentValue,\n isMultiple,\n parentAssetId,\n parentAssetType,\n scrollPage,\n searchText,\n setCurrentOption,\n queryParams,\n assetFields,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(false);\n const previousTypeRef = useRef();\n const lastLoadAssetsReqPromise = useRef();\n\n // NOTE: Fetch currently selected option\n useEffect(() => {\n async function loadCurrentOption() {\n let response = await jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType, assetFields),\n ids: isMultiple ? currentValue : [currentValue],\n ...queryParams,\n });\n if (isEmpty(response.data)) {\n // NOTE: Try fetch current option from v2/assets\n response = await jsonApi.getAssets({\n ...getRequestOptions(assetType, assetFields),\n ids: isMultiple ? currentValue : [currentValue],\n ...queryParams,\n });\n }\n\n setCurrentOption(() => {\n if (isMultiple) return response.data.map(deserializeAsset);\n const option = response.data[0];\n return option ? deserializeAsset(option) : null;\n });\n }\n if (isMultiple ? currentValue.length : currentValue) loadCurrentOption();\n }, []);\n\n useEffect(() => {\n async function loadAssets() {\n try {\n setLoading(true);\n const requestParams = { per_page: PER_PAGE, page: scrollPage };\n if (parentAssetType && parentAssetId) requestParams[parentAssetType] = parentAssetId;\n if (companyId) requestParams.company = companyId;\n if (searchText) requestParams.search = searchText;\n if (appKey) requestParams.app_key = appKey;\n\n const requestPromise = jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType, assetFields),\n ...requestParams,\n ...queryParams,\n });\n\n lastLoadAssetsReqPromise.current = requestPromise;\n const response = await requestPromise;\n\n if (lastLoadAssetsReqPromise.current !== requestPromise) {\n return;\n }\n\n const responseAssets = response.data.map(deserializeAsset);\n const isPaginationDisabled = previousTypeRef.current !== assetType || scrollPage === 1;\n\n setAssets(\n isPaginationDisabled ? responseAssets : prevState => prevState.concat(responseAssets)\n );\n\n previousTypeRef.current = assetType;\n } catch (e) {\n console.error(e);\n }\n setLoading(false);\n }\n loadAssets();\n }, [assetType, parentAssetType, parentAssetId, companyId, searchText, scrollPage, appKey]);\n\n return { assets, loading };\n}\n"],"names":["getRequestOptions","assetType","assetFields","sort","order","fields","deserializeAsset","asset","_asset$relationships","_asset$relationships$","_asset$relationships$2","attributes","id","programId","relationships","program","data","useAssetSelectData","_ref","appKey","assetId","parentAssetType","parentAssetId","_ref$queryParams","queryParams","useState","_useState2","_slicedToArray","_useState","assets","setAssets","_useState4","_useState3","loading","setLoading","useEffect","_loadAssets","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","wrap","_context","prev","next","jsonApi","_defineProperty","per_page","app_key","sent","map","stop","apply","this","arguments","loadAssets","useAssetAutoCompleteSelectData","_ref2","companyId","currentValue","isMultiple","scrollPage","searchText","setCurrentOption","_useState6","_useState5","_useState8","_useState7","previousTypeRef","useRef","lastLoadAssetsReqPromise","_loadCurrentOption","_callee2","_context2","ids","isEmpty","_objectSpread","option","length","loadCurrentOption","_loadAssets2","_callee3","requestParams","requestPromise","responseAssets","isPaginationDisabled","_context3","PER_PAGE","page","company","search","current","abrupt","prevState","concat","t0","console","error"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/AssetEditor/effects/index.js"],"sourcesContent":["import { useEffect, useState, useRef } from 'react';\nimport { isEmpty } from 'lodash';\n\nimport { PER_PAGE } from '../constants';\n\nimport { jsonApi } from '~/clients';\n\nconst getRequestOptions = (assetType, assetFields = []) => ({\n sort: 'name',\n order: 'asc',\n fields: [`${assetType}.name`, `${assetType}.asset_id`, ...assetFields],\n});\n\nconst deserializeAsset = asset => ({\n ...asset.attributes,\n id: +asset.id,\n programId: +asset.relationships?.program?.data?.id,\n});\n\nexport function useAssetSelectData({\n appKey,\n assetType,\n assetId,\n parentAssetType,\n parentAssetId,\n queryParams = null,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(true);\n useEffect(() => {\n setLoading(true);\n async function loadAssets() {\n const response = await jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType),\n per_page: 10000,\n [parentAssetType]: parentAssetId,\n ...(appKey && { app_key: appKey }),\n ...queryParams,\n });\n\n setAssets(response.data.map(deserializeAsset));\n setLoading(false);\n }\n loadAssets();\n }, [assetType, assetId, parentAssetType, parentAssetId, appKey]);\n\n return { assets, loading };\n}\n\nexport function useAssetAutoCompleteSelectData({\n appKey,\n assetType,\n companyId,\n currentValue,\n isMultiple,\n parentAssetId,\n parentAssetType,\n scrollPage,\n searchText,\n setCurrentOption,\n queryParams,\n assetFields,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(false);\n const previousTypeRef = useRef();\n const lastLoadAssetsReqPromise = useRef();\n\n // NOTE: Fetch currently selected option\n useEffect(() => {\n async function loadCurrentOption() {\n let response = await jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType, assetFields),\n ids: isMultiple ? currentValue : [currentValue],\n ...queryParams,\n });\n if (isEmpty(response.data)) {\n // NOTE: Try fetch current option from v2/assets\n response = await jsonApi.getAssets({\n ...getRequestOptions(assetType, assetFields),\n ids: isMultiple ? currentValue : [currentValue],\n ...queryParams,\n });\n }\n\n setCurrentOption(() => {\n if (isMultiple) return response.data.map(deserializeAsset);\n const option = response.data[0];\n return option ? deserializeAsset(option) : null;\n });\n }\n if (isMultiple ? currentValue.length : currentValue) loadCurrentOption();\n }, []);\n\n useEffect(() => {\n async function loadAssets() {\n try {\n setLoading(true);\n const requestParams = { per_page: PER_PAGE, page: scrollPage };\n if (parentAssetType && parentAssetId) requestParams[parentAssetType] = parentAssetId;\n if (companyId) requestParams.company = companyId;\n if (searchText) requestParams.search = searchText;\n if (appKey) requestParams.app_key = appKey;\n\n const requestPromise = jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType, assetFields),\n ...requestParams,\n ...queryParams,\n });\n\n lastLoadAssetsReqPromise.current = requestPromise;\n const response = await requestPromise;\n\n if (lastLoadAssetsReqPromise.current !== requestPromise) {\n return;\n }\n\n const responseAssets = response.data.map(deserializeAsset);\n const isPaginationDisabled = previousTypeRef.current !== assetType || scrollPage === 1;\n\n setAssets(\n isPaginationDisabled ? responseAssets : prevState => prevState.concat(responseAssets)\n );\n\n previousTypeRef.current = assetType;\n } catch (e) {\n console.error(e);\n }\n setLoading(false);\n }\n loadAssets();\n }, [assetType, parentAssetType, parentAssetId, companyId, searchText, scrollPage, appKey]);\n\n return { assets, loading };\n}\n"],"names":["getRequestOptions","assetType","assetFields","sort","order","fields","deserializeAsset","asset","_asset$relationships","_asset$relationships$","_asset$relationships$2","attributes","id","programId","relationships","program","data","useAssetSelectData","_ref","appKey","assetId","parentAssetType","parentAssetId","_ref$queryParams","queryParams","useState","_useState2","_slicedToArray","_useState","assets","setAssets","_useState4","_useState3","loading","setLoading","useEffect","_loadAssets","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","wrap","_context","prev","next","jsonApi","_defineProperty","per_page","app_key","sent","map","stop","apply","this","arguments","loadAssets","useAssetAutoCompleteSelectData","_ref2","companyId","currentValue","isMultiple","scrollPage","searchText","setCurrentOption","_useState6","_useState5","_useState8","_useState7","previousTypeRef","useRef","lastLoadAssetsReqPromise","_loadCurrentOption","_callee2","_context2","ids","isEmpty","_objectSpread","option","length","loadCurrentOption","_loadAssets2","_callee3","requestParams","requestPromise","responseAssets","isPaginationDisabled","_context3","PER_PAGE","page","company","search","current","abrupt","prevState","concat","t0","console","error"],"mappings":"q+CAOA,IAAMA,EAAoB,SAACC,GAAS,IAAEC,yDAAc,GAAE,MAAM,CAC1DC,KAAM,OACNC,MAAO,MACPC,OAAYJ,CAAAA,GAAAA,OAAAA,EAAqBA,SAAAA,GAAAA,OAAAA,yBAAyBC,IAC3D,EAEKI,EAAmB,SAAAC,GAAK,IAAAC,EAAAC,EAAAC,EAAA,OACzBH,EAAAA,EAAAA,CAAAA,EAAAA,EAAMI,YAAU,GAAA,CACnBC,IAAKL,EAAMK,GACXC,YAA+B,QAApBL,EAACD,EAAMO,qBAAa,IAAAN,GAAnB,QAAmBC,EAAnBD,EAAqBO,eAArB,IAAAN,GAAkC,QAAlCC,EAAAD,EAA8BO,YAAI,IAAAN,OAAf,EAAnBA,EAAoCE,KAAE,EAG7C,SAASK,EAObC,GAAA,IANDC,IAAAA,OACAlB,IAAAA,UACAmB,IAAAA,QACAC,IAAAA,gBACAC,IAAAA,cAAaC,EAAAL,EACbM,YAAAA,aAAc,KAAID,EAEUE,EAAAA,EAAS,IAAGC,EAAAC,EAAAC,EAAA,GAAjCC,EAAMH,EAAA,GAAEI,EAASJ,EAAA,GACMD,EAAAA,GAAS,GAAKM,EAAAJ,EAAAK,EAAA,GAArCC,EAAOF,EAAA,GAAEG,EAAUH,EAAA,GAkB1B,OAjBAI,GAAU,WAEiB,SAAAC,IAWxB,OAXwBA,EAAzBC,EAAAC,EAAAC,MAAA,SAAAC,IAAA,IAAAC,EAAA,OAAAH,EAAAI,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,OAAAF,EAAAE,KAAA,EACyBC,EAA2B7C,EAA3B6C,CAClB9C,EAAAA,EAAAA,EAAAA,CAAAA,EAAAA,EAAkBC,IAAU,CAAA,EAAA8C,EAAA,CAC/BC,SAAU,KACT3B,EAAkBC,GACfH,GAAU,CAAE8B,QAAS9B,IACtBK,IACH,KAAA,EANIiB,EAAQE,EAAAO,KAQdpB,EAAUW,EAASzB,KAAKmC,IAAI7C,IAC5B4B,GAAW,GAAO,KAAA,EAAA,IAAA,MAAA,OAAAS,EAAAS,OAAA,GAAAZ,EACnB,MAAAa,MAAAC,KAAAC,UAAA,CAZDrB,GAAW,GAAM,WACQE,EAAAiB,MAAAC,KAAAC,UAAA,CAYzBC,EACF,GAAG,CAACvD,EAAWmB,EAASC,EAAiBC,EAAeH,IAEjD,CAAEU,OAAAA,EAAQI,QAAAA,EACnB,CAEO,SAASwB,EAabC,GAAA,IAZDvC,IAAAA,OACAlB,IAAAA,UACA0D,IAAAA,UACAC,IAAAA,aACAC,IAAAA,WACAvC,IAAAA,cACAD,IAAAA,gBACAyC,IAAAA,WACAC,IAAAA,WACAC,IAAAA,iBACAxC,IAAAA,YACAtB,IAAAA,YAE4BuB,EAAAA,EAAS,IAAGwC,EAAAtC,EAAAuC,EAAA,GAAjCrC,EAAMoC,EAAA,GAAEnC,EAASmC,EAAA,GACMxC,EAAAA,GAAS,GAAM0C,EAAAxC,EAAAyC,EAAA,GAAtCnC,EAAOkC,EAAA,GAAEjC,EAAUiC,EAAA,GACpBE,EAAkBC,IAClBC,EAA2BD,IAmEjC,OAhEAnC,GAAU,WACwB,SAAAqC,IAoB/B,OApB+BA,EAAhCnC,EAAAC,EAAAC,MAAA,SAAAkC,IAAA,IAAAhC,EAAA,OAAAH,EAAAI,MAAA,SAAAgC,GAAA,OAAA,OAAAA,EAAA9B,KAAA8B,EAAA7B,MAAA,KAAA,EAAA,OAAA6B,EAAA7B,KAAA,EACuBC,EAA2B7C,EAA3B6C,CAChB9C,EAAAA,EAAAA,GAAAA,EAAkBC,EAAWC,IAAY,CAAA,EAAA,CAC5CyE,IAAKd,EAAaD,EAAe,CAACA,IAC/BpC,IACH,KAAA,EAJU,GAARiB,EAAQiC,EAAAxB,MAKR0B,EAAQnC,EAASzB,MAAK,CAAA0D,EAAA7B,KAAA,EAAA,KAAA,CAAA,OAAA6B,EAAA7B,KAAA,EAEPC,EAAiB+B,EAAAA,EAAA,CAAA,EAC7B7E,EAAkBC,EAAWC,IAAY,GAAA,CAC5CyE,IAAKd,EAAaD,EAAe,CAACA,IAC/BpC,IACH,KAAA,EAJFiB,EAAQiC,EAAAxB,KAAA,KAAA,EAOVc,GAAiB,WACf,GAAIH,EAAY,OAAOpB,EAASzB,KAAKmC,IAAI7C,GACzC,IAAMwE,EAASrC,EAASzB,KAAK,GAC7B,OAAO8D,EAASxE,EAAiBwE,GAAU,IAC7C,IAAG,KAAA,EAAA,IAAA,MAAA,OAAAJ,EAAAtB,OAAA,GAAAqB,EACJ,MAAApB,MAAAC,KAAAC,UAAA,EACGM,EAAaD,EAAamB,OAASnB,IAtBzB,WACkBY,EAAAnB,MAAAC,KAAAC,UAAA,CAqBqByB,EACtD,GAAE,IAEH7C,GAAU,WACiB,SAAA8C,IAkCxB,OAlCwBA,EAAzB5C,EAAAC,EAAAC,MAAA,SAAA2C,IAAA,IAAAC,EAAAC,EAAA3C,EAAA4C,EAAAC,EAAA,OAAAhD,EAAAI,MAAA,SAAA6C,GAAA,OAAA,OAAAA,EAAA3C,KAAA2C,EAAA1C,MAAA,KAAA,EAesD,OAftD0C,EAAA3C,KAAA,EAEIV,GAAW,GACLiD,EAAgB,CAAEnC,SAAUwC,EAAUC,KAAM3B,GAC9CzC,GAAmBC,IAAe6D,EAAc9D,GAAmBC,GACnEqC,IAAWwB,EAAcO,QAAU/B,GACnCI,IAAYoB,EAAcQ,OAAS5B,GACnC5C,IAAQgE,EAAclC,QAAU9B,GAE9BiE,EAAiBtC,EAA2B7C,EAA3B6C,CAClB9C,EAAAA,EAAAA,EAAAA,CAAAA,EAAAA,EAAkBC,EAAWC,IAC7BiF,GACA3D,IAGL+C,EAAyBqB,QAAUR,EAAeG,EAAA1C,KAAA,GAC3BuC,EAAc,KAAA,GAAvB,GAAR3C,EAAQ8C,EAAArC,KAEVqB,EAAyBqB,UAAYR,EAAc,CAAAG,EAAA1C,KAAA,GAAA,KAAA,CAAA,OAAA0C,EAAAM,OAAA,UAAA,KAAA,GAIjDR,EAAiB5C,EAASzB,KAAKmC,IAAI7C,GACnCgF,EAAuBjB,EAAgBuB,UAAY3F,GAA4B,IAAf6D,EAEtEhC,EACEwD,EAAuBD,EAAiB,SAAAS,GAAS,OAAIA,EAAUC,OAAOV,KAGxEhB,EAAgBuB,QAAU3F,EAAUsF,EAAA1C,KAAA,GAAA,MAAA,KAAA,GAAA0C,EAAA3C,KAAA,GAAA2C,EAAAS,GAAAT,EAAA,MAAA,GAEpCU,QAAQC,MAAQX,EAAAS,IAAC,KAAA,GAEnB9D,GAAW,GAAO,KAAA,GAAA,IAAA,MAAA,OAAAqD,EAAAnC,OAAA,GAAA8B,EAAA,KAAA,CAAA,CAAA,EAAA,KACnB,MAAA7B,MAAAC,KAAAC,UAAA,EAnCa,WACW0B,EAAA5B,MAAAC,KAAAC,UAAA,CAmCzBC,EACF,GAAG,CAACvD,EAAWoB,EAAiBC,EAAeqC,EAAWI,EAAYD,EAAY3C,IAE3E,CAAEU,OAAAA,EAAQI,QAAAA,EACnB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import t from"@babel/runtime/helpers/toConsumableArray";import e from"@babel/runtime/helpers/defineProperty";import r from"@babel/runtime/helpers/asyncToGenerator";import n from"@babel/runtime/helpers/slicedToArray";import s from"@babel/runtime/regenerator";import{useState as o,useEffect as i,useRef as a}from"react";import{isEmpty as p}from"lodash";import{formatAsset as c,sortAsset as u,getRequestOptions as l}from"../utils/index.js";import"uuid";import"lodash/set";import"lodash/get";import"lodash/unset";import"moment";import{mapAssetGetRequest as m}from"../../../clients/jsonApi/index.js";import"../../../clients/subscriptions/constants.js";import"../../../clients/subscriptions.v1.js";import"../../../clients/subscriptions/subscriptions-client.factory.js";import"../../../clients/api/apiCore.js";import"../../../clients/constants.js";import"../../../clients/sso/auth0.js";import"../../../clients/sso/oauth2.js";import{jsonaDataFormatter as f}from"../../../utils/jsonaDataFormatter.js";import"../../../constants/goals.js";import"../../../constants/segment.js";import"../../../constants/alerts.js";import"../../../constants/apps.js";import"../../../constants/drillstring.js";import"../../../constants/completion.js";import"../../../constants/appPackages.js";import"../../../constants/notifications.js";import"../../../constants/feed.js";import"../../../constants/bha.js";import{ASSET_TYPES as d}from"../../../constants/assetTypes.js";import"../../../constants/corvaCompanyId.js";import"../../GradientManager/configuration/constants.js";function y(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function j(t){for(var r=1;r<arguments.length;r++){var n=null!=arguments[r]?arguments[r]:{};r%2?y(Object(n),!0).forEach((function(r){e(t,r,n[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):y(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var v=function(t){return t===d.intervention_unit.type?"intervention_unit_id":t};function b(t){var a=t.appKey,p=t.assetType,d=t.assetId,y=t.company,b=t.parentAssetType,h=t.parentAssetId,g=t.queryParams,O=t.assetFields,x=t.activeWellId,A=t.isRequiredAssetId,I=o([]),P=n(I,2),_=P[0],w=P[1],k=o(!0),T=n(k,2),q=T[0],C=T[1];return i((function(){function t(){return(t=r(s.mark((function t(){var r,n;return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,m(p)(j(j(j({},l(p,O)),{},e({per_page:1e4,company:"all"!==y?y:null},v(b),h),a&&{app_key:a}),g));case 2:r=t.sent,n=f.deserialize(r),w(n.map((function(t){return c({asset:t,activeWellId:x,isRequiredAssetId:A})})).sort(u)),C(!1);case 6:case"end":return t.stop()}}),t)})))).apply(this,arguments)}C(!0),function(){t.apply(this,arguments)}()}),[p,d,b,h,a,x,y]),{assets:_,loading:q}}var h=function(e,r){return e===d.pad.type?[].concat(t(r),["pad.active","pad.parent_frac_fleet_id","pad.current"]):e===d.intervention_unit.type?[].concat(t(r),["intervention_unit.active","intervention_unit.current"]):r};function g(e){var y,v=e.appKey,b=e.assetType,g=e.company,O=e.groups,x=e.isRequiredAssetId,A=e.parentAssetId,I=e.parentAssetType,P=e.searchText,_=e.assetFields,w=e.currentValue,k=e.setCurrentOption,T=e.onActiveAssetIdChange,q=o([]),C=n(q,2),D=C[0],R=C[1],F=o(!1),W=n(F,2),z=W[0],E=W[1],G=a(null),K=(y=r(s.mark((function e(r){var n,o,i,a,y,O,q;return s.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,n=(null==r?void 0:r.type)||b,o={per_page:1e4},I&&A&&(o[I]=A),g&&"all"!==g&&(o.company=g),P&&(o.search=P),v&&(o.app_key=v),G.current=g,i=m(n)(j(j({},l(n,h(n,_))),o)),e.next=11,i;case 11:a=e.sent,y=f.deserialize(a),O=y.map((function(t){return c({asset:t,group:null==r?void 0:r.name,isRequiredAssetId:x,isPrimaryAsset:!0})})).filter(Boolean).sort(u),G.current===g&&R((function(e){return[].concat(t(e),t(O))})),w&&n===b&&(q=O.find((function(t){return w===t.id||t.assetId&&w===t.assetId})),p(q)||k(q),n===d.rig.type&&T(null==q?void 0:q.activeWellId)),e.next=21;break;case 18:e.prev=18,e.t0=e.catch(0),console.error(e.t0);case 21:case"end":return e.stop()}}),e,null,[[0,18]])}))),function(t){return y.apply(this,arguments)});return i((function(){g&&R([])}),[g]),i((function(){var t,e=(t=r(s.mark((function t(){return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(t.prev=0,E(!0),!O){t.next=7;break}return t.next=5,Promise.all(O.map((function(t){return K(t)})));case 5:t.next=9;break;case 7:return t.next=9,K();case 9:t.next=14;break;case 11:t.prev=11,t.t0=t.catch(0),console.error(t.t0);case 14:return t.prev=14,E(!1),t.finish(14);case 17:case"end":return t.stop()}}),t,null,[[0,11,14,17]])}))),function(){return t.apply(this,arguments)});e()}),[b,I,A,g,v,null==O?void 0:O.length]),{assets:z?[]:D,loading:z}}export{g as usePrimaryAssetSelectData,b as useSecondaryAssetSelectData};
|
|
1
|
+
import t from"@babel/runtime/helpers/toConsumableArray";import e from"@babel/runtime/helpers/defineProperty";import r from"@babel/runtime/helpers/asyncToGenerator";import n from"@babel/runtime/helpers/slicedToArray";import s from"@babel/runtime/regenerator";import{useState as o,useEffect as i,useRef as a}from"react";import{isEmpty as p}from"lodash";import{formatAsset as c,sortAsset as u,getRequestOptions as l}from"../utils/index.js";import"uuid";import"lodash/set";import"lodash/get";import"lodash/unset";import"moment";import{mapAssetGetRequest as m}from"../../../clients/jsonApi/index.js";import"../../../clients/subscriptions/constants.js";import"../../../clients/subscriptions.v1.js";import"../../../clients/subscriptions/subscriptions-client.factory.js";import"../../../clients/api/apiCore.js";import"../../../clients/constants.js";import"../../../clients/sso/auth0.js";import"../../../clients/sso/oauth2.js";import"../../../clients/api/rateLimiter.js";import{jsonaDataFormatter as f}from"../../../utils/jsonaDataFormatter.js";import"../../../constants/goals.js";import"../../../constants/segment.js";import"../../../constants/alerts.js";import"../../../constants/apps.js";import"../../../constants/drillstring.js";import"../../../constants/completion.js";import"../../../constants/appPackages.js";import"../../../constants/notifications.js";import"../../../constants/feed.js";import"../../../constants/bha.js";import{ASSET_TYPES as d}from"../../../constants/assetTypes.js";import"../../../constants/corvaCompanyId.js";import"../../GradientManager/configuration/constants.js";function y(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function j(t){for(var r=1;r<arguments.length;r++){var n=null!=arguments[r]?arguments[r]:{};r%2?y(Object(n),!0).forEach((function(r){e(t,r,n[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):y(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var v=function(t){return t===d.intervention_unit.type?"intervention_unit_id":t};function b(t){var a=t.appKey,p=t.assetType,d=t.assetId,y=t.company,b=t.parentAssetType,h=t.parentAssetId,g=t.queryParams,O=t.assetFields,x=t.activeWellId,A=t.isRequiredAssetId,I=o([]),P=n(I,2),_=P[0],w=P[1],k=o(!0),T=n(k,2),q=T[0],C=T[1];return i((function(){function t(){return(t=r(s.mark((function t(){var r,n;return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,m(p)(j(j(j({},l(p,O)),{},e({per_page:1e4,company:"all"!==y?y:null},v(b),h),a&&{app_key:a}),g));case 2:r=t.sent,n=f.deserialize(r),w(n.map((function(t){return c({asset:t,activeWellId:x,isRequiredAssetId:A})})).sort(u)),C(!1);case 6:case"end":return t.stop()}}),t)})))).apply(this,arguments)}C(!0),function(){t.apply(this,arguments)}()}),[p,d,b,h,a,x,y]),{assets:_,loading:q}}var h=function(e,r){return e===d.pad.type?[].concat(t(r),["pad.active","pad.parent_frac_fleet_id","pad.current"]):e===d.intervention_unit.type?[].concat(t(r),["intervention_unit.active","intervention_unit.current"]):r};function g(e){var y,v=e.appKey,b=e.assetType,g=e.company,O=e.groups,x=e.isRequiredAssetId,A=e.parentAssetId,I=e.parentAssetType,P=e.searchText,_=e.assetFields,w=e.currentValue,k=e.setCurrentOption,T=e.onActiveAssetIdChange,q=o([]),C=n(q,2),D=C[0],R=C[1],F=o(!1),W=n(F,2),z=W[0],E=W[1],G=a(null),K=(y=r(s.mark((function e(r){var n,o,i,a,y,O,q;return s.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,n=(null==r?void 0:r.type)||b,o={per_page:1e4},I&&A&&(o[I]=A),g&&"all"!==g&&(o.company=g),P&&(o.search=P),v&&(o.app_key=v),G.current=g,i=m(n)(j(j({},l(n,h(n,_))),o)),e.next=11,i;case 11:a=e.sent,y=f.deserialize(a),O=y.map((function(t){return c({asset:t,group:null==r?void 0:r.name,isRequiredAssetId:x,isPrimaryAsset:!0})})).filter(Boolean).sort(u),G.current===g&&R((function(e){return[].concat(t(e),t(O))})),w&&n===b&&(q=O.find((function(t){return w===t.id||t.assetId&&w===t.assetId})),p(q)||k(q),n===d.rig.type&&T(null==q?void 0:q.activeWellId)),e.next=21;break;case 18:e.prev=18,e.t0=e.catch(0),console.error(e.t0);case 21:case"end":return e.stop()}}),e,null,[[0,18]])}))),function(t){return y.apply(this,arguments)});return i((function(){g&&R([])}),[g]),i((function(){var t,e=(t=r(s.mark((function t(){return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(t.prev=0,E(!0),!O){t.next=7;break}return t.next=5,Promise.all(O.map((function(t){return K(t)})));case 5:t.next=9;break;case 7:return t.next=9,K();case 9:t.next=14;break;case 11:t.prev=11,t.t0=t.catch(0),console.error(t.t0);case 14:return t.prev=14,E(!1),t.finish(14);case 17:case"end":return t.stop()}}),t,null,[[0,11,14,17]])}))),function(){return t.apply(this,arguments)});e()}),[b,I,A,g,v,null==O?void 0:O.length]),{assets:z?[]:D,loading:z}}export{g as usePrimaryAssetSelectData,b as useSecondaryAssetSelectData};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/AssetEditorV2/effects/index.js"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport { isEmpty } from 'lodash';\n\nimport { formatAsset, getRequestOptions, sortAsset } from '../utils';\n\nimport { jsonApi } from '~/clients';\nimport { jsonaDataFormatter } from '~/utils/jsonaDataFormatter';\nimport { ASSET_TYPES } from '~/constants';\n\nconst getParentAssetKey = assetType => {\n if (assetType === ASSET_TYPES.intervention_unit.type) {\n return 'intervention_unit_id';\n }\n return assetType;\n};\n\nexport function useSecondaryAssetSelectData({\n appKey,\n assetType,\n assetId,\n company,\n parentAssetType,\n parentAssetId,\n queryParams,\n assetFields,\n activeWellId,\n isRequiredAssetId,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(true);\n\n useEffect(() => {\n setLoading(true);\n async function loadAssets() {\n const response = await jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType, assetFields),\n per_page: 10000,\n company: company !== 'all' ? company : null,\n [getParentAssetKey(parentAssetType)]: parentAssetId,\n ...(appKey && { app_key: appKey }),\n ...queryParams,\n });\n\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n setAssets(\n deserializedResponse\n .map(asset => formatAsset({ asset, activeWellId, isRequiredAssetId }))\n .sort(sortAsset)\n );\n setLoading(false);\n }\n loadAssets();\n }, [assetType, assetId, parentAssetType, parentAssetId, appKey, activeWellId, company]);\n\n return { assets, loading };\n}\n\nconst getAssetFields = (assetType, assetFields) => {\n if (assetType === ASSET_TYPES.pad.type) {\n return [...assetFields, 'pad.active', 'pad.parent_frac_fleet_id', 'pad.current'];\n } else if (assetType === ASSET_TYPES.intervention_unit.type) {\n return [...assetFields, 'intervention_unit.active', 'intervention_unit.current'];\n }\n\n return assetFields;\n};\n\nexport function usePrimaryAssetSelectData({\n appKey,\n assetType,\n company,\n groups,\n isRequiredAssetId,\n parentAssetId,\n parentAssetType,\n searchText,\n assetFields,\n currentValue,\n setCurrentOption,\n onActiveAssetIdChange,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(false);\n const prevCompany = useRef(null);\n\n const loadAssets = async group => {\n try {\n const currentAssetType = group?.type || assetType;\n const requestParams = { per_page: 10000 };\n if (parentAssetType && parentAssetId) requestParams[parentAssetType] = parentAssetId;\n if (company && company !== 'all') requestParams.company = company;\n if (searchText) requestParams.search = searchText;\n if (appKey) requestParams.app_key = appKey;\n\n prevCompany.current = company;\n\n const requestPromise = jsonApi.mapAssetGetRequest(currentAssetType)({\n ...getRequestOptions(currentAssetType, getAssetFields(currentAssetType, assetFields)),\n ...requestParams,\n });\n\n const response = await requestPromise;\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n const responseAssets = deserializedResponse\n .map(asset =>\n formatAsset({ asset, group: group?.name, isRequiredAssetId, isPrimaryAsset: true })\n )\n .filter(Boolean)\n .sort(sortAsset);\n\n if (prevCompany.current === company) {\n setAssets(prevState => [...prevState, ...responseAssets]);\n }\n if (currentValue && currentAssetType === assetType) {\n const currentAsset = responseAssets.find(\n asset => currentValue === asset.id || (asset.assetId && currentValue === asset.assetId)\n );\n if (!isEmpty(currentAsset)) {\n setCurrentOption(currentAsset);\n }\n\n if (currentAssetType === ASSET_TYPES.rig.type) {\n onActiveAssetIdChange(currentAsset?.activeWellId);\n }\n }\n } catch (e) {\n console.error(e);\n }\n };\n\n useEffect(() => {\n if (company) {\n setAssets([]);\n }\n }, [company]);\n\n useEffect(() => {\n const loadEverything = async () => {\n try {\n setLoading(true);\n\n if (groups) {\n await Promise.all(groups.map(group => loadAssets(group)));\n } else {\n await loadAssets();\n }\n } catch (e) {\n console.error(e);\n } finally {\n setLoading(false);\n }\n };\n\n loadEverything();\n }, [assetType, parentAssetType, parentAssetId, company, appKey, groups?.length]);\n\n return { assets: loading ? [] : assets, loading };\n}\n"],"names":["getParentAssetKey","assetType","ASSET_TYPES","intervention_unit","type","useSecondaryAssetSelectData","_ref","appKey","assetId","company","parentAssetType","parentAssetId","queryParams","assetFields","activeWellId","isRequiredAssetId","useState","_useState2","_slicedToArray","_useState","assets","setAssets","_useState4","_useState3","loading","setLoading","useEffect","_loadAssets","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","deserializedResponse","wrap","_context","prev","next","jsonApi","getRequestOptions","_defineProperty","per_page","app_key","sent","jsonaDataFormatter","deserialize","map","asset","formatAsset","sort","sortAsset","stop","apply","this","arguments","loadAssets","getAssetFields","pad","concat","_toConsumableArray","usePrimaryAssetSelectData","_ref2","_ref3","groups","searchText","currentValue","setCurrentOption","onActiveAssetIdChange","_useState6","_useState5","_useState8","_useState7","prevCompany","useRef","group","currentAssetType","requestParams","requestPromise","responseAssets","currentAsset","_context2","search","current","name","isPrimaryAsset","filter","Boolean","prevState","find","id","isEmpty","rig","t0","console","error","_callee2","_x","_ref4","loadEverything","_callee3","_context3","Promise","all","finish","length"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/AssetEditorV2/effects/index.js"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport { isEmpty } from 'lodash';\n\nimport { formatAsset, getRequestOptions, sortAsset } from '../utils';\n\nimport { jsonApi } from '~/clients';\nimport { jsonaDataFormatter } from '~/utils/jsonaDataFormatter';\nimport { ASSET_TYPES } from '~/constants';\n\nconst getParentAssetKey = assetType => {\n if (assetType === ASSET_TYPES.intervention_unit.type) {\n return 'intervention_unit_id';\n }\n return assetType;\n};\n\nexport function useSecondaryAssetSelectData({\n appKey,\n assetType,\n assetId,\n company,\n parentAssetType,\n parentAssetId,\n queryParams,\n assetFields,\n activeWellId,\n isRequiredAssetId,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(true);\n\n useEffect(() => {\n setLoading(true);\n async function loadAssets() {\n const response = await jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType, assetFields),\n per_page: 10000,\n company: company !== 'all' ? company : null,\n [getParentAssetKey(parentAssetType)]: parentAssetId,\n ...(appKey && { app_key: appKey }),\n ...queryParams,\n });\n\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n setAssets(\n deserializedResponse\n .map(asset => formatAsset({ asset, activeWellId, isRequiredAssetId }))\n .sort(sortAsset)\n );\n setLoading(false);\n }\n loadAssets();\n }, [assetType, assetId, parentAssetType, parentAssetId, appKey, activeWellId, company]);\n\n return { assets, loading };\n}\n\nconst getAssetFields = (assetType, assetFields) => {\n if (assetType === ASSET_TYPES.pad.type) {\n return [...assetFields, 'pad.active', 'pad.parent_frac_fleet_id', 'pad.current'];\n } else if (assetType === ASSET_TYPES.intervention_unit.type) {\n return [...assetFields, 'intervention_unit.active', 'intervention_unit.current'];\n }\n\n return assetFields;\n};\n\nexport function usePrimaryAssetSelectData({\n appKey,\n assetType,\n company,\n groups,\n isRequiredAssetId,\n parentAssetId,\n parentAssetType,\n searchText,\n assetFields,\n currentValue,\n setCurrentOption,\n onActiveAssetIdChange,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(false);\n const prevCompany = useRef(null);\n\n const loadAssets = async group => {\n try {\n const currentAssetType = group?.type || assetType;\n const requestParams = { per_page: 10000 };\n if (parentAssetType && parentAssetId) requestParams[parentAssetType] = parentAssetId;\n if (company && company !== 'all') requestParams.company = company;\n if (searchText) requestParams.search = searchText;\n if (appKey) requestParams.app_key = appKey;\n\n prevCompany.current = company;\n\n const requestPromise = jsonApi.mapAssetGetRequest(currentAssetType)({\n ...getRequestOptions(currentAssetType, getAssetFields(currentAssetType, assetFields)),\n ...requestParams,\n });\n\n const response = await requestPromise;\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n const responseAssets = deserializedResponse\n .map(asset =>\n formatAsset({ asset, group: group?.name, isRequiredAssetId, isPrimaryAsset: true })\n )\n .filter(Boolean)\n .sort(sortAsset);\n\n if (prevCompany.current === company) {\n setAssets(prevState => [...prevState, ...responseAssets]);\n }\n if (currentValue && currentAssetType === assetType) {\n const currentAsset = responseAssets.find(\n asset => currentValue === asset.id || (asset.assetId && currentValue === asset.assetId)\n );\n if (!isEmpty(currentAsset)) {\n setCurrentOption(currentAsset);\n }\n\n if (currentAssetType === ASSET_TYPES.rig.type) {\n onActiveAssetIdChange(currentAsset?.activeWellId);\n }\n }\n } catch (e) {\n console.error(e);\n }\n };\n\n useEffect(() => {\n if (company) {\n setAssets([]);\n }\n }, [company]);\n\n useEffect(() => {\n const loadEverything = async () => {\n try {\n setLoading(true);\n\n if (groups) {\n await Promise.all(groups.map(group => loadAssets(group)));\n } else {\n await loadAssets();\n }\n } catch (e) {\n console.error(e);\n } finally {\n setLoading(false);\n }\n };\n\n loadEverything();\n }, [assetType, parentAssetType, parentAssetId, company, appKey, groups?.length]);\n\n return { assets: loading ? [] : assets, loading };\n}\n"],"names":["getParentAssetKey","assetType","ASSET_TYPES","intervention_unit","type","useSecondaryAssetSelectData","_ref","appKey","assetId","company","parentAssetType","parentAssetId","queryParams","assetFields","activeWellId","isRequiredAssetId","useState","_useState2","_slicedToArray","_useState","assets","setAssets","_useState4","_useState3","loading","setLoading","useEffect","_loadAssets","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","deserializedResponse","wrap","_context","prev","next","jsonApi","getRequestOptions","_defineProperty","per_page","app_key","sent","jsonaDataFormatter","deserialize","map","asset","formatAsset","sort","sortAsset","stop","apply","this","arguments","loadAssets","getAssetFields","pad","concat","_toConsumableArray","usePrimaryAssetSelectData","_ref2","_ref3","groups","searchText","currentValue","setCurrentOption","onActiveAssetIdChange","_useState6","_useState5","_useState8","_useState7","prevCompany","useRef","group","currentAssetType","requestParams","requestPromise","responseAssets","currentAsset","_context2","search","current","name","isPrimaryAsset","filter","Boolean","prevState","find","id","isEmpty","rig","t0","console","error","_callee2","_x","_ref4","loadEverything","_callee3","_context3","Promise","all","finish","length"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import t from"@babel/runtime/helpers/defineProperty";import r from"@babel/runtime/helpers/asyncToGenerator";import e from"@babel/runtime/helpers/toConsumableArray";import n from"@babel/runtime/helpers/slicedToArray";import s from"@babel/runtime/regenerator";import{useState as o,useRef as i,useEffect as a}from"react";import{map as c,isEmpty as p,uniqBy as l}from"lodash";import{formatAsset as u,sortAsset as m,getRequestOptions as d}from"../utils/index.js";import"uuid";import"lodash/set";import"lodash/get";import"lodash/unset";import"moment";import{mapAssetGetRequest as f,getAssets as j}from"../../../clients/jsonApi/index.js";import"../../../clients/subscriptions/constants.js";import"../../../clients/subscriptions.v1.js";import"../../../clients/subscriptions/subscriptions-client.factory.js";import"../../../clients/api/apiCore.js";import"../../../clients/constants.js";import"../../../clients/sso/auth0.js";import"../../../clients/sso/oauth2.js";import{jsonaDataFormatter as b}from"../../../utils/jsonaDataFormatter.js";import{PER_PAGE as y}from"../../AssetEditor/constants.js";import"../../../constants/goals.js";import"../../../constants/segment.js";import"../../../constants/alerts.js";import"../../../constants/apps.js";import"../../../constants/drillstring.js";import"../../../constants/completion.js";import"../../../constants/appPackages.js";import"../../../constants/notifications.js";import"../../../constants/feed.js";import"../../../constants/bha.js";import{ASSET_TYPES as v}from"../../../constants/assetTypes.js";import"../../../constants/corvaCompanyId.js";import"../../GradientManager/configuration/constants.js";function g(t,r){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable}))),e.push.apply(e,n)}return e}function h(r){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?g(Object(n),!0).forEach((function(e){t(r,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach((function(t){Object.defineProperty(r,t,Object.getOwnPropertyDescriptor(n,t))}))}return r}function O(t){var g,O,A=t.appKey,P=t.assetType,w=t.company,x=t.groups,D=t.isRequiredAssetId,I=t.parentAssetId,k=t.parentAssetType,_=t.searchValue,C=t.assetFields,T=t.currentValue,E=t.setCurrentOption,q=t.scrollPage,R=t.onActiveAssetIdChange,z=t.isDrillingPlatformApp,F=o([]),G=n(F,2),S=G[0],V=G[1],W=o(!1),K=n(W,2),
|
|
1
|
+
import t from"@babel/runtime/helpers/defineProperty";import r from"@babel/runtime/helpers/asyncToGenerator";import e from"@babel/runtime/helpers/toConsumableArray";import n from"@babel/runtime/helpers/slicedToArray";import s from"@babel/runtime/regenerator";import{useState as o,useRef as i,useEffect as a}from"react";import{map as c,isEmpty as p,uniqBy as l}from"lodash";import{formatAsset as u,sortAsset as m,getRequestOptions as d}from"../utils/index.js";import"uuid";import"lodash/set";import"lodash/get";import"lodash/unset";import"moment";import{mapAssetGetRequest as f,getAssets as j}from"../../../clients/jsonApi/index.js";import"../../../clients/subscriptions/constants.js";import"../../../clients/subscriptions.v1.js";import"../../../clients/subscriptions/subscriptions-client.factory.js";import"../../../clients/api/apiCore.js";import"../../../clients/constants.js";import"../../../clients/sso/auth0.js";import"../../../clients/sso/oauth2.js";import"../../../clients/api/rateLimiter.js";import{jsonaDataFormatter as b}from"../../../utils/jsonaDataFormatter.js";import{PER_PAGE as y}from"../../AssetEditor/constants.js";import"../../../constants/goals.js";import"../../../constants/segment.js";import"../../../constants/alerts.js";import"../../../constants/apps.js";import"../../../constants/drillstring.js";import"../../../constants/completion.js";import"../../../constants/appPackages.js";import"../../../constants/notifications.js";import"../../../constants/feed.js";import"../../../constants/bha.js";import{ASSET_TYPES as v}from"../../../constants/assetTypes.js";import"../../../constants/corvaCompanyId.js";import"../../GradientManager/configuration/constants.js";function g(t,r){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable}))),e.push.apply(e,n)}return e}function h(r){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?g(Object(n),!0).forEach((function(e){t(r,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach((function(t){Object.defineProperty(r,t,Object.getOwnPropertyDescriptor(n,t))}))}return r}function O(t){var g,O,A=t.appKey,P=t.assetType,w=t.company,x=t.groups,D=t.isRequiredAssetId,I=t.parentAssetId,k=t.parentAssetType,_=t.searchValue,C=t.assetFields,T=t.currentValue,E=t.setCurrentOption,q=t.scrollPage,R=t.onActiveAssetIdChange,z=t.isDrillingPlatformApp,F=o([]),G=n(F,2),S=G[0],V=G[1],W=o(!1),K=n(W,2),L=K[0],M=K[1],N=i(null),B=i(null),H=i(null),J=i(null),Q=P===v.pad.type?[].concat(e(C),["pad.active","pad.parent_frac_fleet_id"]):C,U=(g=r(s.mark((function t(r){var n,o,i,a,p,j,v,g=arguments;return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=g.length>1&&void 0!==g[1]&&g[1],t.prev=1,o=(null==r?void 0:r.type)||P,M(!0),i={per_page:y,page:q},k&&I&&(i[k]=I),w&&"all"!==w&&(i.company=w),_&&(i.search=_),A&&(i.app_key=A),N.current=w,a=f(o)(h(h({},d(o,Q)),i)),t.next=13,a;case 13:p=t.sent,j=b.deserialize(p),v=c(j,(function(t){return u({asset:t,group:null==r?void 0:r.name,isRequiredAssetId:D,isPrimaryAsset:!0,isDrillingPlatformApp:z})})).sort(m),N.current===w&&V(n?function(t){return l([].concat(e(t),e(v)),"id")}:v),t.next=22;break;case 19:t.prev=19,t.t0=t.catch(1),console.error(t.t0);case 22:return t.prev=22,M(!1),t.finish(22);case 25:case"end":return t.stop()}}),t,null,[[1,19,22,25]])}))),function(t){return g.apply(this,arguments)}),X=(O=r(s.mark((function t(){var r,e,n,o,i,a,c,l;return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,f(P)(h(h({},d(P,Q)),{},{ids:T}));case 2:if(r=t.sent,!p(r.data)){t.next=7;break}return t.next=6,j(h(h({},d(P,Q)),{},{ids:T}));case 6:r=t.sent;case 7:e=b.deserialize(r),n=u({asset:e[0],isPrimaryAsset:!0,isRequiredAssetId:D,isDrillingPlatformApp:z}),E(n),P===v.rig.type?(c=z?Number(null===(o=r)||void 0===o||null===(i=o.included)||void 0===i||null===(a=i[0])||void 0===a?void 0:a.id):(null==n?void 0:n.activeWellId)||null,R(c)):P===v.intervention_unit.type&&(l=(null==n?void 0:n.activeWellId)||null,R(l));case 11:case"end":return t.stop()}}),t)}))),function(){return O.apply(this,arguments)});return a((function(){w&&V([])}),[w]),a((function(){var t=H.current!==_,r=J.current!==q,e=!t&&r&&q>1&&(J.current||0)<q;t&&(H.current=_),r&&(J.current=q),x?x.forEach((function(t){U(t,e)})):(P&&B.current&&B.current!==P&&V([]),B.current=P,U(null,e))}),[P,k,I,w,A,null==x?void 0:x.length,_,q]),a((function(){T&&X()}),[]),{assets:S,loading:L}}export{O as usePrimaryAssetSelectData};
|
|
2
2
|
//# sourceMappingURL=usePrimaryAssetSelectData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePrimaryAssetSelectData.js","sources":["../../../../src/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport { isEmpty, map, uniqBy } from 'lodash';\n\nimport { formatAsset, getRequestOptions, sortAsset } from '../utils';\n\nimport { jsonApi } from '~/clients';\nimport { jsonaDataFormatter } from '~/utils/jsonaDataFormatter';\nimport { PER_PAGE } from '~/components/AssetEditor/constants';\nimport { ASSET_TYPES } from '~/constants';\n\nexport function usePrimaryAssetSelectData({\n appKey,\n assetType,\n company,\n groups,\n isRequiredAssetId,\n parentAssetId,\n parentAssetType,\n searchValue,\n assetFields,\n currentValue,\n setCurrentOption,\n scrollPage,\n onActiveAssetIdChange,\n isDrillingPlatformApp,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(false);\n const prevCompany = useRef(null);\n const prevAssetType = useRef(null);\n const prevSearchValue = useRef(null);\n const prevScrollPage = useRef(null);\n\n const assetFieldsByAssetType =\n assetType === ASSET_TYPES.pad.type\n ? [...assetFields, 'pad.active', 'pad.parent_frac_fleet_id']\n : assetFields;\n\n const loadAssets = async (group, shouldAppend = false) => {\n try {\n const currentAssetType = group?.type || assetType;\n setLoading(true);\n const requestParams = { per_page: PER_PAGE, page: scrollPage };\n if (parentAssetType && parentAssetId) requestParams[parentAssetType] = parentAssetId;\n if (company && company !== 'all') requestParams.company = company;\n if (searchValue) requestParams.search = searchValue;\n if (appKey) requestParams.app_key = appKey;\n\n prevCompany.current = company;\n const requestPromise = jsonApi.mapAssetGetRequest(currentAssetType)({\n ...getRequestOptions(currentAssetType, assetFieldsByAssetType),\n ...requestParams,\n });\n\n const response = await requestPromise;\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n const responseAssets = map(deserializedResponse, asset =>\n formatAsset({\n asset,\n group: group?.name,\n isRequiredAssetId,\n isPrimaryAsset: true,\n isDrillingPlatformApp,\n })\n ).sort(sortAsset);\n\n if (prevCompany.current === company) {\n if (shouldAppend) {\n setAssets(prevState => uniqBy([...prevState, ...responseAssets], 'id'));\n } else {\n setAssets(responseAssets);\n }\n }\n } catch (e) {\n console.error(e);\n } finally {\n setLoading(false);\n }\n };\n\n const loadCurrentOption = async () => {\n let response = await jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType, assetFieldsByAssetType),\n ids: currentValue,\n });\n if (isEmpty(response.data)) {\n // NOTE: Try fetch current option from v2/assets\n response = await jsonApi.getAssets({\n ...getRequestOptions(assetType, assetFieldsByAssetType),\n ids: currentValue,\n });\n }\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n const formattedAsset = formatAsset({\n asset: deserializedResponse[0],\n isPrimaryAsset: true,\n isRequiredAssetId,\n isDrillingPlatformApp,\n });\n\n setCurrentOption(formattedAsset);\n if (assetType === ASSET_TYPES.rig.type) {\n const activeWellId = isDrillingPlatformApp\n ? Number(response?.included?.[0]?.id)\n : formattedAsset?.activeWellId || null;\n onActiveAssetIdChange(activeWellId);\n } else if (assetType === ASSET_TYPES.intervention_unit.type) {\n const activeWellId = formattedAsset?.activeWellId || null;\n onActiveAssetIdChange(activeWellId);\n }\n };\n\n useEffect(() => {\n if (company) {\n setAssets([]);\n }\n }, [company]);\n\n useEffect(() => {\n // Check if searchValue changed - if so, reset assets and don't append\n const searchValueChanged = prevSearchValue.current !== searchValue;\n const scrollPageChanged = prevScrollPage.current !== scrollPage;\n // Only append for pagination: searchValue didn't change AND scrollPage increased\n const isPagination =\n !searchValueChanged &&\n scrollPageChanged &&\n scrollPage > 1 &&\n (prevScrollPage.current || 0) < scrollPage;\n\n if (searchValueChanged) {\n prevSearchValue.current = searchValue;\n }\n if (scrollPageChanged) {\n prevScrollPage.current = scrollPage;\n }\n\n if (groups) {\n groups.forEach(group => {\n loadAssets(group, isPagination);\n });\n return;\n }\n if (!!assetType && !!prevAssetType.current && prevAssetType.current !== assetType) {\n setAssets([]);\n }\n prevAssetType.current = assetType;\n loadAssets(null, isPagination);\n }, [\n assetType,\n parentAssetType,\n parentAssetId,\n company,\n appKey,\n groups?.length,\n searchValue,\n scrollPage,\n ]);\n\n useEffect(() => {\n if (currentValue) {\n loadCurrentOption();\n }\n }, []);\n\n return { assets, loading };\n}\n"],"names":["usePrimaryAssetSelectData","_ref","_ref2","_ref3","appKey","assetType","company","groups","isRequiredAssetId","parentAssetId","parentAssetType","searchValue","assetFields","currentValue","setCurrentOption","scrollPage","onActiveAssetIdChange","isDrillingPlatformApp","useState","_useState2","_slicedToArray","_useState","assets","setAssets","_useState4","_useState3","loading","setLoading","prevCompany","useRef","prevAssetType","prevSearchValue","prevScrollPage","assetFieldsByAssetType","ASSET_TYPES","pad","type","concat","_toConsumableArray","loadAssets","_asyncToGenerator","_regeneratorRuntime","mark","group","shouldAppend","currentAssetType","requestParams","requestPromise","response","deserializedResponse","responseAssets","_args","arguments","wrap","_context","prev","next","per_page","PER_PAGE","page","search","app_key","current","jsonApi","_objectSpread","getRequestOptions","sent","jsonaDataFormatter","deserialize","map","asset","formatAsset","name","isPrimaryAsset","sort","sortAsset","prevState","uniqBy","t0","console","error","finish","stop","_callee","_x","apply","this","loadCurrentOption","_callee2","formattedAsset","_response","_response$included","_response$included$","activeWellId","_activeWellId","_context2","ids","isEmpty","data","rig","Number","included","id","intervention_unit","useEffect","searchValueChanged","scrollPageChanged","isPagination","forEach","length"],"mappings":"
|
|
1
|
+
{"version":3,"file":"usePrimaryAssetSelectData.js","sources":["../../../../src/components/AssetEditorV2/effects/usePrimaryAssetSelectData.js"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport { isEmpty, map, uniqBy } from 'lodash';\n\nimport { formatAsset, getRequestOptions, sortAsset } from '../utils';\n\nimport { jsonApi } from '~/clients';\nimport { jsonaDataFormatter } from '~/utils/jsonaDataFormatter';\nimport { PER_PAGE } from '~/components/AssetEditor/constants';\nimport { ASSET_TYPES } from '~/constants';\n\nexport function usePrimaryAssetSelectData({\n appKey,\n assetType,\n company,\n groups,\n isRequiredAssetId,\n parentAssetId,\n parentAssetType,\n searchValue,\n assetFields,\n currentValue,\n setCurrentOption,\n scrollPage,\n onActiveAssetIdChange,\n isDrillingPlatformApp,\n}) {\n const [assets, setAssets] = useState([]);\n const [loading, setLoading] = useState(false);\n const prevCompany = useRef(null);\n const prevAssetType = useRef(null);\n const prevSearchValue = useRef(null);\n const prevScrollPage = useRef(null);\n\n const assetFieldsByAssetType =\n assetType === ASSET_TYPES.pad.type\n ? [...assetFields, 'pad.active', 'pad.parent_frac_fleet_id']\n : assetFields;\n\n const loadAssets = async (group, shouldAppend = false) => {\n try {\n const currentAssetType = group?.type || assetType;\n setLoading(true);\n const requestParams = { per_page: PER_PAGE, page: scrollPage };\n if (parentAssetType && parentAssetId) requestParams[parentAssetType] = parentAssetId;\n if (company && company !== 'all') requestParams.company = company;\n if (searchValue) requestParams.search = searchValue;\n if (appKey) requestParams.app_key = appKey;\n\n prevCompany.current = company;\n const requestPromise = jsonApi.mapAssetGetRequest(currentAssetType)({\n ...getRequestOptions(currentAssetType, assetFieldsByAssetType),\n ...requestParams,\n });\n\n const response = await requestPromise;\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n const responseAssets = map(deserializedResponse, asset =>\n formatAsset({\n asset,\n group: group?.name,\n isRequiredAssetId,\n isPrimaryAsset: true,\n isDrillingPlatformApp,\n })\n ).sort(sortAsset);\n\n if (prevCompany.current === company) {\n if (shouldAppend) {\n setAssets(prevState => uniqBy([...prevState, ...responseAssets], 'id'));\n } else {\n setAssets(responseAssets);\n }\n }\n } catch (e) {\n console.error(e);\n } finally {\n setLoading(false);\n }\n };\n\n const loadCurrentOption = async () => {\n let response = await jsonApi.mapAssetGetRequest(assetType)({\n ...getRequestOptions(assetType, assetFieldsByAssetType),\n ids: currentValue,\n });\n if (isEmpty(response.data)) {\n // NOTE: Try fetch current option from v2/assets\n response = await jsonApi.getAssets({\n ...getRequestOptions(assetType, assetFieldsByAssetType),\n ids: currentValue,\n });\n }\n const deserializedResponse = jsonaDataFormatter.deserialize(response);\n\n const formattedAsset = formatAsset({\n asset: deserializedResponse[0],\n isPrimaryAsset: true,\n isRequiredAssetId,\n isDrillingPlatformApp,\n });\n\n setCurrentOption(formattedAsset);\n if (assetType === ASSET_TYPES.rig.type) {\n const activeWellId = isDrillingPlatformApp\n ? Number(response?.included?.[0]?.id)\n : formattedAsset?.activeWellId || null;\n onActiveAssetIdChange(activeWellId);\n } else if (assetType === ASSET_TYPES.intervention_unit.type) {\n const activeWellId = formattedAsset?.activeWellId || null;\n onActiveAssetIdChange(activeWellId);\n }\n };\n\n useEffect(() => {\n if (company) {\n setAssets([]);\n }\n }, [company]);\n\n useEffect(() => {\n // Check if searchValue changed - if so, reset assets and don't append\n const searchValueChanged = prevSearchValue.current !== searchValue;\n const scrollPageChanged = prevScrollPage.current !== scrollPage;\n // Only append for pagination: searchValue didn't change AND scrollPage increased\n const isPagination =\n !searchValueChanged &&\n scrollPageChanged &&\n scrollPage > 1 &&\n (prevScrollPage.current || 0) < scrollPage;\n\n if (searchValueChanged) {\n prevSearchValue.current = searchValue;\n }\n if (scrollPageChanged) {\n prevScrollPage.current = scrollPage;\n }\n\n if (groups) {\n groups.forEach(group => {\n loadAssets(group, isPagination);\n });\n return;\n }\n if (!!assetType && !!prevAssetType.current && prevAssetType.current !== assetType) {\n setAssets([]);\n }\n prevAssetType.current = assetType;\n loadAssets(null, isPagination);\n }, [\n assetType,\n parentAssetType,\n parentAssetId,\n company,\n appKey,\n groups?.length,\n searchValue,\n scrollPage,\n ]);\n\n useEffect(() => {\n if (currentValue) {\n loadCurrentOption();\n }\n }, []);\n\n return { assets, loading };\n}\n"],"names":["usePrimaryAssetSelectData","_ref","_ref2","_ref3","appKey","assetType","company","groups","isRequiredAssetId","parentAssetId","parentAssetType","searchValue","assetFields","currentValue","setCurrentOption","scrollPage","onActiveAssetIdChange","isDrillingPlatformApp","useState","_useState2","_slicedToArray","_useState","assets","setAssets","_useState4","_useState3","loading","setLoading","prevCompany","useRef","prevAssetType","prevSearchValue","prevScrollPage","assetFieldsByAssetType","ASSET_TYPES","pad","type","concat","_toConsumableArray","loadAssets","_asyncToGenerator","_regeneratorRuntime","mark","group","shouldAppend","currentAssetType","requestParams","requestPromise","response","deserializedResponse","responseAssets","_args","arguments","wrap","_context","prev","next","per_page","PER_PAGE","page","search","app_key","current","jsonApi","_objectSpread","getRequestOptions","sent","jsonaDataFormatter","deserialize","map","asset","formatAsset","name","isPrimaryAsset","sort","sortAsset","prevState","uniqBy","t0","console","error","finish","stop","_callee","_x","apply","this","loadCurrentOption","_callee2","formattedAsset","_response","_response$included","_response$included$","activeWellId","_activeWellId","_context2","ids","isEmpty","data","rig","Number","included","id","intervention_unit","useEffect","searchValueChanged","scrollPageChanged","isPagination","forEach","length"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"@babel/runtime/helpers/slicedToArray";import{useState as s,useCallback as t}from"react";import i from"prop-types";import e from"react-player";import n from"classnames";import{withStyles as c}from"@material-ui/core/styles";import{Typography as a}from"@material-ui/core";import r from"@material-ui/icons/Image";import m from"@material-ui/icons/Fullscreen";import l from"@material-ui/core/colors/grey";import p from"../NewDocumentViewer/NewDocumentViewer.js";import{UnavailableFileIcon as d}from"../NewDocumentViewer/icons/UnavailableFileIcon.js";import u from"./styles.css.js";import h from"../FileTypeIcon.js";import j from"../ImageViewer/index.js";import I from"../IconButton/index.js";import{isNativeDetected as f}from"../../utils/mobileDetect.js";import{getIsImage as g,getIsVideo as v}from"../../utils/fileExtension.js";import{getIsPreviewUnavailable as b}from"../../utils/filePreview.js";import{DownloadIcon as C}from"../../icons/iconParkIcons.js";import"../../icons/customIcons/icons/AddMessage.js";import"../../icons/customIcons/icons/Attention.js";import"../../icons/customIcons/icons/Collapse.js";import"../../icons/customIcons/icons/Dashboard.js";import"../../icons/customIcons/icons/Expand.js";import"../../icons/customIcons/icons/FolderClosed.js";import"../../icons/customIcons/icons/FolderClosedFilled.js";import"../../icons/customIcons/icons/FolderOpened.js";import"../../icons/customIcons/icons/GreaterOrEqual.js";import"../../icons/customIcons/icons/LessOrEqual.js";import"../../icons/customIcons/icons/Search.js";import"../../icons/customIcons/icons/SearchOne.js";import"../../icons/customIcons/icons/Wellhub.js";import"../../icons/customIcons/icons/MultiRuler.js";import"../../icons/customIcons/icons/Checkbox.js";import"../../icons/customIcons/icons/CheckboxChecked.js";import"../../icons/customIcons/icons/CheckboxIndeterminate.js";import"../../icons/customIcons/icons/Radio.js";import"../../icons/customIcons/icons/RadioChecked.js";import"../../icons/customIcons/icons/SimulFrac.js";import"../../icons/customIcons/icons/ZipperFrac.js";import"../../icons/customIcons/icons/CautionFilled.js";import"../../icons/customIcons/icons/MoreApp.js";import"../../icons/customIcons/icons/Pad.js";import"../../icons/customIcons/icons/DrilloutUnit.js";import"../../icons/customIcons/icons/FracFleet.js";import"../../icons/customIcons/icons/Global.js";import"../../icons/customIcons/icons/Program.js";import"../../icons/customIcons/icons/Rig.js";import"../../icons/customIcons/icons/Well.js";import"../../icons/customIcons/icons/Gap.js";import"../../icons/customIcons/icons/Pin.js";import"../../icons/customIcons/icons/CloseOneFilled.js";import"../../icons/customIcons/icons/AttentionFilled.js";import"../../icons/customIcons/icons/CheckOneFilled.js";import"../../icons/customIcons/icons/Archive.js";import"../../icons/customIcons/icons/ArchiveCancel.js";import"../../icons/customIcons/icons/Unarchive.js";import"../../icons/customIcons/icons/Archived.js";import"../../icons/customIcons/icons/InterventionUnit.js";import"../../icons/customIcons/icons/CloudDelete.js";import"../../icons/customIcons/icons/Lasso.js";import"../../icons/customIcons/icons/Radius.js";import"../../icons/customIcons/icons/ErrorOps.js";import"../../icons/customIcons/icons/DataTypeOps.js";import"../../icons/customIcons/icons/FalsePositiveOps.js";import"../../icons/customIcons/icons/CalibrationOps.js";import"../../icons/customIcons/icons/CriticalOps.js";import"../../icons/customIcons/icons/Company.js";import"../../icons/customIcons/icons/ArchiveOne.js";import"../../icons/customIcons/icons/ParseBotFusion.js";import"../../icons/customIcons/icons/Connect.js";import"../../icons/customIcons/icons/PuzzleOne.js";import"../../icons/customIcons/icons/Feed.js";import"../../icons/customIcons/icons/Prompt.js";import"../../icons/customIcons/icons/Companies.js";import"../../icons/customIcons/icons/ClipboardAi.js";import"../../icons/customIcons/icons/Key.js";import"../../icons/customIcons/icons/AtSignCrossed.js";import"../../icons/customIcons/icons/MappingManual.js";import"../../icons/customIcons/icons/Mapping.js";import"../../icons/customIcons/icons/Metrics.js";import"../../icons/customIcons/icons/Drops.js";import"../../icons/customIcons/icons/ClipboardSearch.js";import"../../icons/customIcons/icons/Template.js";import"../../icons/customIcons/icons/ClipboardMetrics.js";import"../../icons/customIcons/icons/ClipboardBuilder.js";import"../../icons/customIcons/icons/UnitConversion.js";import"../../icons/customIcons/icons/NPT.js";import"../../clients/subscriptions/constants.js";import"@babel/runtime/helpers/asyncToGenerator";import"@babel/runtime/helpers/defineProperty";import"@babel/runtime/regenerator";import"querystring";import"uuid/v1";import"lodash";import"../../clients/subscriptions.v1.js";import"../../clients/jsonApi/index.js";import"../../clients/subscriptions/subscriptions-client.factory.js";import"immutable";import"query-string";import"../../constants/goals.js";import"../../constants/segment.js";import"../../constants/alerts.js";import"../../constants/apps.js";import"../../constants/drillstring.js";import"../../constants/completion.js";import"../../constants/appPackages.js";import"../../constants/notifications.js";import"../../constants/feed.js";import"../../constants/bha.js";import"../../constants/corvaCompanyId.js";import"../GradientManager/configuration/constants.js";import N from"../../effects/useSignedURL.js";import"../../utils/index.js";import"uuid";import"jsona";import"../../utils/env.js";import"../StatusBadge/constants.js";import"@babel/runtime/helpers/toConsumableArray";import"lodash/set";import"lodash/get";import"lodash/unset";import"moment";import"../../clients/api/apiCore.js";import"../../clients/constants.js";import"../../clients/sso/auth0.js";import"../../clients/sso/oauth2.js";import"lodash/isEmpty";import"lodash/sortBy";import"../../constants/streamSourceType.js";import"../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js";import"../../componentsV2/AppCommonsProvider/AppCommonsProvider.js";import"../../componentsV2/AppCommonsProvider/AppCommonsContext.js";import"../../componentsV2/AppSettings/AppSettingsPinningContext.js";import w from"../../utils/main.js";import{jsx as y,jsxs as x,Fragment as A}from"react/jsx-runtime";var F=l[200],P=l[400],S={label:"small",value:135},O={label:"medium",value:300},D={fileImage:function(o,s){return{maxWidth:"100%",borderRadius:4,overflow:"hidden",maxHeight:s===S.label?S.value:O.value,display:o?"initial":"none",cursor:"pointer"}},fileDownloadWrapper:{padding:"10px 10px 10px 5px",border:"1px solid #616161",borderRadius:3,maxWidth:500,width:"75%"},imagePlaceholder:{position:"relative",backgroundColor:F,borderRadius:3,marginTop:10,height:135,width:135}},z=function(o){var s=N(o.attachmentFileName)||o.attachmentUrl;return x(A,{children:[x("div",{onClick:o.openLightbox,className:u.cAttachmentImg,children:[y("img",{"data-testid":"".concat("Attachment","_image"),src:s,style:D.fileImage(o.imageIsLoaded,o.size),alt:"Attachment",onLoad:o.setImageIsLoaded}),y("div",{"data-testid":"".concat("Attachment","_button"),className:u.cAttachmentImgPreviwBtn,children:y(m,{})})]}),!o.imageIsLoaded&&y("div",{style:D.imagePlaceholder,children:y(r,{"data-testid":"".concat("Attachment","_placeholder"),className:o.classes.imageIconRoot,htmlColor:P,fontSize:"large"})}),o.lightboxIsOpen&&y(j,{mainSrc:s,imagePadding:50,onAfterOpen:o.handleLightboxOpen,onCloseRequest:o.handleLightboxClose})]})},W=function(o){var s=w.getFileNameWithExtensionFromPath(o.displayName||o.attachmentUrl),t=N(o.attachmentFileName,"inline"),i=N(o.attachmentFileName,"attachment"),e=b(s);return x("div",{className:u.cAttachmentFileWrapper,children:[x("div",{className:n(u.cAttachmentFileDownloadWrapper,e&&o.classes.disabledPreview),style:D.fileDownloadWrapper,onClick:function(){e||o.openPreview()},children:[e?y(d,{className:o.classes.unavailableFileIcon}):y(h,{fileName:o.displayName||o.attachmentUrl,className:u.cAttachmentFileDownloadWrapperFileIcon,size:o.small?25:50}),x("div",{className:o.classes.titleContainer,children:[e&&y("div",{className:o.classes.caption,children:"Preview unavailable"}),y("div",{"data-testid":"".concat("Attachment","_name"),className:n(u.cAttachmentFileDownloadWrapperFileName,e&&o.classes.fileName),children:y(a,{variant:"subtitle2",noWrap:!0,className:o.classes.unavailableFileName,children:s})})]}),y(p,{fileUrl:t,classes:{root:o.classes.dialogRoot,paper:f?o.classes.nativeDialog:o.classes.dialog},fileName:s,fileSize:o.attachmentSize,onClose:o.closePreview,open:o.previewIsOpen})]}),y("a",{download:o.displayName,href:i,className:u.cAttachmentFileDownloadWrapperForm,children:y(I,{"data-testid":"".concat("Attachment","_downloadButton"),className:o.classes.downloadIcon,type:"submit",children:y(C,{size:24,className:o.classes.downloadIcon})})})]})};function R(i){var n=s(!1),c=o(n,2),a=c[0],r=c[1],m=s(!1),l=o(m,2),p=l[0],d=l[1],h=s(!1),j=o(h,2),I=j[0],b=j[1],C=i.displayName||i.attachmentUrl||i.fileName,w=g(C),x=v(C),A=N(!i.attachmentUrl&&i.fileName),F=i.attachmentUrl||A,P=t((function(o){return o.preventDefault()}),[]);return w?y("div",{className:u.cAttachment,children:y(z,{size:i.size,openLightbox:function(){return d(!0)},attachmentFileName:i.fileName,attachmentUrl:i.attachmentUrl,setImageIsLoaded:function(){return r(!0)},imageIsLoaded:a,lightboxIsOpen:p,handleLightboxOpen:function(){f&&document.documentElement.addEventListener("touchmove",P,{passive:!1})},handleLightboxClose:function(){f&&document.documentElement.removeEventListener("touchmove",P),d(!1)},classes:i.classes})}):x&&e.canPlay(F)?y("div",{className:u.cAttachment,children:y(e,{"data-testid":"".concat("Attachment","_player"),className:u.cAttachmentReactPlayer,url:F,config:{file:{attributes:{preload:"metadata"}}},controls:!0,height:i.size===S.label?S.value:O.value,width:null})}):y("div",{className:u.cAttachment,children:y(W,{attachmentUrl:F,attachmentFileName:i.fileName,attachmentSize:i.attachmentSize,displayName:i.displayName,openPreview:function(){return b(!0)},closePreview:function(o){o.stopPropagation(),b(!1)},previewIsOpen:I,classes:i.classes,small:i.small})})}R.propTypes={attachmentUrl:i.string.isRequired,attachmentSize:i.number,displayName:i.string,fileName:i.string,size:i.oneOf([S.label,O.label]),classes:i.shape({}).isRequired,small:i.bool},R.defaultProps={displayName:null,fileName:null,attachmentSize:void 0,size:O.label,small:!1};var L=c((function(o){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:o.palette.primary.text3},disabledPreview:{backgroundColor:o.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}}}))(R);export{L as default};
|
|
1
|
+
import o from"@babel/runtime/helpers/slicedToArray";import{useState as s,useCallback as t}from"react";import i from"prop-types";import e from"react-player";import n from"classnames";import{withStyles as c}from"@material-ui/core/styles";import{Typography as a}from"@material-ui/core";import r from"@material-ui/icons/Image";import m from"@material-ui/icons/Fullscreen";import l from"@material-ui/core/colors/grey";import p from"../NewDocumentViewer/NewDocumentViewer.js";import{UnavailableFileIcon as d}from"../NewDocumentViewer/icons/UnavailableFileIcon.js";import u from"./styles.css.js";import h from"../FileTypeIcon.js";import j from"../ImageViewer/index.js";import I from"../IconButton/index.js";import{isNativeDetected as f}from"../../utils/mobileDetect.js";import{getIsImage as g,getIsVideo as v}from"../../utils/fileExtension.js";import{getIsPreviewUnavailable as b}from"../../utils/filePreview.js";import{DownloadIcon as C}from"../../icons/iconParkIcons.js";import"../../icons/customIcons/icons/AddMessage.js";import"../../icons/customIcons/icons/Attention.js";import"../../icons/customIcons/icons/Collapse.js";import"../../icons/customIcons/icons/Dashboard.js";import"../../icons/customIcons/icons/Expand.js";import"../../icons/customIcons/icons/FolderClosed.js";import"../../icons/customIcons/icons/FolderClosedFilled.js";import"../../icons/customIcons/icons/FolderOpened.js";import"../../icons/customIcons/icons/GreaterOrEqual.js";import"../../icons/customIcons/icons/LessOrEqual.js";import"../../icons/customIcons/icons/Search.js";import"../../icons/customIcons/icons/SearchOne.js";import"../../icons/customIcons/icons/Wellhub.js";import"../../icons/customIcons/icons/MultiRuler.js";import"../../icons/customIcons/icons/Checkbox.js";import"../../icons/customIcons/icons/CheckboxChecked.js";import"../../icons/customIcons/icons/CheckboxIndeterminate.js";import"../../icons/customIcons/icons/Radio.js";import"../../icons/customIcons/icons/RadioChecked.js";import"../../icons/customIcons/icons/SimulFrac.js";import"../../icons/customIcons/icons/ZipperFrac.js";import"../../icons/customIcons/icons/CautionFilled.js";import"../../icons/customIcons/icons/MoreApp.js";import"../../icons/customIcons/icons/Pad.js";import"../../icons/customIcons/icons/DrilloutUnit.js";import"../../icons/customIcons/icons/FracFleet.js";import"../../icons/customIcons/icons/Global.js";import"../../icons/customIcons/icons/Program.js";import"../../icons/customIcons/icons/Rig.js";import"../../icons/customIcons/icons/Well.js";import"../../icons/customIcons/icons/Gap.js";import"../../icons/customIcons/icons/Pin.js";import"../../icons/customIcons/icons/CloseOneFilled.js";import"../../icons/customIcons/icons/AttentionFilled.js";import"../../icons/customIcons/icons/CheckOneFilled.js";import"../../icons/customIcons/icons/Archive.js";import"../../icons/customIcons/icons/ArchiveCancel.js";import"../../icons/customIcons/icons/Unarchive.js";import"../../icons/customIcons/icons/Archived.js";import"../../icons/customIcons/icons/InterventionUnit.js";import"../../icons/customIcons/icons/CloudDelete.js";import"../../icons/customIcons/icons/Lasso.js";import"../../icons/customIcons/icons/Radius.js";import"../../icons/customIcons/icons/ErrorOps.js";import"../../icons/customIcons/icons/DataTypeOps.js";import"../../icons/customIcons/icons/FalsePositiveOps.js";import"../../icons/customIcons/icons/CalibrationOps.js";import"../../icons/customIcons/icons/CriticalOps.js";import"../../icons/customIcons/icons/Company.js";import"../../icons/customIcons/icons/ArchiveOne.js";import"../../icons/customIcons/icons/ParseBotFusion.js";import"../../icons/customIcons/icons/Connect.js";import"../../icons/customIcons/icons/PuzzleOne.js";import"../../icons/customIcons/icons/Feed.js";import"../../icons/customIcons/icons/Prompt.js";import"../../icons/customIcons/icons/Companies.js";import"../../icons/customIcons/icons/ClipboardAi.js";import"../../icons/customIcons/icons/Key.js";import"../../icons/customIcons/icons/AtSignCrossed.js";import"../../icons/customIcons/icons/MappingManual.js";import"../../icons/customIcons/icons/Mapping.js";import"../../icons/customIcons/icons/Metrics.js";import"../../icons/customIcons/icons/Drops.js";import"../../icons/customIcons/icons/ClipboardSearch.js";import"../../icons/customIcons/icons/Template.js";import"../../icons/customIcons/icons/ClipboardMetrics.js";import"../../icons/customIcons/icons/ClipboardBuilder.js";import"../../icons/customIcons/icons/UnitConversion.js";import"../../icons/customIcons/icons/NPT.js";import"../../clients/subscriptions/constants.js";import"@babel/runtime/helpers/asyncToGenerator";import"@babel/runtime/helpers/defineProperty";import"@babel/runtime/regenerator";import"querystring";import"uuid/v1";import"lodash";import"../../clients/subscriptions.v1.js";import"../../clients/jsonApi/index.js";import"../../clients/subscriptions/subscriptions-client.factory.js";import"immutable";import"query-string";import"../../constants/goals.js";import"../../constants/segment.js";import"../../constants/alerts.js";import"../../constants/apps.js";import"../../constants/drillstring.js";import"../../constants/completion.js";import"../../constants/appPackages.js";import"../../constants/notifications.js";import"../../constants/feed.js";import"../../constants/bha.js";import"../../constants/corvaCompanyId.js";import"../GradientManager/configuration/constants.js";import N from"../../effects/useSignedURL.js";import"../../utils/index.js";import"uuid";import"jsona";import"../../utils/env.js";import"../StatusBadge/constants.js";import"@babel/runtime/helpers/toConsumableArray";import"lodash/set";import"lodash/get";import"lodash/unset";import"moment";import"../../clients/api/apiCore.js";import"../../clients/constants.js";import"../../clients/sso/auth0.js";import"../../clients/sso/oauth2.js";import"../../clients/api/rateLimiter.js";import"lodash/isEmpty";import"lodash/sortBy";import"../../constants/streamSourceType.js";import"../DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js";import"../../componentsV2/AppCommonsProvider/AppCommonsProvider.js";import"../../componentsV2/AppCommonsProvider/AppCommonsContext.js";import"../../componentsV2/AppSettings/AppSettingsPinningContext.js";import w from"../../utils/main.js";import{jsx as y,jsxs as x,Fragment as A}from"react/jsx-runtime";var F=l[200],P=l[400],S={label:"small",value:135},O={label:"medium",value:300},D={fileImage:function(o,s){return{maxWidth:"100%",borderRadius:4,overflow:"hidden",maxHeight:s===S.label?S.value:O.value,display:o?"initial":"none",cursor:"pointer"}},fileDownloadWrapper:{padding:"10px 10px 10px 5px",border:"1px solid #616161",borderRadius:3,maxWidth:500,width:"75%"},imagePlaceholder:{position:"relative",backgroundColor:F,borderRadius:3,marginTop:10,height:135,width:135}},z=function(o){var s=N(o.attachmentFileName)||o.attachmentUrl;return x(A,{children:[x("div",{onClick:o.openLightbox,className:u.cAttachmentImg,children:[y("img",{"data-testid":"".concat("Attachment","_image"),src:s,style:D.fileImage(o.imageIsLoaded,o.size),alt:"Attachment",onLoad:o.setImageIsLoaded}),y("div",{"data-testid":"".concat("Attachment","_button"),className:u.cAttachmentImgPreviwBtn,children:y(m,{})})]}),!o.imageIsLoaded&&y("div",{style:D.imagePlaceholder,children:y(r,{"data-testid":"".concat("Attachment","_placeholder"),className:o.classes.imageIconRoot,htmlColor:P,fontSize:"large"})}),o.lightboxIsOpen&&y(j,{mainSrc:s,imagePadding:50,onAfterOpen:o.handleLightboxOpen,onCloseRequest:o.handleLightboxClose})]})},W=function(o){var s=w.getFileNameWithExtensionFromPath(o.displayName||o.attachmentUrl),t=N(o.attachmentFileName,"inline"),i=N(o.attachmentFileName,"attachment"),e=b(s);return x("div",{className:u.cAttachmentFileWrapper,children:[x("div",{className:n(u.cAttachmentFileDownloadWrapper,e&&o.classes.disabledPreview),style:D.fileDownloadWrapper,onClick:function(){e||o.openPreview()},children:[e?y(d,{className:o.classes.unavailableFileIcon}):y(h,{fileName:o.displayName||o.attachmentUrl,className:u.cAttachmentFileDownloadWrapperFileIcon,size:o.small?25:50}),x("div",{className:o.classes.titleContainer,children:[e&&y("div",{className:o.classes.caption,children:"Preview unavailable"}),y("div",{"data-testid":"".concat("Attachment","_name"),className:n(u.cAttachmentFileDownloadWrapperFileName,e&&o.classes.fileName),children:y(a,{variant:"subtitle2",noWrap:!0,className:o.classes.unavailableFileName,children:s})})]}),y(p,{fileUrl:t,classes:{root:o.classes.dialogRoot,paper:f?o.classes.nativeDialog:o.classes.dialog},fileName:s,fileSize:o.attachmentSize,onClose:o.closePreview,open:o.previewIsOpen})]}),y("a",{download:o.displayName,href:i,className:u.cAttachmentFileDownloadWrapperForm,children:y(I,{"data-testid":"".concat("Attachment","_downloadButton"),className:o.classes.downloadIcon,type:"submit",children:y(C,{size:24,className:o.classes.downloadIcon})})})]})};function L(i){var n=s(!1),c=o(n,2),a=c[0],r=c[1],m=s(!1),l=o(m,2),p=l[0],d=l[1],h=s(!1),j=o(h,2),I=j[0],b=j[1],C=i.displayName||i.attachmentUrl||i.fileName,w=g(C),x=v(C),A=N(!i.attachmentUrl&&i.fileName),F=i.attachmentUrl||A,P=t((function(o){return o.preventDefault()}),[]);return w?y("div",{className:u.cAttachment,children:y(z,{size:i.size,openLightbox:function(){return d(!0)},attachmentFileName:i.fileName,attachmentUrl:i.attachmentUrl,setImageIsLoaded:function(){return r(!0)},imageIsLoaded:a,lightboxIsOpen:p,handleLightboxOpen:function(){f&&document.documentElement.addEventListener("touchmove",P,{passive:!1})},handleLightboxClose:function(){f&&document.documentElement.removeEventListener("touchmove",P),d(!1)},classes:i.classes})}):x&&e.canPlay(F)?y("div",{className:u.cAttachment,children:y(e,{"data-testid":"".concat("Attachment","_player"),className:u.cAttachmentReactPlayer,url:F,config:{file:{attributes:{preload:"metadata"}}},controls:!0,height:i.size===S.label?S.value:O.value,width:null})}):y("div",{className:u.cAttachment,children:y(W,{attachmentUrl:F,attachmentFileName:i.fileName,attachmentSize:i.attachmentSize,displayName:i.displayName,openPreview:function(){return b(!0)},closePreview:function(o){o.stopPropagation(),b(!1)},previewIsOpen:I,classes:i.classes,small:i.small})})}L.propTypes={attachmentUrl:i.string.isRequired,attachmentSize:i.number,displayName:i.string,fileName:i.string,size:i.oneOf([S.label,O.label]),classes:i.shape({}).isRequired,small:i.bool},L.defaultProps={displayName:null,fileName:null,attachmentSize:void 0,size:O.label,small:!1};var R=c((function(o){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:o.palette.primary.text3},disabledPreview:{backgroundColor:o.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}}}))(L);export{R as default};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Attachment/index.js"],"sourcesContent":["import { useState, useCallback } 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';\n\nimport styles from './styles.css';\n\nimport FileTypeIcon from '~components/FileTypeIcon';\nimport ImageViewer from '~components/ImageViewer';\nimport IconButton from '~components/IconButton';\nimport { isNativeDetected } from '~/utils/mobileDetect';\nimport { getIsVideo, getIsImage } from '~/utils/fileExtension';\nimport { getIsPreviewUnavailable } from '~/utils/filePreview';\nimport { DownloadIcon } from '~/icons';\nimport { useSignedURL } from '~/effects';\nimport utils from '~utils/main'; // question here\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 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.imageIsLoaded, props.size)}\n alt=\"Attachment\"\n onLoad={props.setImageIsLoaded}\n />\n <div data-testid={`${PAGE_NAME}_button`} className={styles.cAttachmentImgPreviwBtn}>\n <FullSizeIcon />\n </div>\n </div>\n\n {!props.imageIsLoaded && (\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 mainSrc={downloadLink}\n imagePadding={50}\n onAfterOpen={props.handleLightboxOpen}\n onCloseRequest={props.handleLightboxClose}\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(props) {\n const [isImageLoaded, setIsImageLoaded] = useState(false);\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 = () => {\n if (isNativeDetected) {\n // document.documentElement.style.overflowY = 'hidden';\n document.documentElement.addEventListener('touchmove', preventIOSScroll, {\n passive: false,\n });\n }\n };\n\n const handleLightboxClose = () => {\n if (isNativeDetected) {\n // document.documentElement.style.overflowY = 'visible';\n document.documentElement.removeEventListener('touchmove', preventIOSScroll);\n }\n setIsLightboxOpen(false);\n };\n\n const openLightbox = () => setIsLightboxOpen(true);\n const setImageLoaded = () => setIsImageLoaded(true);\n const openPreview = () => setIsPreviewOpen(true);\n const closePreview = 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 setImageIsLoaded={setImageLoaded}\n imageIsLoaded={isImageLoaded}\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\nAttachment.defaultProps = {\n displayName: null,\n fileName: null,\n attachmentSize: undefined,\n size: SIZES.medium.label,\n small: false,\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","downloadLink","useSignedURL","attachmentFileName","attachmentUrl","_jsxs","_Fragment","children","onClick","openLightbox","className","styles","cAttachmentImg","_jsx","concat","src","alt","onLoad","setImageIsLoaded","cAttachmentImgPreviwBtn","FullSizeIcon","ImageIcon","classes","imageIconRoot","htmlColor","fontSize","lightboxIsOpen","ImageViewer","mainSrc","imagePadding","onAfterOpen","handleLightboxOpen","onCloseRequest","handleLightboxClose","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","onClose","closePreview","open","previewIsOpen","download","href","cAttachmentFileDownloadWrapperForm","IconButton","downloadIcon","type","DownloadIcon","Attachment","useState","_useState2","_slicedToArray","_useState","isImageLoaded","setIsImageLoaded","_useState4","_useState3","isLightboxOpen","setIsLightboxOpen","_useState6","_useState5","isPreviewOpen","setIsPreviewOpen","isImage","getIsImage","isVideo","getIsVideo","preventIOSScroll","useCallback","e","preventDefault","cAttachment","document","documentElement","addEventListener","passive","removeEventListener","ReactPlayer","canPlay","cAttachmentReactPlayer","url","config","file","attributes","preload","controls","stopPropagation","propTypes","PropTypes","string","isRequired","number","oneOf","shape","bool","defaultProps","undefined","Attachment$1","withStyles","theme","top","left","transform","margin","whiteSpace","textOverflow","fontWeight","color","palette","primary","text3","text9","marginRight","minWidth","flexDirection"],"mappings":"wqMAyBA,IAEMA,EAAUC,EAAK,KACfC,EAAUD,EAAK,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,GACtB,IAAMC,EAAeC,EAAaF,EAAMG,qBAAuBH,EAAMI,cACrE,OACEC,EAAAC,EAAA,CAAAC,SACE,CAAAF,EAAA,MAAA,CAAKG,QAASR,EAAMS,aAAcC,UAAWC,EAAOC,eAAeL,SACjE,CAAAM,EAAA,MAAA,CACE,cAAA,GAAAC,OArGQ,aAqG0B,UAClCC,IAAKd,EACLrB,MAAOA,EAAMC,UAAUmB,EAAMlB,cAAekB,EAAMjB,MAClDiC,IAAI,aACJC,OAAQjB,EAAMkB,mBAEhBL,EAAA,MAAA,CAAK,cAAA,GAAAC,OA3GK,aA2G8B,WAACJ,UAAWC,EAAOQ,wBAAwBZ,SACjFM,EAACO,EAAY,UAIfpB,EAAMlB,eACN+B,EAAA,MAAA,CAAKjC,MAAOA,EAAMc,iBAAiBa,SACjCM,EAACQ,EAAS,CACR,cAAA,GAAAP,OAnHM,aAmHkC,gBACxCJ,UAAWV,EAAMsB,QAAQC,cACzBC,UAAWhD,EACXiD,SAAS,YAKdzB,EAAM0B,gBACLb,EAACc,EAAW,CACVC,QAAS3B,EACT4B,aAAc,GACdC,YAAa9B,EAAM+B,mBACnBC,eAAgBhC,EAAMiC,wBAKhC,EAEMC,EAAiB,SAAAlC,GACrB,IAAMmC,EAAWC,EAAMC,iCAAiCrC,EAAMsC,aAAetC,EAAMI,eAE7EmC,EAAarC,EAAaF,EAAMG,mBAAoB,UACpDqC,EAActC,EAAaF,EAAMG,mBAAoB,cAErDsC,EAAuBC,EAAwBP,GAOrD,OACE9B,EAAA,MAAA,CAAKK,UAAWC,EAAOgC,uBAAuBpC,SAC5C,CAAAF,EAAA,MAAA,CACEK,UAAWkC,EACTjC,EAAOkC,+BACPJ,GAAwBzC,EAAMsB,QAAQwB,iBAExClE,MAAOA,EAAMU,oBACbkB,QAbwB,WACxBiC,GACJzC,EAAM+C,eAW6BxC,SAE9BkC,CAAAA,EACC5B,EAACmC,EAAmB,CAACtC,UAAWV,EAAMsB,QAAQ2B,sBAE9CpC,EAACqC,EAAY,CACXf,SAAUnC,EAAMsC,aAAetC,EAAMI,cACrCM,UAAWC,EAAOwC,uCAClBpE,KAAMiB,EAAMoD,MAAQ,GAAK,KAG7B/C,EAAA,MAAA,CAAKK,UAAWV,EAAMsB,QAAQ+B,eAAe9C,SAAA,CAC1CkC,GAAwB5B,EAAA,MAAA,CAAKH,UAAWV,EAAMsB,QAAQgC,QAAQ/C,SAAA,wBAC/DM,EAAA,MAAA,CACE,cAAA,GAAAC,OA1KM,aA0K2B,SACjCJ,UAAWkC,EACTjC,EAAO4C,uCACPd,GAAwBzC,EAAMsB,QAAQa,UACtC5B,SAEFM,EAAC2C,EAAU,CAACC,QAAQ,YAAYC,QAAM,EAAChD,UAAWV,EAAMsB,QAAQqC,oBAAoBpD,SACjF4B,SAIPtB,EAAC+C,EAAiB,CAChBC,QAAStB,EACTjB,QAAS,CACPwC,KAAM9D,EAAMsB,QAAQyC,WACpBC,MAAOC,EAAmBjE,EAAMsB,QAAQ4C,aAAelE,EAAMsB,QAAQ6C,QAEvEhC,SAAUA,EACViC,SAAUpE,EAAMqE,eAChBC,QAAStE,EAAMuE,aACfC,KAAMxE,EAAMyE,mBAGhB5D,EAAA,IAAA,CACE6D,SAAU1E,EAAMsC,YAChBqC,KAAMnC,EACN9B,UAAWC,EAAOiE,mCAAmCrE,SAErDM,EAACgE,EAAU,CACT,cAAA,GAAA/D,OAvMQ,aAuMmC,mBAC3CJ,UAAWV,EAAMsB,QAAQwD,aACzBC,KAAK,SAAQxE,SAEbM,EAACmE,EAAY,CAACjG,KAAM,GAAI2B,UAAWV,EAAMsB,QAAQwD,qBAK3D,EAIA,SAASG,EAAWjF,GAClB,IAA0CkF,EAAAA,GAAS,GAAMC,EAAAC,EAAAC,EAAA,GAAlDC,EAAaH,EAAA,GAAEI,EAAgBJ,EAAA,GACMD,EAAAA,GAAS,GAAMM,EAAAJ,EAAAK,EAAA,GAApDC,EAAcF,EAAA,GAAEG,EAAiBH,EAAA,GACEN,EAAAA,GAAS,GAAMU,EAAAR,EAAAS,EAAA,GAAlDC,EAAaF,EAAA,GAAEG,EAAgBH,EAAA,GAEhCzD,EAAWnC,EAAMsC,aAAetC,EAAMI,eAAiBJ,EAAMmC,SAC7D6D,EAAUC,EAAW9D,GACrB+D,EAAUC,EAAWhE,GAGrBlC,EAAeC,GAAcF,EAAMI,eAAiBJ,EAAMmC,UAC1D/B,EAAgBJ,EAAMI,eAAiBH,EACvCmG,EAAmBC,GAAY,SAAAC,GAAC,OAAIA,EAAEC,gBAAgB,GAAE,IA6B9D,OAAIP,EAEAnF,EAAA,MAAA,CAAKH,UAAWC,EAAO6F,YAAYjG,SACjCM,EAACd,EAAe,CACdhB,KAAMiB,EAAMjB,KACZ0B,aAba,WAAH,OAASkF,GAAkB,EAAK,EAc1CxF,mBAAoBH,EAAMmC,SAC1B/B,cAAeJ,EAAMI,cACrBc,iBAfe,WAAH,OAASqE,GAAiB,EAAK,EAgB3CzG,cAAewG,EACf5D,eAAgBgE,EAChB3D,mBApCmB,WACrBkC,GAEFwC,SAASC,gBAAgBC,iBAAiB,YAAaP,EAAkB,CACvEQ,SAAS,KAiCP3E,oBA5BoB,WACtBgC,GAEFwC,SAASC,gBAAgBG,oBAAoB,YAAaT,GAE5DT,GAAkB,IAwBZrE,QAAStB,EAAMsB,YAKnB4E,GAAWY,EAAYC,QAAQ3G,GAE/BS,EAAA,MAAA,CAAKH,UAAWC,EAAO6F,YAAYjG,SACjCM,EAACiG,EAAW,CACV,cAAA,GAAAhG,OAnRQ,aAmR2B,WACnCJ,UAAWC,EAAOqG,uBAClBC,IAAK7G,EACL8G,OAAQ,CAAEC,KAAM,CAAEC,WAAY,CAAEC,QAAS,cACzCC,UAAQ,EACRxH,OAAQE,EAAMjB,OAASN,EAAYC,MAAQD,EAAYE,MAAQF,EAAaE,MAC5Ec,MAAO,SAMboB,EAAA,MAAA,CAAKH,UAAWC,EAAO6F,YAAYjG,SACjCM,EAACqB,EAAc,CACb9B,cAAeA,EACfD,mBAAoBH,EAAMmC,SAC1BkC,eAAgBrE,EAAMqE,eACtB/B,YAAatC,EAAMsC,YACnBS,YA9Cc,WAAH,OAASgD,GAAiB,EAAK,EA+C1CxB,aA9Ce,SAAA+B,GACnBA,EAAEiB,kBACFxB,GAAiB,IA6CbtB,cAAeqB,EACfxE,QAAStB,EAAMsB,QACf8B,MAAOpD,EAAMoD,SAIrB,CAEA6B,EAAWuC,UAAY,CACrBpH,cAAeqH,EAAUC,OAAOC,WAChCtD,eAAgBoD,EAAUG,OAC1BtF,YAAamF,EAAUC,OACvBvF,SAAUsF,EAAUC,OACpB3I,KAAM0I,EAAUI,MAAM,CAACpJ,EAAYC,MAAOD,EAAaC,QACvD4C,QAASmG,EAAUK,MAAM,CAAA,GAAIH,WAC7BvE,MAAOqE,EAAUM,MAGnB9C,EAAW+C,aAAe,CACxB1F,YAAa,KACbH,SAAU,KACVkC,oBAAgB4D,EAChBlJ,KAAMN,EAAaC,MACnB0E,OAAO,GAGT,IAAA8E,EAAeC,GA3RG,SAAAC,GAAK,MAAK,CAC1B7G,cAAe,CACb5B,SAAU,WACV0I,IAAK,MACLC,KAAM,MACNC,UAAW,yBAEbpE,OAAQ,CACN1E,MAAO,MACPK,OAAQ,MACRd,SAAU,OACVW,SAAU,YAEZuE,aAAc,CACZzE,MAAO,OACPK,OAAQ,OACRd,SAAU,OACVG,UAAW,OACXqJ,OAAQ,GAEVzE,WAAY,CAEVnE,gBAAiB,uBAEnBuC,SAAU,CACRjD,SAAU,SACVuJ,WAAY,SACZC,aAAc,WACdC,WAAY,KAEd7D,aAAc,CACZ8D,MAAOR,EAAMS,QAAQC,QAAQC,OAE/BjG,gBAAiB,CACflD,gBAAiBwI,EAAMS,QAAQC,QAAQE,OAEzC/F,oBAAqB,CACnBgG,YAAa,GACbC,SAAU,IAEZ7F,eAAgB,CACdjE,QAAS,OACT+J,cAAe,SACf1J,MAAO,QAET6D,QAAS,CACP7B,SAAU,GACVkH,WAAY,IACZlJ,MAAO,eAETkE,oBAAqB,CACnBlC,SAAU,GACVkH,WAAY,KAEf,GAqOcR,CAAsBlD"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Attachment/index.js"],"sourcesContent":["import { useState, useCallback } 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';\n\nimport styles from './styles.css';\n\nimport FileTypeIcon from '~components/FileTypeIcon';\nimport ImageViewer from '~components/ImageViewer';\nimport IconButton from '~components/IconButton';\nimport { isNativeDetected } from '~/utils/mobileDetect';\nimport { getIsVideo, getIsImage } from '~/utils/fileExtension';\nimport { getIsPreviewUnavailable } from '~/utils/filePreview';\nimport { DownloadIcon } from '~/icons';\nimport { useSignedURL } from '~/effects';\nimport utils from '~utils/main'; // question here\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 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.imageIsLoaded, props.size)}\n alt=\"Attachment\"\n onLoad={props.setImageIsLoaded}\n />\n <div data-testid={`${PAGE_NAME}_button`} className={styles.cAttachmentImgPreviwBtn}>\n <FullSizeIcon />\n </div>\n </div>\n\n {!props.imageIsLoaded && (\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 mainSrc={downloadLink}\n imagePadding={50}\n onAfterOpen={props.handleLightboxOpen}\n onCloseRequest={props.handleLightboxClose}\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(props) {\n const [isImageLoaded, setIsImageLoaded] = useState(false);\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 = () => {\n if (isNativeDetected) {\n // document.documentElement.style.overflowY = 'hidden';\n document.documentElement.addEventListener('touchmove', preventIOSScroll, {\n passive: false,\n });\n }\n };\n\n const handleLightboxClose = () => {\n if (isNativeDetected) {\n // document.documentElement.style.overflowY = 'visible';\n document.documentElement.removeEventListener('touchmove', preventIOSScroll);\n }\n setIsLightboxOpen(false);\n };\n\n const openLightbox = () => setIsLightboxOpen(true);\n const setImageLoaded = () => setIsImageLoaded(true);\n const openPreview = () => setIsPreviewOpen(true);\n const closePreview = 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 setImageIsLoaded={setImageLoaded}\n imageIsLoaded={isImageLoaded}\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\nAttachment.defaultProps = {\n displayName: null,\n fileName: null,\n attachmentSize: undefined,\n size: SIZES.medium.label,\n small: false,\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","downloadLink","useSignedURL","attachmentFileName","attachmentUrl","_jsxs","_Fragment","children","onClick","openLightbox","className","styles","cAttachmentImg","_jsx","concat","src","alt","onLoad","setImageIsLoaded","cAttachmentImgPreviwBtn","FullSizeIcon","ImageIcon","classes","imageIconRoot","htmlColor","fontSize","lightboxIsOpen","ImageViewer","mainSrc","imagePadding","onAfterOpen","handleLightboxOpen","onCloseRequest","handleLightboxClose","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","onClose","closePreview","open","previewIsOpen","download","href","cAttachmentFileDownloadWrapperForm","IconButton","downloadIcon","type","DownloadIcon","Attachment","useState","_useState2","_slicedToArray","_useState","isImageLoaded","setIsImageLoaded","_useState4","_useState3","isLightboxOpen","setIsLightboxOpen","_useState6","_useState5","isPreviewOpen","setIsPreviewOpen","isImage","getIsImage","isVideo","getIsVideo","preventIOSScroll","useCallback","e","preventDefault","cAttachment","document","documentElement","addEventListener","passive","removeEventListener","ReactPlayer","canPlay","cAttachmentReactPlayer","url","config","file","attributes","preload","controls","stopPropagation","propTypes","PropTypes","string","isRequired","number","oneOf","shape","bool","defaultProps","undefined","Attachment$1","withStyles","theme","top","left","transform","margin","whiteSpace","textOverflow","fontWeight","color","palette","primary","text3","text9","marginRight","minWidth","flexDirection"],"mappings":"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"}
|