@corva/ui 3.78.0-3 → 3.78.0-5
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/index.js +1 -1
- package/cjs-bundle/clients/index.js.map +1 -1
- package/cjs-bundle/clients/subscriptions/constants.js +1 -1
- package/cjs-bundle/clients/subscriptions/constants.js.map +1 -1
- package/cjs-bundle/clients/subscriptions.js +1 -1
- package/cjs-bundle/clients/subscriptions.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/CommentComposer/CommentComposer.js +1 -1
- package/cjs-bundle/components/CommentComposer/CommentComposer.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/CommentsSwitch/CommentsSwitchButton.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js.map +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js +1 -1
- package/cjs-bundle/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js.map +1 -1
- package/cjs-bundle/components/DevCenter/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/GradientManager/GradientManager.js +1 -1
- package/cjs-bundle/components/GradientManager/GradientManager.js.map +1 -1
- package/cjs-bundle/components/GradientManager/GradientSelect.js +1 -1
- package/cjs-bundle/components/GradientManager/GradientSelect.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/OffsetWellPickerDialog.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/OffsetWellPickerDialog.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Map/Map.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Map/Map.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -1
- package/cjs-bundle/components/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/OffsetWellPickerV5.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/Filter.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsData.utils.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsData.utils.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsFetch.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsFetch.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyProvider.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyProvider.js.map +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/useFetchSubjectWell.js.map +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/useSearchedWells.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useCompanies.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useCompanies.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useExternalOffsets.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useExternalOffsets.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useIsAdmin.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/useIsAdmin.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/usePinnedWells.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/hooks/usePinnedWells.js.map +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js +1 -1
- package/cjs-bundle/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js.map +1 -1
- package/cjs-bundle/components/PadModeSelect/effects/useWellStreamActivityTypeSubscription.js +1 -1
- package/cjs-bundle/components/PadModeSelect/effects/useWellStreamActivityTypeSubscription.js.map +1 -1
- package/cjs-bundle/components/PadOffsetsPicker/StagesSelector.js +1 -1
- package/cjs-bundle/components/PadOffsetsPicker/StagesSelector.js.map +1 -1
- package/cjs-bundle/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js +1 -1
- package/cjs-bundle/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js.map +1 -1
- package/cjs-bundle/components/PinnableFilters/effects/index.js +1 -1
- package/cjs-bundle/components/PinnableFilters/effects/index.js.map +1 -1
- package/cjs-bundle/components/RealTimeValuesSidebar/SidebarFooter.js +1 -1
- package/cjs-bundle/components/RealTimeValuesSidebar/SidebarFooter.js.map +1 -1
- package/cjs-bundle/components/index.js +1 -1
- package/cjs-bundle/componentsV2/AppFooter/DqPopover/DqPopover.js +1 -1
- package/cjs-bundle/componentsV2/AppFooter/DqPopover/DqPopover.js.map +1 -1
- package/cjs-bundle/componentsV2/AppHeader/AppAssets/utils.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/AppAssets/utils.js.map +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/Actions/Actions.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/Actions/Actions.js.map +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AppTitle/AppTitle.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AppTitle/AppTitle.js.map +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js.map +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js +1 -1
- package/cjs-bundle/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js.map +1 -1
- package/cjs-bundle/componentsV2/AppPanel/AppPanelDisplay.js +1 -1
- package/cjs-bundle/componentsV2/AppPanel/AppPanelDisplay.js.map +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/Map/Map.js +1 -1
- package/cjs-bundle/componentsV2/CompletionsOffsetWellPicker/Map/Map.js.map +1 -1
- package/cjs-bundle/componentsV2/InterventionEventSelector/useInterventionUnitEvents.js +1 -1
- package/cjs-bundle/componentsV2/InterventionEventSelector/useInterventionUnitEvents.js.map +1 -1
- package/cjs-bundle/componentsV2/PadModeSelect/PadModeSelect.js +1 -1
- package/cjs-bundle/componentsV2/PadModeSelect/PadModeSelect.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/PublishModal/PublishModal.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/PublishModal/PublishModal.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/ShareModal/ShareModal.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/ShareModal/ShareModal.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/utils.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Store/utils.js.map +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Toggle/Toggle.js +1 -1
- package/cjs-bundle/componentsV2/TemplatesControl/Toggle/Toggle.js.map +1 -1
- package/cjs-bundle/componentsV2/TextInputBase/TextInputBase.js +1 -1
- package/cjs-bundle/componentsV2/TextInputBase/TextInputBase.js.map +1 -1
- package/cjs-bundle/componentsV2/TextInputNext/TextInputNext.js +1 -1
- package/cjs-bundle/componentsV2/TextInputNext/TextInputNext.js.map +1 -1
- package/cjs-bundle/effects/index.js +1 -1
- package/cjs-bundle/effects/subscriptions/fetchInitialSubscriptionsData.js +2 -0
- package/cjs-bundle/effects/subscriptions/fetchInitialSubscriptionsData.js.map +1 -0
- package/cjs-bundle/effects/subscriptions/useSubscriptions.v2.js +1 -1
- package/cjs-bundle/effects/subscriptions/useSubscriptions.v2.js.map +1 -1
- package/cjs-bundle/effects/useGlobalOffsetWellsSync.js +1 -1
- package/cjs-bundle/effects/useGlobalOffsetWellsSync.js.map +1 -1
- package/cjs-bundle/effects/useSubscriptions.js +1 -1
- package/cjs-bundle/effects/useSubscriptions.js.map +1 -1
- package/cjs-bundle/effects/useWellnessAlerts.js +1 -1
- package/cjs-bundle/effects/useWellnessAlerts.js.map +1 -1
- package/cjs-bundle/testing/AppTestWrapper/AppTestWrapper.js +1 -1
- package/cjs-bundle/testing/AppTestWrapper/AppTestWrapper.js.map +1 -1
- package/clients/index.d.ts +1 -9
- package/clients/index.d.ts.map +1 -1
- package/clients/index.js +1 -1
- package/clients/index.js.map +1 -1
- package/clients/subscriptions/constants.d.ts +0 -1
- package/clients/subscriptions/constants.d.ts.map +1 -1
- package/clients/subscriptions/constants.js +1 -1
- package/clients/subscriptions/constants.js.map +1 -1
- package/clients/subscriptions.d.ts.map +1 -1
- package/clients/subscriptions.js +1 -1
- package/clients/subscriptions.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/CommentComposer/CommentComposer.js +1 -1
- package/components/CommentComposer/CommentComposer.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/CommentsSwitch/CommentsSwitchButton.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/LegacyAppActions.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/NonPriorityMenus.js.map +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js +1 -1
- package/components/DevCenter/DevCenterAppContainer/components/PriorityMenus.js.map +1 -1
- package/components/DevCenter/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/BHAComponentDetail/constants.d.ts +2 -2
- package/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Agitator/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Bit/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Component.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Component.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/DrillCollar/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/DrillPipe/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Jar/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Lwd/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Mwd/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Pdm/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Rss/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Stabilizer/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Sub/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/Ur/Editor.js.map +1 -1
- package/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js +1 -1
- package/components/Drillstring/BHAComponentsTable/components/shared/ConfirmationPopup.js.map +1 -1
- package/components/FeedItem/FeedItem.js +1 -1
- package/components/FeedItem/FeedItem.js.map +1 -1
- package/components/GradientManager/GradientManager.js +1 -1
- package/components/GradientManager/GradientManager.js.map +1 -1
- package/components/GradientManager/GradientSelect.js +1 -1
- package/components/GradientManager/GradientSelect.js.map +1 -1
- package/components/OffsetWellPickerV2/OffsetWellPickerDialog.js +1 -1
- package/components/OffsetWellPickerV2/OffsetWellPickerDialog.js.map +1 -1
- package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js +1 -1
- package/components/OffsetWellPickerV2/components/Filter/ToggleMapButton.js.map +1 -1
- package/components/OffsetWellPickerV2/components/Map/Map.js +1 -1
- package/components/OffsetWellPickerV2/components/Map/Map.js.map +1 -1
- package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js +1 -1
- package/components/OffsetWellPickerV2/components/Table/MetricsAddMenu.js.map +1 -1
- package/components/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/OffsetWellPickerV5.js.map +1 -1
- package/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js +1 -1
- package/components/OffsetWellPickerV5/components/AppHeader/components/HeaderActions/HeaderActions.js.map +1 -1
- package/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js +1 -1
- package/components/OffsetWellPickerV5/components/AppHeader/components/LoadAllWellsToggle/LoadAllWellsToggle.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Filter/Filter.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/Filter.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/CustomDateFields/CustomDateFields.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/PeriodFilterSelect/PeriodFilterSelect.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js +1 -1
- package/components/OffsetWellPickerV5/components/Filter/components/SingleFilterSelect/SingleFilterSelect.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/ClusterTooltip/ClusterTooltip.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/LayerSwitcher/LayerSwitcher.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapControls/MapControls.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/MapHints/MapHintsStash.js.map +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js +1 -1
- package/components/OffsetWellPickerV5/components/Map/OffsetWellMap/components/SubjectWellMarker/SubjectWellMarker.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerContent/OffsetWellPickerContent.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/OffsetWellPickerV5WithStore.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/CompanySafeguardWrapper/CompanySafeguardWrapper.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellPickerV5WithStore/components/UserSettingsWrapper/UserSettingsWrapper.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AssetResultSection/AssetResultSection.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/components/AutoCompleteAssetSearch/AutoCompleteAssetSearch.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsData.utils.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsData.utils.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsFetch.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/AdvancedSearch/hooks/useAssetsFetch.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/CompanyCell/CompanyCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/FormationCell/FormationCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/InterventionAssetCell/InterventionAssetCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/PadNameCell/PadNameCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/RigCell/RigCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/cells/WellNameCell/WellNameCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/MetricCell/MetricCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/SettingsMenu.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/MetricsSettingsSection/MetricsSettingsSection.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/SettingsMenu/components/TableSettingsSection/TableSettingsSection.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/components/WellNameHeaderCell/WellNameHeaderCell.js.map +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js +1 -1
- package/components/OffsetWellPickerV5/components/OffsetWellsTable/hooks/useAdvancedSearchHandler.js.map +1 -1
- package/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js +1 -1
- package/components/OffsetWellPickerV5/components/PickerModalActions/PickerModalActions.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useAdvancedWells.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyMetricKey.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyProvider.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useCompanyProvider.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useFetchSubjectWell.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useFetchSubjectWell.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useSearchedWells.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useSearchedWells.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js +1 -1
- package/components/OffsetWellPickerV5/hooks/use-well-data-pipeline/useWellDataPipeline.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useAllWells/useLoadAllWellsCallback.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/useCompanies.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useCompanies.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/useExternalOffsets.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useExternalOffsets.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/useIsAdmin.js +1 -1
- package/components/OffsetWellPickerV5/hooks/useIsAdmin.js.map +1 -1
- package/components/OffsetWellPickerV5/hooks/usePinnedWells.js +1 -1
- package/components/OffsetWellPickerV5/hooks/usePinnedWells.js.map +1 -1
- package/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js +1 -1
- package/components/OffsetWellPickerV5/stores/idas-resync-store/createIdasResyncController.js.map +1 -1
- package/components/PadModeSelect/effects/useWellStreamActivityTypeSubscription.js +1 -1
- package/components/PadModeSelect/effects/useWellStreamActivityTypeSubscription.js.map +1 -1
- package/components/PadOffsetsPicker/StagesSelector.js +1 -1
- package/components/PadOffsetsPicker/StagesSelector.js.map +1 -1
- package/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js +1 -1
- package/components/PadOffsetsPickerV2/PadOffsetsPickerV2.js.map +1 -1
- package/components/PinnableFilters/effects/index.js +1 -1
- package/components/PinnableFilters/effects/index.js.map +1 -1
- package/components/RealTimeValuesSidebar/SidebarFooter.js +1 -1
- package/components/RealTimeValuesSidebar/SidebarFooter.js.map +1 -1
- package/components/index.js +1 -1
- package/componentsV2/AppFooter/DqPopover/DqPopover.js +1 -1
- package/componentsV2/AppFooter/DqPopover/DqPopover.js.map +1 -1
- package/componentsV2/AppHeader/AppAssets/utils.js +1 -1
- package/componentsV2/AppHeader/AppAssets/utils.js.map +1 -1
- package/componentsV2/AppHeader/V3/Actions/Actions.js +1 -1
- package/componentsV2/AppHeader/V3/Actions/Actions.js.map +1 -1
- package/componentsV2/AppHeader/V3/AppTitle/AppTitle.js +1 -1
- package/componentsV2/AppHeader/V3/AppTitle/AppTitle.js.map +1 -1
- package/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js +1 -1
- package/componentsV2/AppHeader/V3/AssetSelector/AssetSelector.js.map +1 -1
- package/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js +1 -1
- package/componentsV2/AppHeader/V3/VersionSelect/VersionSelect.js.map +1 -1
- package/componentsV2/AppPanel/AppPanelDisplay.js +1 -1
- package/componentsV2/AppPanel/AppPanelDisplay.js.map +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/Map/Map.js +1 -1
- package/componentsV2/CompletionsOffsetWellPicker/Map/Map.js.map +1 -1
- package/componentsV2/InterventionEventSelector/useInterventionUnitEvents.js +1 -1
- package/componentsV2/InterventionEventSelector/useInterventionUnitEvents.js.map +1 -1
- package/componentsV2/PadModeSelect/PadModeSelect.js +1 -1
- package/componentsV2/PadModeSelect/PadModeSelect.js.map +1 -1
- package/componentsV2/TemplatesControl/PublishModal/PublishModal.js +1 -1
- package/componentsV2/TemplatesControl/PublishModal/PublishModal.js.map +1 -1
- package/componentsV2/TemplatesControl/ShareModal/ShareModal.js +1 -1
- package/componentsV2/TemplatesControl/ShareModal/ShareModal.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.d.ts.map +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js +1 -1
- package/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.js.map +1 -1
- package/componentsV2/TemplatesControl/Store/utils.d.ts +7 -0
- package/componentsV2/TemplatesControl/Store/utils.d.ts.map +1 -1
- package/componentsV2/TemplatesControl/Store/utils.js +1 -1
- package/componentsV2/TemplatesControl/Store/utils.js.map +1 -1
- package/componentsV2/TemplatesControl/Toggle/Toggle.js +1 -1
- package/componentsV2/TemplatesControl/Toggle/Toggle.js.map +1 -1
- package/componentsV2/TextInputBase/TextInputBase.js +1 -1
- package/componentsV2/TextInputBase/TextInputBase.js.map +1 -1
- package/componentsV2/TextInputNext/TextInputNext.js +1 -1
- package/componentsV2/TextInputNext/TextInputNext.js.map +1 -1
- package/effects/index.js +1 -1
- package/effects/subscriptions/fetchInitialSubscriptionsData.d.ts +23 -0
- package/effects/subscriptions/fetchInitialSubscriptionsData.d.ts.map +1 -0
- package/effects/subscriptions/fetchInitialSubscriptionsData.js +2 -0
- package/effects/subscriptions/fetchInitialSubscriptionsData.js.map +1 -0
- package/effects/subscriptions/useSubscriptions.v2.d.ts.map +1 -1
- package/effects/subscriptions/useSubscriptions.v2.js +1 -1
- package/effects/subscriptions/useSubscriptions.v2.js.map +1 -1
- package/effects/useGlobalOffsetWellsSync.js +1 -1
- package/effects/useGlobalOffsetWellsSync.js.map +1 -1
- package/effects/useSubscriptions.d.ts +1 -2
- package/effects/useSubscriptions.d.ts.map +1 -1
- package/effects/useSubscriptions.js +1 -1
- package/effects/useSubscriptions.js.map +1 -1
- package/effects/useWellnessAlerts.js +1 -1
- package/effects/useWellnessAlerts.js.map +1 -1
- package/mcp-server/server.mjs +17 -5
- package/package.json +1 -1
- package/testing/AppTestWrapper/AppTestWrapper.js +1 -1
- package/testing/AppTestWrapper/AppTestWrapper.js.map +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/cjs-bundle/clients/subscriptions.v1.js +0 -2
- package/cjs-bundle/clients/subscriptions.v1.js.map +0 -1
- package/cjs-bundle/effects/subscriptions/useSubscriptions.v1.js +0 -2
- package/cjs-bundle/effects/subscriptions/useSubscriptions.v1.js.map +0 -1
- package/clients/subscriptions.v1.d.ts +0 -9
- package/clients/subscriptions.v1.d.ts.map +0 -1
- package/clients/subscriptions.v1.js +0 -2
- package/clients/subscriptions.v1.js.map +0 -1
- package/effects/subscriptions/useSubscriptions.v1.d.ts +0 -24
- package/effects/subscriptions/useSubscriptions.v1.d.ts.map +0 -1
- package/effects/subscriptions/useSubscriptions.v1.js +0 -2
- package/effects/subscriptions/useSubscriptions.v1.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublishModal.js","sources":["../../../../src/componentsV2/TemplatesControl/PublishModal/PublishModal.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useState } from 'react';\nimport { Collapse } from '@material-ui/core';\nimport Jsona from 'jsona';\n\nimport { Modal } from '../../Modal';\nimport { TextInput } from '../../TextInput';\nimport { Template } from '../types';\nimport { suggestName } from '../utils';\nimport { storeApi } from '../Store';\nimport { Radio } from '../../Radio';\nimport { Text } from '../../Text';\nimport { Autocomplete, AutocompleteProps } from '../../Autocomplete';\nimport { TextEndTruncated } from '../../TextEndTruncated';\n\nimport styles from './PublishModal.scss';\n\nimport { useAppCommons, useLoadedData } from '~/effects';\nimport { getPrograms, getRigs } from '~/clients/jsonApi';\n\ntype AutocompleteOption = { id: number; title: string };\n\nconst dataFormatter = new Jsona();\nconst getDataFromResponseFn = (data: object) => {\n const parsed = dataFormatter.deserialize(data) as { id: string; name: string }[];\n return parsed.map<AutocompleteOption>(({ id, name }) => ({ id: Number(id), title: name }));\n};\n\ntype UseLoadedReturnType<T = AutocompleteOption> = {\n data: T[];\n isLoading: boolean;\n loadData: (options: object) => Promise<void>;\n};\n\nconst renderSelected: AutocompleteProps<AutocompleteOption, true>['renderSelected'] = options => (\n <Text size={16} className={styles.selected} tagName=\"div\">\n <TextEndTruncated>{options.map(({ option: { title } }) => title).join(', ')}</TextEndTruncated>\n </Text>\n);\n\ntype RadioLabelProps = {\n title: ReactNode;\n subTitle: ReactNode;\n controls?: ReactNode;\n open?: boolean;\n};\n\nconst RadioLabel = ({ subTitle, title, controls, open = false }: RadioLabelProps) => (\n <>\n <Text size={16}>{title}</Text>\n <Text size={14} color=\"T6\" className={styles.labelSubTitle}>\n {subTitle}\n </Text>\n {controls && <Collapse in={open}>{controls}</Collapse>}\n </>\n);\n\nexport type PublishModalProps = {\n open: boolean;\n onClose: () => void;\n template: Template;\n};\n\ntype PublishTypes = 'company' | 'programs' | 'rigs';\n\nexport const PublishModal = ({ onClose, open, template }: PublishModalProps) => {\n const { useAllTemplates, usePublishTemplate } = storeApi;\n const allTemplates = useAllTemplates();\n const publishTemplate = usePublishTemplate();\n\n const { currentUser: { company_id: companyId } = {} } = useAppCommons();\n\n const [name, setName] = useState(template.name);\n const [type, setType] = useState<PublishTypes>('company');\n const [selectedPrograms, setSelectedPrograms] = useState<AutocompleteOption[]>([]);\n const [selectedRigs, setSelectedRigs] = useState<AutocompleteOption[]>([]);\n const [rigSearch, setRigSearch] = useState('');\n\n const isCompanyType = type === 'company';\n const isProgramType = type === 'programs';\n const isRigsType = type === 'rigs';\n\n const suggestedName = suggestName(name, allTemplates);\n\n const {\n data: programOptions,\n isLoading: isLoadingPrograms,\n loadData: loadPrograms,\n } = useLoadedData({\n initialData: [] as never,\n initialLoading: true,\n loadFn: getPrograms,\n getDataFromResponseFn,\n }) as unknown as UseLoadedReturnType;\n\n const {\n data: rigOptions,\n isLoading: isLoadingRigs,\n loadData: loadRigs,\n } = useLoadedData({\n initialData: [] as never,\n initialLoading: true,\n loadFn: getRigs,\n getDataFromResponseFn,\n }) as unknown as UseLoadedReturnType;\n\n const primaryActionProps = useMemo(\n () => ({\n disabled:\n name.trim().length === 0 ||\n !!suggestedName ||\n (type === 'programs' && selectedPrograms.length === 0) ||\n (type === 'rigs' && selectedRigs.length === 0),\n }),\n [name, selectedPrograms.length, selectedRigs.length, suggestedName, type]\n );\n\n useEffect(() => {\n if (isProgramType && !programOptions.length) {\n loadPrograms({ per_page: 1000, fields: ['program.name'], company_id: companyId });\n }\n }, [companyId, isProgramType, loadPrograms, programOptions.length]);\n\n useEffect(() => {\n if (isRigsType) {\n loadRigs({ per_page: 200, fields: ['rig.name'], company_id: companyId, search: rigSearch });\n }\n }, [companyId, isRigsType, loadRigs, rigSearch]);\n\n useEffect(() => {\n if (open) {\n setSelectedRigs([]);\n setSelectedPrograms([]);\n setType('company');\n }\n }, [open]);\n\n const publish = useCallback(() => {\n if (type === 'company') {\n publishTemplate(template.id, name, {});\n } else if (type === 'programs' && selectedPrograms.length) {\n publishTemplate(template.id, name, {\n programIds: selectedPrograms.map(({ id }) => id),\n });\n } else if (type === 'rigs' && selectedRigs.length) {\n publishTemplate(template.id, name, {\n rigIds: selectedRigs.map(({ id }) => id),\n });\n }\n onClose();\n }, [name, onClose, publishTemplate, selectedPrograms, selectedRigs, template.id, type]);\n\n return (\n <Modal\n title=\"Confirm Template Publication\"\n size=\"medium\"\n open={open}\n onClose={onClose}\n primaryActionText=\"Publish\"\n primaryActionHandler={publish}\n primaryActionProps={primaryActionProps}\n secondaryActionText=\"Cancel\"\n secondaryActionHandler={onClose}\n >\n <div className={styles.root}>\n <TextInput\n label=\"Template Name\"\n value={name}\n onChange={setName}\n status={suggestedName ? 'error' : undefined}\n message={suggestedName && `Name should be unique. Try \"${suggestedName}\"`}\n />\n\n <Radio\n checked={isCompanyType}\n onChange={() => setType('company')}\n label={\n <RadioLabel\n title=\"Entire Company\"\n subTitle=\"It will be available to all company employees.\"\n />\n }\n />\n\n <Radio\n checked={isProgramType}\n onChange={() => setType('programs')}\n label={\n <RadioLabel\n title=\"For Selected Programs Only\"\n subTitle=\"Will be visible to employees with selected Programs only.\"\n open={isProgramType}\n controls={\n <Autocomplete\n label=\"Select Programs\"\n options={programOptions}\n loading={isLoadingPrograms}\n multiple\n value={selectedPrograms}\n onChange={setSelectedPrograms}\n renderSelected={renderSelected}\n />\n }\n />\n }\n />\n\n <Radio\n checked={isRigsType}\n onChange={() => setType('rigs')}\n label={\n <RadioLabel\n title=\"For Selected Rigs Only\"\n subTitle=\"Visible only when Rig is selected for all employees.\"\n open={isRigsType}\n controls={\n <Autocomplete\n label=\"Select Rigs\"\n options={rigOptions}\n loading={isLoadingRigs}\n multiple\n value={selectedRigs}\n onChange={setSelectedRigs}\n onInputChange={setRigSearch}\n renderSelected={renderSelected}\n />\n }\n />\n }\n />\n </div>\n </Modal>\n );\n};\n"],"names":["dataFormatter","Jsona","getDataFromResponseFn","data","deserialize","map","_ref","id","name","Number","title","renderSelected","options","_jsx","Text","size","className","styles","selected","tagName","children","TextEndTruncated","_ref2","option","join","RadioLabel","_ref3","subTitle","controls","_ref3$open","open","_jsxs","_Fragment","color","labelSubTitle","Collapse","in","PublishModal","_ref4","onClose","template","useAllTemplates","storeApi","usePublishTemplate","allTemplates","publishTemplate","_useAppCommons$curren","useAppCommons","currentUser","companyId","company_id","_useState","useState","_useState2","_slicedToArray","setName","_useState4","_useState3","type","setType","_useState6","_useState5","selectedPrograms","setSelectedPrograms","_useState8","_useState7","selectedRigs","setSelectedRigs","_useState10","_useState9","rigSearch","setRigSearch","isCompanyType","isProgramType","isRigsType","suggestedName","suggestName","_ref5","useLoadedData","initialData","initialLoading","loadFn","getPrograms","programOptions","isLoadingPrograms","isLoading","loadPrograms","loadData","_ref6","getRigs","rigOptions","isLoadingRigs","loadRigs","primaryActionProps","useMemo","disabled","trim","length","useEffect","per_page","fields","search","publish","useCallback","programIds","_ref7","rigIds","_ref8","Modal","primaryActionText","primaryActionHandler","secondaryActionText","secondaryActionHandler","root","TextInput","label","value","onChange","status","undefined","message","concat","Radio","checked","Autocomplete","loading","multiple","onInputChange"],"mappings":"g9GAqBA,IAAMA,EAAgB,IAAIC,EACpBC,EAAwB,SAACC,GAE7B,OADeH,EAAcI,YAAYD,GAC3BE,KAAwB,SAAAC,GAAA,IAAGC,IAAAA,GAAIC,IAAAA,KAAI,MAAQ,CAAED,GAAIE,OAAOF,GAAKG,MAAOF,EAAM,GAC1F,EAQMG,EAAgF,SAAAC,GAAO,OAC3FC,EAACC,EAAI,CAACC,KAAM,GAAIC,UAAWC,EAAOC,SAAUC,QAAQ,MAAKC,SACvDP,EAACQ,EAAgB,CAAAD,SAAER,EAAQP,KAAI,SAAAiB,GAAkB,OAAAA,EAAfC,OAAUb,SAAqBc,KAAK,SACjE,EAUHC,EAAa,SAAHC,GAAA,IAAMC,IAAAA,SAAUjB,IAAAA,MAAOkB,IAAAA,SAAQC,EAAAH,EAAEI,KAAAA,cAAYD,EAAA,OAC3DE,EAAAC,EAAA,CAAAZ,SAAA,CACEP,EAACC,EAAI,CAACC,KAAM,GAAGK,SAAEV,IACjBG,EAACC,EAAI,CAACC,KAAM,GAAIkB,MAAM,KAAKjB,UAAWC,EAAOiB,cAAcd,SACxDO,IAEFC,GAAYf,EAACsB,EAAQ,CAACC,GAAIN,EAAKV,SAAEQ,MACjC,EAWQS,EAAe,SAAoDC,GAAA,IAAjDC,IAAAA,QAAST,IAAAA,KAAMU,IAAAA,SACpCC,EAAwCC,EAAxCD,gBAAiBE,EAAuBD,EAAvBC,mBACnBC,EAAeH,IACfI,EAAkBF,IAE+CG,EAAfC,IAAhDC,YAA2BC,GAAnCH,OAAA,IAAAA,EAAiD,CAAA,EAAEA,GAA5BI,WAEvBC,EAAwBC,EAASZ,EAAShC,MAAK6C,EAAAC,EAAAH,EAAA,GAAxC3C,EAAI6C,EAAA,GAAEE,EAAOF,EAAA,GACID,EAAAA,EAAuB,WAAUI,EAAAF,EAAAG,EAAA,GAAlDC,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAC4BJ,EAAAA,EAA+B,IAAGQ,EAAAN,EAAAO,EAAA,GAA3EC,EAAgBF,EAAA,GAAEG,EAAmBH,EAAA,GACJR,EAAAA,EAA+B,IAAGY,EAAAV,EAAAW,EAAA,GAAnEC,EAAYF,EAAA,GAAEG,EAAeH,EAAA,GACFZ,EAAAA,EAAS,IAAGgB,EAAAd,EAAAe,EAAA,GAAvCC,EAASF,EAAA,GAAEG,EAAYH,EAAA,GAExBI,EAAyB,YAATd,EAChBe,EAAyB,aAATf,EAChBgB,EAAsB,SAAThB,EAEbiB,GAAgBC,EAAYpE,EAAMoC,GAExCiC,GAIIC,EAAc,CAChBC,YAAa,GACbC,gBAAgB,EAChBC,OAAQC,EACRhF,sBAAAA,IAPMiF,MAANhF,KACWiF,MAAXC,UACUC,MAAVC,SAQFC,GAIIV,EAAc,CAChBC,YAAa,GACbC,gBAAgB,EAChBC,OAAQQ,EACRvF,sBAAAA,IAPMwF,MAANvF,KACWwF,MAAXN,UACUO,MAAVL,SAQIM,GAAqBC,GACzB,WAAA,MAAO,CACLC,SACyB,IAAvBvF,EAAKwF,OAAOC,UACVtB,IACQ,aAATjB,GAAmD,IAA5BI,EAAiBmC,QAC/B,SAATvC,GAA2C,IAAxBQ,EAAa+B,OACpC,GACD,CAACzF,EAAMsD,EAAiBmC,OAAQ/B,EAAa+B,OAAQtB,GAAejB,IAGtEwC,GAAU,WACJzB,IAAkBU,GAAec,QACnCX,GAAa,CAAEa,SAAU,IAAMC,OAAQ,CAAC,gBAAiBlD,WAAYD,GAEzE,GAAG,CAACA,EAAWwB,EAAea,GAAcH,GAAec,SAE3DC,GAAU,WACJxB,GACFkB,GAAS,CAAEO,SAAU,IAAKC,OAAQ,CAAC,YAAalD,WAAYD,EAAWoD,OAAQ/B,GAElF,GAAE,CAACrB,EAAWyB,EAAYkB,GAAUtB,IAErC4B,GAAU,WACJpE,IACFqC,EAAgB,IAChBJ,EAAoB,IACpBJ,EAAQ,WAEZ,GAAG,CAAC7B,IAEJ,IAAMwE,GAAUC,GAAY,WACb,YAAT7C,EACFb,EAAgBL,EAASjC,GAAIC,EAAM,CAAE,GACnB,aAATkD,GAAuBI,EAAiBmC,OACjDpD,EAAgBL,EAASjC,GAAIC,EAAM,CACjCgG,WAAY1C,EAAiBzD,KAAI,SAAAoG,GAAK,SAAFlG,EAAW,MAE/B,SAATmD,GAAmBQ,EAAa+B,QACzCpD,EAAgBL,EAASjC,GAAIC,EAAM,CACjCkG,OAAQxC,EAAa7D,KAAI,SAAAsG,GAAK,SAAFpG,EAAW,MAG3CgC,GACF,GAAG,CAAC/B,EAAM+B,EAASM,EAAiBiB,EAAkBI,EAAc1B,EAASjC,GAAImD,IAEjF,OACE7C,EAAC+F,EAAK,CACJlG,MAAM,+BACNK,KAAK,SACLe,KAAMA,EACNS,QAASA,EACTsE,kBAAkB,UAClBC,qBAAsBR,GACtBT,mBAAoBA,GACpBkB,oBAAoB,SACpBC,uBAAwBzE,EAAQnB,SAEhCW,EAAA,MAAA,CAAKf,UAAWC,EAAOgG,KAAK7F,SAAA,CAC1BP,EAACqG,EAAS,CACRC,MAAM,gBACNC,MAAO5G,EACP6G,SAAU9D,EACV+D,OAAQ3C,GAAgB,aAAU4C,EAClCC,QAAS7C,IAAa,+BAAA8C,OAAmC9C,GAAa,OAGxE9D,EAAC6G,EAAK,CACJC,QAASnD,EACT6C,SAAU,WAAA,OAAM1D,EAAQ,UAAW,EACnCwD,MACEtG,EAACY,EAAU,CACTf,MAAM,iBACNiB,SAAS,qDAKfd,EAAC6G,EAAK,CACJC,QAASlD,EACT4C,SAAU,WAAA,OAAM1D,EAAQ,WAAY,EACpCwD,MACEtG,EAACY,EAAU,CACTf,MAAM,6BACNiB,SAAS,4DACTG,KAAM2C,EACN7C,SACEf,EAAC+G,EAAY,CACXT,MAAM,kBACNvG,QAASuE,GACT0C,QAASzC,GACT0C,UAAQ,EACRV,MAAOtD,EACPuD,SAAUtD,EACVpD,eAAgBA,QAO1BE,EAAC6G,EAAK,CACJC,QAASjD,EACT2C,SAAU,WAAA,OAAM1D,EAAQ,OAAQ,EAChCwD,MACEtG,EAACY,EAAU,CACTf,MAAM,yBACNiB,SAAS,wDACTG,KAAM4C,EACN9C,SACEf,EAAC+G,EAAY,CACXT,MAAM,cACNvG,QAAS8E,GACTmC,QAASlC,GACTmC,UAAQ,EACRV,MAAOlD,EACPmD,SAAUlD,EACV4D,cAAexD,EACf5D,eAAgBA,YASlC"}
|
|
1
|
+
{"version":3,"file":"PublishModal.js","sources":["../../../../src/componentsV2/TemplatesControl/PublishModal/PublishModal.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useState } from 'react';\nimport { Collapse } from '@material-ui/core';\nimport Jsona from 'jsona';\n\nimport { Modal } from '../../Modal';\nimport { TextInput } from '../../TextInput';\nimport { Template } from '../types';\nimport { suggestName } from '../utils';\nimport { storeApi } from '../Store';\nimport { Radio } from '../../Radio';\nimport { Text } from '../../Text';\nimport { Autocomplete, AutocompleteProps } from '../../Autocomplete';\nimport { TextEndTruncated } from '../../TextEndTruncated';\n\nimport styles from './PublishModal.scss';\n\nimport { useAppCommons, useLoadedData } from '~/effects';\nimport { getPrograms, getRigs } from '~/clients/jsonApi';\n\ntype AutocompleteOption = { id: number; title: string };\n\nconst dataFormatter = new Jsona();\nconst getDataFromResponseFn = (data: object) => {\n const parsed = dataFormatter.deserialize(data) as { id: string; name: string }[];\n return parsed.map<AutocompleteOption>(({ id, name }) => ({ id: Number(id), title: name }));\n};\n\ntype UseLoadedReturnType<T = AutocompleteOption> = {\n data: T[];\n isLoading: boolean;\n loadData: (options: object) => Promise<void>;\n};\n\nconst renderSelected: AutocompleteProps<AutocompleteOption, true>['renderSelected'] = options => (\n <Text size={16} className={styles.selected} tagName=\"div\">\n <TextEndTruncated>{options.map(({ option: { title } }) => title).join(', ')}</TextEndTruncated>\n </Text>\n);\n\ntype RadioLabelProps = {\n title: ReactNode;\n subTitle: ReactNode;\n controls?: ReactNode;\n open?: boolean;\n};\n\nconst RadioLabel = ({ subTitle, title, controls, open = false }: RadioLabelProps) => (\n <>\n <Text size={16}>{title}</Text>\n <Text size={14} color=\"T6\" className={styles.labelSubTitle}>\n {subTitle}\n </Text>\n {controls && <Collapse in={open}>{controls}</Collapse>}\n </>\n);\n\nexport type PublishModalProps = {\n open: boolean;\n onClose: () => void;\n template: Template;\n};\n\ntype PublishTypes = 'company' | 'programs' | 'rigs';\n\nexport const PublishModal = ({ onClose, open, template }: PublishModalProps) => {\n const { useAllTemplates, usePublishTemplate } = storeApi;\n const allTemplates = useAllTemplates();\n const publishTemplate = usePublishTemplate();\n\n const { currentUser: { company_id: companyId } = {} } = useAppCommons();\n\n const [name, setName] = useState(template.name);\n const [type, setType] = useState<PublishTypes>('company');\n const [selectedPrograms, setSelectedPrograms] = useState<AutocompleteOption[]>([]);\n const [selectedRigs, setSelectedRigs] = useState<AutocompleteOption[]>([]);\n const [rigSearch, setRigSearch] = useState('');\n\n const isCompanyType = type === 'company';\n const isProgramType = type === 'programs';\n const isRigsType = type === 'rigs';\n\n const suggestedName = suggestName(name, allTemplates);\n\n const {\n data: programOptions,\n isLoading: isLoadingPrograms,\n loadData: loadPrograms,\n } = useLoadedData({\n initialData: [] as never,\n initialLoading: true,\n loadFn: getPrograms,\n getDataFromResponseFn,\n }) as unknown as UseLoadedReturnType;\n\n const {\n data: rigOptions,\n isLoading: isLoadingRigs,\n loadData: loadRigs,\n } = useLoadedData({\n initialData: [] as never,\n initialLoading: true,\n loadFn: getRigs,\n getDataFromResponseFn,\n }) as unknown as UseLoadedReturnType;\n\n const primaryActionProps = useMemo(\n () => ({\n disabled:\n name.trim().length === 0 ||\n !!suggestedName ||\n (type === 'programs' && selectedPrograms.length === 0) ||\n (type === 'rigs' && selectedRigs.length === 0),\n }),\n [name, selectedPrograms.length, selectedRigs.length, suggestedName, type]\n );\n\n useEffect(() => {\n if (isProgramType && !programOptions.length) {\n loadPrograms({ per_page: 1000, fields: ['program.name'], company_id: companyId });\n }\n }, [companyId, isProgramType, loadPrograms, programOptions.length]);\n\n useEffect(() => {\n if (isRigsType) {\n loadRigs({ per_page: 200, fields: ['rig.name'], company_id: companyId, search: rigSearch });\n }\n }, [companyId, isRigsType, loadRigs, rigSearch]);\n\n useEffect(() => {\n if (open) {\n setSelectedRigs([]);\n setSelectedPrograms([]);\n setType('company');\n }\n }, [open]);\n\n const publish = useCallback(() => {\n if (type === 'company') {\n publishTemplate(template.id, name, {});\n } else if (type === 'programs' && selectedPrograms.length) {\n publishTemplate(template.id, name, {\n programIds: selectedPrograms.map(({ id }) => id),\n });\n } else if (type === 'rigs' && selectedRigs.length) {\n publishTemplate(template.id, name, {\n rigIds: selectedRigs.map(({ id }) => id),\n });\n }\n onClose();\n }, [name, onClose, publishTemplate, selectedPrograms, selectedRigs, template.id, type]);\n\n return (\n <Modal\n title=\"Confirm Template Publication\"\n size=\"medium\"\n open={open}\n onClose={onClose}\n primaryActionText=\"Publish\"\n primaryActionHandler={publish}\n primaryActionProps={primaryActionProps}\n secondaryActionText=\"Cancel\"\n secondaryActionHandler={onClose}\n >\n <div className={styles.root}>\n <TextInput\n label=\"Template Name\"\n value={name}\n onChange={setName}\n status={suggestedName ? 'error' : undefined}\n message={suggestedName && `Name should be unique. Try \"${suggestedName}\"`}\n />\n\n <Radio\n checked={isCompanyType}\n onChange={() => setType('company')}\n label={\n <RadioLabel\n title=\"Entire Company\"\n subTitle=\"It will be available to all company employees.\"\n />\n }\n />\n\n <Radio\n checked={isProgramType}\n onChange={() => setType('programs')}\n label={\n <RadioLabel\n title=\"For Selected Programs Only\"\n subTitle=\"Will be visible to employees with selected Programs only.\"\n open={isProgramType}\n controls={\n <Autocomplete\n label=\"Select Programs\"\n options={programOptions}\n loading={isLoadingPrograms}\n multiple\n value={selectedPrograms}\n onChange={setSelectedPrograms}\n renderSelected={renderSelected}\n />\n }\n />\n }\n />\n\n <Radio\n checked={isRigsType}\n onChange={() => setType('rigs')}\n label={\n <RadioLabel\n title=\"For Selected Rigs Only\"\n subTitle=\"Visible only when Rig is selected for all employees.\"\n open={isRigsType}\n controls={\n <Autocomplete\n label=\"Select Rigs\"\n options={rigOptions}\n loading={isLoadingRigs}\n multiple\n value={selectedRigs}\n onChange={setSelectedRigs}\n onInputChange={setRigSearch}\n renderSelected={renderSelected}\n />\n }\n />\n }\n />\n </div>\n </Modal>\n );\n};\n"],"names":["dataFormatter","Jsona","getDataFromResponseFn","data","deserialize","map","_ref","id","name","Number","title","renderSelected","options","_jsx","Text","size","className","styles","selected","tagName","children","TextEndTruncated","_ref2","option","join","RadioLabel","_ref3","subTitle","controls","_ref3$open","open","_jsxs","_Fragment","color","labelSubTitle","Collapse","in","PublishModal","_ref4","onClose","template","useAllTemplates","storeApi","usePublishTemplate","allTemplates","publishTemplate","_useAppCommons$curren","useAppCommons","currentUser","companyId","company_id","_useState","useState","_useState2","_slicedToArray","setName","_useState4","_useState3","type","setType","_useState6","_useState5","selectedPrograms","setSelectedPrograms","_useState8","_useState7","selectedRigs","setSelectedRigs","_useState10","_useState9","rigSearch","setRigSearch","isCompanyType","isProgramType","isRigsType","suggestedName","suggestName","_ref5","useLoadedData","initialData","initialLoading","loadFn","getPrograms","programOptions","isLoadingPrograms","isLoading","loadPrograms","loadData","_ref6","getRigs","rigOptions","isLoadingRigs","loadRigs","primaryActionProps","useMemo","disabled","trim","length","useEffect","per_page","fields","search","publish","useCallback","programIds","_ref7","rigIds","_ref8","Modal","primaryActionText","primaryActionHandler","secondaryActionText","secondaryActionHandler","root","TextInput","label","value","onChange","status","undefined","message","concat","Radio","checked","Autocomplete","loading","multiple","onInputChange"],"mappings":"+1GAqBA,IAAMA,EAAgB,IAAIC,EACpBC,EAAwB,SAACC,GAE7B,OADeH,EAAcI,YAAYD,GAC3BE,KAAwB,SAAAC,GAAA,IAAGC,IAAAA,GAAIC,IAAAA,KAAI,MAAQ,CAAED,GAAIE,OAAOF,GAAKG,MAAOF,EAAM,GAC1F,EAQMG,EAAgF,SAAAC,GAAO,OAC3FC,EAACC,EAAI,CAACC,KAAM,GAAIC,UAAWC,EAAOC,SAAUC,QAAQ,MAAKC,SACvDP,EAACQ,EAAgB,CAAAD,SAAER,EAAQP,KAAI,SAAAiB,GAAkB,OAAAA,EAAfC,OAAUb,SAAqBc,KAAK,SACjE,EAUHC,EAAa,SAAHC,GAAA,IAAMC,IAAAA,SAAUjB,IAAAA,MAAOkB,IAAAA,SAAQC,EAAAH,EAAEI,KAAAA,cAAYD,EAAA,OAC3DE,EAAAC,EAAA,CAAAZ,SAAA,CACEP,EAACC,EAAI,CAACC,KAAM,GAAGK,SAAEV,IACjBG,EAACC,EAAI,CAACC,KAAM,GAAIkB,MAAM,KAAKjB,UAAWC,EAAOiB,cAAcd,SACxDO,IAEFC,GAAYf,EAACsB,EAAQ,CAACC,GAAIN,EAAKV,SAAEQ,MACjC,EAWQS,EAAe,SAAoDC,GAAA,IAAjDC,IAAAA,QAAST,IAAAA,KAAMU,IAAAA,SACpCC,EAAwCC,EAAxCD,gBAAiBE,EAAuBD,EAAvBC,mBACnBC,EAAeH,IACfI,EAAkBF,IAE+CG,EAAfC,IAAhDC,YAA2BC,GAAnCH,OAAA,IAAAA,EAAiD,CAAA,EAAEA,GAA5BI,WAEvBC,EAAwBC,EAASZ,EAAShC,MAAK6C,EAAAC,EAAAH,EAAA,GAAxC3C,EAAI6C,EAAA,GAAEE,EAAOF,EAAA,GACID,EAAAA,EAAuB,WAAUI,EAAAF,EAAAG,EAAA,GAAlDC,EAAIF,EAAA,GAAEG,EAAOH,EAAA,GAC4BJ,EAAAA,EAA+B,IAAGQ,EAAAN,EAAAO,EAAA,GAA3EC,EAAgBF,EAAA,GAAEG,EAAmBH,EAAA,GACJR,EAAAA,EAA+B,IAAGY,EAAAV,EAAAW,EAAA,GAAnEC,EAAYF,EAAA,GAAEG,EAAeH,EAAA,GACFZ,EAAAA,EAAS,IAAGgB,EAAAd,EAAAe,EAAA,GAAvCC,EAASF,EAAA,GAAEG,EAAYH,EAAA,GAExBI,EAAyB,YAATd,EAChBe,EAAyB,aAATf,EAChBgB,EAAsB,SAAThB,EAEbiB,GAAgBC,EAAYpE,EAAMoC,GAExCiC,GAIIC,EAAc,CAChBC,YAAa,GACbC,gBAAgB,EAChBC,OAAQC,EACRhF,sBAAAA,IAPMiF,MAANhF,KACWiF,MAAXC,UACUC,MAAVC,SAQFC,GAIIV,EAAc,CAChBC,YAAa,GACbC,gBAAgB,EAChBC,OAAQQ,EACRvF,sBAAAA,IAPMwF,MAANvF,KACWwF,MAAXN,UACUO,MAAVL,SAQIM,GAAqBC,GACzB,WAAA,MAAO,CACLC,SACyB,IAAvBvF,EAAKwF,OAAOC,UACVtB,IACQ,aAATjB,GAAmD,IAA5BI,EAAiBmC,QAC/B,SAATvC,GAA2C,IAAxBQ,EAAa+B,OACpC,GACD,CAACzF,EAAMsD,EAAiBmC,OAAQ/B,EAAa+B,OAAQtB,GAAejB,IAGtEwC,GAAU,WACJzB,IAAkBU,GAAec,QACnCX,GAAa,CAAEa,SAAU,IAAMC,OAAQ,CAAC,gBAAiBlD,WAAYD,GAEzE,GAAG,CAACA,EAAWwB,EAAea,GAAcH,GAAec,SAE3DC,GAAU,WACJxB,GACFkB,GAAS,CAAEO,SAAU,IAAKC,OAAQ,CAAC,YAAalD,WAAYD,EAAWoD,OAAQ/B,GAElF,GAAE,CAACrB,EAAWyB,EAAYkB,GAAUtB,IAErC4B,GAAU,WACJpE,IACFqC,EAAgB,IAChBJ,EAAoB,IACpBJ,EAAQ,WAEZ,GAAG,CAAC7B,IAEJ,IAAMwE,GAAUC,GAAY,WACb,YAAT7C,EACFb,EAAgBL,EAASjC,GAAIC,EAAM,CAAE,GACnB,aAATkD,GAAuBI,EAAiBmC,OACjDpD,EAAgBL,EAASjC,GAAIC,EAAM,CACjCgG,WAAY1C,EAAiBzD,KAAI,SAAAoG,GAAK,SAAFlG,EAAW,MAE/B,SAATmD,GAAmBQ,EAAa+B,QACzCpD,EAAgBL,EAASjC,GAAIC,EAAM,CACjCkG,OAAQxC,EAAa7D,KAAI,SAAAsG,GAAK,SAAFpG,EAAW,MAG3CgC,GACF,GAAG,CAAC/B,EAAM+B,EAASM,EAAiBiB,EAAkBI,EAAc1B,EAASjC,GAAImD,IAEjF,OACE7C,EAAC+F,EAAK,CACJlG,MAAM,+BACNK,KAAK,SACLe,KAAMA,EACNS,QAASA,EACTsE,kBAAkB,UAClBC,qBAAsBR,GACtBT,mBAAoBA,GACpBkB,oBAAoB,SACpBC,uBAAwBzE,EAAQnB,SAEhCW,EAAA,MAAA,CAAKf,UAAWC,EAAOgG,KAAK7F,SAAA,CAC1BP,EAACqG,EAAS,CACRC,MAAM,gBACNC,MAAO5G,EACP6G,SAAU9D,EACV+D,OAAQ3C,GAAgB,aAAU4C,EAClCC,QAAS7C,IAAa,+BAAA8C,OAAmC9C,GAAa,OAGxE9D,EAAC6G,EAAK,CACJC,QAASnD,EACT6C,SAAU,WAAA,OAAM1D,EAAQ,UAAW,EACnCwD,MACEtG,EAACY,EAAU,CACTf,MAAM,iBACNiB,SAAS,qDAKfd,EAAC6G,EAAK,CACJC,QAASlD,EACT4C,SAAU,WAAA,OAAM1D,EAAQ,WAAY,EACpCwD,MACEtG,EAACY,EAAU,CACTf,MAAM,6BACNiB,SAAS,4DACTG,KAAM2C,EACN7C,SACEf,EAAC+G,EAAY,CACXT,MAAM,kBACNvG,QAASuE,GACT0C,QAASzC,GACT0C,UAAQ,EACRV,MAAOtD,EACPuD,SAAUtD,EACVpD,eAAgBA,QAO1BE,EAAC6G,EAAK,CACJC,QAASjD,EACT2C,SAAU,WAAA,OAAM1D,EAAQ,OAAQ,EAChCwD,MACEtG,EAACY,EAAU,CACTf,MAAM,yBACNiB,SAAS,wDACTG,KAAM4C,EACN9C,SACEf,EAAC+G,EAAY,CACXT,MAAM,cACNvG,QAAS8E,GACTmC,QAASlC,GACTmC,UAAQ,EACRV,MAAOlD,EACPmD,SAAUlD,EACV4D,cAAexD,EACf5D,eAAgBA,YASlC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"@babel/runtime/helpers/asyncToGenerator";import s from"@babel/runtime/helpers/toConsumableArray";import i from"@babel/runtime/helpers/slicedToArray";import t from"@babel/runtime/helpers/defineProperty";import n from"@babel/runtime/regenerator";import{useState as c,useMemo as r,useCallback as e,useEffect as m,Fragment as p}from"react";import{debounce as a,keyBy as u}from"lodash";import{Modal as l}from"../../Modal/Modal.js";import{TextInput as j}from"../../TextInput/TextInput.js";import{LoaderLogo as d}from"../../LoaderLogo/LoaderLogo.js";import{EmptyState as I}from"../../EmptyState/EmptyState.js";import{getUsers as f}from"../../../clients/jsonApi/index.js";import{Menu as h}from"../../Menu/Menu.js";import"../../../clients/subscriptions/constants.js";import"querystring";import"uuid/v1";import"../../../clients/subscriptions.v1.js";import"../../../clients/subscriptions/subscriptions-client.factory.js";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"../../../components/GradientManager/configuration/constants.js";import"../../../components/UserMention/utils/index.js";import"../../../utils/convert.js";import"moment";import"../../../utils/casing/validation.js";import"lodash/mean";import"../../../constants/streamSourceType.js";import"lodash/get";import"file-saver";import"../../../utils/drillstring/conversion.js";import"lodash/set";import"lodash/cloneDeep";import"lodash/isNumber";import"lodash/has";import"../../../utils/ga.js";import"../../../utils/goalsConfig/goalsConfig.js";import"../../../utils/lasParser.js";import"../../../utils/main.js";import"../../../utils/metrics/metricsConfig.js";import"../../../utils/mobileDetect.js";import"../../../utils/feed.js";import"../../../utils/reports.js";import"moment-timezone";import"@babel/runtime/helpers/typeof";import"../../../utils/dashboardReports.js";import"../../../utils/env.js";import"file-extension";import"image-extensions";import"video-extensions";import"../../../utils/jsonaDataFormatter.js";import"../../../utils/bha.js";import"jsona";import"@babel/runtime/helpers/objectWithoutProperties";import"classnames";import"../../../utils/charts/Styles.scss.js";import"../../../utils/getSingleAsset.js";import"uuid";import"../../../components/StatusBadge/constants.js";import"lodash/unset";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"../../../components/DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js";import"../../AppCommonsProvider/AppCommonsProvider.js";import{useAppCommons as b}from"../../AppCommonsProvider/AppCommonsContext.js";import"../../AppPanel/AppPanelsContext.js";import{useInfiniteScroll as g}from"../../../effects/useInfiniteScroll.js";import{Item as C}from"./Item.js";import v from"./ShareModal.scss.js";import"@icon-park/react/es/all";import{jsx as y,jsxs as P}from"react/jsx-runtime";import"../../../icons/IconParkProvider.js";import"../../../icons/customIcons/icons/AddMessage.js";import"../../../icons/customIcons/icons/DragOne.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{SearchOne as O}from"../../../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/InfoRounded.js";import"../../../icons/customIcons/icons/FlameFilled.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/PinOne.js";import"../../../icons/customIcons/icons/PinOneCrossed.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"../../../icons/customIcons/icons/GuidedFrac.js";function A(o,s){var i=Object.keys(o);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(o);s&&(t=t.filter((function(s){return Object.getOwnPropertyDescriptor(o,s).enumerable}))),i.push.apply(i,t)}return i}function x(o){for(var s=1;s<arguments.length;s++){var i=null!=arguments[s]?arguments[s]:{};s%2?A(Object(i),!0).forEach((function(s){t(o,s,i[s])})):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(i)):A(Object(i)).forEach((function(s){Object.defineProperty(o,s,Object.getOwnPropertyDescriptor(i,s))}))}return o}var S={order:"asc",sort:"first_name"},F=function(o){return o},D=function(o){var s=o.companyId,i=o.search,t=o.page,n=o.perPage;return f(x(x({},S),{},{companyId:s,page:t,perPage:n,search:i}))},M=function(o,s){return o.first_name.localeCompare(s.first_name)||o.last_name.localeCompare(s.last_name)},k=function(t){var A=t.onClose,k=t.template,w=t.open,E=t.onShare,T=b().currentUser.company_id,R=k.shared_with,L=c(""),N=i(L,2),U=N[0],_=N[1],G=c(""),z=i(G,2),q=z[0],B=z[1],W=c(!1),H=i(W,2),K=H[0],Z=H[1],J=c([]),Q=i(J,2),V=Q[0],X=Q[1],Y=r((function(){return a(B,300)}),[]),$=e((function(o){_(o),Y(o)}),[Y]),oo=e((function(){Y.cancel(),_(""),B("")}),[Y]),so=q.trim(),io=r((function(){return{search:so,companyId:T}}),[so,T]),to=e((function(o){return X((function(i){return[].concat(s(i),[o]).toSorted(M)}))}),[]),no=e((function(o){return X((function(s){return s.filter((function(s){return s.id!==o.id}))}))}),[]),co=e((function(){return E(V.map((function(o){return o.id})))}),[E,V]),ro=g({filters:io,getParams:F,loadData:D}),eo=ro.data,mo=ro.loadMoreElementRef,po=ro.containerElementRef,ao=ro.isLoading;m((function(){var s=function(){var s=o(n.mark((function o(){var s;return n.wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(!R||!R.length){o.next=9;break}return Z(!0),o.next=4,f(x(x({},S),{},{companyId:T,page:1,perPage:1e3,ids:R}));case 4:s=o.sent,X(s),Z(!1),o.next=10;break;case 9:X([]);case 10:case"end":return o.stop()}}),o)})));return function(){return s.apply(this,arguments)}}();w&&s()}),[w,R,T]),m((function(){w&&oo()}),[oo,w]);var uo=r((function(){return u(V,"id")}),[V]),lo=r((function(){return{disabled:K}}),[K]);return y(l,{title:"Share “".concat(k.name,"”"),open:w,onClose:A,primaryActionText:"Share",primaryActionHandler:co,primaryActionProps:lo,secondaryActionText:"Cancel",secondaryActionHandler:A,size:"medium",children:P("div",{className:v.wrapper,children:[y(j,{label:"",placeholder:"Search User...",type:"search",prefix:y(O,{}),spacing:"dense",onChange:$,value:U,onClear:oo}),P("div",{className:v.list,ref:po,children:[!K&&V.map((function(o,s){return P(p,{children:[s>0&&y(h.Divider,{className:v.divider}),y(C,{user:o,onClick:no,isSelected:!0})]},o.id)})),eo.map((function(o,s){return uo[o.id]?null:P(p,{children:[(s>0||V.length>0)&&y(h.Divider,{className:v.divider}),y(C,{user:o,onClick:to})]},o.id)})),y("div",{ref:mo}),!ao&&0===eo.length&&0===V.length&&y(I,{title:"No users found",image:"nothingFound"}),(ao||K)&&y(d,{size:60})]})]})})};export{k as ShareModal};
|
|
1
|
+
import o from"@babel/runtime/helpers/asyncToGenerator";import s from"@babel/runtime/helpers/toConsumableArray";import i from"@babel/runtime/helpers/slicedToArray";import n from"@babel/runtime/helpers/defineProperty";import t from"@babel/runtime/regenerator";import{useState as c,useMemo as r,useCallback as e,useEffect as m,Fragment as p}from"react";import{debounce as a,keyBy as u}from"lodash";import{Modal as l}from"../../Modal/Modal.js";import{TextInput as j}from"../../TextInput/TextInput.js";import{LoaderLogo as d}from"../../LoaderLogo/LoaderLogo.js";import{EmptyState as I}from"../../EmptyState/EmptyState.js";import{getUsers as f}from"../../../clients/jsonApi/index.js";import{Menu as h}from"../../Menu/Menu.js";import"querystring";import"../../../clients/subscriptions/subscriptions-client.factory.js";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"../../../components/GradientManager/configuration/constants.js";import"../../../components/UserMention/utils/index.js";import"../../../utils/convert.js";import"moment";import"../../../utils/casing/validation.js";import"lodash/mean";import"../../../constants/streamSourceType.js";import"lodash/get";import"file-saver";import"../../../utils/drillstring/conversion.js";import"lodash/set";import"lodash/cloneDeep";import"lodash/isNumber";import"lodash/has";import"../../../utils/ga.js";import"../../../utils/goalsConfig/goalsConfig.js";import"../../../utils/lasParser.js";import"../../../utils/main.js";import"../../../utils/metrics/metricsConfig.js";import"../../../utils/mobileDetect.js";import"../../../utils/feed.js";import"../../../utils/reports.js";import"moment-timezone";import"@babel/runtime/helpers/typeof";import"../../../utils/dashboardReports.js";import"../../../utils/env.js";import"file-extension";import"image-extensions";import"video-extensions";import"../../../utils/jsonaDataFormatter.js";import"../../../utils/bha.js";import"jsona";import"@babel/runtime/helpers/objectWithoutProperties";import"classnames";import"../../../utils/charts/Styles.scss.js";import"../../../utils/getSingleAsset.js";import"uuid";import"../../../components/StatusBadge/constants.js";import"lodash/unset";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"../../../components/DevCenter/DevCenterAppContainer/components/CommentsSwitch/CommentsSwitchContext.js";import"../../AppCommonsProvider/AppCommonsProvider.js";import{useAppCommons as g}from"../../AppCommonsProvider/AppCommonsContext.js";import"../../AppPanel/AppPanelsContext.js";import{useInfiniteScroll as b}from"../../../effects/useInfiniteScroll.js";import{Item as C}from"./Item.js";import v from"./ShareModal.scss.js";import"@icon-park/react/es/all";import{jsx as y,jsxs as P}from"react/jsx-runtime";import"../../../icons/IconParkProvider.js";import"../../../icons/customIcons/icons/AddMessage.js";import"../../../icons/customIcons/icons/DragOne.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{SearchOne as O}from"../../../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/InfoRounded.js";import"../../../icons/customIcons/icons/FlameFilled.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/PinOne.js";import"../../../icons/customIcons/icons/PinOneCrossed.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"../../../icons/customIcons/icons/GuidedFrac.js";function A(o,s){var i=Object.keys(o);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(o);s&&(n=n.filter((function(s){return Object.getOwnPropertyDescriptor(o,s).enumerable}))),i.push.apply(i,n)}return i}function x(o){for(var s=1;s<arguments.length;s++){var i=null!=arguments[s]?arguments[s]:{};s%2?A(Object(i),!0).forEach((function(s){n(o,s,i[s])})):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(i)):A(Object(i)).forEach((function(s){Object.defineProperty(o,s,Object.getOwnPropertyDescriptor(i,s))}))}return o}var S={order:"asc",sort:"first_name"},F=function(o){return o},D=function(o){var s=o.companyId,i=o.search,n=o.page,t=o.perPage;return f(x(x({},S),{},{companyId:s,page:n,perPage:t,search:i}))},M=function(o,s){return o.first_name.localeCompare(s.first_name)||o.last_name.localeCompare(s.last_name)},k=function(n){var A=n.onClose,k=n.template,w=n.open,E=n.onShare,T=g().currentUser.company_id,R=k.shared_with,L=c(""),N=i(L,2),U=N[0],_=N[1],G=c(""),z=i(G,2),q=z[0],B=z[1],W=c(!1),H=i(W,2),K=H[0],Z=H[1],J=c([]),Q=i(J,2),V=Q[0],X=Q[1],Y=r((function(){return a(B,300)}),[]),$=e((function(o){_(o),Y(o)}),[Y]),oo=e((function(){Y.cancel(),_(""),B("")}),[Y]),so=q.trim(),io=r((function(){return{search:so,companyId:T}}),[so,T]),no=e((function(o){return X((function(i){return[].concat(s(i),[o]).toSorted(M)}))}),[]),to=e((function(o){return X((function(s){return s.filter((function(s){return s.id!==o.id}))}))}),[]),co=e((function(){return E(V.map((function(o){return o.id})))}),[E,V]),ro=b({filters:io,getParams:F,loadData:D}),eo=ro.data,mo=ro.loadMoreElementRef,po=ro.containerElementRef,ao=ro.isLoading;m((function(){var s=function(){var s=o(t.mark((function o(){var s;return t.wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(!R||!R.length){o.next=9;break}return Z(!0),o.next=4,f(x(x({},S),{},{companyId:T,page:1,perPage:1e3,ids:R}));case 4:s=o.sent,X(s),Z(!1),o.next=10;break;case 9:X([]);case 10:case"end":return o.stop()}}),o)})));return function(){return s.apply(this,arguments)}}();w&&s()}),[w,R,T]),m((function(){w&&oo()}),[oo,w]);var uo=r((function(){return u(V,"id")}),[V]),lo=r((function(){return{disabled:K}}),[K]);return y(l,{title:"Share “".concat(k.name,"”"),open:w,onClose:A,primaryActionText:"Share",primaryActionHandler:co,primaryActionProps:lo,secondaryActionText:"Cancel",secondaryActionHandler:A,size:"medium",children:P("div",{className:v.wrapper,children:[y(j,{label:"",placeholder:"Search User...",type:"search",prefix:y(O,{}),spacing:"dense",onChange:$,value:U,onClear:oo}),P("div",{className:v.list,ref:po,children:[!K&&V.map((function(o,s){return P(p,{children:[s>0&&y(h.Divider,{className:v.divider}),y(C,{user:o,onClick:to,isSelected:!0})]},o.id)})),eo.map((function(o,s){return uo[o.id]?null:P(p,{children:[(s>0||V.length>0)&&y(h.Divider,{className:v.divider}),y(C,{user:o,onClick:no})]},o.id)})),y("div",{ref:mo}),!ao&&0===eo.length&&0===V.length&&y(I,{title:"No users found",image:"nothingFound"}),(ao||K)&&y(d,{size:60})]})]})})};export{k as ShareModal};
|
|
2
2
|
//# sourceMappingURL=ShareModal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShareModal.js","sources":["../../../../src/componentsV2/TemplatesControl/ShareModal/ShareModal.tsx"],"sourcesContent":["import { Fragment, useCallback, useEffect, useMemo, useState } from 'react';\nimport { debounce, keyBy } from 'lodash';\n\nimport { Modal } from '../../Modal';\nimport { TextInput } from '../../TextInput';\nimport { LoaderLogo } from '../../LoaderLogo';\nimport { EmptyState } from '../../EmptyState';\nimport { getUsers } from '../../../clients/jsonApi';\nimport { Menu } from '../../Menu';\nimport { Template } from '../types';\nimport { useAppCommons, useInfiniteScroll, UseInfiniteScrollGetParamsArg } from '../../../effects';\n\nimport { User } from './types';\nimport { Item } from './Item';\n\nimport styles from './ShareModal.scss';\n\nimport { SearchOne } from '~/icons';\n\ntype Filters = { search: string; companyId: number };\n\nconst defaultParams = {\n order: 'asc',\n sort: 'first_name',\n};\n\nconst getParams = (params: UseInfiniteScrollGetParamsArg<Filters>) => params;\n\nconst loadData = ({ companyId, search, page, perPage }: UseInfiniteScrollGetParamsArg<Filters>) =>\n getUsers({\n ...defaultParams,\n companyId,\n page,\n perPage,\n search,\n }) as Promise<User[]>;\n\nconst sortUsers = (a: User, b: User) =>\n a.first_name.localeCompare(b.first_name) || a.last_name.localeCompare(b.last_name);\n\nexport type ShareModalProps = {\n open: boolean;\n onClose: () => void;\n template: Template;\n onShare: (ids: number[]) => void;\n};\n\nexport const ShareModal = ({ onClose, template, open, onShare }: ShareModalProps) => {\n const {\n currentUser: { company_id: companyId },\n } = useAppCommons() as { currentUser: User };\n const { shared_with: sharedWith } = template;\n\n const [search, setSearch] = useState('');\n const [filterSearch, setFilterSearch] = useState('');\n const [isLoadingShared, setIsLoadingShared] = useState(false);\n const [selectedUsers, setSelectedUsers] = useState<User[]>([]);\n\n const debouncedSetSearchForFilter = useMemo(() => debounce(setFilterSearch, 300), []);\n\n const onSearchChange = useCallback(\n (value: string) => {\n setSearch(value);\n debouncedSetSearchForFilter(value);\n },\n [debouncedSetSearchForFilter]\n );\n\n const clearSearch = useCallback(() => {\n debouncedSetSearchForFilter.cancel();\n setSearch('');\n setFilterSearch('');\n }, [debouncedSetSearchForFilter]);\n\n const trimmedFilterSearch = filterSearch.trim();\n const filters = useMemo(\n () => ({ search: trimmedFilterSearch, companyId }),\n [trimmedFilterSearch, companyId]\n );\n\n const selectUser = useCallback(\n (user: User) => setSelectedUsers(users => [...users, user].toSorted(sortUsers)),\n []\n );\n\n const deselectUser = useCallback(\n (user: User) => setSelectedUsers(users => users.filter(({ id }) => id !== user.id)),\n []\n );\n\n const onActualShare = useCallback(\n () => onShare(selectedUsers.map(({ id }) => id)),\n [onShare, selectedUsers]\n );\n\n const { data, loadMoreElementRef, containerElementRef, isLoading } = useInfiniteScroll({\n filters,\n getParams,\n loadData,\n });\n\n useEffect(() => {\n const loadInitial = async () => {\n if (sharedWith && sharedWith.length) {\n setIsLoadingShared(true);\n\n const users = await getUsers({\n ...defaultParams,\n companyId,\n page: 1,\n perPage: 1000,\n ids: sharedWith,\n });\n\n setSelectedUsers(users);\n setIsLoadingShared(false);\n } else {\n setSelectedUsers([]);\n }\n };\n\n if (open) {\n loadInitial();\n }\n }, [open, sharedWith, companyId]);\n\n useEffect(() => {\n if (open) {\n clearSearch();\n }\n }, [clearSearch, open]);\n\n const selectedUsersMap = useMemo(() => keyBy(selectedUsers, 'id'), [selectedUsers]);\n\n const primaryActionProps = useMemo(() => ({ disabled: isLoadingShared }), [isLoadingShared]);\n\n return (\n <Modal\n title={`Share “${template.name}”`}\n open={open}\n onClose={onClose}\n primaryActionText=\"Share\"\n primaryActionHandler={onActualShare}\n primaryActionProps={primaryActionProps}\n secondaryActionText=\"Cancel\"\n secondaryActionHandler={onClose}\n size=\"medium\"\n >\n <div className={styles.wrapper}>\n <TextInput\n label=\"\"\n placeholder=\"Search User...\"\n type=\"search\"\n prefix={<SearchOne />}\n spacing=\"dense\"\n onChange={onSearchChange}\n value={search}\n onClear={clearSearch}\n />\n <div className={styles.list} ref={containerElementRef}>\n {!isLoadingShared &&\n selectedUsers.map((user, index) => (\n <Fragment key={user.id}>\n {index > 0 && <Menu.Divider className={styles.divider} />}\n <Item user={user} onClick={deselectUser} isSelected />\n </Fragment>\n ))}\n\n {data.map((user, index) =>\n !selectedUsersMap[user.id] ? (\n <Fragment key={user.id}>\n {(index > 0 || selectedUsers.length > 0) && (\n <Menu.Divider className={styles.divider} />\n )}\n <Item user={user} onClick={selectUser} />\n </Fragment>\n ) : null\n )}\n\n <div ref={loadMoreElementRef} />\n\n {!isLoading && data.length === 0 && selectedUsers.length === 0 && (\n <EmptyState title=\"No users found\" image=\"nothingFound\" />\n )}\n\n {(isLoading || isLoadingShared) && <LoaderLogo size={60} />}\n </div>\n </div>\n </Modal>\n );\n};\n"],"names":["defaultParams","order","sort","getParams","params","loadData","_ref","companyId","search","page","perPage","getUsers","sortUsers","a","b","first_name","localeCompare","last_name","ShareModal","_ref2","onClose","template","open","onShare","useAppCommons","currentUser","company_id","sharedWith","shared_with","useState","_useState2","_slicedToArray","_useState","setSearch","_useState4","_useState3","filterSearch","setFilterSearch","_useState6","_useState5","isLoadingShared","setIsLoadingShared","_useState8","_useState7","selectedUsers","setSelectedUsers","debouncedSetSearchForFilter","useMemo","debounce","onSearchChange","useCallback","value","clearSearch","cancel","trimmedFilterSearch","trim","filters","selectUser","user","users","concat","_toConsumableArray","toSorted","deselectUser","filter","_ref4","id","onActualShare","map","_ref5","_useInfiniteScroll","useInfiniteScroll","data","loadMoreElementRef","containerElementRef","isLoading","useEffect","loadInitial","_ref6","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","length","ids","sent","stop","apply","this","arguments","selectedUsersMap","keyBy","primaryActionProps","disabled","_jsx","Modal","title","name","primaryActionText","primaryActionHandler","secondaryActionText","secondaryActionHandler","size","children","_jsxs","className","styles","wrapper","TextInput","label","placeholder","type","prefix","SearchOne","spacing","onChange","onClear","list","ref","index","Fragment","Menu","Divider","divider","Item","onClick","isSelected","EmptyState","image","LoaderLogo"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ShareModal.js","sources":["../../../../src/componentsV2/TemplatesControl/ShareModal/ShareModal.tsx"],"sourcesContent":["import { Fragment, useCallback, useEffect, useMemo, useState } from 'react';\nimport { debounce, keyBy } from 'lodash';\n\nimport { Modal } from '../../Modal';\nimport { TextInput } from '../../TextInput';\nimport { LoaderLogo } from '../../LoaderLogo';\nimport { EmptyState } from '../../EmptyState';\nimport { getUsers } from '../../../clients/jsonApi';\nimport { Menu } from '../../Menu';\nimport { Template } from '../types';\nimport { useAppCommons, useInfiniteScroll, UseInfiniteScrollGetParamsArg } from '../../../effects';\n\nimport { User } from './types';\nimport { Item } from './Item';\n\nimport styles from './ShareModal.scss';\n\nimport { SearchOne } from '~/icons';\n\ntype Filters = { search: string; companyId: number };\n\nconst defaultParams = {\n order: 'asc',\n sort: 'first_name',\n};\n\nconst getParams = (params: UseInfiniteScrollGetParamsArg<Filters>) => params;\n\nconst loadData = ({ companyId, search, page, perPage }: UseInfiniteScrollGetParamsArg<Filters>) =>\n getUsers({\n ...defaultParams,\n companyId,\n page,\n perPage,\n search,\n }) as Promise<User[]>;\n\nconst sortUsers = (a: User, b: User) =>\n a.first_name.localeCompare(b.first_name) || a.last_name.localeCompare(b.last_name);\n\nexport type ShareModalProps = {\n open: boolean;\n onClose: () => void;\n template: Template;\n onShare: (ids: number[]) => void;\n};\n\nexport const ShareModal = ({ onClose, template, open, onShare }: ShareModalProps) => {\n const {\n currentUser: { company_id: companyId },\n } = useAppCommons() as { currentUser: User };\n const { shared_with: sharedWith } = template;\n\n const [search, setSearch] = useState('');\n const [filterSearch, setFilterSearch] = useState('');\n const [isLoadingShared, setIsLoadingShared] = useState(false);\n const [selectedUsers, setSelectedUsers] = useState<User[]>([]);\n\n const debouncedSetSearchForFilter = useMemo(() => debounce(setFilterSearch, 300), []);\n\n const onSearchChange = useCallback(\n (value: string) => {\n setSearch(value);\n debouncedSetSearchForFilter(value);\n },\n [debouncedSetSearchForFilter]\n );\n\n const clearSearch = useCallback(() => {\n debouncedSetSearchForFilter.cancel();\n setSearch('');\n setFilterSearch('');\n }, [debouncedSetSearchForFilter]);\n\n const trimmedFilterSearch = filterSearch.trim();\n const filters = useMemo(\n () => ({ search: trimmedFilterSearch, companyId }),\n [trimmedFilterSearch, companyId]\n );\n\n const selectUser = useCallback(\n (user: User) => setSelectedUsers(users => [...users, user].toSorted(sortUsers)),\n []\n );\n\n const deselectUser = useCallback(\n (user: User) => setSelectedUsers(users => users.filter(({ id }) => id !== user.id)),\n []\n );\n\n const onActualShare = useCallback(\n () => onShare(selectedUsers.map(({ id }) => id)),\n [onShare, selectedUsers]\n );\n\n const { data, loadMoreElementRef, containerElementRef, isLoading } = useInfiniteScroll({\n filters,\n getParams,\n loadData,\n });\n\n useEffect(() => {\n const loadInitial = async () => {\n if (sharedWith && sharedWith.length) {\n setIsLoadingShared(true);\n\n const users = await getUsers({\n ...defaultParams,\n companyId,\n page: 1,\n perPage: 1000,\n ids: sharedWith,\n });\n\n setSelectedUsers(users);\n setIsLoadingShared(false);\n } else {\n setSelectedUsers([]);\n }\n };\n\n if (open) {\n loadInitial();\n }\n }, [open, sharedWith, companyId]);\n\n useEffect(() => {\n if (open) {\n clearSearch();\n }\n }, [clearSearch, open]);\n\n const selectedUsersMap = useMemo(() => keyBy(selectedUsers, 'id'), [selectedUsers]);\n\n const primaryActionProps = useMemo(() => ({ disabled: isLoadingShared }), [isLoadingShared]);\n\n return (\n <Modal\n title={`Share “${template.name}”`}\n open={open}\n onClose={onClose}\n primaryActionText=\"Share\"\n primaryActionHandler={onActualShare}\n primaryActionProps={primaryActionProps}\n secondaryActionText=\"Cancel\"\n secondaryActionHandler={onClose}\n size=\"medium\"\n >\n <div className={styles.wrapper}>\n <TextInput\n label=\"\"\n placeholder=\"Search User...\"\n type=\"search\"\n prefix={<SearchOne />}\n spacing=\"dense\"\n onChange={onSearchChange}\n value={search}\n onClear={clearSearch}\n />\n <div className={styles.list} ref={containerElementRef}>\n {!isLoadingShared &&\n selectedUsers.map((user, index) => (\n <Fragment key={user.id}>\n {index > 0 && <Menu.Divider className={styles.divider} />}\n <Item user={user} onClick={deselectUser} isSelected />\n </Fragment>\n ))}\n\n {data.map((user, index) =>\n !selectedUsersMap[user.id] ? (\n <Fragment key={user.id}>\n {(index > 0 || selectedUsers.length > 0) && (\n <Menu.Divider className={styles.divider} />\n )}\n <Item user={user} onClick={selectUser} />\n </Fragment>\n ) : null\n )}\n\n <div ref={loadMoreElementRef} />\n\n {!isLoading && data.length === 0 && selectedUsers.length === 0 && (\n <EmptyState title=\"No users found\" image=\"nothingFound\" />\n )}\n\n {(isLoading || isLoadingShared) && <LoaderLogo size={60} />}\n </div>\n </div>\n </Modal>\n );\n};\n"],"names":["defaultParams","order","sort","getParams","params","loadData","_ref","companyId","search","page","perPage","getUsers","sortUsers","a","b","first_name","localeCompare","last_name","ShareModal","_ref2","onClose","template","open","onShare","useAppCommons","currentUser","company_id","sharedWith","shared_with","useState","_useState2","_slicedToArray","_useState","setSearch","_useState4","_useState3","filterSearch","setFilterSearch","_useState6","_useState5","isLoadingShared","setIsLoadingShared","_useState8","_useState7","selectedUsers","setSelectedUsers","debouncedSetSearchForFilter","useMemo","debounce","onSearchChange","useCallback","value","clearSearch","cancel","trimmedFilterSearch","trim","filters","selectUser","user","users","concat","_toConsumableArray","toSorted","deselectUser","filter","_ref4","id","onActualShare","map","_ref5","_useInfiniteScroll","useInfiniteScroll","data","loadMoreElementRef","containerElementRef","isLoading","useEffect","loadInitial","_ref6","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","length","ids","sent","stop","apply","this","arguments","selectedUsersMap","keyBy","primaryActionProps","disabled","_jsx","Modal","title","name","primaryActionText","primaryActionHandler","secondaryActionText","secondaryActionHandler","size","children","_jsxs","className","styles","wrapper","TextInput","label","placeholder","type","prefix","SearchOne","spacing","onChange","onClear","list","ref","index","Fragment","Menu","Divider","divider","Item","onClick","isSelected","EmptyState","image","LoaderLogo"],"mappings":"w3PAqBA,IAAMA,EAAgB,CACpBC,MAAO,MACPC,KAAM,cAGFC,EAAY,SAACC,GAA8C,OAAKA,CAAM,EAEtEC,EAAW,SAAHC,GAAA,IAAMC,IAAAA,UAAWC,IAAAA,OAAQC,IAAAA,KAAMC,IAAAA,QAAO,OAClDC,SACKX,GAAa,GAAA,CAChBO,UAAAA,EACAE,KAAAA,EACAC,QAAAA,EACAF,OAAAA,IACA,EAEEI,EAAY,SAACC,EAASC,GAAO,OACjCD,EAAEE,WAAWC,cAAcF,EAAEC,aAAeF,EAAEI,UAAUD,cAAcF,EAAEG,UAAU,EASvEC,EAAa,SAA2DC,GAAA,IAAxDC,IAAAA,QAASC,IAAAA,SAAUC,IAAAA,KAAMC,IAAAA,QAEvBhB,EACzBiB,IADFC,YAAeC,WAEIC,EAAeN,EAA5BO,YAEoBC,EAAAA,EAAS,IAAGC,EAAAC,EAAAC,EAAA,GAAjCxB,EAAMsB,EAAA,GAAEG,EAASH,EAAA,GACgBD,EAAAA,EAAS,IAAGK,EAAAH,EAAAI,EAAA,GAA7CC,EAAYF,EAAA,GAAEG,EAAeH,EAAA,GACUL,EAAAA,GAAS,GAAMS,EAAAP,EAAAQ,EAAA,GAAtDC,EAAeF,EAAA,GAAEG,EAAkBH,EAAA,GACAT,EAAAA,EAAiB,IAAGa,EAAAX,EAAAY,EAAA,GAAvDC,EAAaF,EAAA,GAAEG,EAAgBH,EAAA,GAEhCI,EAA8BC,GAAQ,WAAA,OAAMC,EAASX,EAAiB,IAAI,GAAE,IAE5EY,EAAiBC,GACrB,SAACC,GACClB,EAAUkB,GACVL,EAA4BK,EAC9B,GACA,CAACL,IAGGM,GAAcF,GAAY,WAC9BJ,EAA4BO,SAC5BpB,EAAU,IACVI,EAAgB,GAClB,GAAG,CAACS,IAEEQ,GAAsBlB,EAAamB,OACnCC,GAAUT,GACd,WAAA,MAAO,CAAEvC,OAAQ8C,GAAqB/C,UAAAA,EAAW,GACjD,CAAC+C,GAAqB/C,IAGlBkD,GAAaP,GACjB,SAACQ,GAAU,OAAKb,GAAiB,SAAAc,GAAK,MAAI,GAAAC,OAAAC,EAAIF,GAAOD,CAAAA,IAAMI,SAASlD,KAAW,GAC/E,IAGImD,GAAeb,GACnB,SAACQ,GAAU,OAAKb,GAAiB,SAAAc,GAAK,OAAIA,EAAMK,QAAO,SAAAC,GAAK,SAAFC,KAAgBR,EAAKQ,QAAI,GACnF,IAGIC,GAAgBjB,GACpB,WAAA,OAAM3B,EAAQqB,EAAcwB,KAAI,SAAAC,GAAK,SAAFH,EAAW,IAAE,GAChD,CAAC3C,EAASqB,IAGZ0B,GAAqEC,EAAkB,CACrFf,QAAAA,GACArD,UAAAA,EACAE,SAAAA,IAHMmE,MAAAA,KAAMC,MAAAA,mBAAoBC,MAAAA,oBAAqBC,MAAAA,UAMvDC,GAAU,WACR,IAAMC,EAAW,WAAA,IAAGC,EAAAC,EAAAC,EAAAC,MAAA,SAAAC,IAAA,IAAAvB,EAAA,OAAAqB,EAAAG,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAAA,IACd3D,IAAcA,EAAW4D,OAAM,CAAAH,EAAAE,KAAA,EAAA,KAAA,CACR,OAAzB7C,GAAmB,GAAM2C,EAAAE,KAAA,EAEL3E,SACfX,GAAa,GAAA,CAChBO,UAAAA,EACAE,KAAM,EACNC,QAAS,IACT8E,IAAK7D,KACL,KAAA,EANIgC,EAAKyB,EAAAK,KAQX5C,EAAiBc,GACjBlB,GAAmB,GAAO2C,EAAAE,KAAA,GAAA,MAAA,KAAA,EAE1BzC,EAAiB,IAAI,KAAA,GAAA,IAAA,MAAA,OAAAuC,EAAAM,OAAA,GAAAR,EAExB,KAAA,OAAA,WAjBgB,OAAAJ,EAAAa,MAAAC,KAAAC,UAAA,EAAA,GAmBbvE,GACFuD,GAEH,GAAE,CAACvD,EAAMK,EAAYpB,IAEtBqE,GAAU,WACJtD,GACF8B,IAEJ,GAAG,CAACA,GAAa9B,IAEjB,IAAMwE,GAAmB/C,GAAQ,WAAA,OAAMgD,EAAMnD,EAAe,QAAO,CAACA,IAE9DoD,GAAqBjD,GAAQ,WAAA,MAAO,CAAEkD,SAAUzD,EAAiB,GAAG,CAACA,IAE3E,OACE0D,EAACC,EAAK,CACJC,MAAiB/E,UAAAA,OAAAA,EAASgF,KAAQ,KAClC/E,KAAMA,EACNF,QAASA,EACTkF,kBAAkB,QAClBC,qBAAsBpC,GACtB6B,mBAAoBA,GACpBQ,oBAAoB,SACpBC,uBAAwBrF,EACxBsF,KAAK,SAAQC,SAEbC,EAAA,MAAA,CAAKC,UAAWC,EAAOC,QAAQJ,SAAA,CAC7BT,EAACc,EAAS,CACRC,MAAM,GACNC,YAAY,iBACZC,KAAK,SACLC,OAAQlB,EAACmB,EAAa,IACtBC,QAAQ,QACRC,SAAUtE,EACVE,MAAO3C,EACPgH,QAASpE,KAEXwD,EAAA,MAAA,CAAKC,UAAWC,EAAOW,KAAMC,IAAKhD,GAAoBiC,SACnD,EAACnE,GACAI,EAAcwB,KAAI,SAACV,EAAMiE,GAAK,OAC5Bf,EAACgB,EAAQ,CAAAjB,SAAA,CACNgB,EAAQ,GAAKzB,EAAC2B,EAAKC,QAAO,CAACjB,UAAWC,EAAOiB,UAC9C7B,EAAC8B,EAAI,CAACtE,KAAMA,EAAMuE,QAASlE,GAAcmE,YAAU,MAFtCxE,EAAKQ,GAIrB,IAEFM,GAAKJ,KAAI,SAACV,EAAMiE,GAAK,OACnB7B,GAAiBpC,EAAKQ,IAOnB,KANF0C,EAACgB,EAAQ,CAAAjB,SAAA,EACLgB,EAAQ,GAAK/E,EAAc2C,OAAS,IACpCW,EAAC2B,EAAKC,QAAO,CAACjB,UAAWC,EAAOiB,UAElC7B,EAAC8B,EAAI,CAACtE,KAAMA,EAAMuE,QAASxE,OAJdC,EAAKQ,GAMd,IAGVgC,EAAA,MAAA,CAAKwB,IAAKjD,MAERE,IAA6B,IAAhBH,GAAKe,QAAyC,IAAzB3C,EAAc2C,QAChDW,EAACiC,EAAU,CAAC/B,MAAM,iBAAiBgC,MAAM,kBAGzCzD,IAAanC,IAAoB0D,EAACmC,EAAU,CAAC3B,KAAM,YAK/D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePublishTemplate.d.ts","sourceRoot":"","sources":["../../../../../src/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAQvE,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,YAAY,oBAMvC,MAAM,WACT,MAAM,
|
|
1
|
+
{"version":3,"file":"usePublishTemplate.d.ts","sourceRoot":"","sources":["../../../../../src/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAQvE,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,YAAY,oBAMvC,MAAM,WACT,MAAM,0BACmB,IAAI,CAAC,gBAAgB,EAAE,QAAQ,GAAG,YAAY,CAAC,kBAqCtF,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import t from"@babel/runtime/helpers/toConsumableArray";import
|
|
1
|
+
import t from"@babel/runtime/helpers/defineProperty";import r from"@babel/runtime/helpers/toConsumableArray";import e from"@babel/runtime/helpers/slicedToArray";import o from"@babel/runtime/helpers/asyncToGenerator";import s from"@babel/runtime/regenerator";import{useCallback as i}from"react";import{dataFormatter as n,loadAdditionalData as a}from"../utils.js";import{useGet as p}from"./sharedHooks.js";import{publishAppSettingsTemplate as m}from"../../../../clients/jsonApi/index.js";import"../../../../components/UserMention/utils/index.js";import"../../../../utils/convert.js";import"../../../../constants/completion.js";import"moment";import"../../../../constants/alerts.js";import"../../../../utils/casing/validation.js";import"lodash/mean";import"lodash";import"../../../../constants/streamSourceType.js";import"lodash/get";import"file-saver";import"query-string";import"../../../../constants/goals.js";import"../../../../constants/segment.js";import"../../../../constants/apps.js";import"../../../../constants/drillstring.js";import"../../../../constants/appPackages.js";import"../../../../constants/notifications.js";import"../../../../constants/feed.js";import"../../../../constants/bha.js";import"../../../../constants/corvaCompanyId.js";import"../../../../components/GradientManager/configuration/constants.js";import"../../../../utils/drillstring/conversion.js";import"lodash/set";import"lodash/cloneDeep";import"lodash/isNumber";import"lodash/has";import"../../../../utils/ga.js";import"../../../../utils/goalsConfig/goalsConfig.js";import"../../../../utils/lasParser.js";import"../../../../utils/main.js";import"../../../../utils/metrics/metricsConfig.js";import"../../../../utils/mobileDetect.js";import"../../../../utils/feed.js";import"../../../../utils/reports.js";import"moment-timezone";import{showErrorNotification as l,showSuccessNotification as c}from"../../../../utils/notificationToasts.js";import"@babel/runtime/helpers/typeof";import"../../../../utils/dashboardReports.js";import"../../../../utils/env.js";import"file-extension";import"image-extensions";import"video-extensions";import"../../../../utils/jsonaDataFormatter.js";import"../../../../utils/bha.js";import"jsona";import"@babel/runtime/helpers/objectWithoutProperties";import"classnames";import"../../../../utils/charts/Styles.scss.js";import"../../../../utils/getSingleAsset.js";function u(t,r){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable}))),e.push.apply(e,o)}return e}function j(r){for(var e=1;e<arguments.length;e++){var o=null!=arguments[e]?arguments[e]:{};e%2?u(Object(o),!0).forEach((function(e){t(r,e,o[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(o)):u(Object(o)).forEach((function(t){Object.defineProperty(r,t,Object.getOwnPropertyDescriptor(o,t))}))}return r}var f=function(){var t=p("get"),u=p("set");return i(function(){var i=o(s.mark((function o(i,p,f){var g,d,b,h,y,v,O,D,P,w,M,x,k,I,S;return s.wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return g=f.rigIds,d=void 0===g?[]:g,b=f.programIds,h=void 0===b?[]:b,y=p.trim(),o.prev=2,v=t(),O=v.rigsDataMap,D=v.programsDataMap,P=Object.keys(O),w=Object.keys(D),o.next=8,Promise.all([a({rigIds:d.filter((function(t){return!P.includes(String(t))})),programIds:h.filter((function(t){return!w.includes(String(t))}))}),m(t().appKey,i,{name:y,metadata:{rigIds:d,programIds:h}})]);case 8:M=o.sent,x=e(M,2),k=x[0],I=x[1],S=n.deserialize(I),u((function(t){var e=t.loadedTemplates,o=t.rigsDataMap,s=t.programsDataMap;return{loadedTemplates:[].concat(r(e),[S]),rigsDataMap:j(j({},o),k.rigsDataMap),programsDataMap:j(j({},s),k.programsDataMap)}})),c('"'.concat(null==S?void 0:S.name,'" was published')),o.next=21;break;case 17:o.prev=17,o.t0=o.catch(2),console.error(o.t0),l("An error occurred while publishing template.");case 21:case"end":return o.stop()}}),o,null,[[2,17]])})));return function(t,r,e){return i.apply(this,arguments)}}(),[t,u])};export{f as usePublishTemplate};
|
|
2
2
|
//# sourceMappingURL=usePublishTemplate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePublishTemplate.js","sources":["../../../../../src/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.ts"],"sourcesContent":["import { useCallback } from 'react';\n\nimport { Template, TemplateData, TemplateMetaData } from '../../types';\nimport { dataFormatter } from '../utils';\n\nimport { useGet } from './sharedHooks';\n\nimport { publishAppSettingsTemplate } from '~/clients/jsonApi';\nimport { showErrorNotification, showSuccessNotification } from '~/utils';\n\nexport const usePublishTemplate = <T extends TemplateData>() => {\n const get = useGet('get');\n const set = useGet('set');\n\n return useCallback(\n async (\n templateId: number,\n rawName: string,\n { rigIds, programIds }: Pick<TemplateMetaData, 'rigIds' | 'programIds'>\n ) => {\n const name = rawName.trim();\n try {\n const
|
|
1
|
+
{"version":3,"file":"usePublishTemplate.js","sources":["../../../../../src/componentsV2/TemplatesControl/Store/hooks/usePublishTemplate.ts"],"sourcesContent":["import { useCallback } from 'react';\n\nimport { Template, TemplateData, TemplateMetaData } from '../../types';\nimport { dataFormatter, loadAdditionalData } from '../utils';\n\nimport { useGet } from './sharedHooks';\n\nimport { publishAppSettingsTemplate } from '~/clients/jsonApi';\nimport { showErrorNotification, showSuccessNotification } from '~/utils';\n\nexport const usePublishTemplate = <T extends TemplateData>() => {\n const get = useGet('get');\n const set = useGet('set');\n\n return useCallback(\n async (\n templateId: number,\n rawName: string,\n { rigIds = [], programIds = [] }: Pick<TemplateMetaData, 'rigIds' | 'programIds'>\n ) => {\n const name = rawName.trim();\n try {\n const { rigsDataMap, programsDataMap } = get();\n const existingRigIds = Object.keys(rigsDataMap);\n const existingProgramIds = Object.keys(programsDataMap);\n\n const [additionalData, newRawTemplate] = await Promise.all([\n loadAdditionalData({\n rigIds: rigIds.filter(id => !existingRigIds.includes(String(id))),\n programIds: programIds.filter(id => !existingProgramIds.includes(String(id))),\n }),\n publishAppSettingsTemplate(get().appKey, templateId, {\n name,\n metadata: { rigIds, programIds },\n }),\n ]);\n\n const newTemplate = dataFormatter.deserialize(newRawTemplate) as Template<T>;\n\n set(\n ({ loadedTemplates, rigsDataMap: storeRigsMap, programsDataMap: storeProgramsMap }) => ({\n loadedTemplates: [...loadedTemplates, newTemplate],\n rigsDataMap: { ...storeRigsMap, ...additionalData.rigsDataMap },\n programsDataMap: { ...storeProgramsMap, ...additionalData.programsDataMap },\n })\n );\n\n showSuccessNotification(`\"${newTemplate?.name}\" was published`);\n } catch (e) {\n console.error(e);\n showErrorNotification('An error occurred while publishing template.');\n }\n },\n [get, set]\n );\n};\n"],"names":["usePublishTemplate","get","useGet","set","useCallback","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","templateId","rawName","_ref","_ref$rigIds","rigIds","_ref$programIds","programIds","name","_get","rigsDataMap","programsDataMap","existingRigIds","existingProgramIds","_yield$Promise$all","_yield$Promise$all2","additionalData","newRawTemplate","newTemplate","wrap","_context","prev","next","trim","Object","keys","Promise","all","loadAdditionalData","filter","id","includes","String","publishAppSettingsTemplate","appKey","metadata","sent","_slicedToArray","dataFormatter","deserialize","_ref3","loadedTemplates","storeRigsMap","storeProgramsMap","showSuccessNotification","concat","t0","console","error","showErrorNotification","stop","_x","_x2","_x3","apply","this","arguments"],"mappings":"+3FAUaA,IAAAA,EAAqB,WAChC,IAAMC,EAAMC,EAAO,OACbC,EAAMD,EAAO,OAEnB,OAAOE,EAAW,WAAA,IAChBC,EAAAC,EAAAC,EAAAC,MAAA,SAAAC,EACEC,EACAC,EAAeC,GAAA,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAApB,EAAAqB,MAAA,SAAAC,GAAA,OAAA,OAAAA,EAAAC,KAAAD,EAAAE,MAAA,KAAA,EAO0C,OAP1ClB,EACbC,EAAAA,OAAAA,OAAS,IAAAD,EAAA,SAAIG,WAAAA,OAAU,IAAAD,EAAG,GAAEA,EAExBE,EAAON,EAAQqB,OAAMH,EAAAC,KAAA,EAAAZ,EAEgBjB,IAAjCkB,IAAAA,YAAaC,EAAeF,EAAfE,gBACfC,EAAiBY,OAAOC,KAAKf,GAC7BG,EAAqBW,OAAOC,KAAKd,GAAgBS,EAAAE,KAAA,EAERI,QAAQC,IAAI,CACzDC,EAAmB,CACjBvB,OAAQA,EAAOwB,QAAO,SAAAC,GAAE,OAAKlB,EAAemB,SAASC,OAAOF,OAC5DvB,WAAYA,EAAWsB,QAAO,SAAAC,GAAE,OAAKjB,EAAmBkB,SAASC,OAAOF,GAAI,MAE9EG,EAA2BzC,IAAM0C,OAAQjC,EAAY,CACnDO,KAAAA,EACA2B,SAAU,CAAE9B,OAAAA,EAAQE,WAAAA,OAEtB,KAAA,EAAAO,EAAAM,EAAAgB,KAAArB,EAAAsB,EAAAvB,EAAA,GATKE,EAAcD,EAAA,GAAEE,EAAcF,EAAA,GAW/BG,EAAcoB,EAAcC,YAAYtB,GAE9CvB,GACE,SAAA8C,GAAA,IAAGC,IAAAA,gBAA8BC,IAAbhC,YAA4CiC,IAAjBhC,gBAAe,MAA0B,CACtF8B,gBAAqBA,GAAAA,OAAAA,EAAAA,GAAiBvB,CAAAA,IACtCR,mBAAkBgC,GAAiB1B,EAAeN,aAClDC,gBAAsBgC,EAAAA,EAAAA,CAAAA,EAAAA,GAAqB3B,EAAeL,iBAC3D,IAGHiC,EAAuB,IAAAC,OAAK3B,eAAAA,EAAaV,KAAsB,oBAACY,EAAAE,KAAA,GAAA,MAAA,KAAA,GAAAF,EAAAC,KAAA,GAAAD,EAAA0B,GAAA1B,EAAA,MAAA,GAEhE2B,QAAQC,MAAQ5B,EAAA0B,IAChBG,EAAsB,gDAAgD,KAAA,GAAA,IAAA,MAAA,OAAA7B,EAAA8B,OAAA,GAAAlD,EAAA,KAAA,CAAA,CAAA,EAAA,KAEzE,KAAA,OAAA,SAAAmD,EAAAC,EAAAC,GAAA,OAAAzD,EAAA0D,MAAAC,KAAAC,UAAA,CAAA,CAtCe,GAuChB,CAAChE,EAAKE,GAEV"}
|
|
@@ -35,6 +35,13 @@ type LoadAdditionalDataMapsOptions = {
|
|
|
35
35
|
appEntities: Store['appEntities'];
|
|
36
36
|
userProgramIds: Store['userProgramIds'];
|
|
37
37
|
};
|
|
38
|
+
export declare const loadAdditionalData: ({ rigIds, programIds, }: {
|
|
39
|
+
rigIds: (string | number)[];
|
|
40
|
+
programIds: (string | number)[];
|
|
41
|
+
}) => Promise<{
|
|
42
|
+
rigsDataMap: Record<string, string>;
|
|
43
|
+
programsDataMap: Record<string, string>;
|
|
44
|
+
}>;
|
|
38
45
|
export declare const loadAdditionalDataMaps: (templates: Template[], { appEntities, permissions, userProgramIds }: LoadAdditionalDataMapsOptions) => Promise<{
|
|
39
46
|
rigsDataMap: Record<string, string>;
|
|
40
47
|
programsDataMap: Record<string, string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/componentsV2/TemplatesControl/Store/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,OAAO,EACL,MAAM,EAEN,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAUlB,eAAO,MAAM,aAAa,OAAc,CAAC;AAEzC,KAAK,IAAI,GAAG;IACV;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACpC;;OAEG;IACH,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CACnC,CAAC;AAgFF,KAAK,iBAAiB,GAAG;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC,CAAC;AAEF,eAAO,MAAM,UAAU,cACV,QAAQ,EAAE,oDAC6B,iBAAiB,SAqGpE,CAAC;AAEF,eAAO,MAAM,UAAU,cAAe,QAAQ,EAAE,iBAkB/C,CAAC;AAEF,eAAO,MAAM,eAAe;IAC1B,GAAG;IACH,OAAO;IACP,UAAU;IACV,IAAI;IACJ,GAAG;IACH,iBAAiB;CAClB,CAAC;AAEF,KAAK,6BAA6B,GAAG;IACnC,WAAW,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAClC,WAAW,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAClC,cAAc,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;CACzC,CAAC;AAEF,eAAO,MAAM,sBAAsB,cACtB,QAAQ,EAAE,gDACyB,6BAA6B;;;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/componentsV2/TemplatesControl/Store/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"@babel/runtime/helpers/toConsumableArray";import r from"@babel/runtime/helpers/slicedToArray";import t from"@babel/runtime/helpers/asyncToGenerator";import n from"@babel/runtime/helpers/defineProperty";import a from"@babel/runtime/regenerator";import i from"jsona";import{intersection as o}from"lodash";import{getFolderId as s,isTemplateInFolder as u,getTemplateFolder as p,isFolder as c,isOwnTemplate as l}from"../utils.js";import{FolderType as d,Action as f}from"../types.js";import{getAppSettingsTemplate as m,patchAppSettingsTemplate as v,postAppSettingsTemplate as g,getRigs as h,getPrograms as b}from"../../../clients/jsonApi/index.js";var y;function I(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function T(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?I(Object(t),!0).forEach((function(r){n(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):I(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}var x=new i,w=[d.Rig,d.Program],P=(n(y={},d.Company,0),n(y,d.Preset,1),n(y,d.Shared,2),n(y,d.Rig,3),n(y,d.Program,4),n(y,d.FracFleet,5),n(y,d.Pad,6),n(y,d.Regular,7),y),O=function(e,r){var t;return c(e)&&c(r)?P[e.type]-P[r.type]||(null===(t=e.name)||void 0===t?void 0:t.localeCompare((null==r?void 0:r.name)||""))||0:c(e)?-1:c(r)?1:e.name.localeCompare(r.name)},j=s(d.Company),k=function e(r,t){var n=t.id,a=t.type,i=t.name,o=t.entityId,u=w.includes(a)?e(r,{id:s(d.Company),type:d.Company}):void 0;if(!r.folders[n]){var p={id:n,type:a,name:i,items:[],entityId:o};r.folders[n]=p,u?u.items.push(p):r.tree.push(p)}return r.folders[n]},M=function(e,r,t){e.pathMap[r.id]||(e.pathMap[r.id]=[]),e.pathMap[r.id].push(t.id)},D=function(e,r){var t=r.foldersEnabled,n=r.rigsDataMap,a=r.programsDataMap,i=e.reduce((function(e,r){var i=r.metadata;if(r.isPreset){var o=k(e,{id:s(d.Preset),type:d.Preset});o.items.push(r),M(e,r,o)}else if(r.shared){var c=k(e,{id:s(d.Shared),type:d.Shared});c.items.push(r),M(e,r,c)}else if(r.published){var l,f,m,v,g=k(e,{id:j,type:d.Company});if(M(e,r,g),null!=i&&null!==(l=i.rigIds)&&void 0!==l&&l.length||null!=i&&null!==(f=i.programIds)&&void 0!==f&&f.length)null!=i&&null!==(m=i.rigIds)&&void 0!==m&&m.length&&i.rigIds.forEach((function(t){var a=n[t];if(a){var i=k(e,{id:s(d.Rig,t),type:d.Rig,entityId:t,name:a});i.items.push(r),M(e,r,i)}})),null!=i&&null!==(v=i.programIds)&&void 0!==v&&v.length&&i.programIds.forEach((function(t){var n=a[t];if(n){var i=k(e,{id:s(d.Program,t),type:d.Program,entityId:t,name:n});i.items.push(r),M(e,r,i)}}));else g.items.push(r)}else if(u(r)&&t){var h=p(r),b=k(e,{id:s(d.Regular,h),name:h,type:d.Regular});b.items.push(r),M(e,r,b)}else e.tree.push(r);return e}),{folders:{},tree:[],pathMap:{}});return Object.values(i.folders).forEach((function(e){return e.items.sort(O)})),i.tree.sort(O),i},E=function(e){var r=e.reduce((function(e,r){if(u(r)){var t=p(r);k(e,{id:s(d.Regular,t),name:t,type:d.Regular}).items.push(r)}return e}),{folders:{},tree:[]}).folders;return Object.values(r).toSorted(O)},S={rig:["rig.name"],program:["program.name"],frac_fleet:["frac_fleet.name"],well:["well.name"],pad:["pad.name"],intervention_unit:["intervention_unit.name"]},C=function(){var e=t(a.mark((function e(t,i){var o,s,u,p,c,l,d,f,m,v,g,y,I,w;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=i.appEntities,s=i.permissions,u=i.userProgramIds,p=s.canPublish,c=o.rigId,l=function(e){return(e||[]).reduce((function(e,r){return T(T({},e),{},n({},r,r))}),{})},d=p?t.map((function(e){var r=e.metadata;if(e.published&&r)return r})).reduce((function(e,r){return T(T({},e),{},{rigIds:T(T({},e.rigIds),l(null==r?void 0:r.rigIds)),programIds:T(T({},e.programIds),l(null==r?void 0:r.programIds))})}),{rigIds:{},programIds:{}}):{rigIds:c?n({},c,c):{},programIds:u.reduce((function(e,r){return T(T({},e),{},n({},r,r))}),{})},f=d.rigIds,m=d.programIds,e.next=7,Promise.all([Object.values(f).length?h({ids:Object.values(f),fields:S.rig}):{},Object.values(m).length?b({ids:Object.values(m),fields:S.program}):{}]);case 7:return v=e.sent,g=v.map((function(e){var r;return null===(r=x.deserialize(e))||void 0===r?void 0:r.reduce((function(e,r){var t=r.id,a=r.name;return T(T({},e),{},n({},t,a))}),{})})),y=r(g,2),I=y[0],w=y[1],e.abrupt("return",{rigsDataMap:I,programsDataMap:w});case 10:case"end":return e.stop()}}),e)})));return function(r,t){return e.apply(this,arguments)}}(),R=function(r){return[].concat(e(r().loadedTemplates),e(r().presetTemplates))},A=function(e,r){if(void 0!==r)return R(e).find((function(e){var t=e.id;return r===t}))},z=function(r,t,n){if(void 0===t||void 0===n)return function(){};var a={id:t,action:n};return r((function(r){var t=r.currentActions;return{currentActions:[].concat(e(t),[a])}})),function(){r((function(e){return{currentActions:e.currentActions.filter((function(e){return e!==a}))}}))}},U=function(e,r,t){var n=e().loadedTemplates;return void 0===r?n:n.map((function(e){return e.id===r?T(T({},e),t):e}))},_=function(e,r){if(void 0!==r)return e.find((function(e){var t,n;return(null===(t=e.metadata)||void 0===t?void 0:t.isPresetOverride)&&(null===(n=e.metadata)||void 0===n?void 0:n.parentTemplateId)===r}))},K=function(e,r){if(r&&r.isPreset)return _(e().loadedTemplates,r.id)},F=function(){var e=t(a.mark((function e(r,t,n){var i,o,s,u,p,c,l,d,v;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=K(r,n),s=(o=i||n).settings,u=o.id,p=s,s){e.next=20;break}return c=z(t,n.id,f.LoadData),e.prev=5,e.t0=x,e.next=9,m(r().appKey,u);case 9:e.t1=e.sent,l=e.t0.deserialize.call(e.t0,e.t1),d=l.settings,t({loadedTemplates:U(r,u,{settings:d})}),p=d,e.next=19;break;case 16:e.prev=16,e.t2=e.catch(5),console.error(e.t2);case 19:c();case 20:if(v=A(r,n.id)){e.next=23;break}throw new Error("ensureTemplateSettings: Template not found in list!");case 23:return e.abrupt("return",T(T({},v),{},{settings:p}));case 24:case"end":return e.stop()}}),e,null,[[5,16]])})));return function(r,t,n){return e.apply(this,arguments)}}(),G=function(){var r=t(a.mark((function r(t,n){var i,o,s,u,p,c,l;return a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(i=t(),o=i.hooks.getDefaultTemplate,s=i.presetTemplates,u=i.loadedTemplates,p=i.onChange,!o){r.next=11;break}if(c=o([].concat(e(s),e(u)),{currentTemplateId:void 0,templateSettings:void 0,event:"deleteTemplate"}),n((function(){return{currentTemplateId:null==c?void 0:c.id,templateSettings:void 0}})),r.t0=c,!r.t0){r.next=9;break}return r.next=8,F(t,n,c);case 8:r.t0=r.sent;case 9:l=r.t0,null==p||p(l,"deleteTemplate");case 11:case"end":return r.stop()}}),r)})));return function(e,t){return r.apply(this,arguments)}}(),L=function(e,r,t){var n=e(),a=n.currentTemplateId,i=n.loadedTemplates,o="number"==typeof t?A(e,t):t;if(o){var s=i.filter((function(e){return e.id!==o.id}));return r(o.id===a?{loadedTemplates:s,currentTemplateId:void 0,templateSettings:void 0}:{loadedTemplates:s}),o}},N=function(){var i=t(a.mark((function i(o,s,u,p,c){var l,d,f,m;return a.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:if(u.length){i.next=2;break}return i.abrupt("return",[]);case 2:return l=function(e){return"function"==typeof p?p(e):p},d=o().loadedTemplates.reduce((function(r,t){var a=u.includes(t.id)?l(t):void 0,i=a?T(T({},t),a):t;return T(T({},r),{},{loadedTemplates:[].concat(e(r.loadedTemplates),[i]),templateUpdatesMap:T(T({},r.templateUpdatesMap),a?n({},t.id,a):{})})}),{loadedTemplates:[],templateUpdatesMap:{}}),f=d.loadedTemplates,m=d.templateUpdatesMap,s({loadedTemplates:f}),i.abrupt("return",Promise.all(Object.entries(m).map(function(){var e=t(a.mark((function e(t){var n,i,u,p,l;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r(t,2),i=n[0],u=n[1],p=z(s,Number(i),c),e.prev=2,e.t0=x,e.next=6,v(o().appKey,i,u);case 6:e.t1=e.sent,l=e.t0.deserialize.call(e.t0,e.t1),e.next=13;break;case 10:e.prev=10,e.t2=e.catch(2),console.error(e.t2);case 13:return e.prev=13,p(),e.finish(13);case 16:return e.abrupt("return",l);case 17:case"end":return e.stop()}}),e,null,[[2,10,13,16]])})));return function(r){return e.apply(this,arguments)}}())));case 6:case"end":return i.stop()}}),i)})));return function(e,r,t,n,a){return i.apply(this,arguments)}}(),q=function(){var e=t(a.mark((function e(r,t,n,i,o){var s;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==n){e.next=2;break}return e.abrupt("return",void 0);case 2:return e.next=4,N(r,t,[n],i,o);case 4:return s=e.sent,e.abrupt("return",s[0]);case 6:case"end":return e.stop()}}),e)})));return function(r,t,n,a,i){return e.apply(this,arguments)}}(),B=function(){var r=t(a.mark((function r(t,n,i){var o;return a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.t0=x,r.next=3,g(t().appKey,{name:i.name,settings:i.settings,metadata:i.metadata});case 3:return r.t1=r.sent,o=r.t0.deserialize.call(r.t0,r.t1),n((function(r){var t=r.loadedTemplates;return{loadedTemplates:[].concat(e(t),[o])}})),r.abrupt("return",o);case 7:case"end":return r.stop()}}),r)})));return function(e,t,n){return r.apply(this,arguments)}}(),H=function(){var e=t(a.mark((function e(r,t){var n,i,s,u,p,c,d,f,m,v,g,h;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r(),i=n.userProgramIds,s=n.hooks.filterInitialTemplates,u=n.permissions,p=n.appEntities,c=u.canPublish,d=p.rigId,f=c?t:t.filter((function(e){var r=e.metadata,t=(r=void 0===r?{}:r).programIds,n=void 0===t?[]:t,a=r.rigIds,s=void 0===a?[]:a,u=0===n.length&&0===s.length,p=!!o(n,i).length,c=!!d&&s.includes(d);return u||p||c||l(e)})),!s){e.next=10;break}return e.next=7,s(f);case 7:e.t0=e.sent,e.next=11;break;case 10:e.t0=f;case 11:return m=e.t0,e.next=14,C(m,{appEntities:p,permissions:u,userProgramIds:i});case 14:return v=e.sent,g=v.rigsDataMap,h=v.programsDataMap,e.abrupt("return",{loadedTemplates:m,rigsDataMap:g,programsDataMap:h});case 18:case"end":return e.stop()}}),e)})));return function(r,t){return e.apply(this,arguments)}}();export{S as AssetsFieldsMap,B as addTemplate,D as createTree,x as dataFormatter,F as ensureTemplateSettings,A as findTemplate,_ as findTemplateOverride,R as getAllTemplates,E as getFolders,K as getTemplateOverride,U as getUpdatedTemplates,C as loadAdditionalDataMaps,H as processLoadedTemplates,L as removeTemplateFromList,G as selectTemplateOnDeletion,z as setBusy,q as updateTemplate,N as updateTemplates};
|
|
1
|
+
import e from"@babel/runtime/helpers/toConsumableArray";import r from"@babel/runtime/helpers/slicedToArray";import t from"@babel/runtime/helpers/asyncToGenerator";import n from"@babel/runtime/helpers/defineProperty";import a from"@babel/runtime/regenerator";import i from"jsona";import{intersection as o}from"lodash";import{getFolderId as s,isTemplateInFolder as u,getTemplateFolder as p,isFolder as c,isOwnTemplate as d}from"../utils.js";import{FolderType as l,Action as f}from"../types.js";import{getRigs as m,getPrograms as v,getAppSettingsTemplate as g,patchAppSettingsTemplate as h,postAppSettingsTemplate as b}from"../../../clients/jsonApi/index.js";var y;function I(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function T(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?I(Object(t),!0).forEach((function(r){n(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):I(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}var w=new i,x=[l.Rig,l.Program],P=(n(y={},l.Company,0),n(y,l.Preset,1),n(y,l.Shared,2),n(y,l.Rig,3),n(y,l.Program,4),n(y,l.FracFleet,5),n(y,l.Pad,6),n(y,l.Regular,7),y),O=function(e,r){var t;return c(e)&&c(r)?P[e.type]-P[r.type]||(null===(t=e.name)||void 0===t?void 0:t.localeCompare((null==r?void 0:r.name)||""))||0:c(e)?-1:c(r)?1:e.name.localeCompare(r.name)},k=s(l.Company),j=function e(r,t){var n=t.id,a=t.type,i=t.name,o=t.entityId,u=x.includes(a)?e(r,{id:s(l.Company),type:l.Company}):void 0;if(!r.folders[n]){var p={id:n,type:a,name:i,items:[],entityId:o};r.folders[n]=p,u?u.items.push(p):r.tree.push(p)}return r.folders[n]},M=function(e,r,t){e.pathMap[r.id]||(e.pathMap[r.id]=[]),e.pathMap[r.id].push(t.id)},D=function(e,r){var t=r.foldersEnabled,n=r.rigsDataMap,a=r.programsDataMap,i=e.reduce((function(e,r){var i=r.metadata;if(r.isPreset){var o=j(e,{id:s(l.Preset),type:l.Preset});o.items.push(r),M(e,r,o)}else if(r.shared){var c=j(e,{id:s(l.Shared),type:l.Shared});c.items.push(r),M(e,r,c)}else if(r.published){var d,f,m,v,g=j(e,{id:k,type:l.Company});if(M(e,r,g),null!=i&&null!==(d=i.rigIds)&&void 0!==d&&d.length||null!=i&&null!==(f=i.programIds)&&void 0!==f&&f.length)null!=i&&null!==(m=i.rigIds)&&void 0!==m&&m.length&&i.rigIds.forEach((function(t){var a=n[t];if(a){var i=j(e,{id:s(l.Rig,t),type:l.Rig,entityId:t,name:a});i.items.push(r),M(e,r,i)}})),null!=i&&null!==(v=i.programIds)&&void 0!==v&&v.length&&i.programIds.forEach((function(t){var n=a[t];if(n){var i=j(e,{id:s(l.Program,t),type:l.Program,entityId:t,name:n});i.items.push(r),M(e,r,i)}}));else g.items.push(r)}else if(u(r)&&t){var h=p(r),b=j(e,{id:s(l.Regular,h),name:h,type:l.Regular});b.items.push(r),M(e,r,b)}else e.tree.push(r);return e}),{folders:{},tree:[],pathMap:{}});return Object.values(i.folders).forEach((function(e){return e.items.sort(O)})),i.tree.sort(O),i},E=function(e){var r=e.reduce((function(e,r){if(u(r)){var t=p(r);j(e,{id:s(l.Regular,t),name:t,type:l.Regular}).items.push(r)}return e}),{folders:{},tree:[]}).folders;return Object.values(r).toSorted(O)},S={rig:["rig.name"],program:["program.name"],frac_fleet:["frac_fleet.name"],well:["well.name"],pad:["pad.name"],intervention_unit:["intervention_unit.name"]},C=function(){var e=t(a.mark((function e(t){var i,o,s,u,p,c,d,l,f;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=t.rigIds,o=t.programIds,e.next=3,Promise.all([i.length?m({ids:i,fields:S.rig}):{},o.length?v({ids:o,fields:S.program}):{}]);case 3:return s=e.sent,u=s.map((function(e){var r;return null===(r=w.deserialize(e))||void 0===r?void 0:r.reduce((function(e,r){var t=r.id,a=r.name;return T(T({},e),{},n({},t,a))}),{})})),p=r(u,2),c=p[0],d=void 0===c?{}:c,l=p[1],f=void 0===l?{}:l,e.abrupt("return",{rigsDataMap:d,programsDataMap:f});case 6:case"end":return e.stop()}}),e)})));return function(r){return e.apply(this,arguments)}}(),R=function(){var e=t(a.mark((function e(r,t){var i,o,s,u,p,c,d,l,f;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=t.appEntities,o=t.permissions,s=t.userProgramIds,u=o.canPublish,p=i.rigId,c=function(e){return(e||[]).reduce((function(e,r){return T(T({},e),{},n({},r,r))}),{})},d=u?r.map((function(e){var r=e.metadata;if(e.published&&r)return r})).reduce((function(e,r){return T(T({},e),{},{rigIds:T(T({},e.rigIds),c(null==r?void 0:r.rigIds)),programIds:T(T({},e.programIds),c(null==r?void 0:r.programIds))})}),{rigIds:{},programIds:{}}):{rigIds:p?n({},p,p):{},programIds:s.reduce((function(e,r){return T(T({},e),{},n({},r,r))}),{})},l=d.rigIds,f=d.programIds,e.abrupt("return",C({programIds:Object.values(f),rigIds:Object.values(l)}));case 6:case"end":return e.stop()}}),e)})));return function(r,t){return e.apply(this,arguments)}}(),A=function(r){return[].concat(e(r().loadedTemplates),e(r().presetTemplates))},z=function(e,r){if(void 0!==r)return A(e).find((function(e){var t=e.id;return r===t}))},U=function(r,t,n){if(void 0===t||void 0===n)return function(){};var a={id:t,action:n};return r((function(r){var t=r.currentActions;return{currentActions:[].concat(e(t),[a])}})),function(){r((function(e){return{currentActions:e.currentActions.filter((function(e){return e!==a}))}}))}},_=function(e,r,t){var n=e().loadedTemplates;return void 0===r?n:n.map((function(e){return e.id===r?T(T({},e),t):e}))},K=function(e,r){if(void 0!==r)return e.find((function(e){var t,n;return(null===(t=e.metadata)||void 0===t?void 0:t.isPresetOverride)&&(null===(n=e.metadata)||void 0===n?void 0:n.parentTemplateId)===r}))},F=function(e,r){if(r&&r.isPreset)return K(e().loadedTemplates,r.id)},G=function(){var e=t(a.mark((function e(r,t,n){var i,o,s,u,p,c,d,l,m;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=F(r,n),s=(o=i||n).settings,u=o.id,p=s,s){e.next=20;break}return c=U(t,n.id,f.LoadData),e.prev=5,e.t0=w,e.next=9,g(r().appKey,u);case 9:e.t1=e.sent,d=e.t0.deserialize.call(e.t0,e.t1),l=d.settings,t({loadedTemplates:_(r,u,{settings:l})}),p=l,e.next=19;break;case 16:e.prev=16,e.t2=e.catch(5),console.error(e.t2);case 19:c();case 20:if(m=z(r,n.id)){e.next=23;break}throw new Error("ensureTemplateSettings: Template not found in list!");case 23:return e.abrupt("return",T(T({},m),{},{settings:p}));case 24:case"end":return e.stop()}}),e,null,[[5,16]])})));return function(r,t,n){return e.apply(this,arguments)}}(),L=function(){var r=t(a.mark((function r(t,n){var i,o,s,u,p,c,d;return a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(i=t(),o=i.hooks.getDefaultTemplate,s=i.presetTemplates,u=i.loadedTemplates,p=i.onChange,!o){r.next=11;break}if(c=o([].concat(e(s),e(u)),{currentTemplateId:void 0,templateSettings:void 0,event:"deleteTemplate"}),n((function(){return{currentTemplateId:null==c?void 0:c.id,templateSettings:void 0}})),r.t0=c,!r.t0){r.next=9;break}return r.next=8,G(t,n,c);case 8:r.t0=r.sent;case 9:d=r.t0,null==p||p(d,"deleteTemplate");case 11:case"end":return r.stop()}}),r)})));return function(e,t){return r.apply(this,arguments)}}(),N=function(e,r,t){var n=e(),a=n.currentTemplateId,i=n.loadedTemplates,o="number"==typeof t?z(e,t):t;if(o){var s=i.filter((function(e){return e.id!==o.id}));return r(o.id===a?{loadedTemplates:s,currentTemplateId:void 0,templateSettings:void 0}:{loadedTemplates:s}),o}},q=function(){var i=t(a.mark((function i(o,s,u,p,c){var d,l,f,m;return a.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:if(u.length){i.next=2;break}return i.abrupt("return",[]);case 2:return d=function(e){return"function"==typeof p?p(e):p},l=o().loadedTemplates.reduce((function(r,t){var a=u.includes(t.id)?d(t):void 0,i=a?T(T({},t),a):t;return T(T({},r),{},{loadedTemplates:[].concat(e(r.loadedTemplates),[i]),templateUpdatesMap:T(T({},r.templateUpdatesMap),a?n({},t.id,a):{})})}),{loadedTemplates:[],templateUpdatesMap:{}}),f=l.loadedTemplates,m=l.templateUpdatesMap,s({loadedTemplates:f}),i.abrupt("return",Promise.all(Object.entries(m).map(function(){var e=t(a.mark((function e(t){var n,i,u,p,d;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r(t,2),i=n[0],u=n[1],p=U(s,Number(i),c),e.prev=2,e.t0=w,e.next=6,h(o().appKey,i,u);case 6:e.t1=e.sent,d=e.t0.deserialize.call(e.t0,e.t1),e.next=13;break;case 10:e.prev=10,e.t2=e.catch(2),console.error(e.t2);case 13:return e.prev=13,p(),e.finish(13);case 16:return e.abrupt("return",d);case 17:case"end":return e.stop()}}),e,null,[[2,10,13,16]])})));return function(r){return e.apply(this,arguments)}}())));case 6:case"end":return i.stop()}}),i)})));return function(e,r,t,n,a){return i.apply(this,arguments)}}(),B=function(){var e=t(a.mark((function e(r,t,n,i,o){var s;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==n){e.next=2;break}return e.abrupt("return",void 0);case 2:return e.next=4,q(r,t,[n],i,o);case 4:return s=e.sent,e.abrupt("return",s[0]);case 6:case"end":return e.stop()}}),e)})));return function(r,t,n,a,i){return e.apply(this,arguments)}}(),H=function(){var r=t(a.mark((function r(t,n,i){var o;return a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.t0=w,r.next=3,b(t().appKey,{name:i.name,settings:i.settings,metadata:i.metadata});case 3:return r.t1=r.sent,o=r.t0.deserialize.call(r.t0,r.t1),n((function(r){var t=r.loadedTemplates;return{loadedTemplates:[].concat(e(t),[o])}})),r.abrupt("return",o);case 7:case"end":return r.stop()}}),r)})));return function(e,t,n){return r.apply(this,arguments)}}(),J=function(){var e=t(a.mark((function e(r,t){var n,i,s,u,p,c,l,f,m,v,g,h;return a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r(),i=n.userProgramIds,s=n.hooks.filterInitialTemplates,u=n.permissions,p=n.appEntities,c=u.canPublish,l=p.rigId,f=c?t:t.filter((function(e){var r=e.metadata,t=(r=void 0===r?{}:r).programIds,n=void 0===t?[]:t,a=r.rigIds,s=void 0===a?[]:a,u=0===n.length&&0===s.length,p=!!o(n,i).length,c=!!l&&s.includes(l);return u||p||c||d(e)})),!s){e.next=10;break}return e.next=7,s(f);case 7:e.t0=e.sent,e.next=11;break;case 10:e.t0=f;case 11:return m=e.t0,e.next=14,R(m,{appEntities:p,permissions:u,userProgramIds:i});case 14:return v=e.sent,g=v.rigsDataMap,h=v.programsDataMap,e.abrupt("return",{loadedTemplates:m,rigsDataMap:g,programsDataMap:h});case 18:case"end":return e.stop()}}),e)})));return function(r,t){return e.apply(this,arguments)}}();export{S as AssetsFieldsMap,H as addTemplate,D as createTree,w as dataFormatter,G as ensureTemplateSettings,z as findTemplate,K as findTemplateOverride,A as getAllTemplates,E as getFolders,F as getTemplateOverride,_ as getUpdatedTemplates,C as loadAdditionalData,R as loadAdditionalDataMaps,J as processLoadedTemplates,N as removeTemplateFromList,L as selectTemplateOnDeletion,U as setBusy,B as updateTemplate,q as updateTemplates};
|
|
2
2
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../../src/componentsV2/TemplatesControl/Store/utils.ts"],"sourcesContent":["import Jsona from 'jsona';\nimport { intersection } from 'lodash';\n\nimport {\n getFolderId,\n getTemplateFolder,\n isFolder,\n isOwnTemplate,\n isTemplateInFolder,\n} from '../utils';\nimport {\n Action,\n FolderType,\n Store,\n Template,\n TemplateData,\n TreeFolder,\n TreeNode,\n ZustandStoreGetter,\n ZustandStoreSetter,\n} from '../types';\n\nimport {\n getAppSettingsTemplate,\n getPrograms,\n getRigs,\n patchAppSettingsTemplate,\n postAppSettingsTemplate,\n} from '~/clients/jsonApi';\n\nexport const dataFormatter = new Jsona();\n\ntype Tree = {\n /**\n * Map of all folders for easy access\n */\n folders: Record<string, TreeFolder>;\n /**\n * Actual tree\n */\n tree: TreeNode[];\n /**\n * Template path map: templateId to array of folder ids in which this template is\n */\n pathMap: Record<string, string[]>;\n};\n\nconst SubFolderTypes = [FolderType.Rig, FolderType.Program];\n\nconst FoldersOrderMap: Record<FolderType, number> = {\n [FolderType.Company]: 0,\n [FolderType.Preset]: 1,\n [FolderType.Shared]: 2,\n\n [FolderType.Rig]: 3,\n [FolderType.Program]: 4,\n [FolderType.FracFleet]: 5,\n [FolderType.Pad]: 6,\n\n [FolderType.Regular]: 7,\n};\n\nconst sortNodes = (a: TreeNode, b: TreeNode) => {\n if (isFolder(a) && isFolder(b)) {\n return (\n FoldersOrderMap[a.type] - FoldersOrderMap[b.type] || a.name?.localeCompare(b?.name || '') || 0\n );\n }\n\n // Folder first\n if (isFolder(a)) {\n return -1;\n }\n\n // Templates second\n if (isFolder(b)) {\n return 1;\n }\n\n return a.name.localeCompare(b.name);\n};\n\nconst companyFolderId = getFolderId(FolderType.Company);\n\nconst mutatingEnsureFolder = (\n acc: Omit<Tree, 'pathMap'>,\n { id, type, name, entityId }: Omit<TreeFolder, 'items'>\n) => {\n const isSubFolder = SubFolderTypes.includes(type);\n\n const parentFolder = isSubFolder\n ? mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Company),\n type: FolderType.Company,\n })\n : undefined;\n\n if (!acc.folders[id]) {\n const newFolder: TreeFolder = {\n id,\n type,\n name,\n items: [],\n entityId,\n };\n\n acc.folders[id] = newFolder;\n\n if (parentFolder) {\n parentFolder.items.push(newFolder);\n } else {\n acc.tree.push(newFolder);\n }\n }\n\n return acc.folders[id];\n};\n\nconst mutatingAddFolderPath = (acc: Tree, template: Template, folder: TreeFolder) => {\n if (!acc.pathMap[template.id]) {\n acc.pathMap[template.id] = [];\n }\n acc.pathMap[template.id].push(folder.id);\n};\n\ntype CreateTreeOptions = {\n foldersEnabled: boolean;\n rigsDataMap: Record<string, string>;\n programsDataMap: Record<string, string>;\n};\n\nexport const createTree = (\n templates: Template[],\n { foldersEnabled, rigsDataMap, programsDataMap }: CreateTreeOptions\n) => {\n const data = templates.reduce<Tree>(\n // ⚠️⚠️⚠️ WARNING!!! ⚠️⚠️⚠️\n // Lots of mutations of accumulator, be careful\n (acc, template) => {\n const { metadata } = template;\n\n // Template is preset\n if (template.isPreset) {\n const folder = mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Preset),\n type: FolderType.Preset,\n });\n folder.items.push(template);\n mutatingAddFolderPath(acc, template, folder);\n }\n // Template is shared\n else if (template.shared) {\n const folder = mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Shared),\n type: FolderType.Shared,\n });\n folder.items.push(template);\n mutatingAddFolderPath(acc, template, folder);\n }\n // Template is published by company admins\n else if (template.published) {\n const companyFolder = mutatingEnsureFolder(acc, {\n id: companyFolderId,\n type: FolderType.Company,\n });\n mutatingAddFolderPath(acc, template, companyFolder);\n\n // Template is published but not assigned to any entity\n if (!metadata?.rigIds?.length && !metadata?.programIds?.length) {\n companyFolder.items.push(template);\n } else {\n // Template is assigned to some rigs\n if (metadata?.rigIds?.length) {\n metadata.rigIds.forEach(entityId => {\n const name = rigsDataMap[entityId];\n if (name) {\n const folder = mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Rig, entityId),\n type: FolderType.Rig,\n entityId,\n name,\n });\n folder.items.push(template);\n mutatingAddFolderPath(acc, template, folder);\n }\n });\n }\n\n // Template is assigned to some programs\n if (metadata?.programIds?.length) {\n metadata.programIds.forEach(entityId => {\n const name = programsDataMap[entityId];\n if (name) {\n const folder = mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Program, entityId),\n type: FolderType.Program,\n entityId,\n name,\n });\n folder.items.push(template);\n mutatingAddFolderPath(acc, template, folder);\n }\n });\n }\n }\n }\n // Template in user's folder\n else if (isTemplateInFolder(template) && foldersEnabled) {\n const folderName = getTemplateFolder(template);\n const folder = mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Regular, folderName),\n name: folderName,\n type: FolderType.Regular,\n });\n folder.items.push(template);\n mutatingAddFolderPath(acc, template, folder);\n }\n // Template not in folder\n else {\n acc.tree.push(template);\n }\n\n return acc;\n },\n { folders: {}, tree: [], pathMap: {} }\n );\n\n // Sorting items in all folders\n Object.values(data.folders).forEach(folder => folder.items.sort(sortNodes));\n\n // Sorting root level\n data.tree.sort(sortNodes);\n\n return data;\n};\n\nexport const getFolders = (templates: Template[]) => {\n const { folders } = templates.reduce<Omit<Tree, 'pathMap'>>(\n (acc, template) => {\n if (isTemplateInFolder(template)) {\n const folder = getTemplateFolder(template);\n mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Regular, folder),\n name: folder,\n type: FolderType.Regular,\n }).items.push(template);\n }\n\n return acc;\n },\n { folders: {}, tree: [] }\n );\n\n return Object.values(folders).toSorted(sortNodes);\n};\n\nexport const AssetsFieldsMap = {\n rig: ['rig.name'],\n program: ['program.name'],\n frac_fleet: ['frac_fleet.name'],\n well: ['well.name'],\n pad: ['pad.name'],\n intervention_unit: ['intervention_unit.name'],\n};\n\ntype LoadAdditionalDataMapsOptions = {\n permissions: Store['permissions'];\n appEntities: Store['appEntities'];\n userProgramIds: Store['userProgramIds'];\n};\n\nexport const loadAdditionalDataMaps = async (\n templates: Template[],\n { appEntities, permissions, userProgramIds }: LoadAdditionalDataMapsOptions\n) => {\n const { canPublish } = permissions;\n const { rigId } = appEntities;\n\n // Loading publish entities\n const createMap = (ids?: number[]) => (ids || []).reduce((acc, id) => ({ ...acc, [id]: id }), {});\n\n const { rigIds, programIds } = canPublish\n ? templates\n .map(({ metadata, published }) => {\n if (published && metadata) {\n return metadata;\n }\n return undefined;\n })\n .reduce<{\n rigIds: Record<string, number>;\n programIds: Record<string, number>;\n }>(\n (acc, metadata) => ({\n ...acc,\n rigIds: { ...acc.rigIds, ...createMap(metadata?.rigIds) },\n programIds: { ...acc.programIds, ...createMap(metadata?.programIds) },\n }),\n { rigIds: {}, programIds: {} }\n )\n : {\n rigIds: rigId ? { [rigId]: rigId } : {},\n programIds: userProgramIds.reduce<Record<string, string>>(\n (acc, id) => ({ ...acc, [id]: id }),\n {}\n ),\n };\n\n const entityRawData = await Promise.all([\n Object.values(rigIds).length\n ? getRigs({ ids: Object.values(rigIds), fields: AssetsFieldsMap.rig })\n : {},\n Object.values(programIds).length\n ? getPrograms({ ids: Object.values(programIds), fields: AssetsFieldsMap.program })\n : {},\n ]);\n const [rigsDataMap, programsDataMap] = entityRawData.map(data =>\n (dataFormatter.deserialize(data) as { id: string; name: string }[])?.reduce(\n (acc, { id, name }) => ({ ...acc, [id]: name }),\n {} as Record<string, string>\n )\n );\n\n return { rigsDataMap, programsDataMap };\n};\n\nexport const getAllTemplates = <T extends TemplateData>(get: ZustandStoreGetter<T>) => [\n ...get().loadedTemplates,\n ...get().presetTemplates,\n];\n\nexport const findTemplate = <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n templateId?: number\n) => {\n if (templateId === undefined) {\n return undefined;\n }\n\n return getAllTemplates(get).find(({ id }) => templateId === id);\n};\n\nexport const setBusy = <T extends TemplateData>(\n set: ZustandStoreSetter<T>,\n id?: number | string,\n action?: Action\n) => {\n if (id === undefined || action === undefined) {\n return () => {};\n }\n\n const newAction = { id, action };\n\n set(({ currentActions }) => ({ currentActions: [...currentActions, newAction] }));\n\n return () => {\n set(({ currentActions }) => ({\n currentActions: currentActions.filter(action => action !== newAction),\n }));\n };\n};\n\nexport const getUpdatedTemplates = <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n templateId: number | undefined,\n update: Partial<Template<T>>\n) => {\n const { loadedTemplates } = get();\n return templateId === undefined\n ? loadedTemplates\n : loadedTemplates.map(item => {\n if (item.id === templateId) {\n return { ...item, ...update };\n }\n\n return item;\n });\n};\n\nexport const findTemplateOverride = <T extends TemplateData>(\n loadedTemplates: Template<T>[],\n templateId?: number\n) => {\n if (templateId === undefined) {\n return undefined;\n }\n\n // This may slow us down, needs verification. If it does - refactor to maps in store\n return loadedTemplates.find(\n loadedTemplate =>\n loadedTemplate.metadata?.isPresetOverride &&\n loadedTemplate.metadata?.parentTemplateId === templateId\n );\n};\n\nexport const getTemplateOverride = <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n template?: Template<T>\n) => {\n if (!template || !template.isPreset) {\n return undefined;\n }\n\n return findTemplateOverride(get().loadedTemplates, template.id);\n};\n\nexport const ensureTemplateSettings = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>,\n template: Template<T>\n) => {\n const override = getTemplateOverride(get, template);\n\n const { settings: existingSettings, id: templateIdToLoad } = override || template;\n let actualSettings = existingSettings;\n\n if (!existingSettings) {\n const clearBusy = setBusy(set, template.id, Action.LoadData);\n try {\n const { settings: settingsFromServer } = dataFormatter.deserialize(\n await getAppSettingsTemplate(get().appKey, templateIdToLoad)\n ) as Template<T>;\n\n set({\n loadedTemplates: getUpdatedTemplates<T>(get, templateIdToLoad, {\n settings: settingsFromServer,\n }),\n });\n\n actualSettings = settingsFromServer;\n } catch (error) {\n console.error(error);\n }\n\n clearBusy();\n }\n\n const resultTemplate = findTemplate(get, template.id);\n\n if (!resultTemplate) {\n throw new Error('ensureTemplateSettings: Template not found in list!');\n }\n\n // For preset overrides - we return the settings of the override\n return { ...resultTemplate, settings: actualSettings };\n};\n\nexport const selectTemplateOnDeletion = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>\n) => {\n const {\n hooks: { getDefaultTemplate },\n presetTemplates,\n loadedTemplates,\n onChange,\n } = get();\n\n if (getDefaultTemplate) {\n const selectedTemplate = getDefaultTemplate([...presetTemplates, ...loadedTemplates], {\n currentTemplateId: undefined,\n templateSettings: undefined,\n event: 'deleteTemplate',\n });\n\n set(() => ({\n currentTemplateId: selectedTemplate?.id,\n templateSettings: undefined,\n }));\n\n const withSettings =\n selectedTemplate && (await ensureTemplateSettings(get, set, selectedTemplate));\n\n onChange?.(withSettings, 'deleteTemplate');\n }\n};\n\nexport const removeTemplateFromList = <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>,\n templateOrId?: number | Template<T>\n) => {\n const { currentTemplateId, loadedTemplates: prevTemplates } = get();\n\n const templateToDelete =\n typeof templateOrId === 'number' ? findTemplate(get, templateOrId) : templateOrId;\n\n if (templateToDelete) {\n const loadedTemplates = prevTemplates.filter(({ id }) => id !== templateToDelete.id);\n\n const update: Partial<Store<T>> =\n templateToDelete.id === currentTemplateId\n ? { loadedTemplates, currentTemplateId: undefined, templateSettings: undefined }\n : { loadedTemplates };\n\n set(update);\n\n return templateToDelete;\n }\n\n return undefined;\n};\n\n/**\n * Updates templates\n *\n * @return Template[] of updated templates in arbitrary order\n */\nexport const updateTemplates = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>,\n ids: number[],\n updateOrFn: Partial<Template<T>> | ((template: Template<T>) => Partial<Template<T>>),\n action: Action\n) => {\n if (!ids.length) {\n return [];\n }\n\n const getUpdateValue = (template: Template<T>) =>\n typeof updateOrFn === 'function' ? updateOrFn(template) : updateOrFn;\n\n const { loadedTemplates, templateUpdatesMap } = get().loadedTemplates.reduce<{\n loadedTemplates: Template<T>[]; // New loadedTemplates\n templateUpdatesMap: Record<string, Partial<Template>>; // Template updates\n }>(\n (acc, template) => {\n const isChanged = ids.includes(template.id);\n const updateValue = isChanged ? getUpdateValue(template) : undefined;\n const newTemplate = updateValue ? { ...template, ...updateValue } : template;\n\n return {\n ...acc,\n loadedTemplates: [...acc.loadedTemplates, newTemplate],\n templateUpdatesMap: {\n ...acc.templateUpdatesMap,\n ...(updateValue ? { [template.id]: updateValue } : {}),\n },\n };\n },\n { loadedTemplates: [], templateUpdatesMap: {} }\n );\n\n set({ loadedTemplates });\n\n return Promise.all(\n Object.entries(templateUpdatesMap).map(async ([id, updateValue]) => {\n const clearBusy = setBusy(set, Number(id), action);\n let data: Template<T> | undefined;\n\n try {\n data = dataFormatter.deserialize(\n await patchAppSettingsTemplate(get().appKey, id, updateValue as never)\n ) as Template<T>;\n } catch (e) {\n console.error(e);\n } finally {\n clearBusy();\n }\n\n return data;\n })\n );\n};\n\nexport const updateTemplate = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>,\n id: number | undefined,\n updateOrFn: Partial<Template<T>> | ((template: Template<T>) => Partial<Template<T>>),\n action: Action\n) => {\n if (id === undefined) {\n return undefined;\n }\n\n const data = await updateTemplates<T>(get, set, [id], updateOrFn, action);\n return data[0];\n};\n\nexport const addTemplate = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>,\n template: Pick<Template<T>, 'name' | 'settings' | 'metadata'>\n) => {\n const newTemplate = dataFormatter.deserialize(\n await postAppSettingsTemplate(get().appKey, {\n name: template.name,\n settings: template.settings,\n metadata: template.metadata,\n })\n ) as Template<T>;\n\n set(({ loadedTemplates }) => ({ loadedTemplates: [...loadedTemplates, newTemplate] }));\n\n return newTemplate;\n};\n\nexport const processLoadedTemplates = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n templates: Template<T>[]\n) => {\n const {\n userProgramIds,\n hooks: { filterInitialTemplates },\n permissions,\n appEntities,\n } = get();\n const { canPublish } = permissions;\n const { rigId } = appEntities;\n\n const loadedTemplates = canPublish\n ? templates\n : templates.filter(template => {\n const { metadata: { programIds = [], rigIds = [] } = {} } = template;\n const inNotAttachedToEntity = programIds.length === 0 && rigIds.length === 0;\n const isSameProgram = !!intersection(programIds, userProgramIds).length;\n const isSameRig = !!rigId && rigIds.includes(rigId);\n\n return inNotAttachedToEntity || isSameProgram || isSameRig || isOwnTemplate(template);\n });\n\n // Preprocessing templates\n const filteredTemplates = filterInitialTemplates\n ? await filterInitialTemplates(loadedTemplates)\n : loadedTemplates;\n\n // Loading publish entities\n const { rigsDataMap, programsDataMap } = await loadAdditionalDataMaps(filteredTemplates, {\n appEntities,\n permissions,\n userProgramIds,\n });\n\n return {\n loadedTemplates: filteredTemplates,\n rigsDataMap,\n programsDataMap,\n };\n};\n"],"names":["dataFormatter","Jsona","SubFolderTypes","FolderType","Rig","Program","FoldersOrderMap","Company","Preset","_defineProperty","_FoldersOrderMap","Shared","FracFleet","Pad","Regular","sortNodes","a","b","_a$name","isFolder","type","name","localeCompare","companyFolderId","getFolderId","mutatingEnsureFolder","acc","_ref","id","entityId","parentFolder","includes","undefined","folders","newFolder","items","push","tree","mutatingAddFolderPath","template","folder","pathMap","createTree","templates","_ref2","foldersEnabled","rigsDataMap","programsDataMap","data","reduce","metadata","isPreset","shared","published","_metadata$rigIds","_metadata$programIds","_metadata$rigIds2","_metadata$programIds2","companyFolder","rigIds","length","programIds","forEach","isTemplateInFolder","folderName","getTemplateFolder","Object","values","sort","getFolders","toSorted","AssetsFieldsMap","rig","program","frac_fleet","well","pad","intervention_unit","loadAdditionalDataMaps","_ref4","_asyncToGenerator","_regeneratorRuntime","mark","_ref3","appEntities","permissions","userProgramIds","canPublish","rigId","createMap","_ref5","entityRawData","_entityRawData$map","_entityRawData$map2","wrap","_context","prev","next","ids","_objectSpread","map","_ref6","Promise","all","getRigs","fields","getPrograms","sent","_dataFormatter$deseri","deserialize","_ref8","_slicedToArray","abrupt","stop","_callee","_x","_x2","apply","this","arguments","getAllTemplates","get","loadedTemplates","presetTemplates","findTemplate","templateId","find","_ref9","setBusy","set","action","newAction","_ref10","currentActions","concat","_toConsumableArray","_ref11","filter","getUpdatedTemplates","update","item","findTemplateOverride","loadedTemplate","_loadedTemplate$metad","_loadedTemplate$metad2","isPresetOverride","parentTemplateId","getTemplateOverride","ensureTemplateSettings","_ref12","override","_ref13","existingSettings","templateIdToLoad","actualSettings","clearBusy","_ref14","settingsFromServer","resultTemplate","_context2","settings","Action","LoadData","t0","getAppSettingsTemplate","appKey","t1","call","t2","console","error","Error","_callee2","_x3","_x4","_x5","selectTemplateOnDeletion","_ref15","_callee3","_get2","getDefaultTemplate","onChange","selectedTemplate","withSettings","_context3","hooks","currentTemplateId","templateSettings","event","_x6","_x7","removeTemplateFromList","templateOrId","_get3","prevTemplates","templateToDelete","_ref16","updateTemplates","_ref17","_callee5","updateOrFn","getUpdateValue","_get$loadedTemplates$","templateUpdatesMap","_context5","updateValue","newTemplate","entries","_ref20","_callee4","_ref19","_ref21","_context4","Number","patchAppSettingsTemplate","finish","_x13","_x8","_x9","_x10","_x11","_x12","updateTemplate","_ref22","_callee6","_context6","_x14","_x15","_x16","_x17","_x18","addTemplate","_ref23","_context7","postAppSettingsTemplate","_ref24","_callee7","_x19","_x20","_x21","processLoadedTemplates","_ref25","_callee8","_get4","filterInitialTemplates","filteredTemplates","_yield$loadAdditional","_context8","_template$metadata$pr","_template$metadata","_template$metadata$ri","inNotAttachedToEntity","isSameProgram","intersection","isSameRig","isOwnTemplate","_x22","_x23"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../src/componentsV2/TemplatesControl/Store/utils.ts"],"sourcesContent":["import Jsona from 'jsona';\nimport { intersection } from 'lodash';\n\nimport {\n getFolderId,\n getTemplateFolder,\n isFolder,\n isOwnTemplate,\n isTemplateInFolder,\n} from '../utils';\nimport {\n Action,\n FolderType,\n Store,\n Template,\n TemplateData,\n TreeFolder,\n TreeNode,\n ZustandStoreGetter,\n ZustandStoreSetter,\n} from '../types';\n\nimport {\n getAppSettingsTemplate,\n getPrograms,\n getRigs,\n patchAppSettingsTemplate,\n postAppSettingsTemplate,\n} from '~/clients/jsonApi';\n\nexport const dataFormatter = new Jsona();\n\ntype Tree = {\n /**\n * Map of all folders for easy access\n */\n folders: Record<string, TreeFolder>;\n /**\n * Actual tree\n */\n tree: TreeNode[];\n /**\n * Template path map: templateId to array of folder ids in which this template is\n */\n pathMap: Record<string, string[]>;\n};\n\nconst SubFolderTypes = [FolderType.Rig, FolderType.Program];\n\nconst FoldersOrderMap: Record<FolderType, number> = {\n [FolderType.Company]: 0,\n [FolderType.Preset]: 1,\n [FolderType.Shared]: 2,\n\n [FolderType.Rig]: 3,\n [FolderType.Program]: 4,\n [FolderType.FracFleet]: 5,\n [FolderType.Pad]: 6,\n\n [FolderType.Regular]: 7,\n};\n\nconst sortNodes = (a: TreeNode, b: TreeNode) => {\n if (isFolder(a) && isFolder(b)) {\n return (\n FoldersOrderMap[a.type] - FoldersOrderMap[b.type] || a.name?.localeCompare(b?.name || '') || 0\n );\n }\n\n // Folder first\n if (isFolder(a)) {\n return -1;\n }\n\n // Templates second\n if (isFolder(b)) {\n return 1;\n }\n\n return a.name.localeCompare(b.name);\n};\n\nconst companyFolderId = getFolderId(FolderType.Company);\n\nconst mutatingEnsureFolder = (\n acc: Omit<Tree, 'pathMap'>,\n { id, type, name, entityId }: Omit<TreeFolder, 'items'>\n) => {\n const isSubFolder = SubFolderTypes.includes(type);\n\n const parentFolder = isSubFolder\n ? mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Company),\n type: FolderType.Company,\n })\n : undefined;\n\n if (!acc.folders[id]) {\n const newFolder: TreeFolder = {\n id,\n type,\n name,\n items: [],\n entityId,\n };\n\n acc.folders[id] = newFolder;\n\n if (parentFolder) {\n parentFolder.items.push(newFolder);\n } else {\n acc.tree.push(newFolder);\n }\n }\n\n return acc.folders[id];\n};\n\nconst mutatingAddFolderPath = (acc: Tree, template: Template, folder: TreeFolder) => {\n if (!acc.pathMap[template.id]) {\n acc.pathMap[template.id] = [];\n }\n acc.pathMap[template.id].push(folder.id);\n};\n\ntype CreateTreeOptions = {\n foldersEnabled: boolean;\n rigsDataMap: Record<string, string>;\n programsDataMap: Record<string, string>;\n};\n\nexport const createTree = (\n templates: Template[],\n { foldersEnabled, rigsDataMap, programsDataMap }: CreateTreeOptions\n) => {\n const data = templates.reduce<Tree>(\n // ⚠️⚠️⚠️ WARNING!!! ⚠️⚠️⚠️\n // Lots of mutations of accumulator, be careful\n (acc, template) => {\n const { metadata } = template;\n\n // Template is preset\n if (template.isPreset) {\n const folder = mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Preset),\n type: FolderType.Preset,\n });\n folder.items.push(template);\n mutatingAddFolderPath(acc, template, folder);\n }\n // Template is shared\n else if (template.shared) {\n const folder = mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Shared),\n type: FolderType.Shared,\n });\n folder.items.push(template);\n mutatingAddFolderPath(acc, template, folder);\n }\n // Template is published by company admins\n else if (template.published) {\n const companyFolder = mutatingEnsureFolder(acc, {\n id: companyFolderId,\n type: FolderType.Company,\n });\n mutatingAddFolderPath(acc, template, companyFolder);\n\n // Template is published but not assigned to any entity\n if (!metadata?.rigIds?.length && !metadata?.programIds?.length) {\n companyFolder.items.push(template);\n } else {\n // Template is assigned to some rigs\n if (metadata?.rigIds?.length) {\n metadata.rigIds.forEach(entityId => {\n const name = rigsDataMap[entityId];\n if (name) {\n const folder = mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Rig, entityId),\n type: FolderType.Rig,\n entityId,\n name,\n });\n folder.items.push(template);\n mutatingAddFolderPath(acc, template, folder);\n }\n });\n }\n\n // Template is assigned to some programs\n if (metadata?.programIds?.length) {\n metadata.programIds.forEach(entityId => {\n const name = programsDataMap[entityId];\n if (name) {\n const folder = mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Program, entityId),\n type: FolderType.Program,\n entityId,\n name,\n });\n folder.items.push(template);\n mutatingAddFolderPath(acc, template, folder);\n }\n });\n }\n }\n }\n // Template in user's folder\n else if (isTemplateInFolder(template) && foldersEnabled) {\n const folderName = getTemplateFolder(template);\n const folder = mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Regular, folderName),\n name: folderName,\n type: FolderType.Regular,\n });\n folder.items.push(template);\n mutatingAddFolderPath(acc, template, folder);\n }\n // Template not in folder\n else {\n acc.tree.push(template);\n }\n\n return acc;\n },\n { folders: {}, tree: [], pathMap: {} }\n );\n\n // Sorting items in all folders\n Object.values(data.folders).forEach(folder => folder.items.sort(sortNodes));\n\n // Sorting root level\n data.tree.sort(sortNodes);\n\n return data;\n};\n\nexport const getFolders = (templates: Template[]) => {\n const { folders } = templates.reduce<Omit<Tree, 'pathMap'>>(\n (acc, template) => {\n if (isTemplateInFolder(template)) {\n const folder = getTemplateFolder(template);\n mutatingEnsureFolder(acc, {\n id: getFolderId(FolderType.Regular, folder),\n name: folder,\n type: FolderType.Regular,\n }).items.push(template);\n }\n\n return acc;\n },\n { folders: {}, tree: [] }\n );\n\n return Object.values(folders).toSorted(sortNodes);\n};\n\nexport const AssetsFieldsMap = {\n rig: ['rig.name'],\n program: ['program.name'],\n frac_fleet: ['frac_fleet.name'],\n well: ['well.name'],\n pad: ['pad.name'],\n intervention_unit: ['intervention_unit.name'],\n};\n\ntype LoadAdditionalDataMapsOptions = {\n permissions: Store['permissions'];\n appEntities: Store['appEntities'];\n userProgramIds: Store['userProgramIds'];\n};\n\nexport const loadAdditionalData = async ({\n rigIds,\n programIds,\n}: {\n rigIds: (string | number)[];\n programIds: (string | number)[];\n}) => {\n const entityRawData = await Promise.all([\n rigIds.length ? getRigs({ ids: rigIds, fields: AssetsFieldsMap.rig }) : {},\n programIds.length ? getPrograms({ ids: programIds, fields: AssetsFieldsMap.program }) : {},\n ]);\n const [rigsDataMap = {}, programsDataMap = {}] = entityRawData.map(data =>\n (dataFormatter.deserialize(data) as { id: string; name: string }[] | undefined)?.reduce(\n (acc, { id, name }) => ({ ...acc, [id]: name }),\n {} as Record<string, string>\n )\n );\n\n return { rigsDataMap, programsDataMap };\n};\n\nexport const loadAdditionalDataMaps = async (\n templates: Template[],\n { appEntities, permissions, userProgramIds }: LoadAdditionalDataMapsOptions\n) => {\n const { canPublish } = permissions;\n const { rigId } = appEntities;\n\n // Loading publish entities\n const createMap = (ids?: number[]) => (ids || []).reduce((acc, id) => ({ ...acc, [id]: id }), {});\n\n const { rigIds, programIds } = canPublish\n ? templates\n .map(({ metadata, published }) => {\n if (published && metadata) {\n return metadata;\n }\n return undefined;\n })\n .reduce<{\n rigIds: Record<string, number>;\n programIds: Record<string, number>;\n }>(\n (acc, metadata) => ({\n ...acc,\n rigIds: { ...acc.rigIds, ...createMap(metadata?.rigIds) },\n programIds: { ...acc.programIds, ...createMap(metadata?.programIds) },\n }),\n { rigIds: {}, programIds: {} }\n )\n : {\n rigIds: rigId ? { [rigId]: rigId } : {},\n programIds: userProgramIds.reduce<Record<string, string>>(\n (acc, id) => ({ ...acc, [id]: id }),\n {}\n ),\n };\n\n return loadAdditionalData({\n programIds: Object.values(programIds),\n rigIds: Object.values(rigIds),\n });\n};\n\nexport const getAllTemplates = <T extends TemplateData>(get: ZustandStoreGetter<T>) => [\n ...get().loadedTemplates,\n ...get().presetTemplates,\n];\n\nexport const findTemplate = <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n templateId?: number\n) => {\n if (templateId === undefined) {\n return undefined;\n }\n\n return getAllTemplates(get).find(({ id }) => templateId === id);\n};\n\nexport const setBusy = <T extends TemplateData>(\n set: ZustandStoreSetter<T>,\n id?: number | string,\n action?: Action\n) => {\n if (id === undefined || action === undefined) {\n return () => {};\n }\n\n const newAction = { id, action };\n\n set(({ currentActions }) => ({ currentActions: [...currentActions, newAction] }));\n\n return () => {\n set(({ currentActions }) => ({\n currentActions: currentActions.filter(action => action !== newAction),\n }));\n };\n};\n\nexport const getUpdatedTemplates = <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n templateId: number | undefined,\n update: Partial<Template<T>>\n) => {\n const { loadedTemplates } = get();\n return templateId === undefined\n ? loadedTemplates\n : loadedTemplates.map(item => {\n if (item.id === templateId) {\n return { ...item, ...update };\n }\n\n return item;\n });\n};\n\nexport const findTemplateOverride = <T extends TemplateData>(\n loadedTemplates: Template<T>[],\n templateId?: number\n) => {\n if (templateId === undefined) {\n return undefined;\n }\n\n // This may slow us down, needs verification. If it does - refactor to maps in store\n return loadedTemplates.find(\n loadedTemplate =>\n loadedTemplate.metadata?.isPresetOverride &&\n loadedTemplate.metadata?.parentTemplateId === templateId\n );\n};\n\nexport const getTemplateOverride = <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n template?: Template<T>\n) => {\n if (!template || !template.isPreset) {\n return undefined;\n }\n\n return findTemplateOverride(get().loadedTemplates, template.id);\n};\n\nexport const ensureTemplateSettings = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>,\n template: Template<T>\n) => {\n const override = getTemplateOverride(get, template);\n\n const { settings: existingSettings, id: templateIdToLoad } = override || template;\n let actualSettings = existingSettings;\n\n if (!existingSettings) {\n const clearBusy = setBusy(set, template.id, Action.LoadData);\n try {\n const { settings: settingsFromServer } = dataFormatter.deserialize(\n await getAppSettingsTemplate(get().appKey, templateIdToLoad)\n ) as Template<T>;\n\n set({\n loadedTemplates: getUpdatedTemplates<T>(get, templateIdToLoad, {\n settings: settingsFromServer,\n }),\n });\n\n actualSettings = settingsFromServer;\n } catch (error) {\n console.error(error);\n }\n\n clearBusy();\n }\n\n const resultTemplate = findTemplate(get, template.id);\n\n if (!resultTemplate) {\n throw new Error('ensureTemplateSettings: Template not found in list!');\n }\n\n // For preset overrides - we return the settings of the override\n return { ...resultTemplate, settings: actualSettings };\n};\n\nexport const selectTemplateOnDeletion = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>\n) => {\n const {\n hooks: { getDefaultTemplate },\n presetTemplates,\n loadedTemplates,\n onChange,\n } = get();\n\n if (getDefaultTemplate) {\n const selectedTemplate = getDefaultTemplate([...presetTemplates, ...loadedTemplates], {\n currentTemplateId: undefined,\n templateSettings: undefined,\n event: 'deleteTemplate',\n });\n\n set(() => ({\n currentTemplateId: selectedTemplate?.id,\n templateSettings: undefined,\n }));\n\n const withSettings =\n selectedTemplate && (await ensureTemplateSettings(get, set, selectedTemplate));\n\n onChange?.(withSettings, 'deleteTemplate');\n }\n};\n\nexport const removeTemplateFromList = <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>,\n templateOrId?: number | Template<T>\n) => {\n const { currentTemplateId, loadedTemplates: prevTemplates } = get();\n\n const templateToDelete =\n typeof templateOrId === 'number' ? findTemplate(get, templateOrId) : templateOrId;\n\n if (templateToDelete) {\n const loadedTemplates = prevTemplates.filter(({ id }) => id !== templateToDelete.id);\n\n const update: Partial<Store<T>> =\n templateToDelete.id === currentTemplateId\n ? { loadedTemplates, currentTemplateId: undefined, templateSettings: undefined }\n : { loadedTemplates };\n\n set(update);\n\n return templateToDelete;\n }\n\n return undefined;\n};\n\n/**\n * Updates templates\n *\n * @return Template[] of updated templates in arbitrary order\n */\nexport const updateTemplates = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>,\n ids: number[],\n updateOrFn: Partial<Template<T>> | ((template: Template<T>) => Partial<Template<T>>),\n action: Action\n) => {\n if (!ids.length) {\n return [];\n }\n\n const getUpdateValue = (template: Template<T>) =>\n typeof updateOrFn === 'function' ? updateOrFn(template) : updateOrFn;\n\n const { loadedTemplates, templateUpdatesMap } = get().loadedTemplates.reduce<{\n loadedTemplates: Template<T>[]; // New loadedTemplates\n templateUpdatesMap: Record<string, Partial<Template>>; // Template updates\n }>(\n (acc, template) => {\n const isChanged = ids.includes(template.id);\n const updateValue = isChanged ? getUpdateValue(template) : undefined;\n const newTemplate = updateValue ? { ...template, ...updateValue } : template;\n\n return {\n ...acc,\n loadedTemplates: [...acc.loadedTemplates, newTemplate],\n templateUpdatesMap: {\n ...acc.templateUpdatesMap,\n ...(updateValue ? { [template.id]: updateValue } : {}),\n },\n };\n },\n { loadedTemplates: [], templateUpdatesMap: {} }\n );\n\n set({ loadedTemplates });\n\n return Promise.all(\n Object.entries(templateUpdatesMap).map(async ([id, updateValue]) => {\n const clearBusy = setBusy(set, Number(id), action);\n let data: Template<T> | undefined;\n\n try {\n data = dataFormatter.deserialize(\n await patchAppSettingsTemplate(get().appKey, id, updateValue as never)\n ) as Template<T>;\n } catch (e) {\n console.error(e);\n } finally {\n clearBusy();\n }\n\n return data;\n })\n );\n};\n\nexport const updateTemplate = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>,\n id: number | undefined,\n updateOrFn: Partial<Template<T>> | ((template: Template<T>) => Partial<Template<T>>),\n action: Action\n) => {\n if (id === undefined) {\n return undefined;\n }\n\n const data = await updateTemplates<T>(get, set, [id], updateOrFn, action);\n return data[0];\n};\n\nexport const addTemplate = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n set: ZustandStoreSetter<T>,\n template: Pick<Template<T>, 'name' | 'settings' | 'metadata'>\n) => {\n const newTemplate = dataFormatter.deserialize(\n await postAppSettingsTemplate(get().appKey, {\n name: template.name,\n settings: template.settings,\n metadata: template.metadata,\n })\n ) as Template<T>;\n\n set(({ loadedTemplates }) => ({ loadedTemplates: [...loadedTemplates, newTemplate] }));\n\n return newTemplate;\n};\n\nexport const processLoadedTemplates = async <T extends TemplateData>(\n get: ZustandStoreGetter<T>,\n templates: Template<T>[]\n) => {\n const {\n userProgramIds,\n hooks: { filterInitialTemplates },\n permissions,\n appEntities,\n } = get();\n const { canPublish } = permissions;\n const { rigId } = appEntities;\n\n const loadedTemplates = canPublish\n ? templates\n : templates.filter(template => {\n const { metadata: { programIds = [], rigIds = [] } = {} } = template;\n const inNotAttachedToEntity = programIds.length === 0 && rigIds.length === 0;\n const isSameProgram = !!intersection(programIds, userProgramIds).length;\n const isSameRig = !!rigId && rigIds.includes(rigId);\n\n return inNotAttachedToEntity || isSameProgram || isSameRig || isOwnTemplate(template);\n });\n\n // Preprocessing templates\n const filteredTemplates = filterInitialTemplates\n ? await filterInitialTemplates(loadedTemplates)\n : loadedTemplates;\n\n // Loading publish entities\n const { rigsDataMap, programsDataMap } = await loadAdditionalDataMaps(filteredTemplates, {\n appEntities,\n permissions,\n userProgramIds,\n });\n\n return {\n loadedTemplates: filteredTemplates,\n rigsDataMap,\n programsDataMap,\n };\n};\n"],"names":["dataFormatter","Jsona","SubFolderTypes","FolderType","Rig","Program","FoldersOrderMap","Company","Preset","_defineProperty","_FoldersOrderMap","Shared","FracFleet","Pad","Regular","sortNodes","a","b","_a$name","isFolder","type","name","localeCompare","companyFolderId","getFolderId","mutatingEnsureFolder","acc","_ref","id","entityId","parentFolder","includes","undefined","folders","newFolder","items","push","tree","mutatingAddFolderPath","template","folder","pathMap","createTree","templates","_ref2","foldersEnabled","rigsDataMap","programsDataMap","data","reduce","metadata","isPreset","shared","published","_metadata$rigIds","_metadata$programIds","_metadata$rigIds2","_metadata$programIds2","companyFolder","rigIds","length","programIds","forEach","isTemplateInFolder","folderName","getTemplateFolder","Object","values","sort","getFolders","toSorted","AssetsFieldsMap","rig","program","frac_fleet","well","pad","intervention_unit","loadAdditionalData","_ref4","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref3","entityRawData","_entityRawData$map","_entityRawData$map2","_entityRawData$map2$","_entityRawData$map2$2","wrap","_context","prev","next","Promise","all","getRigs","ids","fields","getPrograms","sent","map","_dataFormatter$deseri","deserialize","_ref5","_objectSpread","_slicedToArray","abrupt","stop","_x","apply","this","arguments","loadAdditionalDataMaps","_ref7","_ref6","appEntities","permissions","userProgramIds","canPublish","rigId","createMap","_ref8","_context2","_ref9","_callee2","_x2","_x3","getAllTemplates","get","loadedTemplates","presetTemplates","findTemplate","templateId","find","_ref11","setBusy","set","action","newAction","_ref12","currentActions","concat","_toConsumableArray","_ref13","filter","getUpdatedTemplates","update","item","findTemplateOverride","loadedTemplate","_loadedTemplate$metad","_loadedTemplate$metad2","isPresetOverride","parentTemplateId","getTemplateOverride","ensureTemplateSettings","_ref14","override","_ref15","existingSettings","templateIdToLoad","actualSettings","clearBusy","_ref16","settingsFromServer","resultTemplate","_context3","settings","Action","LoadData","t0","getAppSettingsTemplate","appKey","t1","call","t2","console","error","Error","_callee3","_x4","_x5","_x6","selectTemplateOnDeletion","_ref17","_callee4","_get2","getDefaultTemplate","onChange","selectedTemplate","withSettings","_context4","hooks","currentTemplateId","templateSettings","event","_x7","_x8","removeTemplateFromList","templateOrId","_get3","prevTemplates","templateToDelete","_ref18","updateTemplates","_ref19","_callee6","updateOrFn","getUpdateValue","_get$loadedTemplates$","templateUpdatesMap","_context6","updateValue","newTemplate","entries","_ref22","_callee5","_ref21","_ref23","_context5","Number","patchAppSettingsTemplate","finish","_x14","_x9","_x10","_x11","_x12","_x13","updateTemplate","_ref24","_callee7","_context7","_x15","_x16","_x17","_x18","_x19","addTemplate","_ref25","_context8","postAppSettingsTemplate","_ref26","_callee8","_x20","_x21","_x22","processLoadedTemplates","_ref27","_callee9","_get4","filterInitialTemplates","filteredTemplates","_yield$loadAdditional","_context9","_template$metadata$pr","_template$metadata","_template$metadata$ri","inNotAttachedToEntity","isSameProgram","intersection","isSameRig","isOwnTemplate","_x23","_x24"],"mappings":"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"}
|