diff --git a/libs/handoverapp/src/lib/config/workspaceConfig.tsx b/libs/handoverapp/src/lib/config/workspaceConfig.tsx
index 2bd97eeb..9907922f 100644
--- a/libs/handoverapp/src/lib/config/workspaceConfig.tsx
+++ b/libs/handoverapp/src/lib/config/workspaceConfig.tsx
@@ -20,15 +20,14 @@ import { useModuleCurrentContext } from '@equinor/fusion-framework-react-module-
const pbi_context_mapping = {
Facility: {
- column: "Facility",
- table: "Dim_Facility"
+ column: 'Facility',
+ table: 'Dim_Facility',
},
ProjectMaster: {
- column: "ProjectMaster GUID",
- table: "Dim_ProjectMaster"
+ column: 'ProjectMaster GUID',
+ table: 'Dim_ProjectMaster',
},
-} as const
-
+} as const;
export const WorkspaceWrapper = () => {
const contextId = useContextId();
@@ -36,10 +35,12 @@ export const WorkspaceWrapper = () => {
const client = useHttpClient('cc-app');
const { isLoading } = useCCApiAccessCheck(contextId, client, 'handover');
+ const { currentContext } = useModuleCurrentContext();
- const { currentContext } = useModuleCurrentContext()
-
- const pbi = usePBIOptions('handoveranalytics', pbi_context_mapping[(currentContext?.type.id) as "ProjectMaster" | "Facility"]);
+ const pbi = usePBIOptions(
+ 'handoveranalytics',
+ pbi_context_mapping[currentContext?.type.id as 'ProjectMaster' | 'Facility']
+ );
const { bookmarkKey, currentBookmark, onBookmarkChange } = useWorkspaceBookmarks();
const filterConfig = useFilterConfig((req) =>
diff --git a/libs/heattraceapp/src/lib/config/frameworkConfig.ts b/libs/heattraceapp/src/lib/config/frameworkConfig.ts
index baff05f1..fcd57604 100644
--- a/libs/heattraceapp/src/lib/config/frameworkConfig.ts
+++ b/libs/heattraceapp/src/lib/config/frameworkConfig.ts
@@ -9,7 +9,7 @@ import { ModelViewerEnvConfig, enableModelViewer } from '@cc-components/modelvie
export const configure = async (config: IAppConfigurator, c: ComponentRenderArgs) => {
enableContext(config, async (builder) => {
- builder.setContextType(['ProjectMaster']);
+ builder.setContextType(['ProjectMaster', 'Facility']);
builder.setContextParameterFn(({ search, type }) => {
return buildQuery({
search,
diff --git a/libs/heattraceapp/src/lib/config/workspaceConfig.tsx b/libs/heattraceapp/src/lib/config/workspaceConfig.tsx
index 3b5c4819..b8eaf776 100644
--- a/libs/heattraceapp/src/lib/config/workspaceConfig.tsx
+++ b/libs/heattraceapp/src/lib/config/workspaceConfig.tsx
@@ -16,6 +16,18 @@ import {
import { CCApiAccessLoading } from '@cc-components/sharedcomponents';
import { useGardenConfig } from './gardenConfig';
import { sidesheetConfig } from './heattraceSidesheet';
+import { useModuleCurrentContext } from '@equinor/fusion-framework-react-module-context';
+
+const pbi_context_mapping = {
+ Facility: {
+ column: 'Facility',
+ table: 'Dim_Facility',
+ },
+ ProjectMaster: {
+ column: 'ProjectMaster GUID',
+ table: 'Dim_ProjectMaster',
+ },
+} as const;
export const WorkspaceWrapper = () => {
const contextId = useContextId();
@@ -33,10 +45,12 @@ export const WorkspaceWrapper = () => {
const statusBarConfig = useStatusBarConfig(contextId);
const gardenConfig = useGardenConfig(contextId);
- const pbi = usePBIOptions('cc-heattrace-analytics', {
- column: 'ProjectMaster GUID',
- table: 'Dim_ProjectMaster',
- });
+ const { currentContext } = useModuleCurrentContext();
+
+ const pbi = usePBIOptions(
+ 'cc-heattrace-analytics',
+ pbi_context_mapping[currentContext?.type.id as 'ProjectMaster' | 'Facility']
+ );
if (isLoading) {
return ;
diff --git a/libs/loopapp/src/lib/config/frameworkConfig.ts b/libs/loopapp/src/lib/config/frameworkConfig.ts
index e61238d7..e5dfab70 100644
--- a/libs/loopapp/src/lib/config/frameworkConfig.ts
+++ b/libs/loopapp/src/lib/config/frameworkConfig.ts
@@ -9,7 +9,7 @@ import buildQuery from 'odata-query';
export const configure = async (config: IAppConfigurator, c: ComponentRenderArgs) => {
enableContext(config, async (builder) => {
- builder.setContextType(['ProjectMaster']);
+ builder.setContextType(['ProjectMaster', 'Facility']);
builder.setContextParameterFn(({ search, type }) => {
return buildQuery({
search,
diff --git a/libs/loopapp/src/lib/config/workspaceConfig.tsx b/libs/loopapp/src/lib/config/workspaceConfig.tsx
index fe2c66da..32aaf945 100644
--- a/libs/loopapp/src/lib/config/workspaceConfig.tsx
+++ b/libs/loopapp/src/lib/config/workspaceConfig.tsx
@@ -17,14 +17,30 @@ import { gardenModule } from '@equinor/workspace-fusion/garden-module';
import { gridModule } from '@equinor/workspace-fusion/grid-module';
import { powerBiModule } from '@equinor/workspace-fusion/power-bi-module';
import { CCApiAccessLoading } from '@cc-components/sharedcomponents';
+import { useModuleCurrentContext } from '@equinor/fusion-framework-react-module-context';
+
+const pbi_context_mapping = {
+ Facility: {
+ column: 'Facility',
+ table: 'Dim_Facility',
+ },
+ ProjectMaster: {
+ column: 'ProjectMaster GUID',
+ table: 'Dim_ProjectMaster',
+ },
+} as const;
export const WorkspaceWrapper = () => {
const contextId = useContextId();
useCloseSidesheetOnContextChange();
- const pbi = usePBIOptions('loop-analytics', {
- column: 'ProjectMaster GUID',
- table: 'Dim_ProjectMaster',
- });
+
+ const { currentContext } = useModuleCurrentContext();
+
+ const pbi = usePBIOptions(
+ 'loop-analytics',
+ pbi_context_mapping[currentContext?.type.id as 'ProjectMaster' | 'Facility']
+ );
+
const client = useHttpClient();
const { bookmarkKey, currentBookmark, onBookmarkChange } = useWorkspaceBookmarks();
const { isLoading } = useCCApiAccessCheck(contextId, client, 'loop');
diff --git a/libs/pipingapp/src/lib/config/frameworkConfig.ts b/libs/pipingapp/src/lib/config/frameworkConfig.ts
index d5e3f7ff..675faa78 100644
--- a/libs/pipingapp/src/lib/config/frameworkConfig.ts
+++ b/libs/pipingapp/src/lib/config/frameworkConfig.ts
@@ -9,7 +9,7 @@ import { ModelViewerEnvConfig, enableModelViewer } from '@cc-components/modelvie
export const configure = async (config: IAppConfigurator, c: ComponentRenderArgs) => {
enableContext(config, async (builder) => {
- builder.setContextType(['ProjectMaster']);
+ builder.setContextType(['ProjectMaster', 'Facility']);
builder.setContextParameterFn(({ search, type }) => {
return buildQuery({
search,
diff --git a/libs/pipingapp/src/lib/config/workspaceConfig.tsx b/libs/pipingapp/src/lib/config/workspaceConfig.tsx
index d94a2ecd..e3e5a37c 100644
--- a/libs/pipingapp/src/lib/config/workspaceConfig.tsx
+++ b/libs/pipingapp/src/lib/config/workspaceConfig.tsx
@@ -16,6 +16,18 @@ import {
import { useGardenConfig } from './gardenConfig';
import { sidesheetConfig } from './pipingSidesheet';
import { CCApiAccessLoading } from '@cc-components/sharedcomponents';
+import { useModuleCurrentContext } from '@equinor/fusion-framework-react-module-context';
+
+const pbi_context_mapping = {
+ Facility: {
+ column: 'Facility',
+ table: 'Dim_Facility',
+ },
+ ProjectMaster: {
+ column: 'ProjectMaster GUID',
+ table: 'Dim_ProjectMaster',
+ },
+} as const;
export const WorkspaceWrapper = () => {
const contextId = useContextId();
@@ -32,10 +44,12 @@ export const WorkspaceWrapper = () => {
const statusBarConfig = useStatusBarConfig(contextId);
const gardenConfig = useGardenConfig(contextId);
- const pbi = usePBIOptions('cc-pipetest-analytics', {
- column: 'ProjectMaster GUID',
- table: 'Dim_ProjectMaster',
- });
+ const { currentContext } = useModuleCurrentContext();
+
+ const pbi = usePBIOptions(
+ 'cc-pipetest-analytics',
+ pbi_context_mapping[currentContext?.type.id as 'ProjectMaster' | 'Facility']
+ );
if (isLoading) {
return ;
diff --git a/libs/punchapp/src/lib/config/frameworkConfig.ts b/libs/punchapp/src/lib/config/frameworkConfig.ts
index 60c01be6..108ffd61 100644
--- a/libs/punchapp/src/lib/config/frameworkConfig.ts
+++ b/libs/punchapp/src/lib/config/frameworkConfig.ts
@@ -10,7 +10,7 @@ import buildQuery from 'odata-query';
export const configure = async (config: IAppConfigurator, c: ComponentRenderArgs) => {
enableContext(config, async (builder) => {
- builder.setContextType(['ProjectMaster']);
+ builder.setContextType(['ProjectMaster', 'Facility']);
builder.setContextParameterFn(({ search, type }) => {
return buildQuery({
search,
diff --git a/libs/punchapp/src/lib/config/workspaceConfig.tsx b/libs/punchapp/src/lib/config/workspaceConfig.tsx
index 92393a66..9fc72385 100644
--- a/libs/punchapp/src/lib/config/workspaceConfig.tsx
+++ b/libs/punchapp/src/lib/config/workspaceConfig.tsx
@@ -19,6 +19,18 @@ import { gridModule } from '@equinor/workspace-fusion/grid-module';
import { useTableConfig } from './tableConfig';
import { useStatusBarConfig } from './statusBarConfig';
import { useGardenConfig } from './gardenConfig';
+import { useModuleCurrentContext } from '@equinor/fusion-framework-react-module-context';
+
+const pbi_context_mapping = {
+ Facility: {
+ column: 'Facility',
+ table: 'Dim_Facility',
+ },
+ ProjectMaster: {
+ column: 'ProjectMaster GUID',
+ table: 'Dim_ProjectMaster',
+ },
+} as const;
export const WorkspaceWrapper = () => {
const contextId = useContextId();
@@ -26,10 +38,12 @@ export const WorkspaceWrapper = () => {
const ccApi = useHttpClient();
const { bookmarkKey, currentBookmark, onBookmarkChange } = useWorkspaceBookmarks();
- const pbi = usePBIOptions('cc-punch-analytics', {
- column: 'ProjectMaster GUID',
- table: 'Dim_ProjectMaster',
- });
+ const { currentContext } = useModuleCurrentContext();
+
+ const pbi = usePBIOptions(
+ 'cc-punch-analytics',
+ pbi_context_mapping[currentContext?.type.id as 'ProjectMaster' | 'Facility']
+ );
const filterConfig = useFilterConfig((req) =>
ccApi.fetch(`/api/contexts/${contextId}/punch/filter-model`, req)
diff --git a/libs/swcrapp/src/lib/config/frameworkConfig.ts b/libs/swcrapp/src/lib/config/frameworkConfig.ts
index 893aa567..8b3d6f6b 100644
--- a/libs/swcrapp/src/lib/config/frameworkConfig.ts
+++ b/libs/swcrapp/src/lib/config/frameworkConfig.ts
@@ -8,7 +8,7 @@ import buildQuery from 'odata-query';
export const configure = async (config: IAppConfigurator, c: ComponentRenderArgs) => {
enableContext(config, async (builder) => {
- builder.setContextType(['ProjectMaster']);
+ builder.setContextType(['ProjectMaster', 'Facility']);
builder.setContextParameterFn(({ search, type }) => {
return buildQuery({
search,
diff --git a/libs/swcrapp/src/lib/config/workspaceConfig.tsx b/libs/swcrapp/src/lib/config/workspaceConfig.tsx
index 86d250be..1fb49dbe 100644
--- a/libs/swcrapp/src/lib/config/workspaceConfig.tsx
+++ b/libs/swcrapp/src/lib/config/workspaceConfig.tsx
@@ -19,16 +19,30 @@ import { powerBiModule } from '@equinor/workspace-fusion/power-bi-module';
import { useGardenConfig } from './gardenConfig';
import { useStatusBarConfig } from './statusBarConfig';
import { useTableConfig } from './tableConfig';
+import { useModuleCurrentContext } from '@equinor/fusion-framework-react-module-context';
+
+const pbi_context_mapping = {
+ Facility: {
+ column: 'Facility',
+ table: 'Dim_Facility',
+ },
+ ProjectMaster: {
+ column: 'ProjectMaster GUID',
+ table: 'Dim_ProjectMaster',
+ },
+} as const;
export const WorkspaceWrapper = () => {
const contextId = useContextId();
useCloseSidesheetOnContextChange();
const ccApi = useHttpClient();
- const pbi = usePBIOptions('swcr-analytics', {
- column: 'ProjectMaster GUID',
- table: 'Dim_ProjectMaster',
- });
+ const { currentContext } = useModuleCurrentContext();
+
+ const pbi = usePBIOptions(
+ 'swcr-analytics',
+ pbi_context_mapping[currentContext?.type.id as 'ProjectMaster' | 'Facility']
+ );
const { bookmarkKey, currentBookmark, onBookmarkChange } = useWorkspaceBookmarks();
diff --git a/libs/workorderapp/src/lib/config/frameworkConfig.ts b/libs/workorderapp/src/lib/config/frameworkConfig.ts
index d2057368..2768793d 100644
--- a/libs/workorderapp/src/lib/config/frameworkConfig.ts
+++ b/libs/workorderapp/src/lib/config/frameworkConfig.ts
@@ -10,7 +10,7 @@ import buildQuery from 'odata-query';
export const configure = async (config: IAppConfigurator, c: ComponentRenderArgs) => {
enableContext(config, async (builder) => {
- builder.setContextType(['ProjectMaster']);
+ builder.setContextType(['ProjectMaster', 'Facility']);
builder.setContextParameterFn(({ search, type }) => {
return buildQuery({
search,
diff --git a/libs/workorderapp/src/lib/config/workspace.tsx b/libs/workorderapp/src/lib/config/workspace.tsx
index 9fb00a08..86862b98 100644
--- a/libs/workorderapp/src/lib/config/workspace.tsx
+++ b/libs/workorderapp/src/lib/config/workspace.tsx
@@ -4,7 +4,7 @@ import {
useHttpClient,
usePBIOptions,
useWorkspaceBookmarks,
- useCloseSidesheetOnContextChange
+ useCloseSidesheetOnContextChange,
} from '@cc-components/shared';
import { useFilterConfig } from '@cc-components/shared/workspace-config';
import Workspace from '@equinor/workspace-fusion';
@@ -18,6 +18,18 @@ import { gridModule } from '@equinor/workspace-fusion/grid-module';
import { useStatusBarConfig } from './statusBarConfig';
import { useGardenConfig } from './gardenConfig';
import { CCApiAccessLoading } from '@cc-components/sharedcomponents';
+import { useModuleCurrentContext } from '@equinor/fusion-framework-react-module-context';
+
+const pbi_context_mapping = {
+ Facility: {
+ column: 'Facility',
+ table: 'Dim_Facility',
+ },
+ ProjectMaster: {
+ column: 'ProjectMaster GUID',
+ table: 'Dim_ProjectMaster',
+ },
+} as const;
export const WorkspaceWrapper = () => {
const contextId = useContextId();
@@ -25,10 +37,13 @@ export const WorkspaceWrapper = () => {
const client = useHttpClient();
const { bookmarkKey, currentBookmark, onBookmarkChange } = useWorkspaceBookmarks();
const { isLoading } = useCCApiAccessCheck(contextId, client, 'work-orders');
- const pbi = usePBIOptions('workorder-analytics', {
- column: 'ProjectMaster GUID',
- table: 'Dim_ProjectMaster',
- });
+
+ const { currentContext } = useModuleCurrentContext();
+
+ const pbi = usePBIOptions(
+ 'workorder-analytics',
+ pbi_context_mapping[currentContext?.type.id as 'ProjectMaster' | 'Facility']
+ );
const filterConfig = useFilterConfig((req) =>
client.fetch(`/api/contexts/${contextId}/work-orders/filter-model`, req)
@@ -37,12 +52,10 @@ export const WorkspaceWrapper = () => {
const statusBarConfig = useStatusBarConfig(contextId);
const gardenConfig = useGardenConfig(contextId);
-
if (isLoading) {
return ;
}
-
return (
<>