mirror of
https://github.com/elastic/kibana.git
synced 2025-04-23 09:19:04 -04:00
[UX] Use components from Exploratory View app in UX (#154051)
This commit is contained in:
parent
4c7ad3f1b8
commit
59f7d1ab55
16 changed files with 74 additions and 56 deletions
|
@ -17,22 +17,14 @@
|
|||
"files",
|
||||
"guidedOnboarding",
|
||||
"inspector",
|
||||
"inspector",
|
||||
"lens",
|
||||
"observability",
|
||||
"security",
|
||||
"share",
|
||||
"triggersActionsUi",
|
||||
"unifiedSearch"
|
||||
],
|
||||
"optionalPlugins": [
|
||||
"discover",
|
||||
"embeddable",
|
||||
"home",
|
||||
"lens",
|
||||
"licensing",
|
||||
"spaces",
|
||||
"usageCollection"
|
||||
],
|
||||
"optionalPlugins": ["discover", "embeddable", "home", "licensing", "spaces", "usageCollection"],
|
||||
"requiredBundles": [
|
||||
"data",
|
||||
"dataViews",
|
||||
|
|
|
@ -39,7 +39,14 @@ export { APP_ROUTE as EXPLORATORY_VIEW_APP_URL } from './constants';
|
|||
|
||||
export type { UXMetrics } from './components/shared/core_web_vitals';
|
||||
|
||||
export { ExploratoryView } from './components/shared';
|
||||
export {
|
||||
getCoreVitalsComponent,
|
||||
ExploratoryView,
|
||||
FieldValueSuggestions,
|
||||
FieldValueSelection,
|
||||
FilterValueLabel,
|
||||
SelectableUrlList,
|
||||
} from './components/shared';
|
||||
|
||||
export * from './typings';
|
||||
|
||||
|
|
|
@ -6,9 +6,4 @@
|
|||
*/
|
||||
|
||||
/* eslint-disable no-console */
|
||||
const { executeSyntheticsRunner } = require('@kbn/synthetics-plugin/scripts/base_e2e');
|
||||
const path = require('path');
|
||||
|
||||
const e2eDir = path.join(__dirname, '../e2e');
|
||||
|
||||
executeSyntheticsRunner(e2eDir);
|
||||
console.log('Disabled.');
|
||||
|
|
|
@ -6,10 +6,7 @@
|
|||
"id": "ux",
|
||||
"server": false,
|
||||
"browser": true,
|
||||
"configPath": [
|
||||
"xpack",
|
||||
"ux"
|
||||
],
|
||||
"configPath": ["xpack", "ux"],
|
||||
"requiredPlugins": [
|
||||
"features",
|
||||
"data",
|
||||
|
@ -35,6 +32,7 @@
|
|||
],
|
||||
"requiredBundles": [
|
||||
"kibanaReact",
|
||||
"exploratoryView",
|
||||
"observability",
|
||||
"maps"
|
||||
]
|
||||
|
|
|
@ -44,6 +44,7 @@ import { UrlParamsProvider } from '../context/url_params_context/url_params_cont
|
|||
import { createStaticDataView } from '../services/rest/data_view';
|
||||
import { createCallApmApi } from '../services/rest/create_call_apm_api';
|
||||
import { useKibanaServices } from '../hooks/use_kibana_services';
|
||||
import { PluginContext } from '../context/plugin_context';
|
||||
|
||||
export type BreadcrumbTitle<T = {}> =
|
||||
| string
|
||||
|
@ -109,6 +110,7 @@ export function UXAppRoot({
|
|||
inspector,
|
||||
maps,
|
||||
observability,
|
||||
exploratoryView,
|
||||
data,
|
||||
dataViews,
|
||||
lens,
|
||||
|
@ -137,6 +139,7 @@ export function UXAppRoot({
|
|||
inspector,
|
||||
observability,
|
||||
embeddable,
|
||||
exploratoryView,
|
||||
data,
|
||||
dataViews,
|
||||
lens,
|
||||
|
@ -151,22 +154,29 @@ export function UXAppRoot({
|
|||
},
|
||||
}}
|
||||
>
|
||||
<i18nCore.Context>
|
||||
<RouterProvider history={history} router={uxRouter}>
|
||||
<DatePickerContextProvider>
|
||||
<InspectorContextProvider>
|
||||
<UrlParamsProvider>
|
||||
<EuiErrorBoundary>
|
||||
<CsmSharedContextProvider>
|
||||
<UxApp />
|
||||
</CsmSharedContextProvider>
|
||||
</EuiErrorBoundary>
|
||||
<UXActionMenu appMountParameters={appMountParameters} />
|
||||
</UrlParamsProvider>
|
||||
</InspectorContextProvider>
|
||||
</DatePickerContextProvider>
|
||||
</RouterProvider>
|
||||
</i18nCore.Context>
|
||||
<PluginContext.Provider
|
||||
value={{
|
||||
appMountParameters,
|
||||
exploratoryView,
|
||||
}}
|
||||
>
|
||||
<i18nCore.Context>
|
||||
<RouterProvider history={history} router={uxRouter}>
|
||||
<DatePickerContextProvider>
|
||||
<InspectorContextProvider>
|
||||
<UrlParamsProvider>
|
||||
<EuiErrorBoundary>
|
||||
<CsmSharedContextProvider>
|
||||
<UxApp />
|
||||
</CsmSharedContextProvider>
|
||||
</EuiErrorBoundary>
|
||||
<UXActionMenu appMountParameters={appMountParameters} />
|
||||
</UrlParamsProvider>
|
||||
</InspectorContextProvider>
|
||||
</DatePickerContextProvider>
|
||||
</RouterProvider>
|
||||
</i18nCore.Context>
|
||||
</PluginContext.Provider>
|
||||
</KibanaThemeProvider>
|
||||
</KibanaContextProvider>
|
||||
</RedirectAppLinks>
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
*/
|
||||
|
||||
import React, { useCallback } from 'react';
|
||||
import { AllSeries } from '@kbn/observability-plugin/public';
|
||||
import { AllSeries } from '@kbn/exploratory-view-plugin/public';
|
||||
import { getExploratoryViewFilter } from '../../../../services/data/get_exp_view_filter';
|
||||
import { useExpViewAttributes } from './use_exp_view_attrs';
|
||||
import { BreakdownItem } from '../../../../../typings/ui_filters';
|
||||
|
@ -26,7 +26,7 @@ export function PageLoadDistChart({ onPercentileChange, breakdown }: Props) {
|
|||
const { uxUiFilters, urlParams } = useLegacyUrlParams();
|
||||
|
||||
const kibana = useKibanaServices();
|
||||
const { ExploratoryViewEmbeddable } = kibana.observability!;
|
||||
const { ExploratoryViewEmbeddable } = kibana.exploratoryView!;
|
||||
|
||||
const onBrushEnd = useCallback(
|
||||
({ range }: { range: number[] }) => {
|
||||
|
|
|
@ -7,13 +7,8 @@
|
|||
|
||||
import moment from 'moment';
|
||||
import React, { useCallback } from 'react';
|
||||
import {
|
||||
AllSeries,
|
||||
fromQuery,
|
||||
RECORDS_FIELD,
|
||||
toQuery,
|
||||
useTheme,
|
||||
} from '@kbn/observability-plugin/public';
|
||||
import { fromQuery, toQuery, useTheme } from '@kbn/observability-plugin/public';
|
||||
import { AllSeries, RECORDS_FIELD } from '@kbn/exploratory-view-plugin/public';
|
||||
import { useHistory } from 'react-router-dom';
|
||||
|
||||
import { getExploratoryViewFilter } from '../../../../services/data/get_exp_view_filter';
|
||||
|
@ -31,7 +26,7 @@ export function PageViewsChart({ breakdown }: Props) {
|
|||
const { dataViewTitle } = useDataView();
|
||||
const history = useHistory();
|
||||
const kibana = useKibanaServices();
|
||||
const { ExploratoryViewEmbeddable } = kibana.observability;
|
||||
const { ExploratoryViewEmbeddable } = kibana.exploratoryView!;
|
||||
|
||||
const { uxUiFilters, urlParams } = useLegacyUrlParams();
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* 2.0.
|
||||
*/
|
||||
|
||||
import { ALL_VALUES_SELECTED } from '@kbn/observability-plugin/public';
|
||||
import { ALL_VALUES_SELECTED } from '@kbn/exploratory-view-plugin/public';
|
||||
import { useLegacyUrlParams } from '../../../../context/url_params_context/use_url_params';
|
||||
import {
|
||||
SERVICE_ENVIRONMENT,
|
||||
|
|
|
@ -16,7 +16,7 @@ import {
|
|||
} from '@elastic/eui';
|
||||
import { i18n } from '@kbn/i18n';
|
||||
import type { ESFilter } from '@kbn/es-types';
|
||||
import { FieldValueSuggestions } from '@kbn/observability-plugin/public';
|
||||
import { FieldValueSuggestions } from '@kbn/exploratory-view-plugin/public';
|
||||
import { useLocalUIFilters } from '../hooks/use_local_uifilters';
|
||||
|
||||
import { useBreakpoints } from '../../../../hooks/use_breakpoints';
|
||||
|
|
|
@ -9,7 +9,7 @@ import React, { Fragment } from 'react';
|
|||
import { EuiButtonEmpty, EuiFlexGroup, EuiFlexItem } from '@elastic/eui';
|
||||
import { i18n } from '@kbn/i18n';
|
||||
import styled from 'styled-components';
|
||||
import { FilterValueLabel } from '@kbn/observability-plugin/public';
|
||||
import { FilterValueLabel } from '@kbn/exploratory-view-plugin/public';
|
||||
import type { DataView } from '@kbn/data-views-plugin/public';
|
||||
import { useLegacyUrlParams } from '../../../../context/url_params_context/use_url_params';
|
||||
import { FiltersUIHook } from '../hooks/use_local_uifilters';
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
import React, { useEffect, useState } from 'react';
|
||||
import { isEqual, map } from 'lodash';
|
||||
import { i18n } from '@kbn/i18n';
|
||||
import { SelectableUrlList } from '@kbn/observability-plugin/public';
|
||||
import { SelectableUrlList } from '@kbn/exploratory-view-plugin/public';
|
||||
import { useLegacyUrlParams } from '../../../../../context/url_params_context/use_url_params';
|
||||
import { I18LABELS } from '../../translations';
|
||||
import { formatToSec } from '../../ux_metrics/key_ux_metrics';
|
||||
|
|
|
@ -14,7 +14,7 @@ import {
|
|||
EuiSpacer,
|
||||
EuiTitle,
|
||||
} from '@elastic/eui';
|
||||
import { getCoreVitalsComponent } from '@kbn/observability-plugin/public';
|
||||
import { getCoreVitalsComponent } from '@kbn/exploratory-view-plugin/public';
|
||||
import { I18LABELS } from '../translations';
|
||||
import { KeyUXMetrics } from './key_ux_metrics';
|
||||
import { useUxQuery } from '../hooks/use_ux_query';
|
||||
|
|
17
x-pack/plugins/ux/public/context/plugin_context.ts
Normal file
17
x-pack/plugins/ux/public/context/plugin_context.ts
Normal file
|
@ -0,0 +1,17 @@
|
|||
/*
|
||||
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
||||
* or more contributor license agreements. Licensed under the Elastic License
|
||||
* 2.0; you may not use this file except in compliance with the Elastic License
|
||||
* 2.0.
|
||||
*/
|
||||
|
||||
import { AppMountParameters } from '@kbn/core/public';
|
||||
import type { ExploratoryViewPublicStart } from '@kbn/exploratory-view-plugin/public';
|
||||
import { createContext } from 'react';
|
||||
|
||||
export interface PluginContextValue {
|
||||
appMountParameters: AppMountParameters;
|
||||
exploratoryView: ExploratoryViewPublicStart;
|
||||
}
|
||||
|
||||
export const PluginContext = createContext({} as PluginContextValue);
|
|
@ -9,9 +9,9 @@ import { useFetcher } from '@kbn/observability-plugin/public';
|
|||
import { useKibanaServices } from './use_kibana_services';
|
||||
|
||||
export function useStaticDataView() {
|
||||
const { observability } = useKibanaServices();
|
||||
const { exploratoryView } = useKibanaServices();
|
||||
const { data, loading } = useFetcher(async () => {
|
||||
return observability.getAppDataView('ux');
|
||||
return exploratoryView.getAppDataView('ux');
|
||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||
}, []);
|
||||
|
||||
|
|
|
@ -30,7 +30,10 @@ import { HomePublicPluginSetup } from '@kbn/home-plugin/public';
|
|||
import { FeaturesPluginSetup } from '@kbn/features-plugin/public';
|
||||
import { LicensingPluginSetup } from '@kbn/licensing-plugin/public';
|
||||
import { EmbeddableStart } from '@kbn/embeddable-plugin/public';
|
||||
import { ExploratoryViewPublicSetup } from '@kbn/exploratory-view-plugin/public';
|
||||
import {
|
||||
ExploratoryViewPublicSetup,
|
||||
ExploratoryViewPublicStart,
|
||||
} from '@kbn/exploratory-view-plugin/public';
|
||||
import { MapsStartApi } from '@kbn/maps-plugin/public';
|
||||
import { Start as InspectorPluginStart } from '@kbn/inspector-plugin/public';
|
||||
import { DataViewsPublicPluginStart } from '@kbn/data-views-plugin/public';
|
||||
|
@ -56,6 +59,7 @@ export interface ApmPluginStartDeps {
|
|||
maps?: MapsStartApi;
|
||||
inspector: InspectorPluginStart;
|
||||
observability: ObservabilityPublicStart;
|
||||
exploratoryView: ExploratoryViewPublicStart;
|
||||
dataViews: DataViewsPublicPluginStart;
|
||||
lens: LensPublicStart;
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* 2.0.
|
||||
*/
|
||||
|
||||
import { UrlFilter } from '@kbn/observability-plugin/public';
|
||||
import { UrlFilter } from '@kbn/exploratory-view-plugin/public';
|
||||
import { TRANSACTION_URL } from '../../../common/elasticsearch_fieldnames';
|
||||
import { UrlParams } from '../../context/url_params_context/types';
|
||||
import {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue