diff --git a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/buildQueryContext.ts b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/buildQueryContext.ts index c4621c2f68163..c21ba0eab79a8 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/buildQueryContext.ts +++ b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/buildQueryContext.ts @@ -44,5 +44,6 @@ export default function buildQueryContext( }), result_format: formData.result_format || 'json', result_type: formData.result_type || 'full', + extra_jwt: formData.extra_jwt, }; } diff --git a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/types/Query.ts b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/types/Query.ts index 0556a7bd3e81e..f77a342fc50cc 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/types/Query.ts +++ b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/types/Query.ts @@ -146,6 +146,7 @@ export interface QueryContext { /** Response format */ result_format: string; queries: QueryObject[]; + extra_jwt?: string; } export default {}; diff --git a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/types/QueryFormData.ts b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/types/QueryFormData.ts index 1b5de86a7a2f7..7e023bd73c234 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/types/QueryFormData.ts +++ b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/query/types/QueryFormData.ts @@ -149,6 +149,7 @@ export interface BaseFormData extends TimeRange, FormDataResidual { annotation_layers?: AnnotationLayer[]; url_params?: Record; custom_params?: Record; + extra_jwt?: string; } /** diff --git a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/utils/featureFlags.ts b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/utils/featureFlags.ts index 45178bbc1af31..7ae09ee9a4746 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/utils/featureFlags.ts +++ b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/src/utils/featureFlags.ts @@ -41,6 +41,7 @@ export enum FeatureFlag { GLOBAL_ASYNC_QUERIES = 'GLOBAL_ASYNC_QUERIES', ENABLE_TEMPLATE_PROCESSING = 'ENABLE_TEMPLATE_PROCESSING', ENABLE_EXPLORE_DRAG_AND_DROP = 'ENABLE_EXPLORE_DRAG_AND_DROP', + DASHBOARD_RBAC = 'DASHBOARD_RBAC', } export type ScheduleQueriesProps = { JSONSCHEMA: { diff --git a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/test/query/buildQueryContext.test.ts b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/test/query/buildQueryContext.test.ts index 9dff74ea9d2cf..c151ee0c2879a 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/test/query/buildQueryContext.test.ts +++ b/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-core/test/query/buildQueryContext.test.ts @@ -31,7 +31,16 @@ describe('buildQueryContext', () => { expect(queryContext.result_format).toBe('json'); expect(queryContext.result_type).toBe('full'); }); - + it('should build with extra_jwt', () => { + const queryContext = buildQueryContext({ + datasource: '5__table', + viz_type: 'table', + extra_jwt: 'ABCDEFG', + }); + expect(queryContext.datasource.id).toBe(5); + expect(queryContext.datasource.type).toBe('table'); + expect(queryContext.extra_jwt).toBe('ABCDEFG'); + }); it('should build datasource for druid sources and set force to true', () => { const queryContext = buildQueryContext({ datasource: '5__druid',