From 999bec0d910d1bd8f6ab35f6271b1cb2a6251b3d Mon Sep 17 00:00:00 2001 From: Kawika Avilla Date: Wed, 10 Mar 2021 19:11:25 -0800 Subject: [PATCH] [Rename] newsfeed plug (#117) Signed-off-by: Kawika Avilla --- src/plugins/newsfeed/common/constants.ts | 2 +- .../newsfeed/public/components/empty_news.tsx | 4 +- .../public/components/flyout_list.tsx | 10 ++--- .../public/components/loading_news.tsx | 2 +- .../components/newsfeed_header_nav_button.tsx | 2 +- src/plugins/newsfeed/public/lib/api.test.ts | 38 +++++++++---------- src/plugins/newsfeed/public/lib/api.ts | 22 +++++------ src/plugins/newsfeed/public/plugin.tsx | 8 ++-- src/plugins/newsfeed/public/types.ts | 2 +- src/plugins/newsfeed/server/config.ts | 2 +- src/plugins/newsfeed/server/index.ts | 2 +- src/plugins/newsfeed/server/plugin.ts | 2 +- 12 files changed, 48 insertions(+), 48 deletions(-) diff --git a/src/plugins/newsfeed/common/constants.ts b/src/plugins/newsfeed/common/constants.ts index 6131fc7ced29..dc959af3bb12 100644 --- a/src/plugins/newsfeed/common/constants.ts +++ b/src/plugins/newsfeed/common/constants.ts @@ -25,4 +25,4 @@ export const NEWSFEED_HASH_SET_STORAGE_KEY = 'newsfeed.hashes'; export const NEWSFEED_DEFAULT_SERVICE_BASE_URL = ''; export const NEWSFEED_DEV_SERVICE_BASE_URL = ''; -export const NEWSFEED_DEFAULT_SERVICE_PATH = '/kibana/v{VERSION}.json'; +export const NEWSFEED_DEFAULT_SERVICE_PATH = '/opensearch-dashboards/v{VERSION}.json'; diff --git a/src/plugins/newsfeed/public/components/empty_news.tsx b/src/plugins/newsfeed/public/components/empty_news.tsx index cec18e0bdec4..2ac9f5502137 100644 --- a/src/plugins/newsfeed/public/components/empty_news.tsx +++ b/src/plugins/newsfeed/public/components/empty_news.tsx @@ -17,7 +17,7 @@ * under the License. */ import React from 'react'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage } from '@osd/i18n/react'; import { EuiEmptyPrompt } from '@elastic/eui'; export const NewsEmptyPrompt = () => { @@ -35,7 +35,7 @@ export const NewsEmptyPrompt = () => {

} diff --git a/src/plugins/newsfeed/public/components/flyout_list.tsx b/src/plugins/newsfeed/public/components/flyout_list.tsx index d4cdf72fee61..340e4dbb850b 100644 --- a/src/plugins/newsfeed/public/components/flyout_list.tsx +++ b/src/plugins/newsfeed/public/components/flyout_list.tsx @@ -32,7 +32,7 @@ import { EuiHeaderAlert, EuiPortal, } from '@elastic/eui'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage } from '@osd/i18n/react'; import { NewsfeedContext } from './newsfeed_header_nav_button'; import { NewsfeedItem } from '../types'; import { NewsEmptyPrompt } from './empty_news'; @@ -48,7 +48,7 @@ export const NewsfeedFlyout = () => { onClose={closeFlyout} size="s" aria-labelledby="flyoutSmallTitle" - className="kbnNews__flyout" + className="osdNews__flyout" data-test-subj="NewsfeedFlyout" > @@ -56,12 +56,12 @@ export const NewsfeedFlyout = () => {

- + {!newsFetchResult ? ( ) : newsFetchResult.feedItems.length > 0 ? ( @@ -103,7 +103,7 @@ export const NewsfeedFlyout = () => {

diff --git a/src/plugins/newsfeed/public/components/loading_news.tsx b/src/plugins/newsfeed/public/components/loading_news.tsx index d95577878cd7..ba8451faf476 100644 --- a/src/plugins/newsfeed/public/components/loading_news.tsx +++ b/src/plugins/newsfeed/public/components/loading_news.tsx @@ -17,7 +17,7 @@ * under the License. */ import React from 'react'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage } from '@osd/i18n/react'; import { EuiEmptyPrompt } from '@elastic/eui'; import { EuiLoadingElastic } from '@elastic/eui'; diff --git a/src/plugins/newsfeed/public/components/newsfeed_header_nav_button.tsx b/src/plugins/newsfeed/public/components/newsfeed_header_nav_button.tsx index 792454464008..dbdac322dd65 100644 --- a/src/plugins/newsfeed/public/components/newsfeed_header_nav_button.tsx +++ b/src/plugins/newsfeed/public/components/newsfeed_header_nav_button.tsx @@ -20,7 +20,7 @@ import React, { useState, Fragment, useEffect } from 'react'; import * as Rx from 'rxjs'; import { EuiHeaderSectionItemButton, EuiIcon } from '@elastic/eui'; -import { i18n } from '@kbn/i18n'; +import { i18n } from '@osd/i18n'; import { NewsfeedFlyout } from './flyout_list'; import { FetchResult } from '../types'; diff --git a/src/plugins/newsfeed/public/lib/api.test.ts b/src/plugins/newsfeed/public/lib/api.test.ts index 8e4298e73dcf..3ff86f396060 100644 --- a/src/plugins/newsfeed/public/lib/api.test.ts +++ b/src/plugins/newsfeed/public/lib/api.test.ts @@ -52,10 +52,10 @@ jest.mock('uuid', () => ({ })); describe.skip('NewsfeedApiDriver', () => { - const kibanaVersion = '99.999.9-test_version'; // It'll remove the `-test_version` bit + const opensearchDashboardsVersion = '99.999.9-test_version'; // It'll remove the `-test_version` bit const userLanguage = 'en'; const fetchInterval = 2000; - const getDriver = () => new NewsfeedApiDriver(kibanaVersion, userLanguage, fetchInterval); + const getDriver = () => new NewsfeedApiDriver(opensearchDashboardsVersion, userLanguage, fetchInterval); afterEach(() => { sinon.reset(); @@ -187,7 +187,7 @@ describe.skip('NewsfeedApiDriver', () => { "error": null, "feedItems": Array [], "hasNew": false, - "kibanaVersion": "99.999.9", + "opensearchDashboardsVersion": "99.999.9", } `); }); @@ -235,13 +235,13 @@ describe.skip('NewsfeedApiDriver', () => { }, ], hasNew: true, - kibanaVersion: '99.999.9', + opensearchDashboardsVersion: '99.999.9', }); }); it("Falls back to English when user language isn't present", () => { // Set Language to French - const driver = new NewsfeedApiDriver(kibanaVersion, 'fr', fetchInterval); + const driver = new NewsfeedApiDriver(opensearchDashboardsVersion, 'fr', fetchInterval); const apiItems: ApiItem[] = [ { title: { @@ -317,7 +317,7 @@ describe.skip('NewsfeedApiDriver', () => { }, ], hasNew: true, - kibanaVersion: '99.999.9', + opensearchDashboardsVersion: '99.999.9', }); }); @@ -383,7 +383,7 @@ describe.skip('NewsfeedApiDriver', () => { }, ], hasNew: true, - kibanaVersion: '99.999.9', + opensearchDashboardsVersion: '99.999.9', }); }); @@ -413,7 +413,7 @@ describe.skip('NewsfeedApiDriver', () => { "error": null, "feedItems": Array [], "hasNew": false, - "kibanaVersion": "99.999.9", + "opensearchDashboardsVersion": "99.999.9", } `); }); @@ -444,7 +444,7 @@ describe.skip('NewsfeedApiDriver', () => { "error": null, "feedItems": Array [], "hasNew": false, - "kibanaVersion": "99.999.9", + "opensearchDashboardsVersion": "99.999.9", } `); }); @@ -461,7 +461,7 @@ describe.skip('getApi', () => { arg2: { method: string } ) => { if ( - arg1 === 'http://fakenews.co/kibana-test/v6.8.2.json' && + arg1 === 'http://fakenews.co/opensearch-dashboards-test/v6.8.2.json' && arg2.method && arg2.method === 'GET' ) { @@ -479,7 +479,7 @@ describe.skip('getApi', () => { configMock = { service: { urlRoot: 'http://fakenews.co', - pathTemplate: '/kibana-test/v{VERSION}.json', + pathTemplate: '/opensearch-dashboards-test/v{VERSION}.json', }, mainInterval: moment.duration(86400000), fetchInterval: moment.duration(86400000), @@ -497,7 +497,7 @@ describe.skip('getApi', () => { "error": null, "feedItems": Array [], "hasNew": false, - "kibanaVersion": "6.8.2", + "opensearchDashboardsVersion": "6.8.2", } `); done(); @@ -553,7 +553,7 @@ describe.skip('getApi', () => { }, ], "hasNew": true, - "kibanaVersion": "6.8.2", + "opensearchDashboardsVersion": "6.8.2", } `); done(); @@ -593,7 +593,7 @@ describe.skip('getApi', () => { }, ], "hasNew": false, - "kibanaVersion": "6.8.2", + "opensearchDashboardsVersion": "6.8.2", } `); done(); @@ -609,7 +609,7 @@ describe.skip('getApi', () => { "error": "sorry, try again later!", "feedItems": Array [], "hasNew": false, - "kibanaVersion": "6.8.2", + "opensearchDashboardsVersion": "6.8.2", } `); done(); @@ -647,19 +647,19 @@ describe.skip('getApi', () => { "error": "Sorry, try again later!", "feedItems": Array [], "hasNew": false, - "kibanaVersion": "6.8.2", + "opensearchDashboardsVersion": "6.8.2", }, Object { "error": "Sorry, internal server error!", "feedItems": Array [], "hasNew": false, - "kibanaVersion": "6.8.2", + "opensearchDashboardsVersion": "6.8.2", }, Object { "error": "Sorry, it's too cold to go outside!", "feedItems": Array [], "hasNew": false, - "kibanaVersion": "6.8.2", + "opensearchDashboardsVersion": "6.8.2", }, Object { "error": null, @@ -676,7 +676,7 @@ describe.skip('getApi', () => { }, ], "hasNew": false, - "kibanaVersion": "6.8.2", + "opensearchDashboardsVersion": "6.8.2", }, ] `); diff --git a/src/plugins/newsfeed/public/lib/api.ts b/src/plugins/newsfeed/public/lib/api.ts index 0e1ae2489717..e84fc01a7b81 100644 --- a/src/plugins/newsfeed/public/lib/api.ts +++ b/src/plugins/newsfeed/public/lib/api.ts @@ -20,7 +20,7 @@ import * as Rx from 'rxjs'; import moment from 'moment'; import uuid from 'uuid'; -import { i18n } from '@kbn/i18n'; +import { i18n } from '@osd/i18n'; import { catchError, filter, mergeMap, tap } from 'rxjs/operators'; import { HttpSetup } from 'src/core/public'; import { @@ -34,26 +34,26 @@ import { ApiItem, NewsfeedItem, FetchResult, NewsfeedPluginBrowserConfig } from type ApiConfig = NewsfeedPluginBrowserConfig['service']; export enum NewsfeedApiEndpoint { - KIBANA = 'kibana', - KIBANA_ANALYTICS = 'kibana-analytics', + OPENSEARCH_DASHBOARDS = 'opensearch-dashboards', + OPENSEARCH_DASHBOARDS_ANALYTICS = 'opensearch-dashboards-analytics', SECURITY_SOLUTION = 'security-solution', OBSERVABILITY = 'observability', } export class NewsfeedApiDriver { private readonly id = uuid.v4(); - private readonly kibanaVersion: string; + private readonly opensearchDashboardsVersion: string; private readonly loadedTime = moment().utc(); // the date is compared to time in UTC format coming from the service private readonly lastFetchStorageKey: string; private readonly hashSetStorageKey: string; constructor( - kibanaVersion: string, + opensearchDashboardsVersion: string, private readonly userLanguage: string, private readonly fetchInterval: number ) { // The API only accepts versions in the format `X.Y.Z`, so we need to drop the `-SNAPSHOT` or any other label after it - this.kibanaVersion = kibanaVersion.replace(/^(\d+\.\d+\.\d+).*/, '$1'); + this.opensearchDashboardsVersion = opensearchDashboardsVersion.replace(/^(\d+\.\d+\.\d+).*/, '$1'); this.lastFetchStorageKey = `${NEWSFEED_LAST_FETCH_STORAGE_KEY}.${this.id}`; this.hashSetStorageKey = `${NEWSFEED_HASH_SET_STORAGE_KEY}.${this.id}`; } @@ -96,7 +96,7 @@ export class NewsfeedApiDriver { } fetchNewsfeedItems(http: HttpSetup, config: ApiConfig): Rx.Observable { - const urlPath = config.pathTemplate.replace('{VERSION}', this.kibanaVersion); + const urlPath = config.pathTemplate.replace('{VERSION}', this.opensearchDashboardsVersion); const fullUrl = (config.urlRoot || NEWSFEED_DEFAULT_SERVICE_BASE_URL) + urlPath; return Rx.from( @@ -174,7 +174,7 @@ export class NewsfeedApiDriver { return { error: null, - kibanaVersion: this.kibanaVersion, + opensearchDashboardsVersion: this.opensearchDashboardsVersion, hasNew, feedItems, }; @@ -188,12 +188,12 @@ export class NewsfeedApiDriver { export function getApi( http: HttpSetup, config: NewsfeedPluginBrowserConfig, - kibanaVersion: string + opensearchDashboardsVersion: string ): Rx.Observable { const userLanguage = i18n.getLocale(); const fetchInterval = config.fetchInterval.asMilliseconds(); const mainInterval = config.mainInterval.asMilliseconds(); - const driver = new NewsfeedApiDriver(kibanaVersion, userLanguage, fetchInterval); + const driver = new NewsfeedApiDriver(opensearchDashboardsVersion, userLanguage, fetchInterval); return Rx.timer(0, mainInterval).pipe( filter(() => driver.shouldFetch()), @@ -203,7 +203,7 @@ export function getApi( window.console.error(err); return Rx.of({ error: err, - kibanaVersion, + opensearchDashboardsVersion, hasNew: false, feedItems: [], }); diff --git a/src/plugins/newsfeed/public/plugin.tsx b/src/plugins/newsfeed/public/plugin.tsx index ae74f43531b0..59812884a6b0 100644 --- a/src/plugins/newsfeed/public/plugin.tsx +++ b/src/plugins/newsfeed/public/plugin.tsx @@ -22,7 +22,7 @@ import { catchError, takeUntil, share } from 'rxjs/operators'; import ReactDOM from 'react-dom'; import React from 'react'; import moment from 'moment'; -import { I18nProvider } from '@kbn/i18n/react'; +import { I18nProvider } from '@osd/i18n/react'; import { PluginInitializerContext, CoreSetup, CoreStart, Plugin } from 'src/core/public'; import { NewsfeedPluginBrowserConfig, FetchResult } from './types'; import { NewsfeedNavButton, NewsfeedApiFetchResult } from './components/newsfeed_header_nav_button'; @@ -33,12 +33,12 @@ export type NewsfeedPublicPluginStart = ReturnType { - private readonly kibanaVersion: string; + private readonly opensearchDashboardsVersion: string; private readonly config: NewsfeedPluginBrowserConfig; private readonly stop$ = new Rx.ReplaySubject(1); constructor(initializerContext: PluginInitializerContext) { - this.kibanaVersion = initializerContext.env.packageInfo.version; + this.opensearchDashboardsVersion = initializerContext.env.packageInfo.version; const config = initializerContext.config.get(); this.config = Object.freeze({ ...config, @@ -78,7 +78,7 @@ export class NewsfeedPublicPlugin config: NewsfeedPluginBrowserConfig ): Rx.Observable { const { http } = core; - return getApi(http, config, this.kibanaVersion).pipe( + return getApi(http, config, this.opensearchDashboardsVersion).pipe( takeUntil(this.stop$), // stop the interval when stop method is called catchError(() => Rx.of(null)) // do not throw error ); diff --git a/src/plugins/newsfeed/public/types.ts b/src/plugins/newsfeed/public/types.ts index 4c64ad02d3fd..0aca926187fc 100644 --- a/src/plugins/newsfeed/public/types.ts +++ b/src/plugins/newsfeed/public/types.ts @@ -54,7 +54,7 @@ export interface NewsfeedItem { } export interface FetchResult { - kibanaVersion: string; + opensearchDashboardsVersion: string; hasNew: boolean; feedItems: NewsfeedItem[]; error: Error | null; diff --git a/src/plugins/newsfeed/server/config.ts b/src/plugins/newsfeed/server/config.ts index e42066f4d20e..6b3f2090b6c9 100644 --- a/src/plugins/newsfeed/server/config.ts +++ b/src/plugins/newsfeed/server/config.ts @@ -17,7 +17,7 @@ * under the License. */ -import { schema, TypeOf } from '@kbn/config-schema'; +import { schema, TypeOf } from '@osd/config-schema'; import { NEWSFEED_DEFAULT_SERVICE_PATH, NEWSFEED_DEFAULT_SERVICE_BASE_URL, diff --git a/src/plugins/newsfeed/server/index.ts b/src/plugins/newsfeed/server/index.ts index e62bb95df886..f92bd9f369e5 100644 --- a/src/plugins/newsfeed/server/index.ts +++ b/src/plugins/newsfeed/server/index.ts @@ -17,7 +17,7 @@ * under the License. */ -import { PluginConfigDescriptor } from 'kibana/server'; +import { PluginConfigDescriptor } from 'opensearch-dashboards/server'; import { NewsfeedPlugin } from './plugin'; import { configSchema, NewsfeedConfigType } from './config'; diff --git a/src/plugins/newsfeed/server/plugin.ts b/src/plugins/newsfeed/server/plugin.ts index 60b69b3977bf..e8d4825ada6b 100644 --- a/src/plugins/newsfeed/server/plugin.ts +++ b/src/plugins/newsfeed/server/plugin.ts @@ -17,7 +17,7 @@ * under the License. */ -import { Plugin } from 'kibana/server'; +import { Plugin } from 'opensearch-dashboards/server'; export class NewsfeedPlugin implements Plugin { public setup() {}